WO2013035517A1 - ファイル管理システム及びファイル管理方法 - Google Patents

ファイル管理システム及びファイル管理方法 Download PDF

Info

Publication number
WO2013035517A1
WO2013035517A1 PCT/JP2012/071013 JP2012071013W WO2013035517A1 WO 2013035517 A1 WO2013035517 A1 WO 2013035517A1 JP 2012071013 W JP2012071013 W JP 2012071013W WO 2013035517 A1 WO2013035517 A1 WO 2013035517A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
backup
virtual drive
storage
control unit
Prior art date
Application number
PCT/JP2012/071013
Other languages
English (en)
French (fr)
Inventor
修 三好
英一郎 塩田
藤田 浩之
Original Assignee
株式会社 オレガ
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 株式会社 オレガ filed Critical 株式会社 オレガ
Priority to JP2012547191A priority Critical patent/JP5315460B1/ja
Priority to CN201280043462.0A priority patent/CN103782279B/zh
Priority to US14/130,642 priority patent/US9323624B2/en
Priority to CA2841104A priority patent/CA2841104C/en
Priority to EP12830182.7A priority patent/EP2755141B1/en
Priority to KR1020137033938A priority patent/KR101966339B1/ko
Publication of WO2013035517A1 publication Critical patent/WO2013035517A1/ja

Links

Images

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

Definitions

  • the present invention relates to a file management system and a file management method for controlling a plurality of storages, and more particularly to a file management system and a file management method characterized by backup processing.
  • file servers are widely used as a method of storing computer files via a communication network.
  • the file server is configured such that a folder tree is configured on the file system of the server OS, and the user is authorized to view the drive route or a specific folder on the network.
  • a user who shares a file or folder browses a file or the like that is set to be shared over a network from a terminal (for example, a PC or a mobile phone), and selects any file based on the management authority set by the file server system administrator. Can be opened, closed, newly created, moved, renamed, duplicated, etc.
  • the user who operates the file or folder may be a human or a computer system such as a machine or software-aware.
  • RAID Redundant Arrays of Inexpensive Disk
  • RAID is a type of technology that allows multiple hard disks to be recognized by the OS as a single virtual hard disk, and is often used mainly to improve reliability. Further, in order to guarantee high security while guaranteeing service continuity, a combination of this RAID and backup software is usually used.
  • the virtualized file system of RAID cannot be distinguished from a normal file system when viewed from the backup software, even if the RAID file system stores the access history and meta information in the database.
  • the database information cannot be used for backup processing. For this reason, the backup software is forced to perform backup processing similar to a normal file system and performs inefficient control.
  • the present invention integrates a plurality of storage devices in the same manner as RAID to configure a virtual file system, and uses a virtual file system meta database from the backup processing side to efficiently backup. It is an object of the present invention to provide a file management system and a file management method capable of performing the above.
  • the present invention has been made to solve the above-described problems, and is characterized by the following.
  • the file management system is a file management system that controls a plurality of storages, and a virtual drive control unit that controls a virtual drive configured by an arbitrary storage group of the plurality of storages; , A meta database including information for associating a virtual file on the virtual drive with a physical file stored in the storage, a backup control unit that manages backup of the file stored in the virtual drive, and the backup control A backup status management database used for backup management by a storage unit, the virtual drive control unit registers updated file information in the backup status management database, and the backup control unit stores the backup status Management day Characterized in that to back up the file by referring to the base and the metadata database.
  • the backup control unit executes backup by using a file update as a trigger.
  • the virtual drive control unit controls a master virtual drive that is a user's operation target and a backup virtual drive for backing up data of the master virtual drive.
  • the backup control unit monitors the load of the file management server constituting the file management system, and waits for backup of the file when the load exceeds a preset allowable value.
  • the virtual drive control unit obtains a backup file corresponding to the error target file by referring to the meta database and restores the file.
  • the restoration of the file is performed by the backup control unit copying the backup file to create a restoration file, and the virtual drive control unit rewriting the metadata database to restore the link to the error target file. And a process of updating to a link to a file.
  • the storage recovery control unit further executes a storage recovery process for restoring the data managed by the failed storage, and the storage recovery control unit adds the storage recovery process to the failed storage in the storage recovery process.
  • Copy data of included data is acquired, the copy data is copied to another storage configuring the same virtual drive as the failed storage, and the link information of the meta database is rewritten.
  • the meta-database includes a master meta-database and a backup meta-database, and further includes a system initialization control unit that executes a system recovery process for restoring a system from backup data, and the system initialization control unit Is characterized in that a backed-up file is obtained based on the backup metadatabase, and the backed-up file is restored and copied.
  • the file management method is a file management method for controlling a plurality of storages, comprising: configuring a virtual drive with an arbitrary storage group of the plurality of storages; The virtual file and the physical file stored in the storage are associated with each other and registered in the meta database, the updated file information is registered in the backup state management database, the backup state management database, and the meta database. And a step of backing up a file with reference to.
  • the backup of the file is executed when the file is updated as a trigger.
  • the step of configuring the virtual drive includes a step of configuring a master virtual drive that is a user's operation target, and a step of configuring a backup virtual drive for backing up data of the master virtual drive.
  • the backup of the file is delayed when the load of the file management server constituting the file management system exceeds a preset allowable value.
  • a file access error when a file access error occurs, it includes a step of referring to the meta database and obtaining a backup file corresponding to the error target file and restoring the file.
  • the restoration of the file includes a process of creating a restoration file by copying the backup file, and a process of rewriting the meta database and updating a link to the error target file to a link to the restoration file. It is characterized by including.
  • the meta database includes a master meta database and a backup meta database, and accepts execution of a system recovery process for restoring a system from backup data.
  • the backup meta database Obtaining a backed up file based on a database, and restoring and copying the backed up file.
  • differential management is performed in real time using the backup status management database, it is possible to detect update files simply by referring to the backup status management database. That is, since it is not necessary to execute a difference detection process for comparison with past backup data that has been acquired when performing backup, the processing steps can be shortened.
  • all the data was read by the difference detection process described above, so it was necessary to avoid the business hours when the system load was low and perform "timed execution" at night.
  • the present invention since the difference can be detected with a low load without reading all data, a highly flexible operation such as performing backup processing during business hours becomes possible.
  • the inventions according to claims 3 and 11 are as described above, and include a master virtual drive that is a user's operation target and a backup virtual drive for backing up data of the master virtual drive.
  • a master virtual drive that is a user's operation target
  • a backup virtual drive for backing up data of the master virtual drive.
  • the restoration of the file includes a process of creating a restoration file by copying the backup file, and rewriting the meta database to the error target file. And updating the link to the link to the restored file. For this reason, since the virtual drive can be transparently accessed during the execution of the recovery process, it is possible to prevent the end user other than the user who attempted to access the error file from being affected.
  • the inventions of claims 7 and 15 are as described above, and execute storage recovery processing for restoring data managed in the storage in which the failure has occurred.
  • Copy data of the data included in the generated storage is acquired, and the copy data is copied to another storage that configures the same virtual drive as the failed storage, and the link information of the meta database is rewritten. Therefore, when a failure occurs in a specific storage in the storage group that constitutes the virtual drive, only the files saved in the failed storage can be restored from the backup without restoring the entire virtual drive.
  • the target files can be limited and can be efficiently recovered in a short time. This shortens the recovery waiting time of the user who has attempted to access the storage in which the failure has occurred.
  • the virtual drive can be transparently accessed during the execution of the recovery process, it is possible to prevent the end user other than the user who tried to access the storage in which the failure occurred from being affected.
  • the target file is automatically restored from the backup data to the free space of the virtual drive. There is no need to salvage data from the failed storage, and the storage can be immediately detached from the virtual drive.
  • the invention described in claims 8 and 16 is as described above, and includes a master meta database and a backup meta database as the meta database, and executes a system recovery process for restoring the system from the backup data.
  • the system recovery process the backed up file is obtained based on the backup meta database, and the backed up file is restored and copied.
  • the master metadata database that records the configuration information of the virtual drive can be restored from the backup. The state of the virtual drive can be restored from.
  • the file management system controls a plurality of storages 6.
  • This file management system is used for file management via a communication network 3, for example, as shown in FIG.
  • a communication network 3 for example, as shown in FIG.
  • at least one server computer 1 and user terminal 2 are connected via a communication network 3 to a file management server 4 that provides a file management system.
  • a plurality of storages 6 are connected to the file management server 4.
  • the file management server 4 provides the virtual drive 5 function by formatting and mounting the plurality of storages 6 and allowing the files in the plurality of storages 6 to be referenced in a virtual folder tree configuration.
  • two virtual drives 5 are provided as a virtual drive 5 including a master virtual drive 5a and a backup virtual drive 5b.
  • the master virtual drive 5a is a drive that is opened to the user via the communication network 3 so as to be operable by the user.
  • the backup virtual drive 5b is a backup of the master virtual drive 5a, and holds a copy of the data of the master virtual drive 5a. Since this backup virtual drive 5b is basically not a user operation target, it is not a direct operation target.
  • a user accessing the file management server 4 via the communication network 3 is unaware of which storage 6 the physical file is included in.
  • a file can be accessed by designating a file path on the virtual drive 5 (specifically, the master virtual drive 5a).
  • the file management server 4 receives a request for access to the virtual drive 5 from the user, the file management server 4 returns a response corresponding to the request to the user.
  • the description will be made on the assumption that the storage 6 is a hard disk.
  • the storage 6 is not limited to a hard disk, but a permanent state such as an SSD (Solid State Drive) or a USB-connected flash memory. It may be a memory device, NAS (Network Attached Storage) or DAS (Direct Attached Storage) connected via Ethernet, or SAN (Storage Area Network) via a fiber channel line. It may be a cloud storage service on the Internet.
  • FIG. 2 is a block diagram showing the configuration of the file management system.
  • a plurality of storages 6 are connected to the file management server 4, and in this embodiment, six storages 6 of storages 6a, 6b, 6c, 6d, 6e, and 6f are connected. ing. Of these storages, the three storages 6a, 6b, and 6c are assigned to the master storage group 7, and the three storages 6d, 6e, and 6f are assigned as the backup storage group 8. ing.
  • the master storage group 7 constitutes a master virtual drive 5a that is a user operation target
  • the backup storage group 8 constitutes a backup virtual drive 5b for backing up the data of the master virtual drive 5a.
  • the master virtual drive 5a and the backup virtual drive 5b are controlled by a virtual drive control unit 110 described later.
  • the backup virtual drive 5b since the master virtual drive 5a and the backup virtual drive 5b are controlled by the same type of virtual drive 5, if the backup virtual drive 5b is materialized (mounted), the backup data is stored. It is configured so that it can be restored immediately and provided to the user.
  • the configuration of the virtual drive 5 described above is merely an example, and the configuration of the virtual drive 5 can be freely set by the administrator of the file management server 4.
  • a plurality of master virtual drives 5a and backup virtual drives 5b can be provided, or the number of storages 6 can be increased or decreased to an arbitrary number.
  • the storage area of the storage 6 allocated to the virtual drive 5 can be set to an arbitrary size, only a part of the storage area of the storage 6 may be allocated to the specific virtual drive 5. For this reason, it is possible to allocate a part of the same storage 6 to the master virtual drive 5a and to allocate other areas to the backup virtual drive 5b. Since the master and the backup may become unusable at the same time, the storage 6 allocated to the master virtual drive 5a and the storage 6 allocated to the backup virtual drive 5b should be provided separately.
  • the file management server 4 controls the storage 6 connected in this way. As shown in FIG. 2, the virtual drive control unit 110, the backup control unit 120, the system initialization control unit 130, and the storage recovery control unit 140, a network control unit 150, a meta database 210, a backup status management database 220, and an operation history management database 230.
  • the file management server 4 is described on the assumption that it is a single server.
  • the control unit 140, the network control unit 150, the meta database 210, the backup status management database 220, and the operation history management database 230 may be distributed in a plurality of file management servers 4 and communicate with each other.
  • a certain file management server 4 manages the master virtual drive 5a
  • another file management server 4 manages the backup virtual drive 5b that backs up the master virtual drive 5a, and communicates with each other. It is good.
  • the virtual drive control unit 110 is for controlling the master virtual drive 5a and the backup virtual drive 5b.
  • the virtual drive control unit 110 When the virtual drive control unit 110 receives a file access request from the user, the virtual drive control unit 110 searches for and transmits a physical file in the storage 6 in response to the file access request. When a file update request is received from the user, the file is updated and its update history is registered in the operation history management database 230. Further, when a file access error occurs, recovery processing described later is executed using the backed up file.
  • the backup control unit 120 is for managing backup of files stored in the master virtual drive 5a.
  • the backup control unit 120 creates backups of files stored in the master virtual drive 5a in the backup virtual drive 5b by periodically executing backup processing.
  • the system initialization control unit 130 is for executing system initialization.
  • system initialization control unit 130 constructs a new file management system
  • system initialization control unit 130 executes system initialization according to the settings of the system administrator. Further, the system initialization control unit 130 executes a system recovery process capable of restoring the system from the backup data when a failure that cannot be autonomously recovered occurs in the master virtual drive 5a (such as server loss).
  • the storage recovery control unit 140 is for executing a storage recovery process for restoring data managed in the storage 6 in which a failure has occurred.
  • storage recovery processing when the failed storage 6 is disconnected, the same data (backup data or original data of the backup) stored in the storage 6 is copied to another normal storage 6 To do. By executing this storage recovery process, even if the storage 6 constituting the virtual drive 5 is disconnected, data redundancy is automatically secured.
  • Network control unit 150 The network control unit 150 is for controlling input / output of files managed by the virtual drive 5.
  • the network control unit 150 receives a file access request from the outside of the communication network 3 and transmits the file access request to the virtual drive control unit 110, and executes file transmission to the outside of the communication network 3 in accordance with a command from the virtual drive control unit 110. .
  • the meta database 210 is a database including information for associating a virtual file on the virtual drive 5 with a physical file stored in the storage 6.
  • the meta database 210 stores information such as a file ID, a virtual path (path on the virtual drive 5), a physical path (path on the storage 6), a file name, a file size, and an update date and time. , Hold for each file.
  • two metadatabases 210a for the master virtual drive 5a and a metadatabase 210b for the backup virtual drive 5b are provided as the metadatabase 210.
  • the meta database 210a for the master virtual drive 5a is for managing files in the master virtual drive 5a, and a path on the master virtual drive 5a is registered as a virtual path for each file information. In addition, a path on the master storage group 7 is registered as a physical path of each file information.
  • the meta database 210b for the backup virtual drive 5b is for managing files in the backup virtual drive 5b, and a path on the backup virtual drive 5b is registered as a virtual path of each file information. In addition, a path on the backup storage group 8 is registered as a physical path of each file information.
  • the meta database 210a for the master virtual drive 5a and the meta database 210b for the backup virtual drive 5b are linked by a file ID, thereby associating the master data with the backup data. For example, if there is a specific file to which a specific file ID (eg, “1”) is assigned in the meta database 210a for the master virtual drive 5a, the specific file ID (in the meta database 210b for the backup virtual drive 5b) A file to which “1”) is allocated is backup data of the specific file. For this reason, when it is desired to obtain a backup file corresponding to a specific master file, the meta database 210b for the backup virtual drive 5b may be searched based on the file ID of the specific master file. Similarly, when it is desired to acquire a master file corresponding to a specific backup file, the meta database 210a for the master virtual drive 5a may be searched based on the file ID of the specific backup file.
  • a specific file ID e.g, “1”
  • the data held by the meta database 210 is not limited to the above, and may include data such as creation date / time, access date / time, file attribute, access right information, and the like.
  • the backup status management database 220 is a management database used for managing backups by the backup control unit 120.
  • the backup control unit 120 By registering an unbackup file in the backup status management database 220, the backup control unit 120 refers to the registered information, and the necessary backup is executed.
  • the operation history management database 230 is for managing a file operation history by a user.
  • the virtual drive control unit 110 when the virtual drive control unit 110 updates a file, the update history is registered in the operation history management database 230. Then, the virtual drive control unit 110 periodically checks the operation history management database 230 and registers files that need to be backed up in the backup status management database 220. Thus, only the updated file is registered as a backup target.
  • File access processing First, file access processing in the present embodiment will be described. In this description, a case where any one of the user terminals 2 accesses a file stored on the virtual drive 5 in FIG. 1 is taken as an example.
  • the file management server 4 receives a file access request from the user terminal 2 via the communication network 3.
  • the file is specified using a directory path on the virtual drive 5 (for example, “V: ⁇ SomeFolder ⁇ file_a”).
  • the virtual drive control unit 110 accepts this file access request via the network control unit 150.
  • the virtual drive control unit 110 searches the meta database 210a of the master virtual drive 5a using the received directory path (V: ⁇ SomeFolder ⁇ file_a) on the virtual drive 5 as a key, and acquires file information that matches the search key.
  • the virtual drive control unit 110 reads a physical file stored on the storage 6 based on a physical path (path on the storage 6) included in the acquired file information, and passes through the network control unit 150 and the communication network 3. Then, the file is transmitted to the user terminal 2.
  • the file update process in the present embodiment is executed by the virtual drive control unit 110, and is executed when a file update request from the user terminal 2 is received via the communication network 3.
  • step S100 shown in FIG. 3 the file management server 4 receives data transmitted from the user terminal 2 via the network control unit 150.
  • This data includes the binary data of the updated file and the directory path on the virtual drive 5 (for example, “V: ⁇ SomeFolder ⁇ file_a”). Then, the process proceeds to step S101.
  • step S101 the virtual drive control unit 110 searches the meta database 210a of the master virtual drive 5a using the received directory path (V: ⁇ SomeFolder ⁇ file_a) on the virtual drive 5 as a key, and matches the search key. Get file information.
  • the virtual path (path on the virtual drive 5) included in the acquired file information has the same value as the directory path transmitted by the user terminal 2, the virtual drive control unit 110 overwrites the file with the request from the user terminal 2 It is determined that the update is made, and the physical file stored in the path on the storage 6 is overwritten and updated with new binary data transmitted by the user terminal 2. Then, the process proceeds to step S102.
  • step S102 the file management server 4 registers the file ID of the updated file in the operation history management database 230. Then, the process proceeds to step S103.
  • step S103 a file update completion notification is transmitted to the user terminal 2 via the network control unit 150 in order to notify the user that the file update has been completed. Then, the file update process is completed.
  • the backup registration process in this embodiment is executed by the virtual drive control unit 110 and is a process for registering a backup target file.
  • step S200 shown in FIG. 4 the virtual drive control unit 110 registers all files under the management of the master virtual drive 5a in the backup state management database 220 as unbacked up. That is, since no backup exists in the initial state, all files are registered as backup targets in order to execute a full backup. Then, the process proceeds to step S201.
  • step S201 the virtual drive control unit 110 waits until the regular processing standby time. Then, the process proceeds to step S202.
  • step S202 the regular backup registration is executed when the regular processing standby time has elapsed.
  • the virtual drive control unit 110 acquires the file ID registered in the operation history management database 230, and registers or updates the data corresponding to the file ID on the backup status management database 220 as “not backed up”. Then, the process returns to step S201, and waits until the regular processing standby time elapses again (that is, until the next regular execution).
  • the backup process in the present embodiment is executed by the backup control unit 120, and is a process periodically executed in a predetermined periodic process execution time zone set in advance.
  • the regular processing execution time zone can be arbitrarily set by a system administrator or the like.
  • the backup processing can be executed by specifying a specific time on a specific day of the week (such as 24:00 to 5:00 in the morning on weekdays). . All time zones can also be specified as the periodic processing execution time zone. In this case, the backup processing is always running, so that backup can be executed in real time.
  • step S300 shown in FIG. 5 it is checked whether it is a periodic processing execution time zone. If it is the periodic process execution time zone, the process proceeds to step S301. On the other hand, if it is not the regular process execution time zone, the process returns to step S300 and waits until the regular process execution time zone.
  • step S301 the backup status management database 220 is referred to and it is confirmed whether there is a file registered as an unbackup. If there is a file registered as a non-backup, the process proceeds to step S302. On the other hand, if there is no file registered as unbacked up, the process returns to step S300.
  • step S302 the backup control unit 120 monitors the load of the file management server 4 (for example, CPU usage rate, memory usage, disk I / O, network I / O, or a combination thereof), and It is checked whether or not a set allowable value of each parameter (for example, CPU usage rate 50%, memory usage 1 GB, disk I / O 10 Mbps, network I / O 10 Mbps, etc.) is exceeded. If the allowable value is exceeded, the process returns to step S300. On the other hand, if the allowable value is not exceeded, the process proceeds to step S303.
  • the file management server 4 for example, CPU usage rate, memory usage, disk I / O, network I / O, or a combination thereof.
  • step S303 the backup control unit 120 searches the meta database 210a of the master virtual drive 5a using the information (file ID, etc.) of the file registered as non-backup in the backup status management database 220 and registers it as the non-backup.
  • the link information (such as URL) for accessing the physical file corresponding to the file is acquired. Then, the process proceeds to step S304.
  • step S304 the backup control unit 120 accesses the physical file based on the link information acquired in step S303, and creates a backup of the physical file.
  • the backup storage destination is any one of the storages 6 constituting the backup storage group 8, and which storage 6 is stored is determined by the virtual drive control unit 110 in consideration of the usage status of the storage 6. Then, the process proceeds to step S305.
  • step S305 the backup control unit 120 notifies the virtual drive control unit 110 that the backup has been completed.
  • the file ID of the file that has been backed up is notified.
  • the virtual drive control unit 110 acquires data related to the file that has been backed up on the backup status management database 220 using the file ID as a key, and changes the status of the data from “not backed up” to “ Update to “Backup Complete”. Further, the virtual drive control unit 110 updates the meta database 210b of the backup virtual drive 5b in order to associate the backup source file with the backup destination file.
  • the data of the notified file ID does not exist in the meta database 210b of the backup virtual drive 5b (in the case of the first backup)
  • data is newly created with the file ID and the meta data of the backup virtual drive 5b is created.
  • the data of the notified file ID already exists in the meta database 210b of the backup virtual drive 5b (in the case of backup by overwriting)
  • the physical path of the data is rewritten as necessary. If the physical path has not been changed, it is not necessary to rewrite the physical path.
  • step S300 the process returns to step S300, and this operation is repeated until the regular process execution time period ends.
  • the backup process is continued as long as there is an unbacked file in the regular process execution time zone.
  • files are backed up with reference to the backup status management database 220 and the meta database 210, so the meta database 210 of the virtual file system is also used from the backup processing side.
  • backup can be performed efficiently.
  • differential management is performed in real time in the backup status management database 220, an update file can be detected simply by referring to the backup status management database 220. That is, since it is not necessary to execute a difference detection process for comparison with past backup data that has been acquired when performing backup, the processing steps can be shortened. When using conventional backup software, all the data was read by the difference detection process described above, so it was necessary to avoid the business hours when the system load was low and perform "timed execution" at night. According to the present embodiment, since the difference can be detected with a low load without reading all data, a highly flexible operation such as performing backup processing during business hours is possible.
  • the recovery process in the present embodiment is executed by the virtual drive control unit 110, and when a file access error occurs, the backup file corresponding to the error target file is obtained by referring to the meta database 210 to obtain a file. Is to restore.
  • step S400 shown in FIG. 6 the file management server 4 receives a file access request from the user terminal 2 via the network control unit 150. Then, the process proceeds to step S401.
  • step S401 the virtual drive control unit 110 searches the meta database 210a of the master virtual drive 5a using the directory path on the virtual drive 5 included in the file access request as a key, and acquires file information that matches the search key.
  • the virtual drive control unit 110 accesses a physical file stored on the storage 6 based on a physical path (path on the storage 6) included in the acquired file information.
  • the process proceeds to step S402 to execute a recovery process.
  • the virtual drive control unit 110 transmits the accessed physical file to the user terminal 2 and ends the process.
  • step S402 the virtual drive control unit 110 refers to the backup status management database 220 and checks whether the error target file has been backed up. If it has been backed up, the process proceeds to step S404. On the other hand, if the latest version has not been backed up, the process proceeds to step S403, an error is transmitted to the user terminal 2, and the process ends.
  • step S404 the virtual drive control unit 110 refers to the meta database 210 and acquires backed up physical file data (backup file). Specifically, the meta database 210b of the backup virtual drive 5b is searched using the file ID of the file that caused the file access error as a key, and the physical path of the backup file is acquired. Then, the process proceeds to step S405.
  • step S405 it is checked whether the capacity of the restored file is equal to or greater than a threshold value. If the capacity of the file is not equal to or greater than the threshold value, the process proceeds to step S406, and recovery processing is executed by synchronous execution. On the other hand, if the file capacity is greater than or equal to the threshold, the process proceeds to step S408, and the recovery process is executed asynchronously.
  • step S406 the backup file is copied based on the physical path of the backup file acquired in step S404 to create a restored file.
  • the restoration destination is any one of the storages 6 constituting the master storage group 7, and the virtual drive control unit 110 determines which storage 6 is to be saved in consideration of the usage status of the storage 6 and the like.
  • the link information in the meta database 210a of the master virtual drive 5a is rewritten, and the directory path on the virtual drive 5 that has caused the file access error (the file access request transmitted from the user terminal 2 in step S400).
  • the directory path on the included virtual drive 5) and the restored physical file are linked. That is, the physical path of the file information related to the error target file is updated to the physical path of the restoration file. Then, the process proceeds to step S407.
  • step S407 the virtual drive control unit 110 transmits the restored physical file to the user terminal 2 and ends the process.
  • step S408 the physical file data acquired in step S404 is transmitted to the user terminal 2. Since the physical file is transmitted as a reference only, if the request from the user terminal 2 is a write process, an error is returned. Then, the process proceeds to step S409.
  • step S409 the file information related to the file access error is registered in the recovery queue so as to be the target of asynchronous recovery processing. Then, the process ends.
  • FIG. 7 is a diagram showing asynchronous recovery processing. This asynchronous recovery process is provided in order to maintain good user responsiveness by performing a delayed restoration when a file to be restored is large.
  • step S500 In the asynchronous recovery process, first, in step S500 shown in FIG. 7, it is checked whether or not it is a preset periodic process execution time zone. If it is the periodic process execution time zone, the process proceeds to step S501. On the other hand, if it is not the regular process execution time zone, the process returns to step S500 and waits until the regular process execution time zone.
  • the periodic processing execution time zone of the asynchronous recovery processing is a time zone that can be arbitrarily set by a system administrator or the like, similarly to the periodic processing execution time zone of the backup processing. Then, the process proceeds to step S501.
  • step S501 the virtual drive control unit 110 refers to the recovery queue. Then, the process proceeds to step S502.
  • step S502 it is checked whether there is data registered in the recovery queue. If there is data registered in the recovery queue, the process proceeds to step S502. On the other hand, if there is no data registered in the recovery queue, the process returns to step S500.
  • the virtual drive control unit 110 refers to the meta database 210 and acquires the physical path of the backed up physical file data (backup file) based on the data registered in the recovery queue. More specifically, the meta database 210b of the backup virtual drive 5b is searched using the file ID registered in the recovery queue as a key, and the physical path of the backup file is acquired. Then, a backup file is copied based on the acquired physical path to create a restoration file.
  • the restoration destination is any one of the storages 6 constituting the master storage group 7, and the virtual drive control unit 110 determines which storage 6 is to be saved in consideration of the usage status of the storage 6 and the like.
  • the link information in the meta database 210a of the master virtual drive 5a is rewritten, and the directory path on the virtual drive 5 that has caused the file access error (the file access request transmitted from the user terminal 2 in step S400).
  • the directory path on the included virtual drive 5) and the restored physical file are linked. That is, the physical path of the file information related to the error target file is updated to the physical path of the restoration file.
  • the system administrator automatically restores a file triggered by an error when the master virtual drive 5a accesses the physical storage 6, so that the system administrator Files can be restored without a restore operation.
  • a backup file is copied to create a restoration file, and then the meta database 210 is rewritten to update the link to the error target file to the link to the restoration file, resulting in the occurrence of a file access error.
  • Only recovered files can be the target of recovery processing. As a result, the recovery process can be completed in a short time, and the recovery waiting time of the user who attempted to access the error file can be shortened. Further, since other files are not affected during the execution of the recovery process, it is possible to prevent the end users other than the user who attempted to access the error file from being affected.
  • the error target file is the target of restoration, but files other than the error target file may be the target of restoration.
  • the entire storage 6 storing the error target file may be the target of restoration.
  • the master storage recovery process in this embodiment is executed by the storage recovery control unit 140.
  • the storage 6 constituting the master storage group 7 the storage 6 in which the failure has occurred. This process restores the managed data from the backup data.
  • step S600 shown in FIG. 8 the storage recovery control unit 140 receives a forced removal processing request for the storage 6. This forcible removal processing request is output in response to the storage administrator's removal operation being executed by the system administrator. Then, the process proceeds to step S601.
  • step S601 the meta database 210a of the master virtual drive 5a is updated so that the status of the data included in the storage 6 to be removed becomes “forcibly removing”.
  • the backup data is transmitted exclusively for reference or a file access error is transmitted. Then, the process proceeds to step S602.
  • step S602 the file information of the files managed in the storage 6 to be removed is extracted from the meta database 210a of the master virtual drive 5a. Since the extracted file information includes a file ID, access information to the backup data is acquired based on the file ID. Specifically, the meta database 210b of the backup virtual drive 5b is searched using the file ID as a key, and the physical path of the backup file is acquired. Then, the process proceeds to step S603.
  • step S603 the backup data acquired based on the physical path of the backup file is transferred to another storage 6 (that is, the master storage group 7) that constitutes the same virtual drive 5 (that is, the master virtual drive 5a) as the storage 6 to be removed. Copy to the included storage 6).
  • the link information of the meta database 210a of the master virtual drive 5a is rewritten so that the data copied to the other storage 6 can be accessed.
  • the physical path included in the file information related to the copied file is rewritten so as to indicate the copied data.
  • the copy data of the data included in the storage 6 in which the failure has occurred is acquired, and the copy data is stored in another storage that constitutes the master virtual drive 5a. 6 and the link information of the meta database 210 is rewritten. For this reason, when a failure occurs in a specific storage 6 of the master storage group 7, only the files stored in the failed storage 6 are restored from the backup without restoring the entire master virtual drive 5a. By doing so, it is possible to limit the restoration handling files and recover efficiently (short time). As a result, the recovery standby time of the user who attempted to access the storage 6 where the failure has occurred is shortened. Further, since other files are not affected during the execution of the recovery process, it is possible to prevent the end users other than the user who attempted to access the storage 6 where the failure occurred from being affected.
  • the target file is automatically restored from the backup data to the free space of the master virtual drive 5a, so the data from the failed storage 6 is salvaged. Can be disconnected immediately.
  • the backup storage recovery process in the present embodiment is executed by the storage recovery control unit 140.
  • the storage 6 constituting the backup storage group 8 the storage 6 in which the failure has occurred. This process restores the managed data from the master data.
  • step S700 shown in FIG. 9 the storage recovery control unit 140 receives a forced removal processing request for the storage 6. This forcible removal processing request is output when the user performs the removal operation of the storage 6. Then, the process proceeds to step S701.
  • step S701 the meta database 210b of the backup virtual drive 5b is updated so that the status of the data included in the storage 6 to be removed becomes “forcibly removing”. Note that if it becomes necessary to access data included in the storage 6 "forcibly removing", the backup data is returned for reference only or a file access error is returned. Then, the process proceeds to step S702.
  • step S702 the file information of the file managed in the storage 6 to be removed is extracted from the meta database 210b of the backup virtual drive 5b. Since the extracted file information includes a file ID, access information to the master data is acquired based on the file ID. Specifically, the meta database 210a of the master virtual drive 5a is searched using the file ID as a key, and the physical path of the master file is acquired. Then, the process proceeds to step S703.
  • step S703 the master data acquired based on the physical path of the master file is transferred to another storage 6 (that is, the backup storage group 8) that constitutes the same virtual drive 5 (that is, the backup virtual drive 5b) as the storage 6 to be removed. Copy to the included storage 6).
  • the backup storage group 8 that constitutes the same virtual drive 5 (that is, the backup virtual drive 5b) as the storage 6 to be removed. Copy to the included storage 6).
  • the link information of the meta database 210b of the backup virtual drive 5b is rewritten so that the data copied to the other storage 6 can be accessed.
  • the physical path included in the file information related to the copied file is rewritten so as to indicate the copied data.
  • the copy data of the data included in the storage 6 in which the failure has occurred is acquired, and the copy data is used as another storage that constitutes the backup virtual drive 5b. 6 and the link information of the meta database 210 is rewritten. Therefore, when a failure occurs in the specific storage 6 of the backup storage group 8, only the files saved in the failed storage 6 are copied from the master without restoring the entire backup virtual drive 5b. Thus, it is possible to limit the restoration handling files and recover efficiently (short time). As a result, the recovery standby time of the user who attempted to access the storage 6 where the failure has occurred is shortened. Further, since other files are not affected during the execution of the recovery process, it is possible to prevent the end users other than the user who attempted to access the storage 6 where the failure occurred from being affected.
  • the target file is automatically restored from the backup data to the free space of the backup virtual drive 5b, so that the data from the failed storage 6 is salvaged. Can be disconnected immediately.
  • the system recovery process in the present embodiment is executed by the system initialization control unit 130, and there is a failure (for example, an unrecoverable system crash or a database storage failure) in which the meta database 210a of the master virtual drive 5a is lost.
  • a failure for example, an unrecoverable system crash or a database storage failure
  • This is a process of restoring the system using data in the backup virtual drive 5b (actually, the backup storage group 8) when it occurs.
  • step S800 shown in FIG. 10 the system initialization control unit 130 receives a system recovery request. This system recovery request is output when the user selects system recovery. Then, the process proceeds to step S801.
  • step S801 the master management function is initialized. Specifically, the file management system is reinstalled using an installer or the like. Then, the process proceeds to step S802.
  • step S802 the backup data included in the backup virtual drive 5b (backup storage group 8) is registered on the master side. Specifically, the meta database 210a of the master virtual drive 5a is reconstructed based on the meta database 210b of the backup virtual drive 5b. That is, records corresponding to each record (file information) registered in the meta database 210b of the backup virtual drive 5b are registered in the meta database 210a of the master virtual drive 5a so as to have the same file ID. Then, the process proceeds to step S803.
  • step S803 all data backed up in the backup storage group 8 is extracted from the meta database 210b of the backup virtual drive 5b and registered in the recovery queue. The registered data is restored and copied to the master storage group 7 in order by asynchronous execution. At this time, each time a file is restored and copied, the meta database 210a of the master virtual drive 5a is rewritten so that the physical path included in the file information of the file becomes the physical path of the copy destination. Then, the system recovery process ends.
  • a backed up file is acquired based on the meta database 210b of the backup virtual drive 5b, and the backed up file is restored and copied.
  • the meta database 210a of the master virtual drive 5a can be restored from the backup, even when a failure that cannot be autonomously recovered occurs in the master virtual drive 5a (such as server loss), the state of the master virtual drive 5a is restored from the backup data. be able to.
  • the backup process is performed periodically.
  • the start timing of the backup process is not limited to this.
  • the virtual drive control unit 110 requests the backup control unit 120 to start the backup process, and the backup control unit 120 executes the backup process triggered by the file update. Good. If comprised in this way, a backup process can be performed in real time.

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

課題:仮想ファイルシステムのメタデータベースをバックアップ処理側からも利用する形態とすることで、効率的にバックアップを行うことができるファイル管理システム及びファイル管理方法を提供する。 解決手段:仮想ドライブ5を制御する仮想ドライブ制御部110と、仮想ファイルとストレージ6に保存された物理ファイルとを関連付けるための情報を含むメタデータベース210と、ファイルのバックアップを管理するバックアップ制御部120と、バックアップの管理に使用されるバックアップ状態管理データベース220と、を備え、前記仮想ドライブ制御部110は、更新されたファイルの情報を前記バックアップ状態管理データベース220に登録し、前記バックアップ制御部120は、前記バックアップ状態管理データベース220と前記メタデータベース210とを参照してファイルをバックアップする。

Description

ファイル管理システム及びファイル管理方法
 この発明は、複数のストレージを制御するファイル管理システム及びファイル管理方法に関し、特に、バックアップ処理に特徴を有するファイル管理システム及びファイル管理方法に関するものである。
 従来、通信ネットワークを介してコンピュータファイルを保管する方法として、ファイルサーバが普及している。ファイルサーバは、サーバOSのファイルシステム上にフォルダツリーを構成し、そのドライブルートや特定のフォルダをネットワーク上のユーザに閲覧権限等を割り当て、共有させるようにしたものである。
 ファイルやフォルダを共有するユーザは、端末(例えば、PCや携帯電話など)からネットワーク越しに共有設定されたファイル等を閲覧し、ファイルサーバのシステム管理者が設定した管理権限に基づき、任意のファイルについてオープン、クローズ、新規作成、移動、名称変更、複製などを行うことが出来る。ファイルやフォルダを操作するユーザは人間であっても良いし、機械やソフトアウェアなどのコンピュータシステムであっても良い。
 サーバに保管されたファイルをユーザがオープンする場合は、まずファイルサーバの共有フォルダをユーザ端末から閲覧し、ユーザ端末が任意のファイルを指定してファイルサーバに送信依頼し、ファイルサーバがネットワーク越しに当該ファイルをユーザ端末に送信する。
 このファイルサーバ上に配置するハードディスク装置を高速化または冗長化するための装置として、RAID(Redundant Arrays of Inexpensive Disk)技術が普及している(例えば特許文献1参照)。
 RAIDは複数台のハードディスクを組み合わせることで、仮想的な1台のハードディスクとしてOSから認識されるようにする技術の一種で、主に信頼性の向上を狙って用いられることが多い。また、サービスの継続性を保証しつつ、高い安全性を保証するために、このRAIDとバックアップソフトを組み合わせて運用することも通常行われている。
特開2011-129039号公報
 しかし、RAIDとバックアップソフトを組み合わせて運用した場合、バックアップソフトから見るとRAIDの仮想化されたファイルシステムは通常のファイルシステムと見分けがつかず、たとえRAIDのファイルシステムがアクセス履歴やメタ情報をデータベースに保持していても、そのデータベースの情報をバックアップ処理に利用することはできない。このため、バックアップソフトは通常のファイルシステムと同様のバックアップ処理を強いられ、非効率な制御を行っていた。
 そこで、本発明は、RAIDと同様に複数の記憶装置を統合して仮想ファイルシステムを構成するとともに、仮想ファイルシステムのメタデータベースをバックアップ処理側からも利用する形態とすることで、効率的にバックアップを行うことができるファイル管理システム及びファイル管理方法を提供することを課題とする。
 本発明は、上記した課題を解決するためになされたものであり、以下を特徴とする。
 (請求項1)
 請求項1に記載の発明は、以下の点を特徴とする。
 すなわち、請求項1に記載のファイル管理システムは、複数のストレージを制御するファイル管理システムであって、前記複数のストレージのうちの任意のストレージ群で構成した仮想ドライブを制御する仮想ドライブ制御部と、前記仮想ドライブ上の仮想ファイルと前記ストレージに保存された物理ファイルとを関連付けるための情報を含むメタデータベースと、前記仮想ドライブに保存されたファイルのバックアップを管理するバックアップ制御部と、前記バックアップ制御部によるバックアップの管理に使用されるバックアップ状態管理データベースと、を備え、前記仮想ドライブ制御部は、更新されたファイルの情報を前記バックアップ状態管理データベースに登録し、前記バックアップ制御部は、前記バックアップ状態管理データベースと前記メタデータベースとを参照してファイルをバックアップすることを特徴とする。
 (請求項2)
 請求項2に記載の発明は、上記した請求項1記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記バックアップ制御部は、ファイルが更新されたことをトリガとしてバックアップを実行することを特徴とする。
 (請求項3)
 請求項3に記載の発明は、上記した請求項1又は2記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記仮想ドライブ制御部は、ユーザの操作対象であるマスタ仮想ドライブと、前記マスタ仮想ドライブのデータをバックアップするためのバックアップ仮想ドライブと、を制御することを特徴とする。
 (請求項4)
 請求項4に記載の発明は、上記した請求項1~3のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記バックアップ制御部は、前記ファイル管理システムを構成するファイル管理サーバの負荷を監視し、当該負荷が予め設定された許容値を超過している場合には前記ファイルのバックアップを待機させることを特徴とする。
 (請求項5)
 請求項5に記載の発明は、上記した請求項1~4のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記仮想ドライブ制御部は、ファイルアクセスエラーが発生したときに、前記メタデータベースを参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行うことを特徴とする。
 (請求項6)
 請求項に記載の発明は、上記した請求項5記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記ファイルの復元は、前記バックアップ制御部が前記バックアップファイルをコピーして復元ファイルを作成する処理と、前記仮想ドライブ制御部が前記メタデータベースを書き換えて前記エラー対象ファイルへのリンクを前記復元ファイルへのリンクに更新する処理とを含むことを特徴とする。
 (請求項7)
 請求項7に記載の発明は、上記した請求項1~6のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、障害の発生したストレージで管理されていたデータを復元するストレージリカバリ処理を実行するストレージリカバリ制御部を更に備え、前記ストレージリカバリ制御部は、前記ストレージリカバリ処理において、前記障害の発生したストレージに含まれるデータのコピーデータを取得し、当該コピーデータを前記障害の発生したストレージと同じ仮想ドライブを構成する他のストレージにコピーするとともに、前記メタデータベースのリンク情報を書き換えることを特徴とする。
 (請求項8)
 請求項8に記載の発明は、上記した請求項1~7のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記メタデータベースとして、マスタ用のメタデータベースとバックアップ用のメタデータベースとを備え、バックアップデータからシステムを復元するシステムリカバリ処理を実行するシステム初期化制御部を更に備え、前記システム初期化制御部は、前記バックアップ用のメタデータベースを基にバックアップ済みファイルを取得し、バックアップ済みファイルを復元コピーすることを特徴とする。
 (請求項9)
 請求項9に記載の発明は、以下の点を特徴とする。
 すなわち、請求項9に記載のファイル管理方法は、複数のストレージを制御するファイル管理方法であって、前記複数のストレージのうちの任意のストレージ群で仮想ドライブを構成するステップと、前記仮想ドライブ上の仮想ファイルと前記ストレージに保存された物理ファイルとを関連付けてメタデータベースに登録するステップと、更新されたファイルの情報をバックアップ状態管理データベースに登録するステップと、前記バックアップ状態管理データベースと前記メタデータベースとを参照してファイルをバックアップするステップと、を有することを特徴とする。
 (請求項10)
 請求項10に記載の発明は、上記した請求項9記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記ファイルのバックアップは、ファイルが更新されたことをトリガとして実行されることを特徴とする。
 (請求項11)
 請求項11に記載の発明は、上記した請求項9又は10記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記仮想ドライブを構成するステップは、ユーザの操作対象であるマスタ仮想ドライブを構成するステップと、前記マスタ仮想ドライブのデータをバックアップするためのバックアップ仮想ドライブを構成するステップと、を含むことを特徴とする。
 (請求項12)
 請求項12に記載の発明は、上記した請求項9~11のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
