前提说明:研究的hadoop版本1.0.3
checkpoint的触发条件:
- 默认1小时进行一次merge;
- edits的文件大小超过大致64M
以上两个条件,满足任意一个即可,每隔5分钟进行一次条件检查。
checkpoit流程:
- 在SNN(secondary namenode)服务器上检查fs.checkpoint.dir fs.checkpoint.edits.dir配置的文件路径,如果不存在则创建
- 在SNN服务器上修改current文件夹名称为: lastcheckpoint.tmp,并且重新创建一个空的current文件夹
- 通过http请求调用NN(namenode)检查edits.new文件是否已经存在,如果已经存在则检查所有的存放edits文件的文件夹中是否均包含edits.new文件,如果有一个不包含则抛出:Inconsistent existence of edits.new异常,如果均包含,则会输出warn级别的日志,提示:Cannot roll edit log,edits.new files already exists in all healthy directories:并且return。如果不存在则停止edits文件的写入,创建一个临时的edits文件:edit.new,在merge过程中产生的edit log均记录在edit.new中
- 从node下载edits和fimage文件
- Load fimage文件,全部加载到内存,解析完后转换成INode对象到目录树中,节点集合采用ArrayList类型,在集合中定位某个INode时采用Collections的binarySearch()方式实现
- Load edits文件,边读边merge(修改load fimage后的inode对象列表),edits文件的读取采用:DataInputStream类
- 持久化merge后的fimage文件,并创建空的edits文件
- 上传合并后的fimage文件到NN节点,取名:fsimage.ckpt,并放置到current目录中,删除fsimage文件,并更名fsimage.ckpt为fsimage文件,修改edits.new为edits
- 修改lastcheckpoint.tmp目录为previous.checkpoint(存放上次checkpoint的数据)
顺便说三句:
- NameNode启动时先执行edits文件的merge,如果有edits.new则也会执行merge,确保能还原到最新的元数据
- 线上服务器merge一个6.4G的edits文件(fimage文件40M),共耗时28分钟
- 单独启动SNN的命令:hadoop-daemon.sh start secondarynamenode。
相关推荐
HDFS 基本概念和架构 HDFS(Hadoop Distributed File System)是 Hadoop 生态系统中的一个核心组件,负责存储和管理大规模数据。下面是 HDFS 的基本概念和架构: 数据块(Block) HDFS 中的基本存储单位是 64M 的...
《HDFS用户指南》是Apache Hadoop项目的一部分,旨在为用户提供关于Hadoop分布式文件系统(HDFS)的详细操作和管理指南。HDFS是大型分布式计算系统的基础,它被广泛应用于像淘宝、京东这样的大型电商企业,以实现...
在Hadoop大数据存储系统中,HDFS(Hadoop Distributed File System)是核心组件之一,用于分布式存储大量数据。NameNode是HDFS的核心节点,负责管理文件系统的元数据,包括文件和目录的命名空间以及文件的块映射信息...
**HDFS(Hadoop Distributed File System)** 是一种分布式文件系统,具有高容错性的特点,并且旨在部署于成本较低的硬件之上。HDFS提供了高吞吐量访问应用程序数据的能力,非常适合处理超大数据集的应用。它的应用...
Hadoop分布式文件系统(HDFS)是Apache Hadoop项目的核心组件之一,它为大规模数据处理提供了可扩展、高容错性的存储解决方案。本资料集围绕“hdfs_design.rar”这个压缩包,详细介绍了HDFS的原理、操作以及在Java...
07.HDFS工作机制--namenode元数据管理--checkpoint.mp4
不同之处在于,如果一个文件的大小小于一个数据块的容量,该文件并不会占用整个数据块的空间。 这种设计有助于提高数据的存储效率和冗余备份能力。通过将文件划分为固定大小的数据块,HDFS能够有效地管理和复制这些...
Checkpoint 和 persist 从根本上不一样:Checkpoint 会将 RDD 数据写到 HDFS 这种安全的文件系统里,并且抛弃了 RDD 血缘关系的记录。即使 persist 存储到了磁盘里面,在 driver 停掉之后会被删除,而 checkpoint ...
SecondaryNameNode 节点会周期性的将 fsimage 和 edits 中记录的对 HDFS 的操作合并到一个previous.checkpoint 中,然后清空 edits。这样可以减少 NameNode 节点的启动时间,并确保 HDFS 集群的高可用性。 5. HDFS...
通过对HDFS用户指南的学习,不仅可以深入了解Hadoop的核心组件之一——HDFS的工作原理,还能掌握一系列实用的管理命令和技术细节。这对于从事大数据分析、数据科学等领域的人来说是极其宝贵的资源。希望本指南能够...
HDFS(Hadoop Distributed File System)是Hadoop项目的一个核心组件,它是一个高度容错性的系统,设计用来在廉价的硬件上运行并提供高吞吐量的数据访问,非常适合大数据分布式存储。HDFS具有以下几个核心知识点: ...
HDFS是Hadoop生态系统的核心组件之一,提供了分布式文件存储解决方案。HDFS架构主要由四个部分组成:HDFS Client、NameNode、DataNode和SecondaryNameNode。 HDFS Client: * 文件切分:文件上传到HDFS时,Client...
例如,可以使用 HBase 的 Coprocessors 或者 Hadoop 的 Combiner 来优化数据处理,使用 Checkpoint 和 RegionSplit 来控制数据导入的粒度,确保数据的一致性。 标签 "源码 工具" 提示我们可以深入研究相关工具的源...
此外,使用储蓄策略如 Checkpoint 和 lineage shortening 有助于降低容错成本。 以上就是使用 Scala 语言操作 Spark 进行 MySQL 和 HDFS 连接的基础知识。在实际项目中,根据具体需求和环境,还需要深入理解并应用...
【HDFS Trash垃圾桶回收介绍】 HDFS(Hadoop Distributed File System)是Apache Hadoop项目的核心组件,提供分布式存储服务。在HDFS中,文件删除操作默认是不可逆的,但通过启用Trash功能,HDFS引入了一个类似操作...
在HA集群中,待命的NameNode还负责执行命名空间状态的checkpoints,因此没有必要运行SecondaryNameNode、CheckpointNode和BackupNode。实际上,运行这些守护进程是不必要的,甚至可能导致错误的发生。 总结来说,...
第1章 HDFS HA及解决方案 1.1 HDFS系统架构 1.2 HA定义 1.3 HDFS HA原因分析及应对措施 1.3.1 可靠性 1.3.2 可维护性 1.4 现有HDFS HA解决方案 1.4.1 Hadoop的元数据备份方案 1.4.2 Hadoop的SecondaryNameNode方案 ...
在 Checkpoint 存储路径(例如 hdfs://192.168.204.210:9000/StateBackend/31f48d20d48f0bec256e6b4d24553b8a/chk-536)中找到最新的 Checkpoint,通过 Web 界面提交恢复任务。再次输入数据(如 Flink、Flink、...
此外,checkpointDir 和 backupCheckpointDir 也尽量配置在不同硬盘对应的目录中,保证checkpoint 坏掉后,可以快速使用 backupCheckpointDir 恢复数据。 Sink:HDFS Sink HDFS Sink 是 Flume 的一个 Sink 组件,...