博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
[0007] windows 下 eclipse 开发 hdfs程序样例
阅读量:5154 次
发布时间:2019-06-13

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

目的:

学习使用hdfs 的java命令操作

相关:

进化:

环境:

hadoop2.6.4 伪分布式

win7 + eclipse Version: Luna Service Release 1 (4.4.1)

1. 新建项目

1.1 新建java项目  Hadoop_伪分布式

1.2 导入hadoop 2.6.4 的jar包

项目名字上右键->属性->Java构建路径->添加库->用户库,创建用户库 hadoop2.6

点击用户库hadoop2.6->添加外部jar  依次将hadoop2.6.4 解压目录下的所有jar包,及对应子目录 lib下jar包导入

share\hadoop\common

share\hadoop\hdfs

share\hadoop\yarn

share\hadoop\mapredude

 

2.新建类,编写如下代码   

   通过流的方式,从hdfs 下载一个文件到linux 本地,

1 /** 2  *  功能:      将 hdfs://ssmaster:9000/data/paper.txt下载到Linux下/home/hadoop/paper.txt 3  *  调用方式:hadoop jar 打包包名.jar   4  */ 5 package hadoop.hdfs; 6  7 import java.io.FileNotFoundException; 8 import java.io.FileOutputStream; 9 import java.io.IOException;10 11 import org.apache.commons.compress.utils.IOUtils;12 import org.apache.hadoop.conf.Configuration;13 import org.apache.hadoop.fs.FSDataInputStream;14 import org.apache.hadoop.fs.FileSystem;15 import org.apache.hadoop.fs.Path;16 17 public class Test_Fun {18 19     public static void main(String[] args) {20         21     Configuration conf =new Configuration();22     23     FileSystem fs = null;24     Path src = null;25     FSDataInputStream in = null;26     FileOutputStream out = null;27       28     src = new Path("hdfs://ssmaster:9000/data/paper.txt" );29     30     try {31         32       fs = FileSystem.get(conf) ;33       in = fs.open(src);34 35        } catch (IOException e) {36         e.printStackTrace(); 37     }38     39     try {40         out = new FileOutputStream ("/home/hadoop/paper.txt");41     } catch (FileNotFoundException e) {42         e.printStackTrace();43     }44     45     try {46         IOUtils.copy(in, out);47     } catch (IOException e) {48         e.printStackTrace();49     }50 51 }52 }
View Code

备注:

"hdfs://ssmaster:9000/data/paper.txt"  中前面的路径取自 hadoop安装后的配置文件 core-site.xml里的

参数 <name>fs.defaultFS</name><value>hdfs://ssmaster:9000</value>

3.导出jar包、执行

右键项目名字->导出->java/jar文件 ->指定jar路径名字->指定main类 ->完成

上传到linux服务器,执行程序,查看结果

hadoop@ssmaster:~/java_program$ hadoop jar hadoop_hdfs_download.jarhadoop@ssmaster:~$ lsDesktop    Downloads         hadoop-2.6.4.tar.gz  java_program  paper.txt              Pictures  spark-2.0.1-bin-hadoop2.6.tgz  VideosDocuments  examples.desktop  hdfs-site.xml        Music         park-2.0.1-bin-hadoop  Public    Templates

 

总结:

步骤麻烦啰嗦。

其他可选方案,需要研究

windows下的eclipse 中的程序运行,直接操作hadoop

在linux中安装eclipse,运行程序

 

转载于:https://www.cnblogs.com/sunzebo/p/5991232.html

你可能感兴趣的文章
mysql安装
查看>>
20172319 《程序设计与数据结构》 第二周学习总结
查看>>
02-Python基础之列表
查看>>
08-Python基础之迭代器与生成器
查看>>
POJ P3254 Corn fields 【状压dp】
查看>>
BZOJ3542 DZY Loves March 【map + 线段树】
查看>>
.net学习之集合、foreach原理、Hashtable、Path类、File类、Directory类、文件流FileStream类、压缩流GZipStream、拷贝大文件、序列化和反序列化...
查看>>
ViewPager的使用方法和实现过程
查看>>
Android编程之仿微信显示更多文字的View
查看>>
[置顶] ios 网页中图片点击放大效果demo
查看>>
[置顶] 某大型银行深化系统技术方案之二十:代码结构
查看>>
数据库中文mybatis连接mysql数据库插入中文乱码
查看>>
滚动停止jquery 文本上下无缝滚动,鼠标放上去就停止
查看>>
动画停止animate动画效果(泪奔的小孩)stop和delay的用法
查看>>
代码函数从零开始学习OpenCL开发(二)一个最简单的示例与简单性能分析
查看>>
Android中百度地图开发细节综述
查看>>
centos7 手动修改dns
查看>>
SSH新学,关于面向对象的看法
查看>>
WMS和WMTS的区别
查看>>
【转载】C++ 值传递、指针传递、引用传递详解
查看>>