WO2013042218A1 - 計算機システム、ファイル管理方法及びメタデータサーバ - Google Patents

計算機システム、ファイル管理方法及びメタデータサーバ Download PDF

Info

Publication number
WO2013042218A1
WO2013042218A1 PCT/JP2011/071437 JP2011071437W WO2013042218A1 WO 2013042218 A1 WO2013042218 A1 WO 2013042218A1 JP 2011071437 W JP2011071437 W JP 2011071437W WO 2013042218 A1 WO2013042218 A1 WO 2013042218A1
Authority
WO
WIPO (PCT)
Prior art keywords
file
server
metadata
stored
deleted
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.)
Ceased
Application number
PCT/JP2011/071437
Other languages
English (en)
French (fr)
Inventor
高岡 伸光
児玉 昇司
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2013534501A priority Critical patent/JP5697754B2/ja
Priority to EP11872681.9A priority patent/EP2759942A4/en
Priority to CN2011800698234A priority patent/CN103460197A/zh
Priority to US14/003,972 priority patent/US9396198B2/en
Priority to PCT/JP2011/071437 priority patent/WO2013042218A1/ja
Publication of WO2013042218A1 publication Critical patent/WO2013042218A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Definitions

  • the present invention relates to a storage device, a metadata server that manages metadata of files stored in the storage device, a business server that executes predetermined business processing, and an analysis that executes analysis processing on data used by the business server
  • the present invention relates to a file management method in a computer system composed of a server.
  • a business program running on the computer executes a process necessary for the business.
  • the business program includes, for example, an autonomously operating program such as a document management system and an interactive program such as a document creation program used by a user.
  • the system configuration can be changed and the storage capacity can be managed flexibly.
  • business data stored in a file server is widely used to obtain useful information for corporate management by causing an analysis program that runs on a computer different from the business program to perform analysis processing such as statistical processing. ing.
  • a business program may delete a file stored in a file server in the course of processing.
  • the analysis program preferably obtains and analyzes all the files of the computer system including the files deleted from the file server in the past.
  • the backup system periodically reads data stored in the file server and copies it to another backup storage device.
  • the backup system since the same data is held in the file server and the backup storage device, the use efficiency of the storage area is poor.
  • a method using a snapshot function provided in the file server As another method, there is a method using a snapshot function provided in the file server.
  • the snapshot function By using the snapshot function, it is possible to hold a plurality of file server states at a certain past time while suppressing consumption of the storage area.
  • the number of snapshots that can be created is limited, for example, it is not suitable for use in acquiring a file that existed at the time of going back to the past of five years or more.
  • the archive system is a system that moves a file that satisfies a predetermined condition (for example, a file that has not been updated for a certain period of time) to another storage.
  • a predetermined condition for example, a file that has not been updated for a certain period of time
  • the archive system targets only files existing in the file system, for example, it is not possible to specify “deleted file” as a condition.
  • Patent Document 1 discloses a technique for saving a file deleted by a user operation to a different storage area without actually deleting it and restoring it later.
  • the present invention realizes a computer system that makes it possible to refer to all files that are under management of a business program, including deleted files that existed in the past, from an analysis program without making an extra copy. It is.
  • a typical example of the invention disclosed in the present application is as follows. That is, a computer system comprising a file server that manages a plurality of files, a metadata server that manages metadata of the files, and a business server that executes predetermined business processing using the files,
  • the file server, the metadata server, and the business server are connected to each other via a network, and the file server includes a first processor, a first memory connected to the first processor, and the first server.
  • a first network interface connected to one processor, and a first storage medium connected to the first processor for storing the file
  • the metadata server includes a second processor A second memory connected to the second processor and a second memory connected to the second processor.
  • a storage device that provides a storage area is connected, and the second storage medium stores a metadata repository that manages the metadata of the file and the storage location of the file stored in the storage area
  • the metadata server deletes the file stored in the file server by the business process executed by the business server.
  • the file is stored in the storage area as a save file, and information indicating the storage position of the file in the file server; and information indicating the storage position of the save file in the storage area; Are stored in the metadata repository in association with each other.
  • the metadata server can manage files deleted from the file server without creating an extra copy.
  • FIG. 1 is a block diagram for explaining the outline of the processing of the present invention.
  • the computer system 500 includes a metadata server 1, a evacuation storage device 2, a plurality of file servers 4, a plurality of business servers 5, and a plurality of analysis servers 6.
  • the business server 5 is a computer that executes a predetermined business, and a business program 51 is operated.
  • the business program 51 executes a predetermined business using a file stored in the file server 4.
  • the business program 51 includes a file 1000-1 with a path name “/A/a.doc” and a file 1000-2 with a path name “/A/c.doc”. To execute a predetermined job.
  • files 1000 when files are not distinguished, they are referred to as files 1000.
  • the analysis server 6 is a computer that analyzes the file 1000, and an analysis program 61 is running.
  • the analysis program 61 reads the files 1000-1 and 1000-2 used by the business program 51 and executes analysis processing such as statistical processing.
  • the metadata server 1 is a computer that manages metadata of files stored in a plurality of file servers 4.
  • the metadata server 1 of this embodiment is characterized in that it also manages metadata related to files deleted from the file server 4.
  • Metadata refers to a set of attribute values set in a file.
  • metadata includes file owner, file ownership group, access control information, file creation date, file update date, file metadata update date, file size, and other user-defined attributes Contains the value.
  • the metadata server 1 manages a metadata repository in which file metadata is stored.
  • the metadata repository includes a field for specifying a file stored in the file server 4, a field for specifying a file stored in the evacuation storage device 2, and a field indicating the state of the file.
  • the field specifying the file stored in the file server 4 includes a path name and a storage name.
  • the field for specifying the file stored in the evacuation storage device 2 includes a path name and a storage name.
  • information indicating whether the file exists in the file server 4 is stored as a field indicating the state of the file.
  • the business program 51 transmits a request to delete the file 1000-1 to the file server 4 whose identification name is “FS1” (step S1001).
  • the file server 4 When the file server 4 detects the file deletion request, the file server 4 suspends the deletion of the file 1000-1 and notifies the metadata server 1 that the deletion request for the file 1000-1 has been received (step S1002).
  • the metadata server 1 When the metadata server 1 receives the notification from the file server 4 (step S1003), the metadata server 1 updates the record corresponding to the file 1000-1 stored in the metadata repository 150 (step S1004). Specifically, “delete” indicating that the file 1000-1 is deleted is stored in the field indicating the file status.
  • the metadata server 1 moves the file 1000-1 to the save storage device 2 (step S1005). Specifically, the metadata server 1 acquires the file 1000-1 from the file server 4 and stores it as the file 1008 in the file system 22 of the save storage device 2.
  • the file 1008 is stored in the path name “r / FS1 / A / a.doc”.
  • the path names in the evacuation storage device 2 are set so as not to overlap.
  • the metadata server 1 instructs the file server 4 to delete the file 1000-1 (step S1006).
  • the file server 4 deletes the file 1000-1 and responds to the business program 51 that the file 1000-1 has been deleted.
  • the metadata server 1 updates the record corresponding to the metadata of the file 1000-1 in the metadata repository 150 (step S1007). Specifically, the path name “r / FS1 / A / a.doc” of the file 1008 and the save storage device 2 in which the file 1008 is stored in the field for specifying the file stored in the save storage device 2 The identification name “S1” is stored.
  • FIG. 1 shows changes in the metadata repository 150 before and after the deletion of the file 1000-1.
  • the analysis program 61 will explain the outline of the analysis processing for analyzing the current and past files.
  • an analysis process after the file 1000-1 is deleted from the file server 4 by the business program 51 and the file 1000-1 is moved to the save storage device 2 will be described.
  • the analysis program 61 inquires of the metadata server 1 about all files including the file currently stored and the file existing in the past (step S1011). Specifically, the analysis program 61 requests the metadata server 1 for a list of all files.
  • the metadata server 1 generates a list based on the metadata repository 150, and responds the generated list to the analysis program 61 (step S1012).
  • the list is composed of a plurality of entries including information for specifying a file.
  • the entry includes a file path name, a storage device identification name, metadata of the file in the file server 4, and fields indicating the file status.
  • the entry of the file 1000-1 deleted from the file server 4 further includes the path name of the file save destination and the identification name of the save storage device 2.
  • the field indicating the file status of the entry stores information indicating that the file has been deleted.
  • the analysis program 61 identifies the storage location of the file based on the list acquired from the metadata server 1.
  • the analysis program 61 shows that two files having path names “/A/a.doc” and “/A/c.doc” exist in the file server 4. Furthermore, the analysis program 61 deletes the file having the path name “/A/a.doc” from the file server 4 among the files described above, and stores it in the evacuation storage apparatus 2 having the identification name “S1”. It can be seen that the file is stored as a file 1008 whose path name is “r / FS1 / A / a.doc”.
  • the analysis program 61 refers to the list and acquires all files necessary for the analysis process (steps S1013 and S1014). That is, the analysis program 61 acquires the file 1000-2 stored in the file server 4 from the file server 4, and acquires the file 1008 corresponding to the file 1000-1 deleted from the file server 4 from the save storage device 2. To do.
  • the metadata server 1 can manage the analysis program 61 to analyze the file deleted by the business program 51 during the business execution.
  • a file that is deleted from the file server 4 and whose contents can be acquired by making an inquiry to the metadata server 1 as a file 1000-1 is referred to as a deleted file.
  • a copy of the deleted file stored in the save storage device is called a save file.
  • a file to be deleted and stored in the file server 4 before becoming a deleted file is called an original file.
  • a file stored in the file server 4 and not deleted is called a normal file.
  • FIG. 2 is a block diagram illustrating the configuration of the computer system 500 according to the first embodiment of the present invention.
  • the computer system 500 includes a metadata server 1, a backup storage device 2, a backup storage device 3, a plurality of file servers 4, a plurality of business servers 5, a plurality of analysis servers 6, and a network 7.
  • the metadata server 1, the backup storage device 2, the backup storage device 3, the file server 4, the business server 5, and the analysis server 6 can communicate with each other via the network 7.
  • the network 7 can be configured using a LAN (Local Area Network), a WAN (Wide Area Network), the Internet, and the like.
  • the present invention is not limited to the network 7 connection method.
  • the metadata server 1 is a computer that manages metadata. Note that the metadata server 1 may be a virtual machine generated using a virtualization technique.
  • the metadata server 1 includes a metadata server program 110 and a metadata repository 150. Other components will be described later.
  • the evacuation storage device 2 is a storage device that stores various files.
  • the storage device is a device that includes a controller (not shown), a network interface (not shown), and one or more storage media (not shown), and can provide a storage area of the storage medium to a computer. Show.
  • the storage apparatus can configure RAID using a plurality of storage media, and can generate a plurality of logical storage areas as physical storage areas.
  • a different file system can be constructed for each logical storage area.
  • the evacuation storage device 2 includes a file sharing program 21 and a file system 22.
  • the file sharing program 21 stores the file in the file system 22 and reads the file from the file system 22 in accordance with the file access request received from the metadata server 1 via the network 7. Other components will be described later.
  • the backup storage device 3 is a storage device that stores various files. However, the backup storage device 3 is used particularly for the purpose of backing up files.
  • the backup storage device 3 includes a backup program 31 and a file system 32. Other components will be described later.
  • the file server 4 is a computer that stores various files and manages the files.
  • the file server 4 stores files necessary for the business program 51 to execute business processing.
  • the file server 4 includes a file sharing program 411 and a file system 452. Other components will be described later.
  • the file server 4 is also recognized as a kind of storage device.
  • the business server 5 is a computer that executes a program necessary for realizing business processing.
  • the business server 5 may be a virtual machine generated using a virtualization technique.
  • the business server 5 includes a business program 51.
  • the business program 51 is a program for performing predetermined business processing, and acquires data necessary for business processing from the file server 4 and executes predetermined business processing. Other components will be described later.
  • the analysis server 6 is a computer that executes a program necessary for realizing analysis processing.
  • the analysis server 6 may be a virtual computer generated using a virtualization technique.
  • the analysis server 6 includes an analysis program 61.
  • the analysis program 61 is stored in the file server 4, reads a file used by the business program 51 for business processing, and executes analysis processing using the read file.
  • FIG. 3 is a block diagram illustrating the configuration of the metadata server 1 according to the first embodiment of the present invention.
  • the metadata server 1 includes a memory 11, a processor 12, a network interface 13, and a local storage 15, and each component is connected to each other via an internal bus 16.
  • the processor 12 executes a program stored in the memory 11.
  • the functions of the metadata server 1 can be realized.
  • the memory 11 stores the metadata server program 110.
  • the metadata server program 110 is a program for realizing the functions provided in the metadata server 1 and includes a plurality of subprograms.
  • the metadata server program 110 includes an inquiry processing program 111, a metadata management program 112, a file deletion detection program 113, a file save program 114, and a file proxy read program 115.
  • the inquiry processing program 111 is a program that executes processing for inquiries from the file server 4 and the analysis server 6.
  • the metadata management program 112 is a program for managing metadata.
  • the file deletion detection program 113 is a program that detects that a file is deleted from the file server 4.
  • the file save program 114 is a program for copying a file to the save storage device 2.
  • the file proxy read program 115 is a program for reading a file from the save storage device 2.
  • subprograms may be executed as independent processes, or may be executed as a partial program such as a library constituting the metadata server program 110. Details of processing executed by each subprogram will be described later with reference to the drawings.
  • the memory 11 also stores a list 116 generated when an inquiry from the analysis server 6 is received.
  • the list 116 stores information necessary for acquiring a file from the file server 4 or the evacuation storage device 2.
  • the local storage 15 is a storage medium included in the metadata server 1, and a hard disk drive (HDD), a solid state drive (SSD), and a nonvolatile memory (NVRAM) can be considered.
  • HDD hard disk drive
  • SSD solid state drive
  • NVRAM nonvolatile memory
  • the local storage 15 stores the metadata repository 150.
  • the metadata repository 150 may be stored in the memory 11 or may be stored in a storage device connected to the metadata server 1.
  • the metadata repository 150 includes a storage management table 151, a namespace management table 152, a metadata management table 153, and a file save management table 154.
  • a storage management table 151 includes a storage management table 151, a namespace management table 152, a metadata management table 153, and a file save management table 154.
  • FIG. 4 is an explanatory diagram showing an example of the configuration of the storage management table 151 according to the first embodiment of this invention.
  • the storage management table 151 stores information about storage devices managed by the metadata server 1. Specifically, the storage management table 151 includes one or more records, and each record includes a storage ID 1511, a storage name 1512, a type 1513, and an IP address 1514.
  • Each record of the storage management table 151 corresponds to one storage device managed by the metadata server 1.
  • the storage ID 1511 stores an identifier for the metadata server 1 to uniquely identify the storage device.
  • the storage name 1512 stores the identification name set for the storage device in the computer system 500.
  • Type 1513 stores the usage type of the storage device. For example, “file server” is stored when the storage device is the file server 4, and “archive storage” is stored when the storage device stores the archive file.
  • the IP address 1514 stores an IP address assigned to the storage device.
  • the first record includes a storage ID 1511 “s1000”, a storage name 1512 “FS1”, a type 1513 “file server”, and an IP address 1514 “192.168.10.100”.
  • the information of the file server 4 is stored.
  • information of the file server 4 is stored in the second record, and information of the evacuation storage device 2 is stored in the third record.
  • FIG. 5 is an explanatory diagram showing an example of the configuration of the name space management table 152 in the first embodiment of the present invention.
  • the name space management table 152 stores information related to the name space in the storage device managed by the metadata server 1.
  • the name space is a logical unit for identifying a storage area in which a file is stored.
  • the file server 4 it is known that names such as a shared name and a public name correspond to a name space. The same concept is known for the evacuation storage apparatus 2.
  • the name space management table 152 includes one or more records, and each record includes a name space ID 1521, a name space name 1522, a storage ID 1523, a capacity 1524, a protocol 1525, a usage amount 1526, and a usage 1527.
  • Each record of the name space management table 152 corresponds to a name space in the file server 4 and the evacuation storage device 2.
  • the namespace ID 1521 stores an identifier for the metadata server 1 to uniquely identify the namespace.
  • the name space name 1522 stores a name for the storage apparatus to uniquely identify the name space.
  • the storage ID 1523 stores an identifier of a storage device that provides a logical storage area corresponding to the name space.
  • the storage ID 1523 is the same as the storage ID 1511.
  • the capacity 1524 stores the capacity of a logical storage area corresponding to the name space.
  • the protocol 1525 stores a protocol used when accessing a logical storage area corresponding to the name space.
  • the usage amount 1526 stores the usage amount of the logical storage area corresponding to the name space.
  • Use 1527 stores the use of the logical storage area corresponding to the name space. For example, when the logical storage area is used by the business program 51, “primary” is stored. In the case of a logical storage area for storing a save file, “save” is stored.
  • the first record and the second record store information related to the name space on the file server 4 whose storage ID 1523 is “s1000”.
  • Name space ID 1521 of the first record is “n1001”
  • name space name 1522 is “share1”
  • storage ID 1523 is “s1000”
  • capacity 1524 is “20 TB”
  • protocol 1525 is “nfs”
  • usage amount “5TB” is stored in 1526
  • “primary” is stored in the usage 1527.
  • the second record stores information about the name space name 1522, that is, the name space whose share name is “share2”.
  • information on the name space name 1522 of the other file server 4 that is, the name space whose share name is “share3” is stored.
  • the fourth record stores information related to the name space whose name space name 1522 of the evacuation storage apparatus 2 is “r”.
  • FIG. 6 is an explanatory diagram showing an example of the configuration of the metadata management table 153 according to the first embodiment of this invention.
  • the metadata management table 153 stores information indicating the storage location of the file and metadata. Specifically, the metadata management table 153 includes one or more records, and each record includes a metadata ID 1531, a path 1532, a namespace ID 1533, original metadata 1534, and a file status 1535.
  • Each record of the metadata management table 153 corresponds to a file stored in the file server 4 and a deleted file.
  • the metadata ID 1531 stores an identifier for identifying metadata.
  • the path 1532 stores a path name indicating a storage location where the file is stored.
  • Name space ID 1533 stores an identifier for identifying the name space of the logical storage area in which the file is stored.
  • the namespace ID 1533 is the same as the namespace ID 1521.
  • Original metadata 1534 stores metadata (not shown) in the file server 4.
  • the file status 1535 stores information indicating whether or not the file exists in the file server 4. Specifically, “exist” is stored when the file exists in the file server 4, and “deleted” is stored when the file does not exist in the file server 4.
  • the record in which “exist” is stored in the file status 1535 indicates that the file corresponding to the record is stored in the storage location indicated by the path 1532 and the name space ID 1533.
  • the record in which “deleted” is stored in the file state 1535 is not currently stored in the storage location indicated by the path 1532 and the namespace ID 1533, and indicates that the file is currently a deleted file.
  • the file metadata is managed for each file by the file server 4, and the metadata server 1 can be acquired from the file server 4 through an API (Application Programming Interface) provided for each type of name space.
  • API Application Programming Interface
  • the metadata management table 153 stores records corresponding to the metadata of all files managed by the metadata server 1.
  • the first record represents metadata corresponding to the file “/share1/a.doc” stored in the name space “share1” of the file server 4, and “100” is stored in the metadata ID 1531.
  • the path 1532 of the first record stores “/share1/a.doc” that is the path name of the corresponding file, and the namespace ID 1533 stores “n1001” that is the identifier of the namespace “share1”.
  • the original metadata 1534 of the first record stores the metadata of the corresponding file in the file server 4, but is not shown here. Furthermore, “exist” is stored in the file state 1535 of the first record.
  • the second record represents metadata corresponding to the file “/share1/b.doc” stored in the name space “share1” of the file server 4, and “110” is stored in the metadata ID 1531. Further, “deleted” is stored in the file status 1535 of the second record. Therefore, the file “/share1/b.doc” is not currently stored in the storage location indicated by the path 1532 and the name space ID 1533 but represents a deleted file.
  • the third record represents metadata corresponding to the file “/share1/c.doc” stored in the name space “share1” of the file server 4, and “120” is stored in the metadata ID 1531.
  • FIG. 7 is an explanatory diagram showing an example of the configuration of the file save management table 154 according to the first embodiment of this invention.
  • the file save management table 154 stores information on the save file storage location (save destination). Specifically, the file save management table 154 includes one or more records, and each record includes a metadata ID 1541, a save destination path 1542, and a save destination namespace ID 1543.
  • Each record of the file save management table 154 corresponds to a save file stored in the save storage device 2.
  • the metadata server 1 detects that a file is deleted from the file server 4 and updates the file save management table 154 when the file is moved to the save storage device 2.
  • the metadata ID 1541 stores an identifier for identifying metadata.
  • the metadata ID 1541 is the same as the metadata ID 1531.
  • the save destination path 1542 stores a path name indicating a storage location where the save file is stored.
  • the save destination namespace ID 1543 stores an identifier for identifying the name space in which the save file is stored.
  • the first record stores information related to the save file corresponding to the file “/share1/b.doc” in FIG.
  • the save destination path 1542 stores the save file path name “/r/FS1/share1/b.doc” corresponding to the file “/share1/b.doc”.
  • the save destination namespace ID 1543 stores an identifier “n3001” of the name space in which the save file “/r/FS1/share1/b.doc” is stored.
  • FIG. 8 is a block diagram illustrating the configuration of the file server 4 in the first embodiment of the present invention.
  • the file server 4 includes a memory 41, a processor 42, a network interface 43, and a storage interface 44, and is connected to the storage device 45.
  • the processor 42 executes a program stored in the memory 41.
  • the processor 42 executes the program, the function of the file server 4 can be realized.
  • the memory 41 stores a file sharing program 411, a file system program 412, and a storage input / output program 413.
  • the file sharing program 411 is a program that provides a function for the business program 51, the analysis program 61, and the metadata server program 110 to access a file stored in the storage device 45 via the network 7.
  • the file system program 412 is a program that configures a file system for storing files in the storage apparatus 45 and manages file input / output.
  • the storage input / output program 413 is a program that manages data read / write processing for the storage device 45.
  • the file server 4 realizes a file sharing function via the network 7 by the processor 42 executing the above-described program.
  • the storage device 45 generates a storage volume 451 inside.
  • the storage volume 451 is configured from a storage area of a storage medium such as a heart disk drive, a solid state drive, and a nonvolatile memory provided in the storage device 45.
  • the storage volume 451 includes two name spaces 452-1 and 452-2.
  • “share1” is set as the identification name
  • “share1” is set as the identification name
  • the name spaces 452-1 and 452-2 include data areas 453-1 and 453-2 and concealed file storage areas 454-1 and 454-2, respectively.
  • the data areas 453-1 and 453-2 are areas for storing files that can be referred to by the business program 51.
  • the concealed file storage areas 454-1 and 454-2 are areas for temporarily storing files deleted by the business program 51.
  • the files stored in the concealed file storage areas 454-1 and 454-2 are handled as files that do not exist in the business program 51. That is, the business program 51 cannot recognize the files stored in the concealed file storage areas 454-1 and 454-2.
  • the data areas 453-1 and 453-2 and the concealed file storage areas 454-1 and 454-2 may be included in different storage volumes 451, each of which is one directory in a single file system tree. It may be. Further, the name spaces 452-1 and 452-2 may be included in different storage volumes 451, or each may be one directory in a single file system tree.
  • two name spaces are defined in the storage volume 451, but this does not limit the present invention, and two or more name spaces may be defined.
  • data areas 453-1 and 453-2 are not distinguished, they are referred to as data areas 453.
  • concealed file storage areas 454-1 and 454-2 are not distinguished, they are expressed as concealed file storage areas 454.
  • FIG. 9 is a flowchart for explaining processing executed by the metadata management program 112 in the first embodiment of the present invention.
  • the metadata management program 112 executes this processing periodically or according to a user request in order to update the metadata repository 150.
  • the metadata management program 112 starts processing (step S8000), refers to the name space management table 152, and selects one name space to be processed (step S8001).
  • the metadata management program 112 selects one file to be processed from the files stored in the selected name space (step S8002).
  • a method for selecting a file a method of tracing the file system tree in the name space in order from the upper directory can be considered.
  • the metadata management program 112 acquires the metadata of the file to be processed from the file server 4 (step S8003).
  • the metadata management program 112 updates the metadata management table 153 based on the acquired metadata (step S8004). Specifically, the following processing is executed.
  • the metadata management program 112 determines whether a record corresponding to the selected file has been registered. Specifically, the metadata management program 112 determines whether there is a record in which the path 1532 and the namespace ID 1533 match the identifier of the processing target namespace and the path name of the processing target file.
  • a method of determining whether the acquired metadata matches the original metadata may be used. For example, an inode number which is file identification information in the file server 4 can be used.
  • the metadata management program 112 When it is determined that the record corresponding to the selected file is not registered, the metadata management program 112 registers a new record in the metadata management table 153. At this time, the metadata management program 112 generates an identifier for uniquely identifying the metadata, and stores the generated identifier in the metadata ID 1531.
  • the metadata management program 112 stores the path name of the processing target file in the selected name space in the path 1532 and stores the identifier of the selected name space in the name space ID 1533. Further, the metadata management program 112 stores the acquired metadata in the original metadata 1534 and stores “exist” in the file state 1535.
  • the metadata management program 112 stores the acquired metadata in the original metadata 1534 of the existing record.
  • the metadata management program 112 determines whether or not processing has been completed for all files stored in the processing target namespace (step S8005).
  • the metadata management program 112 returns to step S8002 and executes similar processing (steps S8002 to S8005).
  • the metadata management program 112 determines whether processing has been completed for all namespaces to be managed ( Step S8006).
  • the metadata management program 112 returns to step S8001 and executes the same processing (steps S8001 to S8006).
  • the metadata management program 112 ends the processing (step S8007).
  • FIG. 10 is a flowchart for explaining processing executed by the file sharing program 411 according to the first embodiment of the present invention.
  • the file server 4 When the file server 4 receives an access request for a file from the business program 51 or another program, the file server 4 executes processing described below.
  • step S8100 When the file sharing program 411 starts processing (step S8100), it receives an access request for a predetermined file from the business program 51 or another program via the network 7 (step S8101).
  • the file sharing program 411 determines whether or not the received access request is a file deletion request (step S8102).
  • the file sharing program 411 instructs the file system program 412 to execute processing according to the received access request (step S8105). Thereafter, the file sharing program 411 transmits a response to the source program of the access request, and ends the process (step S8106).
  • the file sharing program 411 indicates to the file deletion detection program 113 of the metadata server 1 that it has received an access request including a file deletion request. Notification is made (step S8103).
  • deletion notification A file requested to be deleted by the business program 51 or another program is called a deletion target file.
  • the deletion target file is finally moved to the save storage device 2 by the metadata server 1.
  • the file to be deleted is moved to the evacuation storage apparatus 2 and “deleted” is stored in the file status 1535 of the metadata management table 153, the file becomes a deleted file.
  • deletion notification includes information such as the path name of the deletion target file, the name space in which the deletion target file is stored, the identification name of the file server, and the metadata of the deletion target file.
  • the file sharing program 411 When the file sharing program 411 receives a response to the deletion notification from the file deletion detection program 113, the file sharing program 411 executes processing for the deletion target file according to the response (step S8104).
  • the response transmitted from the file deletion detection program 113 includes an instruction from the file saving program 114. Specifically, the following processing is executed.
  • the file sharing program 411 moves the deletion target file to the concealed file storage area 454 when the received response includes an instruction to conceal the deletion target file.
  • the business program 51 cannot access the deletion target file. That is, the business program 51 recognizes that the file has been deleted.
  • the file sharing program 411 deletes the deletion target file when the received response includes an instruction to delete the deletion target file.
  • the file sharing program 411 outputs instructions to the file system program 412, thereby realizing the deletion process and the deletion process for the file to be deleted.
  • the file to be deleted stored in the concealed file storage area 454 is referred to as a concealed file.
  • the file sharing program 411 ends the process when the process for the file to be deleted ends (step S8106).
  • the file sharing program 411 executes the process, but may be executed by another program such as the file system program 412.
  • FIG. 11A, FIG. 11B, and FIG. 11C are flowcharts for explaining processing executed by the file deletion detection program 113 in the first embodiment of the present invention.
  • the file deletion detection program 113 when starting the process (step S8200), detects that a file is deleted from the file server 4 (step S8201). The file deletion detection program 113 recognizes the file as a deletion target file.
  • the file deletion detection program 113 can detect that a file is deleted from the file server 4 by receiving a deletion notification from the file sharing program 411 (see step S8103).
  • the notification includes the path name, name space name, metadata, and the like of the file to be deleted.
  • the file deletion detection program 113 updates the record corresponding to the deletion target file in the metadata management table 153 (step S8202).
  • the file deletion detection program 113 refers to the metadata management table 153 based on the information included in the received deletion notification, identifies the record corresponding to the deletion target file, and the file status 1535 of the record. Store “delete” in.
  • the file deletion detection program 113 executes file concealment processing for the deletion target file on the file server 4 (step S8203). In the file concealment process, the following process is executed.
  • the file deletion detection program 113 instructs the file server 4 that has transmitted the deletion notification to execute a concealment process for the deletion target file (step S8204).
  • the file sharing program 411 of the file server 4 that has received the concealment processing execution instruction moves the deletion target file to the concealment file storage area 454.
  • the deleted file is handled as a hidden file.
  • the path name of the concealment file may be automatically determined by the file sharing program 411 or the file system program 412, or may be automatically determined by the file deletion detection program 113.
  • the file deletion detection program 113 updates the file save management table 154 (step S8205). Specifically, the following processing is executed.
  • the file deletion detection program 113 adds a new record to the file save management table 154, and stores the metadata ID 1531 of the record corresponding to the deletion target file in the metadata ID 1541 of the record.
  • the file deletion detection program 113 stores the path name of the concealed file in the save destination path 1542, and stores the identifier of the name space in which the concealed file is stored in the save destination name space ID 1543.
  • the file deletion detection program 113 executes a concealed file save process (step S8206) and ends the process (step S8210).
  • the save process for the concealment file the following process is executed.
  • the file deletion detection program 113 calls the file saving program 114 to instruct execution of saving processing for the hidden file.
  • the file save program 114 that has received the execution instruction for the save process copies the concealment file to the name space on the save storage device 2 (step S8207).
  • the duplicated file becomes the save file.
  • the path name of the save file is determined to be a unique path name in the name space in which the save file is stored.
  • the file evacuation program 114 notifies the completion of the evacuation process for the concealment file together with the information on the evacuation file.
  • the file deletion detection program 113 updates the file save management table 154 based on the information included in the received completion notification (step S8208). Specifically, the path name of the save file is stored in the save destination path 1542 of the record added in step S8205, and the identifier of the name space in which the save file is stored is stored in the save destination namespace ID 1543.
  • the file deletion detection program 113 instructs the file server 4 to delete the concealment file (step S8209).
  • the file server 4 that has received the instruction deletes the hidden file from the name space corresponding to the hidden file storage area 454.
  • the file server 4 may periodically inquire of the metadata server 1 whether there is a file to be deleted. In this case, the file deletion detection program 113 may not instruct the deletion of the concealment file.
  • FIG. 12 is an explanatory diagram showing the metadata management table 153 after the file is moved in the first embodiment of the present invention.
  • FIG. 13 is an explanatory diagram showing the file save management table 154 after the file is moved in the first embodiment of this invention.
  • the second record is a record for storing information of the save file corresponding to the file whose metadata identifier is “100”, that is, the file “share1 / a.doc”.
  • the path name of the save file corresponding to the file “share1 / a.doc” is “r / FS1 / share1 / a.doc”, and the save destination name.
  • the space ID 1543 is the name space identified by “n3001”, that is, the name space “r” of the save storage device 2.
  • FIG. 14 is a flowchart for explaining processing executed by the inquiry processing program 111 according to the first embodiment of the present invention.
  • the inquiry processing program 111 executes processing when the analysis program 61 requests the output of a list of files managed by the metadata server 1.
  • step S8300 When the inquiry processing program 111 starts processing (step S8300), it receives a file inquiry from the analysis program 61 (step S8301).
  • the inquiry may include conditions for the file to be output.
  • Conditions include, for example, a file containing a specific character string in the path name, a file updated at a specific time zone, a file of a specific owner, a file with specific access rights, a specific file server or name A file stored in a space, a file stored in a specific file server or name space, or the like can be considered.
  • it is possible to specify a condition regarding the deleted file such as being a deleted file, not being a deleted file, both a deleted file and a file that is not a deleted file.
  • the logical sum and logical product of a set of files satisfying the above-described conditions can be specified.
  • the inquiry processing program 111 refers to the metadata repository 150 and generates a list 116 of files that satisfy the specified condition on the memory 11 (step S8302). Specifically, the inquiry processing program 111 generates the list 116 with reference to the storage management table 151, the name space management table 152, and the metadata management table 153.
  • 15A and 15B are explanatory diagrams illustrating an example of a configuration of the list 116 according to the first embodiment of this invention.
  • the list 116 stores information on each file managed by the metadata server 1. Specifically, the list 116 includes a metadata ID 1161, a path 1162, original metadata 1163, a storage ID 1164, an IP address 1165, a name space ID 1166, a file status 1167, and save destination information 1168.
  • the metadata ID 1161 stores an identifier for identifying metadata.
  • the metadata ID 1161 is the same as the metadata ID 1531.
  • the path 1162 stores a path indicating a storage location where the file is stored.
  • the path 1162 is the same as the path 1532.
  • Original metadata 1163 stores file metadata.
  • the original metadata 1163 is the same as the original metadata 1153.
  • the storage ID 1164 stores the identifier of the storage device in which the file is stored.
  • the storage ID 1164 is the same as the storage ID 1511.
  • the IP address 1165 stores the IP address assigned to the storage device.
  • the IP address 1165 is the same as the IP address 1514.
  • the namespace ID 1166 stores an identifier for the metadata server 1 to uniquely identify the namespace.
  • the namespace ID 1166 is the same as the namespace ID 1521.
  • the file status 1167 stores information indicating whether or not the file exists in the file server 4.
  • File state 1167 is the same as file state 1535.
  • the save destination information 1168 stores information related to the save file. If it is not a save file, no information is stored in the save destination information 1168.
  • the save destination information 1168 includes a save destination path 11681, a storage ID 11682, an IP address 11683, and a save destination namespace ID 11684.
  • the save destination path 11681 stores a path indicating a storage location where the save file is stored.
  • the save destination path 11681 is the same as the save destination path 1542.
  • the storage ID 11682 stores the identifier of the storage device in which the save file is stored.
  • the storage ID 11682 is the same as the storage ID 1511.
  • the IP address 11683 stores the IP address assigned to the storage device in which the save file is stored.
  • the IP address 11683 is the same as the IP address 1514.
  • the save destination namespace ID 11684 stores an identifier for identifying the name space in which the save file is stored.
  • the save destination namespace ID 11684 is the same as the save destination namespace ID 1543.
  • step S8302 information is stored in the metadata ID 1161, the path 1162, the original metadata 1163, the storage ID 1164, the IP address 1165, the namespace ID 1166, and the file status 1167.
  • the inquiry processing program 111 selects one entry corresponding to the deleted file from the generated list (step S8303). Specifically, the inquiry processing program 111 selects an entry in which “deleted” is stored in the file status 1167. If there are a plurality of entries corresponding to the deleted file, a method of selecting the entries in order from the top of the entries can be considered.
  • the inquiry processing program 111 refers to the file save management table 154 and acquires save destination information in the deleted file corresponding to the selected entry (step S8304).
  • the inquiry processing program 111 identifies a record that matches the metadata ID 1161 of the selected entry from the file save management table 154.
  • the inquiry processing program 111 acquires the save destination path 1542 and the save destination namespace ID 1543 from the specified record. Furthermore, the inquiry processing program 111 uses the save destination name space ID 1543, and from the storage management table 151 and the name space management table 152, the identification name, IP address, and name space of the save storage device 2 in which the save file is stored. Get the distinguished name.
  • the inquiry processing program 111 updates the list 116 based on the information acquired in step S8304 (step S8305). Specifically, the information acquired in step S8304 is stored in the save destination information 1169 of the selected entry.
  • the inquiry processing program 111 determines whether or not processing has been completed for the entries corresponding to all the deleted files included in the list 116 (step S8306).
  • step S8303 If it is determined that the processing for the entries corresponding to all the deleted files has not been completed, the inquiry processing program 111 returns to step S8303 and executes the same processing (step S8303 to step S8306).
  • the inquiry processing program 111 transmits the generated list 116 to the analysis program 61 that is the transmission source of the output request for the file list. Is finished (steps S8307, S8308).
  • FIG. 16 is a flowchart for explaining file analysis processing executed by the analysis program 61 according to the first embodiment of the present invention.
  • the analysis program 61 executes an analysis process periodically or according to a user instruction.
  • the analysis program 61 When the analysis program 61 starts the analysis process (step S8400), it sends an inquiry about the files stored in all the file servers 4 to the inquiry processing program 111 of the metadata server 1 (step S8401).
  • the output request may include conditions for files to be included in the list 116.
  • the analysis program 61 waits for a response from the metadata server 1. That is, the process waits until the list 116 is transmitted from the metadata server 1.
  • the analysis program 61 selects one entry to be processed from the received list 116 (step S8402). For example, a method of selecting from the top entry in the list 116 in order is conceivable.
  • the analysis program 61 acquires information on the file read destination corresponding to the entry (step S8403). Specifically, the following processing is executed.
  • the analysis program 61 determines whether “deleted” is stored in the file status 1167 of the selected entry. If “deleted” is stored in the file status 1167, it can be seen that the selected entry is an entry related to the deleted file.
  • the analysis program 61 acquires information stored in the save destination information 1168. That is, the save destination path 11681, storage ID 11682, IP address 11683, and save destination namespace ID 11684 are acquired.
  • the analysis program 61 acquires a path 1162, a storage ID 1164, an IP address 1165, and a namespace ID 1166.
  • the analysis program 61 reads a file corresponding to the selected entry from the storage device that is the read destination based on the information acquired in step S8403 (step S8404).
  • the analysis program 61 executes a predetermined analysis process based on the contents of the read file and the original metadata 1163 of the selected entry (step S8405).
  • the analysis program 61 determines whether or not processing has been completed for all entries in the acquired list 116 (step S8406).
  • step S8402 If it is determined that processing has not been completed for all entries, the analysis program 61 returns to step S8402 and executes similar processing (steps S8402 to S8406).
  • the analysis program 61 ends the analysis processing (step S8407).
  • the storage device in which the file is stored may be a storage device that cannot be accessed from the analysis program 61.
  • this corresponds to a case where the file sharing protocol for reading a file is not supported by the analysis program 61.
  • the analysis program 61 transmits a read request for a desired file to the file proxy read program 115.
  • the file proxy read program 115 that has received the request reads the file from the storage device in place of the analysis program 61 and returns the read file to the analysis program 61.
  • the file server 4 when the file server 4 receives a file deletion request from the business program 51, the file server 4 transmits a deletion notification of the file to the metadata server 1 in the course of processing. Thereafter, the file server 4 executes the concealment process according to the instruction of the metadata server 1.
  • the file server 4 receives a deletion request for a certain number of files from the business program 51, and when a certain time has elapsed since the deletion notification was transmitted, Are collectively transmitted to the metadata server 1.
  • the file server 4 automatically transmits a plurality of file deletion notifications without receiving an instruction from the metadata server 1 when receiving a file deletion request. File concealment processing is executed.
  • the file server 4 of the second embodiment is different from the file server 4 of the first embodiment in that a new concealment file management table 415 (not shown) is provided in the memory 41. Since other configurations are the same as those of the first embodiment, description thereof is omitted.
  • FIG. 17 is an explanatory diagram showing an example of the configuration of the concealment file management table 415 in the second embodiment of the present invention.
  • the concealment file management table 415 stores information regarding the concealment file. Specifically, the concealed file management table 415 includes a path 4151, a namespace ID 4152, original metadata 4153, and a concealed file path 4154.
  • the path 4151 stores the path name of the file before the concealment process is executed.
  • the namespace ID 4152 stores the identification name of the namespace in which the file was stored before the concealment process was executed.
  • Original metadata 4153 stores the metadata of the file before the concealment process is executed.
  • the concealment file path 4154 stores the path name of the concealment file.
  • FIG. 18 is a flowchart for explaining processing executed by the file sharing program 411 according to the second embodiment of the present invention.
  • step S8600 When the file sharing program 411 starts processing (step S8600), it receives an access request for a predetermined file from the business program 51 or another program via the network 7 (step S8601).
  • the file sharing program 411 determines whether or not the received access request is a file deletion request (step S8602).
  • the file sharing program 411 instructs the file system program 412 to execute processing according to the received access request (step S8607). Thereafter, the file sharing program 411 transmits a response to the access request transmission source program, and ends the processing (step S8608).
  • the file sharing program 411 moves the deletion target file to the concealed file storage area 454 (step S8603). As a result, it is recognized that the file to be deleted is deleted from the business program 51.
  • the file sharing program 411 updates the concealed file management table 415 (step S8604). That is, the file sharing program 411 stores the concealed file information in the concealed file management table 415.
  • the file sharing program 411 generates a new record and stores the path name, namespace identification name, and metadata stored before the deletion target file is moved to the concealed file storage area 454.
  • the path name of the concealment file is stored in the generated record.
  • the path name of the concealment file is determined by the file sharing program 411 so as not to be duplicated in the concealment file management table 415.
  • the file sharing program 411 determines whether it is necessary to send a file deletion notification to the metadata server 1 (step S8605). For example, the file sharing program 411 may store a file when a predetermined number of records are registered in the concealed file management table 415 or when a preset time has elapsed since the previous deletion notification. It is determined that a deletion notification needs to be transmitted.
  • the file sharing program 411 ends the process (step S8608).
  • the file sharing program 411 transmits a file deletion notification to the metadata server 1 (step S8606).
  • the notification includes information on all records stored in the hidden file management table 415, that is, information on all hidden files. Thereafter, the file sharing program 411 ends the process (step S8608).
  • step S8605 and step S8606 is executed in the course of the processing for the access request from the business program 51. These two processings are periodically executed as processing independent of the processing for the access request. May be.
  • the file deletion detection program 113 When the file deletion detection program 113 receives the deletion notification from the file sharing program 411, the file deletion detection program 113 executes the processing shown in FIG. However, when the deletion notification is received, the deletion file is concealed by the file server 4, and therefore the process of step S8203 is not executed.
  • the third embodiment extends the second embodiment so that in addition to the deleted file, the analysis program 61 can also read data partially erased from the file by overwriting the file, changing the file size, or the like. Is characterized by the management.
  • erased data data that is erased by deleting a file, overwriting the file, or reducing the file size is called erased data.
  • erase data is generated by the above-described processing, it cannot be read from the file server 4, but a file that can be acquired by inquiring the metadata server 1 is called a deleted file.
  • a file from which a part of data is erased by overwriting the file or reducing the file size is called a partially erased file.
  • the file on the file server 4 in which the erase data is stored is called an original file.
  • a file for saving erased data is called a save file.
  • erase data generated in one access process is stored.
  • the configuration of the computer system 500 according to the third embodiment and the configuration of the metadata server 1 are the same as those of the first embodiment, and thus the description thereof is omitted.
  • the configuration of the file server 4 of the third embodiment is the same as that of the second embodiment, and the description thereof is omitted.
  • the file saving management table 154 included in the metadata server 1 and the concealed file management table 415 included in the file server 4 are different.
  • FIG. 19 is an explanatory diagram showing an example of the configuration of the file save management table 154 according to the third embodiment of this invention.
  • the file save management table 154 in the third embodiment is stored in the memory 11 of the metadata server 1.
  • the file save management table 154 stores information for managing the correspondence between erased data and save files. Specifically, the file save management table 154 includes one or more records, and each record includes a metadata ID 1541, a save destination path 1542, a save destination namespace ID 1543, and an address range 1544.
  • Each record of the file evacuation management table 154 corresponds to information on erase data generated in one access process.
  • an address range 1544 is newly added.
  • the address range 1544 stores the address range on the original file where the erase data was stored.
  • the metadata server 1 When the metadata server 1 detects that the data has been erased in the file server 4, the metadata server 1 moves the erased data to the save file and updates the file save management table 154.
  • the first record stores information related to erased data in the file “/share1/b.doc”.
  • the metadata ID 1541 an identifier “110” of metadata corresponding to the file “/share1/b.doc” is stored.
  • the save destination path 1542 stores the path name “/r/FS1/share1/b.doc” of the save file storage destination.
  • the save destination name space ID 1543 stores an identifier “n3001” of the name space in which the save file “/r/FS1/share1/b.doc” is stored.
  • the address range 1544 stores the address range [10, 20) of erased data in the original file “/share1/b.doc”.
  • FIG. 20 is an explanatory diagram showing an example of the configuration of the concealment file management table 415 in the third embodiment of the present invention.
  • the concealed file management table 415 in the third embodiment is stored in the memory 41 of the file server 4.
  • the concealed file management table 415 stores information for managing the association between erased data and concealed files.
  • the concealed file management table 415 includes one or more records, and each record includes a path 4151, a namespace ID 4152, original metadata 4153, a concealed file path 4154, an address range 4155, and an erase type 4156. Consists of
  • Each record of the concealment file management table 415 corresponds to information on erase data generated in one access process.
  • an address range 4155 and an erasure type 4156 are newly added.
  • the address range 4155 stores an address range in which erase data in the original file was stored.
  • the erase type 4156 stores the cause of the erase data.
  • deletion type 4156 When deletion data is generated by deleting a file, the deletion type 4156 stores “delete” which is information indicating that the file has been deleted. When erase data is generated by overwriting a part of the file or reducing the size of the file, “partial erase”, which is information indicating that part of the data of the file has been erased, is stored in the erase type 4156.
  • the file server 4 reads the erased data from the original file and erases it to the concealed file when the erased data is generated, that is, when processing such as deleting the file, overwriting the file, or reducing the file size is requested.
  • the data is written and the concealed file management table 415 is updated.
  • FIG. 21 is a flowchart for explaining processing executed by the file sharing program 411 according to the third embodiment of the present invention.
  • the erased data is stored in the concealed file storage area 454. This is different from the second embodiment.
  • step S8700 when the file sharing program 411 starts processing (step S8700), it receives an access request for a file from the business program 51 or another program via the network 7 (step S8701).
  • the file sharing program 411 determines whether or not erased data is generated when processing corresponding to the received access request is executed (step S8702). That is, it is determined whether or not the received access request is a request for erasing data from the file. For example, in the case of a request for deleting a file, overwriting data to the file, or reducing the file size, it is determined that erase data is generated when processing corresponding to the received access request is executed.
  • step S8705 If it is determined that no erasure data is generated, the file sharing program 411 proceeds to step S8705.
  • the file sharing program 411 moves the erasure data to the concealed file storage area 454 (step S8703).
  • the file sharing program 411 identifies the address range of the erase data, generates a concealment file for storing the erase data in the concealment file storage area 454, and erases the generated concealment file. Store the data.
  • the path name of the concealment file is determined so as not to overlap with other concealment files stored in the concealment file storage area 454.
  • the file sharing program 411 updates the concealed file management table 415 based on the generated concealed file information (step S8704).
  • the file sharing program 411 adds a new record to the concealed file management table 415.
  • the file sharing program 411 stores the path name of the original file in the path 4151 of the added record, stores the name space identifier in which the original file is stored in the name space ID 4152, and stores the meta data of the original file in the original metadata 4153. Store the data.
  • the file sharing program 411 stores the path name of the concealment file generated in the concealment file path 4154, and stores the address range of the erasure data in the address range 4155. Further, the file sharing program 411 stores “delete” in the deletion type 4156 when the file is deleted, and stores “partially delete” when the file is not deleted.
  • the file sharing program 411 executes a process corresponding to the received access request on the file (step S8705).
  • the file sharing program 411 determines whether or not it is necessary to send a deletion notification (step S8706).
  • the deletion notification includes a notification notifying that an access request for generating erasure data has been received.
  • the file sharing program 411 ends the processing (step S8708).
  • the file sharing program 411 When it is determined that it is necessary to notify the metadata server 1 that deletion data has been generated, that is, it is necessary to notify the metadata server 1, the file sharing program 411 notifies the metadata server 1 that deletion data has been generated (step S). S8707).
  • the notification includes information on all records stored in the hidden file management table 415, that is, information on all hidden files. Thereafter, the file sharing program 411 ends the process (step S8708).
  • step 8706 and step S8707 was performed in the process of the process with respect to an access request, you may perform periodically as a process independent of the process with respect to an access request.
  • FIG. 22 is a flowchart for explaining processing executed by the file deletion detection program 113 in the third embodiment of the present invention.
  • step S8800 When the file deletion detection program 113 starts processing (step S8800), it detects the occurrence of erase data in the file server 4 (step S8801).
  • the file deletion detection program 113 can detect that deletion data has occurred in the file server 4 by receiving a deletion notification notifying that deletion data has occurred from the file server 4.
  • the deletion notification includes information stored in the concealed file management table 415.
  • the file deletion detection program 113 executes processing for each erased data, that is, for each record of the concealed file management table 415.
  • the file deletion detection program 113 determines whether or not deletion data to be processed has occurred due to file deletion based on the concealed file management table 415 included in the received deletion notification (step S8802). That is, it is determined whether the file containing the deletion data to be processed is a deletion file or a partial deletion file.
  • the file deletion detection program 113 determines that the deletion data is generated by deleting the file.
  • the file deletion detection program 113 determines that the erased data is generated by overwriting the file or reducing the file size.
  • the file deletion detection program 113 When it is determined that the deletion data is generated by deleting the file, the file deletion detection program 113 identifies the record corresponding to the file to be processed in the metadata management table 153 and displays “deleted” in the file status 1535 of the record. Is stored (step S8803). Thereafter, the file deletion detection program 113 proceeds to step S8804.
  • the file deletion detection program 113 adds a record corresponding to the processing target file to the metadata management table 153 (step S8808).
  • the file deletion detection program 113 stores an identifier that does not overlap with other records in the metadata ID 1531 of the added record.
  • the file deletion detection program 113 stores the path name and metadata of the file to be processed in the path 1532 and original metadata 1534 of the added record.
  • the file deletion detection program 113 stores the identifier of the name space in which the processing target file is stored in the name space ID 1533. Further, the file deletion detection program 113 stores “partially erased” in the file state 1535.
  • the information stored in the added record can be acquired based on the information included in the deletion notification received from the file server 4.
  • the file deletion detection program 113 updates the file save management table 154 (step S8804). Specifically, the file deletion detection program 113 adds a record corresponding to the concealed file in which the deletion data to be processed is stored.
  • the same metadata ID 1531 of the record specified in step S8804 or the metadata ID 1531 of the record added in step S8808 is stored.
  • the save destination path 1542 stores the path name of the concealment file
  • the save destination name space ID 1543 stores the name space identifier in which the concealment file is stored
  • the address range 1544 stores the concealment file. Stores the address range of stored erase data. Information stored in the added record can be acquired based on information included in the deletion notification received from the file server 4.
  • the file deletion detection program 113 moves the concealed file to the evacuation storage device 2 (step S8805). Specifically, the file deletion detection program 113 copies the concealment file onto the name space of the evacuation storage apparatus 2 and moves the deletion data to be processed to the evacuation file. At this time, the path name of the save file is determined so as not to overlap with other save files stored in the save storage device 2.
  • the file deletion detection program 113 updates the file save management table 154 (step S8806). Specifically, the file deletion detection program 113 changes the save destination path 1542 of the record added in step S8804 to the path name of the save file.
  • the file deletion detection program 113 instructs the file server 4 to delete the concealment file (step S8807). Thereafter, the file deletion detection program 113 ends the process (step S8809).
  • FIG. 23 and 24 are explanatory diagrams illustrating an example of the metadata management table 153 according to the third embodiment of this invention.
  • FIG. 25 is an explanatory diagram showing an example of the file save management table 154 according to the third embodiment of this invention.
  • FIG. 23 shows the metadata management table 153 before data is overwritten on the file “/share1/a.doc”.
  • Information of the file “/share1/a.doc” is recorded in the first record of the metadata management table 153. It can be seen from the information stored in the record that the file “/share1/a.doc” is stored in the file server 4 and the update time is “10:00”.
  • FIG. 24 shows the metadata management table 153 after the file “/share1/a.doc” is overwritten with data, and the metadata server 1 moves the erased data to the evacuation storage device 2.
  • a second record having a metadata ID 1531 of “101” is added.
  • This record represents that the metadata server 1 manages the file “/share1/a.doc” at the time when the update time is “10:00” as a partially erased file. Therefore, “partially erased” is stored in the file state 1535 of the record.
  • FIG. 25 shows the file evacuation management table 154 after data is overwritten on the file “/share1/a.doc” and the metadata server 1 moves the erased data to the evacuation storage device 2.
  • the first record of the file save management table 154 in FIG. 25 stores the erase data of the partially erased file corresponding to the second record in the metadata management table 153 in FIG. 24 and information related to the save file.
  • the second record is a record related to the erase data of the partially erased file corresponding to the second record of the metadata management table 153 of FIG.
  • the erase data is stored in the name space “r” of the save storage device 2 as a file whose path name is “A / r / s1000 / share / a.doc_diff”. You can see that.
  • the erased data is data stored in the range of addresses “0” to “29” of the original file.
  • FIG. 26 is a flowchart for explaining processing executed by the file proxy read program 115 according to the third embodiment of the present invention.
  • the file proxy read program 115 accepts a read request for a normal file, a deleted file, and a partially erased file, and returns the file contents to the request source. If the requested file is a deleted file or a partially erased file, the requested file is temporarily restored, and the contents of the restored file are responded.
  • the file proxy read program 115 starts processing (step S8900), and receives a file read request from the analysis program 61 or the like (step S8901).
  • the received file read request includes information for the request source program to specify the file. For example, it includes information such as a file path name, namespace name, metadata, and other identifiers (metadata ID, inode number in the file system).
  • the file proxy read program 115 identifies the corresponding record in the metadata management table 153 based on the information included in the received file read request (step 8902).
  • the file proxy reading program 115 refers to the file status 1535 of the identified record and determines whether or not the file to be read is a normal file (step S8903).
  • the file status 1535 is “deleted” or “partially erased”, it is determined that the file to be read is a deleted file or a partially erased file. On the other hand, when the file status 1535 is “existing”, it is determined to be a normal file.
  • the file proxy read program 115 executes a restoration process for restoring the file to be read ( Step S8904). As a result, the file is temporarily restored in the evacuation storage device 2. Details of the restoration process will be described later with reference to FIG.
  • the file proxy read program 115 transmits the restored file to the request source, and ends the processing (steps S8905 and S8907).
  • the file proxy read program 115 specifies the storage destination of the file to be read (step S8906). Specifically, the file storage destination is specified based on the identifier of the file server 4, the identifier of the namespace, the path name, and the like.
  • the file proxy reading program 115 reads the file to be read from the specified storage destination file server 4, transmits the read file to the request source, and ends the processing (steps S 8905 and S 8907). .
  • FIG. 27 is a flowchart for explaining the details of the restoration processing in the third embodiment of the present invention.
  • step S9000 When the file proxy reading program 115 starts processing (step S9000), the record relating to the file to be read is extracted from the metadata management table 153 (step S9001). Here, a record that is the same file to be read and whose time series is newer than the record specified in step S8903 is extracted.
  • the file proxy read program 115 matches the path 1532 and the namespace ID 1533 with the file to be read, and the update time included in the original metadata 1534 is after the update time of the file to be read. That is, a record with a new update time is extracted.
  • the file proxy read program 115 determines whether or not the file to be read is currently a deleted file (step S9002). Specifically, the file proxy read program 115 identifies the record with the latest update time stored in the original metadata 1534 among the extracted records, and whether the file status 1535 of the record is “deleted”. Determine whether or not.
  • the file proxy read program 115 duplicates the deleted file as a temporary file in the work area based on the deleted file record extracted in step S9001 (step S9001). S9003).
  • the work area is a storage area of the evacuation storage device 2.
  • the file proxy read program 115 is currently stored in the file server 4 based on the record extracted in step S9001.
  • the read target file is read, and the read file is copied as a temporary file in the work area (step S9007).
  • the file proxy read program 115 selects, from the extracted records, a record with the latest update time after the record specified in step S9003 as a record to be processed (step S9004).
  • the file proxy read program 115 overwrites the temporary file with the deletion data stored in the save file (step S9005). Specifically, the following processing is executed.
  • the file proxy read program 115 identifies the corresponding save file record from the file save management table 154 based on the record information selected in step S9004.
  • the file proxy read program 115 acquires the deletion data by reading the save file from the save storage device 2 based on the specified record.
  • the file proxy read program 115 refers to the address range 1544 of the specified record, and overwrites the read deletion data in the same address range on the temporary file. Further, the file proxy reading program 115 changes the file size of the temporary file to the file size stored in the original metadata 1534 of the selected record in the metadata management table 153.
  • the temporary file has the same content as the file at the time when the record selected in step S9004 is added to the metadata management table 153.
  • the file proxy read program 115 determines whether or not the processing has been completed for all the records extracted in step 9001 (step S9006).
  • step 9001 If it is determined that the processing has not been completed for all the records extracted in step 9001, the file proxy read program 115 returns to step S9004 and executes the same processing (steps S9004 to S9006).
  • step S9008 If it is determined that the processing has not been completed for all the records extracted in step 9001, the file proxy read program 115 ends the processing (step S9008).
  • the metadata server 1 reads the file and transmits the read file to the analysis server 6.
  • the present invention is not limited to this, and the analysis server 6 may acquire the file. In this case, the following processing is executed.
  • step S 8905 the file proxy reading program 115 generates a list 116 and transmits the generated list 116 to the analysis server 6.
  • the method for generating the list 116 uses the same method as in the first embodiment. Note that information on the storage location of the temporary file in the work area is stored in the save destination path 11681 of the record corresponding to the temporary file in the list 116.
  • the analysis server 6 reads the file based on the received list 116. Note that the processing is the same as that of the first embodiment, and thus description thereof is omitted.
  • each erased data is stored in one save file or concealed file, but the present invention is not limited to this.
  • the erasure data may be stored together in several files, or may be stored in a database or block storage.
  • the fourth embodiment extends the first embodiment, and when a file having the same content as the deleted file is stored in the backup storage device 3, a save file corresponding to the deleted file is not generated. As a result, duplicate files having the same contents can be reduced in the computer system 500.
  • the configuration of the computer system 500, the configuration of the metadata server 1, and the configuration of the file server 4 of the fourth embodiment are the same as those of the first embodiment, description thereof is omitted.
  • the configuration of each table managed by the metadata server 1 and the file server 4 is the same as that of the first embodiment, and thus the description thereof is omitted.
  • FIG. 28 is an explanatory diagram showing an example of the configuration of the storage management table 151 according to the fourth embodiment of this invention.
  • the storage ID 1511, the storage name 1512, the type 1513, and the IP address 1514 are the same as those in the first embodiment, and thus description thereof is omitted.
  • the metadata server 1 is different from the first embodiment in that the backup storage device 3 is managed in addition to the file server 4 and the evacuation storage device 2. That is, information of the backup storage device 3 is stored in the fourth record of the storage management table 151 shown in FIG. Note that “backup” is stored in the record type 1513 corresponding to the backup storage device 3.
  • FIG. 29 is an explanatory diagram showing an example of the configuration of the name space management table 152 in the fourth embodiment of the present invention.
  • Name space ID 1521, name space name 1522, storage ID 1523, capacity 1524, protocol 1525, usage amount 1526, and usage 1527 are the same as those in the first embodiment, and thus description thereof is omitted.
  • the fifth record of the name space management table 152 stores name space information in the backup storage device 3. Note that “backup” is stored in the usage 1527 of the record corresponding to the backup storage device 3.
  • FIG. 30 is an explanatory diagram showing an example of the configuration of the metadata management table 153 according to the fourth embodiment of the present invention.
  • the metadata management table 153 is stored in the memory 11 of the metadata server 1.
  • the metadata management table 153 according to the fourth embodiment is different from the first embodiment in that a hash value 1536 is added.
  • the hash value 1536 stores a hash value representing the contents of the file corresponding to the entry.
  • the hash value is a value acquired by applying a predefined hash function to the contents of the file.
  • various known algorithms for example, SHA256 can be used for the hash function.
  • the hash value calculated from the file “/BU/x.doc” is “e001” in the hash value 1536 of the record.
  • the hash value is a value expressed in hexadecimal.
  • the metadata management program 112 in this embodiment makes an inquiry to the backup program 31 of the backup storage device 3 in order to store the backup file information in the metadata management table 153, and the backup file stored in the backup storage device 3 Get metadata for. Further, the metadata management program 112 may read out a database or the like that holds a list of backup files managed by the backup program 31.
  • the hash value of the backup file may be calculated when the metadata management program 112 reads the backup file from the backup storage device 3, or may be calculated by the backup program 31 and transmitted to the metadata management program 112.
  • FIG. 31 is a flowchart for explaining processing executed by the file deletion detection program 113 according to the fourth embodiment of the present invention.
  • the file deletion detection program 113 in the fourth embodiment detects a deletion target file
  • the file deletion detection program 113 determines whether or not a backup file having the same content as the file exists. If there is a backup file having the same content, the file deletion detection program 113 adds the backup file to the file save management table 154 as a save file corresponding to the file to be deleted. Further, the file deletion detection program 113 deletes the deletion target file without generating a concealment file in the file server 4.
  • the file deletion detection program 113 when starting the process (step S9100), detects that the file is deleted from the file server 4 (step S9101).
  • step S9101 is the same process as step S8201.
  • the deletion notification transmitted from the file server 4 includes the hash value of the deletion target file.
  • the hash value of the deletion target file can be calculated by applying a hash function to the deletion target file read from the file server 4 by the file deletion detection program 113.
  • the file deletion detection program 113 updates the record corresponding to the deletion target file in the metadata management table 153 (step S9102).
  • the process of step S9202 is the same process as step S8202.
  • the file deletion detection program 113 refers to the metadata management table 153 and searches for a backup file having the same content as the deletion target file (step S9103). Specifically, the following processing is executed.
  • the file deletion detection program 113 acquires the hash value 1536 of the deletion target file.
  • the file deletion detection program 113 extracts an entry in which “BU” is stored in the file state 1535, and compares the hash value 1536 of the extracted entry with the hash value 1536 of the file to be deleted.
  • An entry that matches the hash value 1536 of the deletion target file is a backup file having the same content as the deletion target file.
  • the method for determining the contents of a file is not limited to the method described above.
  • a method for comparing file metadata, a method for comparing file sizes, a method combining these, and the like may be used.
  • the file deletion detection program 113 determines whether a backup file having the same content as the deletion target file exists as a result of the search process described above (step S9104).
  • the file deletion detection program 113 executes file concealment processing for the deletion target file on the file server 4 (step S9106).
  • the file deletion detection program 113 instructs the file server 4 that has notified the deletion of the file to execute the concealment process for the file to be deleted (step S9107), and ends the process (step S9108).
  • step S9106 and step S9107 is the same process as step S8203 and step S8204, description is abbreviate
  • step S9104 If it is determined in step S9104 that a backup file having the same content as the file to be deleted exists, the file deletion detection program 113 updates the file save management table 154 and ends the process (steps S9105 and S9108).
  • the file deletion detection program 113 adds information related to the backup file to the file save management table 154 as save file information corresponding to the file to be deleted.
  • the metadata ID 1541 stores the value of the metadata ID 1531 of the record corresponding to the backup file
  • the save destination path 1542 stores the path name of the path 1532 of the record corresponding to the backup file
  • the save destination namespace ID 1543 stores the identifier of the namespace ID 1533 of the record corresponding to the backup file.
  • a file having the same content as the file to be deleted is searched from the files stored in the backup storage device 3, but in addition to this, a search is performed from all storage devices managed by the metadata server 1. May be.
  • the file server 4 does not transmit a file deletion notification to the metadata server 1 when the business program 51 requests the file deletion. Therefore, the metadata server 1 determines whether or not a file is periodically deleted from the file server 4. For this determination, the snapshot function of the file server 4 is used.
  • the file server 4 is different in that it has a snapshot function.
  • the configuration of each table managed by the metadata server 1 and the file server 4 is the same as that of the first embodiment, and thus the description thereof is omitted.
  • 32A and 32B are flowcharts for explaining processing executed by the metadata management program 112 in the fifth embodiment of the present invention.
  • the metadata management program 112 collects metadata of files stored in the file server 4, detects files deleted from the file server 4, and moves them to the evacuation storage device 2.
  • the metadata management program 112 instructs the file server 4 to create a snapshot of a namespace that is a collection target of metadata (step S9201). Receiving the instruction, the file server 4 creates a snapshot of the specified name space.
  • the metadata management program 112 selects one file to be processed from the files included in the created snapshot (step S9202).
  • the process of step 9202 is different from the process of step S8002 (see FIG. 9) in that a file included in the snapshot is selected.
  • the metadata management program 112 acquires the metadata of the selected file from the file server 4 (step S9203).
  • the metadata management program 112 updates the metadata management table 153 based on the acquired metadata (step S9204).
  • the process of step S9204 is the same process as the process of step S8004 (see FIG. 9).
  • the metadata management program 112 determines whether or not processing has been completed for all files included in the snapshot (step S9205).
  • the metadata management program 112 returns to step S9202 and executes the same processing (step S9202 to step S9205).
  • the metadata management program 112 selects records that have not been updated in the processing from step S9201 to step S9205 from among the records in the metadata management table 153. Extract (step S9206).
  • the metadata management program 112 selects one record to be processed from the extracted records (step S9207).
  • the metadata management program 112 determines whether or not a file corresponding to the record to be processed is included in the snapshot (step S9208).
  • the metadata management program 112 proceeds to step S9212.
  • the metadata management program 112 updates the processing target record (step S9209). Specifically, “delete” is stored in the file status 1535 of the record to be processed.
  • the metadata management program 112 acquires a file corresponding to the record to be processed from the snapshot of the previous generation of the snapshot created in step S9201 (step S9210).
  • the previous generation snapshot was created in the last execution of this process.
  • the previous generation snapshot may be stored in the file server 4 or may be stored in the save storage device 2.
  • the metadata management program 112 moves the file acquired from the previous generation snapshot to the evacuation storage apparatus 2 as the evacuation file of the deleted file corresponding to the record to be processed (step S9211).
  • the metadata management program 112 updates the file saving management table 154 (step S9212).
  • the process of step S9212 is the same process as the process of step S8208 (see FIG. 11C).
  • the metadata management program 112 determines whether the processing has been completed for all the records extracted in step S9206 (step S9213).
  • step S9206 If it is determined in step S9206 that processing has not been completed for all the records extracted, the metadata management program 112 returns to step S9207 and executes similar processing (steps S9207 to S9213).
  • step S9206 If it is determined in step S9206 that the processing has been completed for all the records extracted, the metadata management program 112 instructs the file server 4 to delete the previous generation snapshot, and the processing ends ( Step S9214, Step S9215).
  • the file server 4 that has received the instruction deletes the instructed snapshot.
  • the file server 4 since the file server 4 does not need to notify the deletion of the file, even if the file server 4 does not have the function of notifying the deletion of the file, the deleted file is moved to the save storage device 2. can do.
  • the concealment file is deleted according to the instruction from the metadata server 1. This is because even when a failure occurs in the file server 4, the metadata server 1, or the network 7, and the file saving process being executed is interrupted, the metadata server 1 stores the file to the saving storage device 2. This is to prevent the hidden file from being deleted by the file server 4 until the movement is completed.
  • the file server 4 can detect the failure and can communicate with the metadata server 1. Delays file deletion notification until
  • the operation when it is detected that the file server 4 cannot communicate with the metadata server 1, the operation may be continued by switching to the file deletion notification method of the second embodiment. .

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)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

 業務サーバの管理下にあるファイルであって、過去に存在した削除済みファイルを含む全てのファイルを、余分な複製を作らずに分析プログラムから参照できる計算機システムを実現する。 ファイルサーバとメタデータサーバと業務サーバとを備える計算機システムであって、メタデータサーバには、ファイルサーバから削除されたファイルを格納する保存領域を提供するストレージ装置が接続され、メタデータサーバは、ファイルのメタデータと保存領域に格納されるファイルの格納位置とを管理するメタデータリポジトリを保持し、ファイルサーバに格納されるファイルが削除されることを検出した場合に、ファイルを退避ファイルとして保存領域に格納し、ファイルサーバにおけるファイルの格納位置を示す情報と保存領域における退避ファイルの格納位置を示す情報とを対応づけてメタデータリポジトリに格納する。

