バージョンごとのドキュメント一覧

27.2. 累積統計システム #

<title>The Cumulative Statistics System</title>

<productname>PostgreSQL</productname>'s <firstterm>cumulative statistics system</firstterm> supports collection and reporting of information about server activity. Presently, accesses to tables and indexes in both disk-block and individual-row terms are counted. The total number of rows in each table, and information about vacuum and analyze actions for each table are also counted. If enabled, calls to user-defined functions and the total time spent in each one are counted as well. PostgreSQL累積統計システムは、サーバ活動に関する情報の収集と報告をサポートしています。 現在、コレクタはテーブルとインデックスへのアクセスをディスクブロックおよび個々の行単位で数えることができます。 またこれは、各テーブル内の総行数、および、各テーブルでのバキュームやアナライズの実施情報を数えます。 有効になっている場合は、ユーザ定義関数の呼ばれた回数、それぞれの消費した総時間を数えます。

<productname>PostgreSQL</productname> also supports reporting dynamic information about exactly what is going on in the system right now, such as the exact command currently being executed by other server processes, and which other connections exist in the system. This facility is independent of the cumulative statistics system. また、PostgreSQLは他のサーバプロセスによって現在実行されている正確なコマンドなど現在システム内で起きていること、またシステム内にどんな他の接続が存在するかということについての動的情報を正確に報告する機能を持ちます。 これは累積統計システムから独立している機能です。

27.2.1. 統計情報収集のための設定 #

<title>Statistics Collection Configuration</title>

Since collection of statistics adds some overhead to query execution, the system can be configured to collect or not collect information. This is controlled by configuration parameters that are normally set in <filename>postgresql.conf</filename>. (See <xref linkend="runtime-config"/> for details about setting configuration parameters.) 統計情報の収集によって問い合わせの実行に少しオーバーヘッドが加わりますので、システムは情報を収集するようにもしないようにも設定できます。 これは通常はpostgresql.conf内で設定される、設定パラメータによって制御されます。 (設定パラメータの設定についての詳細は第19章を参照してください。)

The parameter <xref linkend="guc-track-activities"/> enables monitoring of the current command being executed by any server process. track_activitiesパラメータは、任意のサーバプロセスで現在実行されているコマンドを監視するかどうかを指定できます。

The parameter <xref linkend="guc-track-counts"/> controls whether cumulative statistics are collected about table and index accesses. track_countsパラメータは、テーブルおよびインデックスアクセスに関する累積統計を収集するかどうかを制御します。

The parameter <xref linkend="guc-track-functions"/> enables tracking of usage of user-defined functions. track_functionsパラメータは、ユーザ定義関数の使用状況を追跡するかどうかを指定できます。

The parameter <xref linkend="guc-track-io-timing"/> enables monitoring of block read, write, extend, and fsync times. track_io_timingパラメータは、ブロック読み取り、書き込み、拡張およびfsync時間を監視するかどうかを指定できます。

The parameter <xref linkend="guc-track-wal-io-timing"/> enables monitoring of WAL write and fsync times. track_wal_io_timingパラメータは、WALの書き込みおよびfsync時間を監視するかどうかを指定できます。

Normally these parameters are set in <filename>postgresql.conf</filename> so that they apply to all server processes, but it is possible to turn them on or off in individual sessions using the <xref linkend="sql-set"/> command. (To prevent ordinary users from hiding their activity from the administrator, only superusers are allowed to change these parameters with <command>SET</command>.) 通常、これらの変数は全てのサーバプロセスに適用できるようにpostgresql.conf内で設定されます。 しかし、SETコマンドを使用して、個別のセッションで有効または無効にできます。 (一般ユーザがその活動を管理者から隠すことを防止するために、スーパーユーザのみがSETを使用してこれらのパラメータを変更できます。)

Cumulative statistics are collected in shared memory. Every <productname>PostgreSQL</productname> process collects statistics locally, then updates the shared data at appropriate intervals. When a server, including a physical replica, shuts down cleanly, a permanent copy of the statistics data is stored in the <filename>pg_stat</filename> subdirectory, so that statistics can be retained across server restarts. In contrast, when starting from an unclean shutdown (e.g., after an immediate shutdown, a server crash, starting from a base backup, and point-in-time recovery), all statistics counters are reset. 累積統計情報は共有メモリに収集されます。 すべてのPostgreSQLプロセスがローカルで統計情報を収集し、適切な間隔で共有データを更新します。 物理レプリカを含むサーバがクリーンにシャットダウンすると、統計データの永続的なコピーがpg_statサブディレクトリに保存されます。 これにより、サーバの再起動後も統計情報を保持できます。 対照的に、クリーンでないシャットダウンから開始する場合(即時シャットダウン後、サーバクラッシュ、ベースバックアップから開始、ポイントインタイムリカバリなど)、すべての統計カウンタがリセットされます。

27.2.2. 統計情報の表示 #

<title>Viewing Statistics</title>

Several predefined views, listed in <xref linkend="monitoring-stats-dynamic-views-table"/>, are available to show the current state of the system. There are also several other views, listed in <xref linkend="monitoring-stats-views-table"/>, available to show the accumulated statistics. Alternatively, one can build custom views using the underlying cumulative statistics functions, as discussed in <xref linkend="monitoring-stats-functions"/>. システムの現在の状態を表示するために、いくつかの定義済みのビューがあり、表 27.1に一覧されています。 また、累積統計の収集結果を表示するために、他にもいくつかのビューがあり、表 27.2に一覧されています。 あるいはまた、27.2.26で説明する、基礎的な累積統計関数を使用した独自のビューを構築することもできます。

When using the cumulative statistics views and functions to monitor collected data, it is important to realize that the information does not update instantaneously. Each individual server process flushes out accumulated statistics to shared memory just before going idle, but not more frequently than once per <varname>PGSTAT_MIN_INTERVAL</varname> milliseconds (1 second unless altered while building the server); so a query or transaction still in progress does not affect the displayed totals and the displayed information lags behind actual activity. However, current-query information collected by <varname>track_activities</varname> is always up-to-date. 収集したデータを監視するために累積統計ビューや関数を使用する場合、この情報は即座に更新されないことを認識することが重要です。 個々のサーバプロセスは、待機状態になる直前に、累積統計を共有メモリにフラッシュしますが、PGSTAT_MIN_INTERVALミリ秒に1回以上の頻度でフラッシュすることはありません(サーバ構築時に変更しない限り1秒)。 したがって、まだ処理中の問い合わせやトランザクションは表示される合計に影響を与えず、表示される情報は実際のアクティビティより遅くなります。 しかし、track_activitiesで収集される現在の問い合わせの情報は常に最新です。

Another important point is that when a server process is asked to display any of the accumulated statistics, accessed values are cached until the end of its current transaction in the default configuration. So the statistics will show static information as long as you continue the current transaction. Similarly, information about the current queries of all sessions is collected when any such information is first requested within a transaction, and the same information will be displayed throughout the transaction. This is a feature, not a bug, because it allows you to perform several queries on the statistics and correlate the results without worrying that the numbers are changing underneath you. もう1つの重要なポイントは、サーバプロセスが累積された統計のいずれかを表示するように要求された場合、アクセスされた値はデフォルト構成で現在のトランザクションが終了するまでキャッシュされることです。 したがって、現在のトランザクションを続行しているかぎり、統計には静的な情報が表示されます。 同様に、すべてのセッションの現在の問合せに関する情報は、その情報がトランザクション内で最初に要求されたときに収集され、同じ情報がトランザクション全体にわたって表示されます。 これはバグではなく特徴です。 これにより、統計に対して複数の問合せを実行し、結果を相互に関連付ける際に、ユーザの下で数値が変化することを心配する必要がないためです。 When analyzing statistics interactively, or with expensive queries, the time delta between accesses to individual statistics can lead to significant skew in the cached statistics. To minimize skew, <varname>stats_fetch_consistency</varname> can be set to <literal>snapshot</literal>, at the price of increased memory usage for caching not-needed statistics data. Conversely, if it's known that statistics are only accessed once, caching accessed statistics is unnecessary and can be avoided by setting <varname>stats_fetch_consistency</varname> to <literal>none</literal>. 統計情報を対話的に分析する場合、または高価な問い合わせを使用する場合、個々の統計へのアクセス間の時間差によって、キャッシュされた統計に大幅な歪みが発生する可能性があります。 歪みを最小化するには、stats_fetch_consistencysnapshotに設定します。 ただし、不要な統計データをキャッシュするためのメモリ使用量が増加します。逆に、統計が一度しかアクセスされないことがわかっている場合は、アクセスされた統計のキャッシュは不要であり、stats_fetch_consistencynoneに設定することで回避できます。 You can invoke <function>pg_stat_clear_snapshot()</function> to discard the current transaction's statistics snapshot or cached values (if any). The next use of statistical information will (when in snapshot mode) cause a new snapshot to be built or (when in cache mode) accessed statistics to be cached. 《マッチ度[93.421053]》pg_stat_clear_snapshot()を呼び出して、現在のトランザクションの統計スナップショットまたはキャッシュされた値(もしあれば)を破棄することができます。 次に統計情報を使用すると(スナップショットモードの場合)新しいスナップショットが作成され、(キャッシュモードの場合)アクセスされた統計がキャッシュされます。

A transaction can also see its own statistics (not yet flushed out to the shared memory statistics) in the views <structname>pg_stat_xact_all_tables</structname>, <structname>pg_stat_xact_sys_tables</structname>, <structname>pg_stat_xact_user_tables</structname>, and <structname>pg_stat_xact_user_functions</structname>. These numbers do not act as stated above; instead they update continuously throughout the transaction. トランザクションはまた、ビューのpg_stat_xact_all_tablespg_stat_xact_sys_tablespg_stat_xact_user_tables、およびpg_stat_xact_user_functionsを通じて、自身の統計情報(まだ共有メモリの統計情報にフラッシュされていない)も参照することができます。 これらの数値はトランザクション中に継続的に更新されていくため上記の様な(静的な情報を示す)振る舞いとはなりません。

Some of the information in the dynamic statistics views shown in <xref linkend="monitoring-stats-dynamic-views-table"/> is security restricted. Ordinary users can only see all the information about their own sessions (sessions belonging to a role that they are a member of). In rows about other sessions, many columns will be null. Note, however, that the existence of a session and its general properties such as its sessions user and database are visible to all users. Superusers and roles with privileges of built-in role <literal>pg_read_all_stats</literal> (see also <xref linkend="predefined-roles"/>) can see all the information about all sessions. 表 27.1で表示される動的な統計ビューの情報の中にはセキュリティ制限があるものがあります。 一般ユーザは自身のセッション(メンバとなっているロールに属するセッション)に関する全情報だけを参照できます。 他セッションに関する行では多くの列がNULLになるでしょう。 しかしながら、セッションの存在とセッションのユーザとデータベースなどの一般的な属性は全ユーザに可視であることに注意してください。 スーパーユーザと組み込みロールpg_read_all_statsの権限を持つロール(21.5も参照してください)は全セッションに関する全情報を参照できます。

表27.1 動的統計情報ビュー

<title>Dynamic Statistics Views</title>
ビュー名説明
pg_stat_activity One row per server process, showing information related to the current activity of that process, such as state and current query. See <link linkend="monitoring-pg-stat-activity-view"> <structname>pg_stat_activity</structname></link> for details. サーバプロセスあたり1行の形式で、状態や現在の問い合わせ等のプロセスの現在の活動状況に関連した情報を表示します。 詳細についてはpg_stat_activityを参照してください。
pg_stat_replication WAL送信プロセス毎に1行の形式で、送信サーバが接続したスタンバイサーバへのレプリケーションに関する統計情報を表示します。 詳細についてはpg_stat_replicationを参照してください。
pg_stat_wal_receiver 1行の形式で、受信サーバが接続したサーバからWAL受信サーバに関する統計情報を表示します。 詳細についてはpg_stat_wal_receiverを参照してください。
pg_stat_recovery_prefetch 1行の形式で、リカバリ中にプリフェッチされたブロックに関する統計情報を表示します。 詳細についてはpg_stat_recovery_prefetch を参照してください。
pg_stat_subscription 1つのサブスクリプションにつき少なくとも1行の形式で、サブスクリプションワーカーに関する情報を表示します。 詳細についてはpg_stat_subscriptionを参照してください。
pg_stat_ssl 接続(通常およびレプリケーション)あたり1行の形式で、接続に使われるSSLの情報を表示します。 詳細についてはpg_stat_sslを参照してください。
pg_stat_gssapi 接続(通常およびレプリケーション)あたり1行の形式で、接続に使われるGSSAPI認証と暗号化に関する情報を表示します。 詳細についてはpg_stat_gssapiを参照してください。
pg_stat_progress_analyze ANALYZEを実行している各バックエンド(自動バキュームワーカープロセスを含む)ごとに1行の形式で、現在の進捗を表示します。 27.4.1を参照してください。
pg_stat_progress_create_index CREATE INDEXまたはREINDEXを実行している各バックエンドごとに1行の形式で、現在の進捗を表示します。 27.4.4を参照してください。
pg_stat_progress_vacuum VACUUMを実行している各バックエンド(自動バキュームワーカープロセスを含む)ごとに1行の形式で、現在の進捗を表示します。 27.4.5を参照してください。
pg_stat_progress_cluster CLUSTERまたはVACUUM FULLを実行している各バックエンドごとに1行の形式で、現在の進捗を表示します。 27.4.2を参照してください。
pg_stat_progress_basebackup ベースバックアップをストリームしている各WAL送信プロセスごとに1行の形式で、現在の進捗を表示します。 27.4.6を参照してください。
pg_stat_progress_copy COPYを実行している各バックエンドごとに1行の形式で、現在の進捗を表示します。 27.4.3を参照してください。

表27.2 収集済み統計情報ビュー

<title>Collected Statistics Views</title>
ビュー名説明
pg_stat_archiver WALアーカイバプロセスの活動状況に関する統計情報を1行のみで表示します。 詳細についてはpg_stat_archiverを参照してください。
pg_stat_bgwriter バックグラウンドライタプロセスの活動状況に関する統計情報を1行のみで表示します。 詳細についてはpg_stat_bgwriterを参照してください。
pg_stat_checkpointer 《マッチ度[74.271845]》 WALアーカイバプロセスの活動状況に関する統計情報を1行のみで表示します。 詳細についてはpg_stat_archiverを参照してください。 《機械翻訳》1つの行のみ。 チェックポインタ統計処理の活動についてプロセスを表示します。 詳細はpg_stat_checkpointerを参照してください。
pg_stat_database データベース毎に1行の形式で、データベース全体の統計情報を表示します。 詳細についてはpg_stat_databaseを参照してください。
pg_stat_database_conflicts One row per database, showing database-wide statistics about query cancels due to conflict with recovery on standby servers. See <link linkend="monitoring-pg-stat-database-conflicts-view"> <structname>pg_stat_database_conflicts</structname></link> for details. データベース毎に1行の形式で、スタンバイサーバにおける復旧との競合のためにキャンセルされた問い合わせについてのデータベース全体の統計情報を表示します。 詳細についてはpg_stat_database_conflictsを参照してください。
pg_stat_io One row for each combination of backend type, context, and target object containing cluster-wide I/O statistics. See <link linkend="monitoring-pg-stat-io-view"> <structname>pg_stat_io</structname></link> for details. バックエンドタイプ、コンテキスト、ターゲットのオブジェクトの組み合わせごとに1行で、クラスタ全体のI/O統計情報を含みます。 詳細についてはpg_stat_ioを参照してください。
pg_stat_replication_slots レプリケーションスロットごとに1行の形式で、レプリケーションスロットの使用状況に関する統計情報を表示します。 詳細については pg_stat_replication_slotsを参照してください。
pg_stat_slru SLRUごとに1行の形で、操作に関する統計情報を示します。 詳細についてはpg_stat_slruを参照してください。
pg_stat_subscription_stats サブスクリプションごとに1行の形式で、エラーに関する統計を表示します。 詳細についてはpg_stat_subscription_statsを参照してください。
pg_stat_wal WALの活動状況に関する統計情報を1行のみで表示します。 詳細についてはpg_stat_walを参照してください。
pg_stat_all_tables One row for each table in the current database, showing statistics about accesses to that specific table. See <link linkend="monitoring-pg-stat-all-tables-view"> <structname>pg_stat_all_tables</structname></link> for details. 現在のデータベースの各テーブルごとに1行の形式で、特定のテーブルへのアクセスに関する統計情報を示します。 詳細についてはpg_stat_all_tablesを参照してください。
pg_stat_sys_tables システムテーブルのみが表示される点を除き、pg_stat_all_tablesと同じです。
pg_stat_user_tables ユーザテーブルのみが表示される点を除き、pg_stat_all_tablesと同じです。
pg_stat_xact_all_tables pg_stat_all_tablesと似ていますが、現在のトランザクションにて実施された処理結果をカウントします。(数値が見える時点では、これらの数値はpg_stat_all_tablesと関連するビューに含まれていません。) このビューでは、有効な行数、無効な行数、およびバキュームやアナライズの活動は表示しません。
pg_stat_xact_sys_tables システムテーブルのみが表示される点を除き、pg_stat_xact_all_tablesと同じです。
pg_stat_xact_user_tables ユーザテーブルのみが表示される点を除き、pg_stat_xact_all_tablesと同じです。
pg_stat_all_indexes One row for each index in the current database, showing statistics about accesses to that specific index. See <link linkend="monitoring-pg-stat-all-indexes-view"> <structname>pg_stat_all_indexes</structname></link> for details. 現在のデータベースのインデックスごとに1行の形式で、特定のインデックスへのアクセスに関する統計情報を示します。 詳細についてはpg_stat_all_indexesを参照してください。
pg_stat_sys_indexes システムテーブルのインデックスのみが表示される点を除き、pg_stat_all_indexesと同じです。
pg_stat_user_indexes ユーザテーブルのインデックスのみが表示される点を除き、pg_stat_all_indexesと同じです。
pg_stat_user_functions One row for each tracked function, showing statistics about executions of that function. See <link linkend="monitoring-pg-stat-user-functions-view"> <structname>pg_stat_user_functions</structname></link> for details. 追跡された関数ごとに1行の形式で、関数の実行に関する統計情報を表示します。 詳細についてはpg_stat_user_functionsを参照してください。
pg_stat_xact_user_functions pg_stat_user_functionsと似ていますが、現在のトランザクション中に呼び出されたものだけをカウントします。 (数値が見える時点では、これらの数値はpg_stat_user_functionsに含まれていません。)
pg_statio_all_tables One row for each table in the current database, showing statistics about I/O on that specific table. See <link linkend="monitoring-pg-statio-all-tables-view"> <structname>pg_statio_all_tables</structname></link> for details. 現在のデータベース内のテーブルごとに1行の形式で、特定のテーブルに対するI/Oに関する統計情報を示します。 詳細についてはpg_statio_all_tablesを参照してください。
pg_statio_sys_tables システムテーブルのみが表示される点を除き、pg_statio_all_tablesと同じです。
pg_statio_user_tables ユーザテーブルのみが表示される点を除き、pg_statio_all_tablesと同じです。
pg_statio_all_indexes One row for each index in the current database, showing statistics about I/O on that specific index. See <link linkend="monitoring-pg-statio-all-indexes-view"> <structname>pg_statio_all_indexes</structname></link> for details. 現在のデータベース内のインデックスごとに1行の形式で、特定のインデックスに対するI/Oに関する統計情報を表示します。 詳細についてはpg_statio_all_indexesを参照してください。
pg_statio_sys_indexes システムテーブルのインデックスのみが表示される点を除き、pg_statio_all_indexes と同じです。
pg_statio_user_indexes ユーザテーブルのインデックスのみが表示される点を除き、pg_statio_all_indexesと同じです。
pg_statio_all_sequences One row for each sequence in the current database, showing statistics about I/O on that specific sequence. See <link linkend="monitoring-pg-statio-all-sequences-view"> <structname>pg_statio_all_sequences</structname></link> for details. 現在のデータベース内のシーケンスごとに1行の形式で、特定のシーケンスに対するI/Oに関する統計情報を表示します。 詳細についてはpg_statio_all_sequencesを参照してください。
pg_statio_sys_sequences システムシーケンスのみが表示される点を除き、pg_statio_all_sequencesと同じです (現時点では、システムシーケンスは定義されていませんので、このビューは常に空です)。
pg_statio_user_sequences ユーザシーケンスのみが表示される点を除き、pg_statio_all_sequencesと同じです。

