Hadoop中SecondaryNameNode工作机制
来源:互联网 发布:网络上消费者投诉电话 编辑:程序博客网 时间:2024/06/04 19:00
http://www.cnblogs.com/thinkpad/p/5173705.html
首先来看一下HDFS的结构,如下图:
如上图,在HDFS架构中,NameNode是职责是管理元数据信息,DataNode的职责是负责数据存储,那么SecondaryNameNode的作用是什么呢?
其实SecondaryNameNode是hadoop1.x中HDFS HA的一个解决方案,下面我们来看一下SecondaryNameNode工作的流程,如下图:
1.NameNode管理着元数据信息,元数据信息会定期的刷到磁盘中,其中的两个文件是edits即操作日志文件和fsimage即元数据镜像文件,新的操作日志不会立即与fsimage进行合并,也不会刷到NameNode的内存中,而是会先写到edits中(因为合并需要消耗大量的资源)。当edits文件的大小达到一个临界值(默认是64MB)或者间隔一段时间(默认是1小时)的时候checkpoint会触发SecondaryNameNode进行工作。
2.当触发一个checkpoint操作时,NameNode会生成一个新的edits即上图中的edits.new文件,同时SecondaryNameNode会将edits文件和fsimage复制到本地。
3.SecondaryNameNode将本地的fsimage文件加载到内存中,然后再与edits文件进行合并生成一个新的fsimage文件即上图中的Fsimage.ckpt文件。
4.SecondaryNameNode将新生成的Fsimage.ckpt文件复制到NameNode节点。
5.在NameNode结点的edits.new文件和Fsimage.ckpt文件会替换掉原来的edits文件和fsimage文件,至此,刚好是一个轮回即在NameNode中又是edits和fsimage文件了。
6.等待下一次checkpoint触发SecondaryNameNode进行工作,一直这样循环操作。
注:checkpoint触发的条件可以在core-site.xml文件中进行配置,如下:
- <property>
- <name>fs.checkpoint.period</name>
- <value>3600</value>
- <description>The number of seconds between two periodic checkpoints.
- </description>
- </property>
- <property>
- <name>fs.checkpoint.size</name>
- <value>67108864</value>
- <description>The size of the current edit log (in bytes) that triggers
- a periodic checkpoint even if the fs.checkpoint.period hasn't expired.
- </description>
- </property>
- Hadoop中SecondaryNameNode工作机制
- Hadoop中SecondaryNameNode工作机制
- hadoop 中NameNode和SecondaryNameNode的工作原理
- hadoop 中NameNode和SecondaryNameNode的工作原理
- hadoop secondarynamenode
- Hadoop中namenode和secondarynamenode分开部署
- hadoop中secondarynamenode节点添加方法
- hadoop中namenode工作机制简图
- hadoop中NameNode、DataNode、SecondaryNameNode、JobTracker 、TaskTracker介绍
- Hadoop中namenode/secondarynamenode/yarn的一些配置
- hadoop SecondaryNameNode和NameNode
- hadoop SecondaryNameNode和NameNode
- hadoop secondarynamenode的作用
- Hadoop secondarynamenode应用
- hadoop secondarynamenode的作用
- Hadoop学习之SecondaryNameNode
- Hadoop学习之SecondaryNameNode
- hadoop SecondaryNameNode和NameNode
- 错误使用Handler引发的内存泄露
- 如何理解计算机的内存管理的分段和分页机制
- Spring Security教程(4)---- 数据库表结构的创建
- 编辑器上传图片出现You don't have permission to access /data/resource/kindeditor/php/upload_json.php on this s
- 栈
- Hadoop中SecondaryNameNode工作机制
- 硬件系统概要设计-1-测试的可行性分析和工艺的可行性分析
- HDU-1072 Nightmare(bfs)
- windows下Python安装pymysql
- Java 操作Oracle数据库
- Apache的Order Allow,Deny 详解
- 使用c++语言写个hello world
- P1156 垃圾陷阱
- Idea(Mac) 安装 PlantUML