前言:Hadoop2.0中基于JournalNode的双NameNode的元数据同步机制

日志节点(JournalNode)的概念及作用

JournalNode是HA集群(高可用集群,HighAvailabilityCluster)中Active NameNode(ANN,活动名称节点)和StandBy NameNode(SNN,备用名称节点)之间编辑日志Edits和HDFS元数据共享的传输介质。

主要作用是:为两个NameNode之间共享数据,同步状态。

过程

  1. Active Namenode往Journal Nodes中写EditLog数据

  2. StandBy Namenode再从Journal Nodes中读取EditLog数据进行同步

日志管理器(QJM)的概念及工作原理

概念:QJM是由多个日志节点JournalNodes(JN)组成的JournalNode集群,主要用于存储EditLog,一般运行奇数个JournalNodes,至少需要3个,每个JournalNode保存同样的EditLog副本。

基于QJM共享存储的数据同步机制:

  1. 当Active NameNode执行任何有关命名空间的修改,它需要告知JournalNodes集群中大多数(一半以上)的JournalNodes进程

  2. 而Standby NameNode负责观察集群中JournalNodes的变化,有能力从JournalNodes中读取从Active NameNode发送过来的信息,一直监控EditLog的变化,并更新其内部的命名空间,一直监控EditLog的变化,并更新其内部的命名空间

  3. 一旦Active NameNode遇到错误,Standby NameNode需要已经从JournalNodes中读出全部EditLog日志,保证在故障切换发生前其NameNodes的状态已经完全同步,然后,Standby NameNode再切换成Active状态

双NameNode的同步机制相关推荐

  1. 解决HDFS NameNode启动时Loading edits时间超长的问题(NameNode数据同步机制介绍)

    背景 有个好久好久没怎么维护的Hadoop集群,一直在提供服务,也做了HA,由于某些原因要对HDFS做重启,重启前检查了遍服务,发现另一个NameNode已经挂了有一段时间了. 重启过程倒是没啥问题, ...

  2. MySQL同步机制、主从复制半同步和双主配置

    复制架构衍生史 在谈这个特性之前,我们先来看看MySQL的复制架构衍生史. 在2000年,MySQL 3.23.15版本引入了Replication.Replication作为一种准实时同步方式,得到 ...

  3. 幻方、九坤、灵均集体发声:已与监管建立信息同步机制

    量化投资与机器学习微信公众号,是业内垂直于量化投资.对冲基金.Fintech.人工智能.大数据等领域的主流自媒体.公众号拥有来自公募.私募.券商.期货.银行.保险.高校等行业30W+关注者,荣获202 ...

  4. 01 线程同步机制封装类

    01 线程同步机制封装类 RAII RAII全称是"Resource Acquisition is Initialization",直译过来是"资源获取即初始化" ...

  5. 10、同步机制遵循的原则_我要遵循的10条原则

    10.同步机制遵循的原则 by Haseeb Qureshi 由Haseeb Qureshi 我要遵循的10条原则 (10 Principles I Want to Live By) I just c ...

  6. Java多线程的同步机制(synchronized)

    一段synchronized的代码被一个线程执行之前,他要先拿到执行这段代码的权限,在 java里边就是拿到某个同步对象的锁(一个对象只有一把锁): 如果这个时候同步对象的锁被其他线程拿走了,他(这个 ...

  7. Nature Neuroscience|群际冲突的脑间同步机制

    本文来源:"认知神经科学与学习国家重点实验室"官网 编辑:Yezi 审阅:mingzlee7 马燚娜课题组在<Nature Neuroscience> 发表论文揭示群际 ...

  8. Linux 多线程同步机制:互斥量、信号量、条件变量

    互斥量:互斥量提供对共享资源的保护访问,它的两种状态:lock和unlock,用来保证某段时间内只有一个线程使用共享资源,互斥量的数据类型是pthread_mutex_t 主要涉及函数:pthread ...

  9. Java高级-线程同步机制实现

    2019独角兽企业重金招聘Python工程师标准>>> 前言 我们可以在计算机上运行各种计算机软件程序.每一个运行的程序可能包括多个独立运行的线程(Thread). 线程(Threa ...

最新文章

  1. Jupyter进阶教程
  2. nios ii小实验——第一个demo指导书
  3. express html文件接收路由参数,express 获取post 请求参数
  4. appSettings 配置mysql_app.config数据库配置字符串的三种取法
  5. 致敬F1七冠王!Redmi K50电竞版邀请函曝光 打造掌上梦幻跑车
  6. Best Practices for AWS Security Using CloudCheckr
  7. Confluence 6 嵌套用户组的示例
  8. distcp用于集群中数据传输解读
  9. Codeforces Global Round 14, C. Phoenix and Towers
  10. MSN登录问题:Error 80072ee7
  11. 世界三大数字电视标准简介
  12. 获得bat的运行目录
  13. LabView的简单例题,尽量做到一题多解
  14. mysql 联合主键_Mysql的联合主键
  15. IT运维外包甩不掉的包袱
  16. 硬盘安装archlinux
  17. Swin-Unet跑自己的数据集(Transformer用于语义分割)
  18. 南理工硕士论文latex模板
  19. 基于点灯科技的温湿度传感器设计:STM32C8T6+DHT11+0.96寸oled显示屏+ESP8266
  20. 进阶项目(9)IIC通信协议程序设计讲解

热门文章

  1. 斯坦福大学机器学习第六课“逻辑回归(Logistic Regression)”
  2. 算法提高课-搜索-DFS之连通性模型-AcWing 1113. 红与黑:dfs和bfs两种做法
  3. win10如何下载适合自己python版本的pygame?
  4. SpringBoot+pagehelper分页之后还显示全部数据(分页不管用)的解决方案
  5. Leetcode236 最近公共祖先-二叉树两次遍历
  6. 手机哪个好用计算机,手机计算器软件哪个好用
  7. java arraycollection_Java集合(三)--Collection、Collections和Arrays
  8. centos7 python3 sqlserver_Centos7.3下SQLServer安装配置方法图文教程
  9. C语言鹦鹉学舌1,鹦鹉学舌真是简单的学舌吗?为什么他们清晰的知道在哪用哪些词...
  10. 门限的限意思是什么_门限是什么意思_门限英文翻译