`
wsql
  • 浏览: 11799602 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

HDFS1.0源代码解析—DataNode状态切换

 
阅读更多

Hadoop支持软件升级,对于Hadoop这样一个分布式的系统,升级将是一件很复杂的事情。下面介绍升级过程中DataNode的状态切换

首先来看DataNode可能存在的各种状态:


该图摘在别人博客(感觉画的很透彻)

上图描述了各状态之间的切换流程。

1、DataNoe的具体升级流程如下:见DataStorage.java的doUpgrade方法

获取当前的current和previous目录,如果previous目录存在先删除,将当前current目录重命名为previous.tmp,建立current到previous.tmp的硬链接,在current里写入新的VERSION文件,将previous.tmp改名为previous,完成升级。其实整个升级的过程只是对VERSION文件的改写,对原先的数据文件只是建立了硬链接。

2、DataNode的回滚流程:


分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics