【问题标题】:How to change the billing tier option in bigquery APIs如何更改 bigquery API 中的计费层选项
【发布时间】:2023-04-10 12:15:01
【问题描述】:

我在我的谷歌应用脚​​本中使用 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(自动方式)执行此操作。有什么办法可以实现。

【问题讨论】:

    标签: javascript google-apps-script google-api google-bigquery


    【解决方案1】:

    您可以尝试在Developer Console申请更高的配额。 您可以转到 Google APIs -> BigQuery API -> 配额,然后选择 申请更高的配额。您还可以在此处查看 Pricing detailsBig Quota Policy,它们为您提供传入请求的最大 Bigquery 限制率,并在每个项目的基础上实施适当的配额。

    【讨论】:

      【解决方案2】:

      Jobs: getQueryResults API 只检索查询作业的结果
      计费层级的“问题”发生在之前 - 当您通过 Jobs: insert API 调用查询作业时
      因此,这里应该使用configuration.query.maximumBillingTier 属性来控制最大计费层级

      【讨论】:

      • 我已经用我正在使用的 API 更新了这个问题,你能指出我应该在哪里进行更改,因为我没有使用插入 api。有必要用吗?
      • 我建议尝试使用插入查询作业 - 因为它可以设置 maximumBillingTier
      猜你喜欢
      • 1970-01-01
      • 2017-09-24
      • 2016-08-09
      • 1970-01-01
      • 2016-05-28
      • 2017-06-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多