The Data Warehouse series #1 | Top-down VS Bottom-up

The Data Warehouse series #1 | Top-down VS Bottom-up

El almacenamiento de datos y el diseño de la solución para acceder a ellos es de vital importancia para las organizaciones que, cada vez más, necesitan extraer valor de la gran cantidad de datos generada en sus operaciones diarias. Los Data warehouse y Data Marts son parte de la infraestructura estratégica que da respuesta a esta necesidad.

Definiciones

Si tuviera que dar una definición a grandes rasgos diría que un Data Warehouse (DW) es un sistema de almacenamiento de datos centralizado que integra y almacena grandes cantidades de datos procedentes de diversas fuentes dentro de una organización y que un Data Mart (DM) es un subconjunto de estos datos que están centrados en las necesidades especificas de un área o unidad.

Bill Inmon, considerado el padre (en ocasiones el abuelo) del DW, lo define como:

"[...]Una colección de datos orientada a un determinado ámbito (empresa, organización, etc.), integrado, no volátil y variable en el tiempo, que ayuda a la toma de decisiones en la entidad en la que se utiliza. Se trata, sobre todo, de un historial completo de la organización, más allá de la información transaccional y operacional, almacenado en una base de datos diseñada para favorecer el análisis y la divulgación eficiente de datos (especialmente con herramientas de procesamiento analítico en línea, OLAP)."

Y Ralph Kimball, padre del modelado dimensional que revoluciono la arquitecturas de DW, los define como:

"[...]Simplemente la unión de todas las fuentes de datos corporativas en una única vista de la verdad. Es la copia única, completa, coherente y precisa de los datos corporativos integrados y está disponible para que los usuarios la interroguen y la utilicen para todas sus decisiones de toma de decisiones."

Mientras que Inmon destaca la importancia de la integración y el enfoque histórico, Kimball se centra en la utilidad práctica y la disponibilidad de datos para la toma de decisiones. De allí que la principal diferencia de enfoque entre estos autores sea, desde una perspectiva arquitectónica, el sentido en el cual deben construirse. Inmon plantea una filosofía de construcción descendente (Top-Down) y Kimball, por el contrario, propone un enfoque ascendente (Bottom-Up).

Top-Down (Inmon)

  • Se comienza con la creación de un almacén de datos centralizado, global y detallado que incorpora datos de toda la empresa. Luego, se crean Data Marts para departamentos o áreas específicas a partir de este almacén central.
  • Este modelo usa formas normalizadas de datos para construir la estructura de las entidades, evitando así la redundancia de datos lo más posible.
  • Es necesario un conocimiento claro y detallado de cada una de las operaciones de la organización para poder llevar a cabo la planificación del previo a su implementación.

Tal como se puede ver en el diagrama de arriba, todas las fuentes de datos de la capa operacional confluyen mediante un proceso de ETL para dar lugar a la construcción del DW a partir del cual se genera la capa departamental que contiene a los Data Marts. El DW es en definitiva el único origen de datos para los Data-Marts a fin de asegurar la integridad y consistencia transversal a través de toda la empresa.

Credit:

En este diagrama muy similar al anterior se agregan los cubos OLAP y los navegadores de cubos o Cube Browsers que serán empleados para la capa de reporte.

  • Inmon considera que un almacén de datos y un datamart están físicamente separados. El almacén de datos tiene su propia existencia física y está orientado al almacenamiento, la trazabilidad y la escalabilidad en respuesta a nuevos requisitos. Por otra parte, los datamarts tienen su propia existencia física y deben tener una estructura orientada al rendimiento en respuesta a los requisitos del usuario.

Bottom-Up (Kimball)

  • Se comienza por desarrollar Data Marts específicos para departamentos individuales o áreas de negocio que se nutren de los datos provenientes de la capa operacional. La data en estos datamarts sufre un proceso de ETL para acomodar sus datos en un Datawarehouse de modelado dimensional. Estos data marts se enfocan en satisfacer sus necesidades analíticas específicas y se integran gradualmente para formar un Data Warehouse corporativo más grande.

