我需要编写一个数据流,该数据流使用来自单个GCS位置的CSV记录,然后根据CSV记录第一列的值将记录写入多个GCS位置。
Google Dataflow是否提供了相当于Hadoop MultipleOutFormat的功能,使您能够在运行时为每条记录提供文件名?
答案 0 :(得分:3)
目前,Dataflow完全无法实现这一点。它在雷达上,您可以在此处跟踪进度/贡献:https://issues.apache.org/jira/browse/BEAM-92
如果您有一组固定的小型可能输出位置,则有一种解决方法。您可以根据输出键将输出分区为单独的PCollections,然后使用每个PCollections并使用单独的TextIO.Write变换将其写出。要进行分区,您可以使用Side Outputs或Partition operation。