IDEA Spark Streaming 操作(RDD队列流)

Posted soyosuyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了IDEA Spark Streaming 操作(RDD队列流)相关的知识,希望对你有一定的参考价值。

import org.apache.spark.SparkConf
import org.apache.spark.rdd.RDD
import org.apache.spark.streaming.{Seconds, StreamingContext}

import scala.collection.mutable

object DStream_RDDqueue {
  def main(args: Array[String]): Unit = {
      val conf=new SparkConf().setAppName("RDD队列流").setMaster("local[2]")
      val ss=new StreamingContext(conf,Seconds(1))   //每一秒监听一次
      val RDDQueue=new mutable.SynchronizedQueue[RDD[Int]]
      val queueStream=ss.queueStream(RDDQueue)
    val result=queueStream.map(x=>(x%5,1)).reduceByKey(_+_)
        result.print(1000)
    ss.start()

    while(true){
         RDDQueue +=ss.sparkContext.makeRDD(1 to 100,2)
          Thread.sleep(2000)    //每2秒发一次数据
       }
   ss.stop()
  }

}

 

以上是关于IDEA Spark Streaming 操作(RDD队列流)的主要内容,如果未能解决你的问题,请参考以下文章

IDEA Spark Streaming 操作(套接字流)-----make socket数据源

如何在idea里面直接运行spark streaming程序

关于IDEA开发环境下的Kafka+Spark Streaming的classpath配置方式

Spark Streaming DStream的output操作以及foreachRDD详解

Spark发行笔记8:解读Spark Streaming RDD的全生命周期

Spark Streaming基于Spark Streaming&Flume&Kafka打造通用流处理平台