Google bigquery BigQuery-不在未更改的数据上缓存相同的查询?

Google bigquery BigQuery-不在未更改的数据上缓存相同的查询?,google-bigquery,Google Bigquery,我正在使用BigQuery API运行具有以下代码的查询: request = service.jobs().query(projectId="myProject", body={ "kind": "bigquery#queryRequest", "query": "SELECT COUNT(*) FROM widgets", "maxResults": 5000, "timeoutMs": 10000, "useQueryCache": True,

我正在使用BigQuery API运行具有以下代码的查询:

request = service.jobs().query(projectId="myProject", body={
    "kind": "bigquery#queryRequest",
    "query": "SELECT COUNT(*) FROM widgets",
    "maxResults": 5000,
    "timeoutMs": 10000,
    "useQueryCache": True,
    "useLegacySql": True
})
response = request.execute()
基础数据不变,查询不变。我希望缓存命中-但是响应返回
cacheHit
False
。然而,奇怪的是,
totalBytesProcessed
等于零,即使返回了行数据

这是BigQuery的错误吗?我被收费了吗?

BigQuery“聪明”到足以意识到您只是在“询问”表中的行数。为此,它使用
使用元表不会产生任何co$t
所以,不-您不会因为这个特定的查询而被收费

BigQuery“聪明”到足以意识到您只是“询问”表中的行数。为此,它使用
使用元表不会产生任何co$t

因此,没有-您不会因为这个特定的查询而被收取费用

谢谢!如果
totalBytesProcessed
为零,则费用始终为零,这样说安全吗?正式地说,您应该查找
totalBytesBilled
。但是在零字节的情况下,它们是相同的,并且电荷是零。是的,这非常有帮助-我真的很感激,谢谢!如果
totalBytesProcessed
为零,则费用始终为零,这样说安全吗?正式地说,您应该查找
totalBytesBilled
。但是在零字节的情况下,它们是相同的,并且电荷是零。是的,这非常有帮助——我真的很感激