db2报01650_DB2数据库管理最佳实践笔记-10日常运维

10.1

日常运维工具概述

Runstats

run statistics

的缩写,意思是收集统计信息,目的是为

DB2

优化器提供最佳路径

选择;

Reorg

是重组的意思,目的是减少表和索引在物理存储上的碎片,提供性能;

Reorgchk

是重组前的检查

Rebind

是对一些包、存储过程或静态程序进行重新绑定。

几个工具的执行流程:

首先通过

Runstats

收集表和索引的统计信息,然后执行

Reorg

重组,如果有必要则执行,然

后再次收集统计信息。最后,对于静态语句、存储过程等,执行

Rebind

绑定。

10.2 Runstats

在系统运行一个查询的时候,优化器需要决定用某种方式来访问数据。只有当

DB2

对表中

的数据有一个大概的了解,

才能知道每一步操作大约需要处理多少数据,

返回多少行。

当优

化器了解了这些信息后,就会根据一系列的运算,判定出各种访问途径所需要消耗的资源,

然后从中选择一个消耗资源最少的方法。

最普通的

Runstats

就是统计表和索引中有多少行数据,有多少不同的数值。

Runstats

命令使用

DISTRIBUTION

参数手机数据分布。数据分布分为两种,一种叫做频率

采样(

Frequency

)

,

一种叫做百分比采样(

Quantile

)

。当收集数据分布时,两种采样方式都

会被收集。其中频率采样是手机表中拥有相同数量最多的几行,比如

10000

行数据中

9000

行为

10

然后

500

行为

9

然后

100

行为

8

剩下的部分平均分布。

如果我们制定

Frequency

3

的话,那么系统就会记录下来有

9000

10,500

9

,然后

100

8

,剩下的部分在估

算时则假定平均分布。

而百分比采样则是将整个

10000

行数据分成相等大小的若干段,

然后

记录每一段的段首和段尾的数值,当需要查询一个数据段时(比如

C1>10 AND C1<15

)

,

可以根据每一个数据段的启始数值加上段落的大小,估算出符合查询条件的记录数量。

理论上,数据分布收集的越细致越好。但是经过细致的数据分布信息可能会导致

DB2

在优

SQL

时需要处理更多的信息,并占用更多的系统存储空间,可能会导致性能的下降。因

此,一般情况下我们建议使用默认的数据分布采样设置,也就是频率采样为

10

,百分比采

样为

20

。但是,有些情况下,则需要根据实际情况调整分布参数。

Runstats

的语法比较复杂,在实际应用中,最常用的几种使用方法如下:

1

)

为表和索引收集统计信息,包括数据分布,

代码如下:

RUNSTATS ON TABLE <

表模式

>.<

表名

> ON ALL COLUMNS WITH DISTRIBUTION AND

DETAILED INDEXES ALL

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值