技术实践| 基于Flink技术组件,助力实时数仓建设
长亮动态
2022.10.28

随着互联网的发展进入下半场,数据的时效性对企业的精细化运营越来越重要。商场如战场,在每天产生的海量数据中,如何实时挖掘有价值的信息并快速触达客户,对企业的运营决策调整、用户体验提升等都有很大帮助。为了让数据更高效的反哺业务、更及时地支撑决策,最大化发挥数据价值,企业开始探索通过构建实时数仓来满足快速获取数据的需求。


实时数据仓库集实时数据采集、实时数据处理、离线数据校正和数据定制化展示4大功能一体,可支持实时经营分析、实时营销、实时风控等场景的需求。新场景的出现催产出新的技术,新一代实时计算引擎Flink的兴起,在超高性能、数据一致性保障、SQL化编程方式等特点下也推动了实时数仓的发展。基于Flink架构的实时数仓为各类实时应用场景提供数据基础,在数据中台体系中起着至关重要的作用。


长亮科技作为金融科技领先企业,也对实时数仓建设做了大量的尝试和实践。本文将以长亮科技参与建设的某城商行实时数仓建设项目为引子,分享基于Flink技术组件建设实时数仓的经验。


某城商行实时数仓建设方案


实时数仓建设在保证数据准确性的情况,最优先考虑的问题就是如何保证数据的实时性,因此Kafka、Hbase这类读写效率较高的技术组件成为实时数仓数据交换组件的首选。根据选型组件的特性以及实时性的要求,实时数仓架构分层需注意以下几点:


· 简化链路,尽可能缩减数据处理链路,最大化保证数据实时性;

· 实时数仓数据流转在Kafka去结构化消息队列,数仓各层需分工明确,方便操作人员对数据进行回溯、定位;

· 准备离线数据对实时数据的校验,防止计算错误或者遗漏的情况;

· 因为实时数仓任务均为7x24不间断运行,如果出现意外情况某一层链路终端,实时数仓就会出现断数的情况,这时候需要离线数据保证查询服务可以正常返回数据。


综上所述,实时数仓构建分为4层,各层具体说明如下:


· RTL:技术解析层,通过数据采集工具收集各个业务源数据,数据结构保持一致;

· ROL:贴源层,分为实时区和离线区两个区域,实时区存放经过一定清洗/标准化的数据,离线区存放每日同步的离线维度数据;

· RCL:汇总共享层,存放轻度汇总和可以共享的数据,数据按照一定规则进行分类,达到可以复用的目的;

· RDL:数据服务层,将RCL层数据进行指标化加工,包括分析、应用汇总类指标以及明细数据;分为实时区和离线区,实时区存放实时指标结果,离线区存放每日离线指标结果,用于数据保底与实时数据校验。


不同场景下的实时数据处理链路


实时数据应用包含实时指标计算、流式传输、实时风控、实时营销、实时对客等多种业务场景。基于FlinkSQL+OLAP的生产链路,实时数据通过采集工具同步至消息队列进行承载,再经由实时数仓进行业务加工后,落地到各类存储,最后由下游业务系统接收处理或者由数据服务平台推送给各类终端进行展示,整条链路兼顾了数据的时效性与查询的高效性。


在某城商行实时数仓建设项目中,其主要业务场景包括实时资产负债、实时管理驾驶舱以及实时监管数据监测等。


场景一:实时资产负债:实时获取各业务系统用户动账后的余额,通过关联相关维度信息补充数据到结果表,后续由前端查询实时结果表返回数据;

通过构建实时、离线两张Hbase结果表并实时比对的方式应对用户对实时交易、不动帐的实时查询需求,相比于采取“昨日离线余额+今日实时发生额”的原始查询方案,更能提升查询结果的时效性,规避了每日日切时间与跑批时间段的空窗期数据时效性的问题。


场景二:实时管理驾驶舱:通过实时获取交易动账,对全行级别的资金流入流出金额、客户资产、申贷金额及人数等指标进行实时展示;

以实时资金流入流出统计为例,对当日交易动账数据按照指标粒度进行分组聚合,保证每个粒度在RDL层rowkey相同,每获取到一条动账信息,计算出最新的资金金额后根据rowkey实时更新hbase表结果数据。


场景三:实时监管数据监测:根据制定的监管命中逻辑对当日交易流水进行监控,符合命中逻辑的数据发送到下游进行交易限制等处理;

以涉赌涉诈需求为例,监管命中逻辑为在非柜面系统中,连续发生涉及5个不同用户名及以上的收款、转账等资金交易,且每笔交易间隔不超过3分钟、每笔金额在0.01-10元。此类场景可基于Flink的over窗口功能与事件时间,通过计算交易流水前后一段时间内对手客户数量及交易金额,判断是否满足命中逻辑,从而打上命中标记发往下游系统。


通过采用Flink技术构建实时数仓,我们将数据生产的各个环节抽象化形成实时数仓的各层架构,实现了全栈实时数据应用的数据源统一,保障了应用数据指标和维度的口径一致,助力获取实时数据的便捷性和时效性大大提升,从而提升客户的整体运营效率。


结语:

在当前数字化转型大潮中,实时数据仓库的建设作为数据中台体系的重要组成部分,对金融机构而言意义重大。而长亮科技在实时数据处理领域有丰富的实施经验,已为中国银行、南京银行、柳州银行等不同规模的银行提供了实时数据处理解决方案。未来,长亮科技将在实时数仓领域探索更多新业务形态的落地,助力客户高效挖掘数据价值、反哺业务发展!



让中国金融科技 具有世界影响力
长亮科技更懂如何为您的数字化转型赋能