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

 X 

✒️Las recomendaciones para desarrollar aplicaciones ABAP en SAP HANA

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
  1. 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)
  2. 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.
  3. 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.
  4. 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.
  1. 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
  1. 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
  1. 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
  1. 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.,
  1. 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 :)