Google File System 学习笔记
?
二、保存文件的方式
1、保存小文件:磁盤(pán)中分塊,每個(gè)block大小為1024Byte,每個(gè)文件的索引由塊號(hào)+偏置組成
2、保存大文件:把block換成chunk,每個(gè)chunk為64MB.
3、保存超大數(shù)據(jù):把chunk放在不同的chunk服務(wù)器上,有一個(gè)Master服務(wù)器存放所有chunk所在的ChunkServer編號(hào)。每個(gè)chunkserver保存每個(gè)chunk在其中的偏移量。
?
三、ChunkServer和Master服務(wù)器
1、如何發(fā)現(xiàn)數(shù)據(jù)損壞
-
每一個(gè)block都保存32bit校驗(yàn)信息
2、減少ChunkServer掛掉帶來(lái)的損失
-
保存額外兩個(gè)chunk副本
-
選擇硬盤(pán)利用率低的但是不能把新的chunk都寫(xiě)在一個(gè)硬盤(pán)上,避免形成熱點(diǎn)
-
2+1:跨數(shù)據(jù)中心,在一個(gè)數(shù)據(jù)中心中放在不同的機(jī)架上
3、chunkserver損壞的解決方法:
-
向master報(bào)告損壞的數(shù)據(jù)塊
-
master返回其他副本的chunkserver號(hào)
-
向最近的副本請(qǐng)求受損chunk
4、如何發(fā)現(xiàn)chunkserver掛掉
心跳:定時(shí)向master報(bào)告存活
?
5、應(yīng)對(duì)熱點(diǎn)
?
四、讀文件過(guò)程
?
五、寫(xiě)文件過(guò)程
向Master詢(xún)問(wèn)chunkserver位置
向最近的chunkserver寫(xiě)文件
chunkserver之間高速同步(只寫(xiě)在cache里)
由主chunkserver發(fā)出寫(xiě)命令
副本通知主chunkserver寫(xiě)成功
通知應(yīng)用寫(xiě)成功
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/pihaochen/p/10968387.html
總結(jié)
以上是生活随笔為你收集整理的Google File System 学习笔记的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【dfs】Election of Evi
- 下一篇: wordpress后台无法登录问题