千家信息网

大数据:Windows下配置flink的Stream

发表于:2024-12-03 作者:千家信息网编辑
千家信息网最后更新 2024年12月03日,对于开发人员来说,最希望的是需要在windows中进行测试,然后把调试好的程序放在集群中运行。下面写一个Socket,上面是监控本地的一个运行端口,来实时的提取数据。获取视频中文档资料及完整视频的伙伴
千家信息网最后更新 2024年12月03日大数据:Windows下配置flink的Stream

对于开发人员来说,最希望的是需要在windows中进行测试,然后把调试好的程序放在集群中运行。下面写一个Socket,上面是监控本地的一个运行端口,来实时的提取数据。获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

下面是一段代码:

import org.apache.flink.api.java.utils.ParameterToolimport org.apache.flink.streaming.api.scala._import org.apache.flink.streaming.api.windowing.time.Timeobject SocketWindowWordCount { def main(args: Array[String]): Unit = { val port:Int=try{ ParameterTool.fromArgs(args).getInt("port") } catch{ case e:Exception=>{ System.out.print("Noport spacified.Please run 'SocketWindowWordCount'") return } } val env:StreamExecutionEnvironment=StreamExecutionEnvironment.getExecutionEnvironment val text=env.socketTextStream("localhost",port,'\n') val windowWordCount=text.flatMap{w=>w.split("\s+")}.map{w=>WordWithCount(w,1)}. keyBy("word").timeWindow(Time.seconds(5),Time.seconds(1)).sum("count") windowWordCount.print().setParallelism(1) env.execute("Socket Window WordCount") }}case class WordWithCount(word: String, count: Long){}

这个程序有几个需要注意的。第一个org.apache.flink.streaming.api.windowing.time.Time是这个时间包的使用。第二个是org.apache.flink.streaming.api.scala._,不要直接引入org.apache.flink.streaming.api.scala.StreamExecutionEnvironment。

配置windows的nc端口,在网上下载nc.exe(https://eternallybored.org/misc/netcat/)

选择版本:解压放在一个指定的目录上。然后在cmd环境中进入到这个目录。获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

使用命令开始nc制定端口为9000(nc -L -p 9000 -v)

在IDEA中设置输入参数:

指定端口--port 9000,然后运行

Cmd端口中输入数据,在flink中可以看到实时的云运算结果:

至此,flink在windows中的一个stream配置完成。获取视频中文档资料及完整视频的伙伴请加QQ群:947967114

0