4

我正在使用 Big Query 进行测试。基本上我有 50,000 个文件,每个文件的大小平均为 27MB。有些更大,有些更小。

每个文件上传的时间显示:

真实 0m49.868s 用户 0m0.297s 系统 0m0.173s

使用类似于:

时间 bq 加载 --encoding="UTF-8" --field_delimiter="~" 数据集 gs://project/b_20130630_0003_1/20130630_0003_4565900000.tsv schema.json

运行命令:“bq ls -j”并随后运行“bq show -j”显示我有以下错误:

作业类型 状态 开始时间 持续时间 已处理字节数


加载失败 01 Jul 22:21:18 0:00:00

作业执行期间遇到的错误。超出配额:此表每个表的导入次数过多

检查数据库后,行似乎加载正常,这令人费解,因为考虑到错误,我预计不会加载任何内容。问题是我真的不明白我是如何达到配额限制的,因为我最近才开始上传文件并认为限制是 200,000 个请求。

所有数据目前都在谷歌云存储上,所以我希望数据加载会很快发生,因为交互是在云存储和大查询之间,两者都在云中。

根据我的计算,整个负载将花费:(50,000 * 49 秒)28 天。

有点希望这些数字是错误的。

谢谢。

4

1 回答 1

3

每个表的配额限制为每天 1000 次加载。这是为了鼓励人们对他们的负载进行批处理,因为如果我们可以一次看到更多数据,我们可以生成更有效的表表示。

BigQuery 可以并行执行加载作业。根据您的负载大小,一些工人将被分配到您的工作中。如果您的文件很大,这些文件将在工作人员之间拆分;或者,如果您传递多个文件,每个工作人员可能会处理不同的文件。因此,一个文件所需的时间并不表示运行具有多个文件的加载作业所需的时间。

于 2013-07-02T20:46:23.050 回答