NewSQL ---- MYSQL与TiDB 简单的性能测试对比

目录

摘要

1测试环境以及测试用例设计

1.1测试环境

1.2测试用例设计

2百万级数据量性能测试对比

2.1数据总量

2.2性能测试报告

2.3图表分析


摘要

对于百万级数据,mysql足够了,没必要使用TiDB或者MongoDB等Nosql 数据库。

1测试环境以及测试用例设计

1.1测试环境

Mysql 和 TiDB 都是 4C/8G,测试接口都是通过Spring boot 微服务rest接口测试。MySQL 数据中的表和mongodb中集合都设创建了相同的索引。其中create_time 都使用了降序索引。

mysql版本:8.0

TiDB版本:5.7.25 (SQL规范跟随MySQL版本)

1.1.1 Mysql 索引

1.1.2 TiDB索引

 

1.2测试用例设计

1.2.1时间范围分页查询参数

/result/{page}/{size}/{startTime}/{endTime}

1.2.2根据任务信息查询参数:

/conditionOne/{page}/{size}/{powerDeviceId}/{taskId}

1.2.3执行批次范围查询参数:

/conditionTwo/{page}/{size}/{batchIdList}

1.2.4执行任务与批次范围查询参数:

/conditionThree/{page}/{size}/{batchIdList}/{taskIdList}

1.2.5聚合查询,采集计划前10个批次数据聚合:

/aggregate/{planId}

会使用group by 和 order by 以及limit。

 

2百万级数据量性能测试对比

2.1数据总量

Mysql:

 

TiDB基本数据信息:

2.2性能测试报告

2.2.1用例1时间范围分页查询

请求参数:

/mysql/result/20/20/2019-09-01/2019-09-30

连续两次性能测试报告:

MySQL参考: 性能测试报告

TiDB 性能测试数据:

2.2.2用例2任务信息查询

请求参数:

/mysql/conditionOne/20/20/611607718939246592/611680047597752372

连续两次性能测试报告:

MySQL参考: 性能测试报告

TiDB 性能测试数据:

2.2.3用例3批次范围查询

请求参数:

/mysql/conditionTwo/10/20/1001,1002,1003,1004,1005,1027

连续两次性能测试报告:

MySQL参考: 性能测试报告

TiDB 性能测试数据:

2.2.4用例4任务与批次范围查询

请求参数:

/mysql/conditionThree/1/20/1001,1002,1003,1004,1005,1027/611680047593558016,611680047593558017,611680047593558020,611680047593558021,611680047593558024,611680047593558025,611680047593558030,611680047593558031,611680047593558032,611680047593558033,611680047593558035,611680047593558036,611680047593558037,611680047593558038,611680047593558039,611680047593558040

连续两次性能测试报告:

MySQL参考: 性能测试报告

TiDB 性能测试数据:

2.2.5用例5聚合查询

请求参数:

/mysql/aggregate/620656410385203201

连续两次性能测试报告:

MySQL参考: 性能测试报告

TiDB 性能测试数据:

2.3图表分析

2.3.1查询时间对比

以50%为分割线,占比少的说明效率高。用第二次性能测试采集到的性能数据来对比。

2.3.2 吞吐量对比

以50%为分割线,占比多的说明吞吐量高。用第二次性能测试采集到的性能数据来对比。

2.3.3 小结

  1. 从平均响应时间来看, MySQL占据优势。
  2. 从吞吐量来看, MySQL占据优势。
  3. 跟TiDB相比,千万级数据集的项目,使用mysql应该是足够的。

 

  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

October-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值