技术应用 | 建设银行企业级湖仓一体架构实践

学术   财经   2024-11-28 16:06   北京  

文 / 中国建设银行金融科技部 孙代勇

新发展格局下,数据作为发展新质生产力的关键要素,驱动经济社会发展,推动金融行业数字化转型。习近平总书记在中央金融工作会议上提出要做好科技金融、绿色金融、普惠金融、养老金融、数字金融五篇大文章。党的二十届三中全会提出加快构建促进数字经济发展体制机制,完善促进数字产业化和产业数字化政策体系。建设银行持续深化企业级数据能力建设,从技术创新、架构牵引、应用赋能三个维度推进湖仓一体架构建设,激活数据潜能,为数字化经营提供强力支撑,提升服务质效,助力数字金融发展。


与时俱进迭代升级大数据基础技术能力

银行业在深化金融行业数字化转型,强化数据能力建设,夯实数字基础底座的过程中持续探索合适的数据处理技术,大致经历了三个阶段。2000年左右产生的单一架构的传统数仓,通过整合历史累积的业务数据,以报表、查询等形式,对业务历史数据进行统计分析。2010年左右过渡到多元化、混合架构的数据平台,通过Hadoop和传统的MPP数据库融合,处理海量结构化/非结构化数据,提供高效的数据整合、高性能的查询与分析能力。近年来演进为湖仓一体、存算分离的架构,管理多形态、多时效的全域数据,将分析发现的业务洞察嵌入业务流程,自动化、智能化驱动业务。建设银行将日益多样化的大数据技术平台化、云服务化,以存算分离、批流一体等先进技术支持海量数据的高效处理,不断提升大数据技术自主可控能力。


1.打造云化大数据平台

湖仓一体架构需要端到端体系化的技术底座支撑,打通大数据处理的各环节。建设银行结合自身业务发展需要,构建大数据技术底座,打造大数据平台的8个核心能力,实现湖仓数据一体化采集、加工、管理、分析、服务的全套技术栈,支撑湖仓一体架构。


(1)全方位的数据采集能力。支持多渠道(内部、外部)、多类型(结构化、非结构化)、多种方式(批量、实时)的数据采集,满足灵活、高效、配置化、个性化数据采集需求。


(2)高效的数据集成能力。提供湖仓数据的数据检核、转换、同步、整合等能力,以多样化的数据集成方式,降低数据加工门槛。


(3)敏捷的数据开发能力。为湖仓应用开发人员提供开发环境,支持批量数据、实时数据、图数据等多类型服务的开发,实现从开发、测试到部署全流程服务,满足应用的敏捷发布部署需求。


(4)丰富的数据分析可视化能力。提供面向不同场景的可视化,数据分析挖掘等工具和环境,满足不同用户的数据洞察需求。


(5)高性能的存储与计算能力。满足湖仓处理所需的基础资源需求,支持不同数据类型的数据存储,提供Hadoop、MPP、图数据库等基础产品,支持计算资源弹性伸缩。


(6)智能化的资源任务调度能力。通过虚拟化、云原生等技术,实现湖仓计算资源的灵活编排,任务的智能分发和运行,以及数据根据业务场景要求的高效访问。


(7)全流程的数据管理能力。对湖仓数据在平台内流动提供全流程的管理、分析及可视化服务,包括数据的实时接入、数据权限、数据血缘等功能,精细化控制数据的流动。


(8)多样化的数据服务能力。屏蔽底层数据存储和处理技术差异,通过多种服务方式,对用户提供一致的用数体验。


2.存算分离技术支持海量数据集约化处理

建设银行根据自身数据处理特点,自主设计存储计算分离的云化MPP数据库,依托建行云底层能力,在金融业首次落地存储计算分离技术。存算分离数据库与传统存算一体数据库(如Greenplum)相比,资源扩展变得更加方便,资源利用率进一步提高。同时,解决了传统MPP的集群规模限制、并发不足和故障恢复时间长等问题。


在存储计算分离基础上,建设银行打造元数据联邦,在不同元数据集群之间建立数据访问链路,实现跨集群的元数据共享,减少数据复制、搬迁带来的数据冗余。元数据集群是大数据处理的关键部件,其可用性至关重要。应用元数据联邦技术可降低单个元数据集群规模和负载,控制元数据服务的故障域;可进一步增强元数据服务资源隔离能力,不同元数据集群之间的资源完全隔离,一个集群资源使用异常不影响其他集群的运行效率。


