AlloyDB とセルフマネージド PostgreSQL: コスト パフォーマンスの比較
Sridhar Ranganathan
Product Manager, Google Cloud Databases
Sheshadri Ranganath
Engineering Director, Google Cloud Databases
※この投稿は米国時間 2024 年 5 月 11 日に、Google Cloud blog に投稿されたものの抄訳です。
PostgreSQL はオープンソースの高度なリレーショナル データベース管理システムです。堅牢かつ信頼性の高い、スケーラブルなデータベース ソリューションを提供することで、ビジネスを支援しています。データの完全性とビジネスの継続性を確保するセキュリティ、可用性、パフォーマンスなどの豊富な機能を備えていることもその特長です。その広範な拡張性と活発なコミュニティ サポートにより、各社が独自に運営するデータベース システムに取って代わる柔軟で費用対効果の高い代替手段になり得る PostgreSQL は、自社の核となるさまざまな用途に適した多目的のデータベース基盤を求める組織にとって理想的な選択肢となっています。
一方、AlloyDB for PostgreSQL は Google Cloud が提供するエンタープライズ グレードのフルマネージド データベース サービスで、標準の PostgreSQL データベース エンジンとの完全な互換性を維持しながらも、同エンジンにいくつかの機能強化を追加するものです。最も要求の厳しいワークロードであっても、その優れたパフォーマンス、高可用性、スケーラビリティをもって処理し、標準の PostgreSQL を上回る性能を発揮します。さらに AlloyDB は優位性の高い Google のインフラストラクチャと ML を活用して、自動化されたデータベース管理、インテリジェントなリソース最適化、分析クエリの高速化を実現しており、PostgreSQL との互換性を持つ強力で洗練されたソリューションを求めている組織にとって魅力的な選択肢となっています。では、どちらを選ぶべきでしょうか。
![https://storage.googleapis.com/gweb-cloudblog-publish/images/1st-image-blog-2x-perf-andi.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/1st-image-blog-2x-perf-andi.max-2200x2200.png)
![https://storage.googleapis.com/gweb-cloudblog-publish/images/1st-image-blog-2x-perf-andi.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/1st-image-blog-2x-perf-andi.max-2200x2200.png)
Google Cloud Next 24 では、AlloyDB がセルフマネージド PostgreSQL よりも最大 2 倍優れたコスト パフォーマンスを示すとともに、同一サイズのインスタンスを基準に比較して最大 4 倍優れたトランザクション パフォーマンスを発揮することをご紹介しました。このブログ投稿では、そうした比較の背後にあるデータをさらに深く掘り下げ、AlloyDB を選ぶことで上乗せされる価値を探っていきます。
パフォーマンスの比較
AlloyDB では、トランザクション レイヤやクエリ処理レイヤを含む PostgreSQL のカーネルにいくつかの機能強化を施し、自動メモリ管理や適応型バキューム管理などの自己管理型オートパイロット機能を追加してあります。AlloyDB の持つインテリジェントな分散ストレージ システムや自動化されたストレージ階層化と組み合わせると、実行にあたり標準の PostgreSQL よりもはるかに効率性が高くなります。
私たちは、総所有コスト(TCO)とトランザクションあたりの費用の両方の観点から、Google Compute Engine(GCE)上で実行されるセルフマネージド PostgreSQL と AlloyDB の費用対効果を比較するパフォーマンス評価を行いました。評価にあたっては、HA を備え 8 vCPU / 64 GB メモリで構成される AlloyDB for PostgreSQL と、同じく HA を意図した構成の 2 つの VM(それぞれに 16 vCPU / 128 GB メモリを使用)上で実行されるセルフマネージド PostgreSQL 15 を比較しました。
以下の表とグラフは、コスト パフォーマンスの改善を示しています。
![https://storage.googleapis.com/gweb-cloudblog-publish/images/2nd-image-Blog-2x-perf-chart.max-1500x1500.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/2nd-image-Blog-2x-perf-chart.max-1500x1500.png)
![https://storage.googleapis.com/gweb-cloudblog-publish/images/2nd-image-Blog-2x-perf-chart.max-1500x1500.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/2nd-image-Blog-2x-perf-chart.max-1500x1500.png)
構成に半分のコンピューティング リソースしか使用していないにもかかわらず、AlloyDB はより優れた TPM を示しました。データの 30% がキャッシュされるように構成されたデータベースでは、セルフマネージド型の標準の PostgreSQL のワークロードと比較して、パフォーマンスとコスト パフォーマンスのいずれもが最大 2 倍になりました。AlloyDB の CPU 使用率は 90% 近くに及んでおり、これは AlloyDB のカーネルの方が所与のリソースを効率的に使用していることを示唆しています。
同じ GCE SKU(16 vCPU / 128 GB)を使用して AlloyDB をデプロイした場合を確認すると、パフォーマンスが 4 倍向上することがわかりました。AlloyDB は、より多くの vCPU に対応して拡張できるように設計されており、vCPU の数が増えるとコスト パフォーマンスが向上します。現在、AlloyDB は最大 128 個の vCPU をサポートしており、これは 864 GB のメモリに相当します。
標準の PostgreSQL を Compute Engine にデプロイすると、IOPS の制約や CPU のスケーリング上の問題などのリソースの制限が生じ、大量のデータを処理する能力が妨げられます。なお、この分析には、データベースの自己管理に必要となる手動のリソースや、全体的な費用を増加させる可能性のあるゾーン間のネットワーキング関連の追加費用は考慮されておりませんのでご注意ください。
さらなる費用削減
クラスタ内の AlloyDB コンピューティング インスタンスは、同じリージョンの Colossus ストレージを利用します。つまり、HA をデプロイしてレプリカノード(この投稿の公開時点では最大 20 個)を追加すると、それらはすべて同じストレージを使用することになります。たとえば、5 TB のデータベースがあり、セルフマネージド型の環境で 1 個の HA と 4 個のリードレプリカを使用する場合、ストレージの費用は容量の 6 倍になります(プライマリ 1、スタンバイ 1、読み取りノード 4)。一方 AlloyDB を使用すると、1 x 5 TB の支払いで済むことになります。
![https://storage.googleapis.com/gweb-cloudblog-publish/images/3rd-image-storage.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/3rd-image-storage.max-2200x2200.png)
![https://storage.googleapis.com/gweb-cloudblog-publish/images/3rd-image-storage.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/3rd-image-storage.max-2200x2200.png)
また、AlloyDB のストレージ容量を事前にプロビジョニングして、IOPS 用に追加の容量を割り当てる必要もありません。AlloyDB のクラウドスケール アーキテクチャでは、ストレージの使用量は動的であり、使用量に応じて拡大したり縮小したりします。料金は使用した容量に対してのみ発生します。
AlloyDB では、ゾーンを跨いだ HA とレプリカのデータ レプリケーションに追加費用は発生しません。リードレプリカのラグが最大 25 倍低いため、同じストレージを使用し、準リアルタイムのデータを使用して水平方向にスケーリングできます。
さらに、AlloyDB は、トランザクション、分析、ベクター データベースのワークロード向けの単一のデータストアとして使用できます。以上のような目的のために複数のデータベースをプロビジョニングする必要がないため、追加のコンピューティング、ストレージ、ネットワーキング、ETL のデプロイと管理の側面が軽減されます。
![https://storage.googleapis.com/gweb-cloudblog-publish/images/4th-image-single-data-store.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/4th-image-single-data-store.max-2200x2200.png)
![https://storage.googleapis.com/gweb-cloudblog-publish/images/4th-image-single-data-store.max-2200x2200.png](https://storage.googleapis.com/gweb-cloudblog-publish/images/4th-image-single-data-store.max-2200x2200.png)
選択したインフラストラクチャ上で PostgreSQL データベースを管理すると、費用面での利点が得られますが、いくつかの課題と隠れた費用が伴います。これには、ピーク時のワークロードに対応したキャパシティ プランニング、ハードウェア リソースの継続的なメンテナンス、展開、スケーリング、セキュリティ、高可用性、バックアップ、障害復旧などの重要なデータベース タスクの手動管理が含まれます。これにより、チームに負担がかかり、管理オーバーヘッドと費用の増加につながる可能性があります。
AlloyDB はこうした要件に対応するフルマネージド サービスを提供するもので、メンテナンスを含め 99.99% の稼働時間を目指す SLA に基づきミッションクリティカルなアプリケーションを実行できるよう支援します。
一歩先を行く AlloyDB
AlloyDB は、共有リージョン ストレージにより最大 2 倍の価格パフォーマンスの向上とさらなる費用削減を提供する点で、セルフマネージド データベースを上回ります。さらに、AlloyDB は、日常的な管理タスクの自動化、オンデマンドの垂直(読み取り / 書き込み)および水平(読み取り専用)のスケーラビリティ、最小限のメンテナンスのダウンタイム、およびカラム型エンジンと AI 機能の組み込みを通じて、自己管理データベースに関連する課題を大幅に軽減します。これらの機能と利点により、AlloyDB は、自己管理型の PostgreSQL 環境に代わる、より優れた、より高速で、より安価な代替手段を提供します。
次のステップ
-
Andi Gutman が登壇した Google Cloud Next '24 のスポットライト セッションでは、AlloyDB を使用したさまざまなイノベーションを紹介しています。
-
AlloyDB の詳細については、AlloyDB for PostgreSQL: インテリジェントでスケーラブルなストレージをご覧ください。
-
AlloyDB の概要については、ドキュメントの概要セクションを参照してください。
-
$300 分の無料クレジットと 20 種類以上の Always Free プロダクトを活用して Google Cloud で構築を開始しましょう。https://cloud.google.com/free
-Google Cloud データベース担当プロダクト マネージャー Sridhar Ranganathan
-Google Cloud データベース担当エンジニアリング ディレクター Sheshadri Ranganath