首页 > 解决方案 > 分区需要多少行才能在 BigQuery 中获得良好的性能?

问题描述

我每天都会收到来自应用程序的 100 行。我公司的良好做法建议每天对每个表进行分区。我认为在我将创建以每天插入一百行的新表上执行此操作并不好。我想按年份对数据进行分区,这样好吗?要获得最佳性能,需要按分区多少行?

标签: google-cloud-platformgoogle-bigquerypartitioning

解决方案


请记住,分区的数量是有限的(最多 4000 个)。因此,分区非常适合低基数。每天,是完美的(大约 11 年 -> 4000 天)。

如果您有更高的基数,例如客户 ID(我希望您有 4000 多个客户!),集群是加快请求速度的解决方案。

当您对数据进行分区和集群时,您会创建一个小包。您拥有的要处理的数据(加载、读取、存储在缓存中(...))越少,您的查询就越快!当然,只有 100 行,您不会看到任何差异


推荐阅读