一种数据过滤方法和装置制造方法及图纸

技术编号:31229528 阅读:21 留言:0更新日期:2021-12-08 09:58
本发明专利技术公开了数据过滤方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括接收数据存储请求,获取所述请求中待存储对象的唯一标识;调用第一哈希函数,根据待存储对象的唯一标识计算得到第一数组下标,进而判断所述第一数组下标对应的数组数据是否为空,若是则将待存储对象的唯一标识存入对应的第一数组中,所述请求处理完成;若否则获取所述第一数组数据中的唯一标识,判断与待存储对象的唯一标识是否相同,如果是则所述请求处理完成;如果否则调用第二哈希函数,根据待存储对象的唯一标识计算得到第二数组下标以将待存储对象的唯一标识存入对应的第二数组中。从而,本发明专利技术的实施方式能够解决现有数据过滤效率低、误判率高的问题。误判率高的问题。误判率高的问题。

【技术实现步骤摘要】
一种数据过滤方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种数据过滤方法和装置。

技术介绍

[0002]布谷鸟过滤器是一种为了节省巨量数据存储空间,对大数据进行去重过滤的功能。其中,布谷鸟过滤器源于布谷鸟哈希算法,基本结构为一个数组,两个哈希算法,以及一个计算指纹的哈希算法。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]目前,布谷鸟过滤器需要根据插入对象通过指纹哈希算法计算出对象的指纹信息,而指纹只有一个字节,256种可能,同一个位置出现相同指纹的可能性很大,从而会导致查询、删除出现误判。还有,插入多个同一个元素会导致出现挤兑循环。另外,在踢出过程中同时进行查询,有可能无法查询到刚刚被踢出还没找到新位置的指纹,导致误判。

技术实现思路

[0005]有鉴于此,本专利技术实施例提供一种数据过滤方法和装置,能够解决现有数据过滤效率低、误判率高的问题。
[0006]为实现上述目的,根据本专利技术实施例的一个方面,提供了一种数据过滤方法,包括接收数据本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数据过滤方法,其特征在于,包括:接收数据存储请求,获取所述请求中待存储对象的唯一标识;调用第一哈希函数,根据待存储对象的唯一标识计算得到第一数组下标,进而判断所述第一数组下标对应的数组数据是否为空,若是则将待存储对象的唯一标识存入对应的第一数组中,所述请求处理完成;若否则获取所述第一数组数据中的唯一标识,判断与待存储对象的唯一标识是否相同,如果是则所述请求处理完成;如果否则调用第二哈希函数,根据待存储对象的唯一标识计算得到第二数组下标以将待存储对象的唯一标识存入对应的第二数组中。2.根据权利要求1所述的方法,其特征在于,调用第二哈希函数,根据待存储对象的唯一标识计算得到第二数组下标之后,包括:判断所述第二数组下标对应的数组数据是否为空,若是则将待存储对象的唯一标识存入对应的第二数组中,所述请求处理完成;若否则获取所述第二数组数据中的唯一标识,判断与待存储对象的唯一标识是否相同,如果是则所述请求处理完成;如果否则踢出第二数组数据中的唯一标识,以将所述待存储对象的唯一标识存入所述第二数组中。3.根据权利要求2所述的方法,其特征在于,踢出第二数组数据中的唯一标识,包括:获取查询锁定标识,判断所述查询锁定标识是否为被锁定,若是则踢出第二数组数据中的唯一标识放入队列中等待重新进行存储;若否则踢出第二数组数据中的唯一标识重新进行存储。4.根据权利要求3所述的方法,其特征在于,所述踢出第二数组数据中的唯一标识之后,包括:获取踢出状态标识并自增;待踢出的唯一标识重新存储完成后,获取踢出状态标识并自减。5.根据权利要求1所述的方法,其特征在于,还包括:接收数据查询请求,获取所述请求中待查询对象的唯一标识;调用第一哈希函数,根据待存储对象的唯一标识计算得到第一数组下标,进而判断所述第一数组下标对应的数组数据是否为空;若是则将预设的空标识进行标记,调用第二哈希函数循环执行前述过程得到所述的空标识被二次标记则返回结果为未查询到;若否则获取所述第一数组数据中的唯一标识,判断与待查询对象的唯一标识是否相同,如果是则返回结果为已查询到;如果否则调用第二哈希函数循环执行前述过程仍然得到与待查询对象的唯一标识不一致,则返回结果为未查询到。6.根据权利要求5所述...

【专利技术属性】
技术研发人员:朱大鹏
申请(专利权)人:北京京东世纪贸易有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1