【概述】
上一篇文章讲解了,在一定DN节点规模,一定block数据量下的并发写文件的优化问题。
在这种节点、数据量规模的集群中,当HDFS全部重启(nn+dn全部重启),或者两个NN都重启后,需要经过较长时间,才能真正对外提供服务。
那么nn启动过程中都干了些啥,主要耗时点在哪,以及应当如何优化,本文就来聊聊这些问题——启动优化。
【启动流程与耗时分析】
NN的启动可以粗略的分为以下几个步骤:
启动http服务
加载文件系统
启动rpc服务
按需启动插件服务
处理dn的注册以及dn的全量块汇报
其中启动HTTP服务、RPC服务,都是在对应配置的IP端口上进行监听,然后创建对应的reader线程、handler线程,然后等待客户端的连接并处理客户端的请求。
而加载文件系统则是启动过程中的关键步骤,又可以细分为:
加载fsimage文件
加载fsimage的MD5文件并进行比对校验
加载editlog文件
checkpoint的保存(可选)
进入安全模式
加载fsimage就是读取fsimage文件中的内容,并以此在内存中构建相关的元数据信息;加载editlog则是读取本地editlog文件或到JournalNode上读取editlog文件;checkpoint本质上还是对元数据信息持久化保存,对于HA模式而言,不需要进行checkpoint的保存处理;最后按需进入安全模式,等待dn的注册与块上报,当上报的块信息达到指定比

最低0.47元/天 解锁文章
897

被折叠的 条评论
为什么被折叠?



