- 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数据库SQL语句优化的要点分析
Oracle数据库SQL语句优化的要点分析
【摘要】针对Oracle数据库性能受到SQL语句制约的问题,本文针对SQL语句的优化要点进行了分析。首先详细描述了Oracle优化器,给出了影响执行计划的因素;其次对SQL语句可优化的类型进行了总结分析,并详细分析了优化的规则,举出了SQL实例进行比较。本文对于系统维护人员和数据库分析师都具有一定的积极作用。
【关键词】Oracle;数据库;SQL
1引言
随着信息化进程的不断加快,数据库的应用越来越广泛,信息系统的优劣与数据库系统的性能有着直接的关联。随着数据库规模的不断扩大,如何保持数据库应用系统高效地运行,受到人们越来越多的关注。
2优化器
对于信息管理系统来说,其最关键的核心是数据库系统,对于众多的应用系统来说,查询操作在整个系统中占据着相当大的比重,也就是说,查询速度的快慢直接影响着信息管理系统的性能。当数据库的规模越大,这个特性表现的越明显,良好的查询语句对系统性能的提高起着积极的作用。
2.1Oracle优化器
无论SQL语句的性能如何,最终都要在Oracle数据库中执行,Oracle数据库在执行SQL语句之前,首先通过优化器利用初始化的参数,并利用指定的优化方法对执行计划进行分析,并执行。
当前,Oracle优化器主要有RBO和CBO两种优化方式。其中RBO是基于规则的优化器,根据访问的路径和访问路径的等级去选择SQL语句的执行计划,假如一条SQL语句有多个路径可以通过,Oralce会自动选择等级最低的访问路径。RBO优化器仅含有几条在小表上低效利用的索引,无形之中增加了I/O,该优化方式效率相对较低;CBO是基于代价的优化器,其成本主要由可用访问路径、嵌入的提示、对象的统计信息等组成,CBO会选择成本代价最低的执行计划。当前,CBO优化器成为Oracle数据库优化的主要组成,CBO的构成如图1所示。
利用Oracle优化器对SQL语句进行分析,在所有的查询中,有一半经过RBO优化之后,执行的速度会快一点,而另一半则由CBO优化后,执行的速度最快。从Oracle8i版本以后,RBO优化已经不再发展RBO。
2.2影响执行计划的因素
影响执行计划的因素较多,总结起来主要有几种。
(1)连接顺序。当前,数据库进行数据查询,大部分情况下都需要由若干表连接,一般采取将查询结果只有一行记录的表优先。
(2)访问路径。对于路径的扫描,Oracle优化器的方式有簇扫描、索引扫描、行ID扫描、全表扫描、散列扫描等。由于Oracel数据库对I/O的评估原则是“块”在整个表中所占的比例来确定选取何种扫描路径。
(3)连接方式。查询优化的重点是连接操作,内表与外表之间进行连接的算法主要有归并连接、散列连接及嵌套循环连接,每种连接都有其自己的优点。
(4)成本估算。其成本的代价主要从I/O、CPU和通信三方面进行考虑,其中I/O是最主要的。在成本估算中占的比重最大。
3优化SQL语句
3.1可优化的SQL语句类型
优化器可以优化SQL语句的类型主要有几种。
(1)简单语句。对于数据表的操作,主要的操作动作有select、update、insert及delete语句,这种类型的语句主要包括from和where。一般来说,可以优化的地方主要在where中。其影响效率的问题主要集中在几个方面:分组或排序过程中包含了过多的中间结果集、对索引的列使用了全表扫描。
(2)连接语句。利用多个表相结合的方式查找相关的数据信息,这也是数据库最常用的方法,由from子句实现多个表的连接,利用where将相关的条件进行关联。其影响效率的问题主要集中在几个方面:表连接顺序不是最优、分组或排序过程包含了过多的中间结果集、索引列使用了全表扫描等。
(3)外部连接。该方式与连接语句有相同之处,同样涉及到多表连接的问题。其影响效率的问题也与连接语句相近。
(4)复杂语句。对于select、update、insert及delete语句中的子查询以select形式存在。该方式的问题是内部查询的效率对外部查询的效率有影响。
(5)复杂查询。利用组操作符将若干简单语句结合起来形成的语句,一般情况下,将语句拆分为上述的四种类型的语句之后再进行优化处理。
对于查询问题的分析,主要是要尽可能地减少子查询或者使用子查询返回的结果集要尽量地减少。
3.2优化的规则
(1)在索引列字段上尽可能地避免使用“!=”、“NULL”、“”及“not”等符号,尽可能地不要使用隐式类型的转换。这些符号的使用可能会对索引信息造成影响,进行转变为全表扫描,影响了数据库的性能。
(2)尽可能地
您可能关注的文档
- MBOKPIBSC绩效指标的体系的设计思想比较的研究.doc
- MBR一体化污水处理设备在医院污水的应用.doc
- MBO数字印后解决的方案助力数字印刷发展.doc
- MBR工艺及其在中水回用中的应用比较的研究.doc
- MBR工艺膜污染的影响因素及其减缓措施.doc
- MBR工艺处理发酵类制药废水中试的研究.doc
- MBR技术在中水回用中工艺的的特点及的应用.doc
- MBR的应用的现状及市场分析.doc
- MBR膜生物反应器技术及的应用.doc
- MCALL的模式中大学英语互动教学的策略探析――以艺体生教学为例.doc
- 广东省东莞市2024-2025学年八年级上学期生物期中试题(解析版).pdf
- 非遗剪纸文创产品开发经理岗位招聘考试试卷及答案.doc
- 广东省东莞市2024-2025学年高二上学期期末教学质量检查数学试题.pdf
- 体育安全理论课件图片素材.ppt
- 3.1 公民基本权利 课件-2025-2026学年道德与法治八年级下册 统编版 .pptx
- 广东省潮州市湘桥区城南实验中学等校2024-2025学年八年级上学期期中地理试题(解析版).pdf
- 大数据运维工程师岗位招聘考试试卷及答案.doc
- 广东省深圳市福田区八校2026届数学八年级第一学期期末教学质量检测模拟试题含解析.doc
- 广东省潮州市湘桥区城基初级中学2024-2025学年八年级上学期11月期中考试数学试题(解析版).pdf
- 广东省潮州市湘桥区城西中学2024-2025学年八年级上学期期中地理试题(解析版).pdf
最近下载
- 农田改造滴灌蓄水池工程施工组织设计.pdf VIP
- 轨道交通装备智能化运维中的智能巡检与状态监测技术报告.docx
- 工资代付委托书(范本).docx VIP
- 征兵体检口吃测试文案.docx VIP
- 《国家基层糖尿病防治管理指南(2025)》解读PPT课件.pptx VIP
- RS Components 电工电料 PLC 附件 VBA-4E3A-KE-ZE R 使用说明.pdf VIP
- 2012东风本田 CR-V 服务技术指导手册(上册).pdf VIP
- 附件4:AESC国际猎头协会——《人才候选人之权利》.pdf VIP
- 附件3:AESC国际猎头协会——《候选人测评及背景调查程序》.pdf VIP
- 附件1:AESC国际猎头协会——《职业道德公约》.pdf VIP
原创力文档


文档评论(0)