Hadoop 學(xué)習(xí)番外篇3-小文件處理

代碼見:https://github.com/JNUpython/hadoop_spark/tree/master/src/main/java/org/shangu/serialization

image.png

小文件hdfs存儲(chǔ)

每個(gè)文件都會(huì)占用一個(gè)block(默認(rèn)yarn block_size=128mb),文件多直接導(dǎo)致namenode資源耗盡,
image.png

小文件切片

小文件分塊和切片是兩個(gè)完全不同概念:前者為物理過程,將數(shù)據(jù)存儲(chǔ)在磁盤上;后者為數(shù)據(jù)讀取邏輯處理過程,讀取數(shù)據(jù)作為maptask的輸入,因此切片數(shù)量直接對(duì)應(yīng)maptask開啟的數(shù)量。
如果直接采用下面代碼讀取數(shù)據(jù):

FileInputFormat.setInputPaths(job, new Path(args[0]));

因?yàn)閿?shù)據(jù)切片,不考慮數(shù)據(jù)整體大小而是分文件單獨(dú)考慮那么直接采用該方法就會(huì)有4個(gè)切片,即多少個(gè)小文件對(duì)應(yīng)多少個(gè)切片,實(shí)際根本不要這么多task,maptask啟動(dòng)也是很費(fèi)時(shí)間。

[INFO ] 2019-05-05 11:39:27,437 method:org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:198)
number of splits:4

上面是利用 FileInputFormat 提交job信息輸出 切片數(shù)量為4, 對(duì)用4個(gè)maptask

小文件切片:CombineTextInputFormat

FileInputFormat運(yùn)行之前設(shè)置:4mb

        job.setInputFormatClass(CombineTextInputFormat.class);
        CombineTextInputFormat.setMaxInputSplitSize(job, 4194304);

        FileInputFormat.setInputPaths(job, new Path(args[0]));
        FileOutputFormat.setOutputPath(job, new Path(args[1]));

切片數(shù)量變?yōu)?

[INFO ] 2019-05-05 11:53:15,298 method:org.apache.hadoop.mapreduce.JobSubmitter.submitJobInternal(JobSubmitter.java:198)
number of splits:1
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一.簡述如何安裝配置apache 的一個(gè)開源的hadoop 1.使用root賬戶登陸 2.修改ip 3.修改hos...
    梔子花_ef39閱讀 5,078評(píng)論 0 52
  • 數(shù)據(jù)切片和MapTask并行度決定機(jī)制 1)一個(gè)Job的Map階段并行度由客戶端在提交Job時(shí)的切片數(shù)決定 2)每...
    bullion閱讀 840評(píng)論 0 1
  • MapReduce工作流程 流程圖如下 解釋上面的流程是整個(gè)mapreduce最全工作流程,但是shuffle過程...
    ZFH__ZJ閱讀 621評(píng)論 0 3
  • 當(dāng)數(shù)據(jù)量增大到超出了單個(gè)物理計(jì)算機(jī)存儲(chǔ)容量時(shí),有必要把它分開存儲(chǔ)在多個(gè)不同的計(jì)算機(jī)中。那些管理存儲(chǔ)在多個(gè)網(wǎng)絡(luò)互連的...
    單行線的旋律閱讀 2,083評(píng)論 0 7
  • 一別簡書兩年,翻看兩年前的妹妹照片,與現(xiàn)在手機(jī)快拍圖對(duì)比,感覺上的東西和實(shí)際施展,始終原地踏步,更不比從前,對(duì)于懶...
    小芥閱讀 475評(píng)論 0 5

友情鏈接更多精彩內(nèi)容