如何使用Kakfa topic messages
Direct Stream approach?
有可能吗?由于Direct Stream方法没有Consumer Group
概念。
如果我将group.id
作为kafkaparams传递给DirectStream方法,会发生什么?以下代码作为Kafka Params with group.id
使用without group.id
。
示例代码:
val kafkaParams = Map(
"group.id" -> "group1",
CommonClientConfigs.SECURITY_PROTOCOL_CONFIG -> sasl,
ConsumerConfig.KEY_DESERIALIZER_CLASS_CONFIG -> "org.apache.kafka.common.serialization.StringDeserializer",
ConsumerConfig.VALUE_DESERIALIZER_CLASS_CONFIG -> "org.apache.kafka.common.serialization.StringDeserializer",
"metadata.broker.list" -> brokerList,
"zookeeper.connect" -> zookeeperURL
)
val dStream =
KafkaUtils.createDirectStream[String, String, StringDecoder, StringDecoder](
ssc, kafkaParams, topicSet
).map(_._2)
答案 0 :(得分:1)
没有任何反应,Sparks直接流方法根本不考虑组ID参数,因为它使用较低级别SimpleConsumer
。您不能使用不同的Spark直接方法流使用相同的主题。您可以遵循使用群组的旧接收器方法。