zoukankan      html  css  js  c++  java
  • Flink batch/stream编程套路

    DataSet and DataStream 这里以WordCount为例,共同的编程套路如下所示:
    
    1.获取执行环境(execution environment)
    final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
    
    2.加载/创建初始数据集
    // 读取输入数据
    DataStream<String> text;
    if (params.has("input")) {
        // 读取text文件
        text = env.readTextFile(params.get("input"));
    } else {
        System.out.println("Executing WordCount example with default input data set.");
        System.out.println("Use --input to specify file input.");
        // 读取默认测试数据集
        text = env.fromElements(WordCountData.WORDS);
    }
    
    3.对数据集进行各种转换操作(生成新的数据集)
    DataStream<Tuple2<String, Integer>> counts =
                        // 切分每行单词
                        text.flatMap(new Tokenizer())
                        //对每个单词分组统计词频数
                        .keyBy(0).sum(1);
                        
    4.指定将计算的结果放到何处去
    // 输出统计结果
    if (params.has("output")) {
        //写入文件地址
        counts.writeAsText(params.get("output"));
    } else {
        System.out.println("Printing result to stdout. Use --output to specify output path.");
        //数据打印控制台
        counts.print();
    }
    
    5.触发APP执行
    // 执行flink 程序
    env.execute("Streaming WordCount");
  • 相关阅读:
    windows x64 软件约定
    windows 64位 系统非HOOK方式监控进程创建
    win 64 ring0 inline hook
    win 64 Shadow ssdt hook
    win 64 SSDT HOOK
    win 64 文件操作
    win64 驱动内存基本操作
    windbg符号表问题
    Windows 64位驱动编程基础与win64 ssdt
    基础知识
  • 原文地址:https://www.cnblogs.com/linjiqin/p/12439150.html
Copyright © 2011-2022 走看看