Hadoop核心组成部分、HDFS存储模型和架构模型总结

Hadoop核心组成部分

(1)Hadoop Common:用来支撑其他模块的公共工具包
(2)HDFS: 一种分布式文件系统,提供对应用程序数据的高吞吐量访问。
(3)Hadoop Yarn:作业调度和集群资源管理的框架。
(4)Hadoop MapReduce:基于YARN的系统,用于并行处理大型数据集。

HDFS存储模型

存储模型:字节(一个文件就是一个字节数组)
 ①block块产生:文件线性切割成block块,偏移量(offset)(byte)
 ②block块存储:block分散存储在集群节点中
 ③block块大小要求:单一文件block大小一致,文件和文件可以不一致
 ④block块副本:block 可以设置副本,副本分散在集群的不同节点上,副本数量不能超过集群节点数量
 ⑤关于文件上传:
   文件上传可以设置block大小和副本数
   已经上传的文件Block副本数可以调整,大小不变
   仅支持一次写入多次读取,同一时刻只能有一个写入者
   可以append追加数据

架构模型

1、数据种类
  元数据MetaData,
  文件数据本身。
  
2、角色(主从架构)
 
 (1)NameNode存储:保存文件的元数据(目录树、路径也算)
   ①基于内存存储:不会和磁盘发生交换
     NameNode的数据只会在内存中
     持久化(Namenode基于内存存储,内存是掉电易失的,所以会将内存中的数据持久化到磁盘)
   ②主要功能:
     NameNode是保存文件元数据信息的
     NameNode用来和客户端交互,接收客户端的读写服务
     收集DataNode汇报上来的block块列表信息
   ③保存的metadata信息
     不保存位置信息,是因为需要保证数据一致性(提供百分之百准确的消息)

(2)DataNode:存储块文件,保存文件block数据,向NameNode汇报block块的列表
   ①存储:
     本地磁盘目录存储block块的数据,以文件形式
     存储block块的元数据信息
   ②功能:
     向Namenode汇报block块的信息
     和Namenode通过心跳(3秒一次)保持联系,如果Namenode10分钟没有接收到DataNode的心跳,则认为该DataNode已经lost,Namenode会将该DataNode上的block块复制到其他DataNode上
     
 (3)关系(HDFSClient、DataNode、NameNode):
  
   三者的关系:
   
     DataNode与NameNode保持心跳,DataNode向NameNode提交block列表;
     HDFSClient和Namenode交互文件元数据;
     HDFSClient和DataNode交互文件block数据

你可能感兴趣的:(大数据)