(57)【要約】【課題】リオーガニゼーション処理の処理速度を高速化する。【解決手段】ストレージ装置１は、ＰＶ３１２へのアクセスをＰＶ３１２に代わって記憶領域が割り当てられたディスク３２へのアクセスにエミュレーションするエミュレーションする。ストレージ装置１は、ＰＶ３１２上のデータの位置とディスク３２上のデータの記憶位置とを対応付けた位置情報を記憶するメディア管理テーブル３１４と、第１のＰＶ３１２のデータを第２のＰＶ３１２へ移動する移動指示を受け付けると、受け付けられた移動に係るデータについて、メディア管理テーブル３１４に記憶された第１のＰＶ３１２上の位置に対応付けられたディスク３２上の移動元の記憶位置を、メディア管理テーブル３１４の位置情報における第２のＰＶ３１２上の移動先の記憶位置に対応付けて記憶するリオーガニゼーション処理部３１５と、を有する。【選択図】図１
2014206873.tif 000002
【特許請求の範囲】
【請求項１】
物理テープへのアクセスを該物理テープに代わって記憶領域が割り当てられたストレージへのアクセスにエミュレーションするエミュレーション部と、
前記物理テープ上のデータの位置と前記ストレージ上のデータの記憶位置とを対応付けた位置情報を記憶する記憶部と、
第１の物理テープのデータを第２の物理テープへ移動する移動指示を受け付ける受付部と、
前記受付部によって受け付けられた移動に係るデータについて、前記記憶部に記憶された前記第１の物理テープ上の位置に対応付けられた前記ストレージ上の移動元の記憶位置を、前記記憶部の前記位置情報における前記第２の物理テープ上の移動先の記憶位置に対応付けて記憶する移動部と、
を有することを特徴とするストレージ装置。
【請求項２】
前記記憶部は、前記物理テープ上のデータの位置と前記ストレージ上のデータの記憶位置と当該記憶位置が有効であるか否かを示す有効フラグとを対応付けた位置情報を記憶し、
前記移動部は、前記移動に係るデータについて、前記第１の物理テープ上の移動元の位置に対応付けられる有効フラグを無効に設定し、前記第１の物理テープ上の位置より前の位置に対応付けられる有効フラグが有効であれば、前記有効フラグを無効に設定する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項３】
移動元の前記第１の物理テープに対応付けられた有効フラグが全て無効になった場合、前記第１の物理テープを初期化する初期化部を
有することを特徴とする請求項２に記載のストレージ装置。
【請求項４】
物理テープへのアクセスを該物理テープに代わって記憶領域が割り当てられたストレージへのアクセスにエミュレーションするストレージ装置に、
第１の物理テープのデータを第２の物理テープへ移動する移動指示を受け付け、
該受け付ける処理によって受け付けられた移動に係るデータについて、前記物理テープ上のデータの位置と前記ストレージ上のデータの記憶位置とを対応付けた位置情報を記憶する記憶部に記憶された前記第１の物理テープ上の位置に対応付けられた前記ストレージ上の移動元の記憶位置を、前記記憶部の前記位置情報における前記第２の物理テープ上の移動先の記憶位置に対応付けて記憶する
処理を実行させることを特徴とする制御プログラム。
【請求項５】
物理テープへのアクセスを該物理テープに代わって記憶領域が割り当てられたストレージへのアクセスにエミュレーションするストレージ装置が、
第１の物理テープのデータを第２の物理テープへ移動する移動指示を受け付け、
該受け付ける処理によって受け付けられた移動に係るデータについて、前記物理テープ上のデータの位置と前記ストレージ上のデータの記憶位置とを対応付けた位置情報を記憶する記憶部に記憶された前記第１の物理テープ上の位置に対応付けられた前記ストレージ上の移動元の記憶位置を、前記記憶部の前記位置情報における前記第２の物理テープ上の移動先の記憶位置に対応付けて記憶する
各処理を実行することを特徴とする制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置などに関する。
【背景技術】
【０００２】
仮想テープ装置は、テープ運用をハードディスク等の大規模記憶装置上で仮想的に行う装置である。テープイメージデータが論理ボリューム（ＬＶ：Logical  Volume）として大規模記憶装置上に配置されることによって、テープマウント、ロードおよびアンロードなど実際にＨＷ（Hardware）で行われる動作を無くし、高速処理を図っている。
【０００３】
仮想テープ装置には、仮想ボリューム化するための装置として、ＴＶＣ（Tape  Volume  Cache）が使用される。ＴＶＣとして、例えばＲＡＩＤ装置が用いられる。上位のホスト装置からアクセスされるテープボリュームは、ＴＶＣに格納される。このようなボリュームデータが、ＬＶデータである。
【０００４】
ここで、仮想テープ装置によるデータの書き込み動作を、図１３を参照して説明する。図１３は、従来の仮想テープ装置によるデータの書き込み動作を示す図である。図１３に示すように、仮想テープ装置は、ＶＬＰ（Virtual  Library  Processor）とＩＣＰ（Integrated  Channel  Processor）とＰＬＰ（Physical  Library  Processor）とＩＤＰ（Integrated  Device  Processor）とＴＶＣとを有する。ＶＬＰは、仮想テープ装置全体を制御する。ＩＣＰは、ホスト装置と接続され、ＴＶＣ上のＬＶデータの送受信を制御する。仮想ドライブの機能はＩＣＰにより行われる。ＰＬＰは、バックエンドのテープライブラリ装置を制御する。ＩＤＰは、バックエンドのテープライブラリ装置のドライブを制御する。
【０００５】
仮想テープ装置と接続されるバックエンドのテープライブラリ装置は、コントローラとディスクとを有する。ディスクは、実際にデータを格納するストレージである。コントローラには、ロボット、ドライブおよびメディア（物理テープ）を示す物理ボリューム（ＰＶ：Physical  Volume）と同様の機能を有するソフトウェアが搭載される。すなわち、テープライブラリ装置は、ロボット、ドライブおよびＰＶの機能をエミュレーションする装置である。
【０００６】
このような仮想テープ装置は、ホスト装置から書き込まれたＬＶデータを、ＴＶＣに格納した後、テープライブラリ装置のＰＶ（実体はディスク）にＬＶデータを書き込む。ＴＶＣに格納されたＬＶデータをＰＶに書き込む処理は、「マイグレーション」と称される。
【０００７】
仮想テープ装置は、ホスト装置からＬＶデータの書き込みによってＬＶデータが更新されたときのマイグレーション処理において、テープライブラリ装置では更新以前にＰＶに書き込まれていた旧データを無効にする。そして、仮想テープ装置は、新しいデータを当該ＰＶの最後に追加して書き込む。ところが、この動作が繰り返されると、ＰＶ上に無効な領域が増加して空き領域がなくなる。このため、仮想テープ装置は、空き領域がなくなるＰＶを別のＰＶに代えてＬＶデータの書き込みを行う。これにより、ＰＶの使用効率が悪化し、ＰＶの空き容量が圧迫される。
【０００８】
このような状況を解消するために、仮想テープ装置は、ＰＶ内の有効となっているＬＶデータだけを取り出し、別のＰＶに再配置し、元のＰＶを初期化する。ＰＶに保存されていたＬＶデータを再配置することは、「リオーガニゼーション」と称される。図１４は、物理ボリュームのリオーガニゼーションを説明する図である。
【０００９】
図１４に示すように、ＰＶ０００３では、ＬＶ００２が更新される場合、更新以前にＰＶ０００３に書かれていたＬＶ００２のデータは無効となり、新しいデータがＰＶ０００３の最後に追加して書き込まれる。ＰＶ０００４では、ＬＶ００１が更新される場合、更新以前にＰＶ０００３に書かれていたＬＶ００１のデータは無効となり、新しいデータがＰＶ０００４に追加して書き込まれる。ＬＶ００４が更新される場合、更新以前にＰＶ０００４に書かれていたＬＶ００４のデータは無効となり、新しいデータがＰＶ０００４に追加して書き込まれる。そして、リオーガニゼーション後、ＰＶ０００３、ＰＶ０００４に保存されていたＬＶデータがＰＶ０００５に再配置され、元のＰＶは初期化される。これにより、ＰＶの空き領域の断片化が解消され、ＰＶの空き容量を確保することができる。
【００１０】
リオーガニゼーション処理の動作には、２通りのパターンがある。１つ目のパターンは、リオーガニゼーション対象のＬＶデータがＴＶＣ上に存在する場合である。この場合、仮想テープ装置は、ＴＶＣ上のリオーガニゼーション対象のＬＶデータをテープライブラリ装置のＰＶに書き込んだ後、ＰＶを管理するＰＶ管理テーブルを更新する。
【００１１】
図１５は、１つ目のパターンにおける仮想テープ装置の従来のリオーガニゼーション処理のシーケンスを示す図である。図１５に示すように、仮想テープ装置のＶＬＰ０は、ＰＬＰ０に対してリオーガニゼーションを行う移動先のＰＶのマウント指示を行う（Ｓ１０１〜Ｓ１０４）。マウント完了後、ＶＬＰ０は、ＩＤＰ０に対してＴＶＣ上にある対象ＬＶデータのＰＶへの書き込みを指示する（Ｓ１０５〜Ｓ１０８）。これにより、リオーガニゼーション対象のＰＶ内の有効なＬＶデータは別のＰＶ内に再配置される。なお、ここでは、ＩＤＰ０が動作した場合を示したが、他のＩＤＰが動作した場合であっても良い。ＰＶへの書き込み完了後、ＶＬＰ０は、ＰＬＰ０に対してＰＶのアンマウント指示を行う（Ｓ１０９〜Ｓ１１２）。アンマウント完了後、ＶＬＰ０は、内部のＰＶ管理テーブル上で、リオーガニゼーション前にＬＶデータが格納されていたＰＶに対して当該ＬＶの識別名を削除する（Ｓ１１３）。これにより、リオーガニゼーション処理が終了する。
【００１２】
また、２つ目のパターンは、リオーガニゼーション対象のＬＶデータがＴＶＣ上に存在しない場合である。この場合、仮想テープ装置は、リオーガニゼーション対象のＬＶデータをテープライブラリ装置から読み出してＴＶＣに格納した後、ＴＶＣ上のリオーガニゼーション対象のＬＶデータをテープライブラリ装置のＰＶに書き込む。その後、仮想テープ装置は、ＰＶ管理テーブルを更新する。
【００１３】
図１６は、２つ目のパターンにおける仮想テープ装置の従来のリオーガニゼーション処理のシーケンスを示す図である。図１６に示すように、仮想テープ装置のＶＬＰ０は、ＰＬＰ０に対してリオーガニゼーションを行う移動元のＰＶのマウント指示を行う（Ｓ１２１〜Ｓ１２４）。マウント完了後、ＶＬＰ０は、ＩＤＰ１に対して対象ＬＶデータのＰＶからの読み出しを指示する（Ｓ１２５〜Ｓ１２８）。なお、ここでは、ＩＤＰ１が動作した場合を示したが、他のＩＤＰが動作した場合であっても良い。ＰＶからの読み出し完了後、ＶＬＰ０は、ＰＬＰ０に対してＰＶのアンマウント指示を行う（Ｓ１２９〜Ｓ１３２）。アンマウント完了後、ＶＬＰ０は、リオーガニゼーション対象のＬＶデータがＴＶＣ上に存在する場合のリオーガニゼーション処理の動作を実行する（Ｓ１０１〜Ｓ１１３）。図１５で示したとおりであるので、その説明を省略する。これにより、リオーガニゼーション処理が終了する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２０１２−９８９６５号公報
【特許文献２】特開２００７−３２３５８９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
しかしながら、従来のリオーガニゼーション処理では、処理速度が遅くなる場合があるという問題がある。すなわち、リオーガニゼーション処理では、テープライブラリ装置が物理テープをエミュレーションする装置である場合、ＰＶをマウントしたり、アンマウントしたりする動作や、ＰＶに対するアクセス動作を伴うので、処理速度が遅くなってしまう。
【００１６】
１つの側面では、本発明は、リオーガニゼーション処理の処理速度を高速化することを目的とする。
【課題を解決するための手段】
【００１７】
本願の開示するストレージ装置は、１つの態様において、物理テープへのアクセスを該物理テープに代わって記憶領域が割り当てられたストレージへのアクセスにエミュレーションするエミュレーション部と、前記物理テープ上のデータの位置と前記ストレージ上のデータの記憶位置とを対応付けた位置情報を記憶する記憶部と、第１の物理テープのデータを第２の物理テープへ移動する移動指示を受け付ける受付部と、前記受付部によって受け付けられた移動に係るデータについて、前記記憶部に記憶された前記第１の物理テープ上の位置に対応付けられた前記ストレージ上の移動元の記憶位置を、前記記憶部の前記位置情報における前記第２の物理テープ上の移動先の記憶位置に対応付けて記憶する移動部と、を備える。
【発明の効果】
【００１８】
本願の開示するストレージ装置の１つの態様によれば、リオーガニゼーション処理の処理速度を高速化することができる。
【図面の簡単な説明】
【００１９】
【図１】図１は、実施例に係るストレージ装置のハードウェア構成を示す図である。
【図２】図２は、ＰＶ管理テーブルのデータ構造の一例を示す図である。
【図３】図３は、ＬＶ格納状態テーブルのデータ構造の一例を示す図である。
【図４】図４は、メディア管理テーブルのデータ構造の一例を示す図である。
【図５】図５は、リオーガニゼーション開始指示コマンドの一例を示す図である。
【図６】図６は、メディア管理テーブルの操作例を示す図（１）である。
【図７】図７は、メディア管理テーブルの操作例を示す図（２）である。
【図８】図８は、ＰＶ管理テーブルの操作例を示す図である。
【図９】図９は、ＬＶ格納状態テーブルの操作例を示す図である。
【図１０】図１０は、種別問合処理のシーケンスを示す図である。
【図１１】図１１は、開始指示処理のシーケンスを示す図である。
【図１２Ａ】図１２Ａは、リオーガニゼーション処理のフローチャートを示す図である。
【図１２Ｂ】図１２Ｂは、リオーガニゼーション処理のフローチャートを示す図である。
【図１３】図１３は、従来の仮想テープ装置によるデータの書き込み動作を示す図である。
【図１４】図１４は、物理ボリュームのリオーガニゼーションを説明する図である。
【図１５】図１５は、仮想テープ装置の従来のリオーガニゼーション処理のシーケンスを示す図である。
【図１６】図１６は、仮想テープ装置の従来の別のリオーガニゼーション処理のシーケンスを示す図である。
【発明を実施するための形態】
【００２０】
以下に、本願の開示するストレージ装置、制御プログラムおよび制御方法の実施例を図面に基づいて詳細に説明する。なお、本実施例によりこの発明が限定されるものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例】
【００２１】
［実施例に係るストレージ装置の構成］
図１は、実施例に係るストレージ装置のハードウェア構成を示す図である。図１に示すように、ストレージ装置１は、仮想テープ装置２とバックエンドのテープライブラリ装置を示すバックエンドライブラリ装置３とを有する。仮想テープ装置２は、磁気テープの運用をハードディスク等の大規模記憶装置上で仮想的に行う装置である。大規模記憶装置は、一例として後述するＴＶＣ（Tape  Volume  Cache）２１が挙げられる。ＴＶＣ２１は、仮想テープ装置２を仮想ボリューム化するための装置ともいえる。仮想テープ装置２は、バックエンドライブラリ装置３と接続する。
【００２２】
バックエンドライブラリ装置３には、磁気テープとして実際の物理テープを使用するタイプと、磁気テープとして実際の物理テープをエミュレーションしたソフトウェアを使用するタイプとがある。実施例では、磁気テープとして実際の物理テープを使用するタイプのことを「物理テープタイプ」というものとする。磁気テープとして実際の物理テープをエミュレーションしたソフトウェアを使用するタイプのことを「エミュレーションタイプ」というものとする。また、実施例では、バックエンドライブラリ装置３は、「エミュレーションタイプ」であるとして説明する。
【００２３】
仮想テープ装置２は、ＴＶＣ２１とＩＣＰ２２とＰＬＰ２３とＩＤＰ２４とＶＬＰ２５とを有する。
【００２４】
ＴＶＣ２１は、例えばＲＡＩＤ装置によって構成される。なお、ＴＶＣ２１は、ＳＳＤなどの大規模記憶装置によって構成されても良い。ＴＶＣ２１は、上位のホスト装置４からアクセスされるテープボリュームを格納する。このようなボリュームデータが、ＬＶ（Logical  Volume）データである。
【００２５】
ＩＣＰ２２は、ストレージ接続用のインタフェースを用いてホスト装置４と接続され、ＴＶＣ２１上のＬＶデータの送受信を制御する。ストレージ接続のインタフェースには、例えばＦＣ接続がある。
【００２６】
ＰＬＰ２３およびＩＤＰ２４は、バックエンドライブラリ装置３を制御する。なお、ＰＬＰ２３は、バックエンドライブラリ装置３が物理テープタイプの場合、ＶＬＰ２５からの指示を受け、バックエンドライブラリ装置３内のメディア搬送機構であるロボット３１１を制御する。ＩＤＰ２４は、バックエンドライブラリ装置３が物理テープタイプの場合、ＶＬＰ２５から指示を受け、例えば、ＴＶＣ２１上のＬＶデータをバックエンドライブラリ装置３内のテープ駆動装置であるドライブ３１３に設定されたメディア（ＰＶ：Physical  Volume）に書き込む。
【００２７】
ＶＬＰ２５は、仮想テープ装置２全体を制御する。なお、ＶＬＰ２５は、バックエンドライブラリ装置３が物理テープタイプの場合、所定の指示を受け取ると、ＰＬＰ２３またはＩＤＰ２４に、指示に応じた処理を行わせる。所定の指示は、例えば物理テープを示す物理ボリューム（ＰＶ）のマウント／アンマウント指示であったり、論理ボリューム（ＬＶ）データの読み出し／書き込み指示であったりする。
【００２８】
ＶＬＰ２５は、ＰＶ管理テーブル２５１とＬＶ格納状態テーブル２５２とタイプ判別部２５３と開始指示部２５４とを有する。
【００２９】
ＰＶ管理テーブル２５１は、ＴＶＣ２１上のＬＶデータとＰＶ３１２との対応関係を管理する。ここで、ＰＶ管理テーブル２５１のデータ構造について、図２を参照して説明する。図２は、ＰＶ管理テーブルのデータ構造を示す図である。図２に示すように、ＰＶ管理テーブル２５１は、ＰＶ名２５１ａと有効ＬＶ名２５１ｂと先頭ブロック位置２５１ｃとを対応付けて記憶する。ＰＶ名２５１ａは、ＰＶの名称である。有効ＬＶ名２５１ｂは、ＰＶに対応付けられた有効なＬＶの名称である。先頭ブロック位置２５１ｃは、ＬＶが対応付けられたＰＶ上の先頭ブロックの位置である。一例として、ＰＶ名２５１ａが「ＰＶ０００１」である場合、有効ＬＶ名２５１ｂとして「ＬＶ０００６」、先頭ブロック位置２５１ｃとして「５」を記憶している。
【００３０】
ＬＶ格納状態テーブル２５２は、各ＰＶ３１２の有効なＬＶの格納状態を管理する。ここで、ＬＶ格納状態テーブル２５２のデータ構造について、図３を参照して説明する。図３は、ＬＶ格納状態テーブルのデータ構造を示す図である。図３に示すように、ＬＶ格納状態テーブル２５２は、ＰＶ名２５２ａと先頭ブロック位置に対応するＬＶ格納状態２５２ｂとを対応付けて記憶する。ＰＶ名２５２ａは、ＰＶの名称である。ＬＶ格納状態２５２ｂは、ＰＶ名で示されるＰＶの先頭ブロック位置毎のＬＶの格納状態を示す。例えば、ＬＶ格納状態２５２ｂにＬＶ名が設定されている場合、ＬＶ名のＬＶの格納状態が有効であることを示す。ＬＶ格納状態２５２ｂに「無効」が設定されている場合、ＬＶの格納状態が無効であることを示す。一例として、ＰＶ名２５２ａが「ＰＶ０００４」である場合、ＬＶ格納状態２５２ｂとして先頭ブロック位置「１」に「ＬＶ０００１」と記憶している。先頭ブロック位置「２」に「無効」と記憶している。先頭ブロック位置「３」に「ＬＶ０００４」と記憶している。
【００３１】
タイプ判別部２５３は、バックエンドライブラリ装置の種別を判別する。例えば、タイプ判別部２５３は、後述するコントローラ３１に対してバックエンドライブラリ装置のタイプを問い合わせるコマンドを発行する。そして、タイプ判別部２５３は、コマンドに対する応答があれば、エミュレーションタイプであると判別する。そして、タイプ判別部２５３は、リオーガニゼーションをする際、開始指示部２５４にリオーガニゼーションの開始指示コマンドを発行させる。
【００３２】
なお、タイプ判別部２５３は、コマンドに対する応答がなければ、物理テープタイプであると判別する。そして、タイプ判別部２５３は、リオーガニゼーションをする際、ＰＶマウント／アンマウント指示、ＬＶデータの読み出し／書き込み指示に応じた処理をＰＬＰ２３またはＩＤＰ２４に行わせることで、リオーガニゼーション処理を実行する。
【００３３】
開始指示部２５４は、リオーガニゼーションの開始指示コマンドを後述するコントローラ３１に発行する。リオーガニゼーションの開始指示コマンドは、リオーガニゼーション対象のＬＶデータの移動元と移動先とを含む。リオーガニゼーション対象のＬＶデータの移動元とは、当該ＬＶデータの移動元のＰＶ名およびＰＶ上の当該ＬＶデータの存在する先頭ブロック位置を含む。リオーガニゼーション対象のＬＶデータの移動先とは、当該ＬＶデータの移動先のＰＶ名およびＰＶ上の当該ＬＶデータの移動先先頭ブロック位置を含む。
【００３４】
また、開始指示部２５４は、開始指示コマンドに対応する完了通知をコントローラ３１から受け取ると、ＰＶ管理テーブル２５１およびＬＶ格納状態テーブル２５２を更新する。例えば、開始指示部２５４は、ＰＶ管理テーブル２５１について、リオーガニゼーション対象のＬＶデータに対応する移動元のレコードを削除し、当該ＬＶデータに対応する移動先のレコードを追加する。移動先のレコードには、ＰＶ名２５１ａとして移動先のＰＶ名、有効ＬＶ名２５１ｂとしてリオーガニゼーション対象のＬＶデータのＬＶ名、先頭ブロック位置２５１ｃとして当該ＬＶデータの移動先先頭ブロック位置が設定される。また、開始指示部２５４は、ＬＶ格納状態テーブル２５２について、移動元ＰＶの移動元ブロック位置のＬＶ格納状態２５２ｂを「無効」に設定する。加えて、開始指示部２５４は、移動先ＰＶの移動先ブロック位置のＬＶ格納状態２５２ｂを有効であることを示すリオーガニゼーション対象のＬＶデータのＬＶ名を設定する。
【００３５】
バックエンドライブラリ装置３は、コントローラ３１とディスク３２とを有する。コントローラ３１は、ロボット３１１とＰＶ３１２とドライブ３１３とメディア管理テーブル３１４とリオーガニゼーション処理部３１５と初期化処理部３１６とを有する。ロボット３１１とＰＶ３１２とドライブ３１３は、それぞれの機能を有するソフトウェアである。すなわち、ロボット３１１、ＰＶ３１２およびドライブ３１３は、実際の物理テープへのアクセスを該物理テープに代わって記憶領域が割り当てられたディスク３２へのアクセスにエミュレーションする。ここでいうロボット３１１、ＰＶ３１２およびドライブ３１３が、エミュレーション部の一例である。なお、バックエンドライブラリ装置３が物理テープタイプの場合、ロボット３１１とＰＶ３１２とドライブ３１３は、それぞれの機能を有するハードウェアである。
【００３６】
ディスク３２は、実際にＬＶデータを格納するストレージである。
【００３７】
メディア管理テーブル３１４は、メディア毎に、メディア上のデータの位置とディスク３２上のデータの記憶位置とを対応付けて記憶する。ここでいうメディアとは、ＰＶのことである。ここで、メディア管理テーブル３１４のデータ構造について、図４を参照して説明する。
【００３８】
図４は、メディア管理テーブルのデータ構造の一例を示す図である。図４に示すように、メディア管理テーブル３１４は、メディア名３１４ａとメディア上の先頭ブロック位置３１４ｂとディスク上の格納位置３１４ｃとを対応付けて記憶する。メディア名３１４ａは、メディアの名称、すなわちＰＶの名称である。メディア上の先頭ブロック位置３１４ｂは、すなわちＰＶ上の先頭のブロック位置である。ディスク上の格納位置３１４ｃは、ディスク３２上に実際にＬＶデータが格納される格納位置である。ディスク上の格納位置３１４ｃには、有効フラグ３１４ｄ、ＬＵＮ（Logical  Unit  Number）＃３１４ｅおよびＬＢＡ（Logical  Block  Address）＃３１４ｆが含まれる。
【００３９】
有効フラグ３１４ｄは、メディア上の先頭ブロック位置に対応するディスク上の格納位置が有効であるか否かを示す有効フラグである。例えば、有効である場合、「ＯＮ」が設定される。無効である場合、「ＯＦＦ」が設定される。なお、有効フラグ３１４ｄが有効であるとは、初期化状態でないこと、すなわちＬＶデータが一度でも格納されたことがある状態を意味する。有効フラグ３１４ｄが無効であるとは、初期化状態またはＬＶデータが無効である状態を意味する。ＬＶデータが無効である状態は、後述するリオーガニゼーション処理部３１５によって判定され、有効フラグ３１４ｄに「ＯＦＦ」が設定される。
【００４０】
ＬＵＮ＃３１４ｅは、論理的なユニット番号を示す。ＬＢＡ＃３１４ｆは、論理的に付けられた記憶領域のブロックアドレスを示す。
【００４１】
一例として、メディア名３１４ａが「ＰＶ０００１」である場合、メディア上の先頭ブロック位置３１４ｂとして「１」を記憶している。ディスク上の格納位置３１４ｃとして、有効フラグ３１４ｄに「ＯＮ」、ＬＵＮ＃３１４ｅに「０」、ＬＢＡ＃３１４ｆに「０」を記憶している。
【００４２】
リオーガニゼーション処理部３１５は、リオーガニゼーションの開始指示コマンドを受け付けると、リオーガニゼーション処理を開始する。例えば、リオーガニゼーション処理部３１５は、仮想テープ装置２のＶＬＰ２５からリオーガニゼーションの開始指示コマンドを受け付ける。そして、リオーガニゼーション処理部３１５は、リオーガニゼーション対象のＬＶデータについて、メディア管理テーブル３１４を用いて、移動元のＰＶ上の先頭ブロック位置から移動先のＰＶ上の先頭ブロック位置へ移動する。すなわち、リオーガニゼーション処理部３１５は、対象のＬＶデータについて、メディア管理テーブル３１４の移動元のメディア（ＰＶ）上の先頭ブロック位置に対応するディスク３２上の格納位置を、移動先のメディア（ＰＶ）上の先頭ブロック位置に対応付けて記憶する。そして、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４について、リオーガニゼーション対象のＬＶデータの移動元に対応するディスク３２上の格納位置の有効フラグ３１４ｄを「ＯＦＦ」に設定する。これにより、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４を操作することで、ＰＶ３１２内の有効なＬＶデータを別のＰＶ３１２に再配置することができる。
【００４３】
また、リオーガニゼーション処理部３１５は、移動元のＰＶ上の先頭ブロック位置より前の位置に対応付けられるディスク３２上の格納位置の有効フラグ３１４ｄが有効であれば、当該有効フラグ３１４ｄを無効に設定する。すなわち、リオーガニゼーション処理部３１５は、移動元のディスク３２上の格納位置より前の格納位置に格納されたＬＶデータが無効である状態と判断し、当該格納位置の有効フラグ３１４ｄを「ＯＦＦ」に設定する。これにより、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４を操作することで、ＰＶ３１２内の無効なＬＶデータを削除することができる。例えば、ＰＶ名「ＰＶ０００４」に対してＬＶ名が「ＬＶ００４」のＬＶデータが更新される場合、更新以前に「ＰＶ０００４」に書かれていた「ＬＶ００４」のデータは無効となり、新しいデータが「ＰＶ０００４」の最後に追加して書き込まれる。したがって、リオーガニゼーション処理部３１５は、更新以前に「ＰＶ０００４」に書かれていた先頭ブロック位置に対応する有効フラグ３１４ｄを自動的に「ＯＦＦ」に設定する。
【００４４】
初期化処理部３１６は、移動元のＰＶに対応付けられた有効フラグが全て無効になった場合、移動元のＰＶを初期化する。すなわち、初期化処理部３１６は、移動元のＰＶについて、スクラッチ処理を実行する。なお、スクラッチ処理は、一例として、ディレクトリ情報の初期化処理に対応する。例えば、初期化処理部３１６は、移動元のＰＶに対応付けられたディスク上の格納位置３１４ｃの有効フラグ３１４ｄが全て「ＯＦＦ」であれば、当該ＰＶを初期化状態にする。これにより、初期化処理部３１６は、リオーガニゼーション処理において、ＬＶデータの再配置を完了したＰＶを自動的に初期化することができる。
【００４５】
次に、リオーガニゼーション開始指示コマンドの一例を、図５を参照して説明する。図５は、リオーガニゼーション開始指示コマンドの一例を示す図である。図５に示すように、リオーガニゼーション開始指示コマンドは、複数のパラメータを含む。移動元に関わるパラメータとして、リオーガニゼーション対象のＬＶデータの移動元のＰＶ名およびＰＶ上のＬＶデータの存在する先頭ブロック位置がある。また、移動先に関わるパラメータとして、リオーガニゼーション対象のＬＶデータの移動先のＰＶ名およびＰＶ上のＬＶデータの先頭ブロック位置がある。一例として、リオーガニゼーション対象のＬＶデータの移動元のＰＶ名として「ＰＶ０００４」、ＰＶ上のＬＶデータの存在する先頭ブロック位置として「１」が設定されている。リオーガニゼーション対象のＬＶデータの移動先のＰＶ名として「ＰＶ０００５」、ＰＶ上のＬＶデータの先頭ブロック位置として「１」が設定されている。この開始指示コマンドを、リオーガニゼーション処理部３１５が受け付けると、リオーガニゼーション対象のＬＶデータを、移動元ＰＶ名「ＰＶ０００４」の先頭ブロック位置「１」から移動先ＰＶ名「ＰＶ０００５」の先頭ブロック位置「１」へ移動する。
【００４６】
［メディア管理テーブルの具体的な操作例］
次に、バックエンドライブラリ装置３側でのメディア管理テーブル３１４の具体的な操作例を、図６および図７を参照して説明する。図６および図７は、メディア管理テーブルの操作例を示す図である。図６では、移動元ＰＶ名「ＰＶ０００４」の先頭ブロック位置「１」に格納されているＬＶデータを、移動先ＰＶ名「ＰＶ０００５」の先頭ブロック位置「１」へ移動させるリオーガニゼーションの開始指示コマンドを受け取った場合の操作例を示す。図７では、図６の例に加えて、移動元ＰＶ名「ＰＶ０００４」の先頭ブロック位置「３」に格納されているＬＶデータを、移動先ＰＶ名「ＰＶ０００５」の先頭ブロック位置「２」へ移動させるリオーガニゼーションの開始指示コマンドを受け取った場合の操作例を示す。
【００４７】
図６上段に示すように、メディア管理テーブル３１４の操作実施前には、移動元のメディア名３１４ａが「ＰＶ０００４」且つメディア（ＰＶ）上の先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「２」、ＬＢＡ＃３１４ｆが「１００」と設定されている。一方、移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＦＦ」と設定されている。ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆは未確定である。
【００４８】
このような状況下で、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４の移動元のＰＶ上の先頭ブロック位置に対応するディスク３２上の格納位置を、移動先のＰＶ上の先頭ブロック位置に対応付けて記憶する。そして、リオーガニゼーション処理部３１５は、移動元に対応するディスク３２上の格納位置の有効フラグ３１４ｄを「ＯＦＦ」に設定する。
【００４９】
図６下段に示すように、メディア管理テーブル３１４の操作実施後には、移動元のメディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＦＦ」、ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆが未確定となる。一方、移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「２」、ＬＢＡ＃３１４ｆが「１００」と設定される。
【００５０】
これにより、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４を操作することで、ＰＶ３１２内の有効なＬＶデータを別のＰＶ３１２に再配置することができる。
【００５１】
図７上段に示すように、メディア管理テーブル３１４の操作実施前には、移動元のメディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「２」、ＬＢＡ＃３１４ｆが「１００」と設定されている。移動元のメディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「３」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「１」、ＬＢＡ＃３１４ｆが「４００」と設定されている。
【００５２】
一方、移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＦＦ」と設定されている。ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆは未確定である。移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「２」である場合のディスク３２上の格納位置の情報は、以下のようである。有効フラグ３１４ｄが「ＯＦＦ」と設定されている。ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆは未確定である。
【００５３】
このような状況下で、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４の移動元のＰＶ上の先頭ブロック位置に対応するディスク３２上の格納位置を、移動先のＰＶ上の先頭ブロック位置に対応付けて記憶する。そして、リオーガニゼーション処理部３１５は、移動元に対応するディスク３２上の格納位置の有効フラグ３１４ｄを「ＯＦＦ」に設定する。
【００５４】
図７下段に示すように、メディア管理テーブル３１４の操作実施後には、移動元のメディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＦＦ」、ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆが未確定となる。一方、移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「１」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「２」、ＬＢＡ＃３１４ｆが「１００」と設定される。
【００５５】
加えて、メディア管理テーブル３１４の操作実施後には、移動元のメディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「３」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＦＦ」、ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆが未確定となる。一方、移動先のメディア名３１４ａが「ＰＶ０００５」且つ先頭ブロック位置３１４ｂが「２」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＮ」、ＬＵＮ＃３１４ｅが「１」、ＬＢＡ＃３１４ｆが「４００」と設定される。
【００５６】
さらに、リオーガニゼーション処理部３１５は、移動元のＰＶ上の先頭ブロック位置より前の位置に対応付けられるディスク３２上の格納位置の有効フラグ３１４ｄが有効であれば、当該有効フラグ３１４ｄを「ＯＦＦ」に設定する。すなわち、リオーガニゼーション処理部３１５は、移動元のディスク３２上の格納位置より前の格納位置に格納されたＬＶデータを無効である状態と判断する。
【００５７】
図７上段に示すように、メディア管理テーブル３１４の操作実施前には、移動元の「ＰＶ０００４」上の先頭ブロック位置「３」より前の位置「２」に対応付けられたディスク３２上の格納位置の有効フラグ３１４ｄに「ＯＮ」が設定されている。したがって、リオーガニゼーション処理部３１５は、当該有効フラグ３１４ｄを「ＯＦＦ」に設定する。図７下段に示すように、メディア管理テーブル３１４の操作実施後には、メディア名３１４ａが「ＰＶ０００４」且つ先頭ブロック位置３１４ｂが「２」である場合のディスク３２上の格納位置の情報は、以下のようになる。有効フラグ３１４ｄが「ＯＦＦ」、ＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆが未確定となる。
【００５８】
これにより、リオーガニゼーション処理部３１５は、メディア管理テーブル３１４を操作することで、ＰＶ３１２内の無効なＬＶデータを削除することができる。
【００５９】
［ＰＶ管理テーブルおよびＬＶ格納状態テーブルの具体的な操作例］
次に、仮想テープ装置２側でのＰＶ管理テーブル２５１およびＬＶ格納状態テーブル２５２の具体的な操作例を、図８および図９を参照して説明する。図８は、ＰＶ管理テーブルの操作例を示す図である。図９は、ＬＶ格納状態テーブルの操作例を示す図である。図８および図９では、開始指示部２５４が、リオーガニゼーションの開始指示コマンドを発行し、完了通知を受け取った場合の操作を示す。リオーガニゼーションの開始指示コマンドは、移動元ＰＶ名「ＰＶ０００４」の先頭ブロック位置「１」に格納されているＬＶデータ「ＬＶ０００１」を、移動先ＰＶ名「ＰＶ０００５」の先頭ブロック位置「１」へ移動させる指示である。
【００６０】
図８上段に示すように、ＰＶ管理テーブル２５１の操作実施前には、ＰＶ名２５１ａが「ＰＶ０００４」且つ先頭ブロック位置２５１ｃが「１」である場合の有効ＬＶ名２５１ｂに「ＬＶ０００１」が設定されている。
【００６１】
このような状況下で、開始指示部２５４は、完了通知をコントローラ３１から受け取ると、ＰＶ管理テーブル２５１について、リオーガニゼーション対象のＬＶデータに対応する移動元のレコードを削除し、当該ＬＶデータに対応する移動先のレコードを追加する。図８下段に示すように、ＰＶ管理テーブル２５１の操作実施後には、ＰＶ名２５１ａが「ＰＶ０００４」の「ＬＶ０００１」に対応するレコードが削除されている。ＰＶ名２５１ａが「ＰＶ０００５」且つ先頭ブロック位置２５１ｃが「１」である場合の有効ＬＶ名２５１ｂに「ＬＶ０００１」が設定されている。
【００６２】
図９上段に示すように、ＬＶ格納状態テーブル２５２の操作実施前には、ＰＶ名２５２ａが「ＰＶ０００４」の先頭ブロック位置「１」のＬＶ格納状態２５２ｂが「ＬＶ０００１」に設定されている。
【００６３】
このような状況下で、開始指示部２５４は、ＬＶ格納状態テーブル２５２について、リオーガニゼーション対象のＬＶデータに対応する移動元ＰＶの移動元ブロック位置のＬＶ格納状態２５２ｂを「無効」に設定する。加えて、開始指示部２５４は、当該ＬＶデータに対応する移動先ＰＶの移動先ブロック位置のＬＶ格納状態２５２ｂを有効であることを示す当該ＬＶデータのＬＶ名を設定する。図９下段に示すように、ＬＶ格納状態テーブル２５２の操作実施後には、ＰＶ名２５２ａが「ＰＶ０００４」の先頭ブロック位置「１」のＬＶ格納状態２５２ｂが「無効」に設定されている。ＰＶ名２５２ａが「ＰＶ０００５」の先頭ブロック位置「１」のＬＶ格納状態２５２ｂが「ＬＶ０００１」に設定されている。
【００６４】
［種別問合処理のシーケンス］
次に、種別問合処理のシーケンスを、図１０を参照して説明する。図１０は、種別問合処理のシーケンスを示す図である。図１０に示すように、ＶＬＰ０は、コントローラ３１に対してバックエンドライブラリ装置３のタイプを問い合わせるコマンドを発行する（ステップＳ５１）。
【００６５】
すると、バックエンドライブラリ装置３のタイプを問い合わせるコマンドを受け取ったコントローラ３１は、ＶＬＰ０からのコマンドに対しＡＣＫの応答を返す（ステップＳ５２）。ＡＣＫの応答を受け取ったＶＬＰ０は、バックエンドライブラリ装置３のタイプが「エミュレーションタイプ」であることを示す構成情報を記録する（ステップＳ５３）。
【００６６】
なお、コントローラ３１からの応答がない場合は、ＶＬＰ０は、バックエンドライブラリ装置３のタイプが「エミュレーションタイプ」でないと判別する。
【００６７】
［開始指示処理のシーケンス］
次に、開始指示処理のシーケンスを、図１１を参照して説明する。図１１は、開始指示処理のシーケンスを示す図である。図１１に示すように、ＶＬＰ０は、コントローラ３１に対してリオーガニゼーションの開始指示コマンドを発行する（ステップＳ６１）。
【００６８】
すると、リオーガニゼーションの開始指示コマンドを受け取ったコントローラ３１は、開始指示コマンドに応じたメディア管理テーブル３１４への操作を実行する（ステップＳ６２）。すなわち、コントローラ３１は、リオーガニゼーション処理部３１５によるリオーガニゼーション処理を実行する。
【００６９】
そして、コントローラ３１は、ＶＬＰ０に対して、リオーガニゼーションの完了を通知する（ステップＳ６３）。すると、ＶＬＰ０は、完了通知に応じたＰＶ管理テーブル２５１への操作を実行する（ステップＳ６４）。
【００７０】
［リオーガニゼーション処理の手順］
次に、リオーガニゼーション処理の手順を、図１２Ａおよび図１２Ｂを参照して説明する。図１２Ａおよび図１２Ｂは、リオーガニゼーション処理のフローチャートを示す図である。
【００７１】
まず、リオーガニゼーション処理部３１５は、リオーガニゼーションの開始指示コマンドを受領したか否かを判定する（ステップＳ１１）。開始指示コマンドを受領していないと判定した場合（ステップＳ１１；Ｎｏ）、リオーガニゼーション処理部３１５は、開始指示コマンドを受領するまで、判定処理を繰り返す。
【００７２】
一方、開始指示コマンドを受領したと判定した場合（ステップＳ１１；Ｙｅｓ）、リオーガニゼーション処理部３１５は、開始指示コマンドからリオーガニゼーション対象のＬＶデータの移動元と移動先とを取得する（ステップＳ１２）。移動元には、対象のＬＶデータの移動元のＰＶ名（「移動元ＰＶ名」と略記）と、当該ＬＶデータのＰＶ上の先頭ブロック位置（「ＬＶ先頭ブロック位置」と略記）とが含まれる。移動先には、対象のＬＶデータの移動先のＰＶ名（「移動先ＰＶ名」と略記）と、当該ＬＶデータのＰＶ上の先頭ブロック位置（「ＬＶ先頭ブロック位置」と略記）とが含まれる。
【００７３】
続いて、リオーガニゼーション処理部３１５は、開始指示コマンドで指定された、「移動元ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーがメディア管理テーブル３１４上に存在するか否かを判定する。そして、リオーガニゼーション処理部３１５は、当該エントリーの有効フラグ３１４ｄが「ＯＮ」に設定されているか否かを判定する（ステップＳ１３）。「移動元ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーが存在しないか、又は当該エントリーの有効フラグ３１４ｄが「ＯＮ」に設定されていない場合（ステップＳ１３；Ｎｏ）、リオーガニゼーション処理部３１５は、応答としてエラーを通知する。
【００７４】
一方、「移動元ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーが存在する、且つ当該エントリーの有効フラグ３１２ｄが「ＯＮ」に設定されている場合（ステップＳ１３；Ｙｅｓ）、リオーガニゼーション処理部３１５は、以下の判定処理に移行する。すなわち、リオーガニゼーション処理部３１５は、開始指示コマンドで指定された、「移動先ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーがメディア管理テーブル３１４上に存在するか否かを判定する。そして、リオーガニゼーション処理部３１５は、当該エントリーの有効フラグ３１２ｄが「ＯＦＦ」に設定されているか否かを判定する（ステップＳ１４）。「移動先ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーが存在しないか、又は当該エントリーの有効フラグ３１２ｄが「ＯＦＦ」に設定されていない場合（ステップＳ１４；Ｎｏ）、リオーガニゼーション処理部３１５は、応答としてエラーを通知する。
【００７５】
一方、「移動先ＰＶ名」と「ＬＶ先頭ブロック位置」とを含むエントリーが存在する、且つ当該エントリーの有効フラグ３１２ｄが「ＯＦＦ」に設定されている場合（ステップＳ１４；Ｙｅｓ）、リオーガニゼーション処理部３１５は、ステップＳ１５に移行する。ステップＳ１５では、リオーガニゼーション処理部３１５は、対象のＬＶデータの「移動元ＰＶ名」および「ＬＶ先頭ブロック位置」のエントリーに設定されたディスク上の格納位置３１４ｃについて、有効フラグ３１４ｄを「ＯＦＦ」に更新する（ステップＳ１５）。これにより、有効フラグ３１４ｄを「ＯＦＦ」に更新されたエントリーのＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆの値は無効（未確定）として扱われる。
【００７６】
そして、リオーガニゼーション処理部３１５は、対象のＬＶデータの移動先ＰＶ名およびＬＶ先頭ブロック位置のエントリーに設定されたディスク上の格納位置３１４ｃについて、有効フラグ３１４ｄを「ＯＮ」に更新する。そして、リオーガニゼーション処理部３１５は、当該エントリーのＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆに、有効フラグ３１４ｄを「ＯＦＦ」にしたエントリーのＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆの値を書き込む（ステップＳ１６）。これにより、有効フラグ３１４ｄを「ＯＮ」に更新されたエントリーのＬＵＮ＃３１４ｅおよびＬＢＡ＃３１４ｆの値は有効な値として扱われる。
【００７７】
続いて、リオーガニゼーション処理部３１５は、開始指示コマンドで指定された「移動元ＰＶ名」の「ＬＶ先頭ブロック位置」より前のブロック位置について、有効フラグ３１４ｄが「ＯＮ」に設定されたブロック位置があるか否かを判定する（ステップＳ１７）。有効フラグ３１４ｄが「ＯＮ」に設定されたブロック位置があると判定した場合（ステップＳ１７；Ｙｅｓ）、リオーガニゼーション処理部３１５は、以下の処理を実行する。すなわち、リオーガニゼーション処理部３１５は、「移動元ＰＶ名」の「ＬＶ先頭ブロック位置」より前のブロック位置について、有効フラグ３１４ｄを「ＯＦＦ」に更新する（ステップＳ１８）。そして、リオーガニゼーション処理部３１５は、ステップＳ１９に移行する。
【００７８】
一方、有効フラグ３１４ｄが「ＯＮ」に設定されたブロック位置がないと判定した場合（ステップＳ１７；Ｎｏ）、リオーガニゼーション処理部３１５は、ステップＳ１９に移行する。ステップＳ１９では、初期化処理部３１６は、開始指示コマンドで指定された「移動元ＰＶ名」の全てのブロック位置について、有効フラグ３１４ｄが全て「ＯＦＦ」であるか否かを判定する（ステップＳ１９）。有効フラグ３１４ｄのいずれかが「ＯＦＦ」でないと判定した場合（ステップＳ１９；Ｎｏ）、プロセスは、リオーガニゼーション処理を終了する。
【００７９】
一方、有効フラグ３１４ｄが全て「ＯＦＦ」であると判定した場合（ステップＳ１９；Ｙｅｓ）、初期化処理部３１６は、「移動元ＰＶ名」のメディア（ＰＶ）の初期化を実行する（ステップＳ２０）。例えば、初期化処理部３１６は、初期化として、ディレクトリ情報の初期化を実行する。そして、プロセスは、リオーガニゼーション処理を終了する。
【００８０】
［実施例の効果］
上記実施例によれば、ストレージ装置１は、エミュレーションされたＰＶ３１２にＬＶデータを記憶するようにディスク３２に記憶する。ストレージ装置１は、移動元のＰＶ３１２に存在するリオーガニゼーション対象のＬＶデータを移動先のＰＶ３１２へ移動するリオーガニゼーションの開始指示を受け付けると、リオーガニゼーション処理を実行する。ストレージ装置１は、処理対象のＬＶデータについて、メディア管理テーブル３１４に記憶された移動元のＰＶ３１２上の先頭ブロック位置に対応付けられたディスク３２上の格納位置を、移動先のＰＶ３１２上の先頭ブロック位置に対応付けて記憶する。かかる構成によれば、ストレージ装置１は、リオーガニゼーションの開始指示を受け付けると、リオーガニゼーション処理をメディア管理テーブル３１４の操作により行うので、リオーガニゼーション処理の処理速度を高速化できる。すなわち、ストレージ装置１は、ＰＶに対するマウント／アンマウント動作やＰＶに対する書き込み／読み出し動作を伴わないので、リオーガニゼーション処理の処理速度を高速化できる。
【００８１】
また、上記実施例によれば、ストレージ装置１は、処理対象のＬＶデータについて、移動元のＰＶ３１２上の先頭ブロック位置に対応付けられる有効フラグ３１４ｄを無効に設定する。そして、ストレージ装置１は、移動元のＰＶ３１２上の先頭ブロック位置より前の位置に対応付けられる有効フラグ３１４ｄが有効であれば、有効フラグ３１４ｄを無効に設定する。かかる構成によれば、ストレージ装置１は、メディア管理テーブル３１４を操作することで、ＰＶ３１２内の無効なＬＶデータを削除することができる。この結果、ストレージ装置１は、ＶＬＰ２５上から見たＰＶ上のブロック位置の有効／無効とコントローラ３１から見たディスク３２上の格納位置の有効／無効とを自動的に合わせることができる。
【００８２】
また、上記実施例によれば、ストレージ装置１は、移動元のＰＶ３１２に対応付けられた有効フラグ３１４ｄが全て無効になった場合、ＰＶ３１２を初期化する。かかる構成によれば、ストレージ装置１は、リオーガニゼーション処理において、ＬＶデータの再配置を完了したＰＶを自動的に初期化でき、上位の判断に拠らなくても効率的にＰＶを初期化することができる。
【００８３】
［その他］
なお、開始指示部２５４は、リオーガニゼーションの開始指示コマンドをコントローラ３１に発行する。この開始指示コマンドは、例えば、１個のリオーガニゼーション対象のＬＶデータについて、移動元と移動先とを含むようにした。しかしながら、開始指示コマンドは、これに限定されず、複数のリオーガニゼーション対象のＬＶデータについて、それぞれ移動元と移動先とを纏めて指定されるようにしても良い。この場合、リオーガニゼーション処理部３１５は、リオーガニゼーション対象として指定されたＬＶデータの数だけ、リオーガニゼーション処理を繰り返し行えば良い。そして、初期化処理部３１６は、リオーガニゼーション処理部３１５による処理後に初期化処理を行えば良い。かかる構成にすれば、リオーガニゼーション処理部３１５は、さらに、リオーガニゼーション処理の処理速度を高速化することができる。
【００８４】
また、バックエンドライブラリ装置３が「エミュレーションタイプ」であって、書き込み／読み出し動作を伴う場合、コントローラ３１は、リオーガニゼーション処理の際、例えば、ＬＶデータの重複排除機能を実行する。ＬＶデータの重複排除機能とは、ＬＶデータの保存に必要なデータを少なくする圧縮機能に対応する。この場合、コントローラ３１は、リオーガニゼーション処理の際、書き込み／読み出し動作に加え、ＬＶデータの重複排除機能などのファームウェアの動作を伴うので、リオーガニゼーション処理の処理速度に影響を与えてしまう。しかしながら、上記実施例によれば、バックエンドライブラリ装置３が「エミュレーションタイプ」である場合であっても、ストレージ装置１は、書き込み／読み出し動作を伴わないので、ＬＶデータの重複排除機能などのファームウェアの動作も伴わない。したがって、ストレージ装置１は、ＬＶデータの重複排除機能などのファームウェアの動作を伴わないので、リオーガニゼーション処理の処理時間の短縮を図ることができる。
【００８５】
また、図示したストレージ装置１の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、ストレージ装置１の分散・統合の具体的態様は図示のものに限られず、その全部または一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、タイプ判別部２５３と開始指示部２５４とを１個の部に統合しても良い。リオーガニゼーション処理部３１５を、開始指示コマンドを受け付ける受付部とリオーガニゼーション処理を実行する実行部とに分散しても良い。また、リオーガニゼーション処理部３１５を、ＬＶデータのＰＶ間の移動を実現する移動部と、有効フラグ３１４ｄの値を更新する更新部とに分散しても良い。
【符号の説明】
【００８６】
１  ストレージ装置
２  仮想テープ装置
３  バックエンドライブラリ装置
４  ホスト装置
２１  ＴＶＣ
２２  ＩＣＰ
２３  ＰＬＰ
２４  ＩＤＰ
２５  ＶＬＰ
２５１  ＰＶ管理テーブル
２５２  ＬＶ格納状態テーブル
２５３  タイプ判別部
２５４  開始指示部
３１  コントローラ
３２  ディスク
３１１  ロボット
３１２  ＰＶ
３１３  ドライブ
３１４  メディア管理テーブル
３１５  リオーガニゼーション処理部
３１６  初期化処理部
【図１】
2014206873.tif 000003
【図２】
2014206873.tif 000004
【図３】
2014206873.tif 000005
【図４】
2014206873.tif 000006
【図５】
2014206873.tif 000007
【図６】
2014206873.tif 000008
【図７】
2014206873.tif 000009
【図８】
2014206873.tif 000010
【図９】
2014206873.tif 000011
【図１０】
2014206873.tif 000012
【図１１】
2014206873.tif 000013
【図１２Ａ】
2014206873.tif 000014
【図１２Ｂ】
2014206873.tif 000015
【図１３】
2014206873.tif 000016
【図１４】
2014206873.tif 000017
【図１５】
2014206873.tif 000018
【図１６】
2014206873.tif 000019