Saltar al contenido principal
Rubén Solano

Ingeniería de datos

Servicios de ingeniería de datos

Pipelines ELT fiables, modelos de datos claros y tests de calidad para que tus informes y modelos se apoyen en datos en los que se pueda confiar y que se actualicen sin intervención manual.

Actualizado:

Problemas que resuelve

  • Cada informe da una cifra distinta

    Las métricas se calculan en sitios distintos con reglas ligeramente diferentes. Nadie sabe cuál es la buena.

  • Procesos de carga frágiles o lentos

    Un pipeline que falla en silencio, tarda demasiado o se reconstruye por completo cada día encarece y retrasa todo lo demás.

  • Datos sin pruebas ni documentación

    Cuando cambia una columna en origen nadie se entera hasta que un informe sale mal.

  • Costes de consulta que crecen

    Las consultas escanean más datos de los necesarios y la factura del almacén sube sin que el negocio gane nada.

Arquitectura típica de un pipeline ELT con dbt y BigQuery

El patrón que suelo usar separa responsabilidades en capas. En base (o staging) se carga cada fuente casi tal cual, con nombres homogéneos, tipos corregidos y poco más: es la frontera entre el mundo exterior y el tuyo. En core se modelan las entidades del negocio —clientes, transacciones, productos— con reglas, deduplicación y claves bien definidas. En marts se construyen las tablas listas para cada uso: un cuadro de mando, un modelo predictivo o una exportación. Cada capa tiene sus tests y su documentación, y las dependencias entre modelos las gestiona dbt.

Validación de datos como parte del diseño

Los tests no son un añadido final. Desde el primer modelo defino pruebas de unicidad y no nulos en las claves, relaciones entre tablas y reglas de negocio (por ejemplo, que un importe no sea negativo salvo devoluciones). Añado comprobaciones de frescura para detectar fuentes que han dejado de llegar y, cuando es posible, concilio totales con el sistema de origen. Los fallos generan avisos concretos en lugar de informes silenciosamente erróneos.

Orquestación, coste y rendimiento

Para ejecutar los pipelines de forma programada utilizo Airflow cuando el proyecto tiene dependencias suficientes para justificarlo; para necesidades más simples, una programación sencilla basta. En BigQuery, gran parte del ahorro viene de tres decisiones: consultar solo las columnas necesarias, particionar y agrupar las tablas grandes según cómo se filtran y evitar reconstrucciones completas cuando una carga incremental es suficiente.

Experiencia relacionada

He trabajado con SQL, dbt y BigQuery en un equipo de analítica de una fintech (descrito a alto nivel por confidencialidad) y mantengo un laboratorio personal con más de 250 000 transacciones sintéticas que ilustra la organización por capas, los tests y la orquestación. Lo encontrarás en proyectos.

Qué entrego

  • Pipelines ELT/ETL

    Ingesta desde tus fuentes al almacén (BigQuery u otro), con cargas incrementales cuando procede y gestión de errores.

  • Modelado con dbt por capas

    Capas base, core y marts con convenciones de nombres, documentación y linaje, listas para analítica y modelos.

  • Calidad y validación de datos

    Tests de unicidad, nulos, relaciones y reglas de negocio; comprobaciones de frescura y reconciliación con la fuente.

  • Orquestación

    Ejecución programada y dependencias con Airflow u otra herramienta adecuada al tamaño del proyecto, con avisos de fallo.

  • Optimización de coste y rendimiento

    Revisión de consultas y modelos, particionado, clustering y materializaciones para reducir tiempo y coste de proceso.

Cómo lo abordo

  1. 01

    Inventario de fuentes y necesidades

    Qué datos existen, quién los usa, qué decisiones se toman con ellos y qué cifras deben cuadrar.

  2. 02

    Diseño del modelo

    Defino entidades, granularidad y métricas con tu equipo antes de escribir transformaciones, para evitar rehacer.

  3. 03

    Implementación incremental

    Una fuente y un caso de uso completos antes de ampliar. Cada modelo con sus tests desde el primer día.

  4. 04

    Validación y conciliación

    Comparo resultados con las cifras que ya conoces y documento las diferencias y su causa.

  5. 05

    Operación y traspaso

    Orquestación, alertas, documentación y revisión de código para que tu equipo pueda mantenerlo.

