有人可以分享一个用于将 json newline_delimited 文件上传到新 Bigquery 表的作业配置示例吗?
尝试根据 Google 文档执行此操作,但到目前为止尚未成功。
最佳答案
This example来自 GCP 存储库的存储库是从 GCS 加载数据的好方法。
您在代码中唯一需要调整的就是将 job.source_format
设置为新的分隔 json 文件,如下所示:
def load_data_from_gcs(dataset_name, table_name, source):
bigquery_client = bigquery.Client()
dataset = bigquery_client.dataset(dataset_name)
table = dataset.table(table_name)
job_name = str(uuid.uuid4())
job = bigquery_client.load_table_from_storage(
job_name, table, source)
job.source_format = 'NEWLINE_DELIMITED_JSON'
job.begin()
wait_for_job(job)
print('Loaded {} rows into {}:{}.'.format(
job.output_rows, dataset_name, table_name))
(正确的做法是接收此参数作为函数中的输入,但这只是一个示例)。
此外,当您运行此代码时,该表应该已经存在(我在 Python API 中查找了模式自动检测,但似乎还没有)。
关于python - 使用 Python 将表从 Cloud Storage 加载到 BigQuery,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44367140/