PolarDB は、Alibaba Cloud によって開発された次世代の クラウドネイティブデータベースサービス です。コンピューティングとストレージが分離されたアーキテクチャを使用し、ソフトウェアとハードウェアをシームレスに統合することで、高効率で信頼性の高いデータベースソリューションを提供します。PolarDB は、秒単位の伸縮性、優れたパフォーマンス、大規模なストレージ容量、強力なセキュリティと信頼性などの機能を提供します。 PolarDB for PostgreSQL Enterprise Edition は、PostgreSQL 11、14、15、16 を含む複数のネイティブ PostgreSQL バージョンと完全に互換性があります。クラウドネイティブのアーキテクチャ理念に基づいて設計された PolarDB は、商用データベースの安定性、信頼性、高パフォーマンス、スケーラビリティと、オープンソースクラウドデータベースのシンプルさ、オープン性、迅速なイテレーションを兼ね備えています。
PolarDB for PostgreSQL Enterprise Edition とはPolarDB for PostgreSQL Enterprise Edition とは何ですか?
PolarDB for PostgreSQL Enterprise Edition は、コンピューティングとストレージが分離されたアーキテクチャを使用します。すべてのコンピューティングノードは、統合されたストレージレイヤーを共有します。システムは、分単位のリソーススケーリング、秒単位の障害復旧、グローバルデータ整合性、無料の データバックアップ およびディザスタリカバリ機能を提供します。
PolarDB for PostgreSQL Enterprise Edition のアーキテクチャには、次の特徴があります。
1 つのプライマリノードと複数の読み取り専用ノード
PolarDB は、1 つのプライマリノードと最大 15 の読み取り専用ノードを含むマルチノードクラスタアーキテクチャを使用します。プライマリノードは、読み取りおよび書き込みリクエストを処理します。読み取り専用ノードは、読み取りリクエストのみを処理します。このアーキテクチャは、アクティブ/アクティブフェールオーバーメカニズムを使用して、ノード間のスムーズで自動的なロールの移行を可能にし、高いデータベース可用性を確保します。
読み書き分離は、透過的で可用性が高く、適応性のあるロードバランシング機能です。PolarDB はこの機能を無料で提供します。読み書き分離機能は、クラスタエンドポイントを使用して、PolarDB クラスタの異なるノードに SQL リクエストを自動的に分散します。これにより、システムは複数のノードの処理能力を集約し、高スループットの同時 SQL 処理機能を提供します。
コンピューティングとストレージの分離
PolarDB は、コンピューティングとストレージを分離するアーキテクチャを採用しており、パブリッククラウド環境におけるビジネスの弾力的で適応性のあるクラスタスケーリングの要件を満たします。
クラスタのコンピューティングノード (データベースエンジンサーバー) は、メタデータのみを格納します。リモートデータノード (データベースストレージサーバー) は、REDO ログを含む実際のデータファイルを格納します。コンピューティングノードは、REDO ログ関連のメタデータのみを同期する必要があるため、プライマリノードと読み取り専用ノード間のレプリケーションの遅延が大幅に短縮されます。プライマリノードに障害が発生した場合、読み取り専用ノードを新しいプライマリノードに迅速に昇格させることができます。
高速相互接続
クラスタのコンピューティングノードとデータノードは、高速ネットワークで相互接続されており、データ転送には RDMA (Remote Direct Memory Access) テクノロジーが使用されます。これらの機能により、入出力 (I/O) パフォーマンスが大幅に向上し、I/O ボトルネックが軽減されます。
共有分散ストレージ
複数のコンピューティングノードが 1 つのコピーのデータを共有するため、ストレージコストが大幅に削減されます。新しい分散ストレージシステムと分散ファイルシステムにより、個々のデータベースサーバーのストレージ制限に制約されることなく、ストレージ容量をシームレスかつ動的にスケーリングできます。これにより、クラスタは最大数百テラバイトのデータ量を処理できます。
信頼性と整合性の高いデータ
データはデータノード全体で複数のレプリカに格納されるため、データの信頼性が確保されます。Parallel-RAFT プロトコルは、レプリカ間のデータ整合性を確保します。
PolarDB for PostgreSQL Enterprise Edition を選択する理由
使いやすさ
PolarDB for PostgreSQL Enterprise Edition は、ネイティブ PostgreSQL と完全に互換性があります。ネイティブ PostgreSQL 用に設計されたアプリケーションとコードは、変更をほとんど、あるいはまったく行わずに PolarDB for PostgreSQL Enterprise Edition 上で実行できます。
コスト削減
コンピューティングとストレージの分離: コンピューティングノードはストレージリソースを共有します。読み取り専用のコンピューティングノードを追加する場合、コンピューティングノードの料金のみが課金されるため、スケーリングコストが大幅に削減されます。
サーバーレスストレージ: ストレージ容量を手動で構成する必要はありません。ストレージ容量は、格納されているデータ量に基づいて自動的にスケーリングされます。実際に使用したストレージ容量に対してのみ料金を支払う必要があります。
最適なパフォーマンス
高度に最適化されたデータベースカーネルと、物理レプリケーション、RDMA データ転送、共有分散ストレージ戦略を組み合わせることで、クラスタのパフォーマンスが大幅に向上します。
クラスタアーキテクチャには、1 つのプライマリノードと最大 15 の読み取り専用ノードが含まれており、高い同時実行性シナリオでのパフォーマンス要件を満たすことができ、読み取りが多く書き込みが少ないワークロードに適しています。
クラスタは、1 つのプライマリノードと複数の読み取り専用ノードを備えており、コンピューティングノードに共有ストレージを使用します。プライマリノードでデータが変更または書き込まれると、更新はすぐに同期され、すべてのノードでアクセスできるようになります。
システムは、オンライントランザクション処理 (OLTP) パフォーマンスを大幅に向上させ、1 秒あたり 500,000 件を超える読み取りリクエストと 1 秒あたり 150,000 件を超える書き込みリクエストをサポートします。
数百テラバイトのデータをサポートする大規模ストレージ容量
分散ストレージシステムと分散ファイルシステムにより、個々のノードのストレージ制限に制約されることなく、ストレージ容量をスムーズかつ動的に拡張できます。デフォルトでは、単一のクラスタで最大 500 TB のストレージ容量を提供できます。
PolarStore(PSL4/PSL5)は、ペタバイト規模のストレージ機能を提供します。関連する要件がある場合は、お問い合わせ いただき、必要なリソースを予約してください。
高可用性、信頼性、およびセキュリティ
共有分散ストレージ設計により、プライマリノードから読み取り専用ノードへの非同期レプリケーションに関連するデータの不整合の問題が解決され、シングルポイント障害が発生した場合のデータ損失がゼロになります。
マルチゾーンアーキテクチャは、複数のゾーンにデータレプリカを保持し、クラスタのディザスタリカバリおよびバックアップ機能を提供します。
システムは、ログシーケンス番号 (LSN) を使用して、クラスタエンドポイントを使用する読み取り操作のグローバル整合性を確保し、プライマリノードと読み取り専用ノード間のレプリケーションレイテンシによって発生する不整合を防ぎます。
REDO ベースの物理レプリケーションが binlog ベースの論理レプリケーションに取って代わり、プライマリノードと読み取り専用ノード間のレプリケーション効率と安定性が向上します。これにより、大規模なテーブルへのインデックスやフィールドの追加など、負荷の高い DDL 操作によってデータベースの遅延が発生することがなくなります。
IP ホワイトリスト、仮想プライベートクラウド (VPC)、複数のデータレプリカなどの包括的なセキュリティ対策により、すべての段階でデータアクセス、ストレージ、および管理が保護されます。
迅速な弾力的スケーリング
5 分以内のスケールアップまたはスケールダウン
高度なコンテナ仮想化と共有分散ブロックストレージテクノロジーにより、CPU とメモリリソースを 5 分以内にスケールアップまたはスケールダウンできます。
5 分以内のスケールアウトまたはスケールイン
ノードを動的に追加または削除できるため、パフォーマンスが向上し、コストが削減されます。アプリケーションはクラスタエンドポイントを使用してクラスタと対話するため、ノードの追加や削除などの基盤となるインフラストラクチャの詳細と変更が隠されます。これにより、ノードの調整を管理する必要なく、アプリケーションがスムーズに機能します。
ロックフリーバックアップ
基盤となる分散ストレージソリューションに基づくスナップショットテクノロジーにより、数分以内にテラバイト単位のデータを持つデータベースをバックアップできます。バックアッププロセス全体でロックは不要なため、中断が最小限に抑えられ、システムパフォーマンスが向上します。
PolarDB for PostgreSQL Enterprise Edition クラスタの使用方法
PolarDB for PostgreSQL Enterprise Edition クラスタを管理するには、次の方法を使用できます。
PolarDB コンソール: ユーザーフレンドリーな Web ベースの GUI を提供し、PolarDB for PostgreSQL Enterprise Edition クラスタを効率的に管理できます。
CLI: PolarDB コンソールで使用可能なすべての操作を実行できます。
SDK: PolarDB コンソールで使用可能なすべての操作を実行できます。
API: PolarDB コンソールで使用可能なすべての操作を実行できます。
PolarDB for PostgreSQL クラスタを作成した後、次のいずれかの方法を使用してクラスタに接続できます。
データ管理 (DMS) を使用する。DMS は、データベース開発タスクを容易にする Web インターフェースを提供します。詳細については、「DMS を使用して PolarDB クラスタに接続する」をご参照ください。
pgAdmin などの一般的なデータベースクライアントを使用する。