CN114844638B - 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 - Google Patents
一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 Download PDFInfo
- Publication number
- CN114844638B CN114844638B CN202210774655.9A CN202210774655A CN114844638B CN 114844638 B CN114844638 B CN 114844638B CN 202210774655 A CN202210774655 A CN 202210774655A CN 114844638 B CN114844638 B CN 114844638B
- Authority
- CN
- China
- Prior art keywords
- key
- data
- cuckoo
- value
- deduplication
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0852—Quantum cryptography
- H04L9/0855—Quantum cryptography involving additional nodes, e.g. quantum relays, repeaters, intermediate nodes or remote nodes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Molecular Biology (AREA)
- Artificial Intelligence (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Power Engineering (AREA)
- Electromagnetism (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于布谷鸟过滤器的大数据量密钥的去重方法,包括去重系统的初始化、待去重密钥数据获取、密钥数据分治存储、密钥数据布谷鸟过滤去重、密钥数据删除、阳性数据和溢出数据集合遍历统计、密钥数据精准去重、完成大数据量密钥数据的精准去重。本发明还提供了一种基于布谷鸟过滤器的大数据量密钥的去重系统。与现有技术相比,本发明便于后续存储单元的动态调整,减少大量密钥数据的迁移;提高了整体系统对大数据量密钥数据去重的效率;相较于布隆过滤器,布谷鸟过滤器具有支持动态的新增和删除元素功能,提供了比传统布隆过滤器更高的查找性能,在相同较低期望误判率的情况下,比布隆过滤器占用的空间更小;同时提高了密钥的质量和可用性。
Description
技术领域
本发明涉及电数字数据处理技术领域,特别涉及一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统。
背景技术
随着量子密钥分发技术、量子密钥中继技术的发展、量子密钥应用的不断发展,应用中对大数据量的量子密钥的存储与使用提出了很高的要求。存储过程中的大数据量密钥去除重复成为关键需求,对密钥的高效去重可以更有效的保证密钥安全性、提高密钥质量。目前针对这种大数据量处理去重有一些方法,常采用布隆过滤器算法,但是布隆过滤器无法动态删除数据;采用布谷鸟过滤器算法,虽然在时间和空间上的效率比较高,且可以动态删除数据,但单纯地采用布谷鸟过滤器方案存在误判率,无法精准去重。基于多个散列函数和Bitmap二进制向量存储达到数据去重的目的,此方法虽可以精准去重但是需要较大的存储空间;在现有数据去重技术中,发明专利《CN108804242A-一种数据计数去重方法、系统、服务器及存储介质-公开》公开了一种数据去重方法,根据预设的去重等级,通过BloomFilter算法进行对应级别的计数去重,基于多级去重会使用redis缓存能提高查重效率,但仍未解决精准去重的需求;还有发明专利《CN110704407A-一种数据去重的方法和系统-公开》公开了一种数据去重的方法和系统,通过在数据库的第一运算阶层中设计去重字典表数组,并在在所述去重字典表数组中增加一列数据加速层,将待去重数据映射到所述去重字典表数组中,再将所述去重字典表数组导入到所述数据加速层的数据管理系统,使得所述待去重数据转化为bit格式并存储于Bitmap集合中,最后在Bitmap集合达到对所述去重数据的精确去重,该发明适用于电商等系统的大数据去重处理,但该方法并不适用于本领域的大数据量密钥或随机数去重,密钥的处理单位在64bit以上(以64bit密钥数据处理为例),由于密钥的随机性,一组64bit密钥的可能范围均匀分布在0~2^64之间,若基于Bitmap来映射密钥数据,则需要2147483648GB的二进制向量Bitmap来存储,现实中这是不可能实现的。还有发明专利《CN113590606B一种基于布隆过滤器的大数据量密钥去重方法及系统》可以通过布隆过滤器算法,精准的去重,但是密钥在实际使用中存在失效的情况,需要删除的操作,简单的布隆过滤器无法进行删除,另外对于精准去重过程阳性数据处理依赖其他存储单元,需要较大的存储空间。还有发明专利《CN109815234A一种流式计算模型下的多重布谷鸟过滤器》,通过采用多重布谷鸟过滤器的方式降低假阳性率,无法做到精准去重。
发明内容
本发明目的在于提供一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统,以解决量子信息安全领域暂无适用于大数据量密钥高效去重以及现有去重方法未实现高效精准去重的技术性缺陷。
本发明的技术方案是这样实现的:
一种基于布谷鸟过滤器的大数据量密钥数据去重方法,包括以下步骤:
S1:去重系统的初始化,根据系统预设的目标密钥总量S、存储单元个数N,存储单元根据硬件参数不同得到相应的存储权值wt,各个存储单元权值和为1,以及单个持久化存储单元预期存储容量n = S * wt。随即创建N个数据库表或N个文件;同时根据单个存储单元预期存储容量n、预设期望误判率fpp,计算布谷鸟过滤器每个下标位置能放元素个数b,以及散列函数的个数k,最大挤兑次数MaxNumKicks,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器。
S2:待去重密钥数据获取,从量子密钥分发设备或系统获取密钥,待后续进行去重检测。
S3:密钥数据分治存储,采用带权的负载均衡调度方法使得密钥进入对应的存储单元进行处理。
S31,根据存储单元物理性能确定存储单元的权值,所有存储单元的权值总和为1
S32,对密钥长度进行密钥截取
S33,根据密钥截取值的密钥空间构建虚拟存储单元
S34,根据每个存储单元的权值,确定每个存储单元对应的虚拟存储单元数量和范围。
S35,通过密钥的截取值查询到对应的虚拟存储单元,再根据虚拟存储单元所处的范围确定实际的存储单元。相同的密钥必将进入同一个分治单元处理。
S4:密钥数据布谷鸟过滤去重,布谷鸟滤波器有若干个桶组成,每个桶有若干个单元组成,每个单元可被用于存放密钥数据指纹,若干个单元构成二维指纹数据的结构。
S41,密钥存储时,通过Cuckoo Filter算法判断密钥存在情况,计算密钥X的指纹f= fingerprint(X),哈希值 h1(X) = i1 = hash(X) 和 h2(X) = i2 = i1⊕hash(f),i1,i2作为桶的索引,根据索引值找到桶的位置bucket[i1]和bucket[i2],比较该桶位置上存储的密钥指纹信息是否与写入的密钥指纹相同,若存在相同则表示密钥已经存在于布谷鸟过滤器实例中,若不存在相同则表示密钥不存在于布谷鸟过滤器实例中。
S42,若密钥指纹不存在布谷鸟过滤器实例中,标识密钥唯一,将存储单元中该密钥的去重检测标识字段值设定为0,并进入S43步骤。若密钥指纹存在布谷鸟过滤器实例中,且将存储单元中该密钥的去重检测标识字段值+1,则该密钥为阳性数据,该密钥存入阳性数据<Value>集合。
S43,若密钥指纹不存在布谷鸟过滤器实例中,则向布谷鸟过滤器中插入密钥指纹数据。首先,随机i选取i1 或者 i2,查询bucket[i]位置的单元是否有空间单元,有则将密钥指纹存入空闲单元。若不存在空闲单元,则对bucket[i]位置的单元指纹数据进行移位,移位后的新桶位置为i = i⊕hash(f), 同样的在新桶位置查询是否有空间单元,有则将密钥指纹存入空闲单元,若不存在再继续进行移位操作。若经过MaxNumKicks轮移位后还是没有找到空闲单元,则布谷鸟过滤器相应的单元已经满载,则密钥数据存在溢出,则该组密钥为溢出数据,并将该密钥数据保存于溢出数据的<Value>集合,且将存储单元中该密钥的去重检测标识字段值+1。
S5:密钥数据删除:实际使用过程中,密钥数据具有销毁失效的情况,需要对密钥数据进行删除。
S51,对布谷鸟过滤器中的密钥指纹数据进行删除,在密钥数据删除时,通过Cuckoo Filter算法计算密钥存在情况,计算密钥X的指纹f = fingerprint(X),哈希值 h1(X) = i1 = hash(X) 和 h2(X) = i2 = i1⊕hash(f),i1,i2作为桶的索引,根据索引值找到桶的位置bucket[i1]和bucket[i2],比较该桶位置单元存储的密钥指纹信息是否与删除的密钥指纹相同,相同则将该单元存储的密钥指纹数据删除,同时执行步骤S52,否则执行步骤S53。
S52,在阳性数据<Value>集合查询密钥数据是否存在,存在则删除。同时将存储单元中该密钥的去重检测标识字段值-1。
S53,若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据<Value>集合查询密钥数据是否存在,存在则删除。同时将存储单元中该密钥的去重检测标识字段值-1。
S6:阳性数据和溢出数据集合遍历统计,遍历指定存储单元,每取出一组密钥,判断该组密钥是否已存在于阳性数据的<Value>集合或溢出数据的<Value>集合中。若阳性数据的<Value>集合或溢出数据的<Value>集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若阳性数据的<Value>集合或溢出数据的<Value>集合中存在该组密钥,表明该组密钥可能重复,则判断保存可能重复统计结果的<Key, Value>集合是否已存在该组密钥对应的Key键,若不存在,则创建<Key, Value>键值对,Key键为该组密钥,Value值初始化为List列表,该List列表添加该组密钥对应的存储位置信息,若已存在,表明已找到该组密钥Key键对应的重复密钥及其存储位置信息,则通过该组密钥为Key键获取指定键值对元素,Value值List列表添加该组密钥对应的存储位置信息,再将更新后的Key、Value键值对写回集合,完成指定键值对元素的更新。
S7:密钥数据精准去重,遍历保存数据可能重复统计结果的<Key, Value>集合,若某元素的Value列表的元素数量大于1,则表明找到Key键指示密钥的重复密钥,根据Value列表中保存的重复密钥的存储位置信息,对重复密钥进行剔除处理,只保留重复数据中的第1组密钥,并将该组密钥的去重检测标识字段值设置为0;若某元素的Value列表元素数量为1,则表明Key键指示密钥是唯一的,将该组密钥的去重检测标识字段值设置为0。
S8:至此完成大数据量密钥数据的精准去重。
优选地,在步骤S1中,确定系统预设的目标密钥总量S和存储单元个数N,单个存储单元根据密钥存储服务器内存、CPU等硬件性能、数据库性能进行动态调整权值wt,则单个存储单元的存储容量n = S * wt,且保证N个存储单元的存储容量之和大于等于预设的目标密钥总量S。
优选地,在步骤S1中,所述布谷鸟过滤器的期望误判率fpp,每个下标位置能放元素个数b,散列函数的个数k,以及最大挤兑次数MaxNumKicks,在创建布谷鸟过滤器阶段,根据实际需求进行动态调整。
优选地,在步骤S3中,在本申请的一种实施例中,所述一组密钥数据,一般取其低32bit为密钥截取值。
优选地,在步骤S3中,所述根据存储单元个数一一对应创建布谷鸟过滤器,密钥存储时即进行密钥的布谷鸟去重初筛,多个布谷鸟过滤器在系统中并行进行,实现实时并行的高效去重查询。
优选地,在步骤S3中,在本申请的一种实施例中,所述密钥分治存储,使用包括但不限于mysql、文件存储等方式,根据系统实际应用场景择优选择一种,分治存储在使用数据库存储方案时表示数据均匀分布存储至N个库表,在使用文件存储方案时表示数据均匀分布存储至N个文件。
优选地,在步骤S3中,在本申请的一种实施例中,所述存储单元序号i,在使用mysql等数据库存储方案时表示为库表序号,在使用文件存储方案时表示为文件序号。
优选地,在步骤S4中,所述密钥的去重检测标识字段值设定为0或其他非0值,在系统输出密钥时用于是否优先输出的逻辑判断,去重检测标识字段值为0表示密钥唯一,优先输出,去重检测标识字段值为非0的密钥待步骤6、7精准去重后剔除或更新该标识字段为0。
优选地,在步骤S4中,所述保存阳性数据的<Value>集合使用包括但不限于Set、HashSet、LinkedHashSet等唯一元素形式的集合框架。
优选地,在步骤S5中,所述判断密钥是否已存在于阳性数据的<Value>集合或溢出数据的<Value>集合中,通过HashSet类的contains方法确定。
优选地,在步骤S6中,所述保存阳性数据遍历结果的<Key, Value>集合使用包括但不限于HashMap、LinkedHashMap、HashTable等键值形式的集合框架。
优选地,在步骤S6中,所述判断保存阳性数据重复统计结果的<Key, Value>集合是否已存在该组密钥对应的Key键,通过HashMap类的containsKey方法确定。
优选地,在步骤S6中,所述Value值初始化为List列表使用ArrayList、LinkedList等有序集合框架。
本发明提供了一种基于布谷鸟过滤器的大数据量密钥数据去重系统,包括:
去重系统初始化模块:根据系统预设的目标密钥总量S、存储单元个数N,存储单元根据硬件参数不同得到相应的存储权值wt,各个存储单元权值和为1,以及单个持久化存储单元预期存储容量n = S * wt。随即创建N个数据库表或N个文件;同时根据单个存储单元预期存储容量n、预设期望误判率fpp,计算布谷鸟过滤器每个下标位置能放元素个数b,以及散列函数的个数k,最大挤兑次数MaxNumKicks,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器。
数据获取模块:用于从量子密钥分发系统、量子密钥中继网络系统等密钥分发系统获取待存储、待去重检测的大数据量密钥数据。
密钥数据的分治存储,采用带权的负载均衡调度方法使得密钥进入对应的存储单元进行处理。N个存储单元的权值总和为1,每个存储单元的权值是指每个存储单元容量所占的比例。密钥数据是从量子密钥分发设备或系统获取,量子密钥具有真随机的特性,密钥数据均匀分布,对于一组qbit密钥的可能范围均匀分布在0~2^q之间,由于密钥数据均匀分布,取密钥的低kbit位为密钥截取值,则密钥截取值空间为0~2^k-1,一一映射,需要0~2^k-1个存储单元,以此构建M= 2^k个虚拟存储单元。根据每个存储单元的权值wt,则构建的每个存储单元对应的虚拟存储单元数=虚拟存储单元数M*每个存储单元的权值wt。若密钥截取值K∈[M * ∑(wt1 + …+wti-1),M * ∑(wt1 + …+wti)],得到分支存储单元序号为i,则代表该组密钥应进入序号为i的处理单元。重复的密钥,必将进入同一个分治单元处理。
分治存储模块:采用带权的负载均衡调度方法使得密钥进入对应的存储单元进行处理。用于每输入一组密钥数据,截取其低kbit数值为密钥截取值K,比较截取值,若密钥截取值K∈[M * ∑(wt1 + …+wti-1),M * ∑(wt1 + …+wti)],得到分支存储单元序号为i,则代表该组密钥应进入序号为i的处理单元。最终将该密钥引导存储至序号为i的数据库表或文件。
布谷鸟去重模块:用于密钥存储时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹不存在则将该组密钥插入布谷鸟过滤器实例中,且将存储单元中该密钥的去重检测标识字段值设定为0,标识密钥唯一;如果密钥数据指纹已经存在则判断为已经存储于布谷鸟过滤器中,且将存储单元中该密钥的去重检测标识字段值+1,则该组密钥为阳性数据,该组密钥存入阳性数据<Value>集合。
如果密钥数据指纹信息不存在布谷鸟过滤器中,且布谷鸟滤波器经过最大挤兑次数MaxNumKicks轮单元移位后也无法存入该组密钥指纹,则布谷鸟过滤器相应的单元已经满载,则密钥数据存在溢出,则该组密钥为溢出数据,并将该密钥数据保存于溢出数据的<Value>集合,且将存储单元中该密钥的去重检测标识字段值+1。
数据删除模块:用于密钥数据进行删除,在密钥数据删除时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹存在则将该密钥从布谷鸟过滤器实例中删除,同时在阳性数据<Value>集合查询密钥数据是否存在,存在则删除。若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据<Value>集合查询密钥数据是否存在,存在则删除。同时将存储单元中该密钥的去重检测标识字段值-1。
阳性数据和溢出数据处理模块:用于遍历指定存储单元中的密钥,判断该组密钥是否已存在于阳性数据的<Value>集合或溢出数据的<Value>集合中。若阳性数据的<Value>集合或溢出数据的<Value>集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若阳性数据的<Value>集合或溢出数据的<Value>集合中存在该组密钥,表明该组密钥可能重复,则判断保存可能重复统计结果的<Key, Value>集合是否已存在该组密钥对应的Key键,若不存在,则创建<Key, Value>键值对,Key键为该组密钥,Value值初始化为List列表,该List列表添加该组密钥对应的存储位置信息,若已存在,表明已找到该组密钥Key键对应的重复密钥及其存储位置信息,则通过该组密钥为Key键获取指定键值对元素,Value值List列表添加该组密钥对应的存储位置信息,再将更新后的Key、Value键值对写回集合,完成指定键值对元素的更新。
精准去重模块:用于遍历保存可能重复数据统计结果的<Key, Value>集合,若某元素的Value列表的元素数量大于1,则表明找到Key键指示密钥的重复密钥,根据Value列表中保存的重复密钥的存储位置信息,对重复密钥进行剔除处理,只保留重复数据中的第1组密钥,并将该组密钥对应的去重检测标识字段值设置为0;若某元素的Value列表元素为1,则表明Key键指示密钥是唯一的,将该组密钥对应的去重检测标识字段值设置为0。
与现有技术相比,本发明有以下有益效果:
本发明针对大数据量密钥去重提出分治存储方法,采用带权的负载均衡调度方法使得密钥均匀引导存储至不同存储单元,既保证了重复密钥一定存储在同一个数据集合,还减少了单个存储单元处理的预期数据量,还能根据设备物理性能区分进行不同密钥数量的存储,充分发挥设备能力,同时也便于后续存储单元的动态调整,减少大量密钥数据的迁移;
本发明通过多个存储单元对应着多个布谷鸟过滤器,能够实现多个密钥去重实例并行实时处理,有效提高了整体系统对大数据量密钥数据去重的效率;
本发明针对单个存储单元采用基于布谷鸟过滤器的大数据密钥去重方法,相较于布隆过滤器,布谷鸟过滤器具有支持动态的新增和删除元素功能,提供了比传统布隆过滤器更高的查找性能,在相同较低期望误判率的情况下,比布隆过滤器占用的空间更小;
量子信息安全领域的大数据量密钥去重,提供了一种精准去重方法和系统,基于布谷鸟过滤器实现高效去重查询效率,基于阳性数据和溢出数据的HashSet集合遍历统计存储单元实现了高效查询、删除数据、精准去重,提高了密钥的质量和可用性;
附图说明
图1为本发明基于布谷鸟过滤器的大数据量密钥去重方法的流程示意图;
图2为本发明基于布谷鸟过滤器的大数据量密钥去重系统结构示意图;
图3为本发明去重系统初始化模块结构示意图;
图4为本发明阳性数据和溢出数据遍历统计模块结构示意图;
图5为本发明步骤S4密钥数据写入及布谷鸟去重的流程示意图;
图6为本发明步骤S5密钥数据删除的流程示意图;
图7为本发明步骤S6阳性数据和溢出数据遍历统计的流程示意图;
图8为本发明基于布谷鸟过滤器的大数据量密钥去重系统的并行处理框架示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明进行清楚、完整地描述。
参阅图1所示,实施例一:本发明提供了一种基于布谷鸟过滤器的大数据量密钥去重方法,包括以下步骤:
S1:去重系统初始化,根据系统预设的目标密钥总量S、存储单元个数N,存储单元根据硬件参数不同得到相应的存储权值wt,各个存储单元权值和为1,以及单个持久化存储单元预期存储容量n = S * wt。随即创建N个数据库表或N个文件;同时根据单个存储单元预期存储容量n、预设期望误判率fpp,计算布谷鸟过滤器每个下标位置能放元素个数b,以及散列函数的个数k,最大挤兑次数MaxNumKicks,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器;
S2:待去重密钥数据获取,从量子密钥分发系统、量子密钥中继网络系统等安全分发密钥系统获取密钥X,待进行去重检测;
S3:密钥数据分治存储,每输入一组密钥X取密钥的低kbit位(一般为32bit)为密钥截取值K,构建M= 2^k个虚拟存储单元。比较密钥截取值与M间关系。若密钥截取值K∈[M* ∑(wt1 + …+wti-1),M * ∑(wt1 + …+wti)],得到分支存储单元序号为i,则代表该组密钥应进入序号为i的处理单元。重复的密钥,必将进入同一个分治单元处理;
S4:密钥数据布隆去重,在密钥存储时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹不存在则将该组密钥插入布谷鸟过滤器实例中,且将存储单元中该密钥的去重检测标识字段值设定为0,标识密钥唯一;如果密钥数据指纹已经存在则判断为已经存储于布谷鸟过滤器中,且将存储单元中该密钥的去重检测标识字段值+1,则该组密钥为阳性数据,该组密钥存入阳性数据<Value>集合,
如果密钥数据指纹信息不存在布谷鸟过滤器中,且布谷鸟滤波器经过最大挤兑次数MaxNumKicks轮单元移位后也无法存入该组密钥指纹,则布谷鸟过滤器相应的单元已经满载,则密钥数据存在溢出,则该组密钥为溢出数据,并将该密钥数据保存于溢出数据的<Value>集合,且将存储单元中该密钥的去重检测标识字段值+1;
S5:密钥数据删除,实际使用过程中,密钥数据具有销毁失效的情况,需要对密钥数据进行删除,相应的需要对布谷鸟过滤器的密钥指纹数据进行删除。在密钥数据删除时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹存在则将该组密钥从布谷鸟过滤器实例中删除,同时在阳性数据<Value>集合查询密钥数据是否存在,存在则删除。若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据<Value>集合查询密钥数据是否存在,存在则删除。同时将存储单元中该密钥的去重检测标识字段值-1;
S6:阳性数据和溢出数据遍历统计,遍历指定存储单元,每取出一组密钥,判断该组密钥是否已存在于阳性数据的<Value>集合或溢出数据的<Value>集合中。若阳性数据的<Value>集合或溢出数据的<Value>集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若阳性数据的<Value>集合或溢出数据的<Value>集合中存在该组密钥,表明该组密钥可能重复,则判断保存可能重复统计结果的<Key, Value>集合是否已存在该组密钥对应的Key键,若不存在,则创建<Key, Value>键值对,Key键为该组密钥,Value值初始化为List列表,该List列表添加该组密钥对应的存储位置信息,若已存在,表明已找到该组密钥Key键对应的重复密钥及其存储位置信息,则通过该组密钥为Key键获取指定键值对元素,Value值List列表添加该组密钥对应的存储位置信息,再将更新后的Key、Value键值对写回集合,完成指定键值对元素的更新;
S7:数据的精准去重,遍历保存数据可能重复统计结果的<Key, Value>集合,若某元素的Value列表的元素数量大于1,则表明找到Key键指示密钥的重复密钥,根据Value列表中保存的重复密钥的存储位置信息,对重复密钥进行剔除处理,只保留重复数据中的第1组密钥,并将该组密钥的去重检测标识字段值设置为0;若某元素的Value列表元素数量为1,则表明Key键指示密钥是唯一的,将该组密钥的去重检测标识字段值设置为0;
S8:至此完成大数据量密钥数据的精准去重。
实施例二:
实施例二:如图2、图3、图4、图5、图6所示,本发明还提供了一种基于布谷鸟过滤器的大数据量密钥去重系统,包括如下组成模块:
去重系统初始化模块201:用于根据入参创建存储单元和布谷鸟过滤器,如图3所示,所述去重系统初始化模块201包括如下子模块:
(1)创建存储单元子模块2011:用于根据系统预设的目标密钥总量S、存储单元个数N,存储单元根据硬件参数不同得到相应的存储权值wt,各个存储单元权值和为1,以及单个持久化存储单元预期存储容量n = S * wt。随即创建N个数据库表或N个文件;
(2)创建布谷鸟过滤器子模块2012:根据根据单个存储单元预期存储容量n、预设期望误判率fpp,计算布谷鸟过滤器每个下标位置能放元素个数b,以及散列函数的个数k,最大挤兑次数MaxNumKicks,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器。
数据获取模块201:用于从量子密钥分发系统、量子密钥中继网络系统等密钥分发系统获取待存储、待去重检测的大数据量密钥数据。
分治存储模块203:用于根据输入密钥X取密钥的低kbit位(一般为32bit)为密钥截取值K,构建M= 2^k个虚拟存储单元。比较密钥截取值与M间关系。若密钥截取值K∈[M *∑(wt1 + …+wti-1),M * ∑(wt1 + …+wti)],得到分支存储单元序号为i,则代表该组密钥应进入序号为i的处理单元。调用相应存储接口,将该组输入密钥引导存储至序号i指示的存储单元,即某数据库表或某文件,确保重复密钥存储在同一存储单元、由同一布谷鸟过滤器进行密钥重复性查询。
布谷鸟去重模块204:在密钥存储时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹不存在则将该组密钥插入布谷鸟过滤器实例中,且将存储单元中该密钥的去重检测标识字段值设定为0,标识密钥唯一;如果密钥数据指纹已经存在则判断为已经存储于布谷鸟过滤器中,且将存储单元中该密钥的去重检测标识字段值+1,且通过HashSet.add方法将该组密钥作为Value值元素添加至保存阳性数据的<Value>元素形式的hashSet集合。
如果密钥数据指纹信息不存在布谷鸟过滤器中,且布谷鸟滤波器经过最大挤兑次数MaxNumKicks轮单元移位后也无法存入该组密钥指纹,则布谷鸟过滤器相应的单元已经满载,则密钥数据存在溢出,则该组密钥为溢出数据,且通过HashSet.add方法将该组密钥作为Value值元素添加至保存溢出数据的<Value>元素形式的hashSet集合,且将存储单元中该密钥的去重检测标识字段值+1。
数据删除模块205:在密钥数据删除时,通过Cuckoo Filter算法计算密钥存在情况,若判定密钥数据指纹存在则将该组密钥从布谷鸟过滤器实例中删除,同时在阳性数据<Value>集合查询密钥数据是否存在,存在则删除,通过HashSet.Remove方法将该密钥作为Value值元素删除。若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据<Value>集合查询密钥数据是否存在,存在则删除,通过HashSet.Remove方法将该密钥作为Value值元素删除。同时将存储单元中该密钥的去重检测标识字段值-1。
阳性数据和溢出数据遍历统计模块206:针对系统并行处理过程中的某个密钥去重进程而言,本模块206用于遍历指定存储单元,每取出一组密钥,判断和统计该组密钥的重复情况,将包含同一组重复密钥存储位置信息的重复筛查结果以ArrayList列表形式保存至hashMap集合,如图4所示,所述阳性数据和溢出数据遍历统计模块206包括如下子模块:
(1)阳性数据遍历子模块2061:每取出一组密钥,判断是否已存在于阳性数据的hashSet集合中。若hashSet集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若hashSet集合中存在该组密钥,表明该组密钥可能重复,并转交重复结果统计子模块2063处理:
(2)溢出数据遍历子模块2062:每取出一组密钥,判断是否已存在于溢出数据的hashSet集合中。若hashSet集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若hashSet集合中存在该组密钥,表明该组密钥可能重复,并转交重复结果统计子模块2063处理:
(3)重复结果统计子模块2063:子模块2061或子模块2062判定密钥可能重复,则本子模块2063判断保存可能重复数据统计结果的<Key, Value>元素形式的hashMap集合是否已存在该组密钥对应的Key键,若不存在,则创建<Key, Value>键值对,Key键为该组密钥,Value值初始化为ArrayList列表,用于保存密钥存储位置信息,如数据库主键、文件位移、实际存储地址等,使用ArrayList.add方法将该组密钥存储位置信息添加至ArrayList列表,若已存在,表明已找到该组密钥Key键对应的重复密钥及其存储位置信息,则通过该组密钥为Key键获取对应键值对元素,Value值ArrayList列表添加该组密钥存储位置信息,再通过HashMap.add方法将更新后的Key、Value键值对写回hashMap集合,完成对应键值对元素的更新。
精准去重模块207:用于遍历保存可能重复数据统计结果的hashMap集合,实现重复密钥的精准去重,若集合中某元素的Value列表的元素数量大于1,则表明找到Key键指示密钥的重复密钥,根据Value列表中保存的重复密钥的存储位置信息,对重复密钥进行剔除处理,只保留重复数据中的第1组密钥,并将该组密钥对应的去重检测标识字段值设置为0;若某元素的Value列表元素为1,则表明Key键指示密钥是唯一的,将该组密钥对应的去重检测标识字段值设置为0。
实施例三:
实施例三:如图7所示,在实施例一的基础上,结合图7详述步骤S6阳性数据遍历统计的流程,包含S601、S602、S603、S604、S605、S606等子步骤,如下所述:
S601:遍历取出指定存储单元中的一组密钥X;
S602:判断该密钥X是否已存在于步骤S4输出的阳性数据的HashSet集合或溢出数据的HashSet集合中,若不存在表明密钥X唯一、无需处理,跳转步骤S601开始下一轮遍历统计,若存在则由S603处理;
S603:密钥X存在于阳性数据的HashSet集合或溢出数据的HashSet集合中,表明密钥X可能重复,获取密钥X实际存储位置信息,即存储单元中的该密钥X的文件位移或数据库主键等可表示密钥实际存储位置的信息。
S604:判断保存阳性数据重复统计结果的HashMap集合中Key键为密钥X的元素是否存在,若不存在由S605处理,若存在由S606处理。
S605:创建键值对元素,其中Key键为密钥X,Value值初始化为ArrayList列表并添加密钥X实际存储位置信息,将该键值对添加至保存阳性数据重复统计结果的HashMap集合中。
S606:从保存阳性数据重复统计结果的HashMap集合取出Key键为密钥X的元素,将密钥X实际存储位置信息添加至该集合元素Value值的ArrayList列表中。
实施例四:
实施例四:如图8所示,在图2描述的本发明提供的密钥去重系统结构基础上,本发明还提供了密钥去重系统的并行处理框架,如下所述:
去重系统实例Inst:所述去重系统实例Inst包含N个去重进程实例,即下述去重进程实例Inst1、InstX、InstN等N个进程实例,所述N为存储单元个数,也即去重系统所需的布谷鸟过滤器个数。
去重进程实例Inst1:所述密钥去重系统进程实例Inst1,为密钥去重系统并行进程中的第1个进程实例,包含存储单元601、布谷鸟过滤器602、HashSet集合603以及HashMap集合604。
去重进程实例InstX:所述密钥去重系统进程实例InstX,为密钥去重系统并行进程中的第X个进程实例,包含存储单元601、布谷鸟过滤器602、HashSet集合603以及HashMap集合604。
去重进程实例InstN:所述密钥去重系统进程实例Inst1,为密钥去重系统并行进程中的第N个进程实例,包含存储单元601、布谷鸟过滤器602、HashSet集合603以及HashMap集合604。
存储单元601:所述存储单元601,为实施例二中去重系统初始化模块202创建的N个存储单元之一,用于存储根据输入密钥,通过计算密钥散列、取余结果来指定具体存储单元序号。
布谷鸟过滤器602:所述布谷鸟过滤器602,为实施例二中去重系统初始化模块202创建的N个布谷鸟过滤器之一,用于存储单元601存储密钥时,基于布谷鸟过滤器算法计算密钥的去重检测。
HashSet集合603:所述HashSet集合603,为实施例二中布隆去重计算模块204创建的N个HashSet集合之一,用于保存布谷鸟过滤器602去重检测输出的阳性数据。
HashMap集合604:所述HashMap集合604,为实施例二中阳性数据遍历统计模块205创建的N个HashMap集合之一,用于保存HashSet集合603进行遍历存储单元所有密钥输出的重复结果统计数据。
所述去重系统实例Inst包含N个去重进程实例,当系统所在服务器的CPU核数大于等于N、且N个进程实例所占内存小于服务器可用内存时,去重系统实例Inst并行运行该N个去重进程实例;当不满足上述条件时,根据服务器CPU核数、可用内存量,去重系统实例Inst依次批量运行多个去重进程实例,直至N个去重进程实例均执行完毕。
综合本发明的结构、方法以及实施例可知,本发明采用带权的负载均衡调度方法使得密钥均匀引导存储至不同存储单元,既保证了重复密钥一定存储在同一个数据集合,还减少了单个存储单元处理的预期数据量,还能根据设备物理性能区分进行不同密钥数量的存储,充分发挥设备能力,同时也便于后续存储单元的动态调整,减少大量密钥数据的迁移;提高了整体系统对大数据量密钥数据去重的效率;相较于布隆过滤器,布谷鸟过滤器具有支持动态的新增和删除元素功能,提供了比传统布隆过滤器更高的查找性能,在相同较低期望误判率的情况下,比布隆过滤器占用的空间更小;量子信息安全领域的大数据量密钥去重,提供了一种精准去重方法和系统,基于布谷鸟过滤器实现高效去重查询效率,基于阳性数据和溢出数据的HashSet集合遍历统计存储单元实现了高效查询、删除数据、精准去重,提高了密钥的质量和可用性。
Claims (11)
1.一种基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,包括以下步骤:
S1、去重系统的初始化,初始化存储单元、布谷鸟过滤器;
S2、待去重密钥数据获取,从量子密钥分发设备或系统获取密钥,待后续进行去重检测;
S3、密钥数据分治存储,带权的负载均衡调度方法确定存储单元;
S4、密钥数据布谷鸟过滤去重,筛选出阳性数据和溢出数据集合;
S5、密钥数据删除,删除阳性数据和溢出数据集合中的数据;
S6、阳性数据和溢出数据集合遍历统计,保存密钥数据信息;
S7、密钥数据精准去重,遍历保存密钥数据信息的集合,剔除或更新标识;
S8、完成大数据量密钥数据的精准去重,
去重系统的初始化过程中,根据系统预设的目标密钥总量、存储单元个数,存储单元根据硬件参数不同得到相应的存储权值以及单个持久化存储单元预期存储容量;随即创建N个数据库表或N个文件;同时根据单个存储单元预期存储容量、预设期望误判率,计算布谷鸟过滤器每个下标位置能放元素个数,散列函数的个数,以及最大挤兑次数,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器。
2.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S3中采用带权的负载均衡调度方法使得密钥进入对应的存储单元进行处理,处理过程包括以下步骤:
S31、根据存储单元物理性能确定存储单元的权值,所有存储单元的权值总和为1;
S32,对密钥数据长度进行密钥截取;
S33,根据密钥截取值的密钥空间构建虚拟存储单元;
S34,根据每个存储单元的权值,确定每个存储单元对应的虚拟存储单元数量和范围;
S35,通过密钥截取值查询到对应的虚拟存储单元,再根据虚拟存储单元所处的范围确定实际的存储单元,相同的密钥必将进入同一个分治单元处理。
3.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S4中密钥数据布谷鸟过滤去重包括如下步骤:
S41,密钥存储时,通过算法判断密钥存在情况,计算密钥的指纹,哈希值以及桶的索引值,根据索引值找到桶的位置,比较该桶位置上存储的密钥指纹信息是否与写入的密钥指纹相同,若存在相同则表示密钥已经存在于布谷鸟过滤器实例中,若不存在相同则表示密钥不存在于布谷鸟过滤器实例中;
S42,若密钥指纹不存在布谷鸟过滤器实例中,标识密钥唯一,将存储单元中该密钥的去重检测标识字段值设定为0,并进入S43步骤;若密钥指纹存在布谷鸟过滤器实例中,且将存储单元中该密钥的去重检测标识字段值+1,则该密钥为阳性数据,该密钥存入阳性数据集合;
S43,若密钥指纹不存在布谷鸟过滤器实例中,则向布谷鸟过滤器中插入密钥指纹数据。
4.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S4中密钥数据删除包括以下:
S51,对布谷鸟过滤器中的密钥指纹数据进行删除,在密钥数据删除时,通过算法计算密钥存在情况,计算密钥的指纹、哈希值以及桶的索引值,根据索引值找到桶的位置,比较该桶位置单元存储的密钥指纹信息是否与删除的密钥指纹相同,相同则将该单元存储的密钥指纹数据删除,同时执行步骤S52,否则执行步骤S53;
S52,在阳性数据集合查询密钥数据是否存在,存在则删除,同时将存储单元中该密钥的去重检测标识字段值-1;
S53,若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据集合查询密钥数据是否存在,存在则删除,同时将存储单元中该密钥的去重检测标识字段值-1。
5.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S6中,遍历指定存储单元,每取出一组密钥,判断该组密钥是否已存在于阳性数据的集合或溢出数据的集合中,若阳性数据的集合或溢出数据的集合中不存在该组密钥,表明该组密钥唯一,跳过不处理;若阳性数据的集合或溢出数据的集合中存在该组密钥,表明该组密钥可能重复,则判断保存可能重复统计结果的集合是否已存在该组密钥对应的Key键,若不存在,则创建<Key, Value>键值对,Key键为该组密钥,Value值初始化为List列表,该List列表添加该组密钥对应的存储位置信息,若已存在,表明已找到该组密钥Key键对应的重复密钥及其存储位置信息,则通过该组密钥为Key键获取指定键值对元素,Value值List列表添加该组密钥对应的存储位置信息,再将更新后的Key、Value键值对写回集合,完成指定键值对元素的更新。
6.如权利要求5所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S7中,密钥数据的精准去重,遍历保存数据可能重复统计结果的<Key, Value>集合,若某元素的Value列表的元素数量大于1,则表明找到Key键指示密钥的重复密钥,根据Value列表中保存的重复密钥的存储位置信息,对重复密钥进行剔除处理,只保留重复数据中的第1组密钥,并将该组密钥的去重检测标识字段值设置为0;若某元素的Value列表元素数量为1,则表明Key键指示密钥是唯一的,将该组密钥的去重检测标识字段值设置为0。
7.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S1中,确定系统预设的目标密钥总量S和存储单元个数N,单个存储单元根据密钥存储服务器内存、CPU硬件性能、数据库性能进行动态调整权值wt,则单个存储单元的存储容量n =S * wt,且保证N个存储单元的存储容量之和大于等于预设的目标密钥总量S。
8.如权利要求1所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,步骤S1中,所述布谷鸟过滤器的期望误判率fpp,每个下标位置能放元素个数b,散列函数的个数k,以及最大挤兑次数MaxNumKicks,在创建布谷鸟过滤器阶段,根据实际需求进行动态调整。
9.如权利要求2所述的基于布谷鸟过滤器的大数据量密钥的去重方法,其特征在于,在步骤S3中,根据存储单元个数一一对应创建布谷鸟过滤器,密钥存储时即进行密钥的布谷鸟去重初筛,多个布谷鸟过滤器在系统中并行进行,实现实时并行的高效去重查询。
10.一种基于布谷鸟过滤器的大数据量密钥数据去重系统,其特征在于,包括:
去重系统初始化模块:创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器,去重系统的初始化过程中,根据系统预设的目标密钥总量、存储单元个数,存储单元根据硬件参数不同得到相应的存储权值以及单个持久化存储单元预期存储容量;随即创建N个数据库表或N个文件;同时根据单个存储单元预期存储容量、预设期望误判率,计算布谷鸟过滤器每个下标位置能放元素个数,散列函数的个数,以及最大挤兑次数,创建对应布谷鸟过滤器,根据存储单元个数创建对应个数布谷鸟过滤器;
数据获取模块:用于从量子密钥分发系统、量子密钥中继网络系统密钥分发系统获取待存储、待去重检测的大数据量密钥数据;
分治存储模块:采用带权的负载均衡调度方法使得密钥进入对应的存储单元进行处理;
布谷鸟去重模块:筛选出阳性数据和溢出数据集合;
数据删除模块:删除阳性数据和溢出数据集合中的数据;
阳性数据和溢出数据处理模块:保存密钥数据信息;
精准去重模块:遍历保存密钥数据信息的集合,剔除或更新标识。
11.如权利要求10所述的基于布谷鸟过滤器的大数据量密钥数据去重系统,其特征在于,所述数据删除模块用于密钥数据进行删除,在密钥数据删除时,通过算法计算密钥存在情况,若判定密钥数据指纹存在则将该密钥从布谷鸟过滤器实例中删除,同时在阳性数据集合查询密钥数据是否存在,存在则删除,若判定密钥数据指纹不存在于布谷鸟过滤器实例中,则在溢出数据集合查询密钥数据是否存在,存在则删除,
同时将存储单元中该密钥的去重检测标识字段值-1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210774655.9A CN114844638B (zh) | 2022-07-03 | 2022-07-03 | 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210774655.9A CN114844638B (zh) | 2022-07-03 | 2022-07-03 | 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114844638A CN114844638A (zh) | 2022-08-02 |
CN114844638B true CN114844638B (zh) | 2022-09-20 |
Family
ID=82574873
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210774655.9A Active CN114844638B (zh) | 2022-07-03 | 2022-07-03 | 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114844638B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117290674B (zh) * | 2023-11-23 | 2024-04-05 | 浙江九州量子信息技术股份有限公司 | 一种大数据量随机比特序列重码统计和定位的方法和系统 |
CN118170758A (zh) * | 2024-03-08 | 2024-06-11 | 北京泰迪未来科技股份有限公司 | 一种海量数据内存存储空间优化的方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222088A (zh) * | 2019-05-20 | 2019-09-10 | 华中科技大学 | 基于插入位置选择的数据近似集合表示方法及系统 |
CN112148928A (zh) * | 2020-09-18 | 2020-12-29 | 鹏城实验室 | 一种基于指纹家族的布谷鸟过滤器 |
CN113535706A (zh) * | 2021-08-03 | 2021-10-22 | 重庆赛渝深科技有限公司 | 两阶段布谷鸟过滤器及基于两阶段布谷鸟过滤器的重复数据删除方法 |
CN113535705A (zh) * | 2021-08-03 | 2021-10-22 | 佛山赛思禅科技有限公司 | Sfad布谷鸟过滤器及基于sfad布谷鸟过滤器重复数据删除方法 |
CN113590606A (zh) * | 2021-09-27 | 2021-11-02 | 浙江九州量子信息技术股份有限公司 | 一种基于布隆过滤器的大数据量密钥去重方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10216966B2 (en) * | 2015-02-25 | 2019-02-26 | Netapp, Inc. | Perturb key technique |
US11461027B2 (en) * | 2017-07-18 | 2022-10-04 | Vmware, Inc. | Deduplication-aware load balancing in distributed storage systems |
CN109815234B (zh) * | 2018-12-29 | 2021-01-08 | 杭州中科先进技术研究院有限公司 | 一种流式计算模型下的多重布谷鸟过滤器 |
US11048757B2 (en) * | 2019-08-02 | 2021-06-29 | EMC IP Holding Company LLC | Cuckoo tree with duplicate key support |
CN111291388A (zh) * | 2019-12-06 | 2020-06-16 | 江苏海事职业技术学院 | 一种基于布谷鸟过滤器的云平台隐私保护方法 |
-
2022
- 2022-07-03 CN CN202210774655.9A patent/CN114844638B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110222088A (zh) * | 2019-05-20 | 2019-09-10 | 华中科技大学 | 基于插入位置选择的数据近似集合表示方法及系统 |
CN112148928A (zh) * | 2020-09-18 | 2020-12-29 | 鹏城实验室 | 一种基于指纹家族的布谷鸟过滤器 |
CN113535706A (zh) * | 2021-08-03 | 2021-10-22 | 重庆赛渝深科技有限公司 | 两阶段布谷鸟过滤器及基于两阶段布谷鸟过滤器的重复数据删除方法 |
CN113535705A (zh) * | 2021-08-03 | 2021-10-22 | 佛山赛思禅科技有限公司 | Sfad布谷鸟过滤器及基于sfad布谷鸟过滤器重复数据删除方法 |
CN113590606A (zh) * | 2021-09-27 | 2021-11-02 | 浙江九州量子信息技术股份有限公司 | 一种基于布隆过滤器的大数据量密钥去重方法及系统 |
Non-Patent Citations (1)
Title |
---|
基于改进布谷鸟搜索算法的TFT-LCD制造调度方法;刘庭宇等;《计算机系统应用》;20200315(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114844638A (zh) | 2022-08-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114844638B (zh) | 一种基于布谷鸟过滤器的大数据量密钥的去重方法及系统 | |
CN113590606B (zh) | 一种基于布隆过滤器的大数据量密钥去重方法及系统 | |
CN106407207B (zh) | 一种实时新增数据更新方法和装置 | |
CN110489405B (zh) | 数据处理的方法、装置和服务器 | |
CN106776967A (zh) | 基于时序聚合算法的海量小文件实时存储方法及装置 | |
CN106970958B (zh) | 一种流文件的查询与存储方法和装置 | |
CN105426375B (zh) | 一种关系网络的计算方法及装置 | |
CN111522502B (zh) | 数据去重方法、装置、电子设备及计算机可读存储介质 | |
CN108595268A (zh) | 一种基于MapReduce的数据分配方法、装置及计算机可读存储介质 | |
CN106407224A (zh) | 一种键值存储系统中文件压实的方法和装置 | |
CN111475105A (zh) | 监控数据存储方法、设备、服务器及存储介质 | |
EP4044014A1 (en) | Data reduction method and apparatus, computing device, and storage medium | |
CN110399333A (zh) | 删除快照的方法、设备和计算机程序产品 | |
CN107368545A (zh) | 一种基于MerkleTree变形算法的去重方法及装置 | |
CN106648891A (zh) | 基于MapReduce模型的任务执行方法和装置 | |
CN113360551B (zh) | 一种靶场中时序数据的存储与快速统计方法及系统 | |
CN111198847A (zh) | 一种适用于大数据集的数据并行处理方法、装置及系统 | |
CN114943021B (zh) | 一种tb级增量数据筛选方法和装置 | |
CN115576947A (zh) | 一种数据管理方法、装置、组合库、电子设备及存储介质 | |
CN114443629A (zh) | 一种集群布隆过滤器数据去重方法、终端设备及存储介质 | |
CN115221174A (zh) | 基于人工智能的数据分级存储方法、装置、设备及介质 | |
CN110032445B (zh) | 大数据聚集计算方法及装置 | |
CN113419792A (zh) | 一种事件处理方法、装置、终端设备和存储介质 | |
KR101826029B1 (ko) | 대용량 데이터의 클러스터 결과 분석 시스템 및 방법 | |
CN117951118B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |