如何从bigquery导出gzip压缩数据到谷歌云存储

时间:2013-12-19 08:23:47

标签: google-bigquery

我需要每天将数据从bigquery导出到google云端存储。数据量相当大(1TB),我将这些数据导出到谷歌存储后,我需要从中下载,这一步非常慢。所以我想知道我是否可以将gzip压缩数据导出到谷歌存储?这可以减少数据量,然后我可以非常快速地下载数据。

你能给我一些建议吗?因为我在从bigquery提取到谷歌云存储时没有在bigquery API中找到压缩函数。

提前致谢!

2 个答案:

答案 0 :(得分:1)

不幸的是,没有gzip选项。

也就是说,当您从Google云端存储下载文件时,您可以使用自动HTTP压缩为您执行gzip。只需添加HTTP标头:

accept-encoding: gzip
user-agent: anything

您需要定义用户代理标头可能看起来很奇怪。这对我们来说也很奇怪。这是众多Google产品中常见的功能,旨在避免无法正确处理压缩的浏览器中的错误(请参阅https://developers.google.com/appengine/kb/general?csw=1#compression)。

如果您使用gsutil下载文件,它将自动添加压缩标题。

答案 1 :(得分:1)

现在您可以使用gzip压缩导出到GCS。

另外,如果文件大于1GB,您可以指定' *'哪个会拆分文件 分成小块。