使用java api操作Hadoop檔案

2021-06-14 02:12:41 字數 2103 閱讀 5606

hadoop中關於檔案操作類基本上全部是在org.apache.hadoop.fs包中,這些api能夠支援的操作包含:開啟檔案,讀寫檔案,刪除檔案等。

hadoop類庫中最終面向使用者提供的介面類是filesystem,該類是個抽象類,只能通過來類的get方法得到具體類。get方法存在幾個過載版本,常用的是這個:

static filesystem get(configuration conf); 

該類封裝了幾乎所有的檔案操作,例如mkdir,delete等。綜上基本上可以得出操作檔案的程式庫框架:

operator()

另外需要注意的是,如果想要執行下面的程式的話,需要將程式達成jar包,然後通過hadoop jar的形式執行,這種方法比較麻煩,另外一種方法就是安裝eclipse的hadoop外掛程式,這樣能夠很多打包的時間。

/*

* upload the local file to the hds

* notice that the path is full like /tmp/test.c

*/public static void uploadlocalfile2hdfs(string s, string d)

throws ioexception

/*

* create a new file in the hdfs.

* notice that the tocreatefilepath is the full path

* and write the content to the hdfs file.

*/public static void createnewhdfsfile(string tocreatefilepath, string content) throws ioexception

/*

* delete the hdfs file

* notice that the dst is the full path name

*/public static boolean deletehdfsfile(string dst) throws ioexception

/** read the hdfs file content

* notice that the dst is the full path name

*/public static byte readhdfsfile(string dst) throws exception

else

}

/** make a new dir in the hdfs

* * the dir may like '/tmp/testdir'

*/public static void mkdir(string dir) throws ioexception

/** delete a dir in the hdfs

* * dir may like '/tmp/testdir'

*/public static void deletedir(string dir) throws ioexception

public static void listall(string dir) throws ioexception

else if (stats[i].isdirectory())

else if(stats[i].issymlink())

}fs.close();

}

注:

還有一篇比較好的文章: 注:

filesystem fs = filesystem.get(uri.create("hdfs://localhost:9000/"),conf);

//而後,比如建立目錄,也要加上hdfs到url,如:

fs.mkdir("hdfs://localhost:9000/user/wuchong/input");

//便能在hdfs上建立目錄

使用java api操作Hadoop檔案

1.概述 2.檔案操作 2.1 上傳本地檔案到hadoop fs 2.2 在hadoop fs中新建檔案,並寫入 2.3 刪除hadoop fs上的檔案 2.4 讀取檔案 3.目錄操作 3.1 在hadoop fs上建立目錄 3.2 刪除目錄 3.3 讀取某個目錄下的所有檔案 hadoop中關於檔案...

使用Apache Ambari管理Hadoop

隨著hadoop越來越普及,對合適的管理平台的需求成為當前亟待解決的問題。已經有幾個商業性的hadoop管理平台,如cloudera enterprise manager,但apache ambari是第乙個開源實現。apache ambari是一種基於web的工具,支援apache hadoop集...

Hadoop 04 使用java api操作

1.概述 2.檔案操作 2.1 上傳本地檔案到hadoop fs 2.2 在hadoop fs中新建檔案,並寫入 2.3 刪除hadoop fs上的檔案 2.4 讀取檔案 3.目錄操作 3.1 在hadoop fs上建立目錄 3.2 刪除目錄 3.3 讀取某個目錄下的所有檔案 hadoop中關於檔案...