我有一条带有以下代码的Beam / Scio管道:
// Save result as text files under the output path
val filesP: PCollection[KV[Void, String]] = decryptedRows.internal
.apply({
FileIO
.write()
.via(TextIO.sink())
.withNaming(
Write.defaultNaming(output, StaticValueProvider.of[String](".csv"))
)
.withTempDirectory(output)
.withIgnoreWindowing()
.withEmptyGlobalWindowDestination(null)
})
.getPerDestinationOutputFilenames
有时候,PCollection的decryptedRows为空。 但是我还是要保存文件。
问题是建议不使用Beam文档: https://beam.apache.org/releases/javadoc/2.4.0/org/apache/beam/sdk/io/FileIO.Write.html
withIgnoreWindowing() 不推荐使用。 避免使用此方法:它的效果很复杂,在以后的Beam版本中将删除它。现在它存在是为了与WriteFiles兼容。
谢谢。