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. js弹出框 -搜索

    警告框alert() alert是警告框,只有一个按钮“确定”无返回值,警告框经常用于确保用户可以得到某些信息.当警告框出现后,用户需要点击确定按钮才能继续进行操作.语法:alert("文本 ...

  2. delphi 图像处理 二值化

    procedure TDR_QM_ZP_Form.Image_EZH( Bmp: TBitmap ); var p: PByteArray; Gray, x, y: Integer; begin // ...

  3. MySql点点滴滴(一)之可视化工具介绍

    以下的文章主要介绍的是10个可以简化开发过程的MySQL工具,其中包括MySQL Workbench.phpMyAdmin.Aqua Data Studio,以及SQLyog与MYSQL Front等 ...

  4. angularJS1笔记-(13)-自定义指令(controller和controllerAs实现通信)

    index.html: <!DOCTYPE html> <html lang="en"> <head> <meta charset=&qu ...

  5. 11th 单元测试工具JUnit的学习

    1.写好一个简易的四则运算的程序 UnitTest类文件: public class UnitTest { int a; int b; int answer;//正确答案 public int plu ...

  6. webpack命令局部运行的几种方法

    webpack命令局部运行的几种方法   1. 第一种,先全局安装webpack 命令:npm install -g webpack 然后再在项目内安装 命令:npm install webpack ...

  7. vsftpd重启失败解决方法

    vsftpd dead,but subsys locked vsftpd已死,但是subsys被锁 关于VSFTPD服务器重启失败,研究了一晚上,当virtual_use_local_privs=ye ...

  8. Java中split的对象被特殊字符(.或|)分隔

    在Java中,一个String对象被一些特殊字符分隔时,可以使用split()方法,生成一个String[],然后进行其他的操作,就像下面这样: String str = "a1_b1_c1 ...

  9. HDU3046_Pleasant sheep and big big wolf

    给一个n*m的数字阵,1表示羊的位置,2表示狼的位置,0表示没有东西,可以通过.在每个格子的4边都可以建立围栏,有围栏的话狼是不能通过的. 现在求最少建立多少围栏能够保证狼无法接触到羊. 题目的模型很 ...

  10. 微信小程序与java后台交互

    java后台使用的ssm框架,小程序连接的本地接口.跟正常的web访问没什么区别,也是后台获取url,返回json数据:只是小程序前台请求的url要带上http://localhost:80801. ...