[Flink]部署模式(看pdf上的放上面)

运行一个wordcount

val dataStream: DataStream[String] = environment.socketTextStream("hadoop1", 7777)
//流式数据不能进行groupBy,流式数据要来一条处理一次.0表示第一个元素,1表示第二个元素
//keyBy(0)根据第一个元素进行分组
val out: DataStream[(String, Int)] = dataStream.flatMap(line => line.split("\\s+")).map(word => (word, 1)).keyBy(0).sum(1)
out.print()

一、StandAlone部署模式

并行度

1)设置并行度为1:

wordcount一共有两个任务(可以看到任务大概是由shuffle划分的)。在第一个job中,3个操作连在一起,是一个操作器链。

当并行度为1时,个Task的subTask只有一个,只占用了一个slot。

2)设置并行度为2。

此时有3个Task。占用了2个slot。第一个Task的subTask个数为1(这个是读数据的只有一个nc),其他的两个Task,subTask的个数为2.

仅看第2个Task,它有2个subTask,这两个subTask分别在2个不同的slot中运行。

仅看第3个Task,也是有2个subTask,也是分别在2个slot中,和Task2共用那2个slot。

此时输出的结果,一部分在第一个slot所在节点,一部分在第二个slot所在节点。

3)在webUI提交任务

4)用命令行提交

bin/flink run \
-c  #包名.类名 \
-p  2 #并行度 \
/jar的位置/jar的名字

提交完会显示一个jobId,杀死job

bin/flink cancel jobId

二、Yarn部署模式

1启动一个yarn session

2直接在yarn上提交运行flink作业(run a flink job on yarn)

四、Yarn模式部署

启动:
启动一个YARN session(Start a long-running Flink cluster on YARN);
#申请2个CPU、1600M内存::
 bin/yarn-session.sh -n 2 -tm 800 -s 1 -d
# -n 表示申请2个容器,这里指的就是多少个taskmanager
# -s 表示每个TaskManager的slots数量
# -tm 表示每个TaskManager的内存大小
# -d 表示以后台程序方式运行

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
最新Flink教程,基于Flink 1.13.2。书中所有示例和案例代码均为双语。这是预览版。 目录 第1 章Flink 架构与集群安装...............................................................................................................................- 1 - 1. 1 Flink 简介................................................................................................................................................... - 1 - 1.1.1 Flink 发展历程.................................................................................................................................- 1 - 1.1.2 Flink 特性.........................................................................................................................................- 2 - 1. 2 Flink 应用场景........................................................................................................................................... - 3 - 1.2.1 事件驱动应用程序.......................................................................................................................... - 3 - 1.2.2 数据分析应用程序.......................................................................................................................... - 4 - 1.2.3 数据管道应用程序.......................................................................................................................... - 5 - 1. 3 Flink 体系架构........................................................................................................................................... - 5 - 1.3.1 Flink 系统架构.................................................................................................................................- 5 - 1.3.2 Flink 运行时架构..............................................................................................................................- 6 - 1.3.3 Flink 资源管理.................................................................................................................................- 8 - 1.3.4 Flink 作业调度..........................................................................................................
第一章 整体介绍 2 1.1 什么是 Table API 和 Flink SQL 2 1.2 需要引入的依赖 2 1.3 两种 planner(old & blink)的区别 4 第二章 API 调用 5 2.1 基本程序结构 5 2.2 创建表环境 5 2.3 在 Catalog 中注册表 7 2.3.1 表(Table)的概念 7 2.3.2 连接到文件系统(Csv 格式) 7 2.3.3 连接到 Kafka 8 2.4 表的查询 9 2.4.1 Table API 的调用 9 2.4.2 SQL 查询 10 2.5 将 DataStream 转换成表 11 2.5.1 代码表达 11 2.5.2 数据类型与 Table schema 的对应 12 2.6. 创建临时视图(Temporary View) 12 2.7. 输出表 14 2.7.1 输出到文件 14 2.7.2 更新模式(Update Mode) 15 2.7.3 输出到 Kafka 16 2.7.4 输出到 ElasticSearch 16 2.7.5 输出到 MySql 17 2.8 将表转换成 DataStream 18 2.9 Query 的解释和执行 20 1. 优化查询计划 20 2. 解释成 DataStream 或者 DataSet 程序 20 第三章 流处理中的特殊概念 20 3.1 流处理和关系代数(表,及 SQL)的区别 21 3.2 动态表(Dynamic Tables) 21 3.3 流式持续查询的过程 21 3.3.1 将流转换成表(Table) 22 3.3.2 持续查询(Continuous Query) 23 3.3.3 将动态表转换成流 23 3.4 时间特性 25 3.4.1 处理时间(Processing Time) 25 3.4.2 事件时间(Event Time) 27 第四章 窗口(Windows) 30 4.1 分组窗口(Group Windows) 30 4.1.1 滚动窗口 31 4.1.2 滑动窗口 32 4.1.3 会话窗口 32 4.2 Over Windows 33 1) 无界的 over window 33 2) 有界的 over window 34 4.3 SQL 中窗口的定义 34 4.3.1 Group Windows 34 4.3.2 Over Windows 35 4.4 代码练习(以分组滚动窗口为例) 36 第五章 函数(Functions) 38 5.1 系统内置函数 38 5.2 UDF 40 5.2.1 注册用户自定义函数 UDF 40 5.2.2 标量函数(Scalar Functions) 40 5.2.3 表函数(Table Functions) 42 5.2.4 聚合函数(Aggregate Functions) 45 5.2.5 表聚合函数(Table Aggregate Functions) 47

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值