Google BigQuery:将查询结果保存到表时找不到数据集

Posted

技术标签:

【中文标题】Google BigQuery:将查询结果保存到表时找不到数据集【英文标题】:Google BigQuery: Dataset not found when saving query results to table 【发布时间】:2019-07-02 18:16:09 【问题描述】:

我刚刚在 Google BigQuery 中运行了一个查询。它产生了超过 1000 万个结果。

BigQuery 告诉我,我无法将这么大的查询结果直接保存为 CSV、JSON 等。我只能将其保存到表中。

所以我尝试将其保存到表格中,使用新 UI,Google 会自动填写“项目名称”和“数据集名称”。我尝试了随机表名并创建了一个新表并尝试保存在那里。

每次出现错误时:

未找到:数据集 ethereum-account-balances:Eth_Account_Balances_Dataset

其中 Ethereum-Account-Balances 是项目名称,Eth_Account_Balances_Dataset 是数据集名称

我已经创建了这个数据集并确认它有效。甚至在创建新数据集后重新运行查询。

有人看过这个吗?

【问题讨论】:

您能否分享一下您在 webUI 中所做的操作的屏幕截图 当您被提示对话框询问您要保存到新表的位置时,经过一些测试,我得到这个错误的唯一方法是输入一个确实不存在的数据集。也就是说,也许数据集名称有错字? 【参考方案1】:

我在尝试将新的 BigQuery 表保存在原始表的不同数据集中时遇到了同样的问题。

我为解决这个问题所做的是:

1 - 在同一数据集或原始表中保存了新的 BigQuery 表 2 - 使用复制表功能将此新表复制到另一个数据集

【讨论】:

【参考方案2】:

新数据集必须与查询中引用其表的数据集位于同一位置。

参考 - https://cloud.google.com/bigquery/docs/managing-tables#limitations_on_copying_tables

【讨论】:

以上是关于Google BigQuery:将查询结果保存到表时找不到数据集的主要内容,如果未能解决你的问题,请参考以下文章

如何将 BigQuery 查询结果保存到另一个表?

bigquery - 保存大型查询结果

通过 Google BigQuery API 将查询结果导出为 JSON

在 Google Composer 中将 Bigquery 结果保存为 JSON

Google Bigquery:如何从 Web UI 查询界面以编程方式创建表(保存结果)?

BigQuery 命令行工具 - 使用查询附加到表