黑猴子的家:Hive 表的優(yōu)化之MapJoin

如果不指定MapJoin或者不符合MapJoin的條件伪阶,那么Hive解析器會(huì)將Join操作轉(zhuǎn)換成Common Join腺办,即:在Reduce階段完成join腕扶。容易發(fā)生數(shù)據(jù)傾斜藻雌〈菩可以用MapJoin把小表全部加載到內(nèi)存在map端進(jìn)行join,避免reducer處理胯杭。

1驯杜、開(kāi)啟MapJoin參數(shù)設(shè)置

(1)設(shè)置自動(dòng)選擇Mapjoin

//默認(rèn)為true
set hive.auto.convert.join = true; 

(2)大表小表的閥值設(shè)置(默認(rèn)25M一下認(rèn)為是小表):

set hive.mapjoin.smalltable.filesize=25000000;

2、MapJoin工作機(jī)制

首先是Task A做个,它是一個(gè)Local Task(在客戶端本地執(zhí)行的Task)鸽心,負(fù)責(zé)掃描小表b的數(shù)據(jù),將其轉(zhuǎn)換成一個(gè)HashTable的數(shù)據(jù)結(jié)構(gòu)居暖,并寫(xiě)入本地的文件中顽频,之后將該文件加載到DistributeCache中。

接下來(lái)是Task B太闺,該任務(wù)是一個(gè)沒(méi)有Reduce的MR糯景,啟動(dòng)MapTasks掃描大表a,在Map階段,根據(jù)a的每一條記錄去和DistributeCache中b表對(duì)應(yīng)的HashTable關(guān)聯(lián)跟束,并直接輸出結(jié)果莺奸。

由于MapJoin沒(méi)有Reduce,所以由Map直接輸出結(jié)果文件冀宴,有多少個(gè)Map Task灭贷,就有多少個(gè)結(jié)果文件。

案例實(shí)操

(1)開(kāi)啟Mapjoin功能

//默認(rèn)為true
hive > set hive.auto.convert.join = true; 

(2)執(zhí)行小表JOIN大表語(yǔ)句

hive > insert overwrite table jointable
       select b.id, b.time, b.uid, b.keyword, b.url_rank, b.click_num, b.click_url
       from smalltable s
       join bigtable  b
       on s.id = b.id;

Time taken: 24.594 seconds

(3)執(zhí)行大表JOIN小表語(yǔ)句

hive > insert overwrite table jointable
       select b.id, b.time, b.uid, b.keyword, b.url_rank, b.click_num, b.click_url
       from bigtable  b
       join smalltable  s
       on s.id = b.id;

Time taken: 24.315 seconds
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末略贮,一起剝皮案震驚了整個(gè)濱河市甚疟,隨后出現(xiàn)的幾起案子仗岖,更是在濱河造成了極大的恐慌,老刑警劉巖览妖,帶你破解...
    沈念sama閱讀 222,252評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件轧拄,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡讽膏,警方通過(guò)查閱死者的電腦和手機(jī)檩电,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)府树,“玉大人俐末,你說(shuō)我怎么就攤上這事⊙傧溃” “怎么了卓箫?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,814評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)垄潮。 經(jīng)常有香客問(wèn)我烹卒,道長(zhǎng),這世上最難降的妖魔是什么弯洗? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,869評(píng)論 1 299
  • 正文 為了忘掉前任旅急,我火速辦了婚禮,結(jié)果婚禮上牡整,老公的妹妹穿的比我還像新娘坠非。我一直安慰自己,他們只是感情好果正,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,888評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著盟迟,像睡著了一般秋泳。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上攒菠,一...
    開(kāi)封第一講書(shū)人閱讀 52,475評(píng)論 1 312
  • 那天迫皱,我揣著相機(jī)與錄音,去河邊找鬼辖众。 笑死卓起,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的凹炸。 我是一名探鬼主播戏阅,決...
    沈念sama閱讀 41,010評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼啤它!你這毒婦竟也來(lái)了奕筐?” 一聲冷哼從身側(cè)響起舱痘,我...
    開(kāi)封第一講書(shū)人閱讀 39,924評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎离赫,沒(méi)想到半個(gè)月后芭逝,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡渊胸,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,552評(píng)論 3 342
  • 正文 我和宋清朗相戀三年旬盯,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片翎猛。...
    茶點(diǎn)故事閱讀 40,680評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡胖翰,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出办成,到底是詐尸還是另有隱情泡态,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評(píng)論 5 351
  • 正文 年R本政府宣布迂卢,位于F島的核電站某弦,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏而克。R本人自食惡果不足惜靶壮,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,037評(píng)論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望员萍。 院中可真熱鬧腾降,春花似錦、人聲如沸碎绎。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,519評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)筋帖。三九已至奸晴,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間日麸,已是汗流浹背寄啼。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,621評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留代箭,地道東北人墩划。 一個(gè)月前我還...
    沈念sama閱讀 49,099評(píng)論 3 378
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像嗡综,于是被迫代替她去往敵國(guó)和親乙帮。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,691評(píng)論 2 361

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

  • 數(shù)據(jù)倉(cāng)庫(kù)中的SQL性能優(yōu)化(Hive篇) - 簡(jiǎn)書(shū) http://www.reibang.com/p/808a5...
    葡萄喃喃囈語(yǔ)閱讀 4,560評(píng)論 0 31
  • github鏈接 針對(duì)Hive的優(yōu)化主要有以下幾個(gè)方面: map reduce file format shuff...
    zoyanhui閱讀 6,176評(píng)論 2 33
  • 8月12日晚蛤高,新的女子一萬(wàn)米世界紀(jì)錄蚣旱,埃塞俄比亞選手Ayana碑幅,29分17秒45,平均配速2'55''/公里塞绿! 該...
    鐘曜閱讀 174評(píng)論 0 0
  • 人口少异吻,有個(gè)好處裹赴,就是什么都省。拿茶來(lái)說(shuō)吧诀浪,親戚朋友知道我們愛(ài)喝茶棋返,出門(mén)都愛(ài)給帶些。家里生活常態(tài)就我們倆雷猪,茶又不能...
    陶葉夭夭閱讀 3,731評(píng)論 33 94
  • 《盼君歸》——君已離家愈半載睛竣,是夜作詞一首,悠悠我心聊表吾君求摇! 秋夜話凄涼射沟,無(wú)處訴衷腸,欲語(yǔ)還休狀与境,兩眼淚茫茫验夯。自...
    四兒寶貝閱讀 348評(píng)論 2 3