大型数据库ORACLE数据库的优化设计思考

时间:2022-08-08 12:52:51

大型数据库ORACLE数据库的优化设计思考

摘要:ORACLE数据库是B/S体系结构的数据库,是世界运用最为广泛的数据库管理系统。许多大型企业信息网络系统中都用到了ORACLE数据库,对其进行优化分析有助于完善企业的信息网络系统,提高系统的可靠性、安全性。该文以大型数据ORACLE数据库为例,全面分析其优化设计方案。

关键词:ORACLE数据库;优化;物理结构;表

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

Optimum Design of a Large Database ORACLE Database

SUN Zhong-an

(Manchuria Frontier Inspection Station (the Inner Mongolia Autonomous Region, HulunBuir 021400,China)

Abstract: The ORACLE database architecture is B/S database, is in the world the most extensive database management system. Information network system, many large enterprises are used in the ORACLE database, optimization analysis is helpful to improve the information network system of the enterprise to improve the reliability, security, system. In this paper, a large database of ORACLE as an example, a comprehensive analysis of the optimized design scheme.

Key words: ORACLE database; optimization; physical structure; table

信息网络系统依靠数据库而运行,数据库的性能优劣很大程度上决定了信息网络系统的性能优劣。大多数数据库管理系统在运行一段时间后都会出现一定的性能问题,如:数据库硬件、应用程序、内存、服务器等出现缺陷。对数据库进行优化设计对信息网络系统的安全运行起重要作用。

1 ORACLE数据库特点

ORACLE数据库是甲骨文公司于上世纪70年代末推出的一种关系型数据库管理系统,历经三十多年的发展,不断更新换代,推出新的版本,至今在市场上仍占有主要份额。ORACLE数据库成功实现了关系型数据库转移到桌面计算机上,提供一个完整的B/S体系结构的商用DBMs。同时,它利用SQL*NET软件层,将多种操作系统与通信协议结合起来,提供分布式环境,实现单点更新、多点查询功能。在银行、钢铁、烟草、石油等大型企业中,企业数据流量大,数据安全性要求高,必须努力提高信息网络系统的安全性,提高数据库管理系统的安全性和可靠性。

从企业信息网络系统角度的ORACLE数据库来说,其具有以下几个特点:第一,支持大量用户同一时间在数据库管理系统上执行不同的操作,且保证数据的一致性。第二,ORACLE数据库具有优良的硬件独立性特点,能在大中小型微机系统中运用。第三,遵守操作系统、存取语言、用户接口等通信协议的工业标准。第四,ORACLE数据库具有用户鉴别、触发器、日志等功能,有效提高了数据库的安全性和可靠性,尤其是数据存取的安全性和完整性。第五,ORACLE数据库可以在不同型号的机器上运行使用,可以在同一个厂家不同操作系统上运行使用,具有优良的兼容性、独立性特点。

2 优化设计

2.1 物理结构优化

ORACLE数据库的物理结构包括控制文件、数据文件、重做日志文件、参数文件、归档文件、口令文件等,数据存储在物理磁盘上,在被使用时,调入内存。因此,物理结构的优化关键点在于物理存储的优化。当信息网络系统的数据库较为脆弱时,在非动态变化周期内数据运行效率基本能满足需求,在动态变化周期时,数据库的缺点、漏洞、弊端就会凸显出来,不利于信息网络系统的安全稳定运行。ORACLE在动态扩展过程中,其必须依据存储的要求在创建行、行变化获取缺省值时,扩展和分配存储空间,这种扩展并不等于事件的终结,可能导致数据文件、表空间的增长,造成在线系统运行的缓慢。对此,我们必须对其进行物理结构的优化设计,在建立数据库的时候先分配足够大小的空间和增长幅度。建立对象时,先根据其应用计算出大小,然后再定义对象Initial、Next、Minextents的值,努力实现数据库物理存储与动态增上的相对平衡,使对象不频繁增长,也使其不过度占有数据库空间。

2.2 逻辑结构优化

逻辑结构有数据库对象组成,其优化设计就是增减或调整逻辑结构,从而达到提高系统运行效率的目的,下面通过索引INDEX来简单介绍逻辑结构的优化设计。

索引有助于提高数据库的查询速度,它将表中的逻辑值映射到安全的ROWID,进而快速定位数据的物理地址。也有研究表明,大型表建立索引不仅不能提高查询速度,还会造成数据库系统运行的缓慢。ORACLE数据库在进行数据块的高速缓存管理时,索引数据具有更好的驻留权限;进行空间竞争时,需要先移出普通数据。对一个建有索引的大型表进行查询时,索引数据可能先占用数据块的缓存空间,不得不通过磁盘的读写来获取数据,因此,我们可以对大型表进行分区处理,分区后再分区建立索引。当大型表的数据查询非常频繁时,不建议建立索引,建立索引时,应尽量使索引被运用于WHERE子句中。如果只是建立一个简单的索引,其不一定会对查询起到加快速度的作用,因此,必须为索引指定一个访问路径。

2.3 充分利用系统全局区域SGA

SGA是ORACLE数据库的心脏,它包括数据块缓冲区、字典缓冲区、重做日志缓冲区和SQL共享池四个部分,其大小对于数据库性能起决定性作用。合理设置SGA的各个内存缓冲区,对于加快数据查询速度具有重要作用。在一个足够大的内存区中,将大多数数据存储在内存中,将部分使用较少的数据存储在磁盘上,达到提高内存区命中率的目的,提高数据查询速度。缓冲区高速缓存越大,ORACLE数据库中可装入的内存数据就越多,系统的性能就越好,而我们可以通过数据字典来了解缓冲区的高速缓存,当命中率低于0.85时,可以通过增加参数DB_CACH_SIZE值作为数据块缓冲区,从而分配更多的内存,提高数据库系统性能。

2.4 合理设计和管理表

第一,利用表分区。将不同分区的数据存储在不同的磁盘上,实现数据文件的物理层分区。当只对某个表中的数据进行查询时,直接对该表分区进行扫描查询,无需进行全表扫描,有效缩短查询时间。

第二,避免出现行连接和行迁移现象。建立表时,参数pctfree和pctused设置不正确会导致数据出现行连接和行迁移现象,导致同一行的数据存储到不同的数据块中。查询这些数据时,为了正确读取这些数据,磁头必须重新定位,这样就降低了查询速度。因此,建表时必须合理设置这两项参数,避免行连接和行迁移现象的出现。

第三,碎片的控制。碎片需要占据一定的磁盘空间,需要耗费一定的数据库资源。当2个及以上的数据对象在同一个表空间时,碎片的存在会导致区间交叉现象的出现。在动态增长中,对象的区间不再相互邻接。因此,设计和管理表的过程中必须重视碎片的控制。将小增长的表放在一个表空间中,将动态增长的表放在其表空间中,合理设计storage子句的参数,减少碎片的产生,避免区间交叉现象的出现。

第四,别名的使用,这是大型数据库中常用的方法,在查询过程中用一个字母来代替表明、列名等,有效提高查询速度。

第五,将回滚段定义为交替使用。数据库中的对应表具有相对静止的数据字典和极高事务率特点,索引、数据段等也具有相对静止特性,而系统中负荷最高的是回滚段表空间,将其定义为交替使用能实现循环分配事物对应回滚段效果,达到磁盘负荷均匀性目的。

3 结束语

优化 ORACLE数据库有利于提高信息网络系统的运行效率和质量,提高系统数据的安全性和完整性。在 ORACLE数据库开发设计的初级阶段,对系统的物理结构和逻辑结构进行优化设计,创建一个合理布局的数据库,从根本上提高数据库的性能,对于提高信息网络系统的性能有重要意义,对以后数据库的升级改造、扩展性优化具有重要现实意义。

参考文献:

[1] 陈秀英.大型ORACLE数据库系统的优化设计方案[J].舰船科学技术,2009,31(2):150-153.

[2] 巢子杰.Oracle数据库优化探究[J].软件导刊,2010,09(2):142-144.

[3] 魏亚楠,宋义秋.oracle数据库应用系统的性能优化[J].制造业自动化,2010,32(8):204-205.

[4] 励文杰.大型数据库ORACLE数据库的优化设计方案[J].科技风,2011(19):145.

上一篇:中职数学课程实施项目教学法的实践探索 下一篇:基于规则驱动的校园网计费系统中的关键技术