精华内容
下载资源
问答
  • 从HDFS下载文件到本地

    2013-03-25 11:18:54
    使用HDFS java api 下载文件到本地的代码如下:  String file="hdfs://localhost:9000/user/Administrator/fooo/j-spatial.zip";//hdfs文件 地址 Configuration config=new Configuration(); ...

      使用HDFS java api 下载文件到本地的代码如下:

      String file="hdfs://localhost:9000/user/Administrator/fooo/j-spatial.zip";//hdfs文件 地址
      Configuration config=new Configuration();
      FileSystem fs=FileSystem.get(URI.create(file),config);//构建FileSystem
      InputStream is=fs.open(new Path(file));//读取文件
      IOUtils.copyBytes(is, new FileOutputStream(new File("c:\\likehua.zip")),2048, true);//保存到本地  最后 关闭输入输出流

    展开全文
  • 1.在磁盘中创建文件夹,例如D:/tools/hadoop-...2将Hadoop版本的压缩包解压,将里面的bin存刚创建的文件夹下 3.添加环境变量HADOOP_HOME 3.获取bin的具体路径D:\tools\hadoop-3.1.1.7\bin 作为环境变量的值 ...

    1.在磁盘中创建文件夹,例如D:/tools/hadoop-3.1.1
    2将Hadoop版本的压缩包解压,将里面的bin存到刚创建的文件夹下
    3.添加环境变量HADOOP_HOME
    3.获取到bin的具体路径D:\tools\hadoop-3.1.1.7\bin 作为环境变量的值

    展开全文
  • String file="hdfs://localhost:9000/user/Administrator/fooo/j-spatial...//hdfs文件 地址  Configuration config=new Configuration();  FileSystem fs=FileSystem.get(URI.create(file),config);//构建FileSyst
      String file="hdfs://localhost:9000/user/Administrator/fooo/j-spatial.zip";//hdfs文件 地址
      Configuration config=new Configuration();
      FileSystem fs=FileSystem.get(URI.create(file),config);//构建FileSystem
      InputStream is=fs.open(new Path(file));//读取文件
      IOUtils.copyBytes(is, new FileOutputStream(new File("c:\\likehua.zip")),2048, true);//保存到本地  最后 关闭输入输出流
    展开全文
  • 从hdfs下载文件或文件夹到本地目录 当集群是高可用时,配置hdfs访问地址: 当集群是ha高可用时,namenode为多节点,当namenode为standby时是不能被访问hdfs的,需要灵活的指定namenode,不能使用普通的hdfs地址, 高...

    从hdfs下载文件或文件夹到本地目录


    当集群是高可用时,配置hdfs访问地址:
    当集群是ha高可用时,namenode为多节点,当namenode为standby时是不能被访问hdfs的,需要灵活的指定namenode,不能使用普通的hdfs地址,
    高可用需要用nameservice去访问,每个hadoop的hdfs集群的配置是不一样的,因为nameservice的配置不同,需要把集群的hdfs-site.xml文件放到maven的resource目录中,configuration会自动加载resource中配置文件,hdfs://nameserivice/user/expr,直接用nameservice替换集群地址
    URI:hdfs://nodexx:8020/user/hive/warehouse  修改为hdfs://nameservice1/user/hive/warehouse 即可。
    参考文章:http://blog.csdn.net/kwu_ganymede/article/details/49097591
    http://gaojiehigh.iteye.com/blog/1575006


    代码示例,从hdfs下载文件和文件夹
    package com.data;


    import java.io.File;
    import java.io.FileOutputStream;
    import java.net.URI;


    import org.apache.hadoop.conf.Configuration;
    import org.apache.hadoop.fs.FileSystem;
    import org.apache.hadoop.fs.FSDataInputStream;
    import org.apache.hadoop.fs.FileUtil;
    import org.apache.hadoop.fs.Path;
    import org.apache.hadoop.fs.FileStatus;
    import org.apache.hadoop.io.IOUtils;


    public class HDFS_Download {
        public static FileSystem hdfs;


        public static void downloadFile(String srcPath, String dstPath) throws Exception {
            FSDataInputStream in = null;
            FileOutputStream out = null;
            try {
                in = hdfs.open(new Path(srcPath));
                out = new FileOutputStream(dstPath);
                IOUtils.copyBytes(in, out, 4096, false);
            } finally {
                IOUtils.closeStream(in);
                IOUtils.closeStream(out);
            }
        }


        public static void downloadFolder(String srcPath, String dstPath) throws Exception {
            File dstDir = new File(dstPath);
            if (!dstDir.exists()) {
                dstDir.mkdirs();
            }
            FileStatus[] srcFileStatus = hdfs.listStatus(new Path(srcPath));
            Path[] srcFilePath = FileUtil.stat2Paths(srcFileStatus);
            for (int i = 0; i < srcFilePath.length; i++) {
                String srcFile = srcFilePath[i].toString();
                int fileNamePosi = srcFile.lastIndexOf('/');
                String fileName = srcFile.substring(fileNamePosi + 1);
                download(srcPath + '/' + fileName, dstPath + '/' + fileName);
            }
        }


        public static void download(String srcPath, String dstPath) throws Exception {
            if (hdfs.isFile(new Path(srcPath))) {
                downloadFile(srcPath, dstPath);
            } else {
                downloadFolder(srcPath, dstPath);
            }
        }




        public static void main(String[] args) throws Exception{




            String hdfsStr = "hdfs://xl.namenode1.coocaa.com:8020/apps/external/hive/jscn_sdata/jscn_base_all_mac";


            String localStr = "C:\\Users\\awm-z\\Downloads\\hdfs_jscn";


            Configuration conf = new Configuration();
            hdfs = FileSystem.get(URI.create(hdfsStr),conf);
            download(hdfsStr,localStr);


    //        if (args.length != 2) {
    //            System.out.println("Invalid input parameters");
    //        } else {
    //            try {
    //                Configuration conf = new Configuration();
    //                hdfs = FileSystem.get(URI.create(args[0]), conf);
    //                download(args[0], args[1]);
    //            } catch (Exception e) {
    //                System.out.println("Error occured when copy files");
    //            }
    //        }
        }
    }

    展开全文
  • 示例为从HDFS下载文件到本地临时文件 启动springboot项目 客户端访问 传入需要的参数 返回了临时文件的路径,到指定路径查看 End
  • 从本地下载HDFS文件 1)客户端向namenode请求下载文件,namenode通过查询元数据,找到文件块所在的datanode地址。 2)挑选一台datanode(就近原则,然后随机)服务器,请求读取数据。 3)datanode开始传输...
  • HDFS——如何将文件从HDFS复制到本地

    万次阅读 2018-09-28 08:42:18
    下面两个命令是把文件从HDFS上...复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。 示例: hadoop fs -get /user/hadoop/file localfile hadoop fs -get hd...
  • get使用方法:hadoop fs -get [-ignorecrc] [-crc] 复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。示例:hadoop fs -get /user/hadoop/file localfilehadoop...
  • 一、前言 《大数据和人工智能交流》头条...本文章目的:1、了解Java操作HDFS常见的API2、了解Java对HDFS文件操作过程3、会使用Java编写操作HDFS的程序二、开发准备工作1、相关的jar包Jar包的可以hadoop所在位置的 ...
  • HDFS:如何将文件从HDFS复制到本地

    千次阅读 2018-04-12 16:52:31
    下面两个命令是把文件从HDFS上...复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。 示例: hadoop fs -get /user/hadoop/file localfile hadoop fs -get hd...
  • #!/bin/bash #========================================...#功能:下载hdfs文件到本地脚本 #调用方法: sh getfromfstolocal.sh YYYYMMDD SRC username HDFS_PATH #调用说明: sh getfromfstolocal.sh 日期 源系统 ...
  • 1.看看是否有配置HADOOP_HOME这个环境变量,并且再PATH里引用2.HADOOP_HOME中bin目录下是否有winutils.exe这(对应版本的,我的是window7)exe,并保证winutils.exe双击运行没有报***.dll 缺失的错误。...
  • get使用方法:Hadoop fs -get [-ignorecrc] [-crc]复制文件到本地文件系统。可用-ignorecrc选项复制CRC校验失败的文件。使用-crc选项复制文件以及CRC信息。示例:hadoop fs -get /user/hadoop/file localfilehadoop ...
  • import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.*; import org.apache.hadoop... * 下载文件到本地 判断本地路径是否已存在,若已存在,则自动进行重命名 */ public static void ...
  • 先在input文件夹下创建一个word文件夹,所以上传:./bin/hadoop fs -mkdir ./input/word 目录只能一级级创建 ,不能一下子创建2个./bin/hadoop fs -put /home/hadoop/dataset/1901.gz ./input/word下载:./bin/...
  • HDFS架构图 1)namnode,名字节点,最主要管理HDFS的元数据信息 2)datanode,数据节点,存储文件块 ...6)Client 的Read(从HDFS下载文件到本地) 7)Client的Write(上传文件到HDFS上) 从HD...
  • 目录HDFS分布式文件系统一、HDFS命令行的操作1.1、查看根目录1.2、根目录创建文件夹1.3、父目录不存在创建文件夹...下载文件到本地1.12、删除文件1.13、删除目录二、HDFS的API操作2.1、文件夹的创建2.2、文件的创建...
  • copyToLocalFile : 从hdfs下载到本地 原始文件以及目录状态如下: HDFS目录结构如下: 测试上传功能~~ 刷新浏览器: 下载打开文件,正是我们上传的文件。 测试下载功能~~ 刷新本地文件夹目录:...
  • 众所周知,HDFS中过多的小文件,会给NameNode造成很大的压力,所谓的小文件,是指远远小于文件块大小的文件。 在使用HDFS的过程中,应尽量避免生成过多的小文件。...将本地的小文件合并,上传到HDFS 假设...
  • HDFS 读写文件讲解

    2020-06-30 19:27:14
    我们知道在虚拟机中通过命令可以实现Linux本地文件log1.txt上传HDFS中,以及从HDFS下载文件。 #上传文件(向HDFS中写文件) hdfs dfs -put /opt/log.txt /hdfs/log/log1.txt 或 hdfs dfs -copyFromLocal /opt/...
  • 从hdfs文件系统下载文件到本地文件系统时Java代码。 点击(此处)折叠或打开 import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org....

空空如也

空空如也

1 2 3 4 5 ... 9
收藏数 167
精华内容 66
关键字:

从hdfs下载文件到本地