En este otro diagrama se vuelven a incorporar el cubo OLAP y el Cube browser.

Las fuentes primarias de datos son evaluadas y una herramienta ETL es usada para obtener la información de multiples fuentes y cargarla en el area de preparación del DW. Una vez eso ocurre, la siguiente fase es cargar esta data a un modelo dimensional que por naturaleza es desnormalizado y facilita el análisis de los datos.

Antes de seguir, un breve glosario de términos:

OLTP: De Procesamiento de Transacciones en Línea, es un tipo de sistema de gestión de bases de datos que utiliza un modelo entidad-relación (MER) y maneja la carga de acceso y escritura de datos relacionada con las operaciones cotidianas.

OLAP: De Procesamiento Analítico en Línea, es una estructura virtual de datos que permite acceder rápida y fácilmente a datos calculados, agrupados o desagrupados sobre diferentes aspectos de contexto o dimensiones en torno a un hecho o conjunto de hechos que son significativos para la empresa como por ejemplo las ventas. Más sobre este tema en mi articulo sobre Modelado Dimensional & Cubos OLAP

Cube Browser: Aplicación o herramienta de software diseñada para explorar y analizar datos almacenados en cubos OLAP.

Ventajas y desventajas

Top-Down

  • Ventajas: Ofrece una visión unificada y consistente de los datos en toda la organización. La integridad y coherencia de los datos son prioridades, ya que todos los datos provienen de un único punto de verdad.
  • Desventajas: La construcción de un Data Warehouse centralizado y completo puede llevar más tiempo y requerir una inversión inicial significativa en comparación con un enfoque bottom-up. Esto a su vez, puede ser menos ágil para adaptarse a los cambios rápidos en las necesidades de negocio, ya que se requiere una planificación exhaustiva antes de la implementación.

Bottom-Up

  • Ventajas: Permite una implementación más rápida y focalizada, ya que cada Data Mart se construye de manera independiente. Es especialmente útil cuando hay necesidades analíticas inmediatas en áreas específicas de la organización lo cual está más alineado con las necesidades de las organizaciones a dar respuestas ágiles.
  • Desventajas: La necesidad de reconciliar diferencias en la estructura y definición de datos entre los Data Marts al consolidarlos en un Data Warehouse corporativo aumenta el riesgo de falta de coherencia y puede representar problemas de integración. La gestión de múltiples Data Marts puede representar un mayor consumo de recursos a largo plazo para mantener la coherencia y evitar la duplicación a medida que evolucionan las necesidades de la organización.


Conclusiones personales

Si bien ambos enfoques tienen sus ventajas y desventajas y la elección entre ellos depende completamente de las necesidades y la estructura específica de la organización, la baja barrera de entrada del modelo de Kimball y su enfoque mas inmediato para dar respuestas a necesidades emergente o de unidades especificas lo hacen una opción mas atractiva y alineada con las metodologías ágiles.

Cabe también destacar que si bien en el ámbito de especialistas en este tema hay quienes son mas acérrimos defensores de un enfoque o de otro, es también muy común que en la practica se opte por enfoques híbridos; combinando elementos de ambas filosofías permitiendo por ejemplo dar una respuesta mas rápida a las necesidades de algunos departamentos o unidades de negocio mientras que a la vez se construye el DW corporativo en paralelo logrando así una menor barrera de entrada que el enfoque top-down y la mitigación del riesgo de perdida de coherencia del enfoque bottom-up.


Fuentes

  • William H. Inmon, "Building the Data Warehouse," John Wiley & Sons, 1996.
  • Ralph Kimball, "The Data Warehouse Toolkit: The Definitive Guide to Dimensional Modeling," John Wiley & Sons, 2013.


Ankur Saxena

🌱💡Senior BI Specialist @ Kaufland e-commerce | Driving Data-Driven Decisions| Analytics Engineering

1 año

Hi Alejandro Loredo , is there any English version of the above article? I would definitely love to read this one.

Inicia sesión para ver o añadir un comentario.

Más artículos de Alejandro Loredo

Otros usuarios han visto

Ver temas