• Flink开发环境搭建(idea2019)


    1.打开idea,选择new project,跳转至如下界面:

     

    2.单击next 下一步,输入项目名称,单击finish完成

     3.在项目main项目下新建scala目录,并新建文件,文件名称为 hello.scala

     

     4.新建文件之后,进入helllo.scala文件,会弹出添加sdk,添加自己版本的scala就可以。完成之后可以新建添加如下代码,测试Java和scala之间的互相调用。

     

     5. 在maven项目下引入如下配置:

    <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <encoding>UTF-8</encoding>
        <scala.version>2.11.12</scala.version>
        <scala.binary.version>2.11</scala.binary.version>
        <flink.version>1.6.1</flink.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-scala_${scala.binary.version}</artifactId>
            <version>${flink.version}</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.flink</groupId>
            <artifactId>flink-streaming-scala_${scala.binary.version}</artifactId>
            <version>${flink.version}</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    6.新建一个flink测试:

    package it.bigdata.flink.study

    import org.apache.flink.streaming.api.scala.{DataStream, StreamExecutionEnvironment}
    import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment

    import org.apache.flink.streaming.api.scala._

    //流处理 word count
    object SteamWordCount {
      def main(args: Array[String]): Unit = {
        //创建流处理的执行环境
        val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
        env.setParallelism(8)

        //接受一个socket文本流
        val inputDataStream: DataStream[String] = env.socketTextStream("10.18.35.155", 777)
    //        进行转换处理统计
            inputDataStream
              .flatMap(_.split(" "))
              .filter(_.nonEmpty)
              .map((_,1))
              .keyBy(0)
              .sum(1)
              .print()
        env.execute("word count")
      }
    }

    6.1问题一

    若出现 StreamExecutionEnvironment 类没有发现时,将此处,改为compile

     

    6.2问题二

    若还报错,java.lang.ClassNotFoundException: org.apache.flink.runtime.state.StateBackend

    打开edit configuration ,在此处勾选即可

     

     7. 提前进入服务器,使用nc -lk 777,然后运行第一个flink,运行效果如下

     

    author@nohert
  • 相关阅读:
    i=i+2 与i+=2
    如何浏览github上所有的公开的项目?
    在ubuntu怎样修改默认的编码格式
    链式结构实现堆排序
    直接插入排序的哨兵的作用
    lk进kernel
    比劫劫财引发的灾如何化解呢?
    java:Map借口及其子类HashMap二
    java:Map借口及其子类
    java:集合输出之foreach输出三
  • 原文地址:https://www.cnblogs.com/gzgBlog/p/14928123.html
Copyright © 2020-2023  润新知