Oracle数据库的优化设计

来源 :硅谷 | 被引量 : 0次 | 上传用户:zhang1xiao123321
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  [摘要]主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从不同方面较全面地总结ORACLE数据库的优化调整方案。
  [关键词]ORACLE数据库 环境调整 优化设计 方案
  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720043-01
  
  ORACLE数据库中数据存取性能的改善,可以进行调整级别,第一级调整是操作系统级包括硬件平台,第二级调整是ORACLE RDBMS级的调整,第三级是数据库设计级的调整,最后一个调整级是SQL级。通常依此四级调整级别对数据库进行调整、优化,数据库的整体性能会得到很大的改善。
  
  一、数据库优化自由结构OFA(Optimal flexible Architecture)
  
  数据库的逻辑配置对数据库性能有很大的影响,为此,ORACLE公司对表空间设计提出了一种优化结构OFA。使用这种结构进行设计会大大简化物理设计中的数据管理。优化自由结构OFA,简单地讲就是在数据库中可以高效自由地分布逻辑数据对象,因此首先要对数据库中的逻辑对象根据他们的使用方式和物理结构对数据库的影响来进行分类,这种分类包括将系统数据和用户数据分开、一般数据和索引数据分开、低活动表和高活动表分开等等。数据库逻辑设计的结果应当符合几个准则:把以同样方式使用的段类型存储在一起;按照标准使用来设计系统;存在用于例外的分离区域;最小化表空间冲突;将数据字典分离。
  
  二、充分利用系统全局区域SGA(SYSTEM GLOBAL AREA)
  
  SGA是Oracle數据库的心脏。用户的进程对这个内存区发送事务,并且以这里作为高速缓存读取命中的数据,以实
  现加速的目的。正确的SGA大小对数据库的性能至关重要。SGA包括以下几个部分:一个是数据块缓冲区(data block buffer cache)是SGA中的一块高速缓存,占整个数据库大小的1%-2%,用来存储从数据库重读取的数据块(表、索引、簇等),因此采用least recently used (LRU,最近最少使用)的方法进行空间管理。一个是字典缓冲区。该缓冲区内的信息包括用户账号数据、数据文件名、段名、盘区位置、表说明和权限,它也采用LRU方式管理。一个是重做日志缓冲区。该缓冲区保存为数据库恢复过程中用于前滚操作。还有一个是SQL共享池。保存执行计划和运行数据库的SQL语句的语法分析树。也采用LRU算法管理。如果设置过小,语句将被连续不断地再装入到库缓存,影响系统性能。
  
  三、规范与反规范设计数据库
  
  第一,规范化。对于范式是符合某一级别的关系模式的集合,根据约束条件的不同,一般有1NF、2NF、3NF三种范式。规范化理论是围绕这些范式而建立的。规范化的基本思想是逐步消除数据依赖中不合适的部分,使模式中的各关系模式达到某种程度的“分离”,即采用“一事一地”的模式设计原则,因此,所谓规范化实质上就是概念的单一化。数据库中数据规范化的优点是减少了数据冗余,节约了存储空间,相应逻辑和物理的I/O次数减少,同时加快了增、删、改的速度。但是一个完全规范化的设计并不总能生成最优的性能,因为对数据库查询通常需要更多的连接操作,从而影响到查询的速度。故有时为了提高某些查询或应用的性能而有意破坏规范规则,即反规范化。
  第二,反规范化。在数据库的设计过程中有时故意保留非规范化约束,或者规范化以后又反规范,这样做通常是为了改进数据库的查询性能,加快数据库系统的响应速度。反规范化的好处是降低连接操作的需求、降低外码和索引数目,减少表的个数,从而提高查询速度,这对于性能要求相对较高的数据库系统来说,能有效地改善系统的性能,但相应的问题是可能影响数据的完整性,加快查询速度的同时降低修改速度。
  所以,规范与反规范都是建立在实际的操作基础之上的约束,脱离了实际两者都没有意义。只有把两者合理地结合在一起,才能相互补充,发挥各自的优点。
  
  四、索引Index的优化设计
  
  第一,管理组织索引。索引可以大大加快数据库的查询速度,索引把表中的逻辑值映射到安全的RowID,因此索引能进行快速定位数据的物理地址。对一个建有索引的大型表的查询时,索引数据可能会用完所有的数据块缓存空间,ORACL不得不频繁地进行磁盘读写来获取数据,因此在对一个大型表进行分区之后,可以根据相应的分区建立分区索引。DBA创建索引时,应尽量保证该索引最可能地被用于where子句中,如果对查询只简单地制定一个索引,并不一定会加快速度,因为索引必须指定一个适合所需的访问路径。
  第二,聚簇的使用。Oracle提供了另一种方法来提高查询速度,就是聚簇(Cluster)。所谓聚簇,简单地说就是把几个表放在一起,按一定公共属性混合存放。聚簇根据共同码值将多个表的数据存储在同一个Oracle块中,这时检索一组Oracle块就同时得到两个表的数据,这样就可以减少需要存储的Oracle块,从而提高应用程序的性能。
  
  五、使用最优的数据库连接和SQL优化方案
  
  第一,使用直接的OLE DB数据库连接方式。通过ADO可以使用两种方式连接数据库,一种是传统的ODBC方式,一种是OLE DB方式。ADO是建立在OLE DB技术上的,为了支持ODBC,必须建立相应的OLE DB到ODBC的调用转换,而使用直接的OLE DB方式则不需转换,从而提高处理速度。
  第二,使用Connection Pool机制。在数据库处理中,资源花销最大的是建立数据库连接,而且用户还会有一个较长的连接等待时间。解决的办法就是复用现有的Connection,也就是使用Connection Pool对象机制。Connection Pool的原理是:IIS+ASP体系中维持了一个连接缓冲池,这样,当下一个用户访问时,直接在连接缓冲池中取得一个数据库连接,而不需重新连接数据库,因此可以大大地提高系统的响应速度。
  第三,高效地进行SQL语句设计。通常情况下,可以采用一些方法优化SQL对数据操作的表现。首先,减少对数据库的查询次数,即减少对系统资源的请求,使用快照和显形图等分布式数据库对象可以减少对数据库的查询次数。其次,尽量使用相同的或非常类似的SQL语句进行查询,这样不仅充分利用SQL共享池中的已经分析的语法树,要查询的数据在SGA中命中的可能性也会大大增加。还可以限制动态SQL的使用,虽然动态SQL很好用,但是即使在SQL共享池中有一个完全相同的查询值,动态SQL也会重新进行语法分析。
  总之,提高系统性能需要一种系统的整体的方法,在对数据库进行优化时,应对应用程序、I/O子系统和操作系统(OS)进行相应的优化。优化是有目的地更改系统的一个或多个组件,使其满足一个或多个目标的过程。对Oracle来说,优化是进行有目的的调整组件级以改善性能,即增加吞吐量,减少响应时间。DBA能从上述方面综合考虑优化方案,相信多数ORACLE应用可以做到按最优的方式来存取数据。
  
  参考文献:
  [1][美]Joe Greene,Advanced Information Systems,Inc.et al. Oracle 8 服务器技术精粹 [M].清华大学出版社,1999.
  [2]瓮正科、王新英,Oracle 8.X For Windows NT 实用教程[M].清华大学出版社,1999.
  [3]Kevin Loney.Oracle8i 数据库管理员手册[M].机械工业出版社,2000.
  [4]周渝斌,基于ORACLE8i的大型数据库技术讲座之一数据库优化篇[J].电脑编程技巧与维护,2002.
