中的FlatMap和Map功能是否并行运行?
(p
| 'GetJava' >> beam.io.ReadFromText(input)
| 'GetImports' >> beam.FlatMap(lambda line: startsWith(line, keyword))
| 'PackageUse' >> beam.FlatMap(lambda line: packageUse(line, keyword))
| 'TotalUse' >> beam.CombinePerKey(sum)
| 'Top_5' >> beam.transforms.combiners.Top.Of(5, by_value)
| 'write' >> beam.io.WriteToText(output_prefix)
)发布于 2019-04-17 17:03:51
管道中的并行化发生在ReadFromText转换之后。该转换将目录分离为多个文件,将文件分离为分段。
每个段都是在单个工作器中进行串行处理的,因此您的第一个FlatMap转换的输出将依次进入另一个FlatMap --但是在每个文件段上运行了许多FlatMap+FlatMap实例。
如果回答了你的问题,请告诉我:)
https://stackoverflow.com/questions/53441730
复制相似问题