google-cloud-platform - 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>
或`:。
`
解决方案
我发现了这背后的原因,文档给出了以下语法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>
了它,它在原则上有效。除了我必须添加一个通配符,我最终有多个压缩文件。
推荐阅读
- markdown - 如何在我的 Jekyll 页面中包含外部降价文件?
- c# - System.FormatException:输入字符串的格式不正确,来自 int.Parse
- python - 打印两个多行字符串,end='' 不会并排放置
- laravel - 带有 Laravel 和 Vue.JS 的 Axios GET 方法在 javascript 控制台中返回 404 错误
- php - 随机 URL 文件获取内容 PHP
- jsviews - 无法触发事件(arrayChange)
- javascript - 将对象数组转换为分层数据结构
- slurm - sacct 输出的解释:ex+ 的含义
- request - 如何防止Fiddler之类的软件拦截请求,拦截electron发出的请求
- javascript - 将保存在文件中的 BSON 数据转换为 Javascript 对象