APP下载

基于ORACLE数据库应用系统的优化途径研究

2016-08-19林晓燕

电脑知识与技术 2016年20期
关键词:应用系统Oracle数据库优化途径

林晓燕

摘要:数据库的性能对数据库应用系统的实用性有着直接的影响。但大多数据库在经过一段时间的使用之后都会有不同程度的问题产生,例如操作系统等。因此,对数据库应用系统的优化途径进行研究和探讨是极有必要的。笔者首先简要阐述了ORACLE数据库应用系统的优化结构,包括相关理论的概述,评估标准以及优化的主要内容等,并提出一般情况下的数据库优化技术,例如索引、查询方式的优化,以及并行优化等。最终对优化结果进行检验,并详细分析了实例中涉及的设计和优化内容。

关键词:ORACLE数据库;应用系统;优化途径;技术

中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)20-0003-02

数据库应用系统是信息技术发展和革新速度较快的内容之一,在大数据被充分应用于生产和生活的新时代,数据库应用系统已经逐渐上升到应用体系的基础和关键部分。自上世纪中期开始至今,数据库应用系统逐步成为我国现代化计算机产业的基础工程,对其的运用领域也在不断扩大,但与其他发达国家相比,仍然存在技术和性能上的差距。因此,数据集是否能高校运转、其技术是否能得到更新是当前我国数据库建设的重要任务。

1 ORACLE数据库应用系统的优化结构

1.1 优化概述

针对数据库应用系统的优化是一个动态的持续过程,通过对程序的优化、参数的改变等方式来达到优化的目的。其中,对数据库性能的调整包括硬件组成、操作程序,以及对所有访问的程序和应用进行理解和优化。本质上说,系统的优化即是指有目标的对组成进行协调,以实现性能的优化,从而使得数据应用系统的反应速度得到提升。对数据库应用系统进行优化的基本原则是尽量通过最少的空间来获取更多的数据。简单来说,对数据的优化和调整是一个不断往复的过程,若要实现系统的优化,就需对其进行合理的调整,确认优化结束,再检验调整的成果,并根据结果进行再次优化,指导达到预定的目标。数据库的整个周期大致可划为三个过程,即制定、开发和完成。其中,在所涉及环节进行优化的效率最高,其耗费的资源也最少。

1.2 数据库评估指标

数据库的评估指标主要包括五个内容。

第一,应用系统吞吐量,也叫系统处理量。是指在规定的时间内数据库实现的SQL语言的数量,一般以每秒钟的完成量来表示。吞吐量的提升有两个方法,一是通过降低服务时间,另一个是通过降低数据库的反应时间来实现吞吐量的提高。

第二,数据反应时间。即是使用者的响应时间,指使用者从上传SQL语言到取得结果的第一部分所花费的时间,通常以秒或毫秒为单位。反应时间可划分为CPU时间和使用者等待时间,即提高响应时间的方式有提升吞吐量和降低使用者同时访问的发生率。

第三,命中率。Oracle用户需要的信息一般都是经过缓存来进行存入和获取,因此命中率是用来表示使用者对系统给予的数据是否感到满意。

第四,存储情况。评定内存的合理使用与否,主要有两个方面,一是将重点放在处理能够带来最大利益的挑战,二是尽量减少或清除瓶颈。

第五,磁盘I/O。数据库中的每一个指令都有可能产生I/O,通过对I/O发生机率的降低,来缩短用户的响应时间。

1.3 优化的主要内容

具体的优化主要包括六个内容。

1)设计的优化。若要使Oracle数据库的性能达到最优,就需对设计方案进行优化。如果方案设计出现偏差,在之后的开发或使用过程中即使再进行优化效率都不高,因此要提升数据库的性能,需从设计方案的优化开始。

2)结构设计的确认。在确认系统之前,应充分考虑到其所需的结构,不同的模式适应不同的应用程序结构,最优搭配才能使数据库的性能最优。

3)程序的调整。数据表明,接近三分之二的系统优化取决于对应用程序的调整,其对数据库的影响最终反映在SQL语言上面,因此通过提高SQL语句即能够实现数据库应用系统的优化。

4)存储功能的调整。SGA是Oracle实例的组成部分之一,其的使用对系统的性能影响较大。因此对SGA的大小进行优化即可帮助系统性能的优化。

5)磁盘I/O的优化。该操作属于消耗最大的操作指令之一,对其优化的程度十分重要。

6)操作系统的优化。操作系统是否优化能够直接影响数据库系统的性能,主要从Oracle的规划、服务器等方面进行调整。

2 ORACLE数据库应用系统的优化途径

2.1 索引优化

索引的优化主要包括哈希索引、位图索引、分区索引、以函数为基础的索引四个内容。HASH结构主要用来存储码值,当HASH函数被应用于码值时,HASH函数以近似于随机的方式进行分布。哈希索引的访问速度较快,但要使用该索引就必须先建立一个群集,通过指令来告诉群集,如何进行存储和整合。位图索引在进行数据载入时,一般来说要比B*树的效率更高一些。位图索引的加入主要是为了适应特殊的查询情况,一般适用于DDS-Decision Support System和数据库,其在普通的行为中并不常用。分区索引即是指将索引划分成许多部分,主要分为本地索引和全局索引,每个索引类型中又根据有无前缀分成两种子类型。通过分区索引之后,可将不同的片段进行单独访问或存储,这是索引没有的功能。以函数为基础的索引使得使用者能对正在进行运算的数据进行索引。也就是说,以函数为基础的索引能够允许多种方式和语句的搜索和查询。

2.2 查询优化