The per-index statistics are particularly useful to determine which indexes are being used and how effective they are. インデックス単位の統計情報は、どのインデックスが使用され、どの程度効果があるのかを評価する際に、特に有用です。

The <structname>pg_stat_io</structname> and <structname>pg_statio_</structname> set of views are useful for determining the effectiveness of the buffer cache. They can be used to calculate a cache hit ratio. Note that while <productname>PostgreSQL</productname>'s I/O statistics capture most instances in which the kernel was invoked in order to perform I/O, they do not differentiate between data which had to be fetched from disk and that which already resided in the kernel page cache. Users are advised to use the <productname>PostgreSQL</productname> statistics views in combination with operating system utilities for a more complete picture of their database's I/O performance. pg_stat_iopg_statio_ビューの組み合わせは、バッファキャッシュの有効性を判断するのに役立ちます。 これらはキャッシュヒット率を計算するのに使用できます。 PostgreSQLのI/O統計は、I/Oを実行するためにカーネルが呼び出されたほとんどのインスタンスを取得しますが、ディスクから取得しなければならなかったデータと、カーネルページキャッシュにすでに存在していたデータとを区別しません。 ユーザは、データベースのI/Oパフォーマンスのより完全な全体像を得るために、PostgreSQLの統計ビューをオペレーティングシステムのユーティリティと組み合わせて使用することをお勧めします。

27.2.3. pg_stat_activity #

The <structname>pg_stat_activity</structname> view will have one row per server process, showing information related to the current activity of that process. pg_stat_activityはサーバプロセス毎に、そのプロセスの現在の活動に関連する情報を表示する1行を持ちます。

表27.3 pg_stat_activityビュー

<title><structname>pg_stat_activity</structname> View</title>

Column Type 列 型

Description 説明

datid oid

OID of the database this backend is connected to バックエンドが接続するデータベースのOIDです。

datname name

Name of the database this backend is connected to バックエンドが接続するデータベースの名前です。

pid integer

Process ID of this backend バックエンドのプロセスIDです。

leader_pid integer

Process ID of the parallel group leader if this process is a parallel query worker, or process ID of the leader apply worker if this process is a parallel apply worker. <literal>NULL</literal> indicates that this process is a parallel group leader or leader apply worker, or does not participate in any parallel operation. このプロセスがパラレルクエリワーカーであればパラレルグループリーダーのプロセスIDです。 あるいは、このプロセスがパラレル適用ワーカーであればリーダー適用ワーカーのプロセスIDです。 NULLは、このプロセスがパラレルグループリーダーまたはリーダー適用ワーカーであること、またはこのプロセスがパラレル処理に参加していないことを示します。

usesysid oid

OID of the user logged into this backend バックエンドにログインしたユーザのOIDです。

usename name

Name of the user logged into this backend バックエンドにログインしたユーザの名前です。

application_name text

Name of the application that is connected to this backend バックエンドに接続したアプリケーションの名前です。

client_addr inet

IP address of the client connected to this backend. If this field is null, it indicates either that the client is connected via a Unix socket on the server machine or that this is an internal process such as autovacuum. バックエンドに接続したクライアントのIPアドレスです。 このフィールドがNULLである場合、これはクライアントがサーバマシン上のUnixソケット経由で接続されたか、自動バキュームなど内部プロセスであることを示しています。

client_hostname text

Host name of the connected client, as reported by a reverse DNS lookup of <structfield>client_addr</structfield>. This field will only be non-null for IP connections, and only when <xref linkend="guc-log-hostname"/> is enabled. client_addrのDNS逆引き検索により報告された、接続クライアントのホスト名です。 IP接続、かつlog_hostnameが有効である場合にのみこのフィールドは非NULLになります。

client_port integer

TCP port number that the client is using for communication with this backend, or <literal>-1</literal> if a Unix socket is used. If this field is null, it indicates that this is an internal server process. クライアントがバックエンドとの通信に使用するTCPポート番号、もしくはUnixソケットを使用する場合は-1です。 このフィールドがNULLであれば、内部のサーバプロセスであることを示しています。

backend_start timestamp with time zone

Time when this process was started. For client backends, this is the time the client connected to the server. プロセスが開始した時刻です。 クライアントのバックエンドについては、クライアントがサーバに接続した時刻です。

xact_start timestamp with time zone

Time when this process' current transaction was started, or null if no transaction is active. If the current query is the first of its transaction, this column is equal to the <structfield>query_start</structfield> column. プロセスの現在のトランザクションが開始した時刻です。活動中のトランザクションがない場合はNULLです。 現在の問い合わせがトランザクションの先頭である場合、この列はquery_start列と同じです。

query_start timestamp with time zone

Time when the currently active query was started, or if <structfield>state</structfield> is not <literal>active</literal>, when the last query was started 現在活動中の問い合わせが開始した時刻です。もしstateactiveでない場合は直前の問い合わせが開始した時刻です。

state_change timestamp with time zone

Time when the <structfield>state</structfield> was last changed stateの最終変更時刻です。

wait_event_type text

The type of event for which the backend is waiting, if any; otherwise NULL. See <xref linkend="wait-event-table"/>. バックエンドが待機しているイベントがあれば、その型、なければNULLとなります。 表 27.4を参照してください。

wait_event text

Wait event name if backend is currently waiting, otherwise NULL. See <xref linkend="wait-event-activity-table"/> through <xref linkend="wait-event-timeout-table"/>. バックエンドが現在待機している場合は待機イベント名、そうでなければNULLとなります。 表 27.5から表 27.13までを参照してください。

state text

Current overall state of this backend. Possible values are: 現在のバックエンドの総体的な状態です。 以下のいずれかの値を取ることができます。

  • <literal>active</literal>: The backend is executing a query. active: バックエンドは問い合わせを実行中です。

  • <literal>idle</literal>: The backend is waiting for a new client command. idle: バックエンドは新しいクライアントからのコマンドを待機しています。

  • <literal>idle in transaction</literal>: The backend is in a transaction, but is not currently executing a query. idle in transaction: バックエンドはトランザクションの内部にいますが、現在実行中の問い合わせがありません。

  • <literal>idle in transaction (aborted)</literal>: This state is similar to <literal>idle in transaction</literal>, except one of the statements in the transaction caused an error. idle in transaction (aborted): この状態はidle in transactionと似ていますが、トランザクション内のある文がエラーになっている点が異なります。

  • <literal>fastpath function call</literal>: The backend is executing a fast-path function. fastpath function call: バックエンドは近道関数を実行中です。

  • <literal>disabled</literal>: This state is reported if <xref linkend="guc-track-activities"/> is disabled in this backend. disabled: この状態は、このバックエンドでtrack_activitiesが無効である場合に報告されます。

backend_xid xid

Top-level transaction identifier of this backend, if any; see <xref linkend="transaction-id"/>. もしあれば、このバックエンドの最上位のトランザクション識別子です。 66.1を参照してください。

backend_xmin xid

The current backend's <literal>xmin</literal> horizon. 現在のバックエンドのxminです。

query_id bigint

Identifier of this backend's most recent query. If <structfield>state</structfield> is <literal>active</literal> this field shows the identifier of the currently executing query. In all other states, it shows the identifier of last query that was executed. Query identifiers are not computed by default so this field will be null unless <xref linkend="guc-compute-query-id"/> parameter is enabled or a third-party module that computes query identifiers is configured. バックエンドの直近の問い合わせ識別子です。 stateactiveの場合、このフィールドには現在実行中の問い合わせ識別子が表示されます。 他のすべての状態では、最後に実行された問い合わせ識別子が表示されます。 問い合わせ識別子はデフォルトでは計算されないため、compute_query_idパラメータが有効になっているか、問い合わせ識別子を計算するサードパーティモジュールが設定されていない限り、このフィールドはnullになります。

query text

Text of this backend's most recent query. If <structfield>state</structfield> is <literal>active</literal> this field shows the currently executing query. In all other states, it shows the last query that was executed. By default the query text is truncated at 1024 bytes; this value can be changed via the parameter <xref linkend="guc-track-activity-query-size"/>. バックエンドの最も最近の問い合わせテキストです。 stateactiveの場合、このフィールドは現在実行中の問い合わせを示します。 その他のすべての状態では、実行済みの最後の問い合わせを示します。 デフォルトでは問い合わせのテキストは1024バイトで切り詰められますが、この値はパラメータtrack_activity_query_sizeにより変更できます。

backend_type text

Type of current backend. Possible types are <literal>autovacuum launcher</literal>, <literal>autovacuum worker</literal>, <literal>logical replication launcher</literal>, <literal>logical replication worker</literal>, <literal>parallel worker</literal>, <literal>background writer</literal>, <literal>client backend</literal>, <literal>checkpointer</literal>, <literal>archiver</literal>, <literal>standalone backend</literal>, <literal>startup</literal>, <literal>walreceiver</literal>, <literal>walsender</literal>, <literal>walwriter</literal> and <literal>walsummarizer</literal>. In addition, background workers registered by extensions may have additional types. 《機械翻訳》現在のバックエンドのタイプ。 可能な型は、autovacuum launcherautovacuum workerlogical replication launcherlogical replication workerparallel workerbackground writerclient backendcheckpointerarchiverstandalone backendstartupwalreceiverwalsenderwalwriterwalsummarizerである。 さらに、拡張によって登録されたバックグラウンド・ワーカーは、追加のタイプを持つことができます。


注記

The <structfield>wait_event</structfield> and <structfield>state</structfield> columns are independent. If a backend is in the <literal>active</literal> state, it may or may not be <literal>waiting</literal> on some event. If the state is <literal>active</literal> and <structfield>wait_event</structfield> is non-null, it means that a query is being executed, but is being blocked somewhere in the system. wait_eventstate列は独立しています。 バックエンドがactive状態である場合、いくつかのイベントではwaitingかもしれませんし、そうでないかもしれません。 状態がactiveであり、wait_eventがNULLでない場合、問い合わせは実行中ですが、システム内のどこかでブロックされていることを意味します。

表27.4 待機イベント型

<title>Wait Event Types</title>
待機イベント型説明
Activity サーバプロセスはアイドル状態です。 このイベント型はプロセスがメインの処理ループ内で活動を待機していることを示します。 wait_eventによりその待機点が特定できます。 表 27.5を参照してください。
BufferPin サーバプロセスは、データバッファに排他的アクセスをするために待機しています。 バッファピン待機は、他のプロセスが該当のバッファから最後に読み込んだデータのオープンカーソルを保持している場合に長引かされることがあります。 表 27.6を参照してください。
Client サーバプロセスはユーザアプリケーションに接続しているソケット上での活動を待機しています。 それゆえ、サーバはその内部プロセスとは無関係の何かが起きることを期待しています。 wait_eventによりその待機点が特定できます。表 27.7を参照してください。
Extension サーバプロセスは拡張モジュールにより定義された条件を待機しています。 表 27.8を参照してください。
InjectionPoint 《機械翻訳》サーバプロセスは、インジェクションポイントがテストで定義された結果に達するのを待機しています。 詳細は、36.10.13を参照してください。 このタイプには事前定義された待機ポイントはありません。
IO サーバプロセスは入出力が完了するのを待機しています。 wait_eventによりその待機点が特定できます。表 27.9を参照してください。
IPC サーバプロセスは、他のサーバプロセスとの相互作用を待機しています。 wait_eventによりその待機点が特定できます。表 27.10を参照してください。
Lock サーバプロセスは重量ロックを待機しています。 ロックマネージャロックや単にロックとしても知られている重量ロックは、主にテーブルのようなSQLで可視なオブジェクトを保護します。 しかし、それらはリレーション拡張のような、なんらかの内部操作のために相互排他を確実にするためにも使用されます。 wait_eventは、待たせているロックの型を識別します。 表 27.11を参照してください。
LWLock サーバプロセスは軽量ロックを待機しています。 ほとんどのこのようなロックは、共有メモリ内の特定のデータ構造を保護します。 wait_eventには軽量ロックの目的を特定する名前が入ります。 (特定の名前がついたロックもあれば、似たような目的のロックのグループの一部となっているものもあります。) 表 27.12を参照してください。
Timeout サーバプロセスはタイムアウトが満了するのを待機しています。 wait_eventによりその待機点が特定できます。表 27.13を参照してください。

表27.5 Wait Events of Type Activity

Activity Wait EventDescription
ArchiverMainWaiting in main loop of archiver process.
AutovacuumMainWaiting in main loop of autovacuum launcher process.
BgwriterHibernateWaiting in background writer process, hibernating.
BgwriterMainWaiting in main loop of background writer process.
CheckpointerMainWaiting in main loop of checkpointer process.
LogicalApplyMainWaiting in main loop of logical replication apply process.
LogicalLauncherMainWaiting in main loop of logical replication launcher process.
LogicalParallelApplyMainWaiting in main loop of logical replication parallel apply process.
RecoveryWalStreamWaiting in main loop of startup process for WAL to arrive, during streaming recovery.
ReplicationSlotsyncMainWaiting in main loop of slot sync worker.
ReplicationSlotsyncShutdownWaiting for slot sync worker to shut down.
SysloggerMainWaiting in main loop of syslogger process.
WalReceiverMainWaiting in main loop of WAL receiver process.
WalSenderMainWaiting in main loop of WAL sender process.
WalSummarizerWalWaiting in WAL summarizer for more WAL to be generated.
WalWriterMainWaiting in main loop of WAL writer process.

表27.6 Wait Events of Type Bufferpin

BufferPin Wait EventDescription
BufferPinWaiting to acquire an exclusive pin on a buffer.

表27.7 Wait Events of Type Client

Client Wait EventDescription
ClientReadWaiting to read data from the client.
ClientWriteWaiting to write data to the client.
GssOpenServerWaiting to read data from the client while establishing a GSSAPI session.
LibpqwalreceiverConnectWaiting in WAL receiver to establish connection to remote server.
LibpqwalreceiverReceiveWaiting in WAL receiver to receive data from remote server.
SslOpenServerWaiting for SSL while attempting connection.
WaitForStandbyConfirmationWaiting for WAL to be received and flushed by the physical standby.
WalSenderWaitForWalWaiting for WAL to be flushed in WAL sender process.
WalSenderWriteDataWaiting for any activity when processing replies from WAL receiver in WAL sender process.

表27.8 Wait Events of Type Extension

Extension Wait EventDescription
ExtensionWaiting in an extension.

表27.9 Wait Events of Type Io

IO Wait EventDescription
BasebackupReadWaiting for base backup to read from a file.
BasebackupSyncWaiting for data written by a base backup to reach durable storage.
BasebackupWriteWaiting for base backup to write to a file.
BuffileReadWaiting for a read from a buffered file.
BuffileTruncateWaiting for a buffered file to be truncated.
BuffileWriteWaiting for a write to a buffered file.
ControlFileReadWaiting for a read from the pg_control file.
ControlFileSyncWaiting for the pg_control file to reach durable storage.
ControlFileSyncUpdateWaiting for an update to the pg_control file to reach durable storage.
ControlFileWriteWaiting for a write to the pg_control file.
ControlFileWriteUpdateWaiting for a write to update the pg_control file.
CopyFileReadWaiting for a read during a file copy operation.
CopyFileWriteWaiting for a write during a file copy operation.
DataFileExtendWaiting for a relation data file to be extended.
DataFileFlushWaiting for a relation data file to reach durable storage.
DataFileImmediateSyncWaiting for an immediate synchronization of a relation data file to durable storage.
DataFilePrefetchWaiting for an asynchronous prefetch from a relation data file.
DataFileReadWaiting for a read from a relation data file.
DataFileSyncWaiting for changes to a relation data file to reach durable storage.
DataFileTruncateWaiting for a relation data file to be truncated.
DataFileWriteWaiting for a write to a relation data file.
DsmAllocateWaiting for a dynamic shared memory segment to be allocated.
DsmFillZeroWriteWaiting to fill a dynamic shared memory backing file with zeroes.
LockFileAddtodatadirReadWaiting for a read while adding a line to the data directory lock file.
LockFileAddtodatadirSyncWaiting for data to reach durable storage while adding a line to the data directory lock file.
LockFileAddtodatadirWriteWaiting for a write while adding a line to the data directory lock file.
LockFileCreateReadWaiting to read while creating the data directory lock file.
LockFileCreateSyncWaiting for data to reach durable storage while creating the data directory lock file.
LockFileCreateWriteWaiting for a write while creating the data directory lock file.
LockFileRecheckdatadirReadWaiting for a read during recheck of the data directory lock file.
LogicalRewriteCheckpointSyncWaiting for logical rewrite mappings to reach durable storage during a checkpoint.
LogicalRewriteMappingSyncWaiting for mapping data to reach durable storage during a logical rewrite.
LogicalRewriteMappingWriteWaiting for a write of mapping data during a logical rewrite.
LogicalRewriteSyncWaiting for logical rewrite mappings to reach durable storage.
LogicalRewriteTruncateWaiting for truncate of mapping data during a logical rewrite.
LogicalRewriteWriteWaiting for a write of logical rewrite mappings.
RelationMapReadWaiting for a read of the relation map file.
RelationMapReplaceWaiting for durable replacement of a relation map file.
RelationMapWriteWaiting for a write to the relation map file.
ReorderBufferReadWaiting for a read during reorder buffer management.
ReorderBufferWriteWaiting for a write during reorder buffer management.
ReorderLogicalMappingReadWaiting for a read of a logical mapping during reorder buffer management.
ReplicationSlotReadWaiting for a read from a replication slot control file.
ReplicationSlotRestoreSyncWaiting for a replication slot control file to reach durable storage while restoring it to memory.
ReplicationSlotSyncWaiting for a replication slot control file to reach durable storage.
ReplicationSlotWriteWaiting for a write to a replication slot control file.
SlruFlushSyncWaiting for SLRU data to reach durable storage during a checkpoint or database shutdown.
SlruReadWaiting for a read of an SLRU page.
SlruSyncWaiting for SLRU data to reach durable storage following a page write.
SlruWriteWaiting for a write of an SLRU page.
SnapbuildReadWaiting for a read of a serialized historical catalog snapshot.
SnapbuildSyncWaiting for a serialized historical catalog snapshot to reach durable storage.
SnapbuildWriteWaiting for a write of a serialized historical catalog snapshot.
TimelineHistoryFileSyncWaiting for a timeline history file received via streaming replication to reach durable storage.
TimelineHistoryFileWriteWaiting for a write of a timeline history file received via streaming replication.
TimelineHistoryReadWaiting for a read of a timeline history file.
TimelineHistorySyncWaiting for a newly created timeline history file to reach durable storage.
TimelineHistoryWriteWaiting for a write of a newly created timeline history file.
TwophaseFileReadWaiting for a read of a two phase state file.
TwophaseFileSyncWaiting for a two phase state file to reach durable storage.
TwophaseFileWriteWaiting for a write of a two phase state file.
VersionFileSyncWaiting for the version file to reach durable storage while creating a database.
VersionFileWriteWaiting for the version file to be written while creating a database.
WalsenderTimelineHistoryReadWaiting for a read from a timeline history file during a walsender timeline command.
WalBootstrapSyncWaiting for WAL to reach durable storage during bootstrapping.
WalBootstrapWriteWaiting for a write of a WAL page during bootstrapping.
WalCopyReadWaiting for a read when creating a new WAL segment by copying an existing one.
WalCopySyncWaiting for a new WAL segment created by copying an existing one to reach durable storage.
WalCopyWriteWaiting for a write when creating a new WAL segment by copying an existing one.
WalInitSyncWaiting for a newly initialized WAL file to reach durable storage.
WalInitWriteWaiting for a write while initializing a new WAL file.
WalReadWaiting for a read from a WAL file.
WalSummaryReadWaiting for a read from a WAL summary file.
WalSummaryWriteWaiting for a write to a WAL summary file.
WalSyncWaiting for a WAL file to reach durable storage.
WalSyncMethodAssignWaiting for data to reach durable storage while assigning a new WAL sync method.
WalWriteWaiting for a write to a WAL file.

表27.10 Wait Events of Type Ipc

IPC Wait EventDescription
AppendReadyWaiting for subplan nodes of an Append plan node to be ready.
ArchiveCleanupCommandWaiting for archive_cleanup_command to complete.
ArchiveCommandWaiting for archive_command to complete.
BackendTerminationWaiting for the termination of another backend.
BackupWaitWalArchiveWaiting for WAL files required for a backup to be successfully archived.
BgworkerShutdownWaiting for background worker to shut down.
BgworkerStartupWaiting for background worker to start up.
BtreePageWaiting for the page number needed to continue a parallel B-tree scan to become available.
BufferIoWaiting for buffer I/O to complete.
CheckpointDelayCompleteWaiting for a backend that blocks a checkpoint from completing.
CheckpointDelayStartWaiting for a backend that blocks a checkpoint from starting.
CheckpointDoneWaiting for a checkpoint to complete.
CheckpointStartWaiting for a checkpoint to start.
ExecuteGatherWaiting for activity from a child process while executing a Gather plan node.
HashBatchAllocateWaiting for an elected Parallel Hash participant to allocate a hash table.
HashBatchElectWaiting to elect a Parallel Hash participant to allocate a hash table.
HashBatchLoadWaiting for other Parallel Hash participants to finish loading a hash table.
HashBuildAllocateWaiting for an elected Parallel Hash participant to allocate the initial hash table.
HashBuildElectWaiting to elect a Parallel Hash participant to allocate the initial hash table.
HashBuildHashInnerWaiting for other Parallel Hash participants to finish hashing the inner relation.
HashBuildHashOuterWaiting for other Parallel Hash participants to finish partitioning the outer relation.
HashGrowBatchesDecideWaiting to elect a Parallel Hash participant to decide on future batch growth.
HashGrowBatchesElectWaiting to elect a Parallel Hash participant to allocate more batches.
HashGrowBatchesFinishWaiting for an elected Parallel Hash participant to decide on future batch growth.
HashGrowBatchesReallocateWaiting for an elected Parallel Hash participant to allocate more batches.
HashGrowBatchesRepartitionWaiting for other Parallel Hash participants to finish repartitioning.
HashGrowBucketsElectWaiting to elect a Parallel Hash participant to allocate more buckets.
HashGrowBucketsReallocateWaiting for an elected Parallel Hash participant to finish allocating more buckets.
HashGrowBucketsReinsertWaiting for other Parallel Hash participants to finish inserting tuples into new buckets.
LogicalApplySendDataWaiting for a logical replication leader apply process to send data to a parallel apply process.
LogicalParallelApplyStateChangeWaiting for a logical replication parallel apply process to change state.
LogicalSyncDataWaiting for a logical replication remote server to send data for initial table synchronization.
LogicalSyncStateChangeWaiting for a logical replication remote server to change state.
MessageQueueInternalWaiting for another process to be attached to a shared message queue.
MessageQueuePutMessageWaiting to write a protocol message to a shared message queue.
MessageQueueReceiveWaiting to receive bytes from a shared message queue.
MessageQueueSendWaiting to send bytes to a shared message queue.
MultixactCreationWaiting for a multixact creation to complete.
ParallelBitmapScanWaiting for parallel bitmap scan to become initialized.
ParallelCreateIndexScanWaiting for parallel CREATE INDEX workers to finish heap scan.
ParallelFinishWaiting for parallel workers to finish computing.
ProcarrayGroupUpdateWaiting for the group leader to clear the transaction ID at transaction end.
ProcSignalBarrierWaiting for a barrier event to be processed by all backends.
PromoteWaiting for standby promotion.
RecoveryConflictSnapshotWaiting for recovery conflict resolution for a vacuum cleanup.
RecoveryConflictTablespaceWaiting for recovery conflict resolution for dropping a tablespace.
RecoveryEndCommandWaiting for recovery_end_command to complete.
RecoveryPauseWaiting for recovery to be resumed.
ReplicationOriginDropWaiting for a replication origin to become inactive so it can be dropped.
ReplicationSlotDropWaiting for a replication slot to become inactive so it can be dropped.
RestoreCommandWaiting for restore_command to complete.
SafeSnapshotWaiting to obtain a valid snapshot for a READ ONLY DEFERRABLE transaction.
SyncRepWaiting for confirmation from a remote server during synchronous replication.
WalReceiverExitWaiting for the WAL receiver to exit.
WalReceiverWaitStartWaiting for startup process to send initial data for streaming replication.
WalSummaryReadyWaiting for a new WAL summary to be generated.
XactGroupUpdateWaiting for the group leader to update transaction status at transaction end.

表27.11 Wait Events of Type Lock

Lock Wait EventDescription
advisoryWaiting to acquire an advisory user lock.
applytransactionWaiting to acquire a lock on a remote transaction being applied by a logical replication subscriber.
extendWaiting to extend a relation.
frozenidWaiting to update pg_database.datfrozenxid and pg_database.datminmxid.
objectWaiting to acquire a lock on a non-relation database object.
pageWaiting to acquire a lock on a page of a relation.
relationWaiting to acquire a lock on a relation.
spectokenWaiting to acquire a speculative insertion lock.
transactionidWaiting for a transaction to finish.
tupleWaiting to acquire a lock on a tuple.
userlockWaiting to acquire a user lock.
virtualxidWaiting to acquire a virtual transaction ID lock; see 66.1.

表27.12 Wait Events of Type Lwlock

LWLock Wait EventDescription
AddinShmemInitWaiting to manage an extension's space allocation in shared memory.
AutoFileWaiting to update the postgresql.auto.conf file.
AutovacuumWaiting to read or update the current state of autovacuum workers.
AutovacuumScheduleWaiting to ensure that a table selected for autovacuum still needs vacuuming.
BackgroundWorkerWaiting to read or update background worker state.
BtreeVacuumWaiting to read or update vacuum-related information for a B-tree index.
BufferContentWaiting to access a data page in memory.
BufferMappingWaiting to associate a data block with a buffer in the buffer pool.
CheckpointerCommWaiting to manage fsync requests.
CommitTsWaiting to read or update the last value set for a transaction commit timestamp.
CommitTsBufferWaiting for I/O on a commit timestamp SLRU buffer.
CommitTsSLRUWaiting to access the commit timestamp SLRU cache.
ControlFileWaiting to read or update the pg_control file or create a new WAL file.
DSMRegistryWaiting to read or update the dynamic shared memory registry.
DSMRegistryDSAWaiting to access dynamic shared memory registry's dynamic shared memory allocator.
DSMRegistryHashWaiting to access dynamic shared memory registry's shared hash table.
DynamicSharedMemoryControlWaiting to read or update dynamic shared memory allocation information.
InjectionPointWaiting to read or update information related to injection points.
LockFastPathWaiting to read or update a process' fast-path lock information.
LockManagerWaiting to read or update information about heavyweight locks.
LogicalRepLauncherDSAWaiting to access logical replication launcher's dynamic shared memory allocator.
LogicalRepLauncherHashWaiting to access logical replication launcher's shared hash table.
LogicalRepWorkerWaiting to read or update the state of logical replication workers.
MultiXactGenWaiting to read or update shared multixact state.
MultiXactMemberBufferWaiting for I/O on a multixact member SLRU buffer.
MultiXactMemberSLRUWaiting to access the multixact member SLRU cache.
MultiXactOffsetBufferWaiting for I/O on a multixact offset SLRU buffer.
MultiXactOffsetSLRUWaiting to access the multixact offset SLRU cache.
MultiXactTruncationWaiting to read or truncate multixact information.
NotifyBufferWaiting for I/O on a NOTIFY message SLRU buffer.
NotifyQueueWaiting to read or update NOTIFY messages.
NotifyQueueTailWaiting to update limit on NOTIFY message storage.
NotifySLRUWaiting to access the NOTIFY message SLRU cache.
OidGenWaiting to allocate a new OID.
ParallelAppendWaiting to choose the next subplan during Parallel Append plan execution.
ParallelHashJoinWaiting to synchronize workers during Parallel Hash Join plan execution.
ParallelQueryDSAWaiting for parallel query dynamic shared memory allocation.
ParallelVacuumDSAWaiting for parallel vacuum dynamic shared memory allocation.
PerSessionDSAWaiting for parallel query dynamic shared memory allocation.
PerSessionRecordTypeWaiting to access a parallel query's information about composite types.
PerSessionRecordTypmodWaiting to access a parallel query's information about type modifiers that identify anonymous record types.
PerXactPredicateListWaiting to access the list of predicate locks held by the current serializable transaction during a parallel query.
PgStatsDataWaiting for shared memory stats data access.
PgStatsDSAWaiting for stats dynamic shared memory allocator access.
PgStatsHashWaiting for stats shared memory hash table access.
PredicateLockManagerWaiting to access predicate lock information used by serializable transactions.
ProcArrayWaiting to access the shared per-process data structures (typically, to get a snapshot or report a session's transaction ID).
RelationMappingWaiting to read or update a pg_filenode.map file (used to track the filenode assignments of certain system catalogs).
RelCacheInitWaiting to read or update a pg_internal.init relation cache initialization file.
ReplicationOriginWaiting to create, drop or use a replication origin.
ReplicationOriginStateWaiting to read or update the progress of one replication origin.
ReplicationSlotAllocationWaiting to allocate or free a replication slot.
ReplicationSlotControlWaiting to read or update replication slot state.
ReplicationSlotIOWaiting for I/O on a replication slot.
SerialBufferWaiting for I/O on a serializable transaction conflict SLRU buffer.
SerialControlWaiting to read or update shared pg_serial state.
SerializableFinishedListWaiting to access the list of finished serializable transactions.
SerializablePredicateListWaiting to access the list of predicate locks held by serializable transactions.
SerializableXactHashWaiting to read or update information about serializable transactions.
SerialSLRUWaiting to access the serializable transaction conflict SLRU cache.
SharedTidBitmapWaiting to access a shared TID bitmap during a parallel bitmap index scan.
SharedTupleStoreWaiting to access a shared tuple store during parallel query.
ShmemIndexWaiting to find or allocate space in shared memory.
SInvalReadWaiting to retrieve messages from the shared catalog invalidation queue.
SInvalWriteWaiting to add a message to the shared catalog invalidation queue.
SubtransBufferWaiting for I/O on a sub-transaction SLRU buffer.
SubtransSLRUWaiting to access the sub-transaction SLRU cache.
SyncRepWaiting to read or update information about the state of synchronous replication.
SyncScanWaiting to select the starting location of a synchronized table scan.
TablespaceCreateWaiting to create or drop a tablespace.
TwoPhaseStateWaiting to read or update the state of prepared transactions.
WaitEventCustomWaiting to read or update custom wait events information.
WALBufMappingWaiting to replace a page in WAL buffers.
WALInsertWaiting to insert WAL data into a memory buffer.
WALSummarizerWaiting to read or update WAL summarization state.
WALWriteWaiting for WAL buffers to be written to disk.
WrapLimitsVacuumWaiting to update limits on transaction id and multixact consumption.
XactBufferWaiting for I/O on a transaction status SLRU buffer.
XactSLRUWaiting to access the transaction status SLRU cache.
XactTruncationWaiting to execute pg_xact_status or update the oldest transaction ID available to it.
XidGenWaiting to allocate a new transaction ID.

表27.13 Wait Events of Type Timeout

Timeout Wait EventDescription
BaseBackupThrottleWaiting during base backup when throttling activity.
CheckpointWriteDelayWaiting between writes while performing a checkpoint.
PgSleepWaiting due to a call to pg_sleep or a sibling function.
RecoveryApplyDelayWaiting to apply WAL during recovery because of a delay setting.
RecoveryRetrieveRetryIntervalWaiting during recovery when WAL data is not available from any source (pg_wal, archive or stream).
RegisterSyncRequestWaiting while sending synchronization requests to the checkpointer, because the request queue is full.
SpinDelayWaiting while acquiring a contended spinlock.
VacuumDelayWaiting in a cost-based vacuum delay point.
VacuumTruncateWaiting to acquire an exclusive lock to truncate off any empty pages at the end of a table vacuumed.
WalSummarizerErrorWaiting after a WAL summarizer error.

Here are examples of how wait events can be viewed: 《マッチ度[78.431373]》以下に、待機イベントが表示される例を示します。 《機械翻訳》次に、待機イベントを表示する例を示します。

SELECT pid, wait_event_type, wait_event FROM pg_stat_activity WHERE wait_event is NOT NULL;
 pid  | wait_event_type | wait_event
------+-----------------+------------
 2540 | Lock            | relation
 6644 | LWLock          | ProcArray
(2 rows)

SELECT a.pid, a.wait_event, w.description
  FROM pg_stat_activity a JOIN
       pg_wait_events w ON (a.wait_event_type = w.type AND
                            a.wait_event = w.name)
  WHERE a.wait_event is NOT NULL and a.state = 'active';
-[ RECORD 1 ]------------------------------------------------------​------------
pid         | 686674
wait_event  | WALInitSync
description | Waiting for a newly initialized WAL file to reach durable storage

注記

Extensions can add <literal>Extension</literal>, <literal>InjectionPoint</literal>. and <literal>LWLock</literal> events to the lists shown in <xref linkend="wait-event-extension-table"/> and <xref linkend="wait-event-lwlock-table"/>. In some cases, the name of an <literal>LWLock</literal> assigned by an extension will not be available in all server processes. It might be reported as just <quote><literal>extension</literal></quote> rather than the extension-assigned name. 《マッチ度[55.882353]》拡張は表 27.12に示す一覧にLWLock型を追加できます。 拡張によって割り当てられた名前がすべてのサーバプロセスでは利用可能でない場合があります。そのためLWLock待機イベントは、拡張が割り当てた名前ではなく単にextensionと報告されるかもしれません。 《機械翻訳》拡張機能では、extension注入ポイント、およびLWLockイベントを表 27.8および表 27.12に表示されるリストに追加できます。 場合によっては、extensionによるLWLockアサインの名前は、すべてのサーバプロセスで使用できるわけではありません。 extension-assigned名前ではなく、単にextensionと報告されることがあります。

27.2.4. pg_stat_replication #

The <structname>pg_stat_replication</structname> view will contain one row per WAL sender process, showing statistics about replication to that sender's connected standby server. Only directly connected standbys are listed; no information is available about downstream standby servers. pg_stat_replicationビューには、WAL送信プロセス毎に1行を含み、送信処理に接続したスタンバイサーバへのレプリケーションに関する統計情報を表示します。 直接接続されたスタンバイサーバのみが一覧表示されます。 下流のスタンバイサーバに関する情報はありません。

表27.14 pg_stat_replicationビュー

<title><structname>pg_stat_replication</structname> View</title>

Column Type 列 型

Description 説明

pid integer

Process ID of a WAL sender process WAL送信プロセスのプロセスIDです。

usesysid oid

OID of the user logged into this WAL sender process WAL送信プロセスにログインしたユーザのOIDです。

usename name

Name of the user logged into this WAL sender process WAL送信プロセスにログインしたユーザの名前です。

application_name text

Name of the application that is connected to this WAL sender WAL送信処理に接続したアプリケーションの名前です。

client_addr inet

IP address of the client connected to this WAL sender. If this field is null, it indicates that the client is connected via a Unix socket on the server machine. WAL送信処理に接続したクライアントのIPアドレスです。 このフィールドがNULLの場合、クライアントがサーバマシン上のUnixソケット経由で接続したことを示します。

client_hostname text

Host name of the connected client, as reported by a reverse DNS lookup of <structfield>client_addr</structfield>. This field will only be non-null for IP connections, and only when <xref linkend="guc-log-hostname"/> is enabled. client_addrのDNS逆引き検索により報告された、接続クライアントのホスト名です。 IP接続、かつlog_hostnameが有効である場合にのみ、このフィールドは非NULLになります。

client_port integer

TCP port number that the client is using for communication with this WAL sender, or <literal>-1</literal> if a Unix socket is used クライアントがWAL送信処理との通信に使用するTCPポート番号、もしUnixソケットを使用する場合は-1です。

backend_start timestamp with time zone

Time when this process was started, i.e., when the client connected to this WAL sender プロセスが開始、つまりクライアントがWAL送信処理に接続した時刻です。

backend_xmin xid

This standby's <literal>xmin</literal> horizon reported by <xref linkend="guc-hot-standby-feedback"/>. hot_standby_feedbackにより報告されたこのスタンバイのxminです。

state text

Current WAL sender state. Possible values are: WAL送信サーバの現在の状態です。 取り得る値は以下の通りです。

  • <literal>startup</literal>: This WAL sender is starting up. startup: このWAL送信サーバは起動するところです。

  • <literal>catchup</literal>: This WAL sender's connected standby is catching up with the primary. catchup: このWAL送信サーバが接続しているスタンバイはプライマリに追いつこうとしています。

  • <literal>streaming</literal>: This WAL sender is streaming changes after its connected standby server has caught up with the primary. streaming: このWAL送信サーバは、接続先のスタンバイサーバがプライマリに追いついた後、変更をストリームしています。

  • <literal>backup</literal>: This WAL sender is sending a backup. backup: このWAL送信サーバはバックアップを送信しています。

  • <literal>stopping</literal>: This WAL sender is stopping. stopping: このWAL送信サーバは停止するところです。

sent_lsn pg_lsn

Last write-ahead log location sent on this connection この接続で送信された最後の先行書き込みログの位置です。

write_lsn pg_lsn

Last write-ahead log location written to disk by this standby server このスタンバイサーバによってディスクに書き出された最後の先行書き込みログの位置です。

flush_lsn pg_lsn

Last write-ahead log location flushed to disk by this standby server このスタンバイサーバによってディスクにフラッシュされた最後の先行書き込みログの位置です。

replay_lsn pg_lsn

Last write-ahead log location replayed into the database on this standby server このスタンバイサーバ上のデータベースに再生された最後の先行書き込みログの位置です。

write_lag interval

Time elapsed between flushing recent WAL locally and receiving notification that this standby server has written it (but not yet flushed it or applied it). This can be used to gauge the delay that <literal>synchronous_commit</literal> level <literal>remote_write</literal> incurred while committing if this server was configured as a synchronous standby. 最近のWALをローカルにフラッシュしてから、このスタンバイサーバがそれを書き出した(が、まだフラッシュしたり適用したりしていない)ことの通知を受け取るまでの経過時間です。 このサーバが同期スタンバイとして設定されているとして、コミット時にsynchronous_commitレベルのremote_writeが起こした遅延を正確に測定するために、これを使用することができます。

flush_lag interval

Time elapsed between flushing recent WAL locally and receiving notification that this standby server has written and flushed it (but not yet applied it). This can be used to gauge the delay that <literal>synchronous_commit</literal> level <literal>on</literal> incurred while committing if this server was configured as a synchronous standby. 最近のWALをローカルにフラッシュしてから、このスタンバイサーバがそれを書き出してフラッシュした(が、まだ適用していない)ことの通知を受け取るまでの経過時間です。 このサーバが同期スタンバイとして設定されているとして、コミット時にsynchronous_commitレベルのonが起こした遅延を正確に測定するために、これを使用することができます。

replay_lag interval

Time elapsed between flushing recent WAL locally and receiving notification that this standby server has written, flushed and applied it. This can be used to gauge the delay that <literal>synchronous_commit</literal> level <literal>remote_apply</literal> incurred while committing if this server was configured as a synchronous standby. 最近のWALをローカルにフラッシュしてから、このスタンバイサーバがそれを書き出し、フラッシュし、そして適用したことの通知を受け取るまでの経過時間です。 このサーバが同期スタンバイとして設定されているとして、コミット時にsynchronous_commitレベルのremote_applyが起こした遅延を正確に測定するために、これを使用することができます。

sync_priority integer

Priority of this standby server for being chosen as the synchronous standby in a priority-based synchronous replication. This has no effect in a quorum-based synchronous replication. 優先度に基づく同期レプリケーションで、このスタンバイサーバが同期スタンバイとして選択される優先度です。 クォーラムに基づく同期レプリケーションでは効果がありません。

sync_state text

Synchronous state of this standby server. Possible values are: このスタンバイサーバの同期状態です。 取り得る値は以下の通りです。

  • <literal>async</literal>: This standby server is asynchronous. async: このスタンバイサーバは非同期です。

  • <literal>potential</literal>: This standby server is now asynchronous, but can potentially become synchronous if one of current synchronous ones fails. potential: このスタンバイサーバは現在非同期ですが、現在同期中のサーバの一つが故障すると同期になる可能性があります。

  • <literal>sync</literal>: This standby server is synchronous. sync: このスタンバイサーバは同期です。

  • <literal>quorum</literal>: This standby server is considered as a candidate for quorum standbys. quorum: このサーバはクォーラムのスタンバイの候補とみなされています。

reply_time timestamp with time zone

Send time of last reply message received from standby server スタンバイサーバから受け取った最後の応答メッセージの送信時刻です。


The lag times reported in the <structname>pg_stat_replication</structname> view are measurements of the time taken for recent WAL to be written, flushed and replayed and for the sender to know about it. These times represent the commit delay that was (or would have been) introduced by each synchronous commit level, if the remote server was configured as a synchronous standby. For an asynchronous standby, the <structfield>replay_lag</structfield> column approximates the delay before recent transactions became visible to queries. If the standby server has entirely caught up with the sending server and there is no more WAL activity, the most recently measured lag times will continue to be displayed for a short time and then show NULL. pg_stat_replicationビューで報告される経過時間は、最近のWALが書き込まれ、フラッシュされ、再生されるのに要した時間の測定結果であり、また、送信サーバがそれを知るためのものです。 リモートサーバが同期スタンバイとして設定されている場合、これらの時間は、同期コミットの各レベルによって引き起こされた(あるいは引き起こされたであろう)コミットの遅延を表します。 非同期スタンバイの場合は、replay_lag列は最近のトランザクションが問い合わせに対して可視になったときまでの遅延を近似します。 スタンバイサーバが送信サーバに完全に追いつき、WALの活動がなくなった状態のときは、最も直近に測定された経過時間が短い間、表示され続け、その後はNULLとなります。

Lag times work automatically for physical replication. Logical decoding plugins may optionally emit tracking messages; if they do not, the tracking mechanism will simply display NULL lag. 経過時間は物理レプリケーションの場合は自動的に機能します。 ロジカルデコーディングのプラグインはオプションで追跡メッセージを発することができますが、そうしなければ追跡機能は単にNULLの経過時間を表示します。

注記

The reported lag times are not predictions of how long it will take for the standby to catch up with the sending server assuming the current rate of replay. Such a system would show similar times while new WAL is being generated, but would differ when the sender becomes idle. In particular, when the standby has caught up completely, <structname>pg_stat_replication</structname> shows the time taken to write, flush and replay the most recent reported WAL location rather than zero as some users might expect. This is consistent with the goal of measuring synchronous commit and transaction visibility delays for recent write transactions. To reduce confusion for users expecting a different model of lag, the lag columns revert to NULL after a short time on a fully replayed idle system. Monitoring systems should choose whether to represent this as missing data, zero or continue to display the last known value. 報告される経過時間は、現在の再生速度の前提でスタンバイが送信サーバに追いつくのに要する時間を予測するものではありません。 そのようなシステムでは、新しいWALが生成されている間は類似した時間を示しますが、送信サーバがアイドル状態になると異なるものになるでしょう。 特に、スタンバイが完全に追いついたとき、pg_stat_replicationは、一部のユーザが期待するゼロではなく、最も最近に報告されたWAL位置を書き込み、フラッシュし、再生するのに要した時間を示します。 これは最近の書き込みトランザクションについて同期コミットおよびトランザクションの可視性の遅延を測定するという目的と首尾一貫しています。 経過時間について異なるモデルを期待するユーザの混乱を抑えるため、完全に再生されてアイドルになったシステムでは、経過時間の列は短い時間の後、NULLに戻ります。 監視システムでは、これをデータなしとする、ゼロとする、あるいは最後の既知の値を表示し続けるという選択をすることになります。

27.2.5. pg_stat_replication_slots #

The <structname>pg_stat_replication_slots</structname> view will contain one row per logical replication slot, showing statistics about its usage. pg_stat_replication_slotsビューには、論理レプリケーションスロットごとに1行が含まれ、その使用状況に関する統計情報が表示されます。

表27.15 pg_stat_replication_slotsビュー

<title><structname>pg_stat_replication_slots</structname> View</title>

Column Type 列 型

Description 説明

slot_name text

A unique, cluster-wide identifier for the replication slot クラスタ全体で一意なレプリケーションスロットの識別子です。

spill_txns bigint

Number of transactions spilled to disk once the memory used by logical decoding to decode changes from WAL has exceeded <literal>logical_decoding_work_mem</literal>. The counter gets incremented for both top-level transactions and subtransactions. WALからの変更をデコードするために論理デコードによって使用されるメモリがlogical_decoding_work_memを超えたときにディスクにあふれたトランザクション数です。 カウンタは、トップレベルのトランザクションとサブトランザクションの両方で増分されます。

spill_count bigint

Number of times transactions were spilled to disk while decoding changes from WAL for this slot. This counter is incremented each time a transaction is spilled, and the same transaction may be spilled multiple times. このスロットのWALから変更をデコードしている間に、トランザクションがディスクにあふれた回数です。 このカウンタは、トランザクションがあふれるたびに増分され、同じトランザクションが複数回あふれることもあります。

spill_bytes bigint

Amount of decoded transaction data spilled to disk while performing decoding of changes from WAL for this slot. This and other spill counters can be used to gauge the I/O which occurred during logical decoding and allow tuning <literal>logical_decoding_work_mem</literal>. このスロットのWALからの変更をデコード実行している間に、ディスクにあふれたデコード済みトランザクションデータ量です。 このカウンタと他のあふれカウンタは、論理デコード中に発生したI/Oを測定しlogical_decoding_work_memを調整できます。

stream_txns bigint

Number of in-progress transactions streamed to the decoding output plugin after the memory used by logical decoding to decode changes from WAL for this slot has exceeded <literal>logical_decoding_work_mem</literal>. Streaming only works with top-level transactions (subtransactions can't be streamed independently), so the counter is not incremented for subtransactions. このスロットのWALからの変更をデコードするために論理デコードが使用するメモリがlogical_decoding_work_memを超えた後にデコード出力プラグインにストリーミングされた進行中のトランザクション数です。 ストリーミングはトップレベルのトランザクションでのみ機能するため (サブトランザクションは独立してストリーミングできません)、サブトランザクションではカウンタは増分されません。

stream_countbigint

Number of times in-progress transactions were streamed to the decoding output plugin while decoding changes from WAL for this slot. This counter is incremented each time a transaction is streamed, and the same transaction may be streamed multiple times. このスロットのWALからの変更をデコードしている間に、進行中のトランザクションがデコード出力プラグインにストリーミングされた回数です。 このカウンタは、トランザクションがストリーミングされるたびに増分され、同じトランザクションが複数回ストリーミングされる可能性があります。

stream_bytesbigint

Amount of transaction data decoded for streaming in-progress transactions to the decoding output plugin while decoding changes from WAL for this slot. This and other streaming counters for this slot can be used to tune <literal>logical_decoding_work_mem</literal>. このスロットのWALからの変更をデコードしている間に、進行中のトランザクションをデコード出力プラグインにストリーミングするためにデコードされたトランザクションデータ量です。 このカウンタと他のストリーミングカウンタは、logical_decoding_work_memを調整するために使用できます。

total_txns bigint

Number of decoded transactions sent to the decoding output plugin for this slot. This counts top-level transactions only, and is not incremented for subtransactions. Note that this includes the transactions that are streamed and/or spilled. このスロットのデコード出力プラグインに送信されたデコードされたトランザクション数です。 これはトップレベルのトランザクションのみ数えられ、サブトランザクションは数えられません。 これには、ストリーミングされたトランザクションやあふれたトランザクションが含まれることに注意してください。

total_bytesbigint

Amount of transaction data decoded for sending transactions to the decoding output plugin while decoding changes from WAL for this slot. Note that this includes data that is streamed and/or spilled. このスロットのWALからの変更をデコードしながら、デコード出力プラグインにトランザクションを送信するためにデコードされたトランザクションデータ量です。 これには、ストリーミングされたデータやあふれたデータが含まれることに注意してください。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.6. pg_stat_wal_receiver #

The <structname>pg_stat_wal_receiver</structname> view will contain only one row, showing statistics about the WAL receiver from that receiver's connected server. pg_stat_wal_receiverビューは、1行のみの形式で、受信サーバが接続したサーバからWALレシーバに関する統計情報を表示します。

表27.16 pg_stat_wal_receiverビュー

<title><structname>pg_stat_wal_receiver</structname> View</title>

Column Type 列 型

Description 説明

pid integer

Process ID of the WAL receiver process WALレシーバプロセスのプロセスIDです。

status text

Activity status of the WAL receiver process WALレシーバプロセスの活動状態です。

receive_start_lsn pg_lsn

First write-ahead log location used when WAL receiver is started WALレシーバが開始された時に使われる先行書き込みログの最初の位置です。

receive_start_tli integer

First timeline number used when WAL receiver is started WALレシーバが開始された時に使われる初期タイムライン番号です。

written_lsn pg_lsn

Last write-ahead log location already received and written to disk, but not flushed. This should not be used for data integrity checks. すでに受信し、ディスクに書き出されたもののまだフラッシュされていない先行書き込みログの最新位置です。 これはデータの完全性の確認のためには使うべきではありません。

flushed_lsn pg_lsn

Last write-ahead log location already received and flushed to disk, the initial value of this field being the first log location used when WAL receiver is started すでに受信し、ディスクにフラッシュされた先行書き込みログの最新位置です。 この列の初期値は、WALレシーバが開始された時に使用される、最初のログ位置です。

received_tli integer

Timeline number of last write-ahead log location received and flushed to disk, the initial value of this field being the timeline number of the first log location used when WAL receiver is started 受信済みでディスクにフラッシュされた先行書き込みログの最新位置のタイムライン番号です。 この列の初期値は、WALレシーバが開始された時に使用される、最初のログ位置のタイムライン番号です。

last_msg_send_time timestamp with time zone

Send time of last message received from origin WAL sender オリジンWAL送信サーバから受け取った最後のメッセージの送信時刻です。

last_msg_receipt_time timestamp with time zone

Receipt time of last message received from origin WAL sender オリジンWAL送信サーバから受け取った最後のメッセージの受信時刻です。

latest_end_lsn pg_lsn

Last write-ahead log location reported to origin WAL sender オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。

latest_end_time timestamp with time zone

Time of last write-ahead log location reported to origin WAL sender オリジンWAL送信サーバへ最新の先行書き込みログ位置が報告された時間です。

slot_name text

Replication slot name used by this WAL receiver WALレシーバによって使用されたレプリケーションスロット名です。

sender_host text

Host of the <productname>PostgreSQL</productname> instance this WAL receiver is connected to. This can be a host name, an IP address, or a directory path if the connection is via Unix socket. (The path case can be distinguished because it will always be an absolute path, beginning with <literal>/</literal>.) WALレシーバが接続しているPostgreSQLインスタンスのホストです。 これはホスト名、IPアドレス、あるいはUNIXソケットで接続している場合はディレクトリのパスです。 (パスは、常に/で始まる絶対パスなので、パスであることを識別できます。)

sender_port integer

Port number of the <productname>PostgreSQL</productname> instance this WAL receiver is connected to. WALレシーバが接続しているPostgreSQLインスタンスのポート番号です。

conninfo text

Connection string used by this WAL receiver, with security-sensitive fields obfuscated. セキュリティに重要な値が難読化された文字列を含む、WALレシーバによって使用された接続文字列です。


27.2.7. pg_stat_recovery_prefetch #

The <structname>pg_stat_recovery_prefetch</structname> view will contain only one row. The columns <structfield>wal_distance</structfield>, <structfield>block_distance</structfield> and <structfield>io_depth</structfield> show current values, and the other columns show cumulative counters that can be reset with the <function>pg_stat_reset_shared</function> function. pg_stat_recovery_prefetchビューは1行のみの形式です。 wal_distanceblock_distanceio_depthの列は現在の値を示し、他の列はpg_stat_reset_shared関数でリセット可能な累積カウンタを示します。

表27.17 pg_stat_recovery_prefetchビュー

<title><structname>pg_stat_recovery_prefetch</structname> View</title>

Column Type 列 型

Description 説明

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。

prefetch bigint

Number of blocks prefetched because they were not in the buffer pool バッファプールになかったためにプリフェッチされたブロックの数です。

hit bigint

Number of blocks not prefetched because they were already in the buffer pool すでにバッファプールにあったためプリフェッチされなかったブロックの数です。

skip_init bigint

Number of blocks not prefetched because they would be zero-initialized ゼロで初期化されるためプリフェッチされなかったブロックの数です。

skip_new bigint

Number of blocks not prefetched because they didn't exist yet まだ存在しなかったためにプリフェッチされなかったブロックの数です。

skip_fpw bigint

Number of blocks not prefetched because a full page image was included in the WAL フルページイメージがWALに含まれていたためにプリフェッチされなかったブロックの数です。

skip_rep bigint

Number of blocks not prefetched because they were already recently prefetched すでに最近プリフェッチされていたためにプリフェッチされなかったブロックの数です。

wal_distance int

How many bytes ahead the prefetcher is looking プリフェッチャーが参照しているバイト数です。

block_distance int

How many blocks ahead the prefetcher is looking プリフェッチャーが参照している前方のブロック数です。

io_depth int

How many prefetches have been initiated but are not yet known to have completed 開始されたがまだ完了していないプリフェッチの数です。


27.2.8. pg_stat_subscription #

表27.18 pg_stat_subscriptionビュー

<title><structname>pg_stat_subscription</structname> View</title>

Column Type 列 型

Description 説明

subid oid

OID of the subscription サブスクリプションのOIDです。

subname name

Name of the subscription サブスクリプションの名前です。

worker_type text

Type of the subscription worker process. Possible types are <literal>apply</literal>, <literal>parallel apply</literal>, and <literal>table synchronization</literal>. 《機械翻訳》サブスクリプションワーカープロセスの型。 可能な型はapplyparallel applytable synchronizationです。

pid integer

Process ID of the subscription worker process サブスクリプションのワーカープロセスのプロセスIDです。

leader_pid integer

Process ID of the leader apply worker if this process is a parallel apply worker; NULL if this process is a leader apply worker or a table synchronization worker 《機械翻訳》このプロセスがパラレル適用ワーカーの場合は、リーダーのプロセスID。 このプロセスがリーダーの適用ワーカーまたは表の同期化ワーカーの場合はNULL。

relid oid

OID of the relation that the worker is synchronizing; NULL for the leader apply worker and parallel apply workers ワーカーが同期しているリレーションのOIDです。リーダー適用ワーカーとパラレル適用ワーカーの場合はNULLです。

received_lsn pg_lsn

Last write-ahead log location received, the initial value of this field being 0; NULL for parallel apply workers 最後に受け取った先行書き込みログ位置です。このフィールドの初期値は0です。 パラレル適用ワーカーではNULLです。

last_msg_send_time timestamp with time zone

Send time of last message received from origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバから受け取った最後のメッセージの送信時刻です。パラレル適用ワーカーの場合はNULLです。

last_msg_receipt_time timestamp with time zone

Receipt time of last message received from origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバから受け取った最後のメッセージの受信時刻です。パラレル適用ワーカーの場合はNULLです。

latest_end_lsn pg_lsn

Last write-ahead log location reported to origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。パラレル適用ワーカーの場合はNULLです。

latest_end_time timestamp with time zone

Time of last write-ahead log location reported to origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。パラレル適用ワーカーの場合はNULLです。


27.2.9. pg_stat_subscription_stats #

The <structname>pg_stat_subscription_stats</structname> view will contain one row per subscription. pg_stat_subscription_statsビューにはサブスクリプションごとに1行が含まれます。

表27.19 pg_stat_subscription_statsビュー

<title><structname>pg_stat_subscription_stats</structname> View</title>

Column Type 列 型

Description 説明

subid oid

OID of the subscription サブスクリプションのOIDです。

subname name

Name of the subscription サブスクリプションの名前です。

apply_error_count bigint

Number of times an error occurred while applying changes 変更の適用中にエラーが発生した回数です。

sync_error_count bigint

Number of times an error occurred during the initial table synchronization 初期テーブル同期中にエラーが発生した回数です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.10. pg_stat_ssl #

The <structname>pg_stat_ssl</structname> view will contain one row per backend or WAL sender process, showing statistics about SSL usage on this connection. It can be joined to <structname>pg_stat_activity</structname> or <structname>pg_stat_replication</structname> on the <structfield>pid</structfield> column to get more details about the connection. pg_stat_sslビューは、バックエンドプロセスおよびWAL送信プロセスごとに1行を保持し、接続上でのSSLの使用に関する統計情報を示します。 pg_stat_activityまたはpg_stat_replicationpid列で結合することで、接続に関するより詳細な情報を取得できます。

表27.20 pg_stat_sslビュー

<title><structname>pg_stat_ssl</structname> View</title>

Column Type 列 型

Description 説明

pid integer

Process ID of a backend or WAL sender process バックエンドプロセスまたはWAL送信プロセスのプロセスIDです。

ssl boolean

True if SSL is used on this connection この接続でSSLが使用されていれば真になります。

version text

Version of SSL in use, or NULL if SSL is not in use on this connection 使用されているSSLのバージョンです。この接続でSSLが使用されていなければNULLになります。

cipher text

Name of SSL cipher in use, or NULL if SSL is not in use on this connection 使用されているSSL暗号の名前です。この接続でSSLが使用されていなければNULLになります。

bits integer

Number of bits in the encryption algorithm used, or NULL if SSL is not used on this connection 使用されている暗号アルゴリズムのビット数です。この接続でSSLが使用されていなければNULLになります。

client_dn text

Distinguished Name (DN) field from the client certificate used, or NULL if no client certificate was supplied or if SSL is not in use on this connection. This field is truncated if the DN field is longer than <symbol>NAMEDATALEN</symbol> (64 characters in a standard build). 使用されているクライアント証明書の識別名(DN)フィールドです。クライアント証明書が提供されなかった場合、およびこの接続でSSLが使用されていない場合はNULLになります。 このフィールドは、DNフィールドがNAMEDATALEN(標準ビルドでは64文字)より長いと切り詰められます。

client_serial numeric

Serial number of the client certificate, or NULL if no client certificate was supplied or if SSL is not in use on this connection. The combination of certificate serial number and certificate issuer uniquely identifies a certificate (unless the issuer erroneously reuses serial numbers). クライアント証明書のシリアル番号です。この接続でクライアント証明書が提供されていないかSSLが使われていない場合にNULLになります。 証明書のシリアル番号と証明書発行者の組み合わせは(発行者が誤ってシリアル番号を再使用しない限り)証明書を一意に識別します。

issuer_dn text

DN of the issuer of the client certificate, or NULL if no client certificate was supplied or if SSL is not in use on this connection. This field is truncated like <structfield>client_dn</structfield>. クライアント証明書の発行者のDNです。この接続でクライアント証明書が提供されていないかSSLが使われていない場合にNULLになります。 このフィールドはclient_dnと同様に切り詰められます。


27.2.11. pg_stat_gssapi #

The <structname>pg_stat_gssapi</structname> view will contain one row per backend, showing information about GSSAPI usage on this connection. It can be joined to <structname>pg_stat_activity</structname> or <structname>pg_stat_replication</structname> on the <structfield>pid</structfield> column to get more details about the connection. pg_stat_gssapiビューはバックエンド毎に1行で構成され、接続でのGSSAPI使用に関する情報を表示します。 接続に関する更なる詳細を得るため、これをpg_stat_activitypg_stat_replicationpid列で結合できます。

表27.21 pg_stat_gssapiビュー

<title><structname>pg_stat_gssapi</structname> View</title>

Column Type 列 型

Description 説明

pid integer

Process ID of a backend バックエンドのプロセスIDです。

gss_authenticated boolean

True if GSSAPI authentication was used for this connection この接続にGSSAPI認証が使われていたなら真です。

principal text

Principal used to authenticate this connection, or NULL if GSSAPI was not used to authenticate this connection. This field is truncated if the principal is longer than <symbol>NAMEDATALEN</symbol> (64 characters in a standard build). この接続の認証に使われているプリンシパルです。接続の認証にGSSAPIが使われていない場合にはNULLです。 このフィールドはプリンシパルがNAMEDATALEN(標準ビルドでは64文字)よりも長い場合には切り詰められます。

encrypted boolean

True if GSSAPI encryption is in use on this connection この接続でGSSAPI暗号化が使われているなら真です。

credentials_delegated boolean

True if GSSAPI credentials were delegated on this connection. この接続でGSSAPI認証情報が委任されていた場合は真です。


27.2.12. pg_stat_archiver #

The <structname>pg_stat_archiver</structname> view will always have a single row, containing data about the archiver process of the cluster. pg_stat_archiverビューは常に、クラスタのアーカイバプロセスに関するデータを含む1つの行を持ちます。

表27.22 pg_stat_archiverビュー

<title><structname>pg_stat_archiver</structname> View</title>

Column Type 列 型

Description 説明

archived_count bigint

Number of WAL files that have been successfully archived アーカイブに成功したWALファイルの数です。

last_archived_wal text

Name of the WAL file most recently successfully archived 最後にアーカイブに成功したWALファイルの名前です。

last_archived_time timestamp with time zone

Time of the most recent successful archive operation 最後にアーカイブに成功した操作の時刻です。

failed_count bigint

Number of failed attempts for archiving WAL files WALファイルのアーカイブに失敗した回数です。

last_failed_wal text

Name of the WAL file of the most recent failed archival operation 最後にアーカイブ操作に失敗したWALファイルの名前です。

last_failed_time timestamp with time zone

Time of the most recent failed archival operation 最後にアーカイブ操作に失敗した時刻です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


Normally, WAL files are archived in order, oldest to newest, but that is not guaranteed, and does not hold under special circumstances like when promoting a standby or after crash recovery. Therefore it is not safe to assume that all files older than <structfield>last_archived_wal</structfield> have also been successfully archived. 通常、WALファイルは古いものから新しいものの順にアーカイブされますが、これは保証されておらず、スタンバイをプロモートしたときやクラッシュリカバリ後のような特別な状況では保持されません。 したがって、last_archived_walより古いすべてのファイルも正常にアーカイブされたと考えるのは安全ではありません。

27.2.13. pg_stat_io #

The <structname>pg_stat_io</structname> view will contain one row for each combination of backend type, target I/O object, and I/O context, showing cluster-wide I/O statistics. Combinations which do not make sense are omitted. pg_stat_ioビューには、バックエンドのタイプ、ターゲットI/Oオブジェクト、およびI/Oコンテキストの各組み合わせに対する1行が含まれ、クラスタ全体のI/O統計が示されます。 意味のない組み合わせは省略されます。

Currently, I/O on relations (e.g. tables, indexes) is tracked. However, relation I/O which bypasses shared buffers (e.g. when moving a table from one tablespace to another) is currently not tracked. 今の所、リレーション(テーブル、インデックス)上のI/Oは追跡されます。 ただし、共有バッファをバイパスするリレーションI/O(たとえば、あるテーブル空間から別のテーブル空間にテーブルを移動するとき)は現在は追跡されません。

表27.23 pg_stat_io View

Column Type 列 型

Description 説明

backend_type text

Type of backend (e.g. background worker, autovacuum worker). See <link linkend="monitoring-pg-stat-activity-view"> <structname>pg_stat_activity</structname></link> for more information on <varname>backend_type</varname>s. Some <varname>backend_type</varname>s do not accumulate I/O operation statistics and will not be included in the view. バックエンドのタイプです(たとえばバックグラウンドワーカー、自動バキュームワーカーなど)。 backend_typeの詳細についてはpg_stat_activityを参照してください。 一部のbackend_typeはI/O操作統計を累積しないため、このビューには含まれません。

object text

Target object of an I/O operation. Possible values are: I/O操作のターゲットオブジェクトです。 可能な値は次のとおりです。

  • <literal>relation</literal>: Permanent relations. relation: 永続的リレーションです。

  • <literal>temp relation</literal>: Temporary relations. temp relation: 一時リレーションです。

context text

The context of an I/O operation. Possible values are: I/O操作のコンテキストです。 可能な値は次のとおりです。

  • <literal>normal</literal>: The default or standard <varname>context</varname> for a type of I/O operation. For example, by default, relation data is read into and written out from shared buffers. Thus, reads and writes of relation data to and from shared buffers are tracked in <varname>context</varname> <literal>normal</literal>. normal: I/O操作のタイプに対するデフォルトまたは標準のcontextです。 例えば、リレーションデータの読み込みと書き込みは、デフォルトで共有バッファに書き込まれます。 したがって、共有バッファからのリレーションデータの読み込みと書き込みは、context normalで追跡されます。

  • <literal>vacuum</literal>: I/O operations performed outside of shared buffers while vacuuming and analyzing permanent relations. Temporary table vacuums use the same local buffer pool as other temporary table I/O operations and are tracked in <varname>context</varname> <literal>normal</literal>. 《機械翻訳》vacuum: 永続的なリレーションのバキュームと解析中に、共有バッファの外部で実行された入出力操作。 一時テーブルのバキュームは、他の一時テーブル入出力操作と同じローカルバッファプールを使用し、context normalで追跡されます。

  • <literal>bulkread</literal>: Certain large read I/O operations done outside of shared buffers, for example, a sequential scan of a large table. bulkread: 大きな読み取りI/O操作(大きなテーブルの逐次スキャンなど)で、共有バッファの外部で行われるものです。

  • <literal>bulkwrite</literal>: Certain large write I/O operations done outside of shared buffers, such as <command>COPY</command>. bulkwrite: COPYなどの共有バッファ外で行われる、大きな書き込みI/O操作です。

reads bigint

Number of read operations, each of the size specified in <varname>op_bytes</varname>. op_bytesで指定されたサイズの読み取り操作の数です。

read_time double precision

Time spent in read operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 読み取り操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ)

writes bigint

Number of write operations, each of the size specified in <varname>op_bytes</varname>. op_bytesで指定されたサイズの書き込み操作の数です。

write_time double precision

Time spent in write operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 書き込み操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ)

writebacks bigint

Number of units of size <varname>op_bytes</varname> which the process requested the kernel write out to permanent storage. プロセスがカーネルに永続的な記憶域への書き出しを要求したop_bytesのサイズの数です。

writeback_time double precision

Time spent in writeback operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero). This includes the time spent queueing write-out requests and, potentially, the time spent to write out the dirty data. ライトバック操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。そうでない場合はゼロ)。 これには、書き出し要求の待ち時間と、書き出しデータの書き出しに費やした時間が含まれます。

extends bigint

Number of relation extend operations, each of the size specified in <varname>op_bytes</varname>. op_bytesで指定されたサイズのリレーション拡張操作の数です。

extend_time double precision

Time spent in extend operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 拡張操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ)

op_bytes bigint

The number of bytes per unit of I/O read, written, or extended. I/Oの読み取り、書き込み、または拡張の単位ごとのバイト数です。

Relation data reads, writes, and extends are done in <varname>block_size</varname> units, derived from the build-time parameter <symbol>BLCKSZ</symbol>, which is <literal>8192</literal> by default. リレーションデータの読み込み、書き込み、拡張は、構築時パラメータBLCKSZから導出されるblock_size単位で行われます。 デフォルトでは8192です。

hits bigint

The number of times a desired block was found in a shared buffer. 共有バッファ内で所望のブロックが見つかった回数です。

evictions bigint

Number of times a block has been written out from a shared or local buffer in order to make it available for another use. ブロックが別の使用に使用できるように、共有バッファまたはローカルバッファから書き出された回数です。

