flink 流处理_flink写入hdfs

flink 流处理_flink写入hdfs还是那个熟悉的例子 数字统计的例子,数据引用环境啥的说明都在《第一个Flink程序》中,请往上个例子查看,接下来说明下这个例子是有界的数据流的单

大家好,欢迎来到IT知识分享网。

flink 流处理_flink写入hdfs

还是那个熟悉的例子 数字统计的例子,

flink 流处理_flink写入hdfs

数据引用环境啥的说明都在《第一个Flink程序》中,请往上个例子查看,接下来说明下这个例子是有界的数据流的单词统计。另一方面,我这边是学习的B站上的尚硅谷的教程整理的,有需求的可以去看看。

import org.apache.flink.api.common.typeinfo.Types;
import org.apache.flink.api.java.tuple.Tuple2;
import org.apache.flink.streaming.api.datastream.DataStreamSource;
import org.apache.flink.streaming.api.datastream.KeyedStream;
import org.apache.flink.streaming.api.datastream.SingleOutputStreamOperator;
import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
import org.apache.flink.util.Collector;
/****
 * @author 
 * @date 2022/11/10
 * @desc
 */
public class BoundedStreamWordCount {
    public static void main(String[] args) throws Exception {
        // 1. 创建流式执行环境
        StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
        // 2. 读取文件
        DataStreamSource<String> lineDataStreamSource = env.readTextFile("input/words.txt");
        // 3. 转换计算
        SingleOutputStreamOperator<Tuple2<String, Long>> wordAndOneTuple = lineDataStreamSource.flatMap((String line, Collector<Tuple2<String, Long>> out) -> {
            String[] words = line.split(" ");
            for (String word : words) {
                out.collect(Tuple2.of(word, 1L));
            }
        })
                .returns(Types.TUPLE( Types.STRING, Types.LONG));
        // 4. 分组操作
        KeyedStream<Tuple2<String, Long>, String> wordAndOneKeyedStream = wordAndOneTuple.keyBy(data -> data.f0);
        // 5. 求和
        SingleOutputStreamOperator<Tuple2<String, Long>> sum = wordAndOneKeyedStream.sum(1);
        // 6. 打印
        sum.print();

        // 7. 启动执行
        env.execute();
    }
}

IT知识分享网

运行结果

flink 流处理_flink写入hdfs

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/6306.html

(0)
上一篇 2022-12-14 22:56
下一篇 2022-12-14 22:56

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注

关注微信