oracle数据库基于索引sql优化方法的研究与实现

oracle数据库基于索引sql优化方法的研究与实现

ID:31643425

大小:68.11 KB

页数:19页

时间:2019-01-16

oracle数据库基于索引sql优化方法的研究与实现_第1页
oracle数据库基于索引sql优化方法的研究与实现_第2页
oracle数据库基于索引sql优化方法的研究与实现_第3页
oracle数据库基于索引sql优化方法的研究与实现_第4页
oracle数据库基于索引sql优化方法的研究与实现_第5页
资源描述:

《oracle数据库基于索引sql优化方法的研究与实现》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Oracle数据库基于索引SQL优化方法的研究与实现第25卷VO1.25第12期NO.12计算机工程与设计COMPUTERENGINEERINGANDDESIGN2004年]2月Dec.2004文章编号:1000.7024(2004)12-2327.04中图分类号:TP311.13文献标识码:AOracle数据库基于索引SQL优化方法的研究与实现宋彩霞,路新春(山东大学计算机科学与技术学院,山东济南250061)摘要:在系统分析了Oracle数据库索引特点的基础上,要注意的问题进行了总结,进行了一些新的探索和尝试,关键词:Oracle;索引;SQL优化

2、对如何使用SQL语句的索引对数据库进行优化的实现方法中提出了Oracle数据库SQL优化的其它注意问题.StudyandimplementationofoptimizationofSQLaboutoracledatabasebasedonindexesSONGCai-xia,LUXin—chun(CollegeofComputerScienceandTechnology,ShandongUniversity,Jinan250061,China)Abstract:Basedontheanalysisofthecharacteristicsoftheora

3、cledatabaseindexes,somequestionsaresummarizedconceminghowtouseindextooptimizethedatabase.Besidessomenewexplorationandattemptaregivenbytheexperienceofstudyandwork.AtlastotherquestionsrelatedtoSQLoptimizationonoracledatabasearediscussed・Keywords:oracle;index;SQLoptimization1引言本文根据

4、自己在Oracle数据库的学习与丁作体会,对Ora・cle数据库基于索引SQL优化方法进行了一些研究,并对合理使用索引的一些方法进行了总结,对某些方法提出了自己的观点.2在表上建立合理的索引索引是表的一个概念部分,用来提高检索数据的效率.Oracle采用两种访问表中记录的方式:①全表扫描:全表扫描就是顺序地访问表中每条记录.Oracle采用一次读入多个数据块(databaseblock)的方式优化全表扫描;②通过ROWID访问表:ROWID包含了表中记录的物理位置信息Oracle采用索引(DEx)实现了数据和存放数据的物理位置(R0W1D)之间的联系•

5、通常索引提供了快速访问ROWID的方法,因此那些基于索引列的查询就可以得到性能上的提高.实际上,Oracle使用了一个复杂的自平衡B一tree结构.通常,通过索引查询数据比全表扫描要快•当Oracle找出执行查询和UPDATE语句的最佳路径时,Oracle优化器将使用索引•同样在联结多个表时使用索引也可提高效率•另一个使用索引的好处是,它提供了主键的惟〜性验证.在表上面建立索引是提高对表查询更新速度有效的方法,但是并不是只要建立索引就可提高查询速度,更不是索引建立越多系统性能越高•因为索引需要额外的存储空间和处理,那些不必要的索引反而会使查询反应时间变

6、慢•所以索引的建立要根据实际表的大小与多少,根据实际需要来建立.首先必须熟悉数据库应用程序中所有的语句,并从中统计出常用且可能对性能有影响的部分语句:然后分析,归纳出作为WHERE条件子句的字段及其各种组合方式;在这〜基础上可初步判断出哪些表的哪些字段应该建立索引•其次,必须熟悉应用程序,要了解哪些表是数据操作频繁的表;哪些表经常与其它表进行连接;哪些表中的数据量可能很大;数据量大的表中各个字段的数据分布情况如何,优化器的选择等•影响索引的因素及建立索引常用的规则如下.(1)该字段是否为查询关键词,表的主键和外键必须有索引;(2)该字段是否为连接操作字

7、段,对经常与其它表进行连接的表的连接字段应该建立索引;(3)该字段出现在WHERE字句中的频率,经常出现在WHERE子句中的字段应该建立索引(尤其是数据量较大的表的字段);(4)该字段是否是小字段,小字段应该建立索引,对于较长的文本字段甚至超长字段,不要建索引;(5)选择性高的字段应该建立索引•索引的选择性是指索引列里不同值的数目与表中记录数的比•如果表中有1000个记录,表索引列有900个不同的值,那么这个索引的选择性收稿日期:2003」2—10.作者简介:宋彩霞(1977.),女,山东即墨人,硕士研究生,研究方向为分布式监控和配电自动化;路新春(1

8、948—),男,山东济南人,副教授,硕士生导师,研究方向为分布式监控和配电自动化.2327就是

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。