【问题标题】:MirrorMaker2 does not mirror all messages from a compacted topic?MirrorMaker2 不会镜像压缩主题中的所有消息?
【发布时间】:2021-11-24 21:36:52
【问题描述】:

在某些镜像主题中,我在镜像接收器主题中缺少数据!

源Kafka集群默认配置log.rentention.ms=-1log.cleanup.policy=compact

使用模式:记录被插入,key也被清空(所以Kafka就像数据库一样使用)

MM2 配置:

  • sourceCluster 配置:(receive.buffer.bytes: 8192; max.poll.records: 10000)
  • sinkCluster 配置:(batch.size:8192;offset.flush.timeout.ms:1200000;connection.max.idle.ms:18000000)

以下指标适用于旧的和新的接收器主题:

  • Topic X: not null msg count: 63k new: 16k(我还检查了head和tail有相同的creationTime)
  • 主题 Y:未清空消息计数:30k 新 18k;与头/尾相同的故事
  • 主题 Z:未清空消息计数:136 新 136;相同的消息计数

我的假设是,当 MM2 正在消费一个批次时,当这批相同的密钥被清空时,第一个 msg 没有被镜像。它是否正确 ?????如果这是正确的假设,那么如何反映事件源主题,如果您想以与源主题中完全相同的方式重新创建状态?

为什么镜像接收器主题中缺少消息?如何镜像来自源主题的所有消息?

【问题讨论】:

  • 嗨@imalik8088,你解决了这个问题吗?我正在尝试使用 mirrormaker2 并了解它如何与压缩主题一起使用。我也面临一些问题,因为复制的主题没有保留密钥并分配新的不同密钥。问候
  • Hola @LucidioVacas 我添加了一个可能有帮助的问题的答案。您确定镜像主题具有不同的键吗?在我的设置 (strimzi) 中,我对数据没有任何问题,只是镜像主题中的数据较少(我的文章中有更多内容)

标签: apache-kafka apache-kafka-mirrormaker


【解决方案1】:

我已经写了一篇关于这个问题的博文和脚本帮助比较两个主题的结果https://imalik8088.de/posts/kafka_where_are_all_my_messages/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-31
    • 1970-01-01
    • 2019-09-20
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 1970-01-01
    • 2015-07-27
    相关资源
    最近更新 更多