数据库12,13查询优化

                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     # 估计查询大小

按照概率来看。

1.and连接的条件,要求概率相乘,or连接的条件,要求概率相加

2.V(a,r)可以算概率,就是记录r满足属性a相等条件的概率为1/V(a,r)

3.n用来和概率相乘得到最后的大小

4.查询的表记录有多少,就是多少,不要自己改写查询语句

5.映射全部是线性的。

连接次数

加入r和s进行连接,br是r表所占块数,bs是s表所占块数, ns是s记录数,nr是r记录数,r是外层, s是内层, 可用内存块为M,输入缓存区和每个输出缓存区为bb个块。

连接方式block seekblock transfor
nested loop join 最好情况 2 2 2 b r + b s b_r+b_s br+bs
nested loop join 最坏情况 n r + b r n_r+b_r nr+br n r ⋅ b s + b r n_r\cdot b_s+b_r nrbs+br
block nested loop join 2 ⋅ [ b r M − 2 ] 2\cdot[\frac{b_r}{M-2}] 2[M2br]上取整[ b r M − 2 ⋅ b s + b r ] \frac{b_r}{M-2}\cdot b_s+b_r] M2brbs+br]上取整
hash join不递归 2 [ b r b s ] + [ b s b b ] + 2 n h 2[\frac{b_r}{b_s}]+[\frac{b_s}{b_b}]+2n_h 2[bsbr]+[bbbs]+2nh 3 ( b r + b s ) + 4 n h 3(b_r+b_s)+4n_h 3(br+bs)+4nh
hash join递归
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值