この記事は、ニフクラブログで2022-03-03に公開された記事を移転したものです。 こんにちは、CRE部 技術支援チームです。
2021年7月に、ニフクラRDBの新サーバータイプである「db.slarge128」がリリースされました。
db.slarge128は、Type-h(高いパフォーマンスが求められるシステムでの利用を想定したDBサーバープラン)の中でも28vCPU/128GBメモリーという最上位スペックとなっています。
※RDBのDBサーバータイプ・仕様に関しましては、こちらをご確認ください。
今回は、db.slarge128の性能を確認するため、シングル構成・冗長構成(性能優先・データ優先)で性能検証を実施してみました。
構成イメージ
ベンチマークツールについて
ベンチマークを取得するにあたり、今回計測ツールとして「sysbench」を利用します。
sysbenchは、CPUやメモリ、ディスクI/Oなど、さまざまなシステム性能を測定することができるベンチマークツールです。 MySQLなどのデータベースのトランザクション処理の測定もできます。
前提条件
本ブログは、以下の前提知識がある方を想定しています。
- ニフクラの基本的なコントロールパネルの操作、サービスを利用に関する知識
- Linuxの基本的な操作、設定に関する知識
- MySQLの基本的な操作、設定に関する知識
計測環境
計測方法
east-11にクライアント、およびRDBを作成します。
クライアントからRDBにグローバル経由でアクセスし、ベンチマークツール「sysbench」を実行します。
ベンチマーク結果よりtransactionの性能を確認します。
計測条件
項目 | 内容 |
---|---|
利用ゾーン | east-11 |
DBサーバー (Type-h) |
db.slarge128、db.wlarge32 、db.medium8 |
計測対象構成 | シングル構成、冗長化構成(性能優先)、冗長化構成(データ優先) |
利用ディスク | 上記DBサーバー(Type-h)それぞれに高速ディスク 50GB付与 |
table-size | 40000000 |
db-ps-mode | disable |
※ 上記に記載のないオプションは、デフォルトのまま計測しています。
クライアントスペック(sysbench実行サーバー)
項目 | 内容 |
---|---|
利用ゾーン | east-11 |
サーバータイプ | wlarge32(Type-h) |
性能計測ツール | sysbench(ver 1.0.20) |
実施方法
下記条件で実行します。
- 任意の3日間の3時・9時・15時・21時で3回sysbenchを実行し、取得したベンチマーク結果よりtransactionの平均を求める
- sysbenchのオプションは下記の通り
sysbench /usr/share/sysbench/oltp_read_write.lua --mysql-db=sbtest --db-driver=mysql --table-size=40000000 --mysql-host=RDBのフローティングIP --mysql-user=RDB作成時に指定したユーザ --mysql-password=RDB作成時に指定したパスワード --time=180 --threads=512 --db-ps-mode=disable run
計測結果
性能を比較しやすくするため、取得したデータを平均にし、構成ごとにまとめました。
グラフの縦軸がsysbenchのtransactionの集計結果となります。
- シングル構成
- db.slarge128とdb.wlarge32を比較すると、db.slarge128のほうが 約1.4倍 の性能が出ている
- db.slarge128とdb.medium8を比較すると、db.slarge128のほうが 約7.1倍 の性能が出ている
- 性能優先
- db.slarge128とdb.wlarge32を比較すると、db.slarge128のほうが 約1.7倍 の性能が出ている
- db.slarge128とdb.medium8を比較すると、db.slarge128のほうが 約5.2倍 の性能が出ている
- データ優先
- db.slarge128とdb.wlarge32を比較すると、db.slarge128のほうが 約1.9倍 の性能が出ている
- db.slarge128とdb.medium8を比較すると、db.slarge128のほうが 約4.7倍 の性能が出ている
となり、すべての構成においてdb.slarge128の性能が上回っていることが確認できました。
総評
今回の結果で、db.slarge128性能がこれまで提供してきた他のサーバータイプよりも、すべての構成において高いパフォーマンスを発揮することが確認できました。
現在利用中の他のサーバータイプで性能不足を感じでいる場合はもちろん、これから高い処理能力を必要とするデータベースを構築する必要がある場合、db.slarge128の利用をご検討ください。
最後に
今回のベンチマークでは、sysbenchによるOLTP処理性能の取得にあたり、「Type-h」を利用しましたが、 「Type-h ⇔ Type-e」、また「db.wlarge32 ⇔ db.slarge128」等に自由にプラン変更が可能ですので、
- Type-eで試してから、性能が厳しくなってきたらType-hにスペックアップする
- Type-hでスタートして、性能に余裕がありそうならType-eにスペックダウンする
- 現在ほかのスペックを利用しているが、性能が厳しくなってきたのでdb.slarge128にスペックアップする
等々、最適なスペックを利用していただければと思います。
注:ベンチマーク結果は参考値であり、お客様のアプリケーションの動作を保証するものではございません。
注:ニフクラでは、CPU型番などの情報を公開していません。計測したゾーンやサーバーよって、結果は異なる場合があります。
注:本計測は、あくまで筆者の環境を使った計測時点での値であり、計測環境・計測時間によって異なる場合あります。参考程度に留めてください。