SAP HANA | ||
---|---|---|
Información general | ||
Tipo de programa | aplicación informática | |
Desarrollador | SAP SE | |
Licencia | Software propietario | |
Información técnica | ||
Programado en | C, C++ | |
Versiones | ||
Última versión estable | SAP HANA 1.0 SP11 () | |
Enlaces | ||
SAP HANA es la implementación de SAP SE de la tecnología de base de datos en memoria. Hay cuatro componentes dentro del grupo de software:
HANA DB se aprovecha del bajo coste de la memoria principal (RAM), la capacidad del procesamiento de datos de los procesadores multinúcleo y el acceso rápido a datos de unidades de estado sólido con respecto a los discos duros tradicionales para ofrecer un mejor rendimiento de las aplicaciones analíticas y transaccionales. Ofrece un entorno de consulta multi-motor de procesamiento que le permite soportar tanto datos relacionales (con tanto en fila y columna orientado a representaciones físicas en un motor híbrido) así como el tratamiento gráfico y de texto para la gestión de datos no estructurados y semi-dentro del mismo sistema. HANA DB es 100% compatible con ACID.
Aunque HANA ha sido llamado de diversas maneras un acrónimo HAsso's New Architecture[1] (una referencia al fundador de SAP Hasso Plattner) y de High Performance ANalytic Appliance, HANA es un nombre no es una sigla.[2]
SAP HANA es la síntesis de los tres productos por separado - TREX, P*Time y MaxDB.
En 2008, SAP CTO Vishal Sikka escribió sobre HANA "... nuestros equipos de trabajo en conjunto con el Instituto Hasso Plattner y la Universidad de Stanford demostró cómo una arquitectura de nueva aplicación es posible, uno que permite en tiempo real de análisis complejos y de agregación, al día de cada transacción, nunca de un modo parecido posible en las aplicaciones financieras ".[1] En 2009, una iniciativa de desarrollo fue lanzada en SAP para integrar las tres tecnologías anteriormente mencionadas para proporcionar un conjunto de características más completo. El producto resultante se denominó internamente y externamente como NewDB hasta que el cambio a HANA DB se finalizó en 2011.
SAP HANA no es primer producto in-Memory de SAP . Business Warehouse Accelerator (BWA, anteriormente denominado BIA) fue diseñado para acelerar las consultas mediante el almacenamiento de BW InfoCubos en la memoria. Esto fue seguido en 2009 por el explorador Accelerated SAP que combina la herramienta Explorador de BI con BWA como una herramienta para realizar análisis ad hoc. Otros productos de SAP que utilizan la tecnología in-Memory eran Segmentación CRM, By Design (para análisis) y Enterprise Search (búsqueda de rol basado en datos estructurados y no estructurados). Todas ellas se basan en el motor TREX.
Tomando un enfoque diferente de Planificación Avanzada y Optimización (APO) utiliza liveCache para sus análisis.
El cofundador de SAP (y presidente del Consejo de Supervisión de SAP a partir de 2012) Hasso Plattner abogó por un sistema de emisiones "sin versión". Los paquetes de apoyo hasta la fecha han sido:[4]
Big data se refiere a los conjuntos de datos que exceden las capacidades de las herramientas de uso común. Si bien no existe una definición formal basada en el tamaño existe, estos conjuntos de datos alcanzan típicamente terabytes (TB), petabytes (PB), o incluso exabytes de tamaño. SAP HANA se ha posicionado como solución a los problemas de big data en el extremo inferior de esta escala.[5] En el lanzamiento HANA comenzó con 1 TB de RAM que soporta hasta 5 TB de datos sin comprimir. A finales de 2011 el hardware de 8 TB de RAM se dispuso que el apoyo de hasta 40 TB de datos sin comprimir. SAP propiedad de Sybase IQ, con su más maduro MapReduce funcionalidad similar se ha citado como una forma potencialmente mejor para grandes conjuntos de datos.[5][6]
SAP todavía ofrece otros productos de bases de datos:
Como empresa agnóstica de base de datos, SAP también revende bases de datos de proveedores como IBM, Oracle y Microsoft para sentarse bajo su ERP Business Suite.
Ofreciendo su propia solución de base de datos para apoyar su Business Suite ERP SAP se pone en competencia directa con algunos de sus socios más grandes, como IBM, Microsoft y Oracle. Entre los productos más destacados que compiten son:
SAP Business Objects Strategic Workforce Planning (SWP) fue una de las primeras aplicaciones de SAP que se re diseñaron para aprovechar las capacidades de HANA. SWP en HANA está dirigido a ejecutivos de recursos humanos que quieren simular modelos de la fuerza de trabajo en tiempo real, teniendo en cuenta el volumen de negocios, la jubilación, la contratación y otras variables.[7]
En septiembre de 2011 SAP lanzó su herramienta Smart Meter Analytics. Se trata de ayudar a las empresas de servicios públicos con grandes despliegues de medidores inteligentes para gestionar y utilizar la gran cantidad de datos generados por el medidor de este tipo.
A partir de 2012, los siguientes socios tienen soluciones de hardware certificados para HANA.[4][8] En orden alfabético son:
El punto central de la comunidad de desarrolladores en la plataforma SAP HANA es SAP HANA Centro de desarrollo o "el DevCenter". El DevCenter ofrece información general, los materiales educativos, foros de la comunidad, además de acceso a la base de datos SAP HANA con licencias libres:
El acceso a algunos materiales y características pueden requerir inscripción gratuita.
En septiembre de 2011 SAP anunció sus intenciones de asociarse con EMC y VMware para permitir una HANA basada en la infraestructura de aplicaciones en nube.[16] Esta plataforma como servicio (PaaS) ofrece HANA DB-as-a-service junto con una opción de pila basada en Java o ABAP base. Las aplicaciones creadas para cualquiera pila tendrá acceso a través de las API de DB HANA a través de una variedad de APIs. El enfoque basado en Java, con nombre en código River Project, se basa en la NetWeaver 7.3.1 servidor de aplicaciones Java. El enfoque basado en ABAP está diseñado más para la base de usuarios de SAP - por ejemplo en la suite SAP Business ByDesign de aplicaciones empresariales como ERP, CRM y gestión de la cadena de suministro.[17]
En su forma más básica, la arquitectura del sistema de base de datos HANA tiene los siguientes componentes:[18]
El motor relacional admite filas y columnas orientadas a representaciones físicas de tablas relacionales. Un administrador de sistema especifica en tiempo de definición si una nueva tabla se va a almacenar en una fila o en un formato orientado a columnas. Tablas de fila y columna de la base de datos orientada pueden ser perfectamente combinadas en una instrucción SQL, y posteriormente, las tablas pueden moverse de una representación a la otra.
El almacén de fila está optimizado para escritura concurrente y las operaciones de lectura. Mantiene todas las estructuras de índices en memoria en lugar de persistir en el disco. Utiliza una tecnología que está optimizada para la concurrencia y escalabilidad en sistemas multinúcleo. Por lo general, los metadatos o datos a los que raramente se accede se almacenan en un formato de fila-orientada.
Comparado con esto, el almacén de columna está optimizado para el rendimiento de las operaciones de lectura. Orientadas a columna de datos se guarda en un formato altamente comprimido con el fin de mejorar la eficiencia de uso de recursos de memoria y para acelerar la transferencia de datos desde el almacenamiento a la memoria o de la memoria de la CPU. El almacén de columna ofrece ventajas significativas en términos de compresión de datos que permite el acceso a mayores cantidades de datos en la memoria principal. Típicamente, los datos de usuario y la aplicación se almacena en un formato orientado a columnas beneficiándose de la alta tasa de compresión y del acceso altamente optimizado para las consultas de selección y agregación.
La Biblioteca de funciones de negocios es una biblioteca reutilizable (similar a los procedimientos almacenados) para aplicaciones de negocio integradas en el motor de cálculo HANA. Esto elimina la necesidad para el desarrollo de tales cálculos a partir de cero. Algunas de las funciones que se ofrecen son:
Al igual que en la Biblioteca de funciones de negocios, la biblioteca de Análisis Predictivo es una colección de funciones analíticas compiladas para análisis predictivo. Entre los algoritmos soportados son:
R es un lenguaje de programación diseñado para el análisis estadístico. Una iniciativa de código abierto (bajo el Proyecto GNU) R está integrado en HANA DB a través de TCP / IP. HANA utiliza SQL-SHM, una memoria compartida basada en el intercambio de datos para incorporar estructura vertical R de datos. HANA también introduce guiones R equivalentes a las operaciones de bases de datos nativas como unión o agregación.[19] Los desarrolladores de HANA pueden escribir scripts R en SQL y los tipos se convierten automáticamente en HANA. Guiones R pueden ser invocados con mesas HANA como la entrada y salida en la SQLScript. Los entornos R necesitan ser desplegados para utilizar R en SQLScript.[20][21]
La capa de Persistencia es responsable de la durabilidad y la atomicidad de las transacciones. Gestiona los datos y los volúmenes de registro en el disco y proporciona interfaces para la escritura y lectura de datos que son aprovechados por todos los motores de almacenamiento. Esta capa se basa en la capa de persistencia probada de MaxDB. La capa de persistencia asegura que la base de datos se restaura al estado comprometido más reciente después de un reinicio y las transacciones que están completamente ejecutadas o deshecho por completo. Para lograr esto de manera eficiente, se utiliza una combinación de escritura anticipada de registros, paginación en la sombra y puntos de retorno.
La capa de persistencia HANA gestiona el registro de todas las transacciones con el fin de proporcionar copia de seguridad y restaurar las funciones estándar. La misma capa de persistencia gestiona tanto filas como columnas de almacenamiento. Ofrece puntos regulares de guardado y el registro de todas las transacciones de base de datos desde el último punto de guardado.[22]
HANA DB utiliza el control de concurrencia multiversión (MVCC) principio de control de concurrencia. Esto permite transacciones de larga duración de lectura sin bloquear las transacciones de actualización. MVCC, en combinación con un mecanismo de tiempo de viaje, permite consultas temporales en el interior del motor relacional.[18][23]
Dado que las aplicaciones cada vez requieren más el enriquecimiento de datos normalmente estructurados con datos semi-estructurados, no estructurados, o texto, la base de datos HANA proporciona un motor de búsqueda de texto, además de su clásico motor de consultas relacionales.
El motor gráfico soporta la representación y el procesamiento de gráficos de datos con un sistema de tipificación flexible. Una nueva estructura de almacenamiento dedicado y un conjunto de operaciones de base optimizado se introducen para permitir operaciones eficientes gráfico a través del dominio específico del lenguaje WIPE consulta y manipulación. El motor gráfico está en condiciones de apoyar de manera óptima las aplicaciones de planificación de recursos con un gran número de recursos individuales y complejas interdependencias mash-up. El sistema de tipos flexibles, además, apoya la ejecución eficiente de los procesos de transformación, como la limpieza de datos pasos en los escenarios de almacenamiento de datos, para ajustar el tipo de las entradas de datos individuales, y permite la integración ad hoc de los datos de diferentes fuentes.
El motor de indexación de Texto proporciona texto y capacidades de búsqueda, como búsqueda exacta de palabras y frases, búsqueda difusa (que tolera errores de escritura), y la búsqueda lingüística (que encuentra variaciones de palabras basado en reglas lingüísticas). Además, los resultados de la búsqueda pueden ser clasificados y federar capacidades de búsqueda que permiten búsquedas de varias tablas y vistas. Esta funcionalidad está disponible para las aplicaciones específicas a través de extensiones de SQL. Para los análisis de texto, un servidor separado que usa un preprocesador que aprovecha la biblioteca SAP Text Analysis.[18]
Inmediatamente después del lanzamiento, con Service Pack 2, copia de seguridad y la capacidad de recuperación se limita a la recuperación de Últimos datos back-up o mayor respaldo o recuperación en el último estado antes del accidente. Las características adicionales de seguridad fueron implementadas en el Service Pack 3. Estos incluían una opción de registro completo Copia de seguridad automática o manual y un Punto de In-Time de opción de recuperación. Las nuevas características incluyen la administración de un nuevo catálogo de copia de seguridad que registra todos los intentos de copia de seguridad.[24]
Una consecuencia de la capacidad de Hana para trabajar con una base de datos completa en la memoria es que los cálculos de KPI computacionalmente intensivas se puede completar rápidamente cuando se compara con bases de datos basadas en disco. Pre-agregación de datos en cubos o almacenamiento de resultados en vistas materializadas ya no es necesario.[25]
SAP HANA Información Composer es una herramienta basada en web que permite a los usuarios cargar datos en una base de datos HANA y manipular los datos mediante la creación de Visitas de la Información. En la parte de adquisición de datos, los datos se pueden cargar, previsualizar y limpiar. En los objetos de la porción de manipulación de datos se puede seleccionar, combinar y se coloca en Visto información que puede ser utilizada por las herramientas de SAP BusinessObjects.[26]
Los permisos y roles de seguridad son gestionados por el Administrador de autorización en HANA DB. Además de los privilegios de base de datos estándar, tales como crear, actualizar o eliminar HANA DB también es compatible con los privilegios analíticos que representan los filtros o drill-down limitados en las consultas, así como los privilegios de acceso de control de acceso a los valores con ciertos atributos. Los componentes de HANA DB invocan al Administrador de autorización cada vez que necesitan comprobar los privilegios de usuario. La autenticación se puede hacer ya sea por la propia base de datos o se delega a un proveedor de autenticación externo, tal como un directorio LDAP.[18]
SAP ha declarado que los clientes han obtenido ganancias tan altas como 100.000 x en el rendimiento de consultas mejorado en comparación con los sistemas basados en la base de datos de disco.[27] Sin embargo, ha habido una auditoría independiente de tales afirmaciones.
En marzo de 2011, WinterCorp (una empresa independiente especializada en pruebas a gran escala de gestión de datos) fue retenido por SAP para auditar especificaciones de la prueba y los resultados de pruebas de funcionamiento. La prueba utilizaba conceptos similares a los de la industria estándar TPC-H de referencia. Los datos de prueba tenían entre 600 millones y 1,8 mil millones de filas y la prueba corrió cinco tipos de consultas analíticas y tres tipos de operación de consulta de informes. El rendimiento combinado de las consultas de informes analíticos y operativos funcionó entre 3007 consultas / hora y 10.042 consultas por hora, dependiendo del volumen de datos.
Para habilitar la escalabilidad en términos de volúmenes de datos y el número de solicitudes de aplicaciones, la base de datos HANA apoya la ampliación y la escala de salida. Por ampliación, todos los algoritmos y estructuras de datos están diseñados para trabajar en los grandes núcleos múltiples de arquitecturas especialmente centrados en la conciencia de caché de estructuras de datos y fragmentos de código. Para escalada, la base de datos HANA está diseñada para ejecutarse en un clúster de máquinas individuales que permitan la distribución de datos y procesamiento de consultas a través de múltiples nodos.