卡夫卡偏移量在处理流时丢失

时间:2019-01-14 00:33:25

标签: apache-spark apache-kafka kafka-consumer-api hadoop-streaming

我正在使用KafkaUtils.createDirectStream Kafka API来使用消息,然后正在处理消息以存储在Hive中。由于无法访问Hive metastore,有时作业失败了。 重新启动后,我看到它总是从“最新”消息开始读取(因为在我的代码中为auto.offset.reset = latest),而不是从最后提交的消息读取。在这种情况下,它将失去补偿。 因此,我想在整个处理完成后存储偏移量,以便在检索消息失败时可以检索它。

请建议我如何使用KafkaUtils.createDirectStream将偏移量存储在Kafka中,以确保完成整个Kafka作业。

0 个答案:

没有答案