google.cloud.bigquery python。如何获取查询

时间:2017-11-08 05:27:10

标签: python-2.7 google-bigquery

我在我的python代码中使用Google BigQuery来获取数据并将数据插入到表中。我想知道我的查询处理的字节。有没有办法做到这一点?我目前在python2中使用google.cloud.bigquery。

感谢。

1 个答案:

答案 0 :(得分:3)

在版本0.28.0中,您可以使用dry_run或在作业完成后获取结果,如下所示:

import google.cloud.bigquery as bq
import os

os.environ['GOOGLE_APPLICATION_CREDENTIALS']='path/to/your/secrets.json'
bc = bq.Client()
job_config = bq.QueryJobConfig()
job_config.dry_run = True

query = """your query"""    
query_job = bc.query(query, job_config)
print "Total bytes this query will process: {}".format(
    query_job.total_bytes_processed)

# this approach is after you run the job without ``dry_run``
import time
query = """your query"""
query_job = bc.query(query)
while(query_job.done() != True):
    time.sleep(1)
print "Total bytes processed: {}".format(
    query_job.total_bytes_processed)