Oracle性能诊断艺术-读书笔记(范围分区)

1. PARTITION RANGE SINGLE

注意:操作2 中的 TABLE ACCESS FULL 并不是全表扫描,只是对分区1 做 全分区扫描

case2

2. 分区范围迭代(PARTITION RANGE ITERATOR)

3. 分区范围内联(PARTITION RANGE LIST)

如果限制是基于一个或多个IN条件,组成一个或多个元素,则执行计划中将出现一个特定的操作 PARTITION RANGE INLIST.用这个操作pstart、pstop不能给出哪个分区被访问的精确信息,而是显示为KEY(I)。表明分区裁剪分别针对IN条件中的每个值进行。再者,列starts表示有多少分区被访问

4. 所有分区范围(PARTITION RANGE ALL)

分区键没有限制,则会访问所有分区。

5.  PARTITION RANGE EMPTY  

查询优化器识别出没有分区存储相关数据的时候,它会显示在执行计划中

6. PARTITION RANGE OR

where子句中的多个谓词如果包含OR条件将导致全表扫描

7. PARTITION RANGE SUBQUERY

  第一个策略 是 规避分区裁剪

第二个策略 用nested loop 操作执行连接,并且定义应该发生在分区裁剪的表作为第二个自操作

第三种策略

8. PARTITION RANGE JOIN-FILTER

执行计划按如下顺序执行。

 1. 操作3和4通过索引tx_pk访问表tx

 2. 基于操作3返回的数据,操作2基于列tx.d1 和 tx.n1的值创建了一个内存结构(bloom过滤)

 3. 基于操作2创建的内存结构,操作5能够采用分区裁剪,因而,能够之访问包含相关数据的分区。

 

9. PARTITION  RANGE MULTI-COLUMN操作

 

posted @ 2017-06-17 20:51  Oracle-fans  阅读(843)  评论(0编辑  收藏  举报