Já jsem napsal před hodně lety článek pro root https://www.root.cz/clanky/cteni-provadecich-planu-v-postgresql/
Tomáš má několik pěkných prezentací https://cspug.cz/files/cspug-2011-06-21-vondra-explain.pdf
V těch dokumentech, co jsem napsal pro roota https://www.root.cz/autori/pavel-stehule/ je všechno, co je potřeba znát pro databáze.
Bloating tabulek.
Ukaz nejvetsi tabulky v Posatgresu:
SELECT relname, pg_size_pretty(pg_table_size(C.oid))
FROM pg_class C
LEFT JOIN pg_namespace N ON (N.oid = C.relnamespace)
WHERE nspname NOT IN (‘pg_catalog’, ‘information_schema’) AND nspname !~ ‘^pg_toast’ AND relkind IN (‘r’)
ORDER BY pg_table_size(C.oid)
DESC LIMIT 10;
Ukaz mnozstvi bloatu v tabulkach (dead tuples number)
SELECT relname, n_dead_tup FROM pg_stat_user_tables;
V tomto vynikajícím článku (děkujeme za něj) je spomínaný pgbadger, takto nástroj který jsem u nás nasazoval a provozuji cca půlrok. Je to vlastně velký perlácký skript, který prochází DB log a rozparsuje jednotlivé položky do statisticky použitelné formy (třeba sloupcový ANSI, ale častěji do html grafů). Je to moc užitečné a použitelné, nicméně mám takový problém, tak se poptávám, jestli s tím někdo pracuje.
Mám funkční a nasazenou verzi 9.1., nicméně upgrade na vyšší verze (aktuálně 11) mi prostě nejede. Nevyplivne to data a zjevně se jedná o syntaktickou/parsovací věc, jelikož skript/proces doběhne a nevypíše žádnou chybu. On ten pgbadger je taky one man show a neloguje to takřka nic, takže hledej nešťastníku. Nejsem žádný pearlař a byť obecné syntaxi lze porozumět, tak devil is in details v tomto případě, I suppose...
T.j. dotaz - provozuje někdo úspěšně pgbadger ve verzi 11?