本文主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从九个不同方面较全面地总结了ORACLE数据库的优化调整方案。
关键词 ORACLE数据库 环境调整 优化设计 方案
对于ORACLE数据库的数据存取,主要有四个不同的调整级别,第一级调整是操作系统级包括硬件平台,
第二级调整是ORACLE RDBMS级的调整, 第三级是数据库设计级的调整, 最后一个调整级是SQL级。通常依此四级调整级别对数据库进行调整、优化,数据库的整体性能会得到很大的改善。下面从九个不同方面介绍ORACLE数据库优化设计方案。
一、数据库优化自由结构OFA(Optimal flexible Architecture)
数据库的逻辑配置对数据库性能有很大的影响,为此,ORACLE公司对表空间设计提出了一种优化结构OFA。使用这种结构进行设计会大大简化物理设计中的数据管理。优化自由结构OFA,简单地讲就是在数据库中可以高效自由地分布逻辑数据对象,因此首先要对数据库中的逻辑对象根据他们的使用方式和物理结构对数据库的影响来进行分类,这种分类包括将系统数据和用户数据分开、一般数据和索引数据分开、低活动表和高活动表分开等等。
数据库逻辑设计的结果应当符合下面的准则:(1)把以同样方式使用的段类型存储在一起;(2)按照标准使用来设计系统;(3)存在用于例外的分离区域;(4)最小化表空间冲突;(5)将数据字典分离。
二、充分利用系统全局区域SGA(SYSTEM GLOBAL AREA)
SGA是oracle数据库的心脏。用户的进程对这个内存区发送事务,并且以这里作为高速缓存读取命中的数据,以实现加速的目的。正确的SGA大小对数据库的性能至关重要。SGA包括以下几个部分:
1、数据块缓冲区(data block buffer cache)是SGA中的一块高速缓存,占整个数据库大小的1%-2%,用来存储从数据库重读取的数据块(表、索引、簇等),因此采用least recently used (LRU,最近最少使用)的方法进行空间管理。
2、字典缓冲区。该缓冲区内的信息包括用户账号数据、数据文件名、段名、盘区位置、表说明和权限,它也采用LRU方式管理。
3、重做日志缓冲区。该缓冲区保存为数据库恢复过程中用于前滚操作。
4、SQL共享池。保存执行计划和运行数据库的SQL语句的语法分析树。也采用LRU算法管理。如果设置过小,语句将被连续不断地再装入到库缓存,影响系统性能。
另外,SGA还包括大池、JAVA池、多缓冲池。但是主要是由上面4种缓冲区构成。对这些内存缓冲区的合理设置,可以大大加快数据查询速度,一个足够大的内存区可以把绝大多数数据存储在内存中,只有那些不怎么频繁使用的数据,才从磁盘读取,这样就可以大大提高内存区的命中率。
三、规范与反规范设计数据库
1、规范化
范式是符合某一级别的关系模式的集合,根据约束条件的不同,一般有1NF、2NF、3NF三种范式。规范化理论是围绕这些范式而建立的。规范化的基本思想是逐步消除数据依赖中不合适的部分,使模式中的各关系模式达到某种程度的“分离”,即采用“一事一地”的模式设计原则,因此,所谓规范化实质上就是概念的单一化。数据库中数据规范化的优点是减少了数据冗余,节约了存储空间,相应逻辑和物理的I/O次数减少,同时加快了增、删、改的速度。但是一个完全规范化的设计并不总能生成最优的性能,因为对数据库查询通常需要更多的连接操作,从而影响到查询的速度。故有时为了提高某些查询或应用的性能而有意破坏规范规则,即反规范化。
2、反规范化
⑴反规范的必要性
是否规范化的程度越高越好呢?答案是否定的,应根据实际需要来决定,因为“分离”越深,产生的关系越多,结构越复杂。关系越多,连接操作越频繁,而连接操作是最费时间的,在数据库设计中特别对以查询为主的数据库设计来说,频繁的连接会严重影响查询速度。所以,在数据库的设计过程中有时故意保留非规范化约束,或者规范化以后又反规范,这样做通常是为了改进数据库的查询性能,加快数据库系统的响应速度。
⑵反规范技术
在进行反规范设计之前,要充分考虑数据的存取需求,常用表的大小、特殊的计算、数据的物理存储等。常用的反规范技术有合理增加冗余列、派生列,或重新组表几种。反规范化的好处是降低连接操作的需求、降低外码和索引数目,减少表的个数,从而提高查询速度,这对于性能要求相对较高的数据库系统来说,能有效地改善系统的性能,但相应的问题是可能影响数据的完整性,加快查询速度的同时降低修改速度。
3、数据库设计中的优化策略
数据应当按两种类别进行组织:频繁访问的数据和频繁修改的数据。对于频繁访问但是不频繁修改的数据,内部设计应当物理不规范化。对于频繁修改但并不频繁访问的数据,内部设计应当物理规范化。比较复杂的方法是将规范化的表作为逻辑数据库设计的基础,然后再根据整个应用系统的需要,物理地非规范化数据。规范与反规范都是建立在实际的操作基础之上的约束,脱离了实际两者都没有意义。只有把两者合理地结合在一起,才能相互补充,发挥各自的优点。
分享到:
相关推荐
### 大型Oracle数据库优化设计方案解析 在当今数据驱动的时代,高效、稳定且优化的数据库系统对于企业运营至关重要。尤其对于大型Oracle数据库,其优化设计不仅关乎数据处理速度,更直接影响到业务连续性和用户体验...
"大型ORACLE数据库优化设计方案" 本文主要从大型数据库ORACLE环境四个不同级别的调整分析入手,分析ORACLE的系统结构和工作机理,从九个不同方面较全面地总结了ORACLE数据库的优化调整方案。 一、数据库优化自由...
【大型ORACLE数据库优化设计方案】 Oracle数据库作为一款广泛使用的大型企业级数据库系统,其性能优化是确保系统稳定高效运行的关键。本方案主要针对ORACLE数据库的优化策略进行深入探讨,涵盖了从操作系统层面到...
总的来说,大型Oracle数据库的优化是一项综合性的任务,涉及到硬件平台、数据库软件、数据库设计和SQL执行等多个层面。通过对OFA、SGA、规范化和反规范化设计的深入理解和实践,以及不断调整和测试,才能实现数据库...
Oracle数据库优化设计方案是一个复杂而全面的过程,涉及到数据库的多个层面,包括硬件配置、数据库结构、内存管理、数据规范与反规范、索引设计以及并行处理等。以下是对这些方面的详细解析: 1. **科学配置逻辑...
大型数据库ORACLE数据库的优化设计方案 (1).pdf
【Oracle数据库系统优化设计方案】 Oracle数据库系统作为关系型数据库的代表,因其高性能、高扩展性和数据安全性,在信息化时代被广泛应用。然而,随着数据库系统运行时间的增长,可能会出现性能下降的问题,这时就...
【Oracle数据库优化设计】 Oracle数据库作为一款广泛应用的关系型数据库管理系统,其优化设计对于提升系统性能至关重要。随着信息技术的发展,Oracle数据库系统的复杂性不断提高,优化的需求也随之增加。本文将围绕...
综上所述,Oracle数据库优化是一个涉及多方面因素的综合工程,需要从数据库设计、SQL优化、配置调整、维护策略等多个角度进行深入研究和实践,才能充分发挥Oracle的潜力,为企业带来更高的数据处理效率。通过不断的...
大型ORACLE数据库系统的优化设计方案 (1).pdf
优化大型Oracle数据库系统是一个涉及多层面、多因素的过程,需要对数据库原理有深入理解,并结合具体业务需求进行精细化调整。通过上述四个级别的优化,可以有效提升数据库性能,确保系统的稳定运行,降低运营成本...
【Oracle数据库大作业】是一个关于Oracle数据库在教务管理系统中的应用项目,可能涵盖了数据库设计、实施、优化等多个方面的内容。这个大作业包含了PPT演示文稿、Word文档以及可能的源代码,为学习者提供了全面了解...
在设计超大型Oracle数据库时,必须综合考虑这些因素,结合业务需求和硬件资源,制定出既能满足当前需求又能适应未来发展的设计方案。同时,持续监控和调整数据库性能,确保其始终处于最佳状态,是运维工作的重要组成...
因此,本文重点讨论了超大型Oracle数据库的基础设计和优化设计,旨在帮助用户更好地理解和应用Oracle数据库。 首先,我们来分析Oracle的逻辑结构和程序结构。Oracle的逻辑结构主要由存储单元和数据库对象组成。存储...
【Oracle数据库优化设计与实现】 在企业信息化进程中,Oracle数据库作为主流的关系型数据库管理系统,广泛应用于各类业务系统,包括产销系统。然而,随着业务数据量的急剧增长,系统响应速度变慢、占用资源过多的...
Oracle优化设计方案旨在提升数据库性能,确保数据安全,便于管理和开发。设计Oracle数据库时,需要遵循一系列基本原则和步骤。 首先,逻辑建模是根据系统需求分析数据间的内在和外在关系,构建整个系统的数据结构。...
在“Oracle数据库课程设计报告学生成绩管理系统”中,我们可以深入探讨Oracle数据库如何应用于构建一个成绩管理系统,这将涵盖以下几个关键知识点: 1. **Oracle数据库介绍**:Oracle数据库是一款关系型数据库管理...