HANA: Más que una Base de Datos
SAP HANA no es solo almacenamiento rápido; es una plataforma de computación in-memory completa. Al eliminar la latencia de disco para operaciones principales, cambia el paradigma de desarrollo: el cálculo intensivo ("Code-to-Data") se mueve de la capa de aplicación al motor de base de datos.
Arquitectura Interna y Procesos OS
A nivel de Sistema Operativo (Linux), una instancia HANA se compone de procesos críticos orquestados por
el hdbdaemon (watchdog). Los principales son:
- hdbindexserver: El "caballo de batalla". Contiene los datos reales y ejecuta los motores de cálculo SQL y OLAP. Consume la mayor parte de la RAM.
- hdbnameserver: Posee la topología del landscape. Es vital en escenarios Scale-out distribuidos para saber en qué nodo reside cada tabla.
- hdbpreprocessor: Procesa datos no estructurados para búsquedas de texto.
- hdbcompileserver: Compila procedimientos almacenados y programas SQLScript.
A nivel de persistencia en disco (Filesystem), se sigue un estándar estricto para garantizar rendimiento I/O:
/hana/data: Volúmenes de datos. Escritura asíncrona vía Savepoints. Requiere alto throughput./hana/log: Redo Logs. Crítico. Requiere latencia mínima de escritura ( < 1ms) ya que cada commit espera a este disco./hana/shared: Binarios y configuración global, compartido entre nodos.
Gestión de Memoria y Motores de Almacenamiento
El administrador debe vigilar el Global Allocation Limit (GAL). Si HANA intenta asignar más memoria que este límite, el proceso fallará (OOM), aunque exista RAM física libre en el servidor.
Para optimizar el uso de RAM, HANA emplea jerarquías de almacenamiento. La característica Native Storage Extension (NSE) permite marcar datos "tibios" (warm data) para que residan en disco y solo carguen a un buffer en memoria bajo demanda, reduciendo costos de infraestructura.
Column Store y el Mecanismo Delta Merge
El Column Store utiliza un ciclo de escritura sofisticado para mantener la compresión sin sacrificar velocidad de inserción:
- Delta Store (L1/L2): Las nuevas escrituras van a este almacenamiento temporal, optimizado para escritura y sin compresión pesada.
- Main Store: El almacenamiento principal, altamente comprimido y optimizado para lectura rápida.
- Delta Merge: Un proceso de fondo periódico fusiona los datos del Delta al Main, re-comprimiendo y re-indexando. Un fallo en el Merge puede degradar severamente el rendimiento de lectura.
Replicación y Disponibilidad (HSR)
La Replicación de Sistema (HSR) no solo copia datos, replica la persistencia de logs. En modo SYNC, el Primary espera el ACK del Secondary antes de confirmar un commit. En modo SYNC-MEM, espera solo a que el Secondary reciba el dato en memoria, sin esperar su escritura a disco, reduciendo latencia.
Monitorización vía SQL (System Views)
Aunque HANA Cockpit es la interfaz visual estándar para la monitorización, un experto usa Vistas de Sistema SQL para diagnóstico rápido:
M_SERVICE_MEMORY: Desglose de consumo de RAM por servicio lógico.M_DISKS/M_VOLUME_IO_TOTAL_STATISTICS: Para analizar latencias de disco y cuellos de botella I/O.M_EXPENSIVE_STATEMENTS: Identifica consultas que consumen excesiva CPU o Memoria, el primer paso para el Performance Tuning.M_DELTA_MERGE_STATISTICS: Salud del proceso de fusión de columnas.