繁体   English   中英

Kafka Streams State 存储是否可以完全瞬态

[英]Can a Kafka Streams State Store be entirely transient

我正在使用 state 存储来跟踪有关通过 stream 的消息的运行时统计信息。 如果任务失败/迁移,我们不需要重新创建 state - 我们非常高兴 state 在任务迁移/重新启动后从“新鲜”开始。 我的理解是,如果我们不在存储上启用更改日志记录,那么流将不得不重新处理底层主题以使 state 存储更新 - 这将导致显着延迟,并且我们不希望更改的开销集群中的日志主题。 简而言之——我们可以在没有任何形式的持久性的情况下拥有一个“丢弃状态”吗?

您应该能够将INT.MAX acceptable.recovery.lag 这应该使任何 state 存储处于活动状态,即使它没有赶上结束偏移。 这不会完全“新鲜”地开始,因为它将赶上商店,但不应该等待商店重新填充。

您还可以将更改日志主题保留时间设置为 0。例如:

Properties streamsSettings = new Properties();
// Override default for both changelog and repartition topics
streamsSettings.put("topic.PARAMETER_NAME", "topic-value");
// alternatively, you can use
streamsSettings.put(StreamsConfig.topicPrefix("PARAMETER_NAME"), "topic-value");

在这些之间,我认为你可以做到这一点

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM