终于有人把 Flink 设计理念与基本架构讲明确了

  • 电脑网络维修
  • 2024-11-14
MapReduce 是由谷歌初次在论文“MapReduce: Simplified>

一.Flink与干流计算引擎对比

1. Hadoop MapReduce

MapReduce 是由谷歌初次在论文“MapReduce: Simplified>

图1 Hadoop MapReduce处置模型

Hadoop MR1经过JobTracker进程来治理作业的调度和资源,TaskTracker进程担任作业的实践口头,经过Slot来划分资源(CPU、内存等),HadoopMR1存在资源应用率低的疑问。Hadoop MR2为了处置MR1存在的疑问,对作业的调度与资源启动了更新变革,将JobTracker变成YARN,优化了资源的应用率。其中,YARN的ResourceManager 担任资源的治理,ApplicationMaster担任义务的调度。YARN 允许可插拔,岂但允许HadoopMapReduce,还允许Spark、Flink、Storm等计算框架。Hadoop MR2 处置了HadoopMR1的一些疑问,然而其对HDFS的频繁I/O操作会造成系统无法到达低提前的要求,因此它只适宜离线大数据的处置,不能满足实时计算的要求。

Spark 是由加州大学伯克利分校开源的类Hadoop MapReduce的大数据处置框架。与 HadoopMapReduce相比,它最大的不同是将计算两边的结果存储于内存中,而不要求存储到HDFS中。

Spark的基本数据模型为RDD(Resilient DistributedDataset,弹性散布式数据集)。RDD是一个无法扭转的散布式汇合对象,由许多分区(partition)组成,每个分区蕴含RDD的一局部数据,且每个分区可以在不同的节点上存储和计算。在Spark中,一切的计算都是经过RDD的创立和转换来成功的。

Spark Streaming 是在Spark Core的基础上裁减而来的,用于允许实时流式数据的处置。如图2所示,Spark Streaming对流入的数据启动分批、转换和输入。微批处置无法满足低提前的要求,只能算是近实时计算。

图2 Spark Streaming 处置模型

Structured Streaming 是基于Streaming SQL 引擎的可裁减和容错的流式计算引擎。如图3所示,StructuredStreaming将流式的数据全体看成一张无界表,将每一条流入的数据看成无界的输入表,对输入启动处置会生成结果表。生成结果表可以经过触发器来触发,目前允许的触发器都是定时触发的,整个处置相似SparkStreaming的微批处置;从Spark 2.3开局引入继续处置。继续处置是一种新的、处于试验形态的流式处置模型,它在StructuredStreaming的基础上允许继续触发来成功低提前。

图3 Structured Streaming处置模型

Flink是对有界数据和无界数据启动有形态计算的散布式引擎,它是纯流式处置形式。流入Flink的数据会经过预约的DAG(Directed AcyclicGraph,有向无环图)节点,Flink会对这些数据启动有形态计算,整个计算环节相似于管道。每个计算节点会有本地存储,用来存储计算形态,而计算节点中的形态会在必定期间内耐久化到散布式存储,来保障流的容错,如图4所示。这种纯流式形式保障了Flink的低提前,使其在诸多的实时计算引擎竞争中具备长处。

图4 Flink 流式处置模型

二.Flink基本架构

上方从分层角度和运转时角度来引见Flink 基本架构。其中,关于运转时Flink 架构,会以1.5版本为分界限对前后版本的架构变卦启动引见。

1. 分层架构

Flink是分层架构的散布式计算引擎,每层的成功依赖高层提供的服务,同时提供形象的接口和服务供高层经常使用。全体分层架构如图5所示。

图5 Flink 分层架构

2. 运转时架构

Flink 运转时架构阅历过一次性不小的演化。在Flink 1.5 版本之前,运转时架构如图6所示。

图6 Flink 1.5 以前版本的运转时架构

从Flink 1.5开局,Flink 运转时有两种形式,区分是Session 形式和Per-Job形式。

Session形式:在Flink1.5之前都是Session形式,1.5及之后的版本与之前不同的是引入了Dispatcher。Dispatcher担任接纳作业提交和耐久化,生成多个JobManager和保养Session的一些形态,如图7所示。

图7 Session形式

Per-Job形式:该形式启动后只会运转一个作业,且集群的生命周期与作业的生命周期息息关系, 而Session形式可以有多个作业运转、多个作业共享TaskManager资源, 如图8所示。

图8 Per-Job形式

关于作者:罗江宇,赵士杰,李涵淼,闵文俊,四位作者都是十分资深的Flink专家,局部作者是Flink源代码的保养者和变革者。

罗江宇:Flink技术专家,先后到任于新浪微博、滴滴和某大型电商公司。先后主导或介入了多家公司的Flink实时计算服务的构建、对超大规模集群的保养以及Flink引擎的变革。领有丰盛的实时计算实战阅历,目前专一于Kubernetes调度、FlinkSQL及Flink流批一体化方向。

赵士杰:资深大数据技术专家,曾到任于滴滴、阿里巴巴等一线互联网公司。从0到1深度介入了滴滴的大数据树立,领有十分丰盛的大数据平台一线树立阅历,关于大数据畛域的计算和存储引擎也有深化钻研。

李涵淼:大数据研发专家,曾任滴滴大数据开发工程师。从事大数据畛域上班多年,介入过多家公司流计算平台的设计与研发,目前专一于流批一体、OLAP技术方向的钻研与运行。

闵文俊:蚂蚁个人技术专家、开源大数据社区喜好者、Flink Contributor,在实时计算畛域上班多年,深度介入了滴滴、蚂蚁个人的实时计算平台树立。书评

  • 关注微信

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载联系作者并注明出处:https://duobeib.com/diannaowangluoweixiu/4814.html

猜你喜欢

热门标签

洗手盆如何疏浚梗塞 洗手盆为何梗塞 iPhone提价霸占4G市场等于原价8折 明码箱怎样设置明码锁 苏泊尔电饭锅保修多久 长城画龙G8253YN彩电输入指令画面变暗疑问检修 彩星彩电解除童锁方法大全 三星笔记本培修点上海 液晶显示器花屏培修视频 燃气热水器不热水要素 热水器不上班经常出现3种处置方法 无氟空调跟有氟空调有什么区别 norltz燃气热水器售后电话 大连站和大连北站哪个离周水子机场近 热水器显示屏亮显示温度不加热 铁猫牌保险箱高效开锁技巧 科技助力安保无忧 创维8R80 汽修 a1265和c3182是什么管 为什么电热水器不能即热 标致空调为什么不冷 神舟培修笔记本培修 dell1420内存更新 青岛自来水公司培修热线电话 包头美的洗衣机全国各市售后服务预定热线号码2024年修缮点降级 创维42k08rd更新 空调为什么运转异响 热水器为何会漏水 该如何处置 什么是可以自己处置的 重庆华帝售后电话 波轮洗衣机荡涤价格 鼎新热水器 留意了!不是水平疑问! 马桶产生了这5个现象 方便 极速 邢台空调移机电话上门服务 扬子空调缺点代码e4是什么疑问 宏基4736zG可以装置W11吗 奥克斯空调培修官方 为什么突然空调滴水很多 乐视s40air刷机包 未联络视的提高方向 官网培修 格力空调售后电话 皇明太阳能电话 看尚X55液晶电视进入工厂形式和软件更新方法 燃气热水器缺点代码

热门资讯

关注我们

微信公众号