2016-10-03 8 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

スパークストリーミングDirectStreamアプローチとコンシューマ・グループのコンセプトとき仕事何もありません。 directStreamでスパークストリーミングドキュメント

あたりとして

すべて並列にカフカからのデータ を読み込みます消費するカフカのパーティションが存在するとして、スパークストリーミングなど、多くのRDDパーティションに を作成します。したがって、Kafka とRDDパーティションの間には1対1のマッピングがあります。

関連する問題