99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
2018-10-25 閱讀量: 932
Hive4種排序

order by:

可以指定desc 降序 asc 升序

order by會對輸入做全局排序,因此只有一個Reducer(多個Reducer無法保證全局有序),然而只有一個Reducer,會導致當輸入規(guī)模較大時,消耗較長的計算時間。

sort by :

對分區(qū)內(nèi)的數(shù)據(jù)進行排序

sort by不是全局排序,其在數(shù)據(jù)進入reducer前完成排序,因此,如果用sort by進行排序,并且設置mapred.reduce.tasks>1,則sort by只會保證每個reducer的輸出有序,并不保證全局有序。sort by不同于order by,它不受Hive.mapred.mode屬性的影響,sort by的數(shù)據(jù)只能保證在同一個reduce中的數(shù)據(jù)可以按指定字段排序。使用sort by你可以指定執(zhí)行的reduce個數(shù)(通過set mapred.reduce.tasks=n來指定),對輸出的數(shù)據(jù)再執(zhí)行歸并排序,即可得到全部結(jié)果。

distribute by :

對map輸出進行分區(qū)

distribute by是控制在map端如何拆分數(shù)據(jù)給reduce端的。hive會根據(jù)distribute by后面列,對應reduce的個數(shù)進行分發(fā),默認是采用hash算法。sort by為每個reduce產(chǎn)生一個排序文件。在有些情況下,你需要控制某個特定行應該到哪個reducer,這通常是為了進行后續(xù)的聚集操作。distribute by剛好可以做這件事。因此,distribute by經(jīng)常和sort by配合使用。

cluster by :

cluster by除了具有distribute by的功能外還兼具sort by的功能。當distribute by和sort by 是同一個字段的時候可以使用cluster by替代。但是排序只能是倒敘排序,不能指定排序規(guī)則為ASC或者DESC。

0.0000
2
關注作者
收藏
評論(0)

發(fā)表評論

暫無數(shù)據(jù)
推薦帖子