すべてのプロダクト
Search
ドキュメントセンター

PolarDB:アーキテクチャ

最終更新日:Feb 27, 2025

このトピックでは、PolarDB-X のアーキテクチャとそのメリットについて説明します。

アーキテクチャの進化

分散データベースサービスの進化は、業界で利用可能なシャーディング、NewSQL、クラウドネイティブデータベーステクノロジーといった種類のテクノロジーによって推進されています。それぞれのテクノロジーは独自のメリットと機能を提供します。PolarDB-X アーキテクチャは、安定性を確保するために Distributed Relational Database Service (DRDS) と X-DB テクノロジーを活用し、PolarDB のクラウドネイティブテクノロジーを統合し、分散システムにおけるデータ整合性を確保するために NewSQL 機能を提供します。これにより、PolarDB-X は [クラウドネイティブで分散された] アーキテクチャに基づいてデータベースサービスを提供できます。

全体アーキテクチャ

次の図は、PolarDB-X の全体アーキテクチャを示しています。

1712739026267-a3b7485c-7565-4ab3-994f-63563800d38c.webp

コアコンポーネント

  • グローバルメタサービス (GMS): 分散メタデータと Timestamp Oracle (TSO) と呼ばれるグローバルタイムスタンプディストリビューターを提供し、テーブル、スキーマ、統計などのメタ情報を管理します。 GMS は、アカウントや権限などのセキュリティ情報も管理します。

  • コンピュートノード (CN): コアオプティマイザーとエグゼキューターを含む分散 SQL エンジンを提供します。 CN はステートレス SQL エンジンを使用して分散ルーティングとコンピューティングを提供し、2 フェーズコミットプロトコル (2PC) を使用して分散トランザクションを調整します。また、CN は DDL 文を分散方式で実行し、グローバルインデックスを管理します。

  • データノード (DN): データストレージエンジンを提供します。 DN は Paxos を使用して高信頼性のストレージサービスを提供し、分散トランザクションにマルチバージョン同時実行制御 (MVCC) を使用します。また、DN はプッシュダウン計算機能を提供して、分散システムで Project、Filter、Join、Agg などのオペレーターをプッシュダウンし、ローカル SSD と共有ストレージをサポートします。

  • 変更データキャプチャ (CDC): MySQL と互換性のあるプライマリ/セカンダリレプリケーションプロトコルを提供します。プライマリ/セカンダリレプリケーションプロトコルは、MySQL バイナリロギングでサポートされているプロトコルとデータ形式と互換性があります。 CDC はプライマリ/セカンダリレプリケーションプロトコルを使用してデータを交換します。

  • カラムナーノード: 永続的な列ストアインデックスを提供し、分散トランザクションログに記録された変更に基づいてリアルタイムで列ストアインデックスを維持および更新して、効率的な分析クエリ処理を促進します。オブジェクトストレージを活用し、CN と連携して動作することで、カラムナーノードはリアルタイム更新に必要なスケーラビリティと、スナップショット整合性クエリを実行する機能を提供します。

コアモジュール

PolarDB-X のアーキテクチャは、従来のスタンドアロンリレーショナルデータベースのアーキテクチャと似ています。 PolarDB-X アーキテクチャには、ネットワークレイヤー、SQL 解析レイヤー、最適化レイヤー、実行レイヤー、およびストレージレイヤーが含まれています。最適化レイヤーは論理最適化と物理最適化をサポートします。実行レイヤーは、単一ノードの 2 フェーズ実行、単一ノードの並列実行、およびクロスノードの並列実行をサポートします。ストレージレイヤーは、従来のスタンドアロンデータベースのさまざまな最適化方法と実行方法をサポートします。

データベースツール

PolarDB-X は MySQL プロトコルとエコシステムと高度に互換性があります。 PolarDB-X は、Java Database Connectivity (JDBC) や Open Database Connectivity (ODBC) などの一般的な MySQL ドライバーをサポートし、Java、Go、C、C++、Python などの複数のプログラミング言語と互換性があります。 PolarDB は、データのインポートとエクスポートに使用されるツールと、さまざまなクライアント GUI もサポートしています。次の図は、PolarDB-X でサポートされているデータベースツールの完全なセットを示しています。

