我每小时执行一次批处理作业,需要扫描过去一个小时流到我表中的所有数据。现在,我使用的是日期分区表,这意味着每次我扫描日期分区中一小时的数据时,我都必须扫描当天所有时间的行。
我一直在考虑将这个表聚集在一个小时字段上,但是我给人的印象是BigQuery在面对流插入时实际上不会使该表有效地聚集。所以这是我的问题:
BigQuery是否保证即使在流插入的情况下也能保持簇表的排序?
答案 0 :(得分:1)
当前答案是否,面对流插入,聚簇表不会保持排序/聚类。非常感谢塔米尔(Tamir)指出,有一个与此问题here相关的答案。请查看该答案以获取详细信息,以及在分区的一部分上进行强制排序的技巧。
BigQuery小组也正在为此进行工作。根据{{3}},从2019年4月17日开始:
我们正在对流进行大量工作,以使表群集到最近的某个时间间隔。目前,我们尚无很好的预计到达时间,但我们希望尽快获得更多信息。