HDFS中的NameNode名节点——FSimage
HDFS缓冲区
Fsimage 文件映射,Edits文件操作记录。
与ES的缓冲区不同,ES是维护数据的变更,而HDFS缓冲区是用于名结点维护文件系统元数据(目录树)的机制。
在HDFS集群中,NameNode结点相较于DataNode数量较少,往往几个Namenode支撑着几百个DataNode的元数据和目录索引。当大量数据存入时,众多DataNode上同步进行的数据文件更新会在短时间内产生巨量的元数据(文件信息、块地址)。
想象一个这样的情况,1000台数据结点同时存入数据,但是只有一个名结点。1000GB的数据产生了10GB的元数据,数据节点很快处理完了1GB的平均数据量,但是名结点却要处理10GB的数据量,这时数据明明已经存入却不可用(因为不知道在哪)。
HDFS的FSimage缓冲机制,正是为了解决NameNode上元数据(目录)更新速度的问题,即NameNode直接在内存上更新元数据(内存更快),快速维护更新目录信息,并把数据的硬盘写入操作交由SecondaryNameNode完成(写入硬盘才能不丢失),这样便能保证目录的更新与数据存入相对同步完成。
具体过程:
HDFS启动时, 文件系统的目录树被加载到名节点内存,在Namenode上生成FSimages(元数据文件),此时的FSimages是真实的目录树。当发生数据操作的时候,数据请求经过处理后被分发到Datanode上进行存储,同时NameNode更新存储在内存中的FSimage,并且将数据操作相关信息保存到内存中的Edits文件。内存中的信息虽然快但是不稳定,如果宕机更新的目录树便会丢失,更改过的文件也就找不到了地址了,因此每隔一段时间需要元数据信息(目录)存储到磁盘。每过一段时间或者Fimage文件过大,NameNode会将二者发送给副名结点,副结点会完成二者的合并和检验,然后将新的FSimage推送到Namenode的硬盘上,同时更新Version文件,让NameNode使用新版的FSimage(旧版的也不会被删除)。只有当元数据被写入到硬盘后,存储的数据才是真正安全的存入了。
HDFS中的NameNode名节点——FSimage的更多相关文章
- 018 HDFS中,namenode与datanode的交互
1.解释 2.启动过程 namenode需要等待给他汇报块的情况,然后namenode会给datanode一个反馈. namenode在启动的时候有一个等待的过程. 3.如果有块损坏 等待报告中,na ...
- hadoop的hdfs中的namenode和datanode知识总结
一,NameNode: 1, Namenode是中心服务器,单一节点(简化系统的设计和实现),负责管理文件系统的名称空间(namespace)以及客户端对文件的访问. 2, 文件操作,Namenod ...
- HDFS中NameNode管理元数据机制
NameNode职责 响应客户端请求 维护目录树 管理元数据(查询,修改) HDFS元数据存储 内存中有一份完整的元数据(特定数据结构) 磁盘有一个“准完整”的元数据的镜像文件 当客户端对HDFS中的 ...
- 【Hadoop学习】HDFS中的集中化缓存管理
Hadoop版本:2.6.0 本文系从官方文档翻译而来,转载请尊重译者的工作,注明以下链接: http://www.cnblogs.com/zhangningbo/p/4146398.html 概述 ...
- Sqoop1.99.7将MySQL数据导入到HDFS中
准备 本示例将实现从MySQL数据库中将数据导入到HDFS中 参考文档: http://sqoop.apache.org/docs/1.99.7/user/Sqoop5MinutesDemo.html ...
- 从 secondarynamenode 中恢复 namenode
1.修改 conf/core-site.xml,增加 Xml代码 <property> <name>fs.checkpoint.period</name> < ...
- 关于oracle的缓冲区机制与HDFS中的edit logs的某些关联性的思考
可能大家会问,oracle和HDFS属于不同场景的存储系统,它们之间为什么会有联系呢?确实,从技术本身来看,他们确实无关联,但利用“整体学习”的思想,跳出技术本身,可以发现Oracle的缓冲区和HDF ...
- HDFS中的读写数据流
1.文件的读取 在客户端执行读取操作时,客户端和HDFS交互过程以及NameNode和各DataNode之间的数据流是怎样的?下面将围绕图1进行具体讲解. 图 1 客户端从HDFS中读取数据 1)客户 ...
- Hadoop HDFS 中的一些常用命令
转载自:hadoop HDFS常用文件操作命令 命令基本格式: hadoop fs -cmd < args > 1.ls hadoop fs -ls / 列出hdfs文件系统根目录下的目录 ...
随机推荐
- Kubernetes --(k8s)volume 数据管理
容器的磁盘的生命周期是短暂的,这就带来了许多问题:第一:当一个容器损坏了,kubelet会重启这个容器,但是数据会随着container的死亡而丢失:第二:当很多容器在同一Pod中运行的时候,经常需要 ...
- NFS服务、SSHD服务
本章内容: NFS服务 SSHD服务 NFS服务 NFS(Network File System)即网络文件系统,用以在网络上与他人共享文件和目录:NFS是运行在应用层的协议:基于Client/Ser ...
- Linux常用习惯和技巧
1.如果有些命令在执行时不断地在屏幕上输出信息,影响到后续命令的输入,则可以在执行命令时在末尾添加上一个&符号,这样命令将进入系统后台来执行.
- 2019牛客暑期多校训练营(第十场)F.Popping Balloons(线段树)
题意:现在给你n个点 现在让你横着划三条线间距为r 然后竖着划三条线间距同样为r 现在让你求经过最多的点数 思路:我们首先建一棵关于y区间的线段树 然后枚举x轴 每次更新重叠的点 然后再更新回去 找一 ...
- spoj687 REPEATS - Repeats (后缀数组+rmq)
A string s is called an (k,l)-repeat if s is obtained by concatenating k>=1 times some seed strin ...
- net core 踩坑记录
静态文件要放到wwwroot目录中才能访问 linux服务器部署运行报错 System.Net.Http.HttpRequestException: The SSL connection could ...
- SpringSecurity简单使用
什么是SpringSecurity? Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架.它提供了一组可以在Spring应用上下文中配置 ...
- office响应慢,但电脑速度没问题的解决方案
看了非常多教程都没有用,有点崩,最后终于解决了,记录一下. 问题描述 :office启动没问题,但word打开后,选中一段文字非常慢,大概延迟鼠标移动2-3秒.点击工具栏时也有延迟(点击动画看的十分清 ...
- Nginx基础 - 通用优化配置文件
[root@localhost ~]# vim /etc/nginx/nginx.conf user nginx; worker_processes auto; worker_cpu_affinity ...
- 弹性伸缩 AS(Auto Scaling)
根据业务需求和策略设置伸缩规则,在业务需求增长时自动为您增加 ECS 实例以保证计算能力,在业务需求下降时自动减少 ECS 实例以节约成本,弹性伸缩不仅适合业务量不断波动的应用程序,同时也适合业务量稳 ...