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

PolarDB:概要

最終更新日:Jun 11, 2024

このトピックでは、PolarDB-Xの統合集中分散ソリューションについて説明します。

背景情報

ビジネス要件に基づいて、集中データベースまたは分散データベースを選択できます。 ほとんどの中小企業 (SME) にとって、集中型データベースは日常的なビジネス要件を満たすことができます。 集中型データベースは、適度な規模のリソースを提供し、費用対効果が高く、保守および運用が比較的容易である。 分散データベースは高いパフォーマンスを提供し、複雑なビジネスシナリオを効率的に管理できます。 分散データベースは、高スループット、大容量のストレージ容量、最小遅延、容易なスケーラビリティ、および堅牢な可用性の要件を満たすことができます。 ただし、分散データベースはより高価であり、技術的障壁とO&Mコストが高く、中小企業には適さない可能性があります。

中小企業は、時折ビジネストラフィックが急増する可能性があります。 変動に対処するために、SMEは、高い同時実行性とスループットを管理でき、必要に応じてスケーリングできるデータベースシステムを必要とします。 ビジネスが成長するにつれて、集中型データベースを使用する企業は、増加する要件を満たすために分散スケーリングを必要とする場合があります。

上記の要件に対処するために、PolarDB for Xscale (PolarDB-X) は、分散データベースの可用性と回復力、および集中データベースの集中制御および管理機能を組み合わせた統合集中分散ソリューションを提供します。

主な機能と利点

統合された集中分散データベースインスタンス上のデータノード (DN) は、集中的に設定され、スタンドアロンデータベースと完全に互換性があります。 ビジネスが成長し、分散システムへのアップグレードが必要になると、アーキテクチャを分散モデルにシームレスに移行できます。 アップグレード中、分散コンポーネントは既存のDNとシームレスに統合されます。 このようにして、データの移行やアプリケーションの変更を必要とせずに、分散アーキテクチャによって提供される可用性とスケーラビリティの向上を実現できます。

次のセクションでは、PolarDB-X統合集中分散ソリューションの主要な機能と利点について説明します。

インスタンスのエディション

PolarDB-Xインスタンスは、Standard Edition (集中型) およびEnterprise Edition (分散型) のエディションで利用できます。

集中モードのStandard Edition

PolarDB-X Standard Editionは集中モードで、分散DNで複数のレプリカを使用してサービスを提供します。 Standard Editionは、2コアと4 GBのメモリの最小仕様をサポートします。 詳細は、「インスタンスタイプ」をご参照ください。

image.png

PolarDB-X Standard Editionは、Paxos多数コンセンサス複製プロトコルを使用します。 MySQLのプライマリ-セカンダリレプリケーションプロトコルと比較して、Paxosはレプリカ間の強い一貫性を保証し、0の回復ポイント目標 (RPO) と30秒未満の回復時間目標 (RTO) を達成するのに役立ちます。 これらの機能は、財務シナリオにおける厳しいディザスタリカバリ要件を満たすことができます。 詳細については、「高可用性の概要」をご参照ください。 Lizard分散トランザクションエンジンは、オープンソースのMySQLと比較して、可用性の強化と40% 30% のパフォーマンスの向上も提供します。

PolarDB-X Standard Editionインスタンスを購入するには、EditionパラメーターをStandard Editionに設定します。 詳細については、「PolarDB-Xインスタンスの作成」をご参照ください。

分散モードのEnterprise Edition

PolarDB-X Enterprise Editionは、計算ノード (CN) 、DN、変更データキャプチャ (CDC) ノード、列ストアノード (COLUMNAR) 、およびグローバルメタサービス (GMS) を含む分散アーキテクチャを使用します。 次の図は、Enterprise Editionのアーキテクチャを示しています。

image.png

PolarDB-X Enterprise Editionは、MySQLエコシステムとの互換性が高いです。 分散トランザクションの強力な一貫性を保証し、分散並列クエリを容易にします。 システムは、最小の1ノード (集中型) から1,024ノード (分散型) にスケーリングすることができる。 システムは、毎秒数千万のクエリ (QPS) を処理し、ペタバイト規模でデータを管理することもできます。

PolarDB-X Enterprise Editionインスタンスを購入するには、EditionパラメーターをEnterprise Editionに設定します。 詳細については、「PolarDB-Xインスタンスの作成」をご参照ください。

インスタンスをStandard EditionからEnterprise Editionにアップグレードする

ビジネスが急速に成長するにつれて、PolarDB-X Standard Editionユーザーは集中データベースシステムの限界に直面する可能性があります。 たとえば、過度に大きくなるテーブルに対するクエリのパフォーマンスが低下します。 データベースは、高同時性クエリの下では苦戦する可能性があり、その結果、高負荷状態が持続し、パフォーマンスが長期間低下します。 データベースは、大量のデータを処理するのに必要な高度な分析機能を欠いている場合があります。 データベースをスケールアップすることによって上記の課題を軽減する試みは、費用がかかり、効果がないことがわかっています。

