预防金融欺诈是一场与时间的赛跑。在实现方面,它严重依赖于数据处理能力,尤其是在大型数据集下。今天,我将与您分享一家拥有超过 6.5 亿个人客户的零售银行的用例。他们比较了分析组件,包括 Apache Doris、ClickHouse、Greenplum、Cassandra 和 Kylin。经过基于 89 个自定义测试用例的五轮部署和比较后,他们选择了 Apache Doris,因为与强大的 ClickHouse 相比,Apache Doris 的写入速度提高了六倍,并且多表连接速度更快。
我将详细介绍该银行如何基于 Apache Doris 构建欺诈风险管理平台及其执行情况。
欺诈风险管理平台
在此平台中,80% 的即席查询返回的结果少于 2 秒,其中 95% 在 5 秒内完成。平均而言,该解决方案拦截数以万计的可疑交易< /strong>每天为银行客户避免数百万美元的损失。
这是从架构角度对整个平台的概述。
源数据可大致分类为:
- 维度数据:主要存储在 PostgreSQL 中
- 实时交易数据:通过Kafka消息队列与各种外部系统解耦
- 离线数据:直接从外部系统提取到 Hive,使数据协调变得简单
对于数据摄取,这就是他们收集三种类型源数据的方式。首先,他们利用 JDBC Catalog 同步来自 PostgreSQL 的元数据和用户数据。 p>
交易数据需要结合维度数据进行进一步分析。因此,他们使用 Flink SQL API 从 PostgreSQL 读取维度数据,从 Kafka 读取实时事务数据。然后,在 Flink 中,他们进行多流连接并生成宽表。对于维度表的实时刷新,他们采用了Lookup Join机制,在处理数据流时动态查找并刷新维度数据。他们还利用 Java UDF 来满足 ETL 中的特定需求。之后,他们通过Flink-Doris-Connector将数据写入Apache Doris。< /p>
离线数据被清理、转换并写入 Hive、Kafka 和 PostgreSQL,Doris 为其创建目录作为映射基于其多目录功能来促进联合分析。在此过程中,Hive Metastore 自动访问和刷新 Hive 中的数据。
在数据建模方面,他们使用Apache Doris作为数据仓库并应用不同的<不同层的 href="https://doris.apache.org/docs/data-table/data-model">数据模型。每层以较粗的粒度聚合或汇总来自前一层的数据。最终,它会生成高度聚合的 Rollup 或物化视图。
现在,让我向您展示此平台上正在运行哪些分析任务。根据监控规模和人工参与程度,这些任务可以分为实时风险报告、多维度分析、联合查询和自动警报。
实时风险报告
在预防欺诈方面,是什么削弱了反欺诈工作的有效性?潜在风险暴露不完全、风险识别不及时。这就是为什么人们总是想要实时、全面的监控和报告。
该银行的解决方案基于 Apache Flink 和 Apache Doris 构建。首先,他们将 17 个维度放在一起。经过清理、聚合和其他计算后,他们在实时仪表板上可视化数据。
就规模而言,它分析了超过 1000 万客户、30,000 名客户的工作流程职员、10,000 个分支机构和 1000 种产品。
至于速度,银行现在已经从次日数据刷新发展到接近真实数据- 时间数据处理。有针对性的分析可以在几分钟而不是几小时内完成。该解决方案还支持复杂的即席查询,通过监控数据模型和规则的运行方式来捕获潜在风险。
多维度分析识别风险
案件追踪是另一种常见的反欺诈做法。该银行有一个欺诈模型库。他们根据欺诈模型分析每笔交易的风险并近乎实时地可视化结果,以便员工可以在需要时及时采取措施。
为此,他们使用 Apache Doris 对案例进行多维分析。他们检查交易模式,包括来源、类型和时间,以获得全面的概览。在这个过程中,他们往往需要组合不同维度的10多个过滤条件。这是由 Apache Doris 的即席查询功能支持的。基于规则的匹配和基于列表的案例匹配都可以在几秒钟内完成,无需手动操作。
联合查询以查找风险详细信息
除了识别每笔交易的风险外,银行还会收到客户的风险报告。在这些情况下,相应的交易将被标记为“有风险”,并将被分类并记录在票务系统中。这些标签确保高风险交易得到及时处理。
一个问题是,票务系统因此类数据而超载,因此无法直接呈现所有详细信息的风险交易。需要做的就是将票据与交易明细关联起来,以便银行工作人员定位实际风险。
这是如何实现的? Apache Doris 每天都会遍历增量工单和基本信息表,获取工单 ID,然后将工单 ID 与自身存储的维度数据关联起来。最后,门票详细信息会显示在 Doris 的前端。整个过程只需几分钟。与以前必须手动查找可疑交易相比,这是一个巨大的游戏变化。
自动提醒
银行基于Apache Doris,设计了自己的报警规则、模型和策略。系统监控一切的运行情况。一旦检测到符合报警规则的情况,就会触发报警。他们还建立了报警规则的实时反馈机制,如果新添加的规则造成任何负面影响,会迅速调整或删除。
目前,该行已在系统中新增近百条各类风险的预警规则。近两个月内,风险情况发生后不到5秒,就发出了超过100个警报,准确率超过95%。 p>