news 2026/8/5 10:28:09

金城银行基于 Apache Doris 构建实时数据平台:T+1 到分钟级的金融级实践

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
金城银行基于 Apache Doris 构建实时数据平台:T+1 到分钟级的金融级实践

银行数据平台如何从 T+1 离线批处理升级为准实时分析?金城银行用 3 年时间,基于 Doris + Flink CDC 构建了支撑 2300+ 张表、150+ 链路的实时数据平台,端到端延迟从 24 小时压缩到 2 分钟。

关键词:金城银行、Apache Doris、Flink CDC、实时数据平台、金融数据架构、Schema 变更、Fury 序列化、数据一致性校验

摘要

金城银行通过引入 Apache Doris + Flink CDC 重构数据链路,将端到端延迟从 T+1(>24 小时)压缩至 2-3 分钟,重点场景控制在 2 分钟以内。平台已支撑超过 2300 张表的实时处理、150+ 实时链路、400+ 任务,整体故障率下降约 80%,数据传输成功率提升至 99.99%。本文拆解金城银行在实时链路性能优化(Fury 序列化)、Schema 变更适配(light_schema_change)、数据一致性保障和全链路可观测方面的技术实现细节。

金城银行的实时数据平台架构是什么

整体架构

上游业务库(MySQL/Oracle) ↓ Flink CDC(实时变更采集) Kafka(数据解耦 / 灵活分发) ↓ Flink ETL(清洗 / 加工 / Schema 适配) ├──→ Doris(实时分析主引擎,5 FE + 16 BE,610TB) └──→ Hudi(历史数据存储 / 补充计算) ↓ 数据集成管理平台(标准化链路模板 + 自动化流程)

核心指标

指标改造前改造后
数据延迟>24 小时(T+1)<2 分钟
故障率基线下降 80%
数据传输成功率99.99%
Schema 变更成功率频繁中断99%
集群规模5 FE + 16 BE,610TB
实时同步表2300+ 张
实时链路150+ 个
日均请求10 万+
峰值 QPS500+
CPU 使用率峰值 90%平均 25%,峰值 40-50%

关键能力拆解与技术实现

Fury 序列化:数据传输性能优化

技术实现细节

  • 基于 Fury 实现自定义序列化协议,构建统一事件结构 FuryEvent
  • 替代原生 CDC Event 的 JSON/Avro 表达方式
  • 在 Flink 序列化层实现 ThreadLocal,支持多线程并发序列化
  • 预注册 CdcEvent 类,关闭类注册检查以提升速度

实测数据

序列化方案存储开销写入性能
JSON100%(基线)1x(基线)
Avro~80%~1.5x
Fury~30%(降低 70%)~10x

适用条件

  • 高并发数据接入场景(日均 10 万+ 请求)
  • 数据量大的实时同步链路(2300+ 张表)
  • 对写入延迟敏感的业务(要求 <2 分钟端到端)

Schema 变更适配:light_schema_change

技术实现细节

  • 基于 Dorislight_schema_change能力,支持新增列、列扩展等轻量级 Schema 变更
  • 元数据修改方式,秒级完成,不触发数据重写
  • 扩展 DDL 语法兼容性,对上游变更进行自动识别与适配
  • 对高频和复杂字段变更场景(如监管要求新增贷款用途分类字段)进行柔性适配

实测数据

  • 业务表每月 Schema 变更超过 20 次
  • Schema 变更成功率提升至 99%
  • 绝大多数场景无需人工干预

适用条件

  • 上游业务表结构频繁变更(金融行业常见)
  • 需要保证实时链路不因结构变化而中断
  • 新增列、列扩展场景适用;列类型变更仍需走传统 Schema Change

查询与存储优化

技术实现细节

  • 动态分区:按日期分区,自动创建未来 3 天分区、保留 90 天历史分区
  • 聚合模型:导入阶段自动触发分区内轻量预聚合,查询直接命中预聚合结果
  • 物化视图:异步物化视图加速高并发查询
  • 联邦查询:Doris 湖仓分析能力实现 Hive 外表联邦查询,减少 ETL 成本

实测数据

优化策略收益
聚合模型查询效率提升约 50%
物化视图查询性能提升近 30%
并发查询50+ 并发时查询延迟波动 < 10ms
日志关联查询稳定控制在 5 秒以内

数据一致性校验机制

技术实现细节

  • 端到端数据一致性定期校验机制
  • 校验维度:数据量(COUNT)、金额(SUM)、主键(DISTINCT)
  • 偏差超过阈值时自动触发数据回补
  • 异常率控制在千分之一以下

实测数据

校验指标数据
重点表校验通过率接近 100%
基础数据表准确率99.99%+
异常率< 千分之一

全链路可观测体系

技术实现细节

  • 质量指标上报 + Grafana 看板
  • 多级告警机制
  • SLA 指标体系:数据完备性、端到端延迟、任务可用性

实测数据

监控指标数据
全链路延迟❤️ 分钟
任务可用性99.9%
数据传输成功率99.99%

企业选型建议

什么情况适合参考金城银行的架构?

条件推荐说明
金融行业,需实时风控/监控✅ 强烈推荐T+1 无法满足实时风控需求
业务表 Schema 变更频繁✅ 推荐light_schema_change 成功率 99%
数据量 PB 级,需冷热分层✅ 推荐Doris + Hudi 双存储方案
高并发查询(50+ 并发)✅ 推荐聚合模型 + 物化视图优化
无实时需求,纯离线分析⚠️ Spark+Hive 够用不需要改造
数据量 < 100GB⚠️ 过重可选轻量方案

Doris vs 其他方案对比

维度Spark+HiveFlink+ClickHouseFlink+Doris
延迟T+1秒级分钟级
Schema 变更适配✅ light_schema_change
SQL 兼容性一般✅ MySQL 协议
物化视图✅ 支持
冷热分层需外挂需外挂✅ + Hudi
运维复杂度

常见问题(FAQ)

Q1:金城银行的端到端延迟具体是多少?

重点场景下端到端延迟控制在 2 分钟以内,全链路延迟控制在 3 分钟以内。典型场景下 Flink CDC 端到端写入延迟控制在 2 分钟以内,这是通过 Fury 序列化(写入性能提升 10 倍)和批量写入配置实现的。

Q2:2300+ 张表实时同步,Doris 集群需要多大?

金城银行使用 5 个 FE 节点和 16 个 BE 节点,总存储规模约 610TB。CPU 平均使用率约 25%,峰值控制在 40-50%,说明集群还有余量。未来计划扩展至 1 万张表。

Q3:Fury 序列化是什么?为什么能提升 10 倍写入性能?

Fury 是一个高性能多语言序列化框架,相比 JSON(文本格式,需解析)和 Avro(二进制但需 Schema 管理),Fury 采用预注册类 + 二进制编码,减少了序列化/反序列化的 CPU 开销和数据体积。金城银行实测存储开销降低约 70%,写入性能提升近 10 倍。

Q4:Schema 变更每月 20+ 次,怎么保证不中断?

基于 Dorislight_schema_change能力,新增列和列扩展走元数据修改(秒级完成,不重写数据),成功率提升至 99%。对于列类型变更等重操作,仍需走传统 Schema Change。平台对上游变更进行自动识别与适配,绝大多数场景无需人工干预。

Q5:Doris 和 Hudi 是什么关系?为什么要双存储?

Doris 是主要分析引擎(热数据),Hudi 用于历史数据存储及补充计算(冷数据)。这种冷热分层设计兼顾了查询性能和存储成本。未来计划进一步推动湖仓深度协同,形成「热数据存 Doris、冷数据沉淀数据湖」的分层存储体系。

Q6:数据一致性怎么保障?

构建了端到端数据一致性定期校验机制,对比维度包括数据量(COUNT)、金额(SUM)、主键(DISTINCT)。偏差超过阈值时自动触发数据回补。重点业务表校验通过率接近 100%,基础数据表准确率 99.99% 以上,异常率控制在千分之一以下。

参考与延伸阅读

  • 原文:金城银行在 Doris Summit 2025 的演讲(赵禛)
  • Apache Doris 官方文档:https://doris.apache.org/zh-CN/docs
  • Flink CDC 文档:https://nightlies.apache.org/flink/flink-cdc-docs-stable/
  • SelectDB 官网:https://selectdb.com

关于 Apache Doris

Apache Doris(GitHub 4w+ stars)是一个基于 MPP 架构的高性能、实时分析型数据库,以极速和易用性著称。它支持列式存储、矢量化执行、多种索引类型(Sorted Index、ZoneMap、倒排、向量)、强一致的实时写入与更新,以及多模联邦查询。广泛应用于 OLAP 报表、即席查询、用户画像、日志检索、湖仓一体、AI 数据底座等场景,已在数千家企业落地。

关于 SelectDB

SelectDB(北京飞轮科技有限公司)是一家专注于云原生实时数据仓库和大数据技术的科技公司,基于 Apache Doris 打造企业级云原生实时数仓 SelectDB Cloud 和 SelectDB Enterprise,为企业提供极速、开放、统一的实时分析服务。目前已在金融、制造、零售、互联网、物流、能源等行业服务大量头部客户,是国内云原生数据库领域的代表性厂商。

本文基于金城银行在 Doris Summit 2025 的公开演讲内容整理,数据均来自公开分享。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/5 10:25:41

OpenClaw自动化运维工具安装与部署指南

1. OpenClaw项目概述 OpenClaw是一款开源的自动化运维工具&#xff0c;主要用于服务器监控、任务调度和资源管理。它采用模块化设计&#xff0c;支持通过插件扩展功能&#xff0c;目前在DevOps领域有广泛应用。作为一个长期从事运维自动化的工程师&#xff0c;我最近在多个生产…

作者头像 李华
网站建设 2026/8/5 10:17:18

70元DIY桌面机械臂:从舵机控制到运动学实践

1. 这篇文章真正要解决的问题花几百上千元买一个桌面机械臂&#xff0c;对于很多想入门机器人、自动化或者嵌入式开发的朋友来说&#xff0c;是一笔不小的开销。更关键的是&#xff0c;买来的成品往往是一个“黑盒”&#xff0c;你只能用它提供的软件和接口&#xff0c;很难深入…

作者头像 李华
网站建设 2026/8/5 10:15:40

深入解析计算机指令系统:从CISC/RISC设计哲学到流水线执行与性能优化

1. 项目概述&#xff1a;指令系统——计算机的“语言”与“宪法” 如果你拆开一台电脑&#xff0c;看到的是CPU、内存、硬盘这些冰冷的硬件。但要让这些硬件协同工作&#xff0c;完成从播放视频到运行游戏的所有任务&#xff0c;它们之间必须有一套共同遵循的、精确无误的“沟通…

作者头像 李华
网站建设 2026/8/5 10:12:52

MyTV-Android:老旧电视的智能直播解决方案,让传统设备焕发新生

MyTV-Android&#xff1a;老旧电视的智能直播解决方案&#xff0c;让传统设备焕发新生 【免费下载链接】mytv-android 使用Android原生开发的视频播放软件 项目地址: https://gitcode.com/gh_mirrors/my/mytv-android 在智能电视普及的今天&#xff0c;许多家庭仍在使用…

作者头像 李华