CN105574076A - 一种基于Bloom Filter的键值对存储结构及方法 - Google Patents

一种基于Bloom Filter的键值对存储结构及方法 Download PDF

Info

Publication number
CN105574076A
CN105574076A CN201510847537.6A CN201510847537A CN105574076A CN 105574076 A CN105574076 A CN 105574076A CN 201510847537 A CN201510847537 A CN 201510847537A CN 105574076 A CN105574076 A CN 105574076A
Authority
CN
China
Prior art keywords
key
value
unit
layer
input
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.)
Granted
Application number
CN201510847537.6A
Other languages
English (en)
Other versions
CN105574076B (zh
Inventor
谢鲲
施文
文吉刚
张广兴
谢高岗
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan University
Original Assignee
Hunan University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hunan University filed Critical Hunan University
Priority to CN201510847537.6A priority Critical patent/CN105574076B/zh
Publication of CN105574076A publication Critical patent/CN105574076A/zh
Application granted granted Critical
Publication of CN105574076B publication Critical patent/CN105574076B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2453Query optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2291User-Defined Types; Storage management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Bloom?Filter的键值对存储结构及方法,存储结构包括k个不相同的哈希函数和m个用于存储value的存储单元;所述m个存储单元被分配成k个不同的块,每个块有m/k个单元;每一个单元带有L层,每一层有B个比特位。本发明在数据库交互查询、高速网络中资源定位、计算机网络监控等产生大量数据、需要进行键值对查询的应用领域,可以大大减少集合查询的时间,降低资源消耗。

Description

一种基于Bloom Filter的键值对存储结构及方法
技术领域
本发明涉及计算机网络领域和计算机系统存储领域,特别是特别是高性能、高吞吐量的交互查询的应用领域,具体是一种基于BloomFilter的键值对存储结构及方法。
背景技术
近年来,随着计算机的飞速发展,数据库,网络和其他应用中的集合规模呈几何增长。存储和查询键值(key,value)对是计算机系统中常见的任务,这就需要设计对应的键值对存储数据结构支持快速的键值对查询。键值对操作经常出现在网络和存储系统中,如key-value数据库MongoDB,CouchDB。每个放入到键值对存储系统中的唯一键(key)都对应一个value,例如(3,5)是一个键key为3,值value为5的键值对,将(3,5)存储到键值对存储系统后,可以通过查询键(key)为3,得到值(value)为5。
键值对操作通常包含下面四种操作:1、Query(key):对于指定键(key),查找对应的值(value)。2、Insert(key,value):将(key,value)键值对存入对应的键值对存储系统中。3、Delete(key,value):在对应的键值对存储系统中删除对应的键值对(key,value)。4、Update(key,newValue):将key对应的键值由value改为newValue。
设计一个高效的键值对存储结构带来了很大挑战。如,在传统计算机网络中,使用<源IP,目的IP,源端口,目的端口,协议号>一共104比特的5元组来标识一条流,每一条TCP流都会有对应的状态,如果将流的5元组作为键值对的key,将TCP流对应的状态作为value组成键值对(key,value)。如果采用线性结构进行网络流状态存储,并且直接将(key和value)作为元组直接存入。存储key(对应104个bit)需要大量的空间,而且在查找对应key的value的时候会消耗大量的时间,因此在高速计算机网络中,如何高效的存储这些信息,快速的查询对应流(key)的状态(value)成为挑战。
BloomFilter是一种能够表示集合、支持集合查询的简洁数据结构,它能够有效的表示数据集合。BloomFilter结构实质是将集合中元素通过k个哈希函数映射到位向量中。BloomFilter在达到其高效表示集合的同时,进行元素查询时却存在一定的假阳性错误,而不存在假阴性错误。虽然BloomFilter结构在元素查询时存在少量错误,但是由于它对存储空间的高效性,使得该数据结构自1970年由B.Bloom提出以来得到了比较广泛的应用。
但是传统的BloomFilter仅仅只能支持元素是否存在与否的从属查询。如果元素为key,那么只能支持key存在与否的从属查询,而无法支持(key,value)操作。因为bloomfilter无法直接存储value,因此并不能支持键值对的上述四种操作。要使得BloomFilter支持键值对的基本操作,必须要改进传统的BloomFilter,设计新的Bloomfilter结构,使得BloomFilter能够支持键值对的基本操作。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种基于BloomFilter的键值对存储结构及方法,大大减少集合查询的时间,降低资源消耗。
为解决上述技术问题,本发明所采用的技术方案是:一种基于BloomFilter的键值对存储结构,包括k个不相同的哈希函数和m个用于存储value的存储单元(哈希函数用来映射到存储单元中的位置);所述m个存储单元被分配成k个不同的块,每个块有m/k个单元;每一个单元带有L层,每一层有B个比特位(后文中简称为statusbf)。
本发明还提供了一种利用上述结构实现键值对操作的方法,包括步骤:
1)当要插入一个键值对(key,value)时,将value进行编码,编码后表示为V0V1V2……VB-1;其中Vi表示编码后的第i位,0≤i<B;接着对key使用k个哈希函数h1h2……hk,确定k个不同的位置h0(key)h1(key)……hk-1(key),然后对这k个不同位置的单元进行加操作,将value值插入;对于每个单元的第一个位将输入的value编码后对应的比特位Vj作为对应位的输入,0≤j<B;对于其它层使用该层的上一层的进位位作为该层的输入,每一层的每一个位最终结果等于当前层每一个位的本位和;
2)当要删除一个键值对(key,value)时,将value进行编码,编码后表示为V0V1V2……VB-1;其中Vi表示编码后的第i位,0≤i<B;接着对key使用k个哈希函数h1h2……hk,确定k个不同的位置h0(key)h1(key)……hk-1(key),然后对这k个不同位置的单元进行减操作,将value值删除;对于每个单元的第一个位将输入的value编码后对应的比特位Vj作为对应位的输入,0≤j<B;对于其它层使用该层的上一层的进位位作为该层的输入,每一层的每一个位最终结果等于当前层每一个位的本位差;
3)要查询一个键值key时,对k个不同位置h0(key)h1(key)……hk-1(key)的单元进行查询操作,对于k个位置的每个单元,对每一个位Si的每一层进行或操作,即然后通过所有位得到第k个单元查询结果Ti=S0S1……SB-1,1≤i≤k;最终查询结果Q等于每个单位的与操作,即Q=T1∧T2……∧TK
4)要将一个键值为key更新为newValue时,首先查询键值为key的value,然后重复步骤2),删除(key,newValue),最后重复步骤1),插入(key,newValue)。
与现有技术相比,本发明所具有的有益效果为:本发明在数据库交互查询、高速网络中资源定位、计算机网络监控等产生大量数据、需要进行键值对查询的应用领域,可以大大减少集合查询的时间,降低资源消耗。
附图说明
图1是改进的键值对BloomFilter结构,其中m表示所有单元的个数,k表示哈希函数的个数,L表示每个单元的层数,B表示数据的位数。
图2是插入操作示意图。其中表示的是第i个块,第j个单元的第p层在进行插入前的值,表示的是第i个块,第j个单元的第p层在进行插入后的值,表示的是第i个块,第j个单元的第p层的进位位。对于每一层,类似于加法器我们有:
C ( p ) i , j &lsqb; t + 1 &rsqb; = C ( p ) i , j &lsqb; t &rsqb; &CirclePlus; CAR ( p - 1 ) i , j
CAR ( p ) i , j = C ( p ) i , j &lsqb; t &rsqb; &Lambda;CAR ( p - 1 ) i , j
图3是删除操作示意图。其中表示的是第i个块,第j个单元的第p层在进行删除前的值,表示的是第i个块,第j个单元的第p层在进行删除后的值,表示的是第i个块,第j个单元的第p层的借位位。对于每一层,类似于减法器我们有:
C ( p ) i , j &lsqb; t + 1 &rsqb; = C ( p ) i , j &lsqb; t &rsqb; &CirclePlus; BOR ( p - 1 ) i , j
BOR ( p ) i , j = C &OverBar; ( p ) i , j &lsqb; t &rsqb; &Lambda;BQR ( p - 1 ) i , j
图4(a)、图4(b)、图4(c)是插入操作示意图,分别插入键值对(f1,0001),(f2,0010),(f3,0001),图4(d)、图4(f)是查询操作示意图,分别查询键值为f1,f3的值,图4(e)是删除操作示意图删除(f1,0001)。
图5实施环境数据详细信息,包含数据来源,数据时间,包大小,最大并发流个数,本实施例与最近几年研究成果进行了对比,其中包括,sBF是2006年sigcomm中的论文”BeyondBloomFilters:FromApproximateMembershipCheckstoApproximateStateMachines”提出的一种基于BloomFilter的键值对查询算法,该算法在BloomFilter的基础上将单元保存着数值,和计数器,如果有不同的值映射到相同的位置,就把存有不同值位置的值置为未知;kBF是2014年infocom中的论文“kBF:aBloomFilterforKey-ValueStoragewithanApplicationonApproximateStateMachines”提出的一种基于BloomFilter的键值对查询算法,该算法将value值进行编码后,对每一个映射到的单元进行异或,最后查询时将所有映射到的单元进行整体解码。
图6(a)~图6(d)是固定BloomFilter的长度m,在不同哈希函数个数下,使用三种不同算法stateBF与sBF和kBF,对于数据集1、2、3、4在假阳性误判率性能上的比较(假阳性是指查询的键key不存在于集合内,但查询结果显示键key存在,并且有对应的值value)。数据结果显示在所有的数据集下,我们所提出的算法stateBF的假阳性最小。其中在第一个数据集和第二个数据集下,由于第一个数据集和第二个数据集是日本和美国之间的流量数据集,因此TCP连接状态变化的很快,因此在相同位置映射不同的值使得这个位置变成未知的sbf算法的误判率就会很高,而在第三个和第四个数据集的情况下,是学校出口链路流量数据集,TCP连接状态变化相对较少,在相同位置如果映射同一种value值就会无法解码的kbf算法的误判率就会相对较高。
图7(a)~图7(d)是固定BloomFilter的长度m,在不同哈希函数个数下,使用三种不同算法stateBF与sBF和kBF,对于数据集1、2、3、4在假阴性误判率性能上的比较(假阴性是指查询的键key真实存在于集合内,但使用算法查询键key得到对应的值value与真实的值value不相同)。数据结果显示在所有的数据集下,我们所提出的算法stateBF的假阴性最小。同理,第一个数据集和第二个数据集是日本和美国之间的数据集,因此TCP连接状态变化的很快,因此在相同位置映射不同的值使得这个位置变成未知的sbf算法的假阴性率就会很高,而在第三个和第四个数据集的情况下,是学校之间的数据集,TCP连接状态变化相对较少,在相同位置如果映射同一种value值就会无法解码的kbf算法的假阴性就会相对较高。
具体实施方式
本实施中bloomfilter结构对应的参数为:m=24,k=3,L=3,B=4。即一共有3个哈希函数,24个单元,每单元有3层,每层有4个比特。图4(a)—(e)包含有插入,删除,查询操作示意图。
插入操作Insert(key,value)过程:当要插入一个键值对(key,value)时,将value进行编码,编码后表示为V0V1V2……VB-1(其中Vi(0≤i<B)表示编码后的第i位)。接着对key使用k个哈希函数h1h2……hk,确定k个不同的位置h0(key)h1(key)……hk-1(key),然后对这k个不同位置(h0(key)h1(key)……hk-1(key))的单元进行加操作,将value值插入。对于每个单元的每一个位(第i层(0≤i<L)第j个(0≤j<B)位,记为),相当于是一个半加器,对于第一层输入的value编码后对应的比特位(Vj(0≤j<B))作为对应位的输入,对于其它层使用它的上一层的进位位(第i层(0≤i<L)第j个(0≤j<B)的进位位记为)作为它的输入,每一层的每一个位最终结果等于当前层每一个位的本位和。即
C j i = C j i &CirclePlus; CAR j - 1 i
CAR j i = C j i &Lambda;CAR j - 1 i
图4(a)是插入键值对(f1,0001),首先使用3个不同哈希函数,哈希到3个不同的位置,然后分别对哈希到的单元,使用加操作,完成插入操作,即对每一层的每一个比特位看成加法器,第1层的输入是0001,其他层的输入是上一层的输出。图4(b)、图4(c)同理,是进行(f2,0010),(f3,0001)键值对的插入。
查询操作Query(key)过程:当要查询一个键值key时。首先对key使用k个哈希函数h0h1……hk-1,确定k个不同的位置h0(key)h1(key)……hk-1(key),然后对这k个不同位置(h0(key)h1(key)……hk-1(key))的单元进行查询操作。对于k个位置(h0(key)h1(key)……hk-1(key))的每个单元,我们对每一个位(记为Si)的每一层进行或操作然后通过所有位得到第k个单元查询结果Ti=S0S1……SB-1(1≤i≤k)。最终查询结果等于每个单位的与操作,即Q=T1∧T2……∧TK
图4(d)是查询键值为f1的值,首先使用3个哈希函数,哈希到三个不同的单元,对每一个单元使用或操作得到对应的值,图中第一个单元得到0001,第二个单元得到0011,第三个单元得到0001,最后将3个结果使用与操作得到最终结果0001,于是查询key的value结果为0001。同理4(f)是查询key为f3得到结果为0001的示意图。
删除操作Delete(key,value)过程:首先将value进行编码,编码后表示为V0V1V2……VB-1(其中Vi(0≤i<B)表示编码后的第i位)。接着对key使用k个哈希函数h0h1……hk-1,确定k个不同的位置h0(key)h1(key)……hk-1(key),然后对这k个不同位置(h0(key)h1(key)……hk-1(key))的单元进行减操作,将value值删除。对于每个单元的每一个位(第i层(0≤i<L)第j个(0≤j<B)位,记为),相当于是一个半减器,对于第一层输入的value编码后对应的比特位(Vj(0≤j<B))作为对应位的输入,对于其它层使用它的上一层的借位位(第i层(0≤i<L)第j个(0≤j<B)的借位位记为)作为它的输入,每一层的每一个位最终结果等于当前层每一个位的本位差。即
C j i = C j i &CirclePlus; BOR j - 1 i
BOR j i = C &OverBar; j i &Lambda;BOR j - 1 i
图4(e)是是删除键值对(f1,0001),首先使用3个不同哈希函数,哈希到3个不同的位置,然后分别对哈希到的单元,使用减操作,完成插入操作,即对每一层的每一个比特位看成加法器,第1层的输入是0001,其他层的输入是上一层的输出。结果如图所示。
更新操作Update(key,newValue)过程:对于我们要将一个键值为key更新为newValue时,首先查询键值为key的value,然后使用(2)操作,删除(key,value),最后在使用(1)操作,插入(key,newValue)。
本实施例是键值对BloomFilter,在一个高速网络中的对TCP流量状态的监控中的实际应用,用来存储和查询所有TCP流的状态。对于一条TCP流,将<源IP,目的IP,源端口,目的端口,协议号>作为键(key),将TCP流的三个标志位(ACK,RST,FIN)的所有可能(8种)作为value,由于所有可能状态为8个,编码后将B设置为8,即表示每一层有8个位。对于每一条新到来的流,首先使用查询Query(key)功能,查询新到来的流的当前状态,如果存在这条流,则使用更新操作Update(key,value),更新这条流的状态信息,如果这条流不存在则使用插入操作Insert(key,value)插入这条流的状态信息,如果这条流的FIN位为1,则使用删除Delete(key,value)删除这条流对应的状态信息。为了验证实施方案的性能,我们使用真实数据(MAWI以及校园网出口数据)来进行实验,数据详细信息如图5所示。
实施结果如图6(a)~图6(d),图7(a)~图7(d)所示。在图6(a)~图6(d),图7(a)~图7(d)中,我们算法的结果由stateBF所示,另外sBF和kBF是当前改进bloomfilter所使用的两种不同算法。图6(a)~图6(d)是固定长度m,在不同哈希函数个数下,stateBF与sBF和kBF在假阳性误判率性能上的比较,数据结果显示在所有的数据集下,我们所提出的算法stateBF的假阳性最小。图7(a)~图7(d)是固定长度m,在不同哈希函数个数下,stateBF与sBF和kBF前两种不同算法在假阴性误判率性能上的比较,数据结果显示在所有的数据集下,我们所提出的算法stateBF的假阴性最小。

Claims (2)

1.一种基于BloomFilter的键值对存储结构,其特征在于,包括k个不相同的哈希函数和m个用于存储value的存储单元;所述m个存储单元被分配成k个不同的块,每个块有m/k个单元;每一个单元带有L层,每一层有B个比特位。
2.一种利用权利要求1所述结构实现键值对操作的方法,其特征在于,包括以下操作:
1)插入操作:当要插入一个键值对(key,value)时,将value进行编码,编码后表示为V0V1V2......VB-1;其中Vi表示编码后的第i位,0≤i<B;接着对key使用k个哈希函数h1h2......hk,确定k个不同的位置h0(key)h1(key)......hk-1(key),然后对这k个不同位置的单元进行加操作,将value值插入;对于每个单元的第一个位将输入的value编码后对应的比特位Vj作为对应位的输入,0≤j<B;对于其它层使用该层的上一层的进位位作为该层的输入,每一层的每一个位最终结果等于当前层每一个位的本位和;
2)删除操作:当要删除一个键值对(key,value)时,将value进行编码,编码后表示为V0V1V2......VB-1;其中Vi表示编码后的第i位,0≤i<B;接着对key使用k个哈希函数h1h2......hk,确定k个不同的位置h0(key)h1(key)......hk-1(key),然后对这k个不同位置的单元进行减操作,将value值删除;对于每个单元的第一个位将输入的value编码后对应的比特位Vj作为对应位的输入,0≤j<B;对于其它层使用该层的上一层的借位位作为该层的输入,每一层的每一个位最终结果等于当前层每一个位的本位差;
3)查询操作:要查询一个键值key时,对k个不同位置h0(key)h1(key)......hk-1(key)的单元进行查询操作,对于k个位置的每个单元,对每一个位Si的每一层进行或操作,即然后通过所有位得到第k个单元查询结果Ti=S0S1......SB-1,1≤i≤k;最终查询结果Q等于每个单位的与操作,即Q=T1∧T2......∧TK
4)更新操作:要将一个键值为key更新为newValue时,首先查询键值为key的value,然后重复步骤2),删除(key,newValue),最后重复步骤1),插入(key,newValue)。
CN201510847537.6A 2015-11-27 2015-11-27 一种基于Bloom Filter的键值对存储结构及方法 Active CN105574076B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510847537.6A CN105574076B (zh) 2015-11-27 2015-11-27 一种基于Bloom Filter的键值对存储结构及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510847537.6A CN105574076B (zh) 2015-11-27 2015-11-27 一种基于Bloom Filter的键值对存储结构及方法

Publications (2)

Publication Number Publication Date
CN105574076A true CN105574076A (zh) 2016-05-11
CN105574076B CN105574076B (zh) 2019-02-12

Family

ID=55884207

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510847537.6A Active CN105574076B (zh) 2015-11-27 2015-11-27 一种基于Bloom Filter的键值对存储结构及方法

Country Status (1)

Country Link
CN (1) CN105574076B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562804A (zh) * 2017-08-08 2018-01-09 上海数据交易中心有限公司 数据缓存服务系统及方法、终端
CN108021678A (zh) * 2017-12-07 2018-05-11 北京理工大学 一种结构紧凑的键值对存储结构及快速键值对查找方法
CN109542939A (zh) * 2018-11-21 2019-03-29 中国人民解放军国防科技大学 一种基于纠删码的count-min摘要方法及装置
CN112600834A (zh) * 2020-12-10 2021-04-02 同盾控股有限公司 内容安全识别方法及装置、存储介质和电子设备

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1737799A (zh) * 2005-09-09 2006-02-22 湖南大学 一种基于分档BloomFilter结构的查询方法
US20080071903A1 (en) * 2006-09-19 2008-03-20 Schuba Christoph L Method and apparatus for monitoring a data stream
CN101577721A (zh) * 2008-12-05 2009-11-11 湖南大学 一种索引拆分布鲁姆过滤器及其插入、删除和查询方法
CN101655861A (zh) * 2009-09-08 2010-02-24 中国科学院计算技术研究所 基于双计数布鲁姆过滤器的哈希方法和哈希装置
CN101901316A (zh) * 2010-07-15 2010-12-01 哈尔滨工程大学 基于Bloom Filter的数据完整性保护方法
CN101923568A (zh) * 2010-06-23 2010-12-22 北京星网锐捷网络技术有限公司 布隆过滤器的元素增加、删除方法以及布隆过滤器
CN102110171A (zh) * 2011-03-22 2011-06-29 湖南大学 基于树形结构的布鲁姆过滤器的查询与更新方法
JP2011171995A (ja) * 2010-02-18 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> データ判別装置、データ判別方法およびデータ判別プログラム
CN103020296A (zh) * 2012-12-31 2013-04-03 湖南大学 一种高精度多维计数布鲁姆过滤器及其大数据处理方法
CN103970744A (zh) * 2013-01-25 2014-08-06 华中科技大学 一种可扩展的重复数据检测方法
CN104375782A (zh) * 2014-10-21 2015-02-25 浪潮电子信息产业股份有限公司 千万级小文件数据的一种读写解决方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1737799A (zh) * 2005-09-09 2006-02-22 湖南大学 一种基于分档BloomFilter结构的查询方法
US20080071903A1 (en) * 2006-09-19 2008-03-20 Schuba Christoph L Method and apparatus for monitoring a data stream
CN101577721A (zh) * 2008-12-05 2009-11-11 湖南大学 一种索引拆分布鲁姆过滤器及其插入、删除和查询方法
CN101655861A (zh) * 2009-09-08 2010-02-24 中国科学院计算技术研究所 基于双计数布鲁姆过滤器的哈希方法和哈希装置
JP2011171995A (ja) * 2010-02-18 2011-09-01 Nippon Telegr & Teleph Corp <Ntt> データ判別装置、データ判別方法およびデータ判別プログラム
CN101923568A (zh) * 2010-06-23 2010-12-22 北京星网锐捷网络技术有限公司 布隆过滤器的元素增加、删除方法以及布隆过滤器
CN101901316A (zh) * 2010-07-15 2010-12-01 哈尔滨工程大学 基于Bloom Filter的数据完整性保护方法
CN102110171A (zh) * 2011-03-22 2011-06-29 湖南大学 基于树形结构的布鲁姆过滤器的查询与更新方法
CN103020296A (zh) * 2012-12-31 2013-04-03 湖南大学 一种高精度多维计数布鲁姆过滤器及其大数据处理方法
CN103970744A (zh) * 2013-01-25 2014-08-06 华中科技大学 一种可扩展的重复数据检测方法
CN104375782A (zh) * 2014-10-21 2015-02-25 浪潮电子信息产业股份有限公司 千万级小文件数据的一种读写解决方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
XIAOMEI TIAN 等: "Exact set reconciliation based on bloom filters", 《2011 INTERNATIONAL CONFERENCE ON COMPUTER SCIENCE AND NETWORK TECHNOLOGY (ICCSNT)》 *
XIONG S 等: "kBF: A Bloom Filter for key-value storage with an application on approximate state machines", 《IEEE INFOCOM 2014 - IEEE CONFERENCE ON COMPUTER COMMUNICATIONS》 *
谢鲲: "布鲁姆过滤器查询算法及其应用研究", 《中国博士学位论文全文数据库 信息科技辑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562804A (zh) * 2017-08-08 2018-01-09 上海数据交易中心有限公司 数据缓存服务系统及方法、终端
CN108021678A (zh) * 2017-12-07 2018-05-11 北京理工大学 一种结构紧凑的键值对存储结构及快速键值对查找方法
CN108021678B (zh) * 2017-12-07 2022-05-17 北京理工大学 一种结构紧凑的键值对存储结构及快速键值对查找方法
CN109542939A (zh) * 2018-11-21 2019-03-29 中国人民解放军国防科技大学 一种基于纠删码的count-min摘要方法及装置
CN112600834A (zh) * 2020-12-10 2021-04-02 同盾控股有限公司 内容安全识别方法及装置、存储介质和电子设备
CN112600834B (zh) * 2020-12-10 2023-03-24 同盾控股有限公司 内容安全识别方法及装置、存储介质和电子设备

Also Published As

Publication number Publication date
CN105574076B (zh) 2019-02-12

Similar Documents

Publication Publication Date Title
Demertzis et al. Dynamic searchable encryption with small client storage
KR102266756B1 (ko) Kvs 트리
CN102915347B (zh) 一种分布式数据流聚类方法及系统
US10810257B2 (en) Fast processing of path-finding queries in large graph databases
CN101655861B (zh) 基于双计数布鲁姆过滤器的哈希方法和哈希装置
CN103561133B (zh) 一种ip地址归属信息索引方法及快速查询方法
CN105574076A (zh) 一种基于Bloom Filter的键值对存储结构及方法
US10572442B2 (en) Systems and methods for providing distributed tree traversal using hardware-based processing
CN110291518A (zh) 合并树无用单元指标
CN102110171B (zh) 基于树形结构的布鲁姆过滤器的查询与更新方法
CN107391554A (zh) 高效分布式局部敏感哈希方法
CN105574054B (zh) 一种分布式缓存范围查询方法、装置及系统
CN104298541A (zh) 云存储系统的数据分布算法及其装置
CN106649708A (zh) 存储数据的方法和装置
CN109408681A (zh) 一种字符串匹配方法、装置、设备及可读存储介质
CN110535825B (zh) 一种特征网络流的数据识别方法
CN106599091B (zh) 基于键值存储的rdf图结构存储和索引方法
CN104809135A (zh) 一种数据存取方法及装置
CN106407224A (zh) 一种键值存储系统中文件压实的方法和装置
CN105868190A (zh) 一种在etl中优化任务处理的方法及系统
CN105183880A (zh) 一种哈希连接的方法及装置
CN109597829B (zh) 一种实现可搜索加密关系型数据库缓存的中间件方法
CN107330094A (zh) 动态存储键值对的布鲁姆过滤器树结构及键值对存储方法
CN108460030A (zh) 一种基于改进的布隆过滤器的集合元素判断方法
CN108093024B (zh) 一种基于数据频度的分类路由方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant