Divide los logs por año para poder eliminar bloques antiguos
La tabla logs acumula 500M de filas al año — los índices se hinchan, el vacuum se ralentiza y borrar un año antiguo fila por fila tarda una eternidad. La solución es particionar por año de creación: cada bloque vive en su propia tabla física, y un año obsoleto se puede eliminar entero en milisegundos.
Construye una tabla logs con id (tipo BIGSERIAL), ts (marca de tiempo con zona horaria, obligatorio) y payload (texto), particionada por rango sobre ts. Crea dos particiones — logs_2024 para fechas desde el 1 de enero de 2024 hasta el 1 de enero de 2025 (límite superior exclusivo) y logs_2025 para el año siguiente bajo el mismo principio. Una inserción cae en la partición correcta según la fecha automáticamente.
Ejemplo de respuesta esperada
Así es una respuesta correcta: tiene su propio número de filas y no tiene por qué coincidir con las tablas del esquema.
| relname |
|---|
| logs_2024 |
| logs_2025 |
Inicia sesión para ver tu historial de envíos
Iniciar sesiónInicia sesión para usar el AI Mentor
Iniciar sesiónSin esquema inicial
Este ejercicio no incluye tablas iniciales: tendrás que crearlas con CREATE TABLE.