是否可以在火花流中使用kafka源而无需重放上一个检查点的日志?

时间:2016-02-02 19:45:22

标签: apache-kafka spark-streaming

我正在使用pyspark流来处理一个非常大的流日志,并且由于日志非常庞大,如果应用程序因任何原因失败,我不希望火花处理旧日志。

我可以删除检查点目录并得到我想要的内容,但我想知道是否有任何方法可以通过编程方式进行。

我已经尝试了KafkaUtils.createStream(..., karkaParams={'auto.offset.reset': 'largest'})但没有成功。

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

你应该使用

auto.offset.reset': 'smallest'

如果您想在应用程序启动时跳过队列中的旧消息以获取您的使用者组名称。

  • 最大的意思是“告诉我消费者群体从未收到过的消息”
  • 最小的意思是从现在开始获取消息。

同样为了将来参考,如果任何人想要在应用程序启动时在主题中的每个可用消息,您应该每次使用不同的消费者组名称并将“最大”作为偏移量传递。