Solución:
Estas transformaciones en Beam son exactamente las mismas que Spark (Scala también).
A Map
transformar, mapas a partir de una PCollection
de N elementos en otro PCollection
de N elementos.
A FlatMap
transformar mapas a PCollections
de N elementos en N colecciones de cero o más elementos, que luego son aplanado en un solo PCollection
.
Como ejemplo simple, sucede lo siguiente:
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']]
Mientras que:
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']
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)