Snowflake Postgres読み取りレプリカ¶
概要¶
Snowflake Postgresは、 レプリカ の作成をサポートしています。レプリカは、そのインスタンスの変更と継続的に同期される リーダーインスタンス の読み取り専用コピーです。この同期は、ユーザーに対して自動的かつ透過的に行われます。
レプリカは、実稼働に影響を与える可能性のある特定のワークロード(レポートワークロードなど)の読み取りスケーリングとオフロードに役立ちます。レプリカはリーダーと同じストレージサイズを持つ必要がありますが、異なるコンピューティングサイズを持つことができます。
レプリカはリーダーインスタンスと同じネットワークにプロビジョニングされ、その結果、リーダーインスタンスからすべてのイングレスとエグレスのネットワークルールを継承します。
Postgresの認証情報は、レプリカ上の他のすべてのデータとともにコピーされ、リーダーインスタンスと同期されます。
読み取りレプリカの作成¶
元のインスタンスのレプリカとしてPostgresインスタンスを作成するには、CREATE POSTGRES INSTANCE コマンドで AS REPLICA OF 句を指定します。デフォルトでは、COMPUTE_FAMILY と POSTGRES_SETTINGS のプロパティは元のPostgresインスタンスからコピーされます。これらの設定を上書きし、新しいインスタンスの COMMENT と TAG のプロパティを指定することもできます。
次の列を持つ1行が返されます。
statushost
CREATE REPLICA SQL の例
インスタンス my_origin_instance のレプリカ my_replica を作成します。
CREATE POSTGRES INSTANCE my_replica
AS REPLICA OF my_origin_instance;
別のコンピューティングファミリーを持つインスタンス my_origin_instance のレプリカ my_replica を作成します。
CREATE POSTGRES INSTANCE my_replica
AS REPLICA OF my_origin_instance
COMPUTE_FAMILY = STANDARD_M;
レプリカの作成に必要な時間は、元のインスタンスのサイズによって異なります。レプリカは構成中に現在の状態を表示します。構成中にレプリカが経験する状態の詳細については、 インスタンスの状態 のリストをご参照ください。
レプリカの動作と制限¶
デフォルトでは、リーダーインスタンスから変更をストリームできるのは 10レプリカ のみです。他のレプリカがストリーミングできるようにするには、Postgres
max_wal_senders設定を増やします( Snowflake Postgresのサーバー設定 を参照)。リーダーPostgresインスタンスは、 レプリカがある間はドロップできません 。リーダーをドロップする前に、すべてのレプリカを削除する必要があります。
リーダーインスタンスに適用されたPostgresサーバー設定は、すべてのレプリカにコピーされます。
