本地Hadoop配置
1.在Windows上安装hadoop
解压hadoop-2.6.0-cdh5.14.2.tar.gz 压缩包
(解压过程中可能会提示需要管理员权限,最好解压前找到解压软件,右键以管理员身份运行,再尽进行解压)
2.把hadoop-bin.rar中的内容解压并替换到hadoop的bin目录下
(该文件可以去网上自行搜索下载,要与自己版本匹配)
3.把hadoop.dll放到c:\windows\System32\目录下
4.配置hadoop环境变量
右键我的电脑–>属性–>高级系统设置–>环境变量
新建HADOOP_HOME变量,值就是自己的hadoop地址
然后在Path变量中添加如图所示的文本即可
Java操作
1.在idea中新建一个maven工程
修改一下自己相关的版本号
然后引入hadoop相关jar包
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-common</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-hdfs</artifactId>
<version>2.6.0</version>
</dependency>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>1.2.0</version>
</dependency>
2.新建一个class文件(需要在APP下级目录)
a.简单的查看流
public class TestHDFS {
public static void main(String[] args) throws Exception{
Configuration conf = new Configuration();
conf.set("fs.defaultFS","hdfs://192.168.129.40:9000");
FileSystem fs = FileSystem.get(new URI("hdfs://192.168.129.40:9000"),conf,"root");
FSDataInputStream is = fs.open(new Path(args[0]));
int tmp;
while((tmp=is.read())!=-1){
System.out.print((char)tmp);
}
is.close();
}
}
在Run 的 Edit Configuration处如图所示的位置添加参数
b.上传下载流
fs.copyToLocalFile(new Path(args[0]),new Path(args[1]));
fs.copyFromLocalFile(new Path(args[1]),new Path(args[0]));
c.其他操作
诸如创建,删除等不再此赘述
hadoop jar 执行 Java的jar包
1.编写测试完成后,打jar包,指定main方法
Build选择Build Artifact建立jar包(jar包在out里查看)
2.jar包上传至hadoop的share目录下
3.执行命令
hadoop jar <jar在linux的路径> <main方法所在的类的全类名> <参数>