每个ID分区技术的Google BigQuery

时间:2018-04-09 12:01:48

标签: google-bigquery

我有BigQuery表,包含时间序列财务数据(价格,数量和其他内容):

ts:TIMESTAMP,
asset_id:INTEGER,
metric1:INTEGER,
metric2:INTEGER,
...
metricN:FLOAT

id是Postgres数据库中的外部ID。

最常见和最常见的查询是id过滤。例如:

SELECT ts, metric1, metric2 WHERE id = 12;

有没有一种方法可以在timestampid同时对数据进行分区?

我正在考虑创建每id个表(gc_project_name.per_id_dataset.{asset_id})并查询它们以获得更好的性价比。

哪些问题会导致这种方法?我们有~5k ids,10-20k就足够多年了。

1 个答案:

答案 0 :(得分:5)

短期内,您可以创建每个ID日分区表,并使用wildcard table执行查询。

长期来看,我们会提供两级分区机制,敬请关注!