Description

計算機システム、ファイル管理方法及びメタデータサーバ
 本発明は、ストレージ装置と、ストレージ装置に格納されるファイルのメタデータを管理するメタデータサーバと、所定の業務処理を実行する業務サーバと、業務サーバが利用するデータに対する分析処理を実行する分析サーバとから構成される計算機システムにおけるファイル管理方法に関する。
 複数の計算機と、ストレージ装置に対応する複数のファイルサーバとをネットワークで接続した計算機システムでは、計算機上で稼動する業務プログラムに業務に必要な処理を実行させる。業務プログラムとは、例えば文書管理システムのような自律的に動作するプログラムや、ユーザが利用する文書作成プログラムのような対話的なプログラムがある。
 業務プログラムが処理の実行に必要とする業務データをファイルサーバに格納することによって、システムの構成変更やストレージの容量の管理を柔軟にできる。
 また、ファイルサーバに格納された業務データを、業務プログラムとは異なる計算機上で稼動する分析プログラムに統計処理等の分析処理を実行させることによって、企業経営に有用な情報を得ることが広く行われている。
 業務プログラムは、処理の過程で、ファイルサーバに格納されるファイルを削除する場合がある。一方、分析プログラムはより有用な情報を取得するために、ファイルサーバから削除されたファイルを含む、計算機システムの全てのファイルを過去に遡って取得して、分析することが好ましい。
 削除されたファイルを後で読み出せるようにする方法として、バックアップシステムを用いる方法がある。バックアップシステムは、ファイルサーバに格納されるデータを周期的に読み出し、別のバックアップ用ストレージ装置に複製する。しかし、バックアップシステムでは、ファイルサーバ及びバックアップ用ストレージ装置に同一データを保持するため、記憶領域の利用効率が悪い。
 また、別の方法として、ファイルサーバが備えるスナップショット機能を用いる方法がある。スナップショット機能を用いることによって、記憶領域の消費量を抑えつつ、過去のある時点のファイルサーバの状態を複数保持できる。しかし、作成できるスナップショットの数には制限があるため、例えば、5年以上の過去に遡った時点において存在したファイルを取得する用途には適さない。
 また、ファイルを別のストレージ装置へ移動する方法として、アーカイブシステムがある。アーカイブシステムは、所定の条件を満たすファイル(例えば、一定期間更新されていないファイル)を、別のストレージへ移動するシステムである。しかし、アーカイブシステムでは、ファイルシステムに存在するファイルのみを対象とするため、例えば、条件として「削除されたファイル」といった指定を行うことができない。
 また、ユーザの操作によって削除されたファイルを実際には削除せず別の記憶領域に退避しておき、後から復元できるようにする技術が特許文献1に記載されている。
特開2008-17049号公報
 しかし、特許文献1に記載の技術では、削除されたファイルを一度復元すると、そのファイルはシステムの管理対象外となる。従って、分析プログラムに、削除されたファイルを含む、計算機システムの全てのファイルを過去に遡って提供するという目的を達成することができない。
 本発明は、業務プログラムの管理下にあるファイルであって、過去に存在した削除済みファイルを含む全てのファイルを、余分な複製を作らずに分析プログラムから参照可能にする計算機システムを実現することである。
 本願において開示される発明の代表的な一例を示せば以下の通りである。すなわち、複数のファイルを管理するファイルサーバと、前記ファイルのメタデータを管理するメタデータサーバと、前記ファイルを用いて所定の業務処理を実行する業務サーバと、を備える計算機システムであって、前記ファイルサーバ、前記メタデータサーバ、及び前記業務サーバは、ネットワークを介して互いに接続され、前記ファイルサーバは、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続される第1のネットワークインタフェースと、前記第1のプロセッサに接続され、前記ファイルを格納する第1の記憶媒体と、を有し、前記メタデータサーバは、第2のプロセッサと、前記第2のプロセッサに接続される第2のメモリと、前記第2のプロセッサに接続される第2のネットワークインタフェースと、前記第2のプロセッサに接続される第2の記憶媒体と、を有し、前記業務サーバは、第3のプロセッサと、前記第3のプロセッサに接続される第3のメモリと、前記第3のプロセッサに接続される第3のネットワークインタフェースと、を有し、前記メタデータサーバには、コントローラと、複数の記憶媒体とを有し、前記ファイルサーバから削除された前記ファイルを格納する保存領域を提供するストレージ装置が接続され、前記第2の記憶媒体には、前記ファイルのメタデータと、前記保存領域に格納される前記ファイルの格納位置と、を管理するメタデータリポジトリが格納され、前記メタデータサーバは、前記業務サーバが実行する業務処理によって前記ファイルサーバに格納される前記ファイルが削除されることを検出した場合に、前記ファイルを退避ファイルとして前記保存領域に格納し、前記ファイルサーバにおける前記ファイルの格納位置を示す情報と、前記保存領域における前記退避ファイルの格納位置を示す情報とを対応づけて前記メタデータリポジトリに格納する、ことを特徴とする。
 本発明によれば、メタデータサーバは、余分な複製を作成することなく、ファイルサーバから削除されたファイルを管理することが可能となる。
本発明の処理の概要を説明するブロック図である。 本発明の第一の実施形態における計算機システムの構成を説明するブロック図である。 本発明の第一の実施形態におけるメタデータサーバの構成を説明するブロック図である。 本発明の第一の実施形態におけるストレージ管理テーブルの構成の一例を示す説明図である。 本発明の第一の実施形態における名前空間管理テーブルの構成の一例を示す説明図である。 本発明の第一の実施形態におけるメタデータ管理テーブルの構成の一例を示す説明図である。 本発明の第一の実施形態におけるファイル退避管理テーブルの構成の一例を示す説明図である。 本発明の第一の実施形態におけるファイルサーバの構成を説明するブロック図である。 本発明の第一の実施形態におけるメタデータ管理プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるファイル共有プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるファイル削除検出プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるファイル削除検出プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるファイル削除検出プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態において、ファイルが移動した後のメタデータ管理テーブルを示す説明図である。 本発明の第一の実施形態において、ファイルが移動した後のファイル退避管理テーブルを示す説明図である。 本発明の第一の実施形態における問い合わせ処理プログラムが実行する処理を説明するフローチャートである。 本発明の第一の実施形態におけるリストの構成の一例を示す説明図である。 本発明の第一の実施形態におけるリストの構成の一例を示す説明図である。 本発明の第一の実施形態における分析プログラムが実行するファイル分析処理を説明するフローチャートである。 本発明の第二の実施形態における隠蔽化ファイル管理テーブルの構成の一例を示す説明図である。 本発明の第二の実施形態におけるファイル共有プログラムが実行する処理を説明するフローチャートである。 本発明の第三の実施形態におけるファイル退避管理テーブルの構成の一例を示す説明図である。 本発明の第三の実施形態における隠蔽化ファイル管理テーブルの構成の一例を示す説明図である。 本発明の第三の実施形態におけるファイル共有プログラムが実行する処理を説明するフローチャートである。 本発明の第三の実施形態における、ファイル削除検出プログラムが実行する処理を説明するフローチャートである。 本発明の第三の実施形態におけるメタデータ管理テーブルの一例を示す説明図である。 本発明の第三の実施形態におけるメタデータ管理テーブルの一例を示す説明図である。 本発明の第三の実施形態におけるファイル退避管理テーブルの一例を示す説明図である。 本発明の第三の実施形態におけるファイル代理読み出しプログラムが実行する処理を説明するフローチャートである。 本発明の第三の実施形態における復元処理の詳細を説明するフローチャートである。 本発明の第四の実施形態におけるストレージ管理テーブルの構成の一例を示す説明図である。 本発明の第四の実施形態における名前空間管理テーブルの構成の一例を示す説明図である。 本発明の第四の実施形態におけるメタデータ管理テーブルの構成の一例を示す説明図である。 本発明の第四の実施形態におけるファイル削除検出プログラムが実行する処理を説明するフローチャートである。 本発明の第五の実施形態におけるメタデータ管理プログラムが実行する処理を説明するフローチャートである。 本発明の第五の実施形態におけるメタデータ管理プログラムが実行する処理を説明するフローチャートである。
 まず、本発明の概要について説明する。
 図1は、本発明の処理の概要を説明するブロック図である。
 本発明における計算機システム500は、メタデータサーバ1、退避用ストレージ装置2、複数のファイルサーバ4、複数の業務サーバ5及び複数の分析サーバ6から構成される。
 業務サーバ5は、所定の業務を実行する計算機であり、業務プログラム51が稼動する。業務プログラム51は、ファイルサーバ4に格納されるファイルを用いて所定の業務を実行する。
 図1に示す例では、業務プログラム51は、パス名が「/A/a.doc」であるファイル1000-1、及び、パス名が「/A/c.doc」であるファイル1000-2を用いて所定の業務を実行する。以下、ファイルを区別しない場合には、ファイル1000と記載する。
 分析サーバ6は、ファイル1000を分析する計算機であり、分析プログラム61が稼動している。分析プログラム61は、業務プログラム51が用いるファイル1000-1、1000-2を読み出し、統計処理等の分析処理を実行する。
 メタデータサーバ1は、複数のファイルサーバ4に格納されるファイルのメタデータを管理する計算機である。本実施形態のメタデータサーバ1は、ファイルサーバ4から削除されたファイルに関するメタデータも管理している点に特徴がある。
 ここで、メタデータとは、ファイルに設定される属性値の集合を示す。例えば、メタデータには、ファイルの所有者、ファイルの所有グループ、アクセス制御情報、ファイルの作成日、ファイルの更新日、ファイルのメタデータ更新日、ファイルの大きさ、及びその他のユーザ定義の属性値が含まれる。
 メタデータサーバ1は、ファイルのメタデータが格納されるメタデータリポジトリを管理する。メタデータリポジトリには、ファイルサーバ4に格納されるファイルを特定するフィールド、退避用ストレージ装置2に格納されるファイルを特定するフィールド、及びファイルの状態を示すフィールドが含まれる。
 ファイルサーバ4に格納されるファイルを特定するフィールドには、パス名及びストレージ名が含まれる。退避用ストレージ装置2に格納されるファイルを特定するフィールドとしては、パス名及びストレージ名が含まれる。また、ファイルの状態を示すフィールドとしては、ファイルサーバ4にファイルが存在するか否かを示す情報が格納される。
 次に、業務プログラム51が、ファイル1000-1を削除する場合に実行される処理の概要について説明する。
 業務プログラム51が、識別名が「FS1」であるファイルサーバ4に対して、ファイル1000-1の削除要求を送信する(ステップS1001)。
 ファイルサーバ4は、ファイルの削除要求を検出すると、ファイル1000-1の削除を保留して、メタデータサーバ1にファイル1000-1に対する削除要求を受信した旨を通知する(ステップS1002)。
 メタデータサーバ1は、ファイルサーバ4からの通知を受信すると(ステップS1003)、メタデータリポジトリ150に格納されるファイル1000-1に対応するレコードを更新する(ステップS1004)。具体的には、ファイルの状態を示すフィールドにファイル1000-1が削除されることを示す「削除」が格納される。
 次に、メタデータサーバ1は、ファイル1000-1を退避用ストレージ装置2に移動する(ステップS1005)。具体的には、メタデータサーバ1は、ファイルサーバ4からファイル1000-1を取得し、退避用ストレージ装置2のファイルシステム22にファイル1008として格納する。
 図1に示す例では、パス名が「r/FS1/A/a.doc」にファイル1008が格納される。なお、退避用ストレージ装置2におけるパス名は、重複しないように設定される。
 次に、メタデータサーバ1は、ファイル1000-1の削除をファイルサーバ4に指示する(ステップS1006)。ファイルサーバ4は、当該指示を受け付けるとファイル1000-1を削除し、業務プログラム51にファイル1000-1の削除完了を応答する。
 最後に、メタデータサーバ1は、メタデータリポジトリ150のファイル1000-1のメタデータに対応するレコードを更新する(ステップS1007)。具体的には、退避用ストレージ装置2に格納されるファイルを特定するフィールドに、ファイル1008のパス名「r/FS1/A/a.doc」と、ファイル1008が格納される退避用ストレージ装置2の識別名「S1」とが格納される。
 図1では、ファイル1000-1の削除前と削除後のメタデータリポジトリ150の変化を示している。
 次に、分析プログラム61が、現在及び過去のファイルを分析対象とする分析処理の概要について説明する。ここでは、業務プログラム51によって、ファイルサーバ4からファイル1000-1が削除され、退避用ストレージ装置2にファイル1000-1が移動された後の分析処理について説明する。
 分析プログラム61は、メタデータサーバ1に対して、現在格納されているファイル及び過去に存在したファイルを含む全ファイルの問い合わせを行う(ステップS1011)。具体的には、分析プログラム61は、全ファイルのリストをメタデータサーバ1に要求する。
 メタデータサーバ1は、メタデータリポジトリ150に基づいてリストを生成し、生成されたリストを分析プログラム61に対して応答する(ステップS1012)。
 なお、リストは、ファイルを特定するための情報を含む複数のエントリから構成される。当該エントリは、ファイルのパス名、格納先のストレージ装置の識別名、ファイルのファイルサーバ4におけるメタデータ、及びファイルの状態を示すフィールドを含む。
 ファイルサーバ4から削除されたファイル1000-1のエントリには、さらに、ファイルの退避先のパス名、及び退避用ストレージ装置2の識別名を含む。また、当該エントリのファイルの状態を示すフィールドには、ファイルが削除済みであることを示す情報が格納される。
 分析プログラム61は、メタデータサーバ1から取得したリストに基づいて、ファイルの格納場所を特定する。
 図1に示す例では、分析プログラム61は、パス名が「/A/a.doc」、「/A/c.doc」である二つのファイルがファイルサーバ4に存在していたことが分かる。さらに、分析プログラム61は、前述したファイルのうち、パス名が「/A/a.doc」のファイルはファイルサーバ4からは削除され、識別名が「S1」である退避用ストレージ装置2に、パス名が「r/FS1/A/a.doc」であるファイル1008として格納されていることが分かる。
 分析プログラム61は、リストを参照して、分析処理に必要な全ファイルを取得する(ステップS1013、ステップS1014)。すなわち、分析プログラム61は、ファイルサーバ4に格納されるファイル1000-2をファイルサーバ4から取得し、ファイルサーバ4から削除されたファイル1000-1に対応するファイル1008を退避用ストレージ装置2から取得する。
 以上で説明したように、メタデータサーバ1は、業務プログラム51が業務実行時に削除したファイルを、分析プログラム61が分析できるよう管理することができる。
 このように、本発明は、ファイルサーバ4からファイルを削除する場合に、ファイルサーバ4から削除される前に退避用ストレージ装置2へ移動させるため、不必要なファイルの複製を作らない。
 以降、ファイル1000-1のように、ファイルサーバ4から削除され、メタデータサーバ1に問い合わせることによって内容を取得できるファイルを削除ファイルと呼ぶ。また、退避用ストレージ装置に格納された削除ファイルの複製を退避ファイルと呼ぶ。また、削除対象のファイルであって、削除ファイルとなる前にファイルサーバ4に格納されていたファイルをオリジナルファイルと呼ぶ。また、ファイルサーバ4に格納され、削除されていないファイルを、通常ファイルと呼ぶ。
 [第一の実施形態]
 図2は、本発明の第一の実施形態における計算機システム500の構成を説明するブロック図である。
 計算機システム500は、メタデータサーバ1、退避用ストレージ装置2、バックアップストレージ装置3、複数のファイルサーバ4、複数の業務サーバ5、複数の分析サーバ6、及びネットワーク7から構成される。
 メタデータサーバ1、退避用ストレージ装置2、バックアップストレージ装置3、ファイルサーバ4、業務サーバ5、及び分析サーバ6は、ネットワーク7を介して相互に通信できる。なお、ネットワーク7は、LAN (Local Area Network)、WAN (Wide Area Network)、及びインターネット等を用いて構成することができる。本発明はネットワーク7の接続方式に限定されない。
 メタデータサーバ1は、メタデータを管理する計算機である。なお、メタデータサーバ1は、仮想化技術を用いて生成された仮想計算機であってもよい。
 メタデータサーバ1は、メタデータサーバプログラム110及びメタデータリポジトリ150を備える。他の構成要素については後述する。
 退避用ストレージ装置2は、様々なファイルを格納するストレージ装置である。
 ここで、ストレージ装置とは、コントローラ(図示省略)、ネットワークインタフェース(図示省略)、及び一以上の記憶媒体(図示省略)を備え、当該記憶媒体の記憶領域を計算機に提供することができる装置を示す。ストレージ装置は、複数の記憶媒体を用いてRAIDを構成することができ、さらに、物理的な記憶領域を複数の論理記憶領域を生成することができる。また、論理記憶領域ごとに異なるファイルシステムを構築することができる。
 退避用ストレージ装置2は、ファイル共有プログラム21及びファイルシステム22を備える。ファイル共有プログラム21は、ネットワーク7を介してメタデータサーバ1から受信したファイルアクセス要求にしたがって、ファイルシステム22にファイルを格納し、また、ファイルシステム22からファイルを読み出す。他の構成要素については後述する。
 バックアップストレージ装置3は、様々なファイルを格納するストレージ装置である。ただし、バックアップストレージ装置3は、特にファイルのバックアップを目的として利用される。バックアップストレージ装置3は、バックアッププログラム31及びファイルシステム32を備える。他の構成要素については後述する。
 ファイルサーバ4は、様々なファイルを格納し、当該ファイルを管理する計算機である。特に、ファイルサーバ4には、業務プログラム51が業務処理を実行するために必要なファイルが格納される。ファイルサーバ4は、ファイル共有プログラム411及びファイルシステム452を備える。他の構成要素については後述する。
 なお、計算機上では、ファイルサーバ4も一種のストレージ装置として認識される。
 業務サーバ5は、業務処理を実現するために必要なプログラムを実行する計算機である。なお、業務サーバ5は、仮想化技術を用いて生成された仮想計算機であってもよい。
 業務サーバ5は、業務プログラム51を備える。業務プログラム51は、定められた業務処理を行うプログラムであり、ファイルサーバ4から業務処理に必要なデータを取得して所定の業務処理を実行する。他の構成要素については後述する。
 分析サーバ6は、分析処理を実現するために必要なプログラムを実行する計算機である。なお、分析サーバ6は、仮想化技術を用いて生成された仮想計算機であってもよい。
 分析サーバ6は、分析プログラム61を備える。分析プログラム61は、ファイルサーバ4に格納され、業務プログラム51が業務処理のために利用するファイルを読み出し、読み出されたファイルを用いて分析処理を実行する。
 図3は、本発明の第一の実施形態におけるメタデータサーバ1の構成を説明するブロック図である。
 メタデータサーバ1は、メモリ11、プロセッサ12、ネットワークインタフェース13、及びローカルストレージ15を備え、各構成要素は、内部バス16を介して相互に接続される。
 プロセッサ12は、メモリ11に格納されるプログラムを実行する。プロセッサ12がプログラムを実行することによって、メタデータサーバ1が備える機能を実現できる。
 メモリ11は、メタデータサーバプログラム110を格納する。メタデータサーバプログラム110は、メタデータサーバ1が備える機能を実現するためのプログラムであり、複数のサブプログラムから構成される。
 具体的には、メタデータサーバプログラム110は、問い合わせ処理プログラム111、メタデータ管理プログラム112、ファイル削除検出プログラム113、ファイル退避プログラム114、及びファイル代理読み出しプログラム115から構成される。
 問い合わせ処理プログラム111は、ファイルサーバ4及び分析サーバ6からの問い合わせに対する処理を実行するプログラムである。メタデータ管理プログラム112は、メタデータの管理するプログラムである。
 ファイル削除検出プログラム113は、ファイルサーバ4からファイルが削除されることを検出するプログラムである。ファイル退避プログラム114は、退避用ストレージ装置2へファイルをコピーするプログラムである。ファイル代理読み出しプログラム115は、退避用ストレージ装置2からファイルを読み出すプログラムである。
 前述したサブプログラムは、それぞれが独立したプロセスとして実行されてもよいし、メタデータサーバプログラム110を構成するライブラリ等の部分プログラムとして実行されてもよい。なお、各サブプログラムによって実行される処理の詳細については、図を用いて後述する。
 また、メモリ11には、分析サーバ6からの問い合わせを受信したときに生成されるリスト116も格納される。リスト116は、ファイルサーバ4又は退避用ストレージ装置2からファイルを取得するために必要な情報を格納する。
 ローカルストレージ15は、メタデータサーバ1が備える記憶媒体であり、ハードディスクドライブ(HDD)、ソリッドステートドライブ(SSD)、及び不揮発メモリ(NVRAM)が考えられる。
 ローカルストレージ15は、メタデータリポジトリ150を格納する。なお、メタデータリポジトリ150は、メモリ11に格納されてもよいし、メタデータサーバ1に接続されたストレージ装置に格納されてもよい。
 メタデータリポジトリ150は、ストレージ管理テーブル151、名前空間管理テーブル152、メタデータ管理テーブル153、及びファイル退避管理テーブル154を含む。以下、各テーブルの構成について説明する。
 図4は、本発明の第一の実施形態におけるストレージ管理テーブル151の構成の一例を示す説明図である。
 ストレージ管理テーブル151は、メタデータサーバ1が管理するストレージ装置に関する情報を格納する。具体的には、ストレージ管理テーブル151は、一以上のレコードを含み、各レコードは、ストレージID1511、ストレージ名1512、タイプ1513、及びIPアドレス1514から構成される。
 ストレージ管理テーブル151の各レコードは、メタデータサーバ1が管理する一つのストレージ装置に対応する。
 ストレージID1511は、メタデータサーバ1がストレージ装置を一意に識別するための識別子を格納する。ストレージ名1512は、計算機システム500におけるストレージ装置に設定された識別名を格納する。
 タイプ1513は、ストレージ装置の利用種別を格納する。例えば、ストレージ装置がファイルサーバ4の場合「ファイルサーバ」が格納され、アーカイブファイルを格納するストレージ装置の場合「アーカイブストレージ」が格納される。
 IPアドレス1514は、ストレージ装置に割り当てられているIPアドレスを格納する。
 図4に示す例では、第一のレコードには、ストレージID1511が「s1000」、ストレージ名1512が「FS1」、タイプ1513が「ファイルサーバ」、IPアドレス1514が「192.168.10.100」であるファイルサーバ4の情報が格納される。
 同様に、第二のレコードには、ファイルサーバ4の情報が格納され、第三のレコードには退避用ストレージ装置2の情報が格納される。
 図5は、本発明の第一の実施形態における名前空間管理テーブル152の構成の一例を示す説明図である。
 名前空間管理テーブル152は、メタデータサーバ1が管理するストレージ装置における名前空間に関する情報を格納する。ここで、名前空間とは、ファイルが格納される記憶領域を識別する論理的な単位である。ファイルサーバ4の場合、共有名及び公開名などの名称が名前空間に対応することが知られている。また、退避用ストレージ装置2の場合も同様の概念が知られている。
 名前空間管理テーブル152は、一以上のレコードを含み、各レコードは、名前空間ID1521、名前空間名1522、ストレージID1523、容量1524、プロトコル1525、使用量1526、及び用途1527から構成される。
 名前空間管理テーブル152の各レコードは、ファイルサーバ4及び退避用ストレージ装置2における名前空間に対応する。
 名前空間ID1521は、メタデータサーバ1が名前空間を一意に識別するための識別子を格納する。名前空間名1522は、ストレージ装置が名前空間を一意に識別するための名称を格納する。
 ストレージID1523は、名前空間に対応する論理記憶領域を提供するストレージ装置の識別子を格納する。なお、ストレージID1523は、ストレージID1511と同一のものである。
 容量1524は、名前空間に対応する論理的な記憶領域の容量を格納する。プロトコル1525は、名前空間に対応する論理記憶領域にアクセスするときに用いられるプロトコルを格納する。使用量1526は、名前空間に対応する論理記憶領域の使用量を格納する。
 用途1527は、名前空間に対応する論理記憶領域の用途を格納する。例えば、業務プログラム51によって使用される論理記憶領域である場合には「プライマリ」が格納される。また、退避ファイルを格納する論理記憶領域である場合には「退避」が格納される。
 図5に示す例では、第一のレコード及び第二のレコードは、ストレージID1523が「s1000」であるファイルサーバ4上の名前空間に関する情報が格納される。
 第一のレコードの名前空間ID1521には「n1001」、名前空間名1522には「share1」、ストレージID1523には「s1000」、容量1524には「20TB」、プロトコル1525には「nfs」、使用量1526には「5TB」及び用途1527には「プライマリ」が格納される。
 同様に、第二のレコードには、名前空間名1522、すなわち共有名が「share2」である名前空間に関する情報が格納される。また、第三のレコードには、他のファイルサーバ4の、名前空間名1522、すなわち共有名が「share3」である名前空間に関する情報が格納されている。また、第四のレコードには、退避用ストレージ装置2の名前空間名1522が「r」である名前空間に関する情報が格納されている。
 図6は、本発明の第一の実施形態におけるメタデータ管理テーブル153の構成の一例を示す説明図である。
 メタデータ管理テーブル153は、ファイルの格納場所を示す情報及びメタデータを格納する。具体的には、メタデータ管理テーブル153は、一以上のレコードを含み、各レコードは、メタデータID1531、パス1532、名前空間ID1533、オリジナルメタデータ1534、及びファイル状態1535から構成される。
 メタデータ管理テーブル153の各レコードは、ファイルサーバ4に格納されるファイル及び削除ファイルに対応する。
 メタデータID1531は、メタデータを識別するための識別子を格納する。パス1532は、ファイルが格納される格納場所を示すパス名を格納する。
 名前空間ID1533は、ファイルが格納される論理記憶領域の名前空間を識別するための識別子を格納する。名前空間ID1533は、名前空間ID1521と同一のものである。
 オリジナルメタデータ1534は、ファイルサーバ4におけるメタデータ(図示省略)が格納される。
 ファイル状態1535は、ファイルサーバ4にファイルに存在する否かを示す情報を格納する。具体的には、ファイルサーバ4にファイルが存在する場合には「存在」が格納され、ファイルサーバ4にファイルが存在しない場合には「削除」が格納される。
 ファイル状態1535に「存在」が格納されるレコードは、当該レコードに対応するファイルが、パス1532及び名前空間ID1533で示される格納場所に格納されていることを示している。
 一方、ファイル状態1535に「削除」が格納されるレコードは、現在、パス1532及び名前空間ID1533で示される格納場所に格納されておらず、現在は削除ファイルであることを示している。
 ファイルのメタデータはファイルサーバ4によってファイル毎に管理されており、メタデータサーバ1は、名前空間の種類毎に提供されるAPI(Application Programming Interface)を通じて、ファイルサーバ4から取得できる。
 図6に示す例では、メタデータ管理テーブル153に三つのレコードが格納される。なお、レコードの数は一例であって、本発明を限定するものではない。すなわち、メタデータ管理テーブル153には、メタデータサーバ1が管理する全てのファイルのメタデータに対応するレコードが格納される。
 第一のレコードは、ファイルサーバ4の「share1」という名前空間に格納されたファイル「/share1/a.doc」に対応するメタデータを表し、メタデータID1531には「100」が格納される。
 第一のレコードのパス1532には対応するファイルのパス名である「/share1/a.doc」が格納され、名前空間ID1533には、名前空間「share1」の識別子である「n1001」が格納される。また、第一のレコードのオリジナルメタデータ1534には、ファイルサーバ4における対応するファイルのメタデータが格納されるがここでは図示していない。さらに、第一のレコードのファイル状態1535には、「存在」が格納される。
 第二のレコードは、ファイルサーバ4の「share1」という名前空間に格納されたファイル「/share1/b.doc」に対応するメタデータを表し、メタデータID1531には「110」が格納される。また、第二のレコードのファイル状態1535には、「削除」が格納される。したがって、ファイル「/share1/b.doc」は、現在、パス1532及び名前空間ID1533で示される格納場所には格納されず、削除ファイルであることを表す。
 第三のレコードは、ファイルサーバ4の「share1」という名前空間に格納されたファイル「/share1/c.doc」に対応するメタデータを表し、メタデータID1531には「120」が格納される。
 図7は、本発明の第一の実施形態におけるファイル退避管理テーブル154の構成の一例を示す説明図である。
 ファイル退避管理テーブル154は、退避ファイルの格納先(退避先)に関する情報を格納する。具体的には、ファイル退避管理テーブル154は、一以上のレコードを含み、各レコードは、メタデータID1541、退避先パス1542、及び退避先名前空間ID1543から構成される。
 ファイル退避管理テーブル154の各レコードは、退避用ストレージ装置2に格納される退避ファイルに対応する。
 なお、メタデータサーバ1は、ファイルサーバ4からファイルが削除されることを検出し、当該ファイルを退避用ストレージ装置2に移動する場合にファイル退避管理テーブル154を更新する。
 メタデータID1541は、メタデータを識別するための識別子を格納する。メタデータID1541は、メタデータID1531と同一のものである。
 退避先パス1542は、退避ファイルが格納される格納場所を示すパス名を格納する。退避先名前空間ID1543は、退避ファイルが格納される名前空間を識別するための識別子を格納する。
 図7に示す例では、第一のレコードには、図6におけるファイル「/share1/b.doc」に対応する退避ファイルに関する情報が格納される。
 メタデータID1541には、ファイル「/share1/b.doc」に対応するメタデータの識別子「110」が格納される。また、退避先パス1542には、ファイル「/share1/b.doc」に対応する退避ファイルの格納先のパス名「/r/FS1/share1/b.doc」が格納される。さらに、退避先名前空間ID1543には、退避ファイル「/r/FS1/share1/b.doc」が格納される名前空間の識別子「n3001」が格納される。
 次に、ファイルサーバ4の構成について説明する。
 図8は、本発明の第一の実施形態におけるファイルサーバ4の構成を説明するブロック図である。
 ファイルサーバ4は、メモリ41、プロセッサ42、ネットワークインタフェース43、及びストレージインタフェース44を備え、また、ストレージ装置45と接続される。
 プロセッサ42は、メモリ41に格納されるプログラムを実行する。プロセッサ42がプログラムを実行することによって、ファイルサーバ4が備える機能を実現できる。
 メモリ41は、ファイル共有プログラム411、ファイルシステムプログラム412、及びストレージ入出力プログラム413を格納する。
 ファイル共有プログラム411は、業務プログラム51、分析プログラム61、及びメタデータサーバプログラム110が、ネットワーク7を介してストレージ装置45に格納されるファイルにアクセスするための機能を提供するプログラムである。
 ファイルシステムプログラム412は、ストレージ装置45にファイルを格納するためのファイルシステムを構成し、ファイルの入出力を管理するプログラムである。
 ストレージ入出力プログラム413は、ストレージ装置45に対するデータを読み出し処理及び書き込み処理を管理するプログラムである。
 プロセッサ42が前述したプログラムを実行することによって、ファイルサーバ4は、ネットワーク7を介してファイル共有機能を実現している。
 ストレージ装置45は、内部にストレージボリューム451を生成する。ストレージボリューム451は、ストレージ装置45が備えるハートディスクドライブ、ソリッドステートドライブ、不揮発性メモリ等の記憶媒体の記憶領域から構成される。
 ストレージボリューム451は、二つの名前空間452-1、452-2を含む。名前空間452-1には識別名として「share1」が設定され、名前空間452-2には識別名として「share1」が設定される。
 各名前空間452-1、452-2はそれぞれ、データ領域453-1、453-2と、隠蔽化ファイル格納領域454-1、454-2とを含む。
 データ領域453-1、453-2は、業務プログラム51が参照可能なファイルを格納する領域である。隠蔽化ファイル格納領域454-1、454-2は、業務プログラム51によって削除されたファイルを一時的に格納する領域である。
 隠蔽化ファイル格納領域454-1、454-2に格納されたファイルは、業務プログラム51には存在しないファイルとして扱われる。すなわち、業務プログラム51は、隠蔽化ファイル格納領域454-1、454-2に格納されたファイルを認識できない。
 データ領域453-1、453-2と隠蔽化ファイル格納領域454-1、454-2とは、異なるストレージボリューム451に含まれてもよいし、それぞれが単一のファイルシステムツリー内の一つのディレクトリであってもよい。また、名前空間452-1、452-2は、それぞれ異なるストレージボリューム451に含まれてもよいし、それぞれが単一のファイルシステムツリー内の一つのディレクトリであってもよい。
 本実施形態では、ストレージボリューム451には二つの名前空間が定義されているが、これは本発明を限定するものではなく、二つ以上の名前空間が定義されていてもよい。
 以降、データ領域453-1、453-2を区別しない場合、データ領域453と表記する。また、隠蔽化ファイル格納領域454-1、454-2を区別しない場合、隠蔽化ファイル格納領域454と表記する。
 図9は、本発明の第一の実施形態におけるメタデータ管理プログラム112が実行する処理を説明するフローチャートである。
 メタデータ管理プログラム112は、メタデータリポジトリ150を更新するために、周期的に、又はユーザの要求にしたがって本処理を実行する。
 メタデータ管理プログラム112は、処理を開始すると(ステップS8000)、名前空間管理テーブル152を参照して、処理対象となる名前空間を一つ選択する(ステップS8001)。
 次に、メタデータ管理プログラム112は、選択された名前空間に格納されるファイルの中から、処理対象となるファイルを一つ選択する(ステップS8002)。
 なお、ファイルの選択方法としては、名前空間におけるファイルシステムツリーを、上位のディレクトリから順にたどる方法が考えられる。
 メタデータ管理プログラム112は、ファイルサーバ4から処理対象のファイルのメタデータを取得する(ステップS8003)。
 メタデータ管理プログラム112は、取得されたメタデータに基づいて、メタデータ管理テーブル153を更新する(ステップS8004)。具体的には、以下のような処理が実行される。
 メタデータ管理プログラム112は、選択されたファイルに対応するレコードが登録済みであるか否かを判定する。具体的には、メタデータ管理プログラム112は、パス1532及び名前空間ID1533が、処理対象の名前空間の識別子及び処理対象のファイルのパス名と一致するレコードが存在するか否かを判定する。
 なお、取得されたメタデータと、オリジナルメタデータとが一致するか否かを判定する方法であってもよい。例えば、ファイルサーバ4におけるファイルの識別情報であるinode番号を使うことができる。
 選択されたファイルに対応するレコードが登録されていないと判定された場合、メタデータ管理プログラム112は、メタデータ管理テーブル153に新たなレコードを登録する。このとき、メタデータ管理プログラム112は、メタデータを一意に識別するための識別子を生成し、メタデータID1531に生成された識別子を格納する。
 さらに、メタデータ管理プログラム112は、選択された名前空間における処理対象ファイルのパス名をパス1532に格納し、選択された名前空間の識別子を名前空間ID1533に格納する。また、メタデータ管理プログラム112は、取得されたメタデータをオリジナルメタデータ1534に格納し、ファイル状態1535に「存在」を格納する。
 一方、選択されたファイルに対応するレコードが登録済みである場合、メタデータ管理プログラム112は、既存のレコードのオリジナルメタデータ1534に取得されたメタデータを格納する。
 メタデータ管理プログラム112は、処理対象の名前空間に格納される全てのファイルについて処理が完了したか否かを判定する(ステップS8005)。
 処理対象の名前空間に格納される全てのファイルについて処理が完了していないと判定された場合、メタデータ管理プログラム112は、ステップS8002に戻り同様の処理(ステップS8002~ステップS8005)を実行する。
 処理対象の名前空間に格納される全てのファイルについて処理が完了したと判定された場合、メタデータ管理プログラム112は、管理対象である全ての名前空間について処理が完了したか否かを判定する(ステップS8006)。
 管理対象である全ての名前空間について処理が完了していないと判定された場合、メタデータ管理プログラム112は、ステップS8001に戻り同様の処理(ステップS8001~ステップS8006)を実行する。
 管理対象である全ての名前空間について処理が完了したと判定された場合、メタデータ管理プログラム112は、処理を終了する(ステップS8007)。
 図10は、本発明の第一の実施形態におけるファイル共有プログラム411が実行する処理を説明するフローチャートである。
 ファイルサーバ4は、ファイルに対するアクセス要求を業務プログラム51又は他のプログラムから受信した場合に、以下で説明する処理を実行する。
 ファイル共有プログラム411は、処理を開始すると(ステップS8100)、ネットワーク7を介して、業務プログラム51又は他のプログラムから所定のファイルに対するアクセス要求を受信する(ステップS8101)。
 ファイル共有プログラム411は、受信したアクセス要求がファイルの削除要求であるか否かを判定する(ステップS8102)。
 受信したアクセス要求がファイルの削除要求でないと判定された場合、ファイル共有プログラム411は、ファイルシステムプログラム412に対して、受信したアクセス要求に従った処理の実行を指示する(ステップS8105)。その後、ファイル共有プログラム411は、アクセス要求の送信元のプログラムに対する応答を送信し、処理を終了する(ステップS8106)。
 受信したアクセス要求がファイルの削除要求であると判定された場合、ファイル共有プログラム411は、メタデータサーバ1のファイル削除検出プログラム113に対して、ファイルの削除要求を含むアクセス要求を受信した旨を通知する(ステップS8103)。
 以降、ファイルの削除を要求するアクセス要求を受信した旨の通知を削除通知と表記する。また、業務プログラム51又は他のプログラムから削除が要求されたファイルを削除対象ファイルと呼ぶ。削除対象ファイルは、最終的にメタデータサーバ1によって退避用ストレージ装置2に移動される。削除対象ファイルが、退避用ストレージ装置2に移動され、メタデータ管理テーブル153のファイル状態1535に「削除」が格納されると、当該ファイルは削除ファイルとなる。
 なお、削除通知には、削除対象ファイルのパス名、削除対象ファイルが格納される名前空間、ファイルサーバの識別名、及び削除対象ファイルのメタデータ等の情報が含まれる。
 ファイル共有プログラム411は、ファイル削除検出プログラム113から削除通知に対する応答を受信すると、当該応答に従って、削除対象ファイルに対する処理を実行する(ステップS8104)。なお、ファイル削除検出プログラム113から送信される応答には、ファイル退避プログラム114からの指示が含まれる。具体的には、以下のような処理を実行する。
 ファイル共有プログラム411は、受信した応答に削除対象ファイルの隠蔽化の指示が含まれる場合、削除対象ファイルを隠蔽化ファイル格納領域454に移動させる。これによって、業務プログラム51は削除対象ファイルへアクセスできなくなる。すなわち、業務プログラム51からは当該ファイルが削除されたものとして認識される。
 また、ファイル共有プログラム411は、受信した応答に削除対象ファイルの削除の指示が含まれる場合、削除対象ファイルを削除する。
 なお、ファイル共有プログラム411が、ファイルシステムプログラム412に対して指示を出力することによって、削除対象ファイルの移動処理及び削除処理が実現される。
 以降、隠蔽化ファイル格納領域454に格納された削除対象ファイルを、隠蔽化ファイルと呼ぶ。
 ファイル共有プログラム411は、削除対象ファイルに対する処理が終了すると処理を終了する(ステップS8106)。
 本実施形態では、ファイル共有プログラム411が処理を実行したが、ファイルシステムプログラム412等の他のプログラムによって実行されてもよい。
 図11A、図11B及び図11Cは、本発明の第一の実施形態におけるファイル削除検出プログラム113が実行する処理を説明するフローチャートである。
 ファイル削除検出プログラム113は、処理を開始すると(ステップS8200)、ファイルサーバ4からファイルが削除されることを検出する(ステップS8201)。ファイル削除検出プログラム113は、当該ファイルを削除対象ファイルとして認識する。
 本実施形態では、ファイル削除検出プログラム113は、ファイル共有プログラム411から削除通知を受信することによって(ステップS8103参照)、ファイルサーバ4からファイルが削除されることを検出できる。なお、当該通知には、削除対象ファイルのパス名、名前空間名、及びメタデータ等が含まれる。
 ファイル削除検出プログラム113は、メタデータ管理テーブル153の削除対象ファイルに対応するレコードを更新する(ステップS8202)。
 具体的には、ファイル削除検出プログラム113は、受信した削除通知に含まれる情報に基づいてメタデータ管理テーブル153を参照して、削除対象ファイルに対応するレコードを特定し、当該レコードのファイル状態1535に「削除」を格納する。
 ファイル削除検出プログラム113は、ファイルサーバ4に対して、削除対象ファイルに対するファイル隠蔽化処理を実行する(ステップS8203)。ファイル隠蔽化処理では以下のような処理が実行される。
 まず、ファイル削除検出プログラム113は、削除通知を送信したファイルサーバ4に対して、削除対象ファイルに対する隠蔽化処理の実行を指示する(ステップS8204)。
 隠蔽化処理の実行指示を受信したファイルサーバ4のファイル共有プログラム411は、削除対象ファイルを隠蔽化ファイル格納領域454に移動する。これによって、削除ファイルは隠蔽化ファイルとして扱われることとなる。なお、隠蔽化ファイルのパス名は、ファイル共有プログラム411又はファイルシステムプログラム412が自動的に決定してもよいし、ファイル削除検出プログラム113が自動的に決定してもよい。
 次に、ファイル削除検出プログラム113は、ファイル退避管理テーブル154を更新する(ステップS8205)。具体的には、以下のような処理が実行される。
 ファイル削除検出プログラム113は、ファイル退避管理テーブル154に新たなレコードを追加し、当該レコードのメタデータID1541に、削除対象ファイルに対応するレコードのメタデータID1531を格納する。ファイル削除検出プログラム113は、退避先パス1542に隠蔽化ファイルのパス名を格納し、退避先名前空間ID1543に隠蔽化ファイルが格納される名前空間の識別子を格納する。
 以上が削除対象ファイルに対する隠蔽化処理の説明である。
 次に、ファイル削除検出プログラム113は、隠蔽化ファイルの退避処理を実行し(ステップS8206)、処理を終了する(ステップS8210)。隠蔽化ファイルに対する退避処理では以下のような処理が実行される。
 まず、ファイル削除検出プログラム113は、ファイル退避プログラム114を呼び出し、隠蔽化ファイルに対する退避処理の実行を指示する。
 当該退避処理の実行指示を受信したファイル退避プログラム114は、退避用ストレージ装置2上の名前空間に、隠蔽化ファイルを複製する(ステップS8207)。複製されたファイルが退避ファイルとなる。このとき、退避ファイルのパス名は、退避ファイルが格納される名前空間内で一意なパス名が決定されるものとする。
 ファイル退避プログラム114は、退避ファイルの情報とともに、隠蔽化ファイルに対する退避処理の完了を通知する。
 次に、ファイル削除検出プログラム113は、受信した完了通知に含まれる情報に基づいてファイル退避管理テーブル154を更新する(ステップS8208)。具体的には、ステップS8205において追加されたレコードの退避先パス1542に退避ファイルのパス名を格納し、退避先名前空間ID1543に退避ファイルが格納される名前空間の識別子を格納する。
 次に、ファイル削除検出プログラム113は、ファイルサーバ4に対して、隠蔽化ファイルの削除を指示する(ステップS8209)。当該指示を受信したファイルサーバ4は、隠蔽化ファイル格納領域454に対応する名前空間から隠蔽化ファイルを削除する。
 なお、ファイルサーバ4が、周期的に、メタデータサーバ1に対して削除すべきファイルが存在するか否かを問い合わせてもよい。この場合、ファイル削除検出プログラム113は、隠蔽化ファイルの削除を指示しなくてもよい。
 図12は、本発明の第一の実施形態において、ファイルが移動した後のメタデータ管理テーブル153を示す説明図である。図13は、本発明の第一の実施形態において、ファイルが移動した後のファイル退避管理テーブル154を示す説明図である。
 ここでは、ファイルサーバ4の名前空間「share1」に格納されたファイル「share1/a.doc」が退避用ストレージ装置2に移動した場合を例に説明する。
 図6と図12とを比較すると、ファイル「share1/a.doc」に対応する第一のレコードのファイル状態1535は、「存在」から「削除」に変化していることが分かる。これは、ファイル「share1/a.doc」が削除ファイルとなったことを意味する。
 また、図7と図13とを比較すると、ファイル退避管理テーブル154に、新たな第二のレコードが追加されていることが分かる。第二のレコードは、メタデータID1541には「100」が格納される。従って、第二のレコードは、メタデータの識別子が「100」であるファイル、すなわち、ファイル「share1/a.doc」に対応する退避ファイルの情報を格納するレコードであることが分かる。
 また、退避先パス1542と退避先名前空間ID1543を参照すると、ファイル「share1/a.doc」に対応する退避ファイルのパス名が「r/FS1/share1/a.doc」であり、退避先名前空間ID1543が「n3001」で識別される名前空間、すなわち、退避用ストレージ装置2の名前空間「r」であることが分かる。
 図14は、本発明の第一の実施形態における問い合わせ処理プログラム111が実行する処理を説明するフローチャートである。
 問い合わせ処理プログラム111は、分析プログラム61から、メタデータサーバ1が管理するファイルの一覧の出力を要求された時に処理を実行する。
 問い合わせ処理プログラム111は、処理を開始すると(ステップS8300)、分析プログラム61からファイルの問い合わせを受信する(ステップS8301)。
 当該問い合わせには、出力するファイルの条件が含まれていてもよい。条件としては、例えば、パス名に特定の文字列を含むファイル、特定の時間帯に更新されたファイル、特定の所有者のファイル、特定のアクセス権が設定されたファイル、特定のファイルサーバ若しくは名前空間に格納されるファイル、又は、特定のファイルサーバ若しくは名前空間に格納されていたファイル等などが考えられる。また、削除ファイルであること、削除ファイルではないこと、削除ファイルと削除ファイルでないファイルの両方など、削除ファイルに関する条件も指定することができる。さらに、前述した条件を満たすファイルの集合の論理和や論理積も指定できる。
 問い合わせ処理プログラム111は、メタデータリポジトリ150を参照して、指定された条件を満たすファイルのリスト116をメモリ11上に生成する(ステップS8302)。具体的には、問い合わせ処理プログラム111は、ストレージ管理テーブル151、名前空間管理テーブル152、及びメタデータ管理テーブル153を参照してリスト116を生成する。
 図15A及び図15Bは、本発明の第一の実施形態におけるリスト116の構成の一例を示す説明図である。
 リスト116は、メタデータサーバ1が管理する各ファイルの情報を格納する。具体的には、リスト116は、メタデータID1161、パス1162、オリジナルメタデータ1163、ストレージID1164、IPアドレス1165、名前空間ID1166、ファイル状態1167、及び退避先情報1168を含む。
 メタデータID1161は、メタデータを識別するための識別子を格納する。メタデータID1161は、メタデータID1531と同一のものである。
 パス1162は、ファイルが格納される格納場所を示すパスを格納する。パス1162は、パス1532と同一のものである。
 オリジナルメタデータ1163は、ファイルのメタデータを格納する。オリジナルメタデータ1163は、オリジナルメタデータ1153と同一のものである。
 ストレージID1164は、ファイルが格納されるストレージ装置の識別子を格納する。ストレージID1164は、ストレージID1511と同一のものである。
 IPアドレス1165は、ストレージ装置の割り当てられているIPアドレスを格納する。IPアドレス1165は、IPアドレス1514と同一のものである。
 名前空間ID1166は、メタデータサーバ1が名前空間を一意に識別するための識別子を格納する。名前空間ID1166は、名前空間ID1521と同一のものである。
 ファイル状態1167は、ファイルサーバ4にファイルに存在する否かを示す情報を格納する。ファイル状態1167は、ファイル状態1535と同一のものである。
 退避先情報1168は、退避ファイルに関する情報を格納する。なお、退避ファイルでない場合には、退避先情報1168には情報が格納されない。
 退避先情報1168は、退避先パス11681、ストレージID11682、IPアドレス11683、及び退避先名前空間ID11684を含む。
 退避先パス11681は、退避ファイルが格納される格納場所を示すパスを格納する。退避先パス11681は、退避先パス1542と同一のものである。
 ストレージID11682は、退避ファイルが格納されるストレージ装置の識別子を格納する。ストレージID11682は、ストレージID1511と同一のものである。
 IPアドレス11683は、退避ファイルが格納されるストレージ装置の割り当てられているIPアドレスを格納する。IPアドレス11683は、IPアドレス1514と同一のものである。
 退避先名前空間ID11684は、退避ファイルが格納される名前空間を識別するための識別子を格納する。退避先名前空間ID11684は、退避先名前空間ID1543と同一のものである。
 ステップS8302では、メタデータID1161、パス1162、オリジナルメタデータ1163、ストレージID1164、IPアドレス1165、名前空間ID1166、及びファイル状態1167に情報が格納される。
 以上が、リスト116の説明である。図14の説明に戻る。
 問い合わせ処理プログラム111は、生成されたリストから削除ファイルに対応するエントリを一つ選択する(ステップS8303)。具体的には、問い合わせ処理プログラム111は、ファイル状態1167に「削除」が格納されるエントリを選択する。なお、削除ファイルに対応するエントリが複数存在する場合、エントリの上位のものから順に選択する方法が考えられる。
 問い合わせ処理プログラム111は、ファイル退避管理テーブル154を参照して、選択されたエントリに対応する削除ファイルにおける退避先の情報を取得する(ステップS8304)。
 具体的には、問い合わせ処理プログラム111は、選択されたエントリのメタデータID1161と一致するレコードをファイル退避管理テーブル154から特定する。
 問い合わせ処理プログラム111は、特定されたレコードから退避先パス1542、及び退避先名前空間ID1543を取得する。さらに、問い合わせ処理プログラム111は、退避先名前空間ID1543を用い、ストレージ管理テーブル151及び名前空間管理テーブル152から、退避ファイルが格納される退避用ストレージ装置2の識別名、IPアドレス、及び名前空間の識別名を取得する。
 次に、問い合わせ処理プログラム111は、ステップS8304において取得された情報に基づいて、リスト116を更新する(ステップS8305)。具体的には、選択されたエントリの退避先情報1169に、ステップS8304において取得された情報が格納される。
 問い合わせ処理プログラム111は、リスト116に含まれる全ての削除ファイルに対応するエントリについて処理が完了したか否かを判定する(ステップS8306)。
 全ての削除ファイルに対応するエントリについて処理が完了していないと判定された場合、問い合わせ処理プログラム111は、ステップS8303に戻り同様の処理(ステップS8303~ステップS8306)を実行する。
 全ての削除ファイルに対応するエントリについて処理が完了したと判定された場合、問い合わせ処理プログラム111は、ファイル一覧の出力要求の送信元である分析プログラム61に、生成されたリスト116を送信し、処理を終了する(ステップS8307、ステップS8308)。
 図16は、本発明の第一の実施形態における分析プログラム61が実行するファイル分析処理を説明するフローチャートである。
 分析プログラム61は、周期的に、又はユーザの指示に従って分析処理を実行する。
 分析プログラム61は、分析処理を開始すると(ステップS8400)、メタデータサーバ1の問い合わせ処理プログラム111に対して、全てのファイルサーバ4に格納されているファイルの問い合わせを送信する(ステップS8401)。当該出力要求には、リスト116に含めるべきファイルの条件が含まれてもよい。
 分析プログラム61は、メタデータサーバ1からの応答を待つ。すなわち、メタデータサーバ1からリスト116を送信されるまで処理を待つ。
 分析プログラム61は、受信したリスト116から処理対象となるエントリを一つ選択する(ステップS8402)。例えば、リスト116の上位のエントリから順に選択する方法が考えられる。
 分析プログラム61は、処理対象のエントリに基づいて、当該エントリに対応するファイルの読み出し先との情報を取得する(ステップS8403)。具体的には、以下のような処理が実行される。
 まず、分析プログラム61は、選択されたエントリのファイル状態1167に「削除」が格納されているか否かを判定する。ファイル状態1167に「削除」が格納されている場合、選択されたエントリは、削除ファイルに関するエントリであることが分かる。
 ファイル状態1167に「削除」が格納されている場合には、分析プログラム61は、退避先情報1168に格納される情報を取得する。すなわち、退避先パス11681、ストレージID11682、IPアドレス11683、及び退避先名前空間ID11684が取得される。
 ファイル状態1167に「削除」が格納されている場合には、分析プログラム61は、パス1162、ストレージID1164、IPアドレス1165、及び名前空間ID1166を取得する。
 以上がステップS8403の処理である。
 次に、分析プログラム61は、ステップS8403において取得された情報に基づいて、読み出し先となるストレージ装置から、選択されたエントリに対応するファイルを読み出す(ステップS8404)。
 分析プログラム61は、読み出されたファイルの内容と、選択されたエントリのオリジナルメタデータ1163とに基づいて所定の分析処理を実行する(ステップS8405)。
 分析プログラム61は、取得されたリスト116の全てのエントリについて処理が完了したか否かを判定する(ステップS8406)。
 全てのエントリについて処理が完了していないと判定された場合、分析プログラム61は、ステップS8402に戻り、同様の処理を実行する(ステップS8402~ステップS8406)。
 全てのエントリについて処理が完了したと判定された場合、分析プログラム61は、分析処理を終了する(ステップS8407)。
 なお、ステップS8404において、ファイルが格納されるストレージ装置が、分析プログラム61からアクセスできないストレージ装置である場合がある。例えば、ファイルを読み出すためのファイル共有プロトコルが、分析プログラム61においてサポートされていない場合などが該当する。
 この場合は、分析プログラム61は、ファイル代理読み出しプログラム115に対して、所望のファイルの読み出し要求を送信する。当該要求を受信したファイル代理読み出しプログラム115が、分析プログラム61に代わってストレージ装置からファイルを読み出し、分析プログラム61に読み出されたファイルを応答する。
 [第二の実施形態]
 次に、本発明の第二の実施形態について説明する。
 第一の実施形態では、ファイルサーバ4は、業務プログラム51からファイルの削除要求を受信した場合に、処理の過程でメタデータサーバ1に当該ファイルの削除通知を送信する。その後、ファイルサーバ4は、メタデータサーバ1の指示に従って隠蔽化処理を実行する。
 第二の実施形態では、ファイルサーバ4は、業務プログラム51から一定の数のファイルの削除要求を受信した場合、削除通知を送信してから一定時間が経過した場合に、複数のファイルの削除通知をまとめてメタデータサーバ1に送信する点が異なる。また、第二の実施形態では、ファイルサーバ4は、複数のファイルの削除通知をまとめて送信するために、ファイルの削除要求を受信した場合、メタデータサーバ1からの指示を待つことなく、自動的にファイルの隠蔽化処理を実行する。
 以降、第一の実施形態の差異を中心に説明する。
 第二の実施形態の計算機システム500の構成、メタデータサーバ1の構成、及びメタデータサーバ1が管理するテーブルは第一の実施形態と同一であるため説明を省略する。第二の実施形態のファイルサーバ4は、メモリ41に新たに隠蔽化ファイル管理テーブル415(図示省略)を備える点が第一の実施形態のファイルサーバ4と異なる。他の構成は第一の実施形態と同一であるため説明を省略する。
 図17は、本発明の第二の実施形態における隠蔽化ファイル管理テーブル415の構成の一例を示す説明図である。
 隠蔽化ファイル管理テーブル415は、隠蔽化ファイルに関する情報を格納する。具体的には、隠蔽化ファイル管理テーブル415は、パス4151、名前空間ID4152、オリジナルメタデータ4153、及び隠蔽化ファイルパス4154を含む。
 パス4151は、隠蔽化処理が実行される前のファイルのパス名を格納する。名前空間ID4152は、隠蔽化処理が実行される前にファイルが格納されていた名前空間の識別名を格納する。
 オリジナルメタデータ4153は、隠蔽化処理が実行される前のファイルのメタデータを格納する。隠蔽化ファイルパス4154は、隠蔽化ファイルのパス名を格納する。
 図18は、本発明の第二の実施形態におけるファイル共有プログラム411が実行する処理を説明するフローチャートである。
 ファイル共有プログラム411は、処理を開始すると(ステップS8600)、ネットワーク7を介して、業務プログラム51又は他のプログラムから所定のファイルに対するアクセス要求を受信する(ステップS8601)。
 ファイル共有プログラム411は、受信したアクセス要求がファイルの削除要求であるか否かを判定する(ステップS8602)。
 受信したアクセス要求がファイルを削除要求でないと判定された場合、ファイル共有プログラム411は、ファイルシステムプログラム412に対して、受信したアクセス要求に従った処理の実行を指示する(ステップS8607)。その後、ファイル共有プログラム411は、アクセス要求の送信元のプログラムに対する応答を送信し、処理を終了する(ステップS8608)。
 受信したアクセス要求がファイルの削除要求であると判定された場合、ファイル共有プログラム411は、削除対象ファイルを隠蔽化ファイル格納領域454へ移動する(ステップS8603)。これによって、削除対象ファイルは、業務プログラム51からは削除されてものと認識される。
 ファイル共有プログラム411は、隠蔽化ファイル管理テーブル415を更新する(ステップS8604)。すなわち、ファイル共有プログラム411は、隠蔽化ファイルの情報を隠蔽化ファイル管理テーブル415に格納する。
 具体的には、ファイル共有プログラム411は、新たなレコードを生成し、削除対象ファイルが隠蔽化ファイル格納領域454に移動される前に格納されていたパス名、名前空間の識別名、及びメタデータ、並びに、隠蔽化ファイルのパス名を生成されたレコードに格納する。隠蔽化ファイルのパス名は、ファイル共有プログラム411によって隠蔽化ファイル管理テーブル415内で重複しないように決定される。
 ファイル共有プログラム411は、ファイルの削除通知をメタデータサーバ1に送信する必要があるか否かを判定する(ステップS8605)。例えば、ファイル共有プログラム411は、隠蔽化ファイル管理テーブル415にあらかじめ設定された一定数以上のレコードが登録された場合、又は、前回の削除通知からあらかじめ設定された時間が経過した場合に、ファイルの削除通知を送信する必要があると判定する。
 ファイルの削除通知をメタデータサーバ1に送信する必要がないと判定された場合、ファイル共有プログラム411は、処理を終了する(ステップS8608)。
 ファイルの削除通知をメタデータサーバ1に送信する必要があると判定された場合、ファイル共有プログラム411は、メタデータサーバ1に、ファイルの削除通知を送信する(ステップS8606)。当該通知には、隠蔽化ファイル管理テーブル415に格納される全てのレコードの情報、すなわち、全ての隠蔽化ファイルに関する情報が含まれる。その後、ファイル共有プログラム411は、処理を終了する(ステップS8608)。
 なお、ステップS8605及びステップS8606の処理は、業務プログラム51からのアクセス要求に対する処理の過程で実行しているが、この二つの処理は、アクセス要求に対する処理とは独立した処理として、周期的に実行してもよい。
 ファイル削除検出プログラム113は、ファイル共有プログラム411から削除通知を受信すると図11に示す処理を実行する。ただし、削除通知を受信した時には、ファイルサーバ4によって削除ファイルが隠蔽化されているため、ステップS8203の処理は実行されない。
 [第三の実施形態]
 次に、本発明の第三の実施形態を説明する。
 第三の実施形態は、第二の実施形態を拡張し、削除ファイルに加え、ファイルに対する上書き及びファイルのサイズの変更等によってファイルから部分的に消去されるデータについても分析プログラム61が読み出せるように管理する点に特徴がある。
 以降、ファイルの削除、ファイルに対する上書き、又はファイルサイズ縮小によって消去されるデータを消去データと呼ぶ。
 また、前述した処理によって消去データが発生したため、ファイルサーバ4からは読み出すことができなくなったが、メタデータサーバ1に問い合わせることで取得できるファイルを削除ファイルと呼ぶ。特に、ファイルに対する上書き、ファイルサイズ縮小によって、データの一部が消去されたファイルを部分消去ファイルと呼ぶ。
 また、消去データが格納されていた、ファイルサーバ4上のファイルをオリジナルファイルと呼ぶ。消去データを退避するためのファイルを退避ファイルと呼ぶ。一つの退避ファイルには、一回のアクセス処理において発生した消去データが格納される。
 以降、第一の実施形態及び第二の実施形態との差異を中心に説明する。
 第三の実施形態の計算機システム500の構成、メタデータサーバ1の構成は第一の実施形態と同一であるため説明を省略する。また、第三の実施形態のファイルサーバ4の構成は第二の実施形態と同一であるため説明を省略する。
 第三の実施形態では、メタデータサーバ1が備えるファイル退避管理テーブル154と、ファイルサーバ4が備える隠蔽化ファイル管理テーブル415が異なる。
 図19は、本発明の第三の実施形態におけるファイル退避管理テーブル154の構成の一例を示す説明図である。
 第三の実施形態におけるファイル退避管理テーブル154は、メタデータサーバ1のメモリ11に格納される。
 ファイル退避管理テーブル154は、消去データと退避ファイルとの対応づけを管理する情報を格納する。具体的には、ファイル退避管理テーブル154は、一以上のレコードを含み、各レコードは、メタデータID1541、退避先パス1542、退避先名前空間ID1543、及びアドレス範囲1544から構成される。
 ファイル退避管理テーブル154の各レコードは、一回のアクセス処理において発生する消去データに関する情報に対応する。
 第一の実施形態のファイル退避管理テーブル154と比較して、新たにアドレス範囲1544が追加されている。アドレス範囲1544は、消去データが格納されていたオリジナルファイル上のアドレス範囲を格納する。
 メタデータサーバ1は、ファイルサーバ4においてデータが消去されたことを検出すると、消去データを退避ファイルへ移動するとともに、ファイル退避管理テーブル154を更新する。
 図19に示す例では、第一のレコードには、ファイル「/share1/b.doc」における消去データに関する情報が格納される。メタデータID1541には、ファイル「/share1/b.doc」に対応するメタデータの識別子「110」が格納される。また、退避先パス1542には、退避ファイルの格納先のパス名「/r/FS1/share1/b.doc」が格納される。退避先名前空間ID1543には、退避ファイル「/r/FS1/share1/b.doc」が格納される名前空間の識別子「n3001」が格納される。さらに、アドレス範囲1544には、オリジナルファイル「/share1/b.doc」における消去データのアドレス範囲[10,20)が格納される。
 図20は、本発明の第三の実施形態における隠蔽化ファイル管理テーブル415の構成の一例を示す説明図である。
 第三の実施形態における隠蔽化ファイル管理テーブル415は、ファイルサーバ4のメモリ41に格納される。
 隠蔽化ファイル管理テーブル415は、消去データと隠蔽化ファイルとの対応づけを管理する情報を格納する。具体的には、隠蔽化ファイル管理テーブル415は、一以上のレコードを含み、各レコードは、パス4151、名前空間ID4152、オリジナルメタデータ4153、隠蔽化ファイルパス4154、アドレス範囲4155、及び消去種別4156から構成される。
 隠蔽化ファイル管理テーブル415の各レコードは、一回のアクセス処理において発生する消去データに関する情報を対応する。
 第二の実施形態と比較して、新たに、アドレス範囲4155及び消去種別4156が追加されている。アドレス範囲4155は、オリジナルファイルにおける消去データが格納されていたアドレス範囲を格納する。消去種別4156は、消去データが発生した原因を格納する。
 ファイルが削除されることによって消去データが発生した場合、消去種別4156には、ファイルが削除されたことを示す情報である「削除」が格納される。ファイルの一部が上書き又はファイルのサイズの縮小によって消去データが発生した場合、消去種別4156には、ファイルの一部のデータが消去されたことを示す情報である「一部消去」が格納される。
 ファイルサーバ4は、消去データが発生する場合、すなわち、ファイルの削除、ファイルへの上書き、又はファイルサイズの縮小等の処理が要求された場合、消去データをオリジナルファイルから読み出し、隠蔽化ファイルへ消去データを書き込むとともに、隠蔽化ファイル管理テーブル415を更新する。
 図21は、本発明の第三の実施形態におけるファイル共有プログラム411が実行する処理を説明するフローチャートである。
 第三の実施形態では、ファイルの削除が要求された場合だけではなく、ファイルへの上書き及びファイルサイズの縮小によって消去データが発生する場合にも、当該消去データが隠蔽化ファイル格納領域454へ格納される点が第二の実施形態と異なる。
 第二の実施形態と同様に、ファイル共有プログラム411は、処理を開始すると(ステップS8700)、ネットワーク7を介して、業務プログラム51又は他のプログラムからファイルに対するアクセス要求を受信する(ステップS8701)。
 ファイル共有プログラム411は、受信したアクセス要求に対応する処理を実行すると消去データが発生するか否か判定する(ステップS8702)。すなわち、受信したアクセス要求がファイルからデータの消去を要求するものであるか否かが判定される。例えば、ファイルの削除、ファイルへのデータの上書き、又はファイルサイズの縮小等の要求である場合、受信したアクセス要求に対応する処理を実行すると消去データが発生すると判定される。
 消去データが発生しないと判定された場合、ファイル共有プログラム411は、ステップS8705に進む。
 消去データが発生すると判定された場合、ファイル共有プログラム411は、隠蔽化ファイル格納領域454に消去データを移動する(ステップS8703)。
 具体的には、ファイル共有プログラム411は、消去データのアドレス範囲を特定し、隠蔽化ファイル格納領域454上に消去データを格納するための隠蔽化ファイルを生成し、生成された隠蔽化ファイルに消去データを格納する。
 このとき、隠蔽化ファイルのパス名は、隠蔽化ファイル格納領域454に格納される他の隠蔽ファイルと重複しないように決定される。
 ファイル共有プログラム411は、生成された隠蔽化ファイルの情報に基づいて、隠蔽化ファイル管理テーブル415を更新する(ステップS8704)。
 具体的には、ファイル共有プログラム411は、隠蔽化ファイル管理テーブル415に新たなレコードを追加する。
 ファイル共有プログラム411は、追加されたレコードのパス4151にオリジナルファイルのパス名を格納し、名前空間ID4152にオリジナルファイルが格納される名前空間の識別子を格納し、オリジナルメタデータ4153にオリジナルファイルのメタデータを格納する。
 また、ファイル共有プログラム411は、隠蔽化ファイルパス4154に生成された隠蔽化ファイルのパス名を格納し、アドレス範囲4155に消去データのアドレス範囲を格納する。さらに、ファイル共有プログラム411は、消去種別4156に、ファイルが削除される場合には「削除」を格納し、ファイルが削除されない場合は「一部消去」を格納する。
 次に、ファイル共有プログラム411は、受信したアクセス要求に対応する処理をファイルに対して実行する(ステップS8705)。
 ファイル共有プログラム411は、削除通知を送信する必要があるか否かを判定する(ステップS8706)。なお、削除通知には、消去データが発生するアクセス要求を受信した旨を通知するものも含まれるものとする。
 例えば、隠蔽化ファイル管理テーブル415にあらかじめ設定された一定数以上のレコードが登録された場合、又は、前回の削除通知からあらかじめ設定された時間が経過した場合に、削除通知を送信する必要があると判定される。
 削除通知、すなわち、消去データが発生した旨の通知をメタデータサーバ1に送信する必要がないと判定された場合、ファイル共有プログラム411は、処理を終了する(ステップS8708)。
 削除通知、すなわち、消去データが発生したことをメタデータサーバ1に通知する必要があると判定された場合、ファイル共有プログラム411は、メタデータサーバ1に消去データが発生したことを通知する(ステップS8707)。当該通知には、隠蔽化ファイル管理テーブル415に格納される全てのレコードの情報、すなわち、全ての隠蔽化ファイルに関する情報が含まれる。その後、ファイル共有プログラム411は処理を終了する(ステップS8708)。
 なお、ステップ8706及びステップS8707の処理は、アクセス要求に対する処理の過程で実行していたが、アクセス要求に対する処理とは独立した処理として、周期的に実行してもよい。
 図22は、本発明の第三の実施形態における、ファイル削除検出プログラム113が実行する処理を説明するフローチャートである。
 ファイル削除検出プログラム113は、処理を開始すると(ステップS8800)、ファイルサーバ4における消去データの発生を検出する(ステップS8801)。
 具体的には、ファイル削除検出プログラム113は、ファイルサーバ4から消去データが発生した旨を通知する削除通知を受信することによって、ファイルサーバ4において消去データが発生したことを検出できる。なお、削除通知には、隠蔽化ファイル管理テーブル415に格納される情報が含まれる。
 ここでは、ファイル削除検出プログラム113は、消去データ毎に、すなわち隠蔽化ファイル管理テーブル415のレコード毎に処理を実行するものとして説明する。
 ファイル削除検出プログラム113は、受信した削除通知に含まれる隠蔽化ファイル管理テーブル415に基づいて、処理対象の消去データがファイルの削除によって発生したか否かを判定する(ステップS8802)。すなわち、処理対象の消去データを含んでいたファイルが削除ファイル、又は部分消去ファイルの何れであるかが判定される。
 ファイル削除検出プログラム113は、消去種別4156に「削除」が格納される場合、ファイルの削除によって発生した消去データであると判定する。一方、ファイル削除検出プログラム113は、消去種別4156に「一部消去」が格納される場合、ファイルの上書き又はファイルサイズの縮小によって発生した消去データであると判定する。
 ファイルの削除によって発生した消去データであると判定された場合、ファイル削除検出プログラム113は、メタデータ管理テーブル153の処理対象のファイルに対応するレコードを特定し、当該レコードのファイル状態1535に「削除」を格納する(ステップS8803)。その後、ファイル削除検出プログラム113は、ステップS8804に進む。
 ファイルの削除によって発生した消去データでないと判定された場合、ファイル削除検出プログラム113は、メタデータ管理テーブル153に、処理対象のファイルに対応するレコードを追加する(ステップS8808)。
 具体的には、ファイル削除検出プログラム113は、追加されたレコードのメタデータID1531に、他のレコードと重複しない識別子を格納する。ファイル削除検出プログラム113は、追加されたレコードのパス1532及びオリジナルメタデータ1534に、処理対象のファイルのパス名及びメタデータを格納する。ファイル削除検出プログラム113は、名前空間ID1533に、処理対象のファイルが格納される名前空間の識別子を格納する。また、ファイル削除検出プログラム113は、ファイル状態1535に、「一部消去」を格納する。
 なお、追加されたレコードに格納する情報は、ファイルサーバ4から受信した削除通知に含まれる情報に基づいて取得することができる。
 ファイル削除検出プログラム113は、ファイル退避管理テーブル154を更新する(ステップS8804)。具体的には、ファイル削除検出プログラム113は、処理対象の消去データが格納される隠蔽化ファイルに対応するレコードを追加する。
 追加されたレコードのメタデータID1541には、ステップS8804において特定されたレコードのメタデータID1531、又は、ステップS8808において追加されたレコードのメタデータID1531と同一のものが格納される。退避先パス1542には、隠蔽化ファイルのパス名が格納され、退避先名前空間ID1543には、隠蔽化ファイルが格納される名前空間の識別子が格納され、アドレス範囲1544には、隠蔽化ファイルに格納される消去データのアドレス範囲が格納される。なお、追加されるレコードに格納される情報は、ファイルサーバ4から受信した削除通知に含まれる情報に基づいて取得することができる。
 ファイル削除検出プログラム113は、隠蔽化ファイルを退避用ストレージ装置2に移動する(ステップS8805)。具体的には、ファイル削除検出プログラム113は、隠蔽化ファイルを退避用ストレージ装置2の名前空間上に複製して、処理対象の消去データを退避ファイルへ移動させる。この時、退避ファイルのパス名は、退避用ストレージ装置2に格納される他の退避ファイルとは重複しないように決定される。
 ファイル削除検出プログラム113は、ファイル退避管理テーブル154を更新する(ステップS8806)。具体的には、ファイル削除検出プログラム113は、ステップS8804において追加されたレコードの退避先パス1542を退避ファイルのパス名に変更する。
 ファイル削除検出プログラム113は、ファイルサーバ4に隠蔽化ファイルの削除を指示する(ステップS8807)。その後、ファイル削除検出プログラム113は、処理を終了する(ステップS8809)。
 図23及び図24は、本発明の第三の実施形態におけるメタデータ管理テーブル153の一例を示す説明図である。図25は、本発明の第三の実施形態におけるファイル退避管理テーブル154の一例を示す説明図である。
 ここでは、ファイルサーバ4の名前空間「share1」に格納されるファイル「/share1/a.doc」にデータが上書きされた場合におけるメタデータ管理テーブル153及びファイル退避管理テーブル154について説明する。
 図23は、ファイル「/share1/a.doc」にデータが上書きされる前のメタデータ管理テーブル153を表している。メタデータ管理テーブル153の第一のレコードには、ファイル「/share1/a.doc」の情報が記録される。当該レコードに格納される情報から、ファイル「/share1/a.doc」は、ファイルサーバ4に格納されており、更新時刻が「10:00」であることが分かる。
 図24は、ファイル「/share1/a.doc」にデータが上書きされ、メタデータサーバ1が消去データを退避用ストレージ装置2に移動した後のメタデータ管理テーブル153を表している。
 図23と比較すると、メタデータID1531が「101」である第二のレコードが追加されている。当該レコードは、メタデータサーバ1が、更新時刻が「10:00」の時点のファイル「/share1/a.doc」を、部分消去ファイルとして管理していることを表している。したがって、当該レコードのファイル状態1535には、「一部消去」が格納される。
 また、第一のレコードは、ファイル「/share1/a.doc」へのデータの上書きによって、更新時刻が「12:00」に変更されていることが分かる。
 図25は、ファイル「/share1/a.doc」にデータが上書きされ、メタデータサーバ1が消去データを退避用ストレージ装置2に移動した後のファイル退避管理テーブル154を表している。
 図25のファイル退避管理テーブル154の第一のレコードには、図24のメタデータ管理テーブル153の第二のレコードに対応する部分消去ファイルの消去データ及び退避ファイルに関する情報が格納される。
 第二のレコードのメタデータID1541には、「100」が格納される。したがって、第二のレコードが図24のメタデータ管理テーブル153の第二のレコードに対応する部分消去ファイルの消去データについて関連するレコードであることが分かる。
 退避先パス1542及び退避先名前空間ID1543から、消去データは、退避用ストレージ装置2の名前空間「r」に、パス名が「A/r/s1000/share/a.doc_diff」であるファイルとして格納されていることが分かる。
 また、アドレス範囲1544から、消去データがオリジナルファイルのアドレス「0」から「29」までの範囲に格納されていたデータであることが分かる。
 図26は、本発明の第三の実施形態におけるファイル代理読み出しプログラム115が実行する処理を説明するフローチャートである。
 本実施形態におけるファイル代理読み出しプログラム115は、通常ファイル、削除ファイル、及び部分消去ファイルの読み出し要求を受け付け、要求元にファイルの内容を応答する。要求されたファイルが削除ファイル又は部分消去ファイルである場合、要求されたファイルを一時的に復元し、復元されたファイルの内容を応答する。
 ファイル代理読み出しプログラム115は、処理を開始すると(ステップS8900)、分析プログラム61等からファイルの読み出し要求を受信する(ステップS8901)。受信したファイル読み出し要求には、要求元のプログラムがファイルを指定するための情報が含まれる。例えば、ファイルのパス名、名前空間名、メタデータ、その他の識別子(メタデータID、ファイルシステムにおけるinode番号)等の情報が含まれる。
 ファイル代理読み出しプログラム115は、受信したファイル読み出し要求に含まれる情報に基づいて、メタデータ管理テーブル153の対応するレコードを特定する(ステップ8902)。
 ファイル代理読み出しプログラム115は、特定されたレコードのファイル状態1535を参照して、読み出し対象のファイルが通常ファイルであるか否かを判定する(ステップS8903)。
 ファイル状態1535が「削除」又は「一部消去」である場合、読み出し対象のファイルが削除ファイル又は部分消去ファイルであると判定される。一方、ファイル状態1535が「存在」である場合、通常ファイルであると判定される。
 読み出し対象のファイルが通常ファイルでない、すなわち、削除ファイル又は部分消去ファイルのいずれかであると判定された場合、ファイル代理読み出しプログラム115は、読み出し対象のファイルを復元するための復元処理を実行する(ステップS8904)。これによって、退避用ストレージ装置2に一時的にファイルが復元される。なお、復元処理の詳細については、図27を用いて後述する。
 その後、ファイル代理読み出しプログラム115は、復元したファイルを要求元へ送信し、処理を終了する(ステップS8905、ステップS8907)。
 ステップS8903において、通常ファイルであると判定された場合、ファイル代理読み出しプログラム115は、読み出し対象のファイルの格納先を特定する(ステップS8906)。具体的には、ファイルサーバ4の識別子、名前空間の識別子、及びパス名等に基づいてファイルの格納先が特定される。
 さらに、ファイル代理読み出しプログラム115は、特定された格納先のファイルサーバ4から読み出し対象のファイルを読み出し、読み出されたファイルを要求元へ送信して、処理を終了する(ステップS8905、ステップS8907)。
 図27は、本発明の第三の実施形態における復元処理の詳細を説明するフローチャートである。
 ファイル代理読み出しプログラム115は、処理を開始すると(ステップS9000)、メタデータ管理テーブル153から、読み出し対象のファイルに関連するレコードを抽出する(ステップS9001)。ここでは、同一の読み出し対象のファイルであって、ステップS8903において特定されたレコードより時系列が新しいレコードが抽出される。
 具体的には、ファイル代理読み出しプログラム115は、パス1532及び名前空間ID1533が読み出し対象のファイルと一致し、かつ、オリジナルメタデータ1534に含まれる更新時刻が、読み出し対象のファイルの更新時刻より後、すなわち、更新時刻が新しいレコードを抽出する。
 ファイル代理読み出しプログラム115は、読み出し対象のファイルが現在削除ファイルであるか否かを判定する(ステップS9002)。具体的には、ファイル代理読み出しプログラム115は、抽出されたレコードのうち、オリジナルメタデータ1534に格納される更新時刻が最新のレコードを特定し、当該レコードのファイル状態1535が「削除」であるか否かを判定する。
 読み出し対象のファイルが現在削除ファイルであると判定された場合、ファイル代理読み出しプログラム115は、ステップS9001において抽出された削除ファイルのレコードに基づいて、削除ファイルを作業領域に一時ファイルとして複製する(ステップS9003)。ここで、作業領域は、退避用ストレージ装置2の一記憶領域である。
 一方、読み出し対象のファイルが現在削除ファイルでない、すなわち、部分消去ファイルであると判定された場合、ファイル代理読み出しプログラム115は、ステップS9001において抽出されたレコードに基づいて、現在、ファイルサーバ4に格納される読み出し対象のファイルを読み出し、読み出されたファイルを作業領域に一時ファイルとして複製する(ステップS9007)。
 ファイル代理読み出しプログラム115は、抽出されたレコードの中から、ステップS9003において特定されたレコードの次に更新時間が新しいレコードを、処理対象のレコードとして選択する(ステップS9004)。
 ファイル代理読み出しプログラム115は、一時ファイルに対して、退避ファイルに格納される削除データを上書きする(ステップS9005)。具体的には以下のような処理が実行される。
 ファイル代理読み出しプログラム115は、ステップS9004において選択されたレコードの情報に基づいて、ファイル退避管理テーブル154から対応する退避ファイルのレコードを特定する。
 ファイル代理読み出しプログラム115は、特定されたレコードに基づいて、退避用ストレージ装置2から退避ファイルを読み出すことによって削除データを取得する。
 ファイル代理読み出しプログラム115は、特定されたレコードのアドレス範囲1544を参照して、一時ファイル上の同一のアドレス範囲に、読み出された削除データを上書きする。また、ファイル代理読み出しプログラム115は、一時ファイルのファイルサイズを、メタデータ管理テーブル153の選択されたレコードのオリジナルメタデータ1534に格納されるファイルサイズに変更する。
 以上の処理によって、一時ファイルは、ステップS9004において選択されたレコードがメタデータ管理テーブル153に追加された時点のファイルと同一の内容となる。
 ファイル代理読み出しプログラム115は、ステップ9001において抽出された全てのレコードについて処理が完了したか否かを判定する(ステップS9006)。
 ステップ9001において抽出された全てのレコードについて処理が完了していないと判定された場合、ファイル代理読み出しプログラム115は、ステップS9004に戻り同様の処理(ステップS9004~ステップS9006)を実行する。
 ステップ9001において抽出された全てのレコードについて処理が完了していないと判定された場合、ファイル代理読み出しプログラム115は、処理を終了する(ステップS9008)。
 なお、第三の実施形態では、メタデータサーバ1がファイルを読み出し、分析サーバ6に読み出されたファイルを送信している。しかし、本発明はこれに限定されず、分析サーバ6がファイルを取得してもよい。この場合、以下のような処理が実行される。
 ステップS8905では、ファイル代理読み出しプログラム115は、リスト116を生成し、生成されたリスト116を分析サーバ6に送信する。なお、リスト116の生成方法は第一の実施形態と同一の方法を用いる。なお、リスト116の一時ファイルに対応するレコードの退避先パス11681には、作業領域における一時ファイルの格納位置の情報が格納される。
 分析サーバ6は、受信したリスト116に基づいて、ファイルを読み出す。なお、当該処理は、第一の実施形態と同一であるため説明を省略する。
 本実施形態では、各消去データを一つの退避ファイル又は隠蔽化ファイルに格納していたが、本発明はこれに限定されない。例えば、消去データをいくつかのファイルにまとめて格納してもよいし、データベース又はブロックストレージに格納してもよい。
 [第四の実施形態]
 次に、本発明の第四の実施形態を説明する。
 第四の実施形態は、第一の実施形態を拡張し、削除ファイルと同一内容のファイルがバックアップストレージ装置3に格納されている場合には、削除ファイルに対応する退避ファイルが生成されない。これによって、計算機システム500内に、同一内容の複製ファイルを削減することができる。
 以降、第一の実施形態との差異を中心に説明する。
 第四の実施形態の計算機システム500の構成、メタデータサーバ1の構成、及びファイルサーバ4の構成は第一の実施形態と同一であるため説明を省略する。また、メタデータサーバ1及びファイルサーバ4が管理する各テーブルの構成も第一の実施形態と同一であるため説明を省略する。
 図28は、本発明の第四の実施形態におけるストレージ管理テーブル151の構成の一例を示す説明図である。
 ストレージID1511、ストレージ名1512、タイプ1513、及びIPアドレス1514は、第一の実施形態と同一であるため説明を省略する。
 第四の実施形態では、メタデータサーバ1は、ファイルサーバ4、退避用ストレージ装置2に加えて、バックアップストレージ装置3も管理対象となっている点が第一の実施形態と異なる。すなわち、図28に示すストレージ管理テーブル151の第四のレコードには、バックアップストレージ装置3の情報が格納される。なお、バックアップストレージ装置3に対応するレコードのタイプ1513には「バックアップ」が格納される。
 図29は、本発明の第四の実施形態における名前空間管理テーブル152の構成の一例を示す説明図である。
 名前空間ID1521、名前空間名1522、ストレージID1523、容量1524、プロトコル1525、使用量1526、及び用途1527は、第一の実施形態と同一であるため説明を省略する。
 図29に示すように、名前空間管理テーブル152の第五のレコードには、バックアップストレージ装置3における名前空間の情報が格納される。なお、バックアップストレージ装置3に対応するレコードの用途1527には、「バックアップ」が格納される。
 図30は、本発明の第四の実施形態におけるメタデータ管理テーブル153の構成の一例を示す説明図である。
 第四の実施形態では、メタデータ管理テーブル153は、メタデータサーバ1のメモリ11に格納される。
 第四の実施形態におけるメタデータ管理テーブル153は、ハッシュ値1536が追加されている点が第一の実施形態と異なる。ハッシュ値1536は、エントリに対応するファイルの内容を表すハッシュ値を格納する。ここで、ハッシュ値は、ファイルの内容に対して、予め定義されたハッシュ関数を適用することによって取得される値である。例えば、ハッシュ関数は、既知の様々なアルゴリズム(例えば、SHA256)を用いることができる。
 本実施形態では、ハッシュ値1536に基づいて、ファイルの内容が同一であるか否かが判定される。
 図30に示す例では、メタデータ管理テーブル153の第四のレコードに、バックアップストレージ装置3に格納されるファイル「/BU/x.doc」に関する情報が格納される。以降、バックアップストレージ装置3に格納されたファイルをバックアップファイルと呼ぶ。
 また、バックアップファイルに対応するエントリのファイル状態1535には、エントリに対応するファイルがバックアップファイルであることを表す「BU」が格納される。また、当該レコードのハッシュ値1536には、ファイル「/BU/x.doc」から算出されたハッシュ値が「e001」であることが分かる。ここでは、ハッシュ値は16進法で表される値とする。
 本実施形態におけるメタデータ管理プログラム112は、バックアップファイルの情報をメタデータ管理テーブル153に格納するために、バックアップストレージ装置3のバックアッププログラム31に問い合わせを行い、バックアップストレージ装置3に格納されるバックアップファイルのメタデータを取得する。また、メタデータ管理プログラム112が、バックアッププログラム31が管理するバックアップファイルのリストを保持するデータベース等を読み出すようにしてもよい。
 バックアップファイルのハッシュ値は、メタデータ管理プログラム112がバックアップファイルをバックアップストレージ装置3から読み出した時に算出してもよいし、バックアッププログラム31が算出してメタデータ管理プログラム112に送信してもよい。
 図31は、本発明の第四の実施形態におけるファイル削除検出プログラム113が実行する処理を説明するフローチャートである。
 第四の実施形態におけるファイル削除検出プログラム113は、削除対象ファイルを検出すると、当該ファイルと同一内容のバックアップファイルが存在するか否かを判定する。同一内容のバックアップファイルがある場合には、ファイル削除検出プログラム113は、バックアップファイルを削除対象ファイルに対応する退避ファイルとしてファイル退避管理テーブル154に追加する。さらに、ファイル削除検出プログラム113はファイルサーバ4には隠蔽化ファイルを生成せずに、削除対象ファイルを削除する。
 ファイル削除検出プログラム113は、処理を開始すると(ステップS9100)、ファイルサーバ4からファイルが削除されることを検出する(ステップS9101)。
 ステップS9101の処理は、ステップステップS8201と同一の処理である。ただし、第四の実施形態では、ファイルサーバ4から送信される削除通知には、削除対象ファイルのハッシュ値が含まれる。
 なお、削除対象ファイルのハッシュ値は、ファイル削除検出プログラム113が、ファイルサーバ4から読み出した削除対象ファイルに対してハッシュ関数を適用することによって算出できる。
 ファイル削除検出プログラム113は、メタデータ管理テーブル153の削除対象ファイルに対応するレコードを更新する(ステップS9102)。ステップS9202の処理は、ステップS8202と同一の処理である。
 ファイル削除検出プログラム113は、メタデータ管理テーブル153を参照し、削除対象ファイルと同一内容のバックアップファイルを検索する(ステップS9103)。具体的には、以下のような処理が実行される。
 ファイル削除検出プログラム113は、削除対象ファイルのハッシュ値1536を取得する。
 次に、ファイル削除検出プログラム113は、ファイル状態1535に「BU」が格納されるエントリを抽出し、抽出されたエントリのハッシュ値1536と、削除対象ファイルのハッシュ値1536とを比較する。削除対象ファイルのハッシュ値1536と一致するエントリが、削除対象ファイルと同一内容のバックアップファイルとなる。
 なお、ファイルの内容の判定方法は、前述した方法に限定されない。例えば、ファイルのメタデータを比較する方法、ファイルサイズを比較する方法、及びこれらを組み合わせた方法などを用いてもよい。
 ファイル削除検出プログラム113は、前述した検索処理の結果、削除対象ファイルと同一内容のバックアップファイルが存在するか否かを判定する(ステップS9104)。
 削除対象ファイルと同一内容のバックアップファイルが存在しないと判定された場合、ファイル削除検出プログラム113は、ファイルサーバ4に対して、削除対象ファイルに対するファイル隠蔽化処理を実行する(ステップS9106)。
 さらに、ファイル削除検出プログラム113は、ファイルの削除を通知したファイルサーバ4に対して、削除対象ファイルの隠蔽化処理の実行を指示し(ステップS9107)、処理を終了する(ステップS9108)。
 なお、ステップS9106及びステップS9107の処理は、ステップS8203及びステップS8204と同一の処理であるため説明を省略する。
 ステップS9104において、削除対象ファイルと同一内容のバックアップファイルが存在すると判定された場合、ファイル削除検出プログラム113は、ファイル退避管理テーブル154を更新し、処理を終了する(ステップS9105、ステップS9108)。
 具体的には、ファイル削除検出プログラム113は、バックアップファイルに関する情報を削除対象ファイルに対応する退避ファイルの情報としてファイル退避管理テーブル154に追加する。
 すなわち、メタデータID1541には、バックアップファイルに対応するレコードのメタデータID1531の値が格納され、退避先パス1542には、バックアップファイルに対応するレコードのパス1532のパス名が格納される。また、退避先名前空間ID1543には、バックアップファイルに対応するレコードの名前空間ID1533の識別子が格納される。
 前述の処理では、バックアップストレージ装置3に格納されるファイルの中から削除対象ファイルと同一内容のファイルを検索したが、これに加えて、メタデータサーバ1が管理対象とする全てのストレージ装置から検索してもよい。
 [第五の実施形態]
 次に、本発明の第五の実施形態について説明する。第五の実施形態では、ファイルサーバ4は、業務プログラム51からファイルの削除が要求された場合、メタデータサーバ1にファイルの削除通知を送信しない。そこで、メタデータサーバ1は、周期的にファイルサーバ4からファイルが削除されたか否かを判定する。当該判定にはファイルサーバ4のスナップショット機能を用いられる。
 以降、第一の実施形態との差異を中心に説明する。
 第五の実施形態の計算機システム500の構成、メタデータサーバ1及びファイルサーバ4の構成は第一の実施形態と同一であるため説明を省略する。なお、ファイルサーバ4は、スナップショット機能を有する点が異なる。また、メタデータサーバ1及びファイルサーバ4が管理する各テーブルの構成も第一の実施形態と同一であるため説明を省略する。
 図32A及び図32Bは、本発明の第五の実施形態におけるメタデータ管理プログラム112が実行する処理を説明するフローチャートである。
 本実施形態では、メタデータ管理プログラム112は、ファイルサーバ4に格納されるファイルのメタデータを収集すると共に、ファイルサーバ4から削除されたファイルを検出し、退避用ストレージ装置2へ移動する。
 メタデータ管理プログラム112は、処理を開始すると(ステップS9200)、メタデータの収集対象となる名前空間のスナップショットの作成をファイルサーバ4に指示する(ステップS9201)。当該指示を受信したファイルサーバ4は、指示された名前空間のスナップショットを作成する。
 メタデータ管理プログラム112は、作成されたスナップショットに含まれるファイルの中から処理対象となるファイルを一つ選択する(ステップS9202)。ステップ9202の処理は、スナップショットに含まれるファイルを選択する点が、ステップS8002の処理(図9参照)と異なる。
 メタデータ管理プログラム112は、ファイルサーバ4から選択されたファイルのメタデータを取得する(ステップS9203)。
 メタデータ管理プログラム112は、取得されたメタデータに基づいて、メタデータ管理テーブル153を更新する(ステップS9204)。ステップS9204の処理は、ステップS8004の処理(図9参照)と同一の処理である。
 メタデータ管理プログラム112は、スナップショットに含まれる全てのファイルについて処理が完了したか否かを判定する(ステップS9205)。
 スナップショットに含まれる全てのファイルについて処理が完了していないと判定された場合、メタデータ管理プログラム112は、ステップS9202に戻り同様の処理を実行する(ステップS9202~ステップS9205)。
 スナップショットに含まれる全てのファイルについて処理が完了したと判定された場合、メタデータ管理プログラム112は、メタデータ管理テーブル153のレコードのうち、ステップS9201からステップS9205の処理において更新されなかったレコードを抽出する(ステップS9206)。
 メタデータ管理プログラム112は、抽出されたレコードの中から、処理対象のレコードを一つ選択する(ステップS9207)。
 メタデータ管理プログラム112は、処理対象のレコードに対応するファイルがスナップショットに含まれるか否かを判定する(ステップS9208)。
 処理対象のレコードに対応するファイルがスナップショットに含まれると判定された場合、メタデータ管理プログラム112は、ステップS9212に進む。
 処理対象のレコードに対応するファイルがスナップショットに含まれないと判定された場合、メタデータ管理プログラム112は、処理対象のレコードを更新する(ステップS9209)。具体的には、処理対象レコードのファイル状態1535に「削除」を格納する。
 これは、処理対象のレコードに対応するファイルが、スナップショット作成前に削除されたファイルであることを示す。したがって、当該ファイルは削除ファイルとして管理される。
 メタデータ管理プログラム112は、ステップS9201において作成されたスナップショットの一つ前の世代のスナップショットから、処理対象のレコードに対応するファイルを取得する(ステップS9210)。一つ前の世代のスナップショットは、前回実行された本処理において作成されたものである。なお、一つ前の世代のスナップショットは、ファイルサーバ4が格納してもよいし、退避用ストレージ装置2が格納してもよい。
 メタデータ管理プログラム112は、一つ前の世代のスナップショットから取得されたファイルを、処理対象のレコードに対応する削除ファイルの退避ファイルとして退避用ストレージ装置2に移動する(ステップS9211)。
 メタデータ管理プログラム112は、ファイル退避管理テーブル154を更新する(ステップS9212)。ステップS9212の処理は、ステップS8208の処理(図11C参照)と同一の処理である。
 メタデータ管理プログラム112は、ステップS9206において抽出された全てのレコードについて処理が完了したか否かを判定する(ステップS9213)。
 ステップS9206において抽出された全てのレコードについて処理が完了していないと判定された場合、メタデータ管理プログラム112は、ステップS9207に戻り同様の処理を実行する(ステップS9207~ステップS9213)。
 ステップS9206において抽出された全てのレコードについて処理が完了したと判定された場合、メタデータ管理プログラム112は、一つ前の世代のスナップショットの削除をファイルサーバ4に指示し、処理を終了する(ステップS9214、ステップS9215)。当該指示を受信したファイルサーバ4は、指示されたスナップショットを削除する。
 本実施形態では、ファイルサーバ4は、ファイルの削除を通知する必要がないため、ファイルの削除を通知する機能を備えていないファイルサーバ4であっても、削除ファイルを退避用ストレージ装置2に移動することができる。
 本発明のいずれの実施形態においても、メタデータサーバ1の指示によって、隠蔽化ファイルが削除される。これは、ファイルサーバ4、メタデータサーバ1、又はネットワーク7に障害が発生し、実行中のファイル退避処理が中断した場合であっても、メタデータサーバ1が退避用ストレージ装置2へのファイルの移動が完了するまでは、ファイルサーバ4によって隠蔽化ファイルが削除されないようにするためである。
 また、メタデータサーバ1又はネットワーク7に障害が発生し、ファイルサーバ4がメタデータサーバ1にファイルの削除を通知できなくなった場合、ファイルサーバ4は障害を検知し、メタデータサーバ1と通信可能となるまで、ファイル削除の通知を遅延させる。
 第一の実施形態では、ファイルサーバ4がメタデータサーバ1と通信不能であることを検出した場合、第二の実施形態のファイル削除の通知方法に切り替えて、動作を継続できるようにしてもよい。
 以上、本発明を添付の図面を参照して詳細に説明したが、本発明はこのような具体的構成に限定されるものではなく、添付した請求の範囲の趣旨内における様々な変更及び同等の構成を含むものである。

