01、数据平台架构演进
大数据基础设施的发展经历了四个主要阶段,每个阶段都有着标志性的技术进步来应对新的应用需求。
第一阶段:数据仓库。在这个阶段,数据平台主要用于支持在线分析处理(OLAP)和商业智能(BI)报表分析。技术上的代表包括 Oracle 的共享存储架构和 Teradata 的大规模并行处理架构。
第二阶段:数据平台。随着大数据的兴起,数据平台开始以大规模数据存储和计算为特点,主要服务于流批计算场景。这一阶段的代表技术是 Hadoop,它从早期的单一 MapReduce 计算引擎发展到支持多元化计算引擎的 2.0 阶段,能够应对更复杂的数据分析需求。
第三阶段:数据中台。数据中台在技术上延续了数据平台的相关技术,如Hadoop,并融合了数据组织和变革管理,形成了更为完善的数据服务能力。
第四阶段:云数据平台。当前的云数据平台以云原生架构为基础,提供了如云数据仓库等创新产品。代表产品包括 Snowflake 和 Databricks,它们支持云上多租户资源弹性伸缩和按使用量计费。技术上,这一阶段出现了流批一体、湖仓一体和存算分离等先进的数据架构。
当前数据平台发展的第一个重要趋势是云原生与大数据的结合。这种结合形成了一种新型的数据平台架构,它利用云原生的资源调度和存储统一负载能力,在资源利用率、弹性调度计算以及标准化部署和升级等方面发挥云原生的优势。这种架构不仅提高了数据处理效率,还增强了数据平台的灵活性和可扩展性,为企业提供了更加高效和可靠的数据服务。
第二个重要趋势是湖仓一体,传统的湖仓融合架构虽然能够处理多种数据类型,但由于数据冗余存储和依赖 ETL 任务的数据搬运,存在数据时效性和一致性差的问题,同时增加了开发和运维的复杂性。
湖仓一体架构则解决了这些问题,它整合了数据湖和数据仓库的优势,创建一体化和开放式的数据处理平台。这种架构允许底层统一存储和管理多种类型的数据,并实现了数据在湖仓之间的高效调度和管理。此外,它还能够向业务层提供统一的查询和分析能力,提高了数据的时效性和一致性,降低了开发和运维成本,为企业的数据分析和决策提供了强有力的支持。
第三个重要趋势是存算分离。长期以来,Hadoop 一直以存算一体的架构提供大数据能力,但随着企业内部网络带宽的快速增长和数据规模的膨胀,以及数据湖技术的发展,大数据基础设施正朝着存算分离的架构演进。
存算分离的核心是将 Hadoop 的资源调度 Yarn 和存储集群 HDFS 分开部署,实现存储和资源管理的解耦。这种方式虽然会增加运维负担且牺牲一些本地读性能,但实践经验表明,这些损失是可控的,尤其适用于关注成本和私有化场景的客户场景。
进入云原生时代后,存算分离的架构变得更加多元化。底层存储可以是 HDFS,也可以是 S3 对象存储等,而资源调度框架则全面拥抱 Kubernetes 进行资源调度和管理。这种架构提供了更高的灵活性和扩展性,有助于优化资源使用和降低成本,同时保持大数据平台的高性能和可靠性。
第四个趋势是混合云和数据云。随着企业数据中心的日益普及,同时存在于公有云和私有云的情况越来越常见。企业需要一套平台来统一管理这两类云上的数据中心,确保跨云数据流动的安全。
为了保障企业内部及企业间数据的安全流通,需要采用如数据沙箱、隐私计算等技术。这些技术可以帮助解决数据在不同企业间安全流动的问题。对于一个数据平台来说,支持多租户之间数据安全流通的解决方案是必不可少的。
02、金融信创对数据平台的挑战
接下来,在第二部分中,将聚焦于金融信创领域,剖析数据平台所面临的挑战。
“信创”是我国信息技术应用创新的简称,其目标是推动 IT 产业链核心技术的国产化,实现安全自主可控。大数据组件的信创化适配是信创战略的重要组成部分。在金融行业,信创化的推广和落地正在加速进行,大数据组件信创适配是当下的重要挑战。
大数据信创化的必要性主要体现在两个方面:一是海外大数据平台产品如 CDH 的许可费用高昂,二是这些产品并不能完全支持我国信创环境中的软件和硬件。因此,大数据组件的信创化适配成为了一项重要任务。
信创化适配过程远比简单的开源技术迁移复杂。首先,需要对国产 CPU 芯片、操作系统、数据库和云平台等进行逐一适配。完成这一阶段后,还需解决不同大数据组件间的版本冲突、依赖包冲突,以及组件组合使用中的问题。这要求专业的大数据团队基于开源技术,经过编译、组装、打包、部署和测试等一系列流程,最终实现可交付给客户的生产环境部署。
第二个挑战是大数据组件的稳定性、性能和安全。为确保在创新环境下的大数据组件具备高可用性和稳定性,需执行以下步骤:
- 全面适配主流大数据计算、存储和分析组件,确保它们能在云原生环境下顺利运行。
- 对适配后的组件进行性能调优,以解决信创与非信创环境下性能差异的问题。
- 针对云原生环境和存算分离架构进行性能优化,以满足不同业务场景需求。
- 进行大规模性能测试和优化,确保组件在实际部署中的表现。
同时,大数据平台的安全性不容忽视。需从用户管理、租户管理、权限管理和审计中心等多维度保障平台安全。这包括对安全组件如 Kerberos、OpenLDAP 等进行信创环境适配,以及对多租户系统、权限系统和审计系统等进行信创化适配。通过全面的安全保障措施,确保大数据平台在信创环境下的安全性。
第三个挑战是大数据集群的迁移和混合部署。这个过程是逐步推进的,涉及新老集群的并行运行和过渡。因此,需要开发支持异构环境下集群数据迁移的工具,并最大化复用现有老集群的服务器资源。
为了有效复用原有资源,信创大数据平台需具备多种混合部署的能力。这包括支持不同 CPU 架构、硬件规格和操作系统之间的混合部署。这些要求对大数据信创化提出了更高的挑战。
03、云数据智能平台 DataCyber
第三部分详细介绍数新网络在金融信创背景下独立自主研发的云数据智能平台 DataCyber 的架构设计和相关实践。
1. 设计目标
在介绍 DataCyber 技术架构之前,首先阐明一下整个系统的设计目标。平台的首要设计目标是在国产信创环境下,打造一个技术上自主可控的大数据平台。同时,我们并不追求从零开始研发大数据引擎,而是希望通过开源社区生态,共同参与构建新的大数据引擎技术,确保平台的开放性和兼容性。
在技术选型上,我们采用的是云原生湖仓一体的架构。这种架构结合了云原生和湖仓一体的技术优势,实现新一代云数据智能平台。我们还希望平台能够实现 Data + AI 一体化,即数据平台和 AI 平台之间的打通,抽象和提取两个平台通用的技术组件,打通账号租户体系等等。
此外,整个平台是基于多租户体系设计的。既要保障租户内部的隔离和安全,也要支持跨租户之间的数据开放共享。这是数据平台的关键能力,特别是在金融场景下,客户需要在不同企业主体之间通过数据流通实现数据价值分析和挖掘。
2. 架构设计
上图展示了 DataCyber 的总体架构,DataCyber 是一个开放式的云数据智能平台,它的设计旨在支持异构硬件环境,包括传统的 X86 服务器以及 ARM、MIPS 等新兴 CPU 架构。平台底层能够适应不同云平台厂商的私有云、混合云等场景。
DataCyber 的产品矩阵由下至上分为几个层次:
- CyberEngine:负责提供湖仓引擎底座以及大数据集群管理运维能力,为数据平台和 AI 平台提供底座支撑。
- CyberData:面向开发者和用户提供数据平台的一站式产品能力。
- CyberAI:面向开发者和用户提供 AI 平台的一站式产品能力。
- CyberMarket:负责跨租户之间安全流通数据模型、算法应用,促进数据价值的最大化。
后续将详细介绍 DataCyber 各个组件的架构,展示如何通过这些组件实现数据的智能处理和分析,以及如何在确保安全的前提下促进数据在不同租户间的共享和流通。
(1)CyberEngine
首先介绍一下赛博数智引擎 CyberEngine ,它是一个先进的大数据管理平台,其架构设计既支持云原生环境,同时兼容传统数据架构。平台自下而上分为四个层次:资源调度、数据存储、数据引擎和管理平台。
在资源调度层,CyberEngine 提供了统一的资源管理,支持云原生 K8S 调度和传统的 Yarn 调度,以帮助客户平滑过渡到云原生架构。数据存储层既支持传统的 HDFS 存储,也支持对象存储和新型数据湖格式,提供了元数据服务、数据入湖、数据湖加速和管理等核心服务。数据引擎层包括流引擎、批引擎和交互分析引擎,基于开源技术构建,形成高性能、高稳定性的大数据引擎发行版,满足不同场景需求。此外,还包括统一数据集成引擎、统一任务调度引擎、统一元数据服务引擎和统一 SQL 引擎,为 CyberData 和 CyberAI 平台提供支撑。管理平台由 EngineManager 产品构成,提供一站式的大数据集群规划、部署和运维管理,目标是成为智能高效的大数据技术基础设施管理平台,服务于企业内部的大数据管理运维人员。
CyberEngine 产品特点包括:完全云原生化,支持多租户和多集群管理,以及全面的发布、配置、管理、操作和审计功能;支持主流大数据组件版本,包括计算存储组件、数据湖引擎和分析型引擎,且在稳定性和性能上优于开源组件;支持大规模部署和管理。
(2)CyberData
CyberData 是一个一站式的大数据智能研发和治理平台,它的设计理念是模块化和可插拔,可以拆分成不同的子产品以满足不同的需求。这些子产品包括数据建模、数据集成、数据开发运维、数据资产治理、数据安全、数据服务等等。平台支持多种湖仓架构,包括离线数仓、实时数仓、流批一体数仓以及湖仓一体架构,满足企业内部数仓工程师、数据分析工程师和数据管理人员的需求。
CyberData 采用云原生技术架构,能在多云环境中部署,支持多环境、多区域以及多集群的大规模企业应用。在信创化方向,CyberData 不仅支持各种信创软硬件环境,还能接入国产化数据库和数据源,将业务数据采集到平台进行加工处理和分析。
CyberData 的核心能力包括统一的元数据管理、数据集成能力和数据开发任务的工作流调度,这些能力都由 CyberEngine 产品的四个核心服务引擎提供支持。
(3)CyberAI
CyberAI 是一个一站式的机器学习平台,旨在为算法工程师、数据科学家和数据分析师提供服务。该平台首先强调的是对底层基础设施的管理和接入能力,这是基于 CyberEngine 提供的统一服务底座引擎的接入能力。通过这种方式,CyberAI能够有效地管理资源和数据接入。
此外,CyberAI 平台能够与 CyberData 数据平台无缝对接。这种整合能力体现在租户账号体系以及数据源的接入和管理方面,实现了真正的一体化能力。
在产品化能力方面,CyberAI 平台不仅支持传统的交互式和可视化建模能力,还针对企业间数据流通的场景提供了算法沙箱和联邦学习支持,以实现跨租户的数据流通和算法训练。此外,该平台还集成了大模型工具的相关能力,用户可以在这个平台上一站式完成大模型应用的构建过程。
(4)产品输出形态
云数据智能平台 DataCyber 展示了其产品的高度开源开放性。DataCyber 的三个主要产品 CyberEngine、CyberData 和 CyberAI 均能单独输出,并与其他开源组件和大数据分析数据库保持最大兼容性。这些产品通过插件化和标准化方式,支持包括 CDH/CDP 国产化替代、大数据底座构建、数据开发和治理以及机器学习框架集成等多样化场景。
- CyberEngine:作为大数据底座,能以插件化方式接入主流大数据组件,适合从零开始构建大数据平台,如银行 CDH 替换等场景。
- CyberData:通过标准化插件接入大数据底座,快速支持开源和商用集群以及云原生集群的数据开发和治理,适用于构建各类企业级数据平台的场景。
- CyberAI:作为一站式机器学习平台,以插件化方式集成 TensorFlow、PyTorch 等框架,适用于私有云企业机器学习平台等场景。
产品间的组合输出也提供了更多可能性,例如:
- CyberEngine + CyberData:构建大数据底座+一站式 DataOps 平台的组合能力,例如:云原生湖仓一体平台。
- CyberEngine + CyberAI:构建大数据AI底座+一站式 MLOps 平台的组合能力。
- CyberData + CyberAI:构建数智一体化平台,从产品能力上可对标 Databricks 和 Snowflake。
在云上输出湖仓一体平台,
- CyberEngine + CyberData + CyberAI:提供一站式的大数据 AI 底座、DataOps 平台和 MLOps 平台组合,输出云原生弹性湖仓一体平台,满足客户的多样化应用场景。
3. 核心技术组件
接下来介绍 DataCyber 的几个核心技术组件。
首先是信创云原生湖仓引擎(CyberLakehouse),这是一个结合了信创环境和云原生技术的湖仓引擎。它在信创环境中进行了全栈适配,从基础硬件到操作系统,再到产业生态,确保大数据组件的国产化适配。在此基础上,实现了基于容器化的大数据组件标准化发布流程和源码适配,支持云原生部署。再往上是湖仓一体架构,它要求存算分离、开放式存储、计算组件灵活扩展,以及统一标准化元数据服务。
基于这些要求,CyberLakehouse 架构分为三层:
- 存储层:提供统一存储和 HDFS 格式支持以及数据访问层的加速。其中访问层加速包括 Alluxio 等缓存加速和 Celeborn 等服务,提高存算分离架构下的访问稳定性和性能。
- 计算层:基于云原生资源调度(K8S),支持批处理(Hive/Spark)、流处理(Flink)和交互分析(StarRocks/Presto/Impala)引擎。
- 管理层:提供集群规划、管理、实施和部署运维监控的一站式操作平台。
这些技术组件共同构成了 DataCyber 的湖仓一体平台,为大数据运维管理人员提供了一站式的操作平台,支持多种计算组件和存储格式,确保了高性能和灵活性。
上图介绍了 DataCyber 的 CyberLakehouse 在研发过程中对开源大数据组件进行的大量的二次开发和适配工作。目前,已全面适配覆盖了批处理引擎 Hive、Spark,流计算引擎 Flink,以及交互分析引擎 Impala、Presto 等。主要工作成果包括:
- Hive:解决了 Hive 与高版本 Hadoop、K8s、数据湖组件和数据缓存系统的适配问题。
- Spark:实现了 Spark 在高版本 Hadoop3 上的适配,以及 Spark on Hive 和 Spark on k8s 的部署能力,支持弹性的扩缩容。
- Flink:支持 Flink on k8s 的弹性部署,并对 Flink 的 session集群进行了资源弹性管理的二次开发,实现了作业的弹性伸缩。
- 数据湖集成:对 Hudi 和 Paimon 等数据湖引擎进行了集成。
- 分析引擎:对 Impala 和 Kudu 进行了定制化的二次开发和适配,解决了 Impala 在云原生环境下的部署问题,并支持 CDH 老用户的平滑升级。
- 安全性:解决了 Kerberos、Ranger 和 OpenLDAP 的集成问题,提供了金融级客户的安全需求解决方案。
经过这些适配和开发工作,CyberEngine 产品的最新版本 2.3.0 已经具备了超越 CDH 的组件覆盖度,并在组件版本上优于 CDH 的老版本,实现了产品化的输出。
统一元数据服务引擎 CyberMeta 是大数据平台的核心技术组件,它实现了湖仓平台元数据在整个平台的统一管理,以及外部数据源元数据的主动发现和多计算引擎间元数据的互通互联。此外,它还支持跨多元计算场景,以及在元数据基础上的统一数据权限管理和数据湖的自动化优化加速。
为了满足多元异构大数据计算引擎对元数据的需求,统一元数据服务引擎支持两种模式:
- 与 Hive Metastore 集成:通过 Hive 的标准化的元数据能力,为不同的分析计算引擎提供元数据管理和服务。
- 基于 Spark 和 Flink 的自定义 Catalog 扩展机制:扩展支持更大范围的数据源元数据管理能力,使 Spark 和 Flink 引擎能够访问关系型数据库,以及实现与湖仓数据源之间的跨源数据访问。
统一任务调度引擎 CyberScheduler 是大数据平台的另一个核心技术组件,它负责数仓任务的工作流调度,确保了任务的高效执行和数据流程的稳定性。CyberScheduler 的架构分为三层:
- Web 服务和 Scheduler API 层:为用户提供调度任务的接口。
- 协调器集群(Coordinator 集群):一个分布式的调度系统,负责作业实例的生成和按照工作流依赖进行调度,同时提供 API 服务化接口。它强调服务的稳定性、高并发和低延迟。
- 工作者集群(Worker 集群):执行不同类型的作业,包括本地执行和远程提交到 Hadoop、K8S 等平台执行的任务。它关注任务的扩展性和资源隔离性。
CyberScheduler 覆盖了多种作业类型,支持周期调度、灵活的依赖关系、补数据和断点重跑等功能。它能够适应不同任务规模的湖仓场景,支持从十万级到千万级以上的任务调度,通过统一架构和不同部署模式适配不同客户需求,实现稳定的调度和运维。
此外,CyberScheduler 还支持智能化的调度和监控,能够基于历史数据优化任务调度资源,提供任务产出时间和告警的智能化提示,从而提升调度效率和任务成功率。
统一数据集成引擎 CyberIntegration 是一个多功能的数据同步平台。该平台支持三种主要的数据同步引擎:DataX、Spark 和 Flink。这些引擎能够处理包括批量同步、流式同步、全量同步、增量同步以及整库同步在内的多种数据同步需求。
CyberIntegration 的系统架构允许其根据数据源的规模动态地决定所需的资源和同步能力,并支持水平扩展。此外,考虑到该平台需要支持公有云、私有云以及混合云架构,它在数据集成过程中还要解决跨网段数据传输的技术挑战。这种灵活性和强大的数据处理能力使得 CyberIntegration 成为满足各种数据集成需求的有效解决方案。
数据流通中心 CyberMarket 专注于解决跨租户的数据流通问题。CyberMarket 支持多种数据开放共享方式,包括数据 API、数据应用以及数据沙箱和算法沙箱,后者允许在不同租户之间实现数据的可用不可见,特别适用于金融等行业场景。
数据沙箱通过物理隔离的存储和多租户之间的隔离,确保数据的安全性。在计算层面,SQL 沙箱和算法沙箱提供安全的数据分析和挖掘环境。数据在进入计算沙箱后,只能在沙箱内安全使用,计算结果需经过数据所有方审批后才能流出。沙箱使用完毕后,还会进行相关的回收和安全保障机制。
CyberData 和 CyberAI 之间的协同也是关键,例如,CyberAI 平台中训练得到的模型会发布到 CyberData 平台,以便进行数据开发和模型训练任务的工作流编排与调度。这种能力使得整个平台能够在数据流通场景下提供全面的支持。
04、金融信创数据平台落地路径
第四部分将探讨金融信创数据平台的典型落地路径,分为六个阶段:
- 统一纳管平台构建:首先构建一个统一的纳管平台,以统一用户使用体验,确保在信创化切换过程中实现平滑管理和迁移。
- 业务场景选择与试点规划:根据客户实际情况,选择合适的业务场景进行系统化试点,并规划信创化集群。
- 信创湖仓集群资源规划:设计并规划信创湖仓集群,包括计算、存储、网络等资源,以满足业务需求。
- 数据迁移与验证:在新的信创集群部署完成后,进行新老集群的数据迁移,并进行数据比对和验证。
- 压测与优化:根据数据量级和业务要求,对信创集群进行压力测试和优化。
- 逐步切换与验证:在确保新集群符合性能和稳定性要求后,进行新老集群的并行运行,最终完成集群切换。
这条路径确保了金融信创数据平台的高效实施和平稳过渡,满足客户的业务需求。
在金融信创数据平台的实施中,上图中大数据集群统一纳管平台的功能技术架构是关键。其中大数据集群的统一纳管平台包括新老两个集群,它们在资源调度和组件使用方面有所不同。中间层负责数据迁移,而统一纳管层通过不同的驱动包实现对底层不同类型的大数据集群的驱动对接和管理。最上层为应用层,本文不对此展开详细讨论。这一架构可以确保金融信创数据平台的高效推进,在不影响客户业务稳健的情况下,实现金融信创数据平台稳扎稳打的替代。
05、金融信创数据平台实践案例
在金融信创领域,数新网络在云数据智能平台的实施中取得了显著成效。本文第五部分将通过两个案例展示数新网络的实践成果。
第一个案例涉及某股份银行,该银行原先使用的是 Cloudera 的 CDH 产品,面临高昂的订阅成本和不满足信创化要求的问题。数新网络提供的云原生大数据管理平台 CyberEngine 产品,成功帮助银行将其多个数据集群升级至信创化的湖仓架构。此举不仅提升了平台的自主可控性,还优化了组件版本升级和计算资源效率,为客户带来了全面的平台改进和价值提升。
第二个案例为某省金融综合服务平台的建设与运营。数新网络的云数据智能平台利用大数据和云计算技术,实现了多个政府部门和银行间数据的统一融合分析,解决了金融领域的数据使用问题。数新网络提供了数据平台 CyberData 和智能平台 CyberAI,帮助构建金融主题库和金融数仓,涵盖从数据开发、治理到 AI 任务开发的全流程。此外,为了确保数据的合法合规共享,数新网络还提供了数据沙箱和算法沙箱能力。最终,在业务层面,数新网络输出了适用于金融领域的数据应用,为金融综合服务平台提供了全面的数据智能解决方案。