Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka min.insync.Replicates vs.unclean.leader.election_Apache Kafka - Fatal编程技术网

Apache kafka min.insync.Replicates vs.unclean.leader.election

Apache kafka min.insync.Replicates vs.unclean.leader.election,apache-kafka,Apache Kafka,我希望使用卡夫卡主题实现可靠的数据交付 如果我设置了min.insync.replicas=2,我是否可以不更改unclean.leader.election.enable(默认值为true)的默认值 或者我应该另外将unclean.leader.election.enable设置为false吗 如果min.insync.replications等于2,是否存在由于领导人选举不干净而导致数据丢失的风险?如果不设置该值,当然会采用默认值 不过,这些设置的用途不同;设置一个不会覆盖另一个 如果您有两

我希望使用卡夫卡主题实现可靠的数据交付

如果我设置了
min.insync.replicas=2
,我是否可以不更改
unclean.leader.election.enable
(默认值为
true
)的默认值

或者我应该另外将
unclean.leader.election.enable设置为false吗


如果
min.insync.replications
等于2,是否存在由于领导人选举不干净而导致数据丢失的风险?

如果不设置该值,当然会采用默认值

不过,这些设置的用途不同;设置一个不会覆盖另一个


如果您有两个同步副本(并且您的制作人已经确认了他们的所有消息),那么理论上,您将始终至少有一个干净的领导人可以当选

实际上,数据是否会丢失取决于具体情况。我可以通过场景来解释这一点:

min.insync.replicas=2 && unclean.leader.election.enable=true (It is default value)

在这种情况下,数据(消息3)将丢失。由于不干净的领导人选举是允许的,经纪人1被选为新的领导人,即使它与其他经纪人不同步。否则,尽管unclean.leader.election.enable是集群范围的设置,但您可以覆盖每个主题的此配置。 这个图像来自于书中


将允许非ISR副本成为领导者,确保可用性,但由于数据丢失,因此不保证一致性。

Cloudera文档还提到了一些生产者和代理设置-
unclean.leader.election.enable=true