Claims (20)

  1.  複数のファイルを管理するファイルサーバと、前記ファイルのメタデータを管理するメタデータサーバと、前記ファイルを用いて所定の業務処理を実行する業務サーバと、を備える計算機システムであって、
     前記ファイルサーバ、前記メタデータサーバ、及び前記業務サーバは、ネットワークを介して互いに接続され、
     前記ファイルサーバは、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続される第1のネットワークインタフェースと、前記第1のプロセッサに接続され、前記ファイルを格納する第1の記憶媒体と、を有し、
     前記メタデータサーバは、第2のプロセッサと、前記第2のプロセッサに接続される第2のメモリと、前記第2のプロセッサに接続される第2のネットワークインタフェースと、前記第2のプロセッサに接続される第2の記憶媒体と、を有し、
     前記業務サーバは、第3のプロセッサと、前記第3のプロセッサに接続される第3のメモリと、前記第3のプロセッサに接続される第3のネットワークインタフェースと、を有し、
     前記メタデータサーバには、コントローラと、複数の記憶媒体とを有し、前記ファイルサーバから削除された前記ファイルを格納する保存領域を提供するストレージ装置が接続され、
     前記第2の記憶媒体には、前記ファイルのメタデータと、前記保存領域に格納される前記ファイルの格納位置と、を管理するメタデータリポジトリが格納され、
     前記メタデータサーバは、
     前記業務サーバが実行する業務処理によって前記ファイルサーバに格納される前記ファイルが削除されることを検出した場合に、前記ファイルを退避ファイルとして前記保存領域に格納し、
     前記ファイルサーバにおける前記ファイルの格納位置を示す情報と、前記保存領域における前記退避ファイルの格納位置を示す情報とを対応づけて前記メタデータリポジトリに格納する、ことを特徴とする計算機システム。
  2.  請求項1に記載の計算機システムであって、
     前記計算機システムは、さらに、前記ファイルに対して所定の分析処理を実行する分析サーバを備え、
     前記分析サーバは、第4のプロセッサと、前記第4のプロセッサに接続される第4のメモリと、前記第4のプロセッサに接続される第4のネットワークインタフェースと、を有し、
     前記メタデータサーバは、前記分析サーバから前記ファイルの問い合わせ要求を受信した場合に、前記ファイルの問い合わせ要求によって読み出される対象ファイルの格納位置を特定して、前記特定された対象ファイルの格納位置を前記分析サーバに通知し、
     前記分析サーバは、前記メタデータサーバから受信した通知に基づいて、前記対象ファイルを前記ファイルサーバ又は前記保存領域から取得して、前記分析処理を実行することを特徴とする計算機システム。
  3.  請求項2に記載の計算機システムであって、
     前記ファイルサーバは、前記ファイルサーバ、前記メタデータサーバ、前記業務サーバ、及び前記分析サーバに割り当てられる第1の記憶領域と、前記ファイルサーバ、前記メタデータサーバ、及び前記分析サーバに割り当てられる第2の記憶領域とを有し、
     削除される前の前記ファイルは前記第1の記憶領域に格納され、
     前記ファイルサーバは、前記業務サーバが実行する業務処理によって前記ファイルサーバから前記ファイルが削除されることを検出して、前記ファイルを前記第1の記憶領域から前記第2の記憶領域に移動し、
     前記メタデータサーバは、
     前記第2の記憶領域に格納される前記ファイルを取得して、前記取得されたファイルを前記退避ファイルとして前記保存領域に格納し、
     前記ファイルサーバにおける前記ファイルの格納位置を示す情報として、前記第1の記憶領域における前記ファイルの格納位置を示す情報を前記メタデータリポジトリに格納し、
     前記ファイルの削除指示を前記ファイルサーバに送信し、
     前記ファイルサーバは、前記削除指示を受信した場合に、前記ファイルを前記第2の記憶領域から削除することを特徴とする計算機システム。
  4.  請求項3に記載の計算機システムであって、
     前記メタデータサーバは、
     前記ファイルの問い合わせ要求を受信した場合に、前記メタデータリポジトリに格納される情報に基づいて、前記ファイルサーバに格納される前記ファイル及び前記保存領域に格納される前記退避ファイルの格納位置の情報を含むリスト情報を生成し、
     前記生成されたリスト情報を前記分析サーバに送信することを特徴とする計算機システム。
  5.  請求項3に記載の計算機システムであって、
     前記ファイルサーバは、前記業務サーバが実行する業務処理によって前記ファイルサーバから前記ファイルが削除されることを検出した場合に、前記ファイルが削除される旨の通知を前記メタデータサーバに送信し、
     前記メタデータサーバは、前記ファイルサーバからの通知を受信することによって、前記ファイルサーバから前記ファイルが削除されることを検出することを特徴とする計算機システム。
  6.  請求項5に記載の計算機システムであって、
     前記ファイルサーバは、前記ファイルサーバから所定の数の前記ファイルが削除されることを検出した場合、又は、前回送信した前記ファイルが削除される旨の通知から所定時間経過した場合に、前記メタデータサーバに前記ファイルが削除された旨の通知を送信することを特徴とする計算機システム。
  7.  請求項3に記載の計算機システムであって、
     前記ファイルは、複数のデータを含み、
     前記ファイルサーバは、
     前記業務サーバが実行する業務処理によって前記ファイルから削除されるデータである削除データが発生するか否かを判定し、
     前記削除データが発生すると判定された場合、前記ファイルに含まれる前記削除データを前記第2の記憶領域に移動し、
     前記メタデータサーバは、前記第2の記憶領域に格納される前記削除データを、前記退避ファイルとして前記保存領域に格納することを特徴とする計算機システム。
  8.  請求項7に記載の計算機システムであって、
     前記メタデータサーバは、
     前記分析サーバから前記ファイルの問い合わせ要求を受信した場合に、前記メタデータリポジトリを参照して、前記対象ファイルに対応する前記削除データが存在するか否かを判定し、
     前記対象ファイルに対応する前記削除データが存在すると判定された場合、前記ファイルサーバに格納される前記対象ファイルを読み出し、
     前記保存領域に格納される前記削除データに対応する前記退避ファイルを取得して、前記読み出された対象ファイルに、前記退避ファイルから取得された前記削除データを上書きすることによって、前記対象ファイルを復元し、
     前記復元された対象ファイルを前記分析サーバに送信することを特徴とする計算機システム。
  9.  請求項3に記載の計算機システムであって、
     前記計算機システムは、さらに、コントローラと、複数の記憶媒体とを有し、前記ファイルサーバに格納される前記ファイルのバックアップファイルを格納するバックアップストレージ装置を備え、
     前記メタデータサーバは、
     前記業務サーバが実行する業務処理によって前記ファイルサーバに格納される前記ファイルが削除されることを検出した場合に、前記バックアップストレージ装置に前記削除されるファイルと同一内容のバックアップファイルが格納されているか否かを判定し、
     前記バックアップストレージ装置に前記削除されるファイルと同一内容のバックアップファイルが格納されていると判定された場合、当該バックアップファイルの格納位置を前記退避ファイルの格納位置として前記メタデータリポジトリに格納することを特徴とする計算機システム。
  10.  請求項2に記載の計算機システムであって、
     前記ファイルサーバは、任意の時点の前記ファイルサーバの状態を記録したスナップショットを生成するスナップショット生成機能を有し、
     前記メタデータサーバは、
     前記ファイルサーバに、現在の前記ファイルサーバの状態を記録した第1のスナップショットの生成指示を送信し、
     前記生成された第1のスナップショットを参照して、前記メタデータリポジトリに格納される前記メタデータを更新し、
     前記メタデータのうち更新されなかった前記メタデータを抽出して、前記第1のスナップショットに、前記抽出されたメタデータに対応するファイルが存在するか否かを判定し、
     前記第1のスナップショットに、前記抽出されたメタデータに対応するファイルが存在しないと判定された場合、前記第1のスナップショットより時系列が前の第2のスナップショットを取得して、当該第2のスナップショットから前記抽出されたメタデータに対応するファイルを取得し、
     前記取得されたファイルを前記退避ファイルとして前記保存領域に格納することを特徴とする計算機システム。
  11.  複数のファイルを管理するファイルサーバと、前記ファイルのメタデータを管理するメタデータサーバと、前記ファイルを用いて所定の業務処理を実行する業務サーバと、前記ファイルに対して所定の分析処理を実行する分析サーバと、を備える計算機システムにおけるファイル管理方法であって、
     前記ファイルサーバ、前記メタデータサーバ、前記業務サーバ、及び分析サーバは、ネットワークを介して互いに接続され、
     前記ファイルサーバは、第1のプロセッサと、前記第1のプロセッサに接続される第1のメモリと、前記第1のプロセッサに接続される第1のネットワークインタフェースと、前記第1のプロセッサに接続され、前記ファイルを格納する第1の記憶媒体と、を有し、
     前記メタデータサーバは、第2のプロセッサと、前記第2のプロセッサに接続される第2のメモリと、前記第2のプロセッサに接続される第2のネットワークインタフェースと、前記第2のプロセッサに接続される第2の記憶媒体と、を有し、
     前記業務サーバは、第3のプロセッサと、前記第3のプロセッサに接続される第3のメモリと、前記第3のプロセッサに接続される第3のネットワークインタフェースと、を有し、
     前記分析サーバは、第4のプロセッサと、前記第4のプロセッサに接続される第4のメモリと、前記第4のプロセッサに接続される第4のネットワークインタフェースと、を有し、
     前記メタデータサーバには、コントローラと、複数の記憶媒体とを有し、前記ファイルサーバから削除された前記ファイルを格納する保存領域を提供するストレージ装置が接続され、
     前記第2の記憶媒体には、前記ファイルのメタデータと、前記保存領域に格納される前記ファイルの格納位置と、を管理するメタデータリポジトリが格納され、
     前記方法は、
     前記メタデータサーバが、前記業務サーバが実行する業務処理によって前記ファイルサーバに格納される前記ファイルが削除されることを検出した場合に、前記ファイルを退避ファイルとして前記保存領域に格納する第1のステップと、
     前記メタデータサーバが、前記ファイルサーバにおける前記ファイルの格納位置を示す情報と、前記保存領域における前記退避ファイルの格納位置を示す情報とを対応づけて前記メタデータリポジトリに格納する第2のステップと、
     前記メタデータサーバが、前記分析サーバから前記ファイルの問い合わせ要求を受信した場合に、前記ファイルの問い合わせ要求によって読み出される対象ファイルの格納位置を特定し、前記特定された対象ファイルの格納位置を前記分析サーバに通知する第3のステップと、
     前記分析サーバが、前記メタデータサーバから受信した通知に基づいて、前記対象ファイルを前記ファイルサーバ又は前記保存領域から取得して、前記分析処理を実行する第4のステップと、を含むことを特徴とするファイル管理方法。
  12.  請求項11に記載のファイル管理方法であって、
     前記ファイルサーバは、前記ファイルサーバ、前記メタデータサーバ、前記業務サーバ、及び前記分析サーバに割り当てられる第1の記憶領域と、前記ファイルサーバ、前記メタデータサーバ、及び前記分析サーバに割り当てられる第2の記憶領域とを有し、
     削除される前の前記ファイルは前記第1の記憶領域に格納され、
     前記第1のステップは、
     前記ファイルサーバが、前記業務サーバが実行する業務処理によって前記ファイルサーバから前記ファイルが削除されることを検出して、前記ファイルを前記第1の記憶領域から前記第2の記憶領域に移動するステップと、
     前記メタデータサーバが、前記第2の記憶領域に格納される前記ファイルを取得して、前記取得されたファイルを前記退避ファイルとして前記保存領域に格納するステップと、を含み、
     前記第2のステップは、
     前記メタデータサーバが、前記ファイルサーバにおける前記ファイルの格納位置を示す情報として、前記第1の記憶領域における前記ファイルの格納位置を示す情報が前記メタデータリポジトリに格納するステップと、
     前記メタデータサーバが、前記ファイルの削除指示を前記ファイルサーバに送信するステップと、
     前記ファイルサーバが、前記削除指示を受信した場合に、前記ファイルを前記第2の記憶領域から削除するステップと、を含むことを特徴とするファイル管理方法。
  13.  請求項12に記載のファイル管理方法であって、
     前記第3のステップは、
     前記メタデータサーバが、
     前記メタデータリポジトリに格納される情報に基づいて、前記ファイルサーバに格納される前記ファイル及び前記保存領域に格納される前記退避ファイルの格納位置の情報を含むリスト情報を生成するステップと、
     前記生成されたリスト情報を前記分析サーバに送信するステップと、を含むことを特徴とするファイル管理方法。
  14.  請求項12に記載のファイル管理方法であって、
     前記第1のステップでは、前記ファイルサーバから送信された前記ファイルが削除される旨の通知を受信することによって、前記ファイルサーバから前記ファイルが削除されることを検出することを特徴とするファイル管理方法。
  15.  請求項14に記載のファイル管理方法であって、
     前記ファイルサーバは、前記ファイルサーバから所定の数の前記ファイルが削除されることを検出した場合、又は、前回送信した前記ファイルが削除される旨の通知から所定時間経過した場合に、前記メタデータサーバに前記ファイルが削除された旨の通知を送信することを特徴とするファイル管理方法。
  16.  請求項12に記載のファイル管理方法であって、
     前記ファイルは、複数のデータを含み、
     前記第1のステップは、
     前記ファイルサーバが、
     前記業務サーバが実行する業務処理によって前記ファイルから削除されるデータである削除データが発生するか否かを判定するステップと、
     前記削除データが発生すると判定された場合、前記ファイルに含まれる前記削除データを前記第2の記憶領域に移動するステップと、
     前記メタデータサーバが、前記第2の記憶領域に格納される前記削除データを、前記退避ファイルとして前記保存領域に格納するステップと、を含むことを特徴とするファイル管理方法。
  17.  請求項16に記載のファイル管理方法であって、
     前記第3のステップは、
     前記メタデータサーバが、
     前記メタデータリポジトリを参照して、前記対象ファイルに対応する前記削除データが存在するか否かを判定するステップと、
     前記対象ファイルに対応する前記削除データが存在すると判定された場合、前記ファイルサーバに格納される前記対象ファイルを読み出すステップと、
     前記保存領域に格納される前記削除データに対応する前記退避ファイルを取得して、前記読み出された対象ファイルに、前記退避ファイルから取得された前記削除データを上書きすることによって、前記対象ファイルを復元するステップと、
     前記復元された対象ファイルを前記分析サーバに送信するステップと、を含むことを特徴とするファイル管理方法。
  18.  請求項12に記載のファイル管理方法であって、
     前記計算機システムは、さらに、コントローラと、複数の記憶媒体とを有し、前記ファイルサーバに格納される前記ファイルのバックアップファイルを格納するバックアップストレージ装置を備え、
     前記第1のステップは、前記メタデータサーバが、前記業務サーバが実行する業務処理によって前記ファイルサーバに格納される前記ファイルが削除されることを検出した場合に、前記バックアップストレージ装置に前記削除されるファイルと同一内容のバックアップファイルが格納されているか否かを判定するステップを含み、
     前記第2のステップは、前記メタデータサーバが、前記バックアップストレージ装置に前記削除されるファイルと同一内容のバックアップファイルが格納されていると判定された場合、当該バックアップファイルの格納位置を前記退避ファイルの格納位置として前記メタデータリポジトリに格納するステップを含むことを特徴とするファイル管理方法。
  19.  請求項11に記載のファイル管理方法であって、
     前記ファイルサーバは、任意の時点の前記ファイルサーバの状態を記録したスナップショットを生成するスナップショット生成機能を有し、
     前記第1のステップは、
     前記メタデータサーバが、
     現在の前記ファイルサーバの状態を記録した第1のスナップショットの生成指示を前記ファイルサーバに送信するステップと、
     前記生成された第1のスナップショットを参照して、前記メタデータリポジトリに格納される前記メタデータを更新するステップと、
     前記メタデータのうち更新されなかった前記メタデータを抽出して、前記第1のスナップショットに前記抽出されたメタデータに対応するファイルが存在するか否かを判定するステップと、を含み、
     前記第2のステップは、
     前記メタデータサーバが、
     前記第1のスナップショットに前記抽出されたメタデータに対応するファイルが存在しないと判定された場合、前記第1のスナップショットより時系列が前の第2のスナップショットを取得して、当該第2のスナップショットから前記抽出されたメタデータに対応するファイルを取得するステップと、
     前記取得されたファイルを前記退避ファイルとして前記保存領域に格納するステップと、を含むことを特徴とするファイル管理方法。
  20.  プロセッサと、前記プロセッサに接続されるメモリと、前記プロセッサに接続されるネットワークインタフェースと、前記プロセッサに接続されるローカルストレージを備え、ネットワークを介して接続されるファイルサーバに格納される複数のファイルのメタデータを管理するメタデータサーバであって、
     前記メタデータサーバは、前記ファイルに対して所定の分析処理を実行する分析サーバ、及び、前記ファイルサーバから削除された前記ファイルを格納する退避用ストレージ装置が接続され、
     前記メモリには、前記メタデータを管理するメタデータ管理プログラム、前記ファイルサーバから前記ファイルが削除されることを検出するファイル削除検出プログラム、前記ファイルサーバから削除される前記ファイルを前記退避用ストレージに移動させるファイル退避プログラム、及び、前記分析サーバからの前記ファイルの問い合わせ要求を処理する問い合わせ処理プログラムが格納され、
     前記ローカルストレージには、前記ファイルのメタデータを管理するメタデータ管理テーブルと、前記保存領域に格納される前記ファイルを管理するファイル退避管理テーブルとを含むメタデータリポジトリが格納され、
     前記メタデータ管理プログラムを実行する前記プロセッサが、前記ファイルサーバに格納される前記ファイルのメタデータを取得して前記メタデータ管理テーブルを更新し、
     前記ファイル削除検出プログラムを実行する前記プロセッサが、前記ファイルサーバに格納される前記ファイルが削除されることを検出し、
     前記ファイル退避プログラムを実行するプロセッサが、前記ファイルを退避ファイルとして前記退避用ストレージ装置にコピーし、
     前記ファイル退避プログラムを実行するプロセッサが、前記退避用ストレージ装置における前記退避ファイルの格納位置を示す情報を前記ファイル退避管理テーブルに格納し、
     前記問い合わせ処理プログラムを実行するプロセッサが、前記ファイルの問い合わせ要求を受信した場合に、前記ファイルの問い合わせ要求によって読み出される対象ファイルの格納位置を特定して、前記特定された対象ファイルの格納位置を含むリストを生成し、
     前記問い合わせ処理プログラムを実行するプロセッサが、前記生成されたリストを前記分析サーバに送信することを特徴とするメタデータサーバ。
PCT/JP2011/071437 2011-09-21 2011-09-21 計算機システム、ファイル管理方法及びメタデータサーバ Ceased WO2013042218A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2013534501A JP5697754B2 (ja) 2011-09-21 2011-09-21 計算機システム、ファイル管理方法及びメタデータサーバ
EP11872681.9A EP2759942A4 (en) 2011-09-21 2011-09-21 COMPUTER SYSTEM, FILE MANAGEMENT METHOD AND METADATA SERVER
CN2011800698234A CN103460197A (zh) 2011-09-21 2011-09-21 计算机系统、文件管理方法以及元数据服务器
US14/003,972 US9396198B2 (en) 2011-09-21 2011-09-21 Computer system, file management method and metadata server
PCT/JP2011/071437 WO2013042218A1 (ja) 2011-09-21 2011-09-21 計算機システム、ファイル管理方法及びメタデータサーバ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/071437 WO2013042218A1 (ja) 2011-09-21 2011-09-21 計算機システム、ファイル管理方法及びメタデータサーバ

Publications (1)

Publication Number Publication Date
WO2013042218A1 true WO2013042218A1 (ja) 2013-03-28

Family

ID=47914030

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/071437 Ceased WO2013042218A1 (ja) 2011-09-21 2011-09-21 計算機システム、ファイル管理方法及びメタデータサーバ

Country Status (5)

Country Link
US (1) US9396198B2 (ja)
EP (1) EP2759942A4 (ja)
JP (1) JP5697754B2 (ja)
CN (1) CN103460197A (ja)
WO (1) WO2013042218A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020123314A (ja) * 2019-01-30 2020-08-13 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド 情報をバックアップするための方法及び装置
CN111708730A (zh) * 2019-03-18 2020-09-25 北京沃东天骏信息技术有限公司 数据管理方法、终端设备、管理系统及存储介质

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2783223C (en) * 2012-07-19 2014-07-15 Microsoft Corporation Global recently used files list
US9384208B2 (en) * 2013-01-22 2016-07-05 Go Daddy Operating Company, LLC Configuring a cached website file removal using a pulled data list
JPWO2014122733A1 (ja) * 2013-02-06 2017-01-26 株式会社日立製作所 計算機、データアクセス管理方法及び記録媒体
US10191965B2 (en) 2013-08-16 2019-01-29 Vmware, Inc. Automatically determining whether a revision is a major revision or a minor revision by selecting two or more criteria, determining if criteria should be weighted and calculating a score has exceeded a threshold
US9292507B2 (en) * 2013-08-16 2016-03-22 Vmware, Inc. Automated document revision trimming in a collaborative multi-user document store
US10162843B1 (en) * 2014-05-05 2018-12-25 EMC IP Holding Company LLC Distributed metadata management
US20170039376A1 (en) * 2015-08-05 2017-02-09 Dell Products L.P. Systems and methods for providing secure data
US10250433B1 (en) * 2016-03-25 2019-04-02 WatchGuard, Inc. Method and system for peer-to-peer operation of multiple recording devices
US10831381B2 (en) 2016-03-29 2020-11-10 International Business Machines Corporation Hierarchies of credential and access control sharing between DSN memories
US10769116B2 (en) * 2016-06-10 2020-09-08 Apple Inc. System and method for performing operations on a hierarchy of content
CN106446155A (zh) * 2016-09-22 2017-02-22 北京百度网讯科技有限公司 用于在云存储系统中清理数据的方法和装置
US11126740B2 (en) 2016-11-04 2021-09-21 Microsoft Technology Licensing, Llc Storage isolation for containers
US11856331B1 (en) * 2017-05-10 2023-12-26 Waylens, Inc. Extracting and transmitting video analysis metadata for a remote database
CN108595503A (zh) * 2018-03-19 2018-09-28 网宿科技股份有限公司 文件处理方法及服务器
US11106378B2 (en) 2018-11-21 2021-08-31 At&T Intellectual Property I, L.P. Record information management based on self describing attributes
US11347881B2 (en) * 2020-04-06 2022-05-31 Datto, Inc. Methods and systems for detecting ransomware attack in incremental backup
CN110569146B (zh) * 2019-08-27 2023-12-01 深圳震有科技股份有限公司 一种数据备份及配置方法、设备、存储介质及系统
US11334364B2 (en) 2019-12-16 2022-05-17 Microsoft Technology Licensing, Llc Layered composite boot device and file system for operating system booting in file system virtualization environments
US12164948B2 (en) 2020-06-04 2024-12-10 Microsoft Technology Licensing, Llc Partially privileged lightweight virtualization environments
CN112286448B (zh) * 2020-10-16 2022-10-14 杭州宏杉科技股份有限公司 对象访问方法、装置、电子设备及机器可读存储介质
US12248435B2 (en) 2021-03-31 2025-03-11 Nutanix, Inc. File analytics systems and methods
US12197398B2 (en) 2021-03-31 2025-01-14 Nutanix, Inc. Virtualized file servers and methods to persistently store file system event data
US12242455B2 (en) 2021-03-31 2025-03-04 Nutanix, Inc. File analytics systems and methods including receiving and processing file system event data in order
US12367108B2 (en) 2021-03-31 2025-07-22 Nutanix, Inc. File analytics systems and methods including retrieving metadata from file system snapshots
US12248434B2 (en) 2021-03-31 2025-03-11 Nutanix, Inc. File analytics systems including examples providing metrics adjusted for application operation
US12182264B2 (en) 2022-03-11 2024-12-31 Nutanix, Inc. Malicious activity detection, validation, and remediation in virtualized file servers
US12517874B2 (en) 2022-09-30 2026-01-06 Nutanix, Inc. Data analytics systems for file systems including tiering

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008017049A (ja) 2006-07-04 2008-01-24 Canon Inc 画像形成装置、画像形成システムおよびファイル管理方法
JP2010061268A (ja) * 2008-09-02 2010-03-18 Ntt Docomo Inc データ退避装置、データ復元装置及び端末管理システム
JP2011090531A (ja) * 2009-10-23 2011-05-06 Hitachi-Lg Data Storage Inc 情報記憶装置

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002249939A1 (en) * 2001-01-11 2002-07-24 Z-Force Communications, Inc. File switch and switched file system
US7475098B2 (en) * 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots
US20040153481A1 (en) * 2003-01-21 2004-08-05 Srikrishna Talluri Method and system for effective utilization of data storage capacity
US7379954B2 (en) * 2003-07-08 2008-05-27 Pillar Data Systems, Inc. Management of file system snapshots
US7886299B2 (en) * 2004-06-01 2011-02-08 Hitachi, Ltd. Method of dynamically balancing workload of a storage system
US7013681B1 (en) * 2004-11-19 2006-03-21 Milliken & Company Edgecomb resistant weft insertion warp knit fabric
US7885970B2 (en) * 2005-01-20 2011-02-08 F5 Networks, Inc. Scalable system for partitioning and accessing metadata over multiple servers
CN1972200B (zh) * 2005-02-21 2010-12-22 索尼计算机娱乐公司 网络系统、构成网络上节点的计算机及网络可视化方法
JP4836533B2 (ja) * 2005-09-27 2011-12-14 株式会社日立製作所 ストレージシステムにおけるファイルシステムマイグレーション方法、ストレージシステム及び管理計算機
US20070185926A1 (en) * 2005-11-28 2007-08-09 Anand Prahlad Systems and methods for classifying and transferring information in a storage network
JP4795787B2 (ja) * 2005-12-09 2011-10-19 株式会社日立製作所 ストレージシステム、nasサーバ、及びスナップショット方法
US7716240B2 (en) * 2005-12-29 2010-05-11 Nextlabs, Inc. Techniques and system to deploy policies intelligently
US7774391B1 (en) * 2006-03-30 2010-08-10 Vmware, Inc. Method of universal file access for a heterogeneous computing environment
US8055698B2 (en) * 2007-01-30 2011-11-08 Microsoft Corporation Network recycle bin
US7827201B1 (en) * 2007-04-27 2010-11-02 Network Appliance, Inc. Merging containers in a multi-container system
CN201061268Y (zh) * 2007-06-14 2008-05-21 蔡忠广 魔术胸罩
US8224831B2 (en) * 2008-02-27 2012-07-17 Dell Products L.P. Virtualization of metadata for file optimization
US8019732B2 (en) * 2008-08-08 2011-09-13 Amazon Technologies, Inc. Managing access of multiple executing programs to non-local block data storage
US20100082700A1 (en) * 2008-09-22 2010-04-01 Riverbed Technology, Inc. Storage system for data virtualization and deduplication
JP2010092177A (ja) * 2008-10-06 2010-04-22 Hitachi Ltd 情報処理装置、及びストレージシステムの運用方法
US9274714B2 (en) * 2008-10-27 2016-03-01 Netapp, Inc. Method and system for managing storage capacity in a storage network
JP5360978B2 (ja) 2009-05-22 2013-12-04 株式会社日立製作所 ファイルサーバ、及びファイルサーバにおけるファイル操作通知方法
US9015212B2 (en) * 2012-10-16 2015-04-21 Rackspace Us, Inc. System and method for exposing cloud stored data to a content delivery network

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008017049A (ja) 2006-07-04 2008-01-24 Canon Inc 画像形成装置、画像形成システムおよびファイル管理方法
JP2010061268A (ja) * 2008-09-02 2010-03-18 Ntt Docomo Inc データ退避装置、データ復元装置及び端末管理システム
JP2011090531A (ja) * 2009-10-23 2011-05-06 Hitachi-Lg Data Storage Inc 情報記憶装置

Non-Patent Citations (1)

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

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020123314A (ja) * 2019-01-30 2020-08-13 ベイジン バイドゥ ネットコム サイエンス アンド テクノロジー カンパニー リミテッド 情報をバックアップするための方法及び装置
CN111708730A (zh) * 2019-03-18 2020-09-25 北京沃东天骏信息技术有限公司 数据管理方法、终端设备、管理系统及存储介质

Also Published As

Publication number Publication date
EP2759942A1 (en) 2014-07-30
JPWO2013042218A1 (ja) 2015-03-26
JP5697754B2 (ja) 2015-04-08
US20140040331A1 (en) 2014-02-06
EP2759942A4 (en) 2015-05-06
CN103460197A (zh) 2013-12-18
US9396198B2 (en) 2016-07-19

Similar Documents

Publication Publication Date Title
JP5697754B2 (ja) 計算機システム、ファイル管理方法及びメタデータサーバ
US12327036B2 (en) Managing digital assets stored as components and packaged files
JP5991699B2 (ja) 情報処理装置、情報処理システム、バックアップ方法、およびプログラム
US7974950B2 (en) Applying a policy criteria to files in a backup image
US20200278792A1 (en) Systems and methods for performing storage operations using network attached storage
US9128940B1 (en) Method and apparatus for performing file-level restoration from a block-based backup file stored on a sequential storage device
JP5895099B2 (ja) 移行先ファイルサーバ及びファイルシステム移行方法
US9037541B2 (en) Metadata for data storage array
US11520665B2 (en) Optimizing incremental backup for clients in a dedupe cluster to provide faster backup windows with high dedupe and minimal overhead
US20050216788A1 (en) Fast backup storage and fast recovery of data (FBSRD)
US20120246271A1 (en) Method and system for transferring duplicate files in hierarchical storag management system
JP4267353B2 (ja) データ移行支援システム、および、データ移行支援方法
JP5650982B2 (ja) ファイルの重複を排除する装置及び方法
CN101201724B (zh) 数据存储装置以及重布置数据的方法
US8015155B2 (en) Non-disruptive backup copy in a database online reorganization environment
JP2008033912A (ja) Nas向けのcdpの方法および装置
JP2016524220A (ja) 効率的なデータ複製及びガベージコレクション予測
JP4741371B2 (ja) システム、サーバ装置及びスナップショットの形式変換方法
JP2007226347A (ja) 計算機システム、計算機システムの管理装置、及びデータのリカバリー管理方法
JP2009230624A (ja) ストレージシステム
JP2015510174A (ja) ロケーション非依存のファイル
CN113795827B (zh) 用于重复数据删除云分层的垃圾收集
JP2006527874A (ja) 1つのターゲット・ボリュームと1つのソース・ボリュームとの間の関連性を管理するための方法、システム、及びプログラム
US20070300034A1 (en) Virtual storage control apparatus
US20120060005A1 (en) Techniques for copying on write

Legal Events

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

Ref document number: 11872681

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2011872681

Country of ref document: EP

WWE Wipo information: entry into national phase

Ref document number: 14003972

Country of ref document: US

ENP Entry into the national phase

Ref document number: 2013534501

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE