概要
データベースの性能検証によく利用されるTPC-HとTPC-DSをざっくり整理する。
TPCとは
TPCとは、Transaction Processing Performance Councilの略であり、トランザクション処理性能評議会である。データベースのトランザクション性能検証を作成・検証を目的とした団体である。複数の性能検証ベンチマークがあり、TPC-E、TPC-H等が有名である。
TPCのテスト一覧
TPCのActive Benchmarksには下記のものがあり、TPC-HとTPC-DSはそのうちの1つのベンチマークである。
Benchmark/Document | Current Version | Specification | Source Code |
---|---|---|---|
TPC-C | 5.11.0 | n/a | |
TPC-DI | 1.1.0 | Download TPC-DI_Tools_v1.1.0.zip | |
TPC-DS | 3.2.0 | Download TPC-DS_Tools_v3.2.0.zip | |
TPC-E | 1.14.0 | Download TPC-E_Tools_v1.14.0.zip | |
TPC-H | 3.0.0 | Download TPC-H_Tools_v3.0.0.zip | |
TPCX-AI | 1.0.0 | Download TPCX-AI_Tools_v1.0.0.zip | |
TPCX-BB | 1.5.1 | Download TPCX-BB_Tools_v1.5.1.zip | |
TPCX-BB (valid until 2021-11-02) | 1.5.0 | Download TPCX-BB_Tools_v1.5.0.zip | |
TPCX-HCI | 1.1.8 | Download TPCx-HCI_Benchmarking_Kit_v1.1.8.zip | |
TPCX-HS | 2.0.3 | Download TPCX-HS_Tools_v2.0.3.zip | |
TPCX-IOT | 2.0.0 | Download TPCx-iot_Tools_v2.0.0.zip | |
TPCX-V | 2.1.8 | Download TPCx-V_Benchmarking_Kit_v2.1.8.zip |
引用: TPC - Current Specifications - Active Specifications Only(リンク) 2021年9月21日時点
個人的な解釈による目的を記載する。
Benchmark/Document | ベンチマークの目的 |
---|---|
TPC-C | 一般的なデータベースのトランザクション性能検証。少し古いベンチマーク。 |
TPC-DI | ETLの性能検証 |
TPC-DS | ビックデータ基盤の性能検証 |
TPC-E | 一般的なデータベースのトランザクション性能検証。こちらの方がTPC-Cより新しい。 |
TPC-H | DWHの性能検証 |
TPC-VMS | 仮想化データベースの性能検証 |
TPCX-BB | ビックデータ基盤における機械学習・非構造化データを含めた性能検証 |
TPCX-HCI | ハイパーコンバージドインフラストラクチャの性能検証 |
TPCX-HS | ビックデータ基盤の可用性検証 |
TPCX-IOT | IoTゲートウェイの性能検証 |
TPCX-V | 仮想マシンにおけるデータベースの性能検証 |
参考: TPC Benchmarks Overview(リンク)
TPC-HとTPC-DSについて
TPC-Hの概要
下記のER図のデータに対するクエリの性能を検証。
引用:TPC BENCHMARKTM H(リンク)
上記図におけるSFはScale Factorの略であり、1Scale Factor当たり約1GBのデータ量を増減できることを示している。データ生成時には、データサイズと指定ファイル分割数(dbgenにおける-Cパラメーター)に応じたファイルが作成される。
テーブル名 | 1SF当たりのデータ量 | 1SF当たりのサイズ目安(KB) | データサイズ割合 |
---|---|---|---|
lineitem | 6,000,000 | 747,915 | 69.0% |
orders | 1,500,000 | 169,387 | 15.6% |
partsupp | 800,000 | 116,978 | 10.8% |
part | 200,000 | 23,765 | 2.2% |
customer | 150,000 | 23,923 | 2.2% |
supplier | 10,000 | 1,286 | 0.1% |
nation | 25 | 3 | - |
region | 5 | 1 | - |
TCP-DSの概要について
下記のような7個のスタースキーマ型モデル、もしくは、スノーフレーク型モデルに対するクエリの性能を検証。
引用:TPC BENCHMARKTM DS(リンク)
TCP-DSにおいても、1Scale Factor当たり1GBのデータ量を増大できますが、下記表の通り、線形的に増加するわけではない。
引用:TPC BENCHMARKTM DS(リンク)