Kafka Connect 主题压缩最佳实践

Kafka Connect best practices for topic compaction

我正在使用由 Kafka Connect 制作的 Debezium。 Kafka Connect 公开了几个需要创建的主题:

OFFSET_STORAGE_TOPIC 运行 Kafka Connect 服务时需要这个环境变量。将此设置为 Kafka 主题的名称,其中 Kafka Connect 服务在组存储连接器中偏移。该主题应该有很多分区,被高度复制(例如,3 倍或更多)并且应该配置压缩。

STATUS_STORAGE_TOPIC 运行 Kafka Connect 服务时应提供此环境变量。将此设置为组存储连接器状态中的 Kafka Connect 服务所在的 Kafka 主题的名称。该主题可以有多个分区,应该是高度复制的(例如,3 倍或更多)并且应该配置压缩。

是否有人对这些主题有任何具体推荐的压缩配置?

例如

是否足以设置:

cleanup.policy: compact

unclean.leader.election.enable: true

或者还有:

min.compaction.lag.ms: 60000

segment.ms: 1800000

min.cleanable.dirty.ratio: 0.01

delete.retention.ms: 100

默认值应该没问题,除非您使用这些设置预先配置这些主题,否则 Connect 将 create/configure 自行处理这些主题。

这些是我能想到何时调整压缩设置的唯一情况

  1. a connect-group 在这个话题上停留的时间比你希望的要长。例如,源连接器在长时间停机后不会立即启动,因为它正在处理偏移主题
  2. 您的 Connect 集群没有准确报告其状态,或者任务没有适当地重新平衡(因为状态主题处于错误状态)

__consumer_offsets(压缩)主题用于 Sink 连接器,并且将为所有消费者单独配置,而不仅仅是 Connect