重复数据删除方法技术

技术编号:7071332 阅读:249 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种重复数据删除方法,包括:写入文件,对所述文件进行变长分块,形成不同长度的复数个数据块并计算所述数据块的哈希值;通过对所述哈希值进行抽样,形成所述文件的抽样数据;通过比较所述文件的抽样数据与现有文件的抽样数据,定位所述文件的一相似性组;通过比较所述文件的哈希值和一元数据库中所述相似性组的哈希值,确定重复数据块;去重保存非重复数据块;生成元文件,并将所述非重复数据块的哈希值保存至所述元数据库中。由于采用了本发明专利技术的一种重复数据删除方法,实现了可动态调整重删操作对系统资源的占用,优先保障在线业务的性能,对系统在线业务的影响降至最低,具有可靠性高、稳定性好、去重率更高的特点。

【技术实现步骤摘要】

本专利技术涉及一种数据删除方法,尤指一种。
技术介绍
重复数据删除(De-duplication)是一种数据缩减技术,旨在减少存储系统中使用的存储容量。它通过删除存储系统中重复的数据,只保留其中的一份,从而消除冗余数据。重复数据删除技术可以很大程度上减少对物理存储空间的消耗。重复数据删除技术根据数据处理方式可分为在线处理方式αη-Line)与后处理方式(Post-Process) 0在线处理方式的是在数据写入磁盘之前执行重复数据删除。在线处理的重复数据删除在一定程度上减少了数据量,但同时也存在一个问题,去重操作本身会降低数据吞吐速率,造成业务性能的降低。另外,由于重复数据删除是在写入到磁盘之前进行的,因此重复数据删除处理过程本身就是一个单点故障。后处理方式的是在数据写到磁盘后再执行重复数据删除。数据先被写入到临时的磁盘空间,之后再开始重复数据删除,最后将经过重复数据删除的数据写入磁盘。由于重复数据删除是数据写入磁盘后再在单独的存储设备上执行的,因此一般对正常业务处理几乎不产生影响。但由于目前的后处理方式不能对系统资源的占用进行动态调整,也不具备优先保障在线业务性能的功能,当系统占用率过大时,还是会对系统在线业务造成影响。重复数据删除技术根据去重粒度可以分为文件级、文件块级、字节级。文件级的重复数据删除以文件为单位来检测、删除重复数据。该方式的优点是算法简单,计算速度快,缺点是去重率低。文件块级的重复数据删除将一个文件按不同的方式划分成数据块,以数据块为单位进行检测。该方法的优点是计算速度快、对数据变化较敏感。文件块级重删按照分块方式的不同又分为定长分块与变长分块方式。请参阅图3,定长分块方式将文件划分为固定长度的块,但此方法对数据的插入和删除非常敏感,实际应用中数据重复度非常低,重删效果十分有限。字节级的重复数据删除从字节层次查找和删除重复的内容,一般通过差异压缩策略生成差异部分内容。字节级去重的优点是去重率较高,缺点是去重速度较慢。另外,传统,通过单个物理设备提供数据业务,进行重复数据删除时,会形成故障单点,对系统可靠性带来了挑战。
技术实现思路
本专利技术的目的在于克服现有技术的缺陷,而提供一种,实现了可动态调整重删操作对系统资源的占用,优先保障在线业务的性能,对系统在线业务的影响降至最低的,具有可靠性高、稳定性好、去重率更高,性能优的特点。实现上述目的的技术方案是本专利技术的一种,包括写入文件,对所述文件进行变长分块,形成不同长度的复数个数据块并计算所述数据块的哈希值;通过对所述哈希值进行抽样,形成所述文件的抽样数据;通过比较所述文件的抽样数据与现有文件的抽样数据,定位所述文件的一相似性组;通过比较所述文件的哈希值和一元数据库中所述相似性组的哈希值,确定重复数据块;去重保存非重复数据块;生成元文件,并将所述非重复数据块的哈希值保存至所述元数据库中。上述变长分块采用滑动窗口技术,根据文件内容进行数据切分,该技术对文件内容变化不敏感,插入或删除数据只会影响到较少的数据块,其余数据块不受影响。当计算上述数据块的哈希值时,通过所述滑动窗口技术中一滑动窗口滑动前的哈希值,滑入字节值和滑出字节值计算所述滑动窗口滑动后的内部字节数组的哈希值,提高了重删操作的运算效率。当计算上述数据块的哈希值时,限定一所述数据块大小的最小值,从所述数据块头部最小值区间内的数据不进行哈希值计算,降低了计算开销,提高了重删操作的运行效率。当在比较上述文件的抽样数据与现有文件的抽样数据时,若所述文件的抽样数据与当前现有文件的抽样数据的相似度超过一定数值,则确定当前现有文件的抽样数据对应的数据组为所述文件的一相似性组。上述数据块按照似性组分组保存。上述元文件是原文件的数据描述,包含了原文件的各项文件属性等内容,并记录了原文件各数据块的存放位置。当系统收到一读写请求时,进一步包括以下步骤判断目标文件是否为经过重删操作的文件;若所述目标文件未经过重删操作,直接读写所述目标文件;若所述目标文件经过重删操作,则对所述目标文件的元文件进行解析,定位读写请求的目标数据块;完成读写等操作。上述去重步骤的周期可调。本专利技术由于采用了以上技术方案,使其具有以下有益效果是本专利技术中的重复数据删除基于策略的后处理式重删技术。用户可自定义重删操作的周期,控制重删操作的启动时机。重复数据删除操作在系统后台运行,对业务完全透明, 可动态调整重删操作对系统资源的占用,优先保障在线业务的性能,对系统在线业务的影响降至最低。滑动窗口技术对文件内容变化不敏感,插入或删除数据只会影响到较少的数据块,其余数据块不受影响。读写重删文件写时,无需将该文件所有的数据块全部解析出来,只需定位出此次写操作影响的数据块,进行小范围的数据操作,这些措施在最大程度上保障了开启重删功能系统的业务读写性能。实现了可动态调整重删操作对系统资源的占用,优先保障在线业务的性能,对系统在线业务的影响降至最低的,具有可靠性高、稳定性好、去重率更高,性能优的特点。附图说明图1为本专利技术一种的流程图;图2为本专利技术一种的变长分块技术原理图;图3为现有技术的定长分块技术原理图;图4为现有技术的相似性检测技术原理图。具体实施例方式下面结合附图和具体实施例对本专利技术作进一步说明。请参阅图1,本专利技术的一种,包括以下步骤首先,写入文件,对该文件进行变长分块,形成不同长度的复数个数据块并计算数据块的哈希值;通过对哈希值进行抽样,形成该文件的抽样数据;通过比较文件的抽样数据与现有文件的抽样数据,定位文件的一相似性组;若文件的抽样数据与当前现有文件的抽样数据的相似度超过一定数值,则确定当前现有文件的抽样数据对应的数据组为文件的一相似性组。通过比较文件的哈希值和一元数据库中相似性组的哈希值,确定重复数据块;去重保存非重复数据块;生成元文件,并将非重复数据块的哈希值保存至元数据库中。元文件是原文件的数据描述,包含了原文件的各项文件属性等内容,并记录了原文件各数据块的存放位置。数据块按照似性组分组保存。当系统收到一读写请求时,进一步包括以下步骤判断目标文件是否为经过重删操作的文件;若目标文件未经过重删操作,直接读写目标文件;若目标文件经过重删操作,则对目标文件的元文件进行解析,定位读写请求的目标数据块;完成读写等操作。上述去重步骤的周期可调。请参阅图2,变长分块采用滑动窗口技术,根据文件内容进行数据切分,该技术对文件内容变化不敏感,插入或删除数据只会影响到较少的数据块,其余数据块不受影响。当计算上述数据块的哈希值时,通过滑动窗口技术中一滑动窗口滑动前的哈希值,滑入字节值和滑出字节值计算滑动窗口滑动后的内部字节数组的哈希值,提高了重删操作的运算效率。采用双阈值双除数算法(TTTD),对重删操作进行了进一步的性能优化。当计算上述数据块的哈希值时,限定一数据块大小的最小值,从数据块头部最小值区间内的数据不进行哈希值计算,降低了计算开销,提高了重删操作的运行效率。方法通过一定的算法对文件数据块的哈希值(HASH)进行抽样,将这些抽样值与当前系统中已有数据块的哈希值对比确定文件的相似性。根据文件的相似度,可将重删后的文件分成不同的相似性组。每个相似性组中,各文件的抽样HASH构成了该组的相似性索弓I。同一相似性组中的所有文件分块HASH保存在该组本文档来自技高网
...

【技术保护点】
1.一种重复数据删除方法,其特征在于,包括以下步骤:写入文件,对所述文件进行变长分块,形成不同长度的复数个数据块并计算所述数据块的哈希值;通过对所述哈希值进行抽样,形成所述文件的抽样数据;通过比较所述文件的抽样数据与现有文件的抽样数据,定位所述文件的一相似性组;通过比较所述文件的哈希值和一元数据库中所述相似性组的哈希值,确定重复数据块;去重保存非重复数据块;生成元文件,并将所述非重复数据块的哈希值保存至所述元数据库中。

【技术特征摘要】

【专利技术属性】
技术研发人员:安然谈川玉卢宝丰
申请(专利权)人:上海文广互动电视有限公司
类型:发明
国别省市:31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1