【问题标题】:Download Big Query Table as JSON以 JSON 格式下载大查询表
【发布时间】:2015-08-24 07:12:54
【问题描述】:
我想以 JSON 格式下载现有的 Big Query 表,用于处理具有长字符串的列之一。
Big Query 表已通过 Datastore 备份文件从 App Engine 提取到 GCS。我使用 Big Query 从 GCS 读取 Datastore 备份文件并从中创建了一个表,这导致重复的字符串列作为非常长的字符串。
我无法解析长字符串,因此我需要将表下载为 JSON 并将 Big Query 重新作为新表。我需要对这种方法的建议
【问题讨论】:
标签:
json
google-bigquery
google-cloud-datastore
【解决方案1】:
有 3 种方法可以导出数据:
- 单个 URI(1 个文件,限制 1GB,很可能你正在使用这个)
['gs://my-bucket/file-name.json']
创建:
gs://my-bucket/file-name.json
- 单个通配符 URI(每个 1GB 创建多个文件)
['gs://my-bucket/file-name-*.json']
创建:
gs://my-bucket/file-name-000000000000.json
gs://my-bucket/file-name-000000000001.json
gs://my-bucket/file-name-000000000002.json ...
- 多个通配符 URI(这需要 Hadoop)
gs://my-bucket/file-name-{工人编号}-*.json
创建:
此示例假设 BigQuery 在每个文件中创建 80 个分片文件
分区。
gs://my-bucket/file-name-1-000000000000.json
gs://my-bucket/file-name-1-000000000001.json
...
gs://my-bucket/file-name-1-000000000080.json
gs://my-bucket/file-name-2-000000000000.json
gs://my-bucket/file-name-2-000000000001.json
...
gs://my-bucket/file-name-2-000000000080.json
gs://my-bucket/file-name-3-000000000000.json
gs://my-bucket/file-name-3-000000000001.json
...
gs://my-bucket/file-name-3-000000000080.json
阅读更多:
https://cloud.google.com/bigquery/exporting-data-from-bigquery