gpt4 book ai didi

apache-flink - 如何按事件时间加入实时流和延迟流

转载 作者:行者123 更新时间:2023-12-05 07:07:01 24 4
gpt4 key购买 nike

我正在尝试使用 CoProcessFunction 加入 2 个流。输入流A之一是实时生成的。然而,另一个输入流 B 由延迟 1 天的每日计划作业加载,这意味着今天放入流中的事件始终具有昨天的事件时间。

话虽如此,流 B 的水印将始终比 A 的水印晚 ~1 天,因此我可以想象来自 A 的许多事件将被缓冲在内存中。我想知道是否有办法解决问题。一些额外的背景,流 A 和 B 都是运动流(我正在使用 FlinkKinesisConsumer),保留期 = 7 天。

提前致谢!

最佳答案

如果你担心缓冲多个元素时的内存,那么你应该看看各种不同的 state backends特别是 RocksDb。这样,状态将保存在磁盘上而不是内存中。

这应该很容易解决您面临的缓冲元素一天的问题,因为唯一限制状态大小的是可用磁盘空间,这通常很便宜,在大多数情况下应该不是问题。

关于apache-flink - 如何按事件时间加入实时流和延迟流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62289434/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com