gpt4 book ai didi

apache-kafka - 卡夫卡 : exactly once semantics configuration using Apache Beam

转载 作者:行者123 更新时间:2023-12-04 14:20:57 26 4
gpt4 key购买 nike

我正在尝试在 Kafka (Apache Beam) 中配置 exactly once 语义。以下是我要介绍的更改:

制作人:

  1. enable.idenpotence = true

  2. transactional.id = uniqueTransactionalId

消费者:

  1. 设置 enable.auto.commit = false

    //向消费者构建器添加了以下内容:

  2. .commitOffsetsInFinalize()

  3. .withReadCommitted()

将以下内容添加到 KafkaIO#write 构建器:

  1. .withEOS(numShards, sinkGroupId)

有谁知道还应该更改哪些内容才能在 Apache Beam KafkaIO 中实现恰好一次语义?

上面的配置看起来没问题还是我理解错了?

如果我不使用事务 API(因为我在 apache beam 中没有明确的生产者),我是否需要指定 transactional.id 属性?

最佳答案

好吧,看来我终于找到了符合我要求的正确设置。这是我最终得到的结果:

1) KafkaIO.Read:

  • 使用 enable.auto.commit = false 更新消费者属性
  • .withReadCommitted()
  • .commitOffsetsInFinalize()

2) KafkaIO#write:

  • .withEOS(numShards, sinkGroupId)

    它还将启用幂等性并为生产者设置 transactional.id

因此,通过这样的设置,我们将在读取时具有at-least-once 语义和exactly-once 语义在写。

关于apache-kafka - 卡夫卡 : exactly once semantics configuration using Apache Beam,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54930248/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com