我首先生成一些消息,这些消息由kafka的代理保存在磁盘上。然后我启动spark流程序来处理这些数据,但是在spark流中我不能接收任何东西。并且没有任何错误日志。但是,如果我在spark流程序运行时生成消息,它就可以接收数据。spark streaming只能从kafka接收实时数据吗?
epggiuax1#
要控制在新使用者流开始时使用的数据的行为,您应该提供 auto.offset.reset 作为用于创建Kafka流的属性的一部分。 auto.offset.reset 可以采用以下值:最早=>Kafka主题将从可用的最早偏移量开始使用latest=>Kafka主题将从当前最新偏移量开始使用另请注意,根据您使用的kafka使用者模型(基于接收或直接),重新启动的spark流作业的行为将有所不同。
auto.offset.reset
1条答案
按热度按时间epggiuax1#
要控制在新使用者流开始时使用的数据的行为,您应该提供
auto.offset.reset
作为用于创建Kafka流的属性的一部分。auto.offset.reset
可以采用以下值:最早=>Kafka主题将从可用的最早偏移量开始使用
latest=>Kafka主题将从当前最新偏移量开始使用
另请注意,根据您使用的kafka使用者模型(基于接收或直接),重新启动的spark流作业的行为将有所不同。