すなわち、前記ファイルのバックアップは、前記ファイル管理システムを構成するファイル管理サーバの負荷が予め設定された許容値を超過している場合には実行が遅延されることを特徴とする。
 (請求項13)
 請求項13に記載の発明は、上記した請求項9~12のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、ファイルアクセスエラーが発生したときに、前記メタデータベースを参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行うステップを含むことを特徴とする。
 (請求項14)
 請求項14に記載の発明は、上記した請求項13記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記ファイルの復元は、前記バックアップファイルをコピーして復元ファイルを作成する処理と、前記メタデータベースを書き換えて前記エラー対象ファイルへのリンクを前記復元ファイルへのリンクに更新する処理と、を含むことを特徴とする。
 (請求項15)
 請求項15に記載の発明は、上記した請求項9~14のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、障害の発生したストレージで管理されていたデータを復元するストレージリカバリ処理の実行を受け付けるステップと、前記ストレージリカバリ処理において、前記障害の発生したストレージに含まれるデータのコピーデータを取得し、当該コピーデータを前記障害の発生したストレージと同じ仮想ドライブを構成する他のストレージにコピーするとともに、前記メタデータベースのリンク情報を書き換えるステップと、を含むことを特徴とする。
 (請求項16)
 請求項16に記載の発明は、上記した請求項9~15のいずれかに記載の発明の特徴点に加え、以下の点を特徴とする。
 すなわち、前記メタデータベースとして、マスタ用のメタデータベースとバックアップ用のメタデータベースとを備え、バックアップデータからシステムを復元するシステムリカバリ処理の実行を受け付けるステップと、前記システムリカバリ処理において、前記バックアップ用のメタデータベースを基にバックアップ済みファイルを取得し、バックアップ済みファイルを復元コピーするステップと、を含むことを特徴とする。
 請求項1及び9に記載の発明は上記の通りであり、バックアップ状態管理データベースとメタデータベースとを参照してファイルをバックアップするので、仮想ファイルシステムのメタデータベースをバックアップ処理側からも利用する形態とすることができ、効率的にバックアップを行うことができる。
 また、バックアップ状態管理データベースでリアルタイムに差分管理を行っているため、バックアップ状態管理データベースを参照するだけで更新ファイルを検出できる。すなわち、バックアップを行う際に取得済みの過去のバックアップデータと比較する差分検知処理を実行する必要がないので、処理工程を短略することができる。従来のバックアップソフトを使用した場合、前述した差分検知処理で全データの読み取りが発生してしまうため、システム負荷が低い業務時間帯を避けて夜間などに「時刻指定実行」する必要があったが、本発明によれば全データの読み取りを実行せずに低負荷で差分を検知することができるため、業務時間帯にバックアップ処理を行うなどの柔軟性の高い運用が可能となる。
 また、請求項2及び10に記載の発明は上記の通りであり、ファイルが更新されたことをトリガとしてバックアップを実行する。このように構成すれば、リアルタイムでバックアップ処理を実行することができる。
 また、請求項3及び11に記載の発明は上記の通りであり、ユーザの操作対象であるマスタ仮想ドライブと、前記マスタ仮想ドライブのデータをバックアップするためのバックアップ仮想ドライブと、を備えている。すなわち、マスタ仮想ドライブとバックアップ仮想ドライブとが同じ方式の仮想ドライブで制御されているため、バックアップ仮想ドライブを実体化(マウント)させれば、バックアップ仮想ドライブのバックアップデータをマスタ仮想ドライブに復元することなく、ユーザに即時にバックアップデータを提供することができる。
 また、請求項4及び12に記載の発明は上記の通りであり、前記ファイル管理システムを構成するファイル管理サーバの負荷が予め設定された許容値を超過している場合にはファイルのバックアップが待機される。このため、バックアップの実行による仮想ドライブへの影響(エラーや速度低下など)を最小化することができる。
 また、請求項5及び13に記載の発明は上記の通りであり、ファイルアクセスエラーが発生したときに、前記メタデータベースを参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行う。すなわち、仮想ドライブが物理ストレージにアクセスした時のエラーをトリガとして、システムが自動的にファイルの復元を行うため、システム管理者による復元操作がなくてもファイルの復元を行うことができる。また、ファイルアクセスエラーの発生したファイルのみをリカバリ処理の対象とすることができるので、短時間でリカバリ処理を完了でき、エラーファイルへアクセスを試みたユーザのリカバリ待機時間を短縮することができる。
 また、請求項6及び14に記載の発明は上記の通りであり、前記ファイルの復元は、前記バックアップファイルをコピーして復元ファイルを作成する処理と、前記メタデータベースを書き換えて前記エラー対象ファイルへのリンクを前記復元ファイルへのリンクに更新する処理と、を含む。このため、リカバリ処理の実行中も仮想ドライブに透過的なアクセスが可能なため、エラーファイルへアクセスを試みたユーザ以外のエンドユーザに影響を与えないようにすることができる。
 また、請求項7及び15に記載の発明は上記の通りであり、障害の発生したストレージで管理されていたデータを復元するストレージリカバリ処理を実行するものであり、ストレージリカバリ処理として、前記障害の発生したストレージに含まれるデータのコピーデータを取得し、当該コピーデータを前記障害の発生したストレージと同じ仮想ドライブを構成する他のストレージにコピーするとともに、前記メタデータベースのリンク情報を書き換える。このため、仮想ドライブを構成するストレージ群の特定ストレージに障害が発生した場合に、仮想ドライブ全体を復元しなくても、障害が発生したストレージに保存されていたファイルのみをバックアップから復元することで、復元対象ファイルを限定し、効率的に短時間でリカバリすることができる。これにより、障害が発生したストレージへアクセスを試みたユーザのリカバリ待機時間が短縮される。また、リカバリ処理の実行中も仮想ドライブに透過的なアクセスが可能なため、障害が発生したストレージへアクセスを試みたユーザ以外のエンドユーザに影響を与えないようにすることができる。
 また、障害が発生したストレージをサーバから切り離した場合でも、自動的にバックアップデータから仮想ドライブの空き領域に自動的に対象ファイルを復元するため、システム管理者による復元操作が不要なだけでなく、障害が発生したストレージからデータをサルベージする必要がなく、即時に当該ストレージを仮想ドライブから切り離すことができる。
 また、請求項8及び16に記載の発明は上記の通りであり、前記メタデータベースとして、マスタ用のメタデータベースとバックアップ用のメタデータベースとを備え、バックアップデータからシステムを復元するシステムリカバリ処理を実行するものであって、前記システムリカバリ処理において、前記バックアップ用のメタデータベースを基にバックアップ済みファイルを取得し、バックアップ済みファイルを復元コピーする。すなわち、バックアップしたファイルのみならず、仮想ドライブの構成情報を記録したマスタ用のメタデータベースもバックアップから復元できるため、仮想ドライブに自律回復不能な障害が発生した場合(サーバ消失など)でも、バックアップデータから仮想ドライブの状態を復元することができる。
 また、ユーザからシステムリカバリ処理が完了していないデータに対する閲覧要求を受けた場合に、当該データのリカバリ処理を優先して実行することにより、システムリカバリ処理の実行中も仮想ドライブへの透過的なアクセスを保証することができる。
ファイル管理システムの利用環境を示す図である。 ファイル管理システムの構成を示すブロック図である。 ファイル更新処理のフロー図である。 バックアップ登録処理のフロー図である。 バックアップ処理のフロー図である。 リカバリ処理のフロー図である。 非同期リカバリ処理のフロー図である。 マスタ用ストレージリカバリ処理のフロー図である。 バックアップ用ストレージリカバリ処理のフロー図である。 システムリカバリ処理のフロー図である。 メタデータベースの一例を示す図である。
 本発明の実施形態について、図を参照しながら説明する。
 本実施形態に係るファイル管理システムは、複数のストレージ6を制御するものである。このファイル管理システムは、例えば図1に示すように通信ネットワーク3を介したファイル管理に使用される。この図1に示す例においては、ファイル管理システムを提供するファイル管理サーバ4に対して、少なくとも1以上のサーバコンピュータ1やユーザ端末2が通信ネットワーク3を介して接続されている。
 ファイル管理サーバ4には複数のストレージ6が接続されている。ファイル管理サーバ4は、この複数のストレージ6をフォーマット及びマウントし、この複数のストレージ6内のファイルを仮想的なフォルダツリー構成で参照可能とすることにより、仮想ドライブ5機能を提供する。
 本実施形態においては、仮想ドライブ5として、マスタ仮想ドライブ5aと、バックアップ仮想ドライブ5bと、の2つの仮想ドライブ5を提供している。マスタ仮想ドライブ5aは、通信ネットワーク3を介してユーザから操作可能に公開されたドライブである。一方、バックアップ仮想ドライブ5bは、マスタ仮想ドライブ5aのバックアップであり、マスタ仮想ドライブ5aのデータの複製を保持するものである。このバックアップ仮想ドライブ5bは、基本的にユーザの操作対象ではないため、直接操作の対象とはなっていない。
 このファイル管理システムによれば、通信ネットワーク3を介してファイル管理サーバ4にアクセスするユーザ(サーバコンピュータ1、ユーザ端末2)は、物理ファイルがどのストレージ6に含まれているかを意識することなく、仮想ドライブ5(詳しくはマスタ仮想ドライブ5a)上のファイルパスを指定することでファイルにアクセスすることができる。ファイル管理サーバ4は、ユーザからの仮想ドライブ5へのアクセス要求を受理すると、当該要求に応じたレスポンスをユーザに返信する。
 なお、本実施形態においては、ストレージ6がハードディスクであることを前提として説明するが、このストレージ6はハードディスクに限定されるものではなく、SSD(Solid State Drive)やUSB接続フラッシュメモリなどの永続的メモリ装置であっても良いし、イーサーネット越しに接続するNAS(Network Attached Storage)やDAS(Direct Attached Storage)であっても良いし、ファイバチャネル回線を介したSAN(Storage Area Network)であっても良いし、インターネット上のクラウドストレージサービスであっても構わない。
 図2は、ファイル管理システムの構成を示すブロック図である。
 この図2が示すように、ファイル管理サーバ4には、複数のストレージ6が接続されており、本実施形態においてはストレージ6a、6b、6c、6d、6e、6fの6つのストレージ6が接続されている。そして、このうちのストレージ6a、6b、6cの3つのストレージ6はマスタ用ストレージ群7に割り当てられており、また、ストレージ6d、6e、6fの3つのストレージ6はバックアップ用ストレージ群8として割り当てられている。そして、マスタ用ストレージ群7によってユーザの操作対象であるマスタ仮想ドライブ5aを構成し、バックアップ用ストレージ群8によって前記マスタ仮想ドライブ5aのデータをバックアップするためのバックアップ仮想ドライブ5bを構成している。このマスタ仮想ドライブ5a及びバックアップ仮想ドライブ5bは、後述する仮想ドライブ制御部110によって制御される。
 このように、本実施形態では、マスタ仮想ドライブ5aとバックアップ仮想ドライブ5bとを同じ方式の仮想ドライブ5で制御しているため、バックアップ仮想ドライブ5bを実体化(マウント)させれば、バックアップデータを即時に復元し、ユーザに提供することができるように形成されている。
 なお、上記した仮想ドライブ5の構成は例に過ぎず、仮想ドライブ5の構成はファイル管理サーバ4の管理者によって自由に設定することができる。例えば、マスタ仮想ドライブ5aやバックアップ仮想ドライブ5bを複数設けたり、ストレージ6の数を任意の数に増減させたりすることができる。
 また、仮想ドライブ5に割り当てるストレージ6の記憶領域は任意の大きさとすることができるので、ストレージ6の記憶領域の一部のみを特定の仮想ドライブ5に割り当てるようにしてもよい。このため、同一ストレージ6の一部の領域をマスタ仮想ドライブ5aに割り当て、他の領域をバックアップ仮想ドライブ5bに割り当てることも可能であるが、このような割り当て方をした場合にはストレージ6に障害が発生したときにマスタとバックアップとが同時に使用不能となる可能性があるため、マスタ仮想ドライブ5aに割り当てるストレージ6と、バックアップ仮想ドライブ5bに割り当てるストレージ6とは、個別に設けるべきである。
 ファイル管理サーバ4は、このように接続されたストレージ6を制御するものであり、図2に示すように、仮想ドライブ制御部110、バックアップ制御部120、システム初期化制御部130、ストレージリカバリ制御部140、ネットワーク制御部150、メタデータベース210、バックアップ状態管理データベース220、操作履歴管理データベース230、を備えている。
 なお、本実施形態においては、ファイル管理サーバ4が単一のサーバであることを前提として説明しているが、前記仮想ドライブ制御部110、バックアップ制御部120、システム初期化制御部130、ストレージリカバリ制御部140、ネットワーク制御部150、メタデータベース210、バックアップ状態管理データベース220、操作履歴管理データベース230、については、複数のファイル管理サーバ4に分散配置して相互に通信する形態としてもよいし、複数のファイル管理サーバ4のうち、あるファイル管理サーバ4にマスタ仮想ドライブ5aを管理させ、別のファイル管理サーバ4に前記マスタ仮想ドライブ5aをバックアップするバックアップ仮想ドライブ5bを管理させ、相互に通信する形態としてもよい。
 (仮想ドライブ制御部110)
 仮想ドライブ制御部110は、上記したマスタ仮想ドライブ5a及びバックアップ仮想ドライブ5bを制御するためのものである。
 この仮想ドライブ制御部110は、ユーザからのファイルアクセス要求を受信すると、このファイルアクセス要求に応じてストレージ6の物理ファイルを検索して送信する。また、ユーザからのファイル更新要求を受信すると、ファイルを更新するとともに、その更新履歴を操作履歴管理データベース230に登録する。また、ファイルアクセスエラーが発生したときには、バックアップしたファイルを使用して後述するリカバリ処理を実行する。
 (バックアップ制御部120)
 バックアップ制御部120は、前記マスタ仮想ドライブ5aに保存されたファイルのバックアップを管理するためのものである。
 このバックアップ制御部120は、バックアップ処理を定期的に実行することで、マスタ仮想ドライブ5aに保存されたファイルのバックアップをバックアップ仮想ドライブ5bに作成する。
 (システム初期化制御部130)
 システム初期化制御部130は、システムの初期化を実行するためのものである。
 このシステム初期化制御部130は、新たなファイル管理システムを構築するときには、システム管理者の設定に従ってシステムの初期化を実行する。また、このシステム初期化制御部130は、マスタ仮想ドライブ5aに自律回復不能な障害が発生した場合(サーバ消失など)には、バックアップデータからシステムを復元することができるシステムリカバリ処理を実行する。
 (ストレージリカバリ制御部140)
 ストレージリカバリ制御部140は、障害の発生したストレージ6で管理されていたデータを復元するストレージリカバリ処理を実行するためのものである。ストレージリカバリ処理においては、障害の発生したストレージ6を切り離したときに、当該ストレージ6に保存されていたデータと同じデータ(バックアップデータ、又は、バックアップの元データ)を別の正常なストレージ6にコピーする。このストレージリカバリ処理を実行することにより、仮想ドライブ5を構成するストレージ6が切り離されたとしても、自動的にデータの冗長性が担保されるようになっている。
 (ネットワーク制御部150)
 ネットワーク制御部150は、仮想ドライブ5が管理するファイルの入出力を制御するためのものである。
 このネットワーク制御部150は、通信ネットワーク3外部からのファイルアクセス要求を受信して仮想ドライブ制御部110に送信するとともに、仮想ドライブ制御部110からの命令に従って通信ネットワーク3外部へとファイル送信を実行する。
 (メタデータベース210)
 メタデータベース210は、前記仮想ドライブ5上の仮想ファイルと前記ストレージ6に保存された物理ファイルとを関連付けるための情報を含むデータベースである。
 このメタデータベース210は、図11に示すように、ファイルID、仮想パス(仮想ドライブ5上のパス)、物理パス(ストレージ6上のパス)、ファイル名、ファイルサイズ、更新日時、などの情報を、ファイルごとに保持している。
 このメタデータベース210としては、図11に示すように、マスタ仮想ドライブ5a用のメタデータベース210aと、バックアップ仮想ドライブ5b用のメタデータベース210bと、の2つが設けられている。
 マスタ仮想ドライブ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は、ユーザ端末2からのファイルアクセス要求を通信ネットワーク3を経由して受け取る。このとき、ファイルの指定は、仮想ドライブ5上のディレクトリパス(例えば「V:¥SomeFolder¥file_a」)を使用して行われる。
 このファイルアクセス要求は、ネットワーク制御部150を介して、仮想ドライブ制御部110が受理する。
 仮想ドライブ制御部110は、受理した仮想ドライブ5上のディレクトリパス(V:¥SomeFolder¥file_a)をキーとしてマスタ仮想ドライブ5aのメタデータベース210aを検索し、検索キーに合致するファイル情報を取得する。
 仮想ドライブ制御部110は、取得したファイル情報に含まれる物理パス(ストレージ6上のパス)を基に、ストレージ6上に保存される物理ファイルを読み出し、ネットワーク制御部150及び通信ネットワーク3を経由してユーザ端末2にファイルを送信する。
 (ファイル更新処理)
 次に、本実施形態におけるファイル更新処理について、図3を参照しながら説明する。
 本実施形態におけるファイル更新処理は、仮想ドライブ制御部110によって実行されるものであり、ユーザ端末2からのファイル更新要求を通信ネットワーク3を経由して受け取ったことを契機として実行される。
 まず、図3に示すステップS100において、ファイル管理サーバ4は、ネットワーク制御部150を経由して、ユーザ端末2から送信されたデータを受け取る。このデータには、更新されたファイルのバイナリデータ、及び、仮想ドライブ5上のディレクトリパス(例えば「V:¥SomeFolder¥file_a」)が含まれている。そして、ステップS101に進む。
 次に、ステップS101において、仮想ドライブ制御部110は、受理した仮想ドライブ5上のディレクトリパス(V:¥SomeFolder¥file_a)をキーとしてマスタ仮想ドライブ5aのメタデータベース210aを検索し、検索キーに合致するファイル情報を取得する。仮想ドライブ制御部110は、取得したファイル情報に含まれる仮想パス(仮想ドライブ5上のパス)がユーザ端末2が送信してきたディレクトリパスと同じ値である場合、ユーザ端末2の要求がファイルの上書き更新であると判断し、ストレージ6上のパスに保存された物理ファイルをユーザ端末2が送信した新しいバイナリデータで上書き更新する。そして、ステップ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のいずれか、又はこれらの組み合わせ)を監視し、予め設定された各パラメータの許容値(例えば、CPU使用率50%、メモリ使用量1GB、ディスクI/O10Mbps、ネットワークI/O10Mbpsなど)を超過しているかをチェックする。許容値を超過している場合には、ステップS300に戻る。一方、許容値を超過していない場合には、ステップS303に進む。
 ステップS303では、バックアップ制御部120は、バックアップ状態管理データベース220に未バックアップとして登録されたファイルの情報(ファイルIDなど)をキーにマスタ仮想ドライブ5aのメタデータベース210aを検索し、当該未バックアップとして登録されたファイルに対応する物理ファイルへアクセスするためのリンク情報(URLなど)を取得する。そして、ステップS304に進む。
 ステップS304では、バックアップ制御部120は、ステップS303で取得したリンク情報を基に物理ファイルにアクセスし、当該物理ファイルのバックアップを作成する。バックアップの保存先は、バックアップ用ストレージ群8を構成するいずれかのストレージ6であり、どのストレージ6に保存するかはストレージ6の使用状況等を考慮して仮想ドライブ制御部110が決定する。そして、ステップS305に進む。
 ステップS305では、バックアップ制御部120は、バックアップが完了したことを仮想ドライブ制御部110に通知する。このとき、バックアップが完了したファイルのファイルIDが通知される。仮想ドライブ制御部110は、バックアップの完了通知を受け取ると、ファイルIDをキーとしてバックアップ状態管理データベース220上のバックアップが完了したファイルに係るデータを取得し、当該データのステータスを「未バックアップ」から「バックアップ完了」へと更新する。また、仮想ドライブ制御部110は、バックアップ元のファイルとバックアップ先のファイルとを関連付けるために、バックアップ仮想ドライブ5bのメタデータベース210bを更新する。
 このとき、通知されたファイルIDのデータがバックアップ仮想ドライブ5bのメタデータベース210bに存在しない場合(初回のバックアップの場合)には、新たに当該ファイルIDでデータを作成し、バックアップ仮想ドライブ5bのメタデータベース210bに登録する。一方、通知されたファイルIDのデータがバックアップ仮想ドライブ5bのメタデータベース210bに既に存在する場合(上書きでのバックアップの場合)には、当該データの物理パスを必要に応じて書き換える。なお、物理パスが変更されていない場合には物理パスを書き換える必要はない。
 そして、ステップS300に戻り、定期処理実行時間帯が終了するまでこの動作を繰り返す。これにより、定期処理実行時間帯であれば、未バックアップのファイルが存在する限りバックアップ処理が続行される。
 以上説明したように、本実施形態におけるバックアップ処理によれば、バックアップ状態管理データベース220とメタデータベース210とを参照してファイルをバックアップするので、仮想ファイルシステムのメタデータベース210をバックアップ処理側からも利用する形態とすることができ、効率的にバックアップを行うことができる。
 また、バックアップ状態管理データベース220でリアルタイムに差分管理を行っているため、バックアップ状態管理データベース220を参照するだけで更新ファイルを検出できる。すなわち、バックアップを行う際に取得済みの過去のバックアップデータと比較する差分検知処理を実行する必要がないので、処理工程を短略することができる。従来のバックアップソフトを使用した場合、前述した差分検知処理で全データの読み取りが発生してしまうため、システム負荷が低い業務時間帯を避けて夜間などに「時刻指定実行」する必要があったが、本実施形態によれば全データの読み取りを実行せずに低負荷で差分を検知することができるため、業務時間帯にバックアップ処理を行うなどの柔軟性の高い運用が可能である。
 また、ファイル管理サーバ4の負荷が予め設定された許容値を超過している場合にはファイルのバックアップが待機されるため、バックアップの実行による仮想ドライブ5への影響(エラーや速度低下など)を最小化することができる。
 (リカバリ処理)
 次に、本実施形態におけるリカバリ処理について説明する。本実施形態におけるリカバリ処理は、仮想ドライブ制御部110によって実行されるものであり、ファイルアクセスエラーが発生したときに、メタデータベース210を参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行うものである。
 このリカバリ処理について、図6及び図7を参照しながら説明する。
 まず、図6に示すステップS400において、ファイル管理サーバ4は、ネットワーク制御部150を経由して、ユーザ端末2からのファイルアクセス要求を受け取る。そして、ステップS401に進む。
 ステップS401において、仮想ドライブ制御部110は、ファイルアクセス要求に含まれる仮想ドライブ5上のディレクトリパスをキーとしてマスタ仮想ドライブ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であり、どのストレージ6に保存するかはストレージ6の使用状況等を考慮して仮想ドライブ制御部110が決定する。復元を行ったら、マスタ仮想ドライブ5aのメタデータベース210aのリンク情報を書き換えて、ファイルアクセスエラーの基となった仮想ドライブ5上のディレクトリパス(ステップS400でユーザ端末2から送信されたファイルアクセス要求に含まれていた仮想ドライブ5上のディレクトリパス)と、復元した物理ファイルとをリンクさせる。すなわち、エラー対象ファイルに係るファイル情報の物理パスを、復元ファイルの物理パスに更新する。そして、ステップS407に進む。
 ステップS407では、仮想ドライブ制御部110は、復元した物理ファイルをユーザ端末2に送信して処理を終了する。
 一方、非同期実行でリカバリ処理を実行する場合、ステップS408では、ステップS404で取得した物理ファイルデータをユーザ端末2に送信する。なお、物理ファイルは参照専用として送信されるため、ユーザ端末2からの要求が書き込み処理の場合にはエラーを返信する。そして、ステップS409に進む。
 ステップS409では、非同期リカバリ処理の処理対象となるように、ファイルアクセスエラーに係るファイル情報をリカバリーキューに登録する。そして、処理を終了する。
 図7は、非同期リカバリ処理を示す図である。この非同期リカバリ処理は、復元対象のファイルが大きい場合に、遅延して復元を行うことでユーザ応答性を良好に保つために設けられている。
 非同期リカバリ処理においては、まず、図7に示すステップS500において、予め設定された定期処理実行時間帯かどうかをチェックする。定期処理実行時間帯である場合にはステップS501に進む。一方、定期処理実行時間帯でない場合にはステップS500に戻り、定期処理実行時間帯まで待機する。なお、非同期リカバリ処理の定期処理実行時間帯は、バックアップ処理の定期処理実行時間帯と同様に、システム管理者などによって任意に設定できる時間帯である。そして、ステップS501に進む。
 ステップS501では、仮想ドライブ制御部110は、リカバリーキューを参照する。そして、ステップS502に進む。
 ステップS502では、リカバリーキューに登録されたデータがあるかをチェックする。リカバリーキューに登録されたデータがある場合には、ステップS502へ進む。一方、リカバリーキューに登録されたデータがない場合には、ステップS500に戻る。
 ステップS503では、仮想ドライブ制御部110は、メタデータベース210を参照し、リカバリーキューに登録されたデータを基にバックアップ済みの物理ファイルデータ(バックアップファイル)の物理パスを取得する。具体的には、リカバリーキューに登録されたファイルIDをキーにバックアップ仮想ドライブ5bのメタデータベース210bを検索し、バックアップファイルの物理パスを取得する。そして、取得した物理パスを基にバックアップファイルをコピーして復元ファイルを作成する。復元先は、マスタ用ストレージ群7を構成するいずれかのストレージ6であり、どのストレージ6に保存するかはストレージ6の使用状況等を考慮して仮想ドライブ制御部110が決定する。復元を行ったら、マスタ仮想ドライブ5aのメタデータベース210aのリンク情報を書き換えて、ファイルアクセスエラーの基となった仮想ドライブ5上のディレクトリパス(ステップS400でユーザ端末2から送信されたファイルアクセス要求に含まれていた仮想ドライブ5上のディレクトリパス)と、復元した物理ファイルとをリンクさせる。すなわち、エラー対象ファイルに係るファイル情報の物理パスを、復元ファイルの物理パスに更新する。この復元ファイルの作成とリンクの更新をリカバリーキューに登録されたデータ全てについて実行したら、ステップS500に戻る。
 以上説明したように、本実施形態におけるリカバリ処理によれば、マスタ仮想ドライブ5aが物理ストレージ6にアクセスした時のエラーをトリガとして、システムが自動的にファイルの復元を行うため、システム管理者による復元操作がなくてもファイルの復元を行うことができる。
 また、ファイルの復元においては、バックアップファイルをコピーして復元ファイルを作成し、その後、メタデータベース210を書き換えてエラー対象ファイルへのリンクを復元ファイルへのリンクに更新するため、ファイルアクセスエラーの発生したファイルのみをリカバリ処理の対象とすることができる。これにより、短時間でリカバリ処理を完了でき、エラーファイルへアクセスを試みたユーザのリカバリ待機時間を短縮することができる。また、リカバリ処理の実行中も他のファイルは影響を受けないため、エラーファイルへアクセスを試みたユーザ以外のエンドユーザに影響を与えないようにすることができる。
 なお、上記実施形態においてはエラー対象ファイルのみを復元の対象としたが、エラー対象ファイル以外のファイルも復元の対象としてもよい。例えば、エラー対象ファイルを保存したストレージ6に障害が発生した可能性があるため、エラー対象ファイルを保存したストレージ6全体を復元の対象としてもよい。
 (マスタ用ストレージリカバリ処理)
 次に、本実施形態におけるマスタ用ストレージリカバリ処理について、図8を参照しながら説明する。
 本実施形態におけるマスタ用ストレージリカバリ処理は、ストレージリカバリ制御部140によって実行されるものであり、マスタ用ストレージ群7を構成するストレージ6に障害が発生したときに、当該障害の発生したストレージ6で管理されていたデータを、バックアップのデータから復元する処理である。
 まず、図8に示すステップS600において、ストレージリカバリ制御部140は、ストレージ6に対する強制取外し処理要求を受信する。この強制取外し処理要求は、システム管理者によりストレージ6の取り外し操作が実行されたことを契機として出力される。そして、ステップS601に進む。
 ステップS601では、取り外し対象のストレージ6に含まれるデータのステータスが「強制取外し実施中」となるようにマスタ仮想ドライブ5aのメタデータベース210aを更新する。なお、「強制取外し実施中」のストレージ6に含まれるデータにユーザからのアクセス要求があった場合には、バックアップデータを参照専用で送信するか、ファイルアクセスエラーを送信する。そして、ステップS602に進む。
 ステップS602では、取り外し対象のストレージ6内で管理されているファイルのファイル情報をマスタ仮想ドライブ5aのメタデータベース210aから抽出する。抽出されたファイル情報には、ファイルIDが含まれるので、このファイルIDを基にバックアップデータへのアクセス情報を取得する。具体的には、ファイルIDをキーにバックアップ仮想ドライブ5bのメタデータベース210bを検索し、バックアップファイルの物理パスを取得する。そして、ステップS603に進む。
 ステップS603では、バックアップファイルの物理パスを基に取得したバックアップデータを、取り外し対象のストレージ6と同じ仮想ドライブ5(すなわちマスタ仮想ドライブ5a)を構成する他のストレージ6(すなわちマスタ用ストレージ群7に含まれるストレージ6)にコピーする。
 そして、当該他のストレージ6にコピーされたデータへとアクセスできるようにマスタ仮想ドライブ5aのメタデータベース210aのリンク情報を書き換える。具体的には、コピーしたファイルに係るファイル情報に含まれる物理パスを、コピーしたデータを指し示すように書き換える。
 マスタ仮想ドライブ5aのメタデータベース210aを書き換えたら、当該データの「強制取外し実施中」のステータスをOFFにする。そして、マスタ用ストレージリカバリ処理が終了する。
 以上説明したように、本実施形態におけるマスタ用ストレージリカバリ処理によれば、障害が発生したストレージ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では、取り外し対象のストレージ6に含まれるデータのステータスが「強制取外し実施中」となるようにバックアップ仮想ドライブ5bのメタデータベース210bを更新する。なお、「強制取外し実施中」のストレージ6に含まれるデータにアクセスする必要性が生じた場合には、バックアップデータを参照専用で返却するか、ファイルアクセスエラーを返却する。そして、ステップS702に進む。
 ステップS702では、取り外し対象のストレージ6内で管理されているファイルのファイル情報をバックアップ仮想ドライブ5bのメタデータベース210bから抽出する。なお、抽出されたファイル情報には、ファイルIDが含まれるので、このファイルIDを基にマスタデータへのアクセス情報を取得する。具体的には、ファイルIDをキーにマスタ仮想ドライブ5aのメタデータベース210aを検索し、マスタファイルの物理パスを取得する。そして、ステップS703に進む。
 ステップS703では、マスタファイルの物理パスを基に取得したマスタデータを、取り外し対象のストレージ6と同じ仮想ドライブ5(すなわちバックアップ仮想ドライブ5b)を構成する他のストレージ6(すなわちバックアップ用ストレージ群8に含まれるストレージ6)にコピーする。
 そして、当該他のストレージ6にコピーされたデータへとアクセスできるようにバックアップ仮想ドライブ5bのメタデータベース210bのリンク情報を書き換える。具体的には、コピーしたファイルに係るファイル情報に含まれる物理パスを、コピーしたデータを指し示すように書き換える。
 バックアップ仮想ドライブ5bのメタデータベース210bを書き換えたら、当該データの「強制取外し実施中」のステータスをOFFにする。そして、バックアップ用ストレージリカバリ処理が終了する。
 以上説明したように、本実施形態におけるバックアップ用ストレージリカバリ処理によれば、障害が発生したストレージ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を再構築する。すなわち、バックアップ仮想ドライブ5bのメタデータベース210bに登録された各レコード(ファイル情報)に対応するレコードを、同じファイルIDとなるようにマスタ仮想ドライブ5aのメタデータベース210aに登録する。そして、ステップS803に進む。
 ステップS803では、バックアップ用ストレージ群8にバックアップされていた全データをバックアップ仮想ドライブ5bのメタデータベース210bから抽出し、リカバリーキューに登録する。登録されたデータは、非同期実行で順にマスタ用ストレージ群7に復元コピーされる。このとき、各ファイルを復元コピーするごとに、当該ファイルのファイル情報に含まれる物理パスがコピー先の物理パスとなるようにマスタ仮想ドライブ5aのメタデータベース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 (16)

  1.  複数のストレージを制御するファイル管理システムであって、
     前記複数のストレージのうちの任意のストレージ群で構成した仮想ドライブを制御する仮想ドライブ制御部と、
     前記仮想ドライブ上の仮想ファイルと前記ストレージに保存された物理ファイルとを関連付けるための情報を含むメタデータベースと、
     前記仮想ドライブに保存されたファイルのバックアップを管理するバックアップ制御部と、
     前記バックアップ制御部によるバックアップの管理に使用されるバックアップ状態管理データベースと、
     を備え、
     前記仮想ドライブ制御部は、更新されたファイルの情報を前記バックアップ状態管理データベースに登録し、
     前記バックアップ制御部は、前記バックアップ状態管理データベースと前記メタデータベースとを参照してファイルをバックアップすることを特徴とする、ファイル管理システム。
  2.  前記バックアップ制御部は、ファイルが更新されたことをトリガとしてバックアップを実行することを特徴とする、請求項1記載のファイル管理システム。
  3.  前記仮想ドライブ制御部は、ユーザの操作対象であるマスタ仮想ドライブと、前記マスタ仮想ドライブのデータをバックアップするためのバックアップ仮想ドライブと、を制御することを特徴とする、請求項1又は2記載のファイル管理システム。
  4.  前記バックアップ制御部は、前記ファイル管理システムを構成するファイル管理サーバの負荷を監視し、当該負荷が予め設定された許容値を超過している場合には前記ファイルのバックアップを待機させることを特徴とする、請求項1~3のいずれかに記載のファイ
    ル管理システム。
  5.  前記仮想ドライブ制御部は、ファイルアクセスエラーが発生したときに、前記メタデータベースを参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行うことを特徴とする、請求項1~4のいずれかに記載のファイル管理システム。
  6.  前記ファイルの復元は、前記バックアップ制御部が前記バックアップファイルをコピーして復元ファイルを作成する処理と、前記仮想ドライブ制御部が前記メタデータベースを書き換えて前記エラー対象ファイルへのリンクを前記復元ファイルへのリンクに更新する処理とを含むことを特徴とする、請求項5記載のファイル管理システム。
  7.  障害の発生したストレージで管理されていたデータを復元するストレージリカバリ処理を実行するストレージリカバリ制御部を更に備え、
     前記ストレージリカバリ制御部は、前記ストレージリカバリ処理において、前記障害の発生したストレージに含まれるデータのコピーデータを取得し、当該コピーデータを前記障害の発生したストレージと同じ仮想ドライブを構成する他のストレージにコピーするとともに、前記メタデータベースのリンク情報を書き換えることを特徴とする、請求項1~6のいずれかに記載のファイル管理システム。
  8.  前記メタデータベースとして、マスタ用のメタデータベースとバックアップ用のメタデータベースとを備え、
     バックアップデータからシステムを復元するシステムリカバリ処理を実行するシステム初期化制御部を更に備え、
     前記システム初期化制御部は、前記システムリカバリ処理において、前記バックアップ用のメタデータベースを基にバックアップ済みファイルを取得し、バックアップ済みファイルを復元コピーすることを特徴とする、請求項1~7のいずれかに記載のファイル管理システム。
  9.  複数のストレージを制御するファイル管理方法であって、
     前記複数のストレージのうちの任意のストレージ群で仮想ドライブを構成するステップと、
     前記仮想ドライブ上の仮想ファイルと前記ストレージに保存された物理ファイルとを関連付けてメタデータベースに登録するステップと、
     更新されたファイルの情報をバックアップ状態管理データベースに登録するステップと

     前記バックアップ状態管理データベースと前記メタデータベースとを参照してファイルをバックアップするステップと、
     を有することを特徴とする、ファイル管理方法。
  10.  前記ファイルのバックアップは、ファイルが更新されたことをトリガとして実行されることを特徴とする、請求項9記載のファイル管理方法。
  11.  前記仮想ドライブを構成するステップは、ユーザの操作対象であるマスタ仮想ドライブを構成するステップと、前記マスタ仮想ドライブのデータをバックアップするためのバックアップ仮想ドライブを構成するステップと、を含むことを特徴とする、請求項9又は10記載のファイル管理方法。
  12.  前記ファイルのバックアップは、前記ファイル管理システムを構成するファイル管理サーバの負荷が予め設定された許容値を超過している場合には実行が遅延されることを特徴とする、請求項9~11のいずれかに記載のファイル管理方法。
  13.  ファイルアクセスエラーが発生したときに、前記メタデータベースを参照してエラー対象ファイルに対応するバックアップファイルを取得してファイルの復元を行うステップを含むことを特徴とする、請求項9~12のいずれかに記載のファイル管理方法。
  14.  前記ファイルの復元は、前記バックアップファイルをコピーして復元ファイルを作成する処理と、前記メタデータベースを書き換えて前記エラー対象ファイルへのリンクを前記復元ファイルへのリンクに更新する処理と、を含むことを特徴とする、請求項13記載のファイル管理方法。
  15.  障害の発生したストレージで管理されていたデータを復元するストレージリカバリ処理の実行を受け付けるステップと、
     前記ストレージリカバリ処理において、前記障害の発生したストレージに含まれるデータのコピーデータを取得し、当該コピーデータを前記障害の発生したストレージと同じ仮想ドライブを構成する他のストレージにコピーするとともに、前記メタデータベースのリンク情報を書き換えるステップと、
     を含むことを特徴とする、請求項9~14のいずれかに記載のファイル管理方法。
  16.  前記メタデータベースとして、マスタ用のメタデータベースとバックアップ用のメタデータベースとを備え、
     バックアップデータからシステムを復元するシステムリカバリ処理の実行を受け付けるステップと、
     前記システムリカバリ処理において、前記バックアップ用のメタデータベースを基にバックアップ済みファイルを取得し、バックアップ済みファイルを復元コピーするステップと、
     を含むことを特徴とする、請求項9~15のいずれかに記載のファイル管理方法。
PCT/JP2012/071013 2011-09-07 2012-08-20 ファイル管理システム及びファイル管理方法 WO2013035517A1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2012547191A JP5315460B1 (ja) 2011-09-07 2012-08-20 ファイル管理システム及びファイル管理方法
CN201280043462.0A CN103782279B (zh) 2011-09-07 2012-08-20 文件管理系统和文件管理方法
US14/130,642 US9323624B2 (en) 2011-09-07 2012-08-20 File management system and file management method
CA2841104A CA2841104C (en) 2011-09-07 2012-08-20 File management sysyetm and file management method
EP12830182.7A EP2755141B1 (en) 2011-09-07 2012-08-20 File management system and file management method
KR1020137033938A KR101966339B1 (ko) 2011-09-07 2012-08-20 파일 관리 시스템 및 파일 관리 방법

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2011194796 2011-09-07
JP2011-194796 2011-09-07

Publications (1)

Publication Number Publication Date
WO2013035517A1 true WO2013035517A1 (ja) 2013-03-14

Family

ID=47831967

Family Applications (1)

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

Country Status (7)

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

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679772A (zh) * 2013-11-29 2015-06-03 深圳市腾讯计算机系统有限公司 分布式数据仓库中删除文件的方法、装置、设备及系统
JP2016133976A (ja) * 2015-01-19 2016-07-25 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP2018525705A (ja) * 2016-07-22 2018-09-06 平安科技(深▲せん▼)有限公司 仮想マシン性能を向上させる方法、端末、装置及びコンピュータ可読記憶媒体
JP2020095589A (ja) * 2018-12-14 2020-06-18 株式会社アール・アイ 仮想ファイル処理システム及び仮想ファイル処理プログラム
JP2020095588A (ja) * 2018-12-14 2020-06-18 株式会社アール・アイ 仮想ファイル処理システム及び仮想ファイル処理プログラム
US11550671B2 (en) 2020-09-18 2023-01-10 Fujitsu Limited Backup management device, backup management method, and information processing system

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5315460B1 (ja) 2011-09-07 2013-10-16 株式会社オレガ ファイル管理システム及びファイル管理方法
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
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
KR102024573B1 (ko) * 2015-12-08 2019-09-25 한국전자통신연구원 시스템의 설정 유실 방지를 위한 시스템 설정 관리 장치 및 방법
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 天阳宏业科技股份有限公司 文件备份方法及文件备份系统
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 株式会社日立製作所 ファイルストレージシステム及びファイルストレージシステムの管理方法
KR102673726B1 (ko) 2023-07-28 2024-06-10 주식회사 워크스타일 분산 저장 자동 버전 관리 시스템

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003518659A (ja) * 1998-12-31 2003-06-10 イーエムシー コーポレーション コンピュータ・ストレージ・システムを操作するための装置および方法
JP2005157949A (ja) * 2003-11-28 2005-06-16 Toshiba Corp 情報処理装置
JP2007199922A (ja) * 2006-01-25 2007-08-09 Hitachi Ltd 記憶システム及びそのデータ復元方法
JP2010026940A (ja) * 2008-07-23 2010-02-04 Hitachi Ltd リモートコピーシステム、及びリモートサイトの省電力化方法
JP2010123066A (ja) * 2008-11-21 2010-06-03 Hitachi Ltd オンラインボリュームと性能/障害独立かつ容量効率の高いスナップショットを実現するストレージシステム及び方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1010076A1 (en) * 1996-11-27 2000-06-21 1Vision Software, L.L.C. File directory and file navigation system
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
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 計算機システム及びデータ複製方法
CN101546295B (zh) * 2008-03-24 2010-12-22 上海梅山钢铁股份有限公司 基于计算机硬盘分区的数据备份和恢复方法
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 中国科学院计算技术研究所 磁盘阵列在线重构系统及方法
US8402309B2 (en) * 2009-10-12 2013-03-19 Vecam Software International Ltd. 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 北京深思洛克软件技术股份有限公司 一种数据备份方法和装置
JP5315460B1 (ja) 2011-09-07 2013-10-16 株式会社オレガ ファイル管理システム及びファイル管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003518659A (ja) * 1998-12-31 2003-06-10 イーエムシー コーポレーション コンピュータ・ストレージ・システムを操作するための装置および方法
JP2005157949A (ja) * 2003-11-28 2005-06-16 Toshiba Corp 情報処理装置
JP2007199922A (ja) * 2006-01-25 2007-08-09 Hitachi Ltd 記憶システム及びそのデータ復元方法
JP2010026940A (ja) * 2008-07-23 2010-02-04 Hitachi Ltd リモートコピーシステム、及びリモートサイトの省電力化方法
JP2010123066A (ja) * 2008-11-21 2010-06-03 Hitachi Ltd オンラインボリュームと性能/障害独立かつ容量効率の高いスナップショットを実現するストレージシステム及び方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP2755141A4 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104679772A (zh) * 2013-11-29 2015-06-03 深圳市腾讯计算机系统有限公司 分布式数据仓库中删除文件的方法、装置、设备及系统
JP2016133976A (ja) * 2015-01-19 2016-07-25 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP2018525705A (ja) * 2016-07-22 2018-09-06 平安科技(深▲せん▼)有限公司 仮想マシン性能を向上させる方法、端末、装置及びコンピュータ可読記憶媒体
JP2020095589A (ja) * 2018-12-14 2020-06-18 株式会社アール・アイ 仮想ファイル処理システム及び仮想ファイル処理プログラム
JP2020095588A (ja) * 2018-12-14 2020-06-18 株式会社アール・アイ 仮想ファイル処理システム及び仮想ファイル処理プログラム
JP7164176B2 (ja) 2018-12-14 2022-11-01 アップデータ株式会社 仮想ファイル処理システム及び仮想ファイル処理プログラム
US11550671B2 (en) 2020-09-18 2023-01-10 Fujitsu Limited Backup management device, backup management method, and information processing system

Also Published As

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

Similar Documents

Publication Publication Date Title
JP5315460B1 (ja) ファイル管理システム及びファイル管理方法
US11416341B2 (en) Systems and methods to reduce application downtime during a restore operation using a pseudo-storage device
US11847026B2 (en) Single snapshot for multiple agents
US11500669B2 (en) Live recovery of virtual machines in a public cloud computing environment
US11288236B2 (en) Data synchronization management
US20210263657A1 (en) Partial sharing of secondary storage files in a data storage system
US9588847B1 (en) Recovering corrupt virtual machine disks
EP3696678B1 (en) Filtered reference copy of secondary storage data in a data storage system
US9483361B2 (en) Information management cell with failover management capability
US8117168B1 (en) Methods and systems for creating and managing backups using virtual disks
US9846698B1 (en) Maintaining point-in-time granularity for backup snapshots
US9875162B1 (en) Recovering corrupt storage systems
US20130227352A1 (en) Log monitoring

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201280043462.0

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2012547191

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 12830182

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20137033938

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 2012830182

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14130642

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2841104

Country of ref document: CA

NENP Non-entry into the national phase

Ref country code: DE