🚀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

RECOMENDACIONES PARA EL DESARROLLO DE ABAP EN SAP HANA

RECOMENDACIONES GENERALES

  • Almacenamiento por columnas o por filas: -Accedemos a seleccionar uno u otro tipo de almacenamiento (Technical settings – DB-Specific Properties). Por defecto se realiza por columnas. Es mas eficiente el analisis de grandes conjuntos de datos en el almacenamiento por columnas. Mejores propiedades de compresion en el almacenamiento por columnas.

  • Implementaciones específicas de SAP HANA:

    • Implementaciones independientes de la base de datos (por ejemplo OPEN SQL y ABAP CDS)

    • Implementaciones que utilizan funciones específicas de SAP HANA (ejemplo SQL nativo y HANA CDS)

Es recomendable utilizar en principio herramientas estándar.

Pautas de recomendación:

  • Primero Open y luego Native

  • Primero ABAP CDS y luego HANA CDS

  • Recomendaciones para la migración.

    • Código ABAP dependiente de la base de datos. En este caso debemos ajustarlo para la base de datos SAP HANA si es necesario. (Por ejemplo los Hints, que fuerzan el uso de un indice y dividen la carga de trabajo, ademas de no funcionar en SAP HANA, no son necesarios.)

    • Conversion tablas de pool y cluster. Se debe analizar con respecto a su ordenamiento. Revisaremos la verificacion aportada por el Inspector de código: Find select for Pool/Clusterf Tab without ORDER BY.

    • Comportamiento del ordenamiento. Con SAP HANA no esa asegurado el ordenamiento implicito, por lo que deberemos especificar el ORDER BY en las SELECT.

PAUTAS DE PERFORMANCE

Para programación de bases de datos:

    1. Mantener el conjunto de resultados lo mas pequeño posible.

      • Utilizar la clausula WHERE

      • Trabajar con la clausula HAVING.

      • Transferir sólo las filas requeridas.

    2. Mantener el conjunto de datos transferidos lo mas pequeño posible.

      • Utilizando a adición UP TO n ROWS.

      • Trabajar con DISTINCT.

      • Reduciendo el número de columnas.

      • Utilizar funciones de agregación (count, min, max, sum, avg).

      • Realizar chequeos de existencia eficientemente (select nombre up to 1 row).

      • Modificar sólo las columnas necesarias (update tabla set campo...).

    3. Reducir el numero de ejecuciones de consulta.

      • Utilizar operaciones de conjunto en lugar de operaciones individuales.

      • No realizar más accesos múltiples.

      • No utilizar bucles con select anidados. A cambio utilizar joins, vistas, for all entries.

      • No ejecutar instrucciones SELECT en el LOOP a traves de tablas internas. FOR ALL ENTRIES reduce el numero de ejecuciones.

      • Utilizar buffers.

    4. Minimizar el esfuerzo de búsqueda. Utilizaremos para ello índices.

  • Indices de B.D. en B.D. Clásicas. Recomendaciones:

      • Indices secundarios únicamente si los accesos de lectura son más criticos en el tiempo que los de escritura.

      • Numero de índices y campos de los mismos lo mas pequeño posible.

      • Evitar que los campos figuren en mas de un indice.

      • Los campos de un índice secundario deben seleccionarse a menudo.

      • Los campos de mas posibilidades de consulta (=) deben estar al principio del indice.

  • Indices de la B.D. en SAP HANA:

      • Indices invertidos (recomendado)

      • Indices compuestos, tienen un requisito de memoria mas alto.

      • En un sistema existente, al migrarlo a SAP HANA no se crean todos los índices secundarios existentes para tablas columnares.

    5. Reducir la carga de la base datos.

      • Utilizar buffers.

        • Buffers cross usuario del servidor de aplicaciones:

          • Objetos compartidos.

          • Buffer compartidos.

          • Memoria compartida.

          • Buffer de tabla.

        • Buffers específicos del usuario:

          • Memoria SAP.

          • Memoria ABAP.

          • Programación especifica del buffering en tablas internas.

      • Ordenado

      • Evitar accesos idénticos.


 

 

 


Sobre el autor

Publicación académica de Juan Ignacio De Tejada Santiago, en su ámbito de estudios para el Máster ABAP for HANA.

SAP Expert


Juan Ignacio De Tejada Santiago

Profesión: Informatico - España - Legajo: NW89P

✒️Autor de: 219 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Certificación Académica de Juan De