CBO学习---第2章--表扫描(Tablescans)(二)
ree 99 构建了一个10000行,且跨越10000个块(实际分配了10240个块,高水位线在10000个块上)的表
该脚本清除了
系统统计,关闭了CPU_Costing计算。
[sql]
exec dbms_stats.delete_system_stats;
alter session set "_optimizer_cost_model"=io
执行结果:
[sql]
SQL> sta tablescan_01
会话已更改。
PL/SQL 过程已成功完成。
drop table t1
*
第 1 行出现错误:
ORA-00942: 表或视图不存在
PL/SQL 过程已成功完成。
表已创建。
PL/SQL 过程已成功完成。
会话已更改。
db_file_multiblock_read_count = 4
执行计划
----------------------------------------------------------
Plan hash value: 3724264953
-----------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost |
-----------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 4 | 2431 |
| 1 | SORT AGGREGATE | | 1 | 4 | |
| 2 | TABLE ACCESS FULL| T1 | 10000 | 40000 | 2431 |
-----------------------------------------------------------
Note
-----
- cpu costing is off (consider enabling it)
会话已更改。
db_file_multiblock_read_count = 8
执行计划
----------------------------------------------------------
Plan hash value: 3724264953
-----------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost |
-----------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 4 | 1541 |
| 1 | SORT AGGREGATE | | 1 | 4 | |
| 2 | TABLE ACCESS FULL| T1 | 10000 | 40000 | 1541 |
Note
-----
- cpu costing is off (consider enabling it)
会话已更改。
db_file_multiblock_read_count = 16
执行计划
----------------------------------------------------------
Plan hash value: 3724264953
-----------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost |
-----------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 4 | 977 |
| 1 | SORT AGGREGATE | | 1 | 4 | |
| 2 | TABLE ACCESS FULL| T1 | 10000 | 40000 | 977 |
-----------------------------------------------------------
Note
-----
- cpu costing is off (consider enabling it)
会话已更改。
db_file_multiblock_read_count = 32
执行计划
----------------------------------------------------------
Plan hash value: 3724264953
-----------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost |
-----------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 4 | 620 |
| 1 | SORT AGGREGATE | | 1 | 4 | |
| 2 | TABLE ACCESS FULL| T1 | 10000 | 40000 | 620 |
-----------------------------------------------------------
Note
-----
- cpu costing is off (consider enabling it)
会话已更改。
db_file_multiblock_read_count = 64
执行计划
----------------------------------------------------------
Plan hash value: 3724264953
-----------------------------------------------------------
| Id | Operation | Name | Rows | Bytes | Cost |
---------------------------------------