1. 程式人生 > >hadoop學習筆記之hdfs

hadoop學習筆記之hdfs

hadoop distributed file system

(1)hdfs的架構和原理:

hdfs採用master/slave的結構來儲存資料,這種架構主要有四個部分組成:client、namenode、datanode、secondary namenode;

client:就是客戶端

1、檔案切分。在上傳檔案的時候,client將檔案切分為一個個的block。然後進行儲存。

2、和namenode進行互動,獲取檔案的儲存資訊。

3、和datanode進行互動,讀或寫資料。

4、client可以提供一些命令來管理和訪問hdfs

namenode:就是master,是元資料的管理者

1、管理hdfs的名稱空間。

2、管理block的對映資訊。

3、配置副本策略。

4、處理客戶端提出的請求。

datanode:就是slave,完成namenode下達的命令

1、儲存資料

2、進行讀寫操作

secondary namenode:namenode的備份

************************************

hdfs的常用shell命令:

檢視目錄下的檔案列表:

hdfs dfs -ls [option]

檢視文字檔案:

hdfs hfs -cat [option]

建立目錄:

hdfs dfs -mkdir [option]

刪除目錄:

hdfs dfs -rm [option]

本地和hfds的檔案操作:

本地->hdfs: hdfs dfs -copyFromLocal(put) [option1] [option2]

hdfs->本地: hdfs dfs -copyToLocal(get) [option1] [option2]

檢視壓縮檔案的內容:

hdfs dfs -text [option] | more

檢視檔案的大小:

hfds dfs -du -h [option]

建立檔案:

hdfs dfs -touchz [option]

檢視命令的幫助資訊:

hdfs dfs -usage [option]

**********************************************

hdfs在使用命令列刪除檔案的時候,被刪除的檔案並不會立即消失,而是會被放在每個使用者都有的.trash的一個目錄下,如想回復,則在那裡邊mv出來即可。如不作操作,則會在系統設定的預設時間過後清除,如想直接刪除,則加上引數 -skipTrash 即可直接刪除。

**********************************************

關於hdfs檔案儲存的一些原理:

1、hdfs的

**********************************************

(2)hdfs的API應用

流程/步驟:

載入配置:

Configuration conf = new Configuration();

獲得hdfs叢集物件的引用:

FileSystem fs = FileSystem.get(conf);

將給定的路徑封裝成Path物件:

Path path = new Path("[option]");

********************

對hdfs的資料進行IO操作

********************