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