Hive開啓mapjoin優化、並行執行、動態分區

1. mapjoin優化適合小表join大表sql

set hive.optimize.skewjoin=true; //有數據傾斜時開啓負載均衡,默認false
set hive.auto.convert.join=true; //設置自動選擇MapJoin,默認是true
set hive.auto.convert.join.noconditionaltask=true; //map-side join
set hive.auto.convert.join.noconditionaltask.size=100000000; //多大的表能夠自動觸發放到內層LocalTask中,默認大小10M
set hive.mapjoin.smalltable.filesize=200000000; //設置mapjoin小表的文件大小爲20M,小表閾值

 

2. 開啓並行執行併發

set hive.exec.parallel=true; //能夠開啓併發執行
set hive.exec.parallel.thread.number=16; //同一個sql容許最大並行度,默認爲8。

 

3. 開啓動態分區負載均衡

set hive.exec.dynamic.partition=true; set hive.exec.dynamic.partition.mode=nonstrict;
相關文章
相關標籤/搜索