Prayer

在一般中寻求卓越
posts - 1256, comments - 190, trackbacks - 0, articles - 0
  C++博客 :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

如何降低DB2的管理表空间的高水位标记

Posted on 2009-10-08 22:22 Prayer 阅读(1273) 评论(0)  编辑 收藏 引用 所属分类: 数据库,SQLDB2

对于DB2数据库管理(DMS)表空间的高水位标记(HWM)是指该表空间曾经使用到的最大数据页数。如果使用:db2 list tablespaces show detail,看到某个DMS表空间的已用页数低于高水位标记,则有可能通过如下方法降低高水位标记:重组表空间的某个表;或者将某个表中的数据导出,然后将它删除,重新创建该表再将数据导入。


oracle中的解释
在oracle中,高水位标记是指段至启动以来增长到的最大大小,在表中,高水位标记指该表所使用的最后一个块,向表中插入数据时,高水位标记会移动来标记最后使用的块,当删除数据时,高水位标记不会重新设置,当oracle服务器执行全表扫描时,它会读取高水位标记以下所有的块。高水位标记存储在表的段头部。

    从上面这段定义,我们可以想象,新建两张表,向其中一张表插入一条数据,另一张插入1000万条,再删除999万条,查询这两张表,所耗费的资源显然是不同的,查询前一张表更快一些,因为它读的数据块更少。

    使用alter table table_name deallocate unused 或者 alter table table_name move tablespace tablespace_name可以清除高水位标记

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理