In <varname>context</varname> <literal>normal</literal>, this counts the number of times a block was evicted from a buffer and replaced with another block. In <varname>context</varname>s <literal>bulkwrite</literal>, <literal>bulkread</literal>, and <literal>vacuum</literal>, this counts the number of times a block was evicted from shared buffers in order to add the shared buffer to a separate, size-limited ring buffer for use in a bulk I/O operation. contextnormalの場合、この値は、ブロックがバッファから削除され、別のブロックに置き換えられた回数をカウントします。 contextbulkwritebulkread、およびvacuumの場合、この値は、バルクI/O操作で使用するために、共有バッファを別のサイズ制限のあるリングバッファに追加するために、ブロックが共有バッファから追い出された回数をカウントします。

reuses bigint

The number of times an existing buffer in a size-limited ring buffer outside of shared buffers was reused as part of an I/O operation in the <literal>bulkread</literal>, <literal>bulkwrite</literal>, or <literal>vacuum</literal> <varname>context</varname>s. 共有バッファ以外のサイズ制限付きリングバッファ内の既存のバッファが、bulkreadbulkwrite、またはvacuum context内でI/O操作の一部として再利用された回数です。

fsyncs bigint

Number of <literal>fsync</literal> calls. These are only tracked in <varname>context</varname> <literal>normal</literal>. fsync呼び出しの数です。 これらはcontext normalでのみ追跡されます。

fsync_time double precision

Time spent in fsync operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) fsync操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ)

stats_reset timestamp with time zone

Time at which these statistics were last reset. これらの統計情報が最後にリセットされた時刻です。


Some backend types never perform I/O operations on some I/O objects and/or in some I/O contexts. These rows are omitted from the view. For example, the checkpointer does not checkpoint temporary tables, so there will be no rows for <varname>backend_type</varname> <literal>checkpointer</literal> and <varname>object</varname> <literal>temp relation</literal>. 一部のバックエンドタイプは、一部のI/Oオブジェクトおよび/または一部のI/OコンテキストでI/O操作を実行しません。 これらの行はビューから省略されます。 たとえば、チェッカポインタは一時テーブルをチェックしないので、backend_type checkpointerおよびobject temp relationに対する行はありません。

In addition, some I/O operations will never be performed either by certain backend types or on certain I/O objects and/or in certain I/O contexts. These cells will be NULL. For example, temporary tables are not <literal>fsync</literal>ed, so <varname>fsyncs</varname> will be NULL for <varname>object</varname> <literal>temp relation</literal>. Also, the background writer does not perform reads, so <varname>reads</varname> will be NULL in rows for <varname>backend_type</varname> <literal>background writer</literal>. また、特定のバックエンドタイプ、特定のI/Oオブジェクト、特定のI/Oコンテキストで、一部のI/O操作が実行されない場合もあります。 これらのセルはNULLです。 たとえば、一時テーブルはfsyncされないので、fsyncsobject temp relationに対してNULLになります。 また、バックグラウンドライタは読み取りを行わないので、backend_typetemp relationの行ではreadsがNULLになります。

<structname>pg_stat_io</structname> can be used to inform database tuning. For example: pg_stat_ioはデータベースのチューニングに役立てることができます。 例を示します。

  • A high <varname>evictions</varname> count can indicate that shared buffers should be increased. evictionsの数が多いということは、共有バッファを増やす必要があることを示しています。

  • Client backends rely on the checkpointer to ensure data is persisted to permanent storage. Large numbers of <varname>fsyncs</varname> by <literal>client backend</literal>s could indicate a misconfiguration of shared buffers or of the checkpointer. More information on configuring the checkpointer can be found in <xref linkend="wal-configuration"/>. クライアントバックエンドは、永続的なストレージにデータが保存されていることを確実するために、チェックポインタに依存しています。 client backendによる多数のfsyncは、共有バッファやチェックポインタの設定ミスを示している可能性があります。 チェックポインタの設定の詳細は28.5を参照してください。

  • Normally, client backends should be able to rely on auxiliary processes like the checkpointer and the background writer to write out dirty data as much as possible. Large numbers of writes by client backends could indicate a misconfiguration of shared buffers or of the checkpointer. More information on configuring the checkpointer can be found in <xref linkend="wal-configuration"/>. 通常、クライアントバックエンドは、チェックポインタやバックグラウンドライタのような補助プロセスが、できるだけ多くのダーティーデータを書き出すことに依存できるはずです。 クライアントバックエンドによる大量の書き込みは、共有バッファやチェックポインタの設定ミスを示している可能性があります。 チェックポインタの設定についての詳細は28.5を参照してください。

注記

Columns tracking I/O time will only be non-zero when <xref linkend="guc-track-io-timing"/> is enabled. The user should be careful when referencing these columns in combination with their corresponding I/O operations in case <varname>track_io_timing</varname> was not enabled for the entire time since the last stats reset. 《機械翻訳》列の追跡 I/O時間は、track_io_timingが有効になっている場合にのみゼロ以外になります。 最後の統計リセット以降、track_io_timingが有効になっていない場合、これらの列を対応するI/O操作と組み合わせて参照する際には注意が必要です。

27.2.14. pg_stat_bgwriter #

The <structname>pg_stat_bgwriter</structname> view will always have a single row, containing data about the background writer of the cluster. 《マッチ度[82.269504]》pg_stat_archiverビューは常に、クラスタのアーカイバプロセスに関するデータを含む1つの行を持ちます。 《機械翻訳》pg_stat_bgwriterビューは常に1行で、クラスタのバックグラウンドライタに関するデータを含みます。

表27.24 pg_stat_bgwriterビュー

<title><structname>pg_stat_bgwriter</structname> View</title>

Column Type 列 型

Description 説明

buffers_clean bigint

Number of buffers written by the background writer バックグラウンドライタにより書き出されたバッファ数です。

maxwritten_clean bigint

Number of times the background writer stopped a cleaning scan because it had written too many buffers バックグラウンドライタが書き出したバッファ数が多過ぎたために、整理用スキャンを停止した回数です。

buffers_alloc bigint

Number of buffers allocated 割当られたバッファ数です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.15. pg_stat_checkpointer #

The <structname>pg_stat_checkpointer</structname> view will always have a single row, containing data about the checkpointer process of the cluster. 《マッチ度[85.135135]》pg_stat_archiverビューは常に、クラスタのアーカイバプロセスに関するデータを含む1つの行を持ちます。 《機械翻訳》pg_stat_checkpointerビューは常に1行で、クラスタのチェックポインタプロセスに関するデータを含みます。

表27.25 pg_stat_checkpointer View

Column Type 列 型

Description 説明

num_timed bigint

Number of scheduled checkpoints due to timeout. Note that checkpoints may be skipped if the server has been idle since the last one, and this value counts both completed and skipped checkpoints 《機械翻訳》タイムアウト.ノートのためにスケジュールされたチェックポイントの数。 最後のチェックポイント以降、スキップされたがアイドル状態の場合、チェックポイントはサーバである可能性があります。 この値には、完了したチェックポイントとスキップされたのチェックポイントの両方が含まれます。

num_requested bigint

Number of requested checkpoints that have been performed これまでに実行された、要求されたチェックポイントの個数です。

restartpoints_timed bigint

Number of scheduled restartpoints due to timeout or after a failed attempt to perform it 《機械翻訳》タイムアウトまたは再起動の試行に失敗したためにスケジュールされた再起動ポイントの数。

restartpoints_req bigint

Number of requested restartpoints 《機械翻訳》要求された再起動ポイントの数。

restartpoints_done bigint

Number of restartpoints that have been performed 《マッチ度[62.500000]》これまでに実行された、要求されたチェックポイントの個数です。 《機械翻訳》実行された再起動ポイントの数。

write_time double precision

Total amount of time that has been spent in the portion of processing checkpoints and restartpoints where files are written to disk, in milliseconds 《マッチ度[78.378378]》チェックポイント処理におけるディスクにファイルを書き出す部分に費やされた、ミリ秒単位の総時間です。 《機械翻訳》ファイルがディスクに書き込まれるチェックポイントおよび再開ポイントの処理に費やされた合計時間(ミリ秒単位)。

sync_time double precision

Total amount of time that has been spent in the portion of processing checkpoints and restartpoints where files are synchronized to disk, in milliseconds 《マッチ度[74.509804]》チェックポイント処理におけるディスクにファイルを同期する部分に費やされた、ミリ秒単位の総時間です。 《機械翻訳》ファイルがディスクに同期化されるチェックポイントおよび再起動ポイントの処理に費やされた合計時間(ミリ秒単位)。

buffers_written bigint

Number of buffers written during checkpoints and restartpoints 《マッチ度[59.677419]》チェックポイント期間に書き出されたバッファ数です。 《機械翻訳》チェックポイントおよび再起動ポイントで書き込まれたバッファ数。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.16. pg_stat_wal #

The <structname>pg_stat_wal</structname> view will always have a single row, containing data about WAL activity of the cluster. pg_stat_walビューは常に、クラスタのWAL活動状況のデータに関する1つの行を持ちます。

表27.26 pg_stat_walビュー

<title><structname>pg_stat_wal</structname> View</title>

Column Type 列 型

Description 説明

wal_records bigint

Total number of WAL records generated 生成されたWALレコードの総数です。

wal_fpi bigint

Total number of WAL full page images generated 生成されたWALフルページイメージの総数です。

wal_bytes numeric

Total amount of WAL generated in bytes 生成されたWALのバイト単位の総量です。

wal_buffers_full bigint

Number of times WAL data was written to disk because WAL buffers became full WALバッファが満杯になったため、WALデータがディスクに書き込まれた回数です。

wal_write bigint

Number of times WAL buffers were written out to disk via <function>XLogWrite</function> request. See <xref linkend="wal-configuration"/> for more information about the internal WAL function <function>XLogWrite</function>. WALバッファがXLogWrite要求によりディスクに書き出された回数です。 内部WAL関数XLogWriteの詳細については、28.5を参照してください。

wal_sync bigint

Number of times WAL files were synced to disk via <function>issue_xlog_fsync</function> request (if <xref linkend="guc-fsync"/> is <literal>on</literal> and <xref linkend="guc-wal-sync-method"/> is either <literal>fdatasync</literal>, <literal>fsync</literal> or <literal>fsync_writethrough</literal>, otherwise zero). See <xref linkend="wal-configuration"/> for more information about the internal WAL function <function>issue_xlog_fsync</function>. WALファイルがissue_xlog_fsync要求によりディスクに同期された回数(fsynconかつwal_sync_methodfdatasyncまたはfsyncまたはfsync_writethroughのいずれかである場合、そうでなければゼロ)です。 内部WAL関数issue_xlog_fsyncの詳細については、28.5を参照してください。

wal_write_time double precision

Total amount of time spent writing WAL buffers to disk via <function>XLogWrite</function> request, in milliseconds (if <xref linkend="guc-track-wal-io-timing"/> is enabled, otherwise zero). This includes the sync time when <varname>wal_sync_method</varname> is either <literal>open_datasync</literal> or <literal>open_sync</literal>. XLogWriteの要求を介してWALバッファをディスクに書き込むのに費やされたミリ秒単位の合計時間(track_wal_io_timing が有効である場合、そうでなければゼロ)です。 これにはwal_sync_methodopen_datasyncまたはopen_syncの場合の同期時間が含まれます。

wal_sync_time double precision

Total amount of time spent syncing WAL files to disk via <function>issue_xlog_fsync</function> request, in milliseconds (if <varname>track_wal_io_timing</varname> is enabled, <varname>fsync</varname> is <literal>on</literal>, and <varname>wal_sync_method</varname> is either <literal>fdatasync</literal>, <literal>fsync</literal> or <literal>fsync_writethrough</literal>, otherwise zero). issue_xlog_fsync要求を介してWALファイルのディスクへの同期に費やされたミリ秒単位の合計時間(track_wal_io_timingが有効、かつfsyncon、かつwal_sync_methodfdatasyncまたはfsyncまたはfsync_writethroughのいずれかの場合、それ以外の場合は0)です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.17. pg_stat_database #

The <structname>pg_stat_database</structname> view will contain one row for each database in the cluster, plus one for shared objects, showing database-wide statistics. pg_stat_databaseビューには、クラスタ内のデータベース毎に1行と加えて共有オブジェクトのための1行が含まれ、データベース全体の統計情報を示します。

表27.27 pg_stat_databaseビュー

<title><structname>pg_stat_database</structname> View</title>

Column Type 列 型

Description 説明

datid oid

OID of this database, or 0 for objects belonging to a shared relation データベースのOIDです。共有リレーションに属するオブジェクトについては0になります。

datname name

Name of this database, or <literal>NULL</literal> for shared objects. データベース名です。共有オブジェクトについてはNULLになります。

numbackends integer

Number of backends currently connected to this database, or <literal>NULL</literal> for shared objects. This is the only column in this view that returns a value reflecting current state; all other columns return the accumulated values since the last reset. 現在データベースに接続しているバックエンドの個数です。共有オブジェクトについてはNULLになります。 これは、このビューの中で、現在の状態を反映した値を返す唯一の列です。 他の列はすべて、最後にリセットされてから累積された値を返します。

xact_commit bigint

Number of transactions in this database that have been committed データベース内でコミットされたトランザクション数です。

xact_rollback bigint

Number of transactions in this database that have been rolled back データベース内でロールバックされたトランザクション数です。

blks_read bigint

Number of disk blocks read in this database データベース内で読み取られたディスクブロック数です。

blks_hit bigint

Number of times disk blocks were found already in the buffer cache, so that a read was not necessary (this only includes hits in the PostgreSQL buffer cache, not the operating system's file system cache) バッファキャッシュに既にあることが分かっているためにディスクブロックの読み取りが不要だった回数です(これにはPostgreSQLのバッファキャッシュにおけるヒットのみが含まれ、オペレーティングシステムのファイルシステムキャッシュは含まれません)。

tup_returned bigint

Number of live rows fetched by sequential scans and index entries returned by index scans in this database シーケンシャルスキャンとこのデータベース内のインデックススキャンによって返されたインデックスエントリから取り出された有効な行数です。

tup_fetched bigint

Number of live rows fetched by index scans in this database データベース内のインデックススキャンで取り出された有効な行数です。

tup_inserted bigint

Number of rows inserted by queries in this database データベース内の問い合わせで挿入された行数です。

tup_updated bigint

Number of rows updated by queries in this database データベース内の問い合わせで更新された行数です。

tup_deleted bigint

Number of rows deleted by queries in this database データベース内の問い合わせで削除された行数です。

conflicts bigint

Number of queries canceled due to conflicts with recovery in this database. (Conflicts occur only on standby servers; see <link linkend="monitoring-pg-stat-database-conflicts-view"> <structname>pg_stat_database_conflicts</structname></link> for details.) データベース内のリカバリで競合したためキャンセルされた問い合わせ数です。 (競合はスタンバイサーバ上でのみ起こります。 詳細についてはpg_stat_database_conflictsを参照してください。)

temp_files bigint

Number of temporary files created by queries in this database. All temporary files are counted, regardless of why the temporary file was created (e.g., sorting or hashing), and regardless of the <xref linkend="guc-log-temp-files"/> setting. データベース内の問い合わせによって書き出された一時ファイルの個数です。 一時ファイルが作成された理由(ソート処理やハッシュ処理)やlog_temp_filesの設定に関わらず、すべての一時ファイルが計上されます。

temp_bytes bigint

Total amount of data written to temporary files by queries in this database. All temporary files are counted, regardless of why the temporary file was created, and regardless of the <xref linkend="guc-log-temp-files"/> setting. データベース内の問い合わせによって一時ファイルに書き出されたデータ量です。 一時ファイルが作成された理由やlog_temp_filesの設定に関わらず、すべての一時ファイルが計上されます。

deadlocks bigint

Number of deadlocks detected in this database データベース内で検知されたデッドロック数です。

checksum_failures bigint

Number of data page checksum failures detected in this database (or on a shared object), or NULL if data checksums are not enabled. データベース(あるいは共有オブジェクト)内で検出されたデータページチェックサムの検査失敗数です。データチェックサムが無効の場合にはNULLです。

checksum_last_failure timestamp with time zone

Time at which the last data page checksum failure was detected in this database (or on a shared object), or NULL if data checksums are not enabled. データベース(または共有オブジェクト)内で最後にデータページチェックサムの検査失敗が検知された時刻です。データチェックサムが無効の場合にはNULLです。

blk_read_time double precision

Time spent reading data file blocks by backends in this database, in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) データベース内でバックエンドによりデータファイルブロックの読み取りに費やされた、ミリ秒単位の時間です(track_io_timingが有効な場合。そうでなければゼロです)。

blk_write_time double precision

Time spent writing data file blocks by backends in this database, in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) データベース内でバックエンドによりデータファイルブロックの書き出しに費やされた、ミリ秒単位の時間です(track_io_timingが有効な場合。そうでなければゼロです)。

session_time double precision

