pgactive スキーマについて - Amazon Relational Database Service

pgactive スキーマについて

pgactive スキーマは、RDS for PostgreSQL のアクティブ/アクティブレプリケーションを管理します。このスキーマには、レプリケーション設定とステータス情報を保存するテーブルが含まれています。

注記

pgactive スキーマは進化しており、変更される可能性があります。これらのテーブルのデータを直接変更しないでください。

pgactive スキーマのキーテーブルには以下のものが含まれます。

  • pgactive_nodes − アクティブ/アクティブレプリケーショングループ内のノードに関する情報を保存します。

  • pgactive_connections − 各ノードの接続の詳細を保存します。

pgactive_nodes

pgactive_nodes は、アクティブ/アクティブレプリケーショングループに参加しているノードに関する情報を保存します。

タイプ

照合

NULLABLE

デフォルト値

node_sysid text NOT NULL
node_timeline oid NOT NULL
node_dboid oid NOT NULL
node_status char NOT NULL
node_name text NOT NULL
node_dsn text NOT NULL
node_init_from_dsn text NOT NULL
node_read_only boolean false
node_seq_id smallint NOT NULL
node_sysid

ノードの一意の ID。pgactive_create_group または pgactive_join_group 中に生成されます。

node_status

ノードの準備状況:

  • b - セットアップの開始

  • i - 初期化

  • c - キャッチアップ

  • o - アウトバウンドスロットの作成

  • r - 準備完了

  • k - 強制終了

注記

この列は、ノードが接続されているか切断されているかを示しません。

node_name

ユーザーが指定した一意のノード名。

node_dsn

接続文字列またはユーザーマッピング名

node_init_from_dsn

このノードが作成された DSN。

pgactive_connection

pgactive_connections は、各ノードの接続の詳細を保存します。

タイプ 照合 Nullable デフォルト値
conn_sysid text なし NOT NULL なし
conn_timeline oid なし NOT NULL なし
conn_dboid oid なし NOT NULL なし
conn_dsn text なし NOT NULL なし
conn_apply_delay integer なし なし なし
conn_replication_sets text なし なし なし
conn_sysid

このエントリが参照するノードのノード識別子。

conn_dsn

pgactive.pgactive_nodes node_dsn と同じです。

conn_apply_delay

設定されている場合、リモートノードから各トランザクションを適用するまで待機するミリ秒数。主にデバッグ用。null の場合、グローバルデフォルトが適用されます。

レプリケーションセットの使用

レプリケーションセットは、レプリケーションオペレーションに含めるテーブルと除外するテーブルを決定します。デフォルトでは、次の関数を使用して指定しない限り、すべてのテーブルがレプリケートされます。

  • pgactive_exclude_table_replication_set() - 指定されたテーブルをレプリケーションから除外する

  • pgactive_include_table_replication_set() - 指定されたテーブルをレプリケーションに含める

注記

レプリケーションセットを設定する前に、次の点を考慮してください。

  • テーブルの包含または除外は、pgactive_create_group() の実行後、pgactive_join_group() を実行するより前にのみ設定できます。

  • pgactive_exclude_table_replication_set() を使用した後、pgactive_include_table_replication_set() を使用することはできません。

  • pgactive_exclude_table_replication_set() を使用した後、pgactive_include_table_replication_set() を使用することはできません。

システムは、初期設定に基づいて新しく作成されたテーブルを異なる方法で処理します。

  • テーブルを除外した場合: pgactive_join_group() 以降に作成された新しいテーブルは、自動的にレプリケーションに含まれます。

  • テーブルを含めた場合: pgactive_join_group() 以降に作成された新しいテーブルは、自動的にレプリケーションから除外されます。

特定のテーブルのレプリケーションセット設定を表示するには、pgactive.pgactive_get_table_replication_sets() 関数を使用します。