| Snapshot Tables |
| =============== |
| |
| This chapter is intended to give detailed information about several snapshot tables, where the performance snapshot to be stored. |
| |
| Snapshot Table List |
| ------------------- |
| |
| Performance snapshot is going to be stored in the following tables associated with each performance statistics available in PostgreSQL. |
| |
| .. csv-table:: |
| :header-rows: 1 |
| |
| Table Name, Description, Note |
| pgperf.snapshot, Stores snapshot id and timestamp of the performance snapshot. |
| pgperf.snapshot_pg_stat_database, Stores a snapshot of the pg_stat_database system view. |
| pgperf.snapshot_pg_database_size, Stores a snapshot of the database size. |
| pgperf.snapshot_pg_stat_user_tables, Stores a snapshot of the pg_stat_user_tables system view. |
| pgperf.snapshot_pg_statio_user_tables, Stores a snapshot of the pg_statio_user_tables system view. |
| pgperf.snapshot_pg_stat_user_indexes, Stores a snapshot of the pg_stat_user_indexes system view. |
| pgperf.snapshot_pg_statio_user_indexes, Stores a snapshot of the pg_statio_user_indexes system view. |
| pgperf.snapshot_pg_statio_user_sequences, Stores a snapshot of the pg_statio_user_sequences system view. |
| pgperf.snapshot_pg_stat_user_functions, Stores a snapshot of the pg_stat_user_functions system view. |
| pgperf.snapshot_pg_relation_size, Stores a snaphsot of the table and index size. |
| pgperf.snapshot_pg_current_xlog, Stores a snapshot of the current xlog location and the current insert location. |
| pgperf.snapshot_pg_stat_bgwriter, Stores a snapshot of the pg_stat_bgwriter system view. |
| pgperf.snapshot_pg_stat_activity, Stores a snapshot of the pg_stat_activity system view. |
| pgperf.snapshot_pg_locks, Stores a snapshot of the pg_locks system view. |
| pgperf.snapshot_pg_statistic, Stores a snapshot of the pg_statistics system table. |
| pgperf.snapshot_pg_stat_statements, Stores a snapshot of the pg_stat_statements view., 8.4 or later |
| pgperf.snapshot_pgstattuple, Stores a snapshot of the result of pgstattuple function. |
| pgperf.snapshot_pgstatindex, Stores a snapshot of the result of pgstatindex function. |
| |
| pgperf.snapshot Table |
| --------------------- |
| |
| This table stores snapshot id and timestamp of each snapshot taken by the snapshot function. |
| |
| ===================== ================ ========================= ============ |
| Column Name Type Source Note |
| ===================== ================ ========================= ============ |
| sid integer Snapshot ID Monotone increasing |
| ts timestamp Timestamp of the snapshot |
| level integer Snapshot level |
| ===================== ================ ========================= ============ |
| |
| |
| |
| pgperf.snapshot_pg_stat_database Table |
| -------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_database`` system view which contains the database access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| datid oid pg_stat_database.datid |
| datname name pg_stat_database.datname |
| numbackends integer pg_stat_database.numbackends |
| xact_commit bigint pg_stat_database.xact_commit |
| xact_rollback bigint pg_stat_database.xact_rollback |
| blks_read bigint pg_stat_database.blks_read |
| blks_hit bigint pg_stat_database.blks_hit |
| tup_returned bigint pg_stat_database.tup_returned |
| tup_fetched bigint pg_stat_database.tup_fetched |
| tup_inserted bigint pg_stat_database.tup_inserted |
| tup_updated bigint pg_stat_database.tup_updated |
| tup_deleted bigint pg_stat_database.tup_deleted |
| conflicts bigint pg_stat_database.conflicts 9.1 or later |
| stats_reset timestampz pg_stat_database.stats_reset 9.1 or later |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_database_size Table |
| -------------------------------------- |
| |
| This table stores snapshots of result of the ``pg_database_size()`` function which gets database size. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| datname name pg_database.datname |
| pg_database_size bigint pg_database_size() |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_stat_user_tables Table |
| ----------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_user_tables`` system view which contains the table access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| relid oid pg_stat_user_tables.relid |
| schemaname name pg_stat_user_tables.schemaname |
| relname name pg_stat_user_tables.relname |
| seq_scan bigint pg_stat_user_tables.seq_scan |
| seq_tup_read bigint pg_stat_user_tables.seq_tup_read |
| idx_scan bigint pg_stat_user_tables.idx_scan |
| idx_tup_fetch bigint pg_stat_user_tables.idx_tup_fetch |
| n_tup_ins bigint pg_stat_user_tables.n_tup_ins |
| n_tup_upd bigint pg_stat_user_tables.n_tup_upd |
| n_tup_del bigint pg_stat_user_tables.n_tup_del |
| n_tup_hot_upd bigint pg_stat_user_tables.n_tup_hot_upd |
| n_live_tup bigint pg_stat_user_tables.n_live_tup |
| n_dead_tup bigint pg_stat_user_tables.n_dead_tup |
| last_vacuum timestampz pg_stat_user_tables.last_vacuum |
| last_autovacuum timestampz pg_stat_user_tables.last_autovacuum |
| last_analyze timestampz pg_stat_user_tables.last_analyze |
| last_autoanalyze timestampz pg_stat_user_tables.last_autoanalyze |
| vacuum_count bigint pg_stat_user_tables.vacuum_count 9.1 or later |
| autovacuum_count bigint pg_stat_user_tables.autovacuum_count 9.1 or later |
| analyze_count bigint pg_stat_user_tables.analyze_count 9.1 or later |
| autoanalyze_count bigint pg_stat_user_tables.autoanalyze_count 9.1 or later |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pg_statio_user_tables Table |
| ------------------------------------------- |
| |
| This table stores snapshots of the ``pg_statio_user_tables`` system view which contains the table access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| relid oid pg_statio_user_tables.relid |
| schemaname name pg_statio_user_tables.schemaname |
| relname name pg_statio_user_tables.relname |
| heap_blks_read bigint pg_statio_user_tables.heap_blks_read |
| heap_blks_hit bigint pg_statio_user_tables.heap_blks_hit |
| idx_blks_read bigint pg_statio_user_tables.idx_blks_read |
| idx_blks_hit bigint pg_statio_user_tables.idx_blks_hit |
| toast_blks_read bigint pg_statio_user_tables.toast_blks_read |
| toast_blks_hit bigint pg_statio_user_tables.toast_blks_hit |
| tidx_blks_read bigint pg_statio_user_tables.tidx_blks_read |
| tidx_blks_hit bigint pg_statio_user_tables.tidx_blks_hit |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_stat_user_indexes Table |
| ------------------------------------------ |
| |
| This table stores snapshots of the ``pg_stat_user_indexes`` system view which contains the index access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| relid oid pg_stat_user_indexes.relid |
| indexrelid oid pg_stat_user_indexes.indexrelid |
| schemaname name pg_stat_user_indexes.schemaname |
| relname name pg_stat_user_indexes.relname |
| indexrelname name pg_stat_user_indexes.indexrelname |
| idx_scan bigint pg_stat_user_indexes.idx_scan |
| idx_tup_read bigint pg_stat_user_indexes.idx_tup_read |
| idx_tup_fetch bigint pg_stat_user_indexes.idx_tup_fetch |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_statio_user_indexes Table |
| -------------------------------------------- |
| |
| This table stores snapshots of the ``pg_statio_user_indexes`` system view which contains the index access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| relid oid pg_statio_user_indexes.relid |
| indexrelid oid pg_statio_user_indexes.indexrelid |
| schemaname name pg_statio_user_indexes.schemaname |
| relname name pg_statio_user_indexes.relname |
| indexrelname name pg_statio_user_indexes.indexrelname |
| idx_blks_read bigint pg_statio_user_indexes.idx_blks_read |
| idx_blks_hit bigint pg_statio_user_indexes.idx_blks_hit |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_statio_user_sequences Table |
| ---------------------------------------------- |
| |
| This table stores snapshots of the ``pg_statio_user_sequences`` system view which contains the sequence access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| relid oid pg_statio_user_sequences.relid |
| schemaname name pg_statio_user_sequences.schemaname |
| relname name pg_statio_user_sequences.relname |
| blks_read int8 pg_statio_user_sequences.blks_read |
| blks_hit int8 pg_statio_user_sequences.blks_hit |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_stat_user_functions Table |
| -------------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_user_functions`` system view which contains the function access statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| funcid oid pg_stat_user_functions.funcid |
| schemaname name pg_stat_user_functions.schemaname |
| funcname name pg_stat_user_functions.funcname |
| calls int8 pg_stat_user_functions.calls |
| total_time int8 pg_stat_user_functions.total_time |
| self_time int8 pg_stat_user_functions.self_time |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_relation_size Table |
| -------------------------------------- |
| |
| This table stores snapshots of the result of ``pg_relation_size()`` and ``pg_total_relation_size()`` function which gets table and/or index size. |
| |
| ====================== ================ ====================================== ============================= |
| Column Name Type Source Note |
| ====================== ================ ====================================== ============================= |
| sid integer Snapshot ID |
| schemaname name pg_stat_user_tables.schemaname, |
| pg_stat_user_indexes.schemaname |
| relid oid pg_stat_user_tables.relid, |
| pg_stat_user_indexes.indexrelid |
| relname name pg_class.relname |
| pg_relation_size bigint pg_relaion_size() |
| pg_total_relation_size bigint pg_total_relaion_size() Available only for tables |
| ====================== ================ ====================================== ============================= |
| |
| |
| pgperf.snapshot_pg_current_xlog Table |
| ------------------------------------- |
| |
| This table stores snapshots of the result of ``pg_current_xlog_location()`` and ``pg_current_xlog_insert_location()`` function which gets current WAL locations. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snaphsot ID |
| location text pg_current_xlog_location() |
| insert_location text pg_current_xlog_insert_location() |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pg_stat_bgwriter Table |
| -------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_bgwriter`` system view which contains the background writer statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| checkpoints_timed bigint pg_stat_bgwriter.checkpoints_timed |
| checkpoints_req bigint pg_stat_bgwriter.checkpoints_req |
| checkpoint_write_time double precision pg_stat_bgwriter.checkpoint_write_time 9.2 or later |
| checkpoint_sync_time double precision pg_stat_bgwriter.checkpoint_sync_time 9.2 or later |
| buffers_checkpoint bigint pg_stat_bgwriter.buffers_checkpoint |
| buffers_clean bigint pg_stat_bgwriter.buffers_clean |
| maxwritten_clean bigint pg_stat_bgwriter.maxwritten_clean |
| buffers_backend bigint pg_stat_bgwriter.buffers_backend |
| buffers_backend_fsync bigint pg_stat_bgwriter.buffers_backend_fsync 9.1 or later |
| buffers_alloc bigint pg_stat_bgwriter.buffers_alloc |
| stats_reset timestampz pg_stat_bgwriter.stats_reset 9.1 or later |
| ===================== ================ ====================================== =========== |
| |
| |
| pgperf.snapshot_pg_stat_activity Table |
| -------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_activity`` system view which contains the session information. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| datid oid pg_stat_activity.datid |
| datname name pg_stat_activity.datname |
| procpid int4 pg_stat_activity.procpid 9.1 or before |
| pid int4 pg_stat_activity.pid 9.2 or later |
| usesysid oid pg_stat_activity.usesysid |
| usename name pg_stat_activity.usename |
| application_name text pg_stat_activity.application_name 9.0 or later |
| client_addr inet pg_stat_activity.client_addr |
| client_hostname text pg_stat_activity.client_hostname 9.1 or later |
| client_port int4 pg_stat_activity.client_port |
| backend_start timestamptz pg_stat_activity.backend_start |
| xact_start timestamptz pg_stat_activity.xact_start |
| query_start timestamptz pg_stat_activity.query_start |
| state_change timestamptz pg_stat_activity.state_change 9.2 or later |
| waiting bool pg_stat_activity.waiting |
| state text pg_stat_activity.state 9.2 or later |
| current_query text pg_stat_activity.current_query 9.1 or before |
| query text pg_stat_activity.query 9.2 or later |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pg_locks Table |
| ------------------------------ |
| |
| This table stores snapshots of the ``pg_locks`` system view which contains the lock information. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| locktype text pg_locks.locktype |
| database oid pg_locks.database |
| relation oid pg_locks.relation |
| page int4 pg_locks.page |
| tuple int2 pg_locks.tuple |
| virtualxid text pg_locks.virtualxid |
| transactionid xid pg_locks.transactionid |
| classid oid pg_locks.classid |
| objid oid pg_locks.objid |
| objsubid int2 pg_locks.objsubid |
| virtualtransaction text pg_locks.virtualtransaction |
| pid int4 pg_locks.pid |
| mode text pg_locks.mode |
| granted bool pg_locks.granted |
| fastpath bool pg_locks.fastpath 9.2 or later |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pg_statistic Table |
| ---------------------------------- |
| |
| This table stores snapshots of the ``pg_statistic`` system table which contains the optimizer statistics. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| starelid oid pg_statistic.starelid |
| starelname name pg_class.relname |
| staattnum smallint pg_statistic.staattnum |
| staattname name pg_attribute.attname |
| stainherit boolean pg_statistic.stainherit 9.0 or later |
| stanullfrac real pg_statistic.stanullfrac |
| stawidth integer pg_statistic.stawidth |
| stadistinct real pg_statistic.stadistinct |
| stakind1 smallint pg_statistic.stakind1 |
| stakind2 smallint pg_statistic.stakind2 |
| stakind3 smallint pg_statistic.stakind3 |
| stakind4 smallint pg_statistic.stakind4 |
| stakind5 smallint pg_statistic.stakind5 9.2 or later |
| staop1 oid pg_statistic.staop1 |
| staop2 oid pg_statistic.staop2 |
| staop3 oid pg_statistic.staop3 |
| staop4 oid pg_statistic.staop4 |
| staop5 oid pg_statistic.staop5 9.2 or later |
| stanumbers1 real[] pg_statistic.stanumbers1 |
| stanumbers2 real[] pg_statistic.stanumbers2 |
| stanumbers3 real[] pg_statistic.stanumbers3 |
| stanumbers4 real[] pg_statistic.stanumbers4 |
| stanumbers5 real[] pg_statistic.stanumbers5 9.2 or later |
| stavalues1 text pg_statistic.stavalues1 |
| stavalues2 text pg_statistic.stavalues2 |
| stavalues3 text pg_statistic.stavalues3 |
| stavalues4 text pg_statistic.stavalues4 |
| stavalues5 text pg_statistic.stavalues5 9.2 or later |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pg_stat_statements Table |
| ---------------------------------------- |
| |
| This table stores snapshots of the ``pg_stat_statements`` view which contains the session statistics. This table is available only when the ``pg_stat_statements`` module has been installed and enabled. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| userid oid pg_stat_statements.userid |
| dbid oid pg_stat_statements.dbid |
| query text pg_stat_statements.query |
| calls bigint pg_stat_statements.calls |
| total_time double precision pg_stat_statements.total_time |
| rows bigint pg_stat_statements.rows |
| shared_blks_hit bigint pg_stat_statements.shared_blks_hit |
| shared_blks_read bigint pg_stat_statements.shared_blks_read |
| shared_blks_dirtied bigint pg_stat_statements.shared_blks_dirtied 9.2 or later |
| shared_blks_written bigint pg_stat_statements.shared_blks_written |
| local_blks_hit bigint pg_stat_statements.local_blks_hit |
| local_blks_read bigint pg_stat_statements.local_blks_read |
| local_blks_dirtied bigint pg_stat_statements.local_blks_dirtied 9.2 or later |
| local_blks_written bigint pg_stat_statements.local_blks_written |
| temp_blks_read bigint pg_stat_statements.temp_blks_read |
| temp_blks_written bigint pg_stat_statements.temp_blks_written |
| blk_read_time double precision pg_stat_statements.blk_read_time 9.2 or later |
| blk_write_time double precision pg_stat_statements.blk_write_time 9.2 or later |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pgstattuple Table |
| --------------------------------- |
| |
| This table stores snapshots of the result of the ``pgstattuple()`` function which gets the table fragmentation statistics. This table is available only when the ``pgstattuple`` module has been installed. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| schemaname name pg_stat_user_tables.schemaname |
| relname name pg_stat_user_tables.relname |
| table_len int8 pgstattuple().table_len |
| tuple_count int8 pgstattuple().tuple_count |
| tuple_len int8 pgstattuple().tuple_len |
| tuple_percent float8 pgstattuple().tuple_percent |
| dead_tuple_count int8 pgstattuple().dead_tuple_count |
| dead_tuple_len int8 pgstattuple().dead_tuple_len |
| dead_tuple_percent float8 pgstattuple().dead_tuple_percent |
| free_space int8 pgstattuple().free_space |
| free_percent float8 pgstattuple().free_percent |
| ===================== ================ ====================================== =========== |
| |
| pgperf.snapshot_pgstatindex Table |
| --------------------------------- |
| |
| This table stores snapshots of the result of the ``pgstatindex()`` function which gets the index fragmentation statistics. This table is available only when the ``pgstattuple`` module has been installed. |
| |
| ===================== ================ ====================================== =========== |
| Column Name Type Source Note |
| ===================== ================ ====================================== =========== |
| sid integer Snapshot ID |
| schemaname name pg_stat_user_indexes.schemaname |
| relname name pg_stat_user_indexes.relname |
| indexrelname name pg_stat_user_indexes.indexrelname |
| version int4 pgstatindex().version |
| tree_level int4 pgstatindex().tree_level |
| index_size int8 pgstatindex().index_size |
| root_block_no int8 pgstatindex().root_block_no |
| internal_pages int8 pgstatindex().internal_pages |
| leaf_pages int8 pgstatindex().leaf_pages |
| empty_pages int8 pgstatindex().empty_pages |
| deleted_pages int8 pgstatindex().deleted_pages |
| avg_leaf_density float8 pgstatindex().avg_leaf_density |
| leaf_fragmentation float8 pgstatindex().leaf_fragmentation |
| ===================== ================ ====================================== =========== |
| |