Mysql性能优化

「扫码关注我,面试、各种技术(mysql、zookeeper、微服务、redis、jvm)持续更新中~」
在这里插入图片描述

本周进行了线上清结算相关慢sql优化,通过分析以及处理,线上慢sql已经得到了部分改善,但是还需要持续优化。主要从以下几个方面进行了优化:

1.根据Explain执行计划,增加相关单列索引;

2.将以前单个区分度并不高的单列索引优化为联合索引,效果还是比较明显,例如表pp_business_check_data(商户对账中间表)的城市编码(area_code)和状态(status)创建的单列索引,首先这2个字断的区分度并不高,其次建立2个单列索引浪费磁盘空间,所以将其整合为一个联合索引,优化后,索引类型从range变为了ref,扫描行数从258万行变成了3行,效果如下图:
在这里插入图片描述在这里插入图片描述
3.清结算中批量插入更新操作较多,以前都是3000行数据作为一个批次插入到数据库,网络IO和执行耗时比较严重,现在缩小至1500行数据为一个批次,这种方案还有待观察,因为如果每天交易数据量较大到话,降低每次执行行数势必会增大数据库链接耗时,所以该方式还有待观察调优;

4.由于财务表历史数据较多,导致单表数据量较大,但是对账、分账表一般业务只关注月财务数据,所以考虑以时间(年)维度对数据库表进行归档处理(水平拆分),降低单表数据量。

以上为本次优化的几个侧重点,总结了数据库优化的几个方面与大家分享
在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值