尝试从 Google 云存储加载表时遇到以下错误: BadRequest: 400 加载配置必须指定至少一个源 URI (POST https://www.googleapis.com/bigquery/v2/projects/fansidata/jobs )
同时我的 uri 有效(即:我可以在 gcs Web 应用程序中看到它)
uris = ['gs://my-bucket-name/datastore_backup_analytics_2016_12_21_2_User/1569751766512529035929A5AA9742/output-0']
job_name = 'Load_User'
destinationTable = dataset.table('Transfer')
job = bigquery_client.load_table_from_storage(job_name, destinationTable, uris)
job.begin()
最佳答案
我可能是错的,但看起来 Python API 中的 load_table_from_storage
需要第三个参数为单个字符串,而不是列表。如果要匹配多个文件,可以在末尾使用*
。例如,
uri = 'gs://my-bucket-name/datastore_backup_analytics_2016_12_21_2_User/1569751766512529035929A5AA9742/output-*']
job_name = 'Load_User'
destinationTable = dataset.table('Transfer')
job = bigquery_client.load_table_from_storage(job_name, destinationTable, uri)
job.begin()
关于python - BigQuery load_table_from_storage 无法识别 uri,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41272298/