错误:找不到:在位置US中找不到数据集my-project-name:domain_public

时间:2018-07-18 06:46:19

标签: google-bigquery

我需要查询公共项目提供的数据集。我创建了自己的项目并将其数据集添加到我的项目中。有一个名为domain_public的表。当我对此表进行查询时,出现此错误:

 Query Failed
Error: Not found: Dataset my-project-name:domain_public was not found in location US
Job ID: my-project-name:US.bquijob_xxxx

我来自美国以外的国家。问题是什么以及如何解决?

编辑1: 我将处理位置更改为asia-northeast1(我在新加坡),但是存在相同的错误:

Error: Not found: Dataset censys-my-projectname:domain_public was not found in location asia-northeast1 

以下是我的项目和公共项目censys-io的视图:

enter image description here

请告知。

编辑2: 我以前输入的查询基于censys tutorial

#standardsql
SELECT domain, alexa_rank
FROM domain_public.current
WHERE p443.https.tls.cipher_suite = 'some_cipher_suite_goes_here';

当我将FROM子句更改为:

FROM `censys-io.domain_public.current`

最后一行:

WHERE p443.https.tls.cipher_suite.name = 'some_cipher_suite_goes_here';

有效。我是否应该理解我应该始终包括projectname.dataset.table(如果我使用正确的术语)并指出Censys的错字?还是这个特殊情况由于某种原因?

5 个答案:

答案 0 :(得分:2)

在Web UI中-单击显示选项按钮,然后为“处理位置”选择您的位置!

  

指定查询执行的位置。在特定位置运行的查询只能引用该位置的数据。对于美国/欧盟中的数据,您可以选择“未指定”以在数据所在的位置运行查询。对于其他位置的数据,必须显式指定查询位置。


  

更新

如上所述-Queries that run in a specific location may only reference data in that location

假设censys-io.domain_public数据集的数据在美国-您需要为处理位置指定美国

答案 1 :(得分:2)

该问题原来是由于constexpr static T args[] = {list...}; 子句中的表名错误引起的。 正确的FROM子句应为:

FROM

我正在输入:

FROM `censys-io.domain_public.current`

因此项目名称在FROM domain_public.current 中是必需的,而``由于项目名称中的FROM是必需的。

答案 2 :(得分:1)

BigQuery找不到您的数据

如何修复

确保您的FROM位置包含3个部分

  1. 一个项目(例如bigquery-public-data
  2. 数据库(例如hacker_news
  3. 表格(例如stories

喜欢

`bigquery-public-data.hacker_news.stories`

*注意反引号

示例

错误

SELECT *
FROM `stories`

错误

SELECT *
FROM `hacker_news.stories` 

正确

这在BigQuery中有效,请尝试一下

SELECT *
FROM `bigquery-public-data.hacker_news.stories` 

答案 3 :(得分:0)

确保您的 FROM 位置包含@stevec 提到的 3 个部分

  • 一个项目(例如 bigquery-public-data)
  • 一个数据库(例如hacker_news)
  • 一张桌子(例如故事)

但就我而言,我在 Google 脚本编辑器中使用 LegacySql,因此在这种情况下,您需要将其声明为 false,例如:

var projectId = 'xxxxxxx';
    
var request = {
  query: 'select * from project.database.table',
  useLegacySql: false
};
var queryResults = BigQuery.Jobs.query(request, projectId);

答案 4 :(得分:0)

检查表名或视图名的大小写[大写或小写]和拼写。 从表定义中复制它,您的问题将得到解决。

我使用的是 FPL009_Year_Categorization 而不是 FPL009_Year_categorization

将 c 用作 C 并收到错误“在位置 asia-south1 中未找到”

我用精确的大小写复制,问题已解决。