FlinkRunner 上的 Apache Beam GroupByKey.create() 的可迭代输出类型



Apache-Beam GroupByKey.create(( 变换的输出是 PCollection<K,Iterable>>>。

当我使用 FlinkRunner(批处理模式(运行代码时,我看到 Iterable是一个 ArrayList。

这是否意味着每个键的分组元素必须适合内存?

是的,我想是的。GroupByKey转换使用Combiner将所有值与同一键组合在一起,ArrayList用作内部容器。因此,这可能是热键的潜在 NPE 问题。

查看实施细节:一和二

最新更新