- 博客(3)
- 资源 (1)
- 收藏
- 关注
原创 将MySQL去重操作优化到极致之三弹连发(三):用rocksdb替代innodb
前面已经建立了索引,优化了SQL语句,并将单线程变为多线程并行执行,去重时间由最初的35秒优化为3.5秒,是不是就到此为止呢?吴老师又使用了rocksdb存储引擎替代innodb的方法。这里有必要交代一下命题的背景。这道MySQL数据库优化的题目出自是阿里内部的竞赛题,当然我是听吴老师口述的,真正的题目及其竞赛规则与竞赛环境不甚明确,但有一条是允许自由选择MySQL存储引擎。在实际的生产环境中,几
2017-01-12 15:50:50 6566 2
原创 将MySQL去重操作优化到极致之三弹连发(二):多线程并行执行
上一篇已经将单条查重语句调整到最优,但该语句是以单线程方式执行。能否利用多处理器,让去重操作多线程并行执行,从而进一步提高速度呢?比如我的实验环境是4处理器,如果使用4个线程同时执行查重sql,理论上应该接近4倍的性能提升。一、数据分片 我们生成测试数据时,created_time采用每条记录加一秒的方式,也就是最大和在最小的时间差为50万秒,而且数据均匀分布。因此先把数据平均分成4
2017-01-12 15:35:21 6355
原创 将MySQL去重操作优化到极致之三弹连发(一):巧用索引与变量
元旦假期收到阿里吴老师来电,被告知已将MySQL查重SQL优化到极致:100万原始数据,其中50万重复,把去重后的50万数据写入目标表只需要9秒钟。这是一个惊人的数字,要知道仅是insert 50万条记录也需要些时间的。于是来了兴趣,自己实验、思考、总结做了一遍。一、问题提出 源表t_source结构如下:item_id int,created_time datetime,modif
2017-01-12 15:12:27 6980 7
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人