使用Spark Streaming统计hdfs文件单词
代码
package test01
import org.apache.spark.SparkConf
import org.apache.spark.streaming.dstream.DStream
import org.apache.spark.streaming.{Seconds, StreamingContext}
import test01.Demo01.ssc
object HDFSInputStreamDemo extends App {
private val sparkConf: SparkConf = new SparkConf().setMaster("local[*]").setAppName("hdfsdemo")
private val ssc = new StreamingContext(sparkConf,Seconds(5))
private val lines: DStream[String] = ssc.textFileStream("hdfs://hadoop07:9000/data/")
val words = lines.flatMap(_.split(" "))
val wordCounts = words.map(x => (x, 1)).reduceByKey(_ + _)
wordCounts.print()
ssc.start()
ssc.awaitTermination()
}
本文介绍如何使用SparkStreaming处理HDFS上的实时数据流,通过读取HDFS中的文本文件,实现单词频率的实时统计。代码展示了从配置Spark环境到创建流处理任务的全过程,包括读取数据流、单词分割、计数及结果展示。
2024

被折叠的 条评论
为什么被折叠?



