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操作
********************