博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop 系列 HDFS 的JavaAPI Windows+IDEA+HDFS快速入门
阅读量:6543 次
发布时间:2019-06-24

本文共 3229 字,大约阅读时间需要 10 分钟。

数据准备

通过HDFS 命令方式将本地words.txt文件上传到HDFS上

首先使用hdfs 来创建input文件夹

[root@node1 ~]#  hdfs dfs -mkdir /input [root@node1 ~]# hdfs dfs -ls /input [root@node1 ~]# hdfs dfs -put /root/words.txt /input [root@node1 ~]# hdfs dfs -ls /input Found 1 items -rw-r--r--   3 root supergroup         42 2017-11-26 04:10 /input/words.txt [root@node1 ~]# hdfs dfs -cat /input/words.txt Java Java dtt dtt Hello World Hello World

 

 

 

 

 

目录结构

点击打开pom.xml添加

4.0.0
com.dtt.hadoop
hadoop-test
1.0-SNAPSHOT
junit
junit
3.8.1
test
org.apache.hadoop
hadoop-core
2.6.0-mr1-cdh5.11.0
org.apache.hadoop
hadoop-common
2.7.3
org.apache.hadoop
hadoop-hdfs
2.7.3
org.apache.hadoop
hadoop-mapreduce-client-core
2.7.3
maven-aliyun
maven-aliyun
http://maven.aliyun.com/nexus/content/groups/public
maven-aliyun
maven-aliyun
http://maven.aliyun.com/nexus/content/groups/public

 

编辑Java代码

在HdfsTest.java类中编辑代码如下:

package com.hadoop.hdfs;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IOUtils;import java.io.IOException;import java.io.InputStream;import java.net.URI;public class HdfsTest {    public static void main(String[] args) throws IOException {        String uri = "hdfs://192.168.55.128:9000/input/words.txt";        Configuration cfg = new Configuration();        FileSystem fs = FileSystem.get(URI.create(uri), cfg);        InputStream in = null;        in = fs.open(new Path(uri));        IOUtils.copyBytes(in, System.out, 4096, false);        IOUtils.closeStream(in);    }}

 

程序说明:

    Configuration类:该类的对象封转了客户端或者服务器的配置。
    FileSystem类:该类的对象是一个文件系统对象,可以用该对象的一些方法来对文件进行操作。FileSystem fs = FileSystem.get(conf);通过FileSystem的静态方法get获得该对象。
    String uri="hdfs://192.168.55.128:9000/user/root/input/word.txt"要与core-site.xml文件中的fs.defaultFS配置对应,其值是hdfs://node1:9000。由于本地Windows系统的hosts文件没有配置node1,所以这里需要IP地址表示。

本地运行

右键单击hdfsTest类,在弹出的快捷菜单中选择“Run ”。

等待数秒后,将看到输入结果。

 

导出Jar包

将该类导出为 hadooptest.jar.j:

 

 

 

 

将jar上传集群中一个节点下 ,比如node3。

这里还是通过SFX上传

在node3(192.168.55.130)节点上执行命令:

hadoop jar hadooptest.jar com.hadoop.hdfs.HdfsTest

 

 

 

转载于:https://www.cnblogs.com/mtime2004/p/10019508.html

你可能感兴趣的文章
go语言unix域套接字发送udp报文
查看>>
2.并发和并行
查看>>
OpenGL学习(二)用户与交互
查看>>
神奇的代码-常见错误代码注意点
查看>>
[直播一揽子]编码构思和套路
查看>>
[直播一揽子]x264参数的解释
查看>>
static的意义和功能
查看>>
iOS学习之Objective-C 2.0 运行时系统编程
查看>>
Exchange2007-Exchange2010升级-06 数据库高可用组的创建
查看>>
phpHiveAdmin是如何通过Hive/Hadoop工作的
查看>>
双向链表内结点的删除(4)
查看>>
项目总结
查看>>
JSON字符串转成对象
查看>>
SaltStack 中ZMQ升级
查看>>
grep,egrep使用以及正则表达式的使用
查看>>
implode 和 explode
查看>>
gzip the js and css
查看>>
exchange 2013 提示“HTTP 500内部服务器错误”
查看>>
Linux运维学习笔记之一:运维的原则和学习方法
查看>>
怎样使用原型设计中的组件样式功能
查看>>