您的位置:首页 > 数据库 > MySQL

mysql数据库性能优化与测试

2016-03-21 17:44 465 查看
最近由于工作需要,需要对数据库的性能进行测试,在这里同步下mysql的性能测试结果。

一、业务场景

表中存放的数据为订单信息数据,目前有3百万数据,最初建表时只对查询的字段建索引,当表数据量达到200w时,明显查询速度变慢,select一次需要2s,很明显达不到性能要求。

二、mysql数据库性能测试

数据库机器型号,ucloud标准机型,内存1.5g

单位:微秒

订单数据 订单商品数据 两表left join
1w数据: <10 <10 <10
10w数据 <200 <210 <200
50w数据 <4000 <5000 <6000
100w数据 <8000 <11000 <9000
200w数据 <18000 <23000 <18000

二、如何实施

1、考虑使用分区+分数据库的方式,目前预测单表最多容纳1000w数据;

2、分区个数的选择,测试分100个区跟500个区的效果;分区方式的选择:hash分区

结果如下:通过结果可以发现在1000w数据的情况下,分500个区的查询效果比分100个好



3、对订单数据表跟订单商品数据表分别分500个区,目前只有300w数据

对索引字段查询,以及hash字段,10微秒一下有返回结果;

分区之后,两个表left join 效果不好,于是采取单个表查询,获得结果后再查另一个表,可以做到秒回效果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: