HDFS的特点
-
分布式文件系统。
-
保存多个副本,提供容错机制,副本丢失或宕机的自动恢复能力。
-
适合大数据处理,文件分块存储,默认是128M;文件与Black的对应关系存储在NameNode所在节点的内存中,方便文件的寻址和访问。如果小文件过多则会增加HDFS的NameNode节点的负担。
-
流式数据访问,一次写入,多次读取。仅支持Append,不支持修改文件内容;
-
水平扩展,增加DataNode节点,无需停止服务,自动完成;
HDFS的关键元素与概念
-
Black:文件块,默认为128M;
-
NameNode:Master节点,管理数据块映射,处理客户端的读写请求,配置副本策略。管理HDFS的名称空间。保存整个文件系统的目录信息(文件信息,分块信息)。
-
SecondarNameNode:是NameNode的小弟,负责分担NameNode的工作。是NameNode的冷备份;合并fsimage和fsedits然后再发给NameNode。(热备份:b是a的热备份,如果a坏掉了,那么b马上运行,替代a的工作。如果b是a的冷备份,那么当a坏掉时,b无法替代a的工作;但是b上面会存储a的信息,减少a坏掉时候的损失。)
-
DataNode:Slave节点,负责存储Client发来的Black,执行数据的读写操作;
-
fsimage:元数据镜像文件(文件系统的目录树)
-
fsedits:元数据的操作日志(针对文件系统所做的修改操作)
HDFS的架构原理