HDFS常用API

共计1965字,阅读大约7分钟。
图片[1] | Web Stack | HDFS常用API | 一个栈
Apache Hadoop

HDFS是基于Google在2003年发布的GFS进行的具体实现。HDFS的定制功能,通常使用Maven工程实现。

一、常用API

  • 创建路径 boolean mkdirs(Path, FsPermission)
  • 下载 void copyToLocalFiles(Path, Path)
  • 上传 void copyFromLocalFiles(Path, Path)
  • 重命名 boolean rename(Path, Path)
  • 删除 boolean delete(Path, boolean)

二、Maven工程依赖

<dependencies>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-client</artifactId>
            <version>2.7.7</version>
        </dependency>

        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.7.7</version>
        </dependency>

        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-hdfs</artifactId>
            <version>2.7.7</version>
        </dependency>
<dependencies>

三、实例

1、类对象

    //创建Configuration对象和FlieSystem对象
    static Configuration conf=null;
    static FileSystem fs=null;

    //类对象实例化
    static {
        //该类的对象
        conf = new Configuration();
        conf.set("fs.defaultFS","hdfs://192.168.86.10:9000");

        //指定用户名 root
        System.setProperty("HADOOP_USER_NAME","root");

        try {
            //创建Filesystem的实例化对象
            fs = FileSystem.get(conf);
        } catch (IOException e) {
            //throw new RuntimeException(e);
            System.out.println("实例化FileSystem对象出现异常"+e.toString());
        }
    }

2、API使用示例

public static void main(String[] args) throws IOException, InterruptedException, KeeperException {
//创建路径
fs.mkdirs(new Path(str));

//上传文件
fs.copyFromLocalFile(new Path(p),new Path(d));

//下载文件
fs.copyToLocalFile(new Path(p),new Path(d));

//重命名
fs.rename(new Path(p),new Path(d));

//删除
fs.delete(new Path(p),b);
}

四、查看

查看的方式有两种,一种是通过Hadoop Shell使用命令查看HDFS中的文件,第二种是通过Hadoop提供的Web UI进行查看。不同版本的Hadoop的Web UI访问端口不同,其中,HDFS的访问端口是50070,在浏览器中输入"主机名:50070"或"IP:50070",在确保Hadoop正常活动的情况下即可进行Web访问。

温馨提示:本文最后更新于2022-07-12 14:58:47,某些文章具有时效性,若有错误或已失效,请在下方留言或联系雅舍站长
© 版权声明
THE END
有所帮助就支持一下吧
点赞5 分享
箴言区 抢沙发
头像
达瓦里希请发言...
提交
头像

昵称

取消
昵称表情代码图片