码迷,mamicode.com
首页 > 编程语言 > 详细

与HDFS交互- By java API编程

时间:2018-10-03 22:05:26      阅读:429      评论:0      收藏:0      [点我收藏+]

标签:tor   jar包   target   creat   img   new   ref   alt   int   

环境(ubuntu下)

  jdk

  eclipse

  jar(很烦,整了很久才清楚)

    - 导包方法

    查看:

1)”/usr/local/hadoop/share/hadoop/common”目录下的hadoop-common-2.9.1.jar和haoop-nfs-2.9.1.jar;
(2)“/usr/local/hadoop/share/hadoop/common/lib”目录下的所有JAR包;
(3)“/usr/local/hadoop/share/hadoop/hdfs”目录下的haoop-hdfs-2.9.1.jar和haoop-hdfs-nfs-2.9.1.jar;
(4)“/usr/local/hadoop/share/hadoop/hdfs/lib”目录下的所有JAR包。

操作

  文件的创建,读入,写入,删除,上传,下载

  目录的创建,删除等

例子 - 文件的创建

 

//工具类

import java.io.BufferedOutputStream; import java.io.IOException; import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FSDataOutputStream; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path;
public class Temp { public void createFileOnHDFS() { String rootPath="hdfs://Kouri:9000/"; Configuration conf=new Configuration(); conf.set("fs.defaultFS", "hdfs://Kouri:9000"); conf.set("fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem"); try { FileSystem fs=FileSystem.get(URI.create(rootPath),conf); Path hdfsPath=new Path(rootPath+"/user/hadoop/demo1.txt"); System.out.println(""+fs.getHomeDirectory()); String con="hello world"; FSDataOutputStream fout=fs.create(hdfsPath); BufferedOutputStream bout=new BufferedOutputStream(fout); bout.write(con.getBytes(),0,con.getBytes().length); bout.close(); fout.close(); System.out.println(hdfsPath+"创建"); } catch (IOException e) { e.printStackTrace(); } } }

//测试类

public class Test {
    public static void main(String []args) {
        Temp temp=new Temp();
        temp.createFileOnHDFS();
    }
}

 

结果截图:

 

技术分享图片

 

参考:http://dblab.xmu.edu.cn/blog/290-2/

 

与HDFS交互- By java API编程

标签:tor   jar包   target   creat   img   new   ref   alt   int   

原文地址:https://www.cnblogs.com/floakss/p/9738969.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!