日期:2014-05-16  浏览次数:20518 次

DB2表压缩功能

88504018喜欢 db2 oracle java的朋友进来了

?

?

实际上DB2表压缩的方法是通过查看整个表,找到重复的字符和字符串后,将那些字符和字符串存储在一个压缩字典中,然后用一个存储在字典中对应数据字符串的替代符号来替代表中的实际数据,从而达到了压缩数据的目的。一个压缩属性的表,肯定有他所对应的压缩字典。
实际上DB2表压缩的方法是通过查看整个表,找到重复的字符和字符串后,将那些字符和字符串存储在一个压缩字典中,然后用一个存储在字典中对应数据字符串的替代符号来替代表中的实际数据,从而达到了压缩数据的目的。一个压缩属性的表,肯定有他所对应的压缩字典。

开启表的压缩功能:

create table tableName compress yes 或 alter table tableName compress yes

?

扫描表并创建对应的压缩字典,并执行实际的表重组,从而压缩数据(每个表都有自己的压缩字典,新插入的数据也会继续被压缩):

reorg table tableName resetdictionary

?

对于压缩后的表,如果想进行一次表重组,而不是重建数据字典,那么:

reorg table tableName keepdictionary

?

在压缩前,我们通常想先评估一下表压缩后能节省多少空间可以利用db2 inspect和db2inspf命令来实现:

db2 inspect rowcompestimate table name tbname results keep tbfile

db2inspf tbfile alantab_output_RESULTFILE

?