BigQuery表装饰器范围

时间:2013-12-19 10:02:59

标签: google-bigquery

我们正在使用表装饰器来查询BQ中的增量数据。 我想避免以2个不同的增量(范围)查询相同的数据。 问题是BQ如何处理装饰器范围的边缘? 是吗

"end decorator >= range >= start decorator"?
"end decorator > range > start decorator"? 
"end decorator >= range > start decorator"?
other?

由于

2 个答案:

答案 0 :(得分:1)

我发现“table @ 0-9999”可能有问题,因为Bigquery会给你:

Error: Not Found: Table project:dataset.table@0-9999

[更新] 实际上,Bigquery不允许在表装饰器

中创建表时间之前的开始时间

答案 1 :(得分:0)

开始时间和结束时间都是包含的(我只看了要验证的代码)。

end decorator >= commit time >= start decorator

因此,如果您有3次,10000次,20000次和30000次(当然,您的时间戳看起来更像是1387470149000,但如果它们很小则数字更容易阅读)您将使用:

table@0-9999
table@10000-19999
table@20000-29999
table@30000-

@ 0是特殊的,意思是“最早的可用时间”,即7天前或创建表时'。 这会将表格划分为“最早时间 - > 9.999秒,10秒 - > 19.999秒,20秒 - > 29.999秒,以及现在30秒”的分区。

稍微考虑一下,似乎结束时间应该是非包容性的(end > commit time >= start)。有没有改变它的投票?