开发者社区 问答 正文

java 中操作 hdfs需要做什么?

java 中操作 hdfs需要做什么?

展开
收起
游客fbdr25iajcjto 2021-12-04 21:11:52 323 分享 版权
1 条回答
写回答
取消 提交回答
  • 首先要获得一个客户端实例:

    Configuration conf = new Configuration() FileSystem fs = FileSystem.get(conf) 而我们的操作目标是 HDFS,所以获取到的 fs 对象应该是 DistributedFileSystem 的实例;

    get 方法是从何处判断具体实例化那种客户端类呢?从 conf 中的一个参数 fs.defaultFS 的配置值判断;

    如果我们的代码中没有指定 fs.defaultFS,并且工程 classpath 下也没有给定相应的配置,conf中的默认值就来自于 hadoop 的 jar 包中的 core-default.xml,默认值为: file:///,则获取的将不是一个 DistributedFileSystem 的实例,而是一个本地文件系统的客户端对象。

    2021-12-04 21:13:35
    赞同 展开评论