Verdades a medias sobre SAP HANA (Parte I)

Cuando algo nuevo surge en el mundo de tecnología el desconocimiento se hace presente en forma de mitos, verdades a medias o conceptos erróneos. En el ámbito de SAP HANA esta situación ya se está produciendo, por ello SAP ofrece una breve aclaración de los conceptos que se están tergiversando.

A continuación señalamos los siguientes conceptos o afirmaciones erróneas:


Cuando algo nuevo surge en el mundo de tecnología el desconocimiento se hace presente en forma de mitos, verdades a medias o conceptos erróneos. En el ámbito de SAP HANA esta situación ya se está produciendo, por ello SAP ofrece una breve aclaración de los conceptos que se están tergiversando.

A continuación señalamos los siguientes conceptos o afirmaciones erróneas:

  • Todas las tablas de datos de SAP HANA se procesan con almacenamiento columnar (column-oriented). SAP HANA permite, tanto, tablas con almacenamiento en filas como en columnas. Las tablas con almacenamiento en filas son accedidas del mismo modo que las bases de datos relacionales tradicionales. Basándose en la experiencia y en el conocimiento, se puede decidir, de manera individualizada, que tipo de almacenamiento debe tener cada tabla para obtener el mejor rendimiento.
  • El almacenamiento en columnas ofrece mejor rendimiento que el almacenamiento en filas. En algunos casos es así, por ello, SAP tiende al mayor uso posible de tablas con almacenamiento en columnas, pero sin embargo, hay algunos casos en que el almacenamiento basado en filas ofrece un mayor rendimiento. (aquí tips a tener en cuenta).
  • Los índices no son necesarios. SAP HANA puede analizar grandes cantidades de datos, incluso sin la existencia de índices. Sin embargo hay situaciones en las que los índices son útiles, por ejemplo si se requiere realizar un acceso selectivo en repetidas ocasiones (para un entorno Business Suite on HANA, sugerimos la nota 1794297).
  • Los índices no se conservan en el disco. Los índices conformados por más de una columna de las tablas con almacenamiento columnar, son generalmente almacenados en disco. Los índices conformados por sólo una columna, son considerados como parte de la definición o estructura de la columna, no son almacenados en disco, se recrean automáticamente cuando la columna es cargada. Los índices de las tablas con almacenamiento en filas no se almacenan en disco, se crean cada vez que el sistema se pone en marcha.

Los Savepoints de SAP HANA


La principal técnica que utiliza SAP HANA Database para ofrecer un inmediato acceso a la información es manteniendo los datos en memoria, si la información fuese actualizada, estos cambios se reflejarían tanto en la memoria como en disco, es en este punto que interviene el concepto de Savepoints (aquí más información).

Los datos que se cargan a memoria son agrupados en “páginas”, todas las páginas que fuesen modificadas en un período de tiempo determinado, son volcadas a disco en los denominados Savepoints (el cual podríamos traducir como “puntos de sincronización” o “puntos de salvaguarda”).

Es una instalación del tipo “scale-out” conformada por más de un host, se debe tener en cuenta que cada host gestionará sus propios Savepoints.

La disponibilidad de un savepoint reciente conllevará a un reinicio del sistema más rápido porque habrá menos logs que procesar. Un Savepoin es desencadenado por las siguientes vías:

  • Intervalo predefinido. La parametrización por defecto establece que automáticamente habrá un punto de salvaguarda cada 5 minutos (global.ini >> [persistence] >> savepoint_interval_s = 300).
  • Comando del sistema. Puede utilizarse una sentencia en SAP HANA Studio para ejecutar un savepoint manualmente (ALTER SYSTEM SAVEPOINT)
  • Cierre del sistema del tipo Soft. Un “soft shutdown” ejecuta un savepoint antes de detener los servicios. Un “hard shutdown” no realiza un savepoint, lo que incrementaría el tiempo de reinicio del sistema.
  • Después de iniciar el sistema. Finalizado el reinicio del sistema, se realiza un savepoint.
  • Snapshots. Las instantáneas conllevan un savepoint que no se ven afectados por siguientes savepoints.

Cancelar o interrumpir sesiones en SAP HANA

Un alto consumo de recursos que pudiese realizar un proceso podría afectar la estabilidad y el buen funcionamiento de cualquier infraestructura, en este aspecto, SAP HANA no es la excepción. En SAP HANA es posible definir límites globales de consumos del área de memoria, que utilizan los procesos para su ejecución (denominada Allocated memory). Hasta la actualización SPS 06, el valor predeterminado era el 90% de la memoria física, desde la actualización SPS 07 el valor por defecto es el 90% de los primeros 64 GB y el 97% del resto de la memoria física.


Un alto consumo de recursos que pudiese realizar un proceso podría afectar la estabilidad y el buen funcionamiento de cualquier infraestructura, en este aspecto, SAP HANA no es la excepción. En SAP HANA es posible definir límites globales de consumos del área de memoria, que utilizan los procesos para su ejecución (denominada Allocated memory). Hasta la actualización SPS 06, el valor predeterminado era el 90% de la memoria física, desde la actualización SPS 07 el valor por defecto es el 90% de los primeros 64 GB y el 97% del resto de la memoria física.

En el caso que se detectará un proceso/sesión con un elevado uso de recursos, este podría ser interrumpido. Una sesión en este contexto es la combinación de la conexión (es decir, enlace al proceso cliente), el hilo (thread, es decir, la ejecución real en el lado SAP HANA), Sentencia SQL y transacción.

