apache-kafka - Kafka Stream:最终结果立即发出?
问题描述
当时间窗口关闭时,最终结果立即发出还是什么时候有新记录出现然后发出?
val builder = StreamsBuilder();
builder.stream<String,Double>(inputTopic, Consumed.with(Serdes.String(),
Serdes.Double()))
.groupByKey()
.windowedBy(TimeWindows.of(Duration.ofSeconds(15)).grace(Duration.ZERO))
.count()
.suppress(Suppressed.untilWindowCloses(unbounded())))
.toStream()
.print(Printed.toSysOut())
时间窗口关闭时如何立即发出最终结果?
解决方案
时间窗口关闭时如何立即发出最终结果?
最终结果在时间窗口关闭时立即发出。
或者当有新记录出现时发出
但是,只有在处理时间戳大于窗口关闭时间的记录后,才能安全地关闭时间窗口。
不能基于挂钟时间安全地关闭窗口——suppress()
纯粹基于事件时间,而事件时间只能处理高级记录。
推荐阅读
- php - PHP CSV 上传到 MySQL 没有做任何事情
- python - 如何计算为浮点数存储的二进制近似值的真实十进制值
- python-3.x - 名称“Atno_to_Symbol”未定义
- r - 当我更改菜单项时,在 R 中改变身体
- bash - How do you load bash_profile for bash commands run from perl script?
- redux - Redux observable retry on timeout
- python - 利用 Django Migration 来保存一些数据
- c++ - WINAPI identifiers in function declaration C++ in DLL entrypoint function
- gstreamer - gst-launch-1.0 和 GStreamer 版本不匹配
- laravel - access auth for boot method to use variable in master blade