對大數(shù)據(jù)HDFS文件的管理一般有如下幾種方式:
- 通過服務器端linux命令行
- 通過HDFS Web端
- 通過本地客戶端
使用linux命令行抑或Web端來管理HDFS文件系統(tǒng),固而簡單方便,但通過在客戶端使用腳本語言能夠?qū)崿F(xiàn)對Hadoop更加靈活多樣的操作,比如實時參數(shù)配置(腳本語言里的參數(shù)配置優(yōu)先級最高),循環(huán)處理文件等。
前置準備在準備Hadoop客戶端API之前,需要有已搭建好的 完全分布式集群 ,集群的搭建可以參考
Hadoop完全分布式服務器集群搭建
zookeeper、hadoop集群已經(jīng)啟動并正常運行
電腦(以mac為例)已安裝配置jdk環(huán)境,要求1.8版本或以上
已安裝 IntelliJ IDEA 軟件
IDEA官方下載
下載專業(yè)版,可以臨時使用下面提供的激活碼進行學習,IDEA使用體驗超好,推薦大家購買支持正版軟件
IDEA臨時激活碼
安裝配置好的maven環(huán)境,參考
maven的安裝配置以及在IDEA中的使用
主機名配置
#在終端里修改hosts
vi /etc/hosts
#添加主機名,比如我的集群有三個節(jié)點:node1、node2、node3
172.19.0.3 node1
172.19.0.4 node2
172.19.0.5 node3
Mac的Hadoop客戶端無需下載Hadoop及配置環(huán)境變量,在IDEA中maven會下載連接需要的依賴包。
填寫 GroupId 和 ArtifactId ,完成Maven項目的創(chuàng)建
項目創(chuàng)建后,一般會自動打開 pom.xml 文件
注意按上面maven配置文章里在idea的 偏好設置 里完成對maven環(huán)境的配置
依賴包的配置:在 pom.xml 文件中的 properties 標簽下面添加以下依賴包代碼。代碼添加后會自動聯(lián)網(wǎng)下載所需的依賴包,可以在上面maven 本地倉庫 配置的路徑下查看,成功下載所有依賴包后,pom.xml 文件代碼中將沒有紅色字體
org.apache.hadoop hadoop-client 3.3.0 junit junit 4.12 org.slf4j slf4j-log4j12 1.7.30
在IDEA的 src-main-resources 路徑下創(chuàng)建一個文件 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
在IDEA的 src-main-java 路徑下創(chuàng)建包 com.axl.hdfs,然后在這個包里創(chuàng)建類 HdfsClient ,在類文件里面填入以下代碼
package com.axl.hdfs;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.junit.Test;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
public class HdfsClient {@Test
public void testMkdirs() throws IOException, URISyntaxException, InterruptedException {//連接集群的namenode地址,node1要修改成自己集群的節(jié)點名稱
URI uri = new URI("hdfs://node1:8020");
//創(chuàng)建配置文件
Configuration configuration = new Configuration();
//指定用戶
String user = "root";
//獲取客戶端對象
FileSystem fs = FileSystem.get(uri,configuration,user);
//創(chuàng)建測試文件夾
fs.mkdirs(new Path("/test"));
//關閉
fs.close();
}
}
執(zhí)行以上代碼,在 http://node1:9870 Web文件系統(tǒng)里查看,可以看到文件夾通過客戶端成功創(chuàng)建
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調(diào)度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
網(wǎng)站欄目:本地配置hadoop客戶端操作HDFS-創(chuàng)新互聯(lián)
標題網(wǎng)址:http://jinyejixie.com/article20/digico.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、網(wǎng)站內(nèi)鏈、品牌網(wǎng)站建設、網(wǎng)頁設計公司、搜索引擎優(yōu)化、域名注冊
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容