sharding-jdbc分表压测报告

1、压测方案概述

在硬件完全相同的情况下,模拟线上数据量,插入370万条订单,横向对比改造前、sharding-jdbc方案、mysql分区表三者的效率。

压测接口:/order/create

数据表:order_info、order_detail

索引情况:order_info.AK_ORDER_INFO、order_info .IN_ORDER_INFO_UPDATE_TIME、order_detail.IN_ORDER_DETAIL_UPDATE_TIME

Sharding-jdbc分表方案:根据orderId的前8位,按日期进行路由。预期:拆分后的两张表数据量基本相当,效率有明显提升。

2、改造前压测结果

数据量:370w

线程数:30

压测客户机:win10 16G内存

应用服务器:win10 16G内存

应用日志:ERROR

数据库服务器: centos7 4c 16G内存 mysql5.7

耗时:00:54:05

 

汇总报告:

# Samples

Average

Min

Max

Std. Dev.

Error %

Throughput

Received KB/sec

Sent KB/sec

Avg. Bytes

3703680

26

5

731

25.58

0.00%

1141.21859

277.5

1679.51

249

3703680

26

5

731

25.58

0.00%

1141.21859

277.5

1679.51

249

 

sharding-jdbc分表压测报告_第1张图片

 

聚合报告:

# Samples

Average

Median

90% Line

95% Line

99% Line

Min

Max

Error %

Throughput

Received KB/sec

Sent KB/sec

3703680

26

22

31

40

164

5

731

0.00%

1141.219

277.5

1679.51

3703680

26

22

31

40

164

5

731

0.00%

1141.219

277.5

1679.51

 

sharding-jdbc分表压测报告_第2张图片

 

3、Sharding-jdbc方案压测结果

数据量:370w

线程数:30

压测客户机:win10 16G内存

应用服务器:win10 16G内存

应用日志:ERROR

数据库服务器: centos7 4c 16G内存 mysql5.7

耗时:00:49:41

汇总报告:

# Samples

Average

Min

Max

Std. Dev.

Error %

Throughput

Received KB/sec

Sent KB/sec

Avg. Bytes

3703680

24

5

745

22.88

0.00%

1242.077

302.04

1827.94

249

3703680

24

5

745

22.88

0.00%

1242.077

302.04

1827.94

249

 

sharding-jdbc分表压测报告_第3张图片

 

聚合报告:

# Samples

Average

Median

90% Line

95% Line

99% Line

Min

Max

Error %

Throughput

Received KB/sec

Sent KB/sec

3703680

24

20

31

40

139

5

745

0.00%

1242.077

302.04

1827.94

3703680

24

20

31

40

139

5

745

0.00%

1242.077

302.04

1827.94

 

sharding-jdbc分表压测报告_第4张图片

 

4、效率对比

4.1 对比结果

Sharding-jdbc方案:

吞吐量(Throughput)提升8.84%

90%用户的响应时间(90% Line)提升15.24%

响应时间中位数(Median)提升:9.09%

4.2 汇总报告对比

sharding-jdbc分表压测报告_第5张图片

4.3 聚合报告对比

sharding-jdbc分表压测报告_第6张图片

你可能感兴趣的:(数据库)