成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

hive中數(shù)據(jù)傾斜

數(shù)據(jù)傾斜通常指hive根據(jù)key值hash分發(fā)到各個節(jié)點,相同的key值會分發(fā)到一個執(zhí)行節(jié)點中,由于某些key值對應(yīng)的數(shù)據(jù)量比其它key值的數(shù)據(jù)量大很多,導(dǎo)致某些執(zhí)行節(jié)點的運行時間遠大于其它節(jié)點,從而導(dǎo)致整個job執(zhí)行時間較長。
在hive中執(zhí)行的sql會有map和reduce兩個階段,map階段的數(shù)據(jù)傾斜主要為數(shù)據(jù)從磁盤讀入內(nèi)存時、join,reduce階段數(shù)據(jù)傾斜主要有join、group by、count distinct,針對于這些操作有不同的處理方式來避免數(shù)據(jù)傾斜。
一、map階段
1.由于map讀入數(shù)據(jù)的文件大小分布不均勻,并且小文件特別多,導(dǎo)致某些map讀取并處理的數(shù)據(jù)特別多
這種情況可通過參數(shù)調(diào)整防止由于小文件過多導(dǎo)致每個map讀取的數(shù)據(jù)量不均勻,mapred.max.split.size=256000000(每個map可以處理的最大文件大小,可調(diào)大該值來減少map數(shù))
二、reduce階段
1.join
數(shù)據(jù)表在進行join時有兩種情況會出現(xiàn)傾斜:
(1)小表和大表join的傾斜
這種情況,可以直接使用hint(如/ + mapjoin(a) /)將小表全部加載到內(nèi)存中后順序掃描大表完成join(mapjoin有使用限制,必須是join中的從表較小時才可用,從表主要指left join中的右表,right join中的左表,小表最大為2GB)
(2)大表和大表join的傾斜
這種情況,需要具體原因具體分析:

滎經(jīng)網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,滎經(jīng)網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為滎經(jīng)近1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的滎經(jīng)做網(wǎng)站的公司定做!

  • 由某些特殊值引起的數(shù)據(jù)傾斜
    參數(shù)設(shè)置方式:hive.optimize.skewjoin=true; 將造成傾斜的特殊值先不處理直接寫入hdfs,然后新啟一個mapjoin專門處理特殊值;可以通過參數(shù)設(shè)置數(shù)據(jù)量超過多少默認為特殊值,如hive.skewjoin.key=10000,表名超過10000條的key會被認定為特殊值;
    特殊值的處理也可以在sql中進行優(yōu)化,在sql中將特殊值與非特殊值分別處理,然后再通過union all拼接,但這樣會增加IO;
  • 由空值引起的數(shù)據(jù)傾斜
    將空值的key變?yōu)橐粋€字符串加上隨機數(shù),也可以借鑒特殊值的sql優(yōu)化方式;
  • 不同數(shù)據(jù)類型關(guān)聯(lián)產(chǎn)生的數(shù)據(jù)傾斜
    如int型的用戶id與string類型的用戶id進行關(guān)聯(lián),hive默認會將hash按int類型分配,string類型的數(shù)據(jù)會全部分配到一個reduce中,此時應(yīng)將int型轉(zhuǎn)化為string再做關(guān)聯(lián)
    2.group by + count distinct
    當(dāng)sql中出現(xiàn)這種情況時,需預(yù)先對group by的字段進行去重處理,然后再進行count

當(dāng)前名稱:hive中數(shù)據(jù)傾斜
網(wǎng)址分享:http://jinyejixie.com/article46/jpdceg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、建站公司、關(guān)鍵詞優(yōu)化小程序開發(fā)、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

h5響應(yīng)式網(wǎng)站建設(shè)
金乡县| 蕉岭县| 千阳县| 龙川县| 松滋市| 衡阳县| 浦江县| 油尖旺区| 黔西| 澄城县| 临江市| 芮城县| 威远县| 皮山县| 莲花县| 芦山县| 金昌市| 岳西县| 工布江达县| 普安县| 女性| 讷河市| 滨海县| 临沭县| 怀化市| 衡东县| 益阳市| 茌平县| 保德县| 夹江县| 福安市| 香河县| 富蕴县| 南岸区| 天津市| 玉龙| 南乐县| 金溪县| 油尖旺区| 蓬溪县| 阿拉善盟|