<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は他のサーバプロセスによって現在実行されている正確なコマンドなど現在システム内で起きていること、またシステム内にどんな他の接続が存在するかということについての動的情報を正確に報告する機能を持ちます。 これは累積統計システムから独立している機能です。
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
サブディレクトリに保存されます。
これにより、サーバの再起動後も統計情報を保持できます。
対照的に、クリーンでないシャットダウンから開始する場合(即時シャットダウン後、サーバクラッシュ、ベースバックアップから開始、ポイントインタイムリカバリなど)、すべての統計カウンタがリセットされます。
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_consistency
をsnapshot
に設定します。
ただし、不要な統計データをキャッシュするためのメモリ使用量が増加します。逆に、統計が一度しかアクセスされないことがわかっている場合は、アクセスされた統計のキャッシュは不要であり、stats_fetch_consistency
をnone
に設定することで回避できます。
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_tables
、pg_stat_xact_sys_tables
、pg_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 動的統計情報ビュー
ビュー名 | 説明 |
---|---|
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 収集済み統計情報ビュー
ビュー名 | 説明 |
---|---|
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_io
とpg_statio_
ビューの組み合わせは、バッファキャッシュの有効性を判断するのに役立ちます。
これらはキャッシュヒット率を計算するのに使用できます。
PostgreSQLのI/O統計は、I/Oを実行するためにカーネルが呼び出されたほとんどのインスタンスを取得しますが、ディスクから取得しなければならなかったデータと、カーネルページキャッシュにすでに存在していたデータとを区別しません。
ユーザは、データベースのI/Oパフォーマンスのより完全な全体像を得るために、PostgreSQLの統計ビューをオペレーティングシステムのユーティリティと組み合わせて使用することをお勧めします。
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of the database this backend is connected to バックエンドが接続するデータベースのOIDです。 |
Name of the database this backend is connected to バックエンドが接続するデータベースの名前です。 |
Process ID of this backend バックエンドのプロセスIDです。 |
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です。
|
OID of the user logged into this backend バックエンドにログインしたユーザのOIDです。 |
Name of the user logged into this backend バックエンドにログインしたユーザの名前です。 |
Name of the application that is connected to this backend バックエンドに接続したアプリケーションの名前です。 |
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ソケット経由で接続されたか、自動バキュームなど内部プロセスであることを示しています。 |
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.
|
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ソケットを使用する場合は |
Time when this process was started. For client backends, this is the time the client connected to the server. プロセスが開始した時刻です。 クライアントのバックエンドについては、クライアントがサーバに接続した時刻です。 |
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です。
現在の問い合わせがトランザクションの先頭である場合、この列は |
Time when the currently active query was started, or if
<structfield>state</structfield> is not <literal>active</literal>, when the last query
was started
現在活動中の問い合わせが開始した時刻です。もし |
Time when the <structfield>state</structfield> was last changed
|
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 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までを参照してください。 |
Current overall state of this backend. Possible values are: 現在のバックエンドの総体的な状態です。 以下のいずれかの値を取ることができます。
|
Top-level transaction identifier of this backend, if any; see <xref linkend="transaction-id"/>. もしあれば、このバックエンドの最上位のトランザクション識別子です。 66.1を参照してください。 |
The current backend's <literal>xmin</literal> horizon.
現在のバックエンドの |
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.
バックエンドの直近の問い合わせ識別子です。
|
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"/>.
バックエンドの最も最近の問い合わせテキストです。
|
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.
《機械翻訳》現在のバックエンドのタイプ。
可能な型は、 |
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_event
とstate
列は独立しています。
バックエンドがactive
状態である場合、いくつかのイベントではwaiting
かもしれませんし、そうでないかもしれません。
状態がactive
であり、wait_event
がNULLでない場合、問い合わせは実行中ですが、システム内のどこかでブロックされていることを意味します。
表27.4 待機イベント型
待機イベント型 | 説明 |
---|---|
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 Event | Description |
---|---|
ArchiverMain | Waiting in main loop of archiver process. |
AutovacuumMain | Waiting in main loop of autovacuum launcher process. |
BgwriterHibernate | Waiting in background writer process, hibernating. |
BgwriterMain | Waiting in main loop of background writer process. |
CheckpointerMain | Waiting in main loop of checkpointer process. |
LogicalApplyMain | Waiting in main loop of logical replication apply process. |
LogicalLauncherMain | Waiting in main loop of logical replication launcher process. |
LogicalParallelApplyMain | Waiting in main loop of logical replication parallel apply process. |
RecoveryWalStream | Waiting in main loop of startup process for WAL to arrive, during streaming recovery. |
ReplicationSlotsyncMain | Waiting in main loop of slot sync worker. |
ReplicationSlotsyncShutdown | Waiting for slot sync worker to shut down. |
SysloggerMain | Waiting in main loop of syslogger process. |
WalReceiverMain | Waiting in main loop of WAL receiver process. |
WalSenderMain | Waiting in main loop of WAL sender process. |
WalSummarizerWal | Waiting in WAL summarizer for more WAL to be generated. |
WalWriterMain | Waiting in main loop of WAL writer process. |
表27.6 Wait Events of Type Bufferpin
BufferPin Wait Event | Description |
---|---|
BufferPin | Waiting to acquire an exclusive pin on a buffer. |
表27.7 Wait Events of Type Client
Client Wait Event | Description |
---|---|
ClientRead | Waiting to read data from the client. |
ClientWrite | Waiting to write data to the client. |
GssOpenServer | Waiting to read data from the client while establishing a GSSAPI session. |
LibpqwalreceiverConnect | Waiting in WAL receiver to establish connection to remote server. |
LibpqwalreceiverReceive | Waiting in WAL receiver to receive data from remote server. |
SslOpenServer | Waiting for SSL while attempting connection. |
WaitForStandbyConfirmation | Waiting for WAL to be received and flushed by the physical standby. |
WalSenderWaitForWal | Waiting for WAL to be flushed in WAL sender process. |
WalSenderWriteData | Waiting for any activity when processing replies from WAL receiver in WAL sender process. |
表27.8 Wait Events of Type Extension
Extension Wait Event | Description |
---|---|
Extension | Waiting in an extension. |
表27.9 Wait Events of Type Io
IO Wait Event | Description |
---|---|
BasebackupRead | Waiting for base backup to read from a file. |
BasebackupSync | Waiting for data written by a base backup to reach durable storage. |
BasebackupWrite | Waiting for base backup to write to a file. |
BuffileRead | Waiting for a read from a buffered file. |
BuffileTruncate | Waiting for a buffered file to be truncated. |
BuffileWrite | Waiting for a write to a buffered file. |
ControlFileRead | Waiting for a read from the pg_control file. |
ControlFileSync | Waiting for the pg_control file to reach durable storage. |
ControlFileSyncUpdate | Waiting for an update to the pg_control file to reach durable storage. |
ControlFileWrite | Waiting for a write to the pg_control file. |
ControlFileWriteUpdate | Waiting for a write to update the pg_control file. |
CopyFileRead | Waiting for a read during a file copy operation. |
CopyFileWrite | Waiting for a write during a file copy operation. |
DataFileExtend | Waiting for a relation data file to be extended. |
DataFileFlush | Waiting for a relation data file to reach durable storage. |
DataFileImmediateSync | Waiting for an immediate synchronization of a relation data file to durable storage. |
DataFilePrefetch | Waiting for an asynchronous prefetch from a relation data file. |
DataFileRead | Waiting for a read from a relation data file. |
DataFileSync | Waiting for changes to a relation data file to reach durable storage. |
DataFileTruncate | Waiting for a relation data file to be truncated. |
DataFileWrite | Waiting for a write to a relation data file. |
DsmAllocate | Waiting for a dynamic shared memory segment to be allocated. |
DsmFillZeroWrite | Waiting to fill a dynamic shared memory backing file with zeroes. |
LockFileAddtodatadirRead | Waiting for a read while adding a line to the data directory lock file. |
LockFileAddtodatadirSync | Waiting for data to reach durable storage while adding a line to the data directory lock file. |
LockFileAddtodatadirWrite | Waiting for a write while adding a line to the data directory lock file. |
LockFileCreateRead | Waiting to read while creating the data directory lock file. |
LockFileCreateSync | Waiting for data to reach durable storage while creating the data directory lock file. |
LockFileCreateWrite | Waiting for a write while creating the data directory lock file. |
LockFileRecheckdatadirRead | Waiting for a read during recheck of the data directory lock file. |
LogicalRewriteCheckpointSync | Waiting for logical rewrite mappings to reach durable storage during a checkpoint. |
LogicalRewriteMappingSync | Waiting for mapping data to reach durable storage during a logical rewrite. |
LogicalRewriteMappingWrite | Waiting for a write of mapping data during a logical rewrite. |
LogicalRewriteSync | Waiting for logical rewrite mappings to reach durable storage. |
LogicalRewriteTruncate | Waiting for truncate of mapping data during a logical rewrite. |
LogicalRewriteWrite | Waiting for a write of logical rewrite mappings. |
RelationMapRead | Waiting for a read of the relation map file. |
RelationMapReplace | Waiting for durable replacement of a relation map file. |
RelationMapWrite | Waiting for a write to the relation map file. |
ReorderBufferRead | Waiting for a read during reorder buffer management. |
ReorderBufferWrite | Waiting for a write during reorder buffer management. |
ReorderLogicalMappingRead | Waiting for a read of a logical mapping during reorder buffer management. |
ReplicationSlotRead | Waiting for a read from a replication slot control file. |
ReplicationSlotRestoreSync | Waiting for a replication slot control file to reach durable storage while restoring it to memory. |
ReplicationSlotSync | Waiting for a replication slot control file to reach durable storage. |
ReplicationSlotWrite | Waiting for a write to a replication slot control file. |
SlruFlushSync | Waiting for SLRU data to reach durable storage during a checkpoint or database shutdown. |
SlruRead | Waiting for a read of an SLRU page. |
SlruSync | Waiting for SLRU data to reach durable storage following a page write. |
SlruWrite | Waiting for a write of an SLRU page. |
SnapbuildRead | Waiting for a read of a serialized historical catalog snapshot. |
SnapbuildSync | Waiting for a serialized historical catalog snapshot to reach durable storage. |
SnapbuildWrite | Waiting for a write of a serialized historical catalog snapshot. |
TimelineHistoryFileSync | Waiting for a timeline history file received via streaming replication to reach durable storage. |
TimelineHistoryFileWrite | Waiting for a write of a timeline history file received via streaming replication. |
TimelineHistoryRead | Waiting for a read of a timeline history file. |
TimelineHistorySync | Waiting for a newly created timeline history file to reach durable storage. |
TimelineHistoryWrite | Waiting for a write of a newly created timeline history file. |
TwophaseFileRead | Waiting for a read of a two phase state file. |
TwophaseFileSync | Waiting for a two phase state file to reach durable storage. |
TwophaseFileWrite | Waiting for a write of a two phase state file. |
VersionFileSync | Waiting for the version file to reach durable storage while creating a database. |
VersionFileWrite | Waiting for the version file to be written while creating a database. |
WalsenderTimelineHistoryRead | Waiting for a read from a timeline history file during a walsender timeline command. |
WalBootstrapSync | Waiting for WAL to reach durable storage during bootstrapping. |
WalBootstrapWrite | Waiting for a write of a WAL page during bootstrapping. |
WalCopyRead | Waiting for a read when creating a new WAL segment by copying an existing one. |
WalCopySync | Waiting for a new WAL segment created by copying an existing one to reach durable storage. |
WalCopyWrite | Waiting for a write when creating a new WAL segment by copying an existing one. |
WalInitSync | Waiting for a newly initialized WAL file to reach durable storage. |
WalInitWrite | Waiting for a write while initializing a new WAL file. |
WalRead | Waiting for a read from a WAL file. |
WalSummaryRead | Waiting for a read from a WAL summary file. |
WalSummaryWrite | Waiting for a write to a WAL summary file. |
WalSync | Waiting for a WAL file to reach durable storage. |
WalSyncMethodAssign | Waiting for data to reach durable storage while assigning a new WAL sync method. |
WalWrite | Waiting for a write to a WAL file. |
表27.10 Wait Events of Type Ipc
IPC Wait Event | Description |
---|---|
AppendReady | Waiting for subplan nodes of an Append plan node to be ready. |
ArchiveCleanupCommand | Waiting for archive_cleanup_command to complete. |
ArchiveCommand | Waiting for archive_command to complete. |
BackendTermination | Waiting for the termination of another backend. |
BackupWaitWalArchive | Waiting for WAL files required for a backup to be successfully archived. |
BgworkerShutdown | Waiting for background worker to shut down. |
BgworkerStartup | Waiting for background worker to start up. |
BtreePage | Waiting for the page number needed to continue a parallel B-tree scan to become available. |
BufferIo | Waiting for buffer I/O to complete. |
CheckpointDelayComplete | Waiting for a backend that blocks a checkpoint from completing. |
CheckpointDelayStart | Waiting for a backend that blocks a checkpoint from starting. |
CheckpointDone | Waiting for a checkpoint to complete. |
CheckpointStart | Waiting for a checkpoint to start. |
ExecuteGather | Waiting for activity from a child process while executing a Gather plan node. |
HashBatchAllocate | Waiting for an elected Parallel Hash participant to allocate a hash table. |
HashBatchElect | Waiting to elect a Parallel Hash participant to allocate a hash table. |
HashBatchLoad | Waiting for other Parallel Hash participants to finish loading a hash table. |
HashBuildAllocate | Waiting for an elected Parallel Hash participant to allocate the initial hash table. |
HashBuildElect | Waiting to elect a Parallel Hash participant to allocate the initial hash table. |
HashBuildHashInner | Waiting for other Parallel Hash participants to finish hashing the inner relation. |
HashBuildHashOuter | Waiting for other Parallel Hash participants to finish partitioning the outer relation. |
HashGrowBatchesDecide | Waiting to elect a Parallel Hash participant to decide on future batch growth. |
HashGrowBatchesElect | Waiting to elect a Parallel Hash participant to allocate more batches. |
HashGrowBatchesFinish | Waiting for an elected Parallel Hash participant to decide on future batch growth. |
HashGrowBatchesReallocate | Waiting for an elected Parallel Hash participant to allocate more batches. |
HashGrowBatchesRepartition | Waiting for other Parallel Hash participants to finish repartitioning. |
HashGrowBucketsElect | Waiting to elect a Parallel Hash participant to allocate more buckets. |
HashGrowBucketsReallocate | Waiting for an elected Parallel Hash participant to finish allocating more buckets. |
HashGrowBucketsReinsert | Waiting for other Parallel Hash participants to finish inserting tuples into new buckets. |
LogicalApplySendData | Waiting for a logical replication leader apply process to send data to a parallel apply process. |
LogicalParallelApplyStateChange | Waiting for a logical replication parallel apply process to change state. |
LogicalSyncData | Waiting for a logical replication remote server to send data for initial table synchronization. |
LogicalSyncStateChange | Waiting for a logical replication remote server to change state. |
MessageQueueInternal | Waiting for another process to be attached to a shared message queue. |
MessageQueuePutMessage | Waiting to write a protocol message to a shared message queue. |
MessageQueueReceive | Waiting to receive bytes from a shared message queue. |
MessageQueueSend | Waiting to send bytes to a shared message queue. |
MultixactCreation | Waiting for a multixact creation to complete. |
ParallelBitmapScan | Waiting for parallel bitmap scan to become initialized. |
ParallelCreateIndexScan | Waiting for parallel CREATE INDEX workers to finish heap scan. |
ParallelFinish | Waiting for parallel workers to finish computing. |
ProcarrayGroupUpdate | Waiting for the group leader to clear the transaction ID at transaction end. |
ProcSignalBarrier | Waiting for a barrier event to be processed by all backends. |
Promote | Waiting for standby promotion. |
RecoveryConflictSnapshot | Waiting for recovery conflict resolution for a vacuum cleanup. |
RecoveryConflictTablespace | Waiting for recovery conflict resolution for dropping a tablespace. |
RecoveryEndCommand | Waiting for recovery_end_command to complete. |
RecoveryPause | Waiting for recovery to be resumed. |
ReplicationOriginDrop | Waiting for a replication origin to become inactive so it can be dropped. |
ReplicationSlotDrop | Waiting for a replication slot to become inactive so it can be dropped. |
RestoreCommand | Waiting for restore_command to complete. |
SafeSnapshot | Waiting to obtain a valid snapshot for a READ ONLY DEFERRABLE transaction. |
SyncRep | Waiting for confirmation from a remote server during synchronous replication. |
WalReceiverExit | Waiting for the WAL receiver to exit. |
WalReceiverWaitStart | Waiting for startup process to send initial data for streaming replication. |
WalSummaryReady | Waiting for a new WAL summary to be generated. |
XactGroupUpdate | Waiting for the group leader to update transaction status at transaction end. |
表27.11 Wait Events of Type Lock
Lock Wait Event | Description |
---|---|
advisory | Waiting to acquire an advisory user lock. |
applytransaction | Waiting to acquire a lock on a remote transaction being applied by a logical replication subscriber. |
extend | Waiting to extend a relation. |
frozenid | Waiting to update pg_database .datfrozenxid and pg_database .datminmxid . |
object | Waiting to acquire a lock on a non-relation database object. |
page | Waiting to acquire a lock on a page of a relation. |
relation | Waiting to acquire a lock on a relation. |
spectoken | Waiting to acquire a speculative insertion lock. |
transactionid | Waiting for a transaction to finish. |
tuple | Waiting to acquire a lock on a tuple. |
userlock | Waiting to acquire a user lock. |
virtualxid | Waiting to acquire a virtual transaction ID lock; see 66.1. |
表27.12 Wait Events of Type Lwlock
LWLock Wait Event | Description |
---|---|
AddinShmemInit | Waiting to manage an extension's space allocation in shared memory. |
AutoFile | Waiting to update the postgresql.auto.conf file. |
Autovacuum | Waiting to read or update the current state of autovacuum workers. |
AutovacuumSchedule | Waiting to ensure that a table selected for autovacuum still needs vacuuming. |
BackgroundWorker | Waiting to read or update background worker state. |
BtreeVacuum | Waiting to read or update vacuum-related information for a B-tree index. |
BufferContent | Waiting to access a data page in memory. |
BufferMapping | Waiting to associate a data block with a buffer in the buffer pool. |
CheckpointerComm | Waiting to manage fsync requests. |
CommitTs | Waiting to read or update the last value set for a transaction commit timestamp. |
CommitTsBuffer | Waiting for I/O on a commit timestamp SLRU buffer. |
CommitTsSLRU | Waiting to access the commit timestamp SLRU cache. |
ControlFile | Waiting to read or update the pg_control file or create a new WAL file. |
DSMRegistry | Waiting to read or update the dynamic shared memory registry. |
DSMRegistryDSA | Waiting to access dynamic shared memory registry's dynamic shared memory allocator. |
DSMRegistryHash | Waiting to access dynamic shared memory registry's shared hash table. |
DynamicSharedMemoryControl | Waiting to read or update dynamic shared memory allocation information. |
InjectionPoint | Waiting to read or update information related to injection points. |
LockFastPath | Waiting to read or update a process' fast-path lock information. |
LockManager | Waiting to read or update information about 「heavyweight」 locks. |
LogicalRepLauncherDSA | Waiting to access logical replication launcher's dynamic shared memory allocator. |
LogicalRepLauncherHash | Waiting to access logical replication launcher's shared hash table. |
LogicalRepWorker | Waiting to read or update the state of logical replication workers. |
MultiXactGen | Waiting to read or update shared multixact state. |
MultiXactMemberBuffer | Waiting for I/O on a multixact member SLRU buffer. |
MultiXactMemberSLRU | Waiting to access the multixact member SLRU cache. |
MultiXactOffsetBuffer | Waiting for I/O on a multixact offset SLRU buffer. |
MultiXactOffsetSLRU | Waiting to access the multixact offset SLRU cache. |
MultiXactTruncation | Waiting to read or truncate multixact information. |
NotifyBuffer | Waiting for I/O on a NOTIFY message SLRU buffer. |
NotifyQueue | Waiting to read or update NOTIFY messages. |
NotifyQueueTail | Waiting to update limit on NOTIFY message storage. |
NotifySLRU | Waiting to access the NOTIFY message SLRU cache. |
OidGen | Waiting to allocate a new OID. |
ParallelAppend | Waiting to choose the next subplan during Parallel Append plan execution. |
ParallelHashJoin | Waiting to synchronize workers during Parallel Hash Join plan execution. |
ParallelQueryDSA | Waiting for parallel query dynamic shared memory allocation. |
ParallelVacuumDSA | Waiting for parallel vacuum dynamic shared memory allocation. |
PerSessionDSA | Waiting for parallel query dynamic shared memory allocation. |
PerSessionRecordType | Waiting to access a parallel query's information about composite types. |
PerSessionRecordTypmod | Waiting to access a parallel query's information about type modifiers that identify anonymous record types. |
PerXactPredicateList | Waiting to access the list of predicate locks held by the current serializable transaction during a parallel query. |
PgStatsData | Waiting for shared memory stats data access. |
PgStatsDSA | Waiting for stats dynamic shared memory allocator access. |
PgStatsHash | Waiting for stats shared memory hash table access. |
PredicateLockManager | Waiting to access predicate lock information used by serializable transactions. |
ProcArray | Waiting to access the shared per-process data structures (typically, to get a snapshot or report a session's transaction ID). |
RelationMapping | Waiting to read or update a pg_filenode.map file (used to track the filenode assignments of certain system catalogs). |
RelCacheInit | Waiting to read or update a pg_internal.init relation cache initialization file. |
ReplicationOrigin | Waiting to create, drop or use a replication origin. |
ReplicationOriginState | Waiting to read or update the progress of one replication origin. |
ReplicationSlotAllocation | Waiting to allocate or free a replication slot. |
ReplicationSlotControl | Waiting to read or update replication slot state. |
ReplicationSlotIO | Waiting for I/O on a replication slot. |
SerialBuffer | Waiting for I/O on a serializable transaction conflict SLRU buffer. |
SerialControl | Waiting to read or update shared pg_serial state. |
SerializableFinishedList | Waiting to access the list of finished serializable transactions. |
SerializablePredicateList | Waiting to access the list of predicate locks held by serializable transactions. |
SerializableXactHash | Waiting to read or update information about serializable transactions. |
SerialSLRU | Waiting to access the serializable transaction conflict SLRU cache. |
SharedTidBitmap | Waiting to access a shared TID bitmap during a parallel bitmap index scan. |
SharedTupleStore | Waiting to access a shared tuple store during parallel query. |
ShmemIndex | Waiting to find or allocate space in shared memory. |
SInvalRead | Waiting to retrieve messages from the shared catalog invalidation queue. |
SInvalWrite | Waiting to add a message to the shared catalog invalidation queue. |
SubtransBuffer | Waiting for I/O on a sub-transaction SLRU buffer. |
SubtransSLRU | Waiting to access the sub-transaction SLRU cache. |
SyncRep | Waiting to read or update information about the state of synchronous replication. |
SyncScan | Waiting to select the starting location of a synchronized table scan. |
TablespaceCreate | Waiting to create or drop a tablespace. |
TwoPhaseState | Waiting to read or update the state of prepared transactions. |
WaitEventCustom | Waiting to read or update custom wait events information. |
WALBufMapping | Waiting to replace a page in WAL buffers. |
WALInsert | Waiting to insert WAL data into a memory buffer. |
WALSummarizer | Waiting to read or update WAL summarization state. |
WALWrite | Waiting for WAL buffers to be written to disk. |
WrapLimitsVacuum | Waiting to update limits on transaction id and multixact consumption. |
XactBuffer | Waiting for I/O on a transaction status SLRU buffer. |
XactSLRU | Waiting to access the transaction status SLRU cache. |
XactTruncation | Waiting to execute pg_xact_status or update the oldest transaction ID available to it. |
XidGen | Waiting to allocate a new transaction ID. |
表27.13 Wait Events of Type Timeout
Timeout Wait Event | Description |
---|---|
BaseBackupThrottle | Waiting during base backup when throttling activity. |
CheckpointWriteDelay | Waiting between writes while performing a checkpoint. |
PgSleep | Waiting due to a call to pg_sleep or a sibling function. |
RecoveryApplyDelay | Waiting to apply WAL during recovery because of a delay setting. |
RecoveryRetrieveRetryInterval | Waiting during recovery when WAL data is not available from any source (pg_wal , archive or stream). |
RegisterSyncRequest | Waiting while sending synchronization requests to the checkpointer, because the request queue is full. |
SpinDelay | Waiting while acquiring a contended spinlock. |
VacuumDelay | Waiting in a cost-based vacuum delay point. |
VacuumTruncate | Waiting to acquire an exclusive lock to truncate off any empty pages at the end of a table vacuumed. |
WalSummarizerError | Waiting 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
」と報告されることがあります。
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
ビュー
Column Type 列 型 Description 説明 |
---|
Process ID of a WAL sender process WAL送信プロセスのプロセスIDです。 |
OID of the user logged into this WAL sender process WAL送信プロセスにログインしたユーザのOIDです。 |
Name of the user logged into this WAL sender process WAL送信プロセスにログインしたユーザの名前です。 |
Name of the application that is connected to this WAL sender WAL送信処理に接続したアプリケーションの名前です。 |
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ソケット経由で接続したことを示します。 |
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.
|
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ソケットを使用する場合は |
Time when this process was started, i.e., when the client connected to this WAL sender プロセスが開始、つまりクライアントがWAL送信処理に接続した時刻です。 |
This standby's <literal>xmin</literal> horizon reported
by <xref linkend="guc-hot-standby-feedback"/>.
hot_standby_feedbackにより報告されたこのスタンバイの |
Current WAL sender state. Possible values are: WAL送信サーバの現在の状態です。 取り得る値は以下の通りです。
|
Last write-ahead log location sent on this connection この接続で送信された最後の先行書き込みログの位置です。 |
Last write-ahead log location written to disk by this standby server このスタンバイサーバによってディスクに書き出された最後の先行書き込みログの位置です。 |
Last write-ahead log location flushed to disk by this standby server このスタンバイサーバによってディスクにフラッシュされた最後の先行書き込みログの位置です。 |
Last write-ahead log location replayed into the database on this standby server このスタンバイサーバ上のデータベースに再生された最後の先行書き込みログの位置です。 |
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をローカルにフラッシュしてから、このスタンバイサーバがそれを書き出した(が、まだフラッシュしたり適用したりしていない)ことの通知を受け取るまでの経過時間です。
このサーバが同期スタンバイとして設定されているとして、コミット時に |
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をローカルにフラッシュしてから、このスタンバイサーバがそれを書き出してフラッシュした(が、まだ適用していない)ことの通知を受け取るまでの経過時間です。
このサーバが同期スタンバイとして設定されているとして、コミット時に |
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をローカルにフラッシュしてから、このスタンバイサーバがそれを書き出し、フラッシュし、そして適用したことの通知を受け取るまでの経過時間です。
このサーバが同期スタンバイとして設定されているとして、コミット時に |
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. 優先度に基づく同期レプリケーションで、このスタンバイサーバが同期スタンバイとして選択される優先度です。 クォーラムに基づく同期レプリケーションでは効果がありません。 |
Synchronous state of this standby server. Possible values are: このスタンバイサーバの同期状態です。 取り得る値は以下の通りです。
|
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に戻ります。
監視システムでは、これをデータなしとする、ゼロとする、あるいは最後の既知の値を表示し続けるという選択をすることになります。
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
ビュー
Column Type 列 型 Description 説明 |
---|
A unique, cluster-wide identifier for the replication slot クラスタ全体で一意なレプリケーションスロットの識別子です。 |
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からの変更をデコードするために論理デコードによって使用されるメモリが |
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から変更をデコードしている間に、トランザクションがディスクにあふれた回数です。 このカウンタは、トランザクションがあふれるたびに増分され、同じトランザクションが複数回あふれることもあります。 |
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を測定し |
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からの変更をデコードするために論理デコードが使用するメモリが |
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からの変更をデコードしている間に、進行中のトランザクションがデコード出力プラグインにストリーミングされた回数です。 このカウンタは、トランザクションがストリーミングされるたびに増分され、同じトランザクションが複数回ストリーミングされる可能性があります。 |
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からの変更をデコードしている間に、進行中のトランザクションをデコード出力プラグインにストリーミングするためにデコードされたトランザクションデータ量です。
このカウンタと他のストリーミングカウンタは、 |
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. このスロットのデコード出力プラグインに送信されたデコードされたトランザクション数です。 これはトップレベルのトランザクションのみ数えられ、サブトランザクションは数えられません。 これには、ストリーミングされたトランザクションやあふれたトランザクションが含まれることに注意してください。 |
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からの変更をデコードしながら、デコード出力プラグインにトランザクションを送信するためにデコードされたトランザクションデータ量です。 これには、ストリーミングされたデータやあふれたデータが含まれることに注意してください。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
Process ID of the WAL receiver process WALレシーバプロセスのプロセスIDです。 |
Activity status of the WAL receiver process WALレシーバプロセスの活動状態です。 |
First write-ahead log location used when WAL receiver is started WALレシーバが開始された時に使われる先行書き込みログの最初の位置です。 |
First timeline number used when WAL receiver is started WALレシーバが開始された時に使われる初期タイムライン番号です。 |
Last write-ahead log location already received and written to disk, but not flushed. This should not be used for data integrity checks. すでに受信し、ディスクに書き出されたもののまだフラッシュされていない先行書き込みログの最新位置です。 これはデータの完全性の確認のためには使うべきではありません。 |
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レシーバが開始された時に使用される、最初のログ位置です。 |
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レシーバが開始された時に使用される、最初のログ位置のタイムライン番号です。 |
Send time of last message received from origin WAL sender オリジンWAL送信サーバから受け取った最後のメッセージの送信時刻です。 |
Receipt time of last message received from origin WAL sender オリジンWAL送信サーバから受け取った最後のメッセージの受信時刻です。 |
Last write-ahead log location reported to origin WAL sender オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。 |
Time of last write-ahead log location reported to origin WAL sender オリジンWAL送信サーバへ最新の先行書き込みログ位置が報告された時間です。 |
Replication slot name used by this WAL receiver WALレシーバによって使用されたレプリケーションスロット名です。 |
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ソケットで接続している場合はディレクトリのパスです。
(パスは、常に |
Port number of the <productname>PostgreSQL</productname> instance this WAL receiver is connected to. WALレシーバが接続しているPostgreSQLインスタンスのポート番号です。 |
Connection string used by this WAL receiver, with security-sensitive fields obfuscated. セキュリティに重要な値が難読化された文字列を含む、WALレシーバによって使用された接続文字列です。 |
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_distance
、block_distance
、io_depth
の列は現在の値を示し、他の列はpg_stat_reset_shared
関数でリセット可能な累積カウンタを示します。
表27.17 pg_stat_recovery_prefetch
ビュー
Column Type 列 型 Description 説明 |
---|
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
Number of blocks prefetched because they were not in the buffer pool バッファプールになかったためにプリフェッチされたブロックの数です。 |
Number of blocks not prefetched because they were already in the buffer pool すでにバッファプールにあったためプリフェッチされなかったブロックの数です。 |
Number of blocks not prefetched because they would be zero-initialized ゼロで初期化されるためプリフェッチされなかったブロックの数です。 |
Number of blocks not prefetched because they didn't exist yet まだ存在しなかったためにプリフェッチされなかったブロックの数です。 |
Number of blocks not prefetched because a full page image was included in the WAL フルページイメージがWALに含まれていたためにプリフェッチされなかったブロックの数です。 |
Number of blocks not prefetched because they were already recently prefetched すでに最近プリフェッチされていたためにプリフェッチされなかったブロックの数です。 |
How many bytes ahead the prefetcher is looking プリフェッチャーが参照しているバイト数です。 |
How many blocks ahead the prefetcher is looking プリフェッチャーが参照している前方のブロック数です。 |
How many prefetches have been initiated but are not yet known to have completed 開始されたがまだ完了していないプリフェッチの数です。 |
pg_stat_subscription
#表27.18 pg_stat_subscription
ビュー
Column Type 列 型 Description 説明 |
---|
OID of the subscription サブスクリプションのOIDです。 |
Name of the subscription サブスクリプションの名前です。 |
Type of the subscription worker process. Possible types are
<literal>apply</literal>, <literal>parallel apply</literal>, and
<literal>table synchronization</literal>.
《機械翻訳》サブスクリプションワーカープロセスの型。
可能な型は |
Process ID of the subscription worker process サブスクリプションのワーカープロセスのプロセスIDです。 |
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。 |
OID of the relation that the worker is synchronizing; NULL for the leader apply worker and parallel apply workers ワーカーが同期しているリレーションのOIDです。リーダー適用ワーカーとパラレル適用ワーカーの場合はNULLです。 |
Last write-ahead log location received, the initial value of this field being 0; NULL for parallel apply workers 最後に受け取った先行書き込みログ位置です。このフィールドの初期値は0です。 パラレル適用ワーカーではNULLです。 |
Send time of last message received from origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバから受け取った最後のメッセージの送信時刻です。パラレル適用ワーカーの場合はNULLです。 |
Receipt time of last message received from origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバから受け取った最後のメッセージの受信時刻です。パラレル適用ワーカーの場合はNULLです。 |
Last write-ahead log location reported to origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。パラレル適用ワーカーの場合はNULLです。 |
Time of last write-ahead log location reported to origin WAL sender; NULL for parallel apply workers オリジンWAL送信サーバに最後に報告された先行書き込みログ位置です。パラレル適用ワーカーの場合はNULLです。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of the subscription サブスクリプションのOIDです。 |
Name of the subscription サブスクリプションの名前です。 |
Number of times an error occurred while applying changes 変更の適用中にエラーが発生した回数です。 |
Number of times an error occurred during the initial table synchronization 初期テーブル同期中にエラーが発生した回数です。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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_replication
とpid
列で結合することで、接続に関するより詳細な情報を取得できます。
表27.20 pg_stat_ssl
ビュー
Column Type 列 型 Description 説明 |
---|
Process ID of a backend or WAL sender process バックエンドプロセスまたはWAL送信プロセスのプロセスIDです。 |
True if SSL is used on this connection この接続でSSLが使用されていれば真になります。 |
Version of SSL in use, or NULL if SSL is not in use on this connection 使用されているSSLのバージョンです。この接続でSSLが使用されていなければNULLになります。 |
Name of SSL cipher in use, or NULL if SSL is not in use on this connection 使用されているSSL暗号の名前です。この接続でSSLが使用されていなければNULLになります。 |
Number of bits in the encryption algorithm used, or NULL if SSL is not used on this connection 使用されている暗号アルゴリズムのビット数です。この接続でSSLが使用されていなければNULLになります。 |
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フィールドが |
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になります。 証明書のシリアル番号と証明書発行者の組み合わせは(発行者が誤ってシリアル番号を再使用しない限り)証明書を一意に識別します。 |
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になります。
このフィールドは |
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_activity
やpg_stat_replication
とpid
列で結合できます。
表27.21 pg_stat_gssapi
ビュー
Column Type 列 型 Description 説明 |
---|
Process ID of a backend バックエンドのプロセスIDです。 |
True if GSSAPI authentication was used for this connection この接続にGSSAPI認証が使われていたなら真です。 |
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です。
このフィールドはプリンシパルが |
True if GSSAPI encryption is in use on this connection この接続でGSSAPI暗号化が使われているなら真です。 |
True if GSSAPI credentials were delegated on this connection. この接続でGSSAPI認証情報が委任されていた場合は真です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
Number of WAL files that have been successfully archived アーカイブに成功したWALファイルの数です。 |
Name of the WAL file most recently successfully archived 最後にアーカイブに成功したWALファイルの名前です。 |
Time of the most recent successful archive operation 最後にアーカイブに成功した操作の時刻です。 |
Number of failed attempts for archiving WAL files WALファイルのアーカイブに失敗した回数です。 |
Name of the WAL file of the most recent failed archival operation 最後にアーカイブ操作に失敗したWALファイルの名前です。 |
Time of the most recent failed archival operation 最後にアーカイブ操作に失敗した時刻です。 |
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
より古いすべてのファイルも正常にアーカイブされたと考えるのは安全ではありません。
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 説明 |
---|
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.
バックエンドのタイプです(たとえばバックグラウンドワーカー、自動バキュームワーカーなど)。
|
Target object of an I/O operation. Possible values are: I/O操作のターゲットオブジェクトです。 可能な値は次のとおりです。
|
The context of an I/O operation. Possible values are: I/O操作のコンテキストです。 可能な値は次のとおりです。
|
Number of read operations, each of the size specified in
<varname>op_bytes</varname>.
|
Time spent in read operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 読み取り操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ) |
Number of write operations, each of the size specified in
<varname>op_bytes</varname>.
|
Time spent in write operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 書き込み操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ) |
Number of units of size <varname>op_bytes</varname> which the process
requested the kernel write out to permanent storage.
プロセスがカーネルに永続的な記憶域への書き出しを要求した |
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が有効な場合。そうでない場合はゼロ)。 これには、書き出し要求の待ち時間と、書き出しデータの書き出しに費やした時間が含まれます。 |
Number of relation extend operations, each of the size specified in
<varname>op_bytes</varname>.
|
Time spent in extend operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) 拡張操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ) |
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.
リレーションデータの読み込み、書き込み、拡張は、構築時パラメータ |
The number of times a desired block was found in a shared buffer. 共有バッファ内で所望のブロックが見つかった回数です。 |
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.
|
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.
共有バッファ以外のサイズ制限付きリングバッファ内の既存のバッファが、 |
Number of <literal>fsync</literal> calls. These are only tracked in
<varname>context</varname> <literal>normal</literal>.
|
Time spent in fsync operations in milliseconds (if <xref linkend="guc-track-io-timing"/> is enabled, otherwise zero) fsync操作に費やした時間です(ミリ秒単位)。(track_io_timingが有効な場合。それ以外はゼロ) |
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
されないので、fsyncs
はobject
temp relation
に対してNULLになります。
また、バックグラウンドライタは読み取りを行わないので、backend_type
がtemp 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操作と組み合わせて参照する際には注意が必要です。
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
ビュー
Column Type 列 型 Description 説明 |
---|
Number of buffers written by the background writer バックグラウンドライタにより書き出されたバッファ数です。 |
Number of times the background writer stopped a cleaning scan because it had written too many buffers バックグラウンドライタが書き出したバッファ数が多過ぎたために、整理用スキャンを停止した回数です。 |
Number of buffers allocated 割当られたバッファ数です。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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 説明 |
---|
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 《機械翻訳》タイムアウト.ノートのためにスケジュールされたチェックポイントの数。 最後のチェックポイント以降、スキップされたがアイドル状態の場合、チェックポイントはサーバである可能性があります。 この値には、完了したチェックポイントとスキップされたのチェックポイントの両方が含まれます。 |
Number of requested checkpoints that have been performed これまでに実行された、要求されたチェックポイントの個数です。 |
Number of scheduled restartpoints due to timeout or after a failed attempt to perform it 《機械翻訳》タイムアウトまたは再起動の試行に失敗したためにスケジュールされた再起動ポイントの数。 |
Number of requested restartpoints 《機械翻訳》要求された再起動ポイントの数。 |
Number of restartpoints that have been performed 《マッチ度[62.500000]》これまでに実行された、要求されたチェックポイントの個数です。 《機械翻訳》実行された再起動ポイントの数。 |
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]》チェックポイント処理におけるディスクにファイルを書き出す部分に費やされた、ミリ秒単位の総時間です。 《機械翻訳》ファイルがディスクに書き込まれるチェックポイントおよび再開ポイントの処理に費やされた合計時間(ミリ秒単位)。 |
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]》チェックポイント処理におけるディスクにファイルを同期する部分に費やされた、ミリ秒単位の総時間です。 《機械翻訳》ファイルがディスクに同期化されるチェックポイントおよび再起動ポイントの処理に費やされた合計時間(ミリ秒単位)。 |
Number of buffers written during checkpoints and restartpoints 《マッチ度[59.677419]》チェックポイント期間に書き出されたバッファ数です。 《機械翻訳》チェックポイントおよび再起動ポイントで書き込まれたバッファ数。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
Total number of WAL records generated 生成されたWALレコードの総数です。 |
Total number of WAL full page images generated 生成されたWALフルページイメージの総数です。 |
Total amount of WAL generated in bytes 生成されたWALのバイト単位の総量です。 |
Number of times WAL data was written to disk because WAL buffers became full WALバッファが満杯になったため、WALデータがディスクに書き込まれた回数です。 |
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バッファが |
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ファイルが |
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>.
|
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).
|
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of this database, or 0 for objects belonging to a shared relation データベースのOIDです。共有リレーションに属するオブジェクトについては0になります。 |
Name of this database, or <literal>NULL</literal> for shared
objects.
データベース名です。共有オブジェクトについては |
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.
現在データベースに接続しているバックエンドの個数です。共有オブジェクトについては |
Number of transactions in this database that have been committed データベース内でコミットされたトランザクション数です。 |
Number of transactions in this database that have been rolled back データベース内でロールバックされたトランザクション数です。 |
Number of disk blocks read in this database データベース内で読み取られたディスクブロック数です。 |
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のバッファキャッシュにおけるヒットのみが含まれ、オペレーティングシステムのファイルシステムキャッシュは含まれません)。 |
Number of live rows fetched by sequential scans and index entries returned by index scans in this database シーケンシャルスキャンとこのデータベース内のインデックススキャンによって返されたインデックスエントリから取り出された有効な行数です。 |
Number of live rows fetched by index scans in this database データベース内のインデックススキャンで取り出された有効な行数です。 |
Number of rows inserted by queries in this database データベース内の問い合わせで挿入された行数です。 |
Number of rows updated by queries in this database データベース内の問い合わせで更新された行数です。 |
Number of rows deleted by queries in this database データベース内の問い合わせで削除された行数です。 |
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.)
データベース内のリカバリで競合したためキャンセルされた問い合わせ数です。
(競合はスタンバイサーバ上でのみ起こります。
詳細については |
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の設定に関わらず、すべての一時ファイルが計上されます。 |
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の設定に関わらず、すべての一時ファイルが計上されます。 |
Number of deadlocks detected in this database データベース内で検知されたデッドロック数です。 |
Number of data page checksum failures detected in this database (or on a shared object), or NULL if data checksums are not enabled. データベース(あるいは共有オブジェクト)内で検出されたデータページチェックサムの検査失敗数です。データチェックサムが無効の場合にはNULLです。 |
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です。 |
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が有効な場合。そうでなければゼロです)。 |
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が有効な場合。そうでなければゼロです)。 |
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) このデータベースでデータベースセッションに費やされた、ミリ秒単位の時間です(統計はセッションの状態が変化したときのみ更新されるため、セッションが長い間アイドル状態の場合、このアイドル時間は含まれません)。 |
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文実行に費やされた、ミリ秒単位の時間です(これは |
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>)
このデータベースでトランザクション中にアイドル状態であった、ミリ秒単位の時間です(これは |
Total number of sessions established to this database このデータベースに対して確立されたセッションの総数です。 |
Number of database sessions to this database that were terminated because connection to the client was lost このデータベースに対するデータベースセッションのうち、クライアントとの接続が失われたために終了したセッションの数です。 |
Number of database sessions to this database that were terminated by fatal errors このデータベースに対するデータベースセッションのうち、致命的なエラーによって終了したセッションの数です。 |
Number of database sessions to this database that were terminated by operator intervention このデータベースに対するデータベースセッションのうち、オペレータの介入によって終了したセッションの数です。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of a database データベースのOIDです。 |
Name of this database データベースの名前です。 |
Number of queries in this database that have been canceled due to dropped tablespaces データベースにおいて、削除されたテーブル空間のためにキャンセルされた問い合わせの個数です。 |
Number of queries in this database that have been canceled due to lock timeouts データベースにおいて、ロック時間切れのためにキャンセルされた問い合わせの個数です。 |
Number of queries in this database that have been canceled due to old snapshots データベースにおいて、古いスナップショットのためにキャンセルされた問い合わせの個数です。 |
Number of queries in this database that have been canceled due to pinned buffers データベースにおいて、ピンが付いたバッファのためにキャンセルされた問い合わせの個数です。 |
Number of queries in this database that have been canceled due to deadlocks データベースにおいて、デッドロックのためにキャンセルされた問い合わせの個数です。 |
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が低すぎることにより取り消されたこのデータベース内の論理スロットの使用回数です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of a table テーブルのOIDです。 |
Name of the schema that this table is in テーブルが存在するスキーマの名前です。 |
Name of this table テーブルの名前です。 |
Number of sequential scans initiated on this table テーブル上で初期化されたシーケンシャルスキャンの個数です。 |
The time of the last sequential scan on this table, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このテーブルの最後の順次スキャンの時刻です。 |
Number of live rows fetched by sequential scans シーケンシャルスキャンによって取り出された有効な行数です。 |
Number of index scans initiated on this table テーブル上で開始されたインデックススキャンの実行回数です。 |
The time of the last index scan on this table, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このテーブルに対する最新のインデックススキャンの時刻です。 |
Number of live rows fetched by index scans インデックススキャンによって取り出された有効な行数です。 |
Total number of rows inserted 挿入された総行数です。 |
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.)
更新された総行数です。
(これには、 |
Total number of rows deleted 削除された総行数です。 |
Number of rows <link linkend="storage-hot">HOT updated</link>. These are updates where no successor versions are required in indexes. HOT更新された行数です。 これらは、インデックスで後続のバージョンが必要ない更新です。 |
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.
後継バージョンが新しいヒープページに移動し、元のバージョンが |
Estimated number of live rows 有効な行数の推定値です。 |
Estimated number of dead rows 無効な行数の推定値です。 |
Estimated number of rows modified since this table was last analyzed このテーブルが最後に解析されてから変更された行数の推定値です。 |
Estimated number of rows inserted since this table was last vacuumed このテーブルが最後にバキュームされてから挿入された行数の推定値です。 |
Last time at which this table was manually vacuumed
(not counting <command>VACUUM FULL</command>)
テーブルが手作業でバキュームされた最終時刻です( |
Last time at which this table was vacuumed by the autovacuum daemon 自動バキュームデーモンによりテーブルがバキュームされた最終時刻です。 |
Last time at which this table was manually analyzed テーブルが手作業で解析された最終時刻です。 |
Last time at which this table was analyzed by the autovacuum daemon 自動バキュームデーモンによりテーブルが解析された最終時刻です。 |
Number of times this table has been manually vacuumed
(not counting <command>VACUUM FULL</command>)
テーブルが手作業でバキュームされた回数です。( |
Number of times this table has been vacuumed by the autovacuum daemon テーブルが自動バキュームデーモンによりバキュームされた回数です。 |
Number of times this table has been manually analyzed テーブルが手作業で解析された回数です。 |
Number of times this table has been analyzed by the autovacuum daemon テーブルが自動バキュームデーモンによって解析された回数です。 |
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_indexes
とpg_stat_sys_indexes
も同じ情報を保持しますが、ユーザ向けのインデックスとシステム向けのインデックスに対する行のみを保持するようにフィルタ処理されています。
表27.30 pg_stat_all_indexes
ビュー
Column Type 列 型 Description 説明 |
---|
OID of the table for this index このインデックスに対応するテーブルのOIDです。 |
OID of this index インデックスのOIDです。 |
Name of the schema this index is in インデックスが存在するスキーマの名前です。 |
Name of the table for this index このインデックスに対応するテーブルの名前です。 |
Name of this index インデックスの名前です。 |
Number of index scans initiated on this index インデックスに対して開始されたインデックススキャンの実行回数です。 |
The time of the last scan on this index, based on the most recent transaction stop time 最新のトランザクション停止時刻に基づく、このインデックスの最後のスキャン時刻です。 |
Number of index entries returned by scans on this index インデックスに対するスキャンにより返されたインデックス項目の個数です。 |
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_read
とidx_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
をインクリメントするため、インデックススキャンの数がインデックススキャン実行ノードの実行総数を大幅に超える可能性があります。
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_tables
とpg_statio_sys_tables
には同じ情報が保持されますが、ユーザテーブルとシステムテーブルに関する行のみを持つようにフィルタ処理がなされています。
表27.31 pg_statio_all_tables
ビュー
Column Type 列 型 Description 説明 |
---|
OID of a table テーブルのOIDです。 |
Name of the schema that this table is in テーブルが存在するスキーマの名前です。 |
Name of this table テーブルの名前です。 |
Number of disk blocks read from this table テーブルから読み取られたディスクブロック数です。 |
Number of buffer hits in this table テーブル内のバッファヒット数です。 |
Number of disk blocks read from all indexes on this table テーブル上のすべてのインデックスから読み取られたディスクブロック数です。 |
Number of buffer hits in all indexes on this table テーブル上のすべてのインデックス内のバッファヒット数です。 |
Number of disk blocks read from this table's TOAST table (if any) テーブルのTOASTテーブル(もしあれば)から読み取られたディスクブロック数です。 |
Number of buffer hits in this table's TOAST table (if any) テーブルのTOASTテーブル(もしあれば)におけるバッファヒット数です。 |
Number of disk blocks read from this table's TOAST table indexes (if any) テーブルのTOASTテーブルのインデックス(もしあれば)から読み取られたディスクブロック数です。 |
Number of buffer hits in this table's TOAST table indexes (if any) テーブルのTOASTテーブルのインデックス(もしあれば)におけるバッファヒット数です。 |
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_indexes
とpg_statio_sys_indexes
も同じ情報を保持しますが、それぞれユーザ向けのインデックスとシステム向けのインデックスに対する行のみを保持するようにフィルタ処理されています。
表27.32 pg_statio_all_indexes
ビュー
Column Type 列 型 Description 説明 |
---|
OID of the table for this index このインデックスに対応するテーブルのOIDです。 |
OID of this index インデックスのOIDです。 |
Name of the schema this index is in インデックスが存在するスキーマの名前です。 |
Name of the table for this index このインデックスに対応するテーブルの名前です。 |
Name of this index インデックスの名前です。 |
Number of disk blocks read from this index インデックスから読み取られたディスクブロック数です。 |
Number of buffer hits in this index インデックスにおけるバッファヒット数です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of a sequence シーケンスのOIDです。 |
Name of the schema this sequence is in シーケンスが存在するスキーマの名前です。 |
Name of this sequence シーケンスの名前です。 |
Number of disk blocks read from this sequence シーケンスから読み取られたディスクブロック数です。 |
Number of buffer hits in this sequence シーケンスにおけるバッファヒット数です。 |
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
ビュー
Column Type 列 型 Description 説明 |
---|
OID of a function 関数のOIDです。 |
Name of the schema this function is in 関数が存在するスキーマの名前です。 |
Name of this function 関数の名前です。 |
Number of times this function has been called 関数が呼び出された回数です。 |
Total time spent in this function and all other functions called by it, in milliseconds 関数とその関数から呼び出されるその他の関数で費やされた、ミリ秒単位の総時間です。 |
Total time spent in this function itself, not including other functions called by it, in milliseconds その関数から呼び出されるその他の関数で費やされた時間を含まない、関数自身で費やされた、ミリ秒単位の総時間です。 |
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]》PostgreSQLはSLRU(simple least-recently-used)キャッシュ経由で特定のディスク上の情報にアクセスします。
pg_stat_slru
ビューは、追跡されたSLRUキャッシュごとに1行の形式で、キャッシュされたページへのアクセスに関する統計情報を表示します。
《機械翻訳》PostgreSQLはSLRU
(最小使用頻度の最近のもの)キャッシュを介してディスク上の特定の情報にアクセスします。
このビューには、追跡された各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
ビュー
Column Type 列 型 Description 説明 |
---|
Name of the SLRU SLRUの名前です。 |
Number of blocks zeroed during initializations 初期化中にゼロにされたブロックの数です。 |
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におけるヒットのみが含まれ、オペレーティングシステムのファイルシステムキャッシュは含まれません)。 |
Number of disk blocks read for this SLRU SLRUから読み取られたディスクブロック数です。 |
Number of disk blocks written for this SLRU SLRUに書き込まれたディスクブロック数です。 |
Number of blocks checked for existence for this SLRU SLRUで存在を検査されたブロック数です。 |
Number of flushes of dirty data for this SLRU SLRUでのダーティデータのフラッシュ数です。 |
Number of truncates for this SLRU SLRUでの切り詰めの数です。 |
Time at which these statistics were last reset 統計情報がリセットされた最終時刻です。 |
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 その他の統計情報関数
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 バックエンド単位の統計情報関数
Function 関数 Description 説明 |
---|
Returns the text of this backend's most recent query. バックエンドが最後に行った問い合わせテキストを返します。 |
Returns the time when the backend's most recent query was started. バックエンドの最後の問い合わせが開始された時刻を返します。 |
Returns the IP address of the client connected to this backend. バックエンドに接続したクライアントのIPアドレスを返します。 |
Returns the TCP port number that the client is using for communication. クライアントが通信に使用しているTCPポート番号を返します。 |
Returns the OID of the database this backend is connected to. バックエンドが接続するデータベースのOIDを返します。 |
Returns the set of currently active backend ID numbers. 現在アクティブなバックエンドID番号の集合を返します。 |
Returns the process ID of this backend. バックエンドのプロセスIDを返します。 |
Returns the time when this process was started. プロセスが開始された時刻を返します。 |
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を持つバックエンドのサブトランザクションの情報を含むレコードを返します。
返却されるフィールドは、バックエンドのサブトランザクションキャッシュ内のサブトランザクション数を示す |
Returns the OID of the user logged into this backend. バックエンドにログインしたユーザのOIDを返します。 |
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までを参照してください。 |
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を参照してください。 |
Returns the time when the backend's current transaction was started. バックエンドの現在のトランザクションが開始された時刻を返します。 |