分区需要多少行才能在BigQuery中有良好的性能?



我每天从一个应用程序收到100行。我公司的良好实践建议按天对每个表进行分区。我不认为这样做是好的新表,我将创建每天插入100行。我想按年划分数据,这样行吗?分区需要多少行才能获得最佳性能?

这还取决于你要在这个表上执行的查询,也就是要使用什么样的日期过滤器以及在哪些列上连接。参考下面的答案,它将真正帮助你决定这个问题。

Answer1

Answer2

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

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

当您对数据进行分区和集群时,您创建了一个小袋。你需要处理的数据越少(加载、读取、存储在缓存中等等),你的查询速度就会越快!当然,对于仅100行,您不会看到任何差异

最新更新