WEB开发网
开发学院数据库DB2 在 DB2 for Linux, Unix, and Windows 中的行压缩... 阅读

在 DB2 for Linux, Unix, and Windows 中的行压缩的最佳实践

 2009-02-08 16:38:31 来源:WEB开发网   
核心提示: 基于你的数据库环境,你可能需要检查每个分布的数据库分区或者表分区来确认是否数据压缩字典对那个分区在压缩数据的时候是否仍然有效,在 DB2 for Linux, Unix, and Windows 中的行压缩的最佳实践(9),释放表空间已分配的空间 使用本文讨论的压缩方法,我们可以减少数据库

基于你的数据库环境,你可能需要检查每个分布的数据库分区或者表分区来确认是否数据压缩字典对那个分区在压缩数据的时候是否仍然有效。

释放表空间已分配的空间

使用本文讨论的压缩方法,我们可以减少数据库中单张表的大小。根据你的表怎样被存储在表空间中和你怎么压缩这张表,以及未压缩的表相比,你可以让你的表空间有更多空闲空间。虽然你可能已经在表空间中减少了表的大小,表空间的高水位标记(HWM)或许仍然反映的是表空间分配的最大空间。 HWM 需要调低以释放节约的空间给你系统中的其他应用程序。

HWM 是在 DMS 表空间中已分配的页面的高数目。 HWM 可以在你对 DMS 表空间中的一张表执行离线表重组来释放。重组的过程数据需要一个影子副本。如果影子副本是建立在这张表所在的表空间。如果在当前 HWM 下没有足够的页面提供给这些影子副本,它们的扩展数据块会抬高 HWM 。在 HWM 下空闲的扩展数据块可能是像删除表、表截断操作(IMPORT/LOAD REPLACE)和表重组操作(压缩或不压缩)的结果。

如果在 HWM 下没有空闲的扩展数据块,那么降低 HWM 的唯一办法就是删除持有它所在位置的对象。任何类型的扩展数据块都可以持有 HWM 。 <TIP>db2dart /DHWM 生成的报告将显示什么类型的的扩展数据块持有 HWM 并且 HWM 是否可以降低。 Db2dart /LHWM 列出了可以降低 HWM 的步骤。包括可对数据库运行的命令 , 不管 db2dart 返回的数据库是不一致或活动状态警告。唯一影响系统的是从表空间读取元数据信息带来的 I/Os 。

如果有一个 DMS 表的数据对象持有 HWM 那么需要在 DMS 表空间中的一个离线的表重组在 HWM 下的空闲扩展数据块足以容纳影子副本的情况下可以降低 HWM 。如果一个 DMS 索引对象持有 HWM,重组这个索引就能降低 HWM 。

上一页  4 5 6 7 8 9 10  下一页

Tags:DB for Linux

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接