HDFS Snapshot[官网整理]

腾讯大数据开发实习面经:从JVM到Flink的完整通关指南 大数据开发岗位要求工程师具备扎实的Java功底和分布式计算思维。从JVM内存模型与垃圾回收,到并发编程的AQS原理,再到Hadoop生态的HDFS读写机制、Spark的宽窄依赖与数据倾斜治理、Flink的Checkpoint与Exactly-Once语义,这些核心知识点构成了面试考察的主线。理解它们背后的设计思想,不仅有助于解决真实场景中的性能瓶颈与数据一致性问题,也是通过腾讯等大厂面试的关键。本文以一场腾讯大数据开发实习面试为例,复盘从技术面到HR面的完整流程,剖析高频考点与实战应答思路,为准备大数据方向 阅读详情

【HDFS Snapshot(2.2+)】

HDFS Snapshot是文件系统在某一时间点的只读的备份,Snapshot可以针对文件系统的子树或者整个文件系统。Snapshot的通常用法是做数据backup,以避免用户错误和灾难恢复。

   

    HDFS Snapshot实现是高效的:

    1、Snapshot的创建是瞬间完成:除了节点遍历耗时之外,其创建的开销为O(1)。

    2、Snapshot后数据发生更改时,将会消耗额外的内存(记录修改操作),内存使用量为O(M),其中M为更改的文件或者目录的个数。

    3、Datanodes上的Blocks并不会发生Copy:snapshot文件记录了有关的block列表和文件大小,没有实际数据的Copy。(并不是计算机科学中的Full snapshot)

    4、Snapshot不会影响正常的HDFS操作:修改操作按照时间倒叙的方式记录,因此当前数据可以直接访问。snapshot数据由当前数据减去已经修改的部分。snapshot Data = current data - modification。访问数据时会经过snapshot判定(可以认为snapshot在内存中维护了一份目录子树,Namenodes),对于修改记录中没有涉及到的文件或者目录将可以直接访问,否则从snapshot子树中获取。

 

一、Snapshottable 目录

    Snapshot可以在任何snapshottable目录上进行。一个snapshottable目录可以容忍65536个snapshots。文件系统对snapshottable目录个数没有上限。管理员可以将任何目录设置为snapshottable。 如果一个snapshottable目录下存在snapshots(数据),这个目录将不能被删除或者重命名,直到所有的snapshots被删除。

 

    目前不允许snapshottable目录的嵌套,即如果一个目录的父目录或者子目录是snapshottable,那么不能将它设置为snapshottable。

 

二、 Snapshot 路径

     对于一个snapshottable目录,路径部分“.snapshot”用来访问其snapshots。例如“/foo”是一个snapshottable目录,“/foo/bar”是此目录下的一个文件或者目录,且“/foo”已经有一个名为s0的snapshot,那么路径“/foo/.snapshot/bar”即是“/foo/bar”的snapshot复本。如下为可参考例子:

    1、列出“/foor”目录下所有的snapshots:

    “hdfs dfs -ls /foo/.snapshot”

    2、列出名为s0的snapshot中的文件:

    “hdfs dfs -ls /foo/.snapshot/s0”

    3、从s0中复制文件

    “hdfs dfs -cp /foo/.snapshot/s0/bar /tmp”

 

    注意,在HDFS中“.snapshot”作为一个保留字,用户将不能创建“.snapshot”名称的目录或者文件。

 

三、snapshot操作

    1、开启snapshot:将一个目录设置为snapshottable

    “hdfs dfsadmin -allowSnapshot <path>”

 

    2、关闭snapshots:此目录下的所有snapshots需要首先删除,才能执行disabllow指令。

    “hdfs dfsadmin -disallowSnapshot <path>”

 

    3、创建snapshot:对一个snapshottable目录创建snapshot。

    “hdfs dfs -createSnapshot <path> [snapshotName]”

    创建snapshot时可以指定名称,这是可选参数;如果没有指定snapshotName,系统将会根据timestamp按照格式“'s' yyyyMMdd-HHmmss.SSS”,例如“s20130412-151029.003”。我们也可以使用HDFS Client API来创建snapshot:FileSystem#createSnapshot(path,snapshotName)。

 

    4、删除snapshots:从一个snapshottable目录下删除snapshots。

     “hdfs dfs -deleteSnapshot <path> <snapshotName>”

    我们可以首先使用“hdfs dfs -ls <path>/.snapshot”来查看目录下所有snapshots的列表,然后删除。

 

    5、重命名snapshots:修改snapshot的名称

    “hdfs dfs -renameSnapshot <path> <oldName> <newName>”

 

    6、列举所有的snapshottable目录

    “hdfs lsSnapshottableDir”

    7、获取snapshots差别报告:获取两个snapshots的不同。

    “hdfs snapshotDiff <path> <fromSnapshot> <toSnapshot>”

 

     上述所有snapshot操作,均可以通过FileSystem API操作。snapshots并不会创建实际数据的Copy,不过这些snapshots以及snapshot之后的变更操作将会添加到Namenode的metadata中,对于datanodes并不知道snapshots的任何细节,事实上snapshots操作也不会和Datanodes交互,即一个文件、目录是否有snapshots,Datanodes并不需要知道,创建snapshot也不需要Datanodes做任何额外的操作(包括Block迁移),不过文件的修改操作均会有Namenode判定,当一个目录有snapshot时不允许删除。



 

  • 大小: 35.5 KB
【信息科学与工程学】【运营科学】第二篇 C4信息与通信网络运营 (C4) ——数据中心网络运营05 编号应用领域角色/岗位类型场景算法算子名称算子的数学方程式/逻辑表达复杂度关联知识数据输入数据需求数据输出法律法规及裁决依据/道德标准及方法1241企业之间战略“认知战”指挥官(攻击方)不直接攻击产品, 而是通过系统性舆论、行业报告、KOL发声, 重塑市场对竞争对手核心优势的“认知”, 将其贬低为“过时技术”或“错误赛道”认知解构与赛道降级针对对手的核心优势A, 构建并传播叙事N: “A虽然是过去十年的主流, 但已被新兴的B范式取代。 坚守A是路径依赖, 将错失未来。”对手以“强大的线下渠道”(A)为核心优 阅读详情

相关推荐

13、HDFS Snapshot快照

快照(Snapshot)是数据存储的某一时刻的状态记录;与备份不同,备份(Backup)则是数据存储的某一个时刻的副本。HDFS Snapshot快照是整个文件系统或某个目录在某个时刻的镜像。该镜像并不会随着源目录的改变而进行动态的更新。

alanchanchn的专栏 8万+

Hadoop生态圈(十六)- HDFS Snapshot快照详解

HDFS Snapshot快照,HDFS快照介绍和作用,HDFS快照的实现,HDFS快照的命令,HDFS快照功能启停命令,HDFS快照操作相关命令,案例实操快照的使用

程序园@大Null 5873

snapshot备份还原工具

Snapshot才几百KB的大小,就可以完成比ghost更快速且完整的系统备份还原操作,原理可见完全不一样,可实现热备功能,无需关机就可以实现备份和还原功能。软件已注册,无需考虑注册的问题。

Hadoop 教程 - Hadoop HDFS Snapshot快照详解

Hadoop HDFS的Snapshot(快照)功能是从Hadoop 2.x版本开始引入的一个重要特性,它允许用户在某一时间点对HDFS文件系统或特定目录创建一个只读的、一致性的视图。Snapshot为数据保护、备份恢复、数据分析等场景提供了强大的支持。

qq_33240556的博客 1215

Linux系统下Materials Studio 2020安装避坑指南:从依赖包到许可证配置全流程

本文提供了一份在Linux系统上安装Materials Studio 2020的深度避坑指南。详细解析了从系统依赖包检查、安装流程、许可证配置到Gateway服务部署的全过程,并分享了与Slurm作业调度系统集成的实战经验,旨在帮助用户高效、稳定地完成部署。

weixin_29313547的博客 387

COMSOL后处理与可视化

公众号→【COMSOL仿真交流】←更多精彩内容 后处理是采用COMSOL建模的一个重要环节。通过软件自带的可视化工具,可以快速方便的展现仿真结果。 COMSOL为使用者提供了多种后处理工具,包括表面图、切面图、等值线图、流线图、线图、体图等等。可按功能分为数据集(储存数据的地方)、派生值和表单(对数据进行进一步的操作)、绘图组合绘图类型(显示数据结果的地方)、导出数据与生成报告。   如果想用origin、matlab对模拟数据做进一步的处理,导出excel格式的模拟结果,这可以通过“导出

midiio的博客 4027

HDFS中snapshot快照机制

snapshot是数据存储的某一时刻的状态记录,备份(backup)则是数据存储的某一个时刻的副本HDFS snapshot快照是整个文件系统或某个目录在某个时刻的镜像,该镜像并不会随着源目录的改变而进行动态的更新。

weixin_49750432的博客 1479

Vivado 2018.3 安装步骤及 license 获取

本文的主要内容是介绍 Vivado 2018.3 版本的安装步骤及其 license 的获取与加载。

西岸贤 4万+

HDFS快照(Snapshot)机制

【代码】HDFS快照(Snapshot)机制。

Howe的博客 514

DDM-MIMO-FMCW雷达速度模糊与解模糊MATLAB仿真

本文深入解析了DDM-MIMO-FMCW雷达中的速度模糊现象及其解模糊方法,通过MATLAB仿真详细展示了相位编码解调、速度扩展算法和混合波形设计三大解决方案。文章还提供了参数配置、信号建模和结果可视化的实用技巧,并分享了工程实践中的避坑指南,帮助开发者高效解决雷达信号处理中的速度模糊问题。

weixin_31528001的博客 349

matlab生成blocks、bumps和doppler标准测试信号

关键函数:wnoise使用方式X = wnoise(FUN,N) [X,XN] = wnoise(FUN,N,SQRT_SNR) [X,XN] = wnoise(FUN,N,SQRT_SNR,INIT)X = wnoise(FUN,N) 返回由 FUN给出的信号,长度为2^N,幅值范围[0,1].[X,XN] = wnoise(FUN,N,SQRT_SNR) ,返回了一个测试信号X,以及一个加噪

ZSZ_shsf的博客 6580

Hadoop学习——HDFS中的Snapshot和Checkpoint

Snapshot(快照):在数据库或者文件系统中,一个快照表示对当前系统状态的一个备份,当系统发生故障时,可以利用这个快照将系统恢复到产生快照时的样子。 Checkpoint(检查点):因为数据库系统或者像HDFS这样的分布式文件系统,对文件数据的修改不是直接写回到磁盘的,很多操作是先缓存到内存的Buffer中,当遇到一个检查点Checkpoint时,系统会强制将内存中的数据写回磁盘,当然此时才

5415

WPS JS宏智能识别代码段并设置样式(完整可用版)

之前,我们已经经历了多次迭代,解决了许多问题,比如识别代码块、处理多行导入、调整样式等。现在他们需要一份全面的文档来解释整个代码的结构和工作原理。(5)智能行分析(含URL和注解检测优化)function analyzeLineEnhanced(rawText,trimmedText,codeSymbols,codePatterns, singleLinePatterns)该解决方案在保持高性能的同时,提供了良好的可扩展性,能够适应不同组织的代码规范需求,是WPS生态中专业文档处理的创新实践。

搏博的专栏 1823

Flink CDC整理

在Hadoop分布式文件系统(HDFS)上尝试进行写操作(使用root用户上传的jar包 普通用户无法使用。进行写操作,但未获得足够的权限。打包Java代码上传到集群运行时。查看MySQL配置后未切换用户。尝试在HDFS上的根目录。重新上传jar包 并重新运行。),但由于权限问题被拒绝(在pom.xml中添加。打包时未添加打包插件。

weixin_51698042的博客 1050

手动测试台架搭建,让你的车载测试更轻松

如果你也在经常进行车载测试,就知道有时候手头的设备并不能完全满足需求。 在我之前的测试中,发现了一些问题,但是却找不到根本原因。于是,我开始思考如何打造一个更为完美的手动测试台架,让测试变得更加轻松。 经过不断地实践和调试,我终于成功搭建出了一个能够满足自己需求的测试台架。现在,我想和大家分享这个搭建的经验,希望能够帮助到在车载测试领域工作的小伙伴们,让你们的测试更加准确、高效!

weixin_67553250的博客 1万+

【电机应用控制】——直流有刷电机&驱动板/编码器介绍&PID算法&实操代码思路

声明:学习笔记来自正点原子B站教程,仅供学习交流!!玩具车、平衡车、无人机、印刷机、打印机、手机振动马达等电机即电动机(motor),也叫作马达,电能转化为机械能。按电源:直流、交流按用途:驱动用、控制用按运转速度:高速、低速、恒速、调速直流电机(有刷、无刷)、舵机、步进电机、伺服电机1、直流有刷电机(Brushed DC Motor,简称BDC)是内含电刷装置的将直流电能转化为机械能的电动机。例如四驱赛车四个马达操控方便、成本低、维护时换电刷即可;

weixin_51658186的博客 2万+

BigData File Viewer工具介绍

目录1.概述2.官网地址3.功能4.使用方法 1.概述 BigData File Viewer时一个跨平台(例如Windows,MAC,Linux等)的桌面应用程序,它用于查看常见的大数据二进制格式,例如Parquet,ORC,AVRO等。,除此之外,它还支持本地文件系统、HDFS、AWS S3等等。 2.官网地址 BigData File Viewer的官网地址位于GitHub上:https://github.com/Eugene-Mark/bigdata-file-viewer。 3.功能 打开并查看

代码星辰的博客 4397

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Gradle中文实用教程技术文档总结

Gradle中文实用教程技术文档总结

wang2leee的博客 1732

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

机器学习实习生真实产线压力测试:从特征泄漏到MLOps落地

机器学习不是算法公式,而是数据获取、特征工程、模型部署与线上监控的全链路工程实践。在工业级场景中,特征时间窗口偏移、训练/服务特征不一致、监控指标与业务目标错位等常见问题,往往比模型结构本身更决定项目成败。本文聚焦机器学习实习中的真实产线挑战,深入解析特征工程陷阱、模型监控盲区、跨团队协作成本等核心痛点,结合AB测试设计、特征快照方案、SLA驱动的特征定义等一线实践,揭示MLOps落地过程中的关键断层与应对策略。适合算法新人、带教工程师及关注AI工程化的技术决策者。

cumian9828的博客 704

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

HDFS snapshot操作实战

Hadoop从2.1.0版开始提供了HDFS SnapShot的功能。一个snapshot(快照)是一个全部文件系统、或者某个目录在某一时刻的镜像。快照在下面场景下是非常有用: 防止用户的错误操作:管理员可以通过以滚动的方式周期性设置一个只读的快照,这样就可以在文件系统上有若干份只读快照。如果用户意外地删除了一个文件,就可以使用包含该文件的最新只读快照来进行回复。 备份:管理员可以根据需求来备

wisgood的专栏 3042

HDFS SnapShot原理

【简介】 HDFS中可以对目录创建Snapshot,创建之后不管后续目录发生什么变化,都可以通过snapshot找回原来的文件和目录结构。 为了启用这种功能,首先需要启用目标目录的snapshot功能,可以通过下面的命令来执行: hdfs dfsadmin -allowSnapshot 启用snapshot功能后,并不会自动进行snapshot保存,还需要先创建snapshot, 通过下面的

好学若饥,谦卑若愚 4万+

hdfs snapshot 快照的使用场景应用与操作命令的介绍

hdfs snapshot 快照的应用与操作命令的介绍 一:HDFSSnapShot的介绍 Hadoop从2.1.0版开始提供了HDFS SnapShot的功能。 一个snapshot(快照)是一个全部文件系统、或者某个目录在某一时刻的镜像。快照在下面场景下是非常有用: 二:场景 防止用户的错误操作: 管理员可以通过以滚动的方式周期性设置一个只读的快照,这样就可以在文件系统上有若干份只读快照。如果...

qq_43688472的博客 2207

云计算(十一)- HDFS快照(HDFS Snapshots)

综述 HDFS Snapshots are read-only point-in-time copies of the file system. Snapshots can be taken on a subtree of the file system or the entire file system. Some common use cases of snapshots are d

DK的专栏 3127

最详细HDFS常用命令作用及截图

HDFS常用命令集合

kunkun的博客 6903

【HDFS】HDFS的快照snapshot的使用

一、snapshot命令 允许这个文件路径可以创建snapshots: hdfs dfsadmin -allowSnapshot <路径> 不允许创建目录的快照。必须先删除目录的所有快照,然后再禁止快照。 hdfs dfsadmin -disallowSnapshot <路径> 创建快照 hdfs dfs -createSnapshot <路径> [<快照名称>] [root@cm1 ~]# hdfs dfs -createSnapshot /data/m

Mrerlou的博客 1938
上一篇: HDFS常用命令[备忘]
下一篇: HDFS架构[官网整理]
shift_alt_ctrl
博客等级 码龄10年 0粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值