2016-10-03 70 views
0

我正在使用Spark Streaming来使用Kafka主题中的数据。在哪里定义特定消费者群体的消费者数量?

如果我使用DirectStream的方法,我没有选项来定义consumer groupnumber of consumers

例如:

val messages = KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](ssc, kafkaParams, topicsSet) 

我在哪里可以定义消费者的消费群和数量为这个群体?

如果我使用基于Receiver的方法,我可以选择定义consumer groupnumber of threads [此组中的消费者数量]。基于

接收机方法:

val topicMap = topics.split(",").map((_, numThreads.toInt)).toMap 
val lines = KafkaUtils.createStream(ssc, zkQuorum, group, topicMap).map(_._2) 

回答

1

没有消费者的小组概念在Spark流DirectStream方式工作。

作为每火花流文献

随着directStream,因为有卡夫卡分区消耗,这将所有从卡夫卡并行读取数据 火花流将创建许多RDD分区 。因此,卡夫卡 与RDD分区之间存在一对一的映射关系