工控网首页
>

应用设计

>

基于Oracle9i PGA内存的自动调整与管理

基于Oracle9i PGA内存的自动调整与管理

2006/5/19 9:56:00
关键词:参数;PGA-AGGREGATE-TARGET;调整 中图分类号:TP311.5 文献标识码:A Automatic PGA Memory Managment in 9i CHEN Hong1, CHEN Xiang2 (1. Chalco Guangxi Branch, Information Department, Guangxi Pingguo 531400, China; 2. Guangxi Vocational & Technical Institute of Industry, the Departments of Computer Engineering, Guangxi Nanning 530001, China) Abstract:Oracle 9i introduced the PGA-AGGREGATE-TARGET parameter to help better manage ses- sion working areas in a sessions Program Global Area (PGA). This paper discusses available methods to help tune this new parameter, in order to get the greatest performance of the server. Key words : Parameter; PGA-AGGREGATE-TARGET; Tune 1 概述 每一个Oracle会话执行某些操作时需要驻留内存支持。对一个实例来说,如果应用通过SQL语句请求进行排序操作,如GROUP BY或OR— DER BY,倘若有足够的内存区为这个排序操作预留,那么应用会话就能在此内存区内执行这个排序。如果没有足够预留的内存区,那么排序操作就部分转换到磁盘的TEMP表空间的一个暂时保留区内执行。 在Orade9i以前,DBA通过配置诸如BITMAP-MERGE-AREA-SIZE,CREATE- BITMAP-AREA-SIZE,HASH-AREA-SIZE,和 SORT-AREA-SIZE参数来配置会话工作区,这些 参数统称为*-AREA-SIZE的参数,这种方式的一个问题是常常多预留了未被使用的内存区域。如果设置SORT-AREA-SIZE=1M,HASH-AREA. SIZE=5M,我们就至少得分配6MB的工作内存区。 为了处理这类情形,Oracle建立一种方式让实例自动管理数据库会话工作区。现在Oracle 9i有能力在内存中保留一大块工作区空间,并且让实例随着会话的操作动态调整工作区的分配。一个会话需要1MB的排序空间和4 MB散列区域空间适合上述所分配的。另一个会话需要4 MB排序空间和1 MB散列区域空间也适合这样的分配,因为现在Oracle 9i具有依据所使用的空间动态调整工作区分配的能力。Oracle 9i使用PGA-AGGRE- GATE-TARGET参数预置确定PGA所要保留的内存总量。 2 初始设置 为了开始使用这个新Oracle 9i特性,需要设定 PGA-AGGREGATE-TARGET初始值。这个初始值设定后不用重新启动Oracle实例。对OLTP系统,Oracle推荐该参数为服务器物理内存的16%;而DSS系统为服务器物理内存的40%。这仅仅是期望值。大多情况下取决于系统资源的使用而不断进行调整。我的服务器是1GB的物理内存。根据Oracle推荐,我将调整我的PGA-AGGREGATE- TARGE参数初始值如图1所见。
该参数设定后,Oracle将自动执行动态内存工作区管理。 注意:PGA-AGGREGATE-TARGET保留的内存总量是针对所有服务器进程而不是每个服务器进程。当此值为零时,动态内存工作区管理特性将不启用。PGA-AGGREGATE-TARGET可接受范围是在10 MB和4096GB之间。 3 调整PGA.AGGREGATE.TARGET设定值 举例说明如何调整此参数,我设定我的PGA. AGGREGATE-TARGET的值为允许的最小值10 MB,我想确定当PGA-AGGREGATE-TARGET值设得太低时怎样得到最佳的性能和太高时又如何不浪费所分配的内存。 Oracle 9i给出多个不同的视图去查询怎样更好的执行动态内存工作区管理。Oracle 9i的V$SYSTAT和V$SESSTAT视图增加了一些新的统计信息。
图2的查询显示了在工作区执行的3种操作运行。最佳的是完全在内存区进行的操作。如同名字那样这是最好的执行类型。如果操作太大无法在分配的内存区内执行,那么操作的部分转换到磁盘上。如果在磁盘上需要单周期内取得内存分配的,那么运行如onepass统计显示。如果在磁盘上需要多周期内取得内存的,那么运行如multipass统计显示。理想状态是所有运行都在optimal中,而onepass和multipass为零。从图2的查询会发现PGA-AGGREGATE-TARGET值设置太小了。 Oracle 9i包含了一个全新的称为V$PGAS- TAT的视图。这视图可给出额外的关于如何更好的管理动态内存工作区的统计信息。 图3输出的首行显示我的PGA-AGGRE- GATE-TARGET当前设置为10 MB。PGA的一部分用于非可调的信息,例如会话上下文信息和其他开销。剩下的PGA内存区域是动态可调的。由 aggregate PGA auto target显示出来。图3第2行显示的值比首行小得多。如果值太小,那么Oracle将没有足够的内存去作动态调整。 Oracle 9.2的V$PGASTAT视图输出增加两行。他们是over allocation count和cache hit percentage。如果Oracle设置的PGA-AGGREGATE- TARGET不合适,那么它需要额外的内存分配可通过over allocation coun 显示。理想值为零。 cache hit percentage统计显示的是最佳运行执行的字节数与全部运行(optimal,one-pass和multi- pass)执行字节总数的一个命中率。如果是最佳运行的,那么这个值应该是100%。
图2和图3的PGA-AGGREGATE-TARGET明显低于所分配量。问题是为获得最佳性能而不必浪费分配的内存量应增加预留的内存区为多少? Oracle 9i的V$PGA-TARGET-ADVICE视图帮助回答了这个问题。为使用此视图,确保STATISTICS-LEVEL预置参数为TYPICAL或 ALL。现在来观察设定PGA-AGGREGATE-TAR- GET为不同值时的图4,看给我们带来了什么好的建议。
图4显示的是当PGA改变为不同目标大小时,发生在当前工作量下的Oracle估计统计信息。依据这些估计信息,首先应该尝试降低过多分配了的内存量,直至为零。注意当增大目标值时,esti- mated cache hit percentage值也将增大,one-pass或multi-pass模式运行的读和写字节数估计值也会相应下降。我知道我需要加大这个值,并查看了目标提示,我将设置PGA-AGGREGATE-TAR- GET为80MB,并重启实例清除所有统计信息,再在同等环境上运行。 我期望我仍然将有因为读写估计需要读写到磁盘的一些运行,图4显示读/写是一个非零的80 MB的PGA目标。在重启实例并且模拟装入运行之后,图5的查询是正确的。 我已经消除了multi-pass运行,但有少数one-pass运行仍存在。现在让我们查看图6显示的 V$PGASTAT视图结果。
图6可以看到我们消除过多内存资源的分配统计信息。auto target statistic非常接近于目标参数。但是cache hit percentage远远低于100%,并且有大量extra bytes read/written。我们将在图7期待能有更好的一次设置。
图7查询输出显示分配320MB给PGA-AG- GREGATE-TARGET就能消除extra bytes read/ written,并且cache hit percentage也达到100%。我们进一步试分配480 MB甚至640 MB内存,也能达到320MB的性能状态,但这样分配将浪费内存资源。 4 结束语 Oracle 9i动态内存工作区管理是DBA一个非常重要的工具。DBA不必担心怎样才能恰当设定*-AREA-SIZE参数值。V$SYSTAT、v$PGAS- TAT和V$PGA-TARGET-ADVICE视图的新的统计信息帮助DBA确定PGA-AGGREGATE- TARGET参数是否被正确的设置和最好的设置。 参考文献 [1] Kevin Loney Marlene Theriault.蒋蕊,王磊.王毳译.Oracle9i DBA手册[M].北京:机械工业出版社,2002. [2] Richard J.Niemiec.王海涛,鹿凡译.Oracle 9i性能调整[M].北京:清华大学出版社,2004. [3] 滕永昌.Orade9i数据库管理员使用大全[M].北京:清华大学出版社,2004.
投诉建议

提交

查看更多评论
其他资讯

查看更多

助力企业恢复“战斗状态”:MyMRO我的万物集·固安捷升级开工场景方案

车规MOSFET技术确保功率开关管的可靠性和强电流处理能力

未来十年, 化工企业应如何提高资源效率及减少运营中的碳足迹?

2023年制造业“开门红”,抢滩大湾区市场锁定DMP工博会

2023钢铁展洽会4月全新起航 将在日照触发更多商机