首页 > 其他 > 详细

6、Flink批处理案例实现-scala

时间:2020-09-17 23:27:29      阅读:72      评论:0      收藏:0      [点我收藏+]

技术分享图片

 

 

 

在pom.xml文件添加以下依赖

      <dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-scala_2.11</artifactId>
<version>${flink.version}</version>
</dependency>

<dependency>
<groupId>org.apache.flink</groupId>
<artifactId>flink-streaming-scala_2.11</artifactId>
<version>${flink.version}</version>
</dependency>

 

创建一个scala类

 技术分享图片

 

 技术分享图片

 

 

创建一个scala对象

技术分享图片

 

package com.stuscala.batch

import org.apache.flink.api.scala.ExecutionEnvironment
import org.apache.flink.api.scala._
object WordCount {
  def main(args: Array[String]) {
    //批处理程序,需要创建ExecutionEnvironment
    val env = ExecutionEnvironment.getExecutionEnvironment
    //fromElements(elements:_*) --- 从一个给定的对象序列中创建一个数据流,所有的对象必须是相同类型的。
    val text = env.fromElements(
      "Who‘s there?",
      "I think I hear them. Stand, ho! Who‘s there?","hah")

    val counts = text.flatMap { _.toLowerCase.split("\\W+") filter { _.nonEmpty } }
      .map { (_, 1) }
      .groupBy(0)//根据第一个元素分组
      .sum(1)

    //打印
    counts.print()
  }

}

 

技术分享图片

 

6、Flink批处理案例实现-scala

原文:https://www.cnblogs.com/braveym/p/13686141.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!