HeadlinesBriefing favicon HeadlinesBriefing.com

Pipeline de datos en AWS: Supuestos locales

Towards Data Science •
×

Durante meses, construí un pipeline de datos en mi máquina Windows usando ingesta RSS en WSL2, Postgres en Docker, orquestación Kestra y transformaciones dbt. Todo funcionaba localmente porque todo se ejecutaba en una sola máquina. Migrarlo a AWS mediante CLI reveló supuestos ocultos.

Configurar una instancia EC2 t3.small con Ubuntu 22.04 fue fácil. Las sorpresas incluyeron un disco de 8GB demasiado pequeño, que requirió growpart y resize2fs, pero las instancias Nitro más nuevas nombran los discos `nvme0n1` en lugar de `xvda`. La instancia se volvió "impedida" durante la extracción de imagen de Kestra, solucionado añadiendo un archivo de swap de 1GB. Una IP elástica y restricciones del grupo de seguridad añadieron pequeñas tareas.

Transferir el pipeline con rsync, Docker y docker compose funcionó, pero los flujos de Kestra viven en su base de datos interna, no en archivos, así que mi flujo fetch_rss necesitó pegado manual de YAML. Esto destacó un patrón de supuestos rompiéndose uno a uno.

El verdadero desafío no fue AWS en sí, sino las dependencias ocultas basadas en supuestos de "misma máquina", enseñando más que la construcción original.