【Flink运行时架构】系统构架

SMP架构

数据处理系统的架构最简单的实现方式就是单节点,但是随着数据量的增大,为了使单节点的机器性能更加强大,需要增加CPU数量和加大内存来提高吞吐量。这就是所谓的SMP(Symmetrical Multi Processing,对称多处理)架构。

但是这种架构带来的问题也很明显,不仅所有CPU是完全平等且共享内存和总线资源的,会带来资源竞争。而且随着CPU数量的增加,机器成本会呈指数级增长。因此,SMP的可扩展性是比较差的,无法应对海量数据的处理场景。

分布式架构

基于SMP的局限,提出了不共享任何东西(share-nothing)的分布式架构,比如从 MPP(Massively Parallel Processing,大规模并行处理)架构,到以Hadoop、Spark为代表的批处理,再到以Flink为代表的流处理架构,都是以分布式作为系统架构的基本形态。Flink是一个分布式的并行流处理系统,由多个进程构成,这些进程一般会分布运行在不同的机器上。

对于分布式系统的管理,有很多棘手的问题。比如集群中资源的分配和管理、进程协调调度、持久化和高可用的数据存储、以及故障恢复等。不过,对于分布式系统中这些典型问题,业内已经有比较成熟的解决方案和服务了。

因此,Flink在设计中并不会去处理这些通用问题,而是利用现有的集群架构和服务。比如,在集群资源管理方面,会与现有Yarn、K8s、Mesos等工具集成;在分布式村粗方面,会直接利用现有的HDFS、S3等分布式文件系统;在高可用配置方面,会依赖ZooKeeper来完成。

通过以上方式,Flink就可以把精力集中在核心工作上了,也就是分布式数据流处理。那么,Flink是如何具体实现分布式流处理的,它有哪些组件构成。 下一篇详细介绍。

相关推荐
SelectDB13 小时前
时间旅行与快照能力速查:Doris 侧三条落地路径
大数据·数据库·数据分析
SelectDB13 小时前
云数仓成本结构拆解速查:五层计费 vs Doris / 托管形态
大数据·数据库·数据分析
SelectDB13 小时前
什么场景能承接与建议保留:Doris vs Snowflake 边界速查
大数据·数据库·数据分析
孟健14 小时前
LLM API 安全防线:从 OpenCode 盗刷事件到 LiteLLM 多模型容灾实操
人工智能·后端·架构
smallyoung15 小时前
告别N+1:Spring Boot 一键数据翻译框架体系
java·后端·架构
第404号工位17 小时前
40块钱二手瘦客户端,如何跑满家庭物联网中枢?(拒绝Docker爆盘实录)
linux·架构·node.js
Thneonl17 小时前
你写的 NetworkPolicy 可能一条都没生效
后端·架构
裕晟资质规划19 小时前
三类资质变更报告时限差在哪?军工 15 日、集成印制 10 日
大数据·服务器·网络
96245619 小时前
Go EVM 链上数据平台实践:从 RPC Demo 到可演进架构
rpc·架构·golang