Volver a proyectos

AWS Backup Recovery Pipeline - Consulta historica de backups MySQL

Este proyecto transforma un proceso manual y lento de recuperacion de datos historicos en un pipeline reproducible en AWS. A partir de backups MySQL comprimidos en formato .sql.gz, la solucion genera datasets Parquet consultables desde Athena, con trazabilidad operativa, catalogacion en Glue y despliegue reusable mediante Terraform.

AWS Step Functions Lambda ECS Fargate Glue Athena Terraform Python
Arquitectura del pipeline de recuperacion y consulta historica de backups MySQL en AWS

Problema real

Cuando un equipo necesita revisar un backup antiguo, el flujo suele ser demasiado manual: localizar el dump, descargarlo, restaurarlo en local o en una instancia temporal y buscar los registros a mano. Si hace falta comparar otra fecha o revisar otro tenant, el proceso vuelve a empezar.

Ese enfoque resuelve urgencias, pero no escala bien. Consume tiempo, depende del entorno de un developer y deja poca trazabilidad sobre que se proceso y con que resultado.

Solucion aplicada

La arquitectura final preserva el dump original en S3 raw y lo transforma bajo demanda a una capa analitica en Parquet. La ejecucion se orquesta con Step Functions, usa Lambda para validacion y catalogacion, y delega el trabajo pesado de parseo y escritura a ECS Fargate.

  1. El backup MySQL `.sql.gz` entra en S3.
  2. Step Functions valida la entrada y genera `run_id`.
  3. Fargate descomprime, parsea el SQL y escribe tablas en Parquet.
  4. Glue registra tablas y particiones.
  5. Athena consulta los datos por `tenant` y `backup_date`.

Decisiones tecnicas clave

Validacion real en AWS

El proyecto no se quedo en una idea o una maqueta de infraestructura. El MVP se valido en una cuenta AWS real procesando un backup MySQL comprimido y confirmando el comportamiento del flujo de extremo a extremo.

Valor del proyecto

Este caso resume bien el tipo de trabajo que mas me interesa: convertir una necesidad operativa real en una solucion reproducible, observable y con criterio de arquitectura. No busca cubrir todos los escenarios posibles de restauracion, sino resolver con claridad uno muy concreto: consultar historico desde backups sin restaurar bases completas.

Trade-offs y limitaciones

¿Quieres revisar la arquitectura completa o adaptar este enfoque?

El repositorio publico incluye codigo, Terraform, diagramas y documentacion tecnica del flujo validado.

Ver repositorio en GitHub -> Comentar un caso similar