Los LOBs Hibridos de SAP HANA Database

Como veíamos en la entrada anterior, con los tipos de datos LOB de SAP HANA es posible almacenar datos de gran tamaño, tales como documentos, imágenes o videos. Ahora bien, pero toda esta información dentro de una estructura de tablas de la base de datos podría significar un gran consumo de recursos de manera innecesaria. Desde la actualización SPS 07 de SAP HANA están disponibles los denominados LOBs híbridos, los cuales estarán en memoria sólo cuando son utilizados.


Como veíamos en la entrada anterior, con los tipos de datos LOB de SAP HANA es posible almacenar datos de gran tamaño, tales como documentos, imágenes o videos. Ahora bien, pero toda esta información dentro de una estructura de tablas de la base de datos podría significar un gran consumo de recursos de manera innecesaria.  Desde la actualización SPS 07 de SAP HANA están disponibles los denominados LOBs híbridos, los cuales estarán en memoria sólo cuando son utilizados.

Con los LOB híbridos se puede almacenar datos LOB en el disco hasta que se necesite en lugar de tener que cargarlos en la memoria. Esto influye en el consumo de recursos, por lo tanto afecta a la puesta en marcha del sistema y los tiempos de respuesta. SAP HANA puede almacenar objetos binarios grandes (LOB) en el disco y no dentro de estructuras de columnas o filas de la memoria principal.

Los LOB híbridos residen primero en el disco y se hace referencia a este contenido únicamente por un ID en la columna de la tabla correspondiente. Si hay escasez de memoria, los datos LOB pueden ser descargados desde la memoria principal. A través de unos parámetros del sistema se puede determinar que los datos LOBs pequeños (por defecto, menos de 1.000 bytes) se mantengan en memoria, mientras que los de tamaño superior se mantengan en el disco.

Los cambios que introdujo la actualización SPS 07 de SAP HANA Database sobre los datos LOBs, derivó a que se introdujeran los términos  LOBs de memoria (el mecanismo inicial) y LOBs Híbridos (o LOBS de disco). SAP HANA ofrece un conjunto de sentencias SQL que permiten la parametrización, creación y gestión de estos tipos de datos.

Almacenamiento de gran tamaño en SAP HANA: Campos LOBs

Si estas necesitando almacenar contenidos de gran tamaño, tales como documentos o imágenes en una plataforma SAP HANA Database, debes pensar en los tipos de datos LObs (Large Objetcs), especialmente diseñados para este fin. Existen los siguientes tipos:


Si estas necesitando almacenar contenidos de gran tamaño, tales como documentos o imágenes en una plataforma SAP HANA Database, debes pensar en los tipos de datos LObs (Large Objetcs), especialmente diseñados para este fin. Existen los siguientes tipos:

  • BLOB: Datos binarios. Por ejemplo, imágenes. Para tablas con almacenamiento por filas y columnas.
  • CLOB: Texto ASCII. Para tablas con almacenamiento por filas y columnas.
  • NCLOB: Texto UNICODE. Para tablas con almacenamiento por filas y columnas.
  • TEXT: Texto con características adicionales de búsqueda. Sólo para tablas columnares. Muchas funciones de cadenas no son aplicables a este tipo de dato.
  • BINTEXT: Texto y datos binarios con características adicionales de búsqueda. Con similares restricciones al tipo TEXT.  La definición de este tipo de dato genera una columna de tipo NCLOB.
  • Nota: El tipo de dato VARBINARY, a pesar que puede almacenar hasta 5.000 bytes no es considerado un tipo LOB, por lo que se carga en memoria cuando se acceda sin ninguna restricción como las que se podrían aplicar con los LOBs híbridos, señalados en próxima entrada.

Restricciones de los tipos de datos LObs

  • Un campo de un tipo LOB sólo puede tener un máximo de 2 GB. Hay alertas que permiten controlar esta situación (Check ID 450 – Tables with memory LOBs > 2 GB).
  • Una columna LOB no puede ser utilizada con la cláusula ORDER BY, GROUP BY, SLECT DISTINC, SELECT con funciones de agregación, FROM como operando en joins.
  • Una columna LOB no puede ser clave primaria

Tratamientos de cadena soportados

  • LENGTH para los tipos CLOB, NCLOB y BLOB. Retorna el tamaño de campo LOB en bytes.
  • SUBSTR para los tipos CLOB y NCLOB. Retorna una subcadena del campo LOB.
  • Las clausulas LIKE y CONTAINS para los tipos CLOB y NCLOB.
  • Cláusula IS NUL sólo para los tipos CLOB, NCLOB y BLOB.

Nota: Ver siguiente entrada sobre LOBs híbridos.

Referencia: SAP Note 2220627

Terminología sobre Correcciones y Mejoras en SAP HANA

En cuanto a las correcciones y mejoras que pueden liberarse en SAP HANA, existe una terminología similar a otras plataformas de SAP, quizás con ciertos matices que tratamos de aclarar a continuación:


En cuanto a las correcciones y mejoras que pueden liberarse en SAP HANA, existe una terminología similar a otras plataformas de SAP, quizás con ciertos matices que tratamos de aclarar a continuación:

  • Revisions. Se trata de correcciones para los componentes centrales o core tales como SAP HANA Database, Clientes, Application Fuction Library o SDA).
  • Support Packages (SP). Incluye correcciones o mejoras de todos los demás componentes de SAP HANA, que no cubre una revisión.
  • Support Package Stack (SPS). Se trata de nuevas capacidades o funcionalidades, las cuales tienen una ferecuencia de dos vesces al año. Incluyen las revisiones o SP previos.

La numeración de las SPS y revisiones están alineadas para facilitar su identificación. Por ejemplo, la revisión 90 se refiere a la primera revisión del SPS 09.

Revisiones, SP y SPS de SAP HANA

Revisando el Roadmap sobre IoT de SAP

Al igual que sucedió con el cloud o el Big Data, los líderes en tecnología están incluyendo el Internet of Things (IoT) en sus propuestas. Son muy optimistas las expectativas de adopción de esta tecnología, que prevén consultoras como Gartner, y que no dejan indiferentes ni a SAP, que en el pasado fue más cauto con otras tecnologías.


Al igual que sucedió con el cloud o el Big Data, los líderes en tecnología están incluyendo el Internet of Things (IoT) en sus propuestas. Son muy optimistas las expectativas de adopción de esta tecnología, que prevén consultoras como Gartner, y que no dejan indiferentes ni a SAP, que en el pasado fue más cauto con otras tecnologías.

Revisando una de las primeras versiones del roadmap sobre IoT que ha publicado SAP el 29 de septiembre de 2015, resulta, por lo menos, complejo de comprenderlo. Como es lógico, este “mapa de ruta” gira alrededor de su plataforma SAP HANA y a las capacidades predictivas que SAP ha ido desarrollando (o adquiriendo) en los últimos años y ha incorporado en su base de datos in-memory y en otros productos.

Visión de integración de dispositivos y procesos según SAP

Salvo mejor parecer, la confusión viene dada porque en un solo documento se ha querido plasmar las posibilidades instalación de la plataforma, toda la gama de posibilidades de interconexión con otros productos y las posibilidades analíticas que se podrían explotar para la implementación de una solución basada en IoT.

SAP Internet of Things - roadmap

Quizás pretendemos ser muy simplistas, pero en IoT para SAP, por un lado señalaríamos la capacidad de cálculo en-memoria de HANA, lo que facilita el procesamiento de grandes volúmenes de datos, y por otro lado, una herramienta como SAP HANA Smart Data Streaming, una de las herramientas señaladas en el roadmap de IoT de SAP.

SAP HANA Smart Data Streaming

SAP HANA Smart Data Streaming (lo abreviaremos como SDS on HANA) fue presentada en la actualización SPS 09 de HANA como una herramienta para capturar datos de manera continuada proveniente de dispositivos y aplicaciones, procesarlos en tiempo real con los siguientes fines:

  • Detectar tendencias y patrones,
  • Identificar valores y monitorizar correlaciones,
  • Generar alertas y notificaciones
  • Actualizar en tiempo real tableros (dashboards operacionales),
  • Formular respuestas a preguntas básicas
  • Agregar y resumir los datos.

SDS on HANA cuanta con varias alternativas de conectividad a varias fuentes de datos. Los datos recibidos son tratados de acuerdo a consultas y reglas (business logic) que brindan la salida deseada que son encaminadas de acuerdo a adaptadores de salida.

Arquitectura de SAP HANA Smart Data Streaming

SDS on HANA incluye varios componentes, entre ellos un plugin para SAP HANA Studio (para los desarrolladores), así como soporte a Continuous Computation Language (CCL) para la aplicación de funcionalidades complejas como agrupamiento y agrupamiento de datos.

Referencia: Roadmap sobre IoT de SAP (o aquí)

La innovación en #IoT, la clave está en el proceso

Internet de las Cosas (Internet of Things – IoT) o simplemente Dispositivos conectados (Connected devices), no es un término nuevo, ya lleva más de tres años con una gran cantidad de menciones y referencias. Para nosotros, IoT debe ser considerado la nueva piedra angular para innovar en la industria y en la vida diaria de las personas, no por la tecnología que conlleva, sino por todos los elementos que lo conforman.


Internet de las Cosas (Internet of Things – IoT) o simplemente Dispositivos conectados (Connected devices), no es un término nuevo, ya lleva más de tres años con una gran cantidad de menciones y referencias. Para nosotros, IoT debe ser considerado la nueva piedra angular para innovar en la industria y en la vida diaria de las personas, no por la tecnología que conlleva, sino por todos los elementos que lo conforman.

Los macronúmeros del IoT

A continuación, transcribimos un ejemplo de aplicación de IoT que más de una vez hemos leído:

Dejas tu automóvil en un aparcamiento de un supermercado, mientras estás haciendo la compra, alguien le da un golpe. Automáticamente tu vehículo, que ahora es “inteligente”, detecta los daños y envía un informe a tu compañía de seguros. La compañía de seguros contacta contigo a través del teléfono móvil para coordinar fecha y hora para recoger el vehículo para su evaluación por parte de un perito. Simultáneamente, la compañía de seguros realiza indagaciones para identificar al conductor que provocó el choque.

Al leer el párrafo anterior, observamos los elementos que consideramos deberían conformar un servicio basado en IoT:

  1. Dispositivos o cosas capaces de enviar información (dispositivos conectados).
  2. Redes disponibles dónde se encuentren los dispositivos “inteligentes” que faciliten el tránsito de datos entre los dispositivos o hacia una central de procesamiento de datos.
  3. Capacidad de procesamiento y análisis en tiempo real de los datos enviados por los dispositivos inteligentes.
  4. Un proceso, que determina la secuencia de acciones a llevar a cabo como resultado del procesamiento y análisis de datos.

Como sabemos, todo lo que tiene precio y se puede comprar, no es innovación. De los elementos antes señalados, los dos primeros, resultan económicos y fáciles de adquirir, inclusive el tercer elemento. Las propuestas de bases de datos para el procesamiento de grandes volúmenes de información en tiempo real se están popularizando y abaratando.

Para nosotros, en IoT, no se trata tan sólo de sensores o SIMs, la clave está en la definición del proceso, el cual determinará la información que deberán enviar los dispositivos, cómo se procesarán los datos, que acciones se realizarán y sobre todo, cómo interactuará con las personas u otros procesos, para que finalmente se perciba valor en la propuesta basada en IoT.