Method and apparatus for storing data

Abstract

An apparatus for storing data received from other apparatus includes a first storage unit that stores the data received from the other apparatus; a second storage unit that stores the data stored in the first storage unit; a history storage unit that stores information on a storage history of the data that is written from the first storage unit into the second storage unit; and a data recalling unit that reads out the data stored in the second storage unit and stores the data read out to the first storage unit based on the information on the storage history.

Claims

1 . An apparatus for storing data received from other apparatus, the apparatus comprising: a first storage unit that stores the data received from the other apparatus; a second storage unit that stores the data stored in the first storage unit; a history storage unit that stores information on a storage history of the data that is written from the first storage unit into the second storage unit; and a data recalling unit that reads out the data stored in the second storage unit and stores the data read out to the first storage unit based on the information on the storage history. 2 . The apparatus according to claim 1 , wherein the data recalling unit detects a most recent data from among the data that is stored in same storage area of the first storage unit and stored in the second storage unit prior to a predetermined date and time, and stores the data detected in the first storage unit, based on the information on the storage history. 3 . The apparatus according to claim 1 , wherein, when the data stored in the first storage unit is updated and updated data is written in the second storage unit where the data before updating is stored, the history storage unit stores the information on the storage history of the updated data, and deletes the information on the storage history of the data. 4 . The apparatus according to claim 3 , wherein the history storage unit saves information on the storage history of the data stored in the second storage unit at a plurality of times, and the data recalling unit writes the data stored in the second storage unit into the first storage unit based on single storage history information selected from among the storage history information that is saved by the history storage unit. 5 . The apparatus according to claim 1 , wherein the second storage unit stores the data stored in the first storage unit, based on a preset schedule. 6 . The apparatus according to claim 1 , wherein the second storage unit executes a process of writing the data stored in the first storage unit into the second storage unit when a request to execute the process is received from a user. 7 . The apparatus according to claim 1 , wherein the data recalling unit excludes the data stored in the second storage unit prior to a preset time from the data to be stored in the first storage unit. 8 . The apparatus according to claim 1 , wherein the data recalling unit executes a process of writing the data stored in the second storage unit into the first storage unit when a request to execute the process is received from a user. 9 . The apparatus according to claim 1 , wherein the first storage unit is a hard disk drive, and the second storage unit is a magnetic tape drive. 10 . An apparatus for storing data, the apparatus comprising: a first storage unit; a second storage unit; a history storage unit that stores information on a storage history of data stored in the second storage unit; and a controller that reads out the data that matches a specific condition from among the data stored in the second storage unit, and transfers the data read out to the first storage unit, based on the information on the storage history. 11 . The apparatus according to claim 10 , wherein the information on the storage history is set for each write unit in the second storage unit. 12 . The apparatus according to claim 10 , wherein the information on the storage history includes information indicating whether each of the data is valid, and the controller reads out the data that is indicated to be valid based on the information relating to the storage history from the second storage unit, and transfers the data read out to the first storage unit. 13 . A method of storing data received from other apparatus, the method comprising: storing the data received from the other apparatus in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data that is written from the first storage unit into the second storage unit; and reading out the data stored in the second storage unit and storing the data read out to the first storage unit based on the information on the storage history. 14 . The method according to claim 13 , wherein the recalling includes detecting a most recent data from among the data that is stored in same storage area of the first storage unit and stored in the second storage unit prior to a predetermined date and time; and storing the data detected in the first storage unit, based on the information on the storage history. 15 . The method according to claim 13 , wherein, when the data stored in the first storage unit is updated and updated data is written in the second storage unit where the data before updating is stored, the storing information includes storing the information on the storage history of the updated data; and deleting the information on the storage history of the data. 16 . The method according to claim 13 , wherein the first storage unit is a hard disk drive, and the second storage unit is a magnetic tape drive. 17 . A method of storing data, the method comprising: storing the data in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data stored in the second storage unit; reading out the data that matches a specific condition from among the data stored in the second storage unit; and transferring the data read out to the first storage unit, based on the information on the storage history. 18 . A computer-readable recording medium that stores a computer program for storing data received from other apparatus, wherein the computer program makes a computer execute storing the data received from the other apparatus in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data that is written from the first storage unit into the second storage unit; and reading out the data stored in the second storage unit and storing the data read out to the first storage unit based on the information on the storage history. 19 . The computer-readable recording medium according to claim 18 , wherein the recalling includes detecting a most recent data from among the data that is stored in same storage area of the first storage unit and stored in the second storage unit prior to a predetermined date and time; and storing the data detected in the first storage unit, based on the information on the storage history. 20 . The computer-readable recording medium according to claim 18 , wherein, when the data stored in the first storage unit is updated and updated data is written in the second storage unit where the data before updating is stored, the storing information includes storing the information on the storage history of the updated data; and deleting the information on the storage history of the data. 21 . The computer-readable recording medium according to claim 18 , wherein the first storage unit is a hard disk drive, and the second storage unit is a magnetic tape drive. 22 . A computer-readable recording medium that stores a computer program for storing data, wherein the computer program makes a computer execute storing the data in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data stored in the second storage unit; reading out the data that matches a specific condition from among the data stored in the second storage unit; and transferring the data read out to the first storage unit, based on the information on the storage history.
BACKGROUND OF THE INVENTION [0001] 1) Field of the Invention [0002] The present invention relates to a technology for storing data received from other apparatus, which can execute a backing up or a recalling process easily and efficiently with an increased usability. [0003] 2) Description of the Related Art [0004] Conventionally, loss of data stored in a computer system is safeguarded by storing the data on a magnetic tape as a backup. Magnetic tapes are suitable for data backup since it has a larger data storage capacity than a hard disk apparatus, and is less expensive. [0005] Since data stored in a hard disk apparatus of a general computer system is updated, the magnetic tape is regularly backed up. Methods for backing up data include backing up all data at a specific time, or backing up only a portion of the backed-up data that is different when the data has been backed up. [0006] Each of these methods has the drawback of poor usability, since a magnetic tape for storing the data, and software for executing back-up must be provided in order to back up the data, and backup must be performed manually. [0007] In view of this, there is disclosed a magnetic tape cartridge control system that backs up data by using a control apparatus that controls backup of data to the magnetic tape, and an auto-changer that automatically replaces the magnetic tape cartridge, thereby enabling the cartridge to be replaced automatically without requiring a manual operation (see, for example, Japanese Patent Application Laid-Open No. H9-69082). [0008] In this magnetic tape cartridge control system, a storage region of one roll of a magnetic tape cartridge is divided into a plurality of storage regions, and data is backed up into the divided storage regions as data of different generations, so as to carry out data backup generation management. [0009] However, although the above conventional art backs up data automatically, it does not enable the user to easily recall the backed-up data to the hard disk apparatus. [0010] There is a problem in that, when recalling data, the user must retrieve and select the data to be recalled from among the different generations of backed-up data, which becomes difficult when there are many generations of data. [0011] Therefore, it is desirable to develop a storage apparatus that can increase the usability for the user by making the processes of backing up and recalling data easier and more efficient, irrespective of the number of generations of data. SUMMARY OF THE INVENTION [0012] It is an object of the present invention to solve at least the above problems in the conventional technology. [0013] An apparatus for storing data according to one aspect of the present invention includes a first storage unit that stores the data received from other apparatus; a second storage unit that stores the data stored in the first storage unit; a history storage unit that stores information on a storage history of the data that is written from the first storage unit into the second storage unit; and a data recalling unit that reads out the data stored in the second storage unit and stores the data read out to the first storage unit based on the information on the storage history. [0014] An apparatus for storing data according to another aspect of the present invention includes a first storage unit; a second storage unit; a history storage unit that stores information on a storage history of data stored in the second storage unit; and a controller that reads out the data that matches a specific condition from among the data stored in the second storage unit, and transfers the data read out to the first storage unit, based on the information on the storage history. [0015] A method of storing data according to still another aspect of the present invention includes storing the data received from other apparatus in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data that is written from the first storage unit into the second storage unit; and reading out the data stored in the second storage unit and storing the data read out to the first storage unit based on the information on the storage history. [0016] A method of storing data according to still another aspect of the present invention includes storing the data in a first storage unit; writing the data stored in the first storage unit into a second storage unit; storing information on a storage history of the data stored in the second storage unit; reading out the data that matches a specific condition from among the data stored in the second storage unit; and transferring the data read out to the first storage unit, based on the information on the storage history. [0017] A computer-readable recording medium according to still another aspect of the present invention stores therein a computer program that causes a computer to execute the above methods according to the present invention. [0018] The other objects, features, and advantages of the present invention are specifically set forth in or will become apparent from the following detailed description of the invention when read in conjunction with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS [0019] FIG. 1 is an explanatory diagram of a data backup process of a data storage apparatus according to the present invention; [0020] FIG. 2 is an explanatory diagram of a concept of a data storage process according to the present invention; [0021] FIG. 3 is a functional configuration diagram of a data storage apparatus according to a first embodiment of the present invention; [0022] FIG. 4 is an example of checkpoint data shown in FIG. 3 ; [0023] FIG. 5 is an example of storage history data shown in FIG. 3 ; [0024] FIG. 6 is a flowchart of a processing procedure of a data backup process according to the first embodiment; [0025] FIG. 7 is a flowchart of a processing procedure of a data recall process according to the first embodiment; [0026] FIG. 8 is an example of storage history data according to a second embodiment of the present invention; and [0027] FIG. 9 is a block diagram of the hardware configuration of a computer that executes data storage processing. DETAILED DESCRIPTION [0028] Exemplary embodiments of a method and an apparatus for storing data, and a computer program according to the present invention will be explained in detail with reference to the accompanying drawings. [0029] FIG. 1 is an explanatory diagram of a data backup process of a data storage apparatus 20 according to the present invention, and FIG. 2 is an explanatory diagram of a concept of a data storage process according to the present invention. [0030] As shown in FIG. 1 , a data management server apparatus 10 accesses a data storage apparatus 20 , and reads/writes data in block units. The data management server apparatus 10 manages text, images, or research test results, and the like. The data storage apparatus 20 receives a data read/write request from the data management server apparatus 10 and executes data read/write processing accordingly. [0031] The data storage apparatus 20 uses a hard disk apparatus as its primary storage 30 , and a magnetic tape storage apparatus as its secondary storage 40 . The primary storage 30 utilizes redundant arrays of independent disks (RAID) technology to manage a plurality of hard disk apparatuses together as a single hard disk apparatus. [0032] The volume of each hard disk apparatus is managed as a virtual logical unit (VLU). In addition, each VLU is divided into migration/recall blocks (MRB) that are the units in which data is read and written in the secondary storage 40 . The size of one MRB is normally between several tens of megabytes and several hundred megabytes. [0033] The primary storage 30 stores (writes) data for which a write request is received from the data management server apparatus 10 . Then, the data stored in the primary storage 30 is backed up (migrated) by sequential access to the magnetic tape of the secondary storage 40 based on a predetermined stipulation. The magnetic tape of the secondary storage 40 is a write-once recording medium that writes new data behind data that is written previously. [0034] Among the data that is migrated to the magnetic tape of the secondary storage 40 , data consulted by the data management server apparatus 10 is recalled as necessary to the primary storage 30 , and is read by the data management server apparatus 10 . [0035] The primary storage 30 accesses data faster than the secondary storage 40 , while the secondary storage 40 has a larger storage capacity than the primary storage 30 . Therefore, a storage apparatus that benefits the respective advantages of the primary storage 30 and the secondary storage 40 can be configured by combining them in the manner described above. [0036] Reading and writing of data between the primary storage 30 and the secondary storage 40 is controlled by a data storage management server described later, and the data management server apparatus 10 reads and writes data only to/from the primary storage 30 . Therefore, the data management server apparatus 10 can, in effect, use the primary storage 30 as a large-capacity storage apparatus. [0037] As shown in FIG. 2 , in a data storage process, data received from the data management server apparatus 10 is stored in the primary storage 30 , the stored data is backed up on the magnetic tape of the secondary storage 40 , and the data in the primary storage 30 and the data on the magnetic tape of the secondary storage 40 are synchronized. [0038] In this data storage process, the data stored in the primary storage 30 is backed up on the magnetic tape of the secondary storage 40 , the data in the primary storage 30 is deleted, and the data is stored (migrated) only on the magnetic tape of the secondary storage 40 . [0039] When backing up the data stored in the primary storage 30 on the magnetic tape of the secondary storage 40 , the data is written together with its backup date/time as a checkpoint. Then, when a request to recall the backed-up data to the primary storage 30 is received, the user specifies the checkpoint of the data to be recalled, and the data that corresponds to the specified checkpoint is recalled from the magnetic tape of the secondary storage 40 to the primary storage 30 . [0040] In this data storage process, a valid holding period of data stored on the magnetic tape of the secondary storage 40 is determined, and data having a checkpoint date/time that is outside the valid holding period is excluded from the data that is migrated to the magnetic tape of the secondary storage 40 , and is not recalled to the primary storage 30 . [0041] In this way, a storage history of the data is automatically stored when backing up the data, and the data is recalled based on its storage history, thereby enabling the processes of backing up and recalling the data to be performed easily and efficiently, and increasing the usability for the user. Furthermore, a large capacity of data can be stored by combining the primary storage 30 and the secondary storage 40 . [0042] The functional configuration of a data storage apparatus according to a first embodiment will be explained next. FIG. 3 is a functional configuration diagram of the data storage apparatus 20 according to the first embodiment. As shown in FIG. 3 , the data storage apparatus 20 is connected via data management server apparatuses 10 a to 10 c and a network. The data management server apparatuses 10 a to 10 c correspond to the data management server apparatus 10 described with reference to FIG. 1 . [0043] The data storage apparatus 20 is configured by connecting the primary storage 30 , data storage management servers 50 a and 50 b , and secondary storages 40 a to 40 c . The primary storage 30 corresponds to the hard disk apparatus described with reference to FIG. 1 , and the secondary storages 40 a to 40 c correspond to the magnetic tape storage apparatus that constitutes the secondary storage 40 described with reference to FIG. 1 . [0044] The data storage management servers 50 a and 50 b migrate data stored in the primary storage 30 to the magnetic tapes of the secondary storages 40 a to 40 c , and, where necessary, recall data that is migrated to the magnetic tapes of the secondary storages 40 a to 40 c to the primary storage 30 . In FIG. 3 , two data storage management servers 50 a and 50 b are provided as a precaution against breakdown or the like. [0045] Each of the data storage management servers 50 a and 50 b includes a data transceiver 500 , a backup processor 501 , a setting manager 502 , a storage unit 503 , a data recall processor 504 , and a controller 505 . Since the data storage management server 50 b has the same configuration as the data storage management server 50 a , its inclusive functional parts are not shown in FIG. 3 . [0046] The data transceiver 500 exchanges data between the primary storage 30 and the secondary storages 40 a to 40 c . The backup processor 501 performs backup by writing data stored in the primary storage 30 to the magnetic tapes of the secondary storages 40 a to 40 c. [0047] Specifically, when the set date/time for executing backup is reached, the backup processor 501 makes a back-up of the data stored in the primary storage 30 in units of MRB by writing it on the magnetic tapes of the secondary storages 40 a to 40 c in compliance with a preset stipulation. [0048] When backing up data stored in the primary storage 30 , the backup processor 501 writes storage history information, which relates to data stored on the magnetic tapes of the secondary storages 40 a to 40 c , in the storage unit 503 as storage history data 503 c. [0049] The setting manager 502 receives information relating to settings, such as the backup date/time, and stores it as setting data 503 a in the storage unit 503 . The user can perform setting from the data management server apparatuses 10 a to 10 c , and the primary storage 30 transmits the information relating to the settings, transmitted from the data management server apparatuses 10 a to 10 c , to the setting manager 502 . [0050] The storage unit 503 is a storage device such as a hard disk apparatus. The storage unit 503 stores the setting data 503 a , the checkpoint data 503 b , and the storage history data 503 c . The setting data 503 a relates to settings, such as the backup date/time. [0051] The checkpoint data 503 b is information relating to the checkpoint data migrated from the primary storage 30 to the magnetic tapes of the secondary storage 40 at the time of backup. FIG. 4 is an example of the checkpoint data 503 b shown in FIG. 3 . [0052] As shown in FIG. 4 , the checkpoint data 503 b includes a checkpoint number and a backup date/time. The checkpoint number identifies the date/time at which data stored in the primary storage 30 is backed up on the magnetic tape of the secondary storage 40 . The backup date/time is the date and time when the data stored in the primary storage 30 is backed up on the magnetic tape of the secondary storage 40 . [0053] By specifying a checkpoint number, the user can recall data, which is backed up on the magnetic tape of the secondary storage 40 at the date/time corresponding to the checkpoint number, to the primary storage 30 . [0054] The storage history data 503 c relates to the history of the process of storing data that is stored in the primary storage 30 on the magnetic tapes of the secondary storages 40 a to 40 c . FIG. 5 is an example of the storage history data 503 c shown in FIG. 3 . [0055] As shown in FIG. 5 , the storage history data 503 c includes a volume number, an MRB number, a magnetic tape ID, a storage date/time, and a validity flag. The volume number is allocated to each VLU of the primary storage 30 , and is data that represents the VLU where the migrated data is stored. [0056] The MRB number is allocated to each MRB in the VLU, and represents the MRB in which the migrated data is stored. The magnetic tape ID is an identification number allocated to a magnetic tape to which data has been migrated. The storage date/time is the date and time at which the data is stored on the magnetic tape. [0057] A validity flag is information indicating which data is to be recalled from the magnetic tapes of the secondary storages 40 a to 40 c to the primary storage 30 . In the example shown in FIG. 5 , a flag of “1” represents that this is valid data to be recalled to the primary storage 30 , and a flag of “0” represents that this is not valid data to be recalled to the primary storage 30 . [0058] When data is stored on the magnetic tapes of the secondary storages 40 a to 40 c , the validity flag of this data is set to “1”. Then, based on the volume number and the MRB number, it is determined whether the secondary storages 40 a to 40 c already store data that is stored in the same storage region of the primary storage 30 as the one where the data is stored, and if it is determined so, the validity flag corresponding to this data is set to “0”. [0059] When a request for processing to recall data from the secondary storages 40 a to 40 c to the primary storage 30 is received from a user, data that is most recent, with respect to the date/time corresponding to the checkpoint number specified by the user, is extracted from the data that is stored on the magnetic tapes of the secondary storages 40 a to 40 c prior to the date/time corresponding to the checkpoint number specified by the user, and also stored in the same storage region of the primary storage 30 , the validity flag corresponding to the most recent data is set to “1”, and the validity flag corresponding to the old data is set to “0”. Then, the data having the validity flag of “1” is recalled to the primary storage 30 . [0060] Although the data storage region of the magnetic tape is divided into blocks (MRB), which are the units for reading and writing data, the storage history data 503 b does not include any information relating to the block that represents the position where the data is stored on the magnetic tape. However, since information relating to the data storage history is added to the storage history data 503 c each time data is stored sequentially from the head block of the magnetic tape, the block where the data is stored on the magnetic tape identified by the magnetic tape ID can be identified by the number of storage histories of the data for each magnetic tape for which the magnetic tape ID is the same. [0061] Returning to FIG. 3 , when the data recall processor 504 receives a specified checkpoint from a user, the data recall processor 504 recalls data corresponding to the checkpoint from among the data backed up on the magnetic tapes of the secondary storages 40 a to 40 c to the primary storage 30 . [0062] More specifically, the data recall processor 504 consults the checkpoint data 503 b , and extracts information relating to the backup date/time of the data that corresponds to the checkpoint received from the user. [0063] The data recall processor 504 extracts the most recent data with respect to the date/time corresponding to the checkpoint number, which is specified by the user, from among the data stored on the magnetic tapes of the secondary storages 40 a to 40 c prior to the backup /time that corresponds to the checkpoint, and also stored in the same storage region of the primary storage 30 , sets the validity flag corresponding to the most recent data to “1”, and sets the validity flag corresponding to the old data to “0”. Then, the data recall processor 504 recalls the data having the validity flag of “1” to the primary storage 30 . [0064] The controller 505 controls the entire data storage management server 50 a , overseeing exchange of data between its functional parts, and the like. [0065] A processing procedure of a data backup process according to the first embodiment will be explained next. FIG. 6 is a flowchart of a processing procedure of a data backup process according to the first embodiment. In this process, data stored in the primary storage 30 is backed up in MRB units of the VLU on the magnetic tapes of the secondary storages 40 a to 40 c. [0066] As shown in FIG. 6 , firstly, the backup processor 501 of the data storage management server 50 a reads information relating to the set date/time at which the data is to be backed up from the setting data 503 a (step S 101 ). [0067] The backup processor 501 then determines whether the set date/time for backup has been reached (step S 102 ), and if not (step S 102 , No), stands by for a predetermined period of time (step S 110 ), proceeds directly to step S 101 , and once again reads information relating to the set date/time at which the data is to be backed up. [0068] When the set date/time has been reached (step S 102 , Yes), the backup processor 501 writes the data stored in the primary storage 30 into the secondary storages 40 a to 40 c , as backup for the data being stored (step S 103 ). This backup process may be performed for data stored in a single MRB, or for data stored in a plurality of MRBs. [0069] The backup processor 501 then writes a record of the backed-up data in the storage history data 503 c (step S 104 ). The backup processor 501 then sets the validity flag of the backed-up data in the storage history data 503 c to “1” (step S 105 ). [0070] The backup processor 501 thereafter retrieves records having the same volume number and MRB number as the backed-up data from the storage history data 503 c (step S 106 ), and determines whether the same record exists (step S 107 ). [0071] When there is a record having the same volume number and MRB number as the backed-up data (step S 107 , Yes), the backup processor 501 sets the validity flag of the retrieved record to “0”, indicating that it is invalid (step S 108 ). [0072] The backup processor 501 writes a record indicating the backup date/time and checkpoint number of the backed-up data in the checkpoint data 503 b (step S 109 ), whereby the data backup processing ends. [0073] At step S 108 , when there is no record having the same volume number and MRB number as the backed-up data (step S 107 , No), the backup processor 501 proceeds to step S 109 , and writes a record of the backed-up data in the checkpoint data 503 b. [0074] In the process described above, data is backed up when a preset date/time set is reached, but the process may be executed when a request for a backup process is received from a user. [0075] A processing procedure of a data recall process according to the first embodiment will be explained next. FIG. 7 is a flowchart of a processing procedure of the data recall process according to the first embodiment. [0076] As shown in FIG. 7 , firstly, the data recall processor 504 of the data storage management server 50 a receives a request to recall data from a user (step S 201 ). Thereafter, the data recall processor 504 extracts the storage history data 503 c (step S 202 ), and sets the validity flags of the records having a date/time more recent than the backup date/time of the checkpoint specified by the user to “0”, indicating that they are invalid (step S 203 ). [0077] The data recall processor 504 then retrieves the most recent record from the records prior to the checkpoint backup date/time from among the records having the same volume number and MRB number as the records whose flags are set to invalid “0” (step S 204 ), and determines whether there is a record having the same volume number and MRB number as the record whose flag is set to invalid “0” (step S 205 ). [0078] When there is such a record (step S 205 , Yes), the data recall processor 504 sets the validity flag of the retrieved record to “1”, indicating that it is valid (step S 206 ), and writes the data corresponding to the valid record in the primary storage 30 , thereby executing the process of recalling the data (step S 207 ), and the data recall process ends. [0079] When there is no record having the same volume number and MRB number (step S 205 , No), the data recall processor 504 proceeds directly to step S 207 , and executes the data recall processing by writing the data corresponding to the valid record in the primary storage 30 . [0080] As described above, in the first embodiment, the primary storage 30 stores data received from the data management server apparatuses 10 a to 10 c , the backup processor 501 writes the data stored in the primary storage 30 on the magnetic tapes of the secondary storages 40 a to 40 c , and stores information relating to the storage history of the data as storage history data 503 c , and based on the storage history data 503 c , the data recall processor 504 reads the data stored on the magnetic tapes of the secondary storages 40 a to 40 c , and stores the read data in the primary storage 30 . Therefore, the processes of backing up and recalling data can be easily and efficiently executed, increasing the usability for the user. [0081] In the first embodiment, based on the storage history data 503 c , the data recall processor 504 detects the most recent data from among data that is stored in the same storage region of the primary storage 30 , and stored on the magnetic tapes of the secondary storages 40 a to 40 c prior to a predetermined date/time, and stores the detected data in the primary storage 30 . Therefore, storage status of the data stored in the primary storage 30 can be easily and efficiently recalled at the specified date/time. [0082] The backup processor 501 writes data stored in the primary storage 30 on the magnetic tapes of the secondary storages 40 a to 40 c based on a preset schedule in the setting data 503 a . Therefore, data stored in the primary storage 30 can be backed up automatically. [0083] When the backup processor 501 has received a request to execute a process of writing data stored in the primary storage 30 on the magnetic tapes of the secondary storages 40 a to 40 c from a user, the backup processor 501 executes a process of writing the data on the magnetic tapes of the secondary storages 40 a to 40 c . Therefore, data can be stored on the magnetic tapes of the secondary storages 40 a to 40 c at a timing specified by the user. [0084] The data recall processor 504 deletes data, which is stored on the magnetic tapes of the secondary storages 40 a to 40 c prior to a preset time, from the data to be stored in the primary storage 30 . Therefore, old data can be deleted automatically. [0085] When a request to execute a process of storing data stored on the magnetic tapes of the secondary storages 40 a to 40 c in the primary storage 30 is received from a user, the data recall processor 504 executes such processing. Therefore, data can be stored in the primary storage 30 at a timing specified by the user. [0086] In a layered storage apparatus in which a hard disk apparatus and a magnetic tape storage apparatus are combined, the data recall processor 504 recalls data from the magnetic tape to the hard disk. Therefore, in the layered storage apparatus in which the hard disk apparatus and the magnetic tape storage apparatus are combined, data can be efficiently recalled from the magnetic tape having a large storage capacity to the rapidly accessible hard disk. [0087] The primary storage 30 and the secondary storages 40 a to 40 c are provided, and the backup processor 501 stores information relating to the storage history of data, which is stored on the magnetic tapes of the secondary storages 40 a to 40 c , as storage history data 503 c , and based on the storage history data 503 c , the data recall processor 504 reads data that matches specific conditions from among the data stored on the magnetic tapes of the secondary storages 40 a to 40 c , and transfers the read data to the primary storage 30 . Therefore, the data recall process can be executed easily and efficiently, increasing the usability for the user. [0088] Information relating to the storage history of the data is set in each write unit (MRB) of the magnetic tapes of the secondary storages 40 a to 40 c . Therefore, the data can be recalled easily and efficiently in the write units (MRB) of the magnetic tapes of the secondary storages 40 a to 40 c , increasing the usability for the user. [0089] Information relating to the storage history of the data includes information indicating whether the data is valid, data that is indicated to be valid by the information in the storage history is read from the magnetic tapes of the secondary storages 40 a to 40 c , and the read data is transferred to the primary storage 30 . Therefore, it is possible to ensure that only valid data is easily and efficiently recalled to the primary storage 30 . [0090] In the first embodiment, each time data stored in the primary storage 30 is written on the magnetic tapes of the secondary storages 40 a to 40 c , history information, such as the storage date/time, is newly added to the storage history data 503 c , however, when the data stored in the primary storage 30 has been updated, it is acceptable to delete information that corresponds to the pre-updated invalid data from the storage history data 503 c , and write only information that corresponds to updated valid data in the storage history data 503 c , making the data recall process more efficient. [0091] According to a second embodiment of the present invention, an example in which, when data stored in the primary storage 30 is updated and migrated to the magnetic tapes of the secondary storages 40 a to 40 c , history information corresponding to pre-updated data is deleted from the storage history data 503 c is explained. [0092] FIG. 8 is an example of storage history data 503 d according to the second embodiment. As shown in FIG. 8 , the storage history data 503 d stores volume numbers, MRB numbers, magnetic tape IDs, data position numbers, and storage date/time. [0093] The volume numbers, the MRB numbers, magnetic tape IDs, and storage date/time, are the same as those shown in FIG. 5 . [0094] A data position number represents the position where data is stored on the magnetic tape identified by the magnetic tape ID. The magnetic tape is divided into storage regions including blocks (MRB), being the units for reading and writing data, and a data position number is allocated to each block sequentially from the head block. [0095] In the second embodiment, each time the backup processor 501 of the data storage management servers 50 a and 50 b shown in FIG. 3 migrates data stored in the primary storage 30 to the magnetic tapes of the secondary storages 40 a to 40 c , information relating to the storage history of the data is added to the storage history data 503 d. [0096] When the data stored in the primary storage 30 is updated and migrated to the magnetic tapes of the secondary storages 40 a to 40 c , the backup processor 501 deletes information of storage histories of pre-updated data (that is, data that has become invalid) from the storage history data 503 d , and adds information of storage histories of the updated data. [0097] When the data stored in the primary storage 30 is backed up, the backup processor 501 separately saves the storage history data 503 d at the time when backup is carried out, and updates only one storage history data 503 d. [0098] This enables the backup processor 501 to read the storage history data 503 d that corresponds to the date/time of the checkpoint, specified by the user, from the saved storage history data 503 d , and to return the primary storage 30 to its former status. [0099] As described above, in the second embodiment, when data stored in the primary storage 30 is updated, and the updated data is written on the magnetic tapes of the secondary storages 40 a to 40 c , where pre-updated data is stored, the backup processor 501 stores information relating to the storage history of the updated data in the storage history data 503 d , and deletes information relating to the storage history of the pre-updated data. Therefore, only the required data is registered in the storage history data 503 d , enabling the process of recalling data to the primary storage 30 to be executed efficiently. [0100] In the second embodiment, the backup processor 501 saves the storage history data 503 d , in which the storage histories of data stored on the magnetic tapes of the secondary storages 40 a to 40 c are registered, at a plurality of times, and, based on one storage history data 503 d that has been selected from among the saved storage history data 503 d , the data recall processor 504 writes the data stored on the magnetic tapes of the secondary storages 40 a to 40 c into the primary storage 30 . Therefore, the storage status of the data stored in the primary storage 30 can be efficiently returned to its former status. [0101] The first and the second embodiments describe examples where the data storage processing is executed by a computer, but a program for executing data storage processing may be stored on a computer-readable recording medium to execute the data storage processing, the program stored on the recording medium being read and executed by the computer. [0102] FIG. 9 is a block diagram of the hardware configuration of a computer 100 that executes data storage processing. As shown in FIG. 9 , the computer 100 includes a central processing unit (CPU) 110 that executes the program mentioned above, an input apparatus 120 that inputs data, a read only memory (ROM) 130 that stores various types of data, a random access memory (RAM) 140 that stores calculation parameters and the like, a reading apparatus 150 that reads a program for executing data storage processing from a recording medium 200 , on which the program is recorded, an output apparatus 160 such as a display, and a network interface 170 that exchanges data with another computer via a network 300 , these parts being connected by a bus 180 . [0103] The CPU 110 reads the program recorded on the recording medium 200 via the reading apparatus 150 , and then carries out data storage processing by executing the program. The recording medium 200 may be an optical disk, a flexible disk, a CD-ROM, a hard disk, or the like. The program may be led into the computer 100 via the network 300 . [0104] While exemplary embodiments of the present invention are described above, variously modified embodiments other than the ones described can be made within the technical spirit of the appended claims. [0105] For example, in the first and the second embodiments, the secondary storages 40 a to 40 c are magnetic tape storage apparatuses that store data on magnetic tapes, but the present invention is not restricted to this, and can be applied in other apparatuses, such as an optical disk library, it being necessary only that the apparatus can store data in a recording medium that stores data by sequential access. [0106] Of the respective processing explained in the embodiments, all or a part of the processing explained as being performed automatically may be performed manually, or all or a part of the processing explained as being performed manually may be performed automatically in a known method. [0107] The information including the processing procedure, the control procedure, specific names, and various kinds of data and parameters shown in the data or in the drawing can be optionally changed, unless otherwise specified. [0108] The respective constituents of the illustrated apparatus are functionally conceptual, and the physically same configuration is not always necessary. In other words, the specific mode of dispersion and integration of the apparatus is not limited to the illustrated one, and all or a part thereof may be functionally or physically dispersed or integrated in an optional unit, according to the various kinds of load and the status of use. [0109] All or an optional part of the various processing functions performed by the apparatus can be realized by the CPU or a program analyzed and executed by the CPU, or can be realized as hardware by the wired logic. [0110] According to the present invention, a first storage unit stores data that is received from another apparatus, a second storage unit writes and stores the data stored in the first storage unit, and stores information relating to the storage history of the data that is written from the first storage unit into the second storage unit, and based on information relating to the storage history that is stored, the data stored in the second storage unit is read out and stored in the first storage unit. Therefore, the invention achieves the effect that processes of backing up and recalling data can be executed easily and efficiently, increasing the usability for the user. [0111] According to the present invention, based on information relating to the storage history, the most recent data is detected from among data that is stored in the same storage region of the first storage unit, and stored in the second storage unit prior to a predetermined date/time, and the detected data is written into the first storage unit. Therefore, the invention achieves the effect that the storage status of data in the first storage unit can be easily and efficiently returned to its status at a specified date/time. [0112] According to the present invention, when data stored in the first storage unit is updated, and the updated data is written in the second storage unit that stores pre-updated data, information relating to the storage history of the updated data is also stored, while information relating to the storage history of the pre-updated data is deleted. Therefore, the invention achieves the effect of ensuring that only information relating to the storage history of required data is registered, making the process of recalling the data more efficient. [0113] According to the present invention, information relating to the storage history of data stored in the second storage unit is saved at a plurality of times, and data stored in the second storage unit is written in the first storage unit based on the information relating to one storage history, which is selected from among the saved information relating to data storage history. Therefore, the storage status of data in the first storage unit can be efficiently returned to its former status. [0114] According to the present invention, data stored in the first storage unit is written in the second storage unit based on a preset schedule. Therefore, the invention achieves the effect that data that is stored in the first storage unit can be backed up automatically. [0115] According to the present invention, when a request to execute a process of writing data stored in the first storage unit into the second storage unit is received from a user, the data is written into the second storage unit. Therefore, the invention achieves the effect that the data can be written in the second storage unit at a timing specified by the user. [0116] According to the present invention, data that is stored in the second storage unit prior to a preset time is deleted from data to be written in the first storage unit. Therefore, the invention achieves the effect that old data can be deleted automatically. [0117] According to the present invention, a process of writing data stored in the second storage unit to the first storage unit is executed when a request to execute the process is received from a user. Therefore, the invention achieves the effect that the data can be recalled to the first storage unit at a timing specified by the user. [0118] According to the present invention, the first storage unit is a hard disk apparatus, and the second storage unit is a magnetic tape storage apparatus. Therefore, the invention achieves the effect that, in a layered storage apparatus in which the hard disk with the magnetic tape are combined, it is possible to efficiently recall data from the magnetic tape having a large storage capacity to the rapidly accessible hard disk. [0119] According to the present invention, the first storage unit and the second storage unit are provided, and information relating to the storage history of data stored in the second storage unit is stored, and based on the information relating to the storage history that is stored, data that matches specific conditions is read from among the data stored in the second storage unit, and the read data is transferred to the first storage unit. Therefore, the invention achieves the effect that the data recall process can be easily and efficiently executed, increasing the usability for the user. [0120] According to the present invention, information relating to the storage history of data is set in each write unit in the second storage unit. Therefore, the invention achieves the effect that the data recall process can be easily and efficiently executed in write units of the second storage unit, increasing the usability for the user. [0121] According to the present invention, information relating to the storage history of the data includes information indicating whether the data is valid, data that is indicated to be valid by the information in the storage history is read from the second storage unit, and the read data is transferred to the first storage unit. Therefore, the invention achieves the effect of ensuring that only valid data is easily and efficiently recalled to the first storage unit. [0122] According to the present invention, information relating to the storage history of data stored in the first storage unit is stored, and, based on the information relating to the storage history that is stored, data that matches specific conditions is read from among the data stored in the first storage unit, and the read data is transferred to the second storage unit. Therefore, the invention achieves the effect that the data recall process can be easily and efficiently executed, increasing the usability for the user. [0123] Although the invention has been described with respect to a specific embodiment for a complete and clear disclosure, the appended claims are not to be thus limited but are to be construed as embodying all modifications and alternative constructions that may occur to one skilled in the art which fairly fall within the basic teaching herein set forth.

