Împarte logurile pe an ca să poți elimina bucățile vechi
Tabela logs adună 500 de milioane de rânduri pe an — indecșii se umflă, vacuum încetinește, iar ștergerea unui an vechi rând cu rând durează o veșnicie. Soluția este partiționarea pe anul de creare: fiecare bucată trăiește în propria tabelă fizică, iar un an învechit poate fi eliminat în întregime în milisecunde.
Construiți o tabelă logs cu id (de tip BIGSERIAL), ts (timestamp cu fus orar, obligatoriu) și payload (text), partiționată pe interval după ts. Creați două partiții — logs_2024 pentru datele de la 1 ianuarie 2024 până la 1 ianuarie 2025 (limita superioară exclusivă) și logs_2025 pentru anul următor pe același principiu. O inserare ajunge automat în partiția corectă în funcție de dată.
Exemplu de ieșire așteptată
Așa arată un răspuns corect — numărul său de rânduri îi este propriu, nu trebuie să se potrivească cu tabelele din schemă.
| relname |
|---|
| logs_2024 |
| logs_2025 |
Conectează-te pentru a vedea istoricul soluțiilor trimise
Conectează-teConectează-te pentru a folosi Mentorul AI
Conectează-teFără schemă inițială
Această problemă începe fără tabele — le vei crea prin CREATE TABLE.