JP2023128061A - Information processing apparatus, information processing method, and information processing program - Google Patents
Information processing apparatus, information processing method, and information processing program Download PDFInfo
- Publication number
- JP2023128061A JP2023128061A JP2022032117A JP2022032117A JP2023128061A JP 2023128061 A JP2023128061 A JP 2023128061A JP 2022032117 A JP2022032117 A JP 2022032117A JP 2022032117 A JP2022032117 A JP 2022032117A JP 2023128061 A JP2023128061 A JP 2023128061A
- Authority
- JP
- Japan
- Prior art keywords
- read
- data
- order
- information processing
- priority
- 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
Links
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
Description
開示の技術は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。 The disclosed technology relates to an information processing device, an information processing method, and an information processing program.
記録媒体に記録されたデータの読み出し順序を決定する処理に関する技術として、以下の技術が知られている。例えば特許文献1には、読み込み対象のファイルの記録位置と記録方向とを取得し、取得した記録位置と記録方向とを基に、ファイルの読み出し順序を決定するファイル復元順並び替え部と、ファイル復元並び替え部で並び替えられた順序で、読み込み対象のファイルを再生するファイル復元部と、を含むテープ制御装置が記載されている。ファイル復元順並び替え部は、ファイルに関する記録位置と記録方向とを基に、読み込み対象のファイルのシーク時間が最短となるように、ファイルの読み出し順序を決定する。
The following techniques are known as techniques related to processing for determining the reading order of data recorded on a recording medium. For example,
特許文献2には、第1の優先度情報を含む読み出し要求を、既に到着している第2の優先度情報を含む読み出し要求の遅延限界値を越えない範囲で、当該第2の優先度情報を含む読み出し要求よりも優先的に読み出しコマンドとして出力することを特徴とする記憶デバイス制御装置が記載されている。
磁気テープに記録されたデータを読み出す場合の、テープドライブのヘッドの位置合わせに要する時間(以下、位置合わせ時間という)を短縮する手法として、RAO(Recommended Access Order )機能が知られている。RAO機能は、磁気テープに記録された読み出し対象の複数のデータについて、位置合わせ時間が短くなるように、所定の順序導出アルゴリズムを用いて読み出し順序を決定する機能である。 The RAO (Recommended Access Order) function is known as a method for shortening the time required for positioning the head of a tape drive (hereinafter referred to as positioning time) when reading data recorded on a magnetic tape. The RAO function is a function that determines the read order of a plurality of pieces of data recorded on a magnetic tape to be read using a predetermined order derivation algorithm so that alignment time is shortened.
読み出し対象のデータには、読み出しの優先度が設定される場合があり、読み出しの優先度が高いデータについては、優先的に磁気テープから読み出すことが要求される。しかしながら、既存の順序導出アルゴリズムにおいては、読み出し対象のデータに設定された優先度は考慮されていない。一方で、単純に優先度が高いデータの読み出し順序を上位に設定した場合には、位置合わせ時間が著しく長くなるおそれがある。 A reading priority may be set for the data to be read, and data with a high reading priority is requested to be read preferentially from the magnetic tape. However, existing order derivation algorithms do not take into account the priority set for the data to be read. On the other hand, if the read order of data with a high priority is simply set higher, the alignment time may become significantly longer.
開示の技術は上記の点に鑑みてなされたものであり、読み出しの優先度を考慮して読み出し順序を決定する場合に、位置合わせ時間が著しく長くなることを回避することを目的とする。 The disclosed technique has been developed in view of the above points, and aims to avoid a significant increase in alignment time when determining the readout order in consideration of the readout priority.
開示の技術に係る情報処理装置は、少なくとも1つのプロセッサを備える。プロセッサは、磁気テープに記録され、読み出しの優先度が設定された読み出し対象の複数のデータについて、所定のアルゴリズムを用いて読み出し順序を導出する場合に、アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値について、優先度に基づいて重み付けを行い、重み付けされた指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する。 An information processing device according to the disclosed technology includes at least one processor. When a processor uses a predetermined algorithm to derive a read order for multiple pieces of data to be read that are recorded on a magnetic tape and have read priorities set, the processor determines the read order using an algorithm. The index values corresponding to the recording position of each data to be read to be used are weighted based on the priority, and the reading order of the plurality of data to be read is derived based on the weighted index values.
指標値は、ヘッドが、当該データの記録位置まで移動する場合の移動時間又は移動距離に相関する値であってもよい。プロセッサは、優先度が相対的に高いデータについて、優先度が相対的に低いデータよりも小さい重み係数を用いて重み付けを行ってもよい。 The index value may be a value that correlates with the moving time or moving distance when the head moves to the recording position of the data. The processor may weight data with relatively high priority using a smaller weighting coefficient than data with relatively low priority.
開示の技術に係る情報処理方法は、磁気テープに記録され、読み出しの優先度が設定された読み出し対象の複数のデータについて、所定のアルゴリズムを用いて読み出し順序を導出する場合に、アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値を優先度に基づいて重み付けを行い、重み付けされた指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する処理を情報処理装置が備える少なくとも1つのプロセッサが実行する、というものである。 The information processing method according to the disclosed technology uses an algorithm when deriving a read order using a predetermined algorithm for a plurality of pieces of data to be read that are recorded on a magnetic tape and have read priorities set. Index values corresponding to the recording positions of each data to be read used when determining the read order are weighted based on the priority, and the read order of multiple data to be read is determined based on the weighted index values. At least one processor included in the information processing device executes the deriving process.
開示の技術に係る情報処理プログラムは、磁気テープに記録され、読み出しの優先度が設定された読み出し対象の複数のデータについて、所定のアルゴリズムを用いて読み出し順序を導出する場合に、アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値を優先度に基づいて重み付けを行い、重み付けされた指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する処理を情報処理装置が備える少なくとも1つのプロセッサに実行させるためのプログラムである。 The information processing program according to the disclosed technology uses an algorithm when deriving a read order using a predetermined algorithm for a plurality of pieces of data to be read that are recorded on a magnetic tape and have read priorities set. Index values corresponding to the recording positions of each data to be read used when determining the read order are weighted based on the priority, and the read order of multiple data to be read is determined based on the weighted index values. This is a program for causing at least one processor included in an information processing device to execute a process to be derived.
開示の技術によれば、読み出しの優先度を考慮して読み出し順序を決定する場合に、位置合わせ時間が著しく長くなることを回避することが可能となる。 According to the disclosed technology, when determining the readout order in consideration of the readout priority, it is possible to avoid a significant increase in alignment time.
以下、開示の技術の実施形態の一例を、図面を参照しつつ説明する。なお、各図面において同一または等価な構成要素及び部分には同一の参照符号を付与し、重複する説明は省略する。 An example of an embodiment of the disclosed technology will be described below with reference to the drawings. In addition, the same reference numerals are given to the same or equivalent components and parts in each drawing, and overlapping explanation will be omitted.
図1は、開示の技術の実施形態に係るストレージシステム1の構成の一例を示す図である。ストレージシステム1は、ネットワークを介してストレージシステム1に接続されるユーザ端末等の外部装置(図示せず)から保存要求があったデータを保存し、外部装置からデータの読み出し要求があった場合、要求されたデータを読み出して外部装置に送信する。ストレージシステム1は、データをオブジェクトの単位で扱うオブジェクトストレージシステムであってもよい。オブジェクトは、データ本体と、データ本体に関するメタデータとを含んで構成される。
FIG. 1 is a diagram showing an example of the configuration of a
ストレージシステム1は、サーバ10及びテープライブラリ20を含む。テープライブラリ20は、複数のスロット(図示せず)及び複数のテープドライブ40を備え、各スロットには磁気テープ30が格納される。ユーザ端末等の外部装置から格納要求があったデータは、磁気テープ30に記録される。テープドライブ40は、サーバ10からの指示に基づいて、テープドライブ40に装填された磁気テープ30へのデータの記録(書き込み)及び磁気テープ30からのデータの読み出しを行う。磁気テープ30の例としては、LTO(Linear Tape-Open)テープが挙げられる。磁気テープ30に対してデータの記録又は読み出しを行う場合、対象の磁気テープ30がスロットから取り出され、所定のテープドライブ40に装填される。テープドライブ40に装填された磁気テープ30に対するデータの記録又は読み出しが完了すると、磁気テープ30は、テープドライブ40から取り出され、所定のスロットに格納される。サーバ10は、磁気テープ30に対するデータの記録及び読み出しを制御する。
サーバ10は、ユーザ端末等の外部装置(図示せず)からのデータの読み出し要求を受付ける。読み出し対象のデータには、読み出し期限が設定され得る。読み出し期限は、例えば、読み出し要求を発するユーザによってデータ毎に設定され、サーバ10が備える不揮発性メモリ(図示せず)に記録される。サーバ10は、読み出し要求に係る読み出し対象のデータについて、読み出しの優先度を設定する。サーバ10は、読み出し対象のデータの各々について、当該各データに設定された読み出し期限に応じて優先度を設定する。サーバ10は、読み出し対象のデータの各々について、データID(identification)、読み出し期限及び優先度を互いに対応付けたデータリストを生成し、これをサーバ10が備える不揮発性メモリ(図示せず)に格納する。 The server 10 accepts data read requests from external devices (not shown) such as user terminals. A read deadline may be set for the data to be read. The read deadline is set for each piece of data by, for example, a user who issues a read request, and is recorded in a nonvolatile memory (not shown) included in the server 10. The server 10 sets a read priority for the data to be read related to the read request. The server 10 sets priorities for each piece of data to be read according to the read deadline set for each piece of data. The server 10 generates a data list in which data ID (identification), read deadline, and priority are associated with each other for each piece of data to be read, and stores this in a non-volatile memory (not shown) provided in the server 10. do.
図2は、上記のデータリストの内容の一例を示す図である。データリスト120は、読み出し要求があった読み出し対象データについて、データを識別するデータID、そのデータについて設定された読み出し期限及び読み出し期限に応じて設定される読み出しの優先度を互いに対応付けた情報である。読み出し期限は、例えば、読み出し要求を発するユーザによってデータ毎に設定される。優先度は、現時点から読み出し期限までの期間に応じて設定される。本実施形態において、優先度1は、読み出し期限までの期間が最も短いグループであり、優先度1が設定されたデータは、読み出しの優先の度合いが最も高い。優先度3は、読み出し期限までの期間が最も長いグループであり、優先度3が設定されたデータは、読み出しの優先の度合いが最も低い。なお、図2には、読み出し対象のデータを、読み出し期限に応じて3つの優先度グループに分類する場合が例示されているが、2つ又は4つ以上の優先度グループに分類してもよい。
FIG. 2 is a diagram showing an example of the contents of the above data list. The data list 120 is information in which a data ID for identifying the data, a read deadline set for the data, and a read priority set according to the read deadline are associated with each other for the read target data for which a read request has been made. be. The read deadline is set for each data, for example, by a user who issues a read request. The priority is set according to the period from the current time to the reading deadline. In this embodiment,
サーバ10は、受け付けた読み出し要求に係る読み出し対象の複数のデータについて、テープドライブ40が備えるRAO機能によって読み出し順序を導出すべき指示(以下、順序導出指示という)をテープドライブ40に対して発する。サーバ10は、順序導出指示と共にデータリスト120をテープドライブ40に送信する。 The server 10 issues an instruction to the tape drive 40 to derive a read order (hereinafter referred to as an order derivation instruction) using the RAO function provided in the tape drive 40 for a plurality of pieces of data to be read related to the received read request. The server 10 sends the data list 120 to the tape drive 40 along with the order derivation instruction.
図3は、テープドライブ40のハードウェア構成の一例を示す図である。テープドライブ40は、サーバ10からの指示に基づいて磁気テープ30へのデータの記録(書き込み)及び磁気テープ30からのデータの読み出しを行う。テープドライブ40には、磁気テープ30を収容した磁気テープカートリッジ31が装填される。テープドライブ40は、磁気テープ30に対して記録再生を行う磁気ヘッド41と、磁気テープ30に対する記録再生制御を行う制御部42とを備える。制御部42は、PLD(Programmable Logic Device)等のプロセッサ43と、ファームウェアとしての情報処理プログラム44を記憶した不揮発性のメモリ45とを含んで構成されている。テープドライブ40は、開示の技術における情報処理装置の一例である。 FIG. 3 is a diagram showing an example of the hardware configuration of the tape drive 40. The tape drive 40 records (writes) data on the magnetic tape 30 and reads data from the magnetic tape 30 based on instructions from the server 10 . A magnetic tape cartridge 31 containing a magnetic tape 30 is loaded into the tape drive 40 . The tape drive 40 includes a magnetic head 41 that performs recording and reproduction on the magnetic tape 30, and a control section 42 that performs recording and reproduction control on the magnetic tape 30. The control unit 42 includes a processor 43 such as a PLD (Programmable Logic Device), and a nonvolatile memory 45 that stores an information processing program 44 as firmware. The tape drive 40 is an example of an information processing device in the disclosed technology.
テープドライブ40は、磁気テープ30に記録されたデータを読み出す場合の、磁気ヘッド41の位置合わせに要する時間(位置合わせ時間)を短縮するためのRAO機能を有する。すなわち、テープドライブ40は、磁気テープ30に記録された複数のデータの読み出し指示を受けると、当該読み出し対象の複数のデータについて、位置合わせ時間が短くなるように、最近傍法及びペアワイズ法等の公知の順序導出アルゴリズムを用いて読み出し順序を導出する。なお、最近傍法とは、読み出し対象の複数のデータを、磁気ヘッドから最も近い位置にあるデータから順に読み出す手法である。ペアワイズ交換法とは、最近傍法により導出された読み出し順における最後に読み出すデータの読み出し順を、先頭又は他の連続するデータの間の順番に変更して読み出し時間を評価する手法である。ペアワイズ交換法では、評価した読み出し時間が最短となる読み出し順を最適な読み出し順序として導出する。なお、最近傍法及びペアワイズ交換法については、特開2012-128937号公報にも記載されている。 The tape drive 40 has an RAO function to reduce the time required for positioning the magnetic head 41 (positioning time) when reading data recorded on the magnetic tape 30. That is, when the tape drive 40 receives an instruction to read a plurality of data recorded on the magnetic tape 30, the tape drive 40 uses a nearest neighbor method, a pairwise method, etc. to shorten the positioning time for the plurality of data to be read. A read order is derived using a known order derivation algorithm. Note that the nearest neighbor method is a method of sequentially reading a plurality of pieces of data to be read starting from the data located closest to the magnetic head. The pairwise exchange method is a method of evaluating the read time by changing the read order of the data to be read last in the read order derived by the nearest neighbor method to the order of the data to be read at the beginning or among other consecutive data. In the pairwise exchange method, the readout order that results in the shortest evaluated readout time is derived as the optimal readout order. Note that the nearest neighbor method and the pairwise exchange method are also described in JP-A-2012-128937.
図4は、読み出し対象のデータを磁気テープ30から読み出す場合におけるテープドライブ40の機能的な構成の一例を示す機能ブロック図である。テープドライブ40は、取得部401、順序導出部402及び読み出し部403を有する。プロセッサ43が情報処理プログラム44を実行することにより、テープドライブ40は、取得部401、順序導出部402及び読み出し部403として機能する。 FIG. 4 is a functional block diagram showing an example of the functional configuration of the tape drive 40 when reading data to be read from the magnetic tape 30. The tape drive 40 includes an acquisition section 401, an order derivation section 402, and a reading section 403. When the processor 43 executes the information processing program 44, the tape drive 40 functions as an acquisition section 401, an order derivation section 402, and a reading section 403.
取得部401は、サーバ10から供給されるデータリスト120を取得する。 The acquisition unit 401 acquires the data list 120 supplied from the server 10.
順序導出部402は、サーバ10からの順序導出指示に応じて、読み出し対象の複数のデータについて、所定の順序導出アルゴリズムを用いて読み出し順序を導出する。順序導出部402は、以下の処理を行って読み出し対象の複数のデータについて読み出し順序を導出する。以下の説明では、順序導出アルゴリズムとして最近傍法を用いる場合を例示する。 The order deriving unit 402 derives a read order for a plurality of pieces of data to be read using a predetermined order deriving algorithm in response to an order deriving instruction from the server 10 . The order deriving unit 402 performs the following processing to derive a read order for a plurality of data to be read. In the following description, a case will be exemplified in which the nearest neighbor method is used as the order derivation algorithm.
順序導出部402は、読み出し対象の各データについて、当該データの記録位置に応じた指標値を導出する。読み出し対象のデータの記録位置は、データリスト120に記録されたデータID等から特定することが可能である。上記の指標値は、例えば、磁気ヘッド41が現在位置からデータの記録位置まで移動する場合の移動時間(シーク時間)又は移動距離(シーク距離)に相関する値である。移動時間(シーク時間)及び移動距離(シーク距離)は、テープドライブ40が備えるRAO機能によって各データの記録位置から推定することが可能である。図5には、読み出し対象のデータ#1~#10の各々について導出された指標値としての移動距離が例示されている。移動距離は、所定のデータサイズで区画されるデータブロックの数によって表される量であってもよい。
The order derivation unit 402 derives, for each data to be read, an index value according to the recording position of the data. The recording position of the data to be read can be specified from the data ID recorded in the data list 120. The above index value is, for example, a value that correlates with the movement time (seek time) or the movement distance (seek distance) when the magnetic head 41 moves from the current position to the data recording position. The movement time (seek time) and the movement distance (seek distance) can be estimated from the recording position of each data by the RAO function provided in the tape drive 40. FIG. 5 illustrates moving distances as index values derived for each of
順序導出部402は、読み出し対象の各データについて導出した指標値について、当該データについて設定された優先度に基づいて重み付けを行う。重み付けは、読み出し対象の各データについて設定された優先度に応じて定められる重み係数を用いて行われる。順序導出部402は、優先度が相対的に高いデータについて、優先度が相対的に低いデータよりも小さい重み係数を用いて重み付けを行う。図5には、優先度1に対して重み係数0.5が適用され、優先度2に対して重み係数0.7が適用され、優先度3に対して重み係数1が適用された場合が例示されている。読み出し対象の各データについて設定された優先度は、データリスト120から特定することが可能である。
The order derivation unit 402 weights the index values derived for each data to be read based on the priority set for the data. Weighting is performed using a weighting coefficient determined according to the priority set for each data to be read. The order deriving unit 402 weights data with relatively high priority using a smaller weighting coefficient than data with relatively low priority. Figure 5 shows a case where a weighting factor of 0.5 is applied to
順序導出部402は、読み出し対象の各データについて導出した指標値と、当該データについて適用された重み係数とを乗算することで、重み付けされた指標値を導出する。図5には、各データについて導出された移動距離と、対応する重み係数とを乗算した補正値が、重み付けされた指標値として例示されている。 The order derivation unit 402 derives a weighted index value by multiplying the index value derived for each data to be read by the weighting coefficient applied to the data. In FIG. 5, a correction value obtained by multiplying the travel distance derived for each data by the corresponding weighting coefficient is illustrated as a weighted index value.
順序導出部402は、重み付けされた指標値が最も小さいデータを、1番目に読み出すデータとして決定する。図5に示す例では、補正値が最小であるデータ#4が1番目に読み出されるデータとして決定される。 The order deriving unit 402 determines the data with the smallest weighted index value as the data to be read first. In the example shown in FIG. 5, data #4 having the smallest correction value is determined as the data to be read first.
順序導出部402は、1番目に読み出すデータとして決定したデータの記録位置を、磁気ヘッド41の現在位置と仮定して、上記と同様に指標値を導出し、導出した指標値について優先度に基づく重み付けを行い、重み付けされた指標値に基づいて、2番目に読み出すデータを決定する。順序導出部402は、上記の処理を繰り返すことで、読み出し対象のデータの全てについて読み出し順序を決定する。順序導出部402は、導出した全データの読み出し順序を示す情報をサーバ10に送信する。 The order derivation unit 402 assumes that the recording position of the data determined as the first data to be read is the current position of the magnetic head 41, derives the index value in the same manner as described above, and calculates the derived index value based on the priority. Weighting is performed, and data to be read out second is determined based on the weighted index value. The order deriving unit 402 determines the read order for all the data to be read by repeating the above process. The order deriving unit 402 transmits information indicating the derived reading order of all data to the server 10.
読み出し部403は、サーバ10から発せられる読み出し指示に応じて、読み出し対象のデータを、順序導出部402によって導出された読み出し順序に従って磁気テープ30から読み出す。読み出し部403は磁気テープ30から読み出したデータをサーバ10に送信する。 The reading unit 403 reads data to be read from the magnetic tape 30 in accordance with the reading order derived by the order deriving unit 402 in response to a read instruction issued from the server 10 . The reading unit 403 transmits the data read from the magnetic tape 30 to the server 10.
図6は、テープドライブ40のプロセッサ43が、情報処理プログラム44を実行することによって実施される順序導出処理の流れの一例を示すフローチャートである。情報処理プログラム44は、例えば、サーバ10から順序導出指示が発せられた場合に実行される。 FIG. 6 is a flowchart illustrating an example of the sequence derivation process performed by the processor 43 of the tape drive 40 executing the information processing program 44. The information processing program 44 is executed, for example, when an order derivation instruction is issued from the server 10.
ステップS1において、取得部401は、サーバ10から順序導出指示と共に供給されるデータリスト120を取得する。 In step S1, the acquisition unit 401 acquires the data list 120 supplied from the server 10 together with the order derivation instruction.
ステップS2において、順序導出部402は、データの読み出し順序を指定する変数iに初期値である1を代入する。これにより、読み出し対象のデータのうち、読み出し順序が1番目となるデータを決定する処理が開始される。 In step S2, the order deriving unit 402 assigns an initial value of 1 to a variable i that specifies the data reading order. As a result, a process is started to determine which data is read first among the data to be read.
ステップS3において、順序導出部402は、読み出し対象の各データについて、当該データの記録位置に応じた指標値を導出する。読み出し対象のデータの記録位置は、データリスト120に記録されたデータID等から特定することが可能である。指標値は、例えば、磁気ヘッド41が現在位置からデータの記録位置まで移動する場合の移動時間(シーク時間)又は移動距離(シーク距離)に相関する値である。 In step S3, the order derivation unit 402 derives, for each data to be read, an index value according to the recording position of the data. The recording position of the data to be read can be specified from the data ID recorded in the data list 120. The index value is, for example, a value that correlates with the movement time (seek time) or movement distance (seek distance) when the magnetic head 41 moves from the current position to the data recording position.
ステップS4において、順序導出部402は、ステップS3において導出されたデータ毎の指標値について、当該データについて設定された優先度に基づいて重み付けを行う。重み付けは、読み出し対象の各データについて設定された優先度に応じて定められる重み係数を用いて行われる。順序導出部402は、優先度が相対的に高いデータについて、優先度が相対的に低いデータよりも小さい重み係数を用いて重み付けを行う。順序導出部402は、読み出し対象の各データについて導出した指標値と、当該データについて適用された重み係数とを乗算することで、重み付けされた指標値を導出する。 In step S4, the order derivation unit 402 weights the index value for each data derived in step S3 based on the priority set for the data. Weighting is performed using a weighting coefficient determined according to the priority set for each data to be read. The order deriving unit 402 weights data with relatively high priority using a smaller weighting coefficient than data with relatively low priority. The order derivation unit 402 derives a weighted index value by multiplying the index value derived for each data to be read by the weighting coefficient applied to the data.
ステップS5において、順序導出部402は、重み付けされた指標値に基づいて、読み出し対象の複数のデータのうち、読み出し順序がi番目となるデータを決定する。ここでは、重み付けされた指標値が最も小さいデータが1番目に読み出すデータとして決定される。 In step S5, the order deriving unit 402 determines the data whose reading order is i-th among the plurality of data to be read based on the weighted index value. Here, the data with the smallest weighted index value is determined as the data to be read first.
ステップS6において、順序導出部402は、読み出し対象のデータの全てについて読み出し順序を決定した否かを判定する。読み出し対象のデータの全てについて読み出し順序を決定していないと判定された場合、処理はステップS7に移行され、読み出し対象のデータの全てについて読み出し順序を決定したと判定された場合、処理はステップS8に移行される。 In step S6, the order deriving unit 402 determines whether the read order has been determined for all of the data to be read. If it is determined that the read order has not been determined for all of the data to be read, the process moves to step S7, and if it is determined that the read order has been determined for all of the data to be read, the process moves to step S8. will be moved to
ステップS7において、順序導出部402は、データの読み出し順序を指定する変数iをインクリメントして、処理をステップS3に戻す。これにより、読み出し順序が2番目となるデータを決定する処理が開始される。ステップS3からステップS7までの処理は、読み出し対象のデータの全てについて読み出し順序が決定されるまで繰り返される。 In step S7, the order deriving unit 402 increments a variable i that specifies the data reading order, and returns the process to step S3. This starts the process of determining the second data to be read out. The processes from step S3 to step S7 are repeated until the read order is determined for all data to be read.
ステップS8において、順序導出部402は、読み出し対象の全てのデータについて導出した読み出し順序を示す情報をサーバ10に送信する。この情報を受信したサーバ10は、読み出し対象のデータの読み出し指示をテープドライブ40に対して発する。 In step S8, the order deriving unit 402 transmits information indicating the read order derived for all data to be read to the server 10. Having received this information, the server 10 issues an instruction to the tape drive 40 to read the data to be read.
ステップS9において、読み出し部403は、サーバ10から読み出し指示が発せられたか否かを判定する。サーバ10から読み出し指示が発せられたと判定された場合、処理はステップS10に移行される。 In step S9, the reading unit 403 determines whether a reading instruction has been issued from the server 10. If it is determined that a read instruction has been issued from the server 10, the process moves to step S10.
ステップS10において、読み出し部403は、ステップS3からステップS7までの繰り返し処理によって導出された読み出し順序に従って読み出し対象のデータを磁気テープ30から読み出し、読み出したデータをサーバ10に送信する。 In step S10, the reading unit 403 reads data to be read from the magnetic tape 30 in accordance with the reading order derived through the repeated processing from step S3 to step S7, and transmits the read data to the server 10.
図7Aは、読み出し対象のデータ#1~#6について、読み出しの優先度を考慮せずに導出した読み出し順序に従って読み出しを行う場合の磁気ヘッド41の移動経路の一例を示す図である。図7Bは、読み出し対象のデータ#1~#6について、読み出しの優先度を考慮して導出した読み出し順序に従って読み出しを行う場合の磁気ヘッド41の移動経路の一例を示す図である。図7A及び図7Bには、それぞれ、順序導出アルゴリズムとして最近傍法を用いる場合が例示されている。また、読み出し対象のデータ#1~#6の読み出し順序を示す値が示されている。
FIG. 7A is a diagram illustrating an example of a moving path of the magnetic head 41 when
優先度を考慮しない場合には、磁気ヘッド41の現在位置から最も近いデータが順次読み出される。すなわち、図7Aに示すように、データ#1、#2、#3、#4、#5、#6の順で読み出される。一方、優先度を考慮する場合、優先度に基づいて重み付けされた指標値が最も小さいデータが順次読み出される。図7Bには、磁気ヘッド41の移動時間又は移動距離に相関する指標値について優先度に基づく重み付けを行った結果、データ#5の読み出し順序が1番目に設定された場合が例示されている。
If the priority is not taken into account, the data closest to the current position of the magnetic head 41 is sequentially read. That is, as shown in FIG. 7A,
以上のように、開示の技術の実施形態に係るテープドライブ40が備えるプロセッサ43は、磁気テープ30に記録され、優先度が設定された読み出し対象の複数のデータについて、所定のアルゴリズムを用いて読み出し順序を導出する場合に、アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値について、優先度に基づいて重み付けを行い、重み付けされた指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する。指標値は、磁気ヘッド41が、当該データの記録位置まで移動する場合の移動時間又は移動距離に相関する値である。プロセッサ43は、優先度が相対的に高いデータについて、優先度が相対的に低いデータよりも小さい重み係数を用いて重み付けを行う。 As described above, the processor 43 included in the tape drive 40 according to the embodiment of the disclosed technology uses a predetermined algorithm to read a plurality of pieces of data to be read that are recorded on the magnetic tape 30 and have priorities set. When deriving the order, the index values according to the recording position of each data to be read used when determining the read order using an algorithm are weighted based on the priority, and the index values are calculated based on the weighted index values. Then, the reading order of the plurality of data to be read is derived. The index value is a value that correlates with the moving time or moving distance when the magnetic head 41 moves to the recording position of the data. The processor 43 weights data with relatively high priority using a smaller weighting coefficient than data with relatively low priority.
本実施形態に係るテープドライブ40によれば、アルゴリズムを用いて読み出し順序を決定する際に用いる指標値について、優先度に応じて重み付けされた指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出するので、読み出しの優先度を考慮して読み出し順序を決定する場合に、位置合わせ時間が著しく長くなることを回避することが可能となる。 According to the tape drive 40 according to the present embodiment, reading of a plurality of data to be read is performed based on the index value weighted according to the priority for use in determining the read order using an algorithm. Since the order is derived, it is possible to avoid a significant increase in alignment time when determining the readout order in consideration of the readout priority.
なお、本実施形態においては、順序導出アルゴリズムを用いた読み出し順序の導出を、テープドライブ40が行う場合を例示したが、これをサーバ10が行ってもよい。また、本実施形態においては、順序導出アルゴリズムとして最近傍法を用いる場合を例示したが、他のアルゴリズムを用いることも可能である。 Note that in this embodiment, a case has been exemplified in which the tape drive 40 derives the read order using the order derivation algorithm, but the server 10 may also perform this. Further, in this embodiment, the case where the nearest neighbor method is used as the order derivation algorithm is exemplified, but it is also possible to use other algorithms.
上記の各実施形態において、例えば、取得部401、順序導出部402及び読み出し部403といった各種の処理を実行する処理部(processing unit)のハードウェア的な構造としては、次に示す各種のプロセッサ(processor)を用いることができる。上記各種のプロセッサには、前述したように、ソフトウェア(プログラム)を実行して各種の処理部として機能する汎用的なプロセッサであるCPUに加えて、FPGA等の製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス(Programmable Logic Device:PLD)、ASIC(Application Specific Integrated Circuit)等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が含まれる。 In each of the above embodiments, the hardware structure of a processing unit that executes various processes, such as the acquisition unit 401, order derivation unit 402, and readout unit 403, includes the following various processors ( processor) can be used. As mentioned above, the various processors mentioned above include the CPU, which is a general-purpose processor that executes software (programs) and functions as various processing units, as well as processors such as FPGAs whose circuit configuration can be changed after manufacturing. These include programmable logic devices (PLDs), ASICs (Application Specific Integrated Circuits), and other specialized electrical circuits that are processors with circuit configurations specifically designed to execute specific processes.
1つの処理部は、これらの各種のプロセッサのうちの1つで構成されてもよいし、同種又は異種の2つ以上のプロセッサの組み合わせ(例えば、複数のFPGAの組み合わせや、CPUとFPGAとの組み合わせ)で構成されてもよい。また、複数の処理部を1つのプロセッサで構成してもよい。 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 multiple FPGAs, or a combination of a CPU and an FPGA). combination). Further, the plurality of processing units may be configured with one 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.
また、上記実施形態では、情報処理プログラム44がメモリ45に予め記憶(インストール)されている態様を説明したが、これに限定されない。情報処理プログラム44は、CD-ROM(Compact Disc Read Only Memory)、DVD-ROM(Digital Versatile Disc Read Only Memory)、及びUSB(Universal Serial Bus)メモリ等の記録媒体に記録された形態で提供されてもよい。また、情報処理プログラム44は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。 Further, in the embodiment described above, a mode has been described in which the information processing program 44 is stored (installed) in the memory 45 in advance, but the present invention is not limited to this. The information processing program 44 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 44 may be downloaded from an external device via a network.
1 ストレージシステム
10 サーバ
20 テープライブラリ
30 磁気テープ
31 磁気テープカートリッジ
40 テープドライブ
41 磁気ヘッド
42 制御部
43 プロセッサ
44 情報処理プログラム
45 メモリ
120 データリスト
401 取得部
402 順序導出部
403 読み出し部
1 Storage system 10 Server 20 Tape library 30 Magnetic tape 31 Magnetic tape cartridge 40 Tape drive 41 Magnetic head 42 Control unit 43 Processor 44 Information processing program 45 Memory 120 Data list 401 Acquisition unit 402 Sequence derivation unit 403 Reading unit
Claims (5)
前記プロセッサは、磁気テープに記録され、読み出しの優先度が設定された読み出し対象の複数のデータについて、所定のアルゴリズムを用いて読み出し順序を導出する場合に、
前記アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値について、前記優先度に基づいて重み付けを行い、
重み付けされた前記指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する
情報処理装置。 An information processing device comprising at least one processor,
When the processor derives a read order using a predetermined algorithm for a plurality of pieces of data to be read that are recorded on a magnetic tape and have read priorities set,
weighting index values according to the recording position of each data to be read used when determining the read order using the algorithm based on the priority;
An information processing device that derives a reading order of a plurality of data to be read based on the weighted index value.
請求項1に記載の情報処理装置。 The information processing apparatus according to claim 1, wherein the index value is a value that correlates with a moving time or a moving distance when the head moves to the recording position of the data.
請求項1または請求項2に記載の情報処理装置。 The information processing apparatus according to claim 1 or 2, wherein the processor performs the weighting on the data having the relatively high priority using a smaller weighting coefficient than the data having the relatively low priority.
前記アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値を前記優先度に基づいて重み付けを行い、
重み付けされた前記指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する
処理を情報処理装置が備える少なくとも1つのプロセッサが実行する情報処理方法。 When deriving the read order using a predetermined algorithm for multiple pieces of data to be read that are recorded on magnetic tape and have read priorities set,
weighting index values according to the recording position of each data to be read, which are used when determining the read order using the algorithm, based on the priority;
An information processing method in which at least one processor included in an information processing apparatus executes a process of deriving a reading order of a plurality of data to be read based on the weighted index value.
前記アルゴリズムを用いて読み出し順序を決定する際に用いる読み出し対象の各データの記録位置に応じた指標値を前記優先度に基づいて重み付けを行い、
重み付けされた前記指標値に基づいて、読み出し対象の複数のデータの読み出し順序を導出する
処理を情報処理装置が備える少なくとも1つのプロセッサに実行させるための情報処理プログラム。 When deriving the read order using a predetermined algorithm for multiple pieces of data to be read that are recorded on magnetic tape and have read priorities set,
weighting index values according to the recording position of each data to be read, which are used when determining the read order using the algorithm, based on the priority;
An information processing program for causing at least one processor included in an information processing apparatus to execute a process of deriving a reading order of a plurality of data to be read based on the weighted index value.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022032117A JP2023128061A (en) | 2022-03-02 | 2022-03-02 | Information processing apparatus, information processing method, and information processing program |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2022032117A JP2023128061A (en) | 2022-03-02 | 2022-03-02 | Information processing apparatus, information processing method, and information processing program |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2023128061A true JP2023128061A (en) | 2023-09-14 |
Family
ID=87972726
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2022032117A Pending JP2023128061A (en) | 2022-03-02 | 2022-03-02 | Information processing apparatus, information processing method, and information processing program |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2023128061A (en) |
-
2022
- 2022-03-02 JP JP2022032117A patent/JP2023128061A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TW201941189A (en) | Recording device, reading device, recording method, recording program storage medium, reading method, reading program storage medium, and magnetic tape | |
| US20040260862A1 (en) | Adaptive migration planning and execution | |
| JP2023128061A (en) | Information processing apparatus, information processing method, and information processing program | |
| CN109445715B (en) | Bad block processing method and device for combined block | |
| US11456015B2 (en) | Derivation device, derivation method, derivation program, and magnetic tape | |
| JP7321279B2 (en) | Recording device, recording method, recording program, and magnetic tape | |
| JP7167192B2 (en) | Recording device, recording method, recording program, and magnetic tape | |
| JP2023128062A (en) | Information processing apparatus, information processing method, and information processing program | |
| US11556266B2 (en) | Systems and methods for object migration in storage devices | |
| JP2023117856A (en) | Information processing device, information processing method, and information processing program | |
| US20220413730A1 (en) | Information processing device, information processing method, and information processing program | |
| WO2021054243A1 (en) | Recording device, recording method, recording program, and magnetic tape | |
| US20230186945A1 (en) | Information processing apparatus, information processing method, and information processing program | |
| US20240094935A1 (en) | Information processing apparatus, information processing method, and information processing program | |
| US20230064391A1 (en) | Information processing apparatus, information processing method, and information processing program | |
| US20230065229A1 (en) | Information processing apparatus, information processing method, and information processing program | |
| US20220382479A1 (en) | Information processing apparatus, information processing method, and information processing program | |
| JP2023123220A (en) | Information processing device, information processing method, information processing program | |
| JP2024035507A (en) | Information processing device, information processing method, and information processing program | |
| WO2022049831A1 (en) | Information processing device, information processing method, and information processing program | |
| WO2022044435A1 (en) | Information processing device, information processing method, and information processing program | |
| JP2023064456A (en) | Information processing device, information processing method, and information processing program | |
| JP2023063950A (en) | Information processing device, information processing method, and information processing program | |
| WO2022163078A1 (en) | Information processing device, information processing method, and information processing program | |
| JP2024037470A (en) | Information processing device, information processing method, and information processing program |