plsql程序优化和性能分析方法

plsql程序优化和性能分析方法

ID:6335522

大小:660.50 KB

页数:29页

时间:2018-01-10

plsql程序优化和性能分析方法_第1页
plsql程序优化和性能分析方法_第2页
plsql程序优化和性能分析方法_第3页
plsql程序优化和性能分析方法_第4页
plsql程序优化和性能分析方法_第5页
资源描述:

《plsql程序优化和性能分析方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、PLSQL程序优化和性能测试方法PLSQL程序优化和性能分析方法沈阳东软软件股份有限公司文件编号:TD文档编号版本号1.0分册名称第册/共册总页数正文附录编制张悦审批生效日期沈阳东软软件股份有限公司第29页/共29页PLSQL程序优化和性能测试方法版本号更改条款及内容更改人审批人更改日期      第29页/共29页PLSQL程序优化和性能测试方法1.前言51.1目的51.2文档说明51.3词汇表51.4参考资料52.PLSQL程序优化原则62.1导致性能问题的内在原因62.2PLSQL优化的核心思想62.3ORACLE优化器62.4PLSQL优化72.4.1选择最有效率的表名顺

2、序72.4.2WHERE子句中的连接顺序82.4.3SELECT子句中避免使用‘*‘82.4.4用EXISTS替代IN82.4.5用NOTEXISTS替代NOTIN92.4.6用表连接替换EXISTS92.4.7用EXISTS替换DISTINCT102.4.8减少对表的查询102.4.9避免循环(游标)里面嵌查询112.4.10尽量用unionall替换union132.4.11使用DECODE函数来减少处理时间132.4.12groupby优化132.4.13尽量避免用orderby142.4.14用Where子句替换HAVING子句142.4.15使用表的别名(Alias)1

3、42.4.16删除重复记录142.4.17COMMIT使用152.4.18减少多表关联152.4.19批量数据插入152.5索引使用优化162.5.1避免在索引列上使用函数或运算162.5.2避免改变索引列的类型.172.5.3避免在索引列上使用NOT172.5.4用>=替代>182.5.5避免在索引列上使用ISNULL和ISNOTNULL182.5.6带通配符(%)的like语句182.5.7总是使用索引的第一个列192.5.8多个平等的索引192.5.9不明确的索引等级192.5.10自动选择索引192.5.11使用提示(Hints)192.5.12表上存在过旧的分析20第2

4、9页/共29页PLSQL程序优化和性能测试方法2.5.13表上存在并行212.5.14关于索引建立213.PLSQL程序性能问题测试方法213.1性能问题分析213.2ExpainPlan分析索引使用223.3TOPSQL分析243.4针对性语句搜索283.5后台存储过程跟踪293.6性能监控304.性能测试工具设计思想31第29页/共29页PLSQL程序优化和性能测试方法1.前言1.1目的性能测试是测试中比较重要的工作,性能测试应分为压力的测试和性能的测试,其中性能问题中绝大部分都是由于程序编写的不合理、不规范造成的。本文档说明了程序中常见的不优化的脚本编写,导致的性能问题,并

5、且在也描述了怎样去跟踪和解决程序上的性能问题的方法。在最后一章里面描述了做一个白盒测试工具测试性能问题的设计思想。1.2文档说明本文档只说明PLSQL编写的优化问题,不包括ORACLE本身的性能优化(内存SGA、系统参数、表空间等)、操作系统的性能问题和硬件的性能问题。对于PLSQL程序优化方面的内容有很多,本文档列出在我们实际工作中一些常见的情况。本文档难免有不正确的地方,也需要大家给予指正。本文档举例说明的问题语句不是实际程序中真正存在的,只是让大家能看起来更容易理解,但这些语句也不代表在我们程序中其他部分语句不存在这些问题。举例说明中的语句采用的是社保核心平台的数据字典,在

6、举例描述中没有标明表名和字段名的含义,还需单独参考。1.3词汇表词汇名称词汇含义备注1.4参考资料编号资料名称作者日期出版单位第29页/共29页PLSQL程序优化和性能测试方法1《ORACLESQL性能优化系列》231.PLSQL程序优化原则1.1导致性能问题的内在原因导致系统性能出现问题从系统底层分析也就是如下几个原因:lCPU占用率过高,资源争用导致等待l内存使用率过高,内存不足需要磁盘虚拟内存lIO占用率过高,磁盘访问需要等待1.2PLSQL优化的核心思想PLSQL优化实际上就是避免出现“导致性能问题的内在原因”,实际上编写程序,以及性能问题跟踪应该本着这个核心思想去考虑和

7、解决问题。lPLSQL程序占用CPU的情况n系统解析SQL语句执行,会消耗CPU的使用n运算(计算)会消耗CPU的使用lPLSQL程序占用内存的情况n读写数据都需要访问内存n内存不足时,也会使用磁盘lPLSQL程序增大IO的情况n读写数据都需要访问磁盘IOn读取的数据越多,IO就越大性能的优先级CPU->内存->IO,影响性能的因素依次递增。根据上面的分析,PLSQL优化的核心思想为:1.避免过多复杂的SQL脚本,减少系统的解析过程2.避免过多的无用的计算,例如:死循环3.避免浪

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

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

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