鍍金池/ 教程/ 大數(shù)據(jù)/ Hadoop - IO
YARN - Failover
MapReduce - Shuffle
Hadoop配置
MapReduce - 讀取數(shù)據(jù)
Hadoop - MapReduce
YARN - Container
Hadoop 測試
MapReduce - Mapper
Hadoop - 參考
YARN - ResourceManager
HDFS - 可靠性
HDFS - 讀文件
Hadoop - 簡介
YARN - ApplicationMaster
Hadoop - IO
Hadoop 監(jiān)控
MapReduce - 編程
Hadoop - YARN
Hadoop - HDFS
HDFS - 命令工具
HDFS - 寫文件
YARN - NodeManager
Hadoop安裝

Hadoop - IO

  1. 輸入文件從HDFS進行讀取.
  2. 輸出文件會存入本地磁盤.
  3. Reducer和Mapper間的網(wǎng)絡(luò)I/O,從Mapper節(jié)點得到Reducer的檢索文件.
  4. 使用Reducer實例從本地磁盤回讀數(shù)據(jù).
  5. Reducer輸出- 回傳到HDFS.

串行化

傳輸、存儲都需要

Writable接口

Avro框架:IDL,版本支持,跨語言,JSON-linke

壓縮

能夠減少磁盤的占用空間和網(wǎng)絡(luò)傳輸?shù)牧?/p>

Compressed Size, Speed, Splittable

gzip, bzip2, LZO, LZ4, Snappy

要比較各種壓縮算法的壓縮比和性能

重點:壓縮和拆分一般是沖突的(壓縮后的文件的block是不能很好地拆分獨立運行,很多時候某個文件的拆分點是被&#x#x62C6;分到兩個壓縮文件中,這時Map任務(wù)就無法處理,所以對于這些壓縮,Hadoop往往是直接使用一個Map任務(wù)處理整個文件的分析)

Map的輸出結(jié)果也可以進行壓縮,這樣可以減少Map結(jié)果到Reduce的傳輸?shù)臄?shù)據(jù)量,加快傳輸速率

完整性

磁盤和網(wǎng)絡(luò)很容易出錯,保證數(shù)據(jù)傳輸?shù)耐暾砸话闶峭ㄟ^CRC32這種校驗法

每次寫數(shù)據(jù)到磁盤前都驗證一下,同時保存校驗碼

每次讀取數(shù)據(jù)時,也驗證校驗碼,避免磁盤問題

同時#x65F6;每個datanode都會定時檢查每一個block的完整性

當發(fā)現(xiàn)某個block數(shù)據(jù)有問題時,也不是立刻報錯,而是先去Namenode找一塊該數(shù)據(jù)的完整備份進行恢復(fù),不能恢復(fù)才報錯

上一篇:Hadoop配置下一篇:Hadoop 監(jiān)控