zoukankan      html  css  js  c++  java
  • Flink Socket WordCount常见异常及解决方案

    一.代码实现 

    package cn.socket
    
    import org.apache.flink.streaming.api.scala._ // 数据类型异常,动态数据引入
    // import org.apache.flink.api.scala._ // 数据类型异常,静态数据引入
    
    /**
      * Created by Administrator on 2020/3/22.
      */
    
    object SocketWindowWordCount {
      def main(args: Array[String]) : Unit = {
    
        // 指定的IP和接口
        val hostname: String = "192.168.136.7"
        val port: Int = 9001
    
        // 获取流处理环境
        val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
    
        // 获取socket计算数据
        val text: DataStream[String] = env.socketTextStream(hostname, port, '
    ')
    
        text.print()
        // wordcount
        val windowCounts = text
          .flatMap { w => w.split("\s") }
          .map(w => (w, 1))
          .keyBy(_._1)
          .sum(1)
    
        // 设置并行度,打印
        windowCounts.print().setParallelism(1)
    
        // 执行
        env.execute("Socket Window WordCount")
      }
    }

    二.常见异常

    Error:(15, 16) could not find implicit value for evidence parameter of type org.apache.flink.api.common.typeinfo.TypeInformation[String]
          .flatMap { w => w.split("\s") }
                   ^
    Error:(15, 16) not enough arguments for method flatMap: (implicit evidence$11: org.apache.flink.api.common.typeinfo.TypeInformation[String])
    org.apache.flink.streaming.api.scala.DataStream[String]. Unspecified value parameter evidence$
    11. .flatMap { w => w.split("\s") } ^

      如图:

      

      原因分析:

        在flink中的大部分算子中,并没有默认的隐式类型参数的定义,我们在使用时也没有显式地指定类型,因此会报类型异常。

    三.解决方案

    import org.apache.flink.streaming.api.scala._ // 数据类型异常,动态数据引入
    import org.apache.flink.api.scala._ // 数据类型异常,静态数据引入
  • 相关阅读:
    Swing-文本输入组件(一)
    JFrame常用属性设置模板
    Swing-BoxLayout用法-入门
    linux创建和查看用户命令
    elasticsearch,http://ip:9200访问不到的解决办法
    U盘制作Linux系统盘
    Linux中oracle的安装,亲测
    Linux中yum的安装
    Linux中oracle安装时候报ora-00119解决办法
    eclipse中多个工程编译到同一个目录下
  • 原文地址:https://www.cnblogs.com/yszd/p/12554121.html
Copyright © 2011-2022 走看看