Flink入门学习 | 大数据技术

简单说两句

✨ 正在努力的小新~
💖 超级爱分享,分享各种有趣干货!
👩‍💻 提供:模拟面试 | 简历诊断 | 独家简历模板
🌈 感谢关注,关注了你就是我的超级粉丝啦!
🔒 以下内容仅对你可见~

作者:后端小知识CSDN后端领域新星创作者 |阿里云专家博主

CSDN个人主页:后端小知识

🔎GZH后端小知识

🎉欢迎关注🔎点赞👍收藏⭐️留言📝

Flink入门学习-WordCount

image-20240414195737021

我们今天来编写一个Flink入门学习案例,统计单词出现的次数

这里就先直接上手实践,先不看枯燥的理论

IDEA方式运行

我们首先创建Flink运行环境

//设置Flink运行环境StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();

然后模拟一点数据

//从集合中读取模拟数据DataStream<String> stream = env.fromElements("spark flink kafka", "spark sqoop flink", "kakfa hadoop flink");

切词做转换

stream.flatMap((String value, Collector<Tuple2<String,Integer>> out) -> {//value就是每一个元素的数据System.out.println("读取内容:" + value);//将每一个元素按照空格切分String[] split = value.split(" ");//遍历每一个单词for (String word : split) {//将每一个单词发送到下游out.collect(new Tuple2<>(word, 1));}})

返回类型

.returns(Types.TUPLE(Types.STRING, Types.INT))

keyby分组(按照tuple的第一个元素进行分组)

.keyBy(f->f.f0)

聚合统计

.sum(1);

打印结果

 sum.print();

最后执行execute

 env.execute();

完整代码如下

package cn.wy.chapter02;import org.apache.flink.api.common.typeinfo.Types;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.streaming.api.datastream.DataStream;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.util.Collector;/*** @author tiancx*/
public class WordCount {public static void main(String[] args) throws Exception {//设置Flink运行环境StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();//从集合中读取模拟数据DataStream<String> stream = env.fromElements("spark flink kafka", "spark sqoop flink", "kakfa hadoop flink");SingleOutputStreamOperator<Tuple2<String, Integer>> sum = stream.flatMap((String value, Collector<Tuple2<String,Integer>> out) -> {//value就是每一个元素的数据System.out.println("读取内容:" + value);//将每一个元素按照空格切分String[] split = value.split(" ");//遍历每一个单词for (String word : split) {//将每一个单词发送到下游out.collect(new Tuple2<>(word, 1));}}).returns(Types.TUPLE(Types.STRING, Types.INT)).keyBy(f->f.f0).sum(1);//打印结果sum.print();env.execute();}
}

运行看结果

image-20240401232613214

提交到集群运行

启动集群后我们使用命令

flink run -c 类全限定路径名 jar文件 

flink run -c cn.wy.chapter02.WordCount FlinkDemo-1.0-SNAPSHOT.jar

image-20240401233542495

可以看到任务提交切运行成功了

我们进入web-ui界面

网址

http://localhost:8081/#/job/completed

界面如下图所示

image-20240401233753324

可以清晰的看到任务状态是FINISHED(完成)

任务执行成功了,我们的日志在哪看呢?

我们直接去TaskManager中看

image-20240401233949094

点击地址进去

image-20240401234102076这里就是结果啦

【都看到这了,点点赞点点关注呗,爱你们】😚😚

后端小知识关注引导

image-20240330155339598

💬

✨ 正在努力的小新~
💖 超级爱分享,分享各种有趣干货!
👩‍💻 提供:模拟面试 | 简历诊断 | 独家简历模板
🌈 感谢关注,关注了你就是我的超级粉丝啦!
🔒 以下内容仅对你可见~

作者:后端小知识CSDN后端领域新星创作者 | 阿里云专家博主

CSDN个人主页:后端小知识

🔎GZH后端小知识

🎉欢迎关注🔎点赞👍收藏⭐️留言📝

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/817342.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

仿真服务器介绍及应用

仿真服务器是一种高性能的计算设备&#xff0c;专门用于运行复杂的仿真软件和处理大量的计算任务。 仿真服务器通常具备以下特点&#xff1a; 1. 高性能硬件配置&#xff1a;为了满足仿真软件对计算能力的要求&#xff0c;仿真服务器通常配备高性能的CPU、大量的内存以及高速的…

Win11 使用 WSL2 安装 linux 子系统 ubuntu

Win11 使用 WSL2 安装 linux 子系统 ubuntu 段子手168 1、用 部署映像服务和管理工具 dism.exe 命令&#xff0c;开启 WSL2 按【WIN R】&#xff0c;打开【运行】&#xff0c;输入&#xff1a;【cmd】&#xff0c;管理员打开【命令行提示符】。 启用适用于 Linux 的 Windo…

正则表达式---【Python版】

目录 前言 一.正则表达式概括 1.1简介 1.2使用场景 二.正则表达式语法 2.1基本匹配 2.2元字符 2.2.1点运算符. 2.2.2字符类[] 2.2.3否定字符类 2.2.4*号 2.2.5号 2.2.6&#xff1f;号 2.2.7{}号 2.2.8()号 2.2.9|或运算 2.2.10转码特殊字符\ 2.2.11^和$ 2.3简…

okcc呼叫中心卡机如何注册AG中继

注册 AG 中继通常涉及一系列步骤&#xff0c;以下是一个一般性的指南&#xff1a; 了解 AG 中继&#xff1a;首先&#xff0c;确保你了解 AG 中继的概念和作用。AG 中继是呼叫中心的关键组成部分&#xff0c;用于连接呼入呼出电话和底层通信网络。 选择合适的 AG 中继供应商&a…

社交媒体数据恢复:超级课程表

超级课程表是一款广受欢迎的应用程序&#xff0c;为学生提供便捷的课程查询和管理功能。然而&#xff0c;在使用过程中&#xff0c;数据丢失或误删的情况难免会发生。本文将介绍如何进行超级课程表的数据恢复&#xff0c;以确保用户的数据安全。 首先&#xff0c;我们需要了解…

css3 新增加的属性有哪些

没错 CSS3 从2011年成为标准之后&#xff0c;2024年了&#xff0c;面试题中还是会出现 CSS3 引入了许多新功能&#xff0c;例如&#xff1a; 动画&#xff1a;animation媒体查询&#xff1a;media。布局&#xff1a; flex、grid【网格布局】圆角&#xff1a; border-radius。阴…

Scrapy框架 进阶

Scrapy框架基础Scrapy框架进阶 【五】持久化存储 命令行&#xff1a;json、csv等管道&#xff1a;什么数据类型都可以 【1】命令行简单存储 &#xff08;1&#xff09;语法 Json格式 scrapy crawl 自定义爬虫程序文件名 -o 文件名.jsonCSV格式 scrapy crawl 自定义爬虫程…

Linux ping 其他主机并记录响应内容

此命令用于判断本机到其他机器之间的网络是否通畅&#xff0c;是否有终端或者响应超时的情况&#xff1a; nohup bash -c ping mysql.test.cn | while read pong; do echo "$(date "%Y-%m-%d %H:%M:%S") - $pong"; done >> ping.log & 输出结果…

Python并发编程——paramiko远程控制的模块;病毒攻击原理;dll注入

paramiko模块 介绍&#xff1a; paramiko是一个用于做远程控制的模块&#xff0c;使用该模块可以对远程服务器进行命令或文件操作&#xff0c;值得一说的是&#xff0c;fabric和ansible内部的远程管理就是使用的paramiko来现实。 2. 下载安装 pip3 install paramiko #在pytho…

更改android 安装的sdk版本

打开sdk manager 勾选show details 就可以选择了。

DrugBAN:基于双线性注意力网络进行药物-靶点结合预测。

DrugBan&#xff1a;一种可解释的双线性注意力网络进行药物-靶点结合预测。 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 DrugBan&#xff1a;一种可解释的双线性注意力网络进行药物-靶点结合预测。前言一、模型…

调用第三方接口

1、发送请求 查询出数据封装参数发送请求处理响应结果 RequestMapping(value"/updateTodoInfo",method {RequestMethod.POST}) public void sendPostRequest() {try {URL url new URL("http://ip:8080/test");List<TodoEntity> dataListflowInfo…

内网渗透-域环境的搭建

域环境的搭建 文章目录 域环境的搭建前言一、什么是域环境 什么是域内网基础知识点 二、域环境的搭建 1. 部署域结构2.如何加入域3.SRV出错及解决办法4.SRV记录注册不成功的可能原因 禁用域中的账户将计算机退出域添加域用户总结 前言 一、什么是域环境 什么是域 域是一种管…

NSL-KDD数据集详细介绍及下载

链接&#xff1a;https://pan.baidu.com/s/1hX4xpVPo70vwLIo0gdsM8A?pwdq88b 提取码&#xff1a;q88b 一般认为数据质量决定了机器学习性能的上限,而机器学习模型和算法的优化最多 只能逼近这个上限。因此在数据采集阶段需要对采集任务进行规划。在数据采集之前, 主要是从数据…

matplotlib_vs_ggplot2

参考博客 https://markusdumke.github.io/articles/2017/11/make-matplotlib-look-like-ggplot/#exactline theme_bw.mplstyle # ggplot style with white background # adapted from http://www.huyng.com/posts/sane-color-scheme-for-matplotlib/patch.linewidth: 1 patch…

算法-归并排序

算法-归并排序 时间复杂度&#xff08;nlogn&#xff09; 归并排序是用分治思想&#xff0c;分治模式在每一层递归上有三个步骤&#xff1a; 分解&#xff08;Divide&#xff09;&#xff1a;将n个元素分成个含n/2个元素的子序列。解决&#xff08;Conquer&#xff09;&…

解决跨域之烦恼:Nginx如何成为你的跨域问题终结者

简介 跨域问题在Web开发中是一个常见而又让人头疼的挑战。当我们的Web应用尝试从一个域&#xff08;domain&#xff09;请求资源或数据来自另一个域时&#xff0c;由于浏览器的同源策略&#xff08;Same-Origin Policy&#xff09;的限制&#xff0c;就会遇到跨域问题。这种限…

mac基础操作、快捷、软件快捷方式

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 mac基础操作、快捷、软件快捷方式 前言mac快捷操作快捷查找切换页面页面缩略访达和命令端切换创建文件夹创建文件删除文件/文件夹获取文件的路径移动文件或文件夹复制文件命令端常用命令 前言 主要是方…

【爆款秘籍】上班族如何在小红书店铺实现10天净利润10万?

一、个人介绍与背景 自媒体起步 大家好&#xff0c;我是灵娜&#xff0c;一名热衷于知乎个人成长类内容创作的自媒体人。从最初的写作爱好者&#xff0c;到如今的自媒体从业者&#xff0c;我一直在探索如何通过内容创作实现自我价值。 面临的问题 然而&#xff0c;在自媒体…

Centos Docker Oracle11g 密码过期修改

症状&#xff1a; Centos Oracle11g环境变量配置 如果没有配置环境变量&#xff0c;需要先配置Oracle环境变量&#xff0c;否则执行sqlplus时会提示&#xff1a;SP2-0750: You may need to set ORACLE_HOME to your Oracle software directory 配置方法&#xff1a; 第一步&a…