Ejemplos concretos

  • Un almacén de datos para empezar bien

    Estructura de capas, convenciones y tests desde el inicio, con un primer cuadro de mando sobre datos fiables.

  • Migrar hojas y consultas sueltas a modelos dbt

    Convertir lógica dispersa en modelos versionados, probados y documentados.

  • Reducir el tiempo de reconstrucción de un modelo

    Analizar por qué una carga diaria tarda tanto y pasar de reconstruirlo todo a cargas incrementales cuando los datos lo permiten.

  • Consolidar datos de varias regiones o sistemas

    Normalizar estructuras distintas en un modelo común con registros estandarizados.

Para quién es

  • Empresas con datos en varias fuentes (aplicaciones, hojas, bases de datos) que necesitan una única versión fiable.
  • Equipos que usan BigQuery y dbt y tienen consultas lentas, caras o difíciles de mantener.
  • Startups que van a montar su primer almacén de datos y quieren evitar deuda técnica desde el principio.

Beneficios realistas

  • Una única fuente de verdad para las métricas clave.
  • Menos incidencias y diagnóstico más rápido cuando algo falla.
  • Procesos más rápidos y baratos de ejecutar.
  • Documentación y linaje que facilitan incorporar a nuevas personas.

Límites y honestidad

  • Un buen modelo de datos no arregla datos mal capturados en origen; a veces el cambio hay que hacerlo en el proceso que los genera.
  • No recomiendo herramientas pesadas si el volumen y la complejidad no las justifican.
  • Las mejoras de rendimiento dependen de cada caso; no puedo prometer un porcentaje antes de analizar tus consultas.

Preguntas frecuentes

¿Qué diferencia hay entre ETL y ELT?

En ETL los datos se transforman antes de cargarlos al almacén; en ELT se cargan primero y se transforman dentro del almacén con SQL. ELT con herramientas como dbt es hoy lo habitual en almacenes en la nube porque aprovecha su capacidad de cómputo y deja las transformaciones versionadas.

¿Trabajas con otros almacenes además de BigQuery?

Mi experiencia profesional es con BigQuery y dbt. Los principios de modelado, pruebas y orquestación se trasladan a otros almacenes SQL; si tu entorno es otro te lo diré con claridad antes de empezar.

¿Qué es dbt y por qué tanta gente lo usa?

dbt permite escribir las transformaciones como consultas SQL versionadas, con tests y documentación generada automáticamente. Convierte lógica de datos en código revisable, en lugar de consultas sueltas.

¿Puedes revisar un pipeline que ya tenemos?

Sí. Una revisión acotada identifica puntos frágiles, consultas costosas y falta de pruebas, y termina con una lista priorizada de mejoras.

¿Dónde puedo ver tu experiencia en esto?

En la página de experiencia describo a alto nivel mi trabajo con SQL, dbt y BigQuery en una fintech, y en proyectos tienes un laboratorio personal con datos sintéticos que muestra cómo organizo las capas.

Evidencia relacionada: proyectos relacionados

  • Ingeniería de datosProyecto personal

    Laboratorio de analytics engineering sobre delitos financieros

    Laboratorio personal que reproduce un entorno de analytics engineering sobre datos sintéticos de delitos financieros, con capas base, core y marts, tests de calidad y orquestación.

    • Python
    • SQL
    • dbt
    • BigQuery
    • DuckDB
    • Airflow
    • +1
    En desarrollo activoVer caso

Artículos relacionados

Servicios relacionados

Solicitar propuesta

Hablemos de tu caso

Una primera conversación sirve para saber si tiene sentido y por dónde empezar.