通過java操作Hadoop中zookeeper和HDFS的命令,同如Shell
通過java操作zookeeper的命令——
配置環境變數(之前在java中配置過的,因為在cognos的時候要把java的環境變數刪除掉,所以現在要把java的環境變數恢復!配置環境變數.docx 因cognos刪除的環境配置.docx)。。。
首先要在新建的專案project裡匯入相關的包右鍵>build path>user library>new...準本好後
建包-類-
★建立節點
zk.create("/zoo2", "myData2".getBytes(), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
★刪除節點
zk.delete("/zoo2", -1);
★修改節點
★檢視操作是否成功
★檢視節點狀態
System.out.println(" 節點狀態: [" + zk.exists("/zoo2", false) + "]");
注意:
很大的一個問題就是監視!
通過java操作Hadoop中HDFS的命令——
通過java操作hadoop中HDFS的命令
複習一下平常的命令:]$hadoop fs-ls
一定要配置環境變數:
僅此而已,不用再path中在配。。
在java的工具eclipse中像上午那樣,將.jar導進去
包括兩個,建兩個分別對應的放進去,完成。。
程式碼部分:
1.導相關的包,直接複製的
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.FsStatus;
import org.apache.hadoop.fs.Path;
2.正文:建立相關聯絡:
設定訪問的使用者和密碼
System.setProperty("HADOOP_USER_NAME", "Teacher");
System.setProperty("HADOOP_USER_PASSWORD", "******");
通常會遇到許可權的問題,很多時候Student的使用者沒有許可權,在Teacher下就可以走下去。。
Configuration conf=new Configuration();
FileSystem fs = FileSystem.newInstance(new URI("hdfs://192.168.20.2**:9000"),conf);
★讀取根目錄下的檔案
Path hdfspath=new Path("/");
FileStatus[] listStatus = fs.listStatus(hdfspath);
for (FileStatus f : listStatus) { System.out.println(f.getPath().getName()+"......."+f.getPath());
};
//對應在客戶端的hadoop下的檢視步驟:hadoop]$hadoop fs -ls
//對應在web的hadoop下的檢視步驟:ip:50070>Browse the file system>/根目錄下 GO
★建立資料夾
fs.mkdirs(new Path("/tmp2"));
★刪除資料夾
fs.delete(new Path("/tmp2"));
★將本地的檔案上傳(複製copy)到HDFS分散式檔案系統上去
fs.copyFromLocalFile(new Path("F:\\lalaala.txt"), new Path("/tmp"));
★將HDFS分散式檔案系統上的檔案下載(複製copy)到本地
fs.copyToLocalFile(new Path("/tmp/hive"), new Path("F:\\"));
注意:tmp的目錄下前面要有/
hive和hive.txt是有區別的;
上傳和下載的過程其實就是(從哪兒)copy(到哪兒)的過程;
為了每次跟直觀的看到操作結果是否成功,可寫一句列印;
System.out.println("....成功.....");
在web端的驗證更快,可直接在web輸入網址進行驗證;
某盤下的是\\ ;
目錄下的目錄時// ;
package com.hdhdfs; import java.io.FileOutputStream; import java.io.IOException; import java.io.OutputStream; import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.FsStatus; import org.apache.hadoop.fs.Path; public class HDFSDemo { public static void main(String[] args) throws Exception { //1.設定訪問的使用者名稱和密碼 System.setProperty("HADOOP_USER_NAME", "Teacher"); System.setProperty("HADOOP_USER_PASSWORD", "**"); Configuration conf=new Configuration(); FileSystem fs = FileSystem.newInstance(new URI("hdfs://192.168.20.**:**00"),conf); //讀取根目錄下的檔案 Path hdfspath=new Path("/"); FileStatus[] listStatus = fs.listStatus(hdfspath); for (FileStatus f : listStatus) { System.out.println(f.getPath().getName()+"......."+f.getPath()); //對應在客戶端的hadoop下的檢視步驟:hadoop]$hadoop fs -ls //對應在web的hadoop下的檢視步驟:ip:50070>Browse the file system>/根目錄下 GO } //建立資料夾 //fs.mkdirs(new Path("/tmp2")); //刪除檔案 //fs.delete(new Path("/tmp2")); //將本地的檔案上傳到HDFS分散式檔案系統上去 //fs.copyFromLocalFile(new Path("F:\\lalaala.txt"), new Path("/tmp")); //將HDFS分散式檔案系統上的檔案下載到本地 fs.copyToLocalFile(new Path("/tmp/hive"), new Path("F:\\")); System.out.println("....成功....."); // } }
注意:每執行一個命令時候將其他註釋掉,不要影響!
相關推薦
通過java操作Hadoop中zookeeper和HDFS的命令,同如Shell
通過java操作zookeeper的命令——配置環境變數(之前在java中配置過的,因為在cognos的時候要把java的環境變數刪除掉,所以現在要把java的環境變數恢復!配置環境變數.docx 因cognos刪除的環境配置.docx)。。。首先要在新建的專案project
介紹hadoop中的hadoop和hdfs命令
命令行 註意 property 密碼 編輯 format gety node job 有些hive安裝文檔提到了hdfs dfs -mkdir ,也就是說hdfs也是可以用的,但在2.8.0中已經不那麽處理了,之所以還可以使用,是為了向下兼容. 本文簡要介紹一下有關的命令,
【zookeeper】zookeeper的基本命令及通過Java操作zk
接上講,這節主要講一下zookeeper的常用命令和如何使用java操作zk. 首先連線zookeeper 客戶端: #進入zookeeper安裝目錄下bin目錄,啟動zk客戶端 cd /usr/local/zookeeper/bin ./zkCli.sh 然後不知道zk的常用命令?沒
hadoop中常用的hdfs代碼操作
ide sys equals 技術分享 ext new imp equal 大小 一:向HDFS中上傳任意文本文件,如果指定的文件在HDFS中已經存在,由用戶指定是追加到原有文件末尾還是覆蓋原有的文件: 1 package hadoopTest; 2
C#、JAVA操作Hadoop(HDFS、Map/Reduce)真實過程概述。元件、原始碼下載。無法解決:Response status code does not indicate success: 500。
一、Hadoop環境配置概述 三臺虛擬機器,作業系統為:Ubuntu 16.04。 Hadoop版本:2.7.2 NameNode:192.168.72.132 DataNode:192.168.72.135,192.168.72.136
java操作hadoop的hdfs檔案工具類
package com.cictec.hadoop; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.*; import org.apache.hadoop.hdfs.Dist
Java sanner類中next和nextLine的區別
浮點 驗證 courier 判斷 回車 nbsp () oid 輸入 next() 與 nextLine() 區別 next(): 1、一定要讀取到有效字符後才可以結束輸入。 2、對輸入有效字符之前遇到的空白,next() 方法會自動將其去掉。 3、只有輸入有效字符後才將其
mongodb通過JAVA 操作
根據 使用 mongodb,總結了一些簡單的操作方法。希望幫助大家。 1.連線 mongodb://根據使用者名稱,密碼進行連線 mongodb 資料庫 public class MongoManager{ private static MongoDatabase mon
hadoop中map和reduce的數量設定問題
map和reduce是hadoop的核心功能,hadoop正是通過多個map和reduce的並行執行來實現任務的分散式平行計算,從這個觀點來看,如果將map和reduce的數量設定為1,那麼使用者的任務就沒有並行執行,但是map和reduce的數量也不能過多,數量過多雖然
玩轉大資料之——通過java操作office/wps的 EXCEL
操作Office文件,要用到apache公司的一個工具包: poi-3.7-20101029.jar poi外掛的使用方式類似dom技術 不同版本: 接下來進行演示功能: 1.用純Java技術實現建立一個名為a.xls的檔案(工作薄), 在其中新
Hadoop中如何從hdfs中匯入資料到hbase中
import java.io.IOException; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop
關於Java File類中 mkdir() 和 mkdirs() 方法的區別和使用方法
boolean mkdirs() 方法可以建立此抽象路徑的指定目錄,如在D盤建立一個D:\\JavaStudy\\FileStudy,即使這兩個目錄並不存在也可以一併進行建立。可用於建立多級目錄。
java在系統中建立和刪除含有路徑的檔案
package com.apk.openUser.utils; import java.io.File; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.i
ES的java客戶端中SearchRequest和SearchResponse的序列化和反序列化
Elastcsearch官方提供了一個elasticsearch-rest-high-level-client,作者在寫bug的時候需要將其中的ActionRequest(子類包括SearchRequest、IndexRequest、UpdateRequest等)和Searc
9、Hadoop配置檔案和HDFS垃圾回收
配置檔案 預設配置檔案:相對應的jar包中 core-default.xml hdfs-default.xml yarn-default.xml mapred-default.xml 自定義配置檔案 $HADOOP_HOME/etc/hadoop/ core-site.xm
Java操作MongoDB模糊查詢和分頁查詢
模糊查詢條件:1、完全匹配Pattern pattern = Pattern.compile("^name$", Pattern.CASE_INSENSITIVE);2、右匹配Pattern pattern = Pattern.compile("^.*name$", P
java web專案中dao和service前面為什麼要有介面呢??
介面提供了一個公用的方法提供方。 介面是用來規定子類的行為的。舉個例子吧 , 比如有個需求, 需要儲存客戶資訊, 有些客戶從網站來, 有些從手機客戶端來, 有些從後臺管理系統錄入, 假設不同來源的客戶有不同的處理業務流程, 這個時候我定義介面來提供一個儲存客戶的方法, 然後不同平臺實現我這個儲存客戶的介面,
簡單操作django中session和cookie
cookie 1.會話技術 2.客戶端的會話技術( 資料庫儲存在瀏覽器上) 3.問題導致原因: 在web應用中,一次網路請求是從request開始,到response結束,跟以後的請求或者跟其他請求沒有關係 導致每次請求之間的資料沒有關係 (短連結,長連線:QQ) 解決: 在客戶端保留資料
Hadoop中hostname和/etc/hosts配置檔案的關係
前言 搭建Hadoop的時候必須配置兩個檔案:/etc/sysconfig/network和/etc/hosts。 /etc/sysconfig/network的作用是設定機器的主機名:hostname。 &
java 泛型中 T 和 問號(萬用字元)的區別
型別本來有:簡單型別和複雜型別,引入泛型後把複雜型別分的更細了; 現在List<Object>, List<String>是兩種不同的型別;且無繼承關係; 泛型的好處如: 開始版本 public void write(Integer