[kuài zhào]

快照

砂舞之家成都砂舞论坛编辑 锁定
快照指照相馆的一种冲洗过程短的照片·如:证件快照。基于硬件编程技术的一种,针对内存进行的快速读取技术,常用于硬件开发
中文名
快照
外文名
Snapshot
分 类
存储快照、搜索引擎快照
作 用
能够进行在线数据备份与恢复
砂舞之家成都砂舞论坛

目录

砂舞之家成都砂舞论坛

简介 编辑

搜索引擎快照
搜索引擎快照,是指在访客在无法打开某个搜索结果,或者打开速度特别慢的情况下,为访客提供的之前保存在搜索引擎服务器上对应网页内容的纯文本。不过,搜索引擎保存的快照内容一般只包括文本数据,图片及其他多媒体等非文本数据不会被保存。因此,在来源网站无法访问的情况下,图片及其他多媒体在快照中将无法显示。
存储快照

概述 编辑

存储快照
砂舞之家成都砂舞论坛
存储快照技术SNIA(StorageNetworking Industry Association)对快照(Snapshot)的定义是:关于指定数据集合的一个完全可用拷贝,该拷贝包括相应数据在某个时间点(拷贝开始的时间点)的映像。快照可以是其所表示的数据的一个副本,也可以是数据的一个复制品。
快照的作用主要是能够进行在线数据备份与恢复。当存储设备发生应用故障或者文件损坏时可以进行快速的数据恢复,将数据恢复某个可用的时间点的状态。快照的另一个作用是为存储用户提供了另外一个数据访问通道,当原数据进行在线应用处理时,用户可以访问快照数据,还可以利用快照进行测试等工作。所有存储系统,不论高中低端,只要应用于在线系统,那么快照就成为一个不可或缺的功能。[1]
快照的实现方式
当前实现快照有主要有两种技术,一种是第一次写时复制(Copy OnFirst Write,COFW),有时简称为写时复制(CopyOn Write,COW)。即在数据第一次写入到某个存储位置时,首先将原有的内容读取出来,写到另一位置处(为快照保留的存储空间,此文中我们称为快照空间),然后再将数据写入到存储设备中。而下次针对这一位置的写操作将不再执行写时复制操作。这种技术常在计算机相关的技术中经常初使用,其基本原理大同小异,只是面向的对象不同,适用的场合不一样。从COW 的执行过程我们可以知道,这种实现方式在第一次写入某个存储位置时需要完成一个读操作(读原位置的数据),两个写操作(写原位置与写快照空间),如果写入频繁,那么这种方式将非常消耗IO时间。因此可推断,如果预计某个卷上的I/O多数以读操作为主,写操作较少,这种方式的快照实现技术是一个较理想的选择,因为快照的完成需要较少的时间。除此之外,如果一个应用易出现写入热点,即只针对某个有限范围内的数据进行写操作,那么COW的快照实现方式也是较理想的选择。因为其数据更改都局限在一个范围内,对同一份数据的多次写操作只会出现一次写时复制操作。
写时复制的示意
下图是写时复制的示意图
写时复制的示意图 写时复制的示意图
:但是这种方式的缺点也是非常明显的。如果写操作过于分散且频繁,那么 COW造成的开销则是不可忽略的,有时甚至是无法接受的。因此在应用时,则需要综合评估应用系统的使用场景,以判断这种方式的快照是否适用。快照实现技术中的另一种技术是 I/O 重定向(I/O Redirect)。即将读写操作重新定向到另一个存储空间中。在一个快照生成期间,所有的写操作将被重定向到另一个介质,而读操作是否需要读重定向,则需要根据读取的位置是否有过自上次快照以来的写重定向,必须对有过写重定向的位置进行读重定向,否则不需要进行读定向。当要创建一个快照时,则将自上次快照以来所有的重定向写数据所对应在源介质中的数据复制出来生成这个时间点的快照,然后再将这些重定向写数据写回到源介质中的相应位置上,从而完成一个快照生成过程。
I/O 重定向示意
下图中显示了IO重定向的执行过程。
I/O 重定向示意图 I/O 重定向示意图
从上面的过程来看,关键的性能影响在于快照生成时的四次I/O操作(一次读源介质,一次写快照数据,一次读快照介质,一次写源介质),另一个则是重定向的计算工作。这种方式虽然看起来最后生成快照时的I/O操作较多,但是考虑到这个操作是在生成快照时才会发生,特别是快照生成时可以对I/O操作进行排序,可以使得对介质的读写得到较好的优化,因此使影响很小。而对于重定向的计算操作对于当下的计算能力来说,不会成为一个性能的瓶颈问题。因此这种快照实现方式在非快照执行期间的影响甚小。因此这种方式比较适合Write-Intensive(写密集)类型的存储系统
快照生成
下图是快照生成过程的示意图:SNIA 将快照的实现方式表述为:镜像分离(split mirror)、改变块(changed block)、并发(concurrent)三大类。后两种在实现时其实质就是写时复制及I/O重定向。对于 split mirror的方式,由于其灵活性以及开销问题,在实际的存储系统中,并不实用。

实现层次 编辑

概述
计算机的存储结构是一个类似于 TCP/IP 一样的栈结构。栈中包括硬件与软件部分。栈中不同层为上层提供服务,同时利用下层的接口(如下图)。
存储栈 存储栈
存储栈
因此在实现上,快照可以在不同的栈层上实现。但是不同的层其效果及特点是不一样的。一般来说,在应用层不太合适实现快照功能。因为不同的应用是千差万别的,因此需要针对不同的应用实现快照功能,这个代价也太高了。但在应用层实现快照也并不是说一无用处,如在应用层实现快照的一个典型的例子就是 vmWare 虚拟化软件中的快照功能。只是这种快照功能应用在存储系统中不现实。其次在文件系统层实现快照与应用也是具有同样的缺点,就是需要针对不同的文件系统实现快照功能,这样的代价也很大。
实现层次案例
实现的快照的功能的文件系统基本上都是一些专用系统或者专为某个特定功能实现的文件系统。在这个层级上实现快照,缺乏灵活性和可扩展性。这个比较典型的例子就是ZFS。而较为适宜实现快照功能的层应该为卷管理层以及物理层。在这两个层中都不与特定的应用及文件系统相关。这里比较典型的例子有Linux 的LVM。而在硬件层次上实现快照又通常有许多种,在这个层次上实现的快照一般为专用系统,好处是性能是各个方式中最好的。但是在这个层次上实现的快照也有一个不可避免的缺点,那就是由于不与特定的应用及文件系统关联,因此其就无法理解上层的应用逻辑,也就无法保证每个快照都处于数据一致性状态的。但是这个缺点是可以通过其他的方式减少或者解决的,比如在生成快照之前先对数据进行刷新操作,或者在恢复快照时对文件系统进行一致性检查等。结束语计算技术不断在进步,存储技术同样也在进行着日新月异的变化。不同的应用在不断地更新着对存储的需求。同时对于数据重要性的体现,各种容灾技术也给用户的数据加上了防护安全帽。
图像快照
在photoshop中有一项功能是图像快照,它对于图像的处理有着很大的作用,“快照”命令允许您建立图像任何状态的临时副本(或快照)。新快照将添加到历史记录面板顶部的快照列表中。选择一个快照使您可以从图像的那个版本开始工作。
快照与“历史记录”面板中列出的状态有类似之处,而且它还具有其他优点:
1.您可以命名快照,使它更易于识别。
2.在整个工作会话过程中,您可以随时存储快照
3.可轻松比较效果。例如,可以在应用滤镜前后创建快照。然后选择第一个快照,并尝试在不同的设置情况下应用同一个滤镜。在各快照之间切换,找出您最喜爱的设置。
4.利用快照,可以轻松恢复您的工作。您可以在尝试使用复杂的技术或应用动作时,先创建一个快照。如果对结果不满意,您可以选择该快照来还原所有步骤。
注:快照不会与图像一起存储 — 关闭某个图像将会删除其快照。同时,除非您选择了“允许非线性历史记录”选项,否则,如果选择某个快照并更改图像,则会删除“历史记录”面板中当前列出的所有状态。
同名游戏
游戏信息
游戏名称:快照
英文名称:Snapshot
快照 快照
游戏类型:动作冒险类(ACT)游戏
游戏制作:Retro Affect
游戏发行:Retro Affect
游戏平台:PC
发售时间:2012年8月31日
游戏介绍
玩家要通过拍摄游戏场景的照片,然后操控拍出的图像来解决谜题并过关。
制作人员David Carrigg解释说:“在游戏中玩家以一种全新而有趣的方式使用照相机,比如拍下光线的照片用于与物体互动。照相机甚至可以捕捉物体的动作。结合旋转照片、粘贴照片的能力,带来更加复杂和有趣的游戏性。比如说,你拍摄到一个雪球掉落的照片,如果你把照片来个180度旋转的话,雪球会向上弹出去。”
配置要求
Minimum:
OS:Windows XP
Processor:Intel Core 2 Duo
Memory:2 GB RAM
Graphics:nVidia 8800 GTS or Equivalent
DirectX®:9.0c
Hard Drive:500 MB HD space
Sound:On Board Soundcard
Recommended:
OS:Windows 7
Processor:Intel Core 2 Duo
Memory:4 GB RAM
Graphics:nVidia 8800 GTS or Better
DirectX®:9.0c
Hard Drive:1 GB HD space
Sound:On Board Soundcard
词条图册 更多图册
参考资料
词条标签:
计算机学