存储备份技术研究论文_第1页
存储备份技术研究论文_第2页
存储备份技术研究论文_第3页
存储备份技术研究论文_第4页
存储备份技术研究论文_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、存储备份技术研究论文 摘要:随着互联网络飞速发展,数据量呈现海量增长,单机存储无法满足需求,分布式存储应运而生并且取得了较大的发展。系统中的数据由于自然灾害、异常故障等原因会遭到破坏,因而需要对数据进行备份加以保护。以基于分布式文件服务器的存储备选份恢复系统为研究对象,探讨了分布式存储下海量数据备份恢复的关键问题:存储备份恢复的高效性、一致性和可靠性。 关键词:备份;存储;分布式;p2p;技术 1存储与备份技术的高效性 1.1高性能多源下载过程 (1)服务器根据相关信息返回存储需要下载文件的slave的具体信息;(2)根据文件大小和slave的负载状态,选择合适的slave建立socket连接

2、对文件进行分块下载;(3)下载完成后把各个文件块合并成为原始文件。 1.2静态下载 在静态下载中,不考虑备份文件的大小,服务器的负荷量,采取统一的模型进行下载。算法如下:(1)得到备份文件所在服务器的个数n,以及每个服务器的ip地址和端口号;(2)得到文件的总大小size,按照文件分割算法,把文件分割为n块;(3)与每个服务器建立连接,从每个服务器上下载一块文件;(4)下载完成后,把所有文件块合并成一个完整的文件,存储在备份介质上;(5)保存备份文件的相关元数据信息;(6)文件下载、备份完成。 1.3动态下载 在动态下载模型中,要综合考虑各方面因素,动态决定文件是否分块进行多源下载,以及文件块

3、的大小,提高系统资源利用率,进而提高备份效率。对于没有冗余的文件,只能从一个节点上下载。对于较小的文件,使用单线程下载;对于较大的文件,可以采用多线程下载。对于有多个冗余的文件,可以动态选取从负荷量较低的节点进行下载。伪算法表示如下: 首先定义如下变量:文件大小阀值tl,当文件大小大于tl时采用多源下载;节点标准负荷t2,若节点负荷大于t2,则节点处于重负荷状态;文件大小size文件冗余数n。 算法表示如下: if(文件没有冗余) 无须分块下载,可以采用多线程从存储文件的节点上下载文件; else if(文件大小size阀值t1) 无须多源下载,从存储文件的节点中选取负荷最小的节点,下载文件;

4、 elsel 得到存储文件的n个节点的信息; 从n个节点上选择负荷小于阀值t2的节点,节点数目为m; 利用文件分割算法把文件分割为m块; 与选中的m个节点建立连接,从每个节点上下载一个文件块; 下载完成后,把m个文件块合并成为完整的文件; 把文件存储在备份介质; 2存储与备份技术的一致性 2.1锁和快照技术 锁就是当进行数据备份时,对需要备份的数据加锁,此时禁止对数据进行修改。由于备份时禁止对数据的修改,锁技术对数据的可用性会造成一定的影响,会影响到系统的效率。快照就是在相当短的时间内生成原存储系统的瞬时映像,该映像生成之后,备份就可以根据该映像来进行,而不用担心数据的不一致性。快照技术的实现

5、有两种方式:更新复制方式和split-mirror方式。更新复制技术就是当进行快照时,并不立刻复制数据,只有当数据发生变化时才进行复制。split-mirror是使用和主存储系统一样的快照存储系统,数据同时保存在主存储系统和快照系统,此时快照系统就可作为备份数据。 2.2在线备份 在分布式文件访问平台中,存在着海量的文件,文件的信息较多,若把文件的信息逐个复制则要浪费大量的时间、空间,对系统的可访问性造成影响。wafl文件系统使用了更新复制技术。当创建系统快照时,并不立刻复制所有文件信息,而是创建新的快照根节点,它与原文件系统根节点有相同的信息,文件系统中根节点的子节点也为快照根节点的子节点。

6、此时以快照根节点为根节点生成了一棵快照树,它和原文件系统树除了根节点以外,其余部分相同。当文件信息需要修改时,创建新的节点,把文件信息赋给此节点,并把节点作为快照节点插入快照树中,同时修改原节点的信息,具体分为以下情况: (1)修改文件信息:当对文件的基本信息进行修改时,如更改文件名称等,此种情况下比较简单,伪算法如下:if修改文件) 创建新的节点作为快照节点; 把原节点的信息复制到快照节点; 把快照树中指向原节点的指针指向快照节点; 快照节点儿子节点的指针指向原节点的儿子节点; 修改原节点的信息; 修改文件信息具体过程如图3: (2)移动文件:当把文件或者目录从一个目录移动到另外一个目录下时

7、,具体伪算法如下: if移动文件) 创建新的快照节点; 把原节点的信息复制到快照节点; 复制原父目录的信息,添加到快照树中; 把快照树中指向原节点的指针指向快照节点; 快照节点儿子节点的指针指向原节点的儿子节点; 复制新父目录的信息,修改子节点,添加到快照树中; 修改原节点的信息,把原节点移动到新的目录下; 移动文件过程如图4所示: (3)新建文件:当新建文件时,具体伪算法如下: if(新建文件) 创建新的节点,并给节点赋予相应的文件信息; 在文件系统树中找到节点的父目录; if(若父目录己经创建了副本), 把创建的节点插在文件系统树中父目录节点下; else 父目录创建副本; 副本赋予相应的

8、信息; 父目录副本儿子节点即为父目录的儿子节点; 快照树中指向原来父目录的指针指向副本; 新建节点插在文件系统树中父目录节点下; 新建文件过程如图5所示: 2.3备份的实现 在创建好快照树之后,就可以进行在线备份。快照树保存的信息就是开始备份瞬间所有文件的信息,进行在线备份时,首先从快照树的根节点开始,逐个访问节点,按顺序对快照树进行遍历、备份,保证了数据的一致性,并且可以在备份的同时允许对数据进行修改,不影响用户的访问。 3存储与备份的可靠性 在分布式系统中存储着海量的数据,数据量大,备份的时间较长,在备份的过程中可能会出现错误情况或者发生意外的中断。因此备份过程中需要随时记录备份的进度,这

9、样在备份发生错误或者异常时,下次备份能够在上次备份的出错点继续进行,实行断点备份,而不用重新开始备份。断点备份过程中,使用日志表来记录备份过程,把每次备份的信息写入日志表。日志表如表1: 3.1伪算法 if(日志表为空) 无须查找断点位置,直接开始备份,备份时把每一个文件的备份信息添加 到日志表; else while(日志表尚未查找完毕) 对于表中每一项,查找此项对应文件在树中的具体位置; if(此文件尚未备份完成) 记录此文件,即为断点位置; 当日志表查找完成后,即可得到未备份完成的文件; 从断点位置开始继续备份,并把文件备份信息添加到日志表; 本次备份完成后把日志表清空 名称定义 id文

10、件独一无二的id type备份类型,可以是完全备份、增量备份、差量备份 stary_time开始备份时间 finished是否完成 isfolder是否为文件夹 parentid文件父节点id 3.2算法复杂度 若日志表中的记录个数为k,文件总数为n。则对于每一个记录项,要查找其在文件树中的位置,当前一个记录项查找到时,由于遍历的顺序性,后一个记录项可以从前一个的位置继续向后查找,这样,可以保证k个记录项查找次数为k,也即为o(n)。当备份发生错误或者中断时,通过此算法,能够在相当少的时间内,找到断点位置,下一次备份时可以直接从断点位置继续进行,实现断点备份,保证了备份的可靠性。 参考文献 1牛云,徐庆.数据备份与灾难恢复m.北京:机械工业出版社,2007. 2张联峰

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论