Español | Deutsch | English

¿Merece la pena migrar a HANA?

junio 7, 2016 | De Virtual Forge GmbH

Las características de SAP HANA parecen fantásticas en el PowerPoint. Pero si examina más detenidamente una migración, tendrá más preguntas que respuestas.

POR ANDREAS WIEGENSTEIN, VIRTUAL FORGEFISH.jpg

¿Para quién es útil la migración?

El rendimiento ha sido siempre una cuestión central del funcionamiento de los si stemas SAP. Es evidente que las empresas necesitan informes sobre sus datos empresariales actuales lo antes posible. Pero, como muestra un estudio de Virtual Forge, la mayoría de los programas ABAP (de cliente) son mucho más lentos de lo que cabría esperar. La razón es que muchos desarrolladores se centran en la funcionalidad durante su trabajo y no prestan atención a trivialidades como el rendimiento. Por consiguiente, los programas funcionan, pero son lentos. El sistema estándar de SAP tampoco es muy prometedor al respecto.

Así, cuando SAP Marketing anuncia que con HANA todo será mejor, los clientes abrumados por los problemas de rendimiento tienen nuevas esperanzas. Una base de datos nueva conserva todos los datos almacenados en la memoria, por lo que primero no es necesario cargarlo todo desde el disco duro. Se hablaba de unos saltos de rendimiento sensacionales. Sin embargo, las cifras son más realistas. Por supuesto, el acceso a los datos en una memoria central es mucho más rápido que el acceso a un disco duro. Pero esta idea no supone ninguna novedad. Los creadores de bases de datos llevan mucho tiempo trabajando en técnicas de optimización que almacenen en la memoria del servidor de bases de datos los datos a los que se accede (con frecuencia). En este ámbito, Oracle destaca por ofrecer unos algoritmos excelentes.

Si una empresa ya utiliza una base de datos que dispone de una gestión de datos inteligente en la memoria central, el efecto de la base de datos HANA probablemente no marque un nuevo hito en lo que a velocidad se refiere. Además, cuando se habla de rendimiento, hay que tener en cuenta que los problemas de rendimiento no están necesariamente relacionados con el acceso a la base de datos. Nuestros actuales parámetros de referencia cualitativos del código de cliente demuestran que los motivos principales de los fallos de rendimiento en los programas ABAP son las operaciones ineficientes en la memoria principal del servidor de aplicaciones. La sustitución de la base de datos apenas ayuda a paliar tales errores de programación.

Pero la migración de los programas ABAP existentes a HANA supone toda una serie de retos para las empresas:

  • Algunas técnicas de codificación no funcionan en HANA, por lo que las aplicaciones existentes deben analizarse y adaptarse.
  • Algunas técnicas de codificación se ejecutan con mayor lentitud en los sistemas HANA que en las bases de datos habituales y deben analizarse y adaptarse.

Incluso el «code pushdown» o procesamiento de datos en la capa de base de datos recomendado por SAP, que permite el uso adecuado de HANA, es un arma de doble filo. El code pushdown estipula que toda recuperación de datos debe encapsularse en un programa SQL, en el servidor de base de datos.

Una empresa debe ser consciente de que la optimización del código específica de HANA como el code pushdown hace que la ejecución de la aplicación dependa necesariamente de HANA. Por consiguiente, la empresa también dependerá de ello. La independencia del sistema del software de SAP tan elogiada en su momento pertenece, pues, al pasado. Cualquiera que migre por medio del code pushdown no podrá alejarse de HANA sin una intervención masiva en las aplicaciones. No es necesariamente algo negativo. Sin embargo, un paso de estas dimensiones debe efectuarse con cuidado.

Un desafío adicional ligado al code pushdown es evidentemente el esfuerzo que se necesita para implementarlo. Si las aplicaciones productivas deben pasar a ser más rápidas, deberán reprogramarse. Resulta obvio que esto conlleva realizar muchas pruebas, ya que la migración no debe cambiar la funcionalidad.

Debido al code pushdown, los desarrolladores de ABAP necesitan de pronto usuarios y permisos en el servidor de bases de datos. Antes, ese servidor era el dominio exclusivo de los administradores. Esto también puede obligar a las empresas a emprender cambios organizativos.

Un problema de calidad del code pushdown es el hecho de que, en el futuro, la lógica empresarial deberá distribuirseentre el servidor de aplicaciones y el servidor de bases de datos. Ello no solo dificulta el mantenimiento de las aplicaciones, sino que también infringe los paradigmas de programación establecidos que contempla la encapsulación, por ejemplo, la programación orientada a objetos.

Otra dificultad importante que deben tener en cuenta las empresas cuando migren a HANA es la seguridad. Las tecnologías nuevas también suelen incluir nuevos (tipos de) riesgos de seguridad. Hoy día, los investigadores en seguridad de SAP continúan encontrando errores de seguridad que han permanecido durante años en el sistema estándar de SAP. Asimismo, ya se han descubierto las primeras vulnerabilidades en HANA. Incluso es muy probable que la instalación y configuración seguras de una base de datos de HANA sea territorio desconocido para la mayoría de los administradores y, sin duda alguna, aún se tardará en disponer de prácticas recomendadas relativas a la seguridad de HANA. En líneas generales, una migración a HANA significa:

  • Modificaciones (rigurosas) del código existente
  • Esfuerzo creciente en relación con el mantenimiento del software
  • Cambios organizativos en el desarrollo
  • Dependencia de la base de datos de HANA debido al code pushdown
  • Nuevos riesgos de seguridad

Si una empresa accede a aceptar todo esto, es probable que pueda esperar una ejecución más rápida de sus aplicaciones con HANA. No obstante, resulta difícil responder de antemano a la pregunta de si todo ello merece la pena.

Aunque la verdadera pregunta es si no resultaría más fácil (y más rentable) conseguir un aumento del rendimiento optimizando las aplicaciones más importantes y dando un enfoque de calidad también al rendimiento en el marco de los desarrollos futuros.

Conclusión

Cualquiera que desee acelerar sus aplicaciones ABAP con la ayuda de HANA haría bien en revisar primero las aplicaciones (más importantes) en lo que a rendimiento se refiere. Si después continuara habiendo dificultades importantes que surjan debido al acceso masivo a la base de datos, puede considerarse el paso a HANA, sin lugar a dudas.