1 / 5
文档名称:

ArcSDE for Oracle 10g 内存调优实践.doc

格式:doc   页数:5
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

ArcSDE for Oracle 10g 内存调优实践.doc

上传人:799474576 2013/8/2 文件大小:0 KB

下载得到文件列表

ArcSDE for Oracle 10g 内存调优实践.doc

文档介绍

文档介绍:ArcSDE for Oracle 10g内存调优实践
马妮(北京北方数慧系统技术有限公司 100086)
 
摘要  本文针对安装在Oracle 10g 中的ArcSDE 空间数据库的内存调优给出具体操作方法,作者对所从事的规划和国土行业的已经建立的典型ArcSDE空间数据库进行了优化,验证了方法的正确性。
 
关键词  性能、共享池、高速缓冲区、PGA
 
在GIS项目实施中,几乎每个项目都会遇到数据库的内存优化问题。Oracle数据库缺省安装时提供的初始化参数,是针对特定的OLTP或DSS的应用特点设定的,而空间数据存储和访问有别于传统类型的数据的存储和访问特征,因此,Oracle数据库缺省安装设定的参数基本不能满足以空间数据访问为主要运行特征的GIS应用的要求。由于数据库的调优确实需要调优者接受过专业的训练,没有基础的人在短期内无法达到完全掌握的程度。但是接受完整的专业训练需要漫长的过程,针对这种情况,结合对正在运行的空间数据库进行性能优化的实践过程中,摸索了一些简单但不全面的关于内存调整的方法,希望能给类似的工作带来最直接而快速的帮助。文中使用的数据来自乌鲁木齐市地籍数据库调优实践。
 
一.     Oracle 10g内存组成
在Oracle 10g中影响性能的内存主要有以下七部分:
1.  共享池(Shared Pool):是SGA(System Global Area)的一部分,主要包括SQL语句、PL/SQL过程和包、控制结构(如锁)、数据字典、并行执行消息的缓存等;
2.  Large Pool:是一个可选的内存区,只有在共享服务器的环境下才需要配置。包括共享服务器的会话信息、I/O服务器进程及Oralce 备份与恢复操作所需的内存等;
3.  Java Pool:用于所有Java代码和数据的会话所使用的内存;
4.  Buffer Cache:是SGA的一部分,主要缓存从数据文件读出的数据块,所有的用户进程并发连接到数据库实例,共享数据库的Buffer Cache;
5.  Streams Pool:流操作所使用的内存;
6.  Log Buffer:是SGA中循环使用的内存块,用于缓存那些通过INSERT, UPDATE, DELETE, CREATE, ALTER, 或DROP操作引起变化的数据块;
7.  PGA(Private Global Area):PGA是包含服务器进程(Server Processes)的数据和控制信息的一块内存。当一个服务器进程启动之后,Oracle将为这个服务器进程分配一块非共享内存区。它用于排序操作(例如ORDER BY,GROUP BY,ROLLUP和windows 函数)、哈希联合(Hash-join)查询、位图(Bitmap)合并、位图(Bitmap)创建和大量数据装载操作的写缓冲。
 
   在以上内存区中,对建立在ArcSDE空间数据库之上的GIS应用的性能产生重大影响的主要有共享池(Shared Pool)、Buffer Cache和PGA。现就基于Oracle 10g给出如何调整这些内存参数的具体操作方法。
 
二.     SGA调整(重点调整共享池、Log Buffer、Buffer Cache)
在分配SGA时不仅要考虑其内部