¿Qué es un data warehouse? La fuente de la inteligencia de negocios

0
9

Las bases de datos se clasifican normalmente en relacionales (SQL) o NoSQL, y transaccionales (OLTP), analíticas (OLAP) o híbridas (HTAP). Las bases de datos departamentales y aquellas para fines especiales se consideraron, inicialmente, grandes mejoras en las prácticas de negocio, pero luego se derivaron en «islas”. Cuando los datos se dejan en su formato nativo, los intentos de crear bases de datos unificadas para todos los datos de una empresa se clasifican como lagos de datos, y data warehouse si los datos se colocan en un formato y esquema comunes. Los subconjuntos de un data warehouse se denominan data marts. 

Qué es un data warehouse
Básicamente, un data warehouse es una base de datos analítica, generalmente relacional, que se crea a partir de dos o más fuentes de datos, generalmente para almacenar datos históricos, que pueden tener una escala de petabytes. Los data warehouses suelen tener importantes recursos informáticos y de memoria para ejecutar consultas complicadas y generar informes. Con frecuencia, son las fuentes de datos para los sistemas de inteligencia de negocios (BI, por sus siglas en inglés) y el aprendizaje automático. 

¿Por qué utilizar un data warehouse?
Una de las principales motivaciones para utilizar un data warehouse empresarial, o EDW, es que su base de datos operativa (OLTP) limita la cantidad y el tipo de índices que puede crear y, por lo tanto, ralentiza sus consultas analíticas. Una vez que haya copiado sus datos en el data warehouse, puede indexar todo lo que le importa en el data warehouse para obtener un buen rendimiento de consultas analíticas, sin afectar el rendimiento de escritura de la base de datos OLTP. 

Otra razón para tener un data warehouse empresarial es permitir unir datos de múltiples fuentes para su análisis. Por ejemplo, su aplicación OLTP de ventas probablemente no necesite conocer el clima en sus ubicaciones de ventas, pero sus predicciones de ventas podrían aprovechar esos datos. Si agrega datos meteorológicos históricos a su data warehouse, sería fácil incluirlos en sus modelos de datos históricos de ventas. 

Data warehouse versus lago de datos
Los lagos de datos, que almacenan archivos de datos en su formato nativo, son esencialmente «esquema en lectura”, lo que significa que cualquier aplicación que lea datos del lago deberá imponer sus propios tipos y relaciones a los datos. Los data warehouses, por otro lado, son «esquemas en escritura”, lo que significa que los tipos de datos, índices y relaciones se imponen a los datos a medida que se almacenan en la EDW. 

El «esquema en lectura” es bueno para los datos que se pueden usar en varios contextos y presenta poco riesgo de perder datos, aunque el peligro es que los datos nunca se usarán en absoluto. (Qubole, un proveedor de herramientas de almacenamiento de datos en la nube para lagos de datos, estima que el 90% de los datos en la mayoría de los lagos de datos están inactivos). El «esquema en escritura” es bueno para datos que tienen un propósito específico y bueno para datos que deben relacionarse adecuadamente con datos de otras fuentes. El peligro es que los datos con formato incorrecto pueden descartarse en la importación porque no se convierten correctamente al tipo de datos deseado. 

Data warehouse versus data mart
Los data warehouses contienen datos de toda la empresa, mientras que los data marts contienen datos orientados hacia una línea de negocio específica. Los data marts pueden depender del data warehouse, ser independientes del data warehouse (es decir, extraídos de una base de datos operativa o de una fuente externa) o un híbrido entre los dos. 

Las razones para crear un data mart incluyen usar menos espacio, devolver los resultados de las consultas más rápido y tener un costo menor de ejecución que un data warehouse completo. A menudo, un data mart contiene datos resumidos y seleccionados, en lugar de, o además de, los datos detallados que se encuentran en el data warehouse. 

Arquitecturas de data warehouse
En general, los data warehouses tienen una arquitectura en capas: datos de origen, una base de datos provisional, herramientas ETL (extraer, transformar y cargar) o ELT (extraer, cargar y transformar), el almacenamiento de datos adecuado y herramientas de presentación de datos. Cada capa tiene un propósito diferente. 

Los datos de origen a menudo incluyen bases de datos operativas de ventas, marketing y otras partes del negocio. También puede incluir redes sociales y datos externos, como encuestas y datos demográficos. 

La capa de preparación almacena los datos recuperados de las fuentes de datos; si una fuente no está estructurada, como el texto de las redes sociales, aquí es donde se impone un esquema. Aquí es también donde se aplican los controles de calidad, para eliminar datos de mala calidad y corregir errores comunes. Las herramientas ETL extraen los datos, realizan las asignaciones y transformaciones deseadas, y cargan los datos en la capa de almacenamiento de datos. 

