Google bigquery 使用压缩AVRO从BigQuery导出表

Google bigquery 使用压缩AVRO从BigQuery导出表,google-bigquery,google-cloud-storage,Google Bigquery,Google Cloud Storage,我尝试将大查询导出到云存储功能以节省一些钱。我们想要的是AVRO中的导出压缩,以保持模式,并能够在需要时在大查询中再次导入它们。因为大查询对未压缩大小的数据收费,而我的数据是高度冗余的, 因此,它应该减少到20倍压缩它 在UI界面上,当导出到AVRO时,没有可压缩的选项。所以我假设默认情况下会这样,但事实并非如此。它在没有压缩的情况下导出AVRO,这对我来说毫无意义,因为文件的大小与表的大小相同,成本也相同,将其保存在大查询和云存储中 这方面没有任何消息 有人知道是否有其他方法可以代替在集群上

我尝试将大查询导出到云存储功能以节省一些钱。我们想要的是AVRO中的导出压缩,以保持模式,并能够在需要时在大查询中再次导入它们。因为大查询对未压缩大小的数据收费,而我的数据是高度冗余的, 因此,它应该减少到20倍压缩它

在UI界面上,当导出到AVRO时,没有可压缩的选项。所以我假设默认情况下会这样,但事实并非如此。它在没有压缩的情况下导出AVRO,这对我来说毫无意义,因为文件的大小与表的大小相同,成本也相同,将其保存在大查询和云存储中

这方面没有任何消息


有人知道是否有其他方法可以代替在集群上导出和加载以转换为压缩的AVRO并再次保存到云存储吗?

因此,经过大量研究后,一位朋友发现,在查找大型查询库的python代码时,有一些未记录的AVRO压缩选项可以传递到API:气喘吁吁

之后,我还在以下网站上找到了它:

我认为它是新的,还不是文档,还没有出现在WEB界面上

我测试了它,效果很好!我的一个表没有压缩的导出是一个2.8GB的AVRO文件,现在带有DEFLATE的是170MB

我认为这是新的,还不是文件

AVRO的放气和快速压缩记录在

您也可以在bq命令行中看到它

bq help extract
还不在WEB界面上

对。AVRO的压缩选项在BigQuery UI中不可用-无论是经典UI还是新UI


应该可以在API和bq命令行中使用,并且无论客户机库是否已经为AVRO实现了压缩都是正确的,在BigQuery中压缩AVRO文件的可用选项是直接在
bq
命令行中使用DEFLATE或SNAPPY选项。Avro出口详细信息官方文件已在此处提供。