Press "Enter" to skip to content

SAP HANA – Delta SP11

admin 0

SAP HANA – Delta SP11

 

Aquí les traigo un poco de lo que he podido observar de los cambios que llegan con el nuevo SP11 de HANA, cambios que a mi parecer son grandes y le dan un giro completo a lo que ya se conocía en los anteriores paquetes de HANA, para iniciar se crea una nueva plataforma que sería la evolución de XS en HANA llamada XS Advanced (XSA) y la anterior se clasifica ahora como XS Classic (XSJS), entre las novedades de este SP11 también encontramos que cambia el motor de ejecución para soportar Node.js para Javascript, Java en TomEE y C++ con FastCGI, aunque aún se mantiene el actual engine para mantener compatibilidad, el cual es el VM Javascript SpiderMokey, pero esto si es un gran cambio ya que ahora contaremos con todas las propiedades de Node.js de manera nativa, todo esto gracias al engine V8 desarrollado por Google, también la forma en cómo se distribuyen los componentes de HANA en SP11 cambia poniendo una capa llamada Application Router encargada de distribuir microservicios para las aplicaciones que incluso pueden correr con diferente asignación de memoria, CPU y motor de ejecución, por lo que si esta se cuelga no nos afectara a las demás, algo también digno de mencionar es la integración que se ha hecho con GIT/GITHUB dejando de lado el repositorio que se tenía anteriormente en el mismo HANA, esto para darle la mayor facilidad al desarrollo que estas herramientas ofrecen.

Entrando a detalle aquí un poco de la arquitectura, donde se aprecia que aun contamos con el XS Classic pero XS Advanced introduce nuevas capas para darle mayor importancia a las seguridad, nuevos lenguajes soportados, flexibilidad en el desarrollo soportando GIT/GITHUB pudiendo con ellos facilitar las múltiples modificaciones por diferentes desarrolladores, el nuevo soporte de lenguajes como C++, JAVA y Javascript, donde Javascript cambia de motor anteriormente SpiderMonkey (Mozilla) y ahora Node.js (v8 Google):

Otros detalles importantes es que ahora XS advanced podrá instalarse de manera separada a la base de datos en este caso HANA y de la misma forma tiene nuevas diferencias con su manejo de usuarios para darle mayor flexibilidad a este punto, de igual forma incrementando la posibilidad de usar un DMZ (Zona Desmilitarizada) entre el XS Advanced y HANA, con todo esto un nuevo servicio es introducido y es conocido como HDI(HANA Deployment Infrastructure) la cual nos ayuda a simplificar los procesos de desarrollo con los artefactos de la base de datos HANA, esto introduce un enfoque declarativo para definir objetos de base de datos y asegurar  un despliegue consistente en la base de datos, con todo esto la intención es quitar de la base de datos programas Javascript, Servicios ODATA, artefactos de aplicación, al final solo tendremos objetos de base de datos.

Un nuevo termino es el HDI Container que es un tipo esquema de base de datos para alojar Objetos de dase de datos, los cuales deben ser definidos libres de esquema y con ello estos objetos pertenecerán a un contenedor técnico especifico lo cual hace a objetos externos que puedan ser definidos vía sinónimos o enlaces a tablas, aquí un ejemplo:

Al tomar en cuenta lo anterior viene un efecto para los objetos que ya existían en la base de HANA como lo son Analytics Views, Attribute views, scripts basados en calculation views, todos estos se vuelven obsoletos y deben ser migrados, por suerte esta herramienta se encuentra en el mismo HANA Modeler para facilitarnos este proceso:

Aquí un ejemplo de una sentencia donde claramente se ve su diferencia al ser migrada:

Como inicialmente se mencionó la forma en cómo se manejan los usuarios también ha cambiado ya que los usuarios no serán más parte de la base de datos o por lo menos no una necesidad para las aplicaciones creadas, ya que se implementa una forma nueva la cual utiliza SAML IDP y esto evita que tengan que ser replicados usuarios a la base de datos, todo este ejercicio se resuelve mediante tokens los cuales contienen internamente la información de los usuarios, los cuales son tomados por la nueva capa de router de XSA y redirigidos a pequeños microservicios, aquí un ejemplo de este proceso:

Volviendo a las herramientas que utilizaremos para desarrollo, se encuentra en desarrollo un nuevo Web IDE  el cual tendrá todas las nuevas integraciones con GIT/GITHUB de manera nativa, así como acceso directo a los diferentes esquemas y contenedores de HDI, incluso contara con su propio debugger el cual facilitara la detección de múltiples errores:

Este nuevo Web IDE nos permitirá tener una vista completa de las estructuras de la aplicación desarrollada asi como los paquetes y archivos de configuración:

Como vemos múltiples cambios se han hecho en esta versión y mueve muchas de las conocidas en HANA antes de SP10, aunque no es un cambio totalmente radical e intenta preservar las mejoras que esta herramienta debe tener, en un futuro serán la base y se obligara utilizarlas dejando de lado el XS Classic, ya es una versión que puede utilizarse en ambientes productivos, pero aún tiene algunos detalles con la migración de aplicaciones que pueden ocasionar múltiples problemas, pero que seguramente en el SP12 serán atacadas y facilitadas, pero partiendo de este nuevo camino definido, de momento SAP WEB IDE no está liberado pero se planea que a mediados del año 2016 sea iniciado su liberación.

Por mi parte iniciare introducirme con SHINE ya que existe una versión para XS Advanced la cual en posteriores artículos les mostrare.