このトピックでは、ApsaraDB RDS for MySQLのRDS Cluster Editionのアーキテクチャ、利点、およびシナリオについて説明します。
Introduction to RDS Cluster Edition
RDS Cluster Edition for ApsaraDB RDS for MySQLは、1つのプライマリノードと複数のセカンダリノードを含む高可用性 (HA) アーキテクチャを使用し、コンピューティングストレージの分離をサポートします。 RDS Cluster Editionには、自動フェールオーバー、プライマリ /セカンダリスイッチオーバー、読み取り可能なセカンダリノード、ノードの追加と削除、 マルチゾーンのディザスタリカバリ、ノードレベルのモニタリング、およびクラスタートポロジ管理。 RDS Cluster Editionでは、MySQLグループレプリケーション (MGR) モードを使用して、リカバリポイント目標 (RPO) を0にすることもできます。 RDSクラスターは、自己管理データベースよりも費用対効果が高く、柔軟性があり、信頼性があります。
次の表では、ApsaraDB RDS for MySQLのRDS Basic Edition、RDS High-availability Edition、およびRDS Cluster Editionを比較しています。
項目 | RDS Basicエディション | RDS高可用性エディション | RDSクラスターエディション |
ノードまたはインスタンスの数 | 1 | 2 (デフォルト) 説明 RDS High-availability Editionでは、デフォルトで1つのプライマリインスタンスと1つのセカンダリインスタンスがプロビジョニングされます。 さらにインスタンスが必要な場合は、読み取り専用インスタンスを作成できます。 | 2から9 説明 RDS Cluster Editionでは、デフォルトで1つのプライマリノードと2つのセカンダリノードがプロビジョニングされます。 1つのプライマリノードと1つのセカンダリノードで構成されるRDSクラスターを作成することもできます。 RDSクラスターは、RDS cluster Editionを実行するRDSインスタンスと呼ばれます。 RDSクラスターの作成後、RDSクラスターにノードを追加できます。 RDSクラスターには、1つのプライマリノードと8つのセカンダリノードを含む最大9つのノードを含めることができます。 |
読み取り可能なセカンダリインスタンスまたはノード | 非該当 | 非対応 | 対応 |
エンドポイント種類 | 読み取り /書き込みエンドポイント | 読み取り /書き込みエンドポイント |
|
レプリケーションモード | 非対応 | 非同期レプリケーションと半同期レプリケーション | 非同期レプリケーション、半同期レプリケーション、およびMGR |
利用不可能なインスタンスまたはノードの最大数 | 0 | 1 | n − 1… nはRDSクラスター内のノード数を示します。 |
ゾーン数 | 1 | 2以下 | RDSクラスター内のノード数以下 |
アーキテクチャ
RDS Cluster Editionは、MySQL 5.7およびMySQL 8.0を実行するApsaraDB RDS for MySQLインスタンスでサポートされています。 RDSクラスターは、1つのプライマリノードと複数のセカンダリノードのHAアーキテクチャを使用します。 次の図はアーキテクチャを示しています。
メリット
より費用効果が大きい
RDSクラスターのセカンダリノードは読み取り可能です。 読み取り専用RDSクラスターを作成する必要はありません。 これにより、RDSクラスターの読み取り機能が線形に向上し、リソースのオーバーヘッドとコストが削減されます。 RDS High-availability Editionを使用し、RDSインスタンスの読み取り機能を強化する場合は、読み取り専用RDSインスタンスを作成する必要があります。 RDS High-availability Editionと比較して、RDS Cluster Editionはコストを40% 削減します。
次のいずれかの方法を使用して、RDSクラスターのセカンダリノードにアクセスできます。
読み取り専用ルーティングエンドポイント: RDSクラスター用の読み取り専用ルーティングエンドポイントを無料で作成し、読み取り専用ルーティングエンドポイントに複数のセカンダリノードを追加できます。 次に、セカンダリノードの読み取り重みを指定して、負荷のバランスを取ることができます。 詳細については、「インスタンスエンドポイントとポートの表示と管理」をご参照ください。
データベースプロキシ: RDSクラスターのデータベースプロキシ機能を有効にして、RDSクラスターのプライマリノードとセカンダリノードで読み書き分離を実装できます。 読み取り専用ルーティングエンドポイントと比較して、データベースプロキシ機能は、自動読み書き分割、永続接続、接続プーリング、レイテンシしきい値、トランザクション分割などの高度な機能をサポートします。 詳細については、「専用プロキシ機能の有効化」および「データベースプロキシとは」をご参照ください。
説明2024年6月25日以降、RDS Cluster Editionを実行するプライマリRDSインスタンスを作成すると、デフォルトで汎用データベースプロキシが追加料金なしで含まれます。 詳細については、「データベースプロキシの課金ルール」および「データベースプロキシとは」をご参照ください。
データベースプロキシの安定性に関する要件が高い場合は、プロキシの種類を汎用から専用に変更できます。 詳細については、「データベースプロキシの種類と数の変更」および「データベースプロキシとは」をご参照ください。
専用プロキシ機能はいつでも無効にできます。 詳細については、「専用プロキシ機能の無効化」をご参照ください。
より柔軟
フレキシブルノードの展開
RDS Basic EditionおよびRDS High-availability Editionと比較して、RDS Cluster Editionはノードトポロジ管理をサポートしています。 RDSクラスターを作成した後、ビジネス要件に基づいて、より費用対効果の高い方法でノードを追加または削除できます。. 詳細については、「ApsaraDB RDS For MySQLクラスターへのノードの追加」と、「 ApsaraDB RDS for MySQLクラスターからノードを削除」をご参照ください。
ノードレベルのモニタリング
RDS Cluster Editionは、ノードレベルのモニタリングをサポートしています。 RDSクラスターの各ノードのステータスを表示できます。
より信頼できる
クロスゾーンディザスタリカバリ
RDS High-availability Editionでは、HAを確保するために1つのプライマリインスタンスと1つのセカンダリインスタンスがプロビジョニングされます。 RDS Cluster Editionでは、RDSクラスター内のすべてのセカンダリノードをディザスタリカバリに使用できます。 クロスゾーンディザスタリカバリを実現するには、異なるゾーンにセカンダリノードをデプロイすることを推奨します。
強力なデータ整合性
RDSクラスターに3つ以上のノードがデプロイされている場合、RDSクラスターにMGRモードを使用できます。 MGRは、分散コンセンサスプロトコルであるPaxosに基づいて開発されています。 トランザクションがプライマリノードでコミットされる前に、システムはトランザクションのデータをセカンダリノードに送信し、セカンダリノードの大部分がデータを受信することを保証します。 半同期レプリケーションや非同期レプリケーションと比較して、MGRは強力なデータ一貫性と高いデータセキュリティを保証します。
より信頼性の高いセカンダリノード
Alibaba Cloud技術チームは、クラウドネイティブテクノロジーを使用して、ApsaraDB RDSで詳細な最適化を実行します。 これにより、RDSクラスターのセカンダリノードの信頼性が向上します。
RDS高可用性システムが再構築されます。 これにより、セカンダリノード上の障害を検出するのに必要な時間が、微小粒度から第2粒度に短縮される。
Elastic Block Storage (EBS) が提供する1桁の2番目のバックアップ機能が使用されます。 これにより、データの復元に必要な時間が数十分から1分に短縮され、99% のユースケースでセカンダリノードが10分以内に障害から回復できるようになります。
シナリオ
RDS Cluster Editionは、本番データベースがピーク時に多数の読み取り要求を処理する必要があるか、インテリジェントなデータ分析を実行する必要がある大規模および中規模の企業に適しています。 これらの企業には、オンライン小売業者、自動車企業、教育企業、およびエンタープライズリソースプランニング (ERP) サービスプロバイダーが含まれます。
ApsaraDB RDS for MySQLのRDSクラスターエディションのシナリオ
項目 | 説明 |
RDSクラスターの設定 | |
RDSインスタンスのRDS Cluster Editionへのアップグレード | |
RDS Cluster Editionを実行するRDSインスタンスへのデータ移行 | |
MGR | |
データベースプロキシ |
RDSクラスターの作成
RDSクラスターの作成方法の詳細については、「ApsaraDB RDS For MySQLインスタンスの作成」をご参照ください。