Time spent by database sessions in this database, in milliseconds (note that statistics are only updated when the state of a session changes, so if sessions have been idle for a long time, this idle time won't be included) このデータベースでデータベースセッションに費やされた、ミリ秒単位の時間です(統計はセッションの状態が変化したときのみ更新されるため、セッションが長い間アイドル状態の場合、このアイドル時間は含まれません)。

active_time double precision

Time spent executing SQL statements in this database, in milliseconds (this corresponds to the states <literal>active</literal> and <literal>fastpath function call</literal> in <link linkend="monitoring-pg-stat-activity-view"> <structname>pg_stat_activity</structname></link>) このデータベースでSQL文実行に費やされた、ミリ秒単位の時間です(これはpg_stat_activityactivefastpath function call状態に対応します)。

idle_in_transaction_time double precision

Time spent idling while in a transaction in this database, in milliseconds (this corresponds to the states <literal>idle in transaction</literal> and <literal>idle in transaction (aborted)</literal> in <link linkend="monitoring-pg-stat-activity-view"> <structname>pg_stat_activity</structname></link>) このデータベースでトランザクション中にアイドル状態であった、ミリ秒単位の時間です(これはpg_stat_activityidle in transactionidle in transaction (aborted)状態に対応します)。

sessions bigint

Total number of sessions established to this database このデータベースに対して確立されたセッションの総数です。

sessions_abandoned bigint

Number of database sessions to this database that were terminated because connection to the client was lost このデータベースに対するデータベースセッションのうち、クライアントとの接続が失われたために終了したセッションの数です。

sessions_fatal bigint

Number of database sessions to this database that were terminated by fatal errors このデータベースに対するデータベースセッションのうち、致命的なエラーによって終了したセッションの数です。

sessions_killed bigint

Number of database sessions to this database that were terminated by operator intervention このデータベースに対するデータベースセッションのうち、オペレータの介入によって終了したセッションの数です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.18. pg_stat_database_conflicts #

The <structname>pg_stat_database_conflicts</structname> view will contain one row per database, showing database-wide statistics about query cancels occurring due to conflicts with recovery on standby servers. This view will only contain information on standby servers, since conflicts do not occur on primary servers. pg_stat_database_conflictsビューは、データベースごとに1行を保持し、スタンバイサーバでのリカバリと競合するためにキャンセルされた問い合わせに関するデータベース全体の統計情報を示します。 プライマリサーバでは競合は発生しませんので、スタンバイサーバ上の情報のみが保持されます。

表27.28 pg_stat_database_conflictsビュー

<title><structname>pg_stat_database_conflicts</structname> View</title>

Column Type 列 型

Description 説明

datid oid

OID of a database データベースのOIDです。

datname name

Name of this database データベースの名前です。

confl_tablespace bigint

Number of queries in this database that have been canceled due to dropped tablespaces データベースにおいて、削除されたテーブル空間のためにキャンセルされた問い合わせの個数です。

confl_lock bigint

Number of queries in this database that have been canceled due to lock timeouts データベースにおいて、ロック時間切れのためにキャンセルされた問い合わせの個数です。

confl_snapshot bigint

Number of queries in this database that have been canceled due to old snapshots データベースにおいて、古いスナップショットのためにキャンセルされた問い合わせの個数です。

confl_bufferpin bigint

Number of queries in this database that have been canceled due to pinned buffers データベースにおいて、ピンが付いたバッファのためにキャンセルされた問い合わせの個数です。

confl_deadlock bigint

Number of queries in this database that have been canceled due to deadlocks データベースにおいて、デッドロックのためにキャンセルされた問い合わせの個数です。

confl_active_logicalslot bigint

Number of uses of logical slots in this database that have been canceled due to old snapshots or too low a <xref linkend="guc-wal-level"/> on the primary スナップショットが古い、またはプライマリ上でwal_levelが低すぎることにより取り消されたこのデータベース内の論理スロットの使用回数です。


27.2.19. pg_stat_all_tables #

The <structname>pg_stat_all_tables</structname> view will contain one row for each table in the current database (including TOAST tables), showing statistics about accesses to that specific table. The <structname>pg_stat_user_tables</structname> and <structname>pg_stat_sys_tables</structname> views contain the same information, but filtered to only show user and system tables respectively. pg_stat_all_tablesビューは現在のデータベース内のテーブル(TOASTテーブルを含む)ごと1行の形式で、特定のテーブルへのアクセスに関する統計情報を表示します。 pg_stat_user_tablesおよびpg_stat_sys_tablesビューにも同じ情報が含まれますが、それぞれユーザテーブルとシステムテーブルのみにフィルタされています。

表27.29 pg_stat_all_tablesビュー

<title><structname>pg_stat_all_tables</structname> View</title>

Column Type 列 型

Description 説明

relid oid

OID of a table テーブルのOIDです。

schemaname name

Name of the schema that this table is in テーブルが存在するスキーマの名前です。

relname name

Name of this table テーブルの名前です。

seq_scan bigint

Number of sequential scans initiated on this table テーブル上で初期化されたシーケンシャルスキャンの個数です。

last_seq_scan timestamp with time zone

The time of the last sequential scan on this table, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このテーブルの最後の順次スキャンの時刻です。

seq_tup_read bigint

Number of live rows fetched by sequential scans シーケンシャルスキャンによって取り出された有効な行数です。

idx_scan bigint

Number of index scans initiated on this table テーブル上で開始されたインデックススキャンの実行回数です。

last_idx_scan timestamp with time zone

The time of the last index scan on this table, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このテーブルに対する最新のインデックススキャンの時刻です。

idx_tup_fetch bigint

Number of live rows fetched by index scans インデックススキャンによって取り出された有効な行数です。

n_tup_ins bigint

Total number of rows inserted 挿入された総行数です。

n_tup_upd bigint

Total number of rows updated. (This includes row updates counted in <structfield>n_tup_hot_upd</structfield> and <structfield>n_tup_newpage_upd</structfield>, and remaining non-<acronym>HOT</acronym> updates.) 更新された総行数です。 (これには、n_tup_hot_updn_tup_newpage_updでカウントされた行更新と、HOT以外の残りの更新が含まれます。)

n_tup_del bigint

Total number of rows deleted 削除された総行数です。

n_tup_hot_upd bigint

Number of rows <link linkend="storage-hot">HOT updated</link>. These are updates where no successor versions are required in indexes. HOT更新された行数です。 これらは、インデックスで後続のバージョンが必要ない更新です。

n_tup_newpage_upd bigint

Number of rows updated where the successor version goes onto a <emphasis>new</emphasis> heap page, leaving behind an original version with a <link linkend="storage-tuple-layout"><structfield>t_ctid</structfield> field</link> that points to a different heap page. These are always non-<acronym>HOT</acronym> updates. 後継バージョンが新しいヒープページに移動し、元のバージョンがt_ctidフィールドで別のヒープページを指すような更新が行われた行数です。 これらは常に非HOT更新です。

n_live_tup bigint

Estimated number of live rows 有効な行数の推定値です。

n_dead_tup bigint

Estimated number of dead rows 無効な行数の推定値です。

n_mod_since_analyze bigint

Estimated number of rows modified since this table was last analyzed このテーブルが最後に解析されてから変更された行数の推定値です。

n_ins_since_vacuum bigint

Estimated number of rows inserted since this table was last vacuumed このテーブルが最後にバキュームされてから挿入された行数の推定値です。

last_vacuum timestamp with time zone

Last time at which this table was manually vacuumed (not counting <command>VACUUM FULL</command>) テーブルが手作業でバキュームされた最終時刻です(VACUUM FULLは含まれません)。

last_autovacuum timestamp with time zone

Last time at which this table was vacuumed by the autovacuum daemon 自動バキュームデーモンによりテーブルがバキュームされた最終時刻です。

last_analyze timestamp with time zone

Last time at which this table was manually analyzed テーブルが手作業で解析された最終時刻です。

last_autoanalyze timestamp with time zone

Last time at which this table was analyzed by the autovacuum daemon 自動バキュームデーモンによりテーブルが解析された最終時刻です。

vacuum_count bigint

Number of times this table has been manually vacuumed (not counting <command>VACUUM FULL</command>) テーブルが手作業でバキュームされた回数です。(VACUUM FULLは含まれません)。

autovacuum_count bigint

Number of times this table has been vacuumed by the autovacuum daemon テーブルが自動バキュームデーモンによりバキュームされた回数です。

analyze_count bigint

Number of times this table has been manually analyzed テーブルが手作業で解析された回数です。

autoanalyze_count bigint

Number of times this table has been analyzed by the autovacuum daemon テーブルが自動バキュームデーモンによって解析された回数です。


27.2.20. pg_stat_all_indexes #

The <structname>pg_stat_all_indexes</structname> view will contain one row for each index in the current database, showing statistics about accesses to that specific index. The <structname>pg_stat_user_indexes</structname> and <structname>pg_stat_sys_indexes</structname> views contain the same information, but filtered to only show user and system indexes respectively. pg_stat_all_indexesビューは、現在のデータベース内のインデックスごとに1行の形式で、特定のインデックスへのアクセスに関する統計情報を表示します。 pg_stat_user_indexespg_stat_sys_indexesも同じ情報を保持しますが、ユーザ向けのインデックスとシステム向けのインデックスに対する行のみを保持するようにフィルタ処理されています。

表27.30 pg_stat_all_indexesビュー

<title><structname>pg_stat_all_indexes</structname> View</title>

Column Type 列 型

Description 説明

relid oid

OID of the table for this index このインデックスに対応するテーブルのOIDです。

indexrelid oid

OID of this index インデックスのOIDです。

schemaname name

Name of the schema this index is in インデックスが存在するスキーマの名前です。

relname name

Name of the table for this index このインデックスに対応するテーブルの名前です。

indexrelname name

Name of this index インデックスの名前です。

idx_scan bigint

Number of index scans initiated on this index インデックスに対して開始されたインデックススキャンの実行回数です。

last_idx_scan timestamp with time zone

The time of the last scan on this index, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このインデックスの最後のスキャン時刻です。

idx_tup_read bigint

Number of index entries returned by scans on this index インデックスに対するスキャンにより返されたインデックス項目の個数です。

idx_tup_fetch bigint

Number of live table rows fetched by simple index scans using this index インデックスを使用する単純なインデックススキャンによって取り出された有効テーブル行数です。


Indexes can be used by simple index scans, <quote>bitmap</quote> index scans, and the optimizer. In a bitmap scan the output of several indexes can be combined via AND or OR rules, so it is difficult to associate individual heap row fetches with specific indexes when a bitmap scan is used. Therefore, a bitmap scan increments the <structname>pg_stat_all_indexes</structname>.<structfield>idx_tup_read</structfield> count(s) for the index(es) it uses, and it increments the <structname>pg_stat_all_tables</structname>.<structfield>idx_tup_fetch</structfield> count for the table, but it does not affect <structname>pg_stat_all_indexes</structname>.<structfield>idx_tup_fetch</structfield>. The optimizer also accesses indexes to check for supplied constants whose values are outside the recorded range of the optimizer statistics because the optimizer statistics might be stale. 単純なインデックススキャン、ビットマップインデックススキャン、あるいはオプティマイザによりインデックスが使用されることがあります。 ビットマップスキャンでは、複数のインデックスの出力をANDやOR規則で組み合わせることができます。 このため、ビットマップスキャンが使用される場合、特定インデックスと個々のヒープ行の取り出しとを関連づけることが困難です。 したがってビットマップスキャンでは、使用したインデックスのpg_stat_all_indexes.idx_tup_read個数を増やし、そのテーブルのpg_stat_all_tables.idx_tup_fetch個数を増やしますが、pg_stat_all_indexes.idx_tup_fetchを変更しません。 オプティマイザもインデックスにアクセスし、提供された定数値がオプティマイザの統計情報に記録された範囲の外側にあるときに、それを検査します。 これはオプティマイザの統計情報が古いかもしれないからです。

注記

The <structfield>idx_tup_read</structfield> and <structfield>idx_tup_fetch</structfield> counts can be different even without any use of bitmap scans, because <structfield>idx_tup_read</structfield> counts index entries retrieved from the index while <structfield>idx_tup_fetch</structfield> counts live rows fetched from the table. The latter will be less if any dead or not-yet-committed rows are fetched using the index, or if any heap fetches are avoided by means of an index-only scan. idx_tup_readidx_tup_fetch個数は、ビットマップスキャンがまったく使用されていない場合でも異なります。 idx_tup_readはインデックスから取り出したインデックス項目を計上し、idx_tup_fetchはテーブルから取り出した有効行を計上するからです。 インデックスを用いて無効行やまだコミットされていない行が取り出された場合やインデックスオンリースキャン法によりヒープの取り出しが回避された場合に、後者は減少します。

注記

Queries that use certain <acronym>SQL</acronym> constructs to search for rows matching any value out of a list or array of multiple scalar values (see <xref linkend="functions-comparisons"/>) perform multiple <quote>primitive</quote> index scans (up to one primitive scan per scalar value) during query execution. Each internal primitive index scan increments <structname>pg_stat_all_indexes</structname>.<structfield>idx_scan</structfield>, so it's possible for the count of index scans to significantly exceed the total number of index scan executor node executions. 《機械翻訳》複数のスカラー値のリストまたは配列から任意の値に一致する行を検索するために、特定のSQL構文を使用する問い合わせ(9.25を参照)は、問い合わせ実行中に複数のプリミティブインデックススキャン(スカラー値ごとに1つのプリミティブスキャン)を実行します。 各内部プリミティブインデックススキャンはpg_stat_all_indexes.idx_scanをインクリメントするため、インデックススキャンの数がインデックススキャン実行ノードの実行総数を大幅に超える可能性があります。

27.2.21. pg_statio_all_tables #

The <structname>pg_statio_all_tables</structname> view will contain one row for each table in the current database (including TOAST tables), showing statistics about I/O on that specific table. The <structname>pg_statio_user_tables</structname> and <structname>pg_statio_sys_tables</structname> views contain the same information, but filtered to only show user and system tables respectively. pg_statio_all_tablesビューは現在のデータベース内のテーブル(TOASTテーブルを含む)ごとに1行の形式で、特定のテーブルのI/Oに関する統計情報を表示します。 pg_statio_user_tablespg_statio_sys_tablesには同じ情報が保持されますが、ユーザテーブルとシステムテーブルに関する行のみを持つようにフィルタ処理がなされています。

表27.31 pg_statio_all_tablesビュー

<title><structname>pg_statio_all_tables</structname> View</title>

Column Type 列 型

Description 説明

relid oid

OID of a table テーブルのOIDです。

schemaname name

Name of the schema that this table is in テーブルが存在するスキーマの名前です。

relname name

Name of this table テーブルの名前です。

heap_blks_read bigint

Number of disk blocks read from this table テーブルから読み取られたディスクブロック数です。

heap_blks_hit bigint

Number of buffer hits in this table テーブル内のバッファヒット数です。

idx_blks_read bigint

Number of disk blocks read from all indexes on this table テーブル上のすべてのインデックスから読み取られたディスクブロック数です。

idx_blks_hit bigint

Number of buffer hits in all indexes on this table テーブル上のすべてのインデックス内のバッファヒット数です。

toast_blks_read bigint

Number of disk blocks read from this table's TOAST table (if any) テーブルのTOASTテーブル(もしあれば)から読み取られたディスクブロック数です。

toast_blks_hit bigint

Number of buffer hits in this table's TOAST table (if any) テーブルのTOASTテーブル(もしあれば)におけるバッファヒット数です。

tidx_blks_read bigint

Number of disk blocks read from this table's TOAST table indexes (if any) テーブルのTOASTテーブルのインデックス(もしあれば)から読み取られたディスクブロック数です。

tidx_blks_hit bigint

Number of buffer hits in this table's TOAST table indexes (if any) テーブルのTOASTテーブルのインデックス(もしあれば)におけるバッファヒット数です。


27.2.22. pg_statio_all_indexes #

The <structname>pg_statio_all_indexes</structname> view will contain one row for each index in the current database, showing statistics about I/O on that specific index. The <structname>pg_statio_user_indexes</structname> and <structname>pg_statio_sys_indexes</structname> views contain the same information, but filtered to only show user and system indexes respectively. pg_statio_all_indexesビューは、現在のデータベース内のインデックスごとに1行の形式で、特定のインデックスへのI/Oに関する統計情報を表示します。 pg_statio_user_indexespg_statio_sys_indexesも同じ情報を保持しますが、それぞれユーザ向けのインデックスとシステム向けのインデックスに対する行のみを保持するようにフィルタ処理されています。

表27.32 pg_statio_all_indexesビュー

<title><structname>pg_statio_all_indexes</structname> View</title>

Column Type 列 型

Description 説明

relid oid

OID of the table for this index このインデックスに対応するテーブルのOIDです。

indexrelid oid

OID of this index インデックスのOIDです。

schemaname name

Name of the schema this index is in インデックスが存在するスキーマの名前です。

relname name

Name of the table for this index このインデックスに対応するテーブルの名前です。

indexrelname name

Name of this index インデックスの名前です。

idx_blks_read bigint

Number of disk blocks read from this index インデックスから読み取られたディスクブロック数です。

idx_blks_hit bigint

Number of buffer hits in this index インデックスにおけるバッファヒット数です。


27.2.23. pg_statio_all_sequences #

The <structname>pg_statio_all_sequences</structname> view will contain one row for each sequence in the current database, showing statistics about I/O on that specific sequence. pg_statio_all_sequencesビューは現在のデータベース内のシーケンスごとに1行の形式で、特定シーケンスにおけるI/Oに関する統計情報を表示します。

表27.33 pg_statio_all_sequencesビュー

<title><structname>pg_statio_all_sequences</structname> View</title>

Column Type 列 型

Description 説明

relid oid

OID of a sequence シーケンスのOIDです。

schemaname name

Name of the schema this sequence is in シーケンスが存在するスキーマの名前です。

relname name

Name of this sequence シーケンスの名前です。

blks_read bigint

Number of disk blocks read from this sequence シーケンスから読み取られたディスクブロック数です。

blks_hit bigint

Number of buffer hits in this sequence シーケンスにおけるバッファヒット数です。


27.2.24. pg_stat_user_functions #

The <structname>pg_stat_user_functions</structname> view will contain one row for each tracked function, showing statistics about executions of that function. The <xref linkend="guc-track-functions"/> parameter controls exactly which functions are tracked. pg_stat_user_functionsビューは追跡された関数ごとに1行の形式で、その関数の実行に関する統計情報を表示します。 track_functionsパラメータは関数が追跡されるかどうかを正確に制御します。

表27.34 pg_stat_user_functionsビュー

<title><structname>pg_stat_user_functions</structname> View</title>

Column Type 列 型

Description 説明

funcid oid

OID of a function 関数のOIDです。

schemaname name

Name of the schema this function is in 関数が存在するスキーマの名前です。

funcname name

Name of this function 関数の名前です。

calls bigint

Number of times this function has been called 関数が呼び出された回数です。

total_time double precision

Total time spent in this function and all other functions called by it, in milliseconds 関数とその関数から呼び出されるその他の関数で費やされた、ミリ秒単位の総時間です。

self_time double precision

Total time spent in this function itself, not including other functions called by it, in milliseconds その関数から呼び出されるその他の関数で費やされた時間を含まない、関数自身で費やされた、ミリ秒単位の総時間です。


27.2.25. pg_stat_slru #

<productname>PostgreSQL</productname> accesses certain on-disk information via <literal>SLRU</literal> (<firstterm>simple least-recently-used</firstterm>) caches. The <structname>pg_stat_slru</structname> view will contain one row for each tracked SLRU cache, showing statistics about access to cached pages. 《マッチ度[85.064935]》PostgreSQLSLRU(simple least-recently-used)キャッシュ経由で特定のディスク上の情報にアクセスします。 pg_stat_slruビューは、追跡されたSLRUキャッシュごとに1行の形式で、キャッシュされたページへのアクセスに関する統計情報を表示します。 《機械翻訳》PostgreSQLSLRU最小使用頻度の最近のもの)キャッシュを介してディスク上の特定の情報にアクセスします。 このビューには、追跡された各SLRUキャッシュに対して1行が含まれ、キャッシュされたページへのアクセスに関する統計が示されます。

