En un proyecto de datos con decenas o cientos de tablas, escribir manualmente cada CREATE TABLE, transformación y regla de calidad puede convertirse rápidamente en un cuello de botella para los equipos de Data Engineering.
Frente a este escenario, las arquitecturas metadata-driven permiten cambiar el enfoque: en lugar de desarrollar y mantener cada tabla de forma independiente, se define mediante metadatos cómo debe comportarse el sistema y se utiliza un motor genérico para ejecutar esa definición.
El resultado es una arquitectura de datos más automatizada, consistente y escalable, especialmente útil cuando se trabaja con plataformas lakehouse como Databricks.
El reto: escalar un modelo Medallion
La Medallion Architecture es un patrón habitual para organizar los datos en un lakehouse mediante diferentes capas de procesamiento. En su planteamiento más común, los datos pasan de Bronze, donde se almacenan en bruto, a Silver, donde se validan y transforman, y finalmente a Gold, donde se preparan para su consumo analítico y de negocio.
Databricks recomienda este enfoque para mejorar progresivamente la calidad y estructura de los datos a medida que avanzan por las diferentes capas. Puedes consultar la explicación de Medallion Architecture en la documentación oficial de Databricks.
Sin embargo, el problema aparece cuando el número de tablas y fuentes crece.
-
Desarrollo repetitivo
Cada nueva tabla puede implicar escribir su propio DDL, lógica de transformación, procesos de ingesta y reglas de calidad. En muchos casos, estos desarrollos parten de scripts existentes que se copian y adaptan.
-
Falta de consistencia
La consistencia entre tablas depende de que todo el equipo aplique las mismas convenciones, patrones y buenas prácticas.
Cuantas más personas y tablas participan en el proyecto, más difícil resulta garantizar que todas las implementaciones sigan exactamente los mismos criterios.
-
Cambios difíciles de escalar
Si cambia un patrón de transformación, una regla de calidad o la estructura de una determinada capa, puede ser necesario modificar decenas o cientos de procesos.
Esto aumenta el esfuerzo de mantenimiento y el riesgo de introducir errores.
-
Documentación desactualizada
La documentación sobre qué datos existen, de dónde proceden y por qué se han definido de una determinada manera puede quedar rápidamente desactualizada si vive separada del propio sistema.
Aquí es donde una arquitectura basada en metadatos puede aportar una diferencia significativa.
La propuesta: un metamodelo que describe el sistema
Una arquitectura metadata-driven separa dos conceptos que habitualmente aparecen mezclados:
- Definición: qué tablas existen, qué campos contienen, de dónde proceden y qué reglas deben cumplir.
- Ejecución: cómo se aplica esa definición sobre el motor de datos.
La definición se almacena en un metamodelo de datos: una estructura que describe, para cada tabla o entidad, su origen, esquema, transformaciones y reglas de calidad.
Idealmente, este metamodelo debería disponer de control de versiones, validación y gobierno, de la misma forma que se exige a cualquier componente crítico de una arquitectura de datos.
Sobre esta definición trabaja un motor genérico, que puede ejecutarse mediante notebooks y scripts de Python en Databricks, y que interpreta los metadatos para generar o ejecutar automáticamente diferentes componentes del sistema.
Entre ellos:
Creación de estructuras
El motor puede generar las estructuras necesarias para las diferentes capas del modelo Bronze, Silver y Gold, pudiendo incorporar también capas como Raw o Staging cuando la arquitectura lo requiera.
Ingesta de datos
La definición puede establecer cómo ingerir datos procedentes de diferentes fuentes: bases de datos relacionales o no relacionales, ficheros, APIs y otros sistemas.
Calidad del dato
Las reglas de calidad pueden definirse de forma declarativa y aplicarse de manera homogénea sobre los diferentes datasets.
Esta idea encaja especialmente bien con las capacidades de Lakeflow, donde las expectativas permiten definir restricciones de calidad y decidir qué hacer cuando un registro no las cumple: advertir, descartarlo o detener la actualización. La documentación de Databricks explica en detalle cómo gestionar la calidad del dato mediante expectativas en los pipelines.
Transformaciones y KPIs
El metamodelo también puede describir transformaciones y cálculos necesarios para construir datasets analíticos y KPIs de negocio, evitando replicar manualmente la misma lógica en múltiples procesos.
Orquestación
Finalmente, un orquestador coordina la ejecución de las diferentes etapas y sus dependencias, automatizando el procesamiento según las necesidades del proyecto.
La principal ventaja: automatización y escalabilidad
El beneficio más tangible de una arquitectura metadata-driven aparece cuando es necesario incorporar nuevas fuentes o modificar estructuras existentes.
En lugar de desarrollar, probar y mantener código específico para cada nueva tabla, el equipo puede incorporar o modificar su definición en el metamodelo.
El motor se encarga de aplicar el patrón correspondiente.
Esto permite:
- Reducir el desarrollo repetitivo.
- Estandarizar transformaciones y reglas de calidad.
- Facilitar la incorporación de nuevas fuentes de datos.
- Simplificar el mantenimiento de cientos de tablas.
- Aplicar cambios de forma más homogénea.
- Mejorar la trazabilidad de las decisiones de diseño.
- Facilitar la evolución de la arquitectura a medida que crece el volumen de datos.
La automatización, sin embargo, también introduce un nuevo punto crítico: el metamodelo.
Si una definición incorrecta puede propagarse automáticamente a cientos de tablas, el gobierno de los metadatos pasa a ser tan importante como el código que los ejecuta.
Los 7 puntos críticos de una arquitectura Metadata-Driven
Antes de implantar una arquitectura de este tipo, conviene evaluar varios aspectos.
-
Gobierno del metamodelo
Un metamodelo sin gobierno puede convertirse en un punto crítico de fallo para todo el sistema.
Debe existir control de versiones, validación de cambios y gestión de permisos, especialmente cuando diferentes equipos pueden modificar las definiciones.
El objetivo es evitar que un cambio incorrecto en una definición se propague automáticamente por todo el entorno.
-
Gestión de cambios de esquema
Es fundamental definir qué ocurre cuando cambia el esquema de una tabla o de uno de sus campos.
No es lo mismo realizar un ALTER sobre una estructura existente que ejecutar un CREATE OR REPLACE, ya que el comportamiento respecto al histórico y a los datos existentes puede ser diferente.
Por eso, el motor debe tener perfectamente definido qué estrategia aplicar ante cada tipo de cambio.
-
Reprocesos e idempotencia
¿Qué sucede si una ejecución falla a mitad del proceso?
¿Se puede relanzar de forma segura o existe riesgo de duplicar datos?
La arquitectura debe contemplar desde el diseño cómo gestionar reprocesos, fallos e idempotencia, especialmente en pipelines que procesan grandes volúmenes de información.
-
Linaje y trazabilidad
El metamodelo no debería ser la única fuente de información sobre el linaje.
En Databricks, Unity Catalog proporciona capacidades de gobierno y captura automáticamente el linaje de los datos, incluyendo relaciones entre tablas, notebooks, jobs y otros activos, con seguimiento hasta nivel de columna en los casos compatibles.
Para este tipo de escenarios, resulta especialmente relevante la documentación oficial sobre data lineage en Unity Catalog, que explica cómo utilizar estas capacidades para conocer el recorrido de los datos dentro de la plataforma.
Esto permite conocer de dónde procede un dato, qué procesos lo transforman y qué activos pueden verse afectados por un cambio.
Además, Unity Catalog puede complementar este linaje con información procedente de sistemas externos. Databricks documenta esta funcionalidad como external lineage, permitiendo ampliar la visión del recorrido del dato más allá de los activos gestionados directamente por la plataforma.
-
Alertas activas
Definir reglas de calidad no significa necesariamente que alguien vaya a actuar cuando esas reglas se incumplen.
Existe una diferencia importante entre registrar un incumplimiento en una tabla de logs —que requiere una consulta posterior— y generar una alerta que llegue directamente al responsable correspondiente.
Por ello, una arquitectura madura debe definir también cómo se notifican y gestionan las incidencias de calidad.
-
Tests automatizados
Un framework genérico será tan fiable como las pruebas que lo respaldan.
Sin una estrategia de testing automatizado, cualquier cambio realizado sobre el motor puede tener efectos inesperados sobre todas las tablas y procesos que dependen de él.
Los tests deben cubrir tanto la lógica del motor como los diferentes patrones y escenarios que puede generar.
-
Evaluar las capacidades nativas de Databricks
No todo tiene que construirse desde cero.
Antes de desarrollar un motor de orquestación y transformación completamente personalizado, conviene evaluar qué necesidades pueden cubrirse con las capacidades nativas de Databricks.
Lakeflow Spark Declarative Pipelines, basado en Apache Spark Declarative Pipelines, permite definir pipelines en SQL y Python y automatiza aspectos como la gestión de dependencias y la orquestación.
Databricks proporciona una explicación detallada de Apache Spark Declarative Pipelines y sus principales conceptos.
Lakeflow añade además funcionalidades orientadas a producción, como expectativas de calidad, AUTO CDC y un event log consultable. En la documentación de Databricks se puede consultar cómo funcionan los Lakeflow pipelines.
Esto no significa que una arquitectura metadata-driven personalizada deje de tener sentido. Al contrario: en determinados escenarios puede complementar estas capacidades para resolver necesidades específicas de generación, parametrización y gobierno.
La clave está en no reinventar funcionalidades que la plataforma ya proporciona de forma nativa.
Metadata-Driven: automatizar no significa dejar de gobernar
Una arquitectura metadata-driven bien diseñada puede reducir significativamente el esfuerzo necesario para incorporar nuevas fuentes de datos y mantener grandes volúmenes de tablas.
Pero su principal fortaleza —la capacidad de generar y aplicar automáticamente una misma lógica a gran escala— es también su mayor riesgo.
Por eso, el metamodelo debe tratarse con el mismo rigor que cualquier otro componente de producción:
- Versionado
- Control de cambios
- Validación
- Permisos
- Testing
- Trazabilidad
- Monitorización
La pregunta que realmente importa al evaluar una arquitectura metadata-driven no es únicamente:
¿Puede generar las tablas automáticamente?
La pregunta es:
¿Qué ocurre el día que el metamodelo contiene un error?
La respuesta a esa pregunta es la que determina si estamos ante una verdadera arquitectura de datos escalable o simplemente ante un sistema que automatiza la propagación de errores.
¿Necesitas escalar tu arquitectura de datos en Databricks?
Cuando una plataforma de datos empieza a crecer, el problema deja de ser únicamente cómo crear nuevas tablas y pasa a ser cómo mantener cientos de procesos de forma consistente, gobernada y sostenible.
En Bravent ayudamos a las organizaciones a diseñar, auditar y evolucionar arquitecturas de datos modernas sobre Databricks y Microsoft Fabric, desde el modelo Medallion y la automatización de pipelines hasta el gobierno, la calidad y el linaje del dato.
Si tu equipo está dedicando demasiado tiempo a mantener pipelines, replicar código o resolver problemas de consistencia y calidad, nuestros expertos pueden ayudarte a identificar qué parte de tu arquitectura puede automatizarse y cuál debe gobernarse de forma específica.
Escríbenos a info@bravent.net y descubre cómo llevar tu arquitectura de datos a un modelo más escalable, automatizado y gobernado.




