HDFS(一) 概述以及常用命令總結

2021-10-12 20:34:53 字數 3451 閱讀 9020

----尚矽谷學習筆記整理

適合一次寫入、多次讀出的場景,且不支援檔案的修改,適合用來做資料分析。

1、優點

2、缺點

1、client :客戶端 

1)檔案切分、檔案上傳hdfs時,客戶端將檔案切分成乙個乙個block,然後進行上傳

2)與namenode節點互動,獲取檔案的位置資訊

3)與datanode節點互動,讀取寫入資料

4)提供一些命令管理hdfs,比如namenode格式化

5)訪問hdfs,增刪改查

2、namenode:管理者

1)管理hdfs的命名空間

2)配置副本策略

3)管理block對映資訊

4)處理客戶端請求

3、datanode:執行者

1)儲存實際的資料塊

2)執行資料塊的讀寫操作

4、secondary namenode:非熱備,輔助namenode,分擔其工作量,比如定期合併fsimage和edits,並推送給namenode,緊急情況下可輔助恢復namenode

大小設定主要取決於:磁碟傳輸速率

為什麼不能設定過大或者過小?

1、hdfs的塊設定太小,會增加定址時間,程式一直在找塊的開始位置

2、如果塊設定的太大,從磁碟傳輸資料的時間會明顯大於定位這個塊開始的位置所需時間,導致程式處理這塊資料很慢。

1、啟動hadoop集群

2、-help:輸出命令引數

3、建立目錄、檢視目錄

4、列出/user目錄下的所有目錄和檔案

hadoop  dfs  -ls  /user

5、列出/user目錄及其子目錄下的所有檔案(謹慎使用)

hadoop dfs -ls -r /user

6、建立/soft目錄

hadoop dfs -mkdir /soft

7、建立多級目錄

8、將本地的wordcount.jar檔案上傳到/wordcount目錄下

hadoop dfs -put wordcount.jar /wordcount

hadoop dfs -get /words.txt 

10、將/stu/students.txt檔案拷貝到本地

hadoop dfs -copytolocal /stu/students.txt

11、將word.txt檔案拷貝到/wordcount/input/目錄

hadoop dfs -copyfromlocal word.txt /wordcount/input 

12、將word.txt檔案從本地移動到/wordcount/input/目錄下

hadoop dfs -movefromlocal word.txt /wordcount/input/

13、將/stu/students.txt拷貝乙份為/stu/students.txt.bak

hadoop dfs -cp /stu/students.txt /stu/students.txt.bak 

14、將/flume/tailout/目錄下的子目錄或檔案都拷貝到/logs目錄(如果此目錄不存在會建立)下

hadoop dfs -cp /flume/tailout/ /logs 

15、將/word.txt檔案重新命名為/words.txt

hadoop dfs -mv /word.txt /words.txt

16、將/words.txt檔案移動到/wordcount/input/目錄下

hadoop dfs -mv /words.txt /wordcount/input/

17、將/ws目錄以及子目錄和檔案都刪除(謹慎使用)

hadoop dfs -rm -r /ws 

18、刪除以"xbs-"開頭的目錄及其子目錄

hadoop dfs -rm -r /xbs-*

19、將/wordcount/output2/目錄下的a.txt檔案刪除

hadoop dfs -rm /wordcount/output2/a.txt 

20、將/wordcount/input/目錄下面的所有檔案都刪除

hadoop dfs -rm /wordcount/input/*

21、檢視hdfs集群的磁碟空間使用情況

hadoop dfs -df -h 

22、檢視/word.txt檔案的內容

hadoop dfs -cat /word.txt 

23、將name.txt檔案中的內容新增到/wordcount/input/words.txt檔案中

24、動態檢視/wordcount/input/words.txt檔案的內容

hadoop dfs -tail -f /wordcount/input/words.txt

25、統計/flume目錄總大小

hadoop dfs -du -s -h /flume

26、分別統計/flume目錄下各個子目錄(或檔案)大小

hadoop dfs -du -s -h /flume/*

27、執行jar包中的程式

//hadoop jar + 要執行的jar包 + 要執行的類 + 輸入目錄 + 輸出目錄

hadoop jar wordcount.jar com.xuebusi.hadoop.mr.wordcountdriver /wordcount/input /wordcount/out

hdfs常用命令總結

hadoop fs 類似linux命令 cat使用方法 hadoop fs cat uri uri 將路徑指定檔案的內容輸出到stdout。示例 hadoop fs cat hdfs host1 port1 file1 hdfs host2 port2 file2 hadoop fs cat fil...

hdfs常用命令總結

命令 說明hadoop fs mkdir 建立hdfs目錄 hadoop fs ls 列出hdfs目錄 hadoop fs copyfromlocal 複製本地檔案到hdfs目錄 hadoop fs put 複製本地檔案到hdfs目錄 hadoop fs cat 檢視hdfs目錄下檔案內容 hado...

HDFS常用命令

選項名稱 使用格式 含義 ls ls 路徑 檢視指定路徑的當前目錄結構 lsr lsr 路徑 遞迴檢視指定路徑的目錄結構 du du 路徑 統計目錄下個檔案大小 dus dus 路徑 匯 計目錄下檔案 夾 大小 count count q 路徑 統計檔案 夾 數量 mv mv 源路徑 目的路徑 移動...