Топ-100
 
logo-cerebrosql.jpg

PostgreSQL: database statistics

В окне представлена разнообразная статистика работы баз данных кластера PostgreSQL

Database stats

Представлена информация системного представления pg_stat_database

PostgreSQL database statistics.jpg
Database statistics

SELECT db.datid,
        db.datname,
        numbackends,
        xact_commit,
        xact_rollback,
        blks_read,
        blks_hit,
        tup_returned,
        tup_fetched,
        tup_inserted,
        tup_updated,
        tup_deleted,
        stats_reset,
        slave.confl_tablespace,
        slave.confl_lock,
        slave.confl_snapshot,
        slave.confl_bufferpin,
        slave.confl_deadlock,
        temp_files, 
        pg_size_pretty(temp_bytes),
        deadlocks,
        blk_read_time,
        blk_write_time,
        pg_size_pretty(pg_database_size(db.datid))
  FROM pg_stat_database db 
    JOIN pg_stat_database_conflicts slave 
         ON db.datid=slave.datid
where db.datname=$$DBNAME

pg_config

Просмотр системной таблицы pg_config базы данных PostgreSQL

PostgreSQL view pg_config.jpg

select * from pg_config

pg_file_settings

Просмотр системной таблицы pg_file_settings базы данных PostgreSQL

PostgreSQL view pg_file_settings.jpg

select f.sourcefile, 
       f.name, 
       f.setting, 
       f.applied, 
       f.error 
  from pg_file_settings f

Language support

Список языков программирования поддерживаемых кластером PostgreSQL

PostgreSQL view language_support.jpg

select l.lanname,
       a.rolname,
       l.lanispl,
       l.lanpltrusted,
       l.lanplcallfoid,
       l.laninline,
       l.lanvalidator
  from pg_language l 
    left join pg_authid a 
         on l.lanowner=a.oid

Percentage before freezing

На странице отображается информация о качестве работы процессов autovacuum кластера PostgreSQL. Процент в поле "Percentage before freezing" близкий к нулю говорит о том, что автовакуум не успевает очищать таблицы и велика вероятность ситуации при которой потребуется переводить базу в однопользовательский режим и выполнять vacuum full.

При большом количестве таблиц с низким процентом необходимо проанализировать значения параметров авто вакуума на предмет их изменения на более агрессивные значения.

PostgreSQL show freeze info.jpg

with rel_frozen as (
    select c.oid::regclass as table_name,
           (select e.nspname 
              from pg_catalog.pg_namespace e 
             where oid = c.relnamespace) as schema,
           greatest(age(c.relfrozenxid), age(t.relfrozenxid)) as age,
           greatest(age(c.relfrozenxid), age(t.relfrozenxid))*100./
                (pow(2,31)-1) as perc_wrpa
      from pg_class c 
           left join pg_class t on c.reltoastrelid = t.oid
     where c.relkind in ('r','m')
)
select table_name::text "table", 
       schema, 
       100 - round(perc_wrpa::numeric,2) "froz" 
  from rel_frozen order by 3