-
HDFS简介
HDFS是Hadoop的分布式文件储存系统(Hadoop Distributed File System),主要为了解决大数据的处理问题。 -
HDFS的储存单元
HDFS会将一个文件分成固定大小的数据块,将其进行分布储存,储存到不同的节点上。为了防止部分服务器宕机,储存还会储存副本,默认为每个数据块有3个副本,并且储存在不同的数据节点上。 -
NameNode
NameNode主要功能是接受客户端的读写服务,并且收集DataNode的数据列表,他是基于内存储存的,不和磁盘进行交互。NameNode保存的是元数据(文件的归属,大小,时间,权限,block列表:block偏移量)。举个例子,当zhangsan用户需要上传一个file1文件的时候,将命令加载到editslog中,editslog执行加载到NameNode中,加载到内存中,而fsimage保存了最新的元数据检查点,类似快照,每隔一段时间做一次快照,保证数据的持久化。 -
DataNode
DataNode中储存了Block的数据,数据储存再本地磁盘中。 -
SecondaryNameNode
他的主要工作是帮助NameNode合并editslog文件和fsimage。当editslog的数据量到达设置的大小的时候或者触发设置的时间间隔的时候。触发合并。会先将Primary NameNode中的editslog和fsimage拷入Secondary NameNode,合并成fsimage.ckpt,再将其拷入Primary NameNode中,替换fsimage中的数据,如果这途中有操作数据,将操作存入edits文件,然后将fsimage和edits加载到内存中。具体流程图如下:
Hadoop之HDFS
最新推荐文章于 2024-12-25 23:10:31 发布