【问题标题】:google cloud dataflow read data from compressed data谷歌云数据流从压缩数据中读取数据
【发布时间】:2015-04-07 00:36:54
【问题描述】:

我正在尝试使用谷歌云数据流从 GCS 读取数据并加载到 BigQuery 表,但是 GCS 中的文件是压缩的 (gzip),是否有任何类可用于从压缩/gzip 压缩文件中读取数据?

【问题讨论】:

标签: google-cloud-dataflow


【解决方案1】:

Dataflow 现在支持从压缩文本源中读取(截至this commit)。具体来说,使用 gzip 和 bzip2 压缩的文件可以通过指定压缩类型来读取:

TextIO.Read.from(myFileName).withCompressionType(TextIO.CompressionType.GZIP)

但是,如果文件具有 .gz 或 .bz2 扩展名,您无需执行任何操作:默认压缩类型为 AUTO,它会检查文件扩展名以确定文件的正确压缩类型。这甚至适用于 glob,其中由 glob 生成的文件可能是 .gz、.bz2 和未压缩文件的混合。

【讨论】:

  • 太棒了!感谢更新。性能如何,对从压缩数据读取的性能有何影响?
  • 别担心!最大的性能影响是压缩的文本文件不会被多个worker并行自动拆分和读取。许多文件的读取将被并行化,但最小的工作单元是单个文件。不幸的是,我现在没有任何基准数据或数字可以分享。希望这会有所帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-01-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多