Ir al contenido
Star
478
Star
478

Simple ETL

Esta guía te muestra cómo construir un pipeline de procesamiento de archivos usando AWS S3, Lambda y DynamoDB localmente con LocalStack. Este lab demuestra cómo las subidas a S3 disparan una Lambda para registrar metadatos en una tabla DynamoDB.

  1. Configurar el entorno:

    Abre VS Code en la carpeta del proyecto y ejecuta este comando en la Paleta de Comandos:

    Ventana de terminal
    > Dev Containers: Reopen in Container
  2. Ejecutar el ejemplo:

    Ventana de terminal
    python main.py

Hay otros métodos de despliegue que puedes usar en este lab.

Ventana de terminal
terraform -chdir=deploy init
terraform -chdir=deploy apply -auto-approve
  • Comprueba el bucket S3:
    Ventana de terminal
    aws s3 ls s3://file-uploads-bucket --profile localstack
  • Escanea la tabla DynamoDB:
    Ventana de terminal
    aws dynamodb scan --table-name file-logs --profile localstack
  • Consulta los logs de Lambda:
    Ventana de terminal
    aws logs tail /aws/lambda/s3-file-processor --profile localstack
Ventana de terminal
docker compose down -v
ProblemaSolución
Conexión rechazadaAsegúrate de que LocalStack está en ejecución y espera el mensaje Ready. en los logs.
Lambda no se disparaVerifica los logs: aws logs tail /aws/lambda/s3-file-processor --profile localstack