一尘不染

Hive中Sortby和orderby查询之间的区别

sql

请任何人告诉我Hive SQLsort byorder by查询之间的区别


阅读 807

收藏
2021-03-08

共1个答案

一尘不染

Hive支持SORT BY,可对每个reducer的数据进行排序。“ order by”和“ sort
by”之间的区别在于,前者保证输出中的总顺序,而后者仅保证精简器中行的排序。如果存在多个减速器,则“排序依据”可能会给出部分排序的最终结果。

注意:关于单个列的单独SORT BY与CLUSTER BY之间的区别可能会造成混淆。不同之处在于,如果存在多个reducer分区,则CLUSTER
BY按字段划分,而SORT BY则是随机划分,以便在reducer上均匀地分布数据(和负载)。

基本上,每个reducer中的数据将根据用户指定的顺序进行排序。以下示例显示

SELECT键,值FROM src SORT BY键ASC,值DESC

2021-03-08