hive數(shù)據(jù)調(diào)優(yōu)

????????hive作為數(shù)據(jù)倉庫工具仑嗅,可以查看HDFS結(jié)構(gòu)化文件內(nèi)容,使用sql進(jìn)行數(shù)據(jù)加工處理。在使用hive進(jìn)行數(shù)據(jù)查詢時无畔,底層執(zhí)行引擎主要是MapReduce啊楚,而MapReduce流程加工處理期間有數(shù)據(jù)落盤情況,會浪費大量時間浑彰,接下來整理下hive是如何確定map和reduce數(shù)量及相關(guān)優(yōu)化方法恭理。?

????hive如何確定map數(shù)量

? ? ? ? 1、輸入文件總個數(shù)郭变;2颜价、輸入文件大小诉濒;3周伦、集群設(shè)置的文件塊大小(默認(rèn)128未荒,hdfs-set.xml 中dfs.block.size確定大凶ㄅ病)。

????????比如:

? ? ? ? 1片排、假設(shè)input目錄下有3個文件a寨腔、b、c率寡,大小分別是10m迫卢、20m、150m冶共,那么hadoop會分隔成4個塊乾蛤,10m、20m捅僵、128m家卖、22m共4個map。

????????2命咐、假設(shè)輸入目錄下有1個文件a篡九,大小是780m,hadoop會把a分割成7塊醋奠,6個128m和1個12m,產(chǎn)生7個map伊佃。? ?

????map數(shù)量是否越多越好

? ? ? ? 一個map任務(wù)啟動和初始化時間是需要時間的窜司,如果map數(shù)量多,但每個map下數(shù)據(jù)量并不大航揉,造成執(zhí)行時間小于啟動初始化時間塞祈,會浪費大量的時間給更多的map分配task,同時也是對系統(tǒng)資源對浪費帅涂。但是對于有些文件在一個文件塊下议薪,因為字段少尤蛮,數(shù)據(jù)行特別多,可以增加map數(shù)量來提高數(shù)據(jù)處理速度斯议。

? ? ? ? 設(shè)置調(diào)整map數(shù)量方法:

? ? ? ? set mapred.max.split.size=100000000??決定每個map處理的最大的文件大小

? ? ? ? set mapred.min.split.size.per.node=100000000? 節(jié)點可以處理的最小的文件大小

? ? ? ? set mapred.min.split.size.per.rack=100000000??機(jī)架中可以處理的最小的文件大小

? ? ? ? set hive.input.format=org.apache.hadoop.hive.ql.io.CombineHiveInputFormat(設(shè)置執(zhí)行前進(jìn)行小文件合并)

????hive如何確定reduce數(shù)量

? ? ? ? reduce數(shù)量是min(max(totalInputFileSize/bytesPerReducer,1),maxReducers)決定产捞。

? ? ? ? toalInputFizeSize job所有輸入總字?jǐn)?shù)

? ? ? ? bytesPerReducer 每個Reduce數(shù)據(jù)量,由hive.exec.reducers.bytes.per.reducer參數(shù)指定

? ? ? ? maxReducers 一個MapReduce作業(yè)允許的最大reduce數(shù)量哼御,由參數(shù)hive.exec.reducer.max指定

? ? ? ??set mapred.reduce.tasks 設(shè)置reduce數(shù)量坯临,這種方法不建議使用,優(yōu)先通過設(shè)置Reduce數(shù)據(jù)量確定reduce數(shù)量

????hive合并輸入文件設(shè)置

? ? ? ? set hive.merge.mapfiles = true 在map-only任務(wù)結(jié)束時合并小文件

? ? ? ? set hive.merge.mapredfiles = true 在map-reduce任務(wù)結(jié)束時合并小文件

? ? ? ? set hive.merge.size.per.task = 256*1000*1000 合并文件大小?

? ? ? ? set hive.merge.smallfiles.avgsize = 16000000 當(dāng)輸出文件的平均大小小于該值時恋昼,啟動一個獨立map-reduce 任務(wù)進(jìn)行文件merge

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末看靠,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子液肌,更是在濱河造成了極大的恐慌挟炬,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,490評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件嗦哆,死亡現(xiàn)場離奇詭異辟宗,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)吝秕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,581評論 3 395
  • 文/潘曉璐 我一進(jìn)店門泊脐,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人烁峭,你說我怎么就攤上這事容客。” “怎么了约郁?”我有些...
    開封第一講書人閱讀 165,830評論 0 356
  • 文/不壞的土叔 我叫張陵缩挑,是天一觀的道長。 經(jīng)常有香客問我鬓梅,道長供置,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,957評論 1 295
  • 正文 為了忘掉前任绽快,我火速辦了婚禮芥丧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘坊罢。我一直安慰自己续担,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,974評論 6 393
  • 文/花漫 我一把揭開白布活孩。 她就那樣靜靜地躺著物遇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪说莫。 梳的紋絲不亂的頭發(fā)上剑梳,一...
    開封第一講書人閱讀 51,754評論 1 307
  • 那天,我揣著相機(jī)與錄音唉锌,去河邊找鬼诗舰。 笑死警儒,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的始衅。 我是一名探鬼主播冷蚂,決...
    沈念sama閱讀 40,464評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼汛闸!你這毒婦竟也來了蝙茶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤诸老,失蹤者是張志新(化名)和其女友劉穎隆夯,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體别伏,經(jīng)...
    沈念sama閱讀 45,847評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡蹄衷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,995評論 3 338
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了厘肮。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片愧口。...
    茶點故事閱讀 40,137評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖类茂,靈堂內(nèi)的尸體忽然破棺而出耍属,到底是詐尸還是另有隱情,我是刑警寧澤巩检,帶...
    沈念sama閱讀 35,819評論 5 346
  • 正文 年R本政府宣布厚骗,位于F島的核電站,受9級特大地震影響兢哭,放射性物質(zhì)發(fā)生泄漏领舰。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,482評論 3 331
  • 文/蒙蒙 一迟螺、第九天 我趴在偏房一處隱蔽的房頂上張望冲秽。 院中可真熱鬧,春花似錦煮仇、人聲如沸劳跃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,023評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春夹姥,著一層夾襖步出監(jiān)牢的瞬間杉武,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,149評論 1 272
  • 我被黑心中介騙來泰國打工辙售, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留轻抱,地道東北人。 一個月前我還...
    沈念sama閱讀 48,409評論 3 373
  • 正文 我出身青樓旦部,卻偏偏與公主長得像祈搜,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子士八,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,086評論 2 355

推薦閱讀更多精彩內(nèi)容