当前位置:网站首页>2022-07-05 使用tpcc对stonedb进行子查询测试
2022-07-05 使用tpcc对stonedb进行子查询测试
2022-07-06 14:28:00 【帝尊悟世】
目录
摘要:
记录使用tpcc对stonedb进行压测流程
tpcc:
一. 编译
git clone https://github.com/Percona-Lab/tpcc-mysql.git
cd tpcc-mysql/src
make
cd ..
#由于我们测试的是STONEDB引擎,所以需要修改create_table.sql里面的表结构引擎为Atomstore
vim create_table.sql
:%s/InnoDB/STONEDB/g
二. 创建tpcc库
mysql -e “create database tpcc”三. 导入修改过引擎的表结构:
mysql tpcc < create_table.sql四. 导入数据
ln -s /stonedb56/install/tmp/mysql.sock /var/lib/mysql/mysql.sock./tpcc_load -h localhost -d tpcc -u root -P 3306 -w 10五. 执行测试:
./tpcc_start -h localhost -d tpcc -u root -P 3306 -w 10 -c32 -r10 -l60六. 测试数据:
MEASURING START.
10, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
20, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
30, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
40, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
50, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
60, trx: 0, 95%: 0.000, 99%: 0.000, max_rt: 0.000, 0|0.000, 0|0.000, 0|0.000, 0|0.000
STOPPING THREADS
<Raw Results>
[0] sc:0 lt:0 rt:0 fl:0 avg_rt: -nan (5)
[1] sc:0 lt:0 rt:0 fl:0 avg_rt: -nan (5)
[2] sc:0 lt:0 rt:0 fl:0 avg_rt: -nan (5)
[3] sc:0 lt:0 rt:0 fl:0 avg_rt: -nan (80)
[4] sc:0 lt:0 rt:0 fl:0 avg_rt: -nan (20)
in 60 sec.
<Raw Results2(sum ver.)>
[0] sc:0 lt:0 rt:0 fl:0
[1] sc:0 lt:0 rt:0 fl:0
[2] sc:0 lt:0 rt:0 fl:0
[3] sc:0 lt:0 rt:0 fl:0
[4] sc:0 lt:0 rt:0 fl:0
<Constraint Check> (all must be [OK])
[transaction percentage]
Payment: -nan% (>=43.0%) [NG] *
Order-Status: -nan% (>= 4.0%) [NG] *
Delivery: -nan% (>= 4.0%) [NG] *
Stock-Level: -nan% (>= 4.0%) [NG] *
[response time (at least 90% passed)]
New-Order: -nan% [NG] *
Payment: -nan% [NG] *
Order-Status: -nan% [NG] *
Delivery: -nan% [NG] *
Stock-Level: -nan% [NG] *
<TpmC>
0.000 TpmC
子查询:
查询语句:
select
o_carrier_id,
count(*) as order_count
from
orders
where
o_entry_d >= date '1993-07-01'
and o_entry_d < date '2022-07-06' + interval '3' month
and exists (
select
*
from
item
where
i_name = i_data
or i_id > i_price
)
group by
o_carrier_id
order by
o_carrier_id;stonedb执行结果:
mysql> select
-> o_carrier_id,
-> count(*) as order_count
-> from
-> orders
-> where
-> o_entry_d >= date '1993-07-01'
-> and o_entry_d < date '2022-07-06' + interval '3' month
-> and exists (
-> select
-> *
-> from
-> item
-> where
-> i_name = i_data
-> or i_id > i_price
-> )
-> group by
-> o_carrier_id
-> order by
-> o_carrier_id;
+--------------+-------------+
| o_carrier_id | order_count |
+--------------+-------------+
| NULL | 90000 |
| 1 | 21113 |
| 2 | 20850 |
| 3 | 20965 |
| 4 | 20854 |
| 5 | 21050 |
| 6 | 21123 |
| 7 | 21028 |
| 8 | 21062 |
| 9 | 21015 |
| 10 | 20940 |
+--------------+-------------+
11 rows in set (0.26 sec)
mysql> explain select
-> o_carrier_id,
-> count(*) as order_count
-> from
-> orders
-> where
-> o_entry_d >= date '1993-07-01'
-> and o_entry_d < date '2022-07-06' + interval '3' month
-> and exists (
-> select
-> *
-> from
-> item
-> where
-> i_name = i_data
-> or i_id > i_price
-> )
-> group by
-> o_carrier_id
-> order by
-> o_carrier_id \G
*************************** 1. row ***************************
id: 1
select_type: PRIMARY
table: NULL
type: NULL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: NULL
Extra: Impossible WHERE
*************************** 2. row ***************************
id: 2
select_type: SUBQUERY
table: item
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 100000
Extra: Using where with pushed condition (t0) Pckrows: 2, susp. 2 (0 empty 0 full). Conditions: 1
2 rows in set (0.00 sec)
对比mysql的innodb引擎:
mysql版本:
[[email protected] ~]# mysqld --version
/usr/libexec/mysqld Ver 8.0.26 for Linux on x86_64 (Source distribution)
数据:
mysql> select
-> o_carrier_id,
-> count(*) as order_count
-> from
-> orders
-> where
-> o_entry_d >= date '1993-07-01'
-> and o_entry_d < date '2022-07-06' + interval '3' month
-> and exists (
-> select
-> *
-> from
-> item
-> where
-> i_name = i_data
-> or i_id > i_price
-> )
-> group by
-> o_carrier_id
-> order by
-> o_carrier_id;
+--------------+-------------+
| o_carrier_id | order_count |
+--------------+-------------+
| NULL | 90000 |
| 1 | 21218 |
| 2 | 20976 |
| 3 | 20727 |
| 4 | 21098 |
| 5 | 21084 |
| 6 | 20878 |
| 7 | 21114 |
| 8 | 20800 |
| 9 | 21265 |
| 10 | 20840 |
+--------------+-------------+
11 rows in set (0.11 sec)
mysql> explain select
-> o_carrier_id,
-> count(*) as order_count
-> from
-> orders
-> where
-> o_entry_d >= date '1993-07-01'
-> and o_entry_d < date '2022-07-06' + interval '3' month
-> and exists (
-> select
-> *
-> from
-> item
-> where
-> i_name = i_data
-> or i_id > i_price
-> )
-> group by
-> o_carrier_id
-> order by
-> o_carrier_id \G
*************************** 1. row ***************************
id: 1
select_type: SIMPLE
table: item
partitions: NULL
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 92192
filtered: 40.00
Extra: Using where; Using temporary; Using filesort; FirstMatch
*************************** 2. row ***************************
id: 1
select_type: SIMPLE
table: orders
partitions: NULL
type: ALL
possible_keys: NULL
key: NULL
key_len: NULL
ref: NULL
rows: 271048
filtered: 11.11
Extra: Using where; Using join buffer (hash join)
2 rows in set, 1 warning (0.00 sec)
边栏推荐
- 图像的spatial domain 和 frequency domain 图像压缩
- Bat script learning (I)
- 插入排序与希尔排序
- GPS from getting started to giving up (XIII), receiver autonomous integrity monitoring (RAIM)
- Unity3d Learning Notes 6 - GPU instantiation (1)
- lora同步字设置
- [Digital IC hand tearing code] Verilog burr free clock switching circuit | topic | principle | design | simulation
- 中国固态氧化物燃料电池技术进展与发展前景报告(2022版)
- Report on technological progress and development prospects of solid oxide fuel cells in China (2022 Edition)
- GPS从入门到放弃(十二)、 多普勒定速
猜你喜欢

