DEV Community

Cover image for Arquitectura Medallion para procesamiento de datos
Andres
Andres

Posted on

Arquitectura Medallion para procesamiento de datos

Arquitectura de Datos Medallion

La arquitectura de datos Medallion es un enfoque estructurado para organizar y gestionar datos en un lago de datos. Este enfoque divide los datos en diferentes capas o niveles, cada uno con un propósito específico y un nivel de calidad de datos. Las capas típicas en una arquitectura Medallion son: Bronce, Plata y Oro.

1. Capa Bronce

La capa Bronce es la capa de datos crudos. Aquí se almacenan los datos tal como se reciben de las fuentes, sin ninguna transformación o limpieza significativa. Esta capa sirve como un repositorio de datos históricos y permite la trazabilidad completa de los datos originales.

Características:

  • Datos en su forma original.
  • Incluye datos estructurados, semiestructurados y no estructurados.
  • Alta disponibilidad y capacidad de almacenamiento.

Ejemplo:

# Guardar datos crudos en la capa Bronce
raw_data.write.format("parquet").mode("overwrite").save("/mnt/data/bronze/raw_data")
Enter fullscreen mode Exit fullscreen mode

2. Capa Plata

La capa Plata contiene datos que han sido limpiados y transformados. En esta capa, se realizan operaciones de limpieza de datos, eliminación de duplicados, corrección de errores y transformación de formatos. Los datos en la capa Plata están listos para análisis y procesamiento adicional.

Características:

  • Datos limpios y transformados.
  • Mejor calidad de datos en comparación con la capa Bronce.
  • Preparación para análisis y procesamiento.

Ejemplo:

# Leer datos de la capa Bronce
raw_data = spark.read.format("parquet").load("/mnt/data/bronze/raw_data")

# Limpiar y transformar los datos
clean_data = raw_data.dropDuplicates().filter("value IS NOT NULL")

# Guardar datos limpios en la capa Plata
clean_data.write.format("parquet").mode("overwrite").save("/mnt/data/silver/clean_data")
Enter fullscreen mode Exit fullscreen mode

3. Capa Oro

La capa Oro contiene datos altamente refinados y optimizados para el consumo por parte de aplicaciones de negocio, informes y análisis avanzados. En esta capa, los datos se agregan, se enriquecen y se optimizan para consultas de alto rendimiento. Los datos en la capa Oro son los más confiables y de mayor calidad.

Características:

  • Datos altamente refinados y optimizados.
  • Preparados para el consumo por aplicaciones de negocio.
  • Alta calidad y confiabilidad.

Ejemplo:

# Leer datos de la capa Plata
clean_data = spark.read.format("parquet").load("/mnt/data/silver/clean_data")

# Enriquecer y agregar datos
enriched_data = clean_data.groupBy("category").agg({"value": "sum"})

# Guardar datos refinados en la capa Oro
enriched_data.write.format("parquet").mode("overwrite").save("/mnt/data/gold/enriched_data")
Enter fullscreen mode Exit fullscreen mode

Conclusión

La arquitectura de datos Medallion proporciona un enfoque estructurado para gestionar datos en un lago de datos, mejorando la calidad y la organización de los datos a través de diferentes capas. Este enfoque facilita la trazabilidad, la limpieza y el enriquecimiento de los datos, permitiendo un análisis más eficiente y confiable.

Top comments (0)