1

我目前正在使用 Confluent HDFS Sink Connector (v4.0.0) 来替换 Camus。我们正在处理敏感数据,因此我们需要在切换到连接器期间保持偏移的一致性。

割接计划:

  1. 我们创建了 hdfs sink 连接器并订阅了一个写入临时 hdfs 文件的主题。这将创建一个名为connect-的消费者组
  2. 使用 DELETE 请求停止连接器。
  3. 使用/usr/bin/kafka-consumer-groups脚本,我可以将连接器消费者组 kafka 主题分区的当前偏移量设置为所需的值(即 Camus 写入的最后偏移量 + 1)。
  4. 当我重新启动 hdfs 接收器连接器时,它会继续从最后提交的连接器偏移读取并忽略设置值。我期望 hdfs 文件名如下: hdfs_kafka_topic_name+kafkapartition+ Camus_offset +Camus_offset_plus_flush_size.format

我对融合连接器行为的期望是否正确?

4

1 回答 1

4

当您重新启动此连接器时,它将使用文件中嵌入的偏移量,该偏移量是最后一个写入 hdfs 的文件的偏移量。它不会使用消费者组偏移量。它这样做是因为它使用预写日志来实现只向 hdfs 发送一次。

于 2018-04-15T12:08:04.507 回答