其他文献
[摘要]从AutoCAD应用的角度提出煤矿巷道贯通标定数据的作图法实现。利用传统计算方法计算巷道贯通标定数据复杂且容易出现错误,利用介绍的方法只需要进行简单设置,就可直接查询计算结果,对提高煤矿技术员工作效率和质量有一定的现实意义。  [关键词]巷道贯通 标定数据 查询  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2009)0110120-02    一、引言    由于云
期刊
中图分类号:G42 文献标识码:A 文章编号:1671-7597(2009)0110158-01    随着社会的发展,人们对数学教育的要求会越来越高。为适应这种要求,高中数学试验教材已在全国十一个省市试用,高中数学课程标准也在讨论制订之中。但我们知道:从教育的效果来看,课程可分为预期课程、实施课程和实现课程三种。预期课程是由国家政府部门和教育专家们制订的,而实施课程是教师根据自己对预期课程的理解
期刊
中图分类号:S1 文献标识码:A 文章编号:1671-7597(2009)0110196-01    农业机械是农业生产力中最具有活力的要素,农业机械化历来是衡量农业发展水平、反映农业现代化进程的重要标志。纵观世界各国农业机械化发展道路,都有其相同或相似的发展规律。科学分析我国农机化发展形势,把握发展规律,是做好今后一个时期我国农业机械化工作的基础和前提。当前,从社会发展的客观需要和经济、技术条件
期刊
中图分类号:D4文献标识码:A文章编号:1671-7597(2009)0110200-01    农村人口的增长,农村耕地的减少,农业劳动生产率的提高,是造成农村劳动力过剩的三大主要原因。而实现农村富余劳动力转移又是关乎农民就业、农民增收、农村稳定、农村实现小康的重要途径。因此,农村富余劳动力转移就成为各级政府思考的重要问题,并伴随着改革开放三十年。但随着新的经济转型期的到来,农村富余劳动力如何转
期刊
[摘要]Excel 2003是微软公司出品的Office 2003 办公软件系列中的一个核心组件之一,它是一个通用的电子表格处理软件。使用它可以方便快捷的进行数据运算和数据分析,以成绩统计查询为例简单说明Excel2003强大的数据管理能力。  [关键词]Excel 2003 数据运算 数据分析 数据查询 函数  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720
期刊
[摘要]Web 2.0在短短两年的时间成为互联网的主流,一大批带有明显Web 2.0色彩的网站聚集了大量人气。在颠覆传统的冲浪模式的同时,一些商家开始尝试把Blog、RSS、长尾理论等典型的Web 2.0应用引入电子商务领域,以期利用新的销售思想和模式吸引人气、增加利润,其中不乏成功者。Web 2.0的思想及其应用将会在更大的范围内促进电子商务的发展,把电子商务带进一个崭新的时代。  [关键词]W
期刊
[摘要]随着电子科学技术的飞速发展,面对运算量巨大的科学计算, DSP技术的出现和发展彻底的变革了人们的工作、学习和生活方式。DSP(Digital Signal Processing)是数字信号处理技术的缩写,也可以代表数字信号处理器(Digital Signal Processor)。DSP目前已经处于数字信息产品核心引擎的地位,面对中外巨大的市场空间,我们应该努力去挖掘DSP技术的应用和发展
期刊
[摘要]在全球传媒界同仁的共同努力下,电视作为一种现代化传播手段而发展到今天,其在技术层面上已经很难取得实质性的突破。于是,电视节目的创作理念成为人们最为关注的问题,在这个范围内进行的革命,也成为一种必然。因此,深入分析电视谈话类和电视娱乐类节目的平民意识对于电视在传播领域内更好地发挥其积极作用具有非常重要的意义。  [关键词]电视谈话节目 电视娱乐节目 平民意识 互动 娱乐性   中图分类号:J
期刊
[摘要]将简述如何在以OLED作为操作面板的电控设备上,实现多级功能菜单的设计及显示。  [关键词]单片机 OLED 多级菜单  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720016-02    随着人性化、智能化电控设备的发展,其功能越来越强大,操作面板显示内容越来越多,已不再满足于数码管显示,取而代之的是LCD、OLED等显示面板。而对于野外工作的电控设备
期刊
[摘要]主要比较VB程序设计中鼠标和键盘使用的优缺点问题,并对键盘及快捷键的操作进行分析和设计,对于初学程序设计的读者具有非常重要的参考和借鉴意义。  [关键词]窗体 事件 Ascii 代码 快捷键等等。  中图分类号:TP3 文献标识码:A 文章编号:1671-7597(2008)0720042-01    在微软的各类应用程序中,不无例外地包含菜单、工具栏、各种按钮(如命令按钮、单选、复选、列
期刊