电脑技术学习

剖析Windows Vista系统的存储技术

dn001
三、 VSS处理流程

  VSS处理映射拷贝,需要协调各个模块来完成,从而保证创建出高保真的拷贝,进而实现数据的一致性,其具体步骤如下图所示:


图-2 VSS处理流程图

  A) 第一步,请求者让VSS枚举所在卷上的写入者应用,并收集元数据(Metadata)。

  B) 第二步,写入者可能通过XML文件来描述其组件(Components),并定义其恢复(Restore)方法;其中,考虑到数据一致性,写入者需要一些相关处理,比如对于数据库应用来说,关闭所有打开的事务、回滚事务日志、以及将缓冲区中的数据写入等操作,直到所有数据准备好之后,通知VSS可以创建映射拷贝了。

  C) 第三步,VSS对于请求的卷,查询是否支持映射拷贝,并由那个提供者提供;因为在请求者管理应用中,会设置卷的映射拷贝属性以及策略等,所以需要进行查询和判断。

  D) 第四步,请求者通知VSS,要求在该卷上创建映射拷贝。

  E) 第五步,VSS锁住写入者应用,暂时不让写入新数据(在某些应用情况下,读操作请求是可以允许的)。

  F) 第六步,VSS让提供者在磁盘上创建当前状态的映射拷贝(创建映射拷贝的速度,和创建的方法以及提供者的实现相关)。

  G) 第七步,创建映射拷贝完毕,VSS解锁写入者应用;然后写入者就可以处理队列中的写请求,接着VSS会查询是否这些写请求在创建映射拷贝期间被保证在队列中,如果是,则说明数据是一致的,否则说明可能数据一致性有问题,并做相应处理。

标签: