gpt4 book ai didi

google-cloud-dataflow - Apache Beam:FlatMap与Map?

转载 作者:行者123 更新时间:2023-12-03 10:33:16 28 4
gpt4 key购买 nike

我想了解在哪种情况下应该使用FlatMap或Map。 The documentation在我看来似乎不太清楚。

我仍然不明白在哪种情况下应该使用FlatMap或Map的转换。

有人可以给我一个例子,让我了解他们的区别吗?

我了解Spark中FlatMap与Map的区别,但是不确定是否有相似之处?

最佳答案

These transforms in Beam are exactly same as Spark (Scala too).


Map转换将N个元素的 PCollection映射到N个元素的另一个 PCollection
FlatMap转换将N个元素的 PCollections映射到零个或多个元素的N个集合中,然后将其展平为单个 PCollection

作为一个简单的例子,发生以下情况:
beam.Create([1, 2, 3]) | beam.Map(lambda x: [x, 'any'])
# The result is a collection of THREE lists: [[1, 'any'], [2, 'any'], [3, 'any']]

鉴于:
beam.Create([1, 2, 3]) | beam.FlatMap(lambda x: [x, 'any'])
# The lists that are output by the lambda, are then flattened into a
# collection of SIX single elements: [1, 'any', 2, 'any', 3, 'any']

关于google-cloud-dataflow - Apache Beam:FlatMap与Map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45670930/

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