Cloud Database Backups
Construyendo un SaaS de backups y recuperación para bases de datos en la nube: proteger, recuperar, inspeccionar y exportar, sin depender de la memoria de nadie.
Casi todos los incidentes serios que he visto en proyectos pequeños tienen la misma raíz: nadie sabía con certeza si la base de datos estaba realmente protegida hasta que ya era tarde. Este proyecto es un SaaS para resolver eso — gestión de backups, snapshots y restauraciones para bases de datos en la nube, empezando por AWS RDS + MySQL.
El producto se organiza alrededor de un solo ciclo: Proteger → Recuperar → Inspeccionar → Exportar. Un cliente necesita ver de un vistazo si su base está protegida y cuál es su ventana de recuperación real; poder restaurar a un punto en el tiempo o a un recovery point de largo plazo sin tocar la base original; explorar tablas y datos recuperados antes de decidir qué hacer con ellos; y exportar exactamente lo que necesita, con filtros, en CSV.
La arquitectura separa el frontend (Astro) del backend (Laravel/PHP), con el dominio
construido alrededor de capacidades y contratos, no de vendors: el código de
negocio nunca sabe si está hablando con AWS RDS o con otro proveedor, ni con MySQL o con
otro motor — todo lo específico de AWS vive detrás de interfaces, para que agregar GCP,
Azure u otro motor de base de datos más adelante no obligue a reescribir la lógica de
backups o export. Las operaciones largas (crear un snapshot, restaurar, exportar) corren
de forma asíncrona vía jobs en cola, con el cliente monitoreando el progreso por polling
en vez de bloquear la petición HTTP. Cada endpoint que muta estado soporta reintentos
seguros vía una Idempotency-Key, para que un reintento de red nunca duplique
una operación.
Ya está probado en vivo contra una instancia real de AWS/RDS: creación y monitoreo de snapshots, restauración a una base separada sin tocar la original, exploración de tablas e inspección de datos antes de exportar, y export a CSV con filtros — todo el ciclo completo, no solo maquetas. Sigue en construcción hacia un producto multi-tenant con suscripciones y panel de administración.