For each <literal>SLRU</literal> cache that's part of the core server, there is a configuration parameter that controls its size, with the suffix <literal>_buffers</literal> appended. 《機械翻訳》コアサーバの一部である各SLRUキャッシュに対して、そのサイズを制御する構成パラメータがあり、接尾辞_buffersが付加されます。

表27.35 pg_stat_slruビュー

<title><structname>pg_stat_slru</structname> View</title>

Column Type 列 型

Description 説明

name text

Name of the SLRU SLRUの名前です。

blks_zeroed bigint

Number of blocks zeroed during initializations 初期化中にゼロにされたブロックの数です。

blks_hit bigint

Number of times disk blocks were found already in the SLRU, so that a read was not necessary (this only includes hits in the SLRU, not the operating system's file system cache) SLRUに既にあることが分かっているためにディスクブロックの読み取りが不要だった回数です(これにはSLRUにおけるヒットのみが含まれ、オペレーティングシステムのファイルシステムキャッシュは含まれません)。

blks_read bigint

Number of disk blocks read for this SLRU SLRUから読み取られたディスクブロック数です。

blks_written bigint

Number of disk blocks written for this SLRU SLRUに書き込まれたディスクブロック数です。

blks_exists bigint

Number of blocks checked for existence for this SLRU SLRUで存在を検査されたブロック数です。

flushes bigint

Number of flushes of dirty data for this SLRU SLRUでのダーティデータのフラッシュ数です。

truncates bigint

Number of truncates for this SLRU SLRUでの切り詰めの数です。

stats_reset timestamp with time zone

Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。


27.2.26. 統計情報関数 #

<title>Statistics Functions</title>

Other ways of looking at the statistics can be set up by writing queries that use the same underlying statistics access functions used by the standard views shown above. For details such as the functions' names, consult the definitions of the standard views. (For example, in <application>psql</application> you could issue <literal>\d+ pg_stat_activity</literal>.) The access functions for per-database statistics take a database OID as an argument to identify which database to report on. The per-table and per-index functions take a table or index OID. The functions for per-function statistics take a function OID. Note that only tables, indexes, and functions in the current database can be seen with these functions. 統計情報を参照する他の方法は、上述の標準ビューによって使用される基礎的な統計情報アクセス関数と同じ関数を使用した問い合わせを作成することで設定することができます。 こうした関数の名前などに関する詳細については、標準ビューの定義を参照してください。 (例えばpsqlでは\d+ pg_stat_activityを発行してください。) データベースごとの統計情報についてのアクセス関数は、どのデータベースに対して報告するのかを識別するためにデータベースのOIDを取ります。 テーブルごと、インデックスごとの関数はテーブルの、もしくはインデックスのOIDを取ります。 関数ごとの統計情報の関数は、関数のOIDを取ります。 これらの関数を使用して参照できるテーブルとインデックス、および関数は現在のデータベース内のものだけであることに注意してください。

Additional functions related to the cumulative statistics system are listed in <xref linkend="monitoring-stats-funcs-table"/>. その他の累積統計システムに関連した関数を表 27.36に示します。

表27.36 その他の統計情報関数

<title>Additional Statistics Functions</title>

Function 関数

Description 説明

pg_backend_pid () → integer

Returns the process ID of the server process attached to the current session. 現在のセッションにアタッチされたサーバプロセスのプロセスIDを返します。

pg_stat_get_activity ( integer ) → setof record

Returns a record of information about the backend with the specified process ID, or one record for each active backend in the system if <literal>NULL</literal> is specified. The fields returned are a subset of those in the <structname>pg_stat_activity</structname> view. 指定されたプロセスIDに該当するバックエンドの情報のレコードを、NULLが指定された場合はシステム上のアクティブな各バックエンドに関するレコードを返します。 返される情報内容はpg_stat_activityの一部と同じです。

pg_stat_get_snapshot_timestamp () → timestamp with time zone

Returns the timestamp of the current statistics snapshot, or NULL if no statistics snapshot has been taken. A snapshot is taken the first time cumulative statistics are accessed in a transaction if <varname>stats_fetch_consistency</varname> is set to <literal>snapshot</literal> 現在の統計スナップショットのタイムスタンプを返します。 統計スナップショットが取得されていない場合はNULLを返します。 stats_fetch_consistencysnapshotに設定されている場合は、トランザクションで累積統計に初めてアクセスしたときにスナップショットが取得されます。

pg_stat_get_xact_blocks_fetched ( oid ) → bigint

Returns the number of block read requests for table or index, in the current transaction. This number minus <function>pg_stat_get_xact_blocks_hit</function> gives the number of kernel <function>read()</function> calls; the number of actual physical reads is usually lower due to kernel-level buffering. 現在のトランザクションにおけるテーブルまたはインデックスについてのブロック読み取り要求の数を返します。 この数からpg_stat_get_xact_blocks_hitを引いた数がカーネルread()呼び出しの数になります。 実際の物理的な読み取り数は通常、カーネルレベルのバッファリングにより低くなります。

pg_stat_get_xact_blocks_hit ( oid ) → bigint

Returns the number of block read requests for table or index, in the current transaction, found in cache (not triggering kernel <function>read()</function> calls). 現在トランザクションのテーブルまたはインデックスについて、キャッシュで検出されたブロック読み取り要求の数を返します(カーネルread()呼び出しを引き起こしません)。

pg_stat_clear_snapshot () → void

Discards the current statistics snapshot or cached information. 現在の統計スナップショットまたはキャッシュされた情報を破棄します。

pg_stat_reset () → void

Resets all statistics counters for the current database to zero. 現在のデータベースに関する統計情報カウンタすべてをゼロにリセットします。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_shared ( [ target text DEFAULT NULL ] ) → void

Resets some cluster-wide statistics counters to zero, depending on the argument. <parameter>target</parameter> can be: 《機械翻訳》引数に応じて、クラスタ全体の統計カウンタをゼロにリセットします。 targetは以下のいずれかです。

  • <literal>archiver</literal>: Reset all the counters shown in the <structname>pg_stat_archiver</structname> view. 《機械翻訳》archiver: pg_stat_archiverビューに表示されるすべてのカウンタをリセットします。

  • <literal>bgwriter</literal>: Reset all the counters shown in the <structname>pg_stat_bgwriter</structname> view. 《機械翻訳》bgwriter: pg_stat_bgwriterビューに表示されるすべてのカウンタをリセットします。

  • <literal>checkpointer</literal>: Reset all the counters shown in the <structname>pg_stat_checkpointer</structname> view. 《機械翻訳》checkpointer: pg_stat_checkpointerビューに表示されるすべてのカウンタをリセットします。

  • <literal>io</literal>: Reset all the counters shown in the <structname>pg_stat_io</structname> view. 《機械翻訳》io: pg_stat_ioビューに表示されるすべてのカウンタをリセットします。

  • <literal>recovery_prefetch</literal>: Reset all the counters shown in the <structname>pg_stat_recovery_prefetch</structname> view. 《機械翻訳》recovery_prefetch: pg_stat_recovery_prefetchビューに表示されるすべてのカウンタをリセットします。

  • <literal>slru</literal>: Reset all the counters shown in the <structname>pg_stat_slru</structname> view. 《機械翻訳》slru: pg_stat_slruビューに示されたすべてのカウンタをリセットします。

  • <literal>wal</literal>: Reset all the counters shown in the <structname>pg_stat_wal</structname> view. 《機械翻訳》wal: pg_stat_walビューに表示されるすべてのカウンタをリセットします。

  • <literal>NULL</literal> or not specified: All the counters from the views listed above are reset. 《機械翻訳》NULLか、指定しない場合: 上記のビューのカウンタはすべてリセットされます。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_single_table_counters ( oid ) → void

Resets statistics for a single table or index in the current database or shared across all databases in the cluster to zero. 現在のデータベース内にある、ひとつのテーブルまたはインデックス、あるいはクラスタ内のすべてのデータベースで共有されている統計情報をゼロにリセットします。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_single_function_counters ( oid ) → void

Resets statistics for a single function in the current database to zero. 現在のデータベース内にある、ひとつの関数の統計情報をゼロにリセットします。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_slru ( [ target text DEFAULT NULL ] ) → void

Resets statistics to zero for a single SLRU cache, or for all SLRUs in the cluster. If <parameter>target</parameter> is <literal>NULL</literal> or is not specified, all the counters shown in the <structname>pg_stat_slru</structname> view for all SLRU caches are reset. The argument can be one of <literal>commit_timestamp</literal>, <literal>multixact_member</literal>, <literal>multixact_offset</literal>, <literal>notify</literal>, <literal>serializable</literal>, <literal>subtransaction</literal>, or <literal>transaction</literal> to reset the counters for only that entry. If the argument is <literal>other</literal> (or indeed, any unrecognized name), then the counters for all other SLRU caches, such as extension-defined caches, are reset. 《マッチ度[69.385027]》ひとつのSLRUキャッシュ、またはクラスタ内のすべてのSLRUの統計情報をゼロにリセットします。 引数がNULLであれば、pg_stat_slruビューで示されているすべてのSLRUキャッシュに対するカウンタがリセットされます。 引数は、そのエントリのみに対応するカウンタをリセットするようCommitTsMultiXactMemberMultiXactOffsetNotifySerialSubtransXactの1つを指定できます。 引数がother(実際のところは、認められていない名前であれば何でも)であれば、拡張が定義したキャッシュのような、それ以外のSLRUキャッシュに対するカウンタがリセットされます。 《機械翻訳》単一のSLRUキャッシュまたはクラスタ内のすべてのSLRUの統計情報をゼロにリセットします。 targetNULLの場合、または指定されていない場合、pg_stat_slruビューに示されるすべてのSLRUキャッシュのカウンタがリセットされます。 カウンタをリセットするエントリは、commit_timestampmultixact_membermultixact_offsetnotifyserializablesubtransactiontransactionのいずれかです。 引数がother (あるいは、認識できない名前) の場合、拡張定義されたキャッシュなど、他のすべてのSLRUキャッシュのカウンタはリセットされます。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_replication_slot ( text ) → void

Resets statistics of the replication slot defined by the argument. If the argument is <literal>NULL</literal>, resets statistics for all the replication slots. 引数で定義されたレプリケーションスロットの統計情報をリセットします。 引数がNULLの場合、すべてのレプリケーションスロットの統計情報をリセットします。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。

pg_stat_reset_subscription_stats ( oid ) → void

Resets statistics for a single subscription shown in the <structname>pg_stat_subscription_stats</structname> view to zero. If the argument is <literal>NULL</literal>, reset statistics for all subscriptions. pg_stat_subscription_statsビューに表示されている単一サブスクリプションの統計をゼロにリセットします。 引数がNULLの場合は、すべてのサブスクリプションの統計をリセットします。

This function is restricted to superusers by default, but other users can be granted EXECUTE to run the function. この関数はデフォルトでスーパーユーザに限定されていますが、関数を実行できるように他のユーザにEXECUTE権限を付与できます。


警告

Using <function>pg_stat_reset()</function> also resets counters that autovacuum uses to determine when to trigger a vacuum or an analyze. Resetting these counters can cause autovacuum to not perform necessary work, which can cause problems such as table bloat or out-dated table statistics. A database-wide <command>ANALYZE</command> is recommended after the statistics have been reset. pg_stat_reset()を使用すると、自動バキュームがバキュームまたはANALYZEを実行するタイミングを決定するために使用するカウンタもリセットされます。 これらのカウンタをリセットすると、自動バキュームが必要な作業を実行できなくなり、テーブルの膨張や期限切れのテーブル統計情報などの問題が発生する可能性があります。 統計情報がリセットになった後にデータベース全体でANALYZEを実行することをお勧めします。

<function>pg_stat_get_activity</function>, the underlying function of the <structname>pg_stat_activity</structname> view, returns a set of records containing all the available information about each backend process. Sometimes it may be more convenient to obtain just a subset of this information. In such cases, another set of per-backend statistics access functions can be used; these are shown in <xref linkend="monitoring-stats-backend-funcs-table"/>. These access functions use the session's backend ID number, which is a small integer (>= 0) that is distinct from the backend ID of any concurrent session, although a session's ID can be recycled as soon as it exits. The backend ID is used, among other things, to identify the session's temporary schema if it has one. The function <function>pg_stat_get_backend_idset</function> provides a convenient way to list all the active backends' ID numbers for invoking these functions. For example, to show the <acronym>PID</acronym>s and current queries of all backends: 《機械翻訳》pg_stat_get_activityは、pg_stat_activityビューの基礎となる関数で、各バックエンドプロセスについて利用可能な全ての情報を含むレコードの集合を返します。 場合によっては、この情報のサブセットだけを取得する方が便利な場合があります。 このような場合、別のバックエンド統計アクセス関数を使用することができます。 これらは表 27.37に示されています。 これらのアクセス関数は、セッションのバックエンドIDを使用します。 これは、任意の同時セッションのバックエンドIDとは異なる小さな整数(> = 0)です。 ただし、セッションのIDは、終了するとすぐに再利用できます。 バックエンドIDは、とりわけセッションの一時スキーマがある場合に、そのスキーマを識別するために使用されます。 関数pg_stat_get_backend_idsetは、これらの関数を呼び出すためにアクティブなバックエンドのID番号を一覧表示する便利な方法を提供します。 たとえば、すべてのバックエンドのPIDと現在の問い合わせを表示するには、以下のようにします。

SELECT pg_stat_get_backend_pid(backendid) AS pid,
       pg_stat_get_backend_activity(backendid) AS query
FROM pg_stat_get_backend_idset() AS backendid;

表27.37 バックエンド単位の統計情報関数

<title>Per-Backend Statistics Functions</title>

Function 関数

Description 説明

pg_stat_get_backend_activity ( integer ) → text

Returns the text of this backend's most recent query. バックエンドが最後に行った問い合わせテキストを返します。

pg_stat_get_backend_activity_start ( integer ) → timestamp with time zone

Returns the time when the backend's most recent query was started. バックエンドの最後の問い合わせが開始された時刻を返します。

pg_stat_get_backend_client_addr ( integer ) → inet

Returns the IP address of the client connected to this backend. バックエンドに接続したクライアントのIPアドレスを返します。

pg_stat_get_backend_client_port ( integer ) → integer

Returns the TCP port number that the client is using for communication. クライアントが通信に使用しているTCPポート番号を返します。

pg_stat_get_backend_dbid ( integer ) → oid

Returns the OID of the database this backend is connected to. バックエンドが接続するデータベースのOIDを返します。

pg_stat_get_backend_idset () → setof integer

Returns the set of currently active backend ID numbers. 現在アクティブなバックエンドID番号の集合を返します。

pg_stat_get_backend_pid ( integer ) → integer

Returns the process ID of this backend. バックエンドのプロセスIDを返します。

pg_stat_get_backend_start ( integer ) → timestamp with time zone

Returns the time when this process was started. プロセスが開始された時刻を返します。

pg_stat_get_backend_subxact ( integer ) → record

Returns a record of information about the subtransactions of the backend with the specified ID. The fields returned are <parameter>subxact_count</parameter>, which is the number of subtransactions in the backend's subtransaction cache, and <parameter>subxact_overflow</parameter>, which indicates whether the backend's subtransaction cache is overflowed or not. 指定されたIDを持つバックエンドのサブトランザクションの情報を含むレコードを返します。 返却されるフィールドは、バックエンドのサブトランザクションキャッシュ内のサブトランザクション数を示すsubxact_countと、バックエンドのサブトランザクションキャッシュがオーバーフローしているかどうかを示すsubxact_overflowです。

pg_stat_get_backend_userid ( integer ) → oid

Returns the OID of the user logged into this backend. バックエンドにログインしたユーザのOIDを返します。

pg_stat_get_backend_wait_event ( integer ) → text

Returns the wait event name if this backend is currently waiting, otherwise NULL. See <xref linkend="wait-event-activity-table"/> through <xref linkend="wait-event-timeout-table"/>. バックエンドが現在待機中であれば、待機イベント名を、さもなくばNULLを返します。 詳細は表 27.5から表 27.13までを参照してください。

pg_stat_get_backend_wait_event_type ( integer ) → text

Returns the wait event type name if this backend is currently waiting, otherwise NULL. See <xref linkend="wait-event-table"/> for details. バックエンドが現在待機中であれば、待機イベント型名を、さもなくばNULLを返します。 詳細については表 27.4を参照してください。

pg_stat_get_backend_xact_start ( integer ) → timestamp with time zone

Returns the time when the backend's current transaction was started. バックエンドの現在のトランザクションが開始された時刻を返します。