#805

Разрежи логовете по година, за да могат старите парчета да се изтриват

Таблицата logs събира 500 милиона реда годишно — индексите се раздуват, vacuum се забавя, а изтриването на стара година ред по ред отнема цяла вечност. Решението е партициониране по година на създаване: всяко парче живее в собствена физическа таблица, а остаряла година може да се отхвърли наведнъж за милисекунди. Изгради таблица logs с id (тип BIGSERIAL), ts (timestamp с часова зона, задължително) и payload (текст), партиционирана по диапазон върху ts. Създай две партиции — logs_2024 за дати от 1 януари 2024 г. до 1 януари 2025 г. (горната граница не се включва) и logs_2025 за следващата година по същия принцип. Вмъкването попада в правилната партиция по дата автоматично.

Примерен очакван изход

Така изглежда правилният отговор — броят редове е негов собствен, не е задължително да съвпада с таблиците в схемата.

relname
logs_2024
logs_2025

Резултатът от заявката ти ще се покаже тук

Няма начална схема

Тази задача започва без таблици — ще ги създадеш чрез CREATE TABLE.