Saltar al contenido
Retrato de Lucian Andrei Negoita Lucian
EN
Cosas que he hecho
Por gusto

Un pipeline sin servidores que cuidar

Un fichero aterriza en un bucket, el código se despierta, lo transforma y lo deja donde un cuadro de mando puede leerlo casi en tiempo real. No se ejecuta nada cuando no pasa nada.

Cómo funciona

orientado a eventos, de principio a fin
  1. Bucket S3 Llega un fichero en bruto. Ese es el único disparador.
  2. Lambda Valida, transforma y enriquece. Escala a cero entre eventos.
  3. DynamoDB Escrito para que la lectura salga barata, no para que la escritura quede bonita.
  4. Quien pregunte Respuestas casi en tiempo real en lugar de un proceso nocturno.

Por qué lo construí

Quería entender la arquitectura orientada a eventos pagándola, no leyendo sobre ella. Un proceso nocturno por lotes es fácil. Algo que reacciona en cuanto aterriza un fichero, no cuesta nada mientras está parado y sigue comportándose cuando llegan dos a la vez: ahí es donde están las decisiones de verdad.

Qué me enseñó

  • En DynamoDB diseñas la tabla en torno a la pregunta que vas a hacer, no a los datos que tienes.
  • Un reintento que no es idempotente es solo una forma más lenta de corromper tus datos.
  • Escribir primero el runbook simplificó la arquitectura: todo lo que no supe explicar, lo quité.

Construido con

  • AWS Lambda
  • S3
  • DynamoDB
  • Python
  • IAM
Documentado en myCloudDocs

¿Te pica la curiosidad por el código?