CN109150161B - 一种用于海明空间下近似成员查询的布隆过滤电路 - Google Patents

一种用于海明空间下近似成员查询的布隆过滤电路 Download PDF

Info

Publication number
CN109150161B
CN109150161B CN201810705401.5A CN201810705401A CN109150161B CN 109150161 B CN109150161 B CN 109150161B CN 201810705401 A CN201810705401 A CN 201810705401A CN 109150161 B CN109150161 B CN 109150161B
Authority
CN
China
Prior art keywords
gate
bit string
module
random
input end
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
Application number
CN201810705401.5A
Other languages
English (en)
Other versions
CN109150161A (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.)
Ningbo University
Original Assignee
Ningbo 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 Ningbo University filed Critical Ningbo University
Priority to CN201810705401.5A priority Critical patent/CN109150161B/zh
Publication of CN109150161A publication Critical patent/CN109150161A/zh
Application granted granted Critical
Publication of CN109150161B publication Critical patent/CN109150161B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/20Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits characterised by logic function, e.g. AND, OR, NOR, NOT circuits
    • H03K19/21EXCLUSIVE-OR circuits, i.e. giving output if input signal exists at only one input; COINCIDENCE circuits, i.e. giving output only if all input signals are identical

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种用于海明空间下近似成员查询的布隆过滤电路,特点是包括多个并联的过滤单元和一个或门,过滤单元的输入端与输入信号连接,过滤单元的输出端与或门的输入端连接,或门的输出端输出过滤信号,优点在于多个并联的过滤单元和一个或门构成一个用于海明空间下近似成员查询的布隆过滤电路,实现了海明空间下的近似成员查询问题,而且能够适用于不同粒度的近似成员查询。

Description

一种用于海明空间下近似成员查询的布隆过滤电路
技术领域
本发明涉及一种布隆过滤器,尤其是涉及一种用于海明空间下近似成员查询的布隆过滤电路。
背景技术
现实生活中存在大量集合成员查询问题,即判断一个查询对象是否是一个数据集的成员。例如,安全官员想要检查某未知的物质(具有某些可检测的高维特征)是否属于清单所列的危险化学品;网络管理员想要知道某用户的行为特征是否有害;摄影比赛裁判想检查提交的照片是从与某一张大型数据库中的照片类似,以上的问题可以统称为近似成员查询。这些查询都需要判断查询数据与集合中数据的距离。查询数据与目标数据的距离越近,数据的价值就越高。如果是低维的小数据集,可通过线性查找解决,但是对一个海量的高维数据集采用线性查找匹配的话,会非常耗时,很多情况下无法满足实时的需要。为提高处理的速度,可以设置一个高维数据过滤器代表目标数据集合,根据距离过滤掉大部分查询数据,少量剩下的数据可以再通过常规方法进一步处理,可显著提高系统的整体性能。
对于近似成员查询问题的学术研究还刚刚起步,目前对于该问题的主要研究的方向是基于局部敏感哈希函数构建的布隆过滤器。布隆过滤器是一种支持快速查询,具有高空间效率的数据结构。一般处理近似成员查询问题(AMQ)使用布隆过滤器和局部敏感哈希结合的技术,包括DSBF(Distance-Sensitive Bloom Filters)[1]、LSBF(Locality-Sensitive Bloom Filter)[2]以及MLBF(Multi-granularity Locality-sensitive BloomFilter)[3]等。它们分别从理论上、适用度量上以及实际需求的变化上补充和完善了局部敏感哈希函数构建的布隆过滤器这一崭新的近似数据过滤技术。
但是在我们生活工作中,海明距离是一个非常重要的距离度量,被广泛应用在深度学习、图像文档比较、基因分析等领域。而目前尚缺少能够用于海明空间下的近似成员查询的布隆过滤器,此外,目前的布隆过滤器主要由软件来实现,尚缺少硬件构成的电路。
上述提到的文献如下:
[1]A.Kirsch and M.Mitzenmacher,“Distance-Sensitive Bloom Filters,”InALENEX,pp.41-50,2006.
[2]Y.Hua and B.Xiao,“Locality-Sensitive Bloom Filter for ApproximateMembership Query,”IEEE Trans.on Computers,vol.61,no.1,pp.817-830,June2012.
[3]J.Qian,Q.Zhu and H.Chen,“Multi-granularity Locality-sensitiveBloom Filter,”IEEE Trans.on Computers,vol.64,no.12,pp.3500-3514,2015.
发明内容
本发明所要解决的技术问题是提供一种用于海明空间下近似成员查询的布隆过滤电路,通过硬件实现了海明空间下的近似成员查询问题,而且能够适用于不同粒度的近似成员查询。
本发明解决上述技术问题所采用的技术方案为:一种用于海明空间下近似成员查询的布隆过滤电路,包括多个并联的过滤单元和一个或门,所述的过滤单元的输入端与输入信号连接,所述的过滤单元的输出端与所述的或门的输入端连接,所述的或门的输出端输出过滤信号。
所述的过滤单元包括一个随机翻转模块、多个并联的位串模块、与所述的位串模块对应的随机哈希模块和与所述的位串模块对应的与门,在所述的随机哈希模块与所述的与门之间设置有多个并联的多路选择器,所述的随机翻转模块的输入端与输入信号连接,所述的随机翻转模块的输出端与所述的位串模块的输入端连接,所述的位串模块的输出端与所述的随机哈希模块的输入端连接,所述的随机哈希模块的输出端与所述的多路选择器的输入端连接,所述的多路选择器的输出端与所述的与门的输入端连接,所述的与门的输出端与所述的或门的输入端连接。
所述的随机翻转模块由多个异或门组成,所述的异或门的数量等于输出信号的倍数长度,所述的位串模块由多个选择器组成,所述的选择器的数量与位串数据的长度相等,各个所述的选择器的输入端分别与多个异或门的输出端对应并联连接。
与现有技术相比,本发明的优点在于多个并联的过滤单元和一个或门构成一个用于海明空间下近似成员查询的布隆过滤电路,实现了海明空间下的近似成员查询问题,而且能够适用于不同粒度的近似成员查询。
附图说明
图1为本发明的布隆过滤电路的结构示意图;
图2为本发明实施例的布隆过滤电路中的四位随机翻转模块的结构示意图;
图3为本发明实施例的布隆过滤电路中的2位位串模块的结构示意图。
具体实施方式
以下结合附图实施例对本发明作进一步详细描述。
实施例:如图1~3所示,一种用于海明空间下近似成员查询的布隆过滤电路,包括多个并联的过滤单元和一个或门1,或门的输出端输出过滤信号。
过滤单元包括一个随机翻转模块2、多个并联的位串模块3、与位串模块3对应的随机哈希模块4和与位串模块3对应的与门5,在随机哈希模块4与与门5之间设置有多个并联的多路选择器6,随机翻转模块2由四个异或门组成四位随机翻转模块,输出的数据为Q0、Q1、Q2和Q3,位串模块3由两个选择器组成了2位位串模块,两个选择器的输入端并联,输入信号均为Q0、Q1、Q2和Q3,一个选择器的选择信号输入端输入两个选择信号S00和S01,而在输出端输出位串信号b0,另一个选择器的选择信号输入端输入两个选择信号S10和S11,而在输出端输出位串信号b1,位串模块3的输出端与随机哈希模块4的输入端连接,随机哈希模块4的输出端与多路选择器6的输入端连接,多路选择器6的输出端与与门5的输入端连接,与门5的输出端与或门1的输入端连接。
本发明使用的随机哈希模块4为现有技术,在论文“M.V.Ramakrishna,E.Fu,E.Bahcekapili.APerformance Study of Hashing Functions for HardwareApplications.1994Int.Conf.on Computing and Information.”中已经公开。
对上述实施例的电路进入验证实验,其实验结果如下:
使用了1000个数据对象的人造数据集和100000个查询对象的人造查询集,其中约1%是近邻数据。所有数据对象和查询对象都是w=4096维度,即包含4096个比特的二进制数据。
平台为CPU为Intel Core i5-4590@3.30GHz,4.00GB内存,Microsoft Windows7,JAVA版本为JSE1.8.0_31。软件实现时,每秒能过滤数据1.08×104个数据(参数k=30,L=10,c=20)。参数c是随机翻转模块的个数,L是从一个随机翻转模块输出的位串模块的个数,k是一个位串模块的(输出)宽度,参见图1。
作为对比,我们用Altera公司的Stratix FPGA II EP2S180F1508C3实现布隆过滤电路,实验结果如表所示(参数k=30,L=10)。我们可以看到,随着随机翻转模块数量(c)的增加,硬件消耗增加,处理速度也略有下降(从每秒处理4.14×107数据下降到每秒处理3.66×107数据),但还是高于软件实现速度3个数量级。硬件逻辑使用量低于5%,功耗稳定1462mw。
FPGA实验结果
Figure BDA0001715335940000041

Claims (2)

1.一种用于海明空间下近似成员查询的布隆过滤电路,包括多个并联的过滤单元和一个或门,所述的过滤单元的输入端与输入信号连接,所述的过滤单元的输出端与所述的或门的输入端连接,所述的或门的输出端输出过滤信号,其特征在于所述的过滤单元包括一个随机翻转模块、多个并联的位串模块、与所述的位串模块对应的随机哈希模块和与所述的位串模块对应的与门,在所述的随机哈希模块与所述的与门之间设置有多个并联的多路选择器,所述的随机翻转模块的输入端与输入信号连接,所述的随机翻转模块的输出端与所述的位串模块的输入端连接,所述的位串模块的输出端与所述的随机哈希模块的输入端连接,所述的随机哈希模块的输出端与所述的多路选择器的输入端连接,所述的多路选择器的输出端与所述的与门的输入端连接,所述的与门的输出端与所述的或门的输入端连接。
2.如权利要求1所述的一种用于海明空间下近似成员查询的布隆过滤电路,其特征在于所述的随机翻转模块由多个异或门组成,所述的异或门的数量等于输出信号的倍数长度,所述的位串模块由多个选择器组成,所述的选择器的数量与位串数据的长度相等,各个所述的选择器的输入端分别与多个异或门的输出端对应并联连接。
CN201810705401.5A 2018-07-02 2018-07-02 一种用于海明空间下近似成员查询的布隆过滤电路 Active CN109150161B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810705401.5A CN109150161B (zh) 2018-07-02 2018-07-02 一种用于海明空间下近似成员查询的布隆过滤电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810705401.5A CN109150161B (zh) 2018-07-02 2018-07-02 一种用于海明空间下近似成员查询的布隆过滤电路

Publications (2)

Publication Number Publication Date
CN109150161A CN109150161A (zh) 2019-01-04
CN109150161B true CN109150161B (zh) 2022-01-14

Family

ID=64802587

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810705401.5A Active CN109150161B (zh) 2018-07-02 2018-07-02 一种用于海明空间下近似成员查询的布隆过滤电路

Country Status (1)

Country Link
CN (1) CN109150161B (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130088918A (ko) * 2012-02-01 2013-08-09 이화여자대학교 산학협력단 검증 블룸 필터를 포함하는 멀티 블룸 필터
CN104699747A (zh) * 2014-12-15 2015-06-10 宁波大学 一种基于高维数据过滤器的近似成员查询方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006096324A2 (en) * 2005-03-03 2006-09-14 Washington University Method and apparatus for performing biosequence similarity searching
US7636703B2 (en) * 2006-05-02 2009-12-22 Exegy Incorporated Method and apparatus for approximate pattern matching
US20090234829A1 (en) * 2008-03-11 2009-09-17 Microsoft Corporation Link based ranking of search results using summaries of result neighborhoods
US10282438B2 (en) * 2016-02-12 2019-05-07 International Business Machines Corporation Locating data in a set with a single index using multiple property values

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130088918A (ko) * 2012-02-01 2013-08-09 이화여자대학교 산학협력단 검증 블룸 필터를 포함하는 멀티 블룸 필터
CN104699747A (zh) * 2014-12-15 2015-06-10 宁波大学 一种基于高维数据过滤器的近似成员查询方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
A Novel Accuracy and Similarity Search Structure Based on Parallel Bloom Filters;Shuai, Chunyan;《COMPUTATIONAL INTELLIGENCE AND NEUROSCIENCE》;20161026;第1-12页 *
Integer-Granularity Locality-Sensitive Bloom Filter;Jiangbo Qian;《IEEE Communications Letters》;20160816;第2125-2128页 *
基于局部敏感布隆过滤器的集合相似检测技术;黄志鹏;《数据通信》;20160630;第47-51页 *

Also Published As

Publication number Publication date
CN109150161A (zh) 2019-01-04

Similar Documents

Publication Publication Date Title
Kelarev et al. Cayley graphs as classifiers for data mining: The influence of asymmetries
Xiao et al. Cayley graphs as models of deterministic small-world networks
Hsueh et al. A load-balanced mapreduce algorithm for blocking-based entity-resolution with multiple keys
CN105981053A (zh) 用于使用分布式关联记忆库确定数据相关及其中的收敛的方法、系统和计算机程序产品
Ou et al. Non-transitive hashing with latent similarity components
Haj Rachid et al. A practical and scalable tool to find overlaps between sequences
Li et al. Efficient subspace skyline query based on user preference using MapReduce
CN104834736A (zh) 构建索引库的方法、装置及检索的方法、装置和系统
WO2021027331A1 (zh) 基于图数据的全量关系计算方法、装置、设备及存储介质
CN102169491A (zh) 一种多数据集中重复记录动态检测方法
Sha et al. Matching user accounts across social networks based on users message
Duan et al. Distributed in-memory vocabulary tree for real-time retrieval of big data images
Hou et al. LeNet‐5 improvement based on FPGA acceleration
CN109150161B (zh) 一种用于海明空间下近似成员查询的布隆过滤电路
Wang et al. Dynamic skylines considering range queries
WO2017157038A1 (zh) 数据处理的方法、装置和设备
CN107122412A (zh) 一种海量电话号码快速匹配检索方法
Li et al. Cluster-based distributed dynamic cuckoo filter system for Redis
Ma et al. BCH–LSH: a new scheme of locality‐sensitive hashing
CN109002446A (zh) 一种智能排序方法、终端与计算机可读存储介质
CN103678695B (zh) 一种并行处理方法及装置
Hsieh et al. Two-stage sparse graph construction using MinHash on MapReduce
Warashina et al. Efficient k-nearest neighbor graph construction using mapreduce for large-scale data sets
Zhang et al. Optimizing distributed joins with bloom filters using MapReduce
Shuai et al. A novel accuracy and similarity search structure based on parallel bloom filters

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
CB03 Change of inventor or designer information

Inventor after: Qian Yucheng

Inventor after: Qian Jiangbo

Inventor after: Huang Zhipeng

Inventor after: Chen Yefang

Inventor after: Chen Huahui

Inventor before: Qian Jiangbo

Inventor before: Huang Zhipeng

Inventor before: Chen Yefang

Inventor before: Chen Huahui

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant