(57)【要約】【課題】記録媒体に対するアクセスの待ち時間を減らすこと。【解決手段】記憶部１ａは、記録媒体Ｍ１と記録媒体Ｍ１に格納されたデータの同期データの格納先である記録媒体Ｍ２との組合せの情報を記憶する。処理部１ｂは、アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報と記憶部１ａに記憶された組合せの情報に基づいて、複数の記録媒体のうち、データの格納先に対応付けられた記録媒体Ｍ１と、記録媒体Ｍ２を特定する。処理部１ｂは、特定された記録媒体Ｍ１の利用状況を確認し、記録媒体Ｍ１が何れかのドライブを用いてアクセスされている場合、特定された記録媒体Ｍ２に対する他のドライブを用いたアクセスをライブラリ装置２に指示する。【選択図】図１
2018136752.tif 000002
【特許請求の範囲】
【請求項１】
第１の記録媒体と、第２の記録媒体とを含む複数の記録媒体を収納し、各々の記録媒体へのアクセスに用いられる複数のドライブを備え、前記複数のドライブを使用して前記複数の記録媒体のうち少なくとも２つの記録媒体間でデータの同期処理を行うライブラリ装置と、
アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報に基づいて、前記複数の記録媒体のうち、前記データの格納先に対応付けられた前記第１の記録媒体と、該データの同期データの格納先の１つである前記第２の記録媒体を特定し、特定された前記第１の記録媒体の利用状況を確認し、前記第１の記録媒体が何れかのドライブを用いてアクセスされている場合、特定された前記第２の記録媒体に対する他のドライブを用いたアクセスを前記ライブラリ装置に指示する情報処理装置と、
を有する情報処理システム。
【請求項２】
前記識別情報は、前記データの格納先のディレクトリに対応するシンボリックリンクである、請求項１記載の情報処理システム。
【請求項３】
前記情報処理装置は、前記シンボリックリンクに対応するディレクトリのパスであって前記第１の記録媒体の識別子を含む第１のパスを、前記第２の記録媒体の識別子を含む第２のパスに変換することで、前記データに対するアクセス先を前記第１の記録媒体から前記第２の記録媒体に切り替える、請求項２記載の情報処理システム。
【請求項４】
前記情報処理装置は、前記第１の記録媒体および前記第２の記録媒体のうち前記データの更新が行われた方を示す更新情報を記憶し、前記更新情報に基づいて、前記第１の記録媒体および前記第２の記録媒体を用いた前記同期処理を、前記ライブラリ装置に指示する、請求項１乃至３の何れか１項に記載の情報処理システム。
【請求項５】
前記情報処理装置は、前記同期処理を行っている間に前記データに対する前記アクセス要求を受け付けると、前記ライブラリ装置による前記同期処理を中断させ、前記アクセス要求に応じたアクセスを前記ライブラリ装置に指示する、請求項４記載の情報処理システム。
【請求項６】
前記情報処理装置は、前記第１の記録媒体に格納された全ての第１の同期対象データを前記第２の記録媒体に格納した後に、前記第２の記録媒体に格納された第２の同期対象データを前記第１の記録媒体に格納するように前記ライブラリ装置による前記同期処理を制御する、請求項４または５記載の情報処理システム。
【請求項７】
前記情報処理装置は、所定のアプリケーションにより発行された前記アクセス要求を取得する第１のファイルシステムと、取得された前記アクセス要求に含まれる前記アクセスパスと前記第１の記録媒体の識別子との対応関係を管理する第２のファイルシステムとを実行し、前記第２のファイルシステムにより、前記アクセスパスを前記第１の記録媒体の識別子に変換することで、前記第１の記録媒体を特定する、請求項１乃至６の何れか１項に記載の情報処理システム。
【請求項８】
前記情報処理装置は、前記同期処理の対象となる前記第１の記録媒体および前記第２の記録媒体を含む記録媒体の組合せの情報を記憶する記憶部を有し、前記識別情報に基づいて前記第１の記録媒体を特定すると、前記記憶部に記憶された前記組合せの情報を参照して、前記第１の記録媒体と同じ前記組合せに属する前記第２の記録媒体を特定する、請求項１乃至７の何れか１項に記載の情報処理システム。
【請求項９】
記録媒体へのアクセスに用いられる複数のドライブを有しており複数の記録媒体を収納するライブラリ装置と接続可能な情報処理装置であって、
第１の記録媒体と前記第１の記録媒体に格納されたデータの同期データの格納先である第２の記録媒体との組合せの情報を記憶する記憶部と、
アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報と前記記憶部に記憶された前記組合せの情報に基づいて、前記複数の記録媒体のうち、前記データの格納先に対応付けられた前記第１の記録媒体と、前記第２の記録媒体を特定し、特定された前記第１の記録媒体の利用状況を確認し、前記第１の記録媒体が何れかのドライブを用いてアクセスされている場合、特定された前記第２の記録媒体に対する他のドライブを用いたアクセスを前記ライブラリ装置に指示する処理部と、
を有する情報処理装置。
【請求項１０】
記録媒体へのアクセスに用いられる複数のドライブを有しており複数の記録媒体を収納するライブラリ装置と接続可能なコンピュータに、
アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報に基づいて、前記複数の記録媒体のうち、前記データの格納先に対応付けられた第１の記録媒体と、該データの同期データの格納先の１つである第２の記録媒体を特定し、
特定された前記第１の記録媒体の利用状況を確認し、前記第１の記録媒体が何れかのドライブを用いてアクセスされている場合、特定された前記第２の記録媒体に対する他のドライブを用いたアクセスを前記ライブラリ装置に指示する、
処理を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理システム、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
現在、複数の記録媒体を収納可能なライブラリ装置が利用されている。記録媒体の一例として、磁気テープ媒体が挙げられる。ライブラリ装置は、情報処理装置に接続され、記録媒体に記憶されたデータに対する情報処理装置によるアクセスを可能にする。
【０００３】
例えば、ＬＴＦＳ（Linear Tape File System）と呼ばれるファイルシステムを用いて磁気テープ媒体に格納されたデータを管理するシステムの提案がある。ＬＴＦＳでは、磁気テープ媒体に記録されたデータをファイル単位で取り扱えるようにする。
【０００４】
また、２つの記録媒体に同じデータを格納することで、１つの記録媒体が使用不可になっても、残りの記録媒体により運用を継続可能にするストレージ装置の提案もある。
なお、システムダウン時に、Ｉ／Ｏ（Input / Output）要求キューをチェックして正系装置および副系装置の更新内容を一致させることで、正系装置および副系装置の内容を常に同一に保持する情報処理システムの提案もある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１６−５１２９４号公報
【特許文献２】特開２０１２−１９４８６７号公報
【特許文献３】特開平１１−２８２６３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
１つの記録媒体に対し、同時期に複数のアクセス要求が発生することがある。この場合、例えば、ライブラリ装置により、先に受け付けたアクセス要求に応じたアクセス（先のアクセス）を行い、先のアクセスが完了した後に、後に受け付けたアクセス要求に応じたアクセス（後のアクセス）を行うことが考えられる。しかし、この場合、後のアクセスの開始までに待ち時間が発生するという問題がある。
【０００７】
１つの側面では、本発明は、記録媒体に対するアクセスの待ち時間を減らすことを目的とする。
【課題を解決するための手段】
【０００８】
１つの態様では、情報処理システムが提供される。情報処理システムは、ライブラリ装置と情報処理装置とを有する。ライブラリ装置は、第１の記録媒体と、第２の記録媒体とを含む複数の記録媒体を収納し、各々の記録媒体へのアクセスに用いられる複数のドライブを備え、複数のドライブを使用して複数の記録媒体のうち少なくとも２つの記録媒体間でデータの同期処理を行う。情報処理装置は、アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報に基づいて、複数の記録媒体のうち、データの格納先に対応付けられた第１の記録媒体と、該データの同期データの格納先の１つである第２の記録媒体を特定し、特定された第１の記録媒体の利用状況を確認し、第１の記録媒体が何れかのドライブを用いてアクセスされている場合、特定された第２の記録媒体に対する他のドライブを用いたアクセスをライブラリ装置に指示する。
【発明の効果】
【０００９】
１つの側面では、記録媒体に対するアクセスの待ち時間を減らすことができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施の形態の情報処理システムを示す図である。
【図２】第２の実施の形態の情報処理システムの例を示す図である。
【図３】サーバのハードウェア例を示す図である。
【図４】ライブラリのハードウェア例を示す図である。
【図５】ＬＴＦＳによるファイル管理例を示す図である。
【図６】テープ媒体のパーティションの例を示す図である。
【図７】情報処理システムの機能例を示す図である。
【図８】媒体管理情報の例を示す図である。
【図９】アクセス制御例を示すフローチャートである。
【図１０】アクセス実行例を示すフローチャートである。
【図１１】同期処理例を示すフローチャートである。
【図１２】コピー順のソート例を示す図である。
【図１３】アクセス制御の他の例を示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本実施の形態について図面を参照して説明する。
［第１の実施の形態］
図１は、第１の実施の形態の情報処理システムを示す図である。第１の実施の形態の情報処理システムは、情報処理装置１およびライブラリ装置２を含む。情報処理装置１およびライブラリ装置２は、所定のケーブルを用いて接続されている。情報処理装置１およびライブラリ装置２は、ネットワークを介して接続されてもよい。
【００１２】
ライブラリ装置２は、複数の記録媒体を収納可能である。記録媒体は、例えば、磁気テープ媒体である。記録媒体は、光ディスク媒体などの他の種類の記録媒体でもよい。記録媒体は、各種のデータを記憶する。
【００１３】
情報処理装置１は、ライブラリ装置２に格納されたデータに対する端末装置３，４によるアクセス要求を受け付ける。例えば、情報処理装置１および端末装置３，４は、ネットワーク５に接続されている。端末装置３，４は、ネットワーク５を介して、情報処理装置１にアクセス要求を送信する。
【００１４】
情報処理装置１は、ライブラリ装置２に収納された複数の記録媒体に記憶されたデータに対する端末装置３，４によるアクセスを支援する。例えば、情報処理装置１は、ＬＴＦＳと呼ばれるファイルシステム機能を提供し、記録媒体に記憶されたデータを、端末装置３，４によりファイルとして認識させてもよい。情報処理装置１は、端末装置３，４から受け付けたアクセス要求に応じて、アクセス対象の記録媒体に対するアクセスの実行をライブラリ装置２に指示する。情報処理装置１は、ライブラリ装置２によるアクセスの実行結果をライブラリ装置２から取得する。情報処理装置１は、ライブラリ装置２から取得した実行結果を端末装置３，４に応答する。
【００１５】
ここで、情報処理装置１は、単一の記録媒体に対するアクセス競合を回避する機能を提供する。情報処理装置１は、記憶部１ａおよび処理部１ｂを有する。
記憶部１ａは、ＲＡＭ（Random Access Memory）などの揮発性記憶装置でもよいし、ＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの不揮発性記憶装置でもよい。処理部１ｂは、ＣＰＵ（Central Processing Unit）、ＤＳＰ（Digital Signal Processor）、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field Programmable Gate Array）などを含み得る。処理部１ｂはプログラムを実行するプロセッサであってもよい。ここでいう「プロセッサ」には、複数のプロセッサの集合（マルチプロセッサ）も含まれ得る。
【００１６】
また、ライブラリ装置２は、情報処理装置１と接続可能であり、シェルフ２ａおよびドライブ２ｂ，２ｃを有する。シェルフ２ａは、複数の記録媒体を収納する。複数の記録媒体は、記録媒体Ｍ１，Ｍ２を含む。記録媒体Ｍ１の媒体名（識別子）は“ＬＴ００１”である。記録媒体Ｍ２の媒体名（識別子）は“ＬＴ００２”である。ドライブ２ｂ，２ｃは、各々の記録媒体へのアクセスに用いられる。ドライブ２ｂ，２ｃの各々は、１つの記録媒体を収納し、収納された記録媒体に対するアクセス（データの読み出しや書き込み）を行う。ライブラリ装置２は、ライブラリ装置２の内部で記録媒体を搬送するロボット（図１では図示を省略している）を有する。ライブラリ装置２は、ロボットを用いて、シェルフ２ａおよびドライブ２ｂ，２ｃの間での記録媒体の搬送を行う。
【００１７】
ライブラリ装置２は、ドライブ２ｂ，２ｃを使用して複数の記録媒体のうち少なくとも２つの記録媒体間でデータの同期処理を行う。例えば、ライブラリ装置２は、記録媒体Ｍ１に記憶されたデータの複製（同期データと称する）を、記録媒体Ｍ２にも格納することで、記録媒体Ｍ１，Ｍ２間のデータの同期処理を行う。
【００１８】
記録媒体Ｍ１，Ｍ２が記憶するデータは、ファイルでもよい。例えば、記録媒体Ｍ１は、ファイル“ａ．ｔｘｔ”およびファイル“ｂ．ｔｘｔ”を記憶する（テキスト形式は一例であり、他の形式のファイルでもよい）。記録媒体Ｍ２も同様に、ファイル“ａ．ｔｘｔ”およびファイル“ｂ．ｔｘｔ”を記憶する。
【００１９】
記憶部１ａは、記録媒体Ｍ１と記録媒体Ｍ１に記憶されたデータの同期データを記憶する記録媒体Ｍ２との組合せの情報を記憶する。１つの組合せには、３以上の記録媒体が所属してもよい。記録媒体の組合せは、記録媒体のグループとも呼べる。
【００２０】
例えば、記録媒体Ｍ１，Ｍ２が属する組合せの名称（グループ名と称する）を“ｇｒｏｕｐ１”とすると、グループ名“ｇｒｏｕｐ１”を、当該組合せの識別情報と考えてもよい。また、記録媒体Ｍ１の媒体名を“ＬＴ００１”、記録媒体Ｍ２の媒体名を“ＬＴ００２”とする。この場合、記憶部１ａは、グループ名“ｇｒｏｕｐ１”と媒体名の組“｛ＬＴ００１，ＬＴ００２｝”との対応関係も記憶する。
【００２１】
前述のように、情報処理装置１はＬＴＦＳを提供することが考えられる。ＬＴＦＳを用いる場合、情報処理装置１は、特定の記録媒体（例えば、記録媒体Ｍ１）に記憶されたファイルを指定するためのシンボリックリンクを端末装置３，４に提供する。シンボリックリンクは、ファイルシステムの機能上、該当の組合せに属する何れか１つの記録媒体の媒体名に対応するディレクトリを指し示す。当該ディレクトリは、該当の媒体名を含む所定のアクセスパス（単にパスと称することがある）によって表される。
【００２２】
例えば、記憶部１ａは、シンボリックリンク“ｔｍｐ”と実際のディレクトリ“／ｘｘｘ／ＬＴ００１”との対応関係を記憶する。そうすると、シンボリックリンク“ｔｍｐ”から媒体名“ＬＴ００１”を特定可能である。媒体名“ＬＴ００１”が特定されると、記憶部１ａに記憶された媒体名の組合せの情報“｛ＬＴ００１，ＬＴ００２｝”を基に、媒体名“ＬＴ００１”と組になっている“ＬＴ００２”を特定可能である。したがって、この場合、シンボリックリンク“ｔｍｐ”を、記録媒体Ｍ１，Ｍ２が属する組合せに間接的に対応付けられている識別情報と考えることができる。なお、データ毎（ファイル毎）に、シンボリックリンク“ｔｍｐ”の指定先は異なってもよい。例えば、あるファイルでは“ｔｍｐ”のリンク先を“ＬＴ００１”に対応するパスとし、別のファイルでは“ｔｍｐ”のリンク先を“ＬＴ００２”に対応するパスとしてもよい。
【００２３】
処理部１ｂは、アクセス要求されたデータの格納先の記録媒体へのアクセスパスを指定する識別情報に基づいて、複数の記録媒体のうち、データの格納先に対応付けられた第１の記録媒体と、該データの同期データの格納先の１つである第２の記録媒体を特定する。
【００２４】
１つの例として、端末装置４は、コマンド“ｖｉ  ／ｔｍｐ／ａ．ｔｘｔ”に応じたアクセス要求を情報処理装置１に入力する（コマンド“ｖｉ”は一例であり他のコマンドでもよい）。この場合、アクセス要求は、ファイルに対応するパス“／ｔｍｐ／ａ．ｔｘｔ”の指定を含む。前述のように、“ｔｍｐ”はシンボリックリンクであり、実際のディレクトリのパス“／ｘｘｘ／ＬＴ００１”を指し示す識別情報である。パス“／ｘｘｘ／ＬＴ００１”は媒体名“ＬＴ００１”を含む。
【００２５】
したがって、処理部１ｂは、当該シンボリックリンクに対応するパスに含まれる媒体名により記録媒体Ｍ１を特定できる。更に、処理部１ｂは、記憶部１ａに記憶された媒体名の組合せ“｛ＬＴ００１，ＬＴ００２｝”の情報に基づいて、媒体名“ＬＴ００２”を特定する。こうして、処理部１ｂは、記録媒体Ｍ１と組になっている記録媒体Ｍ２を特定する。
【００２６】
そして、処理部１ｂは、特定された第１の記録媒体の利用状況を確認する。例えば、処理部１ｂは、ライブラリ装置２に対するアクセス指示状況の履歴から記録媒体Ｍ１の利用状況を確認する。あるいは、処理部１ｂは、記録媒体Ｍ１の利用状況をライブラリ装置２に問い合わせることで、記録媒体Ｍ１の利用状況を確認してもよい。
【００２７】
記録媒体Ｍ１の利用状況の確認により、記録媒体Ｍ１が現在利用中でなければ、処理部１ｂは、記録媒体Ｍ１に記憶された該当のデータに対するアクセス指示をライブラリ装置２に出力する。
【００２８】
一方、本例では、ライブラリ装置２は、ドライブ２ｂを用いて、記録媒体Ｍ１に記憶されたファイル“ｂ．ｔｘｔ”に対する端末装置３からのアクセスを実行中であるとする。すなわち、記録媒体Ｍ１は、ドライブ２ｂを用いてアクセスされている（記録媒体Ｍ１を利用中である）。この場合、処理部１ｂは、ドライブ２ｂ以外の他のドライブ（例えば、ドライブ２ｃ）を用いた記録媒体Ｍ２に対するアクセスをライブラリ装置２に指示する。処理部１ｂは、アクセスに用いるドライブをライブラリ装置２に対して指定してもよいし、ライブラリ装置２により空きドライブを選択させてもよい。
【００２９】
具体的には、処理部１ｂは、パス“／ｘｘｘ／ＬＴ００１”における媒体名に相当する部分“ＬＴ００１”を、記録媒体Ｍ２の媒体名“ＬＴ００２”に変換することで、アクセス先のパスを切り替える。この処理は、シンボリックリンクによるリンク先を切り替える処理であるともいえる。すなわち、処理部１ｂは、アクセス先のファイルを指定するパスを、シンボリックリンクを含む“／ｔｍｐ／ａ．ｔｘｔ”から、“／ｘｘｘ／ＬＴ００１／ａ．ｔｘｔ”を介して、“／ｘｘｘ／ＬＴ００２／ａ．ｔｘｔ”に変換する。
【００３０】
そして、処理部１ｂは、変換後のパスに対応するアクセス指示を、ライブラリ装置２に出力する。例えば、当該アクセス指示は、アクセス対象として記録媒体Ｍ２を指定する情報、および、パス“／ｘｘｘ／ＬＴ００２／ａ．ｔｘｔ”に対応するファイルが記録された記録媒体Ｍ２上のアドレス範囲を指定する情報を含む。処理部１ｂは、ＬＴＦＳで用いられる所定のインデックス情報（例えば、記憶部１ａに格納される）に基づいて、変換後のパスに対応する記録媒体Ｍ２および記録媒体Ｍ２上のアドレス範囲を特定してもよい。あるいは、処理部１ｂは、変換後のパスをライブラリ装置２に指定し、ライブラリ装置２により、当該変換後のパスに対応する記録媒体Ｍ２上のアドレス範囲を、記録媒体Ｍ２のインデックス情報を基に特定させてもよい。
【００３１】
ライブラリ装置２は、処理部１ｂによるアクセス指示を受け付ける。例えば、ライブラリ装置２は、アクセス指示により、記録媒体Ｍ２の所定のアドレス範囲に対するアクセスが要求されていることを認識する。ライブラリ装置２は、ロボットにより、シェルフ２ａに収納されている記録媒体Ｍ２を、ドライブ２ｃに搬送する。ライブラリ装置２は、ドライブ２ｃを用いて、記録媒体Ｍ２における該当のアドレス範囲のデータ（ファイル）を読み出し、情報処理装置１に提供する。
【００３２】
処理部１ｂは、ライブラリ装置２により読み出されたデータを取得する。そして、処理部１ｂは、読み出されたデータを端末装置４に応答する。その後、処理部１ｂは、端末装置４による該当のデータに対する操作（例えば、エディタによる編集など）を受け付け、操作に応じたデータの更新や、データに対するアクセスの終了などを、ライブラリ装置２に指示する。
【００３３】
ライブラリ装置２は、該当のデータに対するアクセスが終了すると、ドライブ２ｃに収納された記録媒体Ｍ２をロボットにより搬送し、シェルフ２ａの所定の位置に収める。
なお、上記の処理の結果、記録媒体Ｍ１，Ｍ２の各々に記憶されたデータの同一性は損なわれる。このため、処理部１ｂは、ライブラリ装置２を用いて、所定のタイミングで、記録媒体Ｍ１に記憶されたデータと、記録媒体Ｍ２に記憶されたデータとを最新の状態に同期させることで、記録媒体Ｍ１，Ｍ２の各々に記憶されたデータの同一性を回復させる。
【００３４】
このように、情報処理装置１は、記録媒体Ｍ１の利用状況に応じて、記録媒体Ｍ２をアクセス先として選択する。これにより、単一の記録媒体に対するアクセス競合を回避でき、記録媒体に対するアクセスの待ち時間を減らすことができる。
【００３５】
ここで、上記の例において、ファイル“ａ．ｔｘｔ”およびファイル“ｂ．ｔｘｔ”が記録媒体Ｍ１にのみ格納されている場合を考える。この場合、記録媒体Ｍ１が、ファイル“ｂ．ｔｘｔ”を指定した先のアクセス要求によって利用中であると、ライブラリ装置２は、“ａ．ｔｘｔ”を指定した後のアクセス要求を受け付けたとしても、後のアクセス要求に応じたアクセスを直ちには行えない。すなわち、記録媒体Ｍ１に対してアクセス競合が発生し、後のアクセス要求に応じたアクセスに待ちが発生する。
【００３６】
一方、第１の実施の形態の情報処理システムによれば、ファイル“ａ．ｔｘｔ”およびファイル“ｂ．ｔｘｔ”は、記録媒体Ｍ１，Ｍ２の両方に格納されている。このため、仮に、ドライブ２ｂを用いて記録媒体Ｍ１のファイル“ｂ．ｔｘｔ”にアクセス中であったとしても、ドライブ２ｃを用いて記録媒体Ｍ２のファイル“ａ．ｔｘｔ”にアクセス可能である。すなわち、ファイル“ｂ．ｔｘｔ”にアクセス中である場合に、ファイル“ａ．ｔｘｔ”に対するアクセス要求を受け付けたとしても、当該アクセス要求に応じたアクセスを待たなくてよい。こうして、複数の記録媒体に対してアクセスを分散させることで、単一の記録媒体に対するアクセス競合を回避でき、記録媒体に対するアクセスの待ち時間を減らすことができる。その結果、データに対するアクセスの応答遅延を低減でき、データに対するアクセスの高速化を図れる。
【００３７】
更に、例示したように、アクセス先の記録媒体の切り替えに、シンボリックリンクの仕組みを活用することで、リンク先のパスの変更により、アクセス先の切り替えを高速に行える。また、端末装置３，４側にアクセス先の記録媒体を意識させずに済み、データ利用への影響を抑えられる。
【００３８】
なお、処理部１ｂは、記録媒体Ｍ１を利用中であることを確認した後に、記録媒体Ｍ１と組になっている記録媒体Ｍ２を特定し、記録媒体Ｍ２に対するアクセスをライブラリ装置２に指示してもよい。
【００３９】
以下では、情報処理装置１の一例として、ＬＴＦＳを提供するサーバコンピュータを挙げて、情報処理装置１の機能を更に詳細に説明する。
［第２の実施の形態］
図２は、第２の実施の形態の情報処理システムの例を示す図である。第２の実施の形態の情報処理システムは、サーバ１００およびライブラリ２００を含む。サーバ１００およびライブラリ２００は、所定のケーブルを用いて接続されている。サーバ１００およびライブラリ２００は、ＳＡＮ（Storage Area Network）などのネットワークを介して接続されてもよい。サーバ１００は、ネットワーク１０に接続されている。ネットワーク１０は、例えば、ＬＡＮ（Local Area Network）である。ネットワーク１０には、クライアント３００，４００が接続されている。サーバ１００およびクライアント３００，４００は、ネットワーク１０を介して通信可能である。
【００４０】
サーバ１００は、クライアント３００，４００における業務処理に用いられるデータをクライアント３００，４００に提供するサーバコンピュータである。サーバ１００は、ファイルサーバとして機能し、ファイルの単位で、データを扱えるようにする。
【００４１】
ライブラリ２００は、複数のテープ媒体を収納可能な装置である。ライブラリ２００は、ライブラリ装置と呼ばれてもよい。ここで、テープ媒体は、磁気テープ媒体または磁気テープなどと呼ばれることもある。テープ媒体の規格の一例として、ＬＴＯ（Linear Tape-Open、登録商標）が挙げられる。ただし、テープ媒体は、ＤＬＴ（Digital Linear Tape、登録商標）やＤＤＳ（Digital Data Storage）など、ＬＴＯ以外の規格のものでもよい。
【００４２】
クライアント３００，４００は、ユーザの業務に用いられるクライアントコンピュータである。クライアント３００，４００は、サーバ１００を介してライブラリ２００に収納されたテープ媒体に記憶されたファイルにアクセスする。ユーザは、クライアント３００，４００を操作して、ファイルの内容の確認や、ファイルの内容の更新を行える。例えば、クライアント３００，４００を用いるユーザは、クライアント３００，４００により実行される所定のターミナルエミュレータを用いて、サーバ１００にログインし、ファイル操作のコマンドをサーバ１００に入力してもよい。また、クライアント３００，４００は、テープ媒体に格納されたファイルを、サーバ１００を介してダウンロードすることもできる。
【００４３】
ここで、サーバ１００は、ＬＴＦＳの機能を有する。サーバ１００は、ＬＴＦＳの機能により、ライブラリ２００に収納されたテープ媒体に記憶されたデータをファイルとしてクライアント３００，４００に提供する。
【００４４】
ＬＴＦＳは、例えば、ファイルのアーカイブ運用に用いられる。「アーカイブ」とは、アクセス頻度は低いが保存に比較的大きなストレージ容量を要するファイル（例えば、動画ファイル、医療用画像ファイル、または、経理情報など）を比較的長期に保管することを意味する。具体的には、アクセス頻度の高いファイルは、テープ媒体に比べて高速にアクセスが可能な（サーバ１００上の）ＨＤＤやＳＳＤ（Solid State Drive）に格納しておく。一方、アクセス頻度の低いファイルは、ＨＤＤやＳＳＤよりも安価なテープ媒体にアーカイブしておくことで、低コストで大量データを保存可能となる。なお、アーカイブ対象のファイルのアクセス頻度は比較的低い。このため、アーカイブ対象のファイルは、あるタイミングで更新された後、短期間の間に再度更新される可能性は比較的低いと考えてもよい。
【００４５】
図３は、サーバのハードウェア例を示す図である。サーバ１００は、プロセッサ１０１、ＲＡＭ１０２、ＨＤＤ１０３、ホストバスアダプタ（ＨＢＡ：Host Bus Adapter）１０４、画像信号処理部１０５、入力信号処理部１０６、媒体リーダ１０７および通信インタフェース１０８を有する。各ハードウェアはサーバ１００のバスに接続されている。
【００４６】
プロセッサ１０１は、サーバ１００の情報処理を制御するハードウェアである。プロセッサ１０１は、マルチプロセッサであってもよい。プロセッサ１０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ１０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００４７】
ＲＡＭ１０２は、サーバ１００の主記憶装置である。ＲＡＭ１０２は、プロセッサ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０２は、プロセッサ１０１による処理に用いる各種データを記憶する。
【００４８】
ＨＤＤ１０３は、サーバ１００の補助記憶装置である。ＨＤＤ１０３は、内蔵した磁気ディスクに対して、磁気的にデータの書き込みおよび読み出しを行う。ＨＤＤ１０３は、ＯＳのプログラム、アプリケーションプログラム、および各種データを記憶する。サーバ１００は、フラッシュメモリやＳＳＤなどの他の種類の補助記憶装置を備えてもよく、複数の補助記憶装置を備えてもよい。
【００４９】
ＨＢＡ１０４は、ライブラリ２００と接続するインタフェースである。ＨＢＡ１０４としては、例えば、ファイバチャネル（ＦＣ：Fibre Channel）インタフェースやＳＡＳ（Serial Attached SCSI、ＳＣＳＩはSmall Computer System Interfaceの略）を用いることができる。
【００５０】
画像信号処理部１０５は、プロセッサ１０１からの命令に従って、サーバ１００に接続されたディスプレイ１１に画像を出力する。ディスプレイ１１として、ＣＲＴ（Cathode Ray Tube）ディスプレイや液晶ディスプレイなどを用いることができる。
【００５１】
入力信号処理部１０６は、サーバ１００に接続された入力デバイス１２から入力信号を取得し、プロセッサ１０１に出力する。入力デバイス１２として、例えば、マウスやタッチパネルなどのポインティングデバイス、キーボードなどを用いることができる。
【００５２】
媒体リーダ１０７は、記録媒体１３に記録されたプログラムやデータを読み取る装置である。記録媒体１３として、例えば、フレキシブルディスク（ＦＤ：Flexible Disk）やＨＤＤなどの磁気ディスク、ＣＤ（Compact Disc）やＤＶＤ（Digital Versatile Disc）などの光ディスク、光磁気ディスク（ＭＯ：Magneto-Optical disk）を使用できる。また、記録媒体１３として、例えば、フラッシュメモリカードなどの不揮発性の半導体メモリを使用することもできる。媒体リーダ１０７は、例えば、プロセッサ１０１からの命令に従って、記録媒体１３から読み取ったプログラムやデータをＲＡＭ１０２またはＨＤＤ１０３に格納する。
【００５３】
通信インタフェース１０８は、ネットワーク１０を介して他の装置と通信を行う。通信インタフェース１０８は、有線通信インタフェースでもよいし、無線通信インタフェースでもよい。
【００５４】
なお、クライアント３００，４００も、サーバ１００と同様のハードウェアを用いて実現できる。
図４は、ライブラリのハードウェア例を示す図である。ライブラリ２００は、プロセッサ２０１、ＲＡＭ２０２、フラッシュメモリ２０３、接続インタフェース２０４、シェルフ２０５、ロボット２０６およびドライブ２０７，２０８を有する。各ハードウェアは、ライブラリ２００のバスに接続されている。
【００５５】
プロセッサ２０１は、ライブラリ２００の情報処理を制御するハードウェアである。プロセッサ２０１は、マルチプロセッサであってもよい。プロセッサ２０１は、例えばＣＰＵ、ＤＳＰ、ＡＳＩＣまたはＦＰＧＡなどである。プロセッサ２０１は、ＣＰＵ、ＤＳＰ、ＡＳＩＣ、ＦＰＧＡなどのうちの２以上の要素の組み合わせであってもよい。
【００５６】
ＲＡＭ２０２は、ライブラリ２００の主記憶装置である。ＲＡＭ２０２は、プロセッサ２０１に実行させるファームウェアのプログラムやアプリケーションプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ２０２は、プロセッサ２０１による処理に用いる各種データを記憶する。
【００５７】
フラッシュメモリ２０３は、ライブラリ２００の補助記憶装置である。フラッシュメモリ２０３は、内蔵の記憶素子に対して、電気的にデータの書き込みおよび読み出しを行う。フラッシュメモリ２０３は、ファームウェアのプログラム、アプリケーションプログラム、および各種データを記憶する。
【００５８】
接続インタフェース２０４は、サーバ１００と接続するインタフェースである。接続インタフェース２０４としては、例えば、ＦＣやＳＡＳのインタフェースを用いることができる。
【００５９】
シェルフ２０５は、複数のテープ媒体を収納する収納棚である。シェルフ２０５は、複数のセルを含む。セルは、１つのテープ媒体を収納する収納スペースである。セルには、ＩＤ（IDentifier）が付される。また、セルと当該セルに収納されるテープ媒体とは１対１に対応しており、セルのＩＤによってテープ媒体を識別することもできる。
【００６０】
ここで、テープ媒体は、磁気テープおよび磁気テープを収容するカートリッジを有する。磁気テープは、磁性体が蒸着または塗布されたテープ状のフィルムである。カートリッジは、磁気テープを収めるための所定形状のケースである。例えば、カートリッジには、テープ媒体の媒体名が付される（バーコードが印字されたラベルがカートリッジに付与されてもよいし、媒体名が記録されたＲＦＩＤ（Radio Frequency IDentifier）タグがカートリッジに内蔵されてもよい）。テープ媒体の媒体名は、テープ媒体の識別子である。
【００６１】
例えば、シェルフ２０５には、テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・が収納されている。テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・として、例えば、前述のようにＬＴＯ規格に準拠したものを使用することができる。
【００６２】
ロボット２０６は、プロセッサ２０１からの指示に応じて、シェルフ２０５に収納されたテープ媒体をドライブ２０７またはドライブ２０８に搬送する。また、ロボット２０６は、プロセッサ２０１からの指示に応じて、ドライブ２０７またはドライブ２０８に収納されたテープ媒体を、シェルフ２０５に搬送する。例えば、ロボット２０６は、テープ媒体のカートリッジに付されたバーコードやＲＦＩＤタグなどを読み取ることで、テープ媒体の媒体名を認識する。
【００６３】
ドライブ２０７，２０８は、プロセッサ２０１からの指示に応じて、テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・に対するデータの書き込みや読み出しを行うテープドライブである。ドライブ２０７には、１つのテープ媒体を収納して、磁気テープに対するデータの書き込みや読み出しを行える。ドライブ２０８にも、同様に、１つのテープ媒体を収納して、磁気テープに対するデータの書き込みや読み出しを行える。ライブラリ２００は、３以上のドライブを有してもよい。
【００６４】
図５は、ＬＴＦＳによるファイル管理例を示す図である。例えば、サーバ１００は、ＯＳのカーネル空間（ＯＳカーネルが存在するＲＡＭ１０２のアドレス空間）を用いて、仮想ファイルシステム２１、ＦＵＳＥ（Filesystem in Userspace）２２およびデバイスドライバ２３を実行する。
【００６５】
仮想ファイルシステム２１は、アプリケーション３１に対して、テープ媒体に記憶されたファイルに対してアクセスするためのディレクトリ構造のビューを提供する。ＦＵＳＥ２２は、サーバ１００のＯＳが提供するソフトウェアインタフェースであり、仮想ファイルシステム２１によるディレクトリ構造へのアクセス要求を受け付け、他のユーザソフトウェア（例えば、ＬＴＦＳ）へ当該アクセス要求を提供する。仮想ファイルシステム２１は、ＦＵＳＥ２２により実現される第１のファイルシステムであるといえる。デバイスドライバ２３は、ライブラリ２００の動作を制御するドライバソフトウェアである。
【００６６】
また、サーバ１００は、ユーザ空間（ユーザ向けのソフトウェアが存在するＲＡＭ１０２のアドレス空間）を用いて、業務用のアプリケーション３１およびＬＴＦＳ３２を実行する。
【００６７】
アプリケーション３１は、仮想ファイルシステム２１が提供するディレクトリ構造に従ってファイルに対するアクセス要求を発行する。アプリケーション３１は、当該アクセス要求の発行により、仮想ファイルシステム２１およびＦＵＳＥ２２を介して、ＬＴＦＳ３２にファイル操作の指示を行える。ＬＴＦＳ３２は、サーバ１００が保持するインデックス情報３３を参照して、該当のファイルを保持するテープ媒体の媒体名、および、該当のファイルが記憶された当該テープ媒体上のアドレスを特定する。ＬＴＦＳ３２は、該当のテープ媒体の所定のドライブへの搬送、および、該当のファイルの書き込みや読み出しを、デバイスドライバ２３を介してライブラリ２００に指示する。ＬＴＦＳ３２は、アクセス要求に含まれるアクセスパスとテープ媒体の識別子との対応関係を、インデックス情報３３により管理する第２のファイルシステムであるといえる。
【００６８】
ここで、テープ媒体に格納されたファイルの指定は、所定のパス（例えば、“／ｔｍｐ／ａ．ｔｘｔ”など）を指定することで行われる。この場合、パスにおける“／ｔｍｐ”の部分はシンボリックリンクとなる。シンボリックリンクは、実際のディレクトリのパスに対応付けられる論理的なリンクである。例えば、シンボリックリンク“／ｔｍｐ”は、ディレクトリのパス“／ＬＴＯ／（媒体名）”に対応付けられる。“（媒体名）”の部分には、所定の媒体名が挿入される。したがって、ＬＴＦＳでは、シンボリックリンクを含むパス“／ｔｍｐ／ａ．ｔｘｔ”を、パス“／ＬＴＯ／（媒体名）／ａ．ｔｘｔ”に変換することで、テープ媒体へのアクセスが行われる。インデックス情報３３には、パス“／ＬＴＯ／（媒体名）／ａ．ｔｘｔ”に対応する該当のテープ媒体のアドレスが登録される。アドレスは、該当のファイルが記録されたテープ媒体上の物理的な記録位置を示す情報である。
【００６９】
図６は、テープ媒体のパーティションの例を示す図である。テープ媒体ＭＴ１の記憶領域は、インデックスパーティションＰ１およびデータパーティションＰ２に区分されている。インデックスパーティションＰ１は、インデックス情報を記録するための領域である。データパーティションＰ２は、ファイルを記録するための領域である。
【００７０】
ここで、インデックス情報は、データパーティションＰ２に記録されたファイルを識別するための情報である。インデックス情報は、データパーティションＰ２におけるディレクトリ構造の情報やファイル属性の情報を含む。また、インデックス情報は、データパーティションＰ２における各ファイルの記録位置（アドレス）を示すファイルポインタを含む。
【００７１】
テープ媒体ＭＴ２，ＭＴ３，ＭＴ４，・・・も、テープ媒体ＭＴ１と同様に、インデックスパーティションおよびデータパーティションを有する。サーバ１００は、テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・からインデックス情報を取得してローカルに保存し、当該インデックス情報を基に、各テープ媒体に記録されたファイルを管理する。
【００７２】
図７は、情報処理システムの機能例を示す図である。サーバ１００は、記憶部１１０、アクセス制御部１２０および同期制御部１３０を有する。
記憶部１１０は、ＲＡＭ１０２の記憶領域やＨＤＤ１０３の記憶領域を用いて実現される。また、アクセス制御部１２０および同期制御部１３０は、プロセッサ１０１により実現される。具体的には、プロセッサ１０１は、ＲＡＭ１０２に記憶されたプログラムを実行することで、アクセス制御部１２０および同期制御部１３０の機能を発揮する。ただし、アクセス制御部１２０および同期制御部１３０は、ＦＰＧＡやＡＳＩＣなどのハードワイヤードロジックにより実現されてもよい。
【００７３】
記憶部１１０は、媒体管理情報を記憶する。媒体管理情報は、テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・を、グループ単位で管理するための情報である。１つのグループには所定数のテープ媒体が属する。第２の実施の形態の例では、所定数を２とする（ただし、３以上の数でもよい）。この場合、１つのグループは２つのテープ媒体のペアと呼べる。あるグループに属する各テープ媒体は、同一のファイル集合を記憶する。すなわち、あるグループに属する複数のテープ媒体により、ファイル集合が冗長に記憶される。
【００７４】
また、記憶部１１０は、テープ媒体ＭＴ１，ＭＴ２，ＭＴ３，ＭＴ４，・・・それぞれから読み出されたインデックス情報を記憶する。サーバ１００および各テープ媒体に格納されるインデックス情報は、各テープ媒体に格納されたファイルが更新されるたびに、アクセス制御部１２０により最新の情報に更新される。
【００７５】
アクセス制御部１２０は、テープ媒体に対するＬＴＦＳによるファイルアクセスを制御する。アクセス制御部１２０は、あるファイルに対するアクセス要求をクライアント３００から取得すると、当該ファイルを格納するテープ媒体を特定する。アクセス制御部１２０は、該当のテープ媒体がファイルアクセスなどに利用されていない場合、該当のテープ媒体に格納されたファイルへのアクセスをライブラリ２００に指示する。また、アクセス制御部１２０は、該当のテープ媒体がファイルアクセスなどに利用されている場合、該当のテープ媒体と同じグループに属する他のテープ媒体に格納されたファイルへのアクセスをライブラリ２００に指示する。
【００７６】
同期制御部１３０は、あるグループに属する２つのテープ媒体に格納されているファイルの同期処理を制御する。ここで、同期処理とは、同じグループに属している複数のテープ媒体に記憶されている各ファイル集合を最新の状態に更新する処理である。同期処理の結果、あるグループに属している第１のテープ媒体に記憶されたファイル集合、および、当該グループに属している第２のテープ媒体に記憶されたファイル集合は、同一となり、各ファイルを構成するデータも同一になる。すなわち、同期処理によって、第１のテープ媒体に記憶されているファイルの更新内容が、第２のテープ媒体の同じ名称のファイルに反映される。また、第２のテープ媒体に記憶されているファイルの更新内容が第１のテープ媒体に記憶されている同じ名称のファイルに反映される。
【００７７】
例えば、同期制御部１３０は、各グループに対する同期処理の実行指示を、定期的に、ライブラリ２００に出力する。このとき、同期制御部１３０は、同期対象の複数のファイルについて、一方のテープ媒体から他方のテープ媒体に各ファイルを複製する順序を決定する（後述する）。
【００７８】
ライブラリ２００は、アクセス実行部２１０を有する。アクセス実行部２１０は、プロセッサ２０１により実現される。具体的には、プロセッサ２０１は、ＲＡＭ２０２に記憶されたプログラムを実行することで、アクセス実行部２１０の機能を発揮する。ただし、アクセス実行部２１０は、ＦＰＧＡやＡＳＩＣなどのハードワイヤードロジックにより実現されてもよい。
【００７９】
アクセス実行部２１０は、ファイルに対するアクセスの指示を受け付ける。アクセス実行部２１０は、ファイルに対するアクセスの指示に応じて、ロボット２０６を制御し、指示されたテープ媒体を、ドライブ２０７またはドライブ２０８に搬送する。アクセス実行部２１０は、ドライブ２０７またはドライブ２０８を用いて該当のテープ媒体に格納されたファイルを読み出し、読み出したファイルをアクセス制御部１２０に応答する。
【００８０】
また、アクセス実行部２１０は、同期処理の実行指示を受け付ける。アクセス実行部２１０は、同期処理の実行指示に応じて、ロボット２０６を制御し、同期対象のグループに属する同期元のテープ媒体を、ドライブ２０７またはドライブ２０８に搬送する。アクセス実行部２１０は、ドライブ２０７またはドライブ２０８を用いて、同期元のテープ媒体から同期対象のファイルを読み出し、ＲＡＭ２０２に格納する。アクセス実行部２１０は、ロボット２０６を制御し、同期対象のグループに属する同期先のテープ媒体を、ドライブ２０７またはドライブ２０８に搬送する。アクセス実行部２１０は、ドライブ２０７またはドライブ２０８を用いて、ＲＡＭ２０２に格納された同期対象のファイルを、同期先のテープ媒体に書き込む。アクセス実行部２１０は、ドライブ２０７およびドライブ２０８に、同期元のテープ媒体および同期先のテープ媒体を収納し、同期元のテープ媒体からの同期対象のファイルの読み出しと、同期先のテープ媒体への同期対象のファイルの書き込みとを行ってもよい。
【００８１】
図８は、媒体管理情報の例を示す図である。媒体管理情報は、テープ媒体のペアに含まれるファイルの更新管理に用いられる情報である。媒体管理情報は、ペア毎に作成され、記憶部１１０に格納される。ここで、テープ媒体ＭＴ１，ＭＴ２は、１つのペアとして管理されるものとする。媒体管理情報１１１は、テープ媒体ＭＴ１，ＭＴ２のペアに対応する媒体管理情報の一例である。以下では、媒体管理情報１１１の左側に付した行番号を用いて、媒体管理情報１１１に含まれる情報を説明する。
【００８２】
１行目は、更新フラグである。更新フラグは、前回同期を行った後に、ペア内の何れかのファイルに対して更新があるか否かを示す。例えば、更新フラグ“０”は、前回同期を行った後に、ペア内の何れかのファイルに対して更新がないことを示す。また、更新フラグ“１”は、前回同期を行った後に、ペア内の何れかのファイルに対して更新があることを示す。
【００８３】
２行目および３行目は、ペアに属するテープ媒体の媒体名（テープ媒体の識別情報）である。例えば、２行目の“ＬＴＯ１２３４Ｌ５”は、テープ媒体ＭＴ１の媒体名である。また、３行目の“ＬＴＯ６７８９Ｌ５”は、テープ媒体ＭＴ２の媒体名である。
【００８４】
４行目は、空行である。
５行目以降は、ペアに含まれるファイルのファイル名のリストである。１つの行に１つのファイル名が登録される。また、各行のファイル名の末尾に（コロン記号“：”に続けて）、更新パラメータが登録される。
【００８５】
更新パラメータは、該当のファイルの最新版がペアのうちのどちらのテープ媒体に格納されているかを示す更新情報である。更新パラメータ“０”は、該当のファイルに対する更新なしであること（すなわち、両方のテープ媒体に最新版が格納されていること）を示す。更新パラメータ“１”は、２行目の媒体名“ＬＴＯ１２３４Ｌ５”に対応するテープ媒体ＭＴ１に、該当のファイルの最新版が格納されていることを示す。更新パラメータ“２”は、３行目の媒体名“ＬＴＯ６７８９Ｌ５”に対応するテープ媒体ＭＴ２に、該当のファイルの最新版が格納されていることを示す。
【００８６】
例えば、媒体管理情報１１１の５行目には、“Ｔｅｘｔ．ｔｘｔ          ：１”という情報が登録されている。これは、テープ媒体ＭＴ１，ＭＴ２の両方に、ファイル名“Ｔｅｘｔ．ｔｘｔ”のファイルが格納されていることを示す。また、当該ファイルの最新版はテープ媒体ＭＴ１に格納されている（テープ媒体ＭＴ２に格納された当該ファイル名のファイルは最新版ではない）ことを示す。
【００８７】
また、媒体管理情報１１１の６行目には、“Ｐｉｃｔｕｒｅ．ｊｐｇ          ：０”という情報が登録されている。これは、テープ媒体ＭＴ１，ＭＴ２の両方に、ファイル名“Ｐｉｃｔｕｒｅ．ｊｐｇ”のファイルが格納されていることを示す。また、当該ファイルが前回同期後から、更新されていないことを示す。
【００８８】
また、媒体管理情報１１１の７行目には、“ＰＰ．ｄａｔ          ：２”という情報が登録されている。これは、テープ媒体ＭＴ１，ＭＴ２の両方に、ファイル名“ＰＰ．ｄａｔ”のファイルが格納されていることを示す。また、当該ファイルの最新版はテープ媒体ＭＴ２に格納されている（テープ媒体ＭＴ１に格納された当該ファイル名のファイルは最新版ではない）ことを示す。
【００８９】
なお、更新フラグの初期値（同期完了直後の値）は“０”である。また、各ファイルに対応する更新パラメータの初期値（同期完了直後の値）は“０”である。
テープ媒体ＭＴ１，ＭＴ２のペアに含まれる他のファイルについても、ファイル名と更新パラメータとが媒体管理情報１１１に登録される。
【００９０】
次に、サーバ１００によるテープ媒体に対するアクセス制御の手順を説明する。ここで、以下の説明では、シンボリックリンクに対して直接対応付けられるテープ媒体（例えば、テープ媒体ＭＴ１）を便宜的に「正媒体」と呼ぶこととする。また、正媒体とペアであるテープ媒体（例えば、テープ媒体ＭＴ２）を便宜的に「副媒体」と呼ぶこととする。副媒体は、正媒体を介して、シンボリックリンクに間接的に対応付けられるテープ媒体であるといえる。
【００９１】
図９は、アクセス制御例を示すフローチャートである。以下、図９に示す処理をステップ番号に沿って説明する。以下に示す手順は、アクセス先ファイルを指定したアクセス要求をサーバ１００が受信すると実行される。アクセス先ファイルは、前述のように、シンボリックリンクを含む所定のパスにより指定される。
【００９２】
（Ｓ１１）アクセス制御部１２０は、クライアント３００からアクセス要求を受信すると、シンボリックリンクによるリンク先をチェックする。そして、アクセス制御部１２０は、アクセス要求で指定されたファイルのリンク先（最新版の格納先）が正媒体であるか否かを確認する。
【００９３】
例えば、アクセス要求は、パス“／ｔｍｐ／ａ．ｔｘｔ”を含む。“／ｔｍｐ”はシンボリックリンクであり、実際のディレクトリのパス“／ＬＴＯ／ＬＴ１２３４Ｌ５”またはパス“／ＬＴＯ／ＬＴ５６７８Ｌ５”を示す（何れのパスかは媒体管理情報１１１の更新パラメータに応じて変更される）。この場合、シンボリックリンクによるリンク先は、媒体名“ＬＴ１２３４Ｌ５”に対応するテープ媒体ＭＴ１、または、媒体名“ＬＴ５６７８Ｌ５”に対応するテープ媒体ＭＴ２である。
【００９４】
アクセス制御部１２０は、記憶部１１０に記憶された媒体管理情報１１１を参照して、該当のファイル“ａ．ｔｘｔ”の最新版が、テープ媒体ＭＴ１およびテープ媒体ＭＴ２のうちの何れに格納されているかをチェックする。該当のファイルの更新パラメータが“０”または“１”である場合、当該ファイルに対応するリンク先（最新版の格納先）は、テープ媒体ＭＴ１であるとする。該当のファイルの更新パラメータが“２”である場合、当該ファイルに対応するリンク先は、テープ媒体ＭＴ２であるとする。なお、ステップＳ１２以降の説明では、ステップＳ１１において、アクセス要求で指定されたファイルに対するリンク先が正媒体の場合を説明する。当該ファイルに対するリンク先が副媒体の場合、アクセス制御部１２０は、副媒体に格納された当該ファイルにアクセスする（手順の説明を省略する）。
【００９５】
（Ｓ１２）アクセス制御部１２０は、正媒体が正常であるか否かを判定する。正媒体が正常である場合、アクセス制御部１２０は、ステップＳ１３に処理を進める。正媒体が正常でない場合、アクセス制御部１２０は、ステップＳ１４に処理を進める。ここで、「正媒体が正常である」とは、正媒体に格納されたファイルに適切にアクセス可能であることを意味する。また、「正媒体が正常でない」とは、正媒体に対して異常（例えば、テープ媒体のカートリッジの破損や磁気テープの劣化や汚損など）が発生しており、正媒体に格納されたファイルにアクセスできないことを意味する。例えば、アクセス制御部１２０は、ライブラリ２００による各テープ媒体の正常／異常の検出結果の情報を収集し、記憶部１１０に記録しておく。アクセス制御部１２０は、記憶部１１０に記憶された各テープ媒体の正常／異常の検出結果の情報を参照することで、正媒体が正常であるか否かを判定する。
【００９６】
（Ｓ１３）アクセス制御部１２０は、該当の正媒体が他ユーザにより使用されていないか否かを判定する。正媒体が他ユーザにより使用されていない場合、アクセス制御部１２０は、ステップＳ１８に処理を進める。正媒体が他ユーザにより使用されている場合、アクセス制御部１２０は、ステップＳ１５に処理を進める。ここで、「正媒体が他ユーザにより使用されている場合」とは、例えば、正媒体が、現在、クライアント４００によるファイルアクセスに用いられている場合である。すなわち、正媒体が、ライブラリ２００の何れかのドライブに収納されて、当該ドライブによりファイルの読み出しや書き込みなどのアクセスが行われている状況である。一方、「正媒体が他ユーザにより使用されていない場合」とは、正媒体が、現在、ファイルアクセスに用いられていない場合である。ステップＳ１３の判定は、正媒体の利用状況の判定であるといえる。
【００９７】
例えば、アクセス制御部１２０は、ライブラリ２００に対するアクセス指示の履歴に基づいて、正媒体が他ユーザにより使用されているか否かを判定する。アクセス指示の履歴は、アクセス制御部１２０によりライブラリ２００に対するアクセス指示に応じて、記憶部１１０に記録されるものでもよい。また、アクセス制御部１２０は、正媒体の利用状況をライブラリ２００に問い合わせ、正媒体の利用状況の問合せ結果（利用中である、または、利用中でないという結果）に基づいて、ステップＳ１３の判定を行ってもよい。
【００９８】
（Ｓ１４）アクセス制御部１２０は、リンクを副媒体へ変更する。具体的には、アクセス制御部１２０は、媒体管理情報１１１に基づいて、正媒体に対応するリンク先のパス“／ＬＴＯ／ＬＴ１２３４Ｌ５”を、副媒体に対応するリンク先のパス“／ＬＴＯ／ＬＴ６７８９Ｌ５”に変更する。なお、正媒体に異常があるため、これ以降、正媒体の異常が回復するまで、正媒体へのリンクは、全て、副媒体へのリンクに切り替えられることになる。そして、アクセス制御部１２０は、ステップＳ２０に処理を進める。
【００９９】
（Ｓ１５）アクセス制御部１２０は、副媒体が正常であるか否かを判定する。副媒体が正常である場合、アクセス制御部１２０は、ステップＳ１６に処理を進める。副媒体が正常でない場合、アクセス制御部１２０は、ステップＳ１７に処理を進める。ここで、アクセス制御部１２０は、記憶部１１０に記憶された媒体管理情報１１１に基づいて、正媒体に対する副媒体を特定する。また、アクセス制御部１２０は、副媒体が正常であるか否かの判定をステップＳ１２と同様にして行える。
【０１００】
（Ｓ１６）アクセス制御部１２０は、媒体管理情報１１１を参照して、アクセス要求により指定されたファイルのファイル名に対応する更新パラメータが“０”であるか否かを判定する。該当のファイルのファイル名に対応する更新パラメータが“０”である場合、アクセス制御部１２０は、ステップＳ１９に処理を進める。該当のファイルのファイル名に対応する更新パラメータが“０”でない場合（すなわち、“１”である場合）、アクセス制御部１２０は、ステップＳ１７に処理を進める。
【０１０１】
（Ｓ１７）アクセス制御部１２０は、正媒体に対するアクセス完了まで待機する。正媒体に対するアクセスが完了すると、アクセス制御部１２０は、ステップＳ１８に処理を進める。
【０１０２】
（Ｓ１８）アクセス制御部１２０は、今回のアクセス要求に対するアクセス先のテープ媒体を正媒体と決定し、正媒体のファイルへのアクセスをライブラリ２００に指示する。正媒体へのアクセス処理の詳細は後述される。アクセス制御部１２０は、該当のファイルをライブラリ２００から取得し、クライアント３００に送信する。そして、アクセス制御部１２０は、処理を終了する。
【０１０３】
（Ｓ１９）アクセス制御部１２０は、リンクを副媒体へ変更する。具体的には、アクセス制御部１２０は、媒体管理情報１１１に基づいて、正媒体に対応するリンク先のパス“／ＬＴＯ／ＬＴ１２３４Ｌ５”を、副媒体に対応するリンク先のパス“／ＬＴＯ／ＬＴ６７８９Ｌ５”に変更する。
【０１０４】
（Ｓ２０）アクセス制御部１２０は、今回のアクセス要求に対するアクセス先のテープ媒体を副媒体と決定し、副媒体のファイルへのアクセスをライブラリ２００に指示する。副媒体へのアクセス処理の詳細は後述される。アクセス制御部１２０は、該当のファイルをライブラリ２００から取得し、クライアント３００に送信する。そして、アクセス制御部１２０は、処理を終了する。
【０１０５】
図１０は、アクセス実行例を示すフローチャートである。以下、図１０に示す処理をステップ番号に沿って説明する。以下に示す手順は、図９のステップＳ１８およびステップＳ２０に相当する（正媒体および副媒体の何れに対しても同様の手順によりアクセスされる）。
【０１０６】
（Ｓ２１）アクセス制御部１２０は、記憶部１１０の媒体管理情報１１１を更新する。具体的には、アクセス制御部１２０は、媒体管理情報１１１の更新フラグを“１”に更新する（元々“１”の場合は上書きされる）。また、アクセス制御部１２０は、今回指定されたファイルのファイル名に対応する更新パラメータを、アクセス先のテープ媒体に応じた値（正媒体ならば“１”、副媒体ならば“２”）に更新する。なお、アクセス制御部１２０は、更新前の媒体管理情報１１１も記憶部１１０の所定の領域に退避して保存しておく。
【０１０７】
（Ｓ２２）アクセス制御部１２０は、アクセス先として決定されたテープ媒体の移動（シェルフ２０５から空きドライブへの移動）をライブラリ２００に指示する。
（Ｓ２３）アクセス制御部１２０は、クライアント３００から受信したアクセス要求に応じたファイルに対するファイル操作を、ライブラリ２００に指示する。例えば、ファイル操作は、ファイルの内容の取得、ファイルの更新、または、ファイルアクセスの終了などを含み得る。ここで、ファイルの更新は、該当のファイルが更新され、更新後のファイルがテープ媒体に保存されることを示す。
【０１０８】
（Ｓ２４）アクセス制御部１２０は、該当のファイルに対するファイルアクセスが終了されると、当該ファイルが更新されたか否かを判定する。更新された場合、アクセス制御部１２０は、処理を終了する。更新されていない場合、アクセス制御部１２０は、ステップＳ２５に処理を進める。
【０１０９】
（Ｓ２５）アクセス制御部１２０は、媒体管理情報１１１における更新フラグをステップＳ２１における更新前の値に戻す。また、アクセス制御部１２０は、媒体管理情報１１１における該当のファイルの更新パラメータをステップＳ２１における更新前の値に戻す。そして、アクセス制御部１２０は、処理を終了する。
【０１１０】
ここで、ステップＳ２１およびステップＳ２５は、同一ファイルに対する排他制御のための処理である。例えば、ステップＳ２１により媒体管理情報１１１におけるアクセス対象ファイルの更新パラメータが“１”に設定されると、同ファイルにアクセス中に同ファイルに対するアクセス要求を受け付けた場合に、図９のステップＳ１６でＮｏと判定される。その結果、テープ媒体ＭＴ１に対して２つのアクセス要求が並行して処理されることを抑えられる。また、例えば、ステップＳ２１により媒体管理情報１１１におけるアクセス対象ファイルの更新パラメータが“２”に設定される場合も同様に、テープ媒体ＭＴ２の同じファイルに対する２つのアクセス要求が並行して処理されることを抑えられる。アクセス制御部１２０は、副媒体がアクセスされているときは、副媒体に対する後続のアクセスを、先のアクセスが完了するまで待機してから、実行するためである。
【０１１１】
また、副媒体に格納された異なるファイルに対して同時期に複数のアクセスが発生するケースも考えられる。この場合には、アクセス制御部１２０は、副媒体に対する複数のアクセスを順番に行うことになる（ただし、アーカイブ対象のファイルに対するアクセス頻度は低いため、このようなケースは稀であると考えられる）。ただし、３以上のテープ媒体をグループ化し、３以上のテープ媒体に同一ファイル集合を格納することで、副媒体に対するこのようなアクセス競合を回避することも可能である。
【０１１２】
図９，図１０で説明したように、サーバ１００は、テープ媒体ＭＴ１の利用状況に応じて、テープ媒体ＭＴ２をアクセス先として選択する。より具体的には、サーバ１００は、シンボリックリンクに対応するディレクトリのパスであってテープ媒体ＭＴ１の媒体名を含む第１のパスを、テープ媒体ＭＴ２の媒体名を含む第２のパスに変換することで、ファイルに対するアクセス先をテープ媒体ＭＴ１からテープ媒体ＭＴ２に切り替える。
【０１１３】
これにより、単一のテープ媒体に対するアクセス競合を回避でき、テープ媒体に対するアクセスの待ち時間を減らすことができる。
ところで、１つのペアに属する第１のテープ媒体および第２のテープ媒体に記録されたファイル集合に含まれる複数のファイルを考える。同期処理を行う際、複数のファイルのうち、第１のファイルについては第１のテープ媒体の方が更新されており、第２のファイルについては第２のテープ媒体の方が更新されていることがある。この場合、第１のファイルについては、第１のテープ媒体が同期元であり、第２のテープ媒体が同期先になる。一方、第２のファイルについては、第２のテープ媒体が同期元であり、第１のテープ媒体が同期先になる。すなわち、ファイル毎に、同期元のテープ媒体および同期先のテープ媒体が切り替わる。
【０１１４】
また、テープ媒体に対するファイルの書き込みは、追記方式である。具体的には、テープ媒体における全記憶領域のうちの使用済領域の末尾に、更新後のファイルが追記され、該当のファイルのファイルポインタが当該更新後のファイルが追記された領域を示すよう変更される。更新前のファイルに対応する記憶領域は、例えば、再利用可能な領域または無効な領域として管理される。
【０１１５】
そこで、同期制御部１３０は、テープ媒体に対するこのような書き込み方式を考慮した同期制御機能を提供する。
図１１は、同期処理例を示すフローチャートである。以下、図１１に示す処理をステップ番号に沿って説明する。以下に示す手順は、同期制御部１３０により、所定の周期で、定期的に実行される。
【０１１６】
（Ｓ３１）同期制御部１３０は、記憶部１１０に記憶された媒体管理情報１１１を参照して、同期対象のテープ媒体のペアを特定する。具体的には、同期制御部１３０は、媒体管理情報１１１の更新フラグが“１”の場合、テープ媒体ＭＴ１，ＭＴ２を同期対象のテープ媒体のペアとする。一方、同期制御部１３０は、媒体管理情報１１１の更新フラグが“０”の場合、テープ媒体ＭＴ１，ＭＴ２を同期対象のテープ媒体のペアとしない。同期制御部１３０は、同期対象のテープ媒体のペアに対して、ステップＳ３２以降の手順を実行することになる。
【０１１７】
（Ｓ３２）同期制御部１３０は、ステップＳ３１で特定されたペアに格納されたファイル集合のうち、更新されたファイルを特定する。具体的には、同期制御部１３０は、媒体管理情報１１１において、ファイル名に対応する更新パラメータが“０”以外（すなわち、“１”または“２”）のファイルを、更新されたファイル（更新済ファイル）と特定する。更新されたファイル（更新済ファイル）は、当該ペアに格納されたファイルの最新版のファイルであり、同期対象データともいえる。
【０１１８】
（Ｓ３３）同期制御部１３０は、更新済ファイルのコピー順をソートする。具体的には、同期制御部１３０は、まずは、正媒体から副媒体へ更新済ファイルをコピーするように、コピー順を決定し、次に、副媒体から正媒体へ更新済ファイルをコピーするように、コピー順を決定する。ただし、同期制御部１３０は、副媒体から正媒体へのコピーを先に行い、正媒体から副媒体へのコピーを後に行うようにコピー順を決定してもよい。
【０１１９】
（Ｓ３４）同期制御部１３０は、ソートされた順番で更新済ファイルのコピーを実行するようライブラリ２００に指示する。
（Ｓ３５）同期制御部１３０は、同期済ペアの更新フラグをリセットする。具体的には、同期制御部１３０は、テープ媒体ＭＴ１，ＭＴ２に対する同期処理が完了されると、媒体管理情報１１１における更新フラグ“１”（更新あり）を“０”（更新なし）に設定する。更に、同期制御部１３０は、媒体管理情報１１１における各ファイルの更新パラメータを、全て“０”に設定する。
【０１２０】
このように、サーバ１００は、テープ媒体ＭＴ１，ＭＴ２のうちファイルの更新が行われた方を示す更新パラメータ（更新情報）を記憶し、更新パラメータに基づいて、テープ媒体ＭＴ１，ＭＴ２に記憶された各データ集合（ファイル集合）の同期を、ライブラリ２００に指示する。
【０１２１】
このとき、サーバ１００は、テープ媒体ＭＴ１に格納された全ての同期対象ファイルをテープ媒体ＭＴ２に格納した後に、テープ媒体ＭＴ２に格納された同期対象ファイルをテープ媒体ＭＴ１に格納するようにライブラリ２００による同期を制御する。
【０１２２】
図１２は、コピー順のソート例を示す図である。例えば、媒体管理情報１１１の各行には、ファイル名および更新パラメータの組が登録されている。
具体的には、ファイル名“Ａ”に対する更新パラメータは“１”である。ファイル名“Ｂ”に対する更新パラメータは“２”である。ファイル名“Ｃ”に対する更新パラメータは“０”である。ファイル名“Ｄ”に対する更新パラメータは“１”である。ファイル名“Ｅ”に対する更新パラメータは“１”である。ファイル名“Ｆ”に対する更新パラメータは“２”である。ファイル名“Ｇ”に対する更新パラメータは“０”である。ファイル名“Ｈ”に対する更新パラメータは“１”である。
【０１２３】
媒体管理情報１１１ａは、同期制御部１３０によるソート後のファイル名のリストを表している。具体的には、媒体管理情報１１１ａには、更新済ファイルのうち正媒体に格納されているもののファイル名“Ａ”、“Ｄ”、“Ｅ”、“Ｈ”が先に並ぶ。次に、更新済ファイルのうち、副媒体に格納されているもののファイル名“Ｂ”、“Ｆ”が並ぶ。更新されていないファイル“Ｃ”、“Ｇ”は、最後に並ぶ。更新されていないファイル“Ｃ”、“Ｇ”は、コピーの対象外（すなわち、同期処理の対象外）である。
【０１２４】
同期制御部１３０は、媒体管理情報１１１ａで示される順序（図の上側から下側へ向かう順序）で正媒体から副媒体、および、副媒体から正媒体への更新済ファイルのコピーを行うようライブラリ２００に指示する。
【０１２５】
アクセス実行部２１０は、同期制御部１３０の指示に応じて、まずは、正媒体から読み出した更新済ファイルを、副媒体に格納する。前述のように、アクセス実行部２１０は、正媒体の更新済ファイルを、副媒体の使用済領域の末尾に追記する。正媒体の全ての更新済ファイルの追記が完了すると、アクセス実行部２１０は、副媒体から読み出した更新済ファイルを、正媒体に格納する。アクセス実行部２１０は、副媒体の更新済ファイルを、正媒体の使用済領域の末尾に追記する。
【０１２６】
ここで、例えば、コピー順のソートを行わず、媒体管理情報１１１におけるファイル名のリストの上側から下側へ向かう順序で、同期処理を行うことも考えられる。しかし、この場合、ライブラリ２００による同期元／同期先のテープ媒体の切り替えが複数回行われる可能性がある。また、１つのテープ媒体に対して、同期先へ書き込む更新済ファイルの読み出し、および、同期元から読み出された更新済ファイルの書き込みが、交互に行われ得る。しかし、テープ媒体に対し、ファイルの読み出し、書き込みを交互に複数回行っていると同期処理の時間が長くなる可能性がある。テープ媒体に対するファイル位置のシーク操作が多発するからである。
【０１２７】
そこで、上記のように、同期制御部１３０により、コピー順を予めソートすることで、ライブラリ２００による同期元／同期先のテープ媒体の切り替えが１回で済む。また、同期先のテープ媒体に対し、対象のファイルを連続して追記できる。このため、テープ媒体に対するファイル位置のシーク操作の回数を抑え、同期処理を高速化できる。
【０１２８】
なお、同期制御部１３０は、あるペアのうちの片方のテープ媒体が使用不可となった場合、使用不可となったテープ媒体を新規のテープ媒体に入れ替えて、ペアを作り直す。具体的には、同期制御部１３０は、媒体管理情報１１１を新規のテープ媒体の媒体名により更新する（旧媒体名を新媒体名により更新する）。そして、同期制御部１３０は、上記の同期処理により、ペアのうちの既存のテープ媒体のファイル集合を、新規のテープ媒体にも格納することで、高速復旧を行う。なお、ペアの復旧作業中は、復旧対象のペアに関しては一時的に１つのテープ媒体での運用となる。
【０１２９】
また、アクセス制御部１２０は、同期制御部１３０による上記の同期処理を考慮したアクセス制御を行ってもよい。具体的には次の通りである。
図１３は、アクセス制御の他の例を示すフローチャートである。以下、図１３に示す処理をステップ番号に沿って説明する。以下に示す手順は、アクセス先ファイルを指定したアクセス要求をサーバ１００が受信すると実行される。
【０１３０】
（Ｓ４１）アクセス制御部１２０は、同期制御部１３０による同期処理中であるか否かを判定する。同期処理中である場合、アクセス制御部１２０は、ステップＳ４３に処理を進める。同期処理中でない場合、アクセス制御部１２０は、ステップＳ４２に処理を進める。
【０１３１】
（Ｓ４２）アクセス制御部１２０は、通常アクセス処理を行う。通常アクセス処理の手順は、図９で例示した手順に相当する。そして、アクセス制御部１２０は、処理を終了する。
【０１３２】
（Ｓ４３）アクセス制御部１２０は、アクセス対象のテープ媒体（アクセス対象媒体）が同期処理中のテープ媒体であるか否かを判定する。アクセス対象媒体が同期処理中のテープ媒体である場合、アクセス制御部１２０は、ステップＳ４５に処理を進める。アクセス対象媒体が同期処理中のテープ媒体でない場合、アクセス制御部１２０は、ステップＳ４４に処理を進める。
【０１３３】
（Ｓ４４）アクセス制御部１２０は、ライブラリ２００に空きドライブがあるか否かを判定する。空きドライブがある場合、アクセス制御部１２０は、ステップＳ４８に処理を進める。空きドライブがない場合、アクセス制御部１２０は、ステップＳ４５に処理を進める。
【０１３４】
（Ｓ４５）アクセス制御部１２０は、同期処理の中断を同期制御部１３０に指示する。同期制御部１３０は、同期処理の中断の指示に応じて、同期処理を中断し、同期処理の進捗情報を記憶部１１０に記録する。同期処理の進捗情報は、該当のペアに対する同期処理の中断位置（同期が中断されたファイルおよび同期先テープ媒体の中断時のアドレス）を表す情報である。なお、アクセス対象媒体が同期処理の中断を行ったペアではない場合、ライブラリ２００は、同期処理を中断したテープ媒体をドライブ（ドライブ２０７またはドライブ２０８）から取り出せる（ステップＳ４４  Ｎｏの場合でも、空きドライブを用意できる）。
【０１３５】
（Ｓ４６）アクセス制御部１２０は、通常アクセス処理を行う。通常アクセス処理の手順は、図９で例示した手順に相当する。
（Ｓ４７）アクセス制御部１２０は、ステップＳ４６の通常アクセス処理が完了すると、中断位置から同期処理を再開するよう同期制御部１３０に指示する。同期制御部１３０は、記憶部１１０に記憶された同期処理の進捗情報に基づいて、中断位置から同期処理を再開する。そして、アクセス制御部１２０は、処理を終了する。
【０１３６】
（Ｓ４８）アクセス制御部１２０は、ライブラリ２００の空きドライブを用いて通常アクセス処理を行う。通常アクセス処理の手順は、図９で例示した手順に相当する。そして、アクセス制御部１２０は、処理を終了する。
【０１３７】
このように、サーバ１００は、同期が行われている間に、同期中のテープ媒体に格納されたファイルに対するアクセス要求を受け付けると、ライブラリ２００による同期を中断させ、アクセス要求に応じたアクセスをライブラリ２００に指示する。
【０１３８】
すなわち、同期処理中であっても、アクセス制御部１２０は、クライアント３００，４００によるアクセス要求に対するファイルアクセスを、同期処理よりも優先して実行するように制御する。同期制御部１３０は、同期処理の中断時におけるファイルのコピー状況を記憶部１１０に保存しておき、ファイルアクセスの完了後に、当該同期処理を再開する。ペアの復旧処理の場合にも同様に、同期制御部１３０は、クライアント３００，４００によるアクセス要求に対するファイルアクセスを、復旧処理よりも優先して実行するように制御する。
【０１３９】
こうして、同期処理や復旧処理を行っている場合でも、同期処理や復旧処理が完了するまで待たずに、記録媒体に対するアクセスの待ち時間を減らすことができる。
また、同期処理や復旧処理により、ドライブが使用されており、空きドライブがない場合でも、当該同期処理や復旧処理を中断させて空きドライブを用意することで、記録媒体に対するアクセスの待ち時間を減らすことができる。
【０１４０】
以上で説明したように、サーバ１００によれば、ＬＴＦＳによるライブラリ２００のアーカイブ運用において、クライアント３００，４００によるファイルへのアクセス性を向上できる。また、媒体エラー時の高速復旧機能の提供により、運用の継続性を高めることができる。これらの機能の利用にあたり、ファイルを利用して業務を行うユーザは、サーバ１００による同期処理を意識しなくてよく、同期中やファイル復旧中の場合であっても、ファイルへのアクセスが可能となる。
【０１４１】
更に、アクセス先のテープ媒体の切り替えに、シンボリックリンクの仕組みを活用することで、リンク先のパスの変更によって、アクセス先の切り替えを高速に行える。また、クライアント３００，４００側によりアクセス先のテープ媒体を意識させずに済み、ユーザによるファイル利用への影響を抑えられる。
【０１４２】
そして、２つのテープ媒体を１組のペアとして運用することで、アクセス対象となるテープ媒体が他のユーザにより使用されていた場合に、対になるテープ媒体を使用できる。このため、アクセス待ち時間を省略し、ファイルに高速にアクセス可能となる。また、定期的に行われる同期処理は、テープ媒体間の整合性を維持するだけでなく、バックアップとしての機能も果たし、障害時におけるファイル復旧に用いることもできる。同期処理の際、ユーザに同期処理を意識させずに、ファイルアクセス環境を提供できる。このため、サーバ１００およびライブラリ２００側でも、ユーザによるファイルへのアクセス可能性を考慮して同期処理の実行時間を決定しなくてもよく、サーバ１００およびライブラリ２００の空き時間で同期処理を行える。その結果、サーバ１００およびライブラリ２００の効率的な運用が可能となる。
【０１４３】
なお、第２の実施の形態では、記録媒体としてテープ媒体を例示したが、他の種類の媒体でもよい。例えば、記録媒体は、Ｂｌｕ−ｒａｙ（登録商標）などの光ディスク媒体でもよい。ライブラリ２００は、光ディスク媒体を複数収納可能な装置でもよい。
【０１４４】
なお、第１の実施の形態の情報処理は、処理部１ｂにプログラムを実行させることで実現できる。また、第２の実施の形態の情報処理は、プロセッサ１０１にプログラムを実行させることで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１３に記録できる。
【０１４５】
例えば、プログラムを記録した記録媒体１３を配布することで、プログラムを流通させることができる。また、プログラムを他のコンピュータに格納しておき、ネットワーク経由でプログラムを配布してもよい。コンピュータは、例えば、記録媒体１３に記録されたプログラムまたは他のコンピュータから受信したプログラムを、ＲＡＭ１０２やＨＤＤ１０３などの記憶装置に格納し（インストールし）、当該記憶装置からプログラムを読み込んで実行してもよい。
【符号の説明】
【０１４６】
１  情報処理装置
１ａ  記憶部
１ｂ  処理部
２  ライブラリ装置
２ａ  シェルフ
２ｂ，２ｃ  ドライブ
３，４  端末装置
５  ネットワーク
Ｍ１，Ｍ２  記録媒体
【図１】
2018136752.tif 000003
【図２】
2018136752.tif 000004
【図３】
2018136752.tif 000005
【図４】
2018136752.tif 000006
【図５】
2018136752.tif 000007
【図６】
2018136752.tif 000008
【図７】
2018136752.tif 000009
【図８】
2018136752.tif 000010
【図９】
2018136752.tif 000011
【図１０】
2018136752.tif 000012
【図１１】
2018136752.tif 000013
【図１２】
2018136752.tif 000014
【図１３】
2018136752.tif 000015