问:首先思考元数据HDFS的元数据会存在哪里?
答:内存微信
问:那若是断电了怎么办?
答: 为了不断电等问题形成数据丢失,HDFS还会把元数据的镜像文件存放在磁盘,叫作FSImage.但元数据会发生不停的添加/更新操做.不停的IO很是影响效率,所以同时使用EditLog 用来保存HDFS运行开始以来的对元数据的各类操做,所以 FSImage + EditLog 即为此时内存中的元数据一致。spa
问: 若是EditLog过大了怎么办?
答: 此时须要清理Editlog 同时更新磁盘上的FSImage。因而有了2NN(Secondary NameNode)blog
具体工做机制以下:内存
HDFS启动时 经过加载本地的Editlog和FSImage并合并到内存中去
运行过程当中Editlog更新不断增大
当1)定时时间到了 2)Editlog满了 就会触发2NN 的Checkpoint机制it