实时数据处理在银行交易风险监控中的应用

2020-09-10 07:55罗阳陈昱莹
看世界·学术上半月 2020年12期
关键词:滑动数据处理页面

罗阳 陈昱莹

随着大数据时代的到来,全行数据量呈现爆炸式增长,银行快速步入数据驱动未来的新时代。面对海量增长的用户交易数据与行为数据,以及日趋严苛的数据时效性要求,传统的T+1批处理模式已难以满足目前的高时效业务需求。针对上述问题,基于流数据的实时数据分析方法逐渐受到大家的青睐,该方法能够在数据发生的第一时间产生响应,及时作出相应处理及反馈,也可以结合存量數据或借助数据仓库等系统批处理的数据,实时地分析出准确的结果。

本文首先简单介绍了Flink流处理框架的原理与逻辑,然后通过该框架在三个交易与风险实时监控的实际案例中的应用,体现Flink流处理框架的实际应用优势。

一、关于Flink与Kafka

(一)关于Flink

1、:Flink框架简介

Flink是由Apache软件基金会开发的开源批处理和流处理结合的统一计算框架,核心是一个提供了数据分发以及并行化计算的流数据处理引擎。作为流数据的处理引擎,Flink有着高吞吐量、低延迟、优秀的扩展性、可靠性,以及高容错性等优点。

2、:Flink窗口简介

窗口是Flink流计算的核心,窗口可以分为滚动窗口,滑动窗口,会话窗口。

滚动窗口:固定相同间隔分配窗口。

滑动窗口:固定相同间隔分配窗口,只不过每个窗口之间有重叠。窗口重叠的部分如果比窗口小,窗口将会有多个重叠,即一个元素可能被分配到多个窗口里去。

会话窗口:主要是根据活动的事件进行窗口化,他们通常不重叠,也没有一个固定的开始和结束时间。一个会话窗口关闭通常是由于一段时间没有收到元素。在这种用户交互事件流中,我们首先想到的是将事件聚合到会话窗口中(一段用户持续活跃的周期),由非活跃的间隙分隔开。

(二)关于Kafka

1、:Kafka平台简介

Kafka是由Apache软件基金会开发的一个高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。

2、:Kafka的Topic

Topic是Kafka数据写入操作的基本单元,Flink作业会指定消费Kafka中特定Topic的信息。

二、案例介绍

(一) 银行卡交易监控功能需求

针对洗钱与诈骗中常见的交易特征:多笔小额转入后一笔大额转出;一笔大额转入后的多笔小额转出。该需求提出了以下两种实时监控规则([]内为可配置参数):

针对单个账户,[X]分钟内[Y]笔资金转入后一次性转出(转出后账户资金余额小于M元),类似交易场景一天内累计发生[Z]次以上。”系统即在当晚跑批时对当天单个账户[X]分钟内发生[Y]次转入一次转出,相关业务场景当天累计发生[Z]次以上的账户登记为异常账户。

案例分析:经过分析规则得出方案,可通过判断每笔转出交易之前20分钟内的最后三笔交易状态的值当前交易是否触发两个规则。

实现方案:使用Flink消费由业务系统推到Kafka的交易流水的Topic,将所有账户的交易存到其所属客户号为key的缓存中(失效时间为1小时),同时针对每条转出交易结合缓存中的同账户历史交易,实时判断是否触发规则。

(二)某类贷款提款断点续接

建立某类贷款提款中断策略机制,基于客户行为埋点数据(埋点数据包含客户在客户端上所有的页面访问、访问时间、客户号等实时数据),对客户的交易行为进行监测。对于进入了某类贷款申请页面,X分钟后没有进入到结束页面的客户,筛选掉不符合要求的客户后,记录入库并按照要求通过客服电话或者短信的方式联系营销服务客户。

案例分析:规则中要求筛选出X分钟内没有进入到结束页面的客户,这里可以用到Flink的会话窗口。

实现方案:Flink消费Kafka中埋点的topic,根据埋点流数据中为key的网银客户号,若该客户号访问了某类贷款提款的起始页面则建会话窗口,超时时间为X分钟。窗口结束后判断窗口中是否访问过某类贷款提款结束页面,若未访问,则将流水记录落库,并做之后通过客服电话或者短信的方式联系营销服务客户的动作。

(三)某类贷款贷后监控规则需求

疑似群发假贷款-同一XXX项下相同特征多个借款人同时存款同一合作项目项下/同一客户经理名下/同一...,当天X分钟(在当天任意连续X分钟)内,有>=Y个不同借款人,在同一柜员编号向还款账户存入与月还款额相近((100-M)%——(100+M)%)的金额,在触发以上报警后的连续Z个自然月内该笔贷款再触发同一规则不再重复报警(通过交易过滤天数实现)。

案例分析:规则中要求当天任意连续X分钟,这里可以使用Flink的滑动窗口。

实现方案:使用Flink消费由业务系统推到Kafka的交易流水,首先根据还款账户、借款凭证号等信息关联其他的实时业务数据表补充信息(月还款额等),然后将数据按照柜员编号分组并放到X分钟大小的滑动窗口中(窗口的滑动时间根据业务量判断,可设置1分钟滑动一次),判断同一合作项目下/同一客户经理名下/同一... 向还款账户存款是否触发规则,记录入数据库中以及进行后续的步骤。

三、总结和展望

本文简要介绍了一个流数据处理的计算框架Flink的原理与逻辑,并介绍了该框架在三个交易与风险实时监控实际场景中应用的实现案例。这些案例都展现出了Flink流数据处理有着诸多的优点,比如高时效性,即可在事件发生的时候实时进行需要的判断以及处理;高扩展性,可以通过扩充集群来应对计算资源不足的问题。

随着疫情的好转,经济发展逐步恢复正常,金融数据量也将会呈现出更迅猛的增长趋势,面对高时效的大数据处理需求,基于流数据的实时数据处理必将成为未来最主流的发展趋势。

猜你喜欢
滑动数据处理页面
电容式传感系统数据处理电路的设计
答案
基于ARCGIS 的三种数据处理方法的效率对比研究
让Word同时拥有横向页和纵向页
高层建筑沉降监测数据处理中多元回归分析方法的应用研究
高层建筑沉降监测数据处理中多元回归分析方法的应用研究
视频大数据处理的设计与应用
一种动态足球射门训练器
关于滑动变阻器的规格问题
驱动器页面文件大小的总数为何总是07