存算分离技术为建设银行集约化管理海量数据提供了保障,目前,云化MPP生产环境部署规模超过32000节点,单集群最大规模23000节点、存储数据量21PB、每天运行作业超过1000万。


3.构建批流一体融合技术体系

随着业务场景的日益复杂,数据时效性要求日益提高,单一的流式处理或批量处理方式已无法满足业务需求。建设银行构建“流批一体”技术,实现批流数据融合存储,在不改变原来批量处理的模式下,打通流处理引擎和批处理引擎的互访能力,实现批量数据处理方便的迁移到实时数据处理,更好地满足建设银行数据线的发展。


业界实现“批流一体”主要有Lambda和Kappa,建设银行结合自身业务特性及后续发展需要,采用Lambda和Kappa融合架构。通过引入Hudi存储引擎,实现实时数据的持久化,将实时数据转换为批量数据进行存储与分析,借助Hudi功能特性实现任意时间点的数据提取,提升数据处理的灵活性。为确保流数据的准确性,打造了流批数据校验能力,用批量数据对流式数据进行校正,减少因网络波动等原因导致的流数据丢失。基于流批整合的方式,提升批数据整合的时效性,以实时累计微批替代传统的批量供数方式,显著提高数据供给时效。研发数据回放功能,将历史数据重新处理为流式数据,进行再加工与分析,支持了包括实时推荐在内的复杂业务场景,降低流式数据运用的难度。


4.全面适配信创技术栈,实现大数据技术自主可控

建设银行积极推进大数据平台对信创技术栈的适配,逐步实现核心平台及技术的自主可控。一是完成大数据平台与自主可控芯片、操作系统的全面适配,对信创软硬件不断适配和优化,保证平台功能完整、高性能、高可靠。目前,大数据平台已具备跨技术栈部署能力,支持信创环境与非信创环境组成多Region模式,用户通过统一的认证体系在信创区和非信创区之间无缝切换,实现统一的大数据应用管理视图。二是以全栈信创大数据平台为基础,选取典型应用场景,以实际大数据应用验证平台能力。截至2024年9月,大数据平台已支持物联网、客户信息、智慧安全运营、企业共享服务等10余个应用在全栈信创环境运行,涵盖数据采集、数据集成、批量及流式计算等大数据场景。


构建企业级湖仓一体架构,敏捷响应业务需求

建设银行以企业级理念,整体规划湖仓一体架构,打造可共享、可复用的数据能力,支持业务发展,敏捷响应业务需求。建设银行湖仓一体架构实现数据湖与数据仓库协同,将数据湖的灵活性、数据多样性,以及丰富的生态与云化数仓的企业级数据整合分析能力进行了融合,通过存算分离等关键技术的创新,实现全域数据采集和整合,提升数据供给的可用性、可靠性,为业务应用提供便捷、多样化的数据支持。


1.企业级架构规划设计

建设银行的湖仓一体架构支持端到端的批量、实时、批量+实时结合的数据处理模式,逻辑上采用分层设计,包括数据源、数据采集、数据湖、云化数仓、数据服务、数据应用。通过统一采集平台,行内外数据可以配置方式快速采集入湖,支持多场景多类别的多源异构数据采集,采集范围涵盖结构化、半结构化、非结构化等数据类型。数据湖是企业级数据归集存储共享环境,存放内外部多源异构的全部原始数据和轻度加工数据,打破数据孤岛,让数据更容易获取。云化数仓基于数据湖数据构建,使用更面向业务、更便捷易用的粒度模型建设方法,各系统按照统一的模型和实施工艺进行全域整合和加工计算,实现数据的互联互通和共享复用。数据服务是数据湖、云化数仓对外供数的统一出口,结合数据应用的需要,提供多种数据服务形式,方便用户用数。数据应用提供了数据可视化、数据分析挖掘等多种用数模式,支持不同类型用户的用数场景(如图所示)。

图  湖仓一体架构设计


2.跨领域数据共享复用

