HDFS客戶端環境準備
阿新 • • 發佈:2020-07-12
一、下載Hadoop jar包至非中文路徑
-
下載連結:https://hadoop.apache.org/releases.html
-
解壓至非中文路徑
二、配置Hadoop環境變數
- 配置HADOOP_HOME環境變數
- 配置Path環境變數
三、建立一個Maven工程
-
建立一個名為
HdfsClientDemo
的Maven
工程 -
在
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執行程式