1 / 5
文档名称:

DB2 Oracle数据库执行计划.docx

格式:docx   大小:108KB   页数:5页
下载后只包含 1 个 DOCX 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

DB2 Oracle数据库执行计划.docx

上传人:科技星球 2022/3/9 文件大小:108 KB

下载得到文件列表

DB2 Oracle数据库执行计划.docx

文档介绍

文档介绍:db2 oracle 执行计划
       
 
 
 
 
 
 
 
     
     
     
 
 
 
 
 
如果没有建立过执行计划表的话,先要建立执行计划表
连接数据库 ,并执ns
  Index--包括是否存在索引、索引的组织(叶子页的数量和级别的数量)、索引键的离散值的数量以及是否群集索引, 相关的系统视图是:、syscat. indexes
  其他的还有分区/节点组信息和表空间的信息
  如何及时更新这些信息呢?保证DB2优化器正确的工作,在DB2里面提供了以下的办法。
  RUNSTATS与REOGCHK
  Runstats这个命令的功能主要就是收集数据库对象的状态信息,这对数据库使用合理的ACCESS PLAN是至关重要的。一般来说,以下几种情况下面,我们需要用runstats来收集统计信息:
  1. 在给表创建一个index后,我们最好做一次runstat。这 个情况也是大家经常忽略的。很多时候大家在给表增加了一个index后,分析执行计划,发现没有变化,觉得很奇怪。其实这个时候,你需要做一次 runstats,就可以了。,DB2做了很好的改进,可以避免这个问题,在创建index的时候,可以立即更新你的信息。
  2. 在对table做了一次reorg后,记得要做一次runstats。因为对表做reorg,会修改表的很多信息,比如高水位等,所以做一次runstats,可以更新统计信息。
  3. 当你的表里面的数据发生了比较大的变化,一般来说,大约表里面的数据量的10%-20%发生了变化,就应该作一次runstats。这 些变化包括删除,修改,插入。对于一些非常大的表,比方在数据仓库的项目里面,某些事实表非常巨大。这个时候,完整的对一个大表作runstats可能花 费时间相当大,DB2 ,比方说只对20%的数据作runstats,这样的话,一般来说也能保证得到正确的执行计划。当然首先要确保这个表 里面的数据最好分布比较均匀。
  4. 当你在分区(DPF)数据库里面使用了REDISTRIBUTE DATABASE PARTITION GROUP这个命令,那么就需要用runstats来收集新的统计信息。
  RUNSTATS命令的语法如下:
  ,表上有索引,则可以用下面的例子完成RUNSTATS命令:
  db2 runstats on table with distribution and detailed indexes all
  在实际的项目里面,对于变化比较大的表,需要我们定时对数据库做runstats,一般来说runstats和reorg可以结合起来做,首先对表作reorg,然后做runstats,最后REBIND数据库根据最新的统计信息生成合适的统计计划。
   值得注意的是,如果我们要处理的表数据量是快速变化的,比如在电信移动行业,需要在月末进行处理的汇总表。在不长的时间范围内数据量变化特别大,从而使 得RUNSTATS 得到的统计信息不准确,原因是这些统计信息只是某个时间点的信息。您