Desde el origen hasta el consumidor, diseñado deliberadamente
Diseñamos plataformas de datos en capas, con interfaces explícitas entre ellas. Una capa de bronce captura fielmente los datos de origen; una capa de plata limpia, conforma y une; una capa de oro expone las entidades y métricas consumidas por analistas, científicos de datos y aplicaciones. Cada capa tiene sus propios propietarios, sus propias expectativas de calidad y sus propias reglas de evolución. La disciplina es poco glamurosa y la recompensa es sustancial: un conjunto de datos que se comporta mal puede localizarse, explicarse y corregirse rápidamente.
Dentro de cada capa utilizamos los formatos de almacenamiento y los motores de consulta que mejor se adaptan a la carga de trabajo. Los formatos Lakehouse — Apache Iceberg, Delta Lake, Apache Hudi — nos permiten cada vez más ejecutar análisis estilo data warehouse en almacenamiento con economía de lago, al tiempo que preservan las propiedades de ingeniería (escrituras ACID, viaje en el tiempo, evolución de esquemas) que requiere el trabajo de producción. Cuando se necesita un rendimiento de data warehouse genuino en la capa dorada, estamos encantados de utilizar marts curados en Snowflake, BigQuery, Redshift o Synapse.
El streaming se trata como un modo de entrega de primera clase en lugar de una ocurrencia tardía. Utilizamos Kafka, Kinesis o Pub/Sub para el transporte, Flink, Spark Structured Streaming o Beam para el procesamiento, e Iceberg o Delta para el aterrizaje, con los mismos controles de calidad y gobernanza de los que disfrutan los pipelines por lotes. Las arquitecturas de estilo Lambda con rutas paralelas por lotes y de streaming son algo que ahora evitamos activamente; el coste operativo rara vez se justifica.
- Diseño en capas bronce / plata / oro
- Formatos de tabla abiertos (Iceberg, Delta, Hudi)
- Ingesta primero en streaming cuando vale la pena
- Almacenamiento nativo de la nube con políticas de ciclo de vida
- Transformaciones reutilizables en dbt o Spark
- ETL inverso a sistemas operativos

