【赵渝强老师】基于Flink的流批一体架构

本文涉及的产品
实时计算 Flink 版,5000CU*H 3个月
简介: 本文介绍了Flink如何实现流批一体的系统架构,包括数据集成、数仓架构和数据湖的流批一体方案。Flink通过统一的开发规范和SQL支持,解决了传统架构中的多套技术栈、数据链路冗余和数据口径不一致等问题,提高了开发效率和数据一致性。

1.png

   

由于Flink集成了批计算和流计算,因此可以使用Flink构建流批一体的系统架构,主要包含数据集成的流批一体架构、数仓架构的流批一体架构和数据湖的流批一体。


一、数据集成的流批一体架构

 

视频讲解如下:

   

在大数据场景下经常需要数据同步或者数据集成,也就是将数据库中的数据同步到大数据的数仓或者其他存储中。下图中的左边是传统的经典数据集成的模式之一,全量的同步和增量的同步实际上是两套技术,需要定期将全量同步的数据跟增量同步数据做合并,不断的迭代来把数据库的数据同步到数据仓库中。


   

基于Flink流批一体整个数据集成的架构将不同。因为Flink SQL也支持数据库的CDC语义,所以可以用Flink SQL一键同步数据库的数据到Hive、Click House和TiDB等开源的数据库或开源的KV存储中。在Flink流批一体架构的基础上,Flink CDC也是流批混合的,它可以先读取数据库全量数据同步到数仓中,然后自动切换到增量模式。通过Flink CDC读数据库日志进行增量和全量的同步,Flink内部都可以自动协调好,这是流批一体的价值。


二、数仓架构的流批一体架构

 

目前主流数仓架构都是一套典型的离线数仓和一套新的实时数仓,但这两套技术栈是分开的。在离线数仓里,还是习惯用 Hive 或者 Spark;在实时数仓中用 Flink和Kafka。这里就有三个问题需要解决:两套开发流程,成本高;数据链路冗余,两套链路将数据相关的操作做了两遍;数据口径的一致性难以保证,因为它是由两套引擎算出来的。用流批一体架构来解决,以上难题将极大降低。

   

视频讲解如下:


  • 首先,Flink 是一套开发规范,不存在两套开发成本。一个开发团队,一套技术栈,就可以做所有的离线和实时业务统计的问题。
  • 第二,数据链路也不存在冗余,计算一次即可,不需要离线再算一遍。
  • 第三,数据口径天然一致。无论是离线的流程,还是实时的流程,都是一套引擎、一套 SQL、一套 UDF、一套开发人员,所以它天然是一致的,不存在实时和离线数据口径不一致的问题。

   

数据仓库的流批一体架构如下图所示。


三、数据湖的流批一体

 

Hive元数据的管理是性能的瓶颈,同时Hive也不支持数据的实时更新。Hive没有无法实现实时或者准实时化的数据处理能力。现在比较新的数据湖架构,可以解决更具扩展性的元数据的问题,而且数据湖的存储支持数据的更新,它是一个流批一体的存储。数据湖存储与Flink结合,就可以将实时离线一体化的数仓架构演变成实时离线一体化的数据湖架构。

   

视频讲解如下:

   

数据湖的流批一体架构如下图所示。




