资源描述:
《更多角度看性能优化_内部培训.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、更多角度看性能优化李奎阳同样的案例,不同的角度●由一个AWR报告开始执行次数多逻辑读大性能影响大●从应用的角度看:●SQL如何产生●何以执行如此多次通过设置应用系统的参数,减少SQL执行甚至不自动执行也可避免该性能问题●通过分析应用需求,也可以确定逻辑读高显然也是存在问题的selecta.pk_messageinfo,a.senderman,b.user_name,a.checkman,a.pk_corp,a.type,a.state,a.url,a.title,a.content,a.sendd
2、ate,a.priority,a.dealdate,a.billid,a.billno,a.pk_billtype,a.pk_srcbilltypefrompub_messageinfoa,sm_userbwherea.senderman=b.cuserid(+)and(((checkman=:1anda.type=1)or(a.type=-1anda.state<>2and(a.pk_corp=:2ora.pk_corp='0001')))and(a.receivedeleteflagisnul
3、lora.receivedeleteflag='N')anda.state=0)orderbysenddatedescPlanhashvalue:3486320044---------------------------------------------------------------------------------------
4、Id
5、Operation
6、Name
7、Rows
8、Bytes
9、Cost(%CPU)
10、Time
11、-----------------------------------
12、----------------------------------------------------
13、0
14、SELECTSTATEMENT
15、
16、
17、
18、2411(100)
19、
20、
21、1
22、SORTORDERBY
23、
24、264
25、184K
26、2411(1)
27、00:00:29
28、
29、*2
30、HASHJOINOUTER
31、
32、264
33、184K
34、2410(1)
35、00:00:29
36、
37、*3
38、TABLEACCESSFULL
39、PUB_MESSAGEINFO
40、264
41、176K
42、2366(1)
43、00:00:29
44、
45、4
46、TABLEACCESSFUL
47、L
48、SM_USER
49、10145
50、277K
51、43(0)
52、00:00:01
53、●拿到执行计划基本也可定位到问题的根源——无索引可用SQL>selectcount(checkman)frompub_messageinfo;---------------279891———30万左右的总数据量,全表扫描因此产生较大逻辑读SQL>selectcount(distinctcheckman)frompub_messageinfowherecheckmanisnotnull;---------------------
54、--11428————checkman的唯一性非常高,设计人员已经建立了索引frompub_messageinfoa,sm_userbwherea.senderman=b.cuserid(+)and((checkman=:1anda.type=1)OR(a.type=-1anda.state<>2anda.pk_corp=:2))●SQL分析的过程也即是业务梳理的过程SQL>selectcount(*),typefrompub_messageinfogroupbytype;COUNT(*)T
55、YPE-------------------------------------------------11-1676017011675126-------------------------------------------------------------------------------------------------------
56、Id
57、Operation
58、Name
59、Rows
60、Bytes
61、Cost(%CPU)
62、Time
63、-------------------------------
64、------------------------------------------------------------------------
65、0
66、SELECTSTATEMENT
67、
68、1
69、799
70、8(13)
71、00:00:01
72、
73、1
74、SORTORDERBY
75、
76、1
77、799
78、8(13)
79、00:00:01
80、
81、2
82、NESTEDLOOPSOUTER
83、
84、1
85、799
86、7(0)
87、00:00:01
88、
89、*3
90、TABLEACCESSBYINDEXROWID
91、PUB_MESSAGEINFO
92、1
93、771
94、6(