Guías

Diseño de data warehouse: arquitectura, tipos y pasos

May 16, 2023
En esta publicación, veremos cómo puedes diseñar un almacén de datos para tu empresa y cómo Fivetran puede ayudarte a cargar datos en tu almacén de datos y profundizar en cualquier nivel de detalle que desees. 

Las empresas suelen tener datos dispersos entre departamentos y equipos. Los datos fragmentados no ofrecen a los líderes empresariales una visión completa y orientada a datos sobre cómo crece su negocio y dónde necesita mejorar.

Una fuente única de verdad es fundamental para obtener insights integrales. Por ejemplo, al centralizar todos los datos de gestión de la cadena de suministro, CRM y métricas de éxito del cliente en un solo lugar, una empresa puede evitar el pensamiento en silos.

Los data warehouses son repositorios de datos que consolidan información de fuentes dispares para reportes y analytics. Unifican los procesos de organización y representación de datos para facilitar su captura, intercambio y análisis.

Dos enfoques para diseñar un data warehouse

Bill Inmon (enfoque top-down)

En el enfoque top-down, el data warehouse se diseña primero y después se crean los data marts (estructuras de datos correspondientes a una línea de negocio o equipo específico de la empresa).

Los ingenieros de datos primero extraen los datos de las fuentes y los transfieren al data warehouse. También puedes contar con un área de staging para almacenar los datos antes de moverlos al data warehouse.

Después puedes extraer datos del data warehouse, aplicar técnicas de resumen y distribuirlos a los data marts. La ventaja es que, al obtener todos sus datos de un data warehouse central, los datos se mantienen consistentes. Sin embargo, este método puede requerir mucho tiempo y recursos.

El enfoque Inmon es útil cuando necesitas integración de datos a nivel empresarial, cuentas con un equipo amplio de especialistas en datos y no tienes restricciones de tiempo estrictas para el análisis. Por ejemplo, una aseguradora puede adoptar el método Inmon para obtener una visión completa de sus clientes, tasas de mortalidad, historial de siniestros, etc.

Kimball (enfoque bottom-up)

En el enfoque Kimball, los data marts se crean primero según los requerimientos del negocio y luego se integran en un data warehouse. Este enfoque también se conoce como data warehouse dimensional, donde los sistemas analíticos pueden acceder directamente a los datos para su análisis.

La ventaja del enfoque Kimball es que puedes construir data marts rápidamente y generar reportes con mayor velocidad. Además, puedes segmentar y analizar los datos para obtener la información que necesitas, y adaptar tu arquitectura de datos conforme crecen las necesidades del negocio.

Por ejemplo, puedes crear data marts para cada departamento: ventas, marketing, finanzas y RR.HH. Cada área genera sus propios reportes y escala fácilmente añadiendo nuevos data marts.

Cómo se organizan los registros en un data warehouse: schemas

Las bases de datos almacenan información en filas y columnas. Se utilizan con frecuencia para organizar datos en tablas o hojas de cálculo. Sin embargo, para aprovechar esos datos, los analistas necesitan modelarlos y definirlos de una forma específica. Ahí es donde entran los schemas.

Un database schema es un conjunto de reglas que define cómo se organizan los datos dentro de una base de datos. Estas reglas determinan cómo se almacenan y recuperan los datos. El schema también permite a los analistas entender cómo se relacionan los distintos elementos (dimension tables, fact tables) dentro de una base de datos. Además, al tener la estructura predefinida, los analistas pueden extraer datos de cualquier fuente e interpretarlos para tomar decisiones de negocio.

Existen tres tipos de schemas.

1. Star schema

En un star schema, el componente central es una única fact table. Alrededor de la fact table se encuentran las dimension tables.

La fact table almacena toda la información primaria del negocio, generalmente en valores numéricos. Las dimension tables contienen todos los atributos relacionados con los datos de las fact tables. Por ejemplo, una fact table llamada «Ventas» puede tener referencias a atributos como el ID de producto, el ID de pedido, la cantidad, el precio y el descuento.

El star schema facilita y agiliza las consultas de datos para reportes. Está diseñado para responder consultas como encontrar a los clientes que pidieron un artículo específico.

2. Snowflake schema

El snowflake schema es útil cuando las empresas necesitan consultar datos altamente complejos para analytics avanzados.

