JP2024044866A - Information processing device, information processing method, and information processing program - Google Patents

Information processing device, information processing method, and information processing program Download PDF

Info

Publication number
JP2024044866A
JP2024044866A JP2022150654A JP2022150654A JP2024044866A JP 2024044866 A JP2024044866 A JP 2024044866A JP 2022150654 A JP2022150654 A JP 2022150654A JP 2022150654 A JP2022150654 A JP 2022150654A JP 2024044866 A JP2024044866 A JP 2024044866A
Authority
JP
Japan
Prior art keywords
data
magnetic tape
information processing
parity
new
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.)
Pending
Application number
JP2022150654A
Other languages
Japanese (ja)
Inventor
理貴 近藤
Masataka Kondo
豊 大石
Yutaka Oishi
優子 増田
Yuko Masuda
美咲 大塚
Misaki Otsuka
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.)
Fujifilm Corp
Original Assignee
Fujifilm Corp
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 Fujifilm Corp filed Critical Fujifilm Corp
Priority to JP2022150654A priority Critical patent/JP2024044866A/en
Publication of JP2024044866A publication Critical patent/JP2024044866A/en
Pending legal-status Critical Current

Links

Landscapes

  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

To provide an information processing device, an information processing method, and an information processing program with which it is possible to reduce a ratio of a total size of parity data to a total size of all data recorded to magnetic tape.SOLUTION: An information processing device adds dummy data to data other than data of a maximum size so as to execute a process of equalizing the sizes of a plurality of pieces of data to a same size, generates parity data using the plurality of pieces of data whose sizes have been equalized, exercises first control to record the plurality of pieces of data and parity data to a magnetic tape, generates parity data from new data and data portions in each of the plurality of pieces of data whose sizes have been equalized, from which portions parity data was generated using dummy data, and exercises second control to record the new data and the parity data to the magnetic tape.SELECTED DRAWING: Figure 10

Description

本開示は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。 The present disclosure relates to an information processing device, an information processing method, and an information processing program.

特許文献1には、パリティデータを生成する際に、論理ボリュームグループに属する論理ボリュームの後端にダミーデータを付加して、各論理ボリュームのサイズを均等化する技術が開示されている。 Patent Document 1 discloses a technique for equalizing the size of each logical volume by adding dummy data to the end of the logical volumes that belong to a logical volume group when generating parity data.

特開2015-143952号公報Japanese Patent Application Publication No. 2015-143952

複数のデータとその複数のデータから生成されるパリティデータとを1つのグループとして複数のデータを同一サイズとする場合、そのサイズは、グループ毎に異なる場合が多い。この場合、例えば、データを受信した順に複数のデータを同一サイズにし、同一サイズにした複数のデータと、その複数のデータから生成されたパリティデータとを磁気テープに記録すると、以下の問題が発生する場合がある。すなわち、この場合、磁気テープに記録される全データの総サイズに占めるパリティデータの総サイズの割合が増大してしまう場合がある。 When multiple data and the parity data generated from the multiple data are grouped together and made the multiple data the same size, the size often differs for each group. In this case, for example, if multiple data are made the same size in the order in which they were received, and then the multiple data of the same size and the parity data generated from the multiple data are recorded on magnetic tape, the following problem may occur. That is, in this case, the proportion of the total size of the parity data in the total size of all data recorded on magnetic tape may increase.

本開示は、以上の事情を鑑みてなされたものであり、磁気テープに記録される全データの総サイズに占めるパリティデータの総サイズの割合を低減することができる情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。 The present disclosure has been made in view of the above circumstances, and provides an information processing device, an information processing method, and an information processing method that can reduce the ratio of the total size of parity data to the total size of all data recorded on a magnetic tape. and information processing programs.

第1の態様の情報処理装置は、少なくとも一つのプロセッサを備える情報処理装置であって、プロセッサは、磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより複数のデータのサイズを同一サイズにする処理を実行し、同一サイズにした複数のデータを用いてパリティデータを生成し、複数のデータ及びパリティデータを磁気テープに記録する第1の制御を行い、新たなデータの磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした複数のデータそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、新たなデータと、その新たなデータを用いて生成したパリティデータとを磁気テープに記録する第2の制御を行う。 The information processing device of the first aspect is an information processing device including at least one processor, and the processor is configured to use dummy data for data other than the largest size data among the plurality of data to be recorded on the magnetic tape. A process of making multiple pieces of data the same size by adding data, generating parity data using the multiple pieces of data made to the same size, and recording the multiple pieces of data and parity data on a magnetic tape. 1, and when a request to record new data on the magnetic tape is accepted, a data portion in which parity data is generated using the new data and dummy data of each of a plurality of data of the same size, A second control is performed in which parity data is generated from the data, and new data and parity data generated using the new data are recorded on the magnetic tape.

第2の態様の情報処理装置は、第1の態様の情報処理装置において、プロセッサは、第2の制御において、新たなデータのサイズが磁気テープに記録されたダミーデータのサイズ以下である場合、新たなデータを磁気テープにおけるダミーデータが記録された領域に上書きする制御を行う。 The second aspect of the information processing device is the information processing device of the first aspect, in which the processor, in the second control, performs control to overwrite the new data in the area on the magnetic tape where the dummy data is recorded, if the size of the new data is equal to or smaller than the size of the dummy data recorded on the magnetic tape.

第3の態様の情報処理装置は、第1の態様又は第2の態様の情報処理装置において、プロセッサは、新たなデータのサイズが磁気テープに記録されたダミーデータのサイズを超える場合、データ部分にダミーデータを付加することにより新たなデータとデータ部分とを同一サイズにする処理を実行する。 The third aspect of the information processing device is the information processing device of the first or second aspect, in which, if the size of the new data exceeds the size of the dummy data recorded on the magnetic tape, the processor executes a process of making the new data and the data portion the same size by adding dummy data to the data portion.

第4の態様の情報処理方法は、磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより複数のデータのサイズを同一サイズにする処理を実行し、同一サイズにした複数のデータを用いてパリティデータを生成し、複数のデータ及びパリティデータを磁気テープに記録する第1の制御を行い、新たなデータの磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした複数のデータそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、新たなデータと、その新たなデータを用いて生成したパリティデータとを磁気テープに記録する第2の制御を行う処理を情報処理装置が備えるプロセッサが実行するものである。 The information processing method of the fourth aspect makes the sizes of the plurality of data the same by adding dummy data to data other than the largest size data among the plurality of data to be recorded on the magnetic tape. Executes the process, generates parity data using multiple data of the same size, performs first control to record the multiple data and parity data on the magnetic tape, and requests recording of new data on the magnetic tape. If the new data is accepted, parity data is generated from the new data and the data part where parity data is generated using dummy data for each of multiple data of the same size, and the new data and the new data are A processor included in the information processing apparatus executes a second control process for recording parity data generated using the above information on a magnetic tape.

第5の態様の情報処理プログラムは、磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより複数のデータのサイズを同一サイズにする処理を実行し、同一サイズにした複数のデータを用いてパリティデータを生成し、複数のデータ及びパリティデータを磁気テープに記録する第1の制御を行い、新たなデータの磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした複数のデータそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、新たなデータと、その新たなデータを用いて生成したパリティデータとを磁気テープに記録する第2の制御を行う処理を情報処理装置が備えるプロセッサに実行させるためのものである。 The information processing program of the fifth aspect causes a processor of an information processing device to execute a process of making the sizes of multiple data to be recorded on magnetic tape uniform by adding dummy data to data other than the maximum-sized data, a first control of generating parity data using the multiple data made uniform in size, and recording the multiple data and the parity data on magnetic tape, and when a request to record new data on magnetic tape is received, a second control of generating parity data from the new data and a data portion of each of the multiple data made uniform in size, where the parity data is generated using dummy data, and recording the new data and the parity data generated using the new data on magnetic tape.

本開示によれば、磁気テープに記録される全データの総サイズに占めるパリティデータの総サイズの割合を低減することができる。 According to the present disclosure, it is possible to reduce the proportion of the total size of parity data in the total size of all data recorded on magnetic tape.

情報処理システムの構成の一例を示すブロック図である。FIG. 1 is a block diagram illustrating an example of a configuration of an information processing system. 情報処理装置のハードウェア構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of a hardware configuration of an information processing device. 情報処理装置の機能的な構成の一例を示すブロック図である。FIG. 2 is a block diagram showing an example of a functional configuration of an information processing device. ダミーデータ付加処理を説明するための図である。FIG. 3 is a diagram for explaining dummy data addition processing. パリティデータの生成処理を説明するための図である。FIG. 3 is a diagram for explaining parity data generation processing. 第1の制御におけるデータセット及びパリティデータの磁気テープへの記録処理を説明するための図である。11 is a diagram for explaining the process of recording a data set and parity data onto a magnetic tape under the first control. FIG. 新たなデータの記録要求を受け付けた場合のパリティデータの生成処理を説明するための図である。11 is a diagram for explaining a process of generating parity data when a request to record new data is received; FIG. 新たなデータの記録要求を受け付けた場合のパリティデータの生成処理を説明するための図である。11 is a diagram for explaining a process of generating parity data when a request to record new data is received; FIG. 新たなデータの記録要求を受け付けた場合のパリティデータの生成処理を説明するための図である。FIG. 6 is a diagram for explaining parity data generation processing when a new data recording request is accepted. 第2の制御におけるデータ及びパリティデータの磁気テープへの記録処理を説明するための図である。13 is a diagram for explaining a process of recording data and parity data onto a magnetic tape under the second control. FIG. 第2の制御におけるデータ及びパリティデータの磁気テープへの記録処理を説明するための図である。FIG. 7 is a diagram for explaining the recording process of data and parity data on a magnetic tape in the second control. 変形例に係る第2の制御におけるデータ及びパリティデータの磁気テープへの記録処理を説明するための図である。FIG. 7 is a diagram for explaining a process of recording data and parity data on a magnetic tape in a second control according to a modification. データ記録処理の一例を示すフローチャートである。3 is a flowchart illustrating an example of data recording processing.

以下、図面を参照して、本開示の技術を実施するための形態例を詳細に説明する。 Hereinafter, embodiments for implementing the technology of the present disclosure will be described in detail with reference to the drawings.

まず、図1を参照して、本実施形態に係る情報処理システム10の構成を説明する。図1に示すように、情報処理システム10は、情報処理装置12及びテープライブラリ14を含む。情報処理装置12の例としては、サーバコンピュータ等が挙げられる。 First, the configuration of an information processing system 10 according to this embodiment will be described with reference to FIG. 1. As shown in FIG. 1, the information processing system 10 includes an information processing device 12 and a tape library 14. An example of the information processing device 12 is a server computer.

テープライブラリ14は、複数のスロット(図示省略)及び複数のテープドライブ18を備え、各スロットには記録媒体の一例としての磁気テープTが格納される。各テープドライブ18は、情報処理装置12に接続される。テープドライブ18は、情報処理装置12による制御によって、磁気テープTに対するデータの書き込み又は読み取りを行う。磁気テープTの例としては、LTO(Linear Tape-Open)テープが挙げられる。 The tape library 14 includes a plurality of slots (not shown) and a plurality of tape drives 18, and each slot stores a magnetic tape T as an example of a recording medium. Each tape drive 18 is connected to the information processing device 12. The tape drive 18 writes or reads data to the magnetic tape T under the control of the information processing device 12. An example of the magnetic tape T is an LTO (Linear Tape-Open) tape.

情報処理装置12により磁気テープTに対するデータの書き込み又は読み取りを行う場合、書き込み又は読み取り対象の磁気テープTがスロットから所定のテープドライブ18にロードされる。テープドライブ18にロードされた磁気テープTに対するデータの書き込み又は読み取りが完了すると、磁気テープTは、テープドライブ18から元々格納されていたスロットにアンロードされる。 When the information processing device 12 writes or reads data to the magnetic tape T, the magnetic tape T to be written or read is loaded from a slot into a specified tape drive 18. When writing or reading of data to the magnetic tape T loaded into the tape drive 18 is completed, the magnetic tape T is unloaded from the tape drive 18 to the slot in which it was originally stored.

次に、図2を参照して、本実施形態に係る情報処理装置12のハードウェア構成を説明する。図2に示すように、情報処理装置12は、CPU(Central Processing Unit)20、一時記憶領域としてのメモリ21、及び不揮発性の記憶部22を含む。また、情報処理装置12は、液晶ディスプレイ等のディスプレイ23、キーボードとマウス等の入力装置24、ネットワークに接続されるネットワークI/F(InterFace)25、及び各テープドライブ18が接続される外部I/F26を含む。CPU20、メモリ21、記憶部22、ディスプレイ23、入力装置24、ネットワークI/F25、及び外部I/F26は、バス27に接続される。CPU20は、プロセッサの一例である。 Next, with reference to FIG. 2, the hardware configuration of the information processing device 12 according to this embodiment will be described. As shown in FIG. 2, the information processing device 12 includes a CPU (Central Processing Unit) 20, a memory 21 as a temporary storage area, and a nonvolatile storage section 22. The information processing device 12 also includes a display 23 such as a liquid crystal display, an input device 24 such as a keyboard and mouse, a network I/F (InterFace) 25 connected to the network, and an external I/F (InterFace) 25 to which each tape drive 18 is connected. Contains F26. The CPU 20 , memory 21 , storage section 22 , display 23 , input device 24 , network I/F 25 , and external I/F 26 are connected to the bus 27 . CPU20 is an example of a processor.

記憶部22は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、又はフラッシュメモリ等によって実現される。記憶媒体としての記憶部22には、情報処理プログラム30が記憶される。CPU20は、記憶部22から情報処理プログラム30を読み出してからメモリ21に展開し、展開した情報処理プログラム30を実行する。 The storage unit 22 is realized by a hard disk drive (HDD), a solid state drive (SSD), a flash memory, or the like. The information processing program 30 is stored in the storage unit 22 as a storage medium. The CPU 20 reads the information processing program 30 from the storage unit 22, expands it in the memory 21, and executes the expanded information processing program 30.

ところで、本実施形態に係る情報処理装置12は、ユーザ端末等の外部装置から送信された磁気テープTへのデータの記録要求と、磁気テープTへの記録対象のデータとを受信する。情報処理装置12は、受信したデータを記憶部22に格納する。そして、情報処理装置12は、記憶部22に格納されたデータを磁気テープTに記録する制御を行う。 The information processing device 12 according to this embodiment receives a request to record data onto the magnetic tape T and data to be recorded onto the magnetic tape T, both transmitted from an external device such as a user terminal. The information processing device 12 stores the received data in the storage unit 22. The information processing device 12 then controls the recording of the data stored in the storage unit 22 onto the magnetic tape T.

次に、図3を参照して、本実施形態に係る情報処理装置12の機能的な構成について説明する。図3に示すように、情報処理装置12は、実行部40、第1生成部42、第1制御部44、第2生成部46、及び第2制御部48を含む。CPU20が情報処理プログラム30を実行することにより、実行部40、第1生成部42、第1制御部44、第2生成部46、及び第2制御部48として機能する。 Next, the functional configuration of the information processing device 12 according to this embodiment will be described with reference to FIG. 3. As shown in FIG. 3, the information processing device 12 includes an execution unit 40, a first generation unit 42, a first control unit 44, a second generation unit 46, and a second control unit 48. When the CPU 20 executes the information processing program 30, it functions as the execution unit 40, the first generation unit 42, the first control unit 44, the second generation unit 46, and the second control unit 48.

実行部40は、記憶部22に格納された磁気テープTへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより複数のデータのサイズを同一サイズにする処理(以下、「ダミーデータ付加処理」という)を実行する。本実施形態では、実行部40は、複数のデータのまとまりを1つのデータセットとしてダミーデータ付加処理を実行する。 The execution unit 40 executes a process (hereinafter referred to as a "dummy data addition process") of making the sizes of multiple data items to be recorded on the magnetic tape T stored in the memory unit 22 the same by adding dummy data to data items other than the maximum-sized data item. In this embodiment, the execution unit 40 executes the dummy data addition process by treating a collection of multiple data items as one data set.

具体的には、図4に示すように、実行部40は、ダミーデータ付加処理として、複数のデータセットのうちの最大サイズのデータセット以外のデータセットに対してダミーデータを付加することにより複数のデータセットを同一サイズにする処理を実行する。ダミーデータの例としては、0でパディングされたデータ、又は1でパディングされたデータ等が挙げられる。また、ダミーデータは、0と1とが交互に繰り返されるデータ等の特定の規則によって0と1とが並べられたビット列で表されるデータでもよい。図4では、各矩形の横の長さが、その矩形のデータサイズを表している。なお、図4における複数のデータセットの少なくとも1つが1つのデータであってもよい。 Specifically, as shown in FIG. 4, the execution unit 40 executes a dummy data addition process in which dummy data is added to datasets other than the maximum-sized dataset among the multiple datasets to make the multiple datasets the same size. Examples of dummy data include data padded with 0s or data padded with 1s. The dummy data may also be data represented by a bit string in which 0s and 1s are arranged according to a specific rule, such as data in which 0s and 1s are repeated alternately. In FIG. 4, the horizontal length of each rectangle represents the data size of that rectangle. Note that at least one of the multiple datasets in FIG. 4 may be a single piece of data.

第1生成部42は、実行部40により同一サイズとされた複数のデータセットを用いてパリティデータを生成する。具体的には、図5に示すように、第1生成部42は、実行部40により同一サイズとされた複数のデータセットを用いてデータセットと同一サイズの1つのパリティデータを生成する。本実施形態に係るパリティデータは、複数のデータセットのうちの1つのデータセットが失われても、その1つのデータセットを残りのデータセットとパリティデータとから復元可能な冗長符号である。なお、図5の例では、3つのデータセットから1つのパリティデータが生成される構成(所謂3D+1Pの構成)を示しているが、データセットの数及びパリティデータの数の組み合わせはこの例に限定されない。 The first generating unit 42 generates parity data using multiple data sets that are made the same size by the executing unit 40. Specifically, as shown in FIG. 5, the first generating unit 42 generates one parity data of the same size as a data set using multiple data sets that are made the same size by the executing unit 40. The parity data according to this embodiment is a redundant code that can restore one data set from the remaining data sets and the parity data even if one of the multiple data sets is lost. Note that the example of FIG. 5 shows a configuration in which one parity data is generated from three data sets (a so-called 3D+1P configuration), but the combination of the number of data sets and the number of parity data is not limited to this example.

また、本実施形態に係るパリティデータは、複数のデータセットのビット毎の排他的論理和等のビット演算で生成されるデータである。従って、データセットに含まれる一部のデータのみを復元することも可能となっている。 The parity data according to this embodiment is generated by bit operations such as exclusive OR of each bit of multiple data sets. Therefore, it is possible to restore only a portion of the data contained in the data set.

第1制御部44は、複数のデータセット及びその複数のデータセットを用いて第1生成部42により生成されたパリティデータを複数の磁気テープTに分散して記録する制御(以下、「第1の制御」という)を行う。本実施形態では、一例として図6に示すように、複数のデータセット及びパリティデータを、データセットの数及びパリティデータの数の合計値と同じ本数の磁気テープTに分散して記録する制御を行う。これにより、1本の磁気テープTが使用不可能になった場合でも、残りの3本の磁気テープTに記録されたデータセット及びパリティデータから、使用不可能になった1本の磁気テープTに記録されたデータセットを復元することができる。 The first control unit 44 performs control (hereinafter referred to as “first control). In this embodiment, as shown in FIG. 6 as an example, a plurality of data sets and parity data are distributed and recorded on the same number of magnetic tapes T as the total number of data sets and parity data. conduct. As a result, even if one magnetic tape T becomes unusable, the data set and parity data recorded on the remaining three magnetic tapes T are used to determine whether the unusable magnetic tape T Data sets recorded in can be restored.

第2生成部46は、第1の制御の後に新たなデータの磁気テープTへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした複数のデータセットそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成する。図7~図9を参照して、第2生成部46によるパリティデータの生成処理の具体例を説明する。図7~図9のいずれも図5に示した3つのデータセット及び1つのパリティデータが生成され、かつ磁気テープTに記録された後に、新たなデータとして「データ11」が情報処理装置12により受け付けられた場合の例を示している。また、図7~図9における「パリティデータ(新)」は、第2生成部46により生成されるパリティデータを示している。 When the second generation unit 46 receives a request to record new data onto the magnetic tape T after the first control, the second generation unit 46 uses the new data and dummy data in each of the plurality of data sets having the same size. Parity data is generated from the data portion that generated the parity data. A specific example of the parity data generation process by the second generation unit 46 will be described with reference to FIGS. 7 to 9. In each of FIGS. 7 to 9, after the three data sets and one parity data shown in FIG. An example is shown in which the application is accepted. Furthermore, “Parity data (new)” in FIGS. 7 to 9 indicates parity data generated by the second generation unit 46.

図7に示すように、第2生成部46は、新たなデータのサイズが第1の制御により磁気テープTに記録されたダミーデータのサイズ以下である場合、新たなデータと、同一サイズにした複数のデータセットそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成する。図7の例では、新たなデータのサイズとダミーデータのサイズとが等しい場合を示している。図7~図9における破線の矩形で囲まれた部分、すなわち「データ2」の一部と、「データ7」及び「データ8」とが同一サイズにした複数のデータセットそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分に相当する。前述したように、パリティデータは、ビット単位での演算により生成されるデータであるため、このようにデータの一部からでもパリティデータの生成が可能である。 As shown in FIG. 7, when the size of the new data is equal to or smaller than the size of the dummy data recorded on the magnetic tape T by the first control, the second generation unit 46 generates parity data from the new data and a data portion in which parity data is generated using dummy data in each of the multiple data sets of the same size. The example in FIG. 7 shows a case in which the size of the new data is equal to the size of the dummy data. The portion surrounded by the dashed rectangle in FIG. 7 to FIG. 9, that is, a portion of "Data 2" and "Data 7" and "Data 8", correspond to the data portion in which parity data is generated using dummy data in each of the multiple data sets of the same size. As described above, parity data is generated by calculation on a bit-by-bit basis, so parity data can be generated from even a portion of the data in this way.

なお、図8に示すように、第2生成部46は、新たなデータのサイズがダミーデータのサイズ未満である場合、新たなデータにダミーデータが付加されることにより同一サイズにされた新たなデータと、上記データ部分とからパリティデータを生成してもよい。この場合における新たなデータにダミーデータを付加することにより新たなデータと上記データ部分とを同一サイズにする処理は、前述した実行部40が実行する。 As shown in FIG. 8, when the size of the new data is less than the size of the dummy data, the second generating unit 46 may generate parity data from the new data that has been made the same size as the data portion by adding dummy data to the new data. In this case, the process of making the new data and the data portion the same size by adding dummy data to the new data is executed by the execution unit 40 described above.

また、図9に示すように、第2生成部46は、新たなデータのサイズが第1の制御により磁気テープTに記録されたダミーデータのサイズを超える場合、新たなデータと、上記データ部分にダミーデータが付加されることにより同一サイズにされたデータ部分と、からパリティデータを生成する。この場合における上記データ部分にダミーデータを付加することにより新たなデータと上記データ部分とを同一サイズにする処理は、前述した実行部40が実行する。 Also, as shown in FIG. 9, when the size of the new data exceeds the size of the dummy data recorded on the magnetic tape T by the first control, the second generating unit 46 generates parity data from the new data and the data portion that has been made the same size by adding the dummy data to the data portion. In this case, the process of making the new data and the data portion the same size by adding the dummy data to the data portion is executed by the execution unit 40 described above.

第2制御部48は、新たなデータと、その新たなデータを用いて第2生成部46により生成されたパリティデータとを磁気テープTに記録する制御(以下、「第2の制御」という)を行う。図10に示すように、第2制御部48は、第2の制御において、新たなデータのサイズが第1の制御により磁気テープTに記録されたダミーデータのサイズ以下である場合、新たなデータを磁気テープTにおけるダミーデータが記録された領域に上書きする制御を行う。図10に示すように、この場合、更に、第2制御部48は、第2生成部46により生成されたパリティデータを、第1の制御により磁気テープTに記録されたパリティデータにおけるダミーデータを用いて生成されたデータ部分に上書きする制御を行う。 The second control unit 48 performs control (hereinafter referred to as "second control") to record new data and parity data generated by the second generation unit 46 using the new data on the magnetic tape T. As shown in FIG. 10, in the second control, if the size of the new data is equal to or smaller than the size of the dummy data recorded on the magnetic tape T by the first control, the second control unit 48 performs control to overwrite the new data in the area on the magnetic tape T where the dummy data is recorded. As shown in FIG. 10, in this case, the second control unit 48 further performs control to overwrite the data portion of the parity data recorded on the magnetic tape T by the first control with the parity data generated by the second generation unit 46, which was generated using the dummy data.

図11に示すように、第2制御部48は、第2の制御において、新たなデータのサイズが第1の制御により磁気テープTに記録されたダミーデータのサイズを超える場合、新たなデータを磁気テープTにおけるダミーデータが記録された領域に上書きする制御を行う。図11に示すように、この場合、更に、第2制御部48は、第2生成部46により生成されたパリティデータを、第1の制御により磁気テープTに記録されたパリティデータにおけるダミーデータを用いて生成されたデータ部分に上書きする制御を行う。図11に示すように、この場合、更に、第2制御部48は、第2生成部46によるパリティデータの生成に用いられたダミーデータを磁気テープTに追記する制御を行ってもよい。 As shown in FIG. 11, in the second control, if the size of the new data exceeds the size of the dummy data recorded on the magnetic tape T in the first control, the second control unit 48 controls the new data. Control is performed to overwrite the area on the magnetic tape T in which dummy data is recorded. As shown in FIG. 11, in this case, the second control section 48 further converts the parity data generated by the second generation section 46 into dummy data in the parity data recorded on the magnetic tape T under the first control. control to overwrite the data part generated using As shown in FIG. 11, in this case, the second control section 48 may further perform control to additionally write dummy data used in the generation of parity data by the second generation section 46 onto the magnetic tape T.

なお、図12に示すように、第2制御部48は、第2の制御において、新たなデータのサイズが第1の制御により磁気テープTに記録されたダミーデータのサイズを超える場合、新たなデータを磁気テープTに追記する制御を行ってもよい。図12に示すように、この場合、更に、第2制御部48は、第2の制御において、第2生成部46により生成されたパリティデータを磁気テープTに追記する制御を行ってもよい。 Note that, as shown in FIG. 12, in the second control, if the size of the new data exceeds the size of the dummy data recorded on the magnetic tape T by the first control, the second control unit 48 Control for additionally writing data onto the magnetic tape T may also be performed. As shown in FIG. 12, in this case, the second control unit 48 may further perform control to additionally record the parity data generated by the second generation unit 46 on the magnetic tape T in the second control.

また、第2制御部48は、第2の制御の後に、更に新たなデータが受け付けられた場合、その新たなデータを用いて再度第2の制御を行ってもよい。また、この場合の新たなデータは、複数のデータのまとまりであるデータセットでもよい。 Further, if new data is received after the second control, the second control unit 48 may perform the second control again using the new data. Further, the new data in this case may be a data set that is a collection of a plurality of data.

次に、図13を参照して、本実施形態に係る情報処理装置12の作用を説明する。CPU20が情報処理プログラム30を実行することによって、図13に示すデータ記録処理が実行される。図13に示すデータ記録処理は、例えば、ユーザにより実行開始の指示が入力装置24を介して入力された場合、又は所定数以上のデータが記憶部22に格納された場合等に実行される。 Next, the operation of the information processing device 12 according to this embodiment will be described with reference to FIG. 13. The data recording process shown in FIG. 13 is executed by the CPU 20 executing the information processing program 30. The data recording process shown in FIG. 13 is executed, for example, when a command to start execution is input by the user via the input device 24, or when a predetermined number of pieces of data or more are stored in the memory unit 22.

図13のステップS10で、実行部40は、前述したように、記憶部22に格納された磁気テープTへの記録対象の複数のデータに対してダミーデータ付加処理を実行する。ステップS12で、第1生成部42は、前述したように、ステップS10で同一サイズとされた複数のデータセットを用いてパリティデータを生成する。ステップS14で、第1制御部44は、前述したように、複数のデータセット及びその複数のデータセットを用いてステップS12で生成されたパリティデータを複数の磁気テープTに分散して記録する第1の制御を行う。 In step S10 of FIG. 13, the execution unit 40 executes the dummy data addition process on the plurality of data to be recorded on the magnetic tape T stored in the storage unit 22, as described above. In step S12, the first generation unit 42 generates parity data using the plurality of data sets made to be the same size in step S10, as described above. In step S14, the first control unit 44 performs a process of distributing and recording the plurality of data sets and the parity data generated in step S12 using the plurality of data sets onto the plurality of magnetic tapes T, as described above. 1 control is performed.

ステップS16で、実行部40は、新たなデータの磁気テープTへの記録要求が受け付けられるまで待機する。新たなデータの磁気テープTへの記録要求が受け付けられると、ステップS16の判定が肯定判定となり、処理はステップS18へ移行する。ステップS18で、実行部40は、ステップS16で受け付けられた新たなデータのサイズがステップS14で磁気テープTに記録されたダミーデータのサイズ以下であるか否かを判定する。この判定が肯定判定となった場合、処理はステップS20に移行する。 In step S16, the execution unit 40 waits until a request for recording new data onto the magnetic tape T is received. When a request to record new data onto the magnetic tape T is accepted, the determination in step S16 becomes affirmative, and the process moves to step S18. In step S18, the execution unit 40 determines whether the size of the new data accepted in step S16 is less than or equal to the size of the dummy data recorded on the magnetic tape T in step S14. If this determination is affirmative, the process moves to step S20.

ステップS20で、実行部40は、ステップS16で受け付けられた新たなデータにダミーデータを付加することにより新たなデータと、同一サイズにされた複数のデータセットそれぞれにおけるダミーデータを用いてパリティデータを生成したデータ部分とを同一サイズにするダミーデータ付加処理を実行する。なお、新たなデータのサイズとステップS14で磁気テープTに記録されたダミーデータのサイズとが等しい場合、ステップS20の処理は実行されなくてもよい。 In step S20, the execution unit 40 executes a dummy data addition process in which dummy data is added to the new data received in step S16, thereby making the new data and the data portion in which parity data is generated using the dummy data in each of the multiple data sets that have been made the same size the same. Note that if the size of the new data is equal to the size of the dummy data recorded on the magnetic tape T in step S14, the process of step S20 does not need to be executed.

ステップS22で、第2生成部46は、前述したように、ステップS20で同一サイズにされた新たなデータと上記データ部分とを用いてパリティデータを生成する。ステップS24で、第2制御部48は、前述したように、新たなデータを磁気テープTにおけるダミーデータが記録された領域に上書きする制御を行う。また、第2制御部48は、前述したように、ステップS22で生成されたパリティデータを、ステップS14で磁気テープTに記録されたパリティデータにおけるダミーデータを用いて生成されたデータ部分に上書きする制御を行う。ステップS24の処理が終了すると、データ記録処理が終了する。 In step S22, the second generation unit 46 generates parity data using the new data made the same size in step S20 and the above data portion, as described above. In step S24, the second control unit 48 controls the overwriting of the new data in the area on the magnetic tape T where the dummy data is recorded, as described above. Also, the second control unit 48 controls the overwriting of the parity data generated in step S22 over the data portion of the parity data recorded on the magnetic tape T in step S14, which was generated using the dummy data, as described above. When the processing of step S24 ends, the data recording processing ends.

一方、ステップS18の判定が否定判定となった場合、処理はステップS26に移行する。ステップS26で、実行部40は、上記データ部分にダミーデータを付加することにより、ステップS16で受け付けられた新たなデータと上記データ部分とを同一サイズにするダミーデータ付加処理を実行する。 On the other hand, if the determination in step S18 is negative, the process moves to step S26. In step S26, the execution unit 40 executes a dummy data addition process to make the new data accepted in step S16 and the data part the same size by adding dummy data to the data part.

ステップS28で、第2生成部46は、前述したように、ステップS26で同一サイズにされた新たなデータと上記データ部分とを用いてパリティデータを生成する。ステップS30で、第2制御部48は、前述したように、新たなデータを磁気テープTにおけるダミーデータが記録された領域に上書きする制御を行う。また、第2制御部48は、前述したように、ステップS28で生成されたパリティデータを、ステップS14で磁気テープTに記録されたパリティデータにおけるダミーデータを用いて生成されたデータ部分に上書きする制御を行う。ステップS30の処理が終了すると、データ記録処理が終了する。 In step S28, the second generation unit 46 generates parity data using the new data made to the same size in step S26 and the data portion, as described above. In step S30, the second control unit 48 performs control to overwrite the area of the magnetic tape T in which the dummy data is recorded with new data, as described above. Furthermore, as described above, the second control unit 48 overwrites the parity data generated in step S28 over the data portion generated using dummy data in the parity data recorded on the magnetic tape T in step S14. Take control. When the process of step S30 is finished, the data recording process is finished.

なお、ステップS24の処理の終了後及びステップS30の処理の終了後に、処理がステップS16に戻ってもよい。この場合、更に新たなデータの磁気テープTへの記録要求を受け付けられた場合、ステップS18以降の処理が再度実行される。 Note that the process may return to step S16 after the process in step S24 and after the process in step S30 ends. In this case, if a request for recording new data onto the magnetic tape T is accepted, the processes from step S18 onwards are executed again.

以上説明したように、本実施形態に係る情報処理装置12は、データ及びパリティデータを磁気テープTに記録した後に、新たなデータの記録要求を受け付けた場合、以下の制御を行う。すなわち、この場合、情報処理装置12は、新たなデータのみからパリティデータを生成するのではなく、既に磁気テープTに記録済みのデータの一部と新たなデータとからパリティデータを生成し、新たなデータとパリティデータとを磁気テープTに記録する制御を行う。従って、磁気テープTに記録される全データの総サイズに占めるパリティデータの総サイズの割合を低減することができる。 As described above, when the information processing device 12 according to the present embodiment receives a new data recording request after recording data and parity data on the magnetic tape T, the information processing device 12 performs the following control. That is, in this case, the information processing device 12 does not generate parity data only from new data, but generates parity data from a part of the data already recorded on the magnetic tape T and new data, and generates parity data from new data. control to record data and parity data on the magnetic tape T. Therefore, the ratio of the total size of parity data to the total size of all data recorded on the magnetic tape T can be reduced.

なお、上記実施形態において、磁気テープTへの記録対象のデータとして、文書データ及び画像データ等のユーザが保存対象とするデータと、そのデータに関するメタデータとを含むオブジェクトを適用してもよい。このオブジェクトを取り扱うストレージシステムは、オブジェクトストレージシステムと称される。この形態例におけるメタデータには、例えば、オブジェクトキー等のオブジェクトの識別情報、オブジェクト名、データのサイズ、及びタイムスタンプ等の属性情報が含まれる。 In the above embodiment, the data to be recorded on the magnetic tape T may be data that the user wishes to save, such as document data and image data, and an object containing metadata related to that data. A storage system that handles such objects is called an object storage system. The metadata in this embodiment includes, for example, object identification information such as an object key, object name, data size, and attribute information such as a timestamp.

また、上記実施形態において、例えば、実行部40、第1生成部42、第1制御部44、第2生成部46、及び第2制御部48といった各種の処理を実行する処理部(processing unit)のハードウェア的な構造としては、次に示す各種のプロセッサ(processor)を用いることができる。上記各種のプロセッサには、前述したように、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPUに加えて、FPGA(Field Programmable Gate Array)等の製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が含まれる。 In the above embodiment, the various processors shown below can be used as the hardware structure of the processing units that execute various processes, such as the execution unit 40, the first generation unit 42, the first control unit 44, the second generation unit 46, and the second control unit 48. As described above, the various processors include a CPU, which is a general-purpose processor that executes software (programs) and functions as various processing units, as well as a programmable logic device (PLD), which is a processor whose circuit configuration can be changed after manufacture, such as an FPGA (Field Programmable Gate Array), and a dedicated electrical circuit, such as an ASIC (Application Specific Integrated Circuit), which is a processor with a circuit configuration designed specifically to execute specific processes.

1つの処理部は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせや、CPUとFPGAとの組み合わせ)で構成されてもよい。また、複数の処理部を1つのプロセッサで構成してもよい。 A single processing unit may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (e.g., a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, multiple processing units may be configured with a single processor.

複数の処理部を1つのプロセッサで構成する例としては、第1に、クライアント及びサーバ等のコンピュータに代表されるように、1つ以上のCPUとソフトウェアの組み合わせで1つのプロセッサを構成し、このプロセッサが複数の処理部として機能する形態がある。第2に、システムオンチップ(System on Chip:SoC)等に代表されるように、複数の処理部を含むシステム全体の機能を1つのIC(Integrated Circuit)チップで実現するプロセッサを使用する形態がある。このように、各種の処理部は、ハードウェア的な構造として、上記各種のプロセッサの1つ以上を用いて構成される。 As an example of configuring multiple processing units with one processor, firstly, one processor is configured with a combination of one or more CPUs and software, as typified by computers such as a client and a server. There is a form in which a processor functions as multiple processing units. Second, there are processors that use a single IC (Integrated Circuit) chip, such as System on Chip (SoC), which implements the functions of an entire system including multiple processing units. be. In this way, various processing units are configured using one or more of the various processors described above as a hardware structure.

更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路(circuitry)を用いることができる。 Furthermore, as the hardware structure of these various processors, more specifically, an electric circuit (circuitry) that is a combination of circuit elements such as semiconductor elements can be used.

また、上記実施形態では、情報処理プログラム30が記憶部22に予め記憶(インストール)されている態様を説明したが、これに限定されない。情報処理プログラム30は、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、情報処理プログラム30は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。 Further, in the above embodiment, a mode has been described in which the information processing program 30 is stored (installed) in the storage unit 22 in advance, but the present invention is not limited to this. The information processing program 30 is provided in a form recorded on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disc Read Only Memory), or a USB (Universal Serial Bus) memory. Good too. Further, the information processing program 30 may be downloaded from an external device via a network.

10 情報処理システム
12 情報処理装置
14 テープライブラリ
18 テープドライブ
20 CPU
21 メモリ
22 記憶部
23 ディスプレイ
24 入力装置
25 ネットワークI/F
26 外部I/F
27 バス
30 情報処理プログラム
40 実行部
42 第1生成部
44 第1制御部
46 第2生成部
48 第2制御部
T 磁気テープ
10 Information processing system 12 Information processing device 14 Tape library 18 Tape drive 20 CPU
21 Memory 22 Storage section 23 Display 24 Input device 25 Network I/F
26 External I/F
27 Bus 30 Information processing program 40 Execution unit 42 First generation unit 44 First control unit 46 Second generation unit 48 Second control unit T Magnetic tape

Claims (5)

少なくとも一つのプロセッサを備える情報処理装置であって、
前記プロセッサは、
磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより前記複数のデータのサイズを同一サイズにする処理を実行し、
同一サイズにした前記複数のデータを用いてパリティデータを生成し、
前記複数のデータ及び前記パリティデータを磁気テープに記録する第1の制御を行い、
新たなデータの前記磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした前記複数のデータそれぞれにおける前記ダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、
前記新たなデータと、その新たなデータを用いて生成したパリティデータとを前記磁気テープに記録する第2の制御を行う
情報処理装置。
An information processing device comprising at least one processor,
The processor includes:
performing a process of making the sizes of the plurality of data the same size by adding dummy data to data other than the largest size data among the plurality of data to be recorded on the magnetic tape;
Generate parity data using the plurality of data of the same size,
performing first control to record the plurality of data and the parity data on a magnetic tape;
When a request for recording new data onto the magnetic tape is accepted, parity data is generated from the new data and the data portion for which parity data is generated using the dummy data in each of the plurality of data of the same size. generate,
An information processing device that performs second control for recording the new data and parity data generated using the new data on the magnetic tape.
前記プロセッサは、
前記第2の制御において、前記新たなデータのサイズが前記磁気テープに記録されたダミーデータのサイズ以下である場合、前記新たなデータを前記磁気テープにおける前記ダミーデータが記録された領域に上書きする制御を行う
請求項1に記載の情報処理装置。
The processor,
The information processing device according to claim 1 , wherein, in the second control, if the size of the new data is equal to or smaller than the size of the dummy data recorded on the magnetic tape, the new data is overwritten in the area of the magnetic tape where the dummy data is recorded.
前記プロセッサは、
前記新たなデータのサイズが前記磁気テープに記録されたダミーデータのサイズを超える場合、前記データ部分にダミーデータを付加することにより前記新たなデータと前記データ部分とを同一サイズにする処理を実行する
請求項1又は請求項2に記載の情報処理装置。
The processor includes:
If the size of the new data exceeds the size of the dummy data recorded on the magnetic tape, processing is performed to make the new data and the data portion the same size by adding dummy data to the data portion. The information processing device according to claim 1 or claim 2.
磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより前記複数のデータのサイズを同一サイズにする処理を実行し、
同一サイズにした前記複数のデータを用いてパリティデータを生成し、
前記複数のデータ及び前記パリティデータを磁気テープに記録する第1の制御を行い、
新たなデータの前記磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした前記複数のデータそれぞれにおける前記ダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、
前記新たなデータと、その新たなデータを用いて生成したパリティデータとを前記磁気テープに記録する第2の制御を行う
処理を情報処理装置が備えるプロセッサが実行する情報処理方法。
performing a process of making the sizes of the plurality of data to be recorded on the magnetic tape equal by adding dummy data to data other than the data with the maximum size;
generating parity data using the plurality of data pieces of the same size;
performing a first control for recording the plurality of data and the parity data on a magnetic tape;
when a request to record new data on the magnetic tape is received, generating parity data from the new data and a data portion in which parity data is generated using the dummy data in each of the plurality of data having the same size;
an information processing method in which a processor included in an information processing device executes a process of performing a second control for recording the new data and parity data generated using the new data on the magnetic tape;
磁気テープへの記録対象の複数のデータのうちの最大サイズのデータ以外のデータに対してダミーデータを付加することにより前記複数のデータのサイズを同一サイズにする処理を実行し、
同一サイズにした前記複数のデータを用いてパリティデータを生成し、
前記複数のデータ及び前記パリティデータを磁気テープに記録する第1の制御を行い、
新たなデータの前記磁気テープへの記録要求を受け付けた場合、その新たなデータと、同一サイズにした前記複数のデータそれぞれにおける前記ダミーデータを用いてパリティデータを生成したデータ部分と、からパリティデータを生成し、
前記新たなデータと、その新たなデータを用いて生成したパリティデータとを前記磁気テープに記録する第2の制御を行う
処理を情報処理装置が備えるプロセッサに実行させるための情報処理プログラム。
performing a process of making the sizes of the plurality of data to be recorded on the magnetic tape equal by adding dummy data to data other than the data with the maximum size;
generating parity data using the plurality of data pieces of the same size;
performing a first control for recording the plurality of data and the parity data on a magnetic tape;
when a request to record new data on the magnetic tape is received, generating parity data from the new data and a data portion in which parity data is generated using the dummy data in each of the plurality of data having the same size;
an information processing program for causing a processor included in an information processing device to execute a process of performing a second control for recording the new data and parity data generated using the new data on the magnetic tape;
JP2022150654A 2022-09-21 2022-09-21 Information processing device, information processing method, and information processing program Pending JP2024044866A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022150654A JP2024044866A (en) 2022-09-21 2022-09-21 Information processing device, information processing method, and information processing program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022150654A JP2024044866A (en) 2022-09-21 2022-09-21 Information processing device, information processing method, and information processing program

Publications (1)

Publication Number Publication Date
JP2024044866A true JP2024044866A (en) 2024-04-02

Family

ID=90480252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022150654A Pending JP2024044866A (en) 2022-09-21 2022-09-21 Information processing device, information processing method, and information processing program

Country Status (1)

Country Link
JP (1) JP2024044866A (en)

Similar Documents

Publication Publication Date Title
WO2021171814A1 (en) Information processing device, information processing method, and information processing program
WO2021171683A1 (en) Information processing device, information processing method, and information processing program
JP2024044866A (en) Information processing device, information processing method, and information processing program
JP7167192B2 (en) Recording device, recording method, recording program, and magnetic tape
JP7127143B2 (en) Recording device, reading device, recording method, recording program, reading method, reading program, and magnetic tape
JP2024037470A (en) Information processing device, information processing method, and information processing program
US20230266886A1 (en) Information processing apparatus, information processing method, and information processing program
US20240094935A1 (en) Information processing apparatus, information processing method, and information processing program
JP2024039805A (en) Information processing device, information processing method, and information processing program
JP2024053282A (en) Information processing apparatus, information processing method, and information processing program
WO2022176344A1 (en) Information processing device, information processing method, and information processing program
WO2022044434A1 (en) Information processing device, information processing method, and information processing program
WO2022049832A1 (en) Information processing device, information processing method, and information processing program
WO2022172548A1 (en) Information processing device, information processing method, and information processing program
JP2024044867A (en) Information processing apparatus, information processing method, and program
WO2021171815A1 (en) Information processing device, information processing method, and information processing program
WO2022163078A1 (en) Information processing device, information processing method, and information processing program
US20230238022A1 (en) Information processing apparatus, information processing method, and information processing program
JP2024035507A (en) Information processing apparatus, information processing method, and information processing program
WO2022176345A1 (en) Information processing device, information processing method, and information processing program
WO2022168399A1 (en) Information processing device, information processing method, and information processing program
US20230177010A1 (en) Information processing apparatus, information processing method, and information processing program
US20220413746A1 (en) Transfer device, transfer method, and transfer program
US20220413767A1 (en) Information processing device, information processing method, and information processing program
WO2022044433A1 (en) Information processing device, information processing method, and information processing program