包收集统计信息物业
作者:
在9i中,Oracle增强了SQL的基于开销的优化器(CBO),从而在决定SQL语句的最优执行计划时采用I/O和CPU使用率统计信息。
Oracle使用新的Oracle9i DBMS_STATS包来收集这些信息。然而,这个包的功能非常有限,而且因为大多数系统有多种操作模式,所以说在考虑Oracle收集系统统计信息的时候你必须格外小心。
典型地,如果选择使用DBMS_STATS,最好的办法是在数据库进行某种类型的处理时进行采样。例如,假设我们有一个白天运行于OLTP模式下而晚上运行于决策支持系统(DSS)模式下的数据库。
在下面的例子中,白天Oracle在运行于OLTP模式下时收集统计信息;而在晚上,Oracle在运行批处理操作时收集统计信息。
-- Create the table to hold the stats
dbms_eate_Stat_Table (
ownname => \'PROD\',
stattab => \'dbastats\',
tblspace => \'perfstat\');
-- Run during the day; gather stats for when the system is in OLTP mode
BEGIN
dbms_ther_System_Stats(
interval => 300,
stattab => \'dbastats\',
statid => \'OLTP\');
END;
/
-- Start at night to gather stats during batch operations
BEGIN
Dbms_ther_System_Stats(
interval => 300,
stattab => \'mystats\',
statid => \'DSS\');
END;
/
在已经收集了系统统计信息的采样之后,我们就可以在系统改变处理模式的时候动态地切换系统统计。
execdbms_port_system_stats(\'dbastats\',\'OLTP\');
exec dbms_port_system_stats(\'dbastats\',\'BATCH\');
当然,这个特性对于双峰Oracle数据库来说是很基本的,因为对于这种数据库的处理特点变化很大。而对于查询模式恒定的均匀型数据库来说,这个特性与你自己的查询执行计划区别不大。
可免除未来应缴付的保险费 ---------------------------------------------------
本文作者: Donald Burleson是有23年经验的数据库管理员,他出版过14本数据库专著,发表论文达100多篇。Donald Burleson是Oracle Internals的主编和Burleson Oracle Consulting的总裁。
查看本文来源
沈阳卵巢炎哪家好西宁治疗白癜风医院
心肌梗死高血压治疗方法
- 上一页:系统例注册表设置技巧
- 下一页:下参数的变化计划
-
专访丨《三仙饭》:已出版的书和不能出版的生活
《三仙煮》是诗作高星写下的关于南京三位儒者——阿坚(赵世坚)、狗子(...
2024-11-18
-
终于情断?小璐晒照配文心情大好向前看,小贾晚上买醉坐路边
文/李秋水 已对,有媒体曝出小奎晚间与男老友聚都会,当天他身穿白色上衣...
2024-10-28
-
你若在我方是,情敌三千又何妨
幸福情人生本来并不精细,来来去去不过三个字,不是我幸福你、我叹你,便...
2024-10-25
-
你说是因为你对我的爱教化了我
你却说是因为你对我的真爱感化了我,使我能这样同在的真爱你,能这样一点...
2024-10-07
-
经历了3次装修,我发现有8样家具全是“绣花枕头”,不实用性还贵
一个家美不美,完了全都跟着房东的美感来走,有些时候不是我们品位不好,...
2024-07-12
-
直击调研 | 中材科技(002080.SZ):今年叶片出货量预计同比增加20% 十四五末期膜产能或达
7月5日,中会材科技应用领域(002080.SZ)在接受调研时表示,的公司是杂货店投...
2024-06-09