checkpoint过程
配置了HA的HDFS中,有active和standby namenode两个namenode节点。他们的内存中保存了一样的集群元数据信息,这个后续我会详细用一篇文章介绍HA,所以这里就不多说了。因为standby namenode已经将集群状态存储在内存中了,所以创建检查点checkpoint的过程只需要从内存中生成新的fsimage。

在hadoopHA中两个namenode节点为了数据同步会通过Journalnode相互通信。JournalNode存储管理EditsLog,俩个namenode共享这个EditsLog,两个NameNode都可以读取Edits;但EditsLog只有Active状态的NameNode节点可以做写操作;

  1. SBNN查看是否满足创建检查点的条件:
    (1) 距离上次checkpoint的时间间隔 >= dfs.namenode.checkpoint.period(2)Edits中的事务条数达到{dfs.namenode.checkpoint.period}
    (2) Edits中的事务条数达到dfs.namenode.checkpoint.period(2)Edits中的事务条数达到{dfs.namenode.checkpoint.txns}限制
    这两个条件任何一个被满足了,就触发一次检查点创建。
  2. SbNN将内存中当前的状态保存成一个新的文件,命名为fsimage.ckpt_txid。其中txid是最后一个edit中的最后一条事务的ID(transaction ID)。然后为该fsimage文件创建一个MD5文件,并将fsimage文件重命名为fsimage_txid。
  3. SbNN向active namenode发送一条HTTP GET请求。请求中包含了SbNN的域名,端口以及新fsimage的txid。
  4. ANN收到请求后,用获取到的信息反过来向SbNN再发送一条HTTP GET请求,获取新的fsimage文件。这个新的fsimage文件传输到ANN上后,也是先命名为fsimage.ckpt_txid,并为它创建一个MD5文件。然后再改名为fsimage_txid。fsimage过程完成。

最新文章

  1. JQ-动画合集(ing...)
  2. iOS后台挂起程序 当程序到后台后,继续完成Long-Running Task 任务
  3. wex5 实战 二维码生成,扫描,蓝牙打印
  4. mac svn 终端操作命令
  5. Java编程思想学习(十五) 注解
  6. 怎样从命令行进入mac桌面
  7. javaWeb中servlet开发——过滤器
  8. 在云服务器搭建WordPress博客(三)安装WordPress
  9. Mysql导出表结构及表数据 mysqldump用法
  10. Mahout快速入门教程
  11. [转]linux权限补充:rwt rwT rws rwS 特殊权限
  12. 取代netcat
  13. hue,kylin,ambari
  14. Spring,SpringMvc配置常见的坑,注解的使用注意事项,applicationContext.xml和spring.mvc.xml配置注意事项,spring中的事务失效,事务不回滚原因
  15. vue-cli+webpack在生成的项目中使用bootstrap的方法
  16. js 常用的工具函数
  17. [转]SOA架构设计经验分享—架构、职责、数据一致性
  18. Bugku-CTF之Web5(JSPFUCK??????)
  19. ReactiveX 学习笔记(23)RxCpp
  20. [日常] PHP与Mysql测试kill慢查询并检验PDO的错误模式

热门文章

  1. 网上流行护眼色的RGB值和颜色代码
  2. CDH删除节点(安全)
  3. c++(qt)程序员微信群
  4. navicat 远程链接Mysql问题
  5. python实现边缘提取
  6. Codeforces1183A(A题)Nearest Interesting Number
  7. java排查故障
  8. 使用phoenix踩的坑与设计思考
  9. zz MySQL redo log及recover过程浅析
  10. orcle报错:ORA-12737:Instant Client Light:unsupported server character set ZHS16GBK