Una utile estensione di PostgreSQL e'
pg_buffercache
che consente di controllare lo stato della buffer cache di PostgreSQL.
Il dettaglio delle informazioni ottenute e' notevole ma la vista e' abbastanza pesante,
sopratutto per le istanze che hanno una buffer cache di grandi dimensioni,
quindi pg_buffercache va utilizzata con cautela.
L'estensione pg_buffercache e' comunque utile ed andrebbe configurata negli ambienti PostgreSQL di produzione per poter eseguire controlli periodici della cache... quindi continuate a leggere!
Con Postgres non si hanno molti strumenti per analizzare e gestire il contenuto della buffer cache del database.
Per colmare questa lacuna e' stata introdotta
l'estensione
pg_buffercache
che consente di monitorare lo stato di ogni singolo buffer della cache.
Configurando questa estensione sono disponibili tutti i dettagli...
pg_buffercache generalmente non richiede alcuna installazione perche' fa parte delle core extensions. Non richiede alcuna configurazione ma, naturalmente, va creata l'extension in ogni database in cui deve essere utilizzata. Vediamo i dettagli...
Basta lanciare il seguente comando creare le viste di sistema necessarie:
create extension pg_buffercache;
Gia' fatto!
Una volta attivata l'estensione pg_buffercache risultano disponibili [NdA potenzialmente soggetto a collisioni ma e' caso quasi impossibile].
Le statistiche raccolte dal modulo vengono riportate nella system view pg_buffercache che puo' essere normalmente interrogata con una select SQL. Per ottenere le relazioni che occupano di piu' la memoria:
Per valutare la dimensione minima della cache:
Nel tempo sono state aggiunte nuove viste e funzioni, dalla versione 16 e' possibile utilizza queste query:
L'estensione pg_buffercache e' stata introdotta con la 8.1 (2005) ed e' sempre stata mantenuta, con alcune utili estensioni, ad ogni nuova release di PostgreSQL.
Alcuni degli aggiornamenti piu' significativi:
Maggiori dettagli si trovano nella utilissima pgPedia.
La vista pg_buffercache e' creata nello schema public quando viene creata l'extension.
Come sempre la documentazione ufficiale PostgreSQL riporta tutti i dettagli...
Titolo: pg_buffercache
Livello: Intermedio
Data:
31 Ottobre 2025 🎃
Versione: 1.0.1 - 14 Febbraio 2026 ❤️
Autore: mail [AT] meo.bogliolo.name