本发明涉及数据处理技术领域,尤其涉及数据删除方法及装置。
背景技术:
随着社会数字网络信息化进程的不断推进,全球it企业管理的数据量集剧增长,当前大规模的数据中心对复杂数据的管理在扩展性、性能和成本等方面要求在不断的提升。为了减缓企业存储容量的增长,传统的重复数据删除存储管理技术和方法已无法满足大数据备份应用的服务质量需求,新的软硬件技术进步为大数据管理能力的提升带来机遇。
目前市场上大部分的重复数据删除系统,为了识别冗余数据块和定位数据块,必须依赖基于指纹的元数据索引算法,尤其是在大数据存储环境下,代表数据的指纹数量也比较庞大,系统需要付出昂贵的成本来维护该指纹数据结构来保证重删性能。虽然这些技术能有效减少系统中的冗余数据,但是其主要思路是采用数据源局部性特征来改善重删性能,在分布式存储中局部性特征并不明显,无法有效合理的删除数据,导致冗余数据删除不够彻底,占用存储空间。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
技术实现要素:
本发明的主要目的在于提供一种数据删除方法及装置,旨在解决目前重复数据删除的主要思路是采用数据源局部性特征来改善重删性能,在分布式存储中局部性特征并不明显,无法有效合理的删除数据,导致冗余数据删除不够彻底,占用存储空间的问题。
为实现上述目的,本发明提供的一种数据删除方法,包括步骤:
获取待处理数据;
确定待处理数据中相互匹配的对象;
比对相互匹配的对象对应的数据,确定相互匹配的对象间重复的数据;
将所确定的重复的数据删除。
优选地,所述获取待处理数据的步骤包括:
确定数据删除的模式;
在数据删除的模式为实时删除模式时,获取当前存入的数据以及历史存入的数据,将当前存入的数据以及历史存入的数据作为待处理数据;
在数据删除的模式为定时删除模式时,获取当前已存储的数据,将当前已存储的数据作为待处理数据。
优选地,所述获取待处理数据之前,还包括:
接收待存储数据,将所述待存储数据切片,切成预设大小的切片数据块;
将每个切片数据块以对象的方式存储,将每个切片数据的对象和指纹索引组成数据结构存储。
优选地,所述确定待处理数据中相互匹配的对象的步骤包括:
确定所述待存储数据中包含的对象;
将所确定的对象加入指纹索引队列,进行对象指纹比对,通过hash算法确定相互匹配的对象。
优选地,所述比对相互匹配的对象对应的数据,确定相互匹配的对象间重复的数据的步骤包括:
比对相互匹配的对象对应的数据,通过md5算法计算数据的正确性得到有效数据;
从有效数据中确定相互匹配的对象间重复的数据。
此外,为实现上述目的,本发明还提供一种数据删除装置,包括:
获取模块,用于获取待处理数据;
确定模块,用于提取待处理数据中相互匹配的对象;
比对模块,用于比对相互匹配的对象对应的数据,确定相互匹配的对象间重复的数据;
删除模块,用于将所确定的重复的数据删除。
优选地,所述获取模块包括
确定单元,用于确定数据删除的模式;
获取单元,用于在数据删除的模式为实时删除模式时,获取当前存入的数据以及历史存入的数据,将当前存入的数据以及历史存入的数据作为待处理数据;获取单元还用于
在数据删除的模式为定时删除模式时,获取当前已存储的数据,将当前已存储的数据作为待处理数据。
优选地,所述装置还包括:
处理模块,用于接收待存储数据,将所述待存储数据切片,切成预设大小的切片数据块;
存储模块,用于将每个切片数据块以对象的方式存储,将每个切片数据的对象和指纹索引组成数据结构存储。
优选地,所述确定模块,还用于确定所述待存储数据中包含的对象;确定模块还用于
将所确定的对象加入指纹索引队列,进行对象指纹比对,通过hash算法确定相互匹配的对象。
优选地,所述比对模块,还用于比对相互匹配的对象对应的数据,通过md5算法计算数据的正确性得到有效数据;比对模块还用于
从有效数据中确定相互匹配的对象间重复的数据。
本发明提出一种基于对象的重复数据删除方式,有效解决了局部特征不足的缺陷,利用对象找出相互匹配的对象间重复的数据,删除重复的数据,实现单个节点内高性能的并行数据重删处理,扩展数据重删的吞吐量。有效合理的删除数据,提高存储空间。
附图说明
图1为本发明数据删除方法的一实施例的流程示意图;
图2为本发明一实施例中获取待处理数据的流程示意图;
图3为本发明一实施例中数据存储的流程示意图;
图4为本发明一实施例中确定重复数据的流程示意图;
图5为本发明一实施例中重复数据删除的架构图;
图6为本发明一实施例中数据删除的原理图;
图7为本发明数据删除装置的一实施例的功能模块示意图;
图8为本发明图7中获取模块一实施例的细化功能模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种数据删除方法。
参照图1,图1为本发明数据删除方法的一实施例的流程示意图。
在一实施例中,所述数据删除方法包括:
步骤s10,获取待处理数据;
在本实施例中,在有数据需要处理时,被处理的数据为待处理数据,例如,在需要删除数据时,待删除处理的数据为待处理数据;或者,再例如,在需要删除数据时,历史数据和当前待删除处理的数据为待处理数据。参考图2,所述获取待处理数据的方式包括:
步骤s11,确定数据删除的模式;
步骤s12,在数据删除的模式为实时删除模式时,获取当前存入的数据以及历史存入的数据,将当前存入的数据以及历史存入的数据作为待处理数据;
步骤s13,在数据删除的模式为定时删除模式时,获取当前已存储的数据,将当前已存储的数据作为待处理数据。
数据删除模式包括定时删除模式和实时删除模式。数据删除模式的设置在系统开启后由用户设置,或者以默认的删除模式运行。在需要删除数据时,确定数据删除的模式,例如,确定为定时删除模式,或者确定为实时删除模式。在确定为实时删除模式时,将历史数据与当前的数据作为待处理数据,或者说可以直接将当前数据作为待处理数据;在确定为定时删除模式时,将当前存储的所有数据为待处理数据,或者在上一时间节点之前到现在时间节点之间所存储的数据作为待处理数据。上述实时和定时删除模式下待处理数据的定义为用户设置或系统默认,为其中对应的一种定义方式。在需要删除数据时,按照设置的方式获取待处理数据。
步骤s20,确定待处理数据中相互匹配的对象;
在数据存储时,数据存储的方式为按照对象的方式存储,即,根据对象对数据归类,然后分别存储对应对象的数据,即,接收客户端的数据,按照接收的数据的对象分类,分别存储在分布式存储系统中。参考图3,数据存储的过程包括:
步骤s21,接收待存储数据,将所述待存储数据切片,切成预设大小的切片数据块;
步骤s22,将每个切片数据块以对象的方式存储,将每个切片数据的对象和指纹索引组成数据结构存储。
接收客户端发送来的数据,将客户端的数据切片,即,将客户端传输过来的数据分成若干个小数据块,在我们的分布式存储系统中会将每个数据块切分为128m(根据需求不同或者系统性能设置或根据传输数据的总大小设置,例如,可还设置为64m或256m等),发送给数据存储系统。在将数据切片后,数据传输稳定性和可靠性增加,因在网络状况不好的情况下,如果不将数据切分为若干个数据块,一次性传输大量的数据,数据在传输过程中会进行多次数据校验,增加了传输的时间,同时还会造成数据的丢失或者数据北阻塞,影响了数据的稳定性以及可靠性。
以对象的方式将切片数据存储到分布式系统中,对象存储的特点是将有效的数据和指纹索引组成数据结构的形式存储到缓存中,再将整个对象通过网络传输到存储系统中,这样便建立了数据与指纹索引之间的相互关系,方便后续数据的查找与获取数据等操作。
步骤s30,比对相互匹配的对象对应的数据,确定相互匹配的对象间重复的数据;
在实时删除模式时,当接收到数据时对当前接收到的数据进行校验,对比历史数据和当前接收到的数据,找出当前数据与历史数据的相似性,即,找到相似的数据;在为定时删除模式时,在定时的时间达到时,确定相似数据的方式与实时删除的方式相同,但对比的数据为待处理数据,例如,为整个已存储的数据,或者是将上一时间节点到当前已存储的数据,与上一时间节点之前已存储的数据对比,找到相似的数据。
具体的,确定重复数据的过程包括:
步骤s31,确定所述待存储数据中包含的对象;
步骤s32,将所确定的对象加入指纹索引队列,进行对象指纹比对,通过hash算法确定相互匹配的对象;
步骤s33,比对相互匹配的对象对应的数据,通过md5算法计算数据的正确性得到有效数据;
步骤s34,从有效数据中确定相互匹配的对象间重复的数据。
在做实时或定时数据删除的过程中,将不同的对象加入到一个索引指纹队列中,先进行对象指纹比对,将相似度较高(相似度大于预设阈值,例如,预设阈值为80%相似或70%相似等)的对象通过hash算法抽取出来,然后根据md5算法来计算数据的正确性,发现数据在没有修改的情况下,且数据存在相同的拷贝,则表明找到重复的数据,将找到的重复的数据作为相互匹配的对象间重复的数据。
步骤s40,将所确定的重复的数据删除。
将重复的数据删除,即,将冗余的数据删掉,节省了大量的存储空间,提高了磁盘的存储容量,因存储容量提高,提高存储的效率。
为了更好的描述本发明实施例,参考图5,为本发明重复数据删除的架构图,参考图6,为数据删除的原理图。
本实施例提出一种基于对象的重复数据删除方式,有效解决了局部特征不足的缺陷,利用对象找出相互匹配的对象间重复的数据,删除重复的数据,实现单个节点内高性能的并行数据重删处理,扩展数据重删的吞吐量。有效合理的删除数据,提高存储空间。
本发明进一步提供一种数据删除装置。
参照图7,图7为本发明数据删除装置的一实施例的功能模块示意图。
在一实施例中,所述数据删除装置包括:获取模块10、确定模块20、处理模块30、存储模块40、比对模块50及删除模块60。
所述获取模块10,用于获取待处理数据;
在本实施例中,在有数据需要处理时,被处理的数据为待处理数据,例如,在需要删除数据时,待删除处理的数据为待处理数据;或者,再例如,在需要删除数据时,历史数据和当前待删除处理的数据为待处理数据。参考图8,所述获取模块10包括:确定单元11和获取单元12,
所述确定单元11,用于确定数据删除的模式;
所述获取单元12,用于在数据删除的模式为实时删除模式时,获取当前存入的数据以及历史存入的数据,将当前存入的数据以及历史存入的数据作为待处理数据;获取单元12还用于
在数据删除的模式为定时删除模式时,获取当前已存储的数据,将当前已存储的数据作为待处理数据。
数据删除模式包括定时删除模式和实时删除模式。数据删除模式的设置在系统开启后由用户设置,或者以默认的删除模式运行。在需要删除数据时,确定数据删除的模式,例如,确定为定时删除模式,或者确定为实时删除模式。在确定为实时删除模式时,将历史数据与当前的数据作为待处理数据,或者说可以直接将当前数据作为待处理数据;在确定为定时删除模式时,将当前存储的所有数据为待处理数据,或者在上一时间节点之前到现在时间节点之间所存储的数据作为待处理数据。上述实时和定时删除模式下待处理数据的定义为用户设置或系统默认,为其中对应的一种定义方式。在需要删除数据时,按照设置的方式获取待处理数据。
所述确定模块20,用于确定待处理数据中相互匹配的对象;
在数据存储时,数据存储的方式为按照对象的方式存储,即,根据对象对数据归类,然后分别存储对应对象的数据,即,接收客户端的数据,按照接收的数据的对象分类,分别存储在分布式存储系统中。
所述处理模块30,用于接收待存储数据,将所述待存储数据切片,切成预设大小的切片数据块;
所述存储模块40,用于将每个切片数据块以对象的方式存储,将每个切片数据的对象和指纹索引组成数据结构存储。
接收客户端发送来的数据,将客户端的数据切片,即,将客户端传输过来的数据分成若干个小数据块,在我们的分布式存储系统中会将每个数据块切分为128m(根据需求不同或者系统性能设置或根据传输数据的总大小设置,例如,可还设置为64m或256m等),发送给数据存储系统。在将数据切片后,数据传输稳定性和可靠性增加,因在网络状况不好的情况下,如果不将数据切分为若干个数据块,一次性传输大量的数据,数据在传输过程中会进行多次数据校验,增加了传输的时间,同时还会造成数据的丢失或者数据北阻塞,影响了数据的稳定性以及可靠性。
以对象的方式将切片数据存储到分布式系统中,对象存储的特点是将有效的数据和指纹索引组成数据结构的形式存储到缓存中,再将整个对象通过网络传输到存储系统中,这样便建立了数据与指纹索引之间的相互关系,方便后续数据的查找与获取数据等操作。
所述比对模块50,用于比对相互匹配的对象对应的数据,确定相互匹配的对象间重复的数据;
在实时删除模式时,当接收到数据时对当前接收到的数据进行校验,对比历史数据和当前接收到的数据,找出当前数据与历史数据的相似性,即,找到相似的数据;在为定时删除模式时,在定时的时间达到时,确定相似数据的方式与实时删除的方式相同,但对比的数据为待处理数据,例如,为整个已存储的数据,或者是将上一时间节点到当前已存储的数据,与上一时间节点之前已存储的数据对比,找到相似的数据。
所述确定模块20,还用于确定所述待存储数据中包含的对象;确定模块20还用于
将所确定的对象加入指纹索引队列,进行对象指纹比对,通过hash算法确定相互匹配的对象;
所述比对模块50,还用于比对相互匹配的对象对应的数据,通过md5算法计算数据的正确性得到有效数据;比对模块50还用于
从有效数据中确定相互匹配的对象间重复的数据。
在做实时或定时数据删除的过程中,将不同的对象加入到一个索引指纹队列中,先进行对象指纹比对,将相似度较高(相似度大于预设阈值,例如,预设阈值为80%相似或70%相似等)的对象通过hash算法抽取出来,然后根据md5算法来计算数据的正确性,发现数据在没有修改的情况下,且数据存在相同的拷贝,则表明找到重复的数据,将找到的重复的数据作为相互匹配的对象间重复的数据。
所述删除模块60,用于将所确定的重复的数据删除。
将重复的数据删除,即,将冗余的数据删掉,节省了大量的存储空间,提高了磁盘的存储容量,因存储容量提高,提高存储的效率。
为了更好的描述本发明实施例,参考图5,为本发明重复数据删除的架构图,参考图6,为数据删除的原理图。
本实施例提出一种基于对象的重复数据删除方式,有效解决了局部特征不足的缺陷,利用对象找出相互匹配的对象间重复的数据,删除重复的数据,实现单个节点内高性能的并行数据重删处理,扩展数据重删的吞吐量。有效合理的删除数据,提高存储空间。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。