叢集HDFS檔案操作(客戶端開發java)
阿新 • • 發佈:2018-12-28
叢集HDFS檔案操作(客戶端開.發java)
1 環境
1.1 win10專業版下編譯過的hadoop jar包
1.2 配置HADOOP_HOME環境變數
1.3 配置Path環境變數
2.測試程式
2.1建立一個Maven工程(博主的工程名為:HdfsTest)
2.2匯入相應的依賴座標
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>RELEASE</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.8.2</version>
</dependency>
< dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-client</artifactId>
<version>2.7.2</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.7.2</version>
</dependency>
</dependencies>
2.3 建立包名(com.lsl.hdfs)和類(HdfsClient)寫一個測試方方法testMkdirs
2.3.1 獲取檔案系統
Configuration configuration = new Configuration();
2.3.2 配置在叢集上執行
//hadoop102如果沒配置Windows的對映是訪問不到的,可以寫節點的ip地址
configuration.set("fs.defaultFS", "hdfs://hadoop102:9000");
FileSystem fs = FileSystem.get(configuration);
2.3.3 建立目錄
fs.mkdirs(new Path("/daxian/nide"));
2.3.4 關閉資源
fs.close();
2.3.5 總程式碼
public class HdfsClient{
@Test
public void testMkdirs() throws IOException, InterruptedException, URISyntaxException{
// 1 獲取檔案系統
Configuration configuration = new Configuration();
// 配置在叢集上執行
// configuration.set("fs.defaultFS", "hdfs://hadoop102:9000");
// FileSystem fs = FileSystem.get(configuration);
FileSystem fs = FileSystem.get(new URI("hdfs://hadoop102:9000"), configuration, "lsl");
// 2 建立目錄
fs.mkdirs(new Path("/daxian/nide"));
// 3 關閉資源
fs.close();
}
}
2.4 執行
1.右擊類名 Run As ==》 Run Configurations…
2.自定義專案名=>Arguments=>VM arguments
3.最後在叢集上檢視資料夾是否建立成功
版權宣告:本部落格為記錄本人自學感悟,轉載需註明出處!
https://me.csdn.net/qq_39657909