# Ingeniería de datos

> El trabajo de armar los caños que llevan los datos a donde se pueden usar.

- Nivel: Intermedio
- Temas: Datos
- URL: https://tidbit.legios.com.ar/es/data-engineering/
- En inglés: [Data engineering](https://tidbit.legios.com.ar/data-engineering/)

La **ingeniería de datos** (data engineering) es la disciplina que junta los datos de los lugares donde nacen, los limpia y los reorganiza, y los deja en un lugar confiable donde otros los puedan usar. Los datos de una empresa arrancan desparramados: la base de datos de la app, el proveedor de pagos, el CRM, planillas, registros de eventos. Un **ingeniero de datos** arma y mantiene los pipelines que traen todo eso a un mismo lugar, casi siempre un data warehouse o un data lake.

En el día a día, eso es escribir procesos ETL o ELT en SQL y Python, programarlos con herramientas como Airflow, modelar tablas con dbt y procesar grandes volúmenes con motores como Apache Spark. Y también la parte menos vistosa: que un proceso que falla se pueda volver a correr sin duplicar nada, darse cuenta cuando una fuente cambia de formato, cuidar los costos y lograr que los números de ayer estén listos antes de la reunión de las 9.

El rol está antes que los analistas y los científicos de datos. Ellos hacen las preguntas; la ingeniería de datos se asegura de que las respuestas salgan de datos completos, a tiempo y coherentes. Ahora que las empresas meten cada vez más datos en sistemas de IA, esta plomería se ve más, porque un modelo es tan bueno como los datos que le llegan.

## Una analogía

La empresa de agua de una ciudad. Nadie piensa en los caños, las bombas y las plantas potabilizadoras hasta que sale agua marrón de la canilla; la ingeniería de datos construye y mantiene esa red para que salgan datos limpios en cualquier canilla que alguien abra.

## Para quedarse

- Lleva datos de muchas fuentes a un warehouse o un lake, limpios y coherentes.
- Herramientas típicas: SQL, Python, orquestadores como Airflow, dbt, Spark.
- Gran parte del trabajo es confiabilidad: fallas, datos que llegan tarde, fuentes que cambian.
- Trabaja antes que analistas, científicos de datos y equipos de machine learning.

## Para seguir leyendo

- [Data engineering en Wikipedia (en inglés)](https://en.wikipedia.org/wiki/Data_engineering)
- [Documentación de Apache Airflow (en inglés)](https://airflow.apache.org/docs/)

## Términos relacionados

- [Base de datos](https://tidbit.legios.com.ar/es/database/): Un depósito ordenado de datos que los programas consultan y actualizan sin riesgo.
- [Planilla vs base de datos](https://tidbit.legios.com.ar/es/spreadsheet-vs-database/): Por qué una empresa que vive en Excel termina necesitando una base de datos de verdad.
- [Data warehouse](https://tidbit.legios.com.ar/es/data-warehouse/): Una base hecha para analizar: años de historia, de muchas fuentes, en un solo lugar.
- [Data lake](https://tidbit.legios.com.ar/es/data-lake/): Almacenamiento barato donde todos los datos se guardan como archivos crudos.
- [ETL](https://tidbit.legios.com.ar/es/etl/): Sacar datos de sus fuentes, limpiarlos y cargarlos donde se puedan analizar.
- [SQL](https://tidbit.legios.com.ar/es/sql/): El lenguaje para hacerle preguntas a una base de datos.
- [Python](https://tidbit.legios.com.ar/es/python/): Un lenguaje de programación muy usado, conocido por ser fácil de leer y de escribir.
- [dbt](https://tidbit.legios.com.ar/es/dbt/): Una herramienta para escribir transformaciones de datos en SQL, con tests, como software.
