Saltar al contenido
Gontzal Bilbao
← proyectos

datos · aws

ETL serverless de bajo coste

Glue, Athena y S3 en tres capas, reproducible de principio a fin con Terraform.

tipo
laboratorio
rol
Diseño del pipeline y de la infraestructura como código
stack
glue · athena · s3 · lambda · terraform
resultado
Un ETL sin servidores ni Spark que solo paga por ejecución y se recrea entero con Terraform

Construí un ETL en AWS que no mantiene ningún servidor encendido y solo paga cuando se ejecuta. Las transformaciones son SQL en Athena, sin Glue Spark, y todo el entorno se despliega con Terraform.

El punto de partida

Quería un pipeline de analítica para startups o empresas pequeñas, donde la simplicidad y el coste pesan más que la potencia. Mantener servidores o un motor Spark para eso era pagar de más.

Qué hice

Diseñé un pipeline en tres capas sobre S3 con servicios gestionados que funcionan bajo demanda. Lo pensé para entornos multi-tenant: añadir un tenant o un dataset no obliga a tocar la arquitectura.

Cómo lo hice

Ingesta

Una Lambda deja los backups SQL de RDS en S3. Es la capa Bronze: datos crudos en .sql.gz o CSV.

Un Glue Crawler detecta la estructura de los datos en Bronze y actualiza el Data Catalog.

Transformación

Consultas CTAS de Athena convierten los datos a Parquet. Así salen Silver, con tipado uniforme, y Gold, con datasets agregados para informes. Prescindir de Glue Spark es lo que mantiene el coste bajo.

Orquestación y código

Lambda y EventBridge lanzan cada día la copia, la transformación y la limpieza. Terraform define buckets, crawlers, bases de datos, jobs y vistas de Athena, con módulos por entorno (dev, staging, prod) y etiquetado multi-tenant.

Resultado

El pipeline entero se crea, se replica o se destruye en minutos y sin pasos manuales.

No hay servidores que mantener: todo se ejecuta bajo demanda y se paga por ejecución. QuickSight o Power BI se conectan directamente a la capa Gold para los dashboards.

Qué me llevo

Para este tipo de proyecto, CTAS de Athena sobre Parquet cubre las transformaciones sin necesidad de Spark. Antes de elegir el motor conviene preguntarse cuánto dato hay de verdad.

Arquitectura

RDS → Lambda → S3 Bronze → Glue Crawler → Athena CTAS → S3 Silver y Gold → QuickSight o Power BI. EventBridge dispara el ciclo diario.