文章目录

  • 一、文件块大小
  • 二、HDFS的读写流程
  • 三:HDFS的Shell操作
    • 上传相关操作:
    • 下载相关操作:
    • HDFS直接操作:

一、文件块大小

在企业中,一般中小公司:128M,大公司:256M

思考:为什么块的大小不能设置太小,也不能设置太大?1:HDFS的块设置太小,会增加寻址时间,程序一直在找块的开始位置;
2:HDFS的块设置太大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需的时间。导致 程序在处理这块数据时,会非常慢总结:HDFS块的大小设置主要取决于磁盘传输速率

二、HDFS的读写流程

  • 1:客户端通过DistributedFileSystem向NameNode请求下载文件,NameNode通过查询元数据,找到文件块所在的DataNode地址
  • 2:挑选一台DataNode(就近原则,然后随机)服务器,请求读取数据
  • 3:DataNode开始传输数据给客户端(从磁盘里读取数据输入流,以Packet为单位来做校验)
  • 4:客户端以Packet为单位接收,现在本地缓存,然后写入目标文件。

  • 1:客户端通过DistributeFileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否存在,父目录是否存在
  • 2:NameNode方式是否可以上传
  • 3:客户端请求第一个Block上传到哪几个DataNode服务器上
  • 4:NameNode返回3个DataNode结点,分别为dn1、dn2、dn3
  • 5:客户端通过FSDataOuputStream模块请求dn1上传数据,dn1收到请求后会继续调用dn2,然后dn2调用dn3,讲这个通信管道建立完成
  • 6:dn1、dn2、dn3逐级应答客户端
  • 7:客户端开始往dn1上传第一个Block(先从磁盘读取数据放到一个本地内存缓存),以Packet为单位,dn1收到一个Packet就会传给dn2,dn2传给dn3;dn1每传一个packet会放入一个应答队列等待应答。
  • 8:当一个Block传输完成之后,客户端再次请求NameNode上传第二个Block的服务器

三:HDFS的Shell操作

基本语法:

hadoop fs 具体命令 或者 hdfs dfs 具体命令 两者等价

上传相关操作:

1)-moveFromLocal:从本地剪切粘贴到HDFS

hadoop fs -moveFromLocal 文件地址 HDFS地址

2)-copyFromLocal:从本地文件系统中拷贝文件到HDFS

hadoop fs -copyFromLocal 文件地址 HDFS地址

3)-put:等同于copyFromLocal

hadoop fs -put 文件地址 HDFS地址

4)-appendToFile:追加一个文件到已经存在的文件末尾

hadoop fs -appendToFile 文件地址 HDFS文件的地址

下载相关操作:

1)-copyToLocal:从HDFS拷贝到本地

hadoop fs -copyToLocal HDFS文件的地址 本地文件地址

2)-get:等同于copyToLocal

hadoop fs -get HDFS文件的地址 本地文件地址

HDFS直接操作:

1)-ls:显示目录信息

2)-cat:显示文件内容

3)-chagrp、chmod、-chown:同Linxu文件系统用法一样,修改文件所属组、权限

4)-mkdir:创建路径

5)-cp:从HDFS的一个路径拷贝到HDFS的另一个路径

6)-mv:在HDFS目录中移动文件

7)-tail:显示一个文件的末尾1kb的数据

8)-rm:删除文件或文件夹

9)-rm -r:递归删除目录及目录里面的内容

10)-du(-s -h):统计文件夹的大小信息

11)-setrep:设置HDFS中文件的副本数量

数据

8)-rm:删除文件或文件夹

9)-rm -r:递归删除目录及目录里面的内容

10)-du(-s -h):统计文件夹的大小信息

11)-setrep:设置HDFS中文件的副本数量

Hadoop——HDFS(2)相关推荐

  1. Hadoop实战(6)_搭建Apache Hadoop的Eclipse开发环境

    系列目录: Hadoop实战(1)_阿里云搭建Hadoop2.x的伪分布式环境 Hadoop实战(2)_虚拟机搭建Hadoop的全分布模式 Hadoop实战(3)_虚拟机搭建CDH的全分布模式 Had ...

  2. Hadoop学习(二)——MapReduce\Yarn架构

    其他更多java基础文章: java基础学习(目录) 学习资料 理解Hadoop YARN架构 本文先讲MapReduce 1.x的框架.再讲MapReduce 1.x升级改进后MapReduce 2 ...

  3. Hadoop入门(六)Mapreduce

    一.Mapreduce概述 MapReduce是一个编程模型,用以进行大数据量的计算 二.Hadoop MapReduce (1)MapReduce是什么 Hadoop MapReduce是一个软件框 ...

  4. Hadoop入门(二)集群安装

    一.集群安装条件前置 在虚拟机上先准备一个机子  按用前面[安装单机hadoop] 已完成安装jdk,hadoop和ssh.网络等配置环境等. 虚拟机和操作系统 环境:ubuntu14 + hadoo ...

  5. Hadoop——Yarn(4)

    Hadoop--Yarn(4) 文章目录 1.Yarn基础架构 2.Yarn工作机制 3.作业提交全过程 4.调度器和调度算法 4.1先进先出调度器(FIFO) 4.2容量调度器(Capacity S ...

  6. hadoop是什么?新手自学hadoop教程(一)

    百科释义:Hadoop是一个由Apache基金会所开发的分布式系统基础架构. Hadoop是一个专为离线和大规模数据分析而设计的,并不适合那种对几个记录随机读写的在线事务处理模式. Hadoop=HD ...

  7. HDFS(下):NameNode和SecondaryNameNode、HDFS工作机制、故障处理、集群安全模式、服役退役节点、集群黑白名单、DataNode多目录详解、HDFS2.x新特性

    接上篇,上篇文章传送门:HDFS(上):HDFS优缺点.HDFS操作.HDFS客户端操作.HDFS的API.HDFS数据流.HDFS的IO流.HDFS读写数据流程.HDFS文件处理详解.windows ...

  8. 大数据常见面试题 Hadoop篇(2)

    大数据常见面试题 Hadoop篇(1)_后季暖的博客-CSDN博客1)序列化和反序列化序列化就是把内存中的对象,转换成字节序列(或其他数据传输协议)以便于存储(持久化)和网络传输.反序列化就是将收到字 ...

  9. 大数据常见面试题 Hadoop篇(1)

    目录 1.描述一下hdfs的写流程 读流程? 2.详细讲解一下hdfs的体系结构 3.如果一个datanode出现宕机,恢复流程是什么样的? 4.通常你是如何解决Haddop的NameNode宕机的, ...

最新文章

  1. matlab单元数组与结构体的区别,MATLAB中的结构体和单元数组
  2. JS实现图片上传时的本地预览,兼容IE和firefox谷歌
  3. 调整linux的时钟
  4. 阿里重磅发布大规模图神经网络平台AliGraph,架构算法解读
  5. 考研英语一2011年真题模考总结
  6. OpenCV学习笔记(四十一)——再看基础数据结构core OpenCV学习笔记(四十二)——Mat数据操作之普通青年、文艺青年、暴力青年 OpenCV学习笔记(四十三)——存取像素值操作汇总co
  7. Brainburn movies
  8. Android开发之android4.4沉浸式状态栏后toolbar和状态栏重复(重叠,覆盖)的bug
  9. [Windows]python+PyQT+Eric安装配置
  10. linux java weblogic,Linux java 安装问题
  11. Query with 0 value even no record found
  12. Keil C51大工程建立,模块化编程
  13. 在android studio中启动模拟器的时候报错...keeps shopping
  14. 5G 网络的会话性管理上下文对比介绍
  15. java 88 64位免安装_JAVA88
  16. 计算机专业读研外文文献怎么找,计算机专业学术论文参考文献推荐 计算机专业学术外文文献怎么找...
  17. D类音频功放(CS8120例)
  18. 地上半地下储罐的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
  19. U盘安装Win7操作系统
  20. syncthing开源工具,同步文件内容,入门操作简要指导

热门文章

  1. 30多岁的程序员仍然奋斗在一线
  2. 理解最小生成树与权值最小边无关
  3. python中深浅复制的问题
  4. 卷积法求解光斑质心(附源码,C++、opencv)
  5. java URI 编码解码
  6. 20171130C语言知识点梳理
  7. mvnrepository.com jar包下载
  8. Redis系列之key操作命令与Redis中的事务详解(六)
  9. asp:get请求写法
  10. iOS开发之创建颜色渐变视图View