hive調優有兩點是很好用的
摘:1.mapjoin
舊版本hive需要自行在查詢/子查詢的select關鍵字後面新增/*+ mapjoin(tablelist) */提示優化器轉化為mapjoin。高版本只需設定:
set hive.auto.convert.join=true;
hive自行選擇小表作為left的左表。
2.parallel
設定該引數是控制在同乙個sql中的不同的job是否可以同時執行,預設是false,設定如下
set hive.exec.parallel=true;
詳細見: Hive引數調優
一 map 階段的優化 1.map數的計算公式為 num map tasks max min mapred.min.spilt.size 指的是資料的最小分割單元大小 預設為1b mapred.max.split.size 指的是資料的最大分割單元大小 預設為 256mb dfs.block.siz...
hive常用引數調優
決定是否可以在 map 端進行聚合操作 開啟資料傾斜時的負載均衡 設定所提交 job 的 reduer 的個數 hive map join 所快取的行數。決定 hive 是否應該自動地根據輸入檔案大小,在本地執行 需要合併的小檔案群的平均大小,預設 16 m。是否根據輸入小表的大小,自動將 redu...
Hive 調優的方案
hive 針對一些小表 維度表 查詢而已不必使用mr進行計算的,例如 select userid,username from dw use 這種情況下,hive可以簡單的讀取表所在hdfs下的儲存檔案,並輸出到控制台。通過使用設定引數 hive.fetch.task.conversion 來決定是否...