1.分布式檔案系統概念:
隨著資料量越來越多,在乙個作業系統管轄的範圍存不下了,那麼就分配到更多的作業系統管理的磁碟中,但是不方便管理和維護,因此迫切需要一種系統來管理多台機器上的檔案,這就是分布式檔案管理系統。
2.分布式檔案系統是一種允許檔案通過網路在多台主機上分享的檔案系統,可讓多機器上的多使用者分享檔案和儲存空間。
3.分布式檔案系統具有通透性,讓實際上是通過網路來訪問檔案的動作,由程式與使用者看來,就像是訪問本地的磁碟一般。
4.分布式檔案系統也具有容錯性,即使系統中有某些節點離線,整體來說系統仍然可以持續運作而不會有資料損失。
5.分布式檔案管理系統很多,hdfs只是其中一種。適用於一次寫入多次查詢的情況,不支援併發寫情況,小檔案不合適。
hdfs的shell操作:
例如查詢hadoop根目錄下內容:
簡寫方式為:hadoop fs -ls /
實際訪問的路徑是:hadoop fs -ls hdfs://hadoop1:9000/
因為core-site.xml配置檔案中配置了預設根目錄
fs.default.name
hdfs://hadoop1:9000
change your own hostname
hadoop.tmp.dir
/usr/local/hadoop/tmp
hdfs fs命令 可選的引數:
-help [cmd] //顯示命令的幫助資訊
-ls(r) //顯示當前目錄下所有檔案
-du(s) //顯示目錄中所有檔案大小
-count[-q] //顯示目錄中檔案數量
-mv //移動多個檔案到目標目錄
-cp //複製多個檔案到目標目錄
-rm(r) //刪除檔案(夾)
-put //本地檔案複製到hdfs
-copyfromlocal //同put
-movefromlocal //從本地檔案移動到hdfs
-get [-ignorecrc] //複製檔案到本地,可以忽略crc校驗
-getmerge //將源目錄中的所有檔案排序合併到乙個檔案中
-cat //在終端顯示檔案內容
-text //在終端顯示檔案內容
-copytolocal [-ignorecrc] //複製到本地
-movetolocal
-mkdir //建立資料夾
-touchz //建立乙個空檔案
hdfs的兩大核心:namenode和datanode
namenode是整個檔案系統的管理節點。它維護著整個檔案系統的檔案目錄樹,檔案/目錄的元資訊和每個檔案對應的資料塊列表。接收使用者的操作請求。
namenode中包含核心的檔案:
1.fsimage:元資料映象檔案。儲存某一時段namenode記憶體元資料資訊。
2.edits:操作日誌檔案。
3.fstime:儲存最近一次checkpoint的時間
datanode提供真實的檔案資料儲存服務
1.將檔案按大小分成若干個block,每個block的大小預設均為64m。如果檔案大小小於乙個快的大小,則占用磁碟大小為實際檔案大小而不是乙個快的大小(預設64m)。
2.分割的每個block都有副本block,預設3個副本。
secondarynamenode
執行過程:
2.然後把二者合併,生成新的fsimage,在本地儲存,並將其推送到namenode,同時重置namenode的edits.
預設在安裝在namenode節點上,但這樣...不安全!
如果namenode宕機了,因為secondarynamenode上有fsimage副本,也可以恢復hadoop hdfs系統執行,但是edits中尚未合併的內容將丟失。
Hadoop1 1 2開發筆記(二)
網上講的用ant編譯eclipse hadoop plugin外掛程式,都講的很複雜,對於我這樣的菜鳥 經得起這麼多折騰,本人經過實踐,寫出我的編譯經驗 修改 src contrib目錄的build contrib.xml檔案,新增eclipse路徑和hadoop版本資訊 property name...
Hadoop學習筆記 3
從jar包中提取預設配置 master node就是name node master node會通過ssh將命令傳送到其他data node。分離啟動secondarynamenode 配置檔案hdfs site.xml,在node3上啟動secondarynamenode程序。將hdfs site...
hadoop學習筆記3 yarn
1.管理多種大資料框架spark hive等 使得不同框架之間資源共享,減少資源浪費 2.誕生原因 為了執行多種框架,比如想引入spark計算引擎,才導致了yarn的誕生 3.yarn縮寫 yet another resource negotiator 協作 使得 on yarn 如spark on...