Spark-Stream区分Kafka主题

时间:2016-07-19 22:57:22

标签: apache-kafka spark-streaming

如果我为Spark-Streaming Application提供多个主题,请执行以下操作:

val ssc = new StreamingContext(sc, Seconds(2))
    val topics = Set("raw_1", "raw_2)
    val kafkaParams = Map("metadata.broker.list" -> "localhost:9092")
    val stream = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](ssc, kafkaParams, topics)

当我运行我的应用程序时,我怎样才能从我的流中弄清楚它从哪个主题中拉出来的区别?有办法吗?如果我做了像

这样的事情
val lines = stream.print() 

我什么都没有分化。唯一的方法是使Kafka Message Key成为一个表示因素吗?

1 个答案:

答案 0 :(得分:1)

是的,您可以使用createDirectStream<?php $url = 'http://test:welcome@41.87.218.55/nagios/cgi-bin/objectjson.cgi?query=hostlist&parenthost=none&childhost=none'; $obj = json_decode(file_get_contents($url), true); print_r($obj); ?> 版本来访问邮件元数据。

您可以找到示例实现MessageAndMetadata