(57)【特許請求の範囲】
【請求項１】
ＬＴＯ用または大型テープドライブ用記録媒体のデータ（レコード）内容を読取り可能に各世代を経て移行（マイグレーション）させて前記データの内容を現行の記録媒体で与える記憶装置であって、
前記装置の読取り書込み制御は、
複数のレコードが記録された長期保存用の第１世代の記録媒体を用意する手段と、
前記第１世代の記録媒体から次世代（中間世代）へと順次、現行世代までの記録媒体にデータを移行させる手段とを含み、
前記移行させる手段は、更に、第1世代と現行世代との間のレコード番号の対応表を含
むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持することを含むことを特徴とする、現行の記録媒体で与える記憶装置。
【請求項２】
前記現行の記録媒体からレコードの内容を読む際に、前記移行させる手段は、第１世代又は中間世代の前記記録媒体のための読み取りアプリケーションは前記現行記録媒体に保持されている前記マイグレーション情報を読み取り前記レコード番号の対応表を参照して、前記レコードを読み出すことを含むことを特徴とする請求項１に記載の記憶装置。
【請求項３】
前記マイグレーション情報を移行記録媒体のデータセットに保存する請求項１又２に記載の装置。
【請求項４】
前記データセットは、ハウスキーピングデータセットである含まれる請求項３に記載の装置。
【請求項５】
前記マイグレーション情報は、第１世代のレコード番号範囲と中間世代又は現行世代のレコード範囲の対応関係を有する請求項４に記載の装置。
【請求項６】
前記マイグレーション情報は、更に第１世代又は中間世代の記録媒体の世代、メーカ名、シリアル番号を含むことを特徴とする請求項５に記載の装置。
【請求項７】
データ（レコード）内容を読取り可能に各世代のＬＴＯ用または大型テープドライブ用記録媒体を経て前記データの内容を移行（マイグレーション）させた前記データを保持する現行世代の記録媒体であって、
複数のレコードが記録された長期保存用の第１世代の記録媒体を用意して、前記第１世代の記録媒体から次世代（中間世代）へと順次、現行世代までの記録媒体にデータを移行させ、更に第1世代と
現行世代との間のレコード番号の対応表を含むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持することを含む、現行世代の記録媒体。
【請求項８】
ホスト／テープドライブによる前記記録媒体からレコードの内容を読む際に、第１世代又は中間世代の前記記録媒体のための読み取りアプリケーションにより読み出され、前記複数のデータを読み出し可能とする前記レコード番号の対応表を含むマイグレーション情報を含む、請求項７に記載の記録媒体。
【請求項９】
前記マイグレーション情報は少なくとも１つのデータセットに保存する請求項７又は８に記載の記録媒体。
【請求項１０】
ＬＴＯ用または大型テープドライブ用記録媒体のデータ（レコード）内容を読取り可能に各世代を経て移行（マイグレーション）させて前記データの内容を現行の記録媒体で与える方法であって、
複数のレコードが記録された長期保存用の第１世代の記録媒体を用意するステップと、  前記第１世代の記録媒体から次世代（中間世代）へと順次、現行世代までの記録媒体にデータを移行させるステップとを含み、
前記移行させるステップは、更に第1世代と現行世代との間のレコード番号の対応表を
含むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持することを含むことを特徴とする、現行の記録媒体で与える方法。
【請求項１１】
前記現行の記録媒体からレコードの内容を読む際に前記移行させるステップは、第1世
代又は中間世代の読み取りアプリケーションは前記現行記録媒体に保持されている前記マイグレーション情報を読み取り前記レコード番号の対応表を参照して、前記レコードを読み出す、ことを含む請求項１０に記載の現行の記録媒体で与える方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ（レコード）内容を読取り可能に各世代を経て移行（マイグレーション）させて現行の記録記録媒体で与える方法に関する。
【背景技術】
【０００２】
記憶装置に保存されたデータを１０年以上の長期保存にわたってデータが読み出せることが要求される。典型的なデータ長期保存（アーカイブ：Ａｒｃｈｉｖｅ）用のテープドライブの典型例は、ＬＴＯ（Ｌｉｎｅａｒ  Ｔａｐｅ  Ｏｐｅｎ）テープドライブやＩＢＭエンタープライズテープドライブＴＳ１１３０などである。更に記録媒体および装置などのハードウエアが変わっても蓄えられたデータを現行の媒体にデータを移行して読み出し可能にする必要がある。
【０００３】
ストレージ上にデータを長期保存 (アーカイブ) するにあたり、記録媒体の移行 (マイグレーション) は避けることのできない課題である。マイグレーションは、２種類に大別することができる。１つは ストレージにデータを記録したアプリケーションが明示的に行うマイグレーションである。ストレージにデータを記録したアプリケーションが明示的にマイグレーションを行う場合には、そのアプリケーションが動いているサーバへの負荷は大きくなる。２つめはストレージにデータを記録したアプリケーションに関わらずに行うマイグレーション (サーバレスマイグレーション)である。サーバレスマイグレーションの場合はデータを記録するアプリケーションにはマイグレーションの機能は不要であり、またサーバへの負荷も分散できる点で望ましい。
【０００４】
サーバレスマイグレーションの基本的な流れは、ステップ１〜３のようになる。
１．アプリケーションＸ(ストレージを利用する一般的なアプリケーション) が、記録媒体Ａにデータを保存する。
２．アプリケーションＹ(マイグレーションを専門に行うアプリケーション) が、記録媒体 Ａの状態 (使用期間、回復可能なエラー発生頻度など) を監視する。記録媒体Ａの寿命が短いと判断した場合は記録媒体Ａに保管されたデータを記録媒体Ｂへ移行（マイグレーション)し、記録媒体Ａを破棄する。記録媒体ＡとＢの対応 (記録媒体移行情報：マイグレーション情報) はデータベース（ＤＢ）などに保存する。
３．アプリケーションＸが記録媒体Ａへのアクセスを要求した場合、ステップ２でＤＢなどに保存した記録媒体移行情報を元に、記録媒体Ｂの該当情報へアクセスするよう仮想化する。当然のことながらマイグレーションはデータの保存期間に応じ複数回実施される。
【０００５】
長期期間のマイグレーション過程において、アプリケーションＸが保存したデータは、記録媒体Ａ→Ｂ→Ｃ→Ｄと渡り歩くことになる。マイグレーション前後の記録媒体は必ずしも一対一である必要はない。複数の第１世代の記録媒体に保存されたデータを１つの次世代又は現行世代の記録媒体に移行してもよい。また、１つの記録媒体に保存されたデータを複数の記録媒体に分割又は重複して記録しても良い。
【０００６】
現在のサーバレスマイグレーションの課題として、ＤＢなどに保存した記録媒体移行情報が失われる場合がある。かかる場合は目的のデータが記録媒体Ｂの中に存在していても、アプリケーションＸが記録媒体Ａに記録したデータが記録媒体Ｂの中に移行されたことを知ることができない。アプリケーションＸは結果的に目的のデータにアクセスすることができなくなるという問題がある。
【０００７】
例えば特許文献１は、記録媒体内部にディスク管理情報を保存し、かかる管理情報により記録媒体の管理をすることを示す。しかしながら、同文献は記録媒体移行の活用について言及はない。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特開２００２−２１６４５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
ところで、特許文献１はデータについてのマイグレーション時においてメタ情報を保持および活用することについて言及はない。従来のアーカイブ媒体を読み取るシステム環境において、マイグレーション情報を含むＤＢが失われた場合はアーカイブデータを読取り可能な環境を再構築するのに手間がかかる。
【００１０】
本発明の目的は、記録媒体のデータ内容を読取り可能に各世代を経て移行させて前記データの内容を現行の記録媒体で与える方法、記憶装置、記録媒体を提供することである。
【課題を解決するための手段】
【００１１】
上記の目的を達成する本発明は、記録媒体のデータ（レコード）内容を読取り可能な各世代を経て移行（マイグレーション）させて前記データの内容を現行の記録媒体で与える記憶装置である。この装置の読取り書込み制御は、複数のレコードが記録された長期保存用の第１世代の記録媒体を用意する手段）と、前記第１世代の記録媒体から次世代（第１世代の次の第３世代、即ち中間世代）へと順次、現行世代までの各世代の記録媒体にデータを移行（コピー）させる手段とを含み、前記移行させる手段は、更に第1世代と現行世代との間のレコード番号の対応表を含むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持することを含むことを特徴とする。
【００１２】
前記現行の記録媒体からレコードの内容を読む際に、前記移行させる手段は、第1世代又は中間世代の前記記録媒体のための読み取りアプリケーションは前記現行記録媒体に保持されている前記マイグレーション情報を読み取り前記レコード番号の対応表を参照して、前記レコードを読み出すことを特徴とする。
【００１３】
前記マイグレーション情報は移行記録媒体のデータセットに保存することを特徴とする。
【００１４】
前記データセットは、ハウスキーピングデータセットであるであることを特徴とする。
【００１５】
前記マイグレーション情報は、第１世代のレコード番号範囲と中間世代又は現行世代のレコード範囲の対応（マッピング）関係を有することを特徴とする。
【００１６】
前記マイグレーション情報は、更に第１世代又は中間世代の記録媒体の世代、メーカ名、シリアル番号を含むことを特徴とする。
【００１７】
更に上記の目的を達成する本発明は、データ（レコード）内容を読取り可能な各世代を経て前記データの内容を移行（マイグレーション）させた前記データを保持する現行世代の記録媒体である。この現行世代の記録媒体は、複数のレコードが記録された長期保存用の第１世代の記録媒体を用意して、前記第１世代の記録媒体から次世代（第１世代の次の第３世代、即ち中間世代）へと順次、現行世代までの各世代の記録媒体にデータを移行（コピー）させ、更に第1世代と現行世代との間のレコード番号の対応表を含むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持することを含む。
【００１８】
前記記録媒体は、ホスト／テープドライブによる前記記録媒体からレコードの内容を読む際に、第１世代又は中間世代の前記記録媒体のための読み取りアプリケーションにより読み出され、前記複数のデータを読み出し可能とする前記レコード番号の対応表を含むマイグレーション情報を含むことを特徴とする。
【００１９】
前記記録媒体は、前記マイグレーション情報は少なくとも１つのデータセットに保存することを特徴とする。
【００２０】
更に上記の目的を達成する本発明は、記録媒体のデータ（レコード）内容を読取り可能な各世代を経て移行（マイグレーション）させて前記データの内容を現行の記録媒体で与える方法である。この方法は、複数のレコードが記録された長期保存用の第１世代の記録媒体を用意するステップと、前記第１世代の記録媒体から次世代（第１世代の次の第３世代、即ち中間世代）へと順次、現行世代までの各世代の記録媒体にデータを移行（コピー）させるステップとを含み、前記移行させるステップは、更に、第1世代と現行世代との間のレコード番号の対応表を含むマイグレーション情報を生成し、前記マイグレーション情報を次世代記録媒体にデータとして保持するステップを含むことを特徴とする。
【００２１】
前記方法の現行の記録媒体からレコードの内容を読む際に前記移行させるステップは、第1世代又は中間世代の前記記録媒体のための読み取りアプリケーションは前記現行記録媒体に保持されている前記マイグレーション情報を読み取り前記レコード番号の対応表を参照して、前記レコードを読み出すことを特徴とする。
【００２２】
以上の本発明の適用により、移行情報ＤＢが損傷した場合のリカバリに使用できる。
【図面の簡単な説明】
【００２３】
【図１】データの複数世代間で記録媒体移行（マイグレーション）の概略を示す。
【図２】本実施形態が適用されるテープドライブ１０の構成例を示した図である。
【図３】ホストからデータアクセス要求に対するテープドライブでの処理フローを示す。
【図４】典型的にはテーブルは記録媒体識別子と記録媒体のデータ識別番号対応表に分けられることを示す。
【発明を実施するための形態】
【００２４】
以下において、データ内容を読取り可能に各世代の記録媒体を経て移行させる方法について、典型的な本発明の実施形態（以下「実施例」という）を示す。これら実施例は例示であり本発明の選択方法を限定するものではない。
【００２５】
本発明では、記録媒体内部に記録媒体移行情報を保存することにより、媒体移行後の記録媒体さえ存在すればよい。アプリケーションがある記録媒体Ａに保存したデータを別の記録媒体Ｂにコピーする場合、記録媒体移行情報を記録媒体Ｂ上に保持する。ＤＢなどに保存した記録媒体移行情報が失われたとしても、ストレージにデータを保存したアプリケーションが知らないところで移行された記録媒体内部のデータにアクセスすることを可能にする。
【００２６】
図１は、データの複数世代間で記録媒体移行（マイグレーション）の概略を示す。
第１世代のカートリッジＡから次世代のカートリッジにデータを複写してデータ長期保存（アーカイブ）を確保する。第２世代を経て第３世代のカートリッジに移行することを示す。アーカイブデータの読み書きを世代記録媒体が変更されてもデータを読み出しが可能となるように、レコード番号の対応関係等を含むマイグレーション情報を各記録媒体自身が保持する。テープカートリッジは使用属性情報をユーザのレコードを記録するデータセットとは別に特殊なデータセットＨＫＤＳ（ＨｏｕｓｅＫｅｅｐｉｎｇＤａｔａＳｅｔ）に保存してもよい。各記録媒体（テープカートリッジ）が保持するマイグレーション情報については図４で詳述する。第１世代の媒体のレコード番号と現行（第２および第３）世代の媒体のレコード番号の対応が判ればよい。ホストのアプリケーションＸによる読み出し要求に対して、テープドライブは移行記録媒体からマイグレーション情報を読み取り、目的とするデータを読み出すことが出来る。
【００２７】
第１世代、第３世代、および第５世代の記録媒体（テープカートリッジ）は、世代が増すにつれて記録密度が増えるため、各世代の媒体ごとに固定長のデータセットの総数は異なる。ユーザ（ホスト）が指定するアプリケーションＸが指定するデータ（レコード）は可変長である。異なる世代の記録媒体に含まれるデータ（レコード）の総数は異なり、レコード番号についても第１世代（元の世代）のものとは対応が異なる。長期の歳月においてアーカイブを管理するハードウエアおよびそのシステムが置き換わること、マイグレーション情報を含むサーバが管理するデータベース（ＤＢ）が消失することもある。マイグレーションが実行されて旧世代媒体と移行先世代媒体との間においてレコード番号の対応関係を移行先媒体に確保可能である。つまり、（元の）第１世代の媒体のメタ情報と移行先媒体のメタ情報から元のレコード番号と移行先のレコード番号の対応が特定できればよい。
【００２８】
図２は、本実施形態が適用されるテープドライブ１０の構成例を示した図である。テープドライブ１０は、ホスト３０から送られた複数のファイル、またはデータ（ファイル）を固定長のデータセット（ＤＳ）単位でテープ記録媒体への書込みまたは上書き（Write)する。ＤＳは複数のファイルの集まりであり、固定長のフォーマット構造を有するテープに書込む単位である。尚、本発明はＤＳが可変長である場合を排除するものではないが、以下実施形態ではＤＳが固定長である場合について説明する。
【００２９】
テープドライブ１０は、インターフェース１１と、バッファ１２と、チャネル１３と、ヘッド１４と、モータ１５と、テープ２３を巻きつけるリール２２とを含む。書込み読取り制御１６と、ヘッド位置制御システム１７と、モータドライバ１８とを含む。モータ１５は、２個のモータを設けてよい。テープドライブ１０は、テープカートリッジ２０を着脱可能に搭載する。
【００３０】
テープカートリッジ２０は、リール２１に巻かれたテープ２３を含む。テープ２３は、リール２１、２２の回転に伴い、リール２１からリール２２の方向へ、又は、リール２２からリール２１の方向へ、長手方向に移動する。テープ２３は、磁気テープ以外のテープ媒体でもよい。読取り時に、テープを目的位置まで高速に移動させることができるように、テープドライブでは、テープカートリッジの属性（テープディレクトリと呼ばれる）情報を、テープカートリッジ内に装備されているカートリッジメモリ（ＣＭ：Cartridge Memory）２５と呼ばれる非接触不揮発性メモリに記録している。搭載されたテープ２０のカートリッジＣＭ２５は、テープドライブ１０により非接触的に読み書きされる。
【００３１】
ヘッド１４は、テープ２３が長手方向に移動するとき、テープ２３に対して情報を書き込んだり、テープ２３から情報を読出したりする。モータ１５は、リール２１、２２を回転させる。１つのモータ１５を表しているが、リール２１、２２の各々に１つずつのモータを設けるのが好ましい。
【００３２】
書込み読み込み制御１６は、テープドライブ１０の全体を制御する。例えば、インターフェース１１で受け付けたコマンドに従って、データのテープ２３への書込みやテープ２３からの読取りを制御する。また、ヘッド位置制御システム１７やモータドライバ１８の制御、及び、書込みデータへの訂正符号の付加・読取りデータのエラー訂正も行う。モータドライバ１８は、モータ１５を駆動する。
【００３３】
インターフェース１１は、上位装置の一例であるホスト３０との通信を行う。ホスト３０から、テープ２３を目的の位置に移動させるコマンド、テープ２３へのデータの書込みを指示するコマンド、テープ２３からのデータの読取りを指示するコマンドを受け取る。それぞれは、位置決めコマンド、Ｗｒｉｔｅコマンド、Ｒｅａｄコマンドに相当する。また、インターフェース１１は、ホスト３０に対し、これらのコマンドに応じた処理が成功したのか失敗したのかの応答を返す。ホスト３０は、これらコマンドに可変長のデータの位置、数を指定してテープドライブ１０に発行する。
【００３４】
バッファ１２は、テープ２３に書き込むべきデータやテープ２３から読出されたデータを蓄積するメモリである。例えば、ＤＲＡＭによって構成される。また、バッファ１２は、複数の固定長のバッファセグメントからなり、各バッファセグメントが、テープ２３に対する読み書きの単位であるデータセットを格納している。１つのデータセットは、ホスト３０から送られるデータの１つの一部分、または、複数のデータから構成される。読み書きチャネル１３を介して渡されたデータはＤＳ単位（例えば４００ＫＢまたは１．６ＭＢ）として、ヘッド１４によりテープ２３に書込まれる。同期コマンドはバッファ内に保管されたデータをテープに書く込み命令である。
【００３５】
サーバレスマイグレーション時に、移行後の記録媒体に次の情報 (マイグレーション情報) を保存するテーブルを生成する。テーブルは記録媒体識別子と記録媒体のデータ識別番号対応表に分けられる。
【００３６】
マイグレーション情報の内容は次のように与えられる。
１． 記録媒体 A (アプリケーションがデータを保存した記録媒体) の記録媒体識別子
記録媒体識別子の好適な例としましては次のようになるかと思います。
- 記録媒体の製造メーカー名 (ex. IBM)
- 記録媒体の種類 (製品名。もとい、次のシリアル番号がぶつからないよう識別するＩＤ) (ex. 第1世代 LTO Tape Media, 第3世代IBM Enterprise Tape media,etc.)
- 記録媒体のシリアル番号
- 記録媒体のバーコードラベル：一ライブラリ内のユーザが識別する番号
２．記録媒体Ａと直近のマイグレーション後にデータが保存されている記録媒体のデータ識別番号対応表
データ識別番号対応表につきましては、番号を１ずつ対応させてもよいが、記録媒体Ａ の０〜１００００が現在保存されている記録媒体の１００００〜２００００に対応するといった感じでマッピングさせることが好適となる。
【００３７】
サーバレスマイグレーションを実行したときにＤＢなどに保存した記録媒体移行情報がなんらかの原因で失われた場合がある。ＤＢ消失の場合でも、マイグレーション後の記録媒体が保持するこれらの情報をもとに、記録媒体移行情報を再構築できる。移行先記録媒体さえ利用可能であればストレージにデータを記録したアプリケーションがマイグレーション後の記録媒体上に存在するデータにアクセスすることを可能とする。記録媒体に保存されるマイグレーション情報の特定方法については、記録媒体の所定の位置に書き込むようにしても良いし、任意の位置に特定のタグを伴って書き込むようにしても良い。
【００３８】
「記録媒体のシリアル番号」は、記録媒体を作成するメーカが各記録媒体を区別できるようにシリアルに付ける番号である。同じ製品 (例えば、ＩＢＭ  ＬＴＯ第５世代カートリッジ)であれば、全ての記録媒体がユニークなシリアル番号を持つことが保証される。「記録媒体のバーコード番号」は、ライブラリに格納された記録媒体を区別できるようにライブラリ利用者が付ける番号である。利用者が好きな番号を選択できるため、必ずしもユニークな番号であるは限らない。
【００３９】
バーコードラベルは、記録媒体の利用者 (人間 & テープライブラリ) が一般的に、シリアル番号については気にせず、元に記録媒体を判別する利用される。そのため、少なくとも各ライブラリ内ではユニークな番号を持つバーコードラベルが付いていることが期待される。シリアル番号は、開発者がシリアル番号からその製品の特徴 (例えば製造工程が微妙に変わったとか) を知るためには利用される。本発明ではこのシリアル番号を例えばライブラリにバーコードラベルと紐付けさせる。既存の枠組みを生かしつつ記録媒体の特定に活用できる。
【００４０】
前述の通り諸般の事情より２つのあると便利であるが、必ずしもシリアル番号とバーコード番号の２つ を設ける必要はない。必要なのは、記録媒体を区別するためのなにがしかの情報であり、"メーカ名、製品名、シリアル番号" の組であったり"バーコード" であったりは種々の実装例による。前者の方法、"メーカ名、製品名、シリアル番号" の組であれば、バーコードラベルの代わりになり、決して他の記録媒体を間違って利用することはない。しかし、バーコードラベルがなければ既存の１つのテープライブラリに記録媒体を判別させることは困難である。
【００４１】
後者の方法、バーコードラベルのみの使用では、あるライブラリから抜き出した記録媒体を別のライブラリに入れる場合に問題がある。その記録媒体のバーコードラベルと同じ番号のバーコードラベルを既に他の記録媒体で利用していたといった極限られた条件において、他の記録媒体を間違って利用する可能性はある。一方現在の１つのライブラリ内ではバーコードラベルのみを見て記録媒体を判別していることもあり、既存のシステムとの親和性は向上する。現実的な実装例としては、"メーカ名、製品名、シリアル番号" の組と "バーコード" の双方を組み合わせて使うことになると考える。
【００４２】
なお、テープドライブの記録媒体（カートリッジ）間の世代間、例えばＬＴＯ１，２，３，４，・・・（ＬｉｎｅａｒＴａｐｅＯｐｅｎ）の移行が典型例として説明される。
しかし本発明の媒体間移行（マイグレーション）は、異種記録媒体間マイグレーションについても含んでいる。例えば、ＨＤＤ（Ｈａｒｄ Ｄｉｓｋ  Ｄｒｉｖｅ）、ＤＶＤ、ＣＤと各世代のテープカートリッジ、又はエンタープライズテープドライブ（ＩＢＭ  ＳｙｓｔｅｍＳｔｏｒａｇｅ  ＴＳxxxx）の各世代のカートリッジとの移行である。
【００４３】
図１は、３世代の媒体間でのマイグレーションの実施例を示す。以下の実施例として、第１世代ＬＴＯフォーマットでテープ記録媒体に書き込まれたデータを第３世代ＬＴＯフォーマットのテープ記録媒体を経由し第５世代LTOフォーマットのテープ記録媒体にサーバレスマイグレーションする場合の実装例を挙げる。
１．アプリケーションＸが、第1世代LTOフォーマットでテープ記録媒体 A にデータを保存する。
２．アプリケーションＹ(マイグレーションを専門に行うアプリケーション) が、テープ記録媒体Ａの状態を監視する。テープ記録媒体Ａの寿命が短いと判断した場合はテープ記録媒体Ａに保管されたデータを第３世代ＬＴＯフォーマットのテープ記録媒体Ｂへ移行し(マイグレーション)、テープ記録媒体Ａを破棄する。テープ記録媒体Ａとテープ記録媒体Ｂの対応 (記録媒体移行情報) は、ＤＢなどに保存する。また、マイグレーション情報として次の情報をテープ記録媒体ＢのＨＫＤＳ 又はカートリッジメモリ(ＣＭ) に保存する。
【００４４】
テープドライブは、搭載されたカートリッジのＣＭ又はＨＫＤＳに以下のマイグレーション情報を保管する。マイグレーション情報は、典型的にはテーブルは記録媒体識別子と記録媒体のデータ識別番号対応表に分けられる。データ識別番号対応表は必須の項目として、ホストのアプリケーションがレコード番号を指定した場合、現行世代のレコード番号に変換して内容として正しいデータを読み出せるようにする。「データ識別番号対応表」は、- テープ記録媒体 A のレコード番号とテープ記録媒体Ｂのレコード番号の対応表である。この対応表が、上記の "アプリケーションＸがデータを保存した記録媒体上の (つまりマイグレーション直前ではなくオリジナルの記録媒体上の) bit 位置と、マイグレーション後の記録媒体上における bit 位置の対応に相当するものをＨＫＤＳに保存されるものである。
【００４５】
３．アプリケーション Ｙ (マイグレーションを専門に行うアプリケーション) が、テープ記録媒体 B の状態を監視し、テープ記録媒体 B の寿命が短いと判断した場合はテープ記録媒体 B に保管されたデータを第5世代LTOフォーマットのテープ記録媒体 C へ移行し、テープ記録媒体 B を破棄する (マイグレーション)。テープ記録媒体 A (テープ記録媒体 B ではない) とテープ記録媒体 C の対応 (記録媒体移行情報)は、DB などに保存する。また、マイグレーション情報として次の情報をテープ記録媒体ＣのＨＫＤＳ又はＣＭ 又はそれら両方に保存する。
【００４６】
４．アプリケーション X からテープ記録媒体 A に保存したレコード#Z に対応するデータへのアクセス要求が来た場合、テープ記録媒体 C が持つマイグレーション情報を元にそのレコードがテープ記録媒体C上のどのレコード#に対応するか判別し、アプリケーション X へアプリケーション X がテープ記録媒体 A に保存したレコード#Z と同じ情報を持つテープ記録媒体 C 上のレコード#Z' へアクセスさせることができる
５．データアクセス要求時の流れをフローチャートで示すと次のようになる。
【００４７】
図３は、ホストからデータアクセス要求に対するテープドライブでの処理フローを示す。
ステップ３３０の判断である「任意のテープ記録媒体上に、テープ記録媒体Ａに関連するマイグレーション情報が存在する？」において、従来技術ではオリジナルの保存先であるテープ記録媒体Ａに関連するマイグレーション情報は存在しない。従来ではこのような判断はできず移行情報ＤＢが失われた時点で、オリジナルのテープ記録媒体Ａにアクセスすることが出来なくなる。本発明を利用した場合は３３お判断を行うことが可能である。テープ記録媒体（Ｂ、Ｃ・・・）上にオリジナルの保存先であるテープ記録媒体Ａに関するマイグレーション情報を見つけることで、オリジナルのデータにアクセスすることが可能となる。
【００４８】
図４は、典型的にはテーブルは記録媒体識別子と記録媒体のデータ識別番号対応表に分けられることを示す。
・記録媒体識別子：
−  第1世代 LTO Tape Media
−  テープ記録媒体Ａのメーカ名
−  テープ記録媒体Ａのシリアル番号
−  記録媒体のバーコードラベル
・データ識別番号対応表：
−  テープ記録媒体Ａのレコード番号とテープ記録媒体Ｃのレコード番号の対応表、 これが、上記の "アプリケーションＸがデータを保存した記録媒体上の (つまりマイグレーション直前ではなくオリジナルの記録媒体上の) bit 位置と、マイグレーション後の記録媒体上における bit 位置の対応" に相当する。
【００４９】
マイグレーション情報は、直近のマイグレーション後の保存位置と最初にアプリケーションＸがデータ（レコード）を保存したときの位置の対応情報なので十分な場合が多い。繰り返されるマイグレーションの中間の情報は必要ではない。中間の情報を省くことにより、マイグレーションを繰り返した場合のマイグレーション情報の肥大化を防ぐことができる。最初と最後の記録媒体のデータ（レコード番号の範囲）の対応関係を含むのみのマイグレーション情報を保存したデータを読み取り専用（Read Only）にすればよい。最初のホストのバックアップのアプリケーションＡには、常に最初に保存した場所に存在するように見せかければ十分、マイグレーション後の媒体から目的のデータを読み出すのに十分である。
【００５０】
しかしながら、記録媒体移行が複数の中間世代を経て現行の記録媒体にデータがマイグレーションされている場合に中間媒体移行時の移行情報を保存する場合はある。例えば、あるアプリケーションＸはテープ記録媒体Ａにデータを保存している。長期間後にＡをテープ記録媒体Ｂにマイグレーション後、別のアプリケーションＹがＢに対して直接アクセスしてＡのデータがマイグレーションされたレコード範囲外の空き記憶領域に新たなデータを保存する場合である。この場合アプリケーションＹはＡのデータがマイグレーションされたレコード範囲についてＢのレコード範囲位置として把握してＡと同じデータを読み出すケースが想定できる。
【００５１】
最初にアプリケーションＸがデータを保存したときの位置と直近のマイグレーション後の位置のみならず、一連の履歴を保持することが必要である。具体的には、マイグレーション情報を含むテーブルは次のように、中間の移行情報（マイグレーション情報）の履歴も残すことも考えられる。
- 記録媒体 A (アプリケーションがデータを保存した記録媒体) の媒体識別子
- 記録媒体 B (記録媒体 A のマイグレーション後の記録媒体) の媒体識別子
- 記録媒体 C (記録媒体 B のマイグレーション後の記録媒体) の媒体識別子
...
- 記録媒体 Z (記録媒体 Y のマイグレーション後の記録媒体) の媒体識別子
- 記録媒体 A と記録媒体 B のデータ識別番号対応表
- 記録媒体 B と記録媒体 C のデータ識別番号対応表
...
- 記録媒体 Y と記録媒体 Z のデータ識別番号対応表
【００５２】
以上本発明によれば、移行情報ＤＢが損傷した場合のリカバリに使用できる。
また、メモリーコントローラーの負荷が減るという点、トータルのメモリアクセス所要時間を減らせるという点で有効である。
更に、必要な情報は直近のマイグレーション後のデータ保存位置のみで十分であり、繰り返されるマイグレーションの中間の情報は必要ないため、マイグレーション情報の肥大化を防ぐことができる。
【符号の説明】
【００５３】
１０…テープドライブ、
１１…インターフェース、
１２…バッファ（ＤＲＡＭ）、
１３…読み書きチャネル、
１４…ヘッド、
１５…モータ、
１６…書込み読取り制御（コントローラ）、
１７…ヘッド位置制御システム、
１８…モータドライバ、
２０…カートリッジ、
２１，２２…リール、
【図１】
0005618813.tif 000002
【図２】
0005618813.tif 000003
【図３】
0005618813.tif 000004
【図４】
0005618813.tif 000005