互联网服务 分析update

informix 升级后的统计更新操作

最近的一次操作过程.

从10.0升级到11.5后,只做了普通的统计更新,
update statistics;

业务系统启动后发现数据处理缓慢,分析N久后,
做HIGH 模式的统计后,系统运行正常。
update statistics high;

由此看出统计更新对INFORMIX的运行效率有很大的影响.

附update statistics 的 语法; (可能论坛里已经有了)
执行update statistics共有三个级别,即:update statistics low、updates tatistics medium、update statistics high。
  1 update statistics[low]for table[{table-namesynonym-name}[(column-list)]]][drop distributions]
  update statistics low只更新表、字段、记录数、页数及索引等的最基本信息,对字段的分布情况不做统计。其语法说明如下:
  
  (1)update statistics或update statistics low,对当前数据库中所有表(包括系统表)及过程进行更新统计。
  (2)update statistics low for table,对当前数据库中所有表(包括临时表,但不包括系统表)进行更新统计。
  (3)update statistics low for table tablename,对指定的表所有字段进行更新统计。
  (4)update statistics low for table tablename(column-list),对指定表的指定字段进行更新统计。
  (5)如果不带drop distributions,原有字段分布情况依然保留;否则,原有字段分布情况将被删除。
  2 update statistics medium[for table[{table-namesynonym-name}[(column-list)]]][resolution percent[conf]][distributions only]
  update statistics medium除了更新表、字段、记录数、页数及索引等的最基本信息外,对字段的分布情况会采取抽样的办法来统计,因此与update statistics low相比需要花费更多的时间。其语法说明如下:
  
  (1)resolution percent是指分布统计的详细程序,percent定义的是一个百分数,如resolution2意思是指按照字段的值分布统计成50段,如果不指定resolution percent,缺省值为2.5。
  (2)conf是指分布统计时取样的比例,conf参数的取值范围为0.80—0.99,缺省值为0.95。
  (3)如果指定了distributions only,则对索引的信息不做更新统计。
  3 update statistics high[for table[{table-namesynonym-name}[(column-list]]][resolutionpercent][distributions only]
  update statistics high与update statistics medium的区别是在统计字段的分布情况时,后者采用了取样的办法,而前者进行全部统计,因此update statistics high更新统计最全面,执行时间也最长。其语法说明如下:
  
  (1)如果不指定resolution percent,缺省值为0.5。
  (2)如果指定了distributions only,则对索引的信息不做更新统计。
  4 update statistics for procedure[procedure-name],只对指定的过程进行更新统计,对表不做更新统
参与2

2 同行回答

alexycom alexycom 项目经理 IBM
学习了哦显示全部
学习了哦 收起
政府机关 · 2012-02-05
浏览711
koolkite koolkite 售前技术支持 福建星瑞格软件技术有限公司
受教了,整理的很全显示全部
受教了,整理的很全 收起
互联网服务 · 2011-10-25
浏览642

提问者

filvyo
filvyo 0 0 3
系统工程师 B
评论216

相关资料

相关文章

问题状态

  • 发布时间:2011-10-09
  • 关注会员:0 人
  • 问题浏览:3423
  • 最近回答:2012-02-05
  • X社区推广