Flink快速入门 2024年08月3日
0 收藏 0 点赞 1,144 浏览 1384 个字
摘要 :

一、软件栈 Storage 层(存储层):Flink 本身并没有提供分布式文件系统,因此 Flink 的分析大多依赖于HDFS,也可以从 HBase 和 Amazon S3(亚马逊云存储服务)等持久……

一、软件栈

六、软件栈 & 架构

  1. Storage 层(存储层):Flink 本身并没有提供分布式文件系统,因此 Flink 的分析大多依赖于HDFS,也可以从 HBase Amazon S3(亚马逊云存储服务)等持久层读取数据。
  2. Deploy 层(部署层): 该层主要涉及了 Flink 的部署模式,Flink 自带一个简易的资源调度器,称为独立调度器(Standalone)。若集群中没有任何资源管理器,则可以使用自带的独立调度器。当然,Flink 也支持在其他的集群管理器上运行,包括 Hadoop YARNApache MesosKubernetesGCE/EC2 等。
  3. Runtime 层(计算层):Runtime 层提供了支持 Flink 计算的全部核心实现,比如:支持分布式Stream 处理、JobGraph ExecutionGraph 的映射、调度等等,为上层 API 层提供基础服务。
  4. API 层:主要实现了面向无界 Stream 的流处理和面向 Batch 的批处理 API,其中面向流处理对应DataStream API,面向批处理对应 DataSet API
  5. Libraries 层(工具层):该层也可以称为 Flink 应用框架层,根据 API 层的划分,在 API 层之上构建的满足特定应用的实现计算框架,也分别对应于面向流处理和面向批处理两类:面向流处理支持:CEP(复杂事件处理库)、Table & SQL(结构化表处理库)和面向批处理支持:Table & SQL(结构化表处理库)、FlinkML(机器学习库)、Gelly(图计算库)。

提示:DataSet API 1.12.0 版本中被废弃(Apache Flink 1.12.0 – 2020-12-08),Flink 正式完成流批一体。

 

二、运行架构

Flink 运行时由两种类型的进程组成:一个 JobManager 和一个或者多个 TaskManager

六、软件栈 & 架构

Client 不是运行时和程序执行的一部分,而是用于准备数据流并将其发送给 JobManager。之后,客户端可以断开连接(detached mode 分离模式),或保持连接来接收进程报告(attached mode 附加模式)。客户端可以作为触发执行 Java/Scala 程序的一部分运行,也可以在命令行进程 ./bin/flink run … 中运行。

可以通过多种方式启动 JobManager TaskManager:直接在机器上作为 Standalone 集群启动、在容器中启动、或者通过 YARN 等资源框架管理并启动。TaskManager 连接到 JobManagers,宣
布自己可用,并被分配工作。

Flink 程序启动时,会启动一个 JobManager 和一个或多个 TaskManagerJobManager 的作用就好比 Spark 中的 ClusterManager DriverTaskManager 的作用就好比 Spark 中的
ClusterWorker Executor

简单的理解就是:用户通过 DataStream APIDataSet APISQL Table API 编写 Flink 应用程序,它会生成一个 JobGraphJobGraph 是由 sourcemap()keyBy()/window()/apply() Sink 等算子组成的。当 JobGraph 提交给 Flink 集群后,能够以 LocalStandaloneYarn Kubernetes 四种模式运行。

六、软件栈 & 架构

微信扫一扫

支付宝扫一扫

版权: 转载请注明出处:https://yjxxt.com/363.html

相关推荐
2024-08-03

        Flink 应用程序需要做的第一件事是设置它的执行环境。执行环境是确定程序在本地机器上运行…

862
2024-08-03

         构建一个典型的 Flink 流式程序需要以下几步:  设置执行环境; 从数据源中读取一条或多…

1,176
2024-08-03

一、分层 API         Flink 自底向上在不同的抽象级别提供了多种 API,并且针对常见的使用场景开…

737
2024-08-03

一、软件栈 Storage 层(存储层):Flink 本身并没有提供分布式文件系统,因此 Flink 的分析大多…

1,144
2024-08-03

         当前大数据领域主流的流式计算框架有 Apache Storm、Spark Streaming、Apache Flink 三种…

908
2024-08-03

一、事件驱动型应用 1.1 事件驱动型应用 事件驱动型应用是一种软件设计模式,它的工作方式就像在等…

786
发表评论
暂无评论

还没有评论呢,快来抢沙发~

点击联系客服

在线时间:9:00-18:00

客服电话

15201841284

客服邮箱

shanxn@yjxxt.com

扫描二维码

扫码加微信咨询