La interrupción de la ejecución de una sesión puede afectar el funcionamiento de una aplicación, por lo que esta medida debe ser utilizada con mucho cuidado. Existen las siguientes opciones para terminar sesiones críticas en SAP HANA:

  • Cancelar sesiones. Vía SAP HANA Studio (Administration >> Performance >> Sessions) o vía sentencia SQL (ALTER SYSTEM CANCEL SESSION). La cancelación no es inmediata, el sistema puede realizar comprobaciones previas.
  • Desconectar sesiones. Vía sentencia SQL (ALTER SYSTEM DISCONNECT SESSION) es posible desconectar sesiones (e implícitamente cancelarla). Se debe tener presente que si una sesión no puede ser cancelada con el comando anterior, el uso de una desconexión empeoraría la situación, dado que podría iniciar nuevamente el funcionamiento del proceso que se desea desconectar.
  • Establecer límites de uso de memoria. A partir de la actualización SPS 08 es posible establecer la inmediata culminación de sentencias SQL que superasen ciertos límites de uso de memoria. Así mismo, es posible definir el consumo global de memoria por parte de los procesos.

Referencia: SAP Note 2092196

Solución de problemas de red en una plataforma SAP HANA

Si se percibe un problema de rendimiento en una plataforma SAP HANA, identificándose aumento de tiempos de acceso a los datos, quizás el problema no este centrado en SAP HANA sino en la red. SAP señala las causas que originarían problemas en la red y las acciones que podríamos realizar para comprobar y superar estos inconvenientes.


Si se percibe un problema de rendimiento en una plataforma SAP HANA, identificándose aumento de tiempos de acceso a los datos, quizás el problema no este centrado en SAP HANA sino en la red. SAP señala las causas que originarían problemas en la red y las acciones que podríamos realizar para comprobar y superar estos inconvenientes. Esta información, contenida en la nota 2081065, es aplicable a instalaciones SAP HANA SPS 08 (Revisión 80 – SPS = Support Package Stack) o con actualizaciones superiores.

Los aspectos que intervienen en el rendimiento de red, son los siguientes:

  • Latencia. Es el tiempo que tarda un paquete de cruzar una conexión de red, del emisor a receptor.
  • Ancho de banda (Bandwidth). Se refiere a la cantidad de datos que se puede llevar de un punto a otro en un período de tiempo (bps).
  • Pérdida de paquetes (Packet loss). Se refiere al fallo de uno o más paquetes transmitidos para llegar a su destino. De producirse, ocasionaría que el punto origen debería retransmitir el dato, percibiendo el usuario final un mal desempeño y retrasos.

Los problemas en la red, podrían repercutir en los siguientes aspectos en una instalación SAP HANA:

  • Comunicación entre los host SAP HANA (arquitectura Scale out u horizontal).
  • Comunicación entre SAP HANA Database y las aplicaciones cliente.
  • Replicación de base de datos SAP HANA.

Para encontrar las posibles soluciones a estos inconvenientes sugerimos la revisión de la nota de referencia.

Referencia: SAP Note 2081065

Sobre las actualizaciones de SAP HANA

Las actualizaciones del software de SAP HANA son liberadas bajo dos modalidades o categorías que difieren en su denominación con respecto a otros productos SAP a los que estamos más habituados. Estos paquetes de actualización se denominan Support Package Stacks (SPS) y Revisions.


Las actualizaciones del software de SAP HANA son liberadas bajo dos modalidades o categorías que difieren en su denominación con respecto a otros productos SAP a los que estamos más habituados. Estos paquetes de actualización se denominan Support Package Stacks (SPS) y Revisions.

 Los SPS son las actualizaciones principales de SAP HANA los cuales incluyen nuevas funcionalidades y significativos cambios. Las Revisiones son parches al software con el fin de corregir errores o brindar pequeñas mejoras. En ambos casos, SAP recalca que los cambios y mejoras no son disruptivos. Comparando el sistema de actualización del software de SAP HANA con SAP BusinessObjects BI (BI4), podríamos señalar que los SPS de HANA equivalen a los SP de BI4 (Support Pack) y una “Revision” equivale a un ”Patch”.

Revisones y SPSs de sistema de actualización del Software de SAP HANA y sus componentes

No hay un ciclo definido de liberación de las actualizaciones del software de SAP HANA, pero se estiman dos actualizaciones del tipo SPS al año, y usualmente una antes de mayo y la otra antes de noviembre, aproximadamente. Meses después de la liberación de un paquete, SAP podría finalizar el ciclo de vida de una actualización anterior, por lo que la aplicación de las actualizaciones no debería postergarse demasiado.

SAP HANA Revision (Ref 1948334)

En cuanto a las “Revisions”, también denominadas Support Package (SP), se liberan sin seguir ningún patrón de frecuencia, son publicadas cuando SAP lo vea necesario. Hay dos tipos de revisiones: “SAP HANA Datacenter Service Points”, revisiones comprobadas en los sistemas de producción de SAP y “SAP HANA Maintenance Revisions” las cuales pueden contener un mayor número de corrección de errores pero suelen basarse en SPS antiguos, por ejemplo, revisiones en base al código del SPS 07 cuando ya se ha liberado el SPS 08.