某电商基于阿里云Flink的实时风控实践

本文涉及的产品
实时计算 Flink 版,1000CU*H 3个月
简介: 客户成功基于阿里云实时计算 Flink 版的企业级CEP能力落地实时风控解决方案,更近一步基于阿里云Flink实现"精准营销"。

背景


许多互联网电商行业客户当前已经基于阿里云云原生的大数据解决方案(DataWorks、MaxCompute、Flink、Hologres)构建起离线和实时数据一体化的数据中台,为各业务线提供BI报表及数据接口支持。电商行业客户在数仓的分析场景外,也面临业务系统中的风控需求。比如:每季度的营销费用中,不少的羊毛党薅走正常用户的利益。羊毛党一方面导致可能导致用户的口碑下降,另一方面原有的活动运营预算迅速攀升从而导致资损。阿里云实时计算Flink通过特有的实时风控能力帮助客户准确识别羊毛党,防止营销预算流失。


客户的预期“实时风控”系统设计中,希望选择一款合适的"规则引擎"做为整体技术架构提供能力支撑。通过规则的动态化,多维度的规则组合来实现业务目标。“实时风控”项目一期基于 Flink 的能力,底层通过 Flink SQL 实现,支持规则上指标阈值的动态化,在初期满足风控专员的一些固定场景。随着系统实际运行后,逐渐暴露出一些开源Flink的能力不满足点,最终客户成功基于阿里云实时计算 Flink 版的企业级CEP能力落地实时风控解决方案,更近一步基于阿里云Flink实现"精准营销"。


业务需求



业务业务需求,所采用的“规则引擎”必须包含如下能力:


"精准营销"主要业务逻辑:

  1. 多种触发形式
  • 定时调度型
  • 事件触发型
  1. 用户分析

需要支持多条件的且、或关系组合

  • 用户自然属性 行为属性 统计分析

统计分析 年龄、性别、所属区域、累计,首次消费、未次消费等

  • 用户行为序列分析

做了事件 A、做了事件 A 紧接着做了事件 B、做了事件 A 且 N 分钟之后做了事件 B、做了事件 A 且 N 分钟之后没有做事件 B、没做事件 A

  1. 多种触达方式
  • 对接下游触达系统
  • 支持退出计划(单规则只触达单用户1次或 N 次,多规则只触达单用户1次或 N 次,黑白名单机制)


其中 用户分析 为配置规则的重点环节,合理的技术引擎必须能支持:

  1. 规则的在线启、停
  2. 规则的以下维度的动态化配置
  • 聚合的字段
  • 分组字段
  • 聚合函数
  • 窗口大小
  • 阈值
  • 计算符号
  • 行为序列的组合


技术实践



通过剖析需求,实时规则和离线规则的本质上是批流场景的问题:

  • 当规则时间选择为:T-1 ~ T-N,对应纯离线表
  • 当规则时间选择为:T     ~ T-N,对应离线表+实时表
  • 当规则时间选择为:T     ~ T+N,对应实时表+流式数据


客户的技术实施中还考虑了业务系统运行中的实际问题,并且将这些目标融入在平台设计中:

  • 规则变化是常见的吗?是高频的吗?

是常见的,但不是高频的。规则的变化通常是由于业务策略发生变化,类似表结构的变化,业务中比较常见,但并不是高频的修改。

  • 当规则个数为0时,直接丢弃数据,是否可以满足用户需求?

可以丢弃数据。基于业务需求,先有规则,再有规则的计算。

  • 当规则被删除/更新之后,直接丢弃部分匹配事件,是否可以满足用户需求?

可以丢弃部分匹配事件

  • 是否需要通知机制,知道当前规则生效/更新等状态变化?

不需要。但设计上应该将 执行引擎 和 规则描述 分开在两个系统中,以便能直接查看到现有的规则。可以通过一条特殊的规则如"Export All Rules"导致出有存量规则信息(含规则ID,规则内容,规则状态)。

  • 是否需要多规则?