查询优化主要通过对SQL的转换来进行。当SQL语句表达查询时,其方式较多。Oracle数据库能够实现复杂的SQL转换,其目的是将既定的SQL转换为含义相近且性能更优的数据。Oracle能够进行多种SQL转换,并可大致将其分为两种类型,一类是试探查询转换,一类是以成本为基础的转换。前者按其复杂程度又可分为简单合并和复杂合并两种类型。以开销为基础的转换主要包括实体化视图转换、OR扩展、星型转换、外连接试图的关键词下推、连接排序等内容。其中OR扩展技术能够将带有OR的查询指令置换成没有OR的查询指令,而星型置换主要用于数据库的模型建设,可用来存储数据。查询优化是数据能否获得最优性能的重要因素,ORACLE的查询优化功能较多,不仅仅可用于各数据仓库用户的访问,还能在用户查询时自动进行调整。

2.3 并行查询优化

并行处理技术能够对TB级的数据进行访问,因此其在数据库技术中占有重要地位。可以说,如果没有此技术,大数据群集将不复存在。所谓并行处理就是指通过多个中央处理器和I/O对单一数据库进行操作。并行的类型主要有并行查询、并行DML,以及并行DDL三种操作类型。并行处理的原理是将一个数据划分为多个部分,对此技术进行优化,重点是怎样做出将其划分为更小的部分的正确决定。若使用Oracle的非静态处理体系,能够使得资源共享,此时并行处理和划分决策并不互相冲突,也不受制于任何的非动态数据分布。Oracle数据库能够对其中的任何内容进行操作,并以共享所有内容的措施建立处理体系。因此,不论是将数据存储到独立的区域,还是设定新的索引指令,其都能快速高效地完成并行。

3 ORACLE数据库应用系统的优化实例

3.1管理系统的综合设计

以联通应用系统的综合设计为例。该系统在联通的运营管理中处于极为关键的地位,其是以联通管理为基础形成的覆盖了联通大部分业务的管理系统。在该系统中,各类运行程序是互相影响和可连接的关系,各个拆分系统进行数据和信息的传输,以实现资源共享。系统的综合结构主要包括高速网络、由UNIX主机组成的服务器、存储空间等部分组成。网络结构的连接是通过广域网接通到防火墙,再连接到局域网。服务器的主机分为数据库和运用以及相关的备份服务器。其中数据库主要用于信息的解决和计算;运用服务器主要用于对涉及的应用程序进行分配;而备用服务器则用于突发情况的应对,以保证系统的运转效率。另外,对管理系统的综合设计还包括应用程序的逻辑结构,整个结构主要包括三个部分,即用于与客户进行交互的客户层,接用户的要求指令进行处理并发展结构的中间层,以及负责处理信息、接收来自中间层所传输的指令进行处理并将最终结果反馈的数据库层。

3.2 SQL的优化

ORACLE数据库是目前行业内应用频率最高的数据库之一,其利用不同的SQL语句来对其中的内容进行处理或操作。SQL语句大致包含了系统控制语言、信息掌控语句、信息定义语句等内容。其中数据操控语句主要负责进行数据的查询或掌控,包括信息的插入、更新以及删除等操作。信息定义语言主要负责对数据库服务主体的管理,即建立、修改或清除等。系统控制语言主要职责是负责对数据库实例的属性进行修改和更新。前文有述,相同的SQL可以利用不同的方法来操作,例如索引、哈希连接等。因此对于SQL语言的执行来说,其优化器的优化方式的选择能够直接影响最终的优化效果,优化器的模式不同,则其对SQL语句发生的执行指令也可能不同。例如,若SQL语言中的任何一个表在整个库中有信息存在,则可采用CBO,并将吞吐量最佳作为优化器的优化目的。另外,索引对SQL的优化影响主要体现在对其访问途径的改变,选择正确的索引方式是SQL语言能够进行优化的核心所在。

3.3 优化ORACLE存储空间

在联通应用系统的综合设计中,数据库内存空间为8G,其分配情况大致如下:将内存的二分之一划分给Oracle,操作系统的占用空间约为1G,剩下的部分全部用来做备用存储。划分给Oracle的存储空间包括PGA以及SGA两个部分。Oracle在进行数据提取时,一般在存储空间中查询,若查询失败则读取磁盘内存,在其中查找需要的数据和信息。由于划分给Oracle的存储空间并不充足,因此可对其相关参数进行调整来增加其存储空间的大小。例如将LOG_BUFFER的内存从原来的500k增加到1M等,进行优化之后Oracle的存储空间能够占到总数的三分之二左右,以达到Oracle应用系统的性能优化目的。

4 结束语

严格来说,数据库的优化除了对当前的应用程序和信息进行优化之外,还渗透于整个数据库的所有阶段,例如编码、实验等。在数据库优化的每个环节,都需要对数据库应用系统的性能优化进行细致的分析和规划。应用系统性能降低大多是源于过度的消耗,因此在对数据库进行优化时,对其设计方案和硬件设施进行优化是帮助提高性能的关键所在,从而实现应用系统的优化和性能提升。

参考文献:

[1]王春梅,陈学明.基于Oracle数据库电信CRM经营分析系统的性能优化[J].计算机与数字工程,2015(3):418-422.

[2]杨嵩.浅谈Oracle数据库应用系统的性能优化[J].计算机光盘软件与应用,2015(3):111-112+115.

[3]李荣会,周观民.Oracle数据库应用系统性能优化问题探讨[J].数字技术与应用,2012(6):215-216.

[4]袁佰顺,朱拥军,李晓鹤.基于ORACLE的陇东南区域自动气象站数据库设计及应用[J].干旱气象,2014(3):475-480.

猜你喜欢

应用系统Oracle数据库优化途径
高校行政人员的绩效管理及其优化途径
事业单位档案管理工作优化途径分析
市场经济下的城乡规划资源配置优化途径
企业云平台建设研究