存储复制系统和方法

文档序号:6351144阅读:149来源:国知局
专利名称:存储复制系统和方法
技术领域
本实施方案涉及信息存储复制领域。
背景技术
电子系统和电路已经对现代社会的进步作出了巨大的贡献并用在很多应用中以获得有利的结果。很多电子技术,例如数字计算机、计算器、音频装置、视频设备以及电话系统,在商业、科学、教育以及娱乐大部分领域中提高了生产率并降低了分析和传输数据、观点和趋势的成本。这些活动经常涉及大量信息的存储。现代系统典型地利用大量信息,重要资源都耗费在这些信息上以开发、存储并维护信息。不断地增加复杂应用典型地涉及大量存储器以及快速扩展的文件系统。伴随着持续增加的复杂性,灾难性的信息破坏和丢失通常几率增加。保持信息的精确复制映像非常重要。然而,保持复制的存储映像通常是非常消耗资源的。每隔一定时间完全复制整个存储映像的方法会对系统处理和通信网络产生很大的延迟和影响。一些传统的复制方法仅处于块的级别上。一些其他传统复制方法利用rsync操作(例如,Unix平台),但产生大量数据移动和后处理(例如,请求更多的存储器和更长的时间)。传统的文件系统经常利用对象标识符的路径名(例如,目录、文件等)来识别文件系统命名空间中的信息。为了努力使文件系统管理合理化,一些系统利用内部名称来管理命名空间对象。例如,文件系统可以使用对应于命名空间对象的节点标识。该节点标识可以用于内部文件系统管理操作。然而,内部名称典型地对复制存储系统是不可传输的。例如,用于源存储映像的内部节点标识或名称典型地在内部不可用于一个相应的目标存储映像。

发明内容
在此提出了用于信息存储复制的系统和方法。在一个实施方案中,执行一个命名空间转换或变换处理,在该处理中将一个节点标识符转换为一个对象标识符。接收与一个文件系统操作变化相关的节点信息。执行路径名对象转换处理的一个变化节点。执行路径名对象转换处理的一个未变化节点。在一个示例性实施方式中,路径名对象转换处理的变化节点和路径名对象转换处理的未变化节点使用返回该对象标识符和父节点标识符的数据结构。在一个路径名中插入一个对象标识符。路径名对象转换处理的一个变化节点可以利用一个命名空间变更跟踪数据结构(例如,哈希表),该结构将与命名空间变化相关联的节点标识符映射到父节点标识符和对象标识符或名称。路径名对象转换处理的所述未变化节点使用一个最长路径跟踪数据结构(例如,前缀树)。父对象节点标识符可以作为输入返回至该路径名对象转换处理的变化节点。在一个实施方案中,一种产品包括其上存储有指令的一种计算机可读介质,如果由计算机装置执行时,这些指令使得该计算装置根据该复制方法执行存储映像复制。这些指令包括在多个模块中。一个映像冻结模块管理一个源文件系统在会话检查点上的冻结快照。一个文件变化日志检查模块恢复一个文件变化日志(FCL)中的表项。一个命名空间转换模块将对应于一个文件变化日志中的表项的节点标识转换为路径名标识。一个过滤模块过滤无用操作。一个德尔塔文件数据恢复模块在会话之间恢复文件数据中的变化。一个德尔塔操作模块转发该路径名标识和文件数据中的变化。
在一个实施方案中,命名空间转换模块包括一个节点标识接收模块,该模块确定是否接收一个节点标识;一个路径名对象转换变化节点模块,该模块执行路径名对象转换处理的变化节点;一个路径名对象转换未变化节点模块,该模块执行路径名对象转换处理的未变化节点;以及一个对象标识插入模块,该模块用于在一个路径名中插入一个对象名。该路径名对象转换变化节点模块可以获取与涉及相应命名空间变化的一个节点相关联的一个对象名。该路径名对象转换未变化节点模块可以获取与不涉及相应命名空间变化的一个节点相关联的一个对象名。该节点标识可以包括一个唯一索引节点号。该路径名对象转换处理的变化节点和路径名对象转换处理的未变化节点可以使用返回所述对象标识的数据结构。该路径名对象转换处理的变化节点可以递归地处理父节点标识符并且路径名对象转换未变化节点模块可以递归地处理父节点标识符。在一个实施方案中,一个信息存储复制系统包括一个源存储组件,该组件存储信息;一个源存储管理器,该管理器管理该源储存组件中的信息的存储,包括管理源内部节点标识符到路径名标识符的转换;以及一个目标存储组件,该组件用于存储该信息的一个副本。该源存储管理器可以使用返回对象标识和父节点标识的数据结构。该数据结构可以包括一个哈希表,该哈希表将与一个命名空间变化相关联的一个节点标识映射到一个父节点标识和一个对象名;以及一个前缀树,该前缀树映射前一个会话中的未变化节点的一个最长路径。


附图结合在本说明书中并构成它的一部分,所包含的附图用于本实施方案原理的示例性解释并无意将本发明限制于本文所示的具体实施方式
。附图不是成比例的,除非另有具体说明。图I是根据一个实施方案的一个示例性系统的方框图。图2是根据一个实施方案的路径名元素关系的示例性方框图。图3是根据一个实施方案的一个路径名元素层级关系的另一个示例性方框图。图4是根据一个实施方案的具有不同对象标识符的一个示例性路径名元素层级关系的方框图表示。图5是根据一个实施方案的当在多个时间之间出现操作时在一个源存储系统中的示例性变化的方框图表示。图6是根据一个实施方案在变化之后的一个示例性路径名元素层级关系的方框图表示。图7是根据一个实施方案的一个示例性文件命名空间对象索引节点层级的方框图表示。图8是根据一个实施方案的在操作变化后的一个示例性文件命名空间对象索引节点层级的方框图表示。图9是根据一个实施方案的利用节点标识符作为索引键值并返回对象名称和父节点标识符的一个示例性哈希表的方框图表示。图10是利用索引节点号作为索引键值并返回对象名称和父索引节点号的一个示例性哈希表的方框图表示。图11是根据一个实施方案的一个示例性前缀树的方框图表示,该前缀树用于跟踪前一个会话末端上的最长路径。 图12是根据一个实施方案的一个示例性复制方法的流程图。
图13是根据一个实施方案的一个示例性命名空间转换处理的流程图。图14是根据一个实施方案的路径名对象转换处理的示例性变化节点的流程图。图15是根据一个实施方案的路径名对象转换处理的示例性未变化节点的流程图。图16是根据一个实施方案的示例性命名空间转换处理的流程图。图17展示了根据一个实施方案的在一个复制系统环境中的定期复制操作。图18是根据一个实施方案的示例性复制模式的方框图。
图19是根据一个实施方案的示例性命名空间转换模块的方框图。图20是根据一个实施方案的路径名对象转换模块的示例性变化节点的方框图。图21是根据一个实施方案的路径名对象转换模块的示例性未变化节点的方框图。图22展示了根据一个实施方案的示例性计算机系统。
具体实施例方式现在详细参考优选实施方案,该实施方案的实例在附图中示出。尽管结合优选实施方案描述本发明,但应当理解它们不用于将本发明限制于这些实施方案。相反,本发明意在涵盖多种替代形式、修改形式以及等同形式,它们包括在说明的精神和范围内。而且,在以下详细描述中,给出很多具体细节以提供透彻的理解。然而,对本领域熟练技术人员显而易见的是,可以在没有这些具体细节的情况下实施本发明。在其他实例中,并未详细描述众所周知的方法、过程、组件以及电路,它们可能会混淆本发明的多个方面。本复制系统和方法有助于在各种系统配置中进行高效的和有效的信息保护。复制系统和方法有助于使用内部节点标识符来进行内部命名空间管理,内部节点标识符以路径名向对象标识符进行高效的转换,以用于指向外部存储资源的复制操作。在一个实施方案中,一个复制系统管理源存储组件映像中的信息存储以及目标存储组件映像中的信息复制。这种管理包括管理源内部节点标识符向路径名标识符的转换。在一个实施方案中,源存储管理器使用返回对象标识和父节点标识的数据结构。对于节点,这种数据结构可以用于对象名称转换或“逆”名称查找生成。在一个示例性实施方案中,数据结构包括哈希表和前缀树。哈希表将与命名空间变化相关的一个节点标识映射到一个父节点标识和一个对象名称。前缀树映射前一个会话中未变化节点的最长路径。应当理解,本系统和方法可以采用不同的架构和配置来实施。例如,本系统和方法可以实施为分布式计算环境、云计算环境、客户端服务器环境等的一部分。应当理解,本复制系统和方法有助于增量的文件级别复制。该复制系统和方法与大文件系统的部分文件系统复制相兼容。部分文件系统复制可以转为在每个复制操作过程中更新辅助的或目标存储源的一部分。例如,在会话期间变化的主要的或源存储资源映像的一部分在复制操作过程总进行更新。复制可以建立在由基础文件系统(例如,VxFS中的FCL)提供的文件变化日志服务的基础上。日志服务可以跟踪一个内部文件标识符或节点标识符,同时文件系统复制可以使用绝对路径唯一地识别源和复制目标之间的一个文件。一个给定节点的上代目录可以在命名空间操作(例如,移动、重命名、新建等等)期间发生变化,导致复制文件系统中的相应路径不同,直到执行了命名空间转换。在一个实施方案中,复制系统包括存储资源。应当理解的是本系统和方法可以采用不同的存储配置来实施。例如,存储资源可以被配置为源存储资源和目标存储资源,主存 储资源和辅助存储资源等。图I是根据一个实施方案的示例性系统100的方框图。系统100包括通信地连接至源存储系统120的操作组件110,该源存储系统通信地连接至目标存储系统130。操作组件110包括处理组件111以及可选的存储组件112。源存储系统120包括文件系统管理组件121以及源存储组件123。文件系统管理组件121包括命名空间转换组件122。应当理解,示例性系统100可以具有不同的配置。例如,操作组件110和源存储系统120可以是本地系统或设施的一部分并且目标存储系统130可以是远程系统或设施的一部分。应当理解,处理组件111可以从源存储组件123接收信息(例如,指令、数据等)。在一个示例性实施方式中,操作组件110是本地系统或设置的一部分,而源存储系统120和目标存储系统130是远程系统或设施的一部分。应当理解,可以存在各种操作组件和源存储组件配置。信息可以在多个操作组件(未示出)和源存储系统120之间进行通信。信息还可以在多个存储系统以及一个操作组件之间进行通信。还应当理解,可以存在各种源存储系统和目标存储系统配置。一个源存储系统可以与多个目标存储系统进行通信并且多个目标存储系统可以与一个源存储系统进行通信。系统100的这些组件相协调地操作用于利用源存储器和高效的并且有效的复制目标存储器来帮助各种操作(例如,应用操作等等)。操作组件110可以执行各种操作。例如,存储器112存储由处理器111执行的各种应用操作指令。源存储系统120存储与操作组件110执行的操作相关的信息(例如,位于源储存组件123中)。文件系统管理组件121管理从操作组件110接受的信息的存储以及信息向目标存储系统130的转发。文件系统管理组件121包括命名空间转换组件122,该组件执行与向目标存储系统130转发信息相关的命名空间转换。目标存储系统130存储在源存储组件123上存储的信息映像的副本。存储源中的信息可以采用存储层级的形式组织,该存储层级使用各种名称来跟踪信息存储的安排。例如,路径名名称命名空间、节点名称空间、组合命名空间等。应当理解,路径名命名空间标识符可以包括用斜杠相连接的路径名元素。路径名元素可以对应于对象并且可以包括目录名称、文件名名称等。例如,路径名名称或标识符可以通过表达式目录A/目录B/文件名I、dA/dB/dC/fl等来标识路径名。每个前续路径名元素表示包含下一个对象的对象。图2是根据一个实施方案的路径名元素关系200的示例性方框图。目录alpha201包括目录bravo 202和目录golf 207。目录bravo 202包括目录charlie 203和目录foxtrot 206。目录charlie包括目录delta 204和文件echo205。目录golf 207包括目录hotel 208和目录ultra 209。目录hotel包括目录juliet 210和文件kilo 211。目录juliet包括文件lima 213、romeo 214、sierra 215和tango 216。应当认识到,这些文件可以包含信息。例如,这些文件可包括各种类型的信息(例如,数据、指令等)。在一个示例性实施方式中,文件可以包括与各种应用(例如,文字编程应用、记账应用、互联网应用、视频应用等)相关联的数据(例如,文字编程文件、视频信息等)和/或程序指令(例如,软件程序指令、可执行文件、二进制文件等)。 图3是根据一个实施方案的一个路径名元素层级关系300的另一个示例性方框图 表示。在一个实施方案中,路径名元素层级关系300对应于路径名元素关系200。路径名元素层级关系300包括目录alpha 201、目录bravo202、目录charlie 203、目录foxtrot206、目录delta 204、文件echo 205、目录golf 207、目录hotel 208、目录ultra 209、目录juliet 210、以及文件 kilo 21 Klima 213、romeo 214>sierra 215 和 tango 216。在较低层级上示出的并且连接至较高层级上一个对象的对象包括在较高层级对象中。例如,文件delta 204和echo 205包括在目录charlie 203中,目录charlie 203包括在目录bravo202中。较低层级文件Iime 213不包含在较高目录charlie203中,因为文件Iima 213未连接至 charlie 203。应当认识到,可以利用各种对象标识符来命名路径名元素。图4是根据一个实施方案的具有不同对象标识符的路径名元素层级关系400的示例性方框图表示。路径名元素层级关系400包括目录a 401、目录b 402、目录c 403、目录f 406、目录d 404、文件e 405、目录g 407、目录h 408、目录u 409、目录j 410、文件k 411、文件I 413、文件r 414、文件s 415以及文件t 416。在较低层级上示出的并且连接至较高层级的一个对象的对象包括在较高层级对象中。再次参考图1,应当认识到,当操作组件110执行操作时,在源存储系统120中的文件数据和命名空间信息同时出现变化。当操作进行时,源存储系统映像的变化就随时间出现。然而,源存储系统映像对相关的目标存储系统映像的复制更新在指定的会话时间持续时间上出现。在Iv实施方案中,源存储系统映像和相关目标存储系统映像在会话的初始阶段上匹配,并且目标存储系统映像保留相同的内容,而源存储系统映像在会话过程中发生变化。在一个会话或“检查点”(例如,预定的持续时间,出现一个事件,在特定数量的变化出现之后)结束时,源存储系统映像被冻结或锁定,在相关的目标存储系统映像上复制映像变化并且更新相关的目标存储系统映像。图5是根据一个实施方案的在时刻t0和时刻tl之间出现操作时一个源存储系统中的示例性变化的方框图表示。在时刻t0,有一个冻结的映像511。第一个操作会话开始并且操作501初始化操作系统。源系统映像511包括一个会话开始文件层级。目标系统映像521在时刻t0匹配源系统映像511的会话开始文件层级。在一个实施方案中,源系统映像511和目标系统映像521对应于路径名元素层级关系400(例如,源存储系统映像511和目标存储系统映像521包括路径a/b/c/e、a/g/h/j/l等)。操作502在时刻tl在目录对象j和文件I以及r之间创建一个新的目录对象X并且源存储系统映像512包括路径名a/b/c/e和a/g/h/j/x/1并记录该变化。在时刻t2,操作503将文件e从a/b/c/e移动到a/g/h/j/x/e,而存储系统映像513移除路径名a/b/c/e并且包括路径名a/g/h/j/x/e,同时记录该变化。在时刻t4,操作504将对象a重新命名为a’ ;1重新命名为I’,h重新命名为h’,并且源存储系统映像514包括路径名a,/g/h,/j/x/e以及a,/g/h,/j/x/1,。在时刻t5,会话结束并且源存储系统映像514被冻结或锁定,同时在相关的目标存储系统映像523上复制映像变化。例如,更新目标存储系统映像522以复制a’/g/h’/j/χ/Ι’以及a’/g/h’/j/x/eο应当认识到,在会话过程中存在很多操作并且会话的长度可以改变。还应当认识至|J,可以延长或缩短会话的长度。在一个实施方案中,将图5中的会话长度分为多个会话。例如,在时刻t3第一会话可以结束并且源存储系统映像513被冻结或锁定,同时在相关的目标存储系统映像上复制映像变化。例如,可以更新相关的目标存储系统映像以便在时刻t3 复制 a/g/h/j/χ/Ι 以及 a/g/h/j/x/e。 在一个实施方案中,操作继续进行并且在冻结一个源存储系统映像时跟踪插入的信息。当源存储系统映像锁定时,更新该源存储系统以便与所跟踪的插入信息相一致。为了使描述不涉及过多细节,图5中所示的会话文件层级路径的一部分包括路径名 a/b/c/e 和 a/g/h/j/Ι。应当认识到,其他路径名(例如,a/b/c/d、a/g/h/j/r、a/g/h/j/t、a/g/u等)可以包括在源系统映像和目标系统映像中。应当认识到,可以包括附加的操作(未示出)(例如,在j下并且在s和I上创建新的对象I ;将对象r重命名为r等)并且在源系统映像(a/g/h/j/y/t和a/g/h/j/x/r’)和目标系统映像中可以包括相应的路径名变化。图6是根据一个实施方案的变化之后的路径名元素层级关系600的示例性方框图表示。路径名元素层级关系600包括目录a’ 601、目录b 402、目录c 403、目录f 406、目录d 404、目录 g 407、目录 h’ 608、目录 u 409、file k 411、目录 j 410、目录 x 621、文件 e 605、文件I’613、文件r’614、目录y 422、文件s 415以及文件t 416。在较低层级上示出的并且连接至较高层级上的一个对象的多个对象包括在较高层级对象中。文件系统架构可以利用节点标识来跟踪与文件系统名称命名空间相关的信息。例如,文件系统架构可以利用对应于文件系统名称中每个对象(例如,目录、文件等)的唯一节点标识符。在一个实施方案中,内部节点标识符(索引节点)与每个对象相关联。在一个示例性实施方式中,节点标识符是索引节点号并且当创建每个对象时一个唯一顺序的索引节点号与该节点相关联或分配给该节点。图7是根据一个实施方案的一个文件命名空间对象节点层级700的示例性方框图表示。文件命名对象节点层级700包括索引节点I、索引节点2、索引节点3、索引节点4、索引节点5、索引节点6、索引节点7、索引节点8、索引节点9、索引节点10、索引节点11、索引节点12、索引节点13、索引节点14、索引节点15以及索引节点16。在一个是实施方案中,文件命名空间对象索引节点层级700对应于路径名元素层级关系400的示例性方框图标识。当在会话过程中操作开始,就出现与节点相关联的变化。例如,节点之间的关系可以改变(例如,一个节点可以移动,对应于对象的节点可以变化,可以创建节点,可以移除节点等)。图8是根据一个实施方案的操作变化之后的一个文件命名空间对象索引节点层级800的示例性方框图表示。文件命名空间对象索引节点层级800包括索引节点I、索引节点2、索引节点3、索引节点4、索引节点5、索引节点6、索引节点7、索引节点8、索引节点9、索引节点10、索引节点11、索引节点12、索引节点13、索引节点14、索引节点15、索引节点16、索引节点21以及索引节点22。在一个实施方案中,文件命名空间对象索引节点层级800对应于一个路径名元素层级关系600的示例性方框图表示。在一个实施方案中,跟踪与源存储系统映像中的变化相关联的节点,包括与命名空间变化相关联的节点。在一个示例性实施方式中,维护每个会话的文件变化日志(FCL)并且FCL包括与命名空间变化相关联的节点标识符。FCL可以包括在一个数据结构中。例如,该数据结构可以是对应于如下表不方式的一张表
会话中断
操作502索引节点21
操作503索引节点5
会话中断
操504索引节点I
操作504索引节点8
操作504索引节点13在每个会话中断时,在源存储系统映像中出现的变化(包括命名空间变化)在目标存储系统映像中进行复制。然而,内部使用的用于跟踪源存储系统映像中命名空间变化的节点标识并不用于指示目标存储系统映像的命名空间变化。在一个实施方案中,源存储系统映像中的内部节点标识与目标存储系统映像中的内部节点标识不兼容。命名空间转换用于重新形成路径名标识。在一个实施方案中,命名空间变更跟踪数据结构用于跟踪命名空间改变(例如对象移动、对象重命名、对象创建等)。在一个实例性实施方式中,命名空间变更跟踪数据结构利用节点标识符作为索引键值,该索引键值映射到一个对象标识符以及一个父节点标识符。应当认识到,命名空间变更跟踪数据结构可以利用一个节点标识符和一个生成记数作为索引键值。应当认识到,可以利用各种命名空间变更跟踪数据结构。例如,可以利用对应于哈希表的数据。图9是根据一个实施方案的哈希表900的示例性方框图表示,该哈希表利用节点标识符作为键值。哈希表900包括用于节点I的单元格901、用于父节点i Cpnode1)的单元格911、用于对象I名称的单元格921、用于节点2的单元格902、用于pnode2的单元格912、用于对象2名称的单元格922、用于节点3的单元格903、用于Pnode3的单元格913以及用于对象3名称的单元格923。在一个示例性实施方式中,节点2用作键值索引用于哈希表900中的查找操作,该操作返回pnode2和对象2名称。
图10是哈希表1000的示例性方框图表示,该哈希表利用索引节点号作为索引键值并返回对象名称和父节点号。哈希表1000包括在图5和6所示的操作会话中出现的变化。哈希表1000包括填充索引节点号I的单元格1001、填充索引节点号null的单元格1011、填充对象名a’的单元格1021 ;填充索引节点号5的单元格1002、填充索引节点号21的单元格1012、以及填充对象名e的单元格1022 ;填充索引节点号8的单元格1003、填充索引节点号7的单元格1013、填充对象名h’的单元格1023 ;填充索引节点号13的单元格1004、填充索引节点号21的单元格1014、填充对象名I’的单元格1024 ;以及填充索引节点号21的单元格1005、填充索引节点号10的单元格1015、填充对象名x的单元格1025。索引节点号用作哈希表1000的查找操作的键值索引,该操作返回一个父节点的索引节点号和对象名称。在一个示例性实施方案中,索引节点号5用作哈希表1000的查找操作的键值索引,该操作返回索引节点号21和对象名e。在一个实施方案中,最长的路径跟踪数据结构用于在前一个会话结束时跟踪最长 的路径。在一个示例性实施方式中,跟踪移动的或重命名的对象的初始路径名(例如,在前一个检查点中的路径名)。应当认识到,可以利用各种命名空间变更跟踪数据结构。例如,线性搜索表、前缀树等。图11是根据一个实施方案的在前一个会话结束时用于跟踪最长路径的前缀树1100的示例性方框图表示。在一个实施方案中,前缀树1100包括索引节点I、索引节点2、索引节点3、索引节点4、索引节点5、索引节点6、索引节点7、索引节点8、索引节点9、索引节点10、索引节点11、索引节点12、索引节点13、索引节点14、索引节点15以及索引节点16。在一个示例性实施方式中,前缀树1100对应于文件命名空间对象索引节点层级700。应当认识到,前缀树1100可以通过文本字符串表示。例如,下表包括文本字符串,这些字符串可用于表示前缀树中的路径名链中的一些。
权利要求
1.一种命名空间转换处理,包括 接收与一个文件系统操作变化相关的节点信息; 对所述节点信息执行路径名对象转换处理的一个变化节点; 对所述节点信息执行路径名对象转换处理的一个未变化节点;以及基于路径名对象转换处理的所述变化节点和路径名对象转换处理的所述未变化节点的结果将一个对象标识符插入一个路径名中。
2.如权利要求I所述的文件复制方法,其中路径名对象转换处理的所述变化节点和路径名对象转换处理的所述未变化节点使用返回所述对象标识符的数据结构。
3.如权利要求I所述的文件复制方法,其中路径名对象转换处理的所述变化节点和路径名对象转换处理的所述未变化节点使用返回父节点标识符的数据结构。
4.如权利要求I所述的文件复制方法,其中路径名对象转换处理的所述变化节点使用一个命名空间变更跟踪数据结构,该结构将与一个命名空间变化相关联的一个节点标识符映射到一个父节点标识符和一个对象名。
5.如权利要求4所述的文件复制方法,其中所述命名空间变更跟踪数据结构包括一个哈希表。
6.如权利要求I所述的文件复制方法,其中路径名对象转换处理的所述变化节点使用一个最长路径跟踪数据结构。
7.如权利要求6所述的文件复制方法,其中所述最长路径跟踪数据结构是一个前缀树。
8.如权利要求I所述的文件复制方法,进一步包括将一个父对象节点标识符作为输入返回至路径名对象转换处理的所述变化节点。
9.如权利要求I所述的文件复制方法,进一步包括将一个父对象节点标识符作为输入返回至路径名对象转换处理的所述未变化节点。
10.一种产品,包括其上存储有指令的一种计算机可读介质,如果由计算机装置执行时,这些指令使得该计算装置执行存储映像复制,这些指令包括 一个映像冻结模块,该模块管理一个源文件系统在会话检查点的冻结快照; 一个文件变化日志检查模块,该模块恢复一个文件变化日志中的表项,其中所述表项对应于所述会话检查点之间的变化; 一个命名空间转换模块,该模块将对应于所述文件变化日志中的所述表项的节点标识转换为路径名标识; 一个过滤模块,该模块过滤无用操作; 一个德尔塔文件数据恢复模块,该模块在所述会话检查点之间恢复文件数据中的变化;以及 一个德尔塔操作模块,该模块转发所述路径名标识和所述文件数据中的变化。
11.如权利要求10所述的计算机可读介质,其中所述命名空间转换模块包括 一个节点标识接收模块,该模块确定是否接收一个节点标识; 一个路径名对象转换变化节点模块,该模块执行路径名对象转换处理的变化节点; 一个路径名对象转换未变化节点模块,该模块执行路径名对象转换处理的未变化节点;以及一个对象标识插入模块,该模块在一个路径名中插入一个对象名。
12.如权利要求11所述的计算机可读介质,其中所述路径名对象转换变化节点模块获取与涉及相应命名空间变化的一个节点相关联的一个对象名。
13.如权利要求11所述的计算机可读介质,其中所述路径名对象转换未变化节点模块获取与不涉及相应命名空间变化的一个节点相关联的一个对象名。
14.如权利要求11所述的计算机可读介质,其中,所述节点标识包括一个唯一索引节点号。
15.如权利要求10所述的计算机可读介质,其中路径名对象转换处理的所述变化节点和路径名对象转换处理的所述未变化节点使用返回所述对象标识的数据结构。
16.如权利要求10所述的计算机可读介质,其中路径名对象转换处理的所述变化节点递归地处理父节点标识符。
17.如权利要求10所述的计算机可读介质,其中路径名对象转换处理的所述未变化节点递归地处理父节点标识符。
18.一种信息存储复制系统,包括 一个源存储组件,该组件存储信息; 一个源存储管理器,该管理器管理所述源储存组件中的信息的存储,包括管理源内部节点标识符到路径名标识符的转换;以及 一个目标存储组件,该组件用于存储所述信息的一个副本。
19.如权利要求18所述的信息存储复制系统,其中所述源存储管理器使用返回对象标识和父节点标识的数据结构。
20.如权利要求19所述的信息存储复制系统,其中所述数据结构包括 一个哈希表,该哈希表将与一个命名空间变化相关联的一个节点标识映射到一个父节点标识和一个对象名;以及 一个前缀树,该前缀树映射前一个会话中的未变化节点的一个最长路径。
全文摘要
在此提出了用于信息存储复制的系统和方法。在一个实施方案中,执行一个命名空间转换处理。接收与一个文件系统操作变化相关的节点信息。执行路径名对象转换处理的一个变化节点。执行路径名对象转换处理的一个未变化节点。在一种示例性实施方式中,路径名对象转换处理的变化节点和路径名对象转换处理的未变化节点使用返回该对象标识符和父节点标识符的数据结构。在一个路径名中插入一个对象标识。
文档编号G06F17/30GK102713901SQ201080052112
公开日2012年10月3日 申请日期2010年9月30日 优先权日2009年10月2日
发明者F·王, M·阿戈沃, P·P·张, S·库马尔 申请人:赛门铁克公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1