TPCC-MySQLベンチマークテスト


1.簡単に述べる
TPCC-MySQLの出力結果には、5つのビジネスロジックが含まれます.この5つのビジネスロジックは、TPCC-MySQLテストのトランザクション処理プロセス全体を構成します.具体的には以下の通りです.
New-order:新規オーダー
Payment:支払い
Order-status:受注照会
Delivery:出荷
Stock-level:在庫
 
事前定義変数:以下の内容を明確に説明するために、まずいくつかの変数を定義し、以下の計算と説明を容易にします.具体的には以下の通りです.
success=実行に成功したレコード数
late=実行遅延のレコード数
pre_success=前回実行に成功したレコード数
pre_late=前回の実行に失敗したレコード数
 
late定義:異なるビジネスによって、lateの定義も異なり、5つのビジネスロジックがそれぞれ操作遅延定義の限界値を以下に示す.
New-Order 5ms
Payment 5ms
Order-Status 5ms
Delivery 80ms
Stock-Level 20ms
 
計算:
上記で定義した変数に基づいて、対応するフィールドの結果を計算し、対応するフィールドの意味を説明します.
時間間隔で成功したトランザクション(成功および遅延トランザクションを含む):sl=success+late-pre_success-pre_late
間隔内の遅延トランザクション:l=late-pre_late
時間間隔内の上位90%の記録(実際には99%)の平均応答時間:rt 90
時間間隔の最大応答時間:max_rt
2.tpcc-mysqlのコンパイル
yum -y install bzr
bzr branchlp:~percona-dev/perconatools/tpcc-mysql
 
cd tpcc-mysql/src
make
cd ..
           ,    tpcc_load 、tpcc_start  。
[root@agent1 tpcc-mysql]# ll
total 264
-rw-r--r-- 1 root root   1621 Dec 1 02:00 add_fkey_idx.sql
-rw-r--r-- 1 root root    317 Dec 1 02:00 count.sql
-rw-r--r-- 1 root root   3105 Dec 1 02:00 create_table.sql
-rw-r--r-- 1 root root    763 Dec 1 02:00 drop_cons.sql
-rw-r--r-- 1 root root    477 Dec 1 02:00 load.sh
-rw-r--r-- 1 root root    851 Dec 1 02:00 README
drwxr-xr-x 2 root root   4096 Dec 1 02:00 schema2
drwxr-xr-x 5 root root   4096 Dec 1 02:00 scripts
drwxr-xr-x 2 root root   4096 Dec 1 02:01 src
-rwxr-xr-x 1 root root  64463 Dec 1 02:01 tpcc_load
-rwxr-xr-x 1 root root 165950 Dec  1 02:01 tpcc_start

3.試験庫表を作成し、データをインポートする
create database thunder;
mysql thunder < create_table.sql
mysql thunder < add_fkey_idx.sql    #            ,     
 
[root@agent1 tpcc-mysql]# ./tpcc_load -h
*************************************
*** ###easy### TPC-C Data Loader  ***
*************************************
 
 usage: tpcc_load [server] [DB] [user] [pass][warehouse]
     OR
       tpcc_load [server] [DB] [user] [pass] [warehouse] [part] [min_wh][max_wh]
 
          * [part]: 1=ITEMS 2=WAREHOUSE 3=CUSTOMER 4=ORDERS
./tpcc_load 127.0.0.1:3306 thunder thunderthunder 100
    ,  warehouse  70M  ,             

4.テスト開始
[root@agent1 tpcc-mysql]# ./tpcc_start -h
***************************************
*** ###easy### TPC-C Load Generator ***
***************************************
./tpcc_start: option requires an argument-- 'h'
Usage: tpcc_start -h server_host -P port -ddatabase_name -u mysql_user -p mysql_password -w warehouses -c connections -rwarmup_time -l running_time -i report_interval -f report_file -t trx_file
 
-w      warehouse,       
-c           
-r     ,       buffer_pool  
-l     
 
./tpcc_start -h 127.0.0.1 -P 3307 -dthunder -u thunder -p thunder -w 100 -c 100 -r 60 -l 60 -i 10 -f report.txt -t trx.txt
 
<Raw Results2(sum ver.)>
  [0] sc:6296  lt:0  rt:0  fl:0 
  [1] sc:6300  lt:0  rt:0  fl:0 
  [2] sc:625  lt:0  rt:0  fl:0 
  [3] sc:601  lt:0  rt:0  fl:0 
  [4] sc:629  lt:1  rt:0  fl:0 
<Constraint Check> (all must be [OK])
 [transaction percentage]
        Payment: 43.59% (>=43.0%) [OK]
   Order-Status: 4.32% (>= 4.0%) [OK]
       Delivery: 4.16% (>= 4.0%) [OK]
    Stock-Level: 4.36% (>= 4.0%) [OK]
 [response time (at least 90% passed)]
      New-Order: 100.00%  [OK]
        Payment: 100.00%  [OK]
   Order-Status: 100.00%  [OK]
       Delivery: 100.00%  [OK]
    Stock-Level: 99.84%  [OK]
<TpmC>
                 12592.000 TpmC