【Flink学习】(二)Flink 本地环境搭建,运行第一个入门程序

一、环境搭建步骤

安装配置 JDK1.8,配置环境变量

安装 Maven 并配置本地仓库与镜像源

IDEA 配置 Maven 环境,创建 Maven 项目

xml 复制代码
<!-- Flink流式计算核心依赖 -->
<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-streaming-java</artifactId>
    <version>1.17.0</version>
</dependency>
<!-- Flink客户端依赖 -->
<dependency>
    <groupId>org.apache.flink</groupId>
    <artifactId>flink-clients</artifactId>
    <version>1.17.0</version>
</dependency>

1、获取流式执行环境

2、定义数据源 Source

3、调用转换算子处理数据

4、定义数据输出 Sink

5、触发任务执行

四、实战案例

java 复制代码
public class FlinkFirstDemo {
    public static void main(String[] args) throws Exception {
        // 1. 获取流执行环境
        StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
        // 设置全局并行度
        env.setParallelism(1);

        // 2. 读取本地文本文件作为数据源
        DataStreamSource<String> fileStream = env.readTextFile("D:/test.txt");

        // 3. 数据拆分处理
        SingleOutputStreamOperator<String> wordStream = fileStream.flatMap((String line, Collector<String> collector) -> {
            String[] words = line.split(" ");
            for (String word : words) {
                collector.collect(word);
            }
        });

        // 分组求和统计次数
        wordStream.map(word -> new Tuple2<>(word, 1))
                .keyBy(tuple -> tuple.f0)
                .sum(1)
                .print();

        // 5. 执行任务
        env.execute("第一个Flink入门程序");
    }
}

五、本地运行测试

直接运行 main 方法,控制台自动输出单词统计结果,完成首个 Flink 程序开发。

相关推荐
2601_967659889 小时前
GEO 优化哪家好推荐即搜 ai:2026 企业 AI 搜索获客服务商深度测评
大数据·人工智能
计算机源码社9 小时前
基于Hadoop+Spark的黄金市场历史数据特征分析与可视化大屏 基于K-Means聚类算法的黄金历史价格阶段划分研究
大数据·hadoop·python·数据挖掘·数据分析·spark·毕业设计
IT毕设实战小研10 小时前
基于大数据的股票历史行情数据分析与可视化
大数据·信息可视化·数据挖掘·数据分析·课程设计
IT研究室10 小时前
最新大数据毕业设计选题推荐-基于大数据的广州市美食店铺数据可视化分析-大数据-Spark-Hadoop-Bigdata
大数据·课程设计·美食
跨境小彭10 小时前
Temu 广告投放实操:ROAS 底层逻辑与批量广告作业方案
大数据·人工智能·自动化·temu
建筑工程企业管理系统12 小时前
工程计划管理软件能解决工期延误问题吗?施工节点数字化管控实操解读
大数据·软件工程·软件需求
AI推荐率19 小时前
想让AI在选购问题中推荐品牌,应该找什么类型的服务商?
大数据·人工智能·microsoft
浅思科技集19 小时前
工业生产运营软件如何选择?看端到端可见性、数据贯通与AI落地
大数据·人工智能
浅念-20 小时前
一文吃透Git:本地操作|冲突处理|远程协作|GitFlow工作流详解
大数据·git·elasticsearch·搜索引擎·gitflow
葫三生20 小时前
《论三生原理》神话学构想与“神话历史”理论、《古史中的神话》思路异同?
大数据·人工智能·科技·深度学习·算法