事件背景
生产环境发现有查询超时,通过异常日志获取查询sql并进行排查,explain后发现该sql使用了filesort,导致查询效率问题
查询sql & 索引情况
- 查询sql
select * from table where column1 = ‘xxx’ and column2 in (‘a’,’b’,’c’) order by id asc limit 100 - 现有索引
主键索引
联合索引column1,column3
优化过程
经过explain发现,上述sql使用到了column1,column3的联合索引,但是查询中并不包含column3列,猜测可能是由于这个优化引擎使用了该索引才导致的filesort
于是删除column1,column3的联合索引,并建立column1,column2,column3的单独索引,并再次执行explain查看性能,发现已经不存在filesort,解决了性能问题
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: ELT已死,EtLT才是现代数据处理架构的终点!
提到数据处理,经常有人把它简称为“ETL”。但仔细说来,数据处理经历了ETL、ELT、XX ETL(例如,Reverse ETL、Zero-ETL)到现在流行的EtLT架构几次更迭。目前大家使用大数据Hadoop时代,主要都是ELT方式,也就是加载到Hadoo…