CN107368596A - 一种布隆过滤器查询集合元素的方法及装置 - Google Patents
一种布隆过滤器查询集合元素的方法及装置 Download PDFInfo
- Publication number
- CN107368596A CN107368596A CN201710617088.5A CN201710617088A CN107368596A CN 107368596 A CN107368596 A CN 107368596A CN 201710617088 A CN201710617088 A CN 201710617088A CN 107368596 A CN107368596 A CN 107368596A
- Authority
- CN
- China
- Prior art keywords
- character string
- numerical value
- bloom filter
- mod
- hashcode
- 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.)
- Pending
Links
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/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (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
本发明公开了一种布隆过滤器查询集合元素的方法,将待查询的字符串先通过Hashcode函数运算,再通过K个不同Mod函数运算,最终确定在K个布隆过滤器的位数组中字符串对应位置的数值,并通过数值判断字符串是否属于集合中的元素,极大地节省了确定字符串是否属于集合元素的过程中函数运算所耗费的时间,提高了整个布隆过滤器系统的执行效率,本发明还公开了一种布隆过滤器查询集合元素的装置,具有上述有益效果。
Description
技术领域
本发明涉及布隆过滤器领域,特别是涉及一种布隆过滤器查询集合元素的方法及装置。
背景技术
布隆过滤器是一种空间效率很高的随机数据结构,它的原理是:当一个元素被加入集合时,通过k个Hash函数将这个元素映射成一个位阵列中的K个点,并把它们设置为特定的数值,以记录该元素在集合中。检索时,我们只要通过相同的Hash函数运算找到该元素在布隆过滤器的位阵列中对应位置,看看这些点是不是预先设置的特定的数值,就(大约)知道集合中有没有它了。
但是由于无论是通过布隆过滤器记录集合中的元素,还是通过布隆过滤器确定某个字符串是否在集合内,都需要采用相对复杂的Hash函数进行运算,导致运算所耗费的时间相当长,从而造成整个系统的执行效率低的问题。
发明内容
本发明的目的是提供一种布隆过滤器查询集合元素的方法,解决了确定字符串是否属于集合中的元素时,运算时间过长的问题,提高了运算效率和系统的执行效率。
为解决上述技术问题,本发明提供一种布隆过滤器查询集合元素的方法,可以包括:
将待查询的字符串通过Hashcode函数运算,获得运算结果;将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果;根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值;根据所述数值判断所述字符串是否属于集合中的元素;其中,所述K为正整数。
其中,在将待查询的字符串通过Hashcode函数运算之前,还包括:
将所述集合中的各个元素均通过所述Hashcode函数和K个不同的所述Mod函数运算,确定每个所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值,以便记录所述元素属于所述集合中。
其中,所述将所述运算结果分别通过K个不同的Mod函数进行求余运算包括:
将所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
其中,所述根据所述数值判断所述字符串是否属于集合中的元素包括:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
其中,在所述字符串不属于集合中的元素之后,还包括:
在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
本发明还提供了一种布隆过滤器查询集合元素的装置,包括:
Hashcode运算模块,用于将待查询的字符串通过Hashcode函数运算,获得运算结果;
求余运算模块,用于将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果;
查询数值模块,用于根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值;
判断模块,用于根据所述数值判断所述字符串是否属于集合中的元素;其中,所述K为正整数。
其中,还包括:
数值设置模块,用于在将待查询的字符串通过Hashcode函数运算之前,将所述集合中的各个元素均通过所述Hashcode函数和K个不同的所述Mod函数运算,确定每个所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值,以便记录所述元素属于所述集合中。
其中,所述求余运算模块用于:
将所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
其中,所述判断模块用于:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
其中,还包括:
数值变更模块,用于在所述字符串不属于集合中的元素之后,在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
本发明所提供的布隆过滤器查询集合元素的方法,将字符串通过Hashcode函数运算后,再通过K个Mod函数运算,最终确定字符串在K个布隆过滤器的位阵列中对应位置的数值,并根据数值判断字符串是否属于集合中的元素,相对于现有技术中通过Hash函数运算,确定多个布隆过滤器的位阵列对应位置的数值,由于一个Hashcode函数和K个Mod函数的运算相对于K个Hash函数的运算过程要简单的多,且所耗费的运算时间也要少的多,所以本发明的运算函数相对于Hash函数在极大程度上节省了运算流程及运算时间,从而缩短了确定字符串是否属于集合元素所耗费的时间,提高了整个程序的执行效率以及整个系统的性能。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的布隆过滤器查询集合元素的一种具体实施方式的流程图;
图2为本发明提供的集合中元素映射至布隆过滤器一种具体实施方式的示意图;
图3为本发明实施例提供的布隆过滤器查询集合元素的装置的结构框图。
具体实施方式
对于现有技术中,将某个集合中的元素映射到布隆过滤器时,一般都是采用多个不同的Hash函数进行运算后,在布隆过滤器的位阵列中确定对应的位置,并设置该位置的数值。采用Hash函数作为过滤算法,具有低错误率和低空间复杂度的特点,但是运算耗费的时间非常的长。
经分析发现,每个Hash函数可以视为Hashcode函数和Mod函数两部分,而集合中每个元素映射到布隆过滤器中时,需要通过多个不同的Hash函数运算,也即是对每个Hash函数的运算都需要通过一个Hashcode函数和Mod函数进行运算,又因为集合中各个元素都不相同,Hashcode函数的运算具有唯一性,所以当各个元素通过同一个Hashcode函数运算时,结果必然都不相同。
由此本发明中采用一种Hash函数的改进函数作为布隆过滤器的过滤算法,对每个字符串都进行一次对同一个Hashcode函数运算,再分别对多个Mod函数进行运算,最后映射到布隆过滤器中,如果一共有K个Hash函数,那么本发明中,只需要先进行一个Hashcode函数和K个Mod函数的运算,相对于现有技术,就节省了K-1个Hashcode函数的运算时间,对应的在确定字符串是否属于元素中的集合时,也采用相同的运算方式,也能节省K-1个Hashcode函数的运算时间,这在很大程度上降低了运算的复杂程度,节省了运算时间。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的布隆过滤器查询集合元素的一种具体实施方式的流程图如图1所示,可以包括:
步骤S101:将待查询的字符串通过Hashcode函数运算,获得运算结果。
具体的,待查询的字符串为需要确定是否为集合中的元素的字符串。
步骤S102:将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果。
需要说明的是,本发明中的K值为正整数,从布隆过滤器错误率进行考虑,一般认为当K=7时,错误率最低,所以比较优选的方式是K=7,但是K取其他正整数也能实现本发明的技术方案,但是一般来说,K大于或等于2。
另外,如果采用多个不同的Hashcode对字符串运算后,再通过一个Mod函数运算,也能够达到本发明节省整个程序所耗费时间的目的,但是Hashcode函数对不同的字符串运算结果具有唯一性,而Mod函数对不同的字符串的运算结果具有很高的重复率,各个字符串最终映射到布隆过滤器位阵列中的对应位置重复的情况也会比较多,最终导致通过位阵列中对应位置的数值,判断字符串是否属于集合中的元素的结果是不准确的。
所以,比较优选的实施方式采用一个Hashcode函数和多个不同的Mod函数进行运算。
步骤S103:根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值。
步骤S104:根据所述数值判断所述字符串是否属于集合中的元素。
基于上述实施例,一般情况下,集合中的元素映射到布隆过滤器中所采用的方法和确定某个字符串是否属于元素中的集合而查找布隆过滤器中对应的位置的方式是相互对应且相同的,但是这并不是绝对的,例如还同样采用K个Hash函数映射集合中的元素,但是函数中Hashcode函数部分设置成相同的函数,最终映射到布隆过滤器的位阵列的对应位置也和采用一个Hashcode函数和多个Mod函数映射的位置相同,也能够按照上述实施例的方法确定字符串是否属于集合中的元素。
但是为了程序简单的原则,本发明的一种具体实施例中,可以包括:
在将待查询的字符串通过Hashcode函数运算之前,将所述集合中的各个元素通过所述Hashcode函数和K个不同的所述Mod函数运算,确定所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值。
对于集合中的元素映射到布隆过滤器中的过程,可参考图2,图2为本发明提供的集合中元素映射至布隆过滤器一种具体实施方式的示意图,如图2所示,A1、A2至An都是集合中的元素,而Hashcode1至Hashcoden均为同一种Hashcode函数,在图2中简写为Hcode1至Hcoden,Mod1至ModK是不同的求余函数。在映射过程中,对于A1先通过Hcode1运算后得到一个唯一值,将该唯一值再分别通过Mod1至ModK函数求余。
具体的,例如,对于A1先通过Hcode1运算后得到一个唯一值为10,Mod1的除数为7,那么该唯一值通过Mod1求余后结果为3,则A1在第一个布隆过滤器的位阵列中对应的位置为第三个位置,如果Mod2的除数为3,求余后结果为1,那么A1在第二个布隆过滤的位阵列中的对应位置为第一个位置,以此类推可以确定A1在K个布隆过滤器的位阵列中的对应位置。
而对于A2先通过Hcode2运算后得到一个唯一值为11,通过Mod1函数求余后,结果为4,则A2在第一个布隆过滤器的位阵列中对应的位置为第四个位置,对于A3先通过Hcode3运算后得到一个唯一值为13,通过Mod1函数求余后,结果为6,则A2在第一个布隆过滤器的位阵列中对应的位置为第六个位置,以此类推,可以确定A1至An在每个布隆过滤器中所有的对应位置,在判断某个字符串是否属于集合中的元素时,也采用相同的运算方式确定字符串到布隆过滤器中的所有的对应位置。
基于上述实施例,为了减小通过Mod函数求得最简的余数,本发明的一种具体实施例中,可以包括:
将字符串通过Hashcode函数运算的所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
具体的,由于在求余函数中,如果除数是3,则余数只能是1或2,如果除数是5,则余数可能为1、2、3、4,所以除数取值越大,运算后余数可能的个数就越多,各个元素在同一个布隆过滤器中的对应位置重复的可能性就越小,所以应尽量取相对较大的数作为Mod函数的除数。
基于上述实施例,确定字符串在布隆过滤器中的对应位置后,需要根据对应位置的数值进行判断字符串是否属于集合中的元素,但是对于对应位置的数值设置,可以是二进制数值,也可以是十进制还可以是十六进制数值,只要能表示元素是否为集合中的元素即可。由于只存在元素属于和不属于集合这两种情况,可以采用二进制的表示方式,本发明的一种具体实施例中,可以包括:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
需要说明的是,采用二进制数值的设置方法,是为了降低程序的复杂程度而选取的一种较为优选的实施方式,但这并不是本发明的唯一实施方式,也可以采取其他进制的数值,在记录该元素是否存在于集合中的同时,还能够记录是第几个集合元素,但这种实施方式会使得映射程序变得复杂,所以这并不是本发明的必要技术特征。
基于上述任意实施例,考虑到需要将某个字符串加入到集合中时,需要先判断集合中是否已经包含该字符串元素,只有在集合中没有该字符串,才将该字符串加入集合中,为此,本发明的另一具体实施例中在所述字符串不属于集合中的元素之后,还可以包括:
在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
下面对本发明实施例提供的布隆过滤器查询集合元素的装置进行介绍,下文描述的布隆过滤器查询集合元素的装置与上文描述的布隆过滤器查询集合元素的方法可相互对应参照。
图3为本发明实施例提供的布隆过滤器查询集合元素的装置的结构框图,参照图3布隆过滤器查询集合元素的装置可以包括:
Hashcode运算模块100,用于将待查询的字符串通过Hashcode函数运算,获得运算结果;
求余运算模块200,用于将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果;
查询数值模块300,用于根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值;
判断模块400,用于根据所述数值判断所述字符串是否属于集合中的元素;其中,所述K为正整数。
作为一种具体实施方式,本发明所提供的布隆过滤器查询集合元素的装置还可以进一步包括:
数值设置模块,用于在将待查询的字符串通过Hashcode函数运算之前,将所述集合中的各个元素通过所述Hashcode函数和K个不同的所述Mod函数运算,确定所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值。
可选的,所述求余运算模块200用于:
将所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
可选的,所述判断模块400用于:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
作为一种具体实施方式,本发明所提供的布隆过滤器查询集合元素的装置还可以进一步包括:
数值变更模块,用于在所述字符串不属于集合中的元素之后,在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
本实施例的布隆过滤器查询集合元素的装置用于实现前述的布隆过滤器查询集合元素的方法,因此布隆过滤器查询集合元素的装置中的具体实施方式可见前文中的布隆过滤器查询集合元素的方法的实施例部分,例如,Hashcode运算模块100用于实现上述布隆过滤器查询集合元素的方法中步骤S101,求余运算模块200,查询数值模块300,判断模块400,分别用于实现上述布隆过滤器查询集合元素的方法中步骤S101,S102,S103和S104,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本发明所提供的布隆过滤器查询集合元素的方法以及装置进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种布隆过滤器查询集合元素的方法,其特征在于,包括:
将待查询的字符串通过Hashcode函数运算,获得运算结果;
将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果;
根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值;
根据所述数值判断所述字符串是否属于集合中的元素;
其中,所述K为正整数。
2.根据权利要求1所述的方法,其特征在于,在将待查询的字符串通过Hashcode函数运算之前,还包括:
将所述集合中的各个元素均通过所述Hashcode函数和K个不同的所述Mod函数运算,确定每个所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值,以便记录所述元素属于所述集合中。
3.根据权利要求2所述的方法,其特征在于,所述将所述运算结果分别通过K个不同的Mod函数进行求余运算包括:
将所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述根据所述数值判断所述字符串是否属于集合中的元素包括:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
5.根据权利要求4所述的方法,其特征在于,在所述字符串不属于集合中的元素之后,还包括:
在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
6.一种布隆过滤器查询集合元素的装置,其特征在于,包括:
Hashcode运算模块,用于将待查询的字符串通过Hashcode函数运算,获得运算结果;
求余运算模块,用于将所述运算结果分别通过K个不同的Mod函数进行求余运算,获得K个求余结果;
查询数值模块,用于根据K个所述求余结果,分别查询K个布隆过滤器的位数组中所述字符串对应位置预先设置的数值;
判断模块,用于根据所述数值判断所述字符串是否属于集合中的元素;
其中,所述K为正整数。
7.根据权利要求6所述的装置,其特征在于,还包括:
数值设置模块,用于在将待查询的字符串通过Hashcode函数运算之前,将所述集合中的各个元素均通过所述Hashcode函数和K个不同的所述Mod函数运算,确定每个所述元素映射到K个布隆过滤器的位数组中对应的位置,并设置对应的位置的数值,以便记录所述元素属于所述集合中。
8.根据权利要求7所述的装置,其特征在于,所述求余运算模块具体用于:
将所述运算结果通过以素数为除数的K个所述Mod函数进行求余运算,且各个所述Mod函数的除数均不相同。
9.根据权利要求6至8任一项所述的装置,其特征在于,所述判断模块具体用于:
判断所述字符串K个对应位置的数值是否均为1,如果是,则所述字符串属于集合中的元素,如果否,则所述字符串不属于集合中的元素。
10.根据权利要求9所述的装置,其特征在于,还包括:
数值变更模块,用于在所述字符串不属于集合中的元素之后,在将所述字符串加入所述集合中时,更改所述字符串在K个布隆过滤器的位数组中对应位置的数值,使所述字符串的对应位置的数值均为1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710617088.5A CN107368596A (zh) | 2017-07-26 | 2017-07-26 | 一种布隆过滤器查询集合元素的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710617088.5A CN107368596A (zh) | 2017-07-26 | 2017-07-26 | 一种布隆过滤器查询集合元素的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107368596A true CN107368596A (zh) | 2017-11-21 |
Family
ID=60306926
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710617088.5A Pending CN107368596A (zh) | 2017-07-26 | 2017-07-26 | 一种布隆过滤器查询集合元素的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107368596A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209874A (zh) * | 2019-04-24 | 2019-09-06 | 北京奇艺世纪科技有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN112069366A (zh) * | 2020-08-28 | 2020-12-11 | 喜大(上海)网络科技有限公司 | 召回确定方法、装置、设备及存储介质 |
CN112800055A (zh) * | 2021-01-18 | 2021-05-14 | 湖北宸威玺链信息技术有限公司 | 基于布隆过滤器的数据验真方法及系统及装置及介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080256094A1 (en) * | 2007-04-12 | 2008-10-16 | Cisco Technology, Inc. | Enhanced bloom filters |
US20100077107A1 (en) * | 2008-09-19 | 2010-03-25 | Oracle International Corporation | Storage-side storage request management |
CN101901248A (zh) * | 2010-04-07 | 2010-12-01 | 北京星网锐捷网络技术有限公司 | 一种布隆过滤器的生成、更新以及查询元素方法和装置 |
CN101923568A (zh) * | 2010-06-23 | 2010-12-22 | 北京星网锐捷网络技术有限公司 | 布隆过滤器的元素增加、删除方法以及布隆过滤器 |
CN104102714A (zh) * | 2014-07-16 | 2014-10-15 | 上海交通大学 | 基于累加器和布隆过滤器的外包数据查询验证方法及系统 |
-
2017
- 2017-07-26 CN CN201710617088.5A patent/CN107368596A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080256094A1 (en) * | 2007-04-12 | 2008-10-16 | Cisco Technology, Inc. | Enhanced bloom filters |
US20100077107A1 (en) * | 2008-09-19 | 2010-03-25 | Oracle International Corporation | Storage-side storage request management |
CN101901248A (zh) * | 2010-04-07 | 2010-12-01 | 北京星网锐捷网络技术有限公司 | 一种布隆过滤器的生成、更新以及查询元素方法和装置 |
CN101923568A (zh) * | 2010-06-23 | 2010-12-22 | 北京星网锐捷网络技术有限公司 | 布隆过滤器的元素增加、删除方法以及布隆过滤器 |
CN104102714A (zh) * | 2014-07-16 | 2014-10-15 | 上海交通大学 | 基于累加器和布隆过滤器的外包数据查询验证方法及系统 |
Non-Patent Citations (1)
Title |
---|
JUEFAN_C: "布隆过滤器的改进及其应用实践", 《博客园》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110209874A (zh) * | 2019-04-24 | 2019-09-06 | 北京奇艺世纪科技有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN110209874B (zh) * | 2019-04-24 | 2021-08-20 | 北京奇艺世纪科技有限公司 | 信息处理方法、装置、电子设备及存储介质 |
CN112069366A (zh) * | 2020-08-28 | 2020-12-11 | 喜大(上海)网络科技有限公司 | 召回确定方法、装置、设备及存储介质 |
CN112069366B (zh) * | 2020-08-28 | 2024-02-09 | 喜大(上海)网络科技有限公司 | 召回确定方法、装置、设备及存储介质 |
CN112800055A (zh) * | 2021-01-18 | 2021-05-14 | 湖北宸威玺链信息技术有限公司 | 基于布隆过滤器的数据验真方法及系统及装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111125447A (zh) | 一种元数据访问方法、装置、设备及可读存储介质 | |
CN110008743B (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN107368596A (zh) | 一种布隆过滤器查询集合元素的方法及装置 | |
CN103559027A (zh) | 一种key与value分开存储的key-value存储系统设计方法 | |
US10838963B2 (en) | Optimized access for hierarchical low cardinality value synopsis in analytical databases | |
US20040268106A1 (en) | Method and system for detecting the validity of and recovering configuration data | |
CN104765665A (zh) | 一种测试硬盘的方法及装置 | |
CN109377383A (zh) | 产品数据同步方法、装置、计算机设备及存储介质 | |
CN106569750A (zh) | 一种数据压缩方法及装置 | |
CN111198809A (zh) | 接口自动化测试方法和装置 | |
CN108205623A (zh) | 用于共享目录的方法和装置 | |
CN110321457A (zh) | 访问日志解析规则生成方法及装置、日志解析方法及系统 | |
CN103714010B (zh) | 存储设备写入方法及存储设备 | |
CN108733324A (zh) | 一种固态硬盘的数据读写方法、装置、设备及存储介质 | |
CN110504002B (zh) | 一种硬盘数据一致性测试方法与装置 | |
CN110059088B (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN107391040A (zh) | 一种存储阵列磁盘io调度的方法及装置 | |
CN108573172A (zh) | 一种数据校验、存储方法及装置 | |
CN114281538A (zh) | 内存参数调整方法、装置、设备和介质 | |
CN111341374B (zh) | 存储器的测试方法、装置及可读存储器 | |
CN110059087B (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN108304469A (zh) | 用于字符串模糊匹配的方法和装置 | |
CN104572921A (zh) | 一种跨数据中心的数据同步方法和装置 | |
CN110928910B (zh) | 高速读写Shapfile中的矢量要素的方法和装置 | |
CN107943415A (zh) | 基于fat文件系统的查找空闲簇的方法和系统 |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171121 |
|
RJ01 | Rejection of invention patent application after publication |