HDFS架构概述(一)

HDFS架构概述(一)

作者:jh940514@163.com

1、概念
HDFS,它是一个文件系统(window电脑磁盘是NTFS),用于存储文件,通过目录树来定位,其次它是分布式的,由很多服务器联合起来实现其功能,由很多服务器联合起来实现其功能
HDFS的内部工作机制对客户端保持透明,客户端请求访问HDFS都是通过namenode申请来进行的
HDFS的设计是个一次写入,多次读写的场景,且不支持文件的修改。适合用来做数据分析,并不适合用来做网盘应用(因为不方便进行修改,延迟大,网络开销大,成本较高)
HDFS文件块的默认大小在2.x版本中是128M,老版本是64M,如果文件过大则分成若干块,每一个文件块都有自己的id方便查找分析

2、组成
1)NameNode(nn):存储文件的元数据,如文件名,文件目录结构,文件属性(生成时间、副本数、文件权限),以及每个文件的块列表和块所在的DataNode等,可以理解为目录
2)DataNode(dn):在本地文件系统存储文件块数据,负责管理用户的文件数据块,每一个数据块都可以在多个datanode上存储多个副本,以及块数据的校验(判断数据是否有损坏)
3)Secondary NameNode(2nn):用来监控HDFS状态的辅助后台程序,每隔一段时间获取HDFS元数据的快照
热备份:b是a的热备份,如果a坏掉,那么b马上运行代替a的工作
冷备份:b是a的冷备份,如果a坏掉,那么b不能马上代替a工作。但是b上存储a的一些信息,减少a坏掉之后的损失

3、HDFS文件块大小
HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数( dfs.blocksize )来规定,默认大小在hadoop2.x版本中是128M,老版本是64M
HDFS的块比磁盘的块大,其目的是最小化寻址开销,如果块设置的足够大,从磁盘传输数据的时间会明显大于定位这个块开始位置所需要的时间,因此传输一个由多个块组成的文件的时间取决于磁盘传输速率
如果寻址时间约为10ms,而传输速率为100MB/s,为了使寻址时间仅占传输时间的1%,我们要将块大小设置约为100MB。默认的块大小实际为64MB,但是很多情况下HDFS使用128MB的块设置
块的大小:10ms*100*100M/s=100M
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值