Description

Topics

Download Full PDF Version (Non-Commercial Use)

Patent Citations (4)

    Publication numberPublication dateAssigneeTitle
    US-2003115409-A1June 19, 2003Masaki Yamada, Nobuhisa Toshitani, Masayuki HoshiRecording and playback apparatus and recording and playback method
    US-2003236956-A1December 25, 2003International Business Machines CorpoarationFile system backup in a logical volume management data storage environment
    US-2007027937-A1February 01, 2007Mcgrattan Emma K, Stephen Ball, Moucaddem Sami R, Jean-Francois Rivet, Kuo Chin L, Yang Frank HMethod and apparatus for storage backup
    US-6549992-B1April 15, 2003Emc CorporationComputer data storage backup with tape overflow control of disk caching of backup data stream

NO-Patent Citations (0)

    Title

Cited By (6)

    Publication numberPublication dateAssigneeTitle
    CN-101110059-BMay 25, 2011富士通株式会社数据记录设备以及数据记录方法
    JP-2008027163-AFebruary 07, 2008Fujitsu Ltd, 富士通株式会社データ記録装置、データ記録プログラムおよびデータ記録方法
    US-2008022056-A1January 24, 2008Fujitsu LimitedData recording apparatus, data recording method, and computer product
    US-2015269046-A1September 24, 2015Kabushiki Kaisha ToshibaData transfer device, data transfer method, and non-transitory computer readable medium
    US-7937544-B2May 03, 2011Fujitsu LimitedApparatus, method and computer product for data backup and synchronization
    US-9811410-B2November 07, 2017Toshiba Memory CorporationData transfer device, data transfer method, and non-transitory computer readable medium