一、为什么namenode持久化

  namenode通过内存存储hdfs集群的元数据(目录结构 文件信息 块对应关系),如果内存出现问题,那么会数据丢失,需要通过持久化,把内存中的数据定期的存储在硬盘中,进而保证namenode的数据安全。

二、持久化的原理

1、FSImage   (某一时刻  namenode镜像数据)

    默认存储位置

    /opt/install/hadoop-2.5.2/data/tmp/dfs/name

  2、EditsLog  (某一时刻后的,写日志操作)

    FSImage   会在集群格式化时,生成空的FSImage   ,后续用户的操作都会写入到EditsLog中

    每一次重启namenode时,把EditsLog和FSImage的数据在内存中合并,并生成一哥新的EditsLog,

    时间没到制定时间点或没有到事务数 FSImage时不会和EditsLog合并

    时间到制定时间点或到事务数 FSImage时会和EditsLog合并,生成新的FSImage(有数据)和新的EditsLog

   

  相关配置可以打开http://hadoop.apache.org/docs/r2.5.2/

    

    

        配置这些文件要在

          cd /opt/install/hadoop-2.5.2/etc/hadoop

        找到hdfs-site.xml文件添加

        

<property>
<name>dfs.namenode.name.dir </name>
<value>/opt/suns/fsimage</value>
</property>
<property>
<name>dfs.namenode.edits.dir </name>
<value>/opt/suns/editslog</value>
</property>

安全模式 safemode

namenode从新启动时,通过安全模式保证EditsLog和FSImage的合并,在这个过程中,只允许client进行读操作,而不能进行写操作。

hadoop中 namenode的持久化的更多相关文章

  1. Hadoop介绍-4.Hadoop中NameNode、DataNode、Secondary、NameNode、JobTracker TaskTracker

    Hadoop是一个能够对大量数据进行分布式处理的软体框架,实现了Google的MapReduce编程模型和框架,能够把应用程式分割成许多的 小的工作单元,并把这些单元放到任何集群节点上执行.在MapR ...

  2. hadoop中namenode启动失败

    jps发现namenode启动失败 每次开机都要重新格式化一下namenode才可以 其实问题出现自tmp文件上,因为每次开机就会被清空,所以现在我们配置一个tmp文件目录. 如果之前没有配置过,默认 ...

  3. hadoop中NameNode、DataNode和Client三者之间协作关系及通信方式介绍

    <ignore_js_op> 1)NameNode.DataNode和Client         NameNode可以看作是分布式文件系统中的管理者,主要负责管理文件系统的命名空间.集群 ...

  4. Hadoop中Namenode的HA查询和切换

    有一段时间没有关注公司服务器上自己搭的三台小型hadoop集群了,上星期公司机房停电了,这次上去start了集群,但是发现start之后无法工作了. 查看了jps发现该有的进程都有了,敲入 hadoo ...

  5. hadoop中namenode发生故障的处理方法

    Namenode 故障后,可以采用如下两种方法恢复数据: 方法一:将 SecondaryNameNode 中数据拷贝到 namenode 存储数据的目录: 方法 二: 使用 -importCheckp ...

  6. hadoop中遇到的各种错误记录

    hadoop中namenode无法启动          转载链接:https://blog.csdn.net/love666666shen/article/details/74350358 使用pi ...

  7. hadoop中HDFS的NameNode原理

    1. hadoop中HDFS的NameNode原理 1.1. 组成 包括HDFS(分布式文件系统),YARN(分布式资源调度系统),MapReduce(分布式计算系统),等等. 1.2. HDFS架构 ...

  8. hadoop中常见元素的解释

    secondarynamenode 图: secondarynamenode根据文件的的大小对namenode的编辑日志和镜像日志 进行合并. 光从字面上来理解,很容易让一些初学者先入为主的认为:Se ...

  9. Hadoop 中疑问解析

    Hadoop 中疑问解析 FAQ问题剖析 一.HDFS 文件备份与数据安全性分析1 HDFS 原理分析1.1 Hdfs master/slave模型 hdfs采用的是master/slave模型,一个 ...

随机推荐

  1. 模板—BSGS

    #include<iostream> #include<cstdio> #include<cmath> #include<map> #define LL ...

  2. Mysql统计信息处理及binlog解释

    TODO use db_name; -- 分析表 ANALYZE TABLE table_name; -- 查看表信息 ; -- 查看索引 SHOW INDEX FROM table_name; ht ...

  3. shell Usage

    Usage(){ cat <<EOF Usage: $ [tenant] $ (Run database table check_table_data_config all tenants ...

  4. Jquery FormData文件异步上传 快速指南

    网站中文件的异步上传是个比较麻烦的问题,不过现在通过jquery 可以很容易的解决这个问题: 使用jquery2.1版本,较老版本不支持异步文件上传功能: 表单代码: <form id=&quo ...

  5. 2018-6-24-WPF-使用RPC调用其他进程

    title author date CreateTime categories WPF 使用RPC调用其他进程 lindexi 2018-06-24 14:41:29 +0800 2018-2-13 ...

  6. H3C ISDN功能组和参考点

  7. H3C 帧中继基本配置命令

  8. springmvc 多文件/文件夹上传 下载

    注入依赖 <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding&g ...

  9. sorted排序算法

  10. 关于 vue 生命周期 钩子函数 事件

    vue实例有一个完整的生命周期,也就是从开始创建.初始化数据.编译模板.挂载Dom.渲染->更新->渲染.卸载等一系列过程,我们称这是vue的生命周期. 通俗的将就是vue实例从创建到销毁 ...