#805

Fatie os logs por ano para poder descartar blocos antigos

A tabela logs acumula 500M de linhas por ano — os índices incham, o vacuum desacelera e apagar um ano antigo linha por linha leva uma eternidade. A solução é particionar por ano de criação: cada bloco vive em sua própria tabela física, e um ano obsoleto pode ser descartado por inteiro em milissegundos. Construa uma tabela logs com id (tipo BIGSERIAL), ts (timestamp com fuso horário, obrigatório) e payload (texto), particionada por intervalo sobre ts. Crie duas partições — logs_2024 para datas de 1 de janeiro de 2024 até 1 de janeiro de 2025 (limite superior exclusivo) e logs_2025 para o ano seguinte sob o mesmo princípio. Uma inserção cai na partição certa pela data automaticamente.

Exemplo de resposta esperada

É assim que se parece uma resposta correta: ela tem seu próprio número de linhas e não precisa coincidir com as tabelas do esquema.

relname
logs_2024
logs_2025
Entre para enviar

O resultado da sua consulta aparecerá aqui

Sem esquema inicial

Esta tarefa não inclui tabelas iniciais: você vai criá-las com CREATE TABLE.