写点什么

架构师训练营第八章作业

用户头像
吴吴
关注
发布于: 2020 年 07 月 29 日

请画出 DataNode 服务器节点宕机的时候,HDFS 的处理过程时序图

通信管道建立后, 确认队列(ack queue)等待传输结果, 队列确认完成后返回给客户端.

传输完成前namenode关闭

一个Block在datanode传输成功后, 如果client没来得及返回响应, namenode挂掉, 就会出现数据丢失(配置namenode高可用)

如果传输过程中datanode出现故障

关闭pipeline(通信管道)->根据ack queue将已经发送的pocket添加回data queue(撤回已经发送到故障节点的pocket) -> namenode记录故障节点中的未完成的block信息, 待节点恢复后, 删除这部分数据 -> 在剩余的节点上建立新的通信管道 -> 继续传输pocket

-> datanode挂掉后缺失的副本会namenode管理下恢复





用户头像

吴吴

关注

还未添加个人签名 2018.03.02 加入

还未添加个人简介

评论

发布
暂无评论
架构师训练营第八章作业