PL/SQL用户指南与参考--PL/SQL应用程序性能调优
作者 佚名技术
来源 NET编程
浏览
发布时间 2012-03-18
第十二章 PL/SQL应用程序性能调优 1、PL/SQL性能问题的缘由 应基于PL/SQL的应用程序施行效率低下时,通常是因为不好的SQL话语、编程步骤,对PL/SQL基础掌握糟糕或是乱用共享内存储器促成的。 •PL/SQL中不好的SQL话语 PL/SQL编程看上去相对照较简单,由于它们的复杂内容都掩藏在SQL话语中,SQL话语经常分担大量的工作。这乃是为何不好的SQL话语是施行效率低下的重要缘故了。如若一个程序中包孕很多不好的SQL话语,那么,无论是PL/SQL话语写的有何其美都是于事无补的。 如其SQL话语减低了我们的程序速度的话,将要按底下列表中的步骤分析一下子它们的执行计划和性能,其后从新编纂SQL话语。比如,查询优化器的揭示就可能会排除掉问题,如没有必要的全表扫描。 一.EXPLAIN PLAN话语 二.施用TKPROF的SQL Trace效能 三.Oracle Trace效能 •糟糕的编程习气 正常,糟糕的编程习气也会给程序带回负面影响。这种情况下,即使是有心得的程序员写出的代码也也许妨碍性能发挥。 至于给定的一项任务,无论是所选的程序语言有何等适合,编纂品质较差的子程序(比如,一个很慢的分门别类或检索函数)或许毁掉整个性能。假设有一个急需被应用程序频繁调用的查询函数,如其这个函数不是应用哈希或二分法,而是直接运用线性查寻,就会大大影响效率。糟糕的程序指的是那些带有从未有过运用过的变量的,传送没有必要的参数的,把初始化或计算放到用不着的循环中施行的程序之类。 •内置函数的反复 PL/SQL提供了好多高度优化过的函数,如REPLACE、TRANSLATE、SUBSTR、INSTR、RPAD和LTRIM等。不用手工编撰我们自各儿的版本,由于内置函数已经是很高效率的了。即或内置函数的效能远远超过我们的亟需,也不用手工兑现它们效能的子集。 •低效的流程统制话语 在计算逻辑表达式值的时分,PL/SQL运用短路的计算模式。且不说,万一结果可以被确定下来,PL/SQL就会终止余下的表达式计算。比如,下部的OR表达式,应sal比1500小的时分,操作符左边的值乃是TRUE,之所以PL/SQL就不会再计算操作符右侧表达式的值: IF (sal < 1500) OR (comm IS NULL) THEN ... END IF; 现下,考虑下部的AND表达式: IF credit_ok(cust_id) AND (loan < 5000) THEN ... END IF; 在上面的函数中,布尔函数credit_ok老是被调用。但是,如其我们向底下这么退换两个表达式的位置: IF (loan < 5000) AND credit_ok(cust_id) TH |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
关于PL/SQL用户指南与参考--PL/SQL应用程序性能调优的所有评论