Single data group, global read scaling#
グローバル読み取りスケーリングパターンは、複数のサブスクライバ専用グループを3つ以上のノードで構成される中央の書き込みグループに追加します。接続マネージャーは、書き込みグループ内の書き込みリーダールーティングを自動的に処理しますが、各サブスクライバ専用グループは独自のロードバランサーとスケーリングポリシーを持つことができます。
サブスクライバー専用ノードはすべての変更を受信しますが、コンセンサスを書き込んだり、コンセンサスに参加したりすることはできません。書き込みグループに影響を与えることなくグループは動的に追加および削除でき、書き込みグループ自分自身を複数のリージョンまたはアベイラビリティーゾーンに分散して可用性を高めることができます。
Single data group global read scaling topology#
図の凡例#
シンボルは、ノードタイプ、グループコンテナ、および接続タイプを表します。
Diagram legend showing node types, group containers, and connection types#
このパターンを使用する場合#
このパターンは、分析とレポート、API読み取りトラフィック、構成配布、およびリージョンリードレプリカ用に別個のグループを使用した、ワークロードの分離を必要とする読み取り中心のワークロードに適しています。各グループは、ワークロードに基づいて独立してスケーリングします。
このパターンには次のような利点があります。
書き込みクラスターに影響を与えることなく、ノードを追加することにより、読み取りを大規模にスケールします。
レポートと分析を運用書き込みパスからオフロードします。
サブスクライバー専用ノードは、ローカル読み取りレイテンシーのために追加リージョンに配置できます。
クラスターを再構成せずに読み取りノードを追加および削除することにより、動的なスケーリングをサポートします。
大量の読み取りワークロードをトランザクション処理から分離します。
注意すべき制限がいくつかあります。
サブスクライバー専用ノードにはレプリケーションラグがあり、読み取り後書き込みの一貫性要件には適していません。
アプリケーションは、加入者専用ノードとデータノードを区別して、接続を明示的にルーティングする必要があります。
サブスクライバノードの遅延またはダウンタイムは、データノードでのWAL保持を増加させ、ディスク使用量に影響を与えます。
このパターンに推奨されるコミットスコープ#
マジョリティプロテクト 書き込みグループ内のマジョリティデータノードへの同期レプリケーション。実稼働使用に最も一般的に推奨されるスコープ。
アダプティブプロテクト 可能な場合は書き込みグループ内のノードの大部分への同期レプリケーション、構成可能なタイムアウトの後、非同期レプリケーションに自動的に低下します。 2つのデータノードと1つの監視を使用する場合に推奨されます。
ローカルプロテクト ローカルノードのみの耐久性を備えた非同期レプリケーション。実稼働環境での使用はお勧めしません。
コミットスコープは、パフォーマンス、耐久性、一貫性、スケーラビリティにわたってさまざまなトレードオフを行います。
Single data group global read scaling behavior diagram#