全表扫描:
IO成本=页面数*1+1.1
CPU成本=总行数*0.2
总成本=P+R/5+1.1
range扫描(索引覆盖扫描)(总cost最低)
IO成本=索引页面数*1
CPU成本=扫描行*0.2
总成本=P+r/5
range扫描:
IO成本=扫描的行记录数*1
CPU成本=扫描的行记录数*0.2
总成本=r+r/5
当(r+r/5)>(P+R/5),即r/R>1/6+5/6*P/R时,会选择全表扫描(单个页面存放的行越多,
越容易选择全表扫描;行比较短的表一般都在0.166-0.2,示例里的表3列,每个页面存放209条行数据,得到的值是0.17)
ref扫描:
IO成本=扫描的行记录数*1(最高值为P*1*3或R/10)
CPU成本=扫描的行记录数*0.2
总成本=r+r/5
修正:range优化打不同的是,这里做了一个修正(range优化并没有做),也是IO COST最坏不会超过全表扫描IO消耗的3倍(或者总记录数除以10)。
当(3*P+r/5)>(P+R/5),即r/R>1-10*P/R时,会选择全表扫描(单个页面存放的行越多,
越不容易选择全表扫描;行比较短的表一般都在0.9以上,示例里的表3列,每个页面存放209条行数据,得到的值是0.95)所以会产生下面这种现象,明显全表扫描更快,最终还是选择了索引扫描。
编辑推荐:
- mysql cost计算03-01
- MySQL基准测试redo大小对性能影响03-01
- 快速构筑零丢失的数据库系统,实现跨区域容灾03-01
- MySQL5.17异机迁移到MySQL 5.7.23基本步骤03-01
- MySQL表锁03-01
- Xtrabackup+mysqlbinlog完全恢复03-01
- 关于Mysql 的 ICP、MRR、BKA等特性03-01
- binlog2sql解析binlog03-01
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- MySQL基准测试redo大小对性能影响
MySQL基准测试redo大小对性能影响
26-03-01 - 快速构筑零丢失的数据库系统,实现跨区域容灾
快速构筑零丢失的数据库系统,实现跨区域容灾
26-03-01 - MySQL5.17异机迁移到MySQL 5.7.23基本步骤
MySQL5.17异机迁移到MySQL 5.7.23基本步骤
26-03-01 - 关于Mysql 的 ICP、MRR、BKA等特性
关于Mysql 的 ICP、MRR、BKA等特性
26-03-01 - MySQL中跨库查询怎么搞?
MySQL中跨库查询怎么搞?
26-03-01 - 一步一步推导MySQL索引隐秘的底层数据结构
一步一步推导MySQL索引隐秘的底层数据结构
26-03-01 - 如何使用SQL查询视图,Postico使用技巧分享~
如何使用SQL查询视图,Postico使用技巧分享~
26-03-01 - 微笑
微笑
26-03-01 - MySQL中跨库查询怎么搞?
MySQL中跨库查询怎么搞?
26-03-01 - Mysql如何处理重复数据?让你的效率更高效
Mysql如何处理重复数据?让你的效率更高效
26-03-01
