CN103782279B - 文件管理系统和文件管理方法 - Google Patents

文件管理系统和文件管理方法 Download PDF

Info

Publication number
CN103782279B
CN103782279B CN201280043462.0A CN201280043462A CN103782279B CN 103782279 B CN103782279 B CN 103782279B CN 201280043462 A CN201280043462 A CN 201280043462A CN 103782279 B CN103782279 B CN 103782279B
Authority
CN
China
Prior art keywords
file
backup
virtual drive
memory device
metadatabase
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
CN201280043462.0A
Other languages
English (en)
Other versions
CN103782279A (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.)
Soliton Systems KK
Original Assignee
OREGA Inc
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 OREGA Inc filed Critical OREGA Inc
Publication of CN103782279A publication Critical patent/CN103782279A/zh
Application granted granted Critical
Publication of CN103782279B publication Critical patent/CN103782279B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • 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
    • 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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0617Improving the reliability of storage systems in relation to availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0664Virtualisation aspects at device level, e.g. emulation of a storage device or system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/815Virtual

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

问题:提供一种文件管理系统和文件管理方法,其能够通过同样从备份进程侧使用虚拟文件系统元数据库的配置来有效地执行备份进程。解决方案:所述文件管理系统具备:虚拟驱动器控制器(110),其控制虚拟驱动器(5);元数据库(210),其包含用于使虚拟文件与保存在存储设备(6)中的物理文件相关联的信息;备份控制器(120),其管理文件的所述备份进程;以及在备份进程管理中使用的备份状态管理数据库(220)。所述虚拟驱动器控制器(110)将已更新文件信息登记在所述备份状态管理数据库(220)中。所述备份控制器(120)参考所述备份状态管理数据库(220)和所述元数据库(210),并备份所述文件。

Description

