我正在尝试将Gzip文件写入Google Dataflow程序中的Google Cloud Storage存储桶。常见问题解答说
Does the TextIO source and sink support compressed files, such as GZip?
Yes. Cloud Dataflow can read files compressed with gzip and bzip2.
这是否意味着他们不支持编写GZip文件?
正确的,我们目前没有编写gzip文件的内置支持。但是,用户定义的数据格式API,特别是FileBasedSink,应该可以让自己编写这样的接收器变得简单。
在新的Beam库中,您现在可以更轻松地做到这一点:
PDone d = c2.apply(TextIO.write()
.to("gs://path")
.withWritableByteChannelFactory(FileBasedSink.CompressionType.GZIP));