简单的Hadoop javaAPI实现

tech2026-09-02  0

Maven工程

1、创建Maven工程,选择maven-archetype-quickstart

2、填写GroupID(项目组织唯bai一的标识符)和ArtifactID(是项目的唯一的标识bai符)

3、配置Maven_home directory和User setting file

4、填写Project name(项目名)和选择Project location(项目路径)

5、修改配置文件

6、引入hadoop-common Jar包、hadoop-hdfs Jar包和hadoop-core Jar包 <!--引入hadoop-common jar包--> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-common</artifactId> <version>2.6.0</version> </dependency> <!--引入hadoop-hdfs jar包--> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-hdfs</artifactId> <version>2.6.0</version> </dependency> <!--引入hadoop-core jar包--> <dependency> <groupId>org.apache.hadoop</groupId> <artifactId>hadoop-core</artifactId> <version>1.2.0</version> </dependency>

环境配置

1、在Windows安装hadoop 2、把hadoop-bin.rar中的内容解压到hadoop的bin目录下

3、把hadoop的bin目录下的hadoop.dll放到C:\windows\System32\ 目录下

4、配置hadoop环境变量HADOOP_HOME和path变量中加入%HADOOP_HOME%\bin 和sbin

Java代码

一、Java与hadoop交互

Java代码:

1、Configuration cfg=new Configuration(); 2、cfg.set("fs.defaultFS","hdfs://IP地址:9000"); 3、获取文件系统:FileSystem fs=FileSystem.get(cfg); 1~3、FileSystem fs=FileSystem(new URI("hdfs9000"),new Configuration(),"root"); 4、获取hdfs路径: FSDataInputStream fsis=fs.open("hdfs上的文件路径"); 5、查看流

hadoop命令:

hadoop fs -mkdir -p /test/java/hdfs-test hadoop fs -put /opt/hadoop/README.txt /test/java/hdfs-test Configuration conf=new Configuration(); conf.set("fs.defaultFS","hdfs://192.168.206.33:9000"); // FileSystem fs=FileSystem.get(new URI("hdfs://192.168.206.33:9000"),new Configuration(),"root"); FileSystem fs=FileSystem.get(conf); InputStream is=fs.open(new Path("/test/java/hdfs-test/README.txt")); // FileOutputStream fos=new FileOutputStream(args[1]); //复制 // fs.copyToLocalFile(new Path(args[0]),new Path(args[1])); //上传 // fs.copyFromLocalFile(new Path(args[1]),new Path(args[0])); //创建 // fs.mkdirs(new Path("/hello/nihao/feichanghao")); //删除 // fs.deleteOnExit(new Path("/hello")); int tmp; while ((tmp=is.read())!=-1){ System.out.print((char)tmp); // fos.write(tmp); } is.close(); }

二、使用hadoop jar执行Java的jar包

1、编写测试完成 2、打jar包时把main方法指定 3、编译生成jar包,把jar包上传至linux 4、hadoop jar jar宝路径 main方法类的路径 参数列表
最新回复(0)