🚀PROMO #PLANCARRERA2024 - 🔥Bonificaciones, Precios Congelados y Cuotas

 X 

✒️El análisis y la optimización con SAP HANA

El análisis y la optimización con SAP HANA

El análisis y la optimización con SAP HANA

LECCIÓN 3. Análisis y optimización con SAP HANA

1. Introducción al análisis y optimización con SAP HANA

Para ello contamos con una serie de herramientas de anàlisis de tiempo de ejecución y error:

- Realizar traces de SQL a través de la Tx. ST05: para conocer las Tablas a las cuales accede un programa, en caso, p.e., de un SELECT que se demora más de lo que debería a causa de lecturas poco óptimas.

- El anàlisis de tiempo de ejecución de ABAP mediante la transacción SAT: La tx. SAT es la evolución de la tx. SE30 (anàlisi en tiempo de ejecución). Su sección “Tips and tricks” permite comparar la ejecución de diferentes sentencias ABAP.

- La verificación ampliada de código a través de la tx. SLIN: permite detectar el código no utilizado.

- Chequear el código generado a través del Inspector de código de SAP con la tx. SCI: a través de la cual podemos realitzar comprobaciones de performance, Seguridad, sintaxis, uso de convenciones de nombre,...

- El ABAP Test Cockpit correspondiente a la tx. ATC: La cual es la evolución del Inspector de código.

- La utilización de los registros estadísticos mediante la tx. STAD: da una visión general de los tiempos de la BD.

- El anàlisis de transacciones individuales a través de la tx. ST12: la cual combina transacciones STAD, SAT y ST05 en una sola interfaz.

- El anàlisis de errores en tiempo de ejecución mediante la tx. ST22: analiza los Dumps generados en el sistema.

A partir de ABAP 7.4 tenemos algunes herramientas nuevas y muy útiles:

- El Monitor SQL a través de la transacción SQLM: el monitor SQL recopila, agrega y persiste la información en tiempo de ejecución sobre las sentencias de SQL en la interfaz de la BD.

- El SQL Performance Tunning WorkList Tool mediante la transacción SWLT: combina los datos del Monitor de SQL con los resultados del anàlisis del código y por lo tanto, hacer planes para lograr una optimización valiosa.

2. Análisis del código ABAP

La tx. SCI (Inspector de código) puede ayudarnos a identificar aquelles partes del programa que se pueden mejorar para SAP HANA. Luego de ejecutado, recibiremos una lista de mensajes (de información, de advertència o de error) con prioridad, cada uno asignado a la verificación correspondiente.

SAP no permite escanear el código estándar del sistema con el inspector de código.

Usando el Inspector de código, podemos chequear objetos individuales o conjuntos de objetos para verificar el rendimiento, la Seguridad, la sintaxis y el cumplimiento de las convenciones de nombres.

Variante de Verificación: define las reglas que se aplicarán, las comprobaciones que se realizarán y la configuración de esas comprobaciones. SAP proporciona variantes por defecto: una muy útil es PERFORMANCE DB. Podemos definir variantes para un usuario del sistema o para todos.

Conjunto de objetos o Object set: definí los objetos de desarrollo que se incluirán.

Inspección: define una combinación de Variantes de Verificación y Conjuntos de objetos, o sea, qué comprobaciones deben aplicarse a qué objetos de desarrollo.

Para nuestro nombre de usuario, si creamos una variante de verificación local con el nombre DEFAULT, el sistema usará esto en lugar de la variante de verificación global.

1.1 Verificaciones relevantes al Migrar a SAP HANA

Gracias a la compatibilidad y portabilidad del código ABAP, no es necesario realitzar ajustes a los programes.

Pero, a tener en cuenta lo siguiente en una migración a SAP HANA:

- Native SQL y HINTS de BD: las sentencias HINTS de las BD Oracle no van a funcionar con SAP HANA.

Con el inspector de código è Uso de la interface ADBC y Sentencias Críticas podemos localizar estos códigos dentro de los programas ABAP.

- Comportamiento del SORT: En las tablas columnares debemos utilitzar ORDER BY para recibir ordenados los registros de datos en un SELECT. O posteriorment al SELECT, ordenar usando SORT.

Con el inspector de código è Verificación è buscar enunciados problemáticos para el resultado de SELECT OPEN CURSOR sin ORDER BY podemos localizar las partes de los programas ABAP que requieren una clasificación.

Adios a las Tablas Cluster y Pool: cuando se migra la BD a SAP HANA, las Tablas clúster y pool son convertidas automáticament a Tablas transparentes.

1.2 Verificaciones relevantes al optimitzar para SAP HANA

- Uso inseguro de FOR ALL ENTRIES

Se debe chequear que la tabla interna no esté vacía antes de realitzar el FOR ALL ENTRIES.

- Buscar las sentencias FOR ALL ENTRIES para transformarlas en un JOIN:

Así se mejora el rendimiento.

- Declaraciones SELECT que omiten el Buffer de tabla

Para evitar una mayor carga de la BD, no debemos omitir este buffer (que se tilda al crear una Tabla).

- Instrucciones problemáticas SELECT *

Debemos evitar leer las columnas de las Tablas de BD que no se necesitan,

- Buscando SELECTs en LOOPs en Subrutinas

Hay una sèrie de controles que pueden encontrar esos Loops.

A partir de AS ABAP 7.4, las búsquedas pueden extenderee más allà de las Subrutinas.

- EXIT/CHECK en SELECT...ENDSELECT

Mejor usar la sentencia WHERE en ambos casos aunque es mejor CHECK (justo después del SELECT) que EXIT. De este modo evitamos que una gran cantidad de datos se lean innecesariamente debido a que los datos se transfieren en bloques.

Recomendación (al igual que en SAP ECC): Desaconsejado el uso del SELECT...ENDSELECT. Reemplazarlo por SELECT SINGLE o SELECT INTO TABLE.


 

 

 


Sobre el autor

Publicación académica de Tania Raset Pere, en su ámbito de estudios para el Máster ABAP for HANA.

SAP SemiSenior

Tania Raset Pere

España - Legajo: QZ87K

✒️Autor de: 12 Publicaciones Académicas

🎓Egresado del módulo:

Certificación Académica de Tania Raset