HDFS(Hadoop Distributed File System )Hadoop分布式文件系統(tǒng)。是根據(jù)google發(fā)表的論文翻版的。論文為GFS(Google File System)Google 文件系統(tǒng)(中文,英文)。
1. 架構(gòu)分析
基礎(chǔ)名詞解釋:
- Block: 在HDFS中,每個(gè)文件都是采用的分塊的方式存儲(chǔ),每個(gè)block放在不同的datanode上,每個(gè)block的標(biāo)識(shí)是一個(gè)三元組(block id, numBytes,generationStamp),其中block id是具有唯一性,具體分配是由namenode節(jié)點(diǎn)設(shè)置,然后再由datanode上建立block文件,同時(shí)建立對應(yīng)block meta文件
- Packet:在DFSclient與DataNode之間通信的過程中,發(fā)送和接受數(shù)據(jù)過程都是以一個(gè)packet為基礎(chǔ)的方式進(jìn)行
- Chunk:中文名字也可以稱為塊,但是為了與block區(qū)分,還是稱之為chunk。在DFSClient與DataNode之間通信的過程中,由于文件采用的是基于塊的方式來進(jìn)行的,但是在發(fā)送數(shù)據(jù)的過程中是以packet的方式來進(jìn)行的,每個(gè)packet包含了多個(gè)chunk,同時(shí)對于每個(gè)chunk進(jìn)行checksum計(jì)算,生成checksum bytes
- 小結(jié):
1. 一個(gè)文件被拆成多個(gè)block持續(xù)化存儲(chǔ)(block size 由配置文件參數(shù)決定) 思考: 修改 block size 對以前持續(xù)化的數(shù)據(jù)有何影響?
2. 數(shù)據(jù)通訊過程中一個(gè) block 被拆成 多個(gè) packet
3. 一個(gè) packet 包含多個(gè) chunk
- Packet結(jié)構(gòu)與定義: Packet分為兩類,一類是實(shí)際數(shù)據(jù)包,另一類是heatbeat包。一個(gè)Packet數(shù)據(jù)包的組成結(jié)構(gòu),如圖所示
延伸閱讀
- ssh框架 2016-09-30
- 阿里移動(dòng)安全 [無線安全]玩轉(zhuǎn)無線電——不安全的藍(lán)牙鎖 2017-07-26
- 消息隊(duì)列NetMQ 原理分析4-Socket、Session、Option和Pipe 2024-03-26
- Selective Search for Object Recognition 論文筆記【圖片目標(biāo)分割】 2017-07-26
- 詞向量-LRWE模型-更好地識(shí)別反義詞同義詞 2017-07-26
- 從棧不平衡問題 理解 calling convention 2017-07-26
- php imagemagick 處理 圖片剪切、壓縮、合并、插入文本、背景色透明 2017-07-26
- Swift實(shí)現(xiàn)JSON轉(zhuǎn)Model - HandyJSON使用講解 2017-07-26
- 阿里移動(dòng)安全 Android端惡意鎖屏勒索應(yīng)用分析 2017-07-26
- 集合結(jié)合數(shù)據(jù)結(jié)構(gòu)來看看(二) 2017-07-26