hdfs深入:10、hdfs的javaAPI操作

看到10、hdfs的javaAPI操作,  13分19秒

具体代码如下:

/**     * 递归遍历hdfs中所有的文件路径     */    @Test    public void getAllHdfsFilePath() throws URISyntaxException, IOException {        //获取fs的客户端        FileSystem fileSystem = FileSystem.get(new URI("hdfs://node01:8020"), new Configuration());

        Path path = new Path("/");        FileStatus[] fileStatuses = fileSystem.listStatus(path);

        //循环遍历fileStatuses,如果是文件,打印文件的路径,如果是文件夹,继续递归进去        for (FileStatus fileStatus : fileStatuses){            if (fileStatus.isDirectory()){//文件夹                getDirectoryFiles(fileSystem,fileStatus);            }else{ //文件                System.out.println(fileStatus.getPath().toString());            }        }    }

    /**     * 递归获取文件路径     */    public void getDirectoryFiles(FileSystem fileSystem,FileStatus fileStatus) throws IOException {        //通过fileStatus获取文件夹路径        Path path = fileStatus.getPath(); //该fileStatus必定为一个文件夹        FileStatus[] fileStatuses = fileSystem.listStatus(path);        for (FileStatus status:fileStatuses){            if (fileStatus.isDirectory()){                getDirectoryFiles(fileSystem,status);            }else{                System.out.println(fileStatus.getPath().toString());            }        }    }

原文地址:https://www.cnblogs.com/mediocreWorld/p/10952959.html

时间: 2024-12-16 13:41:28

hdfs深入:10、hdfs的javaAPI操作的相关文章

熟练掌握HDFS的Shell访问和JavaAPI访问

HDFS设计的主要目的是对海量数据进行处理,也就是说在其上能够储存很大量文件(可以储存TB级的文件).HDFS将这些文件分割之后,储存在不同的DataNode上,HDFS提供了两种数据访问接口:Shell接口和javaAPI接口,对HDFS里面的文件进行操作. Shell接口  HDFS处理文件的命令和linux命令基本相同,这里区分大小写.下面介绍HDFS操作分布式文件系统的命令. HDFS基本命令 hadoop fs -cmd  其中cmd:具体的操作,基本上与unix的命令相同 args:

HDFS命令行及JAVA API操作

查看进程 jps 访问hdfs: hadoop-root:50070 hdfs bash命令: hdfs dfs <1>   -help:  显示命令的帮助的信息 <2>  -mkdir:创建一个新目录 -p -mkdir -p /test1/test2:创建目录,p可以创建不存在的父路径 <3> -ls:显示当前目录下的所有文件(-ls -R) -R:递归地查看   <4>   -put LICENSE.txt /test 将本地文件上传到HDFS上  

魏韦新:原油跌宕起伏,EIA登陆,10.19原油沥青操作建议

魏韦新:原油跌宕起伏,EIA登陆,10.19原油沥青操作建议 很多朋友是套完空单又套多单,为什么别人做原油,你也做,但别人赚钱了,而你还在为解套还烦着.每天看新闻说谁谁炒银原油赚钱买房买车了,你羡慕吗?不要跟我说不,你有!但你在羡慕别人的同时你有想过这是为什么吗?难道是你技术比别人差?还是说你比别人笨?不是!都不是!别人赚到钱而你亏钱的原因只有一个,那就是人家有一个好的指导老师,一个好的理财团队为他服务而你没有,仅此而已! 魏韦新--昨日做单回顾 昨天魏韦新一直在等待做空的机会,亚欧两盘行情清淡

hadoop的hdfs中的javaAPI操作

package cn.itcast.bigdata.hdfs; import java.net.URI; import java.util.Iterator; import java.util.Map.Entry; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache

使用javaAPI操作hdfs

package com.zuoyan.hadoop; import java.io.FileOutputStream; import java.io.IOException; import java.util.HashSet; import java.util.Iterator; import java.util.Map; import java.util.Set; import org.apache.hadoop.conf.Configuration; import org.apache.ha

hadoop执行hdfs文件到hbase表插入操作(xjl456852原创)

本例中需要将hdfs上的文本文件,解析后插入到hbase的表中. 本例用到的hadoop版本2.7.2 hbase版本1.2.2 hbase的表如下: create 'ns2:user', 'info' hdfs上的文本文件如下[data/hbase_input/hbase.txt] 1,xiejl,20 2,haha,30 3,liudehua,40 4,daoming,41 可以通过命令查看hadoop的classpath现在包含哪些jar包: [[email protected] ~]$

12 hdfs常用文件、目录拷贝操作、删除操作

package com.da.hbase.tool.utils; import com.da.hbase.tool.common.Const; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.h

HDFS的基础组成部分及基础操作

HDFS组件结构图解说: 1.如图所示中,NameNode充当master角色,职责包括:管理文档系统的命名空间(namespace):调节客户端访问到需要的文件(存储在DateNode中的文件) 2.DataNodes充当slaves角色,通常情况下,一台机器只部署一个Datenode,用来存储MapReduce程序需要的数据 3.Namenode会定期从DataNodes那里收到Heartbeat和Blockreport反馈 4.Heartbeat反馈用来确保DataNode没有出现功能异常

HDFS 异构储存配置及基本命令操作

hadoop-2.8.4 部署我就不说了 网上一大堆 hdfs-site.xml datanode 储存路径挂载需要修改如下: <property> <name>dfs.datanode.data.dir</name> <value>[DISK]file:///data/hdfs-disk/hadoop/dfs/data,[SSD]file:///data/hdfs-ssd/hadoop/dfs/data,[RAM_DISK]file:///data/hdf