1. IDC Frontier Inc. All rights reserved.
E50: 実践!DBベンチマークツールの使い方
~IDCFクラウドRDBをベンチマークのデモで紹介~
2018年7月29日 July Tech Festa 2018
株式会社IDCフロンティア
クラウド事業本部 ビジネス開発部
藤城 拓哉 @tafujish
2. 2
IDC Frontier Inc. All rights reserved.
自己紹介
【業務】
IDCFクラウドのサービス開発
(担当:IDCFクラウドRDB)
【趣味】
ベンチマーク
藤城 拓哉 (FUJISHIRO TAKUYA)
@tafujish
3. 3
IDC Frontier Inc. All rights reserved.
Agenda
IDCFクラウドとRDBサービスのご紹介
ベンチマークとは
データベースのベンチマークとは
sysbenchの例
tpcc-mysqlの例
ケーススタディ
ベンチマークは良いぞぉ~
4. 4
IDC Frontier Inc. All rights reserved.
株式会社IDCフロンティア
主にデータセンターや
クラウドなどITインフラ
の提供を行っております
【データセンター】
首都圏、関西、東北、九州のデータセンター群
【クラウド IaaS】
東日本リージョン/西日本リージョン
5. 5
IDC Frontier Inc. All rights reserved.
4つの領域でサービスを展開
③クラウド ④ビッグデータ
①ネットワーク ②データセンター
Since 1986 Since 2000
Since 2009 Since 2014
24. 24
IDC Frontier Inc. All rights reserved.
なぜベンチマークをするのか
基準点
システムの処理性能把握
→ どこまで耐えられるか = スケール時の目安
比較指標
環境の比較
→ サービス・機器・スペックの選定やサイジング
最終的にはコストの最適化
25. 25
IDC Frontier Inc. All rights reserved.
ミドルウェア
ハードウェア
どこのベンチマークをするのか
CPU メモリI/O ディスクI/O ネットワークI/O
WEB DB FW・LB ・・・
システム全体
26. 26
IDC Frontier Inc. All rights reserved.
ミドルウェア
ハードウェア
どこのベンチマークをするのか
CPU メモリI/O ディスクI/O ネットワークI/O
WEB DB FW・LB ・・・
システム全体
システムリリース前にやる
システムの処理性能把握=負荷試験
システムを作る前にやる
環境選定(事前調査)
システムを作る前・最中にやる
アプリ完成前からテストしたい
27. 27
IDC Frontier Inc. All rights reserved.
ミドルウェア
ハードウェア
どこのベンチマークをするのか
CPU メモリI/O ディスクI/O ネットワークI/O
WEB DB FW・LB ・・・
システム全体
システムリリース前にやる
システムの処理性能把握=負荷試験
システムを作る前にやる
環境選定(事前調査)
システムを作る前・最中にやる
アプリ完成前からテストしたい
本日のネタ
28. 28
IDC Frontier Inc. All rights reserved.
なぜ、DBのベンチマークは “最高” なのか
CPU、メモリ、ディスク、NWすべての性能が影響
→ 難しい
• ツールを動かすだけでなく、構成から考える必要がある
• ボトルネックがどこかわかりにくい
→ 上手く扱えれば有用
• CPUやディスクI/Oのベンチマークにもなる
• システム全体の中でボトルネックになりやすいDBを把握
33. 33
IDC Frontier Inc. All rights reserved.
DBベンチマークの構成
クライアントとサーバーが同一マシン
シンプルで実行しやすい
ツール側もCPUリソースを消費する
ディスクI/O性能が目的なら有り
サーバー
ベンチ
ツール
DB
サーバー
サーバー①
ベンチ
ツール
サーバー②
DB
サーバー
クライアントとサーバーが別マシン
実構成に近い
ネットワーク(NIC)にも負荷がかかる
通常はこちらの構成を利用
34. 34
IDC Frontier Inc. All rights reserved.
DBベンチマークの性能指標
1. 単位時間あたりの処理性能
QPS (Queries Per Second)
= RPS (Requests Per Second)
TPS (Transactions Per Second)
TPM (Transactions Per Minute)
2. 応答時間
Response Time [ms (milliseconds)]
35. 35
IDC Frontier Inc. All rights reserved.
DBベンチマークの性能指標
1. 単位時間あたりの処理性能
QPS (Queries Per Second)
= RPS (Requests Per Second)
TPS (Transactions Per Second)
TPM (Transactions Per Minute)
2. 応答時間
Response Time [ms (milliseconds)]
目標値として設定するならこれ
●同時接続時に、90%ラインの
レスポンスタイムが▲秒以下
どれくらい処理できるか確認す
るときはこれ(中身に意味があれば
トランザクション、なければクエリ)
36. 36
IDC Frontier Inc. All rights reserved.
DBベンチマークツール ※MySQLの例
単純にクエリを繰り返す
mysqlslap
sysbench ※カスタマイズ可能
実際の業務を模した複雑なクエリ
tpcc-mysql (卸売)
LinkBench (ソーシャルネットワーク)
本日はsysbenchとtpcc-mysqlを取り上げます