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

 X 

✒️¿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?

Que cambia en ABAP a partir de SAP HANA?

1.- Luego de haber comprendido còmo ha sido la evoluciòn de las bases de datos en los ùltimos 20 años, cuàles son sus principios generales, su arquitectura y ademàs cuestiones, seguramente nos estamos preguntando:

Còmo afectan todas las innovaciones de software anteriormente descritas al desarrollo de aplicaciones en ABAP?

A lo largo de esta lecciòn contestaremos esta interesante pregunta describiendo las opciones tècnicas que benefician a la programaciòn ABAP cuando utilizamos SAP HANA y explicaremos el concepto de CODE PUSHDOWN.

1.1 Nuevas opciones tècnicas.

- Acelerar:

Con SAP HANA podemos acelerar los programas ABAP existentes. 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 los 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 u online con SAP HANA. Ademàs, se puede mejorar la usabilidad y la funcionalidad de las transacciones de diàlogo ABAP implementando 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 la conoce con el nombre FULL TEXT SEARCHES.

- Innovar:

Finalmente podemos desarrollar aplicaciones nuevas e innovadoras y tipos de aplicaciones utilizando ABAP y SAP HANA.

En este contexto, a menudo se menciona la convergencia del procesamiento de transacciones en lìnea OLTP, el procesamiento analìtico en lìnea OLAP y las aplicaciones hìbridas.

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 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 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.

Esto es especialmente iportante si se realizan càlculos complejos con grandes cantidades 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 ûshdown.

Hasta ahora las aplicaciones ABAP utilizaban el paradigma data-to-code. Ñas aplicaciones optimizadas o desarrolladas especìficamente para SAP HANA utilizan el paradigma code-to-data.

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. La lògica de la presentaciòn se ejecuta en la capa de presentaciòn.

La lògia de la aplicaciòn se divide en dos secciones:

La lògica de orquestaciòn que controla los procesos del negocio y el flujo de datos y determina còmo se determinan y procesan los resultados del càlculo

Con data-to-code una aplicaciòn o programa ABAP lee los registros de la base de datos. Los registros se almacenan en las tablas internas del servidor de aplicaciones.

La lògica de la aplicaciòn se implementa en base a este proncipio. Para la presentaciòn, los registros o los datos calculados en base a estos registros se transfieren a la interfaz gràfica de usuario SAP GUI, SAP Enterprice Portal o SAP Netweaver Business Client NWBC. Con este procedimiento, es posible enviar millones de registros desde la base de datos al servidor de aplicaciones.

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 logica de orquestaciòn se implementa en el servidor de aplicaciones. La lògica de càlculo generalmente se ejecuta en la base de datos. Cuando màs complejo 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.

Con este enfoque, la cantidad de datos transferidos desde la base de datos al servidor de aplicaciones se puede mantener al mìnimo. Incluso si se necesitan millones de registros para un càlculo, el sistema solo transfiere los pocos cientos de registros calculados que el usuario dese ver.

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.

Ademàs de Open SQL, tambièn podemos utilizar Native SQL, con lo cual podemos ejecutar operaciones especìficas de la base de datos que no son compatibles con Open SQL.

Sin embargo, la desventaja de Native SQL es que los programas que utilizan operaciones especìficas de la base de datos no se puede ejecutar en todos los sistemas de bases de datos admitidos por SAP.
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 lograr un rendimiento òptimo, la base de datos debe convertirse en una "caja blanca".

Al optimizar programas para SAP HANA, siempre debemos preguntarnos si estos programas tambièn van a utilizarse en diferentes sistemas de bases de datos (que a menudo es el caso).

Si un programa se va a utilizar no sòlo en SAP HANA sinò tambièn en otros sistemas, debemos tener en cuenta con mucho cuidado los pros y contras 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 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, padrì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 Calificaciones requeridas para los desarrolladores ABAP.

No es suficiente simplemente comprender los impactos descritos sino que para poder optimizar las aplicaciones ABAP existentes y desarrollar nuevas aplicaciones o tipos de aplicaciones basados en ABAP y SAP HANA, los desarrolladores necesitamos adquirir experiencia.

Para optimizar las aplicaciones existentes para SAP HANA, especialmente teniendo en cuenta la performance, necesitamos saber 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.

Por ùltimo, deberemos incorporar una serie de conocimientos nuevos que tienen que ver con el aprendizaje de nuevas herramientas que presenta SAP HANA.


 

 

 


Sobre el autor

Publicación académica de Miguel Angel Acosta Acosta, en su ámbito de estudios para el Máster ABAP for HANA.

SAP Expert


Miguel Angel Acosta Acosta

Profesión: Ingeniero de Sistemas - Ecuador - Legajo: TF64C

✒️Autor de: 238 Publicaciones Académicas

🎓Egresado de los módulos:

Disponibilidad Laboral: FullTime

Presentación:

Profesional de ingeniería de sistemas en computación e informática, con experiencia en la implantación y soporte de proyectos informáticos para empresas del sector industrial y financiero.

Certificación Académica de Miguel Acosta