从Oracle的逻辑存储结构中,块(block)是最小的存储单位,物理上连续的块组成区(extent),区又组成了段(segment)。对于非分区表如果表中没有clob/blob字段,那么一个表就是一个段。全表扫描,其实就是扫描表中格式化过的区。因为里面的数据块在物理上是连续的,所以全表扫描可以多块读。全表扫描不能跨区扫描,因为区与区之间的块,物理上不一定是连续的。对于分区表,如果表中没有clob/blob字段,一个分区就是一个段,分区表扫描方式与非分区表扫描方式是一样的。
对一个非分区表进行并行扫描,其实就是同时扫描表中多个不同区,因为区与区之间的块物理上不连续,所以不需要担心扫描到相同的数据块。