Cockroach Labsはクラウドサービスの性能を評価した「2022 Cloud Report」から、「AWS」「GCP」「Azure」について、OLTPアプリケーションの性能テスト結果を評価した。4つの教訓が得られたという。
この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。
Amazon Web Services(AWS)、Google Cloud Platform(GCP)、Microsoft Azure(Azure)の処理性能はどの程度違うのだろうか。クラウドネイティブな分散SQLデータベース「CockroachDB」を手掛けるCockroach Labsはクラウドサービスの処理性能のテスト結果をまとめた「2022 Cloud Report」を公開している。
2022年7月21日(米国時間)、同社はこれら3つのクラウドサービスでOLTP(オンライントランザクション処理)アプリケーションの性能テスト結果を評価した。その結果4つの興味深い教訓が得られたという。
Cockroach Labsは、同社の「CockroachDB」を用いた「Cockroach Labs Derivative TPC-C nowait」というカスタムベンチマークテストを用いて、さまざまなサイズのインスタンスを使い、OLTPアプリケーションを実行して、性能を比較した。
どんなアプリケーションでも、低レイテンシ(低遅延)の実現は、優れた顧客体験を構築する上で重要だ。だが、テスト結果によればレイテンシは3つのクラウド間で大きな差別化要因にはならないことが分かった。
具体的には、テストツール「netperf 2.7.1」を用いてAWSとGCP、Azureでアベイラビリティゾーン(AZ)内、さらにクロスリージョンのレイテンシをそれぞれテストしたところ、3つのクラウドサービス間で特に大きな差はなかった。
AZ内テストでは、3つのクラウドサービスともレイテンシの最低値は0.05ミリ秒(50マイクロ秒)以下に収まっており、事実上同程度と結論付けられるほど近い値だった。
クロスリージョンテストでは、差はもう少し広がったものの、3つのクラウドサービスはどれも妥当なレイテンシを提供していた。
全体として、AWS、GCP、Azureはレイテンシの差が小さく、いずれもほとんどのアプリケーションでうまく機能するだろうと考えられる。だが、非常に高い性能が求められるユースケースについては、2022 Cloud Reportで報告されているクラウドごとのテスト結果を詳しく調べるとよいという。
Cockroach Labsはベンチマーク結果から、ほとんどのユースケースにおいて、高性能ストレージ(AWSの「io2」、GCPの「pd-extreme」、Azureの「ultra-disk」)はコストに見合わないだろうと結論付けた。
ミッドレンジのストレージオプション(AWSの「gp3」、GCPの「pd-ssd」、Azureの「premium-disk」)から高性能オプションに移行すると、ノードの運用コスト全体が大きく上昇する。
3つのクラウドサービスはいずれも、ミッドレンジストレージでは、ノードの運用コスト全体に占める割合は30%近くにとどまる。だが、高性能ストレージでは運用コスト全体の70%近くを占めている。ほとんどのユースケースでは、高性能ストレージで必要になるこうした追加コストは、割に合わないだろう。
ただし、非常に大規模な(96個以上のvCPU)ノードを実行している場合や、ハイパフォーマンスコンピューティング(HPC)ワークロードがある場合などは、可能性としてハイエンドのストレージオプションの費用対効果が最も高いことがあり得る。
Cockroach LabsのOLTPベンチマークでは、小規模インスタンスタイプ(8vCPU)の性能が大規模インスタンスタイプ(〜32vCPU)を上回った。さらに、小規模インスタンスタイプは性能だけでなく、価格性能比でも優れていた。
これは3つのクラウドサービス全てに当てはまる。ただし、GCPの「t2d-standard-32」のような一部の大規模インスタンスタイプは、優れた価格性能比を提供している。
なお、AMDのMilanアーキテクチャのEPYCプロセッサを搭載したインスタンスは、全体的な性能ランキングで優位を占め、Cockroach Labsの価格性能比指標も非常に良好だった。
Cockroach Labsのネットワークベンチマークでは、GCPとAzureのインスタンスが、それぞれの料金表に示されている値を上回るスループットを記録する場合があった。公称値を一貫して上回る性能を示したインスタンスタイプはないものの、一部のインスタンスでは性能が一時的に急上昇し、GCPとAzureの公称値をはるかに超えた。
ただし、これは一時的な事象であるため、高性能が必要なアプリケーションでは、そのニーズに見合ったスループットを十二分に確保できるようにコストをかける必要がある。
Copyright © ITmedia, Inc. All Rights Reserved.