【技術レポート】AWS EBSとDibertasのデータベース性能比較

2022.06.24

  • クラウド・マルチクラウド
  • ストレージ

今回、当社のマルチクラウドストレージ「Dibertas(ディバタス)」とAWS EBSとのデータベース性能について比較実験いたしましたので、その結果について詳細をご紹介いたします。

1.はじめに

 DCSでは、AWSやAzureといったクラウドサービスやオンプレミス環境に対応したマルチクラウドストレージサービス「Dibertas(ディバタス)」を提供しています。
Dibertasに保管されたデータは、複数のパブリッククラウドからアクセスできるため、マルチクラウド構成時のデータ転送費用を最適化することができます。
また、データは弊社データセンターに保管されることから、より透明性の高い環境でデータを保管したいというニーズをお持ちのユーザーにも最適なサービスです。
一方で、パブリッククラウドのサーバから地理的に離れたデータセンターのストレージを利用することになるため、パフォーマンスの影響が懸念されます。
本稿では、パブリッククラウドとしてAWSを採用した場合に、AWSとDibertas間の地理的な距離がパフォーマンスへの影響がないことを検証し、Dibertas利用時の注意事項をまとめました。

2. 検証目的

DibertasではパブリッククラウドとDibertas間に専用線を用意することで、LANと同等のレイテンシを実現しています。例としてAWSを利用した場合、EC2(AWSのサーバインスタンス)とDibertas間のレイテンシは、EC2とEBS(AWSのストレージサービス)間と同様に数ms程度となっています。
今回の検証では、DibertasとEBSの比較検証を実施することで、AWSとDibertas間のレイテンシがパフォーマンスへ大きな影響を与えることなく、想定したパフォーマンスが得られることを確認します。

3. 検証内容

AWS上に用意したサーバからDibertasとEBSに対して以下3種類の検証を行い、DibertasとEBSの性能比較を実施しました。

A.データベースパフォーマンス検証(分析系)

RDBベンチマークツール「TPC-H」を実行し、SQLの処理実行時間を比較します。
TPC-Hでは、複数のテーブルから成るデータベースに対して複数のクエリを発行し、その処理時間を計測します。
実行されるSQLはデータの選択量が多く、テーブル結合処理を含むことから、一般的にデータ分析の性能評価ツールとして利用されています。
そのため、分析系システム向けの検証として、TPC-Hを採用しました。

B. データベースパフォーマンス検証(オンライン系)

HammerDB(TPRC-C)を利用し、オンライントランザクション処理(OLTP)の評価値であるNOPMとTPMを比較します。
HammerDB(TPRC-C)では卸売業者の業務モデルを模したオンライン処理が実行され、1分間あたりの新規発注数(NOPM)と1分間あたりのトランザクション数(TPM)を取得することが可能です。
そのため、オンライン系システム向けの検証ツールとして、HammerDBを採用しました。

C.ファイルオープン検証

1MBのファイルを開き、ファイルの内容が表示されるまでの時間を計測し、EBSとDibertas間で比較を行います。
ファイルの拡張子は全14種類用意し、各3回ずつ合計42回の試験を実施することで、その平均値で比較を行いました。

今回の検証で利用した環境は下図の通りです。
AWS上のEC2インスタンスとして、PostgreSQLを導入したDBサーバを用意し、DibertasとEBSをそれぞれデータベース領域としてマウントしています。
EC2とEBSの通信はAWS内に閉じた通信となっていますが、EC2とDibertas間の通信は、Dibertas専用に用意した1GbpsのDirectConnectを利用して通信を行います。

AWS EBSとDibertasの性能比較の検証環境:構成図
(※1) Dibertasのスループットは、AWS-千葉DC間ネットワーク帯域1Gbps(125MB/s)に対して回線効率を80%として約100MB/sと試算
(※2) EBS(gp2)のスループットは最大250MB/s であり、最大でDibertasの2.5倍 程度の性能値となっている。
AWS EBSとDibertasの性能比較の検証環境:設定表

4.検証結果

検証の結果、データベースのパフォーマンス検証については、EBSと比較してDibertasが低い性能結果となることが確認できました。
これは検証環境のEBSとDibertasのスループットの性能差に起因するものと考えられます。
一方、データ通信量が少ないファイルオープン検証については、EBSとDibertasで同等の結果となりました。
各検証内容ごとの結果は以下の通りです。

A.データベースパフォーマンス検証(分析系システム向け)

TPC-HにおけるスモールファクタをSF100とした場合のクエリ実行結果は以下の通りです。
EBSの処理時間はDibertasに対して0.78倍短くなることが確認できました。
これは、EC2(r5a.xlarge)のスループット上限が約135MB/sであるのに対して、Dibertasのスループット上限は約100MB/sであることからEC2とDibertasのスループットの性能に約1.3倍程度の差が発生しており、これに起因するものであると考えられます。

データベースパフォーマンス検証(分析系システム向け)結果

B. データベースパフォーマンス検証(オンライン系システム向け)

EBS・Dibertasともに、ベンチマークテストを約7分間実行しました。取得した性能指標は以下の通りです。
TPM、NOPMいずれにおいても、DibertasとEBSで約2.5倍程度の性能差があることが確認できました。
これは、EBS(gp2)のスループット上限が250MB/sであるのに対して、Dibertasのスループット上限は約100MB/sであることからEBSとDibertasのスループットの性能に約2.5倍程度の差が発生しており、これに起因するものであると考えられます。

データベースパフォーマンス検証(オンライン系システム向け)結果

C.ファイルオープン検証

1MBのファイルを14種類用意し、各3回ずつファイルオープン検証を実施した結果は以下の通りです。
DibertasとEBSで同様の結果となりました。データ転送量が少なくEBSとDibertasのスループットの上限値に達していないことから、このような結果となったと考えられます。

ファイルオープン検証結果

5.まとめ

データベースの性能試験では、分析系・オンライン系いずれにおいても、ストレージのスループットの性能値に応じた処理実行時間であることが確認できました。
また、データ通信量が少ないファイルオープンに要した時間については、DibertasとEBSとで同等の結果が得られました。
このことから、Dibertas-EBS間の距離的な遅延はデータベースの処理へほとんど影響しておらず、スループット通り期待する処理が実施されていると考えられます。
なお、Dibertasでは専用回線を敷設することで、ストレージスループットを増加させることができるため、EBSと同様に要件に応じたディスク提供が可能です。
一方、EBS利用時に性能が低いEC2インスタンスを選択すると、場合によってはストレージスループットはDibertasを下回ることとなります。
性能要件を見極め、最適なインスタンスタイプとディスクを選定する必要があります。

現在Dibertasは、三菱電機インフォメーションシステムズ株式会社が提供するTeams録音サービス「nokos」で採用されており、主にデータの長期保管用途として利用されています。今回の試験結果の通り、性能要件次第ではデータベースとして利用することもできるため、今後はデータベースなど他の用途でDibertasを採用する場合の注意点などについて情報発信を行っていきます。

(参考)AWS EBSとDibertasのパフォーマンスについて

EBSのスループットは、EBSのサイズとEC2のインスタンスタイプの組み合わせによって決定します。
本検証では、「r5a.xlarge」インスタンスと、「2TB」のEBS を利用しています。この場合、EBS1つあたりの性能値は通常時135.63MB/s(最大250MB/s)となります。

 1.AWSのインスタンスタイプ
  インスタンスタイプごとに、1台のEC2インスタンスで利用する「EBS全体」のパフォーマンス値が決定される
  通常時のパフォーマンス値と、最大30分間バースト可能な最大パフォーマンス値の2つが存在する

 2.EBSのサイズ
  ボリュームサイズによって、「EBS1つ」あたりのパフォーマンス値が変動する
    170GB 以下    最大 128MB/s
    170GB ~ 334GB  通常時 128MB/s    バースト時 250MB/s
    334GB 以上    250MB/s

※ 「r5a.xlarge」のインスタンスを選択した場合の例

EBSのサイズとEC2のインスタンスタイプの組み合わせ構成

一方で、Dibertasで利用するDirectConnect回線は、1Gbpsベストエフォートの回線を利用していることからその回線効率を8割とした場合、ストレージスループットは約100MB/sとなり、EBSとの差を表にすると以下の通りとなります。

DibertasとAWS EBSとのストレージスループットの差分表

上記表から、今回の検証で利用したAWS環境、「r5a.xlarge」と「2TB EBS」の組み合わせの場合、そのスループットは約135MB/s(バースト時 250MB/s)となり、Dibertasとの性能差が約1.3倍(バースト時2.5倍)となります。



  • 各社のサービス名等は、当社または各社の商標または登録商標です。

関連するソリューション・サービス