数据去重方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:22135204 阅读:20 留言:0更新日期:2019-09-18 08:56
本发明专利技术公开了一种数据去重方法、装置、计算机设备及存储介质,涉及大数据领域。该数据去重方法包括:获取待比对数据;基于待比对数据,采用消息摘要算法计算生成相对应的待比对指纹;获取用户输入的查询指令,基于待比对指纹,根据查询指令查询是否存在与待比对指纹相同的现存指纹,得到查询结果,其中,查询指令包括标志位,现存指纹和待比对指纹采用相同的生成方式得到;执行标志位所代表的操作,并基于查询结果变更现存指纹所对应的引用计数,完成数据去重。采用该数据去重方法能够高效地完成数据去重。

Data Reduplication Method, Device, Computer Equipment and Storage Media

【技术实现步骤摘要】
数据去重方法、装置、计算机设备及存储介质
本专利技术涉及大数据领域,尤其涉及一种数据去重方法、装置、计算机设备及存储介质。
技术介绍
数据去重又称重复数据删除(DataDeduplication),是一种应用在存储系统中的全局识别和消除冗余数据的技术,近些年来成为存储系统研究的热点。然而,随着存储系统存储的数据量的逐渐上升,传统的数据去重方法的处理效率在逐渐下降,无法满足高效率的数据去重要求。
技术实现思路
有鉴于此,本专利技术实施例提供了一种数据去重方法、装置、计算机设备及存储介质,用以解决目前数据去重效率较低的问题。第一方面,本专利技术实施例提供了一种数据去重方法,包括:获取待比对数据;基于所述待比对数据,采用消息摘要算法计算生成相对应的待比对指纹;获取用户输入的查询指令,基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,其中,所述查询指令包括标志位,所述现存指纹和所述待比对指纹采用相同的生成方式得到;执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重,包括:若所述标志位所代表的操作为读,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行读操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,读取与所述待比对指纹相同的现存指纹所对应的现存数据;若所述标志位所代表的操作为写,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行写操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,将所述现存指纹所对应的引用计数作预加一;若所述标志位所代表的操作为删除,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行删除操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,将所述现存指纹所对应的引用计数作预减一。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,包括:将所述待比对指纹和所述现存指纹从左至右进行字符串的比较;当表示所述待比对指纹的字符串和表示所述现存指纹的字符串完全相同时,得到查询结果为存在与所述待比对指纹相同的现存指纹,其中,所述字符串完全相同是指表示所述待比对指纹的字符串的长度和表示所述现存指纹的字符串的长度相等,且从左至右的每一个字符均相同;当表示所述待比对指纹的字符串和表示所述现存指纹的字符串不完全相同时,得到查询结果为不存在与所述待比对指纹相同的现存指纹。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述在获取用户输入的查询指令之前,还包括:采用预设算法将每个所述现存指纹拆分成多个二次索引现存指纹,得到二次索引指纹库;将所述二次索引指纹库中相同的二次索引现存指纹除去,得到每个所述现存指纹对应的目标二次索引现存指纹。如上所述的方面和任一可能的实现方式,进一步提供一种实现方式,所述基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,包括:采用所述预设算法将所述待比对指纹拆分成多个二次索引待比对指纹;根据所述查询指令,将所述二次索引待比对指纹与所述目标二次索引现存指纹进行匹配;当匹配到任意一个所述二次索引待比对指纹与所述目标二次索引现存指纹完全相同时,得到查询结果为存在与所述待比对指纹相同的现存指纹。第二方面,本专利技术实施例提供了一种数据去重装置,包括:待比对数据获取模块,用于获取待比对数据;待比对指纹生成模块,用于基于所述待比对数据,采用消息摘要算法计算生成相对应的待比对指纹;查询结果获取模块,用于获取用户输入的查询指令,基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,其中,所述查询指令包括标志位,所述现存指纹和所述待比对指纹采用相同的生成方式得到;引用计数变更模块,用于执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重。第三方面,一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述数据去重方法的步骤。第四方面,本专利技术实施例提供了一种计算机可读存储介质,包括:计算机程序,所述计算机程序被处理器执行时实现上述数据去重方法的步骤。在本专利技术实施例中,首先获取待比对数据,基于待比对数据,采用消息摘要算法计算生成相对应的待比对指纹,采用消息摘要算法生成待比对指纹可以将待比对数据进行压缩,使得相同的待比对数据压缩后的待比对指纹相同,不同的待比对数据压缩后的待比对指纹不相同,在保证压缩后待比对指纹相同的前提下,有效提高了数据去重的效率;然后获取用户输入的查询指令,基于待比对指纹,根据查询指令查询是否存在与待比对指纹相同的现存指纹,并得到查询结果,通过采用待比对指纹和现存指纹的方式进行查询,能够明显提高查询效率,并且确保查询结果的准确性;最后执行标志位所代表的操作,并基于查询结果变更现存指纹所对应的引用计数,能够在查询是否存在与待比对指纹相同的现存指纹之后继续执行标志位所代表的操作,将原本需两次通讯过程完成的数据去重,采用一次通讯过程便完成,能够有效提高通讯效率,实现高效率的数据去重。【附图说明】为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。图1是本专利技术一实施例中数据去重方法的一流程图;图2是本专利技术一实施例中数据去重装置的一示意图;图3是本专利技术一实施例中计算机设备的一示意图。【具体实施方式】为了更好的理解本专利技术的技术方案,下面结合附图对本专利技术实施例进行详细描述。应当明确,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。在本专利技术实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本专利技术。在本专利技术实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的相同的字段,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。应当理解,尽管在本专利技术实施例中可能采用术语第一、第二、第三等来描述预设范围等,但这些预设范围不应限于这些术语。这些术语仅用来将预设范围彼此区分开。例如,在不脱离本专利技术实施例范围的情况下,第一预设范围也可以被称为第二预设范围,类似地,第二预设范围也可以本文档来自技高网...

