一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于Redis的反欺诈聚集度指标实时计算方法及系统与流程

2022-08-10 20:01:55 来源:中国专利 TAG:
基于redis的反欺诈聚集度指标实时计算方法及系统
技术领域
:1.本发明涉及互联网
技术领域
:,具体涉及一种基于redis的反欺诈聚集度指标实时计算方法及系统。
背景技术
::2.当前,随着互联网技术的发展,黑色产业链也突飞猛进,薅羊毛、盗刷、撞库、批量注册等等。在攻与防的过程中,反欺诈的方法和技术也需要不断演进;在反欺诈业务场景中,最为重要的就是实时指标计算,不影响业务交互和业务响应时长的情况下,要能快速的识别风险;常用的反欺诈指标类型(也可以称聚集度指标)有:频度-出现次数统计、频度-关联个数统计、频度-关联求和求平均统计,位置距离—出现次数统计,移动距离,常用习惯等指标;(1)频度相关指标——单位时间次数过多;同一个ip在1小时内登录或注册的手机号数量,注册的不同数量;同设备在1小时内尝试登录账户数,尝试登录不同账户数;这种次数过多或者个数过多的场景有:暴力破解、垃圾注册、短信轰炸、群控设备等;(2)位置距离相关指标——单位空间次数过多;1天内1000米范围内注册用户数、2天内500米范围内下单用户数;常见场景:虚拟设备、虚假定位等(3)常用习惯相关指标:常用设备,常登录城市。3.现有技术中通常的反欺诈决策引擎计算方法是:根据指标计算逻辑,写对应sql脚本语句进行实时统计查询;该方法比较简单直接;通过经纬度计算距离,然后判断是否在同一个范围内;也有将经纬度截取后几位判断是否相同,可以根据后几位计算距离精度范围。4.以上几种方法,可以实现反欺诈聚集度指标计算,但是方案中都存在有或多或少的弊端具体如下:使用sql实时统计,计算速度相对比较慢;当有新的指标或者指标变更时候,需要修改sql脚本重新发布;维护成本高,只能有专业的技术人员进行操作;不方便风控反欺诈业务人员使用;针对位置距离的指标,通过经纬度计算误差较大、计算开销较大,耗时较长;同一属性的新指标,即使脚本可以兼容共用,但也需要单独计算,增加额外开销;当有多条件组合计算场景,数据过滤场景等就比较麻烦。技术实现要素:5.针对现有技术的不足,本发明公开了一种基于redis的反欺诈聚集度指标实时计算方法及系统,用于解决上述问题。6.本发明通过以下技术方案予以实现:第一方面,本发明提供了一种基于redis的反欺诈聚集度指标实时计算方法,包括以下步骤:s1根据mvel表达式校验是否满足统计条件,如果表达式不成立则忽略本次请求;表达式成立则进入s2;s2依据不同的指标统计类型进行设定redis的key值;同时设定redis的value值;s3调用redis的boundzsetops方法向key中添加key值和value值的和,同时指定值的分数;s4删除超时过期元素,计算时间戳score值范围,并调用redis有序集合,查询该score范围内的元素集合。7.更进一步的,所述方法中,redis的key值依据不同的指标统计类型包括普通key值和地理位置相关指标的key。8.更进一步的,所述方法中,普通key值的设计逻辑为,规则编码 “_” 规则版本号 “_”统计维度字段变量值;如果有多个,则依次拼接在后面。9.更进一步的,所述方法中,地理位置相关指标的key设计逻辑为,规则编码 “_” 规则版本号 “_”经纬度值 ꢀ“_”ꢀ 其他统计维度字段变量值 ꢀ“_”ꢀ geohash算法索引值。10.更进一步的,所述方法中,geohash算法索引值为地理空间索引算法计算出来的经纬度base32编码值。11.更进一步的,所述方法中,设定redis的value值具体为,普通value值为统计字段 统计去重字段的变量值组合。12.更进一步的,所述方法中,在s4中计算出key值,根据计算统计指标里的时间窗口,计算时间戳score值范围,然后调用redis有序集合里的rangebyscorewithscores方法,查询该score范围内的元素集合。13.更进一步的,所述方法中,查询该score范围内的元素集合后,返回包含score和value的set《typedtuple《v》》,并计算该set集合size,输出指标计算结果。14.更进一步的,所述方法中,将反欺诈聚集度类指标计算设计成redis的有序集合进行存储;将统计维度值变量值组合作为key,将去重字段变量值组合成value,将当前时间戳作为score,将设定的时间范围作为有效期。15.第二方面,本发明提供了一种基于redis的反欺诈聚集度指标实时计算系统,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述存储器与所述处理器耦接,且所述处理器执行所述计算机程序时,实现第一方面所述的基于redis的反欺诈聚集度指标实时计算方法中的步骤。16.本发明的有益效果为:本发明将redis有序集合和地理空间索引算法以及mvel规则表达式结合起来,应用在反欺诈聚集度指标高效实时计算上,其指标操作配置方便、计算速度快;同一属性新指标无需积累数据,可快速上线;为不同场景的反欺诈风险识别提供一种新的高可用、高效率的指标计算方案。附图说明17.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。18.图1是基于redis的反欺诈聚集度指标实时计算方法步骤图。具体实施方式19.为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。20.实施例1参照图1所示,本实施例提供了一种基于redis的反欺诈聚集度指标实时计算方法,包括以下步骤:s1根据mvel表达式校验是否满足统计条件,如果表达式不成立则忽略本次请求;表达式成立则进入s2;s2依据不同的指标统计类型进行设定redis的key值;同时设定redis的value值;s3调用redis的boundzsetops方法向key中添加key值和value值的和,同时指定值的分数;s4删除超时过期元素,计算时间戳score值范围,并调用redis有序集合,查询该score范围内的元素集合。21.本实施例将反欺诈聚集度类指标计算设计成redis的有序集合进行存储;将统计维度值变量值组合作为key,将去重字段变量值组合成value,将当前时间戳作为score,将设定的时间范围作为有效期。22.通过本实施例方案,实现了一个较为全面的反欺诈聚集度规则实时指标计算及配置方法;指标操作配置方便、计算速度快;同一属性新指标无需积累数据,可快速上线;为不同场景的反欺诈风险识别提供一种新的高可用、高效率的指标计算方案。23.实施例2在设计层面,本实施例提供实施1的具体设计原理,具体如下:本实施例设计原理包括两部分:一部分是指标的计算逻辑,一部分是指标的配置方法;针对线上实时反欺诈风险识别场景,既要做到指标的快速计算也要做到指标的快速设计。24.本实施例指标计算逻辑原理:利用redis分布式集群技术和有序集合(sortedset)技术进行数据指标的时间排序和指标统计计算;结合地理空间索引算法(geohash)计算单位距离内的统计指标。25.然后利用mvel表达式规则引擎实现数据的多条件组合和筛选过滤;从而达到灵活多样的、精准完善的聚集度指标计算;满足反欺诈各种应用场景和不同条件的风险计算要求。26.本实施例的反欺诈聚集度规则项计算流程和逻辑如下:本实施例设计指标统计逻辑:设定指标类型,涵盖9种常见的统计类型:时间窗口计次、时间窗口求和、时间窗口求平均、时间 次数窗口求和、时间 次数窗口求平均、时间 次数窗口求存在,时间 地理位置计次、时间 地理位置求和、时间 地理位置求平均。27.本实施例设定时间窗口:月,日,时,分;本实施例设定统计维度:指定计算维度变量;本实施例设定去重字段:区分统计结果,是按次数还是按个数;本实施例设定触发事件:用于区分不同事件类型,注册事件、下单事件;本实施例设定统计条件:用mvel表达式进行条件限制、过滤筛选等;本实施例将设定的统计逻辑存储到mysql指标配置表里,并自动生成规则项供引擎策略集使用;系统应用会将定义的指标规则定时刷新到内存中,每次计算都从内存取;在每个事件调用反欺诈检测接口的时候,开始进行指标的统计计算。28.本实施例指标计算执行原理和逻辑,计算原理如下:redis的sortedset有序集合数据结构,它的时间复杂度为o(log(n) m),比redis的sort命令时间复杂度(o(n m*log(m)))要快很多。29.本实施例通过hashtable和skiplist两种方式实现;每个元素都会关联一个double类型的分数score;有序集合里每个元素是唯一的,但是score是可以重复的。redis正是通过score为依据来为集合中的元素进行排序;其主要特性如下:(1)元素唯一(2)每个元素拥有一个score(3)每个元素依据score进行有序排列(4)可通过score来进行查询故借助这些特性来让集合中的元素带上时间维度。当zadd一个元素的时候,把当前时间戳timestamp作为score设置在元素上,这样redis就能够根据这个timestamp将元素进行排序。30.实施例3在具体实施层面,本实施例在实施例1的基础上将反欺诈聚集度类指标计算设计成redis的有序集合进行存储;将统计维度值变量值组合作为key,将去重字段变量值组合成value,将当前时间戳作为score,将设定的时间范围作为有效期。具体如下:本实施例先根据mvel表达式校验是否满足统计条件,如果表达式不成立则忽略本次请求;表达式成立则执行下面指标计算逻辑;引入mvel规则表达式,进行数据过滤筛选,有效解决反欺诈系统多事件多数据来源问题。31.本实施例设定redis的key值:key依据不同的指标统计类型而不同。32.本实施例普通key值的设计逻辑:规则编码(rulecode) “_” 规则版本号(ruleversion) “_”统计维度字段(statis_key)变量值(deviceid,biztype,ip,account);如果有多个,则依次拼接在后面。33.本实施例地理位置相关指标的key设计逻辑:规则编码(rulecode) “_” 规则版本号(ruleversion) “_”经纬度值(lon,lat) ꢀ“_”ꢀ 其他统计维度字段(statis_key)变量值(biztype,account) ꢀ“_”ꢀ geohash算法索引值;本实施例中,geohash算法索引值为地理空间索引算法计算出来的经纬度base32编码值;本实施例引入地理空间索引算法geohash,有效解决批量距离计算问题。34.本实施例设定redis的value值:普通value值为统计字段(statis_field) 统计去重字段(statis_distinct)的变量值组合;如果有去重字段的话;作为本实施例的一种优选的实施,具体如下:同ip同产品1天时间内注册账户数,key为:os0002_2_218.94.54.138_201,value值为:0166406598。同产品1天内1000米范围内注册账户数量,key为:os0005_1_201_wtsw9,value值为:0166406598_0166406598_118.909199_32.080306。35.本实施例调用redis的boundzsetops方法向key中添加值和,同时指定值的分数;删除超时过期元素。36.本实施例查询指标结果:同样的方法计算出key值,根据计算统计指标里的时间窗口,计算时间戳范围(score值范围),然后调用redis有序集合里的rangebyscorewithscores方法,查询该score范围内的元素集合,返回set《typedtuple《v》》(包含score和value),计算该set集合size,即为指标计算结果。37.实施例4本实施例提供一种基于redis的反欺诈聚集度指标实时计算系统,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述存储器与所述处理器耦接,且所述处理器执行所述计算机程序时,实现基于redis的反欺诈聚集度指标实时计算方法中的步骤。38.综上,本发明将redis有序集合和地理空间索引算法以及mvel规则表达式结合起来,应用在反欺诈聚集度指标高效实时计算上,其指标操作配置方便、计算速度快;同一属性新指标无需积累数据,可快速上线;为不同场景的反欺诈风险识别提供一种新的高可用、高效率的指标计算方案。39.以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献