Hadoop基础-Hadoop快照管理

                                 作者:尹正杰

版权声明:原创作品,谢绝转载!否则将追究法律责任。

一.快照的作用

  快照可以迅速对文件(夹)进行备份,不产生新文件,使用差值存储,默认是禁用状态。因此,想要使用快照功能的话得先启用该功能!我们可以通过“hdfs dfsadmin” 命令来启动或者禁止快照管理。

1>.启用快照

[root@yinzhengjie ~]# hdfs dfsadmin -allowSnapShot /data
Allowing snaphot on /data succeeded
[root@yinzhengjie ~]#

2>.禁用快照

[root@yinzhengjie ~]# hdfs dfsadmin -disallowSnapShot /data
Disallowing snaphot on /data succeeded
[root@yinzhengjie ~]#

二.创建快照

1>.创建快照

[root@yinzhengjie ~]# hdfs dfs -ls -R /
drwxr-xr-x - root supergroup -- : /data
drwxr-xr-x - root supergroup -- : /data/etc
-rw-r--r-- root supergroup -- : /data/index.html
-rw-r--r-- root supergroup -- : /data/name.txt
-rw-r--r-- root supergroup -- : /data/yinzhengjie.sql
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# echo "hello" > .txt
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# echo "world" > .txt
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -put .txt /data
[root@yinzhengjie ~]# hdfs dfs -put .txt /data/etc
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -ls -R /
drwxr-xr-x - root supergroup -- : /data
-rw-r--r-- root supergroup -- : /data/.txt
drwxr-xr-x - root supergroup -- : /data/etc
-rw-r--r-- root supergroup -- : /data/etc/.txt
-rw-r--r-- root supergroup -- : /data/index.html
-rw-r--r-- root supergroup -- : /data/name.txt
-rw-r--r-- root supergroup -- : /data/yinzhengjie.sql
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfsadmin -allowSnapshot /data #启用快照功能
Allowing snaphot on /data succeeded
[root@yinzhengjie ~]# hdfs dfs -createSnapshot /data firstSnapshot #创建快照并起名为“firstSnapshot”。下面一行显示了快照的实际存放位置在一个隐藏目录下。
Created snapshot /data/.snapshot/firstSnapshot
[root@yinzhengjie ~]#

2>.查看快照的存放位置

[root@yinzhengjie ~]# hdfs dfs -ls -R /data/.snapshot/firstSnapshot
-rw-r--r-- root supergroup -- : /data/.snapshot/firstSnapshot/.txt
drwxr-xr-x - root supergroup -- : /data/.snapshot/firstSnapshot/etc
-rw-r--r-- root supergroup -- : /data/.snapshot/firstSnapshot/etc/.txt
-rw-r--r-- root supergroup -- : /data/.snapshot/firstSnapshot/index.html
-rw-r--r-- root supergroup -- : /data/.snapshot/firstSnapshot/name.txt
-rw-r--r-- root supergroup -- : /data/.snapshot/firstSnapshot/yinzhengjie.sql
[root@yinzhengjie ~]#

3>.webUI查看快照信息

三.验证创建快照后是否产生新的文件

1>.查看快照中的文件

2>.查看同一文件实际存储的信息

3>.创建快照后修改文件数据

[root@yinzhengjie ~]# hdfs dfs -ls -R /
drwxr-xr-x - root supergroup -- : /data
-rw-r--r-- root supergroup -- : /data/.txt
drwxr-xr-x - root supergroup -- : /data/etc
-rw-r--r-- root supergroup -- : /data/etc/.txt
-rw-r--r-- root supergroup -- : /data/index.html
-rw-r--r-- root supergroup -- : /data/name.txt
-rw-r--r-- root supergroup -- : /data/yinzhengjie.sql
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# ll
total
-rw-r--r--. root root May : jdk-8u131-linux-x64.tar.gz
-rw-r--r--. root root May : name.txt
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -cat /data/.txt
hello
[root@yinzhengjie ~]# hdfs dfs -appendToFile name.txt /data/.txt
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -cat /data/.txt
hello
yinzhengjie
[root@yinzhengjie ~]# hdfs dfs -cat /data/.snapshot/firstSnapshot/.txt
hello
[root@yinzhengjie ~]#

4>.小结快照的特点

  a>.生成隐藏目录(“.snapshot”)

    创建快照时,会在床快快照的目录下生成一个“.snapshot”的隐藏目录,该目录下保存了一个子目录,这个子目录名称就是快照的名称,该目录下存放的都是创建快照时间节点的数据。

  b>.快照并不产生新的文件

    这个不产生新的文件指的是不完全克隆一份数据出来,而是将数据都指向了同一个存储的ID啦,从上图我们可以很明显的看出来。

  c>.修改源文件跟快照无关

    当我们源文件时,快照中保存的数据并不会受到影响,快照保存的诗句还是当时创建快照的时间节点数据。

四.快照的其他操作

1>.快照的重命名操作

[root@yinzhengjie ~]# hdfs dfs -ls /data/.snapshot/
Found items
drwxr-xr-x - root supergroup -- : /data/.snapshot/firstSnapshot
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -renameSnapshot /data firstSnapshot newSnapshot #将/data目录的firstSnapshot快照名称改名为newSnapshot
[root@yinzhengjie ~]# hdfs dfs -ls /data/.snapshot/
Found items
drwxr-xr-x - root supergroup -- : /data/.snapshot/newSnapshot
[root@yinzhengjie ~]#

2>.快照的删除操作