只有充分共享才能充分释放数据价值,建设银行湖仓架构保障企业级数据共享复用,降低基础设施资源和研发成本,提升数据供给交付效率。一是沉淀公共基础明细数据。云化数仓数据分为明细数据和衍生数据,明细数据基于数据湖数据进行选取、拼接和加工,形成衍生数据加工的基础层,支撑各应用使用,降低数据维护和使用成本。二是统一模型设计方法。建设银行创新性地建立了一套更面向业务、便捷易用的粒度模型设计方法,应用于云化数仓整合数据加工,各应用衍生数据通过整合模型的统一,实现数据互联互通,形成可信的、共享的、规范化、统一的数据源。粒度模型吸收了范式模型和维度模型的基本概念,同时又借鉴了面向业务对象建模的思想,结合关系模型、维度模型的建模方法对数据进行组织,以“数据粒度”为核心概念,采用“合并同类项”的方式对归属同一数据粒度的数据项进行去重,保证指标的单点加工。三是提供敏捷多样的数据服务方式。面向数据应用,设计了数据API,批量文件传输,实时数据订阅,数据访问代理等多种灵活的数据用数模式,构建企业级的数据服务目录,支持全行各级机构、各类用户的用数需求。


3.敏捷响应数据需求

传统中心化、集中式的数据架构下,数据研发由专职的数据团队负责,随着数据分析场景数量激增,数据服务交付时效要求越来越高,这种模式已不能适应要求。为快速响应多业务领域的数据研发需求,建设银行采取按业务领域加工各自数据的共建共享模式。将业务指标归属到所属业务领域,根据业务领域的相关性,聚类划分数据仓库的不同数据区,由最熟悉该领域业务的应用团队承担相应数据应用的研发。一个团队同时负责业务领域内交易类应用和数据类应用研发,端到端交付模式,减少学习沟通成本,更快速交付业务需求。为保障数据指标不重复加工、加工结果易于共享,各领域数据区采用统一的粒度模型设计方法,遵循一套实施工艺,基于一套智能化数据管理工具,实现数据标准、数据模型、指标定义、权威数据源等数据相关业务属性和技术属性的统一管理,形成企业级的数据视图,数据加工结果支持全域授权共享。


在技术基础和数据基础能力之上,为更好满足业务需求,建设银行建设了一体化自主用数平台,提供开箱即用的工具和环境,“所思即所见”“所见即所得”,降低用数门槛和使用成本,提升决策分析效率和质量,及时响应市场变化。


湖仓架构赋能业务提质增效

建设银行依托湖仓一体的数据架构能力,提供“准确、及时、丰富”的全域数据,深挖数据价值,敏捷赋能业务经营管理,提升金融服务质效。数据管理能力成熟度评估获得DCMM最高等级5级认证。


1.构建全域数据供应能力,不断提升业务数字化水平

基于湖仓的全域数据获取、集成整合、挖掘分析、实时计算等能力,拓宽数据处理范围,提升数据供应时效,实现数据互联互通、企业级共享,通过多种低门槛用数手段,促进新场景、新产品、新流程等的数据创新应用能力不断提升。


2.实时数据驱动决策智能应用

数据驱动的决策智能应用以观察—判断—决策—行动的决策智能模型为框架,以湖仓实时数据为基础,运用实时分析、机器学习等技术,提供用户洞察分析、运营决策分析的能力,实现更及时、更准确、更智能的运营决策支持。


3.大数据结合大模型取得新成效

建设银行探索大模型、知识图谱、图分析等新兴技术的组合应用,研发“反洗钱智能助手”应用,助力解决可疑交易特征分析难、洗钱线索情报时效差、可疑报告生成效率低等难点,可疑交易类型判断准确率大幅提升,重点可疑交易报告编制时间由原来的1个月缩减至1周。


持续优化数据供给能力“湖仓一体”架构

在建设银行的深入实践,推动了数据应用能力的升级,为数字化转型提供了坚实的技术和数据基础。在“做好金融行业五篇大文章”,“加快构建促进数字经济发展体制机制”的有利形势下,建设银行将持续推进湖仓一体架构的迭代,提升数据供给能力。一是提升大数据平台的可扩展性,根据业务需求的变化和数据量的增长进行动态资源扩展,满足企业数据处理需求。二是提升数据的安全稳定运行能力,随着数据服务嵌入到业务流程,数据线的安全稳定运行日趋重要,对于日益扩大的集群规模,要提升数据的安全生产管理能力,化解数据安全生产风险,保障业务连续性。三是加强数据处理的可观测性,建立数据加工依赖监测指标,构建可视化工具,及时发现解决潜在的数据问题,不断优化数据处理效率。


(此文刊发于《金融电子化》2024年10月上半月刊)








新媒体中心

主任 / 邝源

编辑 / 姚亮宇  傅甜甜  张珺  邰思琪

金融电子化
面向金融界科技人员、业务人员,在金融信息化建设中,为领导决策提供参考,为科技人员和业务人员提供交流的园地以及了解科技应用的窗口,为读者提供金融信息化发展最前沿的各类知识和信息。
 最新文章