分享
 
 
 

关于dbms_stats取代analyze

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

自从Oracle8.1.5引入dbms_stats包,EXPerts们便推荐使用dbms_stats取代analyze。 理由如下

dbms_stats可以并行分析

dbms_stats有自动分析的功能(alter table monitor )

analyze 分析统计信息的不准确some times

1,2好理解,且第2点实际上在VLDB中是最吸引人的;3以前比较模糊,看了metalink236935.1 解释,analyze在分析Partition表的时候,有时候会计算出不准确的Global statistics .

原因是,dbms_stats会实在的去分析表全局统计信息(当指定参数);而analyze是将表分区(局部)的statistics 汇总计算成表全局statistics ,可能导致误差。

drop table T3;

CREATE TABLE T3(i number, p number,sp number)PARTITION BY RANGE(p)

SUBPARTITION BY HASH(sp) SUBPARTITIONS 2 (PARTITION q1 VALUES LESS THAN(3) TABLESPACE USERS,

PARTITION q2 VALUES LESS THAN(MAXVALUE) TABLESPACE USERS);

declare

i number;

begin

for i in 1..100000 loop

insert into T3 values(i,mod(i,7), mod(i,8));

if( mod(i, 10000) = 0) then commit; end if;

end loop;

for i in 1..50000 loop

insert into T3 values(i,mod(i,7), mod(i,8)+5);

if( mod(i, 10000) = 0) then commit; end if;

end loop;

end;

/ 如上建立一个分区表

SQL> exec DBMS_STATS.GATHER_TABLE_STATS('ORACLE','T3',granularity => 'ALL');

PL/SQL procedure sUCcessfully completed.

SQL> select GLOBAL_STATS from dba_tables where table_name='T3';

GLO

---

YES 计算了Global Statistics

SQL> select COLUMN_NAME,NUM_DISTINCT,DENSITY,SAMPLE_SIZE,AVG_COL_LEN from user_TAB_COL_STATISTICS where table_name='T3';

COLUMN_NAME NUM_DISTINCT DENSITY SAMPLE_SIZE AVG_COL_LEN

------------------------------ ------------ ---------- ----------- -----------

I 100000 .00001 150000 5

P 7 .142857143 150000 3

SP 13 .076923077 150000 3

SQL> analyze table t3 delete statistics;

Table analyzed.

SQL> select GLOBAL_STATS from dba_tables where table_name='T3';

GLO

---

YES 看来analyze不能删除dbms_stats的统计信息?

SQL> analyze table t3 compute statistics;

Table analyzed.

SQL> select COLUMN_NAME,NUM_DISTINCT,DENSITY,SAMPLE_SIZE,AVG_COL_LEN from user_TAB_COL_STATISTICS where table_name='T3';

COLUMN_NAME NUM_DISTINCT DENSITY SAMPLE_SIZE AVG_COL_LEN

------------------------------ ------------ ---------- ----------- -----------

I 100000 .00001 150000 5

P 7 .142857143 150000 3

SP 13 .076923077 150000 3

没有变,还是一样。 Confused ?

SQL> select GLOBAL_STATS from dba_tables where table_name='T3';

GLO

---

YES

SQL> exec dbms_stats.DELETE_TABLE_STATS('oracle','t3');

PL/SQL procedure successfully completed.

SQL> select GLOBAL_STATS from dba_tables where table_name='T3';

GLO

---

NO 《 ----- 有效果了

SQL> analyze table t3 compute statistics;

Table analyzed.

SQL> select COLUMN_NAME,NUM_DISTINCT,DENSITY,SAMPLE_SIZE,AVG_COL_LEN from user_TAB_COL_STATISTICS where table_name='T3';

COLUMN_NAME NUM_DISTINCT DENSITY SAMPLE_SIZE AVG_COL_LEN

------------------------------ ------------ ---------- ----------- -----------

I 150000 6.6667E-06 4

P 7 .142857143 2

SP 8 .125 2

SQL> select GLOBAL_STATS from dba_tables where table_name='T3';

GLO

---

NO

可见,sometimes,analyze出错了。当CBO只需要partition的统计信息的时候还好,当使用表上的全局统计信息的时候,有可能产生不正确的执行计划。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有