Arquitectura Medallion en ELT: bronze, silver y gold
La arquitectura Medallion organiza un pipeline ELT en tres capas — bronze, silver y gold — para convertir datos en bruto en información lista para analizar. Es un patrón sencillo y muy utilizado en Lakehouses y data warehouses modernos, porque hace que cada etapa sea clara, comprobable y fácil de mantener. Al separar responsabilidades, evitas el caos de scripts que lo hacen todo a la vez y ganas trazabilidad de principio a fin.
Requisitos previos
- Acceso a un data warehouse o Lakehouse (por ejemplo, Microsoft Fabric, Synapse, Databricks o cualquier base SQL).
- Una tabla o archivo de origen con datos sin tratar.
- Nociones básicas de SQL (
SELECT,CREATE TABLE,GROUP BY). - Permisos para crear tablas en tu esquema.
Paso 1: Entender las tres capas
En el patrón ELT, primero cargas los datos (Load) y solo después los transformas (Transform), directamente en el warehouse. La arquitectura Medallion divide esa transformación en tres niveles de calidad creciente:

- Bronze — datos en bruto, tal como llegan del origen, sin cambios.
- Silver — datos limpios: sin duplicados, con tipos correctos y reglas de negocio aplicadas.
- Gold — datos agregados y listos para consumir en informes y dashboards.
Consejo: piensa en bronze como el "almacén", silver como la "línea de montaje" y gold como el "escaparate".
Paso 2: Crear la capa Bronze
La capa bronze guarda una copia fiel del origen. No limpies nada aquí: el objetivo es tener un histórico de lo que recibiste, útil para auditoría y reprocesamiento. Mantener bronze intacto te permite reprocesar el pipeline cada vez que corrijas una regla, sin volver a pedir los datos al origen.
-- Capa Bronze: datos en bruto, tal como llegan
CREATE TABLE bronze_vendas AS
SELECT * FROM origem_vendas;
Si los datos vienen de archivos (CSV, Parquet), cárgalos primero en esta tabla, sin transformaciones.
Paso 3: Construir la capa Silver
Aquí está el corazón del trabajo: limpiar y normalizar. Corriges tipos de datos, eliminas duplicados y filtras registros no válidos para que los datos sean fiables. En la capa silver también aplicas conversiones de zona horaria, unificación de nombres y uniones con tablas de referencia.
-- Capa Silver: limpia y normalizada
CREATE TABLE silver_vendas AS
SELECT
CAST(id AS INT) AS venda_id,
CAST(data AS DATE) AS data_venda,
UPPER(TRIM(produto)) AS produto,
CAST(total AS DECIMAL(10,2)) AS total
FROM bronze_vendas
WHERE id IS NOT NULL;
Cada regla de negocio (por ejemplo, ignorar ventas sin identificador) queda documentada y centralizada en esta capa.
Paso 4: Construir la capa Gold
La capa gold responde a preguntas de negocio. Normalmente agregas los datos al nivel que necesita tu informe o tu modelo de Power BI — por ejemplo, ventas por mes y por producto. Puedes crear varias tablas gold, una por área de negocio o por dashboard.
-- Capa Gold: agregada y lista para BI
CREATE TABLE gold_vendas_mensais AS
SELECT
YEAR(data_venda) AS ano,
MONTH(data_venda) AS mes,
produto,
SUM(total) AS total_vendas,
COUNT(*) AS numero_vendas
FROM silver_vendas
GROUP BY YEAR(data_venda), MONTH(data_venda), produto;
La sintaxis de las funciones de fecha puede variar ligeramente según el motor; adáptala a tu warehouse.
Verificar el resultado
Confirma que cada capa tiene los datos esperados comparando los recuentos de filas. Bronze debe tener tantas filas como el origen, y gold debe estar agregada (menos filas):
SELECT 'bronze' AS camada, COUNT(*) AS linhas FROM bronze_vendas
UNION ALL
SELECT 'silver', COUNT(*) FROM silver_vendas
UNION ALL
SELECT 'gold', COUNT(*) FROM gold_vendas_mensais;
Si silver tiene menos filas que bronze, la limpieza está funcionando. Si gold devuelve totales coherentes con el negocio, el pipeline está listo.
Conclusión
Con las capas bronze, silver y gold tienes un pipeline ELT organizado, fácil de probar y de explicar a cualquier persona del equipo. El siguiente paso es automatizar la actualización de cada capa — por ejemplo, con un pipeline programado en Fabric o Data Factory — y añadir pruebas de calidad a silver. ¿Cuál de las tres capas crees que tu equipo necesita mejorar más?