[root@yinzhengjie ~]# hdfs dfs -ls /data/.snapshot/
Found items
drwxr-xr-x - root supergroup -- : /data/.snapshot/newSnapshot
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -deleteSnapshot /data newSnapshot
[root@yinzhengjie ~]#
[root@yinzhengjie ~]# hdfs dfs -ls /data/.snapshot/
[root@yinzhengjie ~]#

Hadoop基础-Hadoop快照管理的更多相关文章

  1. Hadoop基础-Hadoop的集群管理之服役和退役

    Hadoop基础-Hadoop的集群管理之服役和退役 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 在实际生产环境中,如果是上千万规模的集群,难免一个一个月会有那么几台服务器出点故 ...

  2. hadoop基础----hadoop实战(七)-----hadoop管理工具---使用Cloudera Manager安装Hadoop---Cloudera Manager和CDH5.8离线安装

    hadoop基础----hadoop实战(六)-----hadoop管理工具---Cloudera Manager---CDH介绍 简介 我们在上篇文章中已经了解了CDH,为了后续的学习,我们本章就来 ...

  3. hadoop基础----hadoop实战(九)-----hadoop管理工具---CDH的错误排查(持续更新)

    在CDH安装完成后或者CDH使用过程中经常会有错误或者警报,需要我们去解决,积累如下: 解决红色警报 时钟偏差 这是因为我们的NTP服务不起作用导致的,几台机子之间有几秒钟的时间偏差. 这种情况下一是 ...

  4. hadoop基础----hadoop理论(四)-----hadoop分布式并行计算模型MapReduce具体解释

    我们在前一章已经学习了HDFS: hadoop基础----hadoop理论(三)-----hadoop分布式文件系统HDFS详细解释 我们已经知道Hadoop=HDFS(文件系统,数据存储技术相关)+ ...

  5. Apache Hadoop 2.9.2 的快照管理

    Apache Hadoop 2.9.2 的快照管理 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 快照相当于对目录做一个备份.并不会立即复制所有文件,而是指向同一个文件.当写入发生 ...

  6. Hadoop基础-镜像文件(fsimage)和编辑日志(edits)

    Hadoop基础-镜像文件(fsimage)和编辑日志(edits) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.查看日志镜像文件(如:fsimage_00000000000 ...

  7. Hadoop基础-Hdfs各个组件的运行原理介绍

    Hadoop基础-Hdfs各个组件的运行原理介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.NameNode工作原理(默认端口号:50070) 1>.什么是NameN ...

  8. Cloudera Hadoop 5& Hadoop高阶管理及调优课程(CDH5,Hadoop2.0,HA,安全,管理,调优)

    1.课程环境 本课程涉及的技术产品及相关版本: 技术 版本 Linux CentOS 6.5 Java 1.7 Hadoop2.0 2.6.0 Hadoop1.0 1.2.1 Zookeeper 3. ...

  9. hadoop基础教程免费分享

    提起Hadoop相信大家还是很陌生的,但大数据呢?大数据可是红遍每一个角落,大数据的到来为我们社会带来三方面变革:思维变革.商业变革.管理变革,各行业将大数据纳入企业日常配置已成必然之势.阿里巴巴创办 ...

随机推荐

  1. 用C给小学生出题目

    用C给小学生出题目 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 600 300 • Es ...

  2. 《Spring1之第八次站立会议》

    <第八次站立会议> 昨天:我查找了关于实现视频功能的相关代码. 今天:对用C#写的视频功能进行了相关的了解. 遇到的问题:由于对C#不是很了解,所以其中的有些代码还是看不懂.

  3. "私人助手"NABCD分析

    ---恢复内容开始--- 团队开发项目“私人助手”需求分析NABCD模型: (1)N(Need需求):“私人助手”解决了几类人遇到非常多的事情,非常繁琐,“私人助手”为用户解决这个问题,让用户的工作更 ...

  4. Java jdbc链接 mySQL 写的crud

    1.JDBC(Java Data Base Connectivity java数据库连接)概念: 是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编 ...

  5. VirtualBox安装及Linux基本操作(操作系统实验一)

    VirtualBox安装教程博客链接(转载)https://blog.csdn.net/u012732259/article/details/70172704 实验名称:Linux的基本操作 实验目的 ...

  6. [BUAA_SE_2017]代码复审-Week2

    代码复审 CheckList 1.概要部分 代码能符合需求和规格说明么? 符合,经过-c及-s合法参数测试,程序均能生成.求解相应数独. 代码设计是否有周全的考虑? 对于非法输入,程序处理不够周全. ...

  7. 蜗牛慢慢爬 LeetCode 19. Remove Nth Node From End of List [Difficulty: Medium]

    题目 Given a linked list, remove the nth node from the end of list and return its head. For example, G ...

  8. lr常见问题汇总(持续更新版)

    在使用mms协议的时候,会碰到报错 Action.c(): 错误: C 解释器运行时错误: Action.c (): Error -- Unresolved symbol : mms_play. 解决 ...

  9. ubuntu下安装vsftpd及vsftpd配置文件不见的解决办法

    利用命令 sudo apt-get install vsftpd   //安装 进入etc文件可以找到 vsftpd.conf的配置文件 作为新手难免会弄错配置又不知道怎么办,那么可能会利用 sudo ...

  10. PHP中define和defined的区别

    PHP中define和defined的区别 对于初学者会混淆这两个函数 1.define用来定义一个常量,常量也是全局范围的.不用管作用域就可以在脚本的任何地方访问 常量.一个常量一旦被定义,就不能再 ...