PolarDB-X は、次のデータベースツールと連携してクローズドループを形成できます。

  • Data Management Service (DMS) は、10 年以上にわたって使用されている Alibaba データベース serviceplatform のクラウドベースバージョンです。 DMS は、すぐに使用できる、一元化された Web ベースのデータベース管理端末を提供し、複数のデータベースタイプと環境をサポートします。端末をインストールしたり、O&M 操作を実行したりする必要はありません。 DMS は、企業ユーザーが Alibaba グループのソリューションと同じレベルのセキュリティ、効率性、コンプライアンスを確保するデータベース DevOps ソリューションを迅速に構築するのに役立ちます。

  • Database Autonomy Service (DAS) は、機械学習とデータベースエキスパートの経験を活用して、データベースの認識、修復、最適化、O&M、およびセキュリティ管理を自動化するクラウドサービスです。 DAS はデータベース管理を簡素化し、手動操作によるサービス障害を防ぎます。これにより、データベースサービスの安定性、セキュリティ、効率性が確保されます。

  • Data Transmission Service (DTS) は、リレーショナルデータベース、NoSQL データベース、ビッグデータ分析サービスなどのデータソースをサポートしています。 DTS は、データ移行、変更追跡、およびリアルタイム同期を提供し、パブリッククラウドとハイブリッドクラウドのシナリオで非同期的にミリ秒単位でデータを転送できるようにします。 DTS の基盤となるインフラストラクチャは、独身の日ショッピングフェスティバル中に Alibaba グループサービスのワークロードを処理するために使用されるアクティブ地理的冗長性アーキテクチャを使用します。このようにして、DTS は数千のダウンストリームアプリケーションにリアルタイムのデータストリームを提供できます。

  • データディザスタリカバリは、費用対効果が高く、企業のビジネス要件を満たすために使用できるクラウドネイティブバックアッププラットフォームです。データセンター、サードパーティクラウド、パブリッククラウド、ハイブリッドクラウドなど、複数の環境にデプロイされているデータベースを保護できます。

アーキテクチャ

Alibaba Cloud が提供する高度なクラウドサービスとして、PolarDB-X は、視覚化された O&M、多様な配信形態、API 操作の完全なセットなど、幅広い機能を提供します。 PolarDB-X は、複数のデータベースツールと連携することもできます。

PolarDB-X インスタンスは Kubernetes に基づいてデプロイされ、パフォーマンス専有型物理サーバーでホストされます。

  1. PolarDB-X インスタンスは複数のノードで構成されています。PolarDB-X インスタンスを購入する際は、少なくとも 2 つのノードを指定する必要があります。インスタンスが作成された後、少なくとも 1 つのノード単位でインスタンスをスケールインまたはスケールアウトできます。各ノードは、4c16g、8c32g、16c64g など、さまざまなインスタンスの仕様をサポートしています。

  2. PolarDB-X は、さまざまなレベルのリソース分離の要件を満たすために、次のインスタンスファミリを提供します。汎用、専用、専用ホスト。汎用: CPU コアなどのアイドル状態の計算リソースは、同じサーバー上の PolarDB-X インスタンス間で共有されます。これにより、費用対効果が向上します。専用: 各 PolarDB-X インスタンスに割り当てられた CPU コアなどのサーバーの計算リソースは、そのインスタンス専用です。これにより、パフォーマンスの安定性が向上します。

  3. PolarDB-X は、パブリッククラウドとハイブリッドクラウドでさまざまな配信形態をサポートしています。 Alibaba Cloud パブリッククラウドでは、リージョンとゾーンにまたがって PolarDB-X インスタンスをデプロイできます。ネットワークとセキュリティに関連するシナリオでは、PolarDB-X は仮想プライベートクラウド (VPC)、IP アドレスホワイトリスト、非対称暗号化、および透過的データ暗号化 (TDE) をサポートしてデータセキュリティを確保します。Alibaba Cloud ハイブリッドクラウドでは、DBStack を使用して軽量な方法で PolarDB-X インスタンスをデプロイできます。このようにして、データベースをデプロイし、マシンの既存のハードウェアで O&M 操作を実行できます。

メリット

高可用性

PolarDB-X は X-DB のアーキテクチャに基づいて開発されており、X-Paxos を使用して強力な整合性を確保し、ノードフェールオーバーの場合に目標復旧時点 (RPO) 0 を実現します。これらの機能は、長年にわたる独身の日ショッピングフェスティバルで一貫して証明されてきました。 PolarDB-X は、さまざまなデプロイソリューションとディザスタリカバリ機能も提供します。たとえば、同じリージョンの 3 つのデータセンターまたは 3 つのリージョンの 5 つのデータセンターにまたがって PolarDB-X インスタンスをデプロイし、Paxos を使用して完全同期レプリケーションを確保できます。また、2 つのゾーンにまたがる 3 つのデータセンター、ジオディザスタリカバリ、またはアクティブ地理的冗長性ソリューションを使用して PolarDB-X インスタンスをデプロイし、バイナリログを使用して非同期レプリケーションを実装することもできます。リージョン間の効率的なデータ転送を確保するために、PolarDB-X はバッチ処理とパイプライン処理を使用してネットワークパフォーマンスを最適化します。

高互換性

PolarDB-X は、SQL 文や関数タイプなどの MySQL 構文と互換性があります。 PolarDB-X は TSO を提供して、分散トランザクション全体でデータをグローバルに一貫性を保ちます。 PolarDB-X は TSO と 2PC を使用して完全な原子性、整合性、分離性、耐久性 (ACID) 機能を提供し、分散システムの読み取りコミット済みおよび反復可能読み取り分離レベルをサポートします。 PolarDB-X は、分散トランザクションに基づいてグローバルセカンダリインデックスを提供します。 PolarDB-X は複数のトランザクションを同時に書き込んで、インデックステーブルとベーストテーブルのデータ間の強力な整合性を確保できます。 PolarDB-X はコストベースオプティマイザー (CBO) を使用してインデックスを選択します。メタデータとエコシステム統合のシナリオでは、PolarDB-X はオンライン DDL 機能を使用して分散システムのメタデータの整合性を確保します。ハードウェアに関しては、PolarDB-X は、Kirin、Kunpeng、Hygon など、中国のベンダーが開発した主要なオペレーティングシステムとチップと互換性があります。

業界の主要な分散データベースのベンダーは、分散データベースで REDO ログやバイナリログなどのデータ変更ログを収集するために使用できるサービスをほとんど提供していません。以前は、企業は業界で確立されたエコシステムと標準に基づいてリレーショナルデータベースを大規模に開発していました。 PolarDB-X は、MySQL データベースと完全に互換性のあるバイナリログを提供します。 MySQL データベースを使用するのと同じ方法で PolarDB-X データベースを使用して、標準のバイナリログダンププロトコルを使用してバイナリログを取得できます。

高スケーラビリティ

PolarDB-X は、インスタンスの水平スケーリングとデータベースのオンラインスケーリングに非共有アーキテクチャを使用します。オンライントランザクション処理 (OLTP) シナリオでは、PolarDB-X は数千万の同時リクエストを処理し、ペタバイトのデータを格納できます。オンライン分析処理 (OLAP) シナリオでは、PolarDB-X は超並列処理 (MPP) テクノロジーを使用して、インスタンスがスケールアウトされた後にクエリのパフォーマンスを線形に向上させます。これは、TPC-H などの複雑なレポートクエリの要件を満たすのに役立ちます。

HTAP

モバイルインターネットと IoT デバイスの継続的な開発により、データが爆発的に増加する可能性があります。従来の OLTP および OLAP ソリューションは、単純な読み書き分離または ETL (抽出、変換、書き出し) モデルに基づいて開発されています。従来の OLTP または OLAP ソリューションでは、データはオンラインデータベースから抽出され、T+1 メカニズムに基づいて計算するためにデータウェアハウスに格納されます。これらの従来のソリューションは、リアルタイムパフォーマンスが低く、リンク使用率が非効率的であり、ストレージコストとメンテナンスコストが高くなります。 PolarDB-X は、OLTP と OLAP の混合ワークロードを処理できます。これにより、同じインスタンスで TPC-C ベンチマークテストと TPC-H ベンチマークテストを同時に実行できます。テスト中、分析処理ワークロードはトランザクション処理ワークロードの安定性に影響を与えません。 PolarDB-X は、複数の革新的な機能も提供します。たとえば、PolarDB-X は、コンピューティングレイヤーでトランザクション処理ワークロードと分析処理ワークロードを正確に識別できます。ワークロードが識別されると、PolarDB-X は複数のレプリカで整合性のある読み取りを実装することにより、ワークロードを異なるレプリカにインテリジェントにルーティングします。デフォルトでは、MPP は分析処理リンクで有効になっています。このようにして、リソースの分離が確保され、OLAP シナリオのクエリパフォーマンスが線形に向上します。 PolarDB-X は、ストレージレイヤーでプッシュダウン計算機能を最適化します。将来のバージョンには、ハイブリッド行-列ストレージのハイブリッドトランザクション/分析処理 (HTAP) 機能を提供するパフォーマンス専有型列ストレージエンジンが含まれます。

究極の弾力性

PolarDB-X は、PolarDB のクラウドネイティブテクノロジーをサポートしています。 PolarDB は共有ストレージを使用し、RDMA (Remote Direct Memory Access) に基づくネットワーク最適化機能を提供します。このようにして、PolarDB-X は迅速なバックアップとスケーラビリティを提供し、ビジネス要件に基づいてインスタンスのストレージ容量を拡張できます。 PolarDB-X は複数のデータレコードを同時に書き込むことができます。この機能と共有ストレージにより、データを移行することなく、数秒以内にインスタンスを柔軟にスケーリングできます。これにより、PolarDB-X はスケーリング操作中にスムーズなユーザーエクスペリエンスを提供できます。

エコシステム互換性

PolarDB-X は、MySQL のオープンソースエコシステムを完全に受け入れ、貢献しています。 PolarDB-X はコードベースを完全に制御し、分散 MySQL データベースと互換性があります。 PolarDB-X アーキテクチャはシンプルでオープンです。これにより、PolarDB-X の操作と保守が容易になります。 PolarDB-X は、DTS、データディザスタリカバリ、DMS などの他の Alibaba Cloud データベースサービスと連携してクローズドループを形成できます。このようにして、PolarDB-X は Alibaba Cloud のエコシステム全体に接続できます。