知识大全 构建高性能Oracle运行系统的原则

Posted 系统

篇首语:旋转木马是这世上最残酷的游戏,彼此追逐,却永远隔着可悲的距离。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 构建高性能Oracle运行系统的原则相关的知识,希望对你有一定的参考价值。

构建高性能Oracle运行系统的原则  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

  要得到高性能运转的Oracle数据库系统 首先要做到未雨绸缪 即首先要做好系统规模与容量的规划 要做好这两方面的规划 必须要从三方面考虑

  分别是 CPU利用率 I/O子系统(主要是磁盘)的使用 内存使用

  其中CPU利用率与用户进程数量有关 随着用户数量的增加 用户进程数量必然增长 所以在选择CPU时 要优先选择那些主频高缓存区大的CPU 而且要预先对用户的增长趋势做好预测 为CPU的扩展做好准备

  另外在任何系统中的资源都会由于使用者请求数量的增加而造成等待排队 等待排队数量越多 通常系统的响应速度越慢 在这方面I/O子系统的表现最为明显(网络子系统与I/O子系统类似 因此也有类似表现) 据权威测试结果显示 如果对I/O子系统中的某个资源(比如磁盘)的过多访问 造成这种资源的利用率超过其自身极限的 % 那么就会造成对这种资源的访问等待队列中的排队数量呈几何级数增长

  因此为规避这种对I/O系统的过载访问 一般采用RADI阵列技术 Oracle的推荐原则是使用RADI 这可以做到性能与容错的完美折中 但是价格上比较昂贵 如果因为经济条件的限制 可以使用RADI 这是最为经济的一种规划 但是对写操作的性能较差 据成熟经验除非应用系统的读写比例为 %/ % 否则不要使用RADI 当然实际标准可能不一样 而且如果I/O非常少 RADI 也没有问题

  接下来就是内存使用问题 这也是最复杂的方面 因为它与操作系统 Oracle数据库实例 应用系统本身三方面有关

  其中前两方面关系更为密切 因为Oracle实例在运行时是由一系列后台进程以及这些进程所使用的内存所组成 进程所使用的内存就是所谓的系统全局区SGA SGA包括固有的两部分 即数据库高速缓存和重做日志缓冲区 还有一部分称为共享池 这部分中有一些必须的池如 数据字典缓存池等 还有一部分可选池如 大池(用于I/O读写)等 这需要根据系统要提供的功能和服务来进行取舍

  除了SGA还存在PGA 即用户进程所使用的内存空间 这部分空间的分配与使用 与操作系统和Oracle本身有关 因此调整和配置它们也要从这两方面考虑

  在Oracle i即以后版本中 可以通过设定PGA_AGGREGATE_TARGET参数来指定PGA内存大小 一般的原则为用物理内存数减去SGA规划的内存数的剩余部分划分给PGA SGA运行时位于操作系统的共享内存空间中 而PGA位于操作系统堆栈段中 因此SGA运行时不会被操作系统通过内存交换换出到磁盘 而PGA有可能被换出

  对于大部分的主流操作系统来说 内存管理都是采用虚拟内存的页式内存管理 这对Oracle性能会造成影响 因此要合理调节Oracle尽量避免页式调度的发生 因此我强烈推荐在单一主机上运行Oracle 而且只运行Oracle 剩下的就是应用系统的优化问题了 这也包含两个方面

  ( )程序代码的编写

  ( )生产数据库的设计

  首先生产数据库的结构要设计合理 包括冗余字段的规划 消除冗余的规划 索引的建立 簇的建立 是否使用物化视图 对大数据量的表建立分区 以及优化针对数据库对象的设计(比如块尺寸的调整 表的PCTUSED PCTFREE选项的调整等) 这些都要在设计时更具业务特点进行考虑 或者在开发过程中根据业务变化进行修正

  其次程序代码要进行合理编写 比如检索语句要进量使用各种手段进行优化(如使用线索技术等 对于各种优化规则 请参见我的另一篇翻译文档《Oracle语句优化规则》) 恰当合理的利用存储过程 以及对存储过程进行优化等 这些都要在开发过程中加以注意 而且还包括编程语言自身(如:Java C++等)的优化(比如使用先进算法 合理使用语言 选用更先进的编译技术等) 这是另外的议题 这里我不做讨论

cha138/Article/program/Oracle/201311/18631

相关参考

知识大全 ORACLE性能调优原则上篇(列表)

ORACLE性能调优原则上篇(列表)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  任何事情都有

知识大全 ORACLE性能调优遵循的基本原则

ORACLE性能调优遵循的基本原则  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  任何事情都有它

知识大全 Oracle数据库SQL语句性能调整的基本原则

Oracle数据库SQL语句性能调整的基本原则  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  详

知识大全 Oracle设置系统参数进行性能优化

Oracle设置系统参数进行性能优化  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一SGA  

知识大全 Oracle数据库系统性能优化策略

Oracle数据库系统性能优化策略  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一个数据库系统

知识大全 Oracle中空间管理对系统性能的影响

Oracle中空间管理对系统性能的影响  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  在Orac

知识大全 Oracle在基于Window操作系统的性能监控

Oracle在基于Window操作系统的性能监控  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 Oracle8 PL/SQL编程风格与系统性能的提高

Oracle8PL/SQL编程风格与系统性能的提高  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 

知识大全 Oracle 10g学习手册2:安装与构建三(图)

Oracle10g学习手册2:安装与构建三(图)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 大型数据库设计原则

  一个好的数据库产品不等于就有一个好的应用系统如果不能设计一个合理的数据库模型不仅会增加客户端和服务器段程序的编程和维护的难度而且将会影响系统实际运行的性能一般来讲在一个MIS系统分析设计测试和试运