yad*_*wen 1 mlab google-bigquery
我最近一直在尝试从 big query 下载 m-lab 数据集。似乎有一个限制,我们只能查询并通过一次查询获得大约 100 万行。m-lab 数据集在许多表中包含数十亿条记录。我很想使用这样的查询,bq query --destination_table=mydataset.table1 "select * from (select ROW_NUMBER() OVER() row_number, * from (select * from [measurement-lab:m_lab.2013_03] limit 10000000)) where row_number between 2000001 and 3000000;"但它没有用。有没有办法让它工作?非常感谢!
如果您尝试下载大表(如 m-lab 表),最好的选择是使用提取作业。例如,运行
bq extract 'mlab-project:datasset.table' 'gs://bucket/foo*'
Run Code Online (Sandbox Code Playgroud)
这会将表提取到谷歌云存储对象 gs://bucket/foo000000000.csv、gs://bucket/foo0000000001.csv 等。默认提取为 CSV,但您可以将 `--destination_format=NEWLINE_DELIMITED_JSON 传递给将表提取为 json。
另一件事要提到的是,您可以使用 tabledata 列表 api 从该特定偏移量中读取 bigquery 中的第 100 万行(无需查询!)。
bq head -n 1000 -s 1000000 'm-lab-project:dataset.table'
Run Code Online (Sandbox Code Playgroud)
将从第 1000000 行开始读取 1000 行。
| 归档时间: |
|
| 查看次数: |
1488 次 |
| 最近记录: |