gpt4 book ai didi

google-cloud-dataflow - 防止 Google Dataflow 融合的最佳方法?

转载 作者:行者123 更新时间:2023-12-03 23:03:31 24 4
gpt4 key购买 nike

发件人:https://cloud.google.com/dataflow/service/dataflow-service-desc#preventing-fusion

You can insert a GroupByKey and ungroup after your first ParDo. The Dataflow service never fuses ParDo operations across an aggregation.



这就是我在 python 中提出的 - 这是否合理/有更简单的方法吗?
def prevent_fuse(collection):
return (
collection
| beam.Map(lambda x: (x, 1))
| beam.GroupByKey()
| beam.FlatMap(lambda x: (x[0] for v in x[1]))
)

编辑,回应本钱伯斯的问题

我们想要防止融合,因为我们有一个生成更大集合的集合,我们需要跨更大集合进行并行化。如果它融合了,我只能在更大的集合中找到一名 worker 。

最佳答案

Apache Beam SDK 2.3.0 添加了实验性 Reshuffle 转换,这是 Reshuffle.viaRandomKey 的 Python 替代品@BenChambers 提到的操作。您可以使用它代替您的自定义 prevent_fuse代码。

关于google-cloud-dataflow - 防止 Google Dataflow 融合的最佳方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47162365/

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