hive优化笔记
大小表關聯
set hive.auto.convert.join = true;--大表關聯小表,把小表自動加載到內存中,相當于寫了一個mapjoin set hive.mapjoin.smalltable.filesize=25000000; --默認值是25mb?
--是否自動轉換為mapjoin set hive.auto.convert.join = true; --小表的最大文件大小,默認為25000000,即25M set hive.mapjoin.smalltable.filesize = 25000000; --是否將多個mapjoin合并為一個 set hive.auto.convert.join.noconditionaltask = true; --多個mapjoin轉換為1個時,所有小表的文件大小總和的最大值 set hive.auto.convert.join.noconditionaltask.size = 10000000;?
設置map數
set mapred.max.split.size=256000000; -- 決定每個map處理的最大的文件大小,單位為B set mapred.min.split.size.per.node=1; -- 節點中可以處理的最小的文件大小 set mapred.min.split.size.per.rack=1; -- 機架中可以處理的最小的文件大小?
設置reduce數
兩種方式 一、直接設置 set mapred.reduce.tasks=10; -- 設置reduce的數量 二、設置單個reduce處理的數據量大小 set hive.exec.reducers.bytes.per.reducer=1073741824 -- 每個reduce處理的數據量,默認1GB?
?
總結
- 上一篇: P1095 [NOIP2007 普及组]
- 下一篇: Unity3d Ugui图片上制作点光