1. 程式人生 > >HDFS的java客戶端api的基本使用

HDFS的java客戶端api的基本使用

package hdfs1;
import java.io.IOException;
import java.net.URI;
import java.net.URISyntaxException;
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

public class HdfsClientDemo
{
	/**
	 * Configration引數物件的機制
	 * 構造時, 會載入jar包中的xx-default.xml
	 * 再載入使用者配置的xx-site.xml,覆蓋掉預設引數
	 * 最後從conf.set中會再次覆蓋使用者配置中的引數
	 */
	
	public static void main(String[] args) throws Exception
	{
		
		Configuration conf = new Configuration();
		
		//指定本客戶端上傳檔案時副本的數量
		conf.set("dfs.replication", "2");
		
		//指定本客戶端上傳檔案時切塊的大小
		conf.set("dfs.blocksize", "64M");
		
		//構造一個訪問指定hdfs系統的客戶端物件。引數1:HDFS的URI;引數2:客戶端指定的引數;引數3:客戶端使用者的身份
		FileSystem fs = FileSystem.get(new URI("hdfs://zzx:9000/"), conf, "root");
		
		
		//上傳檔案
		fs.copyFromLocalFile(new Path("C:/Users/zzx/Downloads/ChromeSetup.exe"), new Path("/Chrome.exe"));
		
		fs.close();
	}
}

設定了簡單的引數,上傳了一個小檔案。