1. 程式人生 > 實用技巧 >HDFS客戶端環境準備

HDFS客戶端環境準備

一、下載Hadoop jar包至非中文路徑

  1. 下載連結:https://hadoop.apache.org/releases.html

  2. 解壓至非中文路徑

二、配置Hadoop環境變數

    1. 配置HADOOP_HOME環境變數
    2. 配置Path環境變數

三、建立一個Maven工程

  1. 建立一個名為HdfsClientDemoMaven工程

  2. pom.xml中匯入相應的依賴

<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> <dependency> <groupId>jdk.tools</groupId> <artifactId>jdk.tools</artifactId> <version>1.8</version> <scope>system</scope> <systemPath>${JAVA_HOME}/lib/tools.jar</systemPath> </dependency> </dependencies>

在專案的src/main/resources目錄下,新建一個檔案,命名為log4j.properties,在檔案中填入

log4j.rootLogger=INFO, stdout

log4j.appender.stdout=org.apache.log4j.ConsoleAppender

log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n

log4j.appender.logfile=org.apache.log4j.FileAppender

log4j.appender.logfile.File=target/spring.log

log4j.appender.logfile.layout=org.apache.log4j.PatternLayout

log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

4建立包名com.atguigu.hdfs

5 建立HdfsClient

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, "atguigu");
        
        // 2 建立目錄
        fs.mkdirs(new Path("/1108/daxian/banzhang"));
        
        // 3 關閉資源
        fs.close();
    }
}

6執行程式