查询作业无法从外部表(链接的谷歌驱动器文件)工作在python

时间:2017-09-27 09:10:09

标签: python python-3.x google-bigquery

我通过做一个小项目来学习python和bigquery,我不知道为什么我的查询在python中工作时在python中没有工作。如果我从标准数据集表运行任何其他查询,它就可以工作。我已将google drive scoope添加到默认凭据,因为我之前有过auth错误。只是来自谷歌驱动器的外部表不起作用,我收到错误

  

google.cloud.exceptions.InternalServerError:500执行期间遇到错误。重试可以解决问题。

我的标准谷歌功能:

def query_shakespeare(query):

    client = bigquery.Client()
    job_name = str(uuid.uuid4())
    query_job = client.run_async_query(job_name, query)

    query_job.begin()
    query_job.result()

    destination_table = query_job.destination
    destination_table.reload()
    for row in destination_table.fetch_data():
        print(row)

我的查询如下:

SELECT * FROM [gdocs_names.name_0001]

通过网络运行 - >撰写查询最后3s并工作。 它也可以使用命令行:

bg query "SELECT * FROM [gdocs_names.name_0001]"

1 个答案:

答案 0 :(得分:1)

我花了很多时间,有一个标志--enable_gdrive你需要像这样设置为true:

bg query --enable_gdrive=true "SELECT * FROM [gdocs_names.name_0001]"