我们正在使用kafka streams的windows join来加入2个流,我们想知道:
-
为什么KS会在内部主题中添加24小时?例如,我们有一个1小时的窗口,但内部主题保留了25小时 . 我们可以将其配置为不添加24h吗?
-
KS似乎在窗口中保留两个流的数据 - 内部主题和状态存储(rocksdb) - 有没有办法只保留连接左侧的流?
[UPDATE]
例如,我们像这样创建JoinWindow:
JoinWindows.of(300000).before(600000).until(3600000)
虽然我可以看到内部主题(对于JOINTHIS和OUTEROTHER)已经创建了
Configs:retention.ms=90000000
这刚刚在我的机器上的空代理(使用confluent cli tool)上进行了测试
1 回答
我将部分回答我关于24小时的问题:事实上,文件清楚地在这里谈到这个问题:https://kafka.apache.org/10/documentation/streams/developer-guide/processor-api.html#fault-tolerant-state-stores:
这里是关于WINDOW_STORE_CHANGE_LOG_ADDITIONAL_RETENTION_MS_CONFIG的Javadoc