我用KafkaStreams DSL和处理器api编写了一些代码来实时计算:
KStreamBuilder builder = new KStreamBuilder();
KStream<String, String> logs = builder.stream(stringSerde, stringSerde, ADDCASH_TOPIC_NAME);
StateStoreSupplier countStore = Stores.create("Counts")
.withKeys(Serdes.String())
.withValues(Serdes.Long())
.persistent()
.build();
logs.process(() -> new AddCashProcessor(), countStore.name());
我想知道:当我重新启动拓扑时,如果Stores.create(..)
方法将重新创建StateStore?
答案 0 :(得分:1)
如果没有,它将重用现有状态并仅创建和清空/新存储。