Al igual que el star schema, el snowflake schema tiene una fact table en el centro rodeada por múltiples dimension tables. En este caso, las dimension tables se relacionan a su vez con tablas normalizadas.

Por ejemplo, una dimension table de «fecha» puede tener tablas para día, semana, trimestre y mes. Estas nuevas tablas se conectan a la parent dimension table. Esto permite manejar consultas más complejas. Por ejemplo, si un cliente está interesado en el Producto A y luego quiere información sobre el Producto B a través de un chat en vivo, la product dimension table tendrá información específica de la child dimension table.

3. Galaxy schema

Un galaxy schema conecta múltiples fact tables con múltiples dimensional tables, lo que lo convierte en la opción ideal para organizaciones con estructuras de datos y bases de datos complejas. En un galaxy schema, la redundancia de datos es baja, lo que se traduce en mayor precisión en la calidad de los datos. Esto facilita un análisis más profundo y reportes más precisos.

Arquitectura moderna del data warehouse

Hasta hace poco, las arquitecturas de uno y dos niveles eran las más comunes en los data warehouses. Actualmente, la arquitectura de tres niveles es la más utilizada.

Como se observa en la imagen, el nivel inferior incluye un repositorio de datos que recopila información de fuentes dispares. Este repositorio puede almacenar datos de bases de datos multidimensionales o relacionales. Sin embargo, antes de almacenarse, los datos se transforman como parte del proceso de Extracción, Transformación y Carga (ETL).

La transformación de datos puede incluir:

  • Revisión de datos
  • Limpieza de datos para compatibilidad de formatos
  • Conversiones de formato
  • Reestructuración de claves
  • Deduplicación (identificar y eliminar datos duplicados)
  • Validación de datos
  • Eliminación de columnas repetidas y vacías
  • Resumen de datos
  • Ordenamiento, clasificación e indexación
  • Estandarización

El nivel intermedio consiste en un servidor de procesamiento analítico en línea (OLAP). OLAP trabaja con dos tipos de modelos:

  • Procesamiento analítico en línea multidimensional (MOLAP): implica múltiples bases de datos
  • Procesamiento analítico en línea relacional (ROLAP): implica bases de datos relacionales

El servidor OLAP es un componente clave para los usuarios finales, como los analistas de datos, ya que proporciona una vista abstracta de la base de datos y actúa como mediador entre los usuarios y la base de datos. El nivel superior es la interfaz de usuario de las herramientas front-end y APIs que te ayudan a extraer datos del data warehouse. Estas pueden ser herramientas de minería de datos, consulta, reportes y análisis.

Tipos de diseños de data warehouse

Según los requerimientos del negocio, existen distintas formas de diseñar tu data warehouse.

On-premise vs. cloud

Históricamente, la arquitectura de data warehouse se gestionaba internamente, pero esto conlleva ciertas limitaciones:

  • Es costoso: las organizaciones deben adquirir servidores y el espacio físico para alojarlos.
  • Hay costos adicionales para contratar personal que administre los servidores, las instalaciones, etc.
  • Al estar alojado internamente, la escalabilidad puede ser un problema.

En contraste, actualmente los cloud data warehouses están ampliamente adoptados. El 54% de los encuestados en un estudio señaló que el cloud data warehousing es una tendencia clave que desean seguir. Sus beneficios son claros:

  • Sin costos de hardware ni servidores.
  • El diseño lo gestiona el proveedor, que cuenta con expertos trabajando en segundo plano. Esto reduce significativamente los costos de contratación.
  • Son flexibles: cada empresa puede adaptarlos a sus distintos casos de uso.
  • Aceleran el acceso a los datos y ahorran tiempo.
  • Solo pagas por lo que usas, lo que lo hace rentable.

Batch tradicional vs. tiempo real

El diseño tradicional implica cargar datos de las fuentes en lotes por hora, día o semana. El método de procesamiento por lotes fue el más utilizado para cargar datos, pero dado que los usuarios de negocio quieren ver insights al instante, el diseño de data warehousing en tiempo real se está volviendo cada vez más común.

En el modelo de data warehousing en tiempo real, los datos se cargan continuamente en el data warehouse y están disponibles para que los analistas creen reportes y predicciones. Los usuarios finales obtienen la información más actualizada y toman decisiones más rápidas.

Por ejemplo, un cliente quiere obtener la información más reciente sobre un pedido en línea que realizó, o un gerente de ventas necesita evaluar tendencias con datos de ventas recientes. Esto solo es posible si los datos se obtienen en tiempo real.

Otros beneficios del modelo de data warehousing en tiempo real incluyen:

  • Mejora la democratización de datos, donde cada miembro del equipo puede acceder fácilmente a los datos actuales e históricos que necesita para completar sus tareas y optimizar su trabajo.
  • Crea una base para analytics avanzados y machine learning que ayuda a diseñar experiencias personalizadas para el cliente.
  • Acelera el ritmo al que un negocio evoluciona y responde a los cambios.

Cómo diseñar un data warehouse: guía paso a paso

Cada diseño de data warehouse varía según los parámetros, casos de uso y requerimientos del negocio. Aquí tienes un esquema base que puedes usar y adaptar.

1. Identifica los objetivos del negocio y las necesidades del usuario

El primer paso es garantizar que tu data warehouse sea compatible con los procesos de negocio vigentes en tu organización. También es fundamental consultar con los stakeholders sobre sus objetivos al usar el data warehouse. Además, debes conocer los requerimientos técnicos y estándares de cumplimiento que debes seguir antes de iniciar la implementación.

Por último, responder estas preguntas puede simplificar el primer paso:

  • ¿Cuántas fuentes de datos necesitas integrar y cuál es el volumen de datos?
  • ¿Qué necesidades actuales y futuras del negocio cubrirá el data warehouse?
  • ¿Qué preguntas de negocio responderá el data warehouse y qué problemas ayudará a resolver su arquitectura?

2. Elige un modelo de datos

Los modelos de datos ayudan a crear documentación para la implementación del data warehouse. También ayudan a los modeladores a decidir cómo estructurar los datos, establecer relaciones entre distintos puntos de datos y definir métricas clave.

Aunque los ingenieros de datos pueden construir modelos de datos empresariales, es un proceso que consume mucho tiempo. Por eso, una alternativa más eficiente es usar una solución como Fivetran, que ofrece modelos de datos preconfigurados. Fivetran normaliza los datos automáticamente para que el proceso de modelado sea más simple y rápido.

3. Selecciona una solución ELT o ETL

Puedes elegir un proceso de Extracción, Transformación y Carga (ETL) o un proceso de Extracción, Carga y Transformación (ELT) para la integración de datos. Sin embargo, ELT es una solución mejor y más flexible, ya que siempre genera datos en bruto y actualizados para el análisis. Fivetran cuenta con conectores de datos automatizados que se configuran en minutos y te ayudan a construir y gestionar los data pipelines ELT de forma eficiente. Una vez definidos los modelos y las soluciones, también puedes delimitar el alcance en términos de entregables, responsables de cada tarea, sus KPIs, presupuesto y plazos.

4. Construye tu interfaz de reportes

¿Cómo usas los resultados de las consultas de datos para crear reportes de business intelligence (BI)? Se hace con herramientas de visualización de datos y reportes como Power BI y Tableau. En este paso, decide con qué frecuencia quieres generar reportes y quiénes serán los stakeholders para cada tipo de reporte, de modo que puedas elegir la herramienta de business intelligence que mejor se adapte a tus requerimientos.

5. Implementa y realiza evaluaciones

Una vez implementados todos los pasos clave, las empresas pueden ingerir datos en sus herramientas ELT/ETL, analizar los datos y validar los resultados de los sistemas de BI.

Cómo puede ayudar Fivetran

Fivetran ofrece un data pipeline completamente gestionado y automatizado. Cada conector SaaS incluye schemas de datos normalizados y listos para usar. Siempre que cambian las fuentes de datos, estos schemas se adaptan automáticamente para que siempre tengas los datos más actualizados.

El 52% de los gerentes de TI quiere un procesamiento de analytics más rápido. Una vez que los datos llegan al data warehouse, Fivetran hace que la transformación de datos en modelos listos para analytics sea rápida y sencilla.

Fivetran permite a las organizaciones construir pipelines desde sus fuentes de datos sin escribir una sola línea de código. Así, los científicos de datos e ingenieros dejan de preocuparse por construir y mantener pipelines, y dedican ese tiempo a lo que realmente importa para el negocio.

Esta página fue traducida automáticamente del inglés. La versión original está disponible aquí.

Related posts

Start for free

Join the thousands of companies using Fivetran to centralize and transform their data.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.