你的位置:论文发表 >> 论文下载 >> 计算机论文 >> 计算机网络 >> 详细内容 在线投稿

关于Oracle 数据库内存优化的讨论与配置研究

浏览161次 时间:2015年11月17日 16:58

□韩维 中国移动通信集团广东有限公司

【摘要】 Oracle 数据库是一种具有优化性能的软件,因其能够将各种物理文件进行储存整合,所以被广泛应用于各行业中。如今是网络数字化时代,企业要想实现更好的发展,就要注重对多种信息的存储和分类,使信息在传递和应用时能够实现其基本效用。而Oracle 数据库则是适应了时代变化应运而生的一种数据管理系统。本文主要从如何进行Oracle 数据库内存优化和配置进行讨论,实现其效率的提升。

【关键词】 Oracle 数据库 内存优化 优化配置 数据处理

Oracle 数据库系统诞生于美国甲骨文公司,它以优良的数据库管理系统被大家所熟知,并且其存在极强的适应性, 它能够在各种大小环境中实现高效率的运转模式,并通过强大的数据搜集和处理方式提出相应的解决方案。稳定性和安全性是Oracle 数据库系统最显著的优点,它的分布式处理功能使其成为了真正意义上的分布式数据库。

一、对Oracle 系统内存结构进行概述

Oracle 系统内存可依据两种方式进行划分,首先是将系统全局区、程序全局区、排序区以用户的私有和共享方向进行划分[1]。其次是将JAVA 池、大池按照另一个方向进行划分。

1.1 私有和共享角度下的内存结构

1.1.1 系统全局区的内存结构探究

系统全局区的内存结构主要由重演日志缓存、数据库高速缓存和共享池组成。

1)重演日志缓存区的内存结构研究

系统全局区可实现循环使用的缓存被称之为重演日志缓存,它可以将数据库中的变化的信息进行保留和再次操作。也可以将重要的信息进行调出更改。进行更改的主要日志文件为LOG-BUFFER,通过对其进行操作便可实现更改的目的。

2)数据库高速缓存区的内存结构研究

将数据文件进行读取备份是数据库高速缓存区所进行的工作任务,数据高速缓存区还能够用来存储已读取的文件, 将重要信息通过共享功能实现用户的读取和使用。它能够对用户的请求作出相应的答复,并充分提供可进行的服务。系统全局区(SGA) 所构成文件的大小值可通过V$SGA 进行查询,也可显示在SGA 的实例程序启动中。

3)共享池区的内存结构研究

共享池区的内存结构由数据字典缓存和库缓存组成。对于数据字典缓存来说从中可获取大量的用户、定义等信息, 这些信息可通过相应的参数进行控制并通过命中率来巨鼎缓存区性能的好坏。其中参数控制的地址为SHARED-POOL-SIZE.

1.1.2 程序全局区的内存结构探究

程序全局区(PAG)可以通过创建对话的形式实现ORA-CLE 的自动分配,它将ORACLE 和用户进程进行合理化连接。实际上PAG 是一个拥有服务器数据和控制信息作用的内部储存区[2]PAG 在进行工作时需要建立不同的连接, 同时还会建立一个替身程式,用替身功能完成数据库的对接和信息交换。以此可以看出为了能够满足它进行替身作用的发挥就需要大量的内存来提供支持。共享内存会对PAG 中某些相关信息存放入large-pool-size 里边。总的来说PAG 的优化对于SGA 的优化起着非常重要的作用。

1.1.3 排序区的内存结构探究

排序区的内存结构是特有的区域,它有其专用的排序空间,同时要使用具有SQL 语句下的内存,对其排序区可进行磁盘临时段和内存排序的划分,两种方式都能实现排序的功能,但是系统在进行工作时默认排序区为优先选择区域。

1.2 其他角度下的内存结构

其他角度下的内存结构主要有JAVA 池区和大池区。对于JAVA 池区而言它最大的特点是运用JAVA 语言对系统进行开发使用,其实本质结构还是属于SAG。而对于大池区而言它最大的特点是可以进行内存选择,并对RMAN 管理器中内存区域的数据进行恢复,进行恢复的主要工具为数据库备份工具,其本质内容同样是属于SAG.

二、对Oracle 系统内存结构优化配置研究

2.1 SAG 进行优化探究

要对Oracle 进行优化选择首先要进行相应的假定。假定SAG 占有系统大约50% 左右的内存空间,可以对SHARED-POOL-SIZE 进行相应的设置把握SAG 的大小,除了通过以上设置来完成设定外还可通过DB-BLOCK-BUFFER 来控制SAG 的大小。若是出现引入路径偏差造成数据进入共享池中时,会使得I/O 增加,导致系统的功能性降低[3]。例如在内存大小为1G 的服务器中SGA 依照以上假定大约为500M, 一般情况下对数据进行衡量时可采用sort-area-size=64k 系统自定义排序内存来衡量。

2.2 对高速缓存区进行优化探究

高速缓存区的优化管理方式为通过对LRU 算法中较少被使用的数据进行退出内存进行优化处理。同时高速缓存区被用来对SQL 语句进行储存。因此在对其进行优化处理时要着重关注SQL 区域内的分析调用,对不是非常必要的分析调用进行缩减处理。要充分实现SQL 语句中重用功能的体现, 因此需要对数据进行规范化标准处理,例如,将SQL 语句在进行编排时采用相同的大小写字母,也最好采用连编变量。只有这样才能做到数据的统一处理,以达到减少缓存的目的。

2.3 对数据字典缓存区进行优化探究

数据字典是对oracle 数据库中的数据进行缓存的区域


数据库做出的任何程序工作步骤都会对数据字典的缓存产生较大的影响[4]

因此为了优化数据字典,减少数据字典的缓存就需要对oracle 和数据字典共同进行优化处理。数据字典缓存的要求使得DC-MISS-RATIO 占有量不超过15%。依据以上条件对数据字典进行优化的可能条件进行测量。

2.4 对排序进行优化探究

排序是一项浩大的工程,他需要CPU 和硬盘等空间进行消耗和占用。排序的复杂性要求在进行oracle 数据库进行处理时,尽量减少对排序的使用。若无法完成上述要求则需实现排序的优化处理,增加内存中的排序减少硬盘中的排序,优先选择内存中的排序,当较大的表已经占用了硬盘空间时,就需要将temp oracle 文件进行物理划分。ALTER INDEX,ORDER BY, MINUS 等命令都可以触发排序命令。磁盘排序中的ratio 值的大小不应超过5%,若超过5% 就需要对SORT-ARER-SIZE 的值进行适当的增加调整。

三、检验Oracle 数据库是否优化的判断标准

通过数据优化处理能够帮助oracle 数据库提升整体空间性能,实现其更好地操作。但是优化完毕后如何对优化的结果进行判断呢?这时就需要参照相应的指标来进行辅助判断。对于数据库缓存区、高速缓存区、数据字典高速缓存区和重演日志缓存区进行命中率的判断。数据库缓存区和数据字典高速缓存区通过相应的脚本进行辅助判断后结果要大于90%,高速缓存区数值最好接近100%,而重演日志缓存区的数值可以通过两方面进行判断,对于脚本而言其值不应大于零,对于日志等待进行判断时,如果其值大于零则需对LOG-BUFFER 的值进行调整。

四、结束语

上文中首先对oracle 数据库系统内部结构进行了概述, 然后依据数据库内部结构各自的特点探讨了如何对oracle 数据库进行优化配置,最后对检验数据库是否已经达到优化水平进行了概述。在实际应用中一定要注重对oracle 的系统内存进行优化处理,只有这样才能保证系统的功能性能够更好地发挥。

参 考 文 献


[1] 江李兵, 江川宁. Oracle 数据库的性能调整与优化方法探析[J]. 计算机光盘软件与应用,2014,10:140+142.

[2] 刘恩军. ORACLE 数据库性能调整与优化研究[J]. 电脑知识与技术,2014,20:4629-4630+4661.

[3] 于颖. Oracle 的性能调整与优化分析[J]. 信息安全与技术,2013,02:54-56.

[4] 卢友娥, 游莉. Oracle 数据库系统内存优化探讨[J]. 石油工业计算机应用,2011,01:41-43.

 

TAG: 数据库 Oracle
上一篇 下一篇

论文发表与咨询

论文发表 写作指导 职称论文 毕业论文 客服联系方式:
投稿信箱:lunww@126.com
在线咨询客服QQ:站点合作85782530
在线咨询客服QQ:站点合作82534308
联系电话:18262951856
点击进入支付宝支付(支付宝认可网络诚信商家)
点击进入财付通支付(财付通认可网络诚信商家)
点击进入支付方式---->>>>

论文发表 诚信说明

论文发表 论文投稿 热点图片