hadoop深入浅出-JAVA操作HDFS(JAVA接口使用)
来源:互联网 发布:php array函数 编辑:程序博客网 时间:2024/06/08 14:42
package sunyuqiang.com;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.*;import org.apache.hadoop.io.IOUtils;import java.io.File;import java.io.FileInputStream;import java.io.IOException;public class App { public static void main( String[] args ) throws IOException { testGet();//测试读取 System.out.println("_____________________________"); testPut();//测试写入 } public static void testGet() throws IOException { //连接HDFS系统 Configuration configuration = new Configuration(); configuration.set("fs.defaultFS","hdfs://sunyuqiang.com:9000"); //获得文件系统对象 FileSystem fileSystem = FileSystem.get(configuration); //指定文件路径对象 String filePath = "/user/hadoop/mapreduce/wordcount/input/my.txt"; Path readPath = new Path(filePath); //open()文件流,获得输入流对象 FSDataInputStream inputStream = fileSystem.open(readPath); //输出文件信息 try{ IOUtils.copyBytes(inputStream,System.out,4096,false); }catch (Exception e){ e.printStackTrace(); }finally { IOUtils.closeStream(inputStream); } } public static void testPut() throws IOException { //连接HDFS系统 Configuration configuration = new Configuration(); configuration.set("fs.defaultFS","hdfs://sunyuqiang.com:9000"); //获取文件对象 FileSystem fileSystem = FileSystem.get(configuration); //准备本地文件流 String localFilePath = Hdfs.class.getClassLoader().getResource("my.log").getPath(); System.out.println(localFilePath); //查看本地路径 FileInputStream inputStream = new FileInputStream(new File(localFilePath)); //准备PUT文件路径对象 String hdfsDirPath = "/user/hadoop/mapreduce/wordcount/input/my.log"; Path path = new Path(hdfsDirPath); //获得输出流对象 FSDataOutputStream outputStream = fileSystem.create(path); //PUT写入文件 try{ IOUtils.copyBytes(inputStream,outputStream,4096,false); }catch (Exception e){ e.printStackTrace(); }finally { IOUtils.closeStream(inputStream); IOUtils.closeStream(outputStream); } }}运行查看结果如下图:
程序读取到HDFS文件系统中文件的内容,并且无错误的返回了。那就去查看下HDFS中有没有成功上传my.log文件
未执行程序时
执行程序后
这里不知道为什么上传后所有者是乱码的,以后解决吧!
阅读全文
0 0
- hadoop深入浅出-JAVA操作HDFS(JAVA接口使用)
- hadoop java操作hdfs
- Hadoop上路_07-使用Java操作HDFS
- 使用Hadoop的Java API操作HDFS
- HDFS操作-Java接口
- win下使用java接口操作HDFS
- Hadoop(05) HDFS Java 接口
- Hadoop学习笔记(3)-java操作hdfs的API接口
- hadoop java HDFS 读写操作
- JAVA操作HDFS API(hadoop)
- JAVA操作HDFS API(hadoop)
- 使用java操作HDFS
- 使用java操作hdfs
- 【hadoop】 2003-hdfs的java接口
- hadoop hdfs java api 文件操作类
- hadoop hdfs java api 文件操作类
- Hadoop HDFS文件操作 Java实现类
- 利用java操作Hadoop文件 /hdfs
- fzoj 1193 最少步数
- 10/26
- 1023. 组个最小数 (20)
- 小程序学习心得之template进行数据绑定
- 【安全牛学习笔记】Kali Linux渗透测试介绍
- hadoop深入浅出-JAVA操作HDFS(JAVA接口使用)
- 排列
- (连载)Android系统源码分析--Android系统启动流程之Linux内核
- Android中findViewById获取控件返回为空
- 1024. 科学计数法 (20)
- 【多线程高并发】 同步容器和队列
- ISFP职业规划:一位断了线的31岁ISFP风筝女孩
- 手机端添加emo表情到数据库失败的问题解决
- Lintcode151 Best Time to Buy and Sell Stock III solution 题解