A. hadoop2.6.0 hdfs 錯誤:無法創建java虛擬機
需要把JAVA_HOME設置為系統變數,
另外你的PATH設置了嗎?
B. 我正在搗騰hadoop,用java編寫了一個程序,想要連接到hdfs上,運行後顯示如下,這是什麼問題呢求解!
你的hadoop是2.X的,但是還是按1.X的配置,需修改配置,或者還原hadoop版本。
C. 利用JAVA+API向HDFS文件系統上的文件寫入數據一共有哪三種方法,請敘述該三種
摘要 一.構建環境
D. hdfs 的java api操作要配置hadoop環境嗎
需要配置 ,
需要配置幾個配置文件在你的resources目錄下
hdfs-site.xml yarn-site.xml core-site.xml
看具體情況如果使用mr程序還需要 mapred-site.xml 具體文件參數和你hadoop集群的配置有關可以查閱官方配置文檔
E. hdfs和hadoop是什麼關系
HDFS是分布式文件系統,說通俗點就是用的存儲的資料庫,是hadoop的核心組件之一,其他還有maprece,yarn.
F. java怎麼連接hdfs文件系統,需要哪些包
apache的Hadoop項目提供一類api可以通過java工程操作hdfs中的文件,包括:文件打開,讀寫,刪除等、目錄的創建,刪除,讀取目錄中所有文件等。
1、到http://hadoop.apache.org/releases.html下載Hadoop,解壓後把所有jar加入項目的lib里
2、程序處理步驟: 1)得到Configuration對象,2)得到FileSystem對象,3)進行文件操作,簡單示例如下:
/**
*
*/
package org.jrs.wlh;
import java.io.IOException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FSDataInputStream;
import org.apache.hadoop.fs.FSDataOutputStream;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
/**
* @PutMeger.java
* java操作hdfs 往 hdfs中上傳數據
* @version $Revision$</br>
* update: $Date$
*/
public class PutMeger {
public static void main(String[] args) throws IOException {
String[] str = new String[]{"E:\\hadoop\\UploadFileClient.java","hdfs://master:9000/user/hadoop/inccnt.java"};
Configuration conf = new Configuration();
FileSystem fileS= FileSystem.get(conf);
FileSystem localFile = FileSystem.getLocal(conf); //得到一個本地的FileSystem對象
Path input = new Path(str[0]); //設定文件輸入保存路徑
Path out = new Path(str[1]); //文件到hdfs輸出路徑
try{
FileStatus[] inputFile = localFile.listStatus(input); //listStatus得到輸入文件路徑的文件列表
FSDataOutputStream outStream = fileS.create(out); //創建輸出流
for (int i = 0; i < inputFile.length; i++) {
System.out.println(inputFile[i].getPath().getName());
FSDataInputStream in = localFile.open(inputFile[i].getPath());
byte buffer[] = new byte[1024];
int bytesRead = 0;
while((bytesRead = in.read(buffer))>0){ //按照位元組讀取數據
System.out.println(buffer);
outStream.write(buffer,0,bytesRead);
}
in.close();
}
}catch(Exception e){
e.printStackTrace();
}
}
}