PolarDB-Xを使用すると、インスタンスをStandard EditionからEnterprise Editionにアップグレードし、分散機能とハイブリッドトランザクション /分析処理 (HTAP) 機能を使用して、集中型データベースに関連する課題に対処できます。 分散システムの利点に加えて、アップグレードは、ユーザーが従来のスタンドアロンMySQLデータベースに期待するエクスペリエンスとパフォーマンスを保持します。

上の図は、Standard EditionからEnterprise EditionへのPolarDB-Xインスタンスのシームレスな一括アップグレードプロセスを示しています。 アップグレードには次の機能があります。

  • Standard EditionとEnterprise Editionは同じDNを共有します。 アップグレードにより、データを移行することなく、CN、CDC、GMSがStandard Editionに直接追加されます。 切り替えまたはロールバックを実行するかどうかにかかわらず、同じデータセットが書き込まれるため、データの不整合のリスクが排除されます。

  • 集中テーブルは、分散単一テーブルに変換できます。 PolarDB-Xのオンラインデータ定義言語 (DDL) 機能を使用することで、分散データベースシステムが提供するスケーラビリティを活用できます。

  • Standard EditionからEnterprise Editionへのアップグレード後、接続エンドポイントは変更されません。 アプリケーションを変更する必要はありません。 アップグレードプロセスでは、数分間しか切断されない場合があります。

  • このシステムは、集中型MySQLエコシステムと深く互換性があるように設計されています。 これにより、アプリケーションを変更する必要のない透過的な分散エクスペリエンスが保証されます。 詳細については、「MySQLとの互換性」をご参照ください。

Standard EditionからEnterprise Editionへのアップグレード後、新しい配布機能によりパフォーマンスオーバーヘッドが追加される場合があります。 この問題に対処するために、PolarDB-Xテーブルグループとパーティショングループテクノロジを使用して、関連データが集中管理されていることを確認します。 このアプローチは、分散トランザクションの実行と複雑なクエリの処理を合理化します。 その結果、分散環境における性能は、特に、すべての関連データが並置される単一パーティションのシナリオにおいて、集中型データベースシステムの性能に酷似するように最適化される。

ストレージリソースプールと弾性仕様

PolarDB-Xでは、ストレージリソースプールの概念とLOCALITY属性を導入して、ユーザーがオンデマンドで集中データベースを分散データベースにスケーリングできるようにします。

  • ストレージリソースプールは、DNを別個の重複しないグループに編成して、各DNが1つのプールのみに属することを保証する。 ストレージリソースプールにDNを追加したり、ストレージリソースプールからDNを削除したりできます。

  • LOCALITY属性を使用して、データベース、テーブル、またはパーティションのDNを指定できます。

次のセクションでは、ストレージリソースプールとLOCALITY属性機能を使用して、ユーザーがデータベース機能を分散アーキテクチャにシームレスに拡張できるようにする方法について説明します。

  • シナリオ1: マルチテナントSoftware as A Service (SaaS) システムは、元々、PolarDB-X集中型Standard Editionインスタンスで動作します。 インスタンスがStandard EditionからEnterprise Editionにアップグレードされた後、テナントデータを異なるストレージリソースプールに分離できます。 各プール内では、前の図のストレージリソースプール1に示すように、テーブルは単一のテーブル構造に保持されます。 このアプローチにより、データの整理とシンプルさを維持しながら分散スケーリングを実行できます。

  • シナリオ2: eコマースビジネスは、元々、PolarDB-X集中型Standard Editionインスタンスで実行されます。 ユーザーベースとトランザクション量が増加すると、前の図のストレージリソースプール3に示すように、ビジネスデータをリソースプール内の複数のDNに分散できます。 このアプローチにより、システムは、性能や速度を損なうことなく、増加する要求に対処できます。

次の図は、オンラインDDLを使用して、分散アーキテクチャで集中データをオンデマンドで分散する方法を示しています。

  • 複数の単一テーブルを使用するビジネスの場合は、単一テーブル構造でテーブルを維持します。 オンラインDDLを使用して、ノードをリソースプールに追加し、プール内の複数のDNにテーブルを均等に分散します。

  • 大きなテーブルを使用するビジネスの場合、オンラインDDLを使用して、テーブルを、パーティションがリソースプール内のDNに分散された分散テーブルに変換します。 ノードがストレージリソースプールに追加されると、分散テーブルのデータはDN間で均等に分散されます。

  • 大きなテーブルと複数の単一テーブルを使用するビジネスの場合、オンラインDDLを使用して、大きなテーブルを、パーティションがリソースプール内のDNに分散された分散テーブルに変換します。 単一テーブル構造で単一テーブルを維持し、単一テーブルを異なるリソースプールに配布します。 このアプローチにより、リソース間でのテーブルのスケーラブルで柔軟な分散が可能になり、ビジネスの成長に伴い、線形および増分スケーラビリティのシステム容量が強化されます。

リソースに対するDNの要件は、データ分布に基づいて異なります。 PolarDB-Xでは、DNを個別にアップグレードまたはダウングレードできます。 これにより、柔軟な方法で仕様を調整し、全体的なリソース使用量を改善できます。

ストレージリソースプールとDNの仕様を管理する方法については、「データノードの管理」をご参照ください。