Hadoop学习(二):HDFS架构和关键概念
1. HDFS简介
HDFS(Hadoop Distributed File System,Hadoop分布式文件系统),它是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,适合那些有着超大数据集(large data set)的应用程序。
2. HDFS的架构图
3. HDFS关键概念
(1)块(Block)
−HDFS有自己的管理单位,称为数据块。
−它的大小是根据硬件特性和一些指标推算出来的,如一个指标就是减小寻址开销,典型的大小是64MB。
−当一个文件在HDFS上进行存储时,它会按照数据块大小被分成多个块,而且一个文件的每个块会尽可能地存储于不同的DataNode中。
(2)名称节点(NameNode)
−管理者,是一个中心服务器。
−负责管理文件系统的命名空间(NameSpace),命名空间信息在命名空间镜像(fsimage)和编辑日志(edits)中永久保存。
•fsimage中保存的是命名空间的元数据信息;
•edits保存的是对命名空间的所有操作。
−它还记录着文件系统中各文件对应数据块到具体DataNode节点的映射,但这些信息是系统启动时从各个DataNode获取的,不会永久保存在名称节点。
−提供对命名空间的基本操作,如打开、关闭、重命名文件或目录。
(3)数据节点(DataNode)
−工作者。
−负责管理它所在节点上的存储。
−处理客户端的读写请求,在NameNode的统一调度下进行数据块的创建、读取、删除和复制,并定时向NameNode发送它所存储的块的列表。
(4)命名空间(NameSpace)
−HDFS支持传统的层次型文件组织结构。
(5)元数据(Metadata)
−用来描述目录或文件基本信息的结构。
(6)副本
−在HDFS中,对一个数据块的存储就称为存储了一个副本,副本的个数是可以配置的,默认为3。