2500个常用中文字符 + 130常用中英文字符

How does the uni admin basic framework close the creation of super administrator entries?

GPS从入门到放弃(十六)、卫星时钟误差和卫星星历误差

Oracle-控制文件及日志文件的管理

Barcodex (ActiveX print control) v5.3.0.80 free version
![[leetcode daily clock in] 1020 Number of enclaves](/img/2d/3d12f20c8c73fb28044c01be633c99.jpg)
[leetcode daily clock in] 1020 Number of enclaves

Embedded common computing artifact excel, welcome to recommend skills to keep the document constantly updated and provide convenience for others

Seata聚合 AT、TCC、SAGA 、 XA事务模式打造一站式的分布式事务解决方案

Seata aggregates at, TCC, Saga and XA transaction modes to create a one-stop distributed transaction solution

RESNET rs: Google takes the lead in tuning RESNET, and its performance comprehensively surpasses efficientnet series | 2021 arXiv
随机推荐
Leetcode learning records (starting from the novice village, you can't kill out of the novice Village) ---1
小满网络模型&http1-http2 &浏览器缓存
GPS from getting started to giving up (XX), antenna offset
Notes de développement du matériel (10): flux de base du développement du matériel, fabrication d'un module USB à RS232 (9): création de la Bibliothèque d'emballage ch340g / max232 SOP - 16 et Associa
2500 common Chinese characters + 130 common Chinese and English characters
HDU 2008 digital statistics
CCNA Cisco network EIGRP protocol
Make menuconfig has a recipe for target 'menuconfig' failed error
ResNet-RS:谷歌领衔调优ResNet,性能全面超越EfficientNet系列 | 2021 arxiv
[linear algebra] determinant of order 1.3 n
Barcodex (ActiveX print control) v5.3.0.80 free version
AI 企业多云存储架构实践 | 深势科技分享
GNN,请你的网络层数再深一点~
Maximum product of three numbers in question 628 of Li Kou
3DMax指定面贴图
MariaDB database management system learning (I) installation diagram
PVL EDI project case
Xiaoman network model & http1-http2 & browser cache
GPS from getting started to giving up (XV), DCB differential code deviation
小程序系统更新提示,并强制小程序重启并使用新版本