
[26/07/2019] ¿Son los almacenes de datos relevantes de nuevo, o son una especie en extinción?
Está perdonado si está un poco confundido en este tema. Por un lado, el almacenamiento de datos ciertamente parece estar en una buena racha. Como observador de la industria desde hace mucho tiempo, he visto cómo esta crecía en oleadas sucesivas de innovación y actividad de startups.
Esencialmente, esta tendencia comenzó hace una década, cuando el factor de forma del dispositivo ingresó a nivel general al almacenamiento de datos. Posteriormente, adquirió un nuevo impulso hace ya varios años, cuando el mercado se dirigía hacia la nueva generación de almacenes de datos en la nube. En los últimos años, un proveedor de almacenamiento de datos en la nube -Snowflake- ha ganado una cantidad desmedida de impulso en el mercado.
El eclipse del almacén de datos
Por otro lado, el almacenamiento de datos sigue eclipsado por los nuevos paradigmas de la industria, como el big data, el aprendizaje automático y la inteligencia artificial. Esta tendencia ha fomentado la impresión de que el almacenamiento de datos está disminuyendo como una prioridad en las áreas de TI empresariales. Pero, en realidad, la mayoría de las organizaciones ahora tiene al menos uno y, a menudo, múltiples almacenes de datos que sirven a varias aplicaciones derivadas.
La persistencia del almacenamiento de datos como una carga de trabajo empresarial central es la razón por la cual, hace varios años, sentí que tenía que aportar mis ideas sobre por qué el almacén de datos está lejos de morir. Probablemente también explica por qué otros observadores sintieron que tenían que redefinir el concepto del almacén de datos para mantenerlo relevante en la era de los lagos de datos y la computación en la nube.
El almacenamiento de datos como práctica no solo prospera, sino que ahora se percibe como una frontera central de crecimiento accesible para la industria de la computación en la nube. Sin embargo, se perdería gran parte de la acción en este espacio si se centrara estrictamente en esas plataformas -como Snowflake- que están dirigidas al mercado bajo esta etiqueta.
El auge de los lagos de datos
Lo que muchos llaman un "lago de datos” está evolucionando rápidamente hacia el almacén de datos de siguiente generación. Para aquellos que no están familiarizados con el concepto, un lago de datos es un sistema o repositorio de datos multiestructurados que se almacenan en sus formatos y esquemas naturales, generalmente como "objetos” o archivos.
Los lagos de datos generalmente funcionan como un único almacén para todos los datos empresariales, donde se incluyen las copias en bruto de los datos del sistema de origen y los datos transformados que se utilizan para tareas como informes, visualización, analítica y aprendizaje automático. Incorporan un archivo distribuido o un almacén de objetos, una biblioteca de modelos de aprendizaje automático y grupos de recursos de procesamiento y almacenamiento altamente paralelizados. Además, en lugar de imponer un esquema y una semántica comunes en los objetos que almacenan, los lagos de datos generalmente hacen un esquema en lectura y usan modelos estadísticos para extraer correlaciones y patrones significativos de todo esto.
Nada de esto es inconsistente con los conceptos básicos de Inmon y Kimball, que informan el enfoque de la mayoría de los profesionales para el almacenamiento de datos. Fundamentalmente, existe un almacén de datos para agregación, retención y gobernanza de los registros de datos de "versión única de la verdad” oficialmente sancionados. Este concepto es independiente de los dominios de aplicación específicos de los datos que se administran y de los casos de uso particulares en los que se utilizan.
Si tiene dudas sobre lo que estoy diciendo en ese punto, simplemente consulte esta discusión de la definición de Bill Inmon de un almacén de datos y esta comparación de los marcos de trabajo de Inmon y Ralph Kimball. El almacén de datos tiene que ver con el soporte de decisiones basado en datos en general, lo que lo hace bastante extensible al nuevo mundo de la inferencia basada en la inteligencia artificial.
Los almacenes de datos de siguiente generación
El año pasado, varios anuncios de alto perfil de la industria han señalado un cambio en el papel del almacén de datos. Si bien el apoyo a las decisiones -también conocido como inteligencia de negocios, informes y procesamiento analítico en línea- sigue siendo el caso de uso principal de la mayoría de los almacenes de datos, estamos viendo un cambio constante hacia la automatización de las decisiones. En otras palabras, los almacenes de datos ahora son compatibles con la línea de la ciencia de datos que construye aplicaciones de aprendizaje automático para inferencias basadas en datos.
De hecho, la nueva generación de almacenes de datos son los lagos de datos. Principalmente, están diseñados para la gobernanza de los datos depurados, consolidados y sancionados utilizados para construir y entrenar modelos de aprendizaje automático. En la conferencia re:Invent de Amazon del pasado otoño [septentrional], por ejemplo, Amazon Web Services anunció AWS Lake Formation. El propósito expreso de este nuevo servicio administrado es simplificar y acelerar la configuración de lagos de datos seguros. Sin embargo, AWS Lake Formation tiene todas las funciones de un almacén de datos en la nube, aunque AWS no lo llama así y, de hecho, ya ofrece un almacén de datos clásico llamado Amazon Redshift, que está orientado hacia las aplicaciones de soporte de decisiones.
AWS Lake Formation se ve, camina y actúa como un almacén de datos. De hecho, AWS lo describe de una manera que fomenta dichas comparaciones: "Un lago de datos es un repositorio centralizado, curado y seguro que almacena todos sus datos, tanto en su forma original como preparados para su análisis. Un lago de datos le permite desglosar los silos de datos y combinar diferentes tipos de analítica para obtener información y guiar mejores decisiones de negocios”.
De hecho, AWS presenta AWS Lake Formation como una especie de súper almacén de datos tanto para el soporte de decisiones como para la automatización de decisiones basadas en inteligencia artificial. Específicamente, el proveedor afirma que el servicio está diseñado para administrar conjuntos de datos que "los usuarios aprovechan...con su elección de servicios de analítica y aprendizaje automático, como Amazon EMR para Apache Spark, Amazon Redshift, Amazon Athena, Amazon SageMaker y Amazon QuickSight”.
Otro ejemplo es el recientemente anunciado proyecto de código abierto, Delta Lake de Databricks. El expreso propósito de Delta Lake, que está disponible ahora bajo la licencia Apache 2.0, es similar al formato de lago de AWS: agregación, depuración, organización y gobernanza de conjuntos de datos mantenidos en un lago de datos para respaldar el canal de aprendizaje automático.
Delta Lake se encuentra en la parte superior de una plataforma, local o en la nube, de almacenamiento de datos a la que se puede acceder desde Apache Spark, como HDFS, Amazon S3 o almacenamiento de Microsoft Azure. Delta Lake almacena datos en Parquet para proporcionar lo que Databricks denomina una "capa de almacenamiento transaccional”. Parquet es un formato de almacenamiento en columnas de código abierto disponible para cualquier proyecto en el ecosistema de Hadoop, independientemente de la elección del marco de procesamiento de datos. Soporta transacciones ACID a través de la serializabilidad de la concurrencia optimista, aislamiento de snapshots, control de versiones de datos, reversión, y aplicación de esquemas.
Una diferencia clave entre Delta Lake y AWS Lake Formation es que Delta Lake procesa tanto los datos por lotes como los de transmisión en ese canal. Otra es que Delta Lake admite transacciones ACID en todos esos datos, permitiendo múltiples escrituras y lecturas simultáneas en cientos de aplicaciones. Además, los desarrolladores pueden acceder a versiones anteriores de cada Delta Lake para realizar auditorías, reversiones o reproducir los resultados de sus experimentos de aprendizaje automático de MLFlow.
En el nivel más amplio, Delta Lake parece competir con el proyecto de almacenamiento de datos de código abierto más ampliamente adoptado, Apache Hive, aunque Hive se basa exclusivamente en el almacenamiento basado en HDFS, y hasta hace poco ha carecido de soporte para transacciones ACID. Anunciado hace un año, Hive 3 finalmente incorpora soporte de ACID para los almacenes de datos basados en Hadoop. Hive 3 proporciona atomicidad y aislamiento de snapshots de operaciones en tablas CRUD (crear, leer, actualizar, borrar) transaccionales usando archivos delta.
La base para la automatización de las decisiones basadas en inteligencia artificial
Los anuncios recientes de la industria (AWS Lake Formation, Delta Lake y Hive 3) predicen el día en que los lagos de datos se convierten en hubs de gobernanza para todas las aplicaciones de soporte de decisiones y automatización de decisiones, así como para todas las aplicaciones de datos transaccionales. Para que estas tendencias se aceleren, los proyectos de código abierto como Hive 3 y Delta Lake necesitarán ganar mayor impulso entre los proveedores y los usuarios.
El término "almacenamiento de datos” probablemente perdurará para referirse principalmente a los almacenes de datos de múltiples dominios estructurados y controlados por la gobernanza de la inteligencia de negocios. Sin embargo, las plataformas de datos subyacentes continuarán evolucionando para proporcionar la base de gobernanza de datos central para los pipelines de la inteligencia artificial basados en la nube.
La inteligencia artificial, no la de negocios, está impulsando la evolución del almacén de datos de la industria.
James Kobielus, InfoWorld (EE.UU.)
James Kobielus es el analista líder de IA, ciencia de datos, y desarrollo de aplicaciones en SiliconAngle Wikibon.