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

PolarDB:製品の概要

最終更新日:Aug 12, 2024

PolarDBとは

PolarDBは、Alibaba Cloudによって開発された新世代のデータベースサービスです。 このサービスでは、コンピューティングをストレージから切り離し、統合されたソフトウェアとハードウェアを使用します。 PolarDB は、自動スケーリング、高性能、大容量ストレージを備えた、安全で信頼性の高いデータベースサービスです。 PolarDBは、MySQLおよびPostgreSQLと100% 互換性があり、Oracleと高い互換性があります。

PolarDBには、PolarDB for MySQLPolarDB for PostgreSQLPolarDB-Xの3つのエンジンがあります。 Double 11イベントでの長年のベストプラクティスは、PolarDBがオープンソースエコシステムの柔軟性と、商用クラウドネイティブデータベースの高いパフォーマンスとセキュリティを提供できることを証明しています。

データベースエンジン

生態系

互換性

アーキテクチャ

プラットフォーム

シナリオ

PolarDB for MySQL

MySQL

100% 対応MySQL

共有ストレージと計算ストレージの分離アーキテクチャ

パブリッククラウド、Apsara Stack Enterprise Edition

MySQLエコシステムのクラウドネイティブデータベース

PolarDB for PostgreSQL

PostgreSQLとOracle

100% との互換性MySQL高い互換性Oracle

共有ストレージと計算ストレージの分離アーキテクチャ

パブリッククラウド、Apsara Stack Enterprise Edition、DBStack

PostgreSQLエコシステムのクラウドネイティブデータベース

PolarDB-X

MySQL

Standard EditionはMySQLと100% 互換性がありEnterprise EditionはMySQLと高い互換性があります

共有なしと分散アーキテクチャ

パブリッククラウド、Apsara Stack Enterprise Edition、DBStack

MySQLエコシステムにおける大規模データと超高同時アプリケーション

PolarDB for MySQLおよびPolarDB for PostgreSQLアーキテクチャ

PolarDB for MySQLPolarDB for PostgreSQLはどちらも、共有ストレージと計算ストレージのデカップリングのアーキテクチャを使用しています。 クラウドネイティブアーキテクチャ、統合されたソフトウェアとハードウェア、共有分散ストレージが特徴です。 物理レプリケーションとRDMAは、プライマリノードと読み取り専用ノードの間で使用され、待ち時間を短縮し、データ同期を高速化します。 これにより、非同期レプリケーションによって引き起こされるデータの一貫性が強くないという問題が解決され、単一障害点 (SPOF) の場合のデータ損失がゼロになります。 このアーキテクチャでは、数秒以内のノードスケーリングも可能です。

コアコンポーネント

  • PolarProxy

PolarDBは、PolarProxyを使用してアプリケーションに外部サービスを提供します。 PolarProxyは、アプリケーションからの要求をデータベースノードに転送します。 プロキシを使用して、認証、データ保護、およびセッション維持を実行できます。 プロキシは SQL 分を解析し、書き込みリクエストをプライマリノードに送信し、読み取りリクエストを複数の読み取り専用ノードに均等に分散します。

  • 計算ノード

クラスターには、1つのプライマリノードと複数の読み取り専用ノードが含まれます。 Multi-master cluster Editionのクラスター (PolarDB for MySQLのみ) は、複数のプライマリノードと複数の読み取り専用ノードをサポートします。 計算ノードは、汎用または専用のいずれかです。

  • 共有ストレージ

クラスター内の複数のノードがストレージリソースを共有します。 1つのクラスターで最大100テラバイトのストレージ容量をサポートします。

03301

アーキテクチャのメリット

  • 大容量ストレージ

クラスターあたりの最大ストレージ容量は 100 TB です。 単一ホストのストレージ制限のため、データベースシャーディング用にクラスターを購入する必要はありません。 これにより、アプリケーション開発が簡素化され、O&Mワークロードが軽減されます。

  • 費用対効果

PolarDBは、コンピューティングとストレージを分離します。 読み取り専用ノードをPolarDBクラスターに追加する場合、コンピューティングリソースに対してのみ課金されます。 従来のデータベースソリューションでは、ノードを追加すると、コンピューティングリソースとストレージリソースの両方に対して課金されます。

  • 数分で柔軟にスケーリング

PolarDBは、コンピューティングリソースの高速スケーリングをサポートしています。 これは、コンテナ仮想化、共有ストレージ、および計算ストレージの分離に基づいています。 ノードを追加または削除するのに5分しかかかりません。 ストレージ機能は自動的にスケールアップされます。 スケールアッププロセス中、サービスは中断されません。

  • 読み取り整合性

PolarDBは、読み書き分離が有効になっているクラスターエンドポイントにログシーケンス番号 (LSN) を使用します。 これにより、読み取り操作のグローバルな一貫性が保証され、プライマリノードと読み取り専用ノード間のレプリケーション遅延によって引き起こされる不整合が防止されます。

  • 物理レプリケーションの遅延はミリ秒レベル

PolarDBは、redoログに基づいて、プライマリノードから読み取り専用ノードへの物理レプリケーションを実行します。 物理レプリケーションは、バイナリログに基づく論理レプリケーションを置き換えます。 このようにして、複製効率および安定性が改善される。 インデックスやフィールドの追加など、大きなテーブルに対してDDL操作を実行しても遅延は発生しません。

  • 数秒以内のデータバックアップ

分散ストレージに基づいて実装されたスナップショットは、数分でテラバイトのデータを持つデータベースをバックアップできます。 バックアッププロセス全体でロックは不要で、高い効率とビジネスへの影響を最小限に抑えます。 データはいつでもバックアップできます。

PolarDB-Xアーキテクチャ

PolarDB-Xは、共有なしと計算ストレージのデカップリングのアーキテクチャを使用します。 このアーキテクチャでは、ビジネス要件に基づいて階層的な容量計画を実行し、マススケーリングを実装できます。

コアコンポーネント

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

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

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

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

03302

アーキテクチャのメリット

  • 高可用性

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

  • 高い互換性

PolarDB-Xは、SQL文や関数型などのMySQLと互換性があります。 PolarDB-Xは、分散トランザクション間でデータのグローバルな一貫性を維持するTSOを提供します。 PolarDB-Xは、TSOと2PCを使用して完全なACID機能を提供し、分散システムの読み取りコミットおよび繰り返し読み取り分離レベルをサポートします。 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シナリオに対してクエリのパフォーマンスが線形に改善されます。