SparkStreaming的WordCount

编程入门 行业动态 更新时间:2024-10-28 05:15:13

<a href=https://www.elefans.com/category/jswz/34/1666632.html style=SparkStreaming的WordCount"/>

SparkStreaming的WordCount

Spark中的编程入口是:

  • SparkCore的编程入口是SparkContext
  • SparkSQL的编程入口是SparkSession
  • SparkStreaming的编程入口是StreaminContext

首先引入依赖:

<dependency><groupId>org.apache.spark</groupId><artifactId>spark-streaming_2.11</artifactId><version>${spark.version}</version>
</dependency>
import org.apache.spark.SparkConf
import org.apache.spark.streaming.{Seconds, StreamingContext}object WordCountDemo {def main(args: Array[String]): Unit = {val conf = new SparkConf().setAppName("wordcount").setMaster("local[*]")val ssc = new StreamingContext(conf, Seconds(1))//通过netCat的方式进行模拟流数据,此种是无状态的转换val lineDStream = ssc.socketTextStream("hadoop02", 9999)val wordsDStream = lineDStream.flatMap(_.split(" "))val result = wordsDStream.map((_, 1)).reduceByKey(_ + _)ssc.start()ssc.awaitTermination()}
}

按照Spark Core中的方式进行打包,并将程序上传到Spark机器上。并运行:

bin/spark-submit --class com.atguigu.streaming.WorldCount ~/wordcount-jar-with-dependencies.jar

通过Netcat发送数据:

TERMINAL 1:
Running Netcat$ nc -lk 9999
hello world

如果程序运行时,log日志太多,可以将spark conf目录下的log4j文件里面的日志级别改成WARN。

自定义Receiver

import org.apache.spark.SparkConf
import org.apache.spark.streaming.{Seconds, StreamingContext}/*** SparkStreaming  的wordcount*/
object WordCountDemo {def main(args: Array[String]): Unit = {val conf = new SparkConf().setAppName("wordcount").setMaster("local[*]")val ssc = new StreamingContext(conf, Seconds(1))//通过netCat的方式进行模拟流数据,此种是无状态的转换val lineDStream = ssc.socketTextStream("hadoop02", 9999)val wordsDStream = lineDStream.flatMap(_.split(" "))val result = wordsDStream.map((_, 1)).reduceByKey(_ + _)ssc.start()ssc.awaitTermination()}
}

更多推荐

SparkStreaming的WordCount

本文发布于:2023-07-28 20:15:43,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1298207.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:SparkStreaming   WordCount

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!