Oracle数据库的性能调整与优化方法探析
2015-10-27韦安云
韦安云
摘要:Oracle数据库作为当前被广泛应用的信息数据管理系统,随着互联网以及信息技术的快速发展被广泛应用,对保障信息安全以及维护数据稳定效用十分显著。但在数据库长期的应用过程中,其性能的调整与优化至关重要。此次针对Oracle数据库应用过程中存在的性能不稳定因素进行具体调节,探索性能调整与优化的根本方式方法。
关键词:Oracle数据库;性能调整;优化方法
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2015)21-0008-02
计算机领域的快速发展,数据库技术的研究被提上日程,成为当前被应用十分广泛的信息管理工具,为满足当前大规模数据存储的基本要求,需要对数据库的性能进行调整与具体优化。增强系统稳定性的同时,制定优化方法,加强信息管理的基本效率,为Oracle数据库可持续发展奠定基础。
1 数据库性能调整优化目标及评估方法
作为信息系统的构成部分,数据库系统将直接影响着计算机网络应用系统的性能。对于Oracle数据库而言,在长期运行的过程中,需要多层面提升系统的稳定性。下面确定调整优化的目标,并对其性能进行评估与分析。
1) 调整优化目标
对Oracle数据库的性能进行调整与优化,根本目标具体表现在两个方面:
一方面,提升吞吐量并缩短响应时间。针对吞吐量而言,主要是指数据库性能调整方面除以完成该工作所用的时间。而响应时间方面则主要是指用户提交的“SQL语句”开始,到最终获取结果集所用的整体时间[1]。在这一所需时间范围内,主要包括等待时间与服务时间两个方面。对于客户的主观感受与体验而言,响应时间的缩短是优化的基础目标,能够提升系统的使用效率。
另一方面,强调系统瓶颈。系统本身的发展瓶颈是造成整个数据库运行受到阻碍的关键因素。对于系统瓶颈自身而言,其有可能是硬件方面的瓶颈也有可能是软件方面的瓶颈。对Oracle数据库进行调整与优化,根本目的是为了健全与协调系统的高效性,采取不同的措施进行消除瓶颈。
2)性能评估标准
在性能评估的标准层面,涉及的主体因素较多,包括用户在运用数据库过程中的吞吐量、数据库命中率、内存使用情况、磁盘I/O等[2]。开展性能评估,则需要以不同层面作为基本切入点确立评估标准。
吞吐量:用户的响应时间能够进行提升与优化,提高用户响应时间上的满意度,在吞吐量方面,力求满足用户的基本要求,缩短数据库响应用户要求的基本时间,提高数据库系统的吞吐量,同时,减少用户等待时间,对访问相同的数据之间的冲突进行优化与调整。
数据命中率:在缓冲区的高速缓冲当中涉及的主要数据是Oracle数据库的用户进程获取所需要的数据,并且这是主要来源,缓冲区的高速缓冲命中率主要是用于衡量内存为用户提供数据的响应时间与用户满意度。对于数据命中率的基本计算公式主要是高速缓存的命中总数对高速缓存的查找总数做除法,通过计算所得数据的基本数值则为数据命中率。
内存使用情况:内存使用情况的分析,通常被分为三个部分,分别为共享内存、分配内存以及永久性内存。对于内存使用状况进行衡量与分析,最终满足调整与优化的根本目的。在内存使用情况方面的衡量标准,保证投资回报率最高、最大限度上消除延迟与等待时间。
磁盘I/O:数据库系统运行过程中,产生的每一个操作步骤都能够产生一定的I/O活动,主要包括逻辑环节当中的活动状况,当然也涵盖了磁盘上的物理活动因素。磁盘I/O操作是整个就死算计系统当中的最大开销,对于数据库性能的影响较大。实现磁盘I/O优化,能够减少I/O开销[3]。
性能评估标准主要是针对Oracle数据库运行状况的考察,吞吐量考察主要是为了检验数据库在接收指令进行反馈的过程中响应效率;数据命中率则主要表现在对数据处理过程中表现出的数据检索的准确性;内存使用状况以及磁盘I/O则主要表现在数据库自身的性能以及瓶颈。运用具体的评估方法以及该评估标准,能够准确衡量数据特性及指标。
2 Oracle数据库性能调整与优化方法
在Oracle数据库性能评估以及确定调整与评估目标之后,提出性能调整与优化的基本目标及方法,探索在环境优化、性能调整以及应用优化等层面的基本指标,为Oracle数据库性能提升奠定基础。
2.1 环境优化
对于Oracle数据库环境优化的层面,包括优化内存、数据库磁盘I/O以及CPU优化等多层面,在环境方面的优化,对数据库性能调整与优化效用显著。
1)内存优化:
Oracle数据库的内存十分灵活并且明显,其中的整体性能通常取决于实际内存能否满足足够的物理内存要求,内存的优化主要是通过调整内存分类来实现。在数据库系统运行的过程中,内存的基本配置需要尽量的满足减少分页、减少内存交换以及内存在全局区域的运行目标。在系统完成分页操作之后,进而最大限度上的处理信息转换要求。但长期的内存转换操作,对于数据库的影响深远,无法有效对数据进行分页的监控。当然,加装内存的方法运用十分有效,满足内存优化的基本要求。
2)磁盘I/O调整与优化:
磁盘的I/O次数直接影响着Oracle数据库的性能,磁盘I/O作为数据库输入输出的直接体现,在进行具体调整的过程中直接受到磁盘空间分配方式以及数据块划分方式的影响。基于此,为确保Oracle数据库磁盘划分更加合理,将“Index”方式引入到索引过程中,建立起以索引方式为基础的模式,建立普通的数据调用模式,从而更加有效并且优化数据的检测模式[4]。在完成该方式的优化之后,Oracle数据库当中的所有数据的检测方式得到明显的简化,这种简化过程不仅仅能够提升检索的准确性,还能够充分满足检测效率的基本要求,数据调用的针对性更加显著。
3)CPU调整与优化:
作为服务器当中的重要资源以及核心构成部分,对CPU的调整与优化通常基于使用状况的观察之后通过操作指令进而得到实现。对于传统形态下的操作系统服务器而言,可以直接通过“sar-u”的命令对CPU的使用状况进行查看。而针对于Windows系统的服务器而言,则可以通过任务管理器查看CPU的使用状况。但不论是哪一种操作系统,在运用并查看CPU使用状况的过程中,一旦占用和峰值在90%以上,则证明服务器的工作处于正常的工作状态模式下,表现良好。但如果在空闲状态下,CPU的占用状态为90%以上,则说明该服务器缺乏CPU资源。针对Oracle数据库当中CPU性能下降的问题,则需要调整CPU的主频以及优先级的方式,提高服务器的基本负荷,最终满足数据库服务器的性能调整与优化。
2.2 性能调整
对性能进行适当的调整,能够使Oracle数据库系统得到调整与优化。对于这种方式的系统优化,主要表现在系统进行整体运行的过程中涉及的运行参数优化以及系统配置方面的适当修改。在参数优化方面,Oracle数据库具有四个主要参数,分别为SGA_MAX_SIZE、DB_CASHE_SIZE、PGA_AGGREGATF_TARGET、SHARRED_POOL_SIZE,充分协调这四者之间的参数设置问题,能够很大程度上的跳绳整个数据库的性能[5]。在不同的程序下,同样应该注重性能的调整。例如在C#程序进行操作时,可以适当运用当地Parallel方法进行程序优化,提高程序性能。同时在C++模式下,则需要合理选择OpenMP方式,结合人为对程序的多核操作,为系统的整体运行效率奠定基础。同时,对于SQL方面的优化,值得关注。SQL的性能调整与优化,则需要注重以下几个方面的内容:1)对于数据库的查询,尽量减少次数。进行数据以及信息筛选的过程中,遵循自内而外的目标,将查找之后的表及数据进行融合,为减少搜索以及检索过程提供保障;2)优化数据查找路径。该环节是整个SQL的关键环节,针对其中的动态变化以及使用数据,优化操作符;3)优化SQL语言检索。可以将is not null、is null应用于检索当中,对其进行显性以及隐性方面的运算,运用函数处理方式,优化检索过程;4)针对Oracle数据库当中的数据进行统一整体,满足定时、定向整理的基本目标,提高查询效率[6]。
通过性能调整的方式,使得Oracle数据库性能得到明显的改善,不单单是涉及的运行参数方面的优化及修改,还包括对数据因素的定向查询要求,最终提出对SQL的优化方案,使得数据库自身性能得到明显改善。
2.3 应用优化
在应用的优化层面,主要是针对Oracle数据库对数据库的索引优化以及对结构查询语言语句方面的优化。索引方法对于Oracle数据库的输入与输出的而影响较大,充分运用索引优化的方法,能够在对数据库进行访问时,减少大量数据的全盘扫描,采取分表扫描的方式,最大限度上的减少I/O开销[7]。对Oracle数据库性能应用层面的优化,索引在进行访问的过程中需要对某些依据进行性能方面的提升,但必将产生一些影响语句性能的基本问题,在开展索引的过程中并非运用的数量越多,则索引的效果越好。反而应该遵循标准原则,进而最大限度上的提高数据库的性能要素。
Oracle数据库使用规模的不断扩张,用户数量明显增加,大量的信息存储压力也造成数据库性能堪忧。而当前对于数据库性能优化的研究正在不断丰富,本次研究则主要是为了进一步丰富现有的研究成果。基于环境优化、性能优化以及应用优化等多层面,对数据库性能调整与优化做出引导。环境优化是基础、性能优化是保障、应用优化是升华。通过三个阶段的优化升级,Oracle数据库发展环境势必得到更新,为可持续发展探索新的发展途径。
3 结论
综上所述,计算机网络的快速发展,数据库技术的更新换代的速度明显加快,对Oracle数据库性能进行调整与优化,根本目的旨在满足当前信息时代对数据库系统的基本要求。基于此,Oracle数据库在发展过程中,结合不同因素进行合理调整与优化,确保数据库的基本性能得以充分发挥。
参考文献:
[1] 江李兵,江川宁.Oracle数据库的性能调整与优化方法探析[J].计算机光盘软件与应用,2014,10(10):140-142.
[2] 刘恩军.ORACLE数据库性能调整与优化研究[J].电脑知识与技术,2014,12(20):462-463.
[3] 黄雁.基于Oracle数据库的性能调整及优化技术研究[J].电脑编程技巧与维护,2015,4(9):166-188.
[4] 郭晓丹.基于Oracle数据库系统性能调整与优化研究[J].数字技术与应用,2015,4(5):105-107.
[5] 任艳.Oracle数据库性能调整与优化技术探讨[J].中国新通信,2013,10(2):103-104.
[6] 刘哲.基于Oracle数据库系统的优化与性能调整研究[J].绿色科技,2012,2(5):283-284.
[7] 李可可.浅析Oracle数据库的性能优化方法[J].硅谷,2011,12(2):185-189.