CN106649360B - 数据重复性校验方法及装置 - Google Patents
数据重复性校验方法及装置 Download PDFInfo
- Publication number
- CN106649360B CN106649360B CN201510729296.5A CN201510729296A CN106649360B CN 106649360 B CN106649360 B CN 106649360B CN 201510729296 A CN201510729296 A CN 201510729296A CN 106649360 B CN106649360 B CN 106649360B
- Authority
- CN
- China
- Prior art keywords
- field information
- data
- preset
- combined
- combined field
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/215—Improving data quality; Data cleansing, e.g. de-duplication, removing invalid entries or correcting typographical errors
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据重复性校验方法及装置,涉及信息技术领域,可以提高数据重复性校验的效率。所述方法包括:首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,则保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。本发明适用于数据重复性的校验。
Description
技术领域
本发明涉及信息技术领域,尤其涉及一种数据重复性校验方法及装置。
背景技术
近些年来,随着信息技术的不断发展,分布式技术越来越成熟,通过分布式技术建立分片集群,可以实现对数据库中的数据进行分布式存储,例如MongoDB,CouchDB,Hbase,Hypertable等数据库,进而可以提高分布式系统中的并发性能。但是由于在分片模式下数据库的片键索引无法保证集群数据的唯一性,会导致分布式系统中产生很多重复的冗余数据,不仅会增加硬件的存储成本,还会影响系统的存储和查询性能。
目前可以在每次插入新数据之前进行数据重复性校验,在数据库中查询是否存在相同的数据,具体可以通过选取待插入数据中的多个字段信息分别与数据库中的特征字段进行匹配,如果确定数据库中存在与待插入数据相同的数据,则将待插入数据删除,不进行插入操作。
然而,由于在对待插入数据进行重复性校验时,需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,这样会造成数据重复性校验的效率较低,进而会影响数据的插入速度。
发明内容
有鉴于此,本发明实施例提供一种数据重复性校验方法及装置,主要目的是可以提高数据重复性校验的效率。
为达到上述目的,本发明主要提供如下技术方案:
一方面,本发明实施例提供了一种数据重复性校验方法,该方法包括:
从待插入数据中获取与预置字段标识信息对应的多个字段信息;
根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;
当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。
另一方面,本发明实施例还提供一种数据重复性校验装置,该装置包括:
获取单元,用于从待插入数据中获取与预置字段标识信息对应的多个字段信息;
编码单元,用于根据预置编码规则将所述获取单元获取的多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;
保存单元,用于当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。
借由上述技术方案,本发明实施例提供的技术方案至少具有下列优点:
本发明实施例提供的一种数据重复性校验方法及装置,首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。与目前需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,从而实现数据重复性校验相比,本发明根据预置编码规则将多个特征字段信息进行编码得到组合字段信息,对组合字段信息与数据库中的组合字段信息进行匹配进而实现数据重复性校验,减少了数据匹配的次数,提高了数据重复性校验的效率,减少了分布式系统的负担。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例提供的一种数据重复性校验方法流程示意图;
图2为本发明实施例提供的另一种数据重复性校验方法流程示意图;
图3为本发明实施例提供的一种数据重复性校验装置结构示意图;
图4为本发明实施例提供的另一种数据重复性校验装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
本发明实施例提供了一种数据重复性校验方法,如图1所示,所述方法包括:
101、从待插入数据中获取与预置字段标识信息对应的多个字段信息。
其中,所述预置字段标识信息可以根据实际需求进行配置,也可以由系统默认配置,本发明实施例不做限定。所述预置字段标识信息可以为预置字段的名称信息,也可以为预置字段的ID(Identity,身份标识号码)号,本发明实施例不做限定。所述预置字段标识信息可以为确定待插入数据唯一性的字段标识信息。
例如,当需要对网站贴吧中发表的文章帖子进行数据重复性校验时,预置字段标识信息可以配置为文章帖子对应的URL(Uniform Resource Locator,统一资源定位符)标识以及发布时间标识,与URL标识对应的字段信息可以为http://tieba.baidu.com/p/1050771140,与发布时间标识对应的字段信息可以为2011年8月1日20点38分33秒。
102、根据预置编码规则将多个字段信息进行编码,得到多个字段信息对应的组合字段信息。
其中,所述预置编码规则可以根据实际需求进行配置,也可以由系统默认配置,本发明实施例不做限定,具体可以为将多个字段信息分别对应的字符串进行连接。所述组合字段信息可以为由多个字段信息组合得到的一个字段信息。
对于本发明实施例,可以通过将多个字段信息分别对应的字符串进行连接的方式,将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息,例如,与预置字段标识信息对应的有两个字段信息,两个字段信息对应的字符串分别为http%3A//www.zhongguosou.com/computer_question_tools/url_code_convert.aspx、20150818203833,将两个字段信息分别对应的字符串进行连接得到http%3A//www.zhongguosou.com/computer_question_tools/url_code_convert.aspx20150818203833,可以将上述两个字段信息分别对应的字符串进行连接得到的字符串作为上述两个字段信息对应的组合字段信息。
103、当预置数据库中不存在组合字段信息时,保存待插入数据。
其中,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。所述预置数据库可以根据实际需求由用户进行配置,也可以由系统默认进行配置,本发明实施例不做限定。
例如,在SQL(Structured Query Language,结构化查询语言)数据库中,保存有10000个不同组合字段信息,当10000个组合字段信息中存在一个组合字段信息内容与待插入数据中对应的组合字段信息内容相同时,判定SQL数据库中保存有待插入数据中对应的组合字段信息,进而可以确定待插入数据重复;当10000个组合字段信息中不存在与待插入数据中对应的组合字段信息内容相同的组合字段信息时,判定SQL数据库中未保存有待插入数据中对应的组合字段信息,进而可以确定待插入数据没有重复。
对于本发明实施例,若预置数据库中保存有所述组合字段信息,则将所述待插入数据删除,不进行插入;若预置数据库中未保存有所述组合字段信息,可以将待插入数据进行插入,并且可以将所述组合字段信息保存在所述预置数据库中,用于对新的待插入数据进行数据重复性校验。
进一步地,所述方法还可以在预置数据库中进行批量数据重复性校验,首先获取一批待插入数据中与预置字段标识信息对应的多个字段信息;再根据预置编码规则将所述多个字段信息进行编码;得到所述多个字段信息分别对应的多个组合字段信息;然后判断预置数据库中是否保存有所述多个组合字段信息,其中,所述预置数据库中保存有不同组合字段信息;若判断出预置数据库中保存有所述多个组合字段信息中的一个或多个组合字段信息,则将所述一个或多个组合字段信息分别对应的待插入数据进行删除,若判断出预置数据库中未保存有所述多个组合字段信息中的一个或多个组合字段信息,则将所述一个或多个组合字段信息分别对应的待插入数据进行插入,特别的是,当判断出预置数据库中未保存有所述多个组合字段信息中的多个组合字段信息时,可以将所述多个组合字段信息分别对应的待插入数据进行批量插入,进而可以提高数据插入的效率。
本发明实施例提供的一种数据重复性校验方法,首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。与目前需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,从而实现数据重复性校验相比,本发明根据预置编码规则将多个特征字段信息进行编码得到组合字段信息,对组合字段信息与数据库中的组合字段信息进行匹配进而实现数据重复性校验,减少了数据匹配的次数,提高了数据重复性校验的效率,减少了分布式系统的负担。
本发明实施例提供了另一种数据重复性校验方法,如图2所示,所述方法包括:
201、根据不同预置字段标识信息分别对应的多个字段信息,生成多个组合字段信息。
其中,所述预置字段标识信息可以根据实际需求进行配置,也可以由系统默认配置,本发明实施例不做限定。所述预置字段标识信息可以为预置字段的名称信息、ID(Identity,身份标识号码)号等,本发明实施例不做限定。所述预置字段标识信息可以为确定待插入数据唯一性的字段标识信息,例如,文件标识、句子标识等。
对于本发明实施例,可以通过预置编码规则,将不同预置字段标识信息分别对应的多个字段信息进行编码,生成多个组合字段信息。其中,所述预置编码规则可以根据实际需求进行配置,也可以由系统默认配置,本发明实施例不做限定,具体可以为将多个字段信息分别对应的字符串进行连接。所述组合字段信息可以为由多个字段信息组合得到的一个字段信息。例如,与预置字段标识信息对应的有三个字段信息,三个字段信息对应的字符串分别为http%3A//blog.sina.com.cn/s/blog_%204c2e041f0102vtam.html%3Ftj%3D1、20150818203833、%21@%23%24%25%5E%26*%28%29%,将两个字段信息分别对应的字符串进行连接得到http%3A//blog.sina.com.cn/s/blog_%204c2e041f0102vtam.html%3Ftj%3D120150818203833%21@%23%24%25%5E%26*%28%29%,可以将上述三个字段信息分别对应的字符串进行连接得到的字符串作为上述三个字段信息对应的组合字段信息。
202、将多个组合字段信息保存在预置数据库中。
其中,所述预置数据库为商业数据库。所述商业数据库具有支持多字段检索、可进行二次检索、查询性能高、易用性能好等特点,所述商业数据库具体可以为SQL数据库、Oracle数据库、Mysql数据库等。所述SQL数据库是微软公司推出的关系型数据库管理系统,具有使用方便、可伸缩性好、与相关软件集成程度高等优点,是一个全面的数据库平台,使用集成的商业智能工具,提供了企业级的数据管理,SQL数据库引擎为关系型数据和结构化数据提供了更安全更可靠的存储功能,可以构建和管理用于业务的高可用和高性能的数据应用程序。所述Oracle数据库是甲骨文公司的一款关系型数据库管理系统,具有系统可移植性好、使用方便、功能强等特点,适用于各类大、中、小、微机环境。所述Mysql数据库是一种开放源代码的关系型数据库管理系统,具有速度快、可靠性高、适应性强等特点,在不需要事物化处理的情况下,Mysql数据库是管理内容最好的选择。
203、从待插入数据中获取与预置字段标识信息对应的多个字段信息。
例如,当需要对博客网站中发表的博客文章进行数据重复性校验时,预置字段标识信息可以配置为博客文章对应的URL标识以及发布时间标识,与URL标识对应的字段信息可以为http://blog.sina.com.cn/s/blog_49818dcb0102w0y0.html?tj=1,与发布时间标识对应的字段信息可以为2015年7月1日16点15分55秒。
204、根据预置编码规则将多个字段信息进行编码,得到多个字段信息对应的组合字段信息。
其中,所述预置编码规则与所述步骤201中提及的预置编码规则相同,属于同一预置编码规则。
例如,与预置字段标识信息对应的有四个字段信息,四个字段信息对应的字符串分别为http%3A%2F%2Fwww.w3school.com.cn%2Fhtml%2Fhtml_urlencode.asp、20110101、191918、1010101011010,将四个字段信息分别对应的字符串进行连接得到http%3A%2F%2Fwww.w3school.com.cn%2Fhtml%2Fhtml_urlencode.asp201101011919181010101011010。
205、当预置数据库中不存在组合字段信息时,则保存待插入数据。
其中,所述预置数据库中还保存有多个组合字段信息分别对应的哈希值。所述哈希值是通过哈希算法得到的,所述哈希算法是将任意长度的二进制值映射为固定长度的较小二进制值,该较小二进制值称为哈希值,哈希值是一段数据唯一且极其紧凑的数值表示形式,如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希值都会发生变化。对于本发明实施例,可以根据实际需要,预置数据库保存的多个组合字段信息分别对应的哈希值可以是32位、64位或者更长位数的。
例如,在SQL数据库中创建一张索引表,表中只有一个Varbinary(二进制)字段,用来存储多个组合字段信息分别对应的哈希值,并在Varbinary字段上建立唯一索引。
对于本发明实施例,所述步骤205之前还包括:获取所述组合字段信息对应的哈希值;所述步骤205具体包括:当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,则保存所述待插入数据。
例如,在Mysql数据库中,保存有五万个不同组合字段信息分别对应的哈希值,当五万个不同组合字段信息分别对应的五万个哈希值中存在一个哈希值与待插入数据中对应的组合字段信息的哈希值相同时,判定Mysql数据库中保存有与所述组合字段信息对应的哈希值相同的组合字段信息,进而可以确定待插入数据重复;当五万个不同组合字段信息分别对应的五万个哈希值中不存在与待插入数据中对应的组合字段信息相同的哈希值时,判定Mysql数据库中未保存有与所述组合字段信息对应的哈希值相同的组合字段信息,进而可以确定待插入数据没有重复。
进一步地,所述步骤205之后还包括:将所述组合字段信息和与所述组合字段信息对应的哈希值保存在所述预置数据库中。
需要说明的是,如果判定得到预置数据库中未保存有与所述组合字段信息对应的哈希值时,可以将所述组合字段信息和与所述组合字段信息对应的哈希值都保存在所述预置数据库中,用于对新的待插入数据进行数据重复性校验,具体可以提取新的待插入数据对应的组合字段信息,与预置数据库中保存的不同组合字段信息进行匹配校验,也可以首先计算新的待插入数据对应的组合字段信息的哈希值,再将哈希值与预置数据库中保存的不同组合字段信息分别对应的哈希值进行匹配校验。
进一步地,当向分片模式下的数据库插入新数据,并且需要对新数据进行数据重复性校验时,由于需要在每个分片中都需要进行数据重复性校验,会导致数据重复性校验的效率较低,特别的是,对于查询能力相对较弱的数据库如MongoDB数据库、CouchDB数据库、Hbase数据库、Hypertable数据库等,当需要校验重复性的数据较多时,重复性校验效率低的问题更加突出,而对于本发明实施例,可以预先提取分片模式下的数据库中与不同预置字段标识信息分别对应的多个字段信息,再通过预置编码规则将与不同预置字段标识信息分别对应的多个字段信息进行编码,生成多个组合字段信息,然后将所述多个组合字段信息保存在预置数据库中;或者计算出所述多个组合字段信息分别对应的哈希值,再将所述多个组合字段信息分别对应的哈希值保存在预置数据库中。通过上述两种方式进而在预置数据库中完成数据重复性校验,避免出现在每个数据库分片中都需要进行数据重复性校验的情况,可以提高数据重复性校验的效率。
对于本发明实施例,当预置数据库中保存有所述组合字段信息时,确定预置数据库中保存有待插入数据,将待插入数据进行删除,不进行插入;当预置数据库中未保存有所述组合字段信息时,确定预置数据库中未保存有待插入数据,将待插入数据进行插入。
对于本发明实施例具体应用场景可以如下所示,但不限于此,包括:
首先通过预置编码规则,将不同预置字段标识信息分别对应的多个字段信息进行编码,生成多个组合字段信息,其中,所述预置字段标识信息可以为确定待插入数据唯一性的字段标识信息;预置编码规则可以将多个字段信息分别对应的字符串进行连接,不同预置字段标识信息可以取文件标识、句子标识、URL、发布时间标识等。例如,与两个预置字段标识信息分别对应的两个字段信息的字符串为20151111、181818,将两个字符串进行连接得到组合字符串20151111181818,将组合字符串20151111181818作为根据两个字段信息生成的组合字段信息。然后将生成的多个组合字段信息保存在预置数据库中,预置数据库可以选取SQL数据库。
上述场景下,当向分片模式下的MongoDB数据库插入新数据,需要对待插入的新数据进行重复性校验时,提取待插入数据中与预置字段标识信息对应的多个字段信息,例如,当需要对小说网站中发表的小说文章进行数据重复性校验时,预置字段标识信息可以配置为小说文章对应的URL标识以及发布时间标识,与URL标识对应的字段信息可以为http://www.qidian.com/Book/3513193.aspx,与发布时间标识对应的字段信息可以为2015年8月19日23点58分。根据上述场景中的预置编码规则,将所述多个字段信息进行编码,得到多个字段信息对应的组合字段信息,然后将组合字段信息放入预置的SQL数据库中进行数据重复性的校验,在预置的SQL数据库中判断是否保存有待插入数据对应的组合字段信息,当判定预置的SQL数据库中保存有待插入数据对应的组合字段信息,则确定在MongoDB数据库中已经存在该待插入数据,将该待插入数据进行删除;当判定预置的SQL数据库中未保存有待插入数据对应的组合字段信息,则确定在MongoDB数据库中不存在该待插入数据,将该待插入数据插入到MongoDB数据库中,并将该待插入数据对应的组合字段信息保存在预置的SQL数据库中。
进一步地,在上述场景中,还可以在通过预置编码规则将不同预置字段标识信息分别对应的多个字段信息进行编码,生成多个组合字段信息的步骤之后,计算多个组合字段信息分别对应的哈希值,并将这多个哈希值保存在预置数据库中,其中,预置数据库可以为SQL数据库,在SQL数据库中创建一张索引表,表中只有一个Varbinary(二进制)字段,用来存储多个组合字段信息分别对应的哈希值,并在Varbinary字段上建立唯一索引。当向分片模式下的MongoDB数据库插入新数据,需要对待插入的新数据进行重复性校验时,首先提取待插入数据中与预置字段标识信息对应的多个字段信息,再根据上述场景中的预置编码规则,将所述多个字段信息进行编码,得到多个字段信息对应的组合字段信息,然后计算出组合字段信息的哈希值并放入到SQL数据库中进行数据重复性校验,在SQL数据库中判断是否保存有相同的哈希值,若存在,则确定在MongoDB数据库中已经存在该待插入数据,将该待插入数据进行删除;若不存在,则确定在MongoDB数据库中不存在该待插入数据,将该待插入数据插入到MongoDB数据库中,并将该待插入数据对应的组合字段信息的哈希值保存在SQL数据库中。
本发明实施例提供的另一种数据重复性校验方法,首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。与目前需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,从而实现数据重复性校验相比,本发明根据预置编码规则将多个特征字段信息进行编码得到组合字段信息,对组合字段信息与数据库中的组合字段信息进行匹配进而实现数据重复性校验,减少了数据匹配的次数,提高了数据重复性校验的效率,减少了分布式系统的负担。进一步地,作为图1所示方法的具体实现,本发明实施例提供了一种数据重复性校验装置,如图3所示,所述装置包括:获取单元31、编码单元32、判断单元33、保存单元34。
所述获取单元31,可以用于从待插入数据中获取与预置字段标识信息对应的多个字段信息。
所述编码单元32,可以用于根据预置编码规则将所述获取单元31获取的多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息。
所述保存单元33,可以用于当预置数据库中不存在所述组合字段信息时,则保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。
需要说明的是,本发明实施例提供的一种数据重复性校验装置所涉及各功能单元的其他相应描述,可以参考图1的对应描述,在此不再赘述。
本发明实施例提供的一种数据重复性校验装置,首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。与目前需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,从而实现数据重复性校验相比,本发明根据预置编码规则将多个特征字段信息进行编码得到组合字段信息,对组合字段信息与数据库中的组合字段信息进行匹配进而实现数据重复性校验,减少了数据匹配的次数,提高了数据重复性校验的效率,减少了分布式系统的负担。
进一步地,作为图2所示方法的具体实现,本发明实施例提供了另一种数据重复性校验装置,如图4所示,所述装置包括:获取单元41、编码单元42、判断单元43、保存单元44。
所述获取单元41,可以用于从待插入数据中获取与预置字段标识信息对应的多个字段信息。
所述编码单元42,可以用于根据预置编码规则将所述获取单元41获取的多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息。
所述保存单元43,可以用于当预置数据库中不存在所述组合字段信息时,则保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。
进一步地,所述装置还包括:生成单元44。
所述生成单元44,可以用于根据不同预置字段标识信息分别对应的多个字段信息,生成多个组合字段信息。
所述保存单元43,可以用于将所述生成单元44生成的多个组合字段信息保存在所述预置数据库中。
可选地,所述预置数据库中还保存有多个组合字段信息分别对应的哈希值。
所述获取单元41,还可以用于获取所述组合字段信息对应的哈希值。
所述保存单元43,具体可以用于当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,则保存所述待插入数据。
可选地,所述预置数据库为商业数据库。
需要说明的是,本发明实施例提供的另一种数据重复性校验装置所涉及各功能单元的其他相应描述,可以参考图2的对应描述,在此不再赘述。
本发明实施例提供的另一种数据重复性校验装置,首先从待插入数据中获取与预置字段标识信息对应的多个字段信息;然后根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成。与目前需要将从待插入数据中选取的多个字段信息分别与数据库中的特征字段依次进行匹配,从而实现数据重复性校验相比,本发明根据预置编码规则将多个特征字段信息进行编码得到组合字段信息,对组合字段信息与数据库中的组合字段信息进行匹配进而实现数据重复性校验,减少了数据匹配的次数,提高了数据重复性校验的效率,减少了分布式系统的负担。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种数据重复性校验方法,其特征在于,包括:
从待插入数据中,获取与预置字段标识信息对应的多个字段信息;
根据预置编码规则将所述多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;
当预置数据库中不存在所述组合字段信息时,保存所述待插入数据;其中,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成;
所述从待插入数据中获取与预置字段标识信息对应的多个字段信息之前,所述方法还包括:
根据不同预置字段标识信息分别对应的多个字段信息,生成多个组合字段信息;所述预置字段标识信息为确定待插入数据唯一性的字段标识信息;
将所述多个组合字段信息保存在所述预置数据库中。
2.根据权利要求1所述的数据重复性校验方法,其特征在于,所述预置数据库中还保存有多个组合字段信息分别对应的哈希值,所述方法还包括:
获取所述组合字段信息对应的哈希值;
当预置数据库中不存在所述组合字段信息时,保存所述待插入数据包括:
当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,保存所述待插入数据。
3.根据权利要求2所述的数据重复性校验方法,其特征在于,所述当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,则保存所述待插入数据之后,还包括:
将所述组合字段信息和与所述组合字段信息对应的哈希值保存在所述预置数据库中。
4.根据权利要求1-3任一项所述的数据重复性校验方法,其特征在于,所述预置数据库为商业数据库。
5.一种数据重复性校验装置,其特征在于,包括:
获取单元,用于从待插入数据中获取与预置字段标识信息对应的多个字段信息;
编码单元,用于根据预置编码规则将所述获取单元获取的多个字段信息进行编码,得到所述多个字段信息对应的组合字段信息;
保存单元,用于当预置数据库中不存在所述组合字段信息时,保存所述待插入数据,所述预置数据库中保存有不同组合字段信息,所述不同组合字段信息分别由多个不同字段信息组成;
所述装置还包括:生成单元;
所述生成单元,用于根据不同预置字段标识信息分别对应的多个字段信息,生成多个组合字段信息;所述预置字段标识信息为确定待插入数据唯一性的字段标识信息;
所述保存单元,还用于将所述生成单元生成的多个组合字段信息保存在所述预置数据库中。
6.根据权利要求5所述的数据重复性校验装置,其特征在于,所述预置数据库中还保存有多个组合字段信息分别对应的哈希值,
所述获取单元,还用于获取所述组合字段信息对应的哈希值;
所述保存单元,具体用于当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,保存所述待插入数据。
7.根据权利要求6所述的数据重复性校验装置,其特征在于,
所述保存单元,还用于当预置数据库中不存在与所述组合字段信息对应的哈希值相同的组合字段信息时,将所述组合字段信息和与所述组合字段信息对应的哈希值保存在所述预置数据库中。
8.根据权利要求5-7任一项所述的数据重复性校验装置,其特征在于,所述预置数据库为商业数据库。
9.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求4中任意一项所述的数据重复性校验方法。
10.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求4中任意一项所述的数据重复性校验方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510729296.5A CN106649360B (zh) | 2015-10-30 | 2015-10-30 | 数据重复性校验方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510729296.5A CN106649360B (zh) | 2015-10-30 | 2015-10-30 | 数据重复性校验方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106649360A CN106649360A (zh) | 2017-05-10 |
CN106649360B true CN106649360B (zh) | 2020-09-22 |
Family
ID=58810462
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510729296.5A Active CN106649360B (zh) | 2015-10-30 | 2015-10-30 | 数据重复性校验方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106649360B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107391701B (zh) * | 2017-07-27 | 2021-04-23 | 郑州云海信息技术有限公司 | 一种文件创建方法及装置 |
CN109104732B (zh) * | 2018-06-13 | 2021-06-01 | 珠海格力电器股份有限公司 | 数据发送方法、装置及智能电器 |
CN109785115A (zh) * | 2018-12-14 | 2019-05-21 | 深圳壹账通智能科技有限公司 | 测试数据的生成方法、装置和计算机设备 |
CN110532264B (zh) * | 2019-08-08 | 2022-04-15 | 杭州广立微电子股份有限公司 | 一种集成电路测试系统及其面向行的数据库管理系统 |
CN112804312B (zh) * | 2020-12-31 | 2023-06-30 | 上海掌门科技有限公司 | 文件上传方法、设备以及计算机可读介质 |
CN113327119B (zh) * | 2021-06-25 | 2023-04-18 | 青岛森麒麟轮胎股份有限公司 | 虚拟物料编码方法、系统、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169491A (zh) * | 2011-03-25 | 2011-08-31 | 暨南大学 | 一种多数据集中重复记录动态检测方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102024046B (zh) * | 2010-12-14 | 2013-04-24 | 华为数字技术(成都)有限公司 | 数据重复性校验方法和装置及系统 |
CN102915278A (zh) * | 2012-09-19 | 2013-02-06 | 浪潮(北京)电子信息产业有限公司 | 重复数据删除方法 |
CN103200293A (zh) * | 2013-03-05 | 2013-07-10 | 上海斐讯数据通信技术有限公司 | 一种导入通讯录文件过程中自动合并重名联系人的方法 |
US20140298430A1 (en) * | 2013-04-01 | 2014-10-02 | Launchkey, Inc. | Electronic combination lock using fields with position indicators |
CN103729448A (zh) * | 2013-12-31 | 2014-04-16 | 深圳市科漫达智能管理科技有限公司 | 一种数据查询方法及装置 |
-
2015
- 2015-10-30 CN CN201510729296.5A patent/CN106649360B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102169491A (zh) * | 2011-03-25 | 2011-08-31 | 暨南大学 | 一种多数据集中重复记录动态检测方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106649360A (zh) | 2017-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106649360B (zh) | 数据重复性校验方法及装置 | |
US8175875B1 (en) | Efficient indexing of documents with similar content | |
US9448999B2 (en) | Method and device to detect similar documents | |
US20170322930A1 (en) | Document based query and information retrieval systems and methods | |
CN106649346B (zh) | 数据重复性校验方法及装置 | |
US9160611B2 (en) | System and method for performing longest common prefix strings searches | |
US20050210054A1 (en) | Information management system | |
CN111310436B (zh) | 基于人工智能的文本处理方法、装置及电子设备 | |
Fu et al. | Privacy-preserving smart similarity search based on simhash over encrypted data in cloud computing | |
US20110246475A1 (en) | System and method for locating and retrieving private information on a network | |
US20050219076A1 (en) | Information management system | |
CN111046041B (zh) | 数据处理方法和装置、存储介质及处理器 | |
CN110019640B (zh) | 涉密文件检查方法及装置 | |
US9069681B1 (en) | Real-time log joining on a continuous stream of events that are approximately ordered | |
CN103544301A (zh) | 一种移动云中高效安全的支持多关键字的搜索方法 | |
CN110069489A (zh) | 一种信息处理方法、装置、设备及计算机可读存储介质 | |
WO2019000697A1 (zh) | 信息检索方法、系统、服务器及可读存储介质 | |
CN110991358A (zh) | 一种基于区块链的文本比对方法及装置 | |
US11528146B1 (en) | Fork table of an authenticated index data structure | |
CN105095513B (zh) | 一种破解Oracle数据库账户密码的方法和装置 | |
US11550777B2 (en) | Determining metadata of a dataset | |
KR20150008635A (ko) | 핵심 키워드 선정 장치, 핵심 키워드 선정 방법 및 이를 이용한 검색 서비스 제공 방법 | |
JP5464082B2 (ja) | 文書処理装置、文書処理方法、文書処理プログラム、及び文書処理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
CN107508878B (zh) | 一种基于缓存代理服务器的键名删除方法及装置 | |
CN115129899B (zh) | 文档标签信息生成方法、装置、设备、介质和程序产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information |
Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing Applicant after: Beijing Guoshuang Technology Co.,Ltd. Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing Applicant before: Beijing Guoshuang Technology Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |