基于Oracle数据库SQL语句优化.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Oracle数据库SQL语句优化

基于Oracle数据库SQL语句优化   摘要:该文主要介绍了SQL语句优化技术,并对数据查询语句自身的书写提出一些方法用以优化性能低下的SQL语句。结论表明:对于Oracle这样结构复杂但性能高度可调的数据库,从查询语句的书写这方面进行优化,在不增加软硬件成本投入的情况下,优化效果非常明显,具有一定的实用价值。   关键词:Oracle;数据库;SQL;查询;优化   中图分类号:TP311文献标识码:A文章编号:1009-3044(2010)01-20-03   SQL Optimization Based on Oracle DataBase   ZHANG Xue-qin   (North University for the Nationalities, Ningxia 750021, China)   Abstract: This paper is introduced technique of SQL optimization,and puts up some methods on writing data query statement to enhance the low performance SQL lastly.The Findings indicate as follows:For oracle database whose structure is more complicate but the performance height is tunable,Optimizing from writing of data query statement.Without increasing hardware and software cost,the result is significant and is practicable to certain degree.   Key words: oracle; database; SQL; query; optimization   数据库系统是管理信息系统的核心,从大多数系统的应用实例来看,查询操作[1]在各种数据库操作中占据的比重最大,查询速度的快慢直接影响数据库的推广和应用,对于大型数据库来说,这一点显得尤其重要。由于查询操作在SQL语句中代价最大,因此优质的查询语句可以大大提高应用系统的性能。在检查可能的性能改进时,首先应检查最有可能导致性能变差的方面,包括编写拙劣的应用SQL、效率差的SQL执行计划、大小不合适的SGA内存结构、过度的文件I/O、访问数据库资源的紊乱等。事实上效率差的SQL会导致以上所列举的所有问题。因为效率差的SQL会导致执行这些语句时使用的低效率执行计划;低效率执行计划会导致过度I/O;过度I/O会降低各SGA内存结构的效率;进而又导致过度的I/O和其它数据库资源的激烈争用。由此可见,SQL语句的执行效率决定了数据库系统的性能。通过调整有问题的SQL语句,可以显著改善一个系统的性能,对提高数据库内存区的命中率、减少I/O访问和对网络带宽的占用等有着非常重要的意义。   1 SQL语句优化技术简介   1.1 SQL语句优化的实质   语句优化的实质就是在结果正确的前提下,用优化器可以识别的语句,充分利用索引来减少表扫描的I/O次数,尽量避免表搜索的发生。优化的目的就是将性能低下的SQL语句转换成目的相同的、性能优异的SQL语句,使数据查找的路径最简化,并尽量保持处理器时间和I/O时间的平衡。   1.2 查找有问题的SQL语句   执行效率差的应用系统所具有的问题常归因于构造不良的SQL语句。有效的数据库调整需要准确地对系统内正在发生的具体SQL活动情况进行测量,以便及时对有问题的SQL语句进行调整,改进数据库性能[2]。在进行SQL语句优化时,需要根据系统需求找出最有可能提高性能的语句,如执行频次高的语句、整体消耗资源最多的语句以及每行消耗资源最多的语句等,并对其进行优化。   1.3 建立合适的语句   一个糟糕的数据库系统往往是由若干条频繁执行的问题SQL造成的。建立SQL语句时可以参考一些原则[3]。   2SQL 语句优化   2.1 SQL 语句的优化   SQL 语言是一种灵活的语言,相同的功能可以使用不同的语句来实现,但是语句的执行效率是很不相同的。程序员可以使用 EXPLAIN PLAN 语句来比较各种实现方案[4],并选出最优的实现方案。在考虑 SQL 语句优化之前,有必要了解一下数据库对表的访问。Oracle 采用两种访问表中记录的方式[5]:   1)全表扫描   全表扫描就是顺序地访问表中每条记录。Oracle 采用一次读入多个数据块的方式优化全表扫描。

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档