03-flink-1.10.1-流处理WordCount

目录

1 开启一个本地9999的TCP协议端口

2 编写第一个flink流处理代码

3  验证


1 开启一个本地9999的TCP协议端口

可以自己在linux 或者windows里安装nmap-ncat

由客户端主动发起连接,一旦连接必须由服务端发起关闭

[liucf@node1 ~]$ nc -l 9999

2 编写第一个flink流处理代码

package com.study.liucf.unbounded

import org.apache.flink.api.java.tuple.Tuple
import org.apache.flink.streaming.api.scala.StreamExecutionEnvironment
import org.apache.flink.streaming.api.scala._

/**
 * @Author liucf
 * @Date 2021/8/16
 */
object WordCount {
  def main(args: Array[String]): Unit = {
    /**创建flink流式处理环境*/
    val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
    /**监听一个流式输入端口*/
    val sockerInput: DataStream[String] = env.socketTextStream("192.168.109.151", 9999)
    /**数据流转换*/
    val res : DataStream[(String, Int)] = sockerInput.flatMap(_.split(" ")) //: DataStream[String]
      .filter(_.nonEmpty)//: DataStream[String]
      //.map(x=>(x,1))
      .map((_,1))//DataStream[(String, Int)]
      .keyBy(0)//KeyedStream[(String, Int), Tuple]
      .sum(1)//DataStream[(String, Int)]

    /**输出结果,打印到控制台*/
    res.print()

    /**启动流式处理*/
    env.execute(" liucf wordcoun")
  }

}

3  验证

输入单词

控制台输出结果

箭头前面的编号表示线程好,这也说明了flink是分布式流式处理引擎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值