Index Full Scan 与 Index Fast Full Scan (Final)

 

Index Full Scan (索引全扫描)   

当进行index full scan的时候,oracle定位到索引的root block,
然后到branch block(假如有的话),再定位到第一个leaf block, 然后
根据leaf block的双向链表顺序读取。它所读取的块都是有顺序的,也是
经过排序的,所以index full scan可以用来避免某些sort操作。查询出的
数据都必须从索引中可以直接得到。   这个full scan的名字有点误导人,
其实并不是所有的index block都被读取的,某些分支块是不会读到的。

1.   查询出来的数据都必须从Index中可以直接得到。  

2.   Index中至少有一个字段是非空 。 

3.   可以消除掉排序操作,因为数据已经被index key 排好序了 。 

4.   它一个一个地读取block,  不能多块读 。也不能并行。

 

Index Fast Full Scan (索引快速全扫描) 


而index fast full scan则不同,它是从段头开始,读取包含位图块,
root block, 所有的branch block, leaf block,读取的顺序完全由物理存
储位置决定,并采取多块读,每次读取db_file_multiblock_read_count个块。
因为能并行或多块读,index fast full scan不能用来消除sort操作。 

1.   这种Index Fast Full Scan 只有在CBO下有效

2.   需要分析Index , 否则优化程序可能不会用它

3.    在Index中取数据,而不是存取table中的数据

4.    Index中至少一个字段是非空

5.    不能消除排序操作, 因为数据没排序

6.    与Index Full Scan不一样,用多块读方式读整个Index 

7.    Index Fast Full Scan 比 正常的Index Full Scan 更快,因为能用多块读方式,且能并行执行

8.     Index Fast Full Scan 并行和表的并行是分开的, 可以通过Parallel 来设置 

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/35489/viewspace-671692/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/35489/viewspace-671692/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值