Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
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.