本发明专利技术实施例提供一种数据存储方法及设备。该方法包括将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块;根据所述备份数据块对所述待存储文件进行重复数据删除操作,且为所述备份数据块进行状态标识;根据所述备份数据块的状态标识对所述备份数据块进行回收处理。本发明专利技术实施例提供的数据存储方法及设备,能够优化重复数据删除和回收流程,避免数据流失。
【技术实现步骤摘要】
本专利技术实施例涉及数据处理技术,尤其涉及一种数据存储方法及设备。
技术介绍
随着企业的数据量不断增大,大量的重复数据给存储带来严峻的挑战。而重复数据删除(Date de-duplication,简称De-Dupe)作为通过有效地减少数据,降低数据存储成本的重要技术,越来越受到重视。在进行数据存储的任务中,通常将待存储文件划分成数据块,重复数据删除技术可自动搜索重复数据块,将相同数据块只保留唯一的一个副本,并使用指向唯一副本的指针替换掉其他重复副本,同时该副本的引用计数增加1,以达到消除冗余数据、降低存储容量需求的存储技术。当重复数据删除后保留的唯一副本数据块被修改或删除时,将导致其引用计数发生改变,当该副本的引用计数减为O时,该副本就满足了垃圾收集的条件,将该副本作为垃圾进行回收,从而释放更多的存储空间。然而现有技术中,当重复数据删除与回收并发执行时,会使提供给重复副本的指针指向刚刚回收的数据,导致数据丢失。
技术实现思路
本专利技术实施例提供一种数据处理方法及设备,以优化重复数据删除和回收的并发执行流程。第一方面,本专利技术实施例提供一种数据存储方法,包括将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块;根据所述备份数据块对所述待存储文件进行重复数据删除操作,且为所述备份数据块进行状态标识;根据所述备份数据块的状态标识对所述备份数据块进行回收处理。在第一种可能的实现方式中,根据第一方面,具体实现为将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块包括对所述待存储文件进行分块处理,得到各数据块,并计算各数据块的指纹;对各所述数据块的指纹进行抽样处理,并根据抽取到的指纹生成所述待存储文件的指纹抽样表;根据所述指纹抽样表和分组抽样库,确定所述待存储文件在所述分组抽样库中所属的相似分组,将所述相似分组对应的已存储的数据块作为所述备份数据块,所述分组抽样库由所述指纹库进行抽样处理得到,所述相似分组为所述分组抽样库中与所述待存储文件的指纹抽样表中的抽样指纹相匹配的一个抽样分组。在第二种可能的实现方式中,根据第一方面,具体实现为根据所述备份数据块对所述待存储文件进行重复数据删除操作,且为所述备份数据块进行状态标识包括在根据所述备份数据块对所述待存储文件进行重复数据删除操作之前,将所述备份数据块的分组计数加一;在完成根据所述备份数据块对所述待存储文件进行重复数据删除操作之后,将所述备份数据块的分组计数减一。在第三种可能的实现方式中,根据第一方面第二种可能的实现方式,具体实现为根据所述备份数据块的状态标识对所述备份数据块进行回收处理包括当识别到所述备份数据块的状态标识中的分组计数不为零时,暂停对所述备份数据块的回收处理;当识别到所述备份数据块的状态标识中的分组计数为零时,触发对所述备份数据块的回收处理。在第四种可能的实现方式中,根据第一方面或第一方面第一种可能的实现方式或第一方面第二种可能的实现方式,具体实现为根据所述备份数据块的状态标识对所述备份数据块进行回收处理包括当监测到所述备份数据块的引用计数的数值发生变化时,识别对应的备份数据块的状态标识;当识别到对应的备份数据块的状态标识表明所述备份数据块未使用时,则识别所述备份数据块的引用计数的数值;当识别到所述备份数据块的引用计数的数值为零时,触发对所述备份数据块进行回收处理。第二方面,本专利技术实施例提供一种数据存储设备,包括备份数据块获取模块,用于将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块;重复数据删除模块,用于根据所述备份数据块对所述待存储文件进行重复数据删除操作,且为所述备份数据块进行状态标识;回收模块,用于根据所述备份数据块的状态标识对所述备份数据块进行回收处理。在第一种可能的实现方式中,根据第二方面,具体实现为所述备份数据块获取模块包括指纹计算单元,用于对所述待存储文件进行分块处理,得到各数据块,并计算各数据块的指纹;指纹抽样单元,用于对各所述数据块的指纹进行抽样处理,并根据抽取到的指纹生成所述待存储文件的指纹抽样表;分组确定单元,用于根据所述指纹抽样表和分组抽样库,确定所述待存储文件在所述分组抽样库中所属的相似分组,将所述相似分组对应的已存储的数据块作为所述备份数据块,所述分组抽样库由所述指纹库进行抽样处理得到,所述相似分组为所述分组抽样库中与所述待存储文件的指纹抽样表中的抽样指纹相匹配的一个抽样分组。在第二种可能的实现方式中,根据第二方面,具体实现为所述重复数据删除模块包括第一计数单元,用于在根据所述备份数据块对所述待存储文件进行重复数据删除操作之前,将所述备份数据块的分组计数加一;第二计数单元,用于在完成根据所述备份数据块对所述待存储文件进行重复数据删除操作之后,将所述备份数据块的分组计数减一。在第三种可能的实现方式中,根据第二方面第二种可能的实现方式,具体实现为所述回收模块包括回收暂停单元,用于当识别到所述备份数据块的状态标识中的分组计数不为零时,暂停对所述备份数据块的回收处理;第一回收触发单元,用于当识别到所述备份数据块的状态标识中的分组计数为零时,触发对所述备份数据块的回收处理。在第四种可能的实现方式中,根据第二方面或第二方面第一种可能的实现方式或第二方面第二种可能的实现方式,具体实现为所述回收模块包括引用计数监测单元,用于当监测到所述备份数据块的引用计数的数值发生变化时,识别对应的备份数据块的状态标识;引用计数识别单元,用于当识别到对应的备份数据块的状态标识表明所述备份数据块未使用时,则识别所述备份数据块的引用计数的数值;第二回收触发单元,用于当识别到所述备份数据块的引用计数的数值为零时,触发对所述备份数据块进行回收处理。本专利技术实施例提供一种数据存储方法及设备,该方法通过将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块,根据备份数据块对待存储文件进行重复数据删除操作,且为备份数据块进行状态标识,根据备份数据块的状态标识对备份数据块进行回收处理,使重复数据删除处理优先进行,解决了重复数据删除处理与回收处理并发执行导致数据丢失的问题,保证了重复删除处理和回收处理的有序进行以及已存储数据的安全性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图I为本专利技术数据存储方法实施例一的流程图;图2为本专利技术数据存储方法实施例二的流程图;图3为本专利技术数据存储方法实施例三的流程图;图4为本专利技术数据存储逻辑架构实施例一示意图;图5为本专利技术数据存储集群架构实施例一示意图;图6为本专利技术数据存储装置实施例一的结构图;图7为本专利技术数据存储装置实施例二的结构图;图8为本专利技术数据存储装置实施例三的结构图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发本文档来自技高网...
【技术保护点】
一种数据存储方法,其特征在于,包括:将待存储文件各数据块的指纹与指纹库中的指纹进行匹配,以获取对应的备份数据块;根据所述备份数据块对所述待存储文件进行重复数据删除操作,且为所述备份数据块进行状态标识;根据所述备份数据块的状态标识对所述备份数据块进行回收处理。
【技术特征摘要】
【专利技术属性】
技术研发人员:付旭东,段雨梅,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。