The present disclosure relates to a transfer device, a transfer method, and a transfer program.
A technique of using a data length to determine a storage node of a data storage destination in an object storage system provided with a plurality of storage nodes is disclosed (JP2014-203329A).
A technique of determining a storage of a file storage destination such that a file is evenly distributed to each storage in a case where the file is associated with the storage of the file storage destination in a system provided with a plurality of storages is disclosed (JP2004-252957A).
In the techniques disclosed in JP2014-203329A and JP2004-252957A, in a case where data is recorded in a plurality of storage devices, load distribution is performed according to the data length, the number of pieces of data, and the like. Therefore, the storage device of a data recording destination is determined without considering the characteristics of data.
In a case where the data recording destination is a magnetic tape, it is preferable that a plurality of pieces of data that may be relatively likely to be requested to be read within a certain period are recorded on the same magnetic tape. This is because the plurality of pieces of data can be read by single reading processing, and as a result, the reading time of the plurality of pieces of data can be shortened as compared with a case where the plurality of pieces of data are recorded on magnetic tapes different from each other.
However, since the techniques disclosed in JP2014-203329A and JP2004-252957A do not consider the probability that the plurality of pieces of data may be requested to be read within a certain period, the data reading time may be lengthened in a case where the data recording destination is the magnetic tape.
The present disclosure has been made in view of the above circumstances, and an object thereof is to provide a transfer device, a transfer method, and a transfer program capable of shortening a data reading time.
According to the present disclosure, there is provided a transfer device that distributes and transfers a plurality of pieces of data to a plurality of information processing devices that perform control to record data on a magnetic tape, the transfer device comprising: at least one processor, in which the processor transfers data to the plurality of information processing devices such that the number of pieces of data is leveled between the plurality of information processing devices, and transfers a plurality of pieces of data of which a value indicating a probability that a plurality of pieces of data are read within a predetermined period is a threshold value or greater, to the same information processing device.
In the transfer device of the present disclosure, the processor may further transfer data to the plurality of information processing devices such that a data size is leveled.
Further, in the transfer device of the present disclosure, the value indicating the probability may be a value that increases as a frequency with which the plurality of pieces of data have been read within the predetermined period in a past increases.
Alternatively, in the transfer device of the present disclosure, the value indicating the probability may be a value that increases as a frequency with which a plurality of pieces of data having the same attribute value as the plurality of pieces of data have been read within the predetermined period in a past increases.
Further, according to the present disclosure, there is provided a transfer method executed by a processor provided in a transfer device that distributes and transfers a plurality of pieces of data to a plurality of information processing devices that perform control to record data on a magnetic tape, the transfer method comprising: transferring data to the plurality of information processing devices such that the number of pieces of data is leveled between the plurality of information processing devices; and transferring a plurality of pieces of data of which a value indicating a probability that a plurality of pieces of data are read within a predetermined period is a threshold value or greater, to the same information processing device.
Further, according to the present disclosure, there is provided a transfer program for causing a processor to execute a process, the processor being provided in a transfer device that distributes and transfers a plurality of pieces of data to a plurality of information processing devices that perform control to record data on a magnetic tape, the process comprising: transferring data to the plurality of information processing devices such that the number of pieces of data is leveled between the plurality of information processing devices; and transferring a plurality of pieces of data of which a value indicating a probability that a plurality of pieces of data are read within a predetermined period is a threshold value or greater, to the same information processing device.
According to the present disclosure, it is possible to shorten a data reading time.
Hereinafter, an example of an embodiment of the technique of the present disclosure will be described in detail with reference to the drawings.
First, a configuration of a recording and reproducing system 10 according to the present embodiment will be described with reference to
The tape library 14 comprises a plurality of slots (not shown) and a plurality of tape drives 18, and a magnetic tape T as an example of a recording medium is stored in each slot. Each tape drive 18 is connected to the information processing device 12. An example of the magnetic tape T includes a linear tape-open (LTO) tape. Further, an example of the information processing device 12 includes a server computer.
In a case where the information processing device 12 writes or reads data with respect to the magnetic tape T, the magnetic tape T to be written or to be read is loaded from the slot into the predetermined tape drive 18. In a case where the writing or reading of data with respect to the magnetic tape T loaded in the tape drive 18 is completed, the magnetic tape T is unloaded from the tape drive 18 to the originally stored slot.
In the present embodiment, as shown in
The transfer device 16 distributes and transfers a plurality of objects to the plurality of information processing devices 12 that perform control to record an object as an example of data on the magnetic tape T. Examples of the transfer device 16 include a load balancer.
Next, the hardware configuration of the transfer device 16 according to the present embodiment will be described with reference to
The storage unit 22 is realized by a hard disk drive (HDD), a solid state drive (SSD), a flash memory, or the like. The storage unit 22 serving as a storage medium stores a transfer program 30. The CPU 20 reads out the transfer program 30 from the storage unit 22 and then develops the transfer program 30 into the memory 21, and executes the developed transfer program 30.
Further, the storage unit 22 stores a reading log 32 which is log data indicating a reading history of an object that has been read from a recording medium (for example, the magnetic tape T and a storage unit provided in the information processing device 12) by an instruction from a user terminal in the past.
Next, the functional configuration of the transfer device 16 according to the present embodiment will be described with reference to
The derivation unit 40 derives a value V1 indicating a probability that a plurality of objects may be read within a predetermined period T1. In the present embodiment, as the value V1, a larger value is applied as a frequency with which a plurality of objects are read within the period T1 is higher, for each combination of attribute values. As the period T1, for example, a predetermined period can be applied as a period in which a plurality of objects are assumed to be read from the magnetic tape T at one time.
Specifically, the derivation unit 40 uses the log data of the latest certain period in the reading log 32 to derive, for each combination of attribute values, the number of times that the plurality of objects having respective attribute values of the combination are read within the period T1, for each period T1, at a periodic timing, such as once a day. Further, the derivation unit 40 derives the total value of the number of times derived for each period T1 within the latest certain period, as the value V1. Then, the derivation unit 40 stores (updates) the derived value V1 in the storage unit 22. For example, the derivation unit 40 may derive the value V1 at the time when the transfer unit 44, which will be described later, transfers the plurality of objects.
The reception unit 42 receives the objects transmitted from the user terminal. The transfer device 16 according to the present embodiment has a buffering function, and temporarily stores the plurality of objects received within a predetermined period, such as within 1 second, in the memory 21.
The transfer unit 44 transfers the objects to the plurality of information processing devices 12 such that the number of objects is leveled between the plurality of information processing devices 12, and transfers a plurality of objects having a value V1 equal to or greater than a threshold value to the same information processing device 12.
A specific example of the transfer processing performed by the transfer unit 44 will be described with reference to
As shown in
Each information processing device 12 performs control to record the plurality of objects transferred from the transfer device 16, on the same magnetic tape T. With this, a plurality of objects that are likely to be read at one time are recorded on the same magnetic tape T. On the other hand, for example, in a case where the transfer device 16 transfers a plurality of objects by using a Round-robin method, the plurality of objects that are likely to be read at one time may be recorded on magnetic tapes T different from each other. Therefore, according to the present embodiment, it is possible to shorten the data reading time while performing the load distribution.
Next, the action of the transfer device 16 according to the present embodiment will be described with reference to
In step S10 of
As described above, according to the present embodiment, it is possible to shorten the data reading time.
In the above-described embodiment, the transfer unit 44 may further transfer the objects to the plurality of information processing devices 12 such that the size of the object is leveled.
Further, in the above-described embodiment, the case where a value that increases as the frequency with which a plurality of objects having the same attribute value as the object to be transferred have been read within the predetermined period T1 in the past increases is applied as the value V1 has been described, but the present disclosure is not limited thereto. For example, a value that increases as the frequency with which a plurality of objects to be transferred have been read within the predetermined period T1 in the past increases may be applied as the value V1. In this case, in the example of
In the above-described embodiment, the case where the disclosed technique is applied to the object storage system has been described, but the present disclosure is not limited thereto. The disclosed technique may be applied to a file storage system that handles data as a file unit.
Further, in the above-described embodiment, for example, as a hardware structure of a processing unit that executes various types of processing, such as the derivation unit 40, the reception unit 42, and the transfer unit 44, the following various processors can be used. The above-described various processors include, for example, a programmable logic device (PLD) which is a processor having a changeable circuit configuration after manufacture, such as a field programmable gate array (FPGA), and a dedicated electrical circuit which is a processor having a dedicated circuit configuration designed to perform specific processing, such as an application specific integrated circuit (ASIC), in addition to the CPU which is a general-purpose processor that executes software (programs) to function as various processing units, as described above.
One processing unit may be composed of one of these various processors or a combination of two or more processors of the same type or different types (for example, a combination of a plurality of FPGAs or a combination of a CPU and an FPGA). Alternatively, a plurality of processing units may be composed of one processor.
A first example in which a plurality of processing units are composed of one processor is an aspect in which one or more CPUs and software are combined to constitute one processor and the processor functions as the plurality of processing units, as typified by a computer, such as a client and a server. A second example is an aspect in which a processor that realizes all the functions of a system including the plurality of processing units with one integrated circuit (IC) chip is used, as typified by a system on chip (SoC). As described above, various processing units are formed of one or more of the above-described various processors as the hardware structure.
Further, as the hardware structure of these various processors, more specifically, an electric circuit (circuitry) in which circuit elements, such as semiconductor elements, are combined can be used.
In the above-described embodiment, the aspect in which the transfer program 30 is stored (installed) in the storage unit 22 in advance has been described, but the present disclosure is not limited thereto. The transfer program 30 may be provided in a form of being recorded on a recording medium, such as a compact disc read only memory (CD-ROM), a digital versatile disc read only memory (DVD-ROM), and a Universal Serial Bus (USB) memory. Alternatively, the transfer program 30 may be downloaded from an external device via the network.
The disclosure of JP2020-044486 filed on Mar. 13, 2020 is incorporated herein by reference in its entirety. In addition, all documents, patent applications, and technical standards described in the present specification are incorporated herein by reference to the same extent as in a case of being specifically and individually noted that individual documents, patent applications, and technical standards are incorporated by reference.
Number | Date | Country | Kind |
---|---|---|---|
2020-044486 | Mar 2020 | JP | national |
This application is a continuation application of International Application No. PCT/JP2021/000908, filed on Jan. 13, 2021, the disclosure of which is incorporated herein by reference in its entirety. Further, this application claims priority from Japanese Patent Application No. 2020-044486, filed on Mar. 13, 2020, the disclosure of which is incorporated herein by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/JP2021/000908 | Jan 2021 | US |
Child | 17822807 | US |