数据块级的重复数据删除就会有更多更复杂的做法。比如定长切割,与非定长切割。
上一个部分我们讲到数据块级的重复数据删除第一部都是将文件打碎成数据块,但打碎的规则各有不同。有的公司采用了同一大小的数据块,例如所有的数据块都打碎成12K、64K、128K、256K的数据块大小,这种就属于定长切割的数据块。
对于定长切割的重复数据删除,切割的数据块越小,粒度越细,重复数据删除的比率会更高。
与之相对应的就是非定长切割模式的重复数据删除,就是在切割文件的时候,会先对文件做整体的扫描,然后比对重复的数据块,将重复率高的数据块切割出来,这样的话每个数据块不一定是一样长的,就是非定长的数据切割模式。
变长切割模式的重复数据删除对非结构化数据是更有效的数据去重模式,变长的切割方式不会因为文件的部分增加或删除而完全重新计算,只有真正的新单元被备份走;定长的切割方式会因为文件增加或删除引起整个文件循序改变而要重新计算所以单元,整个文件对于备份软件是个新文件
变长的数据切割方式通过相应的块的长度,再加上相应的字母顺序,通过一个三维的算法进行切割。比如damonst切割一块,然后把rate切割一块,会按一个单词的组合特性进行切割。
它是变长的,比如第一个是七个字母,第二个是四个字母,第三个又变成八个字母,再往后变成十几个字母,这往后就是一个变长的切割。
右边的Veritas PureDisk、CommVault是按照128K的标准定长来切割,切完以后对得很齐,但是每一行里是没有任何含义的,可以认为它是一个随机性地切割下来的字母组合。
万一这时文件进行改变,比如插一个S在前面,变长切割模式就变成九个字母一组,剩下的又按照raid是有含义的一个字、切割方法没有变。最后扫描下来,只有第一行是变化的,只需要备份第一行这一小小的变化量。
但对于定长的,由于插入一个字母以后,整个顺序就改变了,再按照128K切的话,扫描以后,所有行都是一个全新的数据块对于备份软件来说,所有行都要重新做备份。
变长切割模式一般来说重复数据删除的比率会更高,但指针的复杂度也会更高,也需要消耗更多的计算资源。
当前来说Veritas的puredisk、Commvault Simpana、飞康、的重复数据删除都是采用的定长切割,EMC Avarma、IBM公司 Diligent、Data Domain采用了变长切割的方式。