Sqoop在導入數據的時候數據傾斜


Sqoop 抽數的並行化主要涉及到兩個參數:num-mappers:啟動N個map來並行導入數據,默認4個;

                    split-by:按照某一列來切分表的工作單元。

 

split切分算法默認是根據主鍵來的:比如map 個數為4,取 ( 主鍵最大值 -  主鍵最小值 )/ map 數量 ,這就分成了 4份,如果主鍵分布不均,那么就會出現數據傾斜。

解決方法

通過ROWNUM() 生成一個嚴格均勻分布的字段,然后指定為分割字段

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM