我在 GCP Dataflow/Apache Beam 中有一个 PCollection。我不需要一一处理,而是需要“按N”组合。就像是grouped(N)
。因此,在有界处理的情况下,它将按批次中的 10 个项目和最后一批中剩余的项目进行分组。
这在 Apache Beam 中可能吗?
编辑,看起来像:Google Dataflow“elementCountExact”聚合
您应该能够通过将元素分配给全局窗口并使用来执行类似的操作AfterPane.elementCountAtLeast(N)
。您仍然需要考虑如果没有足够的元素来触发触发器该怎么办。你可以使用这个:
Repeatedly.forever(AfterFirst.of(
AfterPane.elementCountAtLeast(N),
AfterProcessingTime.pastFirstElementInPane().plusDelayOf(Duration.standardMinutes(X))))
但您应该首先问自己为什么需要这种启发式方法,可能有更理想的方法来解决您的问题。阅读Data-Driven Triggers
in Beam 的编程指南
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)