Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11587328
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-12-12 11:49:55

   重复数据删除技术能够识别重复的数据,消除冗余,减少需转移或的数据的总体容量。在本文中,我将分别对这两种技术加以评论。与块级技术相比,字节级删除技术对数据的检查更加细微,精度更高,但同时需要更加了解流,才能完成任务。

  块级技术

  块级重复数据删除技术将数据流分割成块,检查数据块,并判定之前是否碰到相同的数据块(通常对每个数据块执行散列算法,形成数字签名或独特的标识符)。如果数据块是唯一的,就被写入磁盘,其标识符也存入索引中;否则,仅存入指针,指向存储相同数据块的原始位置。这种方法用小容量的指针替代重复的数据块,而不是将重复数据块再次存储,这样就节省了磁盘存储空间。

  块级技术的缺点为:1)利用散列算法计算独一无二的ID,可能产生错误;2)将唯一的ID存入索引中,当索引扩大,需要磁盘
时,检查过程就会变慢(除非控制索引大小,在存储器中完成数据比较工作)。

  利用散列算法判断重复数据时,散列之间的冲突可能引发错误。MD5、SHA-1等散列算法都是针对检查的数据块,形成唯一的编码。虽然有可能发生散列冲突和数据损坏,但几率较小。

  字节级重复数据删除

  从字节级别上分析数据流是重复数据删除的另外一种方法。将新数据流和已存储的数据流挨个比较字节,能够实现更高的精度。使用这种技术的重复数据删除产品具有一个共同点:可能之前已见过流入的数据流,因此就会检查其是否与之前接收的数据相符。

  采用字节级技术的产品通常能“识别内容”,也就是说,供应商对备份程序的数据流执行了逆向工程,从而了解如何检索文件名、文件种类、日期/时间戳记等信息。在判断重复数据时,这种方法能够减少计算量。警告呢?这种方法通常在后处理阶段发挥作用——备份完成后,判断备份数据是否重复。因此,需要备份整个磁盘的数据,必须具有磁盘缓存,才能执行重复数据删除过程。而且,重复数据删除过程可能仅局限于某个备份组的备份数据流,而不是应用到整个备份组中。

  完成了重复数据删除过程后,字节级技术能收回磁盘空间。在收回空间之前,应执行一致性检验,以保证删除重复数据以后,仍能满足原始数据的目标。保留最后一次的完全备份,这样恢复过程就不必依赖重构后的数据,加快恢复过程。

  哪种方法效果最佳?

  块级和字节级删除技术都能优化存储容量。针对你的备份环境及其需求,核定执行删除过程的时间、位置和方法,然后再决定选择哪种方法。核定内容还包括:参考那些与你的公司具有相似特征和需求的公司。
阅读(947) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~