当前位置: 首页 > article >正文

【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是如何具体实现分布式流处理的,它有哪些组件构成。 下一篇详细介绍。


http://www.kler.cn/a/460131.html

相关文章:

  • LoRA微调系列笔记
  • USB射频微波功率计的功能与优势-盛铂科技
  • 每天五分钟机器学习:凸集
  • 【three.js】材质(Material)
  • 深入剖析MySQL数据库架构:核心组件、存储引擎与优化策略(一)
  • SpringAOP之日志和身份验证
  • 咚次游戏加速1.1.4.2 | 免费PC游戏加速器,支持1473款游戏加速
  • 如何初始化css样式?为什么要初始化css?
  • python-LeetCode-两数之和
  • Spring Boot缓存预热实战指南
  • .net core 的字符串处理
  • 三大行业案例:AI大模型+Agent实践全景
  • 美畅物联丨视频上云网关获取视频流地址供第三方调用的方法
  • 【论文阅读笔记】IC-Light
  • 电子电器架构 ---什么是智能电动汽车上的逆变器?
  • 极品飞车6的游戏手柄设置
  • 【Leetcode 每日一题 - 扩展】面试题 04.10. 检查子树
  • FreeSWITCH 简单图形化界面38 - 使用uniapp中使用JsSIP进行音视频呼叫
  • Windows11家庭版 Docker Desktop 的安装历程
  • VITUREMEIG | AR眼镜 算力增程
  • 你了解DNS吗?
  • 让每一条数据发光:Grafana 打造的现代化仪表盘
  • 多分类的损失函数
  • 深度学习论文: RemDet: Rethinking Efficient Model Design for UAV Object Detection
  • 数据结构(顺序队列)
  • LCE软机器人登场!热场光控下的多模态运动传奇?