- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
简述影响oracle数据库性能的几个因素
近几年各个大中型应用软件的数据库性能问题越来越受到数据库领域人员的关注。剖析根源造成这种原因是最近十几年来信息技术的迅猛发展,各企事业单位一般都建立信息化管理系统及各类子系统的不断扩展完善,其用户数据成几何级数增长,直接导致数据库性能的下降。因此人们在使用信息化管理带的便利之时,也非常关注信息化系统运用过程中的效率。
个人认为数据影响数据库性能主要有以下五个方面:
1、软件结构设计;
2、数据库结构设计;
3、软件开发技术人员;
4、数据库运行硬件配置;
5、定期跟踪维数据库运行。
一、软件设计对数据库性能的影响
软件结构设计对数据库的影响不容忽视。例如一个系统的用户并发操作很大时,数据库如果直接去处理大量的并发用户操作,系统资源的开销会非常的大,并发用户间可能存在等待资源的可能性大大提高,从而使数据库性能急剧下降。如果能在数据库之前对大量并发请求进行预处理,有助于性能得到改善与提高,即我们通常所讲的三层结构。通过客户端与服务端数据库之间架设的中间缓冲层有效的处理大量并发请求,每次只让少量的用户连接到数据中,其他的提交请求在缓冲层中等待,这样利用有效的硬件与数据库资源去处理少量的用户提交请求,其效率也将大大提高;其次也降低了为抢夺数据库资源而产生资源死锁等现象。目前很多操作系统、数据库软件、中间件、硬件设备还提供的负载均衡,也有效平衡系统运行处理的压力。因此一个好的软件结构设计对数据库性能有着至关重要的影响。
二、数据库结构设计
数据库设计对在应用系统设计过程中是一个非常重要的环节。通常来说业务系统主要分为两大业,一个是业务生产系统即通常所说的在线事务处理系统(OLTP),另一个是业务分析系统即在线分析系统(OLAP)。这两者在数据库设计上有很大的不同。
数据库的内存对于一个OLTP系统显得非常重要,如果数据可以在内存中完成处理,那么对数据库的性能会大大的提高。数据库的内存主要是通过调整oracle数据库内存参数来实现的。
但在OLAP系统中内存的影响可能就很小,因为OLAP系统每天集中处理的海量的数据,这些数据全部在内存中处理基本上是很困难的,更重要是解决磁盘I/O。
三、软件开发技术人员
一般的软件开发技术人员对数据库技术了解不深,不了解数据库运行的机制。其在软件开发过程中往往仅仅重视软件代码运行的效率,而对其写的数据库脚本的效率视而不见,低性能的SQL脚本对数据库的杀伤力是巨大的,一条可能看似不起眼查询脚本可能直接导致数据库运行时占用大量的系统资源,严重影响系统的正常运行。因此有必要对软件技术人员加强数据库运行机制、如何编写高质量的查询脚本、避免使用低效率的函数等进行专业的培训,提高脚本编码质量。定期检查技术人员脚本编写代码,纠正低效率的脚本。将软件开发中常见的低效编码脚本整理收集,定期召开技术学习讨论会,通过研讨吸取教训相互促进。制定数据库编码规范,有效约束编码的规则,逐步培养良好的编码习惯。
四、数据库运行硬件配置
硬件配置直接影响到数据库运行的效率,主要体现在CPU、内存、I/O、网络等等。
CPU的数据处理能力往往是衡量计算机性能的一个标志。ORACLE是一个提供并行能力的数据库系统,在CPU方面的要求就更高了,如果运行队列数目超过了CPU处理的数目,性能就会下降,我们要解决的问题就是要适当增加CPU的数量了,当然我们还可以将需要许多资源的进程KILL掉。
内存是衡量机器性能的另外一个指标。内存分配是在信息系统运行过程中优化配置的,数据库管理员可以根据数据库运行状况调整数据库系统全局区(SGA区)的数据缓冲区、日志缓冲区和共享池的大小;还可以调整程序全局区(PGA区)的大小。需要注意的是,SGA区不是越大越好,SGA区过大会占用操作系统使用的内存而引起虚拟内存的页面交换,这样反而会降低系统。
均衡I/O负载。适当增加磁盘的数量,将磁盘做成阵列组RAID5,RAID5有(N-1)块磁盘同时读写,有效提高磁盘读写效率。同时合理存放数据文件,将数据表和引索表分别存放在不同的表空间,其所对应的物理文件分别存放在在不同的磁盘上也能有效的提高运行效率。
NET*SQL负责数据在网络上的来往,大量的SQL会令网络速度变慢。比如10M的网卡和100M的网卡就对NET*SQL有非常明显的影响,还有交换机、集线器等等网络设备的性能对网络的影响都很明显。
以上这些指标要结合业务发展、子系统扩展等多种因素综合分析、评估,做出一个合理的硬件配置,有效的保护的资源投入,最大限度的保障系统的平稳运行。
五、定期跟踪维护数据库运行
常用的数据库性能优化工具有:
1、
文档评论(0)