Created 08-03-2016 03:55 PM
Created 08-03-2016 04:29 PM
To add some color to Bryan's response:
Kafka (Get/Put) can work with
Kafka (Consume/Publish) can work with
Created 08-03-2016 04:10 PM
ConsumeKafka and PublishKafka use the Kafka 0.9 client library.
GetKafka and PutKafka use the Kafka 0.8 client library.
Created 08-03-2016 04:29 PM
To add some color to Bryan's response:
Kafka (Get/Put) can work with
Kafka (Consume/Publish) can work with
Created 08-03-2016 08:28 PM
Thanks for a quick response. Also i see the consumekafka is connecting to broker instead of zookeeper, does it mean that it is doing a direct connect to kafka and not maintain the offset with zookeeper. Also where are the offsets stored in this case?
Created 08-03-2016 08:46 PM
ConsumeKafka is one of those processors whose states are stored and managed externally, outside of NIFI. Offsets are therefore maintained by kafka, instead of zookeeper.
Having said that, there is a plan to enhance state management for these processors. For more information, please refer to this JIRA ticket: https://issues.apache.org/jira/browse/NIFI-2078
Created 08-03-2016 08:59 PM
Just to clarify, what Haimo mentioned is that the ConsumerKafka processor does not use any of NiFi's state management capabilities because the Kafka client maintains the offsets.
Regarding the Kafka client... in 0.9.0 I believe it no longer stores offsets in ZooKeeper, and now stores them internally somehow, so that is why you see it connecting directly to the broker and not using ZooKeeper.