一.Web Console:端口50070

二.HDFS的命令行操作

(一)普通操作命令  

HDFS 操作命令帮助信息: hdfs dfs + Enter键

常见命令

1.  -mkdir

  • 在HDFS上创建目录:hdfs dfs -mkdir /aaa
  • 如果父目录不存在,使用 -p 命令先创建父目录:

2. -ls /

  查看hdfs文件系统根目录下的目录和文件:

3.-ls -R /

  查看所有目录和文件:

4.-put

  上传数据:将本地Linux文件data.txt上传到HDFS的aaa目录下

-copyFromLocal 上传数据,类似-put

-moveFromLocal 上传数据,类似-put,相当于ctrl+x

5.-get 下载数据(刚才上传数据时已经有data.txt,所以要把Linux目录下的data.txt先删除)

6.-rm: 删除目录

-rmr: 删除目录,包括子目录

hdfs dfs -rmr /bbb

7. -getmerge:把某个目录下的文件,合并后再下载

8.-cp:拷贝   hdfs dfs -cp /input/data.txt /input/data2.txt

9.-mv:移动   hdfs dfs -cp /input/data.txt /aaa/a.txt

10.-count 统计hdfs对应路径下的目录个数,文件个数,文件总计大小:hdfs dfs -count /students

11.-du 显示hdfs对应路径下每个文件夹和目录的大小 hdfs dfs -du /students

12.-cat 查看文本的内容 hdfs dfs -cat /input/data.txt

13.balancer:平衡操作 如果管理员发现某些DataNode上保存数据过多,某些过少,就可以采取此操作

(二)管理命令:hdfs dfsadmin

举例:

1.-report  打印hdfs的报告 hdfs dfsadmin -report

2.-safemode:安全模式(安全模式下对hdfs只能进行只读操作)

三.JavaAPI

通过HDFS提供的JavaAPI,我们可以完成以下的功能:

(一)在HDFS上创建目录

(二)写入数据(上传文件)

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream; import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;
import org.junit.Test; import com.jcraft.jsch.Buffer; public class TestUpload { @Test
public void testUpload() throws IOException{
System.setProperty("HADOOP_USER_NAME", "root");
//NameNode core.site.xml
Configuration conf = new Configuration();
conf.set("fs.defaultFS", "hdfs://192.168.153.11:9000"); //构造一个输入流 <---HDFS
FileSystem fs = FileSystem.get(conf); InputStream in = new FileInputStream("D:\\temp\\hadoop-2.7.3.tar.gz"); //构造一个输出流------> HDFS
OutputStream out = fs.create(new Path("/tools/hadoop-2.7.3.tar.gz")); byte[] buffer = new byte[1024];
int len = 0; while ((len=in.read(buffer)) > 0) {
out.write(buffer, 0, len);
} out.flush(); in.close();
out.close(); }
}

(三)通过 FileSystem API 读取数据(下载文件)

(四)查看目录及文件信息

(五)查找某个文件在HDFS集群的位置

(六)删除数据

(七)获取HDFS集群上所有数据节点信息

