Hadoop之HDFS01【介绍】
HDFS(Hadoop Distributed File System)分布式文件系统。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。
存储模型
假如我们有一个10T的文件要存储,而我们的硬盘空间只有1个T,那么这时候我们可以将这个10T的文件切成10个1T的文件来分别存储在10个硬盘中,HDFS的存储的原理其实也是这样的,将一个大文件进行线性切割成快(Block)然后存放在不同的服务器上,但很快你又会提出一个问题,如果一个字比如“存”在UTF-8当中占3个字节,而恰巧一个服务器存了1个字节而另外的2个字节存到了别的服务器上,这会出现我们使用的时候出现乱码,这个问题呢HDFS也帮我们解决了。后面会提到副本,相当于把文件克隆然后会进行一个修复操作。然后不同的文件分布到了不同的服务器上,所以是只允许写一次可以多次读取,那么HDFS存储模型的特点也就明显了。
序号 | 特点 |
---|---|
1 | 文件线性切割成块(Block):偏移量 offset (byte) |
2 | Block分散存储在集群节点中 |
3 | 单一文件Block大小一致,文件与 文件可以不一致 |
4 | Block可以设置副本数,副本分散在不同节点中 副本数不要超过节点数量(超过多余的副本会重复将浪费空间) |
5 | 文件上传可以设置Block大小和副本数 |
6 | 已上传的文件Block副本数可以调整,大小不变 |
7 | 只支持一次写入多次读取,同一时刻只有一个写入者(避免修改后要变动后面所有节点的偏移量) |
8 | 可以append追加数据 |
上传文件指定block大小和副本数量
hadoop fs -Ddfs.replication=2 -put a.txt /
hadoop fs -Ddfs.blocksize=67108864 -put fun1.sh /
已上传的文件Block副本数可以调整,大小不变
[root@hadoop-node01 ~]# hadoop fs -setrep -w 3 /fun1.sh
Replication 3 set: /fun1.sh
Waiting for /fun1.sh .... done
append追加数据
hadoop fs -appendToFile b.txt /a.txt
架构模型
-
文件元数据MetaData,文件数据
元数据
数据本身 -
(主)NameNode节点保存文件元数据:单节点 posix
-
(从)DataNode节点保存文件Block数据:多节点
-
DataNode与NameNode保持心跳,提交Block列表
-
HdfsClient与NameNode交互元数据信息
-
HdfsClient与DataNode交互文件Block数据
NameNode
存储元数据(MetaData),不存储具体的block
序号 | 特点 |
---|---|
1 | 基于内存存储,不和硬盘发生交互 |
2 | 持久化 |
NameNode主要功能:
序号 | 功能 |
---|---|
1 | 接受客户端的读写服务 |
2 | 收集DataNode汇报的Block列表信息 |
3 | NameNode保存metadata信息包括:文件owership和permissions,文件大小, 时间(Block列表:Block偏移量),位置信息 |
NameNode持久化
- NameNode的metadate信息在启动后会加载到内存
- metadata存储到磁盘文件名为”fsimage”
- Block的位置信息不会保存到fsimage
- edits记录对metadata的操作日志。。。
DataNode
本地磁盘目录存储数据(Block),文件形式,同时存储Block的元数据信息文件,启动DN时会向NN汇报block信息,通过向NN发送心跳保持与其联系(3秒一次),如果NN 10分钟没有收到DN的心跳,则认为其已经lost,并copy其上的block到其它DN
HDFS优缺点
优先
- 高容错性
数据自动保存多个副本
副本丢失后,自动恢复 - 适合批处理
移动计算而非数据
数据位置暴露给计算框架(Block偏移量) - 适合大数据处理
GB 、TB 、甚至PB 级数据
百万规模以上的文件数量
10K+ 节点 - 可构建在廉价机器上
通过多副本提高可靠性
提供了容错和恢复 机制
缺点
- 低延迟数据访问
比如毫秒级
低延迟与高吞吐率 - 小文件存取
占用NameNode 大量内存
寻道时间超过读取时间 - 并发写入、文件随机修改
一个文件只能有一个写者
仅支持append
文章来源: dpb-bobokaoya-sm.blog.csdn.net,作者:波波烤鸭,版权归原作者所有,如需转载,请联系作者。
原文链接:dpb-bobokaoya-sm.blog.csdn.net/article/details/88975728
- 点赞
- 收藏
- 关注作者
评论(0)