新的BigQuery定价''

时间:2015-09-30 05:24:42

标签: google-bigquery

根据pricing page,将于2016年1月1日为BigQuery引入新的分层定价模型。

我们希望能够预测这对我们的应用程序可能产生的任何成本影响。因此,我们已经查看了一些更复杂查询的JSON响应,以了解什么是' tier'已被分配给它。

billingTier层在JSON响应中清晰可见。

200 OK
- Show headers -
{
  "kind": "bigquery#job",
  [...]
  "totalBytesProcessed": "45319172942",
  "query": {
  "totalBytesProcessed": "45319172942",
  "totalBytesBilled": "45319454720",
  "billingTier": 1,
  "cacheHit": false
} 

这是仅在2016年1月1日新定价模式开始之前分配的默认层(第1层),还是分配给查询的层的真实指示?

2 个答案:

答案 0 :(得分:5)

billingTier字段是根据我们即将推出的定价结构分配给查询的层的真实指标。如果此字段设置为1,那么您的查询将按照新定价结构下的当前(第1层)费率进行结算。

请注意,计费层是在每次调用查询时单独计算的,因此没有严格保证同一查询将始终属于同一计费层。我建议您仔细检查一下合理的查询示例,以便大致了解您的工作量在新定价结构下的位置。

答案 1 :(得分:1)

如果您感兴趣,我已编写了一个简单的脚本,如果每天运行,则会将审核数据添加到包含用户同质化查询的大查询中的表中。我们使用它来审计查询成本并确定哪些表可能需要分片。

https://gist.github.com/ericuldall/ac475fe71d0ee2f3a5f0

此脚本估计成本约为5美元/ TB的数据费用。

审计数据表架构

  

job_id STRING NULLABLE
  用户STRING NULLABLE
  size_in_gb FLOAT NULLABLE
  estimated_cost FLOAT NULLABLE
  sql STRING NULLABLE
  时间戳TIMESTAMP可空