Hi
    没有太明白你这里为什么数据较少的 source 会覆盖数据更多的 source。能否详细描述下呢?
    如果是因为某些 source 的数据把 watermark 给推高了,从而导致其他的 source
数据变成迟到的数据,那么我理解这个暂时没法直接解决的,因为 watermark 是 task 级别的。如果你想要在一个 Flink
作业中实现更细粒度的 watermark,或许你可以尝试下 processfuncton[1] 自己来定制一套类似的机制
    另外你也可以看下这个文档[2] 看是否在你的场景中有帮助

[1]
https://ci.apache.org/projects/flink/flink-docs-release-1.11/dev/stream/operators/process_function.html#the-keyedprocessfunction
[2]
https://ci.apache.org/projects/flink/flink-docs-release-1.11/dev/event_timestamps_watermarks.html#watermark-strategies-and-the-kafka-connector
Best,
Congxian


hao kong <h...@lemonbox.me> 于2020年9月16日周三 上午10:24写道:

> hello,我有一份来自多个Kafka-source的工作。它们都包含某些历史数据。如果使用events-time
> window,它将导致数据较少的source通过water-mark覆盖数据更多的source。
>
> 目前我能想到的方案是用一个在source上的调度器,通过redis或者zookeeper缓存每一个source下两条数据,统一比较,时间小的先进入接下来的处理流程,实现起来比较复杂,各位大佬有什么好的办法吗?十分感谢。
>

回复