使用案例 我们为多个模式配置了金门kafka大数据适配器。 每个模式映射到1个分区,kafka partitioner根据定义的映射发布消息。喜欢 schema1 = 1(分区#1),schema2 = 2 .. scheman = n
这样就可以在自己的分区中隔离所有模式的消息。
问题: 鉴于这种情况,我想配置一个Apachi Nifi节点实例来处理kafka主题的1个分区。这样,我将配置100个并行处理100 kafka分区的Nifi实例。
但是我没有看到任何可以在KafkaConsumer中指定分区的地方
问题:
卡夫卡版本:0.10.1.1 Apache Nifi版本:1.4.0
答案 0 :(得分:1)
目前,您无法指定要使用的分区,它由Apache Kafka客户端自动确定,该客户端确保将一个使用者组中的一个使用者分配给给定分区。基本上,单个消费者可以从多个分区消费,但不同的消费者不能从同一个分区消费。
因此,如果您在同一个NiFi实例中有100个ConsumeKafka处理器,它们都拥有相同的使用者组,则每个处理器将被分配100个分区中的1个。
我可以看到将来可能会公开一个属性来选择一个分区的价值。
此外,您可能希望将ConsumeKafka_0_10与Kafka 0.10.1.1一起使用,ConsumeKafka使用0.9客户端,通常最好使用与代理对齐的客户端。