这是彭文华的第100篇原创
Flink开始往各大厂渗透了,虽然批处理能力弱了一些,但是流式数据基本已经是标配了。Flink不仅有优秀的Checkpoint机制(流式数据快照)、Watermark机制(解决乱序问题),还有及其强大的规则引擎--CEP(Complex Event Processing复杂事件处理)。他就像是一个正则表达式一样,从一串串流动的数据中,按照规则提取所需的数据进行加工处理。
CEP的使用场景
CEP其实就是一个规则引擎,把符合规则的所有数据都拉出来。Flink在实时处理的超高性能非常适合做一些实时逻辑判断的事情,比如风控。
如上图所示,原始数据流中源源不断的走过非常多的数据,我们定义一个CEP,假设是某个IP地址连续抢5个红包。一旦数据流中出现这种情况,Flink会迅速锁定,交给后续处理。
所以CEP会非常适合流式数据中的各种逻辑判断,适用一些实时性要求非常高的场景,比如异常行为监测(风控)、策略营销(抢单模式)、运维(流量抖动)。
风控的例子可以举出很多来,视频网站刷流量、电商网站抢红包、黑产等等,只要数据流中有相关数据,简单设置一个CEP就能瞬间监测出来,立刻处理掉。比如所有账号,短时间内购买优惠产品超过100个,基本可以判断是黑产了。
策略营销的场景,滴滴分享过一些实时营销场景:
乘客线上冒泡1分钟没发单;
乘客下单后2