当前位置: 首页 > 专利查询>EMC公司专利>正文

以可重复方式遍历数据制造技术

技术编号:2828843 阅读:208 留言:0更新日期:2012-04-11 18:40
公开了对层级式数据的遍历。接收数据的第一等级中项目的第一列表并且以一定顺序排序。以排序的第一列表的顺序处理第一等级的数据。如果在处理过程中遇到数据的任何其它等级,接收所遇到等级中项目的另一个列表并且以一定顺序排序。以列表的顺序处理数据。

【技术实现步骤摘要】
【国外来华专利技术】以可重复方式遍历数据
技术介绍
随着存储单元容量指数式增长的趋势,文件系统的大小也以指数式 增长变大。由于文件系统备份工具必需遍历整个文件系统,以便定位并 且备份所有需要的文件和目录,大文件系统的备份可能花费相当长的时 间。较长的备份时间还可能意味着在备份处理过程中被中断的较大风 险。例如,网络备份系统中短暂的网络故障或者客户机或服务器中任何 其它的故障可能造成备份过程中断。在备份失败的情况下,典型的备份 系统从备份操作中待备份的数据集合(例如待备份的一组文件和/或目录) 的起点重新开始备份过程,有时在这里将这样的集合称为保存集合(saveset)。假定长的备份持续时间和进一步中断的可能性,在每次中 断之后再开始备份过程可能显著影响备份系统的性能。在典型的备份系统或过程中,甚至在包含保存集合的数据自中断以 来没有被修改过的情况下备份操作也无法获得其停止的位置,这是因为 在至少某些情况下无法保证对文件系统的遍历每次都以相同的顺序进 行。例如,对于相同命令的单独场合,从给定目录读取项目的readdir (读目录)命令可能以不同的顺序返回结果。因此存在一种需求,保证以 可重复的方式执行数据遍历。附图说明在下面的详细描述和附图中公开了本专利技术的多个实施例。 图1说明了备份系统环境的一个实施例。 图2说明了文件系统树形结构的一个实施例。 图3A说明了备份保存集合的过程的一个实施例。 图3B说明了以可重复方式遍历和备份数据的过程的一个实施例。 图3C说明了建立遍历列表的过程的一个实施例。 图3D说明了恢复中断的备份操作的过程的一个实施例。 图3E说明了确定成功写入备份介质的最后文件系统项的过程的一个 实施例。图3F说明了建立过程前后关系的过程的一个实施例。具体实施方式 本专利技术可以以多种方式实现,包括作为过程、装置、系统、实体的 组合、计算机可读介质,例如计算机可读存储介质或者在光或电通信连 接上传送程序指令的计算机网络。在本说明书中,可能将这些实现方式 或者本专利技术可以采用的任何其它形式称为技术。所描述的配置用于执行 任务的组件,例如处理器或存储器,既包括在特定的时间临时配置用于 执行任务的通用组件、也包括制造用于执行该任务的定制组件。 一般而 言,在本专利技术的范围内可以改变所公开过程的步骤顺序。下面给出了本专利技术一个或多个实施例的详细描述,并且伴随的附图 说明了本专利技术的原理。结合这些实施例对本专利技术进行描述,但本专利技术不 局限于任何一个实施例。本专利技术的范围仅由权利要求限定,并且本专利技术 包括许多替代、修改和等效形式。在后面的说明中所述的许多特定细节 是为了提供对本专利技术的彻底理解。提供这些细节是为了作为例子,可以 根据权利要求书实施本专利技术而不需要这些特定细节中的某些或全部。为 了清楚的目的,对本
中和本专利技术相关的公知的技术材料没有详 细描述,从而不会产生不必要的影响使本专利技术晦涩难懂。公开了以可重复的方式对层级式数据进行遍历。在一个实施例中, 在层级式数据的第一等级读取包含至少一部分数据的项目的列表并且排 序为指定的顺序用于遍历的可重复性。例如,当以可重复方式遍历文件 系统以便执行关于该文件系统或其一部分的备份操作,将每个目录中的 内容读入列表并且排序(例如成为文件名的字母顺序)。以所排序列表的 顺序备份文件系统项(或者其它经过处理的数据)。如果遇到数据的第二 等级,读取第二等级中的数据并且排序为指定的顺序,然后以所排序的 顺序处理数据。如果数据的遍历被中断,在恢复操作中以与在中断的操 作中相同的指定顺序进行读取、排序和处理,保证如果在中断操作被中 断的点恢复处理则不会遗漏数据单元,甚至在每个等级的单元是以不同 的顺序读取或接收的情况下也是如此。在一个实施例中,作为备份操作的一部分,当文件系统项成功保存 到备份介质时,产生备份过程的记录。这个记录在此以后可以用于在备 份过程中出现故障时可以从最后成功记录的备份点恢复备份。在一个实 施例中,在备份恢复操作中一旦找到最后备份点,备份系统或过程重新 建立备份操作前后关系而无需彻底地遍历文件系统。通过重新建立前后 关系并且从在中断之前成功并且完全备份的最后文件之后的数据单元开始恢复处理,恢复被中断的备份操作。以相同的、可重复的顺序遍历文 件系统,保证了在备份介质上将不会有文件被遗漏或者重复存储。图1说明了备份系统环境的一个实施例。在所示的例子中,客户机102通过网络106连接到服务器108。可以存在连接到网络的任意数量的 客户机和服务器。该网络可以是任意的公用或者私有网络和/或其组合, 包括而不是限制于内部互联网、局域网、广域网、以及连接多个系统和/ 或在一起的系统组的其它形式。客户机102连接到备份介质104。在某 些实施例中,备份介质可以是以下存储介质中的一种或多种硬盘、磁 带驱动器、光学存储单元、以及任何非易失性存储器件。可以存在多于 一个的备份介质。在一个实施例中,备份介质104直接连接到网络。在 另一个实施例中,备份介质104连接到服务器108。在另一个实施例中, 备份介质104通过SAN(存储区域网络)连接到客户机102。备份数据库 IIO连接到服务器108。在一个实施例中,备份数据库110包含与一个或 多个客户机和/或服务器上的数据相关联的数据。在另一个实施例中,备 份数据库110包含与写入一个或多个备份介质的数据相关联的数据。在 另一个实施例中,备份数据库IIO直接连接到网络。在另一个实施例中, 备份数据库110连接到客户机102。在另一个实施例中,备份数据库IIO 是服务器108和/或客户机102的一部分。在一个实施例中,客户机102 的备份由服务器108配合。服务器108指令客户机将数据备份到备份介 质104。当数据成功写入备份数据时,在备份数据库IIO上作出记录。 在另一个实施例中,服务器108与客户机102上运行的备份代理协作以 调整备份操作。该备份代理可以由服务器108进行配置。图2说明了文件系统树形结构的一个实施例。在一个实施例中,系 统中待备份的一部分数据(保存集合)可以是整个文件系统或者是文件系 统的一部分。在一个实施例中,对文件系统以可重复方式进4亍遍历,以 保证任意随后发生的在文件系统中任意相同点开始的遍历以相同的顺序 执行。在所示的例子中,以首先是文件名然后是目录名的字母顺序进行 遍历。在其它实施例中,可以使用任何规范的文件系统项的排序。遍历 从根目录开始。读取并排序根目录的项目。排序后的顺序列表包括X 伊尸、《^入《录么《录4。以列表中的顺序备份与列表中的项目对 应的数据。当遇到备份《^7时,备份过程下降到《^入产生的列表包 括Jt斧J,并且备份X斧丄在已经遍历冢录7之后,遍历恢复到根目录列表的项目上。当遇到《^2时,产生其内容的顺序列表,按顺序包括X斧A X斧C、 X斧从豸求又以列表的顺序备份与列表的项目 对应的数据。当遇到厚^J时,产生对应于X伴f的列表和备份。由于 ^录4为空,备份对应于厉录4的项目而没有任何相关的文件。图3A说明了对保存集合进行备份的过程的一个实施例。在所示的例 子中,在302设定当前备份目录为保存集合的第一级目录。在一个实施 例中,在302设定当前目录为与文件系统的根目录相关联。该保存集合 可以是预先配置本文档来自技高网
...

【技术保护点】
一种处理层级式数据的方法,包括:    接收数据的第一等级中项目的第一列表;    以一定顺序排序该第一列表;    以所排序的第一列表的顺序处理第一等级的数据;以及    如果在处理过程中遇到数据的另一等级,则:    接收所遇到等级中项目的第二列表;    以一定顺序排序该第二列表;以及    以第二列表的顺序处理数据。

【技术特征摘要】
【国外来华专利技术】US 2005-4-14 11/107,9951.一种处理层级式数据的方法,包括接收数据的第一等级中项目的第一列表;以一定顺序排序该第一列表;以所排序的第一列表的顺序处理第一等级的数据;以及如果在处理过程中遇到数据的另一等级,则接收所遇到等级中项目的第二列表;以一定顺序排序该第二列表;以及以第二列表的顺序处理数据。2. 如权利要求l所述的方法,进一步包括在出现中断所述层级式数 据被处理的执行操作的事件时恢复对层级式数据的处理,而不从起点重 新开始该操作,包括通过对层级式数据进行遍历以达到重新开始点;并 且以与在中断之前遍历层级式数据相同的顺序处理剩余的层级式数据单 元,按着继续进行操作所要求的进行。3. 如权利要求2所述的方法,其中将层级式数据进行遍历以达到重 新开始点的步骤包括以与在中断之前遍历层级式数据相同的顺序进行遍 历在中断之前处理的层级式数据的至少一部分。4. 如权利要求l所述的方法,进一步包括,若有的话, 一旦第二列 表中最后的项目已经处理完成,以笫一列表的顺序从下一个项目开始恢 复处理第一等级的数据。5. 如权利要求l所述的方法,其中第一列表被排序在堆栈数据结构 中的第一位置而第二列表被排序在堆栈数据结构中的第二位置,其中第 一位置与数据的第一等级相关联而第二位置与数据的等级相关联。6. 如权利要求l所述的方法,其中层级式数据是包括文件系统或其 一部分的保存集合。7. 如权利要求l所述的方法,其中层级式数据包括组织为树形、目 录、阵列、或链接表的数据。8. 如权利要求l所述的方法,其中接收项目的第一列表的步骤包括 从内容列出过程中接收数据。9. 如权利要求l所述的方法,其中接收项目的第一列表的步骤包括 发出一个或多个请求以读取目录。10. 如权利要求1所述的方法,其中第一等级包括第一目录而第二等级包括笫二目录,所述第二目录是笫一目录内的子目录。11. 如权利要求l所述的方法,其中第一等级是保存集合的根目录。12. 如权利要求1所述的方法,其中第一等级是比第二等级更加概 括的层级式数据等级。13. 如权利要求1所述的方法,其中以一定顺序排序第一列表包括 以可重复顺序对项目进行排序。14. 如权利要求1所述的方法,其中以一定顺序排序第一列表包括 以规范的顺序对项目进行排序。15. 如权利要求14所述的方法,其中规范的顺序包括基于以下一个 或多个的排序项目类型、项目名称、项目属性、项目修改时间、项目 创建时间、项目大小、以及节点数量。16. 如权利要求1所述的方法,其中处理第一等级的数据的步骤包 括对第一等级的数据进行遍历。17. 如权利要求1所述的方法,其中处理第一等级的数据的步骤包 括备份与第 一等级的数据相关联的数据。18. 如权利要求1所述的方法,其中处理第一等级的数据的步骤包 括记录与第一等级的数据相关联的数据。19. 如权利要求1所述的方法,其中在处理过程中可以遇到任意数 量的等级。20. 如权利要求l所述的方法,其中处理可以被中止。21. 如权利要求1所述的方法,其中如果处理已经被中止,该处理 可以从最后完成的项目恢复继续。22. 如权利要求1所述的方法,其中如果处理已经被中止并且自中 止以来没有经过预定的或动态配置的一段时间,则该处理可以从...

【专利技术属性】
技术研发人员:K法利R赖特迈尔W马鲁亚马
申请(专利权)人:EMC公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1