NN、DN、2NN、JN
NN–NameNode
- NN负责对HDFS上的元数据进行整理
- 在NN上存放了两份重要信息:1.文件由哪些块组成、2.每个块存在哪个位置
- 除此之外还有一些非关键信息:文件名、上传者、上传时间
- 元数据在磁盘中存储在fsimage中
NN的持久化
- NN负责整个HDFS的负载,当客户端对数据进行写操作时候会产生元数据,导致元数据不断增加,存在丢失风险,所以需要对NN中的元数据进行持久化
- 存在着两种持久化的方法:
- 将所有的写操作记录下来,形成日志文件
- 将当前内存内存的数据形成一个快照
- 日志文件持久化方法存储速度快,但恢复速度很慢,因为要将日志文件中的所有操作重新执行一遍
- 快照方法如果内存中的数据越来越多,会导致镜像越来越大。在运行之间持久化的话,NN可能会瘫痪
2NN–SecondaryNamenode
- 可以借助2NN对NN进行部分恢复
- 但是在HDFS中NN和2NN是两种不同的进程,2NN只能起到辅助作用,不能代替NN
使用2NN对NN进行部分数据恢复
- 将2NN,namesecondary中的current复制到NN下的name下就行
DN–DataNode
- 数据节点,主要用来读写文件的数据块。
- 在其中主要存储的是数据块和数据块校验
DN的启动
- DN启动时首先向NN根据clusterID进行注册
- 注册成功后每一小时上报所有块的信息
- 然后DN需要每隔3s去ping一下NN,如果NN10分钟没有接到DN的心跳,则认为DN坏了
JN–JournalNode
- 用于NN之间共享数据
- 两个NN之间为了通信,会通过一组名称为JournalNode的独立进程进行通信,当active状态的NN命名空间有任何修改时,会告知大部分的JN进程,standby状态的NN有能力读取JNs的变更信息,并且一直监控editlog的变化,并把变化应用于自己的命名空间,。
- standby可以确保在集群出错时,命名空间状态已经完全同步了
activc状态的NN和standby状态的NN
- 一个集群中可以有两个NN,一个处于active状态,一个处于standby状态
- activc状态的NN提供服务。standby状态的NN处于休眠状态,只进行数据同步,时刻准备提供服务
- 在一个典型的HA集群中,每个NameNode都是一台独立的服务器。在任一时刻,只有一个NameNode处于active状态,另一个处于standby状态。其中,active状态的NameNode负责所有的客户端操作,standby状态的NameNode处于从属地位,维护着数据状态,随时准备切换。
- 为了确保快速切换,standby状态的NN也有必要知道集群中数据块的位置。所以所有的DN都必须配置两个NN的地址,发送数据块信息和心跳给两个NN
两个NN(active、standby)分别对JN进行读写数据
对于HA集群而言,确保同一时刻只有一个NameNode处于active状态是至关重要的。否则,两个NameNode的数据状态就会产生分歧,可能丢失数据,或者产生错误的结果。为了保证这点,JNs必须确保同一时刻只有一个NameNode可以向自己写数据
- active状态的NN向JN写数据,处于standby状态的NN从JN读数据
NN、DN、2NN、JN相关推荐
- OpenLDAP、什么是目录服务、OpenLDAP简介、LDAP的基本模型、目录树概念、(DC、UID、OU、CN、SN、DN、RDN、c、o)、LDAP的使用
2.OpenLDAP 2.1.什么是目录服务 2.2.OpenLDAP简介 2.3.LDAP的基本模型 2.3.1.目录树概念 2.3.2.DC.UID.OU.CN.SN.DN.RDN.c.o 2.4 ...
- 大数据疫情可视化平台1_基于Hadoop3.2.1、Hive3.1.2、搭建疫情信息可视化系统
前言 项目效果展示 项目源码免费获得请私信博主,绝对免费! 目录 Linux基础命令:往期博客Linux课堂篇3_Linux目录结构.快捷键.常用基础命令 Hadoop3.2.1介绍与环境搭建 Hiv ...
- Hadoop基础【HDFS、Yarn、MapReduce框架概述、框架的搭建】
1.Hadoop是什么 是一个由Apache基金会所开发的分布式系统基础架构:主要解决海量数据的存储和海量数据的分析计算问题:hadoop通常是指一个更加宽泛的概念,Hadoop生态圈. 最先遇到大数 ...
- HDFS High Availability(HA)高可用、单点故障、主备集群、脑裂问题、数据同步问题、HDFS HA解决方案—QJM
HDFS High Availability(HA)高可用 1.1 High Availability背景知识 1.1.1 单点故障.高可用 单点故障(英语:single point of failu ...
- HDFS(下):NameNode和SecondaryNameNode、HDFS工作机制、故障处理、集群安全模式、服役退役节点、集群黑白名单、DataNode多目录详解、HDFS2.x新特性
接上篇,上篇文章传送门:HDFS(上):HDFS优缺点.HDFS操作.HDFS客户端操作.HDFS的API.HDFS数据流.HDFS的IO流.HDFS读写数据流程.HDFS文件处理详解.windows ...
- 冒泡、快速、选择、插入排序以及时间复杂度、空间复杂度的解析
冒泡.快速.选择.插入排序以及时间复杂度.空间复杂度的解析 时间复杂度 时间复杂度的表示方法 时间复杂度的分析和计算方法 常见的几种时间复杂度 常见的时间复杂度排序 空间复杂度 时间复杂度的分析和计算 ...
- 计图(Jittor) 1.1版本:新增骨干网络、JIT功能升级、支持多卡训练
计图(Jittor) 1.1版本:新增骨干网络.JIT功能升级.支持多卡训练 深度学习框架-计图(Jittor),Jittor的新版本V1.1上线了.主要变化包括: • 增加了大量骨干网络的支持,增强 ...
- 【camera】全景驾驶感知网络YOLOP部署与实现(交通目标检测、可驾驶区域分割、车道线检测)
全景驾驶感知网络YOLOP部署与实现(交通目标检测.可驾驶区域分割.车道线检测) 项目下载地址 包含C++和Python两种版本的程序实现:下载地址 YOLOP开源项目: https://github ...
- PyTorch 1.6、TensorFlow 2.3、Pandas 1.1同日发布!都有哪些新特性?
作者 | 肖智清 出品 | AI科技大本营(ID:rgznai100) 7月29日,PyTorch 1.6.TenorFlow 2.3.Pandas 1.1恰巧同时发布.这三个库都是定期滚动更新,大约 ...
最新文章
- systemtap mysql_使用systemtap调试工具分析MySQL的性能
- 初识github之注册和基本概念
- python时域信号特征提取(各种因子)
- [转]VS2005中的代码视图显示行数
- 移动端双Token免登录(附代码)
- html提交表单原理,HTML5之Form 表单理论
- 学术会议html模板,学术会议poster模板
- 如何在服务器上上传手游源码,【仙变3手游】跨服服务端游戏源码+架设教程+双端+后台...
- 关于大学生创新创业项目赛事汇总
- Emeditor -- windows最强txt编辑器,没有之一
- java实现数组的奇偶数互换
- VUE + Element-ui 按住Shift实现多选
- 阿里旺旺登陆提示超时
- 初学Java常用设计模式之——原型模式
- SAP的SYSTEM的函数列表和代码示例
- redis 查看的版本
- TensorFlow Lite编译Android so库
- 无法访问指定计算机,电脑打开磁盘/程序/文件时提示Windows无法访问指定设备、路径或文件怎么办...
- 稳压电源如何操作使用
- Java仿QQ客户端(用JTree实现好友列表)