HDFS客戶端搭建與Java API操作HDFS

2021-08-29 01:10:48 字數 1376 閱讀 1232

為什麼不建議使用集群內操作?

如果每一次上傳檔案都是選擇某一台dn作為客戶端,就會導致這個節點上的磁碟以及網路i0負載超過其他的節點,久而久之這個節點的磁碟以及網絡卡效能遠遠低於其他節點,從而會導致資料的傾斜問題。

配置集群客戶端的步驟:

1、找一台新的伺服器,這台伺服器必須能夠與集群通訊

2、將配置好的安裝包原封不動的拷貝到新的伺服器

3、配置環境變數方便操作hdfs集群

1.配置hadoop環境變數以及使用者名稱

新增環境變數hadoop_home,值填寫hadoop的解壓目錄。

新增環境變數hadoop_user_name,值填寫root,這是為了避免出現無許可權操作檔案的問題。

2.配置系統的hosts檔案

修改c:\windows/system32/drivers/etc/hosts

新增node節點對應的ip

3.配置eclipse外掛程式

在eclipse安裝目錄dropins建立plugins目錄,將hadoop-eclipse-plugin-2.6.0.jar放在裡面。

重啟eclipse。

在eclipse中切換mapreduce檢視,配置namenode所在伺服器以及埠資訊:

4.即可在eclipse中看到hdfs中的檔案列表

5.新建乙個專案,匯入jar包,並新增到classpath。

將hadoop安裝目錄中的hdfs-site.xml、core-site.xml放到source目錄下。

6.操作hdfs

#列出hdfs檔案列表

configuration conf = new configuration();

filesystem fs = filesystem.get(conf);

filestatus statu = fs.liststatus(new path(args[0]));

path listpaths=fileutil.stat2paths(statu);

for(path p:listpaths)

其它api可以參考

hdfs客戶端操作

hdfs的客戶端有多種形式 網頁形式 命令列形式 客戶端在 執行,沒有約束,只要執行客戶端的機器能夠跟hdfs集群聯網 檔案的切塊大小和儲存的副本數量,都是由客戶端決定!所謂的由客戶端決定,是通過配置引數來定的 hdfs的客戶端會讀以下兩個引數,來決定切塊大小 副本數量 切塊大小的引數 dfs.bl...

hdfs客戶端操作

這裡hdfs客戶端指的是eclipse 一 獲取hadoop安裝包解壓後進入share資料夾裡面的所有jar包 二 這裡如果你客戶端 eclipse所在機器 是win7,需要編譯hadoop原始碼來適應你的機器。三 配置hadoop home環境變數和path 四 拷貝win7電腦上的檔案到虛擬機器...

HDFS 客戶端入門 API

public class doitutils public class uploaddemo public class downdemo public class rename else 改名後的檔案 path path new path b.txt 將檔案移動到指定資料夾下 path path2 ...