首页 > 其他 > 详细

HDFS总结

时间:2019-09-11 00:31:24      阅读:133      评论:0      收藏:0      [点我收藏+]

是什么?

分布式文件存储系统(是一个跨多台机器的文件存储系统)

HDFS设计,特性:

  1. 分布式:标准的主从架构(NameNode   DataNode)
  2. 一次写入多次读取:数据侧重于分析
  3. 注重数据吞吐量,交互延迟高,不适合做网盘
  4. 侧重于大文件存储,不利于小文件,小文件吃内存

基本原理:

对外如同一个黑盒子,用户用户不用关心内部的细节,只关心文件存储提取是否便利
对内是一个标准的主从架构,各司其职,共同配合,对外提供服务
文件上传下载流程:
技术分享图片
技术分享图片

nn职责:

                管理命名空间namespace(目录树结构) 文件和可以对应信息
                管理众多的Datanode
                成为访问HDFS的唯一访问路径
                元数据保存在内容 工作机器需要大量RAM随机存取存储器(random access memory的缩写
    

nm职责

                   负责具体的数据存储
                    配合nn完成文件存储服务
                    但是向nn发送心跳  3秒    汇报块信息   6小时

HDFS操作:

                    shell命令:  put:上传操作,从本地到目标
                                         get:下载操作,将文件下载到本地文件系统
                                         mkdir:创建空白文件
                                         appendToFile:把多个文件追加到已经存在文件的末尾
                                         getMerge rm -r:下载合并,合并下载多个文件

Java api

                                    类:FileSystem.get() 文件系统实例   Configuration 配置对象类
                                    客户端身份:客户端设置身份符合hdfs权限
                                    本地环境:winutils.exe hadoop在windows配置环境变量

其他辅助功能:

                                        Hadoop Archive 档案:将小批文件合并成一个大文件的档案
                                        hdfs snapshot:先允许设置(disamain)快照 然后才可以创建快照
                                        可以指定某个文件夹设置备份。
             

1、hdfs的组成部分有哪些,分别解释一下:namenode(管理文件系统元数据)    datanode(负责具体数据块存储  服务于namenode)
2、hdfs的高可靠如何实现:分块存储,副本机制
3、hdfs的常用shell命令有哪些 -put  -get  appendToFile  getmerge  
4、hdfs的常用java api有哪些  :略
5、请用shell命令实现目录、文件的增删改查
增:hadoop fs  -get  <路径>
删:hadoop fs -rm [-skipTrash] <路径>
改:hadoop fs -put  <路径>
查:hadoop fs -cat <路径>
6、请用java api实现目录、文件的增删改查:去看api总结

 



HDFS总结

原文:https://www.cnblogs.com/TiePiHeTao/p/1a480a5f4e0b5865a1cba8f14493e0bb.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!