クラウドネイティブの PolarDB のアーキテクチャを次の図に示します。 示意図

1 つのプライマリインスタンスと複数の読み取り専用インスタンス

PolarDB クラスターには、1 つのプライマリインスタンスと最大 15 の読み取り専用インスタンスが含まれます (少なくとも 1 つの読み取り専用インスタンスが Active-Active の高可用性サポートを提供します)。 プライマリインスタンスは、読み取りおよび書き込み要求を処理しますが、読み取り専用インスタンスは、読み取り要求のみを処理します。 PolarDB は、プライマリインスタンス、または読み取り専用インスタンスを対象とした Active-Active フェールオーバーを実行することにより、高可用性サービスを提供しています。

コンピューティングとストレージの分離

PolarDB は、コンピューティング処理をストレージ処理から分離し、データベース容量をスケールアップおよびスケールダウンして、Alibaba Cloud でのアプリケーションのニーズを満たすことができます。 DB サーバーはメタデータの保存にのみ使用され、データファイルと REDO ログはリモートチャンクサーバーに保存されます。 DB サーバーは、相互にREDO ログメタデータを同期するだけでよいので、プライマリインスタンスと読み取り専用インスタンス間のデータ遅延が大幅に削減されます。 プライマリインスタンスに障害が発生した場合、読み取り専用インスタンスを迅速にプライマリに昇格させることができます。

読み書き分離

PolarDB クラスターの読み書き分離は、デフォルトで有効になっており、データベースに透過的で可用性の高い自己適応型負荷分散を提供しています。 読み書き分離機能は、読み書き分離接続文字列に対する要求を自動的にルーティングします。 各インスタンスの負荷に基づいて、書き込み要求をプライマリインスタンスに渡し、読み取り要求をプライマリインスタンスまたは読み取り専用インスタンスに渡します。 これにより、データベースは多数の同時リクエストを処理できます。

高速ネットワーク接続

強力な I/O パフォーマンスを確保するために、DB サーバーとチャンクサーバー間の高速ネットワーク接続が有効になり、データはリモートダイレクトメモリアクセス (RDMA) プロトコルを使用して転送されます。

共有分散ストレージ

複数の DB サーバー間で同じデータコピーのグループを共有すると、DB サーバーごとにデータの個別のコピーを保存するのではないため、ストレージコストを大幅に削減できます。 分散ストレージとファイルシステムでは、各単一データベースサーバーのストレージ容量に関係なく、データベースストレージ容量を自動的にスケールアップできます。 これにより、データベースは最大 100 TB のデータを処理できます。

複数のデータ複製とParallel-Raft プロトコル

チャンクサーバーは複数のデータ複製を維持して信頼性を確保し、Parallel-Raft プロトコルに準拠してこれらの複製間の整合性を保証します。