PolarDB for MySQL のマルチマスタークラスター (Limitless) は、複数の読み書き (RW) ノードによって、水平方向にスケーラブルな読み書き能力を提供します。データの編成方法とルーティング方法に基づき、マルチマスタークラスター (Limitless) は、データベース/テーブルレベルのマルチマスターとマルチマスタークラスターのパーティションテーブルという 2 つの製品形態を提供します。
製品形態
データベース/テーブルレベルのマルチマスター
データベース/テーブルレベルのマルチマスターは、異なるデータベースまたはデータオブジェクトを、異なる読み書き (RW) ノードに分散します。各データベースまたはデータオブジェクトは、任意の時点で 1 つの RW ノードによって読み書きが処理され、データを移行することなくそのサービングノードを切り替えることができます。この形態は、マルチテナント SaaS、リージョン単位でシャーディングされたゲーム、およびデータベース/テーブルシャーディングミドルウェアをすでに使用しているワークロードに適しています。
詳細については、「データベース/テーブルレベルのマルチマスターとは」、「使用方法」、および「よくある質問」をご参照ください。
マルチマスタークラスターのパーティションテーブル
マルチマスタークラスターのパーティションテーブルは、分散キーと分割ルールに基づいて、論理テーブルのデータを複数のシャーディングされたデータベースと読み書き (RW) ノードに自動的に分散します。システムは、透過的ルーティング、分散クエリ、および分散 DDL を実行します。この形態は、大規模テーブルの水平分割、高同時実行トランザクション、およびデータベース/テーブルシャーディングミドルウェアへの依存を減らしたいワークロードに適しています。
詳細については、「マルチマスタークラスターのパーティションテーブルとは」と「使用方法」をご参照ください。
選択方法
|
比較 |
データベース/テーブルレベルのマルチマスター |
マルチマスタークラスターのパーティションテーブル |
|
データ分散の粒度 |
データベースまたはデータオブジェクト |
論理テーブルのデータシャード |
|
書き込みモード |
異なるデータベースまたはオブジェクトを、異なる読み書き (RW) ノードで同時に書き込むことができます。 |
同じ論理テーブルの異なるシャードを、複数の読み書き (RW) ノードで同時に書き込むことができます。 |
|
スケジューリング |
データベースまたはオブジェクトの読み書き (RW) アクセスポイントを指定または切り替えます。 |
システムが分散キーで自動的にルーティングします。 |
|
主な構文 |
|
|
|
典型的な移行 |
既存のデータベース/テーブルのレイアウトを維持し、ノードの所有権を調整します。 |
論理テーブルの分散キーと分割ルールを選択します。 |
ワークロードがすでにデータベースまたはテーブルで分離されており、主な目標が既存のデータベース/テーブルの負荷をより多くの読み書き (RW) ノードに迅速に分散させることである場合は、データベース/テーブルレベルのマルチマスターが適しています。単一テーブルのデータ量またはアクセス負荷がボトルネックになっており、データベースに透過的に水平分割を実行させたい場合は、マルチマスタークラスターのパーティションテーブルが適しています。
共通機能
グローバル読み取り専用ノードは、複数の読み書き (RW) ノードのデータを読み取ることができます。データベース/テーブルレベルのマルチマスターでは、データベースやデータオブジェクトにまたがる集約クエリを実行します。マルチマスタークラスターのパーティションテーブルでは、すべてのシャードからデータを集約してシャード横断クエリを実行します。