【技术保护点】
1.一种数据去重方法,其特征在于,所述方法包括:获取待比对数据;基于所述待比对数据,采用消息摘要算法计算生成相对应的待比对指纹;获取用户输入的查询指令,基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,其中,所述查询指令包括标志位,所述现存指纹和所述待比对指纹采用相同的生成方式得到;执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重。

【技术特征摘要】
1.一种数据去重方法,其特征在于,所述方法包括:获取待比对数据;基于所述待比对数据,采用消息摘要算法计算生成相对应的待比对指纹;获取用户输入的查询指令,基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,其中,所述查询指令包括标志位,所述现存指纹和所述待比对指纹采用相同的生成方式得到;执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重。2.根据权利要求1所述的方法,其特征在于,所述执行所述标志位所代表的操作,并基于所述查询结果变更所述现存指纹所对应的引用计数,完成数据去重,包括:若所述标志位所代表的操作为读,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行读操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,读取与所述待比对指纹相同的现存指纹所对应的现存数据;若所述标志位所代表的操作为写,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行写操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,将所述现存指纹所对应的引用计数作预加一;若所述标志位所代表的操作为删除,则在根据所述查询指令和所述待比对指纹查询是否存在与所述待比对指纹相同的现存指纹之后,继续执行删除操作,当所述查询结果为存在与所述待比对指纹相同的现存指纹时,将所述现存指纹所对应的引用计数作预减一。3.根据权利要求1所述的方法,其特征在于,所述待比对指纹和所述现存指纹采用字符串的形式表示,所述基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,包括:将所述待比对指纹和所述现存指纹从左至右进行字符串的比较;当表示所述待比对指纹的字符串和表示所述现存指纹的字符串完全相同时,得到查询结果为存在与所述待比对指纹相同的现存指纹,其中,所述字符串完全相同是指表示所述待比对指纹的字符串的长度和表示所述现存指纹的字符串的长度相等,且从左至右的每一个字符均相同;当表示所述待比对指纹的字符串和表示所述现存指纹的字符串不完全相同时,得到查询结果为不存在与所述待比对指纹相同的现存指纹。4.根据权利要求1所述的方法,其特征在于,所述在获取用户输入的查询指令之前,还包括:采用预设算法将每个所述现存指纹拆分成多个二次索引现存指纹,得到二次索引指纹库;将所述二次索引指纹库中相同的二次索引现存指纹除去,得到每个所述现存指纹对应的目标二次索引现存指纹。5.根据权利要求4所述的方法,其特征在于,所述基于所述待比对指纹,根据所述查询指令查询是否存在与所述待比对指纹相同的现存指纹,得到查询结果,包括:采用所述预设算法将所述待比对指纹拆分成多个二次索引待比对指纹;根据所述查询指令,将所述二次索引待比对指纹与所述目标二次索引现存指纹进行匹配...

【专利技术属性】
技术研发人员:齐泽青
申请(专利权)人:平安科技深圳有限公司
类型:发明
国别省市:广东,44

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

1