从 Cloud Storage Json 加载数据时出现 BigQuery 错误

Posted

技术标签:

【中文标题】从 Cloud Storage Json 加载数据时出现 BigQuery 错误【英文标题】:BigQuery error while loading data from Cloud Storage Json 【发布时间】:2017-12-20 10:15:11 【问题描述】:

我正在尝试将数据从 Cloud Storage JSON 加载到 BigQuery。

我使用 BigQuery API。

这是我得到的错误:

TypeError: unbound method to_api_repr() must be called with LoadJobConfig instance as first argument (got nothing instead)

这是代码:

from google.cloud import bigquery


bigquery_client = bigquery.Client(project='test')
table_ref = bigquery_client.dataset('test').table('test_table')
GS_URL = 'gs:///raw/test/test.json'.format('bucket_test')
job_id_prefix2 = 'copy_test'
job_config2 = bigquery.LoadJobConfig
job_config2.create_disposition = 'NEVER'
job_config2.skip_leading_rows = 0
job_config2.source_format = 'NEWLINE_DELIMITED_JSON'
job_config2.write_disposition = 'WRITE_APPEND'

load_job = bigquery_client.load_table_from_uri(
    GS_URL,
    table_ref,
    job_id="job",
    job_id_prefix=job_id_prefix2,
    job_config=job_config2)  # API request

assert load_job.state == 'RUNNING'
assert load_job.job_type == 'load'


load_job.result()  # Waits for table load to complete.


assert load_job.state == 'DONE'
assert load_job.job_id.startswith(job_id_prefix2)

我错过了什么吗?有什么帮助吗?

【问题讨论】:

【参考方案1】:

至于您提供的代码,我看到一个错误,您缺少一对引用此LoadJobConfig 的括号,这给您带来了麻烦。错误在以下行:

job_config2 = bigquery.LoadJobConfig()

尝试一下,您的代码现在应该可以工作了。您可以在BigQuery Python API 的官方文档中找到有关如何从 Cloud Storage 存储桶加载文件的更多信息和示例。

【讨论】:

以上是关于从 Cloud Storage Json 加载数据时出现 BigQuery 错误的主要内容,如果未能解决你的问题,请参考以下文章

Bigquery 无法从 Google Cloud Storage 加载数据

BigQuery 从 Cloud Storage 加载压缩数据

如何使用 API 存储在 Google Cloud Storage 中的架构文件在 BigQuery 加载作业上设置架构?

将存储在 Google Cloud Storage 中的文件加载到 Big Query 时出错

如何将 Google Cloud Storage 中的千兆字节数据加载到 pandas 数据帧中?

从 Cloud Storage 加载 BigQuery InternalError(适用于直接文件上传)