bigquery ORDER BY子句使用哪种排序算法?

时间:2018-10-27 19:54:38

标签: google-bigquery

它是否使用冒泡排序/合并排序..算法类型?这些类型的语句的后台执行周围是否有任何文档/信息可用?

1 个答案:

答案 0 :(得分:2)

不确定您为什么会被否决,因为我认为这在任何地方都没有描述。在单个分区内,BigQuery使用introsort,并根据ORDER BY子句中列的类型和列数使用了一些技巧。例如,如果您有一个名为INT64的{​​{1}}列,并且运行了以下形式的查询:

x

BigQuery会将所有SELECT x FROM dataset.table ORDER BY x 值加载到向量中,然后进行排序并返回它们。但是,如果选择列表或ORDER BY子句中有多个列,则不太简单。