HDFS架构图
namenode作用
1 | 由上面架构图可知,namenode作用:记录HDFS的元数据(比如:命名空间信息和块信息等),这些信息存储在内存中,这些信息也可以持久化到磁盘。 |
NameNode怎么把元数据保存到磁盘上的?
1 | 这里有两个不同的文件: |
Namenode启动过程
1 | NameNode把改动的操作写到HDFS的edit logs文件中,当NameNode服务重启时,NameNode会读取整个HDFS的快照并与edit logs合并,产生一个新的fsimage,旧的fsimage会自动删除。 |
潜在问题
1 | 在生产集群中NameNode服务是很少重启的,这也意味着当NameNode运行了很长时间后,edit logs文件会变得很大。在这种情况下就会出现下面一些问题: |
Secondary NameNode作用
1 | SecondaryNameNode就是来帮助解决上述问题的,它的职责是合并NameNode的edit logs到fsimage文件中。 |
工作原理
1 | 首先,它定时到NameNode去获取edit logs,并更新到Secondary NameNode自己的fsimage上。一旦它有了新的fsimage文件,它将其拷贝回NameNode中。 |
datanode作用
1 | (1) 负责实际数据存储,以及副本存放(HDFS默认存储3份数据副本) |
- 本文作者: GaryWu
- 本文链接: https://garywu520.github.io/2019/02/14/Mars-Hadoop-HDFS架构原理知识2/
- 版权声明: 本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!