我使用StormConfigs startOffsetTime作为LatestTime,但如果storm停止,则它将丢失生成器生成的数据

jw5wzhpr  于 2022-12-09  发布在  Apache
关注(0)|答案(1)|浏览(170)

我正在使用KafkaProducer发送数据到 Storm ,当配置喷口我写了下面的代码。

spoutConfig.useStartOffsetTimeIfOffsetOutOfRange=true;
spoutConfig.startOffsetTime=kafka.api.OffsetRequest.LatestTime();

但问题是当我停止Storm应用程序(开发环境)时,Storm会丢失由生成器生成的数据。如果我用途:

spoutConfig.startOffsetTime=kafka.api.OffsetRequest.ErliestTime()

数据插入从头开始。在这里我不希望任何数据丢失,如果 Storm 下去仍然 Storm 应该采取所有的数据生产者。

lf5gs5x2

lf5gs5x21#

LocalClusters在每次重启时都会清除它们的状态(实际上每次都会设置一个新的Zookeeper集群)。它们用于测试,而不是生产负载。这就是为什么你的spout要重新启动的原因。

相关问题