Skip to content

SDG19 Final

Bienvenido a la documentación del proyecto final. Esta solución cubre autenticación, órdenes, envío de correos y data lake con infraestructura en AWS.

flowchart LR user((Usuario)) --> web[Angular Web] web --> cfWeb[CloudFront Web] cfWeb --> s3web[S3 WebBucket] web --> cfApi[CloudFront API] cfApi --> api[API Gateway HTTP API] api --> auth[Lambda Auth] api --> products[Lambda Products] api --> orders[Lambda Orders] orders --> ddb[DynamoDB Single Table] ddb --> stream[DynamoDB Stream] stream --> orderStream[Lambda Order Stream] orderStream --> sns[SNS Orders Topic] sns --> sqsEmail[SQS Orders Queue] sqsEmail --> orderEmail[Lambda Order Email] orderEmail --> ses[SES Template] orderEmail --> s3email[S3 EmailsBucket] sns --> sqsLake[SQS Orders Lake Queue] sqsLake --> orderLake[Lambda Order Lake] orderLake --> kinesis[Kinesis Data Stream] kinesis --> firehose[Firehose] firehose --> s3data[S3 DataBucket] subgraph Edge waf[WAF] r53[Route53] end r53 --> cfWeb r53 --> cfApi waf --> cfWeb waf --> cfApi

Notas clave:

  • order-email valida formato de email y guarda copia en S3 con estado pending antes de enviar por SES; luego la marca como sent para evitar duplicados.
  • Firehose escribe Parquet y particiona por year/month/day/hour.
  • Fase 1: autenticación, productos y órdenes.
  • Fase 2: envío de correos con SES.
  • Fase 3: data lake con Kinesis + Firehose.