文件管理系统和文件管理方法
技术领域
本发明涉及文件管理系统和文件管理方法,特别地,涉及其特征在于备份处理的文件管理系统和文件管理方法。
背景技术
文件服务器广泛用于跨通信网络地存储计算机文件。文件服务器在服务器操作系统(OS)的文件系统上提供文件夹树,从而使用户能够利用存取控制来共享驱动器根和特定文件夹。
共享文件和文件夹的用户可以跨通信网络从它们的终端(例如,PC和移动电话)浏览文件。他们也可以基于由文件服务器的系统管理员设定的存取授权来打开、关闭、创建、移动、重命名和复制任何文件。在这里,用户可以是人或计算机系统,诸如机器和软件程序。
当用户打开存储在服务器上的文件时,他们从用户终端浏览服务器上的文件;接着,用户终端请求文件服务器传输文件,从而指定这些文件;并且,文件服务器跨通信网络将这些文件传输到用户终端。
存在一种称为RAID(廉价磁盘冗余阵列)的常见技术来使文件服务器上的硬盘设备更快和/或更加冗余。
RAID是一种组合多个硬盘来使它们被识别为用于操作系统的一个虚拟硬盘驱动器的技术。它主要用于改善可靠性。此外,RAID和备份软件程序常常一起使用来确保连续服务且获得高阶安全性。
现有技术文件
专利文件
专利文件1:JP特开2011-129039号公报。
发明内容
本发明将要解决的问题
然而,当RAID和备份软件程序一起使用时,备份软件程序无法区分由RAID虚拟化的文件系统与通常的文件系统。即使RAID上的文件系统在数据库中包含存取历史和/或元数据,备份软件程序仍然无法使用数据库中的信息来用于备份处理。因此,使备份软件程序以与通常的文件系统一样的方式处理RAID文件系统,使备份处理效率低下。
因此,本发明的目的在于通过将多个存储设备组合为RAID来构造虚拟文件系统,且让备份处理器使用虚拟文件的元数据库解决这个问题,从而提供能有效地执行备份的文件管理系统和文件管理方法。
解决技术问题的手段
本发明的目的在于解决前述问题,其具有以下特征。
(技术方案1)
本发明的技术方案1有以下特征。
即,技术方案1的文件管理系统控制多个存储设备,且包括:虚拟驱动器控制器,其控制由所述存储设备的任意集合组成的虚拟驱动器;元数据库,其包含用来使所述虚拟驱动器上的虚拟文件与存储在所述存储设备中的物理文件相关联的信息;备份控制器,其管理存储在所述虚拟驱动器中的文件的备份;以及备份状态管理数据库,其用来管理由所述备份控制器执行的备份进程;其中,所述虚拟驱动器控制器将关于已更新文件的信息登记到所述备份状态管理数据库中;并且,参考所述备份状态管理数据库和所述元数据库,所述备份控制器执行备份。
(技术方案2)
除了上文描述的技术方案1的特征之外,本发明的技术方案2具有以下特征。
即,所述备份控制器通过由文件更新事件触发而执行备份。
(技术方案3)
除了上文描述的技术方案1或2的特征之外,本发明的技术方案3具有以下特征。
即,所述虚拟驱动器控制器控制由用户操作的主虚拟驱动器和在所述主虚拟驱动器中备份数据的备份虚拟驱动器。
(技术方案4)
除了上文描述的技术方案1、2或3的特征之外,本发明的技术方案4具有以下特征。
即,所述备份控制器监控组成所述文件管理系统的文件管理服务器的负载,且当所述负载大于预定阈值时延迟备份进程。
(技术方案5)
除了上文描述的技术方案1、2、3或4的特征之外,本发明的技术方案5具有以下特征。
即,当出现文件存取错误时,参考所述元数据库,所述虚拟驱动器控制器通过获得与有错误的文件相对应的备份文件来恢复文件。
(技术方案6)
除了上文描述的技术方案5的特征之外,本发明的技术方案6具有以下特征。
即,所述虚拟驱动器控制器的恢复包含:所述备份控制器的通过复制所述备份文件来创建恢复文件,以及所述虚拟备份控制器的通过重写所述元数据库来将到有错误的所述文件的链接更新成到所述恢复文件的链接。
(技术方案7)
除了上文描述的技术方案1、2、3、4、5或6的特征之外,本发明的技术方案7具有以下特征。
即,提供存储恢复控制器,其执行存储恢复来恢复在出现错误的存储设备中管理的数据,其中,在执行存储恢复时,所述存储恢复控制器获得包含在出现所述错误的所述存储设备中的所述数据的复制数据,将所述复制数据复制到另一个存储设备,所述另一个存储设备组成与包含具有所述错误的所述存储设备的所述虚拟驱动器相同的虚拟驱动器,且将所述链接信息重写在所述元数据库中。
(技术方案8)
除了上文描述的技术方案1、2、3、4、5、6或7的特征之外,本发明的技术方案8具有以下特征。
即,提供系统初始化控制器,其执行系统恢复进程来从备份数据恢复系统,其中,所述元数据库具有主元数据库和备份元数据库,且在执行所述系统恢复进程时,所述系统初始化控制器基于所述备份元数据库获得已备份文件来复制已备份文件。
(技术方案9)
本发明的技术方案9具有以下特征。
即,技术方案9的文件管理方法控制多个存储设备,且包括:用所述存储设备的任意集合组成虚拟驱动器;将虚拟文件和存储在所述存储设备中的物理文件登记在元数据库中,同时使所述虚拟文件与所述物理文件相关联;将关于已更新文件的信息登记在备份状态管理数据库中;以及
参考所述备份状态管理数据库和所述元数据库来执行文件备份。
(技术方案10)
除了上文描述的技术方案9的特征之外,本发明的技术方案10具有以下特征。
即,通过由文件更新事件触发而执行文件的备份。
(技术方案11)
除了上文描述的技术方案9或10的特征之外,本发明的技术方案11具有以下特征。
即,组成所述虚拟驱动器进一步包括:组成由用户操作的主虚拟驱动器;以及组成在所述主虚拟驱动器中备份数据的备份虚拟驱动器。
(技术方案12)
除了上文描述的技术方案9、10或11的特征之外,本发明的技术方案12具有以下特征。
即,当包含文件管理系统的文件管理服务器的负载大于预定阈值时,延迟备份所述文件。
(技术方案13)
除了上文描述的技术方案9、10、11或12的特征之外,本发明的技术方案13具有以下特征。
即,文件管理方法进一步包括当出现文件存取错误时,参考所述元数据库,通过获得与有错误的所述文件相对应的备份文件来恢复文件。
(技术方案14)
除了上文描述的技术方案13的特征之外,本发明的技术方案14具有以下特征。
即,恢复所述文件进一步包括通过复制所述备份文件来创建恢复文件,并且,通过重写所述元数据库来将到有错误的所述文件的链接更新成到所述恢复文件的链接。
(技术方案15)
除了上文描述的技术方案9、10、11、12、13或14的特征之外,本发明的技术方案15具有以下特征。
即,文件管理方法进一步包括:接受执行存储恢复进程来恢复在出现错误的存储设备中管理的数据;当在所述存储恢复进程中获得在所述存储设备中包含的数据、且将所述数据复制到组成相同虚拟驱动器的另一个存储设备时,在所述元数据库中更新链接信息。
(技术方案16)
除了上文描述的技术方案9、10、11、12、13、14或15的特征之外,本发明的技术方案15具有以下特征。
即,提供主元数据库和备份数据库作为元数据库,且文件管理方法进一步包括:执行系统恢复进程来从备份恢复系统;在所述系统恢复进程中,通过使用所述元数据库来获得已备份文件,复制所述已备份文件来用于恢复。
本发明的有益效果
利用如上所述的本发明的技术方案1和技术方案9,由于使用备份状态数据库和元数据库来备份文件,故备份处理器能利用虚拟文件系统的元数据库,从而改进备份效率。
除此之外,由于备份状态管理数据库实时地管理增量备份,故可仅通过检查备份状态数据库来检测已更新文件。即,由于与历史备份数据的比较的增量更新管理是不必要的,故更迅速的进程是可能的。利用传统的备份软件程序,在前述增量更新管理进程中必须读取所有数据,那么必须通过安排时间来进行成批程序而在非高峰时段(诸如午夜十二点)进行备份。相比之下,利用本发明,可以在无需读取所有数据的情况下检测增量数据因此更灵活操作是可能的,例如在白天进行备份。
利用上述的本发明的技术方案2和技术方案10,将通过由文件更新事件触发而执行备份进程。利用此方法,能实时地执行备份。
利用上述的本发明的技术方案3和技术方案11,提供将要由用户操作的主虚拟驱动器和用于在主虚拟驱动器中备份数据的备份虚拟驱动器。即,由于主虚拟驱动器和备份虚拟驱动器利用相同的虚拟化方法管理,故一旦实例化(安装)备份虚拟驱动器,就能立即向用户提供备份数据,而无需将在备份虚拟驱动器上的备份数据恢复到主虚拟驱动器。
利用上述的本发明的技术方案4和技术方案12,当管理文件管理系统的文件管理服务器的负载超出预定阈值时,文件备份进程将延迟。因此,备份中的副作用(诸如错误和性能降低)能得到最小化。
利用上述的本发明的技术方案5和技术方案13,当出现文件存取错误时通过参考元数据库且获得与有错误的文件相对应的备份文件来恢复文件。即,由于是通过虚拟驱动器到物理存储驱动器的存取的错误触发的,故文件可以在没有系统管理员的干预下恢复。另外,由于可以仅仅选择有存取错误的文件来进行恢复,故恢复时间可缩短,且用户等待时间可得以最小化。
利用上述的本发明的技术方案6和技术方案14,前述文件恢复进程包含:通过复制备份文件来创建恢复文件的步骤,以及通过更新元数据库而将到错误文件的链接更新成到恢复文件的链接的步骤。因此,可透明地存取虚拟驱动器,那么对不尝试存取有错误的文件的最终用户的影响可得以最小化。
利用上述的本发明的技术方案7和技术方案15,执行存储恢复进程以便恢复有错误的存储设备上的数据。此存储恢复进程获得包含在存储设备中的数据的数据副本,将该数据复制到另一个存储器,另一个存储器组成与有错误的存储设备所属于的虚拟驱动器相同的虚拟驱动器,且重写元数据库中的链接信息。因此,当在包含虚拟驱动器的存储组中的特定存储设备上中出现错误时,无需恢复整个虚拟驱动器,通过仅仅从备份恢复有错误的存储设备中的文件从而限制待备份的文件,使有效且快速恢复变得可能。因此,尝试存取有错误的存储设备的用户的恢复等待时间变短。此外,由于在恢复期间能透明地存取虚拟驱动器,故能消除对不尝试存取有错误的存储驱动器的用户的影响。
此外,即便当从服务器拆离有错误的存储驱动器时,文件自动地从备份数据恢复到虚拟驱动器的自由空间,因此系统操作员的手动恢复操作是不必要的,且无需从有错误的存储驱动器挽救数据,从而能够立即分离存储驱动器。
利用上述的本发明的技术方案8和技术方案16,提供主元数据库和备份元数据库作为元数据库,且执行系统恢复进程来从备份数据恢复系统。此处,系统恢复进程基于备份元数据库获得备份文件,且复制备份文件来用于恢复。即,不仅能从备份恢复备份文件,而且还能从备份恢复具有配置信息的主元数据库。因此,即便当发生无法恢复的错误(诸如服务器丢失)时,仍能从备份数据恢复虚拟驱动器的状态。
另外,当用户向系统恢复进程尚未完成的数据发送读取请求时,可对该数据的恢复进程给出高优先权,从而确保在系统恢复进程期间对虚拟驱动器的透明存取。
附图说明
[图1]这是描绘文件管理系统的实施例的环境的图。
[图2]这是描绘文件管理系统的实施例的功能的框图。
[图3]这是文件更新进程的实施例的流程图。
[图4]这是备份登记进程的实施例的流程图。
[图5]这是备份进程的实施例的流程图。
[图6]这是恢复进程的实施例的流程图。
[图7]这是异步备份进程的实施例的流程图。
[图8]这是主存储恢复进程的实施例的流程图。
[图9]这是备份存储恢复进程的实施例的流程图。
[图10]这是系统恢复进程的实施例的流程图。
[图11]这是元数据库的实例。
具体实施方式
将在下文参考附图来描述本发明的实施例。
本发明的实施例中的文件管理系统控制多个存储设备6。如图1中所示的实例,这个文件管理系统用来经由通信网络3管理文件。在图1中所示的实例中,至少一个服务器计算机1和至少一个用户终端2连接到提供文件管理系统的文件管理服务器4。
一个以上存储设备6连接到文件管理服务器4。文件管理服务器4格式化且安装这些存储设备6,从而通过使存储设备6中的文件能够被看成是虚拟树结构来提供虚拟驱动器5的功能性。
在这个实施例中,提供两个虚拟驱动器5,即主虚拟驱动器5a和备份虚拟驱动器5b。主虚拟驱动器5a是可经由通信网络3由用户操作的驱动器。相比之下,备份虚拟驱动器5b是主虚拟驱动器5a的备份,从而在主虚拟驱动器5a中保存数据的复制版本。总体上,这个备份虚拟驱动器5b不直接由用户操作。
利用这个文件管理系统,存取文件管理服务器4的用户(也就是,服务器计算机1和用户终端2)能通过指定文件路径来存取虚拟驱动器5(更精确地,主虚拟驱动器5)上的文件,而无需关注物理文件存储在哪个存储设备6上。当文件管理服务器4从用户接收对虚拟驱动器5的存取请求时,文件管理服务器4使用响应来答复用户。
在这个实施例中,以下解释是基于存储设备6是硬盘驱动器的假设的。然而,存储设备6不需要必须是硬盘驱动器。它可以是任何永久存储器设备:诸如SSD(固态驱动器)或USB连接闪存;经由以太网连接的NAS(网络附加存储器)或DAS(直接附加存储器);经由光纤通道连接的SAN(存储区域网络);或在因特网上的云存储服务器。
图2是描绘文件管理系统的实施例的框图。
如图2所示,一个以上存储设备6连接到文件管理服务器4。在这个实施例中,连接六个存储设备6,即存储设备6a、6b、6c、6d、6e和6f,其中将6a、6b、6c指派给主存储组7且将6d、6e和6f指派给备份存储组8。主存储组7包括将要由用户操作的主虚拟驱动器5a,且备份存储组8包含备份虚拟驱动器5b,将在前述主虚拟驱动器5a中的数据备份到备份虚拟驱动器5b。下面解释的虚拟驱动器控制器110控制这个主虚拟驱动器5a和这个备份虚拟驱动器5b。
如迄今为止所示的,在这个实施例中,主虚拟驱动器5a和虚拟驱动器5b由虚拟驱动器5利用相同的方法控制,一旦实例化(安装)虚拟驱动器5b,就可能立即恢复备份数据且向用户提供数据。
虚拟驱动器5的前述配置仅仅是实例;文件管理服务器4的管理员能任意地配置虚拟驱动器5。举例来说,管理员可以配置一个以上主虚拟驱动器5a和备份虚拟驱动器5b,以及任意数目的存储设备6。
由于存储设备6上分配给虚拟驱动器6的区域的大小是任意的,故存储设备6的仅仅部分区域能分配给特定虚拟驱动器5。因此,将存储设备6的一个区域分配给主虚拟驱动器5b且将同一存储设备6的另一区域分配给备份虚拟驱动器5b在技术上是可能的。然而,利用这种类型的分配,当在存储设备6上出现错误时,主虚拟驱动器和备份虚拟驱动器可能同时不可操作。因此,分配给主虚拟驱动器5a的存储设备6和分配给备份虚拟驱动器5b的存储设备6应该物理上分离。
在上文描述的配置中,文件管理服务器4控制存储设备6;如图2中所示,文件管理服务器4包括虚拟驱动器控制器110、备份控制器120、系统初始化控制器130、存储恢复控制器140、网络控制器150、元数据库210、备份状态管理数据库220和操作历史管理数据库230。
在这个实施例中,假设文件管理服务器4是单个服务器。然而,虚拟驱动器控制器110、备份控制器120、系统初始化控制器120、存储恢复控制器130、存储恢复控制器140、网络控制器150、元数据库210、备份状态管理数据库220和操作历史管理数据库230可跨彼此通信的多个文件管理服务器4分布。此外,有可能做成一种配置,使得:一些文件管理服务器4管理主虚拟驱动器5a,其他文件管理服务器4管理备份这些主虚拟驱动器5a的备份虚拟驱动器5b,其中文件管理服务器4彼此通信。
(虚拟驱动器控制器110)
虚拟驱动器控制器110控制前述的主虚拟驱动器5a和备份虚拟驱动器5b。
虚拟驱动器控制器110检索存储设备6上的物理文件,且响应于来自用户的文件存取请求而发送这些物理文件。响应于来自用户的文件更新请求,虚拟驱动器控制器110也更新文件且在操作历史管理数据库230中登记更新历史。另外,当出现文件存取错误时,虚拟驱动器控制器110使用备份文件来执行恢复进程。
(备份控制器120)
备份控制器120管理存储在前述主虚拟驱动器5a中的文件的备份。
通过定期地执行备份进程,这个备份控制器120将存储在主虚拟驱动器5b上的文件的备份创建在备份虚拟驱动器5b上。
(系统初始化控制器130)
系统初始化控制器130执行系统初始化进程。
当创建新的文件管理系统时,系统初始化控制器130根据由系统管理员设置的配置来执行系统初始化。另外,当主虚拟驱动器5a发生无法恢复的错误(诸如服务器丢失)时,系统初始化控制器130执行能从备份数据恢复系统的系统恢复进程。
(存储恢复控制器140)
存储恢复控制器140执行存储恢复进程来恢复在有错误的存储设备6中管理的数据。在存储恢复进程中,当拆离有错误的存储设备6时,将与存储在有错误的存储设备6上的数据相同的对应数据(备份数据或备份数据的原始数据)复制到没有错误的另一存储设备6上。利用这个存储恢复进程,即使当拆离包括虚拟驱动器5的存储设备6时,仍自动地确保数据冗余。
(网络控制器150)
网络控制器150控制由虚拟驱动器5管理的文件的输入和输出。
网络控制器150接收来自通信网络3外部的文件存取请求,将这些文件存取请求发送到虚拟驱动器控制器110,且响应于来自虚拟驱动器控制器110的指令而将文件发送到通信网络3外部。
(元数据库210)
元数据库210是包含用来使虚拟驱动器5上的虚拟文件与存储在存储设备6上的物理文件相关联的信息的数据库。
如图11中所示,元数据库210包含诸如以下各个信息:用于文件中的每一个的文件ID、虚拟路径(虚拟驱动器5上的路径)、物理路径(存储设备6上的路径)、文件名、文件大小和更新日期。
如图11中所示,元数据库210由用于主虚拟驱动器5a的元数据库210a和用于备份虚拟驱动器5b的元数据库210b组成。
用于主虚拟驱动器5a的元数据库210a管理在主虚拟驱动器5a中的文件,从而包含主虚拟驱动器5a上的路径作为到每个文件信息的虚拟路径。它也包含在主存储组7上的路径作为每个文件信息的物理路径。
用于备份虚拟驱动器5b的元数据库210b管理备份在虚拟驱动器5b中的文件,从而包含在备份虚拟驱动器5b上的路径作为到每个文件信息的虚拟路径。它也包含在备份存储组8上的路径作为每个文件信息的物理路径。
用于主虚拟驱动器5a的元数据库210a和用于主虚拟驱动器5b的元数据库210b通过文件ID链接,因此使主数据与备份数据相关联。举例来说,如果用于主虚拟驱动器5a的元数据库210a具有具特定文件id(例如,“1”)的文件,那么用于虚拟驱动器5b的元数据库210b中的具有相同id(“1”)的文件是前面文件的备份数据。因此,为了找到对应于特定主文件的备份文件,人们可以通过使用主文件的文件ID作为关键字来检索用于备份虚拟驱动器5b的元数据库210b。类似地,为了找到对应于特定备份文件的主文件,人们可以使用特定备份文件的文件id作为关键字来检索用于主虚拟驱动器5a的元数据库210a。
元数据库210可以包含除了到目前为止提到的数据之外的其他数据,诸如文件创建日期、存取日期、文件属性和存取权限信息。
(备份状态管理数据库220)
备份状态管理数据库220是可用来管理由备份控制器120进行的备份的数据库。
当未备份的文件登记在备份状态管理数据库220中时,备份控制器120参考该登记信息,且将执行必要的备份进程。
(操作历史管理数据库230)
操作历史管理数据库230管理用户对文件的操作的历史。
如之前所示,当虚拟驱动器控制器110更新文件时,将该更新历史记录到操作历史管理数据库230。接着,虚拟驱动器控制器110定期地检查操作历史管理数据库230,从而记录必须备份到备份状态管理数据库220中的文件。因此,仅仅记录已更新文件作为用于备份的目标。
(每个进程的解释)
将在下面解释这个实施例的文件管理系统执行的每个进程。
(文件存取进程)
首先,解释这个实施例的文件存取进程。在这个解释中,使用如下的实例,其中,图1中的用户终端2中的任何用户终端存取存储在虚拟驱动器5中的文件。
首先,文件管理服务器4跨通信网络3接收来自用户终端2的文件存取请求。此处,利用在虚拟驱动器5上的目录路径(例如,“V:SomeFolderfile_a"”)指定目标文件。
虚拟驱动器控制器110经由网络控制器150接收这个文件存取请求。
虚拟驱动器控制器110使用虚拟驱动器5上的接收到的目录路径(“V:SomeFolderfile_a"”)作为关键字来在用于主虚拟驱动器5a的元数据库210a中检索,且取回具有匹配关键字的文件信息。
虚拟驱动器控制器110使用包含在取回的文件信息中的物理路径(存储设备6上的路径)读取存储在存储设备6上的物理文件,且经由网络控制器150和通信网络3将该等文件发送到用户终端2。
(文件更新进程)
下面将参考图3解释这个实施例中的文件更新进程。
在这个实施例中,虚拟驱动器控制器110执行通过跨通信网络3从用户终端2接收文件更新请求而触发的文件更新进程。
在图3中的步骤S100中,文件管理服务器4经由网络控制器150接收由用户终端2发送的数据。此数据包含已更新文件的二进制数据和虚拟驱动器5上的目录路径(例如,“V:SomeFolderfile_a")。接着,执行步骤S101。
在步骤S101中,虚拟驱动器控制器110使用虚拟驱动器5上的接收到的目录路径(“V:SomeFolderfile_a")作为关键字来检索用于主虚拟驱动器5a的元数据库210a,且获得匹配关键字的文件信息。如果包含在所获得的文件信息中的虚拟路径(虚拟驱动器5上的路径)与由用户终端2发送的路径相同,那么虚拟驱动器控制器110解释来自用户终端2的请求是覆盖更新,且利用从用户终端发送的新的二进制数据来覆盖存储设备6的路径的物理文件。接着,执行步骤S102。
在步骤S102中,文件管理服务器4将已更新文件的文件ID记录到操作历史管理数据库230中。接着,执行步骤S103。
在步骤S103中,经由网络控制器150将文件更新完成通知发送到用户终端2,从而让用户知道文件更新进程完成。接着,文件更新进程完成。
(备份登记进程)
下面将参考图4解释这个实施例中的备份登记进程。
在这个实施例中,虚拟驱动器控制器110执行备份登记进程,其是用来登记待备份的文件的进程。
在图4中的步骤S200中,虚拟驱动器控制器110将由主虚拟驱动器5a管理的所有文件记录到备份状态管理数据库220中作为文件“待备份”。即,由于最初不存在备份文件,所以将所有文件登记为“待备份”来执行完整备份。接着,执行步骤S201。
在步骤S201中,虚拟驱动器控制器110等待直到预定等待时间期满。接着,执行步骤S202。
在步骤S202中,随着预定等待时间期满,执行周期性备份登记进程。此处,虚拟驱动器控制器110获得登记在操作历史管理数据库230中的文件ID,且将对应于备份状态管理数据库220上的这些文件ID的数据登记或更新为"待备份"。接着,执行步骤S201,且进程等待直到预定等待时间再次期满(即,等待直到下一个周期性执行时间)。
(备份进程)
下面将参考图5解释这个实施例中的备份进程。
在这个实施例中的备份进程由备份控制器120以预定执行时间窗口周期性地执行。
这些进程时间窗口可由系统管理员等等任意地设定。特定日子的特定时间(例如,工作日的晚24:00到早5:00)可以针对备份执行来指定。此执行时间窗口可设定给所有时间槽,其意味着总是执行备份进程,从而使实时备份是可能的。
在图5中的步骤S300中,检查当前时间是否在预定执行时间窗口内。如果它是在执行时间窗口内,那么执行步骤S301,否则执行步骤S300,进程等待直到下一个预定执行时间窗口。
在步骤S301中,读取备份状态管理数据库220且检查是否存在登记为“待备份”的任何文件。如果存在登记为"待备份"的任何文件,那么执行步骤S302。如果不存在登记为"待备份"的文件,那么再次执行步骤S300。
在步骤S302中,备份控制器120监控文件管理服务器4的负载(例如,CPU利用、存储器使用、磁盘输入/输出(I/O)和/或网络输入/输出(I/O)),且检查其是否大于预定阈值(例如,50%的CPU利用、1GB的存储器使用、10Mbps的磁盘I/O、10Mbps的网络I/O)。如果它是大于预定阈值的,那么执行步骤S300。如果不是大于预定阈值的,那么执行步骤S303。
在步骤S303中,备份控制器120使用在备份状态管理数据库220中登记为“待备份”的文件信息(诸如文件ID)作为关键字检索用于主虚拟驱动器5a的元数据库210a,且获得存取对应于这些“待备份”文件的物理文件的链接信息(诸如URL)。接着,执行步骤S304。
在步骤S304中,备份控制器120使用在步骤S303中获得的链接信息存取物理文件,且创建这些物理文件的备份。备份存储在备份存储组8中的存储设备6中的任一个中;虚拟驱动器控制器110基于诸如存储设备6中每一个的使用的因素来确定使用哪个存储设备6。接着,执行步骤S305。
在步骤S305中,备份控制器120通知虚拟驱动器控制器110备份进程完成。此处,发送备份进程完成的文件的文件ID。虚拟驱动器控制器110在其接收此备份完成通知时获得备份状态管理数据库220中关于备份完成的文件的数据,且将该数据的状态从“待备份”改变成“备份完成”。另外,虚拟驱动器控制器110更新用于备份虚拟驱动器5b的元数据库210b以使原始文件与备份文件相关联。
此处,如果没有在用于备份虚拟驱动器5b的元数据库210b中找到接收到的文件ID(亦即,首次备份),那么创建新的文件ID数据,且将其登记在用于备份虚拟驱动器5b的元数据库210b中。相反,如果在用于备份虚拟驱动器5b的元数据库210b中找到接收到的文件ID(亦即,覆盖备份),那么必要时重写该数据的物理路径。如果物理路径不改变,那么不需要重写。
接着,执行步骤S300;此进程重复直到预定执行窗口结束。因此,在预定执行时间窗口中,只要仍剩余“待备份”文件,那么备份进程继续。
如上所述,这个实施例中的备份进程使用备份状态管理数据库220和元数据库210来执行备份,因此备份处理器能使用虚拟文件系统的元数据库210,从而允许有效备份。
此外,由于备份状态管理数据库220实时地管理差异数据,故可仅使用备份状态管理数据库220来检测已更新文件。换句话说,与备份数据的比较是不必要的,从而减少处理时间。利用传统备份程序,此差别比较进程包括读取所有数据,其使在午夜12点进行“定时成批执行”,从而避开具有较高系统负载的操作时间变成必需的。相比之下,在这个实施例中,可以在无需读取所有数据的情况下以较低系统负载获得文件差别信息,从而得到灵活操作,诸如在白天执行备份。
此外,当文件管理服务器4的负载大于预定阈值时,保留文件备份进程,因此执行到虚拟驱动器5的备份的副作用(诸如错误和性能降低)能得到最小化。
(恢复进程)
在下面解释在这个实施例中的恢复进程。这个实施例中的恢复进程由虚拟驱动器控制器110执行,且当出现文件存取错误时通过参考元数据库210且获得对应于错误文件的备份文件来恢复文件。
参看图6和图7解释这个恢复进程。
在图6中的步骤S400中,文件管理服务器4经由通信控制器150接收来自用户终端2的文件存取请求。接着,执行步骤S401。
在步骤S401中,虚拟驱动器控制器110使用包含在文件存取请求中的目录路径作为关键字来检索用于主虚拟驱动器5a的元数据库210a,且获得匹配关键字的文件信息。虚拟驱动器控制器110使用包含在所获得的文件信息中的物理路径(存储设备6上的路径)存取存储在存储设备6上的物理文件。此处,如果出现文件存取错误,那么执行步骤S402,在其中执行恢复进程。反之,如果没有文件存取错误,那么虚拟驱动器控制器110将所存取的物理文件发送到正请求的用户终端2且完成执行。
在步骤S402中,虚拟驱动器控制器110读取备份状态管理数据库220且检查是否已经备份有错误的文件。如果已经备份,那么执行步骤S404。反之,如果没有备份最新版本,那么执行步骤S403,其中将错误消息发送到正请求的用户终端2且完成执行。
在步骤S404中,虚拟驱动器控制器110读取元数据库210且获得关于已备份的物理文件(备份文件)的数据。具体地说,其使用出现文件存取错误的文件的文件ID作为关键字来检索用于备份虚拟驱动器5b的元数据库210b,且获得备份文件的物理路径。接着,执行步骤S405。
在步骤S405中,检查待恢复的文件的大小是否大于阈值。如果文件大小小于阈值,那么执行步骤S406,其中同步地执行恢复进程。如果文件大小大于或等于阈值,那么执行步骤S408,其中异步地执行恢复进程。
当同步地执行恢复进程时,在步骤S406中,通过基于在步骤S404中获得的备份文件的物理路径来复制备份文件而创建恢复文件。包括存储组7的任何存储设备6都可以是恢复目标;虚拟驱动器控制器110基于诸如每个存储设备6的利用的因素来确定哪个存储设备6存储备份。在恢复之后,其在用于主虚拟驱动器5a的元数据库210a中重写链接信息,从而将引起文件存取错误的虚拟驱动器5上的目录路径(包含在用户终端2在步骤S400中发送的文件存取请求中的虚拟驱动器5上的目录路径)链接到所恢复的物理文件。即,其更新关于有错误的文件的文件信息中的物理路径,从而使物理路径是所恢复的文件的物理路径。接着,执行步骤S407。
在步骤S407中,虚拟驱动器控制器110将所恢复的物理文件发送到正请求的用户终端且完成执行。
相反,当异步地完成恢复时,在步骤S408中,将在步骤S404中获得的物理文件数据发送到用户终端2。此处,由于将此物理文件作为只读发送,故如果来自用户终端2的请求是写入存取,那么发送一个错误。接着,执行步骤S409。
在步骤S409中,在恢复队列中登记关于文件存取错误的文件信息,使得其稍后由异步恢复进程处理。
图7是描绘异步恢复进程的示意图。提供此异步恢复进程,使得当待恢复的文件较大时,可在稍后时间完成恢复进程,从而改进用户响应时间。
在异步恢复进程中,在图7的步骤S500中确定当前时间是否在预定执行时间窗口内,如果它是在时间窗口内,那么执行步骤S501。如果它不在时间窗口内,那么再次执行步骤S500来等待下一个预定执行时间窗口。此处,如同针对备份进程,用于异步恢复进程的执行时间窗口可以由系统管理员任意地设定。接着,执行步骤S501。
在步骤S501中,虚拟驱动器控制器110读取恢复队列。接着,执行步骤S502。
在步骤S502中,检查是否存在数据登记在恢复队列中。如果存在数据登记在恢复队列中,那么执行步骤S502。如果不存在数据登记在恢复队列中,那么再次执行步骤S500。
在步骤S503中,虚拟驱动器控制器110读取元数据库,且使用登记在恢复队列中的数据获得已备份的物理文件数据(备份文件)的物理路径。具体地说,其使用在恢复队列中登记的文件ID作为关键字来检索用于备份虚拟驱动器5b的元数据库210b,且获得备份文件的物理路径。接着,其创建恢复文件,从而使用所获得的物理路径来复制备份文件。包括存储组7的任何存储设备6可以是恢复目标;虚拟驱动器控制器110基于诸如每个存储设备6的利用的因素来确定哪个存储设备6存储备份。在恢复之后,其在用于主虚拟驱动器5a的元数据库210a中重写链接信息,从而将引起文件存取错误的虚拟驱动器5的目录路径(包含在用户终端2在步骤S400中发送的文件存取请求中的虚拟驱动器5上的目录路径)链接到所恢复的物理文件。即,其更新关于有错误的文件的文件信息中的物理路径,从而使物理路径是所恢复的文件的物理路径。在针对在恢复队列上登记的所有数据执行此恢复创建步骤和链接更新步骤之后,再次执行步骤S500。
如上所述,利用在这个实施例中的恢复进程,主虚拟驱动器5a由于物理存储设备6上的文件存取错误的触发而自动地恢复文件,因此文件恢复可以在没有系统管理员的干预下进行。
此外,在文件恢复中,复制备份文件来创建恢复文件,且接着重写元数据库210,因此将到有错误的文件的链接更新成到恢复文件的链接;因此,针对错误恢复进程仅选择有文件存取错误的文件。因此,恢复进程可以较短,从而缩短用户尝试使用有错误的文件的等待时间。此外,由于在恢复期间其他文件不受到影响,故有可能避免对除了尝试存取有错误的文件的用户之外的其他用户的影响。
此处,在以上实施例中,仅仅恢复有错误的文件,但是也可以恢复其他文件。举例来说,万一存储设备6本身发生故障时,可以恢复存储有错误的文件的整个存储设备6。
(主存储恢复进程)
下面将参考图8解释在这个实施例中的主存储恢复进程。
当在包括主存储组7的存储设备6中出现错误时,由存储恢复控制器140执行的在这个实施例中的主存储恢复进程从在有错误的存储设备6中管理的数据的备份数据恢复该数据。
在图8中的步骤S600中,存储恢复控制器140接收存储设备6的强制移除请求。当系统管理员执行存储设备6的移除操作时,发送此强制移除请求。接着,执行步骤601。
在步骤S601中,更新用于主虚拟驱动器5a的元数据库210a,从而使包含在存储设备6中的数据的状态成为可移去的“强制移除进程中”。此处,如果用户尝试存取包含在“强制移除进程中”存储设备6中的数据,那么,或者将备份数据作为仅供参考来发送,或者发送文件存取错误。接着,执行步骤S602。
在步骤S602中,从用于主虚拟驱动器5a的元数据库210a提取在存储设备6中管理的待移除的文件的文件信息。由于此所提取的文件信息包含文件ID,故使用此文件ID获得到备份日期的存取信息。具体地说,使用文件ID作为关键字来检索用于虚拟驱动器5b的元数据库210b,且获得备份文件的物理路径。接着,执行步骤603。
在步骤S603中,将使用备份文件的物理路径获得的备份数据复制到另一个存储设备6,另一个存储设备6组成与待移除的存储设备(即,属于主存储组7的存储设备6中的一个)组成的虚拟驱动器5相同的虚拟驱动器5(主虚拟驱动器5)。
接着,重写用于主虚拟驱动器5a的元数据库210a中的链接信息,使得能存取最近复制到存储设备6的数据。具体地说,重写包含在所复制文件的文件信息中的物理路径,使得其指向最近复制的数据。
在重写用于主虚拟驱动器5a的元数据库210a之后,关闭该数据的状态“强制移除进程中”。接着,主存储恢复进程完成。
如上面所解释,利用在这个实施例中的主存储恢复进程,获得包含在有错误的存储设备6中的数据;将该数据复制到包括主虚拟驱动器5a的另一个存储设备6;且更新元数据库210的链接信息。因此,如果在主存储组7内的特定存储设备6中出现错误,那么主虚拟驱动器5a无需整体恢复,因此通过仅仅从备份恢复存储在出现错误的存储设备6中的文件,可有效地进行恢复(在短时间内)。这使得用户尝试存取有错误的存储设备6的恢复等待时间变短。此外,由于在恢复进程期间其他文件不受到影响,故不影响除了尝试存取有错误的存储设备6的用户之外的用户。
此外,当从服务器移除有错误的存储设备6时,目标文件自动地从备份数据恢复到主虚拟驱动器5a上的自由空间;无需从有错误的存储设备6挽救数据,从而使设备的瞬间移除变得可能。
(备份存储恢复进程)
下面将参考图9解释在这个实施例中的备份存储恢复进程。
由存储恢复控制器140执行在这个实施例中的备份存储恢复进程;当在包括备份存储组8的存储设备6中出现错误时,从主数据恢复由存储设备6管理的数据。
在图9所示的步骤S700中,存储恢复控制器140接收存储设备6的强制移除请求。由于移除存储设备6的由用户操作的触发,发送此强制移除请求。接着,执行步骤S701。
在步骤S701中,更新用于备份虚拟驱动器5b的元数据库210b,因此包含在待移除的存储设备6中的数据的状态变成“强制移除进程中”。此处,当有必要存取包含在“强制移除进程中”存储设备中的数据时,那么,或者将备份数据作为仅供参考来发送,或者发送文件存取错误信息。接着,执行步骤S702。
在步骤S702中,从用于备份虚拟驱动器5b的元数据库210b提取在待移除的存储设备6中管理的文件的文件信息。此处,由于文件ID包含在所提取的文件信息中,故可使用此文件ID获得到主数据的存取信息。具体地说,使用文件ID作为关键字来检索用于主虚拟驱动器5a的元数据库210a,且获得主文件的物理路径。接着,执行步骤S703。
在步骤S703中,将使用主文件的物理路径获得的主数据复制到另一个存储设备6,另一个存储设备6组成与待移除的存储设备(即,属于主存储组8的存储设备6中的一个)组成的虚拟驱动器5相同的虚拟驱动器5(备份虚拟驱动器5b)。
接着,重写在用于备份虚拟驱动器5b的元数据库210b中的链接信息,使得能存取最近复制到存储设备6的数据。具体地说,重写包含在所复制文件的文件信息中的物理路径,使得其指向最近复制的数据。
在重写在用于备份虚拟驱动器5b的元数据库210b之后,关闭该数据的状态“强制移除进程中”。接着,备份存储恢复进程完成。
如上面所解释,利用在这个实施例中的备份存储恢复进程,获得在有错误的存储设备6中包含的数据;将该数据复制到包括备份虚拟驱动器5b的另一个存储设备6;且更新元数据库210的链接信息。因此,如果在备份存储组8内的特定存储设备6中出现错误,那么备份虚拟驱动器5b无需整体恢复,因此通过仅仅从主数据恢复存储在出现错误的存储设备6中的文件,可有效地进行恢复(在短时间内)。这使得用户尝试存取有错误的存储设备6的恢复等待时间变短。此外,由于在恢复进程期间其他文件不受到影响,故不影响除了尝试存取有错误的存储设备6的用户之外的用户。
此外,当从服务器移除有错误的存储设备6时,目标文件自动地从备份数据恢复到备份虚拟驱动器5b上的自由空间;无需从有错误的存储设备6挽救数据,从而使设备的瞬间移除变得可能。
(系统恢复进程)
下面将参考图10解释这个实施例中的系统恢复进程。
由系统初始化控制器130执行在这个实施例中的系统恢复进程。其是如下进程,即当危及主虚拟驱动器5a的元数据库210a全部丢失的错误(例如,无法恢复的系统崩溃或数据库存储故障)出现时,使用备份虚拟驱动器5b(实际上,备份存储组8)中的数据恢复系统。
在图10中的步骤S800中,系统初始化控制器130接收系统恢复请求。响应于用户的启动系统恢复的操作,发送此系统恢复请求。接着,执行步骤S801。
在步骤S801中,初始化主管理功能。具体地说,使用(例如)安装程序重新安装文件管理系统。接着,执行步骤S802。
在步骤S802中,将包含在备份虚拟驱动器5b(备份存储组8)中的备份数据登记到主虚拟驱动器侧。具体地说,使用用于备份虚拟驱动器5b的元数据库210b重新构造用于主虚拟驱动器5a的元数据库210a。更具体地,将元数据库210b中的每个记录(文件信息)利用相同的ID存储在用于主虚拟驱动器5a的元数据库210a中。接着,执行步骤S803。
在步骤S803中,从用于虚拟驱动器5b的元数据库210b提取在备份存储组8中备份的所有数据,且将其登记在恢复队列中。异步地将登记数据复制到主存储组7。此处,随着为了恢复而复制每个文件,重写元数据库210a,使得该文件的文件信息中的物理路径变得与复制目标的物理路径相同。接着,系统恢复进程完成。
如上面所解释,这个实施例中的系统恢复进程使用用于备份驱动器5b的元数据库210b获得备份文件,且复制已备份文件来用于恢复。即,由于能从备份恢复用于主虚拟驱动器5a的元数据库210a,故即使在主虚拟驱动器5a中出现无法恢复的错误(诸如服务器丢失),仍能从备份数据恢复主虚拟驱动器5a的状态。
(变化)
在以上实施例中,假设周期性地执行备份进程,但备份进程能以另一种方式启动。举例来说,当更新文件时,虚拟驱动器控制器110可请求备份控制器120开始备份进程,且备份控制器120可执行由文件更新事件触发的备份进程。在此种类型的配置中,实时备份将是可能的。
附图标记说明
1服务器计算机
2用户终端
3通信网络
4文件管理服务器
5虚拟驱动器
5a主虚拟驱动器
5b备份虚拟驱动器
6存储装置
7主存储组
8备份存储组
110虚拟存储控制器
120备份存储控制器
130系统初始化控制器
140存储恢复控制器
150网络控制器
210元数据库
220备份状态管理数据库
230操作历史管理数据库

Claims (14)

1.一种控制多个存储设备的文件管理系统,其中,所述文件管理系统包括:
虚拟驱动器控制器,其控制由所述存储设备的任意集合组成的虚拟驱动器:
元数据库,其包含用来使所述虚拟驱动器上的虚拟文件与存储在所述存储设备中的物理文件相关联的信息;
由用户操作的主虚拟驱动器,被所述虚拟驱动器控制器所控制;
备份所述主虚拟驱动器中的数据的备份虚拟驱动器,被所述虚拟驱动器控制器所控制;
备份控制器,其管理存储在所述虚拟驱动器中的文件的备份;以及
备份状态管理数据库,其用来管理由所述备份控制器执行的备份进程,其中:
所述虚拟驱动器控制器将关于已更新文件的信息登记到所述备份状态管理数据库中;且
参考所述备份状态管理数据库和所述元数据库,所述备份控制器将存储在所述主虚拟驱动器上的文件的备份创建在备份虚拟驱动器上执行备份;
其中组成所述虚拟驱动器包括:组成由用户操作的主虚拟驱动器;以及组成备份所述主虚拟驱动器中的数据的备份虚拟驱动器。
2.如权利要求1所述的文件管理系统,其中:
所述备份控制器通过由文件更新事件触发而执行备份。
3.如权利要求1或2所述的文件管理系统,其中:
所述备份控制器监控组成所述文件管理系统的文件管理服务器的负载,且当所述负载大于预定阈值时延迟备份所述文件。
4.如权利要求1或2所述的文件管理系统,其中:
当出现文件存取错误时,参考所述元数据库,所述虚拟驱动器控制器通过获得与有错误的文件相对应的备份文件来恢复文件。
5.如权利要求4所述的文件管理系统,其中:
所述虚拟驱动器控制器的恢复包含:所述备份控制器通过复制所述备份文件来创建恢复文件,以及所述虚拟驱动器控制器通过重写所述元数据库来将到有错误的所述文件的链接更新成到所述恢复文件的链接。
6.如权利要求5所述的文件管理系统,其进一步包括:
存储恢复控制器,其执行存储恢复来恢复在出现错误的存储设备中管理的数据,其中
在执行存储恢复时,所述存储恢复控制器获得包含在出现所述错误的所述存储设备中的所述数据的复制数据,
将所述复制数据复制到另一个存储设备,所述另一个存储设备组成与包含具有所述错误的所述存储设备的所述虚拟驱动器相同的虚拟驱动器,且
将链接信息重写在所述元数据库中。
7.如权利要求1或2所述的文件管理系统,其进一步包括:
系统初始化控制器,其执行系统恢复进程来从备份数据恢复系统,其中:
所述元数据库包括主元数据库和备份元数据库,
在执行所述系统恢复进程时,所述系统初始化控制器使用所述备份元数据库来获得已备份文件,复制所述已备份文件来用于恢复。
8.一种控制多个存储设备的文件管理方法,其中,所述文件管理方法包括:
用所述存储设备的任意集合组成虚拟驱动器;
其中组成所述虚拟驱动器包括:组成由用户操作的主虚拟驱动器;以及组成备份所述主虚拟驱动器中的数据的备份虚拟驱动器;
将所述虚拟驱动器上的虚拟文件和存储在所述存储设备中的物理文件登记在元数据库中,使所述虚拟文件与所述物理文件相关联;
将关于已更新文件的信息登记在备份状态管理数据库中;以及
参考所述备份状态管理数据库和所述元数据库将存储在所述主虚拟驱动器上的文件的备份创建在备份虚拟驱动器上来执行文件备份。
9.如权利要求8所述的文件管理方法,其中:
通过由文件更新事件触发而执行文件备份。
10.如权利要求8或9所述的文件管理方法,其中:
当包含所述文件管理系统的文件管理服务器的负载大于预定阈值时,延迟备份所述文件。
11.如权利要求8或9所述的文件管理方法,其进一步包括:
当出现文件存取错误时,参考所述元数据库,通过获得与有错误的所述文件相对应的备份文件来恢复文件。
12.如权利要求11所述的文件管理方法,其中:
恢复所述文件进一步包括:通过复制所述备份文件来创建恢复文件,并且,通过重写所述元数据库来将到有错误的所述文件的链接更新成到所述恢复文件的链接。
13.如权利要求12所述的文件管理方法,其进一步包括:
接受执行存储恢复进程来恢复在出现错误的存储设备中管理的数据;以及
当在所述存储恢复进程中获得在有错误的所述存储设备中包含的数据、并将所述数据复制到另一个存储设备时,在所述元数据库中重写链接信息,其中,所述另一个存储设备组成与包含具有所述错误的所述存储设备的所述虚拟驱动器相同的虚拟驱动器。
14.如权利要求8或9所述的文件管理方法,提供主元数据库和备份数据库作为元数据库,其进一步包括:
接受执行系统恢复进程来从备份数据恢复系统;
在所述系统恢复进程中,通过使用所述备份元数据库来获得已备份文件,复制所述已备份文件来用于恢复。
CN201280043462.0A 2011-09-07 2012-08-20 文件管理系统和文件管理方法 Active CN103782279B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2011-194796 2011-09-07
JP2011194796 2011-09-07
PCT/JP2012/071013 WO2013035517A1 (ja) 2011-09-07 2012-08-20 ファイル管理システム及びファイル管理方法

Publications (2)

Publication Number Publication Date
CN103782279A CN103782279A (zh) 2014-05-07
CN103782279B true CN103782279B (zh) 2016-02-24

Family

ID=47831967

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280043462.0A Active CN103782279B (zh) 2011-09-07 2012-08-20 文件管理系统和文件管理方法

Country Status (7)

Country Link
US (1) US9323624B2 (zh)
EP (1) EP2755141B1 (zh)
JP (1) JP5315460B1 (zh)
KR (1) KR101966339B1 (zh)
CN (1) CN103782279B (zh)
CA (1) CA2841104C (zh)
WO (1) WO2013035517A1 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101966339B1 (ko) 2011-09-07 2019-04-08 오레가 인크. 파일 관리 시스템 및 파일 관리 방법
US8924443B2 (en) * 2012-10-05 2014-12-30 Gary Robin Maze Document management systems and methods
US20140337296A1 (en) * 2013-05-10 2014-11-13 Bryan Knight Techniques to recover files in a storage network
US9471587B2 (en) * 2013-06-07 2016-10-18 Apple Inc. Remote enumeration of a directory
US9807161B2 (en) * 2013-09-16 2017-10-31 Axis Ab Distributed events in an access control system
CN104679772B (zh) * 2013-11-29 2019-01-25 深圳市腾讯计算机系统有限公司 分布式数据仓库中删除文件的方法、装置、设备及系统
JP6305110B2 (ja) * 2014-02-28 2018-04-04 キヤノン株式会社 撮像装置、及び撮像システム
CN104239166B (zh) * 2014-09-11 2017-10-24 武汉噢易云计算股份有限公司 一种对运行中虚拟机实现文件备份的方法
US9367401B2 (en) * 2014-09-30 2016-06-14 Storagecraft Technology Corporation Utilizing an incremental backup in a decremental backup system
JP6450598B2 (ja) * 2015-01-19 2019-01-09 東芝メモリ株式会社 情報処理装置、情報処理方法およびプログラム
KR102024573B1 (ko) * 2015-12-08 2019-09-25 한국전자통신연구원 시스템의 설정 유실 방지를 위한 시스템 설정 관리 장치 및 방법
CN106445730B (zh) * 2016-07-22 2019-12-03 平安科技(深圳)有限公司 一种提高虚拟机性能的方法和终端
CN106445733B (zh) * 2016-08-30 2019-07-02 广州鼎甲计算机科技有限公司 一种基于kvm虚拟化的无代理模式备份方法和系统
CN106776141B (zh) * 2016-12-22 2019-11-05 中国工程物理研究院总体工程研究所 一种安全增强的数据备份与恢复系统
CN108733515A (zh) * 2018-05-24 2018-11-02 广州酷狗计算机科技有限公司 文件备份的调度方法、文件备份方法、装置及存储介质
CN109445983A (zh) * 2018-08-28 2019-03-08 天阳宏业科技股份有限公司 文件备份方法及文件备份系统
JP7164176B2 (ja) * 2018-12-14 2022-11-01 アップデータ株式会社 仮想ファイル処理システム及び仮想ファイル処理プログラム
JP2020095588A (ja) * 2018-12-14 2020-06-18 株式会社アール・アイ 仮想ファイル処理システム及び仮想ファイル処理プログラム
CN109819034A (zh) * 2019-01-25 2019-05-28 平安科技(深圳)有限公司 文件上传方法、装置、终端及存储介质
US11146556B2 (en) * 2019-03-11 2021-10-12 Parablu Inc. Methods and systems for contiguous utilization of individual end-user-based cloud-storage subscriptions
CN110806953A (zh) * 2019-11-07 2020-02-18 中国联合网络通信集团有限公司 一种备份方法和装置
JP7102455B2 (ja) * 2020-03-26 2022-07-19 株式会社日立製作所 ファイルストレージシステム及びファイルストレージシステムの管理方法
JP2022051236A (ja) 2020-09-18 2022-03-31 富士通株式会社 バックアップ管理装置、バックアップ管理方法及び情報処理システム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998024025A1 (en) * 1996-11-27 1998-06-04 1Vision Software, L.L.C. File directory and file navigation system
CN101546295A (zh) * 2008-03-24 2009-09-30 上海梅山钢铁股份有限公司 基于计算机硬盘分区的数据备份和恢复方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6567889B1 (en) * 1997-12-19 2003-05-20 Lsi Logic Corporation Apparatus and method to provide virtual solid state disk in cache memory in a storage controller
US7107395B1 (en) * 1998-12-31 2006-09-12 Emc Corporation Apparatus and methods for operating a computer storage system
JP2005157949A (ja) * 2003-11-28 2005-06-16 Toshiba Corp 情報処理装置
JP2005196602A (ja) * 2004-01-09 2005-07-21 Hitachi Ltd 無共有型データベース管理システムにおけるシステム構成変更方法
US7720817B2 (en) * 2004-02-04 2010-05-18 Netapp, Inc. Method and system for browsing objects on a protected volume in a continuous data protection system
JP2007199756A (ja) * 2006-01-23 2007-08-09 Hitachi Ltd 計算機システム及びデータ複製方法
JP4927408B2 (ja) * 2006-01-25 2012-05-09 株式会社日立製作所 記憶システム及びそのデータ復元方法
JP5108667B2 (ja) * 2008-07-23 2012-12-26 株式会社日立製作所 リモートコピーシステム、及びリモートサイトの省電力化方法
JP5234348B2 (ja) * 2008-11-21 2013-07-10 株式会社日立製作所 オンラインボリュームと性能/障害独立かつ容量効率の高いスナップショットを実現するストレージシステム及び方法
JP2010152781A (ja) * 2008-12-26 2010-07-08 Fujitsu Ltd バックアップサーバ装置、バックアップ/リストアプログラム、およびバックアップ/リストア方法
JP2010213770A (ja) 2009-03-13 2010-09-30 Joyco Systems Corp 遊技機の個体監視方法
US8452930B2 (en) * 2009-03-27 2013-05-28 Hitachi, Ltd. Methods and apparatus for backup and restore of thin provisioning volume
CN101615146B (zh) * 2009-07-08 2011-06-01 中国科学院计算技术研究所 磁盘阵列在线重构系统及方法
EP3474138B1 (en) * 2009-10-12 2023-09-13 Veeam Software Ag Item-level restoration and verification of image level backups
JP2011129039A (ja) 2009-12-21 2011-06-30 Mitsubishi Electric Corp Raidシステム
CN102073560A (zh) * 2011-01-17 2011-05-25 北京深思洛克软件技术股份有限公司 一种数据备份方法和装置
KR101966339B1 (ko) 2011-09-07 2019-04-08 오레가 인크. 파일 관리 시스템 및 파일 관리 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1998024025A1 (en) * 1996-11-27 1998-06-04 1Vision Software, L.L.C. File directory and file navigation system
CN101546295A (zh) * 2008-03-24 2009-09-30 上海梅山钢铁股份有限公司 基于计算机硬盘分区的数据备份和恢复方法

Also Published As

Publication number Publication date
CA2841104A1 (en) 2013-03-14
US9323624B2 (en) 2016-04-26
EP2755141A4 (en) 2014-09-10
JP5315460B1 (ja) 2013-10-16
KR101966339B1 (ko) 2019-04-08
WO2013035517A1 (ja) 2013-03-14
KR20140058444A (ko) 2014-05-14
EP2755141B1 (en) 2015-05-27
JPWO2013035517A1 (ja) 2015-03-23
CA2841104C (en) 2019-06-04
US20140136485A1 (en) 2014-05-15
CN103782279A (zh) 2014-05-07
EP2755141A1 (en) 2014-07-16

Similar Documents

Publication Publication Date Title
CN103782279B (zh) 文件管理系统和文件管理方法
US11716385B2 (en) Utilizing cloud-based storage systems to support synchronous replication of a dataset
US11086555B1 (en) Synchronously replicating datasets
US20210019067A1 (en) Data deduplication across storage systems
US10467246B2 (en) Content-based replication of data in scale out system
US9804934B1 (en) Production recovery using a point in time snapshot
US9727430B2 (en) Failure recovery method in information processing system and information processing system
US20220091771A1 (en) Moving Data Between Tiers In A Multi-Tiered, Cloud-Based Storage System
US9501231B2 (en) Storage system and storage control method
EP2161661B1 (en) Computer system and backup method therefor
US20050188248A1 (en) Scalable storage architecture
CN103765406A (zh) 用于远程更新执行进程的方法和设备
US20020069324A1 (en) Scalable storage architecture
WO2010064328A1 (en) Information processing system and method of acquiring backup in an information processing system
CN103593387A (zh) 在多个阶段高效地存储和检索数据和元数据的方法和系统
AU692316B2 (en) Recovery method for a high availability data processing system
US11221928B2 (en) Methods for cache rewarming in a failover domain and devices thereof
US20230353635A1 (en) Replication Utilizing Cloud-Based Storage Systems

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20201118

Address after: Shinjuku 2-4-3, Shinjuku, Tokyo, Japan

Patentee after: SOLITON SYSTEMS Kabushiki Kaisha

Address before: 6 / F, Fuji and Edo kawabashi building, 347, Yamaguchi, Shinjuku, Tokyo, Japan

Patentee before: OREGA Inc.

TR01 Transfer of patent right