如何更改bigquery API中的计费层选项



我在谷歌应用程序脚本中使用bigquery API,类似于:

  try {  
   var queryRequest = BigQuery.newQueryRequest();
   queryRequest.setQuery(sql).setTimeoutMs(100000);
   queryResults = BigQuery.Jobs.query(queryRequest, projectNumber);
    // Browser.msgBox(queryRequest);
  }
  catch (err) {
    Logger.log(err);
    Browser.msgBox(err);
    return;
  }
  // Check on status of the Query Job : MONTHLY 
  while (queryResults.getJobComplete() == false) {
    try {
      queryResults = BigQuery.Jobs.getQueryResults(projectNumber, queryResults.jobId);
      //queryResults = BigQuery.Jobs.getQueryResults(projectNumber, job.id);
    }
    catch (err) {
      Logger.log(err);
      Browser.msgBox(err);
      return;
    }
  }

它给了我:

Exception: Query exceeded resource limits for tier 1. Tier 3 or higher required.

我在cloud.bigquery中看到了类似的错误,当在bigquery控制台中编写查询时,我可以通过将计费层选择为无限制来删除它,但我不知道如何通过API(自动方式)来完成。有什么办法可以实现吗?

作业:getQueryResults API仅检索查询作业的结果
计费层的"问题"以前发生过–当您通过Jobs调用查询作业时:插入API
因此,应使用configuration.query.maximumBillingTier属性

在此处应用控制最大计费层

您可以尝试在开发人员控制台中申请更高的配额。您可以转到Google API->BigQuery API->配额,然后选择申请更高的配额价详细信息大配额政策,该政策为您提供传入请求的最大Bigquery限制率,并在每个项目的基础上强制执行适当的配额。

最新更新