ApacheBeamPython read.tgz并解析为BigQuery
例如,我有.tgz文件。它驻留在谷歌云存储中。tgz中有一系列|分隔的.txt文件。 例如,10个文件中的一个可以命名为 我希望在PythonSDK中使用ApacheBeam来至少读取.tgz和附带的.txt文件,而不必先解包。我想在预定义的Dataset.Table中解析|分隔的内容并将集合发送到BigQuery 这就是我目前所拥有的ApacheBeamPython read.tgz并解析为BigQuery,python,google-cloud-dataflow,apache-beam,Python,Google Cloud Dataflow,Apache Beam,例如,我有.tgz文件。它驻留在谷歌云存储中。tgz中有一系列|分隔的.txt文件。 例如,10个文件中的一个可以命名为 我希望在PythonSDK中使用ApacheBeam来至少读取.tgz和附带的.txt文件,而不必先解包。我想在预定义的Dataset.Table中解析|分隔的内容并将集合发送到BigQuery 这就是我目前所拥有的 import apache_beam as beam from apache_beam import (coders, io) raw_logs = (p
import apache_beam as beam
from apache_beam import (coders, io)
raw_logs = (p
| io.Read("ReadLogsFromGCS", beam.io.TextFileSource(
"gs://my-bucket/logs-*.gz",
coder=coders.BytesCoder()))
p.run()
恐怕beam目前不支持tgz/tar.gz即双压缩文件。该功能有一个开放的窗口。但是,它可以读取内部只有一个文件的gz文件。示例代码如下:
beam.io.textio.ReadFromText(file_pattern= 'gs://bucket_name/logs-*.gz',compression_type='gzip')