我们正在为Kafka安装mirrormaker 2.0。如果我理解正确,主题偏移量在复制集群中是不相等的。这对于普通的kafka应用程序来说不是问题,因为消费群体也得到了复制。flink将kafka的偏移量存储在州内部—我假设在使用州重新启动作业之后,事情可能会出错。有没有办法设置flink以便我们可以从复制的kafka集群上的集群故障中恢复?我认为我们应该以某种方式迁移国家,但没有这样做的经验。
idfiyjo81#
mirrormaker 2通过一个内部主题来同步偏移量,并使用消息的时间戳来说明故障转移时的同步和漂移。
uxhixvfz2#
我认为在这种情况下,迁移州政府是没有帮助的。我可以看到解决这个问题的两种方法,但没有一种是完美的:从技术上讲,您可以禁用在检查点上存储偏移量并启用 enable.auto.commit 但我认为这有点危险,因为可能会丢失数据。你可以延长 FlinkKafkaConsumer 并修改 open 函数,这样它将忽略状态中存储的偏移量,而是使用fetcher来获取偏移量。我认为这应该可以很好地工作,因为如果启用了检查点,偏移量将在检查点上提交给kafka。
enable.auto.commit
FlinkKafkaConsumer
open
2条答案
按热度按时间idfiyjo81#
mirrormaker 2通过一个内部主题来同步偏移量,并使用消息的时间戳来说明故障转移时的同步和漂移。
uxhixvfz2#
我认为在这种情况下,迁移州政府是没有帮助的。我可以看到解决这个问题的两种方法,但没有一种是完美的:
从技术上讲,您可以禁用在检查点上存储偏移量并启用
enable.auto.commit
但我认为这有点危险,因为可能会丢失数据。你可以延长
FlinkKafkaConsumer
并修改open
函数,这样它将忽略状态中存储的偏移量,而是使用fetcher来获取偏移量。我认为这应该可以很好地工作,因为如果启用了检查点,偏移量将在检查点上提交给kafka。