相关实践学习
基于Hologres轻松玩转一站式实时仓库
本场景介绍如何利用阿里云MaxCompute、实时计算Flink和交互式分析服务Hologres开发离线、实时数据融合分析的数据大屏应用。
Linux入门到精通
本套课程是从入门开始的Linux学习课程,适合初学者阅读。由浅入深案例丰富,通俗易懂。主要涉及基础的系统操作以及工作中常用的各种服务软件的应用、部署和优化。即使是零基础的学员,只要能够坚持把所有章节都学完,也一定会受益匪浅。
相关文章
|
2月前
|
存储 SQL 数据库
【赵渝强老师】OceanBase的部署架构
OceanBase数据库支持两种部署架构:无共享(Shared-Nothing,SN)模式和共享存储(Shared-Storage,SS)模式。SN模式下,各节点对等,具备高扩展性、可用性和性能,运行于普通PC服务器集群;SS模式采用存算分离架构,租户数据存储在共享对象存储上,本地缓存热点数据。两种模式均支持高可用与多副本一致性,适用于不同业务场景。
223 1
|
4月前
|
XML 存储 分布式计算
【赵渝强老师】史上最详细:Hadoop HDFS的体系架构
HDFS(Hadoop分布式文件系统)由三个核心组件构成:NameNode、DataNode和SecondaryNameNode。NameNode负责管理文件系统的命名空间和客户端请求,维护元数据文件fsimage和edits;DataNode存储实际的数据块,默认大小为128MB;SecondaryNameNode定期合并edits日志到fsimage中,但不作为NameNode的热备份。通过这些组件的协同工作,HDFS实现了高效、可靠的大规模数据存储与管理。
360 70
|
2月前
|
存储 缓存 分布式数据库
【赵渝强老师】HBase的体系架构
HBase是一种基于BigTable思想的列式存储NoSQL数据库,适合数据分析与处理。其主从架构包含HBase HMaster、Region Server和ZooKeeper。HMaster负责Region分配及表管理;Region Server执行数据读写操作,并包含WAL预写日志、Block Cache读缓存和MemStore写缓存;ZooKeeper维护集群状态并协调分布式系统工作。通过视频讲解与架构图示,详细解析各组件功能与协作机制。
109 11
|
3月前
|
SQL 运维 Java
蚂蚁 Flink 实时计算编译任务 Koupleless 架构改造
本文介绍了对Flink实时计算编译任务的Koupleless架构改造。为解决进程模型带来的响应慢、资源消耗大等问题,团队将进程模型改为线程模型,并借助Koupleless的类加载隔离能力实现版本和包的隔离。通过动态装配Plugin及其Classpath,以及Biz运行时仅对依赖Plugin可见的设计,大幅优化了编译任务的性能。结果表明,新架构使编译耗时降低50%,吞吐量提升5倍以上。
蚂蚁 Flink 实时计算编译任务 Koupleless 架构改造
|
3月前
|
存储 关系型数据库 MySQL
【赵渝强老师】TiDB的体系架构
TiDB是由PingCAP公司自主研发的开源分布式关系型数据库,支持HTAP(混合事务分析处理),具备弹性扩缩容、金融级高可用、实时分析等特性,兼容MySQL协议。其架构分为存储集群(行存TiKV与列存TiFlash)、调度集群(PD实例)和计算集群(TiDB实例)。相比传统单机数据库,TiDB优势显著:纯分布式设计、高扩展性、自动故障恢复、ACID事务支持及丰富的工具生态,适用于高可用与强一致要求的场景。
162 10
|
5月前
|
SQL 消息中间件 Kafka
Flink+Paimon+Hologres,面向未来的一体化实时湖仓平台架构设计
本文介绍了阿里云实时数仓Hologres负责人姜伟华在Flink Forward Asia 2024上的分享,涵盖实时数仓的发展历程、从实时数仓到实时湖仓的演进,以及总结。文章通过三代实时数仓架构的演变,详细解析了Lambda架构、Kafka实时数仓分层+OLAP、Hologres实时数仓分层复用等方案,并探讨了未来从实时数仓到实时湖仓的演进方向。最后,结合实际案例和Demo展示了Hologres + Flink + Paimon在实时湖仓中的应用,帮助用户根据业务需求选择合适的方案。
958 20
Flink+Paimon+Hologres,面向未来的一体化实时湖仓平台架构设计
|
8月前
|
大数据
【赵渝强老师】大数据主从架构的单点故障
大数据体系架构中,核心组件采用主从架构,存在单点故障问题。为提高系统可用性,需实现高可用(HA)架构,通常借助ZooKeeper来实现。ZooKeeper提供配置维护、分布式同步等功能,确保集群稳定运行。下图展示了基于ZooKeeper的HDFS HA架构。
169 0
|
4月前
|
SQL 消息中间件 Serverless
​Flink+Paimon+Hologres,面向未来的一体化实时湖仓平台架构设计
​Flink+Paimon+Hologres,面向未来的一体化实时湖仓平台架构设计
117 4
|
4月前
|
存储 SQL 并行计算
【赵渝强老师】达梦数据库MPP集群的架构
达梦数据库提供大规模并行处理(MPP)架构,以低成本实现高性能并行计算,满足海量数据存储和复杂查询需求。DM MPP采用完全对等无共享体系,消除主节点瓶颈,通过多节点并行执行提升性能。其执行流程包括主EP生成计划、分发任务、各EP并行处理及结果汇总返回。为确保高可用性,建议结合数据守护部署。
107 0
|
8月前
|
SQL 分布式计算 Java
【赵渝强老师】Hive的体系架构
Hive是基于Hadoop的数据仓库平台,提供SQL-like的HQL语言进行数据分析,无需编写复杂的Java代码。Hive支持丰富的数据模型,可将SQL语句转换为MapReduce任务在Yarn上运行,底层依赖HDFS存储数据。Hive可通过CLI、JDBC和Web界面执行SQL查询。
309 2

相关产品

  • 实时计算 Flink版