Introducción a la Arquitectura Medallion

  • Tiempo de lectura:11 minutos de lectura
  • Autor de la entrada:
  • Última modificación de la entrada:06/08/2024

La arquitectura Medallion se ha convertido en un estándar para la gestión y procesamiento de datos en grandes organizaciones. Este enfoque, que se basa en la segregación de datos en múltiples capas, permite una organización eficiente y una transformación sistemática de los datos desde su ingesta hasta su modelado final. Comprender y aplicar esta arquitectura es esencial para cualquier ingeniero de datos.

instroducción a la arquitectura medallion

Importancia de la Arquitectura Medallion para Ingenieros de Datos

En mi experiencia, la mayoría de las empresas grandes en las que he trabajado utilizan de una manera u otra la arquitectura Medallion. Por este motivo, considero que cualquier ingeniero de datos debe conocer en qué se basa, cómo trabajar con ella y sus ventajas y desventajas. La arquitectura Medallion ofrece una estructura clara y escalable que facilita la gestión de grandes volúmenes de datos y mejora la eficiencia en la generación de informes y análisis.

Componentes de la Arquitectura Medallion

La arquitectura Medallion se compone de tres capas principales, cada una con su propósito específico y conjunto de operaciones. Estas capas son la Bronce, Plata y Oro, y juntas forman un flujo continuo de datos desde su ingesta hasta su explotación final.

Arquitectura medallion
Diagrama de Arquitectura medallion

Capa Bronce: Ingesta de Datos

Capa Bronce Medallion

La capa Bronce es la primera capa en nuestra arquitectura y contiene datos sin procesar en su formato original, como archivos CSV, JSON o registros de eventos. Aquí se almacenan los datos tal como llegan, sin ninguna transformación o limpieza. Esta capa actúa como un depósito de datos crudos, permitiendo una fácil recuperación y un historial completo de los datos en su estado inicial.

Capa Plata: Transformación y Filtrado de Datos

Capa Plata Medallion

La segunda capa, la Plata, es donde se depositan los datos una vez transformados. En esta etapa, los datos pasan por procesos de limpieza y filtrado para asegurar su calidad y consistencia, sin centrarse en su modelado final. Los formatos comunes en esta capa incluyen tablas Delta, Parquet o Iceberg, que facilitan el procesamiento y la consulta eficiente de los datos.

Capa Oro: Modelado y Optimización para Informes

Capa Oro Medallion

Por último, en la capa Oro, es donde modelamos estos mismos datos mediante relaciones u otras técnicas para optimizar la generación de informes y reportes. En esta capa, los datos están altamente procesados y organizados en estructuras optimizadas para análisis y visualización. Esto permite a los usuarios finales acceder a datos limpios, precisos y listos para su uso en la toma de decisiones.

Herramientas Comunes para Implementar la Arquitectura Medallion

La implementación de la arquitectura Medallion requiere de herramientas robustas que soporten las necesidades de almacenamiento, procesamiento y análisis de datos. Dos de las tecnologías más comunes utilizadas son Databricks y Microsoft Fabric.

Databricks es una plataforma de análisis unificado que facilita la implementación de la arquitectura Medallion. Esta plataforma permite a los equipos de datos construir y gestionar data pipelines de manera eficiente apoyado en Apache Spark y Delta Lake, soportando las tres capas de la arquitectura con herramientas integradas para la ingesta, transformación y análisis de datos.

Otro ejemplo es Microsoft Fabric, que también recomienda esta estructura basada en capas. Microsoft Fabric proporciona un conjunto de servicios y herramientas, todas ellas integradas en Azure que facilitan gestión de datos a lo largo de las capas de la arquitectura Medallion.

Ventajas y Desventajas de la Arquitectura Medallion

Como cualquier enfoque, la arquitectura Medallion tiene sus pros y contras:

Ventajas

  • Estructura clara y escalable: Facilita la gestión de grandes volúmenes de datos y su transformación.
  • Optimización de informes: La capa Oro permite generar informes precisos y eficientes.
  • Historial completo de datos: La capa Bronce almacena los datos en su estado original, proporcionando un historial completo y time travel.
  • Facilidad de implementación.

Desventajas

  • Requiere gran cantidad de almacenamiento: A menudo se menciona como una desventaja la gran cantidad de almacenamiento que requiere. Sin embargo, considero que las ventajas que aporta compensan esta desventaja, ya que el almacenamiento en la nube es muy barato.
  • Requiere de herramientas y plataformas con una arquitectura de Data Lakehouse.

Preguntas Frecuentes Arquitectura Medallion

¿Cómo se gestiona la ingesta de datos en la capa Bronce?

En la capa Bronce, los datos se ingieren sin procesar desde diversas fuentes como archivos CSV, JSON, registros de eventos, bases de datos transaccionales, etc. Estos datos se almacenan en su formato original para mantener un registro completo y detallado. Las herramientas como Apache Kafka, Azure Data Factory o AWS Glue pueden ser utilizadas para automatizar y gestionar el proceso de ingesta.

¿Cuál es la diferencia entre un Data Lake y un Data Warehouse en el contexto de la Arquitectura Medallion?

Data Lake: Almacena datos en su formato bruto (crudo) y es más flexible en cuanto a la estructura de datos. Ideal para la capa Bronce y Plata donde los datos aún están siendo procesados. Data Warehouse: Almacena datos estructurados y altamente organizados, óptimos para análisis y generación de informes. Esto es equivalente a la capa Oro en la Arquitectura Medallion, donde los datos están modelados y listos para el análisis.

¿Cuál es el rol de los metadatos en la Arquitectura Medallion?

Los metadatos permiten tener un linaje de datos: rastrear el origen, las transformaciones y el destino final de los datos a través de las capas. Herramientas como Apache Atlas y Azure Purview se utilizan para gestionar metadatos y gobernanza de datos. También permiten catalogar los datos para ayudar a los usuarios a encontrar y comprender los datos disponibles. Por último facilita el seguimiento y cumplimiento de políticas de datos.

Formación y Cursos recomendados de Databricks

Aquí tienes mis dos cursos recomendados para que aprendas de forma eficiente Databricks, de los mejores que encontrarás online para cualquier nivel:

curso databricks coursera

Especialización en Ciencia de Datos con Databricks

Este curso ofrecido por Databricks en la plataforma de formación online Coursera es de los más populares. Podrás aprender todos los fundamentos de Databricks y la API de Apache Spark para desarrollar trabajos de transformación de datos. Si tienes algún conocimiento de SQL y Python te acelerará el aprendizaje.

curso azure databricks coursera

Azure Databricks para Ingeniería de Datos

Este curso ofrecido por Microsoft en Coursera te enseñará todo lo que necesitarás de Databricks en Azure. Desde cómo configurar los clusters de Spark, ejecutar trabajos y usar los notebooks con Scala o Python.

Deja una respuesta