暂无图片
MySQL使用ICP优化索引的好处是什么?
我来答
分享
2023-05-29
MySQL使用ICP优化索引的好处是什么?

MySQL使用ICP优化索引的好处是什么?

我来答
添加附件
收藏
分享
问题补充
2条回答
默认
最新
宇飞

ICP(Index Condition Pushdown)是MySQL使用索引从表中检索行数据的一种优化方式。如果WHERE条件可以使用索引,MySQL会把这部分过滤操作放到存储引擎层,存储引擎通过索引过滤,把满足的行从表中读取出来。ICP能减少引擎层访问基表的次数和Server层访问存储引擎的次数。

ICP的目标是通过降低I/O,减少从基表中读取操作的数量。当使用ICP优化索引时,执行计划的Extra列将显示“Using index condition”。

暂无图片 评论
暂无图片 有用 1
暂无图片
赵师的工作日

举个例子:

idx(a,b,c)
            查询条件为 where a= and b> and c<
ICP的作用:server层做完过滤后,只能用a,b的部分辅助索引,将c列条件的过滤下推到engine层,进行再次过滤,排出无用的数据列,最终再去磁盘上拿数据页。

好处:大大减少无用IO,减少回表

暂无图片 评论
暂无图片 有用 4
回答交流
提交
问题信息
请登录之后查看
邀请回答
暂无人订阅该标签,敬请期待~~
暂无图片墨值悬赏