求助: SQL性能优化问题

[复制链接]
查看11 | 回复9 | 2009-9-27 10:21:21 | 显示全部楼层 |阅读模式
SQL语句变的比较缓慢!
基本情况描述:应用系统有一个SQL语句,原来执行速度0.2s。对数据库的表和index进行reorg 和runstat后,执行同样
的SQL居然需要4-6s。该语句涉及到的表,数据变化不大,同时该语句的执行计划没有改变,数据库的参数也没有进行调整。
我的处理过程:
一、查看该sql语句执行计划,该语句的执行计划没有改变(以前)。
二、查看表和index统计信息,统计信息是最新的。
三、对比SQL涉及到表的数据变化,数据变化比较小。
四、该语句中IXCAN(5)cost比较高,但是与以前的cost相差不大。
五、重建DX8051911324200 index,问题依旧。

对于该类问题定位,不知道大家是否有比较好的方法介绍。
如果采用db2trc ,该命令是否可以跟踪该SQL语句执行过程,以及过程花费的时间。

Access Plan:
-----------

Total Cost:
129616

Query Degree:
1

Rows

RETURN

( 1)

Cost

I/O

|

3758.82

TBSCAN

( 2)

129616

43567.4

|

100

SORT

( 3)

129616

43567.4

|

3758.82

HSJOIN

( 4)

129612

43567.4
/-----------------+-----------------\
2.1472e+06
7517.64
IXSCAN
NLJOIN
( 5)
( 6)
73367
56070
39206.2
4361.23
|
/----------+----------\
4.29439e+06
1323.26
5.68116
INDEX: DB2INST1
HSJOIN
IXSCAN
IDX8051911324200
( 7)
(15)

5036.53
38.5874

391.455
3

/---------+---------\
|

1323.26
604.8293e+06

FETCH
IXSCANINDEX: DB2INST1

( 8)
(14)IDXMAIN_EXTEND

5036.31
0.0546823

391.455
0

/----+---\
|

1529.82 851791
60

RIDSCNTABLE: SA INDEX: DB2INST1

( 9) TBL_WORK_TASK_DEIDX8051911322300

70.8884

5.37993
/------+-----\
1526.51 3.31643
SORT
SORT
(10)
(12)
45.1536 25.7353
3.37993
2
|
|
1526.51 3.31643
IXSCAN
IXSCAN
(11)
(13)
44.4709 25.7343
3.37993
2
|
|
851791
851791
INDEX: DB2INST1 INDEX: DB2INST1
IDX8051911424700IDX8051911313000
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
drop index 然后执行计划发上来看看!
create index 以后全表runstats的时候选择ON KEY COLUMNS!--上次发现此选项效果俱佳!
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
重建DX8051911324200 index,执行计划还是没有改变。
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
同问
如果采用db2trc ,该命令是否可以跟踪该SQL语句执行过程,以及过程花费的时间?
我也想知道怎么查看 执行过的sql语句 的开销情况
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
1) runstats 是否有带 with distribution
2) 应用系统的包是否有 rebind
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
动态SQL语句,不用rebind
runstats 是否有带 with distribution 带了
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
想评估运行时间,用db2batch
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
are you sure the plan not change at all?
do you have old plan to compare with?
thx
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
就是因为执行计划没有改变,所以觉得很困惑。
通过db2trc trace sql执行过程,但是不知道如何
下手分析*。flw文件。
回复

使用道具 举报

千问 | 2009-9-27 10:21:21 | 显示全部楼层
都没有索引了,执行计划还会走索引??
奇怪了都,
你drop index后有没有分析?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行