Diseña pipelines de datos robustos y escalables: arquitectura de data warehouse, orquestación con dbt y Airflow, calidad de datos y entrega de datos confiables que el negocio pueda usar para decidir.
Cuándo usarlo: Diseñar e implementar pipelines de datos robustos que alimentan decisiones de negocio confiables
Herramienta recomendada: Claude
Eres un data engineer senior con experiencia en la construcción de plataformas de datos para empresas en fase de crecimiento. Necesito que me ayudes a diseñar e implementar una arquitectura de data engineering que sea robusta, escalable y que realmente sirva para tomar decisiones de negocio. **Mi contexto:** - Fase de la empresa: [startup / scale-up / empresa establecida] - Volumen de datos actual: [gigabytes / terabytes / petabytes] - Fuentes de datos principales: [CRM, base de datos de producto, APIs externas, eventos de usuario, etc.] - Stack tecnológico actual: [bases de datos, cloud provider, herramientas existentes] - Equipo de datos: [solo yo / 2-3 personas / equipo mayor] - Principal problema: [los datos no son confiables / no hay una fuente única de verdad / los pipelines se rompen constantemente / los analistas no pueden acceder a los datos que necesitan] Desarrolla una guía completa de data engineering orientada al impacto de negocio: **1. La arquitectura de datos correcta para tu fase** Explica las arquitecturas de datos más comunes y cuándo usar cada una: la arquitectura ETL clásica (Extract, Transform, Load), el enfoque ELT moderno donde la transformación ocurre dentro del warehouse, la arquitectura Medallion (Bronze/Silver/Gold) popularizada por Databricks, y el Data Lakehouse que combina la flexibilidad del data lake con las capacidades analíticas del warehouse. Cómo elegir la arquitectura correcta según el volumen de datos, el equipo disponible y los casos de uso del negocio. **2. El data warehouse moderno** Detalla las opciones de data warehouse cloud y cuándo elegir cada una: Snowflake (flexibilidad y separación de compute y storage), BigQuery (serverless, integración con Google ecosystem, pricing por query), Redshift (si ya estás en AWS), DuckDB (para análisis local o equipos pequeños). Cómo diseñar el esquema del warehouse: star schema vs snowflake schema, la importancia de las tablas de dimensiones y hechos, cómo manejar los cambios de esquema sin romper los pipelines existentes (Slowly Changing Dimensions). **3. Ingesta de datos con herramientas modernas** Explica las herramientas de ingesta de datos y cuándo usar cada una: Fivetran y Airbyte para la ingesta de datos de fuentes SaaS sin código, Kafka para streaming de eventos en tiempo real, Debezium para Change Data Capture (CDC) desde bases de datos transaccionales, APIs personalizadas para fuentes que no tienen conector estándar. Cómo gestionar la ingesta incremental vs la carga completa, y cuándo cada enfoque es el correcto. **4. Transformaciones con dbt** Profundiza en dbt como estándar de la industria para transformaciones SQL en el data warehouse: la estructura de proyectos de dbt (models, tests, sources, seeds, snapshots), cómo organizar los modelos en capas (staging, intermediate, marts), la importancia de los tests en dbt (not_null, unique, accepted_values, relationships), cómo documentar los modelos para que los analistas entiendan qué hay en cada tabla, dbt Cloud vs dbt Core y cuándo usar cada uno. **5. Orquestación con Apache Airflow** Explica cómo diseñar y gestionar pipelines de datos con Apache Airflow: la estructura de un DAG (Directed Acyclic Graph), cómo manejar las dependencias entre tareas, los operadores más usados (PythonOperator, BashOperator, SparkSubmitOperator), cómo gestionar los reintentos y el manejo de errores, las mejores prácticas para evitar los problemas más comunes (DAGs que tardan demasiado, tareas que fallan silenciosamente). Alternativas modernas a Airflow: Prefect, Dagster y cuándo considerarlas. **6. Calidad de datos: el problema que destruye la confianza** Detalla un framework de data quality que garantice que los datos que llegan al negocio son correctos y confiables: las dimensiones de calidad de datos (completitud, unicidad, validez, consistencia, oportunidad), herramientas de data quality como Great Expectations, dbt tests y Monte Carlo, cómo implementar alertas cuando los datos están fuera de los rangos esperados, el proceso de gestión de incidentes de datos (data incident management) para cuando algo falla. **7. Data observability y monitorización de pipelines** Explica cómo construir visibilidad sobre el estado de los pipelines de datos: métricas de pipeline (latencia, tasa de éxito, volumen de filas procesadas), dashboards de observabilidad de datos, herramientas como Monte Carlo, Bigeye o Datafold para detectar anomalías automáticamente, cómo comunicar el estado del pipeline de datos a los stakeholders de negocio de manera comprensible para no-técnicos. **8. Datos en tiempo real vs datos en batch** Describe cuándo necesitas datos en tiempo real y cuándo el batch es suficiente: los casos de uso que requieren streaming (detección de fraude, personalización en tiempo real, alertas operativas), los casos donde el batch diario o cada hora es perfectamente válido (reporting, análisis de tendencias, ML training), el coste y la complejidad adicional del streaming y cómo justificarlo ante el negocio, herramientas de procesamiento en streaming (Apache Kafka, Flink, Spark Streaming, AWS Kinesis). **9. Governance y seguridad de datos** Detalla las prácticas de data governance que todo data engineer debe implementar: control de acceso basado en roles (RBAC) en el warehouse, enmascaramiento de datos sensibles (PII, datos financieros), linaje de datos para entender de dónde vienen los datos y cómo se transforman, cumplimiento con GDPR y otras regulaciones de privacidad en los pipelines, el catálogo de datos como herramienta para que el negocio sepa qué datos están disponibles. Termina con una arquitectura de referencia completa para una empresa en fase de crecimiento con el stack tecnológico recomendado, el diagrama de flujo de los datos desde las fuentes hasta el consumo, y el orden en que implementarías cada capa si partieras desde cero hoy.