首页 > 解决方案 > bq extract - 提取操作中的 BigQuery 错误:发生内部错误,请求无法完成

问题描述

我正在尝试使用控制台中的以下命令将表从 BigQuery 导出到谷歌存储:

bq --location=<hidden> extract --destination_format CSV --compression GZIP --field_delimiter "|" --print_header=true <project>:<dataset>.<table> gs://<airflow_bucket>/data/zip/20200706_<hidden_name>.gzip

我收到以下错误:

提取操作中的 BigQuery 错误:发生内部错误,请求无法完成。

这是有关该表的一些信息

Table ID    <HIDDEN> 
Table size 6,18 GB
Number of rows   25 854 282 
Created 18.06.2020, 15:26:10 
Table expiration     Never 
Last modified 14.07.2020, 17:35:25 
Data location    EU

我在这里要做的是将这张表提取到谷歌存储中。由于该表大于 1 Gb,因此它会变得支离破碎......我想将所有这些片段组合到一个存档中,进入一个谷歌云存储桶。

这里发生了什么?我该如何解决?

注意:我已经隐藏了表格的实际名称和位置以及其他信息与提及 <hidden><airflow_bucket>或`:。


`

标签: google-cloud-platformgoogle-bigquerygoogle-cloud-storagebq

解决方案


我发现了这背后的原因,文档给出了以下语法bq extract

> bq --location=location extract \
> --destination_format format \
> --compression compression_type \
> --field_delimiter delimiter \
> --print_header=boolean \ project_id:dataset.table \ gs://bucket/filename.ext

我删除location=<bq_table_location>了它,它在原则上有效。除了我必须添加一个通配符,我最终有多个压缩文件。


推荐阅读