Flink总结学习笔记之一

1.Flink 的知识点总结:

在这里插入图片描述

2.Flink 的简单简介:

2009年诞生。
2014年一跃成为Apache 软件基金会的顶级项目.
2019年被阿里收购成为中国人主导的项目,可以适合中国国内的发展。
Flink 的使用场景。
用官网的图说明

2.1 Flink 的简单场景:

在这里插入图片描述

3.Flink 的特性。

1.高吞吐和低延迟。每秒处理数百万个事件,毫秒级延迟 。
2.结果的精准一次性。
3.高可用。
4.可以链接常用的存储。
5.更新应用程序作业迁移到不同的flink 集群。

在这里插入图片描述

4.Flink 架构。

在这里插入图片描述

5 组件名字解释:

5.1JobManager: JobManager 是一个 Flink 集群中任务管理和调度的核心.

5.2 ResourceManager: ResourceManager 主要负责资源的分配和管理,在 Flink 集.群中只有一个。所谓“资源”,主要是指 TaskManager 的任务槽(task slots)。任务槽就是 Flink 集群中的资源调配单元,包含了机器用来执行计算的一组 CPU 和内存资源。每一个任务(Task)都需要分配到一个 slot 上执行.

5.3 Dispatcher(分发器):Dispatcher 主要负责提供一个 REST 接口,用来提交应用,并且负责为每一个新提交的作业启动一个新的 JobMaster 组件。Dispatcher 也会启动一个 Web UI,用来方便地展示和监控作业执行的信息。

5.4 TaskManager(任务管理器):TaskManager 是 Flink 中的工作进程,数据流的具体计算就是它来做的,所以也被称为“Worker”。Flink 集群中必须至少有一个 TaskManager;当然由于分布式计算的考虑,通常会有多个 TaskManager 运行,每一个 TaskManager 都包含了一定数量的任务槽(task slots)。Slot是资源调度的最小单位,slot 的数量限制了 TaskManager 能够并行处理的任务数量。

6.快速上手 wordCount

在这里插入图片描述

7.flink 的部署模式

flink yarn 的部署模式有三种,Session-Cluster,Application Mode和Per-Job-Cluster模式。

7.1 原理

在这里插入图片描述

7.1Session-Cluster

在这里插入图片描述
特点:


1.Session-Cluster模式需要先启动Flink集群,向Yarn申请资源,
 资源申请到以后,永远保持不变。以后提交任务都向这里提交。
 这个Flink集群会常驻在yarn集群中,除非手工停止
 2.在向Flink集群提交Job的时候, 如果资源被用完了,则新的Job不能正常提交.

缺点:

1.如果提交的作业中有长时间执行的大作业, 占用了该Flink集群的所有资源,
 则后续无法提交新的job
 Session-Cluster适合那些需要频繁提交的多个小Job, 并且执行时间都不长的Job.

实战:
在这里插入图片描述
在看yarn 资源管理中
在这里插入图片描述

在这里插入图片描述
提交小任务:
可以看到提交任务


[root@node01 bin]# ./flink run -c com.wudl.flink.core.WordCountStream  /opt/tmp/wudl-flink-13-1.0-SNAPSHOT-jar-with-dependencies.jar
Setting HBASE_CONF_DIR=/etc/hbase/conf because no HBASE_CONF_DIR was set.
Job has been submitted with JobID 87771fb339b85a6c3bde350ab852847d

在这里插入图片描述
命令提交步骤:

1. ./yarn-session.sh  -tm 2048 -s 3 -nm wudl
2. ./flink run -c com.wudl.flink.core.WordCountStream  /opt/tmp/wudl-flink-13-1.0-SNAPSHOT-jar-with-dependencies.jar
或者指定yarn id
./flink run -t yarn-session -Dyarn.application.id=application_XXXX_YY /xxx-SNAPSHOT.ja

yarn命令


yarn  application -list  打印任务信息
yarn application -status application_xx 查看任务状态
yarn applicaton -kill  applicationId  kill 任务

7.2 Pro-job mode(单作业模式)

在这里插入图片描述
优点:适合规模大长时间运行的作业

一个Job会对应一个Flink集群,每提交一个作业会根据自身的情况,
都会单独向yarn申请资源,直到作业执行完成,一个作业的失败与否并不会
影响下一个作业的正常提交和运行。独享Dispatcher和ResourceManager,
按需接受资源申请。

实战:
提交命令

./flink run -d -t yarn-per-job -c com.wudl.flink.core.WordCountStream  /opt/tmp/wudl-flink-13-1.0-SNAPSHOT-jar-with-dependencies.jar

在yarn ResourceManager 界面可以看到
在这里插入图片描述

7.3 Application Mode(引用模式)

在这里插入图片描述
优点:
应用模式为每个应用程序创建一个会话集群,在 JobManager 上直接调用应用程序的 main()方法
实战:

./flink run-application -t yarn-application -c com.wudl.flink.core.WordCountStream  /opt/tmp/wudl-flink-13-1.0-SNAPSHOT-jar-with-dependencies.jar

提交参数说明:


-d:分离模式,如果你不想让 Flink YARN 客户端一直前台运行,可以使用这个参数,即使关掉当前对话窗口,YARN session 也可以后台运行。
-jm(--jobManagerMemory):配置 JobManager 所需内存,默认单位 MB.
-nm(--name):配置在 YARN UI 界面上显示的任务名。
-qu(--queue):指定 YARN 队列名.
-tm(--taskManager):配置每个 TaskManager 所使用内存。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值