存储快照实现原理

存储快照有两种实现方式:COW(写时复制Copy-On-Write)ROW(写重定向Redirect-On-Write),两种实现方法有区别,造成读写性能、应用场景有比较大的区别。

1 COW

原理见下图(从网上找的,没自己画)。
1)原卷数据是A~G。此卷Metedata像指针一样指向这些数据。
2)当做快照时,重新复制一份Metedata,并且也指向这些A~G数据。
3)当有数据要写入到源卷时(下图写入D’),写入到D的原位置之前,需要把D拷贝出放到一个新位置。然后修改快照的Metedata的其中一个指针指向拷贝出的位置[D](图中是Snapshot data的存储位置)。同时,把D’写入到D原来的位置。
COW原理
此方式可以看出,源卷的Metedata的是没有变化的。对原卷是连续的数据,多次快照,多次写之后还是连续的数据,因此读性能或者对单个位置的多次写性能都不会有很大的影响。
但是,快照的数据是非连续的,如数据ABCEFG还是在源卷的位置,是连续数据。而数据D在存储的其他位置,非连续。 如果多次快照,不同位置的多次读写后,快照的数据可能就比较混乱。造成对快照的读写延时较大。
应用场景
这种实现方式在第一次写入某个存储位置时需要完成一个读操作(读原位置的数据),两个写操作(写原位置与写快照空间),如果写入频繁,那么这种方式将非常 消耗IO时间。因此可推断,如果预计某个卷上的I/O多数以读操作为主,写操作较少的场景,这种方式的快照实现技术是一个较理想的选择,因为快照的完成需要较少 的时间。除此之外,如果一个应用易出现写入热点,即只针对某个有限范围内的数据进行写操作,那么COW的快照实现方式也是较较理想的选择。因为其数据更改都局限在一个范围内,对同一份数据的多次写操作只会出现一次写时复制操作。
但是这种方式的缺点也是非常明显的。如果写操作过于分散且频繁,那么 COW造成的开销则是不可忽略的,有时甚至是无法接受的。因此在应用时,则需要综合评估应用系统的使用场景,以判断这种方式的快照是否适用。

2 ROW

原理见下图:
Vd是源卷的Metedata,分别指向4块数据。做快照时,snap的metadata也指向此4块数据。当有数据写入时,把数据写入另外一个位置,然后修改vd的其中一个metedata到新位置。snap的metedata数据不变化。
ROW原理
此方式源卷经过长时间写后,所有数据块的位置可能都会重定向到其他位置,导致源卷的数据不连续。在集中式存储情况下,会导致对源卷的读写性能降低。

两种方式的优缺点,及应用场景
COW最大的问题是对写性能有影响。第一次修改原卷,需要复制数据,因此需要多一次读写的数据块迁移过程。这个就比较要命,应用需要等待时间比较长。但原卷数据的布局没有任何改变,因此对读性能没有任何影响。

ROW在传统存储情况下最大的问题是对读性能影响比较大。ROW写的时候性能基本没有损耗,只是修改指针,实现效率很高。但多次读写后,原卷的数据就分散到各个地方,对于连续读写的性能不如COW。这种方式比较适合Write-Intensive(写密集)类型的存储系统

但是,在分布式存储的情况下,ROW的连续读写的性能会比COW差吗? 就不一定了。正常情况下,读写性能的瓶颈一般是在磁盘上。分布式存储情况下,业务层看到连续存储,实际上是分布在不同的服务器的不同硬盘中,数据越是分散,系统性能越高。而ROW把原数据打散之后,对性能反而有好处。

因此,整体情况下ROW基本上是对读写性能影响较小,因此是业界发展方向。

目前分布式存储比较流行,华为有个FusionStorage数据,说是无限次快照,而且0性能下降,vSAN快照10%~30%的性能下降。从上面的分析来看,就知道两个场景的实现方法了。

快照另外一个非常重要的特性是快照一致性组(Consistency Group),这个功能就是支持多个LUN或者叫卷volume同时做快照,保证数据的一致性。

如果采用阵列的快照来做数据库的备份,必须所有的LUN都是一个时间点的才行,这样数据库恢复的时候才能起来,否则数据库必须回滚到某一个一致的时间点,意味数据的丢失。比较完美的做法就是在主 机安装一个快照的agent,最好是多路径软件具备这个功能,在高端存储要做快照的时候,对主机的快照agent说,别动, 要照相了。主机agent接受到摄影师的命令后,把ORACEL主机缓存的内容flush一下到陈列来,然后hold住,阵列也尽快把cache的内容 flush到硬盘里,ORACLE用到的所有硬盘一块喊”茄子“,摄像师一按快门,一幅完美的快照就产生了。

一致性组除了保证照相的时候一致性外,还有恢复的时候要一致性恢复。这块的实现的重要性就不如照相的时候重要,可以人工选择同一时间的LUN快照恢复就可以了。最重要的是照相的时候必须要一致,而且这个人工干不了。

转自http://blog.sina.com.cn/s/blog_b4b6c24d0102whpt.html

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
华为服务器存储试题库 1.按备份的数据量来分或实现原理不同,有如下()备份类型: (Select 3 Answers ) A.全备份 B.增量备份 C.差量备份D. 快照 2.根据SHARE 78国际组织划分的系统容灾分为多少级? ( C ) A. 5 B. 6 C.7 D.8 3.windows下常见文件系统包括ntfs和ext3。 ( F ) True False 4.RPO(Recovery Point Object)是衡量系统在灾难发生后将损失多少数据的指标。( T ) True False 5.企业级硬盘的主要接口类型包括SATA、SAS和FC. ( T ) True False 6.容灾方案就是数据备份方案。 ( F ) True False 7.下面RAID级别中,数据冗余能力最弱的是?( D ) A.RAID5 B. RAID1 C.RAID6 D. RAID0 8.硬盘不仅用于各种计算机和服务器中,在磁盘阵列和各种网络存储系统中,它也是基本的存储单元。(T) 华为服务器存储试题库全文共10页,当为第1页。True False 华为服务器存储试题库全文共10页,当为第1页。 9.以下有关SSD,描述错误的是(D) A.SSD的汉语名字为固态硬盘 B.SSD是由控制单元和存储芯片组成,简单的说就是用固态电子存储芯片阵列而制成的硬盘,它的接口规范和定义、功能及使用方法上与普通硬盘的完全相同。 C. SSD采用FLASH芯片作为存储介质,它内部没有机械结构,因此没有数据查找间、延迟间和寻道间。 D.SSD固态硬盘最大的缺点就是不可以移动,而且数据保护受电源控制,不能能适应于各种环境。 10.RAID, Redundant Array of Independent Disks,即独立磁盘冗余数组,其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。(T) True False 11.服务器的硬件组成有机箱,电源风扇,处理器,内存,主板,RAID卡,本地硬盘等。(T) True False 12. 目RAID 的实现方式分为 硬件RAID 方式 和 软件RAID 方式 华为服务器存储试题库全文共10页,当为第2页。13. 磁盘阵列上的硬盘组成RAID组后,通常连接磁盘阵列的服务器并不能直接访问RAID组,而是要再划分为逻辑单元才能分配给服务器,这些逻辑单元就是LUN. (T) 华为服务器存储试题库全文共10页,当为第2页。 True False 14.对于E-mail或者是DB应用,以下哪个RAID级别是不被推荐的 : ( D ) A.RAID 10 B.RAID 6 C.RAID 5 D.RAID 0 15.华为磁盘阵列中映射给主机使用的通用存储空间单元被称为(),它是在RAID的基础上创建的逻辑空间。( A ) A.LUN(Logic Unit Number) B.RAID(Redundant Array of Independent Disks) C.硬盘 D.磁盘阵列 16.与传统的本地存储和DAS存储相比较,下列哪些属于现代新型SAN阵列存储的主要特点或优势?(Select 3 Answers) ABC A. 容量大B. 性能高C. 稳定性好D. 不关注扩展性 17.衡量一个系统可靠性常见间指标有哪些?(Select 2 Answers) CD A. 可靠度B. 有效率C. 平均失效间D. 平均无故障间 18.基于网络层的存储虚拟化优势是与主机无关,不占用主机资源,这种说法是正确的。( T ) True False 华为服务器存储试题库全文共10页,当为第3页。19.某客户应用每天产生的新数据约占10%,为最大程度地节约存储空间最适合采用的备份类型是:( ) B 华为服务器存储试题库全文共10页,当为第3页。 A. 完全备份B. 增量备份C. 差异备份D. 合成备份 20.服务器是计算机的一种,是网络中为客户端计算机提供各种服务的高性能的计算机,服务器英文名称为 Server . 21.选择PC服务器通常需要考虑以下几方面的性能指标:可管理性、可用性、可靠性、安全性以及可扩展性。 22.Intel Xeon CPU中文名是Intel的 至强 系列。 23.华为服务器的名称缀是 Tecal ,主要分 RH系列机架式服务器 ,E系列刀片服务器,X系列高密度服务器, 如Tecal RH 2268 V2为 机架式服务器 。 24.E6000是刀片服务器的机箱 ,BH 640 V2是刀片服务器的 刀片 ,Tecal X 6000 V2是 高密度服务器机箱 ,Tecal XH310是高密度服务器的 节点服务器 。 25.FusionS

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值