【Flink-1.17-教程】-【一】Flink概述、Flink快速入门
1)Flink 是什么
1.1.有界流和无界流
1.2.Flink 的发展史
2)Flink 特点
3)Flink vs SparkStreaming
4)Flink 的应用场景
5)Flink 分层 API
6)Flink 快速入门
6.1.创建项目
在准备好所有的开发环境之后,我们就可以开始开发自己的第一个 Flink 程序了。首先我们要做的,就是在 IDEA 中搭建一个 Flink 项目的骨架。我们会使用 Java 项目中常见的 Maven 来进行依赖管理。
1、创建工程
(1)打开 IntelliJ IDEA,创建一个 Maven 工程。
(2)将这个 Maven 工程命名为 FlinkTutorial。
(3)选定这个 Maven 工程所在存储路径,并点击 Finish,Maven 工程即创建成功。
2、添加项目依赖
在项目的 pom 文件中,添加 Flink 的依赖,包括 flink-java、flink-streaming-java,以及 flink-clients(客户端,也可以省略)。
<properties>
<flink.version>1.17.0</flink.version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-java</artifactId>
<version>${flink.version}</version>
</dependency>
<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-clients</artifactId>
<version>${flink.version}</version>
</dependency>
</dependencies>
6.2.WordCount 代码编写
需求:统计一段文字中,每个单词出现的频次。
环境准备:在 src/main/java 目录下,新建一个包,命名为 com.atguigu.wc。
6.2.1.批处理(了解)
批处理基本思路:先逐行读入文件数据,然后将每一行文字拆分成单词;接着按照单词分组,统计每组数据的个数,就是对应单词的频次
1、数据准备
(1)在工程根目录下新建一个input文件夹,并在下面创建文本文件words.txt
(2)在words.txt中输入一些文字,例如:
hello flink
hello world
hello java
2、代码编写
(1)在 com.atguigu.wc 包下新建 Java 类 BatchWordCount,在静态 main 方法中编写代码。具体代码实现如下:
import org.apache.flink.api.common.typeinfo.Types;
import org.apache.flink.api.java.ExecutionEnvironment;
import org.apache.flink.api.java.operators.AggregateOperator;
import org.apache