目前我们有一个数据流程,其中我们有一个GroupByKey
,但DoPar
在group-by之后每个键得到太多的值,我们想知道是否有这个好的解决方案。从我可以告诉的是,没有办法设置每个窗口的最大数值。限制每个键值的数量
现在我们正在探索3个选项:
- 较小的窗口 - 我们认为我们可能仍然有这个问题,因为该事件可能出现在时间聚集在一起。
- 在每个键上添加一个随机值来分割键 - 这也不是理想的,因为当我们有更少的事件进入时,每个键的值都会太少。当事件数量呈指数增长时,我们也无法调整分区数量。
- 一些花哨的触发或使用组合器 - 可能是最好的解决方案,但不知道如何做到这一点。
有没有一个标准的方法或最佳做法呢?