(57)【要約】  記録装置は、記録媒体上の仮想的な異なるブロック間の位置の関連度を導出する第１導出部と、記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出する第２導出部と、位置の関連度及びデータ間の関連度の差を用いて、複数のデータそれぞれを記録するブロックを導出する第３導出部と、複数のデータそれぞれについて第３導出部により導出されたブロックに従って、複数のデータを記録媒体に記録する制御を行う制御部と、を備える。
2020158463.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体上の仮想的な異なるブロック間の位置の関連度を導出する第１導出部と、
前記記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出する第２導出部と、
前記位置の関連度及び前記データ間の関連度の差を用いて、前記複数のデータそれぞれを記録する前記ブロックを導出する第３導出部と、
前記複数のデータそれぞれについて前記第３導出部により導出されたブロックに従って、前記複数のデータを前記記録媒体に記録する制御を行う制御部と、
を備えた記録装置。
【請求項２】
前記位置の関連度は、前記記録媒体に記録されたデータを読み取る再生素子が予め定められた位置に存在する場合における、前記異なるブロックに記録されたデータを読み取るためにかかる時間が短いほど大きい値であり、
前記データ間の関連度は、前記複数のデータが並行して読み出される可能性が高いほど大きい値であり、
前記第３導出部は、前記差に応じた値が最小となる前記ブロックを導出する
請求項１に記載の記録装置。
【請求項３】
前記位置の関連度は、前記再生素子が異なる複数の前記予め定められた位置の各々に存在する場合における前記時間の平均値が小さいほど大きい値である
請求項２に記載の記録装置。
【請求項４】
複数のデータに対して前記データ間の関連度が閾値以上のデータが存在する場合、前記閾値以上のデータを複製すると仮定して前記第１導出部は前記位置の関連度を導出し、かつ前記第２導出部は前記データ間の関連度を導出する
請求項１から請求項３の何れか１項に記載の記録装置。
【請求項５】
前記記録媒体は、磁気テープである
請求項１から請求項４の何れか１項に記載の記録装置。
【請求項６】
記録媒体上の仮想的な異なるブロック間の位置の関連度を導出し、
前記記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出し、
前記位置の関連度及び前記データ間の関連度の差を用いて、前記複数のデータそれぞれを記録する前記ブロックを導出し、
前記複数のデータそれぞれについて導出したブロックに従って、前記複数のデータを前記記録媒体に記録する制御を行う
ことを含む処理をコンピュータが実行する記録方法。
【請求項７】
記録媒体上の仮想的な異なるブロック間の位置の関連度を導出し、
前記記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出し、
前記位置の関連度及び前記データ間の関連度の差を用いて、前記複数のデータそれぞれを記録する前記ブロックを導出し、
前記複数のデータそれぞれについて導出したブロックに従って、前記複数のデータを前記記録媒体に記録する制御を行う
ことを含む処理をコンピュータに実行させるための記録プログラム。
【請求項８】
磁気テープであって、
前記磁気テープ上の仮想的な異なるブロック間の位置の関連度、及び前記磁気テープへの記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度の差を用いて導出された、前記複数のデータそれぞれを記録するブロックに従って、前記複数のデータが記録されるよう構成された、
磁気テープ。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は２０１９年１月２８日出願の日本出願第２０１９−０１２２５１号の優先権を主張すると共に、その全文を参照により本明細書に援用する。
本開示は、記録装置、記録方法、記録プログラム、及び磁気テープに関する。
【背景技術】
【０００２】
従来、記録対象のデータのヘッダ情報に基づいてデータのグループ分けを行い、同一のグループに属するデータを同一の記録媒体に記録する技術が開示されている（例えば、特開２０１４−１９１５２４号公報参照）。【０００３】
また、データのアクセス頻度に応じてデータのグループ分けを行い、アクセス頻度の高いグループから順に記録媒体に記録する技術が開示されている（例えば、特開平８−２６３３３５号公報参照）。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記文献に記載の技術では、記録対象の複数のデータのグループ分けを行い、グループ単位でデータを記録媒体に記録する技術であるため、１つのデータが複数のグループにまたがって属することに対応できない場合がある。そして、この場合、記録媒体に記録されたデータの読み取り時間を短縮することができない場合がある。【０００５】
本開示は、以上の事情を鑑みてなされたものであり、記録媒体に記録されたデータの読み取り時間を短縮することができる記録装置、記録方法、記録プログラム、及び磁気テープを提供する。
【課題を解決するための手段】
【０００６】
本開示の第１の態様は、記録装置であって、記録媒体上の仮想的な異なるブロック間の位置の関連度を導出する第１導出部と、記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出する第２導出部と、位置の関連度及びデータ間の関連度の差を用いて、複数のデータそれぞれを記録するブロックを導出する第３導出部と、複数のデータそれぞれについて第３導出部により導出されたブロックに従って、複数のデータを記録媒体に記録する制御を行う制御部と、を備える。【０００７】
なお、本態様の記録装置は、位置の関連度が、記録媒体に記録されたデータを読み取る再生素子が予め定められた位置に存在する場合における、異なるブロックに記録されたデータを読み取るためにかかる時間が短いほど大きい値であり、データ間の関連度が、複数のデータが並行して読み出される可能性が高いほど大きい値であり、第３導出部が、上記差に応じた値が最小となるブロックを導出してもよい。【０００８】
また、本態様の記録装置は、位置の関連度が、再生素子が異なる複数の予め定められた位置の各々に存在する場合における上記時間の平均値が小さいほど大きい値であってもよい。【０００９】
また、本態様の記録装置は、複数のデータに対してデータ間の関連度が閾値以上のデータが存在する場合、閾値以上のデータを複製すると仮定して第１導出部が位置の関連度を導出し、かつ第２導出部がデータ間の関連度を導出してもよい。【００１０】
また、本態様の記録装置は、記録媒体が、磁気テープであってもよい。【００１１】
本開示の第２の態様は、記録方法であって、記録媒体上の仮想的な異なるブロック間の位置の関連度を導出し、記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出し、位置の関連度及びデータ間の関連度の差を用いて、複数のデータそれぞれを記録するブロックを導出し、複数のデータそれぞれについて導出したブロックに従って、複数のデータを記録媒体に記録する制御を行う処理をコンピュータが実行するものである。【００１２】
本開示の第３の態様は、記録プログラムであって、記録媒体上の仮想的な異なるブロック間の位置の関連度を導出し、記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出し、位置の関連度及びデータ間の関連度の差を用いて、複数のデータそれぞれを記録するブロックを導出し、複数のデータそれぞれについて導出したブロックに従って、複数のデータを記録媒体に記録する制御を行う処理をコンピュータに実行させるためのものである。【００１３】
本開示の第４の態様は、磁気テープであって、磁気テープ上の仮想的な異なるブロック間の位置の関連度、及び磁気テープへの記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度の差を用いて導出された、複数のデータそれぞれを記録するブロックに従って、複数のデータが記録されるものである。【００１４】
本開示の第５の態様は、記録装置であって、コンピュータに実行させるための命令を記憶するメモリと、記憶された命令を実行するよう構成されたプロセッサと、を備え、プロセッサは、記録媒体上の仮想的な異なるブロック間の位置の関連度を導出し、記録媒体への記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度を導出し、位置の関連度及びデータ間の関連度の差を用いて、複数のデータそれぞれを記録するブロックを導出し、複数のデータそれぞれについて導出したブロックに従って、複数のデータを記録媒体に記録する制御を行う。
【発明の効果】
【００１５】
本開示によれば、記録媒体に記録されたデータの読み取り時間を短縮することができる。
【図面の簡単な説明】
【００１６】
【図１】各実施形態に係る記録読取システムの構成の一例を示すブロック図である。
【図２】各実施形態に係る磁気テープの一例を示す平面図である。
【図３】各実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
【図４】各実施形態に係る読み取りログの一例を示す図である。
【図５】各実施形態に係る情報処理装置の機能的な構成の一例を示すブロック図である。
【図６】ブロック間関連度の導出処理を説明するための図である。
【図７】ブロック間関連度の一例を示す図である。
【図８】データ間関連度の一例を示す図である。
【図９】ブロック間関連度に基づくネットワーク構造の一例を示す模式図である。
【図１０】データ間関連度に基づくネットワーク構造の一例を示す模式図である。
【図１１】ネットワーク構造の差の一例を示す図である。
【図１２】データ間関連度に基づくネットワーク構造の一例を示す模式図である。
【図１３】データの配置先の仮想ブロックを変更する順番の一例を示す図である。
【図１４】データの記録順を説明するための図である。
【図１５】第１実施形態に係る記録処理の一例を示すフローチャートである。
【図１６】データ間関連度の一例を示す図である。
【図１７】ブロック間関連度の一例を示す図である。
【図１８】ブロック間関連度に基づくネットワーク構造の一例を示す模式図である。
【図１９】データ間関連度の一例を示す図である。
【図２０】データ間関連度に基づくネットワーク構造の一例を示す模式図である。
【図２１】ネットワーク構造の差の一例を示す図である。
【図２２】データ間関連度に基づくネットワーク構造の一例を示す模式図である。
【図２３】ネットワーク構造の差の一例を示す図である。
【図２４】データ間関連度に基づくネットワーク構造の一例を示す模式図である。
【図２５】ネットワーク構造の差の一例を示す図である。
【図２６】第２実施形態に係る記録処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００１７】
以下、図面を参照して、本開示の技術を実施するための形態例を詳細に説明する。
【００１８】
［第１実施形態］
まず、図１を参照して、本実施形態に係る記録読取システム１０の構成を説明する。図１に示すように、記録読取システム１０は、情報処理装置１２及びテープライブラリ１４を含む。テープライブラリ１４は、情報処理装置１２に接続される。また、情報処理装置１２と複数台の端末１６とは、ネットワークＮに接続され、ネットワークＮを介して通信が可能とされる。
【００１９】
テープライブラリ１４は、複数のスロット（図示省略）及び複数のテープドライブ１８を備え、各スロットには記録媒体の一例としての磁気テープＴが格納される。なお、磁気テープＴの例としては、ＬＴＯ（Linear Tape-Open）テープが挙げられる。
【００２０】
テープドライブ１８は、磁気ヘッドＨを備えている。磁気ヘッドＨは、磁気テープＴに対するデータの記録及び再生を行う記録再生素子ＲＷＤを備えている。記録再生素子ＲＷＤが開示の技術に係る記録媒体に記録されたデータを読み取る再生素子の一例である。
【００２１】
情報処理装置１２により磁気テープＴに対するデータの書き込み又は読み取りを行う場合、書き込み又は読み取り対象の磁気テープＴがスロットから何れかのテープドライブ１８にロードされる。テープドライブ１８にロードされた磁気テープＴに対する情報処理装置１２による書き込み又は読み取りが完了すると、磁気テープＴは、テープドライブ１８から元々格納されていたスロットにアンロードされる。
【００２２】
次に、図２を参照して、本実施形態に係る磁気テープＴの構成を説明する。図２に示すように、磁気テープＴには、複数本のサーボバンドＳＢが磁気テープＴの長手方向に沿って形成されている。なお、磁気テープＴの長手方向は、磁気テープＴの引き出し方向に相当する。また、複数本のサーボバンドＳＢは、磁気テープＴの幅方向に等間隔に並ぶように形成されている。サーボバンドＳＢには、磁気ヘッドＨの幅方向の位置決めを行うためのサーボパターンが記録される。
【００２３】
また、隣り合うサーボバンドＳＢの間には、データが記録されるデータバンドＤＢが形成されている。また、データバンドＤＢは、記録再生素子ＲＷＤによるデータの記録及び再生が行われる複数のデータトラックＤＴを備える。
【００２４】
次に、図３を参照して、本実施形態に係る情報処理装置１２のハードウェア構成を説明する。図３に示すように、情報処理装置１２は、ＣＰＵ（Central Processing Unit）２０、一時記憶領域としてのメモリ２１、及び不揮発性の記憶部２２を含む。また、情報処理装置１２は、液晶ディスプレイ等の表示部２３、キーボードとマウス等の入力部２４、ネットワークＮに接続されるネットワークＩ／Ｆ（InterFace）２５、及びテープライブラリ１４が接続される外部Ｉ／Ｆ２６を含む。ＣＰＵ２０、メモリ２１、記憶部２２、表示部２３、入力部２４、ネットワークＩ／Ｆ２５、及び外部Ｉ／Ｆ２６は、バス２７に接続される。
【００２５】
記憶部２２は、ＨＤＤ（Hard Disk Drive）、ＳＳＤ（Solid State Drive）、及びフラッシュメモリ等によって実現される。記憶媒体としての記憶部２２には、記録プログラム３０が記憶される。ＣＰＵ２０は、記憶部２２から記録プログラム３０を読み出してからメモリ２１に展開し、展開した記録プログラム３０を実行する。なお、情報処理装置１２の例としては、サーバコンピュータ等が挙げられる。また、情報処理装置１２が、磁気テープＴにデータを記録する記録装置の一例である。磁気テープＴに記録するデータの例としては、ＤＩＣＯＭ（Digital Imaging and COmmunications in Medicine）等の予め定められた規格に従った医用データが挙げられる。
【００２６】
また、記憶部２２には、各端末１６により読み取られるデータ群が記憶される。また、記憶部２２には、読み取りログ３２が記憶される。図４に、読み取りログ３２の一例を示す。図４に示すように、読み取りログ３２には、端末１６により読み取られたデータの識別情報（図４の例では「読み取り対象」と表記）と、データが読み取られた日時とが対応付けられて記録される。なお、読み取りログ３２におけるデータが読み取られた日時は、例えば、データの読み取りが開始された日時でもよいし、データの読み取りが完了した日時でもよい。また、読み取りログ３２におけるデータが読み取られた日時は、データの読み取りが開始された日時、及びデータの読み取りが完了した日時の双方でもよい。
【００２７】
次に、図５を参照して、本実施形態に係る情報処理装置１２の機能的な構成について説明する。図５に示すように、情報処理装置１２は、第１導出部４０、第２導出部４２、第３導出部４４、及び制御部４６を含む。ＣＰＵ２０が記録プログラム３０を実行することにより、第１導出部４０、第２導出部４２、第３導出部４４、及び制御部４６として機能する。
【００２８】
第１導出部４０は、磁気テープＴ上の仮想的な異なるブロック間の位置の関連度（以下、「ブロック間関連度」という）を導出する。図６を参照して、第１導出部４０によるブロック間関連度の導出処理の具体例を説明する。
【００２９】
まず、第１導出部４０は、記録対象とする複数のデータが記録可能な分のデータトラックＤＴを複数の仮想的なブロック（以下、「仮想ブロック」という）に分割する。図６では、第１導出部４０が隣り合う２本のデータトラックＤＴを複数の仮想ブロックに分割した例を示している。なお、仮想ブロックのサイズは特に限定されない。例えば、第１導出部４０は、仮想ブロックのサイズを記録対象とする複数のデータのうちの最小サイズのデータのサイズに合わせてもよいし、最大サイズのデータのサイズに合わせてもよい。また、例えば、第１導出部４０は、仮想ブロックのサイズを記録対象とする複数のデータの平均サイズに合わせてもよい。まだ、この場合のデータのサイズは、データを磁気テープＴに記録する場合のデータの圧縮率を考慮したサイズであってもよい。
【００３０】
そして、第１導出部４０は、分割した仮想ブロックのブロック間関連度を導出する。本実施形態では、第１導出部４０は、ブロック間関連度として、記録再生素子ＲＷＤを含む磁気ヘッドＨが予め定められた位置に存在する場合における、ブロック間関連度の導出対象の仮想ブロックに記録されたデータを読み取るためにかかる時間が短いほど大きい値を導出する。ここでは、説明を分かりやすくするために、図６に示す４つの仮想ブロックＡ〜Ｄのブロック間関連度の導出処理の具体例を説明する。
【００３１】
第１導出部４０は、仮想ブロックＡ〜Ｄのうちの２つの仮想ブロックの各組み合わせについて、２つの仮想ブロックに記録されたデータを読み取るためにかかる時間（以下、「ブロック間読み取り時間」という）を導出する。本実施形態では、第１導出部４０は、１つの仮想ブロックを移動するためにかかる時間及び隣り合うデータトラックＤＴに移動する時間等のデータを読み取るための動作単位毎にかかる時間を１単位時間としてブロック間読み取り時間を導出する。
【００３２】
具体的な一例として、磁気ヘッドＨが図６に示す位置Ｈ１に存在し、かつ仮想ブロックＡ、Ｃに記録されたデータを読み取るためにかかる時間の導出処理を説明する。この場合、磁気ヘッドＨが位置Ｈ１から位置Ｈ２に移動するために１単位時間がかかり、仮想ブロックＡに記録されたデータを読み取るために１単位時間がかかり、仮想ブロックＣに記録されたデータを読み取るために１単位時間がかかる。従って、仮想ブロックＡ、Ｃのブロック間読み取り時間は「３」（＝１＋１＋１）となる。
【００３３】
更に、具体的な一例として、磁気ヘッドＨが図６に示す位置Ｈ１に存在し、かつ仮想ブロックＡ、Ｂに記録されたデータを読み取るためにかかる時間の導出処理を説明する。この場合、磁気ヘッドＨが位置Ｈ１から位置Ｈ２に移動するために１単位時間がかかり、仮想ブロックＡに記録されたデータを読み取るために１単位時間がかかる。そして、磁気ヘッドＨを停止し、かつ磁気ヘッドＨの進行方向を切り替えるために１単位時間がかかり、隣り合うデータトラックＤＴに磁気ヘッドＨを移動させるために１単位時間がかかり、仮想ブロックＢに記録されたデータを読み取るために１単位時間がかかる。従って、仮想ブロックＡ、Ｂのブロック間読み取り時間は「５」（＝１＋１＋１＋１＋１）となる。
【００３４】
第１導出部は、以上のブロック間読み取り時間の導出処理を、異なる複数の位置Ｈ１〜Ｈ１０の各々に磁気ヘッドＨが存在する場合について行う。図６に示す位置Ｈ１〜Ｈ１０の各々に磁気ヘッドＨが存在する場合における、仮想ブロックの各組み合わせのブロック間読み取り時間の一覧を図７に示す。なお、ブロック間読み取り時間は、予め実機を用いて測定した実測値でもよい。
【００３５】
次に、第１導出部４０は、仮想ブロックの各組み合わせについて、導出したブロック間読み取り時間の平均値を導出する。そして、第１導出部４０は、仮想ブロックの各組み合わせについて導出した平均値に対し、最大値を「０」とし、最小値を「１」として正規化することによって、ブロック間関連度を導出する。すなわち、ブロック間関連度は、上記平均値が小さいほど大きい値となる。図７には、第１導出部４０により導出された平均値及びブロック間関連度も示されている。図７の例では、仮想ブロックＡと仮想ブロックＢとのブロック間関連度は、０．５２５６と導出されている。
【００３６】
第２導出部４２は、磁気テープＴへの記録対象とする複数のデータが並行して読み出される可能性を表すデータ間の関連度（以下、「データ間関連度」という）を導出する。本実施形態では、第２導出部４２は、磁気テープＴへの記録対象とする複数のデータが並行して読み出される可能性が高いほど大きい値としてデータ間関連度を導出する。以下、具体的な一例として、データａ〜データｄの４つのデータが磁気テープＴへの記録対象とされる場合について説明する。
【００３７】
第２導出部４２は、読み取りログ３２を参照し、２つのデータが予め定められた期間（例えば、１０秒）以内に読み取られている場合、その２つのデータが並行して読み取られたものとして、並行して読み取られた回数（以下、「並行読み取り回数」という）を数える。なお、この場合の上記予め定められた期間は、システムの特性に応じて決めてもよいし、例えば、データのサイズが大きくなるほど長い期間としてもよい。図８の例では、データａとデータｂとが４回並行して読み取られたことを表している。
【００３８】
そして、第２導出部４２は、各データの組み合わせについて数えた並行読み取り回数に対し、最小値を「０」とし、最大値を「１」として正規化することによって、データ間関連度を導出する。すなわち、データ間関連度は、並行読み取り回数が多いほど大きい値となる。図８の例では、データａとデータｂとのデータ間関連度は、０．１４２９と導出されている。
【００３９】
第３導出部４４は、第１導出部４０により導出されたブロック間関連度及び第２導出部４２により導出されたデータ間関連度の差を用いて、記録対象とする複数のデータそれぞれを記録する仮想ブロックを導出する。本実施形態では、第３導出部４４は、ブロック間関連度及びデータ間関連度の差に応じた値が最小となる仮想ブロックを導出する。以下、第３導出部４４による導出処理の詳細を説明する。
【００４０】
図９に、第１導出部４０により導出されたブロック間関連度に基づいて、各仮想ブロックのブロック間関連度をネットワーク構造として表した模式図の一例を示す。図９の例では、図７に示したブロック間関連度が高いほど、仮想ブロック間を結ぶ直線が太くなるネットワーク構造とされている。
【００４１】
図１０に、記録対象とする複数のデータのそれぞれを、仮想ブロックの何れかに記録すると仮定した場合のデータ間関連度をネットワーク構造として表した模式図の一例を示す。図１０の例では、仮想ブロックＡにデータａを記録し、仮想ブロックＢにデータｂを記録し、仮想ブロックＣにデータｃを記録し、仮想ブロックＤにデータｄを記録すると仮定した場合のネットワーク構造を示している。また、図１０の例では、図８に示したデータ間関連度が高いほど、データ間を結ぶ直線が太くなるネットワーク構造とされている。
【００４２】
図９に示すブロック間関連度に基づくネットワーク構造と図１０に示すデータ間関連度に基づくネットワーク構造との類似度が高くなるほど、データ間関連度が高いデータがブロック間関連度の高いブロックに記録される可能性が高くなると考えられる。すなわち、上記類似度が高くなるほど、並行して読み出される可能性が高い複数のデータが、データを読み取るためにかかる時間が短くなる位置のブロックに書き込まれる可能性が高くなると考えられる。
【００４３】
そこで、本実施形態では、第３導出部４４は、ブロック間関連度に基づくネットワーク構造とデータ間関連度に基づくネットワーク構造との差（以下、「ネットワーク構造差」という）が最小となる複数のデータと複数の仮想ブロックとの組み合わせを導出する。この組み合わせを求めることにより、第３導出部４４は、記録対象とする複数のデータそれぞれを記録する仮想ブロックを導出する。このネットワーク構造差が、ブロック間関連度とデータ間関連度との差に応じた値に相当する。
【００４４】
まず、第３導出部４４は、各データ間のデータ間関連度と、対応する仮想ブロック間のブロック間関連度とを用いて、以下の（１）式に従って、ネットワーク構造におけるノード間の差Ｄを導出する。なお、（１）式におけるｍａｘ（ａ、ｂ）は、ａ及びｂのうちの最大値を表し、ａ＾２はａの２乗を表す。
Ｄ＝ｍａｘ（０、（データ間関連度−ブロック間関連度））＾２・・・（１）
図９及び図１０の例における差Ｄを図１１に示す。そして、第３導出部４４は、ネットワーク構造差として、差Ｄの平均値を導出する。図１１の例では、ネットワーク構造差は、以下の（２）式により、０．０５２となる。
（０＋０＋０．０８４＋０＋０＋０．２２５）÷６＝０．０５２・・・（２）
【００４５】
第３導出部４４は、記録対象とする複数のデータと配置先の仮想ブロックとの全ての組み合わせについてネットワーク構造差を導出し、ネットワーク構造差が最小となる複数のデータと、複数のデータの配置先の仮想ブロックとの組み合わせを導出する。すなわち、第３導出部４４は、ネットワーク構造差が最小となる上記組み合わせを導出することによって、複数のデータそれぞれを記録する仮想ブロックを導出する。例えば、図１０の例に代えて、仮想ブロックＡにデータｄを記録し、仮想ブロックＢにデータｂを記録し、仮想ブロックＣにデータｃを記録し、仮想ブロックＤにデータａを記録すると仮定した場合のネットワーク構造の例を図１２に示す。図１２の例では、ネットワーク構造差は０．０１４となる。
【００４６】
なお、第３導出部４４は、全ての組み合わせについてネットワーク構造差を導出しなくてもよい。例えば、第３導出部４４は、差Ｄが最大となる２つのデータの何れかの配置先の仮想ブロックを変更してネットワーク構造差を導出し、導出したネットワーク構造差が最小となる組み合わせを導出してもよい。なお、この場合、第３導出部４４は、この導出する処理をネットワーク構造差が収束するまで繰り返してもよいし、予め定められた回数繰り返してもよい。
【００４７】
この場合、図９及び図１０の例では、図１３に示すように、第３導出部４４は、差Ｄが最大となるデータｃ及びデータｄのうち、データｃの配置先をデータａの配置先と入れ替えてネットワーク構造差を導出する。同様に、第３導出部４４は、差Ｄが最大となるデータｃ及びデータｄのうち、データｃの配置先をデータｂの配置先と入れ替えてネットワーク構造差を導出する。また、第３導出部４４は、差Ｄが最大となるデータｃ及びデータｄのうち、データｄの配置先をデータａの配置先と入れ替えてネットワーク構造差を導出する。更に、第３導出部４４は、差Ｄが最大となるデータｃ及びデータｄのうち、データｄの配置先をデータｂの配置先と入れ替えてネットワーク構造差を導出する。
【００４８】
このように、第３導出部４４が、差Ｄが最大となる２つのデータの何れかの配置先を変更してネットワーク構造差を導出することによって、変更後のネットワーク構造差は変更前のネットワーク構造差よりも小さくなる可能性が高い。従って、この場合、計算量を低減することができる。
【００４９】
制御部４６は、記録対象とする複数のデータそれぞれについて第３導出部４４により導出された仮想ブロックに従って、複数のデータを磁気テープＴに記録する制御を行う。具体的には、例えば、仮想ブロックＡ〜Ｆが図１４に示すような配置の仮想的なブロックとされ、磁気ヘッドＨの進行方向が矢印Ｙで示される方向の場合について説明する。この場合、制御部４６は、記録対象とする複数のデータそれぞれを、磁気ヘッドＨの通過順である仮想ブロックＡ、Ｃ、Ｅ、Ｆ、Ｄ、Ｂに対応する順番で磁気テープＴに記録する制御を行う。
【００５０】
次に、図１５を参照して、本実施形態に係る情報処理装置１２の作用を説明する。ＣＰＵ２０が記録プログラム３０を実行することによって、図１５に示す記録処理が実行される。図１５に示す記録処理は、例えば、ユーザにより入力部２４を介してデータの記録指示が入力された場合に実行される。
【００５１】
図１５のステップＳ１０で、第２導出部４２は、前述したように、読み取りログ３２を参照し、並行読み取り回数を数える。そして、第２導出部４２は、前述したように、各データの組み合わせについて数えた並行読み取り回数に対し、最小値を「０」とし、最大値を「１」として正規化することによって、データ間関連度を導出する。
【００５２】
ステップＳ１２で、第１導出部４０は、前述したように、記録対象とするデータ群が記録可能な分のデータトラックＤＴを複数の仮想ブロックに分割し、分割した仮想ブロックのブロック間関連度を導出する。
【００５３】
ステップＳ１４で、第３導出部４４は、前述したように、ステップＳ１２で導出されたブロック間関連度及びステップＳ１０で導出されたデータ間関連度の差を用いて、記録対象とする複数のデータそれぞれを記録する仮想ブロックを導出する。
【００５４】
ステップＳ１６で、制御部４６は、前述したように、記録対象とする複数のデータそれぞれについてステップＳ１４で導出された仮想ブロックに従って、複数のデータを磁気テープＴに記録する制御を行う。ステップＳ１６の処理が終了すると、本記録処理が終了する。
【００５５】
以上説明したように、本実施形態によれば、ブロック間関連度及びデータ間関連度の差を用いて、複数のデータそれぞれを記録する仮想ブロックを導出し、導出した仮想ブロックに従って複数のデータを磁気テープＴに記録する。従って、並行して読み取られる可能性が高いデータを、磁気テープＴ上の関連度が高い位置に記録することができる結果、記録媒体に記録されたデータの読み取り時間を短縮することができる。
【００５６】
［第２実施形態］
開示の技術の第２実施形態を説明する。なお、本実施形態に係る記録読取システム１０の構成（図１参照）及び情報処理装置１２のハードウェア構成（図３参照）は、第１実施形態と同様であるため、説明を省略する。
【００５７】
図５を参照して、本実施形態に係る情報処理装置１２の機能的な構成について説明する。図５に示すように、情報処理装置１２は、第１導出部４０Ａ、第２導出部４２Ａ、第３導出部４４Ａ、及び制御部４６を含む。ＣＰＵ２０が記録プログラム３０を実行することにより、第１導出部４０Ａ、第２導出部４２Ａ、第３導出部４４Ａ、及び制御部４６Ａとして機能する。
【００５８】
第１導出部４０Ａは、第１実施形態に係る第１導出部４０が有する機能に加え、以下の機能を有する。第１導出部４０Ａは、複数のデータに対して、第２導出部４２Ａにより導出されたデータ間関連度が予め定められた閾値以上のデータが存在する場合、そのデータを複製すると仮定してブロック間関連度を導出する。なお、この場合の閾値の例としては、データを複製した方が読み取り時間が短縮される値の下限値として実験的に決定された値が挙げられる。
【００５９】
ここでは具体的な一例として、図１６に示すように、複数のデータｂ、ｃ、ｄに対してデータ間関連度が閾値（例えば、０．７）以上であるデータａが存在する場合について説明する。この場合、第１導出部４０Ａは、データａの複製先の仮想ブロックＡ２を追加したうえで、ブロック間関連度を導出する。この場合に第１導出部４０Ａにより導出されたブロック間関連度の一例を図１７に示す。図１７の例では、仮想ブロックＡとの関連度が１の仮想ブロックとして仮想ブロックＡ２が追加されている。
【００６０】
また、図１７に示すブロック間関連度をネットワーク構造として表した模式図の一例を図１８に示す。なお、ここでは説明を分かりやすくするために、データａを１つ複製する（すなわち、データａを２つ磁気テープＴに記録する）場合について説明するが、データａを２つ以上複製してもよい。
【００６１】
第２導出部４２Ａは、第１実施形態に係る第２導出部４２が有する機能に加え、以下の機能を有する。第２導出部４２Ａは、複数のデータに対して、導出したデータ間関連度が上記予め定められた閾値以上のデータが存在する場合、そのデータを複製すると仮定してデータ間関連度を導出する。この場合、第２導出部４２Ａは、データａの複製であるデータａ２を追加したうえで、データ間関連度を導出する。この場合に第２導出部４２Ａにより導出されたデータ間関連度の一例を図１９に示す。図１９の例では、データａとの関連度が０のデータとしてデータａ２が追加されている。
【００６２】
第３導出部４４Ａは、第１実施形態に係る第３導出部４４と同様に、第１導出部４０Ａにより導出されたブロック間関連度及び第２導出部４２Ａにより導出されたデータ間関連度の差を用いて、記録対象とする複数のデータそれぞれを記録する仮想ブロックを導出する。
【００６３】
図２０に、仮想ブロックＡにデータａを記録し、仮想ブロックＡ２にデータａ２を記録し、仮想ブロックＢにデータｂを記録し、仮想ブロックＣにデータｃを記録し、仮想ブロックＤにデータｄを記録すると仮定した場合のネットワーク構造の一例を示す。また、図１８及び図２０の例における差Ｄを図２１に示す。また、図２１の例におけるネットワーク構造差は、以下の（３）式により、０．０９となる。
（０．０５＋０＋０．４８３＋０．００７＋０＋０）÷６＝０．０９・・・（３）
【００６４】
図２０の状態から、データａの配置先とデータｄの配置先とを入れ替えた場合のネットワーク構造を図２２に示す。また、図１８及び図２０の例における差Ｄを図２３に示す。また、図２３の例におけるネットワーク構造差は、以下の（４）式により、０．０３９となる。なお、ここでは、複製により複数の同じデータの組み合わせができる場合については、小さい方の差Ｄを採用している。具体的には、図２３の例では、「ｄａ」についての差Ｄよりも「ｄａ２」の方が、差Ｄが小さいため、「ｄａ２」の方の差Ｄを採用している。
（０＋０＋０＋０．００７＋０＋０．２２５）÷６＝０．０３９・・・（４）
【００６５】
図２２の状態から、データｂの配置先とデータｃの配置先とを入れ替えた場合のネットワーク構造を図２４に示す。また、図１８及び図２４の例における差Ｄを図２５に示す。また、図２５の例におけるネットワーク構造差は、以下の（５）式により、０．００９５となる。
（０＋０＋０＋０．００７＋０＋０．０５）÷６＝０．００９５・・・（５）
【００６６】
このように、第３導出部４４Ａは、データとデータの配置先の仮想ブロックとの組み合わせを変更しながら、記録対象とする複数のデータそれぞれについて、ネットワーク構造差が最小となる仮想ブロックを導出する。
【００６７】
制御部４６Ａは、第１実施形態に係る制御部４６が有する機能に加え、以下の機能を有する。制御部４６Ａは、複数のデータに対してデータ間関連度が上記予め定められた閾値以上のデータが存在する場合、そのデータを複製したうえで、第３導出部４４Ａにより導出された仮想ブロックに従って、複数のデータを磁気テープＴに記録する制御を行う。
【００６８】
次に、図２６を参照して、本実施形態に係る情報処理装置１２の作用を説明する。ＣＰＵ２０が記録プログラム３０を実行することによって、図２６に示す記録処理が実行される。図２６に示す記録処理は、例えば、ユーザにより入力部２４を介してデータの記録指示が入力された場合に実行される。なお、図２６における図１５と同一の処理を行うステップについては、同一の符号を付して説明を省略する。
【００６９】
図２６のステップＳ１１で、第２導出部４２Ａは、複数のデータに対して、ステップＳ１０で導出したデータ間関連度が上記予め定められた閾値以上のデータが存在するか否かを判定する。この判定が否定判定となった場合は、処理はステップＳ１２に移行し、肯定判定となった場合は、処理はステップＳ１０Ａに移行する。
【００７０】
ステップＳ１０Ａで、第２導出部４２Ａは、前述したように、データ間関連度が上記予め定められた閾値以上のデータを複製すると仮定してデータ間関連度を導出する。ステップＳ１２Ａで、第１導出部４０Ａは、前述したように、データ間関連度が上記予め定められた閾値以上のデータを複製すると仮定してブロック間関連度を導出する。
【００７１】
ステップＳ１４Ａで、第３導出部４４Ａは、前述したように、ステップＳ１２Ａで導出されたブロック間関連度及びステップＳ１０Ａで導出されたデータ間関連度の差を用いて、記録対象とする複数のデータそれぞれを記録する仮想ブロックを導出する。
【００７２】
ステップＳ１６Ａで、制御部４６Ａは、複数のデータに対してデータ間関連度が上記予め定められた閾値以上のデータを複製したうえで、ステップＳ１４Ａで導出された仮想ブロックに従って、複数のデータを磁気テープＴに記録する制御を行う。ステップＳ１６Ａの処理が終了すると、本記録処理が終了する。
【００７３】
以上説明したように、本実施形態によれば、様々なデータと並行して読み出される可能性が高いデータは複製されて磁気テープＴに記録される。従って、並行して読み取られる可能性が高いデータを、より磁気テープＴ上の関連度が高い位置に記録することができる結果、記録媒体に記録されたデータの読み取り時間をより短縮することができる。
【００７４】
なお、上記各実施形態では、記録媒体として磁気テープを適用した場合について説明したが、これに限定されない。記録媒体として磁気テープ以外の記録媒体を適用する形態としてもよい。
【００７５】
また、上記各実施形態では、磁気ヘッドＨの初期位置として位置Ｈ１〜Ｈ１０の１０箇所の位置を適用した場合について説明したが、これに限定されない。例えば、磁気ヘッドＨの初期位置として９箇所以下の位置を適用してもよいし、１１箇所以上の位置を適用してもよい。磁気ヘッドＨの初期位置として１箇所の位置を適用する場合、磁気テープＴの先頭に対応する位置を適用する形態が例示される。また、磁気ヘッドＨの初期位置として複数個所の位置を適用する場合、第１導出部４０は、各位置に磁気ヘッドＨが存在する確率に応じた重み付けを行ってブロック間読み取り時間を導出してもよい。
【００７６】
また、上記各実施形態で示したブロック間関連度の導出手法、データ間関連度の導出手法、及びネットワーク構造差の導出手法の各手法は一例であり、上記各実施形態で示した例に限定されない。例えば、ブロック間関連度の導出手法、データ間関連度の導出手法、及びネットワーク構造差の導出手法の少なくとも一つに、ディープラーニング等のＡＩ（Artificial Intelligence）技術を適用する形態としてもよい。
【００７７】
また、上記各実施形態において、例えば、第１導出部４０、４０Ａ、第２導出部４２、４２Ａ、第３導出部４４、４４Ａ、及び制御部４６、４６Ａといった各種の処理を実行する処理部（processing unit）のハードウェア的な構造としては、次に示す各種のプロセッサ（processor）を用いることができる。上記各種のプロセッサには、前述したように、ソフトウェア（プログラム）を実行して各種の処理部として機能する汎用的なプロセッサであるＣＰＵに加えて、ＦＰＧＡ等の製造後に回路構成を変更可能なプロセッサであるプログラマブルロジックデバイス（Programmable Logic Device：PLD）、ＡＳＩＣ（Application Specific Integrated Circuit）等の特定の処理を実行させるために専用に設計された回路構成を有するプロセッサである専用電気回路等が含まれる。
【００７８】
１つの処理部は、これらの各種のプロセッサのうちの１つで構成されてもよいし、同種又は異種の２つ以上のプロセッサの組み合わせ（例えば、複数のＦＰＧＡの組み合わせや、ＣＰＵとＦＰＧＡとの組み合わせ）で構成されてもよい。また、複数の処理部を１つのプロセッサで構成してもよい。
複数の処理部を１つのプロセッサで構成する例としては、第１に、クライアント及びサーバ等のコンピュータに代表されるように、１つ以上のＣＰＵとソフトウェアの組み合わせで１つのプロセッサを構成し、このプロセッサが複数の処理部として機能する形態がある。第２に、システムオンチップ（System on Chip：SoC）等に代表されるように、複数の処理部を含むシステム全体の機能を１つのＩＣ（Integrated Circuit）チップで実現するプロセッサを使用する形態がある。このように、各種の処理部は、ハードウェア的な構造として、上記各種のプロセッサの１つ以上を用いて構成される。
【００７９】
更に、これらの各種のプロセッサのハードウェア的な構造としては、より具体的には、半導体素子などの回路素子を組み合わせた電気回路（circuitry）を用いることができる。
【００８０】
また、上記各実施形態では、記録プログラム３０が記憶部２２に予め記憶（インストール）されている態様を説明したが、これに限定されない。記録プログラム３０は、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＤＶＤ−ＲＯＭ（Digital Versatile Disc Read Only Memory）、及びＵＳＢ（Universal Serial Bus）メモリ等の記録媒体に記録された形態で提供されてもよい。また、記録プログラム３０は、ネットワークを介して外部装置からダウンロードされる形態としてもよい。
【図１】
2020158463.tif 000003
【図２】
2020158463.tif 000004
【図３】
2020158463.tif 000005
【図４】
2020158463.tif 000006
【図５】
2020158463.tif 000007
【図６】
2020158463.tif 000008
【図７】
2020158463.tif 000009
【図８】
2020158463.tif 000010
【図９】
2020158463.tif 000011
【図１０】
2020158463.tif 000012
【図１１】
2020158463.tif 000013
【図１２】
2020158463.tif 000014
【図１３】
2020158463.tif 000015
【図１４】
2020158463.tif 000016
【図１５】
2020158463.tif 000017
【図１６】
2020158463.tif 000018
【図１７】
2020158463.tif 000019
【図１８】
2020158463.tif 000020
【図１９】
2020158463.tif 000021
【図２０】
2020158463.tif 000022
【図２１】
2020158463.tif 000023
【図２２】
2020158463.tif 000024
【図２３】
2020158463.tif 000025
【図２４】
2020158463.tif 000026
【図２５】
2020158463.tif 000027
【図２６】
2020158463.tif 000028
【国際調査報告】
2020158463.tif 000029
2020158463.tif 000030
2020158463.tif 000031
2020158463.tif 000032