如果需要多规则、是否所有规则的 Key 是一样的

如果需要多规则、两层结构是否可以满足需求

如果需要多规则,是否有需求,某些数据只针对特定规则生效

需要多规则,且不同规则的 Key 可能不一致。即动态 KeyBy。例如:

规则

聚合字段

Rule1

{member_id: A}

Rule2

{member_id: A; shop_id:E01}

  • 是否还有其他需求?

规则在定义时是否能指定 Flink 内置的特定累加器和需要累计的字段

  • 统计型规则如何和 CEP 在同一个 Flink Job 内完成对接?

通过 CEP 动态规则(含累加器选择)将纯统计规则看作是特定的 CEP 场景


针对其中流式序列型数据,开源Apache Flink CEP 实现有两个困难点

  • Flink 社区现有的 CEP API 不支持动态改 Pattern(无法满足上层规则中台、风控中台的可集成性)
  • Flink 社区现有的 CEP API 不支持时间驱动状态跳变


阿里云工程师和客户共同攻坚,使用阿里云 Flink 的方案顺利落地。其中特别是 Flink + Hologres 提供的动态CEP规则替换能力,完美弥补了开源Flink能力的局限。规则作业发布后线上持续运行期间修改规则条件和规则阈值,不需要进行任务发布和重启。

  • 将 Flink作业逻辑开发 和 规则描述 两者完全解耦开
  • 规则描述存储在Hologres中,便于查看规则状态和历史版本
  • 规则变化时只修改Hologres中的规则,Flink自动加载完成规则更新
  • 结合Flink生态,可以轻松扩展事件源组件和事件写出组件
  • 结合Flink分布式能力,可以大规模扩展到上千并发度



该技术方案已经顺利在客户上线并在生产环境应用,在该方案中并不引入新的技术组件和编程语言,最大化复用Flink资源来实现新业务场景,降低了新组件可能引入的潜在运维风险。另一方面也极大降低了团队的学习成本,将实时计算的人力最高效的释放出来。


未来规划


关于阿里云实时计算Flink在风控方向的未来规划将围绕三个主要方向展开:

  1. Flink CEP能力的进一步增强
  2. Flink CEP SQL的动态能力
  3. Flink + DSL的Native支持(目前已提供 Flink + Drools 预览版能力
相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
1月前
|
人工智能 数据处理 API
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
Apache Flink Agents 是由阿里云、Ververica、Confluent 与 LinkedIn 联合推出的开源子项目,旨在基于 Flink 构建可扩展、事件驱动的生产级 AI 智能体框架,实现数据与智能的实时融合。
318 6
阿里云、Ververica、Confluent 与 LinkedIn 携手推进流式创新,共筑基于 Apache Flink Agents 的智能体 AI 未来
|
1月前
|
存储 运维 分布式计算
零售数据湖的进化之路:滔搏从Lambda架构到阿里云Flink+Paimon统一架构的实战实践
在数字化浪潮席卷全球的今天,传统零售企业面临着前所未有的技术挑战和转型压力。本文整理自 Flink Forward Asia 2025 城市巡回上海站,滔搏技术负责人分享了滔搏从传统 Lambda 架构向阿里云实时计算 Flink 版+Paimon 统一架构转型的完整实战历程。这不仅是一次技术架构的重大升级,更是中国零售企业拥抱实时数据湖仓一体化的典型案例。
150 0
|
7月前
|
存储 监控 数据挖掘
京东物流基于Flink & StarRocks的湖仓建设实践
本文整理自京东物流高级数据开发工程师梁宝彬在Flink Forward Asia 2024的分享,聚焦实时湖仓的探索与建设、应用实践、问题思考及未来展望。内容涵盖京东物流通过Flink和Paimon等技术构建实时湖仓体系的过程,解决复杂业务场景下的数据分析挑战,如多维OLAP分析、大屏监控等。同时,文章详细介绍了基于StarRocks的湖仓一体方案,优化存储成本并提升查询效率,以及存算分离的应用实践。最后,对未来数据服务的发展方向进行了展望,计划推广长周期数据存储服务和原生数据湖建设,进一步提升数据分析能力。
718 1
京东物流基于Flink & StarRocks的湖仓建设实践
|
5月前
|
资源调度 Kubernetes 流计算
Flink在B站的大规模云原生实践
本文基于哔哩哔哩资深开发工程师丁国涛在Flink Forward Asia 2024云原生专场的分享,围绕Flink On K8S的实践展开。内容涵盖五个部分:背景介绍、功能及稳定性优化、性能优化、运维优化和未来展望。文章详细分析了从YARN迁移到K8S的优势与挑战,包括资源池统一、环境一致性改进及隔离性提升,并针对镜像优化、Pod异常处理、启动速度优化等问题提出解决方案。此外,还探讨了多机房容灾、负载均衡及潮汐混部等未来发展方向,为Flink云原生化提供了全面的技术参考。
334 9
Flink在B站的大规模云原生实践
|
6月前
|
SQL 存储 NoSQL
Flink x Paimon 在抖音集团生活服务的落地实践
本文整理自抖音集团数据工程师陆魏与流式计算工程冯向宇在Flink Forward Asia 2024的分享,聚焦抖音生活服务业务中的实时数仓技术演变及Paimon湖仓实践。文章分为三部分:背景及现状、Paimon湖仓实践与技术优化。通过引入Paimon,解决了传统实时数仓开发效率低、资源浪费、稳定性差等问题,显著提升了开发运维效率、节省资源并增强了任务稳定性。同时,文中详细探讨了Paimon在维表实践、宽表建设、标签变更检测等场景的应用,并介绍了其核心技术优化与未来规划。
625 10
Flink x Paimon 在抖音集团生活服务的落地实践
|
6月前
|
资源调度 Kubernetes 调度
网易游戏 Flink 云原生实践
本文分享了网易游戏在Flink实时计算领域的资源管理与架构演进经验,从Yarn到K8s云原生,再到混合云的实践历程。文章详细解析了各阶段的技术挑战与解决方案,包括资源隔离、弹性伸缩、自动扩缩容及服务混部等关键能力的实现。通过混合云架构,网易游戏显著提升了资源利用率,降低了30%机器成本,小作业计算成本下降40%,并为未来性能优化、流批一体及智能运维奠定了基础。
386 9
网易游戏 Flink 云原生实践
|
8月前
|
存储 运维 BI
万字长文带你深入广告场景Paimon+Flink全链路探索与实践
本文将结合实时、离线数据研发痛点和当下Paimon的特性,以实例呈现低门槛、低成本、分钟级延迟的流批一体化方案,点击文章阅读详细内容~
|
3月前
|
存储 分布式计算 数据处理
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
阿里云实时计算Flink团队,全球领先的流计算引擎缔造者,支撑双11万亿级数据处理,推动Apache Flink技术发展。现招募Flink执行引擎、存储引擎、数据通道、平台管控及产品经理人才,地点覆盖北京、杭州、上海。技术深度参与开源核心,打造企业级实时计算解决方案,助力全球企业实现毫秒洞察。
470 0
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
|
运维 数据处理 数据安全/隐私保护
阿里云实时计算Flink版测评报告
该测评报告详细介绍了阿里云实时计算Flink版在用户行为分析与标签画像中的应用实践,展示了其毫秒级的数据处理能力和高效的开发流程。报告还全面评测了该服务在稳定性、性能、开发运维及安全性方面的卓越表现,并对比自建Flink集群的优势。最后,报告评估了其成本效益,强调了其灵活扩展性和高投资回报率,适合各类实时数据处理需求。

相关产品

  • 实时计算 Flink版