Las herramientas ELT almacenan los datos primero y luego se transforman. Cuando usa herramientas ELT, también puede usar un lago de datos y omitir la capa de preparación tradicional. 

La capa de almacenamiento de datos de un data warehouse contiene datos limpios y transformados listos para su análisis. A menudo será un almacén relacional orientado a filas, pero también puede estar orientado a columnas, o tener índices de lista invertida para búsquedas de texto completo. Los data warehouses suelen tener muchos más índices que los data warehouses operativos, para acelerar las consultas analíticas. 

La presentación de datos, desde un data warehouse, a menudo se realiza mediante la ejecución de consultas SQL, que se pueden construir con la ayuda de una herramienta GUI. El resultado de las consultas SQL se utiliza para crear tablas de visualización, gráficos, paneles, informes y pronósticos, a menudo con la ayuda de herramientas de inteligencia de negocios (BI, por sus siglas en inglés). 

Últimamente, los data warehouses han comenzado a soportar el aprendizaje automático para mejorar la calidad de los modelos y las previsiones. Google BigQuery, por ejemplo, ha agregado declaraciones SQL con el fin de brindarles soporte a modelos de regresión lineal para pronósticos y modelos de regresión logística binaria destinados a la clasificación. Algunos data warehouses incluso se han integrado con bibliotecas de aprendizaje profundo y herramientas de aprendizaje automático automatizado (AutoML). 

Data warehouse en la nube versus data warehouse on premises
Un data warehouse se puede implementar on premises, en la nube o como híbrido. Históricamente, los data warehouses siempre eran on premises, pero el costo de capital y la falta de escalabilidad de los servidores on premises en los centros de datos a veces eran un problema. Las instalaciones de EDW crecieron cuando los proveedores comenzaron a ofrecer dispositivos de almacenamiento de datos. Sin embargo, ahora la tendencia es trasladar todo, o parte de su data warehouse, a la nube para aprovechar la capacidad de crecimiento inherente de la nube EDW y la facilidad de conectarse a otros servicios en la nube. 

La desventaja de colocar petabytes de datos en la nube es el costo operativo, tanto para el almacenamiento de datos en la nube como para los recursos informáticos y de memoria del data warehouse en la nube. Podría pensar que el tiempo para cargar petabytes de datos en la nube sería una gran barrera, pero los proveedores de la nube a hiperescala ahora ofrecen servicios de transferencia de datos basados en discos de alta capacidad. 

Diseño de data warehouse de arriba hacia abajo versus abajo hacia arriba
Existen dos escuelas de pensamiento principales sobre cómo diseñar un data warehouse. La diferencia entre los dos tiene que ver con la dirección del flujo de datos entre el data warehouse y los data marts. 

El diseño de arriba hacia abajo (conocido como enfoque Inman) trata el data warehouse como el repositorio de datos centralizado para toda la empresa. Los data marts se derivan del data warehouse. 

El diseño ascendente (conocido como enfoque de Kimball) trata los data marts como primarios y los combina en el data warehouse. En la definición de Kimball, el data warehouse es «una copia de los datos de transacciones estructurados específicamente para consultas y análisis”. 

Las aplicaciones de seguros y fabricación del EDW tienden a favorecer la metodología de diseño de arriba hacia abajo de Inman. El marketing tiende a favorecer el enfoque de Kimball. 

¿Lago de datos, data mart o data warehouse?
En última instancia, todas las decisiones asociadas con los data warehouses empresariales se reducen a los objetivos, los recursos y el presupuesto de su empresa. La primera pregunta es si necesita un data warehouse. La siguiente tarea, suponiendo que lo haga, es identificar sus fuentes de datos, su tamaño, su tasa de crecimiento actual, y lo que está haciendo actualmente para utilizarlas y analizarlas. Después de eso, puede comenzar a experimentar con lagos de datos, data marts y data warehouses para ver qué funciona mejor en su organización. 

Sugeriría hacer su prueba de concepto con un pequeño subconjunto de datos, alojados en hardware on premises existente o en una pequeña instalación en la nube. Una vez que haya validado sus diseños y demostrado los beneficios para la organización, puede aumentar su escala a una instalación completa con soporte de administración completo. 

Martin Heller InfoWorld.com – CIOPeru.pe 

Artículo anteriorASRock presenta su motherboard X570S PG Riptide
Artículo siguienteCómo Google Tables puede aumentar su productividad