天天看点

快照原理大集合

学习存储时不太理解快照的概念,GOOGLE了下,以下内容摘自互联网。

一、存储快照

快照的定义与作用

SNIA(存储网络行业协会)对快照(Snapshot)的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。而从具体的技术细节来讲,快照是---指向保存在存储设备中的数据的引用标记或指针。我们可以这样理解,快照有点像是详细的目录表,但它被计算机作为完整的数据备份来对待。

快照有三种基本形式:基于文件系统式的、基于子系统式的和基于卷管理器/虚拟化式的,而且这三种形式差别很大。市场上已经出现了能够自动生成这些快照的实用工具,比如有代表性的有NetApp的存储设备基于文件系统实现,高中低端设备使用共同的操作系统,都能够实现快照应用;HP的EVA、HDS通用存储平台以及EMC的高端阵列则实现了子系统式快照;而Veritas则通过卷管理器实现快照。

快照的作用主要是能够进行在线数据恢复,当存储设备发生应用故障或者文件损坏时可以进行及时数据恢复,将数据恢复成快照产生时间点的状态。快照的另一个作用是为存储用户提供了另外一个数据访问通道,当原数据进行在线应用处理时,用户可以访问快照数据,还可以利用快照进行测试等工作。

因此,所有存储系统,不论高中低端,只要应用于在线系统,那么快照就成为一个不可或缺的功能。

两种类型

目前有两大类存储快照,一种叫做即写即拷(copy-on-write)快照,另一种叫做分割镜像快照。

即写即拷快照可以在每次输入新数据或已有数据被更新时生成对存储数据改动的快照。这样做可以在发生硬盘写错误、文件损坏或程序故障时迅速地恢复数据。但是,如果需要对网络或存储媒介上的所有数据进行完全的存档或恢复时,所有以前的快照都必须可供使用。

即写即拷快照是表现数据外观特征的“照片”。这种方式通常也被称为“元数据”拷贝,即所有的数据并没有被真正拷贝到另一个位置,只是指示数据实际所处位置的指针被拷贝。在使用这项技术的情况下,当已经有了快照时,如果有人试图改写原始的LUN上的数据,快照软件将首先将原始的数据块拷贝到一个新位置(专用于复制操作的存储资源池),然后再进行写操作。以后当你引用原始数据时,快照软件将指针映射到新位置,或者当你引用快照时将指针映射到老位置。

分割镜像快照引用镜像硬盘组上所有数据。每次应用运行时,都生成整个卷的快照,而不只是新数据或更新的数据。这种使离线访问数据成为可能,并且简化了恢复、复制或存档一块硬盘上的所有数据的过程。但是,这是个较慢的过程,而且每个快照需要占用更多的存储空间。

分割镜像快照也叫作原样复制,由于它是某一LUN或文件系统上的数据的物理拷贝,有的管理员称之为克隆、映像等。原样复制的过程可以由主机(Windows上的MirrorSet、Veritas的Mirror卷等)或在存储级上用硬件完成(Clone、BCV、ShadowImage等)。

三种使用方法

具体使用快照时,存储管理员可以有三种形式,即冷快照拷贝、暖快照拷贝和热快照拷贝。

冷快照拷贝

进行冷快照拷贝是保证系统可以被完全恢复的最安全的方式。在进行任何大的配置变化或维护过程之前和之后,一般都需要进行冷拷贝,以保证完全的恢复原状(rollback)。冷拷贝还可以与克隆技术相结合复制整个服务器系统,以实现各种目的,如扩展、制作生产系统的复本供测试/开发之用以及向二层存储迁移。

暖快照拷贝

暖快照拷贝利用服务器的挂起功能。当执行挂起行动时,程序计数器被停止,所有的活动内存都被保存在引导硬盘所在的文件系统中的一个临时文件(.vmss文件)中,并且暂停服务器应用。在这个时间点上,复制整个服务器(包括内存内容文件和所有的LUN以及相关的活动文件系统)的快照拷贝。在这个拷贝中,机器和所有的数据将被冻结在完成挂起操作时的处理点上。

当快照操作完成时,服务器可以被重新启动,在挂起行动开始的点上恢复运行。应用程序和服务器过程将从同一时间点上恢复运行。从表面上看,就好像在快照活动期间按下了一个暂停键一样。对于服务器的网络客户机看来,就好像网络服务暂时中断了一下一样。对于适度加载的服务器来说,这段时间通常在30到120秒。

热快照拷贝

在这种状态下,发生的所有的写操作都立即应用在一个虚硬盘上,以保持文件系统的高度的一致性。服务器提供让持续的虚拟硬盘处于热备份模式的工具,以通过添加REDO日志文件在硬盘子系统层上复制快照拷贝。

一旦REDO日志被激活,复制包含服务器文件系统的LUN的快照是安全的。在快照操作完成后,可以发出另一个命令,这个命令将REDO日志处理提交给下面的虚拟硬盘文件。当提交活动完成时,所有的日志项都将被应用,REDO文件将被删除。在执行这个操作过程中,会出现处理速度的略微下降,不过所有的操作将继续执行。但是,在多数情况下,快照进程几乎是瞬间完成的,REDO的创建和提交之间的时间非常短。

热快照操作过程从表面上看基本上察觉不到服务器速度下降。在最差情况下,它看起来就是网络拥塞或超载的CPU可能造成的一般服务器速度下降。在最好情况下,不会出现可察觉到的影响。

与镜像、复制的区别

在与广大存储管理员进行交流时,他们问到最多的一个问题是:快照与镜像以及复制的区别有哪些呢?

记者认为镜像、快照和复制是三种不同的功能。

镜像是通过从一个I/O创建两个I/O来复制数据。磁盘镜像通过OS或卷管理软件在主系统上创建。磁盘镜像是依靠平台和本地连接特性的本地选件。镜像可用于DAS和SAN并且大多数NAS支持它。存储转发式镜像磁盘子系统(例如,EMC SRDF, IBM PPRC, Hitachi TrueCopy)主要用于SAN产品。

复制是通过网络传输数据对象(文件、表格等)。传输是从系统到系统进行的,而不是在存储设备之间或子系统之间进行。复制一般也针对具体平台,因此用于Windows 2000复制产品的运行方式与Unix平台存在很大不同。

用户选择快照时要考虑的问题

• 1、 创建快照是否对性能产生影响?

• 2、 每个快照需要多少存储空间?

• 3、 每个卷能够最多产生多少快照?

• 4、 对快照的管理使用是否方便?

• 5、 有无有效的集成快照管理工具?

• 6、 是否支持各种类型快照功能?

二、网页快照

         为什么我们只要在搜索引擎的搜索框内输入想要查询的关键词,搜索引擎就会立即在广阔无垠的因特网上,把包含关键词所有网页一网打尽,呈现在我们的面前。

  如果您了解了搜索引擎的工作原理,就不会这样认为了。每一张网页上都有很多超链接,链接到另外一些网页上,而这些网页上依然有很多超链接,又可以链接到另另外一些网页上……

  按照这个方法,您最后发现,几乎所有因特网上的网页都被链接在一起了。其实这就是搜索引擎的工作原理,搜索引擎用这样顺藤摸瓜的办法找到所有能找到的网页,事实上,这表面上看起来有些愚蠢,不过搜索引擎确实是用这种手段混饭吃的。

  <b>更令人气愤的是,搜索引擎每找到一张网页,都要复制下来,放入自己的腰包,到最后,它把因特网上几乎所有的网页都收罗到腰包中了。这个腰包就是搜索引擎的网页数据库,这个数据库中包含了所有被复制下来的首页。</b>

<b></b>

<b>  搜索引擎中的老大哥Google,它的名字就来自于数学中的一个几乎不可超越的数:google,这个数是10的100次方,从名字就可以看出Google搜索引擎的胃口是多么的贪婪,在它的网页数据库中禁锢了四亿多张网页(这是它自己说的),这四亿张网页就是它在因特网上复制下来的,这每一张被复制下来的网页叫做一张 网页快照 。</b>

  当用户使用搜索引擎在因特网上搜索网页时,那其实就在搜索引擎的网页数据库中搜索,用户误认为搜索引擎一下子就在因特网上找到了包含关键词的网页。

  因特网上的网页并不是一成不变的,而是不断增加、删除、改动。因此,搜索引擎网页数据库中的网页也需要及时更新,既把因特网上网页重新复制一遍,如果你在你的网站上删除一张网页,那么搜索引擎数据库中的复制品-网页快照并不会立刻被删除,而是要过一段才会被删除。但是,Google的网页快照是标示快照存档时间的,那么,在这个时间点上,该网页肯定还存在。<b>举例:2008年7月20日打开一个Google的网页快照,而这张快照上显示是Google在7月10日搜索并存档的。什么意思?这表示:2008年7月20日,这个网页或许已被删除或更新,但是,2008年7月10日,当Google对该网页复制存档的时候,该网页是确实存在的</b>。

  搜索引擎还试图收集一切能够找到的URL ,还把包含相同关键词的网页进行排队,纯商业化的搜索引擎采用纯商业原则,还有按点击率给网页排位,这样保证了用户的搜索效率达到最高。

  搜索引擎只是一个工具,熟练的驾驶它,可以在因特网中找到十分丰富的资源

三、SQL SERVER数据库快照

四、oracle快照原理及实现

http://database.ctocio.com.cn/tips/438/8307938_1.shtml