![](/cvo_files/imgs_sap_abap/logos/logo_cvo_academy_it.png)
✒️¿Qué cambia en ABAP a partir de SAP HANA?
¿Qué cambia en ABAP a partir de SAP HANA?
![¿Qué cambia en ABAP a partir de SAP HANA? ¿Qué cambia en ABAP a partir de SAP HANA?](https://www.cvosoft.com/cvo_files/imgs_sap_abap/og-images/274.jpg)
1. Los cambios en ABAP a partir de SAP HANA
1.1 Las nuevas opciones técnicas
- Acelerar. Por un lado, esto nos permite reducir el tiempo necesario para ejecutar trabajos en segundo plano o de fondo de manera significativa. Por otro lado, podemos mejorar el tiempo de respuesta inmediata para las consultas activadas por los usuarios finales dentro de las transacciones de diálogo también conocidas como transacciones online.
- Ampliar. Algunos programas ABAP que solo se podían ejecutar como trabajos en segundo plano o de fondo en el pasado debido a su tiempo de respuesta ahora se pueden convertir en transacciones interactivas de diálogo o online con SAP HANA. Además, se puede mejorar la usabilidad y la funcionalidad de las transacciones de diálogo ABAP implementado SAP HANA. Dichas mejoras incluyen análisis integrados y búsquedas de texto completo con tolerancia a errores. A esta nueva herramienta de SAP HANA se le conoce con el nombre Full Text Searches.
- Innovar. Las aplicaciones híbridas combinan funciones transaccionales y analíticas dentro de un sistema único para que los usuarios finales puedan tomar medidas directas basadas en conocimientos adquiridos en tiempo real a partir de análisis de datos (por ejemplo, apoyados por algoritmos estadísticos para predicciones basadas en datos históricos).
1.2 El Code Pushdown
Para que las aplicaciones aprovechen las innovaciones de hardware y software de SAP HANA, al menos parte de la lógica de la aplicación debe ejecutarse en la base de datos. El proceso de mover código de aplicación de la capa de aplicación a la capa de la base de datos se denomina pushdown de código o code pushdown.
Los datos de la aplicación se colocan en la capa de la base de datos cuando se utiliza el paradigma data-to-code. Básicamente, la lógica de la aplicación, que comprende la lógica de orquestación y lógica de cálculo, se ejecuta por completo en la capa de aplicación.
Con code-to-data los datos de la aplicación también se colocan en la capa de base de datos. Sin embargo, parte de la lógica de la aplicación se ejecuta en la capa de aplicación, mientras que parte de ella se implementa en la capa de base de datos. En un caso extremo, toda la lógica de la aplicación se puede ejecutar en la capa de la base de datos. Nada cambia fundamentalmente en la ejecución de la lógica de presentación.
Al aplicar el paradigma code-to-data a un programa ABAP, ocurre lo siguiente: los datos de una aplicación code-to-data son almacenados en la base de datos. La lógica de orquestación se implementa en el servidor de aplicaciones. La lógica de cálculo generalmente se ejecuta en la base de datos. Cuanto más completo es el cálculo, más registros se necesitan para el cálculo, por lo que más valiosa será la ejecución en la base de datos.
1.3 La base de datos como una caja blanca
Gracias a la arquitectura del servidor de aplicaciones ABAP y a la independencia de la base de datos que proporciona Open SQL, podemos desarrollar aplicaciones ABAP sin conocer los detalles específicos de la base de datos. La base de datos generalmente era vista como una caja negra o un sistema cerrado con una estructura interna que no era necesario considerar. Sin embargo, si la lógica de la aplicación, o al menos parte de ella, ahora debe ejecutarse (y posiblemente implementarse) en la base de datos, el conocimiento de los detalles específicos de la base de datos es muy útil. Para beneficiarse realmente de SAP HANA y logar un rendimiento óptimo, la base de datos debe convertirse en una caja blanca.
Si un programa se va a utilizar no solo en SAP HANA sino también en otros sistemas, debemos tener en cuenta con mucho cuidado los pros y contra de optimizarlo. Si bien podríamos, por ejemplo, tener un rendimiento significativamente mejor, tenemos por el otro lado como desventaja el código ABAP dependiente de la base de datos que resulta de esta optimización. Dentro de un programa, podríamos distinguir entre el código ABAP para SAP HANA y el código ABAP para otros sistemas de bases de datos mediante IF... ENDIF o CASE... ENDCASE. Si el código ABAP se vuelve demasiado complejo, podríamos modularizar cada implementación para cada base de datos. En el caso extremo, deberíamos desarrollar un programa ABAP separado para cada sistema de base de datos.
1.4 Las calificaciones requeridas para los desarrolladores ABAP
Para optimizar las aplicaciones existentes para SAP HANA, especialmente teniendo en cuenta la performance, necesitamos sabes que programas y patrones de código dentro de esos programas son los candidatos a ser modificados.
Debemos familiarizarnos con las herramientas de desarrollo que se utilizan para identificar los programas a optimizar para pasar al nuevo paradigma code-to-data y debemos ser capaces de ejecutar un análisis en tiempo de ejecución para identificar esos programas a fondo.
 
 
 
Sobre el autor
Publicación académica de Oscar Iván Eugenio Trejo, en su ámbito de estudios para el Máster ABAP for HANA.
Oscar Iván Eugenio Trejo
Profesión: Desarrollador Abap - Mexico - Legajo: TQ13F
✒️Autor de: 12 Publicaciones Académicas
🎓Egresado del módulo:
Disponibilidad Laboral: PartTime