大数据笔记(四)——操作HDFS的更多相关文章

  1. 大数据学习——java操作hdfs环境搭建以及环境测试

    1 新建一个maven项目 打印根目录下的文件的名字 添加pom依赖 pom.xml <?xml version="1.0" encoding="UTF-8&quo ...

  2. 大数据系列2:Hdfs的读写操作

    在前文大数据系列1:一文初识Hdfs中,我们对Hdfs有了简单的认识. 在本文中,我们将会简单的介绍一下Hdfs文件的读写流程,为后续追踪读写流程的源码做准备. Hdfs 架构 首先来个Hdfs的架构 ...

  3. Dapper学习(四)之Dapper Plus的大数据量的操作

    这篇文章主要讲 Dapper Plus,它使用用来操作大数量的一些操作的.比如插入1000条,或者10000条的数据时,再使用Dapper的Execute方法,就会比较慢了.这时候,可以使用Dappe ...

  4. 大数据笔记04:大数据之Hadoop的HDFS(基本概念)

    1.HDFS是什么? Hadoop分布式文件系统(HDFS),被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统.它和现有的分布式文件系统有很多共同点. 2.HDFS ...

  5. 大数据笔记09:大数据之Hadoop的HDFS使用

    1. HDFS使用: HDFS内部中提供了Shell接口,所以我们可以以命令行的形式操作HDFS

  6. 大数据-hadoop生态之-HDFS

    一.HDFS初识 hdfs的概念: HDFS,它是一个文件系统,用于存储文件,通过目录树定位文件,其次,他是分布式的,由很多服务器联合起来 实现功能,集群中的服务器各有各自的角色 HDFS设计适合一次 ...

  7. 大数据 - hadoop基础概念 - HDFS

    Hadoop之HDFS的概念及用法 1.概念介绍 Hadoop是Apache旗下的一个项目.他由HDFS.MapReduce.Hive.HBase和ZooKeeper等成员组成. HDFS是一个高度容 ...

  8. 大数据【二】HDFS部署及文件读写(包含eclipse hadoop配置)

    一 原理阐述 1' DFS 分布式文件系统(即DFS,Distributed File System),指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连.该系统架构 ...

  9. 大数据【四】MapReduce(单词计数;二次排序;计数器;join;分布式缓存)

       前言: 根据前面的几篇博客学习,现在可以进行MapReduce学习了.本篇博客首先阐述了MapReduce的概念及使用原理,其次直接从五个实验中实践学习(单词计数,二次排序,计数器,join,分 ...

  10. 大数据:Hadoop(HDFS 的设计思路、设计目标、架构、副本机制、副本存放策略)

    一.HDFS 的设计思路 1)思路 切分数据,并进行多副本存储: 2)如果文件只以多副本进行存储,而不进行切分,会有什么问题 缺点 不管文件多大,都存储在一个节点上,在进行数据处理的时候很难进行并行处 ...

随机推荐

  1. 删除MicrosoftOffice2016的扫尾工作

    因为用到一些画流程图之类的工具,想到以前用的Visio挺好用的,就找来安装一下,结果因为装了Microsoft Office2016在安装时报错不断,先说下网上的帖子:用OfficeDeploymen ...

  2. 选择排序--python

    def findSmallest(arr): smallest = arr[0] smallest_index = 0 for i in range(1, len(arr)): if arr[i] & ...

  3. [转帖]挖洞经验 | 获取Facebook Marketplace卖家精确地理位置信息

    挖洞经验 | 获取Facebook Marketplace卖家精确地理位置信息 https://www.freebuf.com/vuls/202820.html 知识就是力量 5000刀的一个漏洞. ...

  4. java常用类详细介绍及总结:字符串相关类、日期时间API、比较器接口、System、Math、BigInteger与BigDecimal

    一.字符串相关的类 1.String及常用方法 1.1 String的特性 String:字符串,使用一对""引起来表示. String声明为final的,不可被继承 String ...

  5. soot学习历程---(1)

    今天看了soot生成手册的部分内容,简单摘录一下 Scene 表示分析所处的完整环境,可以借此设置application class(用sootclass),主类(main),point-to和cal ...

  6. 数位DP 计划

    通常的数位dp可以写成如下形式: [cpp] view plain copy int dfs(int i, int s, bool e) { if (i==-1) return s==target_s ...

  7. c++多线程并发学习笔记(2)

    等待一个时间或其他条件 在一个线程等待完成任务时,会有很多选择: 1. 它可以持续的检查共享数据标志(用于做保护工作的互斥量),直到另一个线程完成工作时对这个标志进行重设.缺点:资源浪费,开销大 2. ...

  8. 在JSP中<%= >,<%! %>,<% %>所代表的含义

    <%! %>:是jsp中的声明标签,通常声明全局变量,常量,方法等. <% %>:<% java代码 %>,其中可以包含局部变量,java语句等. <%= % ...

  9. 基于Red5与ffmpeg实现rtmp处理NVR或摄像头的监控视频处理方案

    背景 各大监控视频平台厂商与外对接均是基于IE的OCX插件方式提供实时视频查看.历史视频回放与历史视频下载.在h5已大行其道的当下,基于IE的OCX插件方式已满足不了广大客户的实际需求,因此需要一个兼 ...

  10. java中数组的数组问题

    int[] arr = new int[10]; int[] arr2 = arr; arr[1] = 10; arr2[1] = 20; System.out.println(arr[1]); 上面 ...