Contenido
1. Hints (Sugerencias al optimizador)
Los hints son parámetros que pasamos a las sentencias SQL para influir en el optimizador de la base de datos.
Toda consulta SELECT se ejecuta dentro del servidor en varios pasos. Para la misma consulta, pueden existir distintos caminos para conseguir el mismo resultado, por lo que el servidor es el responsable de decidir qué camino seguir para conseguir el mejor tiempo de respuesta.
Los Hints varían dependiendo del fabricante de la base de datos, ya que son implementados en el SQL Nativo.
Debemos tener en cuenta que, si no es posible efectuar lo que se indica con el hint, el motor de base de datos lo ignorará.
2. Implementación de Hints
En un programa ejecutable creamos una consulta hacia la tabla de vuelos e implementamos la instrucción de “%_HINTS”.
Si hacemos uso del autocompletado del editor, podemos observar las distribuciones de base de datos que soporta el servidor donde se está realizando la ejecución del programa, en el ejemplo la instancia tiene como motor de base de datos HANA por lo que seleccionamos esta opción.
Hemos asignado una ejecución mediante la búsqueda por medio del índice, activamos la traza en la transacción “ST05” para poder observar como es la conversión que se realiza entre el ABAP SQL y el SQL Nativo.
Realizamos la ejecución del programa, cuando la ejecución ha finalizado, desactivamos la traza y observamos los registros guardados.
Buscamos el registro de la consulta realizada y la abrimos con doble clic el “Object Name”.
Con lo que obtendremos información general del objeto persistente.
Regresamos a la pantalla anterior y seleccionamos el apartado “Statement”.
Observamos que el ABAP SQL se ha convertido en SQL Nativo dela base de datos HANA y se ha indicado el Hint en la ejecución.
A partir de este punto el consultor ABAP especialista en base de datos podrá influir en la ejecución de una sentencia SQL en la capa persistente.
NOTA: para consultar los Hints más representativos de HANA puede consultar dando click aquí.