Spark流式显示mongoDB插入数据

时间:2016-02-09 11:39:18

标签: scala apache-spark spark-streaming

我正在尝试实现mongoDB spark流通信我的目标是将spark流连接到mongoDB端口,这样当mongoDb在集合中插入任何数据时,我想在spark streaming running console上显示该数据。

我使用了以下代码

    val kafkaParams = Map("metadata.broker.list" -> "localhost:27017")
    val topics = Set("sometopic", "anothertopic")
    val sparkConf = new SparkConf().setAppName("ReadMongo").setMaster("local[2]")
    val ssc = new StreamingContext(sparkConf, Seconds(2))
    val messages = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](
  ssc, kafkaParams, topics)
    val lines = messages.map(_._2)
    val words = lines.flatMap(_.split(" "))
    val wordCounts = words.map(x => (x, 1L)).reduceByKey(_ + _)
    wordCounts.print()
    ssc.start()
    ssc.awaitTermination()

并将nc作为nc -lk localhost 27017启动,但它显示错误为

  

nc:地址已在使用

我应该如何在特定集合中显示mongo插入的数据,或者我应该如何在spark流中读取mongo插入的数据以便进一步创建实时应用程序?

主要的事情是,当数据插入mongo集合然后火花流式显示立即插入数据

0 个答案:

没有答案