CN106570025B - 一种数据过滤的方法及装置 - Google Patents

一种数据过滤的方法及装置 Download PDF

Info

Publication number
CN106570025B
CN106570025B CN201510654445.6A CN201510654445A CN106570025B CN 106570025 B CN106570025 B CN 106570025B CN 201510654445 A CN201510654445 A CN 201510654445A CN 106570025 B CN106570025 B CN 106570025B
Authority
CN
China
Prior art keywords
hash function
value range
data
bloom filter
distributed
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
CN201510654445.6A
Other languages
English (en)
Other versions
CN106570025A (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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
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 Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201510654445.6A priority Critical patent/CN106570025B/zh
Publication of CN106570025A publication Critical patent/CN106570025A/zh
Application granted granted Critical
Publication of CN106570025B publication Critical patent/CN106570025B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Complex Calculations (AREA)

Abstract

本发明公开了一种数据过滤的方法及装置,涉及数据处理领域,解决了单个布隆过滤器存储数据过多时导致的误判几率上升的问题。本发明的方法包括:根据哈希函数确定哈希函数的值域;根据哈希函数的值域计算待分布布隆过滤器的个数;将待分布布隆过滤器均匀映射到哈希函数的值域中;根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。本发明主要用于对海量数据进行重复性判断。

Description

一种数据过滤的方法及装置
技术领域
本发明涉及数据处理领域,特别是涉及一种数据过滤的方法及装置。
背景技术
网络爬虫是一种可以自动下载网站数据的程序,它通过下载指定网站的所有链接来获取开发者需要的信息。在一些网站中可能有多个地方出现链接到同一个网页的情况,若网络爬虫重复爬取相同的链接不仅会导致处理资源的浪费,而且将重复的数据存储下来会导致数据结果的污染,因此网络爬虫需要将爬取过的网页链接记录下来,每次在存储网页链接时需要从存储数据中查看该网页链接是否出现过,但是通过这种方式避免重复存储数据时需要的存储空间将会是天文数字,往往难以满足。由此出现了布隆过滤器,布隆过滤器可以将数据映射到二进制向量数据段中并用极小的存储空间存储一个二进制向量数据段,并且可以迅速判断出待存储数据是否在布隆过滤器中出现过。
在使用布隆过滤器的过程中,发明人发现:虽然布隆过滤器对过滤数据的性能要求很高,但是如果只使用一个布隆过滤器进行数据过滤,那么随着过滤数据的增加布隆过滤器的存储会达到一个瓶颈,即布隆过滤器存储过多的数据后其出现误判的几率会上升,例如布隆过滤器会报告某一元素存在于某集合中,但是实际上该元素并不存在于该集合中。
发明内容
有鉴于此,本发明提出了一种数据过滤的方法及装置,主要目的在于解决用于过滤数据的单个布隆过滤器存储数据过多时导致的误判几率上升的问题。
依据本发明的第一个方面,本发明提出了一种数据过滤的方法,包括:
根据哈希函数确定哈希函数的值域;
根据哈希函数的值域计算待分布布隆过滤器的个数;
将待分布布隆过滤器均匀映射到哈希函数的值域中;
根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。
依据本发明的第二个方面,本发明提出了一种数据过滤的装置,包括:
确定单元,用于根据哈希函数确定哈希函数的值域;
计算单元,用于根据确定单元确定的哈希函数的值域计算待分布布隆过滤器的个数;
映射单元,用于将计算单元得到的待分布布隆过滤器映射到哈希函数的值域中;
指定单元,用于根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。
借由上述技术方案,本发明实施例提供的数据过滤的方法及装置,能够根据哈希函数确定哈希函数的值域,并根据哈希函数的值域计算待分布布隆过滤器的个数,随后将待分布布隆过滤器均匀映射到哈希函数的值域中,并根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。与现有技术中使用一个布隆过滤器时随着布隆过滤器存储数据的持续增多其出现误判的几率上升的缺陷相比,本发明能够将海量数据分散在多个布隆过滤器中以避免使用单个布隆过滤器出现瓶颈后造成误判率上升的问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种数据过滤的方法的流程图;
图2示出了本发明实施例提供的一种数据过滤的装置的组成框图;
图3示出了本发明实施例提供的另一种数据过滤的装置的组成框图。
具体实施方式
下面将参照附图更加详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
在单个布隆过滤器的使用过程中,随着过滤数据的增加布隆过滤器的存储会达到一个瓶颈,即布隆过滤器存储过多的数据后其出现误判的几率会上升。虽然单个布隆过滤器可以通过增加存储空间达到扩容目的,但是当一个布隆过滤器使用一段时间后,如果想要在原先过滤器上直接进行扩容是无法实现的。
为了解决上述问题,本发明实施例提供了一种数据过滤的方法,如图1所示,该方法包括:
101、根据哈希函数确定哈希函数的值域。
布隆过滤器的基本思想是通过一个哈希函数将元素映射成一个位阵列中的一个点,要判断该元素是否存在于集合中只要看这个点是不是1就可以了。布隆过滤器的核心在于哈希函数的选择,选择好的哈希函数能够大大降低布隆过滤器出现误判的几率,由于哈希函数的主要原理就是把大范围映射到小范围,所以输入的实际值的个数必须和哈希函数计算的小范围相当或者比它更小,因此每个哈希函数都对应有各自的计算范围,即哈希函数的值域。在本发明实施例的步骤101中需要根据所采用的哈希函数确定哈希函数的值域。
102、根据哈希函数的值域计算待分布布隆过滤器的个数。
由于哈希函数通常都有自身的计算范围,如果使用单个布隆过滤器,则当存储数据达到一个瓶颈时会造成布隆过滤器误判几率的上升。因此,本发明实施例需要使用多个布隆过滤器协同工作,此时可以通过步骤102根据哈希函数的值域计算待分布布隆过滤器的个数,其原则是尽量能够将确定的多个布隆过滤器均匀分散在哈希函数的值域中。
103、将待分布布隆过滤器均匀映射到哈希函数的值域中。
当通过步骤102确定了待分布布隆过滤器的个数后,需要将布隆过滤器均匀映射到哈希函数的值域中,即通过哈希函数对布隆过滤器的标识进行计算,在哈希函数的值域中将得到的布隆过滤器对应的哈希值进行定位。
104、根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。
当通过步骤103在哈希函数的值域中对多个待分布布隆过滤器进行定位后,此后若继续对数据进行重复性判断操作时,可以根据待过滤数据映射在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。由于协同工作的多个布隆过滤器被均匀的分散在哈希函数的值域中,因此在概率上映射于哈希函数值域中的大部分待过滤数据可以平均分散在多个布隆过滤器之间,从而使得每个布隆过滤器处理的数据量相当。
本发明实施例提供的一种数据过滤的方法,能够根据哈希函数确定哈希函数的值域,并根据哈希函数的值域计算待分布布隆过滤器的个数,随后将待分布布隆过滤器均匀映射到哈希函数的值域中,并根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。与现有技术中使用一个布隆过滤器时随着布隆过滤器存储数据的持续增多其出现误判的几率上升的缺陷相比,本发明能够将海量数据分散在多个布隆过滤器中以避免使用单个布隆过滤器出现瓶颈后造成误判率上升的问题。
由于哈希函数的类型有多种,对不同的哈希函数而言通常都有其查找成功的平均长度即哈希函数的值域。因此为了更好的对上述图1所示的方法进行理解,本发明实施例将以常用的哈希函数为例,针对图1中的各步骤进行详细说明。
所谓的加法哈希函数就是把输入元素一个一个加起来构成最后的结果,其结果值域为[0,prime-1],其中prime是任意的质数。在根据哈希函数确定哈希函数的值域时,可以先根据业务类型确定哈希函数的类型,例如,哈希函数应用的业务的主要对象是数组(字符串),因此可以通过常用类型的哈希函数例如加法哈希函数对待过滤数据进行重复性判断,而常用类型的哈希函数对其主要对象处理后的目标一般是整数类型(Int类型),因此按照常用的哈希函数可以将待过滤数据映射到一个2^32次方的空间中,即0-(2^32)-1的数字空间中。
当确定哈希函数的值域后,就可以根据哈希函数值域的大小确定需要多少个布隆过滤器进行协同工作。具体的,可以将哈希函数的值域进行均匀划分,得到大小相同或相近的多个值域分段,得到的值域分段的个数就可以作为待分布布隆过滤器的个数。对于某些哈希函数的值域而言,可以将值域平均分成2个以上的多个值域分段,此时,只需要根据需求将该哈希函数的值域分成相应个数的值域分段;而对于另一些哈希函数的值域而言,无法做到将值域平均划分,因此只能将值域进行近似平均的划分,保证划分后得到的各个值域分段的大小近似相同。
当确定了待分布布隆过滤器的个数后,就需要将确定的多个布隆过滤器映射到哈希函数的值域中。由于通常情况下是以布隆过滤器所在机器的IP作为输入值,通过哈希函数直接对布隆过滤器所在机器的IP进行计算得到key值,并在哈希函数的值域中定位得到的key值所在的位置,完成对布隆过滤器的映射。由于多个布隆过滤器所在机器的IP并无规律,因此通过哈希函数对其进行计算后得到的key值也无规律,无法保证得到的多个key值能够均匀分散在哈希函数的值域中。因此,本发明实施例在将待分布布隆过滤器映射到哈希函数的值域的过程中,可以预先为每个布隆过滤器设置特定的唯一标识,通过哈希函数对每个布隆过滤器的特定的唯一标识进行计算,将多个布隆过滤器均匀映射到哈希函数的值域中。例如,当确定的待分布布隆过滤器的个数为4个,并且每个布隆过滤器的值域分段的右边界值分别为2^8、2^16、2^24、(2^32)-1,则可以为待分布布隆过滤器分别设置特定的唯一标识为A、B、C、D,其中通过哈希函数计算某一布隆过滤器的唯一标识A将该布隆过滤器映射到哈希函数值域中的2^8的位置,将唯一标识为B的布隆过滤器映射到哈希函数值域中的2^16的位置,将唯一标识为C的布隆过滤器映射到哈希函数值域中的2^24的位置、将唯一标识为D的布隆过滤器映射到哈希函数值域中的(2^32)-1的位置。这里需要说明的是,布隆过滤器的唯一标识的选择可以利用工作经验中得到的某一哈希函数的映射规律,寻找先前记录的对象和目标的映射关系,将对象作为唯一标识赋予布隆过滤器,将目标作为哈希函数值域中的值域分段的右边界值,在本实施例中A、B、C、D相当于先前记录的映射关系中的对象,2^8、2^16、2^24、(2^32)-1相当于先前记录的映射关系中的目标。
当将确定的待分布布隆过滤器映射到哈希函数的值域中后,就可以对待过滤数据进行重复性判断的操作了。具体的,可以通过哈希函数将待过滤数据映射到哈希函数的值域中,即通过哈希函数计算出待过滤数据的key值,然后散列在哈希函数的值域中的相应位置,其中,对待过滤数据进行映射计算的哈希函数与对待分布布隆过滤器进行映射计算的哈希函数是同一个哈希函数,只有这样才能保证待过滤数据与多个布隆过滤器的位置定位准确,从而将大量的待过滤数据均匀分散到不同的布隆过滤器中。
当将待过滤数据分散到哈希函数的值域中后,每个待过滤数据和多个布隆过滤器会存在一个稳定的位置关系,并且需要根据它们之间的位置关系将不同的待过滤数据归属到不同的布隆过滤器中。作为一种可选的实施方式,本发明实施例可以在哈希函数的值域中将预设方向上离所述待过滤数据的位置最近的布隆过滤器指定为所述待过滤数据归属的布隆过滤器。例如,可以将待过滤数据在哈希函数的值域中向右边界移动,当待过滤数据向右移动的过程中遇到第一个布隆过滤器时,则可以将该待过滤数据划分给该布隆过滤器进行重复性判断的处理。由于大量的待过滤数据会被分散在哈希函数值域中的各个位置,并且本发明实施例已经将多个布隆过滤器通过设置的唯一标识均匀分散在哈希函数的值域中,因此,在概率上两两布隆过滤器之间会分散有数量相当的待过滤数据,将这些待过滤数据按照预设方向移动,并将其划分给离自身最近的布隆过滤器进行处理,保证了每个布隆过滤器处理的待过滤数据相当,不会存在某个布隆过滤器的内存达到上限而其他布隆过滤器的内存数据较少的情况发生。
进一步的,本发明实施例还可以将多个布隆过滤器分散在不同的服务器上,通过哈希函数将不同的服务器映射到哈希函数的值域中,然后通过对待过滤数据进行哈希函数的计算,将待过滤数据均匀划分给不同服务器中的布隆过滤器进行重复性判断的处理。
本发明实施例通过为待分布布隆过滤器设置特定的唯一标识,将多个布隆过滤器均匀分散在哈希函数的值域中,保证了每个布隆过滤器能够处理的待过滤数据的数据量大致相同。此外,通过将多个布隆过滤器分散在不同的服务器上,利用哈希函数将不同的服务器映射到哈希函数的值域中,解决了单台服务器内存上限造成服务器中多个布隆过滤器无法正常工作的问题。
作为对上述图1所示方法的实现,本发明实施例提供了一种数据过滤的装置,如图2所示,该装置包括:确定单元21、计算单元22、映射单元23及指定单元24,其中,
确定单元21,用于根据哈希函数确定所述哈希函数的值域;
计算单元22,用于根据确定单元21确定的所述哈希函数的值域计算待分布布隆过滤器的个数;
映射单元23,用于将计算单元22得到的所述待分布布隆过滤器映射到所述哈希函数的值域中;
指定单元24,用于根据待过滤数据在所述哈希函数的值域中的位置指定所述待过滤数据归属的布隆过滤器。
进一步的,确定单元21用于根据业务类型确定所述哈希函数的类型;确定单元21还用于根据所述类型的哈希函数的处理对象确定所述哈希函数的值域。
进一步的,计算单元22用于将所述哈希函数的值域进行均匀划分得到值域分段;计算单元22还用于将所述值域分段的个数确定为所述待分布布隆过滤器的个数。
进一步的,如图3所示,映射单元23包括:
设置模块231,用于设置所述待分布布隆过滤器的唯一标识;
分布模块232,用于根据所述哈希函数和所述唯一标识将所述待分布布隆过滤器映射到所述哈希函数的值域中。
进一步的,指定单元24包括:
映射模块241,用于通过所述哈希函数将所述待过滤数据映射到所述哈希函数的值域中;
指定模块242,用于在所述哈希函数的值域中将预设方向上离所述待过滤数据的位置最近的布隆过滤器指定为所述待过滤数据归属的布隆过滤器。
本发明实施例提供的一种数据过滤的装置,能够根据哈希函数确定哈希函数的值域,并根据哈希函数的值域计算待分布布隆过滤器的个数,随后将待分布布隆过滤器均匀映射到哈希函数的值域中,并根据待过滤数据在哈希函数的值域中的位置指定待过滤数据归属的布隆过滤器。与现有技术中使用一个布隆过滤器时随着布隆过滤器存储数据的持续增多其出现误判的几率上升的缺陷相比,本发明能够将海量数据分散在多个布隆过滤器中以避免使用单个布隆过滤器出现瓶颈后造成误判率上升的问题。
此外,本发明实施例通过为待分布布隆过滤器设置特定的唯一标识,将多个布隆过滤器均匀分散在哈希函数的值域中,保证了每个布隆过滤器能够处理的待过滤数据的数据量大致相同。同时,通过将多个布隆过滤器分散在不同的服务器上,利用哈希函数将不同的服务器映射到哈希函数的值域中,解决了单台服务器内存上限造成服务器中多个布隆过滤器无法正常工作的问题。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
可以理解的是,上述方法及装置中的相关特征可以相互参考。另外,上述实施例中的“第一”、“第二”等是用于区分各实施例,而并不代表各实施例的优劣。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的发明名称(如确定网站内链接等级的装置)中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。

Claims (8)

1.一种数据过滤的方法,其特征在于,所述方法包括:
根据哈希函数确定所述哈希函数的值域,其中所述哈希函数的类型由业务类型确定,所述值域由指定类型的哈希函数对应的计算范围确定;
根据所述哈希函数的值域计算待分布布隆过滤器的个数,具体的,将所述哈希函数的值域均匀划分或近似平均划分得到的分段个数确定为待分布布隆过滤器的个数;
将所述待分布布隆过滤器均匀映射到所述哈希函数的值域中,具体的,设置所述待分布布隆过滤器的唯一标识;根据所述哈希函数和所述唯一标识将所述待分布布隆过滤器均匀映射到所述哈希函数的值域中;
根据待过滤数据在所述哈希函数的值域中的位置指定所述待过滤数据归属的布隆过滤器,具体的,通过所述哈希函数将所述待过滤数据映射到所述哈希函数的值域中;在所述哈希函数的值域中将预设方向上离所述待过滤数据的位置最近的布隆过滤器指定为所述待过滤数据归属的布隆过滤器。
2.根据权利要求1所述的方法,其特征在于,所述根据哈希函数确定所述哈希函数的值域,包括:
根据业务类型确定所述哈希函数的类型,其中,所述哈希函数的处理对象为数组时,所述哈希函数的类型为加法哈希函数;
根据所述类型的哈希函数的处理对象确定所述哈希函数的值域。
3.根据权利要求1所述的方法,其特征在于,所述根据所述哈希函数的值域计算待分布布隆过滤器的个数,包括:
将所述哈希函数的值域进行均匀划分得到值域分段;
将所述值域分段的个数确定为所述待分布布隆过滤器的个数。
4.一种数据过滤的装置,其特征在于,所述装置包括:
确定单元,用于根据哈希函数确定所述哈希函数的值域,其中所述哈希函数的类型由业务类型确定,所述值域由指定类型的哈希函数对应的计算范围确定;
计算单元,用于根据所述确定单元确定的所述哈希函数的值域计算待分布布隆过滤器的个数,具体的,将所述哈希函数的值域均匀划分或近似平均划分得到的分段个数确定为待分布布隆过滤器的个数;
映射单元,用于将所述计算单元得到的所述待分布布隆过滤器映射到所述哈希函数的值域中;
指定单元,用于根据待过滤数据在所述哈希函数的值域中的位置指定所述待过滤数据归属的布隆过滤器;
所述映射单元包括:
设置模块,用于设置所述待分布布隆过滤器的唯一标识;
分布模块,用于根据所述哈希函数和所述唯一标识将所述待分布布隆过滤器映射到所述哈希函数的值域中;
所述指定单元包括:
映射模块,用于通过所述哈希函数将所述待过滤数据映射到所述哈希函数的值域中;
指定模块,用于在所述哈希函数的值域中将预设方向上离所述待过滤数据的位置最近的布隆过滤器指定为所述待过滤数据归属的布隆过滤器。
5.根据权利要求4所述的装置,其特征在于,所述确定单元用于根据业务类型确定所述哈希函数的类型,其中,所述哈希函数的处理对象为数组时,所述哈希函数的类型为加法哈希函数;所述确定单元还用于根据所述类型的哈希函数的处理对象确定所述哈希函数的值域。
6.根据权利要求4所述的装置,其特征在于,所述计算单元用于将所述哈希函数的值域进行均匀划分得到值域分段;所述计算单元还用于将所述值域分段的个数确定为所述待分布布隆过滤器的个数。
7.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求3中任意一项所述的一种数据过滤的方法。
8.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至权利要求3中任意一项所述的一种数据过滤的方法。
CN201510654445.6A 2015-10-10 2015-10-10 一种数据过滤的方法及装置 Active CN106570025B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510654445.6A CN106570025B (zh) 2015-10-10 2015-10-10 一种数据过滤的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510654445.6A CN106570025B (zh) 2015-10-10 2015-10-10 一种数据过滤的方法及装置

Publications (2)

Publication Number Publication Date
CN106570025A CN106570025A (zh) 2017-04-19
CN106570025B true CN106570025B (zh) 2020-09-11

Family

ID=58507884

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510654445.6A Active CN106570025B (zh) 2015-10-10 2015-10-10 一种数据过滤的方法及装置

Country Status (1)

Country Link
CN (1) CN106570025B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107391554B (zh) * 2017-06-07 2021-10-01 中国人民解放军国防科学技术大学 高效分布式局部敏感哈希方法
CN110019121B (zh) * 2017-10-31 2021-05-11 北京国双科技有限公司 一种数据库文件过滤方法、装置、存储介质及处理器
CN108427712A (zh) * 2018-01-31 2018-08-21 佛山市聚成知识产权服务有限公司 一种实现大数据安全的系统
CN110489405B (zh) * 2019-07-12 2024-01-12 平安科技(深圳)有限公司 数据处理的方法、装置和服务器
CN111208978B (zh) * 2019-12-31 2023-05-23 杭州安恒信息技术股份有限公司 以Python为接口C++实现的字符布隆过滤器
CN112162975A (zh) * 2020-09-25 2021-01-01 华南理工大学 基于单哈希均分布隆过滤器的重复数据删除技术实现方法
CN112199378A (zh) * 2020-12-01 2021-01-08 北京快成科技股份公司 Ip地址匹配方法及装置
CN115454983B (zh) * 2022-09-13 2023-07-14 浪潮卓数大数据产业发展有限公司 一种基于布隆过滤器的海量Hbase数据去重方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253820A (zh) * 2011-06-16 2011-11-23 华中科技大学 一种流式重复数据检测方法
CN102663058A (zh) * 2012-03-30 2012-09-12 华中科技大学 一种分布式网络爬虫系统中的url去重方法
CN103970744A (zh) * 2013-01-25 2014-08-06 华中科技大学 一种可扩展的重复数据检测方法
CN104408182A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 分布式系统上网络爬虫数据的处理方法和装置
CN104809182A (zh) * 2015-04-17 2015-07-29 东南大学 基于动态可分裂Bloom Filter的网络爬虫URL去重方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102253820A (zh) * 2011-06-16 2011-11-23 华中科技大学 一种流式重复数据检测方法
CN102663058A (zh) * 2012-03-30 2012-09-12 华中科技大学 一种分布式网络爬虫系统中的url去重方法
CN103970744A (zh) * 2013-01-25 2014-08-06 华中科技大学 一种可扩展的重复数据检测方法
CN104408182A (zh) * 2014-12-15 2015-03-11 北京国双科技有限公司 分布式系统上网络爬虫数据的处理方法和装置
CN104809182A (zh) * 2015-04-17 2015-07-29 东南大学 基于动态可分裂Bloom Filter的网络爬虫URL去重方法

Also Published As

Publication number Publication date
CN106570025A (zh) 2017-04-19

Similar Documents

Publication Publication Date Title
CN106570025B (zh) 一种数据过滤的方法及装置
CN113312361B (zh) 轨迹查询方法、装置、设备、存储介质及计算机程序产品
CN109145051A (zh) 分布式数据库的数据汇总方法及装置和电子设备
CN105704188A (zh) 应用与服务的部署方法和装置
CN109756533B (zh) 一种镜像加速方法、装置及服务器
CN106126731A (zh) 一种获取Elasticsearch分页数据的方法及装置
CN110737717A (zh) 一种数据库迁移方法及装置
CN106682044B (zh) 数据处理的方法及装置
CN105701128A (zh) 一种查询语句的优化方法和装置
CN114064032A (zh) 源代码处理方法、装置、电子设备和存储介质
CN104281587B (zh) 一种建立连接的方法及装置
CN110659296B (zh) 存储方法、装置、设备以及计算机可读介质
CN107861751A (zh) 配置文件的修改方法及装置
CN108021448B (zh) 一种内核空间的优化方法及装置
CN112800419A (zh) 识别ip团伙的方法、装置、介质及设备
CN115033551A (zh) 一种数据库迁移方法、装置、电子设备及存储介质
US20120166728A1 (en) Systems and methods for performing parallel multi-level data computations
CN110321133B (zh) H5应用部署方法及装置
CN105808318B (zh) 一种信息处理方法和电子设备
CN113792237A (zh) 卡片式布局的优化方法、装置、存储介质及处理器
CN109388428B (zh) 图层遍历方法、控制装置及数据处理系统
CN103530393A (zh) 确定网站子频道抓取流量配额的方法及设备
CN104980465A (zh) 一种文件发布系统、文件发布方法和网络服务器
CN112800357A (zh) Web页面呈现方法、装置、设备及存储介质
CN105988954B (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