过时的统计信息,会对执行计划的选择产生偏差。尤其对于突然产生的性能很差的SQL,可以从这个方向去判断。
参考:http://www.eygle.com/archives/2011/02/dba_event_10046_10053.html
上文中的例子,过程概述:
1)查看执行计划显示的“疑问表”的行数rows_A;
2)查看10053 event trace中显示的“疑问表”的行数rows_B;
rows_A是统计信息中的值,rows_B是实际计算的值。
文章示例是在9i下的,以下是11g的示例,与9i略有不同。
参考:http://www.eygle.com/archives/2011/02/dba_event_10046_10053.html
上文中的例子,过程概述:
1)查看执行计划显示的“疑问表”的行数rows_A;
2)查看10053 event trace中显示的“疑问表”的行数rows_B;
rows_A是统计信息中的值,rows_B是实际计算的值。
文章示例是在9i下的,以下是11g的示例,与9i略有不同。
点击(此处)折叠或打开
- -----------------------------
- SYSTEM STATISTICS INFORMATION
- -----------------------------
- Using NOWORKLOAD Stats
- CPUSPEEDNW: 3074 millions instructions/sec (default is 100)
- IOTFRSPEED: 4096 bytes per millisecond (default is 4096)
- IOSEEKTIM: 10 milliseconds (default is 10)
- MBRC: NO VALUE blocks (default is 8)
-
- ***************************************
- BASE STATISTICAL INFORMATION
- ***********************
- Table Stats::
- Table: SUM$ Alias: S
- #Rows: 1 #Blks: 1 AvgRowLen: 129.00 ChainCnt: 0.00
- Index Stats::
- Index: SYS_IL0000001030C00030$$ Col#: (NOT ANALYZED)
- LVLS: 1 #LB: 25 #DK: 100 LB/K: 1.00 DB/K: 1.00 CLUF: 800.00
- Index: SYS_IL0000001030C00031$$ Col#: (NOT ANALYZED)
- LVLS: 1 #LB: 25 #DK: 100 LB/K: 1.00 DB/K: 1.00 CLUF: 800.00
- Index: I_SUM$_1 Col#: 1
- LVLS: 0 #LB: 1 #DK: 1 LB/K: 1.00 DB/K: 1.00 CLUF: 1.00
- ***************************************
- 1-ROW TABLES: SUM$[S]#0
- Access path analysis for SUM$
- ***************************************
- SINGLE TABLE ACCESS PATH
- Single Table Cardinality Estimation for SUM$[S]
- Column (#1): OBJ#(
- AvgLen: 5 NDV: 1 Nulls: 0 Density: 1.000000 Min: 81279 Max: 81279
- Column (#11): XPFLAGS(
- AvgLen: 6 NDV: 1 Nulls: 0 Density: 1.000000 Min: 67108864 Max: 67108864
- Table: SUM$ Alias: S
- Card: Original: 1.000000 Rounded: 1 Computed: 0.01 Non Adjusted: 0.01
- Access Path: TableScan
- Cost: 2.00 Resp: 2.00 Degree: 0
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22621861/viewspace-2113854/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/22621861/viewspace-2113854/