首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >大查询作业找不到问题

大查询作业找不到问题
EN

Stack Overflow用户
提问于 2020-03-20 10:58:27
回答 1查看 2.4K关注 0票数 1

我正在尝试将一些使用旧google客户端gem的旧代码移到惯用的Ruby客户端。

该过程是一个简单的查询作业,它将其结果保存到另一个表中。在较旧的gem中,我使用了如下配置:

代码语言:javascript
复制
config= {
    "jobReference": {
      "projectId": GOOGLE_PROJECT,
      'location'=> 'europe-west2'
     },
    'configuration'=> {
        'query'=> {
            'allowLargeResults' => true,
            'createDisposition' => 'CREATE_IF_NEEDED',
            'writeDisposition' => 'WRITE_TRUNCATE',
            'query' => sql,
            'destinationTable'=> {
                'projectId'=> GOOGLE_PROJECT,
                'datasetId'=> 'my_dataset',
                'tableId'=> table,
                'location'=> 'europe-west2'
            }
        }
    },
}

在更新库的文档之后,我将此作为基本测试运行( sql在其他地方定义)

代码语言:javascript
复制
bigquery = Google::Cloud::Bigquery.new

dataset = bigquery.dataset('my_dataset')

puts(dataset.location)

puts("1")

job = bigquery.query_job(sql, table: dataset.table(table), write: 'truncate', create: 'needed')

puts("2")

job.wait_until_done!

puts("3")

job.done?

这将达到puts 2,在job.wait_until_done!上失败并出现错误Google::Cloud::NotFoundError: notFound: Not found: Job my_project:job_hApg5h0NQQb4Xbv7Sr3zzIXm5RWF

如果我“放置”job.job_id,我看到的ID与它表示找不到的ID相同。我尝试在多区域和单一位置的数据集中运行这个程序,但仍然是相同的错误。最终,我需要这只在“欧洲-西部2”地区运行。

有人能帮我和/或指出一个有用的例子吗?提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2022-01-27 17:48:27

正如@Tlaquetzal所建议的那样,您可以将您的SQL查询替换为一个简单的SELECT 1,如下所示,并查看结果。

代码语言:javascript
复制
sql = "SELECT 1 FROM `project.dataset.table`"
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60772824

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档