相似性的块级重复数据删除算法的研究
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相似性的块级重复数据删除算法的研究
科技以追风逐电的速度渗透到各行各业,使数据量出现爆炸式增长,为减少存储成本与网络开销,重复数据删除技术被越来越广泛地应用于云存储、备份与
归档系统中。然而在数据块级重复数据删除算法中,传统分块算法的分块效果均较差。
固定分块(FSP)不能很好的满足数据多变性,可变长度分块(CDC)的参数设定掺杂了过多人为干预,导致基于经典分块算法的重复数据删除技术性能表现不稳定。另外,随着数据量级的增加,越来越多的指纹信息不能快速被检测对比,机械式的I/O操作严重增加了算法时间,性能难以保证。
针对可变长度分块(CDC)的分块大小难以控制,指纹计算对比开销大,预先设置参数等问题,提出Winnowing指纹串匹配的分块算法(CAWM)。首先在数据分块前引入分块大小预测模型,能够较准确地根据应用场景计算出合适的分块大小;然后在计算指纹时采用ASCII/Unicode编码方式作为数据块指纹;最后在确定分块边界时,提出指纹串匹配的分块算法,无须预先设置参数,使得指纹计算和对比开销减少。
通过将FSP、CDC、CAWM三种分块算法应用于重删实验,来验证CAWM分块效果,相比于FSP和CDC分块算法,CAWM在数据的重删率上提升了10%左右,在指纹计算和对比开销方面减少了18%左右。因此,CAWM的分块大小和边界更加符合数据特性,减少了参数设置对重复数据删除算法性能的影响,在处理不同类型的数据时,可以有效地消除更多的重复数据。
针对重复数据删除算法指纹对比I/O瓶颈问题,提出了一种基于相似聚类的二级索引重复数据删除算法。首先计算所有数据块的Simhash值,基于Simhash
值之间的海明距离,提出了一种自适应的相似聚类算法,所有聚类中心信息形成一级索引存放在内存中。
然后计算每个类中数据块的MD5值,将其信息形成二级索引存放在聚类中心。当需要进行重复数据块检测时,计算待检测数据块Simhash值到一级索引中所有聚类中心Simhash值的海明距离,并将海明距离最小的类的二级索引调入内存中
进行MD5指纹对比。
实验结果表明,与传统重复数据删除算法TDA、Bloom filter及shingle技术相比,算法没有误判率,在重删率提升23%的同时,每次检测只产生一次I/O操作,具有更高效的性能。