😀

DBパフォーマンス

2019/11/02に公開

はじめに

NoSQLを含むDBMS(Database Management System)のパフォーマンスについて調べたメモ書き。

性能指標

  • QPS : Queries Per Second
  • NOPM : New Order Per Minute
    • TPC-Cのシナリオにおける新規オーダー(注文)数/分
    • おおよそ「NOPM * 3 = TPM」
  • 単位時間当たりのトランザクション
    • TPS : Transactions Per Second
    • TPM : Transactions Per Minute
  • REsponse Time

パフォーマンス仕様とツール

YCSB

Yahoo! Cloud Serving Benchmark (YCSB) はNoSQL向けのベンチマークツール。

YCSBは、米Yahoo!の研究開発部部門 Yahoo! Research が開発し、オープンソースで公開されているNoSQLデータベースを対象としたベンチマークツールです。異なる種類のNoSQLデータベースに対して共通的な負荷シナリオとフレームワークの提供を目的として開発されています。負荷シナリオに関しては自分で定義することも可能ですが、5種類のシナリオが事前に定義されています。

出典:@noralife, 2016年02月07日, YCSBの概要とCassandraへのベンチマーク

TPC-H

TPC-HはRDBMS向けのベンチマーク仕様。仕様を実装したツールとしては、DBT-3がある。

TPC-HはRDBMSベンチマーク仕様の一つで、意思決定支援システム(DSS)としての性能を測定するものです。大規模なデータを対象にアドホックなクエリを実行します。クエリは全部で22種類定義されています。

出典: sh2, 2010-01-12, データベース負荷テストツールまとめ(3)

SLOB

https://yohei-a.hatenablog.jp/entry/20171221/1513867831

sysbench

pgbench

  • 対応RDBMS:
  • ライセンス:
  • 測定指標:

tpcc-mysql

  • 対応RDBMS:
  • ライセンス:
  • 測定指標:

参考文献

  • RABL, Tilmann, et al. Solving big data challenges for enterprise application performance management. Proceedings of the VLDB Endowment, 2012, 5.12: 1724-1735.
    • RDBMSとNoSQLの両方を含むDBMSのパフォーマンス(スループット、レイテンシ)の比較。
    • YCSBをベースに独自に作ったパフォーマンス仕様に基づく比較。RDBMSには不利な気が。
  • COOPER, Brian F., et al. Benchmarking cloud serving systems with YCSB. In: Proceedings of the 1st ACM symposium on Cloud computing. ACM, 2010. p. 143-154.
    • YCSBを提案した論文。被引用件数2,000件以上。
  • TPC Benchmark Results - Spreadsheet of TPC Results
    • 各メーカがTPCに登録したパフォーマンス計測値。
    • 登録されているRDBMSやOSに激しい偏りがあり、比較困難。

Discussion