Hive相關注意事項

2021-09-09 07:32:01 字數 1067 閱讀 1282

1.load data  [locall]  inpath '***' into table ***xx

如果是本地路徑,其實就是一次put上傳操作

如果路徑是hdfs,其實是一次mv操作

2.建立分割槽表partitioned by:字段不能和表中列的字段重複

3.建立分桶表cluster by:必須是表中的某列的字段

4.order by :相當於全排序,只有乙個reducer

5.sort by:相當於部分排序,每個reducer內有序,利用該欄位(key)排序,但是不一定按照該欄位分割槽(key)。(可能使用了自定義排序類實現writertablecomparator

6.distribute by:分割槽

(概念上和分割槽好像都一樣,都使用hashpartition,但是分桶還有抽樣查詢功能,分割槽和分桶其他區別筆者不知道,知道的網友可以交流下........)。同時這裡按照某個字段(key,因為預設是hashpartition)分割槽,但是不一定按照該欄位(key)排序。此外,當distribute by和sort by結合使用時並且使用的不是同乙個key,則sort by 使用的自定義排序類實現writertablecomparator介面從而實現排序。

如下圖按照最後乙個字段分割槽,說明該字段是key(預設用的hashpartition),但是沒有按照該key排序

8 sort by 對應部分排序! 將資料根據設定的reducetask數量,使用hashpartition進行分割槽!

對每個分割槽後的資料根據指定的字段進行排序!

排序:  當前的字段,在key中!而且,在當前key的compareto方法中,使用了當前字段進行比較!

分割槽:  int xx=partitioner.getpartition(key,value,numreducetasks)

保證返回的0<=xx

DllMain相關注意事項

1 在dllmain的dll process attach分支中,盡量只呼叫kernel32.dll中的函式。因為其他系統api可能依賴於其他dll,而那些dll有可能還沒有被載入到程序空間中且依賴於當前dllmain所在的dll,這樣會導致迴圈依賴 其實,在使用者程序中呼叫其他系統模組的api一般...

git相關注意事項

git的相關注意事項 git add 新增所有修改到暫存區。git reset head file add之後發現錯誤,撤銷 add的檔案到暫存區。git add file後進行 git commit m 修改某某檔案 後發現錯誤 要撤銷。解決方式 git log 檢視提交到暫存區的 commit ...

求職相關注意事項

昨天聽的一場求職講座,以下是相關要點,之後再綜合其他資料進行修改,更新。關於簡歷 1.簡歷檔案命名 求職崗位 學校 姓名。3.相關經歷 根據崗位填寫自身相關的。採用star法則 情境 situation 任務 task 行動 action 結果 result 例子 2012.02 2012.06 網...