CN104583966B - 用于去重复文件系统的备份和恢复系统以及对应的服务器和方法 - Google Patents

用于去重复文件系统的备份和恢复系统以及对应的服务器和方法 Download PDF

Info

Publication number
CN104583966B
CN104583966B CN201280075370.0A CN201280075370A CN104583966B CN 104583966 B CN104583966 B CN 104583966B CN 201280075370 A CN201280075370 A CN 201280075370A CN 104583966 B CN104583966 B CN 104583966B
Authority
CN
China
Prior art keywords
data
storage system
file
shared
duplicate removal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201280075370.0A
Other languages
English (en)
Other versions
CN104583966A (zh
Inventor
龟井仁志
深谷崇元
榎阪智则
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of CN104583966A publication Critical patent/CN104583966A/zh
Application granted granted Critical
Publication of CN104583966B publication Critical patent/CN104583966B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1461Backup scheduling policy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1453Management of the data involved in backup or backup restore using de-duplication of the data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/184Distributed file systems implemented as replicated file system
    • G06F16/1844Management specifically adapted to replicated file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

提供一种计算机系统,包括服务器和第一存储系统和第二存储系统。第一存储系统存储与其他数据共享数据的至少一部分的去重复数据、由多个去重复数据共享的共享数据、以及表示所存储的包括去重复数据和共享数据的数据的类型的第一类型数据。去重复数据通过指向共享数据的指针而与共享数据相关联,并且包括指示与共享数据的差异的差别数据。服务器从第一类型数据创建表示存储在第二存储系统中的数据的类型的第二类型数据。第二存储系统将与去重复数据相关联的共享数据存储在以按序读取的方式读取去重复数据的位置之前的读取位置处,并且存储所创建的第二类型数据。

Description

用于去重复文件系统的备份和恢复系统以及对应的服务器和 方法
技术领域
本发明涉及管理存储在存储装置中的数据的方法。
背景技术
近年来,存储在文件服务器中的数据量正快速增加。为了降低文件服务器的数据存储成本,能够降低存储在文件服务器中的文件数据的量的文件级去重复功能正在吸引着注意。
文件级去重复功能通过从存储在文件服务器的文件系统中的文件群组之中提取具有重复数据体的重复文件群组、并删除除一个数据体之外的数据体以用参考数据取代数据体来实现。通过由多个文件共享该一个数据体,可以删除存储在文件系统中的冗余数据体。因此可以降低存储在文件系统中的数据量。
同时,作为针对文件服务器故障或者灾难的对策,由已经向其应用文件级去重的文件系统管理的数据仍旧定期备份到磁带设备。例如,为了备份,可以使用网络数据管理协议。
例如,US 8,204,862B公开了用于恢复去重复数据的方法。该方法可以包括接收用于向客户端系统恢复去重复数据片段集合的请求,其中去重复数据片段集合中的每个数据片段由一个或者多个去重复参考来参考。方法还可以包括获得针对去重复数据片段集合中的每个数据片段指示指向数据片段的去重参考的数目的参考数据。方法还可以包括使用参考数据从去重复数据片段集合中选择一个或者多个片段用于客户端侧高速缓存、在客户端系统上的高速缓存中高速缓存一个或者多个数据片段、以及从客户端系统上的高速缓存恢复一个或者多个数据片段。还公开了各种其他方法、系统和计算机可读介质。
此外,US 8,200,926B公开了用于创建全备份的计算机实现的方法。该计算机实现方法可以包括在第一次时创建数据单元集合的第一全备份。计算机实现的方法还可以包括标识数据单元集合中的、自从第一次之后已经被修改的一个或者多个数据单元。计算机实现的方法可以进一步包括通过提供自从第一次之后已经被修改的一个或者多个数据的拷贝并且自从第一次之后未被修改的数据单元集合中存储对一个或者多个数据单元的参考来创建数据单元集合的第二全备份。参考可以被配置使得第二全备份是独立于任何其他备份的独立备份。
发明内容
技术问题
根据上文所描述的传统技术,当文件服务器的管理员使用网络数据管理协议在文件级上向磁带备份已经向其应用文件级去重复的文件系统时,去重复状态被释放并且备份数据取得去重复前的状态。
另一方面,当使用US8,204,862B描述的技术时,去重复文件系统的文件可以被备份和恢复到去重复状态。然而,US8,204,862B描述的技术并不考虑磁带设备的特性。因此,当US8,204,862B描述的技术被应用到使用磁带设备的备份和恢复时,磁带设备的寻找操作在恢复文件时频繁发生。磁带的寻找操作是指用于提示将要访问的文件的过程。磁带设备的寻找操作花费很长时间,这导致延长的恢复时间的问题。
上文所描述的传统技术并不考虑向磁带备份,并且因此不能解决这样的问题。
因此,本发明的一个目的是在已经向其应用文件级去重的文件系统中以去重状态向磁带设备备份文件,由此抑制在恢复中磁带设备的寻找操作。
问题的解决方案
在本主题申请所公开的发明的代表性示例中,磁带设备在去重复数据前存储与去重复数据相关联的共享数据。
这是一种计算机系统,包括用于向客户端计算机提供数据的服务器;用于存储将要向客户端计算机提供的数据的第一存储系统;以及用于备份在第一存储系统中存储的数据的第二存储系统。服务器包括用于执行程序的处理器和用于存储由处理器执行的程序的存储器。第一存储系统存储与其他数据共享至少一部分数据的去重复数据、由去重复数据的多个片共享的共享数据、以及表示包括去重复数据和共享数据的存储的数据的类型的第一类型数据。去重复数据通过指向共享数据的指针与共享数据相关联,并且包括指示与共享数据的差异的差别数据。服务器从第一类型数据创建表示在第二存储系统中存储的数据的类型的第二类型数据。第二存储系统将与去重复数据相关联的共享数据存储在以按序读取的方式读取去重复数据的位置之前的读取位置处,并且存储创建的第二类型数据。
本发明的有益效果
根据本发明的示例性实施例,可以减少备份时间和恢复时间。
附图说明
[图1]图1是图示根据本发明的第一实施例的文件共享系统的配置示例的图。
[图2A]图2A是图示根据本发明的第一实施例的客户端的配置示例的框图。
[图2B]图2B是图示根据本发明的第一实施例的备份服务器的配置示例的框图。
[图3A]图3A是图示根据本发明的第一实施例的管理终端的配置示例的框图。
[图3B]图3B是图示根据本发明的第一实施例的文件服务器的配置示例的框图。
[图4A]图4A是图示根据本发明的第一实施例的磁盘存储装置的配置示例的框图。
[图4B]图4B是图示根据本发明的第一实施例的磁带设备的配置示例的框图。
[图5]图5是图示根据本发明的第一实施例的在磁盘存储装置中存储的去重复文件群组的配置示例的图。
[图6]图6是图示根据本发明的第一实施例的在磁带设备的磁带中存储的数据结构的图。
[图7]图7是示意性图示根据本发明的第一实施例的在磁带中存储的备份数据的创建的图。
[图8]图8是图示根据本发明的第一实施例的提取的文件列表的配置的图。
[图9]图9是根据本发明的第一实施例的备份过程的流程图。
[图10]图10是根据本发明的第一实施例的恢复过程的流程图。
[图11]图11是图示根据本发明的第二实施例的文件服务器的配置示例的框图。
[图12]图12是图示根据本发明的第二实施例的存储的共享数据文件列表的配置的图。
[图13]图13是图示根据本发明的第二实施例的在磁带设备的磁带中存储的数据结构的图。
[图14]图14是根据本发明的第二实施例的备份过程的流程图。
[图15]图15是根据本发明的第二实施例的去重复文件备份过程的流程图。
具体实施方式
首先概述本发明的实施例。
在本发明的代表性的实施例中,已经在文件级上去重复的文件群组(去重复文件群组)通过参考存储共享数据体的文件(共享数据存储文件)来共享一个数据体。在实施例中,首先,将所有共享的数据存储文件从已经向其应用文件级去重复功能的文件系统备份到磁带设备。之后,去重复文件和普通文件被备份到磁带设备。这时,指向共享数据存储文件的参考数据被写入到去重复文件的头数据中。
在恢复中,共享数据存储文件被恢复,并继而去重复文件和普通文件被恢复。在恢复去重复文件的过程中,从去重复文件的头数据获取共享数据存储文件的路径,并且对共享数据存储文件的参考基于路径被设置到所恢复的去重复文件。
通过上述过程,文件可以以去重复状态被备份到磁带设备,由此抑制磁带设备在恢复中的寻找操作。
一种根据本发明的系统包括用于向终端用户提供文件共享服务的文件服务器、文件服务器在其中存储文件数据的磁盘存储装置、文件服务器在其中备份文件数据的磁带设备、用于向文件服务器发出备份指令的备份服务器、以及用于管理系统的管理终端。该系统被耦合到由终端用户使用的客户端。
当从备份服务器的备份服务器程序接收到备份请求时,文件服务器的备份系统从存储在磁盘存储装置中的文件系统卷读取文件数据。然后,备份程序向磁带设备发送读取的文件的数据。磁带设备向磁带写入接收的数据。这时,备份程序首先向磁带设备发送共享数据存储文件,用于将文件系统备份到磁带。在共享数据存储文件的备份完成后,备份程序向磁带设备发送去重复文件和普通文件的数据,用于向磁带备份。
另一方面,当从备份服务器的备份服务器程序接收到恢复请求时,文件服务器的备份程序从磁带设备的磁带读取数据,并且向存储在磁盘存储装置中的文件系统写入从磁带读取的文件。此时,在备份中首先备份的共享数据存储文件群组的文件被首先恢复,并继而去重复文件和普通文件被恢复。
接下来,借助于其中以文件为基础管理数据的文件系统来描述本发明的实施例。然而,本发明并不限于其中以文件为基础管理数据的文件系统,并且还可以被应用到其中按照单元(例如,块或扇区)来管理数据的系统。
以下实施例仅仅是示例,并且本发明不限于在说明书中公开的那些示例。
(第一实施例)
图1是图示根据本发明的第一实施例的文件共享系统的配置示例的图。
第一实施例的文件共享系统包括备份服务器1002、管理终端1003、第一服务器1004、磁盘存储装置1005和磁带设备1006,并且经由网络1007耦合到客户端1001。
客户端1001是由文件共享系统所提供给的终端用户使用的计算机,并且其配置和过程稍后描述(图2A)。备份服务器1002是用于向文件服务器1004发送备份请求和恢复请求的计算机,并且其配置和过程稍后描述(图2B)。
管理终端1003在该实施例中是用于管理文件共享系统的计算机,并且也管理备份时间和恢复时间。管理终端1003的配置和过程稍后描述(图3A)。文件服务器1004是用于向客户端1001提供文件共享服务的计算机,并且其配置和过程稍后描述(图3B)。
客户端1001、备份服务器1002、管理终端1003和文件服务器1004经由网络1007相互耦合。网络1007是例如局域网,并且可以由以太网(商标,以下同样适用)和无线通信线构成。在该实施例中,客户端1001、备份服务器1002、管理终端1003和文件服务器1004之间的耦合不限于作为示例描述的情形。
磁盘存储装置1005是用于存储由文件服务器1004管理的文件数据的存储系统,并且其配置和过程稍后描述(图4A)。磁带设备1006是用于向磁带写入由文件服务器1004管理的文件数据并从磁带读取由文件服务器1004管理的文件数据的设备,并且其配置和过程稍后描述(图4B)。
文件服务器1004、磁盘存储装置1005和磁带设备1006经由网络1008相互耦合。网络1008是例如使用光纤信道协议的存储区域网络。应当说明的是网络1008可以是使用另一协议(诸如iSCSI)的网络。网络1007和网络1008可以是不同网络或者一个网络。在该实施例中,文件服务器1004、磁盘存储装置1005和磁带设备1006之间的耦合不限于作为示例描述的那些。
进一步地,在该实施例中,文件服务器1004执行备份过程(图9、图14和图15)和恢复过程(图10),这将稍后描述,但是文件服务器1004之外的设备(例如,备份服务器1002)可以执行这些过程。
图2A是图示根据该实施例的客户端1001的配置示例的框图。
客户端1001包括处理器(CPU)2001、存储器2002和网络接口(I/F)2005,并且这些设备经由内部通信路径相互连接。
处理器2001执行在存储器2002中存储的应用程序2003和文件访问程序2004。
应用程序2003是由操作客户端1001的终端用户使用的程序,例如,电子数据表程序。文件访问程序2004是用于使用由文件服务器1004提供的文件共享服务的程序。
为了使用由文件服务器1004管理的文件,应用程序2003向文件访问程序2004作出访问请求。当接收到文件访问请求时,文件访问程序2004使用用于使用文件共享服务的协议(例如,通用互联网文件系统(CIFS)协议)经由网络I/F 2005向文件服务器1004的文件服务器程序3105发送文件访问请求。然后,文件访问程序2004从文件服务器1004的文件服务器程序3105接收文件访问的结果,并且向应用程序2003返回该结果。
图2B是图示根据该实施例的备份服务器1002的配置示例的框图。
备份服务器1002包括处理器(CPU)2101、存储器2102和网络I/F 2105,并且这些设备经由内部通信路径相互连接。
处理器2101执行在存储器2102中存储的备份服务器程序2103。
备份服务器程序2103是用于经由网络I/F 2105向文件服务器1004的备份程序3107发送备份请求和恢复请求的程序。备份服务器1002可以使用诸如网络数据管理协议(NDMP)之类的协议发送备份请求和恢复请求,但是传输请求的方法不限于作为示例描述的方法。
进一步地,备份服务器程序2103可以基于备份时间表2104定期创建备份。备份时间表2104存储备份获取间隔、备份获取日期/时间等。备份时间表2104由该实施例的文件共享系统的管理员通过使用编辑器和/或图形用户接口(GUI)设置。应当说明的是,设置备份时间表2104的方法不限于作为示例描述的方法。
图3A是图示根据该实施例的管理终端1003的配置示例的框图。
管理终端1003包括处理器(CPU)3001、存储器3002和网络I/F 3005,并且这些设备经由内部通信路径相互连接。
处理器3001执行管理在存储器3002中存储的I/F程序3003和管理程序3004。
管理I/F程序3003是用于向管理该实施例的文件共享系统的管理员提供管理屏幕的程序,并且向管理程序3004发送由管理员输入的配置数据。
管理程序3004是用于向文件服务器1004和备份服务器1002设置由管理员输入的配置数据的程序。例如,管理程序3004向备份服务器1002的备份时间表2104设置由管理员输入的备份间隔数据。配置数据可以通过使用诸如SSH文件传输协议(SFTP)之类的协议传输,但是传输配置数据的方法不限于作为示例描述的方法。
图3B是图示根据该实施例的文件服务器1004的配置示例的框图。
文件服务器1004包括处理器(CPU)3101、存储器3102、网络I/F 3108和存储装置I/F 3109,并且这些设备经由内部通信路径相互连接。
处理器3101执行在存储器3102中存储的文件服务器程序3105、文件系统程序3106和备份程序3107。
文件服务器程序3105是用于向客户端1001提供文件共享服务的程序。当从客户端1001的文件访问程序2004接收到文件访问请求时,文件服务器程序3105向文件系统程序3106作出文件访问请求。然后,文件服务器程序3105从文件系统程序3106接收文件访问结果,并且向客户端1001的文件访问程序2004返回接收的结果。文件服务器程序3105可以是例如NFS守护程序,但不限于作为示例描述的程序。
文件系统程序3106是用于访问在磁盘存储装置1005中存储的数据的程序。当经由网络I/F 3108从文件服务器程序3105接收到文件访问请求时,文件系统程序3106经由存储装置I/F 3109访问在磁盘存储装置1005的磁盘4005中存储的数据。然后,文件系统程序3106向文件服务器程序3105返回访问结果。
文件服务器1004在存储器3102中存储用于访问文件、文件数据3104和提取的文件列表3110的文件管理数据3103。
文件管理数据3103是包括关于文件的管理员的数据、在磁盘4005上存储的文件数据的块地址等的管理数据。文件管理数据3103由文件系统程序3106创建。应当注意,文件管理数据3103也被存储在磁盘存储装置1005的磁盘4005中。当重新引导时,文件服务器1004可以读取和使用在磁盘4005中存储的文件管理数据3103。
文件数据3104是通过读取在磁盘4005中存储的文件数据并且在存储器3102中写入读取的数据而得到的数据。文件数据3104由文件系统程序3106创建。应当注意,文件数据3104被存储在磁盘存储装置1005的磁盘4005中。当重新引导时,文件服务器1004可以读取并使用在磁盘4005中存储的文件数据3104。
备份程序3107是用于基于来自备份服务器1002的请求复制在磁盘4005中存储的文件群组的程序。
当经由网络I/F 3108从备份服务器1002的备份服务器程序2103接收到备份请求时,备份程序3107经由存储装置I/F3109从磁盘4005读取文件群组,并且在磁带设备1006的磁带4105中写入读取的数据。备份过程的细节稍后描述(图9)。
进一步地,当经由网络I/F 3108从备份服务器1002的备份服务器程序2103接收到恢复请求时,备份程序3107经由存储装置I/F3109从磁带设备1006的磁带4105读取数据,并且在磁盘4005中写入读取的数据。以这种方式,备份程序3107恢复文件。恢复过程的细节稍后描述(图10)。
提取的文件列表3110是由备份程序3107使用的数据。提取的文件列表3110包括稍后将要描述的共享数据存储文件5002的列表。当备份程序3107备份文件群组时,创建提取的文件列表3110。在该实施例中,如何使用提取的文件列表3110稍后描述。
在该实施例中,在向磁带设备1006备份已经向其应用文件级去重复的文件中,备份程序3107备份稍后将要描述的共享数据存储文件5002,并继而备份去重复文件5001A和去重复文件5001B。进一步地,备份程序3107将用于在恢复中使用的数据设置在备份到磁带设备1006的文件的头中。
进一步地,在向磁盘存储装置1005恢复文件的过程中,备份程序3107恢复共享数据存储文件5002并继而恢复去重复文件5001A和去重复文件5001B。在恢复去重复文件5001A和去重复文件5001B的过程中,备份程序3107设置对共享数据存储文件5002的参考数据5006。
以这种方式,通过在备份去重复文件5001A等之前首先向磁带设备1006备份共享数据存储文件5002,备份程序3107可以设置对共享数据存储文件5002的参考,该参考在恢复去重复数据5001A和去重复数据5001B的过程中需要。
此外,通过在恢复去重复文件5001A之前向磁盘存储装置1005恢复共享数据存储文件5002,备份程序3107可以向共享数据存储文件5002设置来自去重复文件5001A和去重复文件5001B的参考。
图4A是图示根据该实施例的磁盘存储装置1005的配置示例的框图。
磁盘存储装置1005包括处理器(CPU)4001、存储器4002、磁盘控制器4004和存储装置I/F 4006,并且这些设备经由内部通信路径相互连接。
磁盘控制器4004被连接到磁盘4005以控制磁盘4005。磁盘控制器4004具有廉价磁盘(RAID)功能,并且向多个磁盘4005提供冗余,由此改善磁盘存储装置1005的容错性。
处理器4001执行在存储器4002中存储的存储管理程序4003。存储管理程序4003是用于管理磁盘控制器4004的RAID功能的程序,并且配置用于冗余阵列,并且控制关于磁盘4005的数据输入和输出。
磁盘4005中的每个磁盘是磁盘驱动器或者固态驱动器,但是不限于作为示例描述的那些。
在该实施例中,磁盘存储装置1005可以是不具有冗余功能的存储装置设备,并且磁盘存储装置1005的配置不限于作为示例描述的配置。
图4B是图示根据该实施例的磁带设备1006的配置示例的框图。
磁带设备1006包括处理器(CPU)4101、存储器4102、磁带控制器4104和存储装置I/F 4106,并且这些设备经由内部通信路径相互连接。
磁带控制器4104控制关于附接到磁带设备1006的磁带4105的数据输入和输出和磁带4105的寻找操作。处理器4101执行在存储器4102中存储的磁带管理程序4103。磁带管理程序4103是用于向磁带头加载用于备份和恢复所必须的磁带4105的程序,
在该实施例中,用于备份文件数据的存储系统不限于作为示例描述的磁带设备1006,并且可以是诸如光盘设备之类的存储装置。
应当说明的是,在该实施例中,描述是以向磁带设备1006备份在磁盘存储装置1005中存储的数据和向磁盘存储装置1005恢复在磁带设备1006中备份的数据的过程给出。然而,本发明不限于上文提到的配置,并且磁盘存储装置1005可以是用于向文件服务器1004提供文件数据的具有高随机存取性能(短存取时间)的任何存储系统,并且只要磁带设备1006是用于备份在磁盘存储装置1005中存储的数据的具有高顺序读取性能的存储系统(适合用于以写入顺序访问存储的数据并且对于随机存取具有长寻找操作时间),就可以获得同样的效果。
图5是图示根据该实施例的在磁盘存储装置1005中存储的去重复文件群组的配置示例的图。
去重复文件群组包括去重复文件5001A、去重复文件5001B和共享数据存储文件5002。去重复文件5001A和去重复文件5001B以及共享数据存储文件5002中的每个文件包括上文所描述的文件管理数据3103、块指针5010和数据块5008B等。文件管理数据3103包括管理数据,诸如用户ID(UID)5003和群组ID(GID)5004和指针5006和标志5007,这些对于去重复是必需的。
如图5所示,指针5006由去重复文件5001使用以参考共享数据存储文件5002。指针5006可以是i节点数、文件路径等。应当说明的是指针5006可以是支持参考共享数据存储文件5002的任何数据,并且不限于作为示例描述的那些。
标志5007被用于区分去重复文件5001、共享数据存储文件5002和其他文件。例如,标志5007可以被定义使得第一位指示去重复文件且第二位指示共享数据存储文件。
块指针5010是指示文件数据在磁盘4005上的存储位置的数据。在去重复文件5001A和去重复文件5001B以及共享数据存储文件5002不包括实际数据的情况下,块指针5010不被置位(set)。
在图5中,块指针5010被设置到去重复文件5001A和去重复文件5001B中的每个去重复文件。在去重复过程后去重复文件5001A和去重复文件5001B被更新,并因此块指针5010指向由更新生成的差别数据。差别数据被存储在磁盘4005(5008A和5008C)中。在图5中,去重复文件5001A和去重复文件5001B存储不同的差别数据。
在图5中,当去重过程被执行时,两个去重复文件5001A和5001B具有相同的数据。因此,两个文件5001A和5001B参考相同的共享数据存储文件5002。另一方面,当另一文件具有与两个文件相同的数据时,该文件参考相同的共享数据存储文件5002。
去重复文件5001A和去重复文件5001B在去重复过程之前存储相同文件数据。在去重复过程时,共享数据存储文件5002被创建。去重复文件5001A或去重复文件5001B的文件数据被设置到共享数据存储文件5002。然后,去重复文件5001A和去重复文件5001B参考共享数据存储文件5002。当文件系统程序3106访问去重复文件5001A或去重复文件5001B时,文件系统程序3106参考包括在标志5007中的去重复数据文件标志,并且文件系统程序3106确定将要访问的文件是否是去重复文件。
图6是图示根据该实施例的在磁带设备1006的磁带4105中存储的数据的结构的图。
磁带数据6000从磁带头顺序存储在文件系统卷中存储的每个文件的数据。首先,共享数据存储文件5002从磁带数据6000的头被存储。在所有共享数据存储文件5002被存储在磁带4105中之后,去重复文件5001和普通文件被存储。因此,从磁带4105的头,共享数据存储文件5002的读取位置是在去重复文件5001的读取位置之前。因此,在从磁带4105的头顺序读取数据中,共享数据存储文件5002在去重复文件5001之前被读取。
存储共享数据存储文件5002的带区6101包括头6001和数据6004。头6001存储关于文件管理数据3103的数据。当存储在磁带数据6000中的文件是共享数据存储文件5002时,头6001的共享数据标志6003被置位,并且共享数据存储文件5002的数据被存储在数据6004中。当有多个共享数据存储文件时,多个共享数据存储文件5002以与带区6101相同的数据结构被存储。
在共享数据存储文件5002的备份被完成后,去重复文件5001和普通文件被写入磁带4105中。在该实施例中,用于向磁带4105备份去重复文件5001的带区6005包括头6001和数据6004。头6001存储关于文件管理数据3103的数据。在存储在磁带数据6000中的文件是去重复文件5001情况下,头6001的去重复文件标志6007被置位。
共享数据路径6002存储指向去重复文件5001参考的共享数据存储文件5002的参考数据。参考数据可以是共享数据存储文件5002的文件路径。应当注意,参考数据还可以是用于唯一标识共享数据存储文件5002的数据,例如i节点数或者文件路径或者块地址,并且不限于作为示例描述的那些。
带区6005中的数据6004存储去重复文件5001A、5001B的差别数据5008A、5008C。
用于根据该实施例的普通文件的带区6011包括头6001和数据6004。头6001存储关于文件管理数据3103的数据。数据6004存储文件的数据。
在根据本发明的磁带数据的结构中,其中去重复文件5001和普通文件被存储的顺序不限于所图示的顺序。在图6中,普通文件被存储在去重复文件5001之后,但顺序可以被反转或者是随机的。
图7是示意性图示根据该实施例的在磁带4105中存储的备份数据的创建的图。
磁盘4005存储四个去重复文件5001和两个共享数据存储文件5002。去重复文件1(7007)和去重复文件2(7004)参考共享数据存储文件1(7002),并且去重复文件3(7008)和去重复文件4(7005)参考共享数据存储文件2(7003)。
在根据该实施例的备份方法中,共享数据存储文件群组7001被首先写入在磁带4105中。共享数据存储文件群组7001被存储在上文所描述的磁带数据6000的结构中。在图7图示的示例中,在共享数据存储文件1(7002)从磁带4105的头被写入后,共享数据存储文件2(7003)被写入。在该示例中,两个共享数据存储文件5002被存储在磁盘4005中,并因此当两个共享数据存储文件5002被写入时完成备份。之后,去重复文件5001的群组7006被写入在磁带4105中。在图7图示的示例中,去重复文件1(7007)、去重复文件2(7004)、去重复文件3(7008)和去重复文件4(7005)被以所述顺序写入。应当说明的是,如上所述,其中去重复文件被写入的顺序不限于图示的顺序。
以这种方式,在共享数据存储文件群组7001被写入在磁带4105中后,去重复文件群组7006被写入磁带4105中。
图8是图示根据该实施例的提取的文件列表3110的配置的图。
当备份程序3107被执行时,提取的文件列表3110被创建。备选地,提取的文件列表3110可以被提前创建并且根据在去重复或者创建文件的过程中的需求而上传。
提取的文件列表3110包括共享数据存储文件5002的列表12001、去重复文件5001的列表12002和普通文件列表12003。
共享数据存储文件列表12001从其头包括指示每个共享存储文件的文件路径12004的列表元素。其他列表也从它们的头包括指示文件路径12004的列表元素。
应当说明的是,在该实施例中,当共享数据存储文件和其他文件被区分时就足够了,并且因此去重复文件5001的列表12002和普通文件列表可以是一个列表。备选地,提取的文件列表3110可以仅包括共享数据存储文件列表12001。
图9是根据该实施例的备份过程的流程图。当文件服务器1004的处理器3101执行备份程序3107时,图9中图示的备份过程被执行。
当从备份服务器1002的备份服务器程序2103接收到备份请求时,备份程序3107搜索磁盘4005并且将共享数据存储文件5002、去重复文件5001和普通文件分类(步骤8001)。特别地,备份程序3107参考文件管理数据3103的标志5007以识别每个文件的类型。然后,备份程序3107将对文件分类的结果存储在提取的文件列表3110中。
之后,备份程序3107从提取的文件列表3110的共享数据存储文件列表12001选择一个文件(步骤8002)。
然后,备份程序3107使用在步骤8002中选择的文件的文件管理数据3103以创建磁带数据结构6000的头6001(步骤8003)。具体而言,备份程序3107设置头6001的共享数据标志6003。
然后,备份程序3107读取共享数据存储文件5002的数据5008B(步骤8004),并且在磁带4105中写入头6001和读取的数据(步骤8005)。
然后,备份程序3107确定是否所有的共享数据存储文件5002被备份(步骤8006)。在发现共享数据存储文件5002中的一些未被写入磁带4105作为确定的结果的情况下(在步骤8006中“N”),备份程序3107返回步骤8002以继续该过程。另一方面,在所有的共享数据存储文件5002被写入磁带4105中的情况下(在步骤8006中“Y”),备份程序3107转到步骤8007并且在磁带中写入去重复文件5001和普通文件。
备份程序3107从提取的文件列表3110的去重复文件列表12002或者普通文件列表12003选择一个文件(步骤8007)。
然后,备份程序3107确定所选择文件的文件类型(步骤8008)。在发现所选择文件是普通文件作为确定的结果的情况下,备份程序3107通过传统的备份过程,也就是类似于传统方法的方法(步骤8013),在磁带中写入文件。
另一方面,在所选择文件是去重复文件5001的情况下,备份程序3107执行步骤8009至8011。首先,备份程序3107使用去重复文件5001的文件管理数据3103创建头6001(步骤8009)。特别地,备份程序3107设置头6001的去重复数据标志6007。进一步地,备份程序3107使用文件管理数据3103的指针5006获得共享存储文件5002的文件路径,并且将共享数据存储文件5002的文件路径设置到头6001的共享数据路径6002。接下来,备份程序3107读取去重复文件5001的差别数据5008A和差别数据5008B(步骤8010)。然后,备份程序3107在磁带4105中写入创建的头和差别数据(步骤8011)。
之后,备份程序3107确定是否所有去重复文件5001和普通文件被备份(步骤8012)。在发现去重复文件5001或者普通文件中的一些文件未写入磁带4105作为确认的结果的情况下(在步骤8012中“N”),备份程序3107返回步骤8007以针对下一文件继续该过程。另一方面,在所有去重复文件和普通文件被写入磁带4105中的情况下(在步骤8012中“Y”),备份程序3107结束备份过程。
在上述备份程序3107的操作的情况下,在共享数据存储文件5002被写入在磁带4105的开始处之后,去重复文件5001和普通文件被写入。换句话说,在图9图示的备份过程中,当从磁带4105的头观察时,共享数据存储文件5002的读取位置在去重复文件5001的读取位置之前。因此,在从磁带4105的头顺序读取数据的过程中,共享数据存储文件5002在去重复文件5001之前被读取。
接下来,描述恢复备份到磁带4105的文件的过程。对于恢复过程假定备份的文件从磁带的头被顺序恢复(顺序读取)。顺序读取可以最大化磁带的读取性能。例如,当在磁带中间写入的文件将要被恢复时,需要文件的提示过程(寻找过程)。与硬盘驱动器或固态驱动器相比,用于磁带的寻找过程所需要的时间非常长。因此,当执行寻找过程时,磁带的读取性能显著降低并且恢复时间被延长。
应当说明的是,具有适于顺序读取特性的存储介质除了磁带之外还包括CD-ROM、DVD-ROM和软盘。本发明的恢复过程对于这些存储介质也有效。换句话说,本发明对于在顺序读取和涉及提示的读取(随机读取)之间具有性能上的大差异的存储介质有效。
图10是根据该实施例的恢复过程的流程图。当文件服务器1004的处理器3101执行备份程序3107时,执行图10中图示的恢复过程。
当从备份服务器1002的备份服务器程序2103接收到恢复请求时,备份程序3107加载附连在磁带设备1006上的磁带4105,从磁带4105的头向其终点依次地读取文件,并且检查读取文件的头6001的标志(步骤9010)。
在头6001中共享数据标志6003被置位的情况下,备份程序3107在磁盘4005中作为文件写入文件管理数据3103和数据6004(步骤9002)。然后,备份程序3107向文件管理数据3103的标志5007设置指示共享数据存储文件5002的标志(步骤9003)。
另一方面,在头6001中去重复数据标志6007被置位的情况下,备份程序3107从头6001获得共享数据路径6002(步骤9004)。然后,备份程序3107从磁带4105读取数据6004,并且在磁盘4005中作为文件写入数据(步骤9005)。然后,备份程序3107向文件管理数据3103的标志5007设置指示存储文件为去重复文件5001的标志(步骤9006)。
然后,备份程序3107向文件管理数据3103的指针5006设置参考数据(步骤9007)。特别地,备份程序3107使用在步骤9004中获得的共享数据存储文件5001的部分设置参考数据。
另一方面,在在步骤9010中确定在头6001中未置位标志的情况下,备份程序3107作为普通文件恢复文件(步骤9008)。
之后,备份程序3107确定是否所有在磁带4105中写入的文件被恢复(步骤9020)。在发现文件中的一些文件未被恢复作为确定的结果的情况下(在步骤9020中“N”),备份程序3107返回步骤9001针对下一文件继续该过程。另一方面,在所有文件的恢复被完成的情况下(在步骤9020中“Y”),备份程序3107结束该过程。
如上所述,根据第一实施例,在上文参考图9描述的备份过程中,共享数据存储文件5002被存储在磁带4105中使得共享数据存储文件5002的读取位置在去重复文件5001的读取位置之前。因此,在图10所图示的通过顺序读取恢复备份数据的过程中,步骤9002和步骤9003被首先执行使得在恢复共享数据存储文件5002之后恢复去重复文件5001。换句话说,共享数据存储文件5002在去重复文件5001被恢复时存在,并且因此可以在步骤9007中设置指针5006。应当说明的是,当不考虑共享数据存储文件5002和去重复文件5001的顺序的情况下执行恢复时,共享数据存储文件5002在去重复文件被恢复时不存在,并且因此不能在步骤9007中设置指针5006。
因此,根据第一实施例,在已经向其应用文件级去重的文件系统中,备份和恢复可以被执行同时保持去重状态。因此,磁带设备的寻找操作可以被压缩。
(第二实施例)
在本发明的第二实施例中,在向磁带4105备份去重复文件系统的文件的过程中,与第一实施例相反,共享数据存储文件5002不首先以集体的方式备份。因此,在第二实施例中,在备份去重复文件5001的过程中,当与之相关联的共享数据存储文件5002还未被备份时,共享数据存储文件5002被首先备份。
应当说明的是,在第二实施例中,与上述第一实施例相同的部件由相同附图标记表示,并且其描述被省略。
图11是图示根据第二实施例的文件服务器1004的配置示例的框图。
第二实施例中的文件服务器1004在存储器3102中存储所存储的共享数据文件列表13001,而不是在第一实施例中的提取的文件列表3110。
存储的共享数据文件列表13001是已经被备份到磁带4105的共享数据存储文件5002的列表,并且包括文件的参考数据(索引节点、文件路径等)。当备份程序3107备份文件时,存储的共享数据文件列表13001被创建。
图12是图示根据第二实施例的存储的共享数据文件列表13001的配置的图。
存储的共享数据文件列表13001包括共享数据存储文件5002的文件路径14001。如何使用存储的共享数据文件列表13001稍后描述。
图13是图示根据第二实施例的在磁带设备1006的磁带4105中存储的数据结构的图。
在第二实施例中,不像在第一实施例中从磁带的头放置共享数据存储文件5002,作为参考终点的共享数据存储文件5002被放置在作为参考源的去重复文件5001之前。在图13所图示的示例中,普通文件6011被在磁带的头处写入。进一步地,在磁带中写入的去重复文件5001参考共享数据存储文件5002。因此,在执行备份过程中,备份程序3107在磁带4105(6101)中写入共享数据存储文件5002,并继而在磁带4105(6005)中写入作为参考源的去重复文件5001。
图14是根据第二实施例的备份过程的流程图。
当从备份服务器1002的备份服务器程序2103接收到备份请求时,备份程序3107从磁盘(文件系统卷)4005中选择一个文件(步骤1101)。
然后,备份程序3107确定所选择文件的类型(步骤11002)。在发现所选择文件是普通文件作为确定的结果的情况下,备份程序3107在磁带4105中通过传统备份过程,也就是类似于传统方法的方法(步骤11003),写入文件。
另一方面,在所选择文件是共享数据存储文件5002的情况下,备份程序3107创建其中为共享数据存储文件5002置位共享数据标志6003的头(步骤11004)。然后,备份程序3107读取文件的数据(步骤11005),并且在磁带4105中写入创建的头和读取的数据(步骤11006)。然后,备份程序3107在存储的共享数据文件列表13001中注册共享数据存储文件5002的路径(步骤11007)。
另一方面,在所选择文件是去重复文件5001的情况下,备份程序3107执行稍后将描述的去重复文件备份过程(步骤15000)。
之后,备份程序3107确定是否在磁盘4005中存储的所有文件被备份(步骤11012)。在文件未在磁带4105中存储的情况下(步骤11012中“N”),备份程序3107返回步骤11001以针对下一文件继续该过程。另一方面,在所述文件被存储在磁带4105中的情况下(在步骤11012中“Y”),备份程序3107结束该过程。
图15是根据第二实施例的去重复文件备份过程的流程图。图15中图示的去重复文件备份过程被在备份过程的步骤15000(图14)中执行。
首先,备份程序3107找到去重复文件15001参考的共享数据存储文件5001的参考数据(步骤15001)。
然后,备份程序3107搜索存储的共享数据文件列表13001以确定是否共享数据存储文件已经被存储在磁带4105中(步骤15002)。在发现在步骤15001中找到的参考数据未存储在存储的共享数据文件列表13001中作为确定的结果的情况下,备份程序3107备份共享数据存储文件5002(步骤15003)。该过程与备份过程(图14)的步骤11004至步骤11007的步骤相同。
另一方面,在所找到的路径被存储在存储的共享数据文件列表13001中的情况下,备份程序3107转到步骤15005以创建用于去重复文件的头6001。特别地,备份程序3107在共享数据路径6002中存储去重复数据标志6007和共享数据存储文件5002的路径(步骤15005)。
然后,备份程序3107读取去重复文件5001的差别数据5008(步骤15006)。最后,备份程序3107在磁带4105中写入创建的头6001和读取的去重复文件5001的差别数据(步骤15007)。
通过上文所描述的备份程序3107的操作,当从磁带4105的头观察时,共享数据存储文件5002的读取位置在对应于共享数据存储文件5002的去重复文件的读取位置之前。因此,在从磁带4105的头顺序读取数据的过程中,共享数据存储文件5002被从去重复文件5001读取。
如上所述,根据本发明的第二实施例,在备份去重复文件5001时,确定是否共享数据存储文件5002已经被写在磁带4105中。在共享数据存储文件5002未被写在磁带4105中的情况下,共享数据存储文件5002在去重复文件5001之前被写在磁带中。因此,在执行恢复时,共享数据存储文件5002在去重复文件5001之前被恢复,并且因此作为参考终点的共享数据存储文件5002当去重复数据5001被恢复时总是存在。
因此,共享数据存储文件5002不需要被写在磁带的头处,这消除了在备份时搜索文件系统卷的需要,并且使能高速备份。
虽然已经详细地并且在附图中画面般地描述本发明,但是本发明不限于这样的细节而是涵盖各种明显修改和等价布置,其落在所附权利要求的范围内。

Claims (18)

1.一种用于备份数据的计算机系统,包括:
服务器,用于向客户端计算机提供数据;
第一存储系统,用于存储将要向所述客户端计算机提供的所述数据;以及
第二存储系统,用于备份存储在所述第一存储系统中的所述数据,
其中第一存储系统存储去重复数据和共享数据;
其中第二存储系统执行顺序存取,并且所述顺序存取执行的比随机存取快;
其中去重复数据包括第一数据头和第一数据体,所述第一数据头包括表示所述数据是所述去重复数据的第一类型数据和用于关联所述去重复数据到所述共享数据的参考信息,所述数据体包括指示与所述共享数据的差异的差别数据;
其中所述共享数据包括第二数据头和第二数据体,所述第二数据头包括表示所述数据是所述共享数据的第二类型数据,所述第二数据体包括由多个所述去重复数据共享的所述共享数据;
其中与所述去重复数据关联的所述共享数据被从所述第一存储系统备份到所述第二存储系统后所述服务器执行从所述第一存储系统备份所述去重复数据到所述第二存储系统,以使得所述共享数据顺序上先于与所述共享数据相关联的所述去重复数据定位;
其中与备份的所述去重复数据相关联的备份的所述共享数据被恢复后所述服务器执行从所述第二存储系统恢复备份的所述去重复数据。
2.根据权利要求1所述的计算机系统,其中所述第二存储系统存储将要被备份的多个所述共享数据,并且将与所述多个所述共享数据相关联的多个所述去重复数据存储在所述多个所述共享数据被存储的读取位置之后。
3.根据权利要求2所述的计算机系统,其中所述服务器参考所述第一类型数据以提取将要被备份到所述第二存储系统的所述共享数据。
4.根据权利要求1所述的计算机系统,其中
所述服务器:
参考所述第一类型数据以确定将要被备份到所述第二存储系统的所述数据是否是去重复数据;以及
在将要被备份的所述数据是去重复数据的情况下,确定与所述去重复数据相关联的所述共享数据是否存储在了所述第二存储系统中,以及
在所述共享数据未被存储在所述第二存储系统中的情况下,所述第二存储系统存储所述共享数据,并继而将所述去重复数据存储在所述共享数据的存储位置之后的读取位置处。
5.根据权利要求1所述的计算机系统,其中
所述服务器:
执行存储在所述第二存储系统中的所述数据的所述顺序读取;
参考所读取的所述第二类型数据以确定将要被存储在所述第一存储系统中的所述数据的所述类型;
在将要被存储在所述第一存储系统中的所述数据是去重复数据的情况下,从所述第二存储系统获取参考信息;
从关联所述去重复数据到所述共享数据的所述参考信息创建指向所述共享数据的指针;以及
从读取自所述第二存储系统的所述数据创建所述去重复数据的所述差别数据;以及
其中所述第一存储系统存储所创建的所述差别数据。
6.根据权利要求1所述的计算机系统,
其中服务器通过参考所述第一类型数据、所述第二类型数据和所述参考信息从所述第二存储系统恢复数据到所述第一存储系统。
7.一种用于向客户端计算机提供数据的服务器,所述服务器包括:
用于执行程序的处理器;以及
用于存储由所述处理器执行的所述程序的存储器,
其中第一存储系统存储去重复数据和共享数据;
其中第二存储系统执行顺序存取,并且所述顺序存取执行的比随机存取快;
其中去重复数据包括第一数据头和第一数据体,所述第一数据头包括表示所述数据是所述去重复数据的第一类型数据和用于关联所述去重复数据到所述共享数据的参考信息,所述第一数据体包括指示与所述共享数据的差异的差别数据;
其中所述共享数据包括第二数据头和第二数据体,所述第二数据头包括表示所述数据是所述共享数据的第二类型数据,所述第二数据体包括由多个所述去重复数据共享的所述共享数据;
其中所述服务器被配置为:
与所述去重复数据关联的所述共享数据被从所述第一存储系统备份到所述第二存储系统后从所述第一存储系统备份所述去重复数据到所述第二存储系统,以使得所述共享数据顺序上先于与所述共享数据相关联的所述去重复数据定位;以及
与备份的所述去重复数据相关联的备份的所述共享数据被恢复后从所述第二存储系统恢复备份的所述去重复数据。
8.根据权利要求7所述的服务器,其中所述服务器被进一步配置为存储将要被备份到所述第二存储系统中的多个所述共享数据,并且在所述多个所述共享数据被存储的读取位置之后,将与所述多个所述共享数据相关联的多个所述去重复数据存储到所述第二存储系统中。
9.根据权利要求8所述的服务器,其中所述服务器参考所述第一类型数据以提取将要被备份到所述第二存储系统中的所述共享数据。
10.根据权利要求7所述的服务器,其中所述服务器被进一步配置为:
参考所述第一类型数据以确定将要被备份到所述第二存储系统的所述数据是否是去重复数据;
在将要被备份的所述数据是去重复数据的情况下,确定与所述去重复数据相关联的所述共享数据是否存储在了所述第二存储系统中;以及
在所述共享数据未被存储在所述第二存储系统中的情况下,将所述共享数据存储到所述第二存储系统中,并继而在所述共享数据被存储的位置之后的读取位置处,将所述去重复数据存储到所述第二存储系统中。
11.根据权利要求7所述的服务器,其中所述服务器被进一步配置为:
执行存储在所述第二存储系统中的所述数据的所述顺序读取;
参考所读取的所述第二类型数据以确定将要被存储在所述第一存储系统中的所述数据的所述类型;
在将要被存储在所述第一存储系统中的所述数据是去重复数据的情况下,从所述第二存储系统获取参考信息;
从关联所述去重复数据到所述共享数据的所述参考信息创建指向所述共享数据的指针;
从读取自所述第二存储系统的所述数据创建所述去重复数据的所述差别数据;以及
将所创建的所述差别数据存储在所述第一存储系统中。
12.根据权利要求7所述的服务器,
其中服务器被配置成通过参考所述第一类型数据、所述第二类型数据和所述参考信息从所述第二存储系统恢复数据到所述第一存储系统。
13.一种在计算机系统中执行的数据管理方法,所述计算机系统包括用于向客户端计算机提供数据的服务器、用于存储将要向所述客户端计算机提供的所述数据的第一存储系统、以及用于备份存储在所述第一存储系统中的所述数据的第二存储系统,
第一存储系统存储去重复数据和共享数据;
第二存储系统执行顺序存取,而所述第一存储系统不执行顺序存取;
所述去重复数据包括第一数据头和第一数据体,所述第一数据头包括表示所述数据是所述去重复数据的第一类型数据和用于关联所述去重复数据到所述共享数据的参考信息,所述第一数据体包括指示与所述共享数据的差异的差别数据;
所述共享数据包括第二数据头和第二数据体,第二数据头包括表示所述数据是所述共享数据的第二类型数据,第二数据体包括由多个所述去重复数据共享的所述共享数据;
所述数据管理方法包括以下步骤:
与所述去重复数据关联的所述共享数据被从所述第一存储系统备份到所述第二存储系统后从所述第一存储系统备份所述去重复数据到所述第二存储系统,以使得所述共享数据顺序上先于与所述共享数据相关联的所述去重复数据定位;
与备份的所述去重复数据相关联的备份的所述共享数据被恢复后从所述第二存储系统恢复备份的去重复数据。
14.根据权利要求13所述的数据管理方法,进一步包括步骤:由所述第二存储系统存储将要被备份的多个所述共享数据,并且将与所述多个所述共享数据相关联的多个所述去重复数据存储在存储多个所述共享数据的读取位置之后。
15.根据权利要求14所述的数据管理方法,进一步包括步骤:由所述服务器参考所述第一类型数据以提取将要被备份到所述第二存储系统中的所述共享数据。
16.根据权利要求13所述的数据管理方法,进一步包括步骤:
由所述服务器参考所述第一类型数据以确定将要被备份到所述第二存储系统的所述数据是否是去重复数据;
在将要被备份的所述数据是去重复数据的情况下,由所述服务器确定与所述去重复数据相关联的所述共享数据是否存储在了所述第二存储系统中;以及
在所述共享数据未被存储在所述第二存储系统中的情况下,由所述第二存储系统存储所述共享数据,并继而将所述去重复数据存储在所述共享数据的存储位置之后的读取位置处。
17.根据权利要求13所述的数据管理方法,进一步包括步骤:
由所述服务器执行存储在所述第二存储系统中的所述数据的所述顺序读取;
由所述服务器参考所读取的所述第二类型数据以确定将要被存储在所述第一存储系统中的所述数据的所述类型;
在将要被存储在所述第一存储系统中的所述数据是去重复数据的情况下,由所述服务器从所述第二存储系统获取参考信息;
由关联所述去重复数据到所述共享数据的所述参考信息创建指向所述共享数据的指针;
由所述服务器从读取自所述第二存储系统的所述数据创建所述去重复数据的所述差别数据;以及
由所述第一存储系统存储所创建的所述差别数据。
18.根据权利要求13所述的数据管理方法
其中所述数据管理方法包括通过参考所述第一类型数据、所述第二类型数据和所述参考信息从所述第二存储系统恢复数据到第一存储系统。
CN201280075370.0A 2012-10-01 2012-10-01 用于去重复文件系统的备份和恢复系统以及对应的服务器和方法 Active CN104583966B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2012/006278 WO2014054065A1 (en) 2012-10-01 2012-10-01 Backup and restore system for a deduplicated file system and corresponding server and method

Publications (2)

Publication Number Publication Date
CN104583966A CN104583966A (zh) 2015-04-29
CN104583966B true CN104583966B (zh) 2018-06-08

Family

ID=47076325

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280075370.0A Active CN104583966B (zh) 2012-10-01 2012-10-01 用于去重复文件系统的备份和恢复系统以及对应的服务器和方法

Country Status (5)

Country Link
US (2) US9201884B2 (zh)
EP (1) EP2864887A1 (zh)
JP (1) JP6133396B2 (zh)
CN (1) CN104583966B (zh)
WO (1) WO2014054065A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106843773B (zh) * 2017-02-16 2021-12-03 北京书生云科技有限公司 存储方法和分布式存储系统
JP6041839B2 (ja) * 2014-09-04 2016-12-14 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation メタ情報を保管する方法、プログラム、及びそのテープ記録システム
CN105631042B (zh) * 2016-01-26 2019-02-22 北京京东尚科信息技术有限公司 一种数据验重的方法和装置
CN107526651A (zh) * 2016-06-21 2017-12-29 深圳中电长城信息安全系统有限公司 一种磁盘阵列备份的方法和系统
CN107870922B (zh) * 2016-09-23 2022-02-22 伊姆西Ip控股有限责任公司 一种用于数据去重的方法、设备和系统
JP2021114164A (ja) * 2020-01-20 2021-08-05 富士通株式会社 ストレージ装置及びストレージ制御方法
JP6865868B1 (ja) * 2020-01-31 2021-04-28 ゼネラル・エレクトリック・カンパニイ 医用画像撮影装置、その制御プログラム及びシステム
CA3105553A1 (en) * 2021-01-11 2022-07-11 Walmart Apollo, Llc Cloud-based sftp server system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625625B1 (en) * 1999-04-09 2003-09-23 Hitachi, Ltd. System and method for backup and restoring by utilizing common and unique portions of data
US8060476B1 (en) * 2008-07-14 2011-11-15 Quest Software, Inc. Backup systems and methods for a virtual computing environment
US8131924B1 (en) * 2008-03-19 2012-03-06 Netapp, Inc. De-duplication of data stored on tape media

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5907672A (en) * 1995-10-04 1999-05-25 Stac, Inc. System for backing up computer disk volumes with error remapping of flawed memory addresses
US7386752B1 (en) 2004-06-30 2008-06-10 Symantec Operating Corporation Using asset dependencies to identify the recovery set and optionally automate and/or optimize the recovery
US7577786B2 (en) * 2005-12-08 2009-08-18 Quality Systems Associates, Inc. Restore accelerator for serial media backup systems
CA2706007C (en) * 2006-12-22 2016-08-30 Commvault Systems, Inc. System and method for storing redundant information
JP2009238036A (ja) * 2008-03-27 2009-10-15 Nec Corp データバックアップ装置、データバックアップ方法およびプログラム
US8578120B2 (en) * 2009-05-22 2013-11-05 Commvault Systems, Inc. Block-level single instancing
US8200926B1 (en) 2009-05-28 2012-06-12 Symantec Corporation Methods and systems for creating full backups
US8504529B1 (en) * 2009-06-19 2013-08-06 Netapp, Inc. System and method for restoring data to a storage device based on a backup image
US8285681B2 (en) * 2009-06-30 2012-10-09 Commvault Systems, Inc. Data object store and server for a cloud storage environment, including data deduplication and data management across multiple cloud storage sites
US8204862B1 (en) 2009-10-02 2012-06-19 Symantec Corporation Systems and methods for restoring deduplicated data
US8606751B1 (en) * 2009-12-21 2013-12-10 Emc Corporation System and method for backup by inode number
US8209298B1 (en) * 2010-12-17 2012-06-26 International Business Machines Corporation Restoring a restore set of files from backup objects stored in sequential backup devices

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6625625B1 (en) * 1999-04-09 2003-09-23 Hitachi, Ltd. System and method for backup and restoring by utilizing common and unique portions of data
US8131924B1 (en) * 2008-03-19 2012-03-06 Netapp, Inc. De-duplication of data stored on tape media
US8060476B1 (en) * 2008-07-14 2011-11-15 Quest Software, Inc. Backup systems and methods for a virtual computing environment

Also Published As

Publication number Publication date
JP6133396B2 (ja) 2017-05-24
EP2864887A1 (en) 2015-04-29
US20160062844A1 (en) 2016-03-03
WO2014054065A1 (en) 2014-04-10
CN104583966A (zh) 2015-04-29
US9201884B2 (en) 2015-12-01
JP2015527620A (ja) 2015-09-17
US9569311B2 (en) 2017-02-14
US20140095440A1 (en) 2014-04-03

Similar Documents

Publication Publication Date Title
CN104583966B (zh) 用于去重复文件系统的备份和恢复系统以及对应的服务器和方法
US10146631B1 (en) Incremental forever backups for exchange
US9098455B2 (en) Systems and methods of event driven recovery management
JP5965541B2 (ja) ストレージ装置及びストレージ装置の制御方法
US9124611B2 (en) Systems and methods for writing data and storage system specific metadata to network attached storage device
US9223654B2 (en) Resilient distributed replicated data storage system
US7096392B2 (en) Method and system for automated, no downtime, real-time, continuous data protection
US8478729B2 (en) System and method for controlling the storage of redundant electronic files to increase storage reliability and space efficiency
KR101626186B1 (ko) 피어 및 클라우드로부터 파일 및 시스템의 차분 복구
KR101442370B1 (ko) 다수 캐스케이드식 백업 프로세스
US20050177767A1 (en) Backup system and method for tape recording medium
US9390034B1 (en) Unified SCSI target management for performing a delayed shutdown of a service daemon in a deduplication appliance
CN101784996A (zh) 仿效存储系统
CN103917962A (zh) 读取存储在存储系统上的文件
JP2010049488A (ja) ストレージシステム及びデータ管理方法
CN105100815A (zh) 基于时间序列的流式数据分布式元数据管理方法
US9886216B2 (en) Distributed remote data storage access
US9336293B2 (en) Data management apparatus and method for surveillance system
JP6967010B2 (ja) 異種ストレージシステム間の複製
US8683154B2 (en) Computer system and system control method
CN101901173A (zh) 一种灾备系统及灾备方法
KR102152724B1 (ko) 감시 시스템의 영상 관리 장치 및 방법
US7865472B1 (en) Methods and systems for restoring file systems
JP2006031446A (ja) データ記憶装置、データ記憶方法およびデータ記憶プログラム
US9384151B1 (en) Unified SCSI target management for managing a crashed service daemon in a deduplication appliance

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant