拓撲距離和機架感知+_Mvn回顧+_NN和2N之間的關係+DN原理和校驗原理
這是上一節的流程圖:
1、網路拓撲距離最近,決定上一節中那三個datanode誰是第一個
例如N!到N2的距離就通過數直線的方法獲得就是2別的距離也是這樣求出來。
2、選出第一個最近的節點之後,怎樣選第二個和第三個啊
第二個是同機架的不同節點。第三個是不同機架的不用節點。不能跨越中心。(副本節點的儲存命名為機架感知)
3、maven是什麼:
他是管理專案的工具,在專案解決匯入依賴存在jar衝突的問題,以及專案中的依賴的問題,
4、NN和2N的區別
NN是namenode。2N是secondarynamenode
簡單說一下類似的:
Redis持久化分為:RDB和AOF
RDB:持久化的過程比較長,一定的時間或者操作量在生成RDB,載入比較快,安全性比較低
AOF:記錄了每一條的操作,安全性高,佔的空間比較大
現在說說HDFS:
假設Hsdoop中有類RDB和(Fsimage用起來時間短)類AOF(edits.log記錄了所有的問題,用起來時間長)
2N中幫助hadoop把edits.log合併成Fsimage。流程圖如下:
5、DN原理和校驗原理
圖解如下:
判斷datanode死亡的依據:
神魔是校驗和:經過網路傳輸的過程,資料可能不可靠了。
如下是DataNode節點保證資料完整性的方法。。
1)當DataNode讀取Block的時候,它會計算CheckSum.。
2)如果計算後的CheckSum,與Block建立時值不- -樣,說明Block已經損壞。。
4) DataNode 在其檔案建立後周期驗證CheckSum,如圖一下;
相關重要知識點總結:
1、hadoop fs,hadoop dfs以及hdfs dfs區別
-
hadoop fs:
意思是說該命令可以用於其他檔案系統,不止是hdfs檔案系統內,也就是說該命令的使用範圍更廣 -
hadoop dfs
專門針對hdfs分散式檔案系統 -
hdfs dfs
和上面的命令作用相同,相比於上面的命令更為推薦,並且當使用hadoop dfs時內部會被轉為hdfs dfs命令
2、hadoop修改檔案副本數
上傳檔案
命令上傳檔案,副本數為1
1
|
hadoop dfs -D dfs.replication=1 -put xxx /xxx
|
檢查單個檔案的副本數
1
|
$ hadoop fsck -locations /xxx
|
檢視整的dfs上的檔案副本數
1
|
$ hadoop fsck -locations
|
修改已經存在的檔案副本數
- 修改已儲存檔案的副本數量,為2副本
1
|
hadoop dfs -setrep 2 /shining/test.txt
|
- 對資料夾中的所有檔案都修改副本
1
|
hadoop dfs -setrep 2 -R /shining/
|
- 選項是-w,表示等待副本操作結束才退出命令
1
|
hadoop dfs -setrep -R -w 1 /shining
|