Hadoop之HDFS初步认识(一)
2017-02-10 10:47
239 查看
一. Hadoop的知识架构图如下所示:
二. HDFS是什么?
1、HDFS是Hadoop生态圈中的分布式文件存储系统,主要是来源于Google 的GFS论文;全称:Hadoop Distributed File System。
2、易于扩展的分布式文件系统。
3、运行在大量普通廉价机器上,提供容错机制。
三. HDFS 的优缺点
1、优点:具有高容错性:数据通过保存多个副本,当副本丢失后会自动恢复;
适合批处理:移动计算而非移动数据,数据位置暴露给计算框架;
适合大数据处理:TB级甚至PB级数据的处理,10K+节点规模的数据;
流式数据访问:一次性写入多次读取;保证了数据的一致性;
主要为批处理应用设计,而非交互式应用,看重数据访问的吞吐量而非访问延迟。
可构建在廉价机器上:通过多副本提供可靠性,提供容错与副本恢复机制;
2、缺点:
不适合低延迟数据访问:比如毫秒级,低延迟高吞吐率;
不适合小文件存取:由于文件的元数据得存储在nameNode中,大量的小文件会占据nameNode的大量内存, 寻道时间超过读取时间;
不适合并发写入、文件随机修改:一个文件只有一个写者,不可以随便修改,只可追加;
四. HDFS的基本架构与原理
在看HDFS的原理前先了解如下问题:客户端如何访问HDFS中一个文件呢?具体流程如下。
1)首先从Namenode获得组成这个文件的数据块位置列表。
2)接下来根据位置列表知道存储数据块的Datanode。
3)最后访问Datanode获取数据。
1、HDFS的基本架构
hdfs部分由NameNode、SecondaryNameNode和DataNode组成。
NameNode是对全局数据的名字信息做管理的模块,
SecondaryNameNode是它的从节点,以防挂掉,
DataNode是真正的在每个存储节点上管理数据的模块。
其中:NameNode与SecondaryNameNode的关系如下图所示:
文字解说:
NameNode(NN)是HDFS里的中心管理节点,NN上的元数据全内存化,元数据主要分为两个部分:
(1)文件的元信息,如大小、时间戳、包含的block等;
(2) block到DataNode(DN)的映射关系。
前者持久化在NN本地,而后者则是在集群里DN启动时,由DN汇报上来。
存储节点管理:DN在启动时,会向NN汇报存储的block信息,并周期性的向NN发送心跳信息,
NN超过一定时间没有收到DN的心跳,就认为DN发生故障。
HDFS的架构图如下所示:
参考文档
HDFS对应的知识库:
http://lib.csdn.net/hadoop/node/318
HDFS设计思想:
https://yq.aliyun.com/articles/8942
相关文章推荐
- 浅谈对Hadoop中HDFS、MapRecuce及YARN的初步认知
- hadoop及hdfs一些初步的概念
- Hadoop 编程初步认识
- Hadoop概要-HDFS的认识
- Hadoop学习笔记之初步了解HDFS
- Hadoop云计算的初步认识
- Hadoop云计算的初步认识
- Hadoop初步认识
- Hadoop云计算的初步认识
- Hadoop云计算的初步认识
- 初步认识Hadoop
- Hadoop云计算的初步认识
- 初步认识Hadoop
- Hadoop的初步认识
- Hadoop之HDFS认识篇
- Redis初步认识
- SPI时序初步认识
- Hadoop学习笔记(6) ——重新认识Hadoop
- Hadoop Shell命令 |HDFS Shell命令| HDFS 命令
- Hadoop2.6.0使用Python操作HDFS的解决方案