【技术实现步骤摘要】
一种黑名单查询方法、系统、电子设备及存储介质
[0001]本公开涉及金融科技
,具体涉及一种黑名单查询方法、系统、电子设备及存储介质。
技术介绍
[0002]黑名单碰撞在互联网各个领域都有所涉及,通过不同维度的黑名单碰撞,能够很好的控制相关的权限,保护系统安全等。在金融行业中,黑名单碰撞使用场景也较为广泛,通过不同维度的金融黑名单碰撞,能够在保护账号、资金安全等方面提供技术支持。但是随着金融行业的发展,各类名单的维度、数量都快速的增长,互联网的发展也对黑名单碰撞的处理效率要求越来越高。
[0003]现有常规方法及缺点:
[0004]方法一:使用关系型数据库,通过数据库表维护名单。通过程序发送SQL查询语句到数据库,检查数据是否存在数据库表中,达到名单碰撞的目的。缺点:该方式下每一次名单碰撞都需要连接数据库执行相关的查询,在高并发情况下,数据库响应效率低下,数据库将会成为整个系统的薄弱环节,甚至宕机。不能很好满足高并发的使用场景。
[0005]方式二:使用本地缓存,将数据库维护的名单数据在应用启动 ...
【技术保护点】
【技术特征摘要】
1.一种黑名单查询方法,其特征在于,包括:构建BitMap数组存储黑名单数据;根据待查询元素计算其哈希值,并根据所述哈希值计算得到相应的BitMap数组地址;通过Redis获取所述相应的BitMap数组地址对应的第一结果,判断所述第一结果是否匹配;若匹配,则进一步根据所述Redis的数据库表将所述待查询元素与表项进行对比,得到第二结果;如果所述第二结果也匹配,则所述待查询元素在所述黑名单中。2.根据权利要求1所述的黑名单查询方法,其特征在于,所述构建BitMap数组存储黑名单数据包括:根据所述黑名单数据的数据量和预估的误判率,确定能存储所述黑名单数据所需的BitMap长度和哈希的次数;将所述BitMap长度作为数组元素的容量建立数组;将所述黑名单数据存储到所述数组的数组元素内。3.根据权利要求2所述的黑名单查询方法,其特征在于,所述根据所述黑名单数据的数据量和预估的误判率,确定能存储所述黑名单数据所需的BitMap长度和哈希的次数包括:根据以下公式计算所述BitMap长度和哈希的次数:k=
‑
log
2 p其中,m表示BitMap数组长度,k表示哈希的次数,n表示名单元素预估量,p表示预估误判率。4.根据权利要求2所述的黑名单查询方法,其特征在于,所述根据待查询元素计算其哈希值,并根据所述哈希值计算得到相应的BitMap数组地址包括:根据配置的哈希函数和所述哈希的次数计算所述待查询元素的哈希值;根据所述哈希值对所述BitMap长度取模得到相应的BitMap数组地址。5.根据权利要求1所述的黑名单查询方法,其特征在于,所述通过Redis获取所述相应的BitMap数组地址对应的第一结果包括:通过Redis提供的数组操作方法,获取所述相应的BitMap数组地址对应的bit位的值;若所述bit位的值不全为1,则所述待查询元素不在所述黑名单中;若所述bit位的值全为1,则继续进行所述对比。6.根据权利要求5所述的黑名单查询方法,其特征在于,所述根据所述Redis的数据库表将所述待查询元素与表项进行对比包括:根据所述待查询元素的唯一标识符在所述Redis的数据库表中查询;通过与所述待查询元素对应的生效状态为生效,则所述待查询元素在所述黑名单中;否则,所述待查询元素不在所述黑名单中。7.根据权利要求1所述的黑名单查询方法,其特征在于,所述构建Bit...
【专利技术属性】
技术研发人员:黄代荣,卢飞,谷达旺,巫北辰,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。