《PG源码学习--6.索引扫描成本》

一.背景说明

postgres的查询计划事基于成本的,成本是一个相对值,用来定性代价。本文结合代码学习基于索引扫描的成本计算。
索引包括BTree、GiST、GIN、BRIN。

二.概念及算法

1.总体概念

序号 名称 说明
1 启动成本 读取第一条元组前花费的成本
2 运行成本 获取全部元组的成本,包括cpu和disk成本
3 总成本 启动成本和运行成本的和

2.具体要素

序号 名称 说明
1 indexStartupCost 索引启动成本,读取第一条元组的成本
2 indexTotalCost 索引扫描总成本
3 indexSelectivity 选择率0到1,where子句在搜索范围的比率
4 indexCorrelation 索引顺序和表顺序之间的相关性(范围在 -1.0 到 1.0 之间)。这个数值用于调整从父表中抓取行的开销估计
5 index_pages 索引所占页面数
6 cpu_operator_cost
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值