✒️Las recomendaciones para desarrollar aplicaciones ABAP en SAP HANA
Las recomendaciones para desarrollar aplicaciones ABAP en SAP HANA
Tips prácticos importantes al desarrollar aplicaciones ABAP.
Comprensión solida de las pautas y técnicas para lograr un rendimiento óptimo es esencial
- Recomendaciones generales: Detalles para las migraciones y optimización de los programas ABAP
- Creación de tablas recomendando el almacenamiento por columnas.(Podrémos analizar grandes conjuntos de datos de forma eficiente y estos así podrán ser utilizados en escenario de análisis, también tendrán más propiedades de compresión, aplica a tablas que se utilizan para búsqueda de texto)
- Hints de la bbdd tienen el objetivo de forzar la ejecución de un indice y dividir la carga de trabajo estos ya no se utilizan en la nueva plataforma. pero será necesaria una comprobación para evitar errores.
- El acceso a las tablas pool y cluster deben ordenarse implicitamente ya que ya no se agrega un ordenamiento automático(no es característica sql) en la declaración ya que ahora son tablas transparentes. ****FIND SELECT FOR POOL/CLUSTER TAB Without ORDER BY*** DEBEREMOS ORDENAR porque los datos estan orientados a columnas, No hay un indice secundario y los datos se pueden leer en paralelo) asi se leerán en la secuencia deseada porque se leen desde la secuencia almacenada alli cuando se usa el indice.
- Diferenciaremos entre:(analizar si tiene sentido utilizar una implementación de BBDD especifica, se analizará cada caso)no necesitamos ningún ususrio adicional para la bbdd
- Implementar indeped. de la BBDD (Usando Open SQL /ABAP CDS) *Utilizaremos esto preferiblemente, aplicaciones abap compatibles
- Implementar utilizando funciones especificas de SAP HANA(SQL nativo HINTS y HANA CDS)
- REGLAR DE ORO PARA LA PROGRAMACION*Pautas performance: La velocidad de ejecución de los programas, SUPER IMPORTANTE.
- Mantener el conjunto de resultados lo más pequeño posible.(nº filas seleccionada)
- utilizando where, (having min sum /group by), elimina siempre los registros que no usas, restrigir los datos requeridos check/if endif.OBJETIVO = Transferir menos datos= menos consumo cpu
- Mantener el conjunto de datos transferido lo más pequeño posible.
- Los datos se transfieren de la bbdd al servidor de aplicaciones en bloques/ la carga de red se reducirá transmitiendo menos bloques.**lo conseguiremos con las restricciones en el where, ups to N rows(seleccionamos los 10 primeros), distinct(eliminamos duplicados) = delete adjated duplicates, solo leeremos y modificamos (SET)las columnas necesarias, funciones de agregación COUNT,MIN,MAX,SUM,AVG, UP TO 1 rows, nos aseguramos que solo vamos a leer un registro de datos
- Reducir el número de ejecuciones de consulta.(o aceeso a la bbdd)
- Uso de autorizaciones, uso de into table , from table, evitar select antes de un delete, no bucles con select ni selects anidados (inner join) para fusionar conjuntos de datos utilizaremos: joins, vistas, for all entries
- Minimizar el esfuerzo de busqueda de los where y having creando un indice (1ºindice se crea automáticamente en la tabla y el 2º en el ddic(import cuando los accesos de lectura son mas críticos) intentar que no haya demasiados(en hana ya no se crean los sec. en la migración), no solapar el campo del indice y que el mismo campo este a parte, los campos que mas se utilizar deben estar cerca del indice
- Indices invertidos(recomendados) y compuestos(tienen un requisito de memoria más alto debido a las estructuras de memoria para una col. Interna Adicional)
- Se debe crear un indice en cada caso para que la col tenga una cond. más selectiva.
- Mantener los indices aumente los costos de acceso de escritura en sap , solo crearemos un ind si el acceso fuera muy lento.,
- reducir la carga de la bbdd: La bbdd es un recurso central en el sistema, deberemos mantener la carga para operaciones repetidas en la bbdd lo mas pequeña posible.*utilizaremos buffers, memoria sap,memoria abap, programacion especifica del buffering en tablas internas* EL ACCESO AL BUFFER(USO DE TABLA INTERNA) ES 10 VECES MAS RAPIDO QUE EL ACCESO A LOS DATOS EN LA BBDD.
- ORDENA, EVITA ACCEDER VARIAS VECES DE LA MISMA FORMA
 
 
 
Sobre el autor
Publicación académica de Susana Mora, en su ámbito de estudios para el Máster ABAP for HANA.
Susana Mora
España - Legajo: TP38C
✒️Autor de: 21 Publicaciones Académicas
🎓Cursando Actualmente: Master ABAP for HANA
Presentación:
Consultora sap sd/abap desarrollando un perfil cross :)