TPCC-MySQL Benchmark Test
1. Brief Introduction
The output result of TPCC-MySQL includes five business logics, which constitute the entire transaction processing process of TPCC-MySQL testing. The details are as follows:
New-Order: New Order
Payment: Payment
Order-Status: Order Query
Delivery: Delivery
Stock-Level: Inventory
Pre-Defined variables: to clearly describe the following, we first define some variables to facilitate the following calculation and description. The details are as follows:
Success = number of records successfully executed
Late = number of Execution Delay records
Pre_success = number of records successfully executed last time
Pre_late = number of records that failed the last execution
Definition of late: the definition of late varies according to different businesses. The boundary values of the five business logics for Operation delay are as follows:
New-Order 5 ms
Payment 5 ms
Order-Status 5 ms
Delivery 80 ms
Stock-Level 20 ms
Computing:
Based on the variables defined above, calculate the result of the corresponding field and describe the meaning of the corresponding field.
Successful transactions within the interval (including successful and delayed transactions): sl = success + late-pre_success-pre_late
Delayed transactions at intervals: l = late-pre_late
Average response time of the first 90% records (actually 99%) within the time interval: rt90
The maximum response time in the interval: max_rt
2. Compile tpcc-mysql
Yum-y install bzr
Bzr branchlp :~ Percona-dev/perconatools/tpcc-mysql
Cd tpcc-mysql/src
Make
Cd ..
After compilation, return to the parent directory and you can see the tpcc_load and tpcc_start commands.
[Root @ agent1 tpcc-mysql] # ll
Total 264
-Rw-r -- 1 root 1621 Dec 1 add_fkey_idx. SQL
-Rw-r -- 1 root 317 Dec 1 count. SQL
-Rw-r -- 1 root 3105 Dec 1 create_table. SQL
-Rw-r -- 1 root 763 Dec 1 drop_cons. SQL
-Rw-r -- 1 root 477 Dec 1 load. sh
-Rw-r -- 1 root 851 Dec 1 README
Drwxr-xr-x 2 root 4096 Dec 1 schema2
Drwxr-xr-x 5 root 4096 Dec 1 scripts
Drwxr-xr-x 2 root 4096 Dec 1 src
-Rwxr-xr-x 1 root 64463 Dec 1 0:01 tpcc_load
-Rwxr-xr-x 1 root 165950 Dec 1 0:01 tpcc_start
3. Create a test database table and import data
Create database thunder;
Mysql thunder <create_table. SQL
Mysql thunder <add_fkey_idx. SQL # This step can also be done after data is imported, but it takes a long time
[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
Import data. A warehouse is about 70 MB, and the data size can be created as needed.
4. Start the test
[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-connector-l running_time-I report_interval-f report_file-t trx_file
-W specifies the number of warehouses, that is, the data size.
-C specifies how many connections to test
-R push time, some data will be written into buffer_pool
-L running time
./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
This article permanently updates the link address: