镜像操作方法、镜像操作装置,以及计算机产品的制作方法

文档序号:6615446阅读:153来源:国知局
专利名称:镜像操作方法、镜像操作装置,以及计算机产品的制作方法
技术领域
本发明涉及镜像操作方法、镜像操作装置,以及计算机产品。
技术背景涉及对物理远程位点处的主位置中的数据进行复制的远程镜像操 作,被视为一种用于提供安全性以保护关键数据不受诸如火灾和地震的 灾难影响的技术。例如,在日本专利申请特开No. 2003-167683中公开了一种技术,其 中,除了元数据(metadata)以外,将本地位点处写入的数据中的用户数 据和日志记录的拷贝发送至远程位点。结果,随着利用日志记录的拷贝 更新远程位点处的元数据并且在本地位点处更新所述数据,可以实时地 在远程位点处在最新的文件数据中引用更新内容。在日本专利申请特开No, 2005-128861中公开的另一种技术中,指配 写入数据接收顺序的写入数据顺序指配单元被设置为冗余构造,以使即 使出于某些原因而没有接收到数据接收时间或涉及数据顺序的数据,目 的地数据存储装置也能够按正确顺序存储所述写入数据。通过存储原主文件的主数据存储装置和存储备份文件的次数据存储 装置来实现远程镜像操作。主数据存储装置和次数据存储装置通过诸如 广域网(WAN)的通信信道连接起来,并且任一装置都可以因它们实际 上充任单一存储装置而被接入。存在两种类型的远程镜像操作,即,同步和异步。在同步远程镜像 操作中,主数据存储装置响应于来自数据处理装置的写入请求将接收到 的数据写入至主文件中,并且经由通信信道将该数据同步地发送至保持 在次数据存储装置中的备份文件,而且向数据处理装置通知写入完成。 响应于来自数据处理装置的读取请求将存储在主文件中的指定数据发送 至数据处理装置。另一方面,在异步远程镜像操作中,主数据存储装置响应于来自数 据处理装置的写入请求将接收到的数据写入至主文件,但仅将文件管理 数据发送至次数据存储装置中的备份文件,而且向数据处理装置通知写 入完成。稍后,主数据存储装置将实际数据发送至次数据存储装置。响 应于来自数据处理装置的读取请求而将存储在主文件中的指定数据发送 至数据处理装置。次数据存储装置接收来自主数据存储装置的对打开要响应于来自数 据处理装置的写入响应而写入数据的文件的确认,将该数据发送至主数 据存储装置中的主文件,同步接收来自主数据存储装置的副本文件管理 数据。接着,次数据存储装置在其备份文件中复制该副本文件管理数据, 并向数据存储装置通知写入完成。稍后,如果从主数据存储装置接收到 实际数据,则次数据存储装置将它写入至备份文件。在异步远程镜像操 作中,如果在从主数据存储装置接收到实际数据之前从数据处理装置接 收到读取请求,则次数据存储装置向主数据存储装置发送针对该实际数 据的请求,将从主数据存储装置接收到的实际数据写入至备份文件,并 且发送来自备份文件的特定数据。然而,用于实现远程镜像操作而部署的多个数据存储装置中的每一 个在处理来自数据处理装置的请求时都具有不同的性能水平。换句话说, 每当数据处理装置针对一写入请求而访问次数据存储装置时,该次数据 存储装置就必须首先确认打开主数据存储装置中的主文件,致使针对次 数据存储装置的写入和读取性能效率很低。由此,数据处理装置经历主 数据存储装置与次数据存储装置之间的读取/写入速度上的不一致。发明内容本发明的目的是,至少部分解决常规技术中的上述问题。 根据本发明的一方面,提供一种数据存储装置,该数据存储装置连 接至另一数据存储装置并且存储有要响应于来自数据处理装置的请求进 行镜像操作的文件,所述数据存储装置包括存储单元,该存储单元中
存储有针对每一个所述文件的所有权数据,该所有权数据表示所述文件是镜像源还是镜像目的地;更新单元,该更新单元根据所述文件的所有 权的转移更新该文件的所述所有权数据;以及镜像操作单元,该镜像操 作单元响应于来自所述数据处理装置的针对所述文件的写入请求,通过参照所述所有权数据,基于所述文件是镜像源还是镜像目的地来控制对 该文件的镜像操作。提供了一种镜像操作方法,该镜像操作方法用于响应于来自数据处 理装置的请求而在以通信方式彼此连接并且存储有文件的数据存储装置 之间进行数据复制,该镜像操作方法包括以下步骤保存步骤,该保存步骤针对每一个所述文件保存表示该文件是镜像源还是镜像目的地的所有权数据;更新步骤,该更新步骤根据所述文件的所有权的转移更新该 文件的所述所有权数据;接收步骤,该接收步骤接收来自所述数据处理 装置的针对所述文件的写入请求;以及镜像操作步骤,该镜像操作步骤 响应于所述写入请求,通过参照所述所有权数据,基于所述文件是镜像 源还是镜像目的地来对该文件进行镜像操作。根据本发明的另一方面,提供一种计算机可读记录介质,该计算机可读记录介质存储有使计算机执行上述方法的计算机程序。当结合附图考虑时,通过阅读下面对本发明的当前优选实施方式的 详细说明,将更佳地理解本发明的上述和其它目的、特征、优点以及技 术和产业意义。


图1是用于说明根据本发明第一实施方式的数据存储装置的一般年寺 征和突出特征的示意图;图2是根据第一实施方式的数据存储装置的框图;图3是图2所示所有权管理表的内容的示例;图4是所有权状态改变处理的流程图;图5是所有权状态改变处理的另一流程图;图6是响应于来自数据处理装置的请求的处理的流程图7是数据存储装置执行的数据传输处理的流程图;图8是用于说明根据本发明第二实施方式的数据存储装置的示意图;图9是根据第二实施方式的所有权管理表的内容的示例;图10是用于说明根据本发明第三实施方式的数据存储装置的示意图;图11是用于说明根据本发明第四实施方式的数据存储装置的示意图;图12是用于说明根据本发明第五实施方式的数据存储装置的示意图;图13是根据第五实施方式的所有权管理表的内容的示例;图14是用于说明根据本发明第六实施方式的数据存储装置的示意图;图15是用于说明根据本发明第七实施方式的数据存储装置的示意图;图16是根据第七实施方式的所有权管理表的内容的示例;以及 图17是执行镜像操作程序的计算机的功能框图。
具体实施方式
下面,参照附图,对本发明的示范实施方式进行详细说明。 对在下面的说明中使用的特定术语说明如下。术语"所有权"指将 文件存储为镜像源的特权。在用于实现远程镜像操作而部署的多个数据 存储装置中,仅一个数据存储装置可以具有所有权("具有文件所有权" 是"将文件存储为镜像源"的另一说法)。术语"文件管理数据"指数据存储装置管理作为文件的数据所需的 信息。数据存储装置之间的文件管理数据的协调使得能够按相同状态提 供文件,而不管数据处理装置访问哪一个数据存储装置。文件管理数据 包括元数据、目录信息等。术语"数据处理装置"指使得用户能够利用 应用软件执行特定任务的装置。
术语"实际数据"指通过数据存储装置利用文件管理数据而管理的 数据,并且由数据处理装置生成。图1是用于说明根据本发明第一实施方式的数据存储装置10的一般 特征和突出特征的示意图。数据存储装置10经由诸如广域网(WAN)的网络以通信方式连接 至另一数据存储装置。如果这两个数据存储装置中的一个接收到来自数 据处理装置的写入请求,则在另一数据存储装置中复制(镜像)对应数 据。第一实施方式的突出特征在于,数据存储装置可以等同地向数据处 理装置提供较高性能,而不管数据处理装置访问了哪一个为实现远程镜 像操作而部署的数据存储装置。数据存储装置10中存储有多个文件,并且保持了针对每一个文件的 所有权数据,该所有权数据表示数据存储装置IO是针对所述文件的镜像 源还是镜像目的地。具体来说,如图l的(A)所示,在数据存储装置10存储的文件A 到E中,数据存储装置10具有针对文件A、 D以及F的所有权,并将文 件A、 D以及F处理为镜像源文件。与数据存储装置10相比,另一数据 存储装置20具有针对文件B、 C以及E的所有权,并将文件B、 C以及 E处理为镜像源文件。随着情势需要,数据存储装置IO将针对任何文件的所有权数据从镜 像源改变成镜像目的地,和从镜像目的地改变成镜像源。具体来说,如图1的(A)所示,将数据存储装置10和20部署用于 实现远程镜像操作。如果针对数据存储装置20拥有的文件B的读取请求 和写入请求的数量较大,则数据存储装置10请求数据存储装置20将针 对文件B的所有权转移至该数据存储装置10本身(参见图1 (A)中的 (l))。当接收到来自数据存储装置20的所有权转移许可时,数据存储装置 IO将文件B从镜像目的地文件改变成镜像源文件(参见图1的(B)中 的(2))。这时,如果从数据处理装置接收到针对文件的写入请求,则数据存
储装置IO根据请求写入的文件是镜像源文件还是镜像目的地文件,响应 于该写入请求参照针对该文件的所有权数据并且控制镜像操作处理。具体来说,如图1的(C)和(D)所示,当接收到针对文件(B) 的写入请求时(参见图1的(C)中的(3)),数据存储装置IO将从数据 处理装置接收到的数据写入至文件B,作为文件B的表示该文件是镜像 源文件的所有权数据,并将文件管理数据同步地发送至数据存储装置20 (参见图1的(D)中的(4))。接着,数据存储装置10向数据处理装置 通知写入完成(参见图1的(D)中的(5))。稍后,如图1的(E)所示,如果到发送实际数据的时间,则数据存 储装置10将文件B的实际数据异步地发送至数据存储装置20 (参见图1 的(E)中的(6))。如果数据处理装置频繁地访问文件B,则数据存储 装置10比先前更快地响应。此后,数据存储装置20根据访问文件的频 繁程度将文件B的所有权状态从镜像目的地改变成镜像源。图2是数据存储装置10的框图。数据存储装置10包括通信控制接 口 (I/F) 30、存储单元40,以及控制单元50。通信控制I/F 30对控制单 元50与数据存储装置20以及其它数据存储装置之间的通信进行控制。存储单元40中存储有控制单元50执行的各种处理所需的数据和程 序。此外,存储单元40中还存储有所有权管理表41。存储单元40中还 存储有由数据处理装置生成的作为镜像源或镜像目的地的文件。所有权管理表41中存储有针对每一个文件的表示该文件是镜像源 文件还是镜像目的地文件的所有权数据。图3是所有权管理表41的内容 的示例。所有权管理表41以关联形式包含诸如文件名和所有权状态标志 的项目。在图3中,文件名"A"和所有权状态标志"Off"关联("Off" 表示镜像目的地文件,而"On"表示镜像源文件)。控制单元50执行多种处理并且包括内部存储器,该内部存储器中存 储有诸如操作系统(OS)的控制程序、执行所述处理所需的各种程序和 数据。控制单元50包括所有权状态改变单元51、镜像操作处理器52、 镜像源处理器53,以及镜像目的地处理器54。所有权状态改变单元51针对每一个文件将存储在所有权管理表41 中的所有权状态标志从镜像源改变成镜像目的地,和从镜像目的地改变 成镜像源。具体来说,如果到响应于来自数据处理装置的针对一文件的 频繁读取请求和写入请求而改变数据存储装置20拥有的该文件的所有权状态标志的时间,则所有权状态改变单元51经由通信控制I/F 30获得来 自数据存储装置20的针对该文件的所有权转移许可,并将该文件的所有 权状态标志从镜像源改变成镜像目的地,或从镜像目的地改变成镜像源。 例如,如果在设置时段中访问镜像目的地文件的次数超出预定阈值,则 所有权状态改变单元51获得来自数据存储装置20的所有权转移许可, 并且将与文件名关联的所有权状态标志从"Off"改变成"On"。如果是针对文件的写入请求,则镜像操作处理器52参照存储在所有 权管理表41中的所有权状态标志,并且根据请求写入的文件是镜像源文 件还是镜像目的地文件而响应于该写入请求控制镜像操作处理。具体来说,当经由通信控制I/F 30接收到来自数据处理装置的针对 文件的写入请求时,镜像操作处理器52参照存储在所有权管理表41中 的所有权状态标志,并且根据请求写入的文件是镜像源文件还是镜像目 的地文件,来控制后面要说明的镜像源处理器53或镜像目的地处理器54 以执行镜像操作处理。例如,当经由通信控制I/F 30接收到来自数据处理装置的针对文件 名"A"的写入请求时,由于存储在所有权管理表41中的与文件名"A" 对应的所有权状态标志是"Off",因而,镜像操作处理器52控制镜像目 的地处理器54执行镜像操作处理。镜像源处理器53处理对镜像源文件的写入。具体来说,当接收到来 自镜像操作处理器52的控制信号时,镜像源处理器53经由通信控制I/F 30接收到来自数据处理装置的写入数据,并将该数据写入至文件。 一旦 将该数据写入至所述文件,镜像源处理器53就同步发送与对数据存储装 置20的数据写入有关的文件管理数据。当接收到来自数据存储装置20 的有关已经写入文件管理数据的确认时,镜像源处理器53向数据处理装 置通知写入完成。如果到发送实际数据的时间,则镜像源处理器53将实 际数据异步地发送至数据存储装置20。
镜像目的地处理器54处理对镜像目的地文件的写入。具体来说,当 接收到来自镜像操作处理器52的控制信号时,镜像目的地处理器54经 由通信控制I/F 30访问数据存储装置20,以确认有关文件被打开。 一旦 确认该文件被打开,镜像目的地处理器54就将从数据处理装置接收到的 数据经由通信控制I/F 30发送至数据存储装置20。当接收到通过数据存 储装置20同步地发送来的与数据写入有关的文件管理数据时,镜像目的 地处理器54将该文件管理数据写入至文件并且向数据处理装置通知写入 完成。稍后,镜像目的地处理器54经由通信控制I/F30接收到数据存储 装置20发送来的实际数据,并将该实际数据写入至文件。下面,参照图4到7,对根据第一实施方式的数据存储装置执行的 处理进行说明。图4和5是所有权状态改变处理的流程图。图6是响应 于来自数据处理装置的写入请求的处理的流程图。图7是数据存储装置 执行的数据传输处理的流程图。在所有权状态改变处理中,如图4所示,如果到响应于对文件的频 繁访问而改变所有权状态的时间(步骤S401处的是),则所有权状态改 变单元51请求数据存储装置20进行所有权转移(步骤S402)。当接收到 来自数据存储装置20的所有权转移许可时(步骤S403),所有权状态改 变处理51将针对该文件的所有权状态标志从"Off"改变成"On"(步骤 S404),并且结束处理。如图5所示,当接收到来自数据存储装置20的所有权转移请求时(步 骤S501处的是),所有权状态改变单元51将针对文件的所有权状态标志 从"On"转变成"Off"(步骤S502),并且向数据存储装置20授权所有 权转移许可(步骤S503)。由此,结束处理。在响应于来自数据处理装置的写入请求的处理中,如图6所示,当 经由通信控制I/F 30接收到来自数据处理装置的写入请求时(步骤S601 处的是),镜像操作处理器52参照存储在所有权管理表41中的所有权状 态标志(步骤S602)。如果写入请求是针对所有权状态为"On"的文件的(步骤S602处 的是),则镜像操作处理器52向镜像源处理器53输出控制信号,该镜像
源处理器53将从数据处理装置接收到的数据写入至有关文件(步骤S603)。镜像源处理器53同步地发送与对数据存储装置20的数据写入有 关的文件管理数据(步骤S604)。当接收到来自数据存储装置20的对已 经写入文件管理数据的确认时,镜像源处理器53向数据处理装置通知写 入完成(步骤S605)。如果到向数据存储装置20发送实际数据的时间(步骤S606处的是), 则镜像源处理器53将该实际数据发送至数据存储装置20 (步骤S607)。如果写入请求是针对所有权状态为"Off"的文件的(步骤S602处 的否),则镜像操作处理器52向镜像目的地处理器54输出控制信号。当 接收到该控制信号时,镜像目的地处理器54访问数据存储装置20,以检 查是否打开了有关文件(步骤S608)。如果打开了该文件(步骤S609处 的是),则镜像目的地处理器54将从数据处理装置接收到的数据发送至 数据存储装置20 (步骤S610)。在接收到从数据存储装置20转发来的文件管理数据(步骤S611处 的是)后,镜像目的地处理器54写入文件管理数据(步骤S612)并且向 数据处理装置通知写入完成(步骤S613),结束处理。在向数据存储装置20传输数据的处理中,如图7所示,当接收到来 自数据存储装置20的针对确认文件打开的请求时(步骤S701处的是), 如果文件被数据处理装置访问以读取或写入(步骤S702处的是),则镜 像源处理器53请求数据存储装置20待机(步骤S703),或者如果该文件 没有被数据处理装置访问以读取或写入(步骤S702处的否),则响应于 来自数据存储装置20的请求打开该文件。在接收到来自数据存储装置20 的数据后,镜像源处理器53写入该数据(步骤S705)。镜像源处理器53 将文件管理数据发送至数据存储装置20 (步骤S706)。如果到向数据存 储装置20发送实际数据的时间(步骤S707处的是),则镜像目的地处理 器54将该实际数据发送至数据存储装置20 (步骤S708),结束处理。因而,根据第一实施方式,数据存储装置针对每一个文件存储表示 该文件是镜像源还是镜像目的地的所有权状态标志,并且在需要时将该 所有权状态标志动态地从"On"改变成"Off"或从"Off"改变成"On"。如果从数据处理装置接收到针对一文件的写入请求,则数据存储装置基 于有关文件是镜像源文件还是镜像目的地文件而响应于该写入请求来控 制镜像操作处理。从而,数据处理装置能够经历等同快速的读取/写入性 能,而与数据处理装置访问用于实现远程镜像操作而部署的多个数据存 储装置中的哪一个无关。换句话说,通过动态地改变数据存储装置之间 的镜像源/镜像目的地关系,消除了多个数据存储装置之间的读取/写入速 度之间的不一致。由此,数据处理装置具有相对于任何数据存储装置等 同快速的读取/写入性能。根据第一实施方式,针对一文件的所有权状态标志根据数据处理装置访问该文件的频繁程度而在"On"与"Off"之间切换。从而,可以获得等同快速的读取/写入性能,而与数据处理装置访问用于实现远程镜像 操作而部署的多个数据存储装置中的哪一个无关。换句话说,根据数据 处理装置访问文件的频繁程度,数据存储装置之间的镜像源-镜像目的地 关系动态地改变。从而,可以获得等同快速的读取/写入性能,而与数据 处理装置访问用于实现远程镜像操作而部署的多个数据存储装置中的哪 一个无关。根据第一实施方式,如果在镜像目的地中对请求写入的文件进行镜 像操作,则将文件管理数据发送至镜像目的地数据存储装置,并同步地 将实际数据写入至镜像源数据存储装置,在将该实际数据写入至镜像源 数据存储装置之后,稍后将该实际数据异步地发送至镜像目的地数据存 储装置。从而,可以获得等同快速的读取/写入性能,而与数据处理装置 访问用于实现远程镜像操作而部署的多个数据存储装置中的哪一个无 关。换句话说,即使在传输实际数据最冲突的数据存储装置之间的通信 中存在延迟,通过异步地发送该实际数据,也可以获得等同快速的读取/ 写入性能,而与数据处理装置访问用于实现远程镜像操作而部署的多个 数据存储装置中的哪一个无关。在第一实施方式中,对存储在多个数据处理装置中的所有文件进行 镜像操作。在本发明的第二实施方式中,仅对存储在数据存储装置中的 一些文件进行镜像操作。 图8是用于说明根据第二实施方式的数据存储装置的示意图。如图8的(A)所示,在数据存储装置10存储的文件A到E之中, 数据存储装置10具有针对文件A、 B、 D以及F的所有权,并将文件A、 B、 D以及F处理为镜像源文件。在这些文件中,数据存储装置10将文 件B设置为仅向数据存储装置20发送文件管理数据而不发送实际数据的 文件。与数据存储装置10形成对比,数据存储装置20具有针对文件C、 和E的所有权,并将文件C和E处理为镜像源文件。具体来说,数据存储装置10通过进一步在所有权管理表41中存储 和每一个文件关联的镜像状态数据,实现如上所述的这种文件管理状态。 图9是根据第二实施方式的所有权管理表的内容的示例。如图9所示, 第二实施方式的所有权管理表除了包含采用关联形式的文件名和所有权 状态标志以外,还包含采用关联形式的项目镜像操作必需标志。例如, 在所有权管理表中,将文件名"B"、所有权状态标志"On"以及镜像操 作必需标志"On"彼此关联。当接收到来自数据处理装置的针对文件B的写入请求时(参见图8 的(A)中的(l)),根据所有权数据,由于文件B是镜像源文件,因而, 数据存储装置10将从数据处理装置接收到的数据写入至文件B。由于在所有权管理表中设置了针对文件B仅向数据存储装置20发送 文件管理数据而不发送实际数据,因而,数据存储装置10仅向数据存储 装置20发送文件管理数据,并同步地将数据写入至数据存储装置10中 的文件B (参照图8的(B)中的(2))。此后,数据存储装置10向数据 处理装置通知写入完成(参照图8的(B)中的(3)),并且结束响应于 写入请求的处理。即,数据存储装置10从未将实际数据发送至数据存储 装置20。具体来说,当对镜像目的地中的请求写入的文件进行镜像操作时, 数据存储装置10的镜像源处理器53通过参照镜像状态数据并且仅向镜 像目的地数据存储装置发送文件管理数据或者发送文件管理数据稍后跟 着发送实际数据,来实现响应于写入请求的处理。为了参照图6所示流 程图进行说明,在步骤S603将从数据处理装置接收到的数据写入至文件
之后,镜像源处理器53参照如图9所示的所有权管理表,并且根据镜像操作必需标志,仅向镜像目的地数据存储装置发送文件管理数据或者发 送文件管理数据稍后跟着发送实际数据。当接收到来自数据处理装置的针对文件A的写入请求时(参见图8 的(C)中的(4)),根据所有权数据,由于文件A是镜像源文件,因而, 数据存储装置10将从数据处理装置接收到的数据写入至文件A。和将数据写入至文件A相同步,数据存储装置10将文件管理数据发 送至数据存储装置20 (参见图8的(D)中的(5)),并且向数据处理装 置通知写入完成(参照图8的(D)中的(6))。此后,如果到向数据存储装置20发送实际数据的时间,则数据存储 装置10将文件A的实际数据发送至数据存储装置20 (参见图8的(E) 中的(7))。因而,根据第二实施方式,针对每一个文件,数据存储单元中额外 存储有表示是仅向镜像目的地发送文件管理数据还是发送文件管理数据 和实际数据的镜像操作必需标志。在镜像操作处理期间,数据存储单元 参照镜像操作必需标志,并由此仅向镜像目的地数据存储装置发送文件 管理数据或者发送文件管理数据和实际数据。从而,可以获得等同快速 的读取/写入性能,而与数据处理装置访问用于实现远程镜像操作而部署 的多个数据存储装置中的哪一个无关。换句话说,作为消除对不需要复 制的那些文件的镜像操作的结果,可以获得等同快速的读取/写入性能, 而与数据处理装置访问用于实现远程镜像操作而部署的多个数据存储装 置中的哪一个无关。在第一和第二实施方式中,在两个数据存储装置之间实现镜像操作。 可以部署用于实现镜像操作的三个或更多个数据存储装置。图10是根据本发明第三实施方式的数据存储装置的示意图。如图 10所示,数据存储装置10经由诸如WAN的网络以通信方式连接至数据 存储装置20a和20b 。当接收到来自数据处理装置的针对文件B的写入请求时,数据存储 装置10参照存储在所有权管理表41中的所有权状态标志,由于所有权
状态标志为"On",因而,将从数据处理装置接收到的数据写入至文件B。 此后,数据存储装置10将文件管理数据同步地发送至数据存储装置20a 和20b,并且若到发送实际数据的时间,则将实际数据发送至数据存储装 置20a和20b。因而,根据第三实施方式,与通过具有父级-子级关系的多个数据存 储装置获得的结构相比,可以通过仅相互连接多个数据存储装置而获得 的简单结构来实现镜像操作处理。在第三实施方式中,在多个数据存储装置之间同步地实现镜像操作。 在本发明的第四实施方式,通过在多个数据存储装置之间建立父级-子级 关系来实现镜像操作。图11是用于说明根据第四实施方式的数据存储装置的示意图。如图 11所示,充任子级数据存储装置2a的数据存储装置10经由诸如WAN 的网络以通信方式连接至充任父级数据存储装置3a的数据存储装置。当接收到来自数据处理装置的针对镜像源文件的写入请求时,子级 数据存储装置2a将从数据处理装置接收到的数据写入至有关文件。接着, 子级数据存储装置2a仅将文件管理数据同步地发送至父级数据存储装置 3a (参见箭头la)。父级数据存储装置3a将从子级数据存储装置2a接收到的文件管理 数据发送至其它父级数据存储装置3b和3c (参见箭头lbl和lb2)。父 级数据存储装置3b将该文件管理数据发送至子级数据存储装置2b(参见 箭头lc),而父级数据存储装置3c将该文件管理数据发送至子级数据存 储装置2c (参见箭头ldl)。稍后,如果到发送实际数据的时间,则子级数据存储装置2a仅将实 际数据发送至父级数据存储装置3a。还可以沿针对文件管理数据描述的 路线将实际数据从父级数据存储装置3a传递至多个数据存储装置。如果父级数据存储装置3a接收到来自数据处理装置的写入请求,则 父级数据存储装置3a将从数据处理装置接收到的数据写入至有关文件。 接着,父级数据存储装置3a将文件管理数据同步地发送至子级数据存储 装置2a和父级数据存储装置3b和3c。
父级数据存储装置3b将该文件管理数据发送至子级数据存储装置2b,而父级数据存储装置3c将该文件管理数据发送至子级数据存储装置 2c。稍后,如果到发送实际数据的时间,则父级数据存储装置3a沿针对 文件管理数据描述的路线将实际数据发送至多个数据存储装置。因而,根据第四实施方式,仅在如父级-子级的关系的装置之间或在 父级装置之间执行镜像操作。从而,与通过仅相互连接而没有建立父级-子级关系的多个数据存储装置所获得的结构相比,可以通过在按镜像操 作方式部署的数据存储装置之间建立父级-子级关系来减轻镜像操作处理 的负担。在第三实施方式中,对存储在多个数据存储装置中的所有文件进行 镜像操作。然而,在本发明第五实施方式中,仅对存储在数据存储装置 中的一些文件进行镜像操作。图12是用于说明根据第五实施方式的数据存储装置的示意图。如图 12的(A)所示,如果要复制一文件,则数据存储装置10将文件管理数 据以及实际数据发送至经由诸如WAN的网络以通信方式连接至数据存 储装置10的所有数据存储装置20a到20d。另选的是,如图12的(B)所示,如果要复制一文件,则数据存储 装置10将文件管理数据以及实际数据仅发送至数据存储装置20a,而仅 将文件管理数据发送至数据存储装置20b到20d。具体来说,根据第五实施方式的所有权管理表针对与文件名关联的 每一个文件,通过进一步存储冗余数据来实现上述选择性镜像操作。图 13是根据第五实施方式的所有权管理表的内容的示例。如图13所示,在 第五实施方式的所有权管理表中,需要冗余的文件名"A"与所有权状态 标志"Off"和针对8个数据存储装置ID的镜像操作处理标志"On"关 联。不需要冗余的文件名"C"与所有权状态标志"On"和仅针对8个 数据存储装置ID中的两个的镜像操作处理标志"On"关联。如果将请求写入的文件镜像至镜像目的地,则数据存储装置10的镜 像源处理器53参照冗余数据,并且仅在那些指定的镜像目的地数据存储
装置中镜像文件。为了参照图6的流程图进行说明,在步骤S603将从数 据处理装置接收到的数据写入至文件之后,镜像源处理器53参照所有权 管理表,并且基于镜像操作处理标志,确定是仅向特定数据存储装置发 送文件管理数据还是发送文件管理数据和实际数据。因而,根据第五实施方式,针对每一个文件,数据存储单元中额外 存储有冗余数据。在镜像操作处理期间,数据存储单元参照该冗余数据, 并由此仅在指定镜像目的地数据存储装置中镜像文件。从而,可以获得 等同快速的读取/写入性能,而与数据处理装置访问用于实现远程镜像操 作而部署的多个数据存储装置中的哪一个无关。换句话说,作为消除对 不需要复制的那些文件进行镜像操作的结果,可以获得等同快速的读取/ 写入性能,而与数据处理装置访问用于实现远程镜像操作而部署的多个 数据存储装置中的哪一个无关。而且,通过将需要镜像操作的文件复制 在几个数据存储装置中,可以确保在发生灾害的情况下保藏文件。在本发明的第六实施方式,数据存储装置基于访问文件的频度和空 间的可用性来评估是否需要实际数据,并且删除存储为镜像的不必要的 实际数据。图14是用于说明根据第六实施方式的数据存储装置的示意图。如图 14的(A)所示,数据存储装置IO经由诸如WAN的网络以通信方式连 接至数据存储装置20a到20d。如果存储单元40中的可用空间下降,则 数据存储装置10请求来自数据存储装置20a的许可,以利用文件删除管 理单元55来删除不再需要的镜像文件的实际数据(参见图14的(A)中 的(l))。另外,数据存储装置20a存储有作为镜像源文件的有关文件。如图14的(B)所示,当接收到来自数据存储装置20a的许可时, 数据存储装置10的文件删除管理单元55删除有关文件的实际数据(参 见图14的(B)中的(2))。因而,根据第六实施方式,数据存储装置根据数据存储装置10中的 空间的可用性来评估是否需要由它存储为镜像目的地文件的文件并且删 除不再需要的那些文件的实际数据。从而,可以更加可靠地镜像需要镜 像的文件。换句话说,通过删除不需要的数据并且生成用于存储需要镜 像的文件的更多空间,可以增加可靠存储经常査找的文件的概率。在本发明的第七实施方式中,如果在将实际数据传输至镜像目的地文件之前发生网络崩溃,同时数据处理装置访问镜像目的地文件以进行读取或写入,则数据存储装置忽略要发送的实际数据并且通过改变针对文件的所有权来进行响应。图15是用于说明根据第七实施方式的数据存储装置的示意图。如图15的(A)所示,当从数据存储装置20接收到要异步地写入至镜像目的 地文件B的实际数据时(参见图15的(A)中的(l)),数据存储装置 IO将实际数据写入至文件B。如图16所示,根据第七实施方式的数据存 储装置10的所有权管理表除了包含采用关联形式的文件名和所有权状态 标志以外,还包含采用关联形式的表示已经完成实际数据传输的项目实 际数据传输标志。如图15所示,如果在数据存储装置10将从数据存储装置20发送来 的实际数据写入至文件B时(参见图15的(B)中的(2))发生网络崩 溃(参见图15的(B)中的(4)),同时存在来自数据处理装置的针对文 件B的写入请求(参见图15的(B)中的(3)),则差错计数单元56参 照在在这种情况下为"On"的实际数据传输标志,并且将文件B从镜像 目的地文件改变成镜像源文件(参见图15的(C)中的(5)),忽略保持 要发送的实际数据,接收来自数据处理装置的写入请求,并将从数据处 理装置接收到的数据写入至文件B (参见图15的(6))。因而,根据第七实施方式,如果在完成镜像操作处理之前发生网络 崩溃,同时数据处理装置访问数据存储装置中的镜像目的地文件以进行 读取或写入,则数据存储装置将有关文件的所有权状态标志从"Off"改 变成"On",即,将文件从镜像目的地文件改变成镜像源文件,并且作为 镜像源来响应来自数据处理装置的读取/写入请求。从而,用户可以继续 经由数据处理装置访问文件,而不必等待网络连接恢复。本发明允许多种修改例。下面,给出这些修改例的示例。在第一实施例中,所有权状态根据访问文件的频繁程度来改变。然 而,可以将数据存储装置设置成使得可以动态地改变所有权状态。例如,
只要存在针对镜像目的地文件的读取/写入请求就动态地改变所有权状 态。另选的是,可以通过用户人工地改变所有权状态。在第一实施方式中,同步地发送文件管理数据而异步地发送实际数 据。然而,可以同步或异步地发送文件管理数据和实际数据。此外,文 件管理数据中包括的元数据和目录数据可以按一个同步而另一个异步的 方式来发送,或者按同一方式来发送。在第六实施方式中,数据存储装置在存储单元中的可用空间下降时 删除实际数据。然而,可以将数据存储装置设置成,基于对文件的需求 来删除该文件的实际数据。例如,可以将数据存储装置设置成,删除从 来自数据处理装置的读取/写入请求最少的文件开始的文件。在第七实施方式中,如果在完成文件的实际数据的传输之前发生网 络崩溃,同时存在针对正在传输其实际数据的文件的写入请求,则将数 据存储装置设置成,忽略未发送数据并且响应来自数据处理装置的写入 请求。然而,可以将数据存储装置设置成,拒绝任何写入请求直到网络 恢复为止,并且一旦网络恢复就重新开始传输实际数据。附图中所示装置的构成组件仅仅是概念性的,并且不需要如图所示 进行物理设置。可以基于各种类型的负荷或使用条件,在功能性上或者 物理上对构成组件整体或部分地分离或集成。例如,可以集成镜像操作处理器52、镜像源处理器53以及镜像目的地处理器54。每一个单元执 行的处理功能可以通过中央处理单元(CPU)或CPU执行的计算机程序 整体或部分地实现,或者通过布线逻辑实现为硬件。除非另外指定,否则本说明和附图中提到的处理过程、控制过程、 特定名称以及包括各种参数的数据都可以根据需要而改变。例如,文件 名不必一定用字母表示,而可以是将一个文件与另一个文件清楚地区分 开的任何内容。根据第一实施方式的数据存储装置被说明为硬件。然而,可以将其 实现为软件。换句话说,计算机程序(下文中,称为"镜像操作程序") 可以在用于实现和数据存储装置10相同的功能的个人计算机或工作站上 执行。图17是执行镜像操作程序的计算机60的功能框图。
充任数据存储装置10的计算机60包括通信控制接口 (I/F) 61、 CPU 62、只读存储器(ROM) 63、硬盘驱动器(HDD) 64、随机存取存储器 (RAM) 65,以及连接上述所有部件的总线66。ROM 63中存储有实现数据存储装置10的功能的镜像操作程序。换 句话说,如图17所示,ROM 63中存储有作为镜像操作程序的所有权状 态改变程序63a、镜像操作处理程序63b、镜像源处理程序63c,以及镜 像目的地处理程序63d。与图2所示的在需要时可以集成其构成组件的数 据存储装置10类似的是,在需要时可以集成计算机程序63a到63d。CPU 62从ROM 63读取计算机程序63a到63d,并且执行它们以实 现分别与图2所示所有权状态改变单元51、镜像操作处理器52、镜像源 处理器53以及镜像目的地处理器54对应的所有权状态改变处理62a、镜 像操作处理62b、镜像源处理62c,以及镜像目的地处理62d。HDD 64中存储有与图2所示的所有权管理表41对应的所有权管理 表64a。可以将计算机程序63a到63d存储在可以插入到计算机60中的便携 式物理介质中,所述便携式物理介质例如为软盘、光盘只读存储器 (CD-ROM)、磁光(MO)盘、数字通用盘(DVD)、集成电路(IC)卡 等。另选的是,可以将它们存储在可以外部连接至计算机60的诸如HDD 的固定物理介质中,或者存储在通过公共线路、因特网、局域网(LAN)、 广域网(WAN)等连接至计算机60的另一计算机(或服务器)上。计算 机60可以从这些介质读取所述计算机程序并且执行各种处理。尽管出于完整和清楚公开起见,参照具体实施方式
对本发明进行了 说明,但所附权利要求并不因而受限,而应被视为体现了完全落入在此 阐述的基本教导内的本领域技术人员可以想到的全部修改例和另选构 造。
权利要求
1、一种计算机可读记录介质,该计算机可读记录介质中存储有用于响应于来自数据处理装置的请求而在以通信方式彼此连接并且存储有文件的数据存储装置之间进行数据镜像操作的计算机程序,该计算机程序使计算机执行以下步骤保存步骤,该保存步骤针对每一个所述文件保存表示该文件是镜像源还是镜像目的地的所有权数据;更新步骤,该更新步骤根据所述文件的所有权的转移更新该文件的所述所有权数据;接收步骤,该接收步骤接收来自所述数据处理装置的对所述文件写入数据的请求;以及镜像操作步骤,该镜像操作步骤响应于所述请求,通过参照所述所有权数据,基于所述文件是镜像源还是镜像目的地来对该文件进行镜像操作。
2、 根据权利要求1所述的计算机可读记录介质,其中,所述更新步 骤包括以下步骤基于来自所述数据处理装置的写入请求频率和读取请 求频率、另一数据存储装置中的处理状态以及来自用户的指定中的至少 一个来转移所有权。
3、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据处理装置包括将所述文件存储为镜像源的第一数据存储装置,和将所述文件存储为镜像目的地的第二数据存储装置, 所述镜像操作步骤包括以下步骤所述第一数据存储装置将所述数据写入至所述文件,并同步 地将文件管理数据发送至所述第二数据存储装置;和所述第一数据存储装置在完成将所述数据写入至所述文件之 后异步地将所述数据发送至所述第二数据存储装置。
4、 根据权利要求l所述的计算机可读记录介质,其中, 所述数据存储装置包括将所述文件存储为镜像源的第一数据存储装 置,和将所述文件存储为镜像目的地的第二数据存储装置,所述保存步骤包括保存与各所述文件与所述所有权数据相关联的镜像状态数据的步骤,所述镜像状态数据表示是仅需要文件管理数据还是需要所述文件管理数据和所述数据,并且所述镜像操作步骤包括所述第一数据存储装置基于所述镜像状态数据仅将所述文件管理数据或将所述文件管理数据和所述数据发送至所述第二数据存储装置的步骤。
5、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据存储装置以不建立父级-子级关系的方式彼此连接,并且 所述数据镜像操作步骤在任一对所述数据存储装置之间执行。
6、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据存储装置处于父级-子级关系,并且所述数据镜像操作步骤仅在处于父级-子级关系的数据存储装置之 间执行或在父级数据存储装置之间执行。
7、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据存储装置包括将所述文件存储为镜像源的第一数据存储装置,和将所述文件存储为镜像目的地的多个第二数据存储装置,所述保存步骤包括保存与各所述文件与所述所有权数据相关联的冗余数据的步骤,所述冗余数据表示针对每一个所述第二数据存储装置是否需要进行数据镜像操作,并且所述镜像操作步骤包括所述第一数据存储装置仅针对由所述冗余数据指定的第二数据存储装置来对所述文件进行镜像操作的步骤。
8、 根据权利要求1所述的计算机可读记录介质,所述计算机程序还使计算机执行以下步骤确定步骤,该确定步骤基于来自所述数据处理装置的写入请求频率 和读取请求频率以及用于存储文件的空间的可用性中的至少一个来确定 存储为镜像目的地的文件是否必要,和删除步骤,该删除步骤在所述文件被判断为不必要时删除该文件的 实际数据。
9、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据存储装置包括将所述文件存储为镜像源的第一数据存储装置,和将所述文件存储为镜像目的地的第二数据存储装置,所述接收步骤包括所述第二数据存储装置在完成对所述文件的镜像操作之前接收来自所述数据处理装置的针对该文件的读取请求和写入请求中的任何一个的步骤,所述更新步骤包括当所述镜像操作步骤因在所述第一数据存储装置中发生的故障而中断时,所述第二数据存储装置将所述文件的所有权数据从镜像目的地更新为镜像源的步骤,并且所述镜像操作步骤包括所述第二数据存储装置在所述更新步骤之后基于所述所有权数据响应所述读取请求和所述写入请求中的任何一个的步骤。
10、 根据权利要求1所述的计算机可读记录介质,其中, 所述数据存储装置包括将所述文件存储为镜像源的第一数据存储装置,和将所述文件存储为镜像目的地的第二数据存储装置,所述接收步骤包括所述第二数据存储装置在完成对所述文件的镜像操作之前接收来自所述数据处理装置的针对该文件的读取请求和写入请求中的任何一个的步骤,所述镜像操作步骤包括当所述镜像操作步骤因在所述第一数据存储装置中发生的故障而中断时,所述第二数据存储装置在所述第一数据存储装置从故障恢复之后响应所述读取请求和所述写入请求中的任何一个的步骤。
11、 一种数据存储装置,该数据存储装置连接至另一数据存储装置 并且存储有要响应于来自数据处理装置的请求而进行镜像操作的文件,所述数据存储装置包括存储单元,该存储单元中存储有针对每一个所述文件的所有权数据,该所有权数据表示所述文件是镜像源还是镜像目的地;更新单元,该更新单元根据所述文件的所有权的转移更新该文件的所述所有权数据;以及镜像操作单元,该镜像操作单元响应于来自所述数据处理装置的针 对所述文件的写入请求,通过参照所述所有权数据,基于所述文件是镜 像源还是镜像目的地来对该文件进行镜像操作。
12、 一种镜像操作方法,该镜像操作方法用于响应于来自数据处理 装置的请求而在以通信方式彼此连接并且存储有文件的数据存储装置之 间进行数据复制,该镜像操作方法包括以下步骤保存步骤,该保存步骤针对每一个所述文件保存表示该文件是镜像 源还是镜像目的地的所有权数据;更新步骤,该更新步骤根据所述文件的所有权的转移更新该文件的 所述所有权数据;接收步骤,该接收步骤接收来自所述数据处理装置的针对所述文件 的写入请求;以及镜像操作步骤,该镜像操作步骤响应于所述写入请求,通过参照所 述所有权数据,基于所述文件是镜像源还是镜像目的地来对该文件进行 镜像操作。
全文摘要
本发明涉及镜像操作方法、镜像操作装置,以及计算机产品。数据存储装置存储有作为镜像源或镜像目的地的文件,并且具有针对存储为镜像源的文件的所有权。在从数据存储装置接收到多个针对存储为镜像目的地的文件的读取/写入请求后,所述数据存储装置获得针对该文件的所有权,并将所述文件的所有权状态从镜像目的地更新至镜像源。由此,可以改进针对所述文件的读取/写入请求的响应时间。此后,如果所述数据处理装置频繁地请求另一数据存储装置以访问所述文件,则将针对该文件的所有权转移至所述另一数据存储装置,由此,更新该文件的所有权状态。
文档编号G06F11/14GK101211290SQ20071030045
公开日2008年7月2日 申请日期2007年12月27日 优先权日2006年12月27日
发明者土屋直史 申请人:富士通株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1