flink任务提交&wordcount

本文介绍了如何使用Flink进行任务提交,包括通过Web UI和`flink run`脚本的方式。详细讲述了提交WordCount任务的过程,从创建模板工程、编写WordCount程序、本地运行到打包并提交到Flink集群执行,同时提供了设置并行度和参数的说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

flink学习

第二天 flink任务提交&写Wordcount任务

flink任务提交

通过 flink web ui 进行任务提交

向flink集群 提交任务的方式有两种。
昨天已经测试用 flink run 方式的提交任务。今天测试用web页面的方式提交任务。
已经部署好了standalone模式的flink集群
web ui 端口默认为8081

在这里插入图片描述
点击右上角 add new 按钮,开始上传 flink程序的jar包
我没有flink jar包,用官方提供的案例jar 测试一下流程。
看一下 flink 的 example 目录

[root@worker19 flink-1.12.7]# ls examples/
batch  gelly  python  streaming  table

有5个文件夹,分别对应 批处理,图计算,Python,流计算,table 的一些案例。

使用的jar包 路径 :examples/streaming/SocketWindowWordCount.jar
我的工作机器是Windows
copy jar包 到电脑
访问 web界面,点 submit new job
提交jar包

点 SocketWindowWordCount.jar

可以设置 并行度,参数,保存点路径

worker19 用 nc 向8888端口 发数据

[root@worker19 flink-1.12.7]# nc -lk 8888

参数 --hostname worker19 --port 8888
并行度 2
checkpoint path不写
点击 submit
提交成功,注意 一定要先启动 nc 再提交
在这里插入图片描述

向 worker19 8888端口 发数据

[root@worker19 ~]# nc -lk 8888
hello flink hello flink 
hello flink hello flink
hello flink hello flink

hello flink hello flink

hello flink hello flink
hello flink hello flink
hello flink hello flink
hello flink hello flink

查看页面taskmanager
在这里插入图片描述
设置的并行度为2,第一个taskmanager的stdout没有统计结果,去另一个看,结果如下
在这里插入图片描述
删除任务 runjob 任务详情 里的 cancel
或者 关闭 nc 任务也会自动退出

使用flink run 脚本提交

flink run 脚本 的参数说明

Syntax: run [OPTIONS]
“run” action options:

 -c,--class <classname>               需要指定的main方法的类
 -C,--classpath <url>                 指定第三方依赖的url。url需要指定文件的schema如(file://),url所有节点都能访问
 -d,--detached                        在后台运行
 -n,--allowNonRestoredState          是否允许跳过保存点
 -p,--parallelism <parallelism>       并行度
 -m, --jobmanager <arg>               指定job
 -s,--fromSavepoint <savepointPath>   savepoint路径


[root@worker19 flink-1.12.7]# bin/flink run -m worker19:8081 -c org.apache.flink.streaming.examples.socket.SocketWindowWordCount -p 2 examples/streaming/SocketWindowWordCount.jar  --hostname worker19 --port 8888

注意 -m 指定的是jobmanager 节点+rest端口号(默认8081)

向 worker19机器 8888端口 发数据
在web界面 taskmanager stdout 查看输出结果

写 wordcount 的flink程序

创建 flink 模板工程

使用maven命令创建

mvn archetype:generate
-DarchetypeGroupId=org.apache.flink
-DarchetypeArtifactId=flink-quickstart-java
-DarchetypeVersion=1.12.7

使用脚本创建

curl https://flink.apache.org/q/quickstart.sh | bash -s 1.12.7

我在IDEA 里使用 maven 构建flink模板
在这里插入图片描述
add archetype 后,勾选 create from archetype,选择flink模板, 新建maven项目
flink-study
在这里插入图片描述
项目里有一个批处理 ,一个流处理的 样例类

自己写一个wordcount

package org.example.day02;

import org.apache.flink.api.common.functions.FlatMapFunction;
import org.apache.flink.api.common.function
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值