例如,我有一个URL列表作为字符串存储在数据存储区中。 因此,我使用了DatastoreIO函数并将其读取到PCollection中。在ParDo的DoFn中,对于每个URL(文件的GCP云存储位置),我必须读取该位置中存在的文件并进行进一步的转换。
所以我想知道是否可以在ParDo函数内为PCollections编写ParDo。每种文件转换都可以并行执行,然后将KV(键,PCollection)发送给第一个ParDo函数的输出。
对不起,如果我没有清楚地说明我的情况。我是Apache Beam和Google Dataflow的新手
答案 0 :(得分:2)
您想要的是TextIO#readAll()。
PCollection<String> urls = pipeline.apply(DatastoreIO.read(...))
PCollection<String> lines = urls.apply(TextIO.readAll())