[ 
https://issues.apache.org/jira/browse/KAFKA-2017?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14956273#comment-14956273
 ] 

Onur Karaman commented on KAFKA-2017:
-------------------------------------

Hey everyone. So yeah there are some nice benefits to persisting to kafka 
(maybe write group changes to a __group_states topic or something to that 
effect):
1. you can reduce zk load - especially writes.
2. I think it's conceptually cleaner to have consumer state and broker state 
cleanly separated: consumer state like offsets and groups in one or several 
kafka topics; broker state in zookeeper.
3. It is possible to merge offset information with this group state into one 
new topic (we can get rid of the __consumer_offsets topic) so you'd be able to 
see a complete history of a group including its commits and group membership 
changes. Admittedly, this kind of group history can be achieved to a small 
extent in the coordinator's log4j logs. Also it's unclear what the right 
cleanup policy would be. Compaction would eventually only keep the latest 
state, while regular deletion would get rid of some latest but old group 
history.

> Persist Coordinator State for Coordinator Failover
> --------------------------------------------------
>
>                 Key: KAFKA-2017
>                 URL: https://issues.apache.org/jira/browse/KAFKA-2017
>             Project: Kafka
>          Issue Type: Sub-task
>          Components: consumer
>    Affects Versions: 0.9.0.0
>            Reporter: Onur Karaman
>            Assignee: Guozhang Wang
>             Fix For: 0.9.0.0
>
>         Attachments: KAFKA-2017.patch, KAFKA-2017_2015-05-20_09:13:39.patch, 
> KAFKA-2017_2015-05-21_19:02:47.patch
>
>
> When a coordinator fails, the group membership protocol tries to failover to 
> a new coordinator without forcing all the consumers rejoin their groups. This 
> is possible if the coordinator persists its state so that the state can be 
> transferred during coordinator failover. This state consists of most of the 
> information in GroupRegistry and ConsumerRegistry.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to