(57)【特許請求の範囲】
【請求項１】
コンピュータに実行させて、ストレージメディアからデータをリードヘッドによって読み出した直後に、ストレージメディアに記録されているレコードをライトヘッドによって削除する方法であって、
ストレージメディアに記録されている単数のレコードまたは複数のレコード群を削除する要求を受け取るステップと、
削除すべきレコードを格納しているデータセット（DS）を特定するステップと、
特定されたデータセット（DS）の中に格納されている単数または複数のレコードの各々の位置を示しているデータセット情報テーブル（DSIT）を、リードヘッドによって読み出すステップと、
特定されたデータセット（DS）が、削除すべき最初のレコードの先頭を含んでいるかどうかを判断するステップと、
削除すべき最初のレコードの先頭を含むものと判断される場合には、ライトヘッドによる削除を開始するステップと、
特定されたデータセット（DS）が、削除すべき最後のレコードの末尾を含んでいるかどうかを判断するステップと、
削除すべき最後のレコードの末尾を含むものと判断される場合には、そのデータセット（DS）を削除した後に、ライトヘッドによる削除を中止するステップと、を含む、
方法。
【請求項２】
ストレージメディアと、リードヘッドおよびライトヘッド間の進行方向の移動を一方向に維持したままで、全てのステップを実行する、
請求項１に記載の方法。
【請求項３】
ストレージメディアが、テープメディアである、
請求項２に記載の方法。
【請求項４】
１つのライトヘッド、その両側に２つのリードヘッドが設けられたテープドライブに対して動作させ、ストレージメディアの進行方向の何れの進行方向についても動作させる、
請求項１に記載の方法。
【請求項５】
ストレージメディアからデータをリードヘッドによって読み出した直後に、ストレージメディアに記録されているレコードをライトヘッドによって削除する、ファイルシステムであって、
ストレージメディアに記録されている単数または複数のレコード群を削除する要求を受け取るステップと、
削除すべきレコードを格納しているデータセット（DS）を特定するステップと、
特定されたデータセット（DS）の中に格納されている単数または複数のレコードの各々の位置を示しているデータセット情報テーブル（DSIT）を、リードヘッドによって読み出すステップと、
特定されたデータセット（DS）が、削除すべき最初のレコードの先頭を含んでいるかどうかを判断するステップと、
削除すべき最初のレコードの先頭を含むものと判断される場合には、ライトヘッドによる削除を開始するステップと、
特定されたデータセット（DS）が、削除すべき最後のレコードの末尾を含んでいるかどうかを判断するステップと、
削除すべき最後のレコードの末尾を含むものと判断される場合には、そのデータセット（DS）を削除した後に、ライトヘッドによる削除を中止するステップと、を含み、
これらのステップを実行する、
ファイルシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テープメディア上に記録された特定のデータの削除所要時間削減に関するものである。
【背景技術】
【０００２】
LTO (HP, IBM Corporation, Quantumの商標)テープドライブや IBM (IBM Corporationの商標)エンタープライズテープドライブ(TS11x0) は、RWW (Read While Write) と呼ばれる機能を持つ。
【０００３】
これは、テープメディア上にデータを書き込むライトヘッドとテープメディア上に書き込まれたデータを読み出すリードヘッドが対向する構造により、書き込み直後にリードヘッドを使用して、書き込まれたデータにエラーがないかどうかを確認する機能である。
【０００４】
この確認においてエラーがあった場合は、データバッファーから同じデータを読み出し再度書き込む。
【０００５】
一般的に、ライトヘッドとリードヘッドは物理的に異なり、かつ、テープドライブはテープメディアを往復させつつデータを書き込む。
【０００６】
そのため、RWWを行うヘッドの構造は、図１のようにライトヘッドの両脇にリードヘッドを配置する、ないし、図２のようにリードヘッドの両脇にライトヘッドを配置することで実現される。
【０００７】
図１は、テープドライブにリードヘッドが２つある場合を示す図である。
【０００８】
図２は、テープドライブにライトヘッドが２つある場合を示す図である。
【０００９】
図１の構造でデータを書き込む場合、テープメディアが右から左に走行する場合、右側のリードヘッドは何もせず、中央のライトヘッドが書き込んだデータを左側のリードヘッドが読み出すことで、RWW の機能を実現する。
【００１０】
逆に、テープメディアが左から右に走行する場合は左側のリードヘッドは何もせず、中央のライトヘッドが書き込んだデータを右側のリードヘッドが読み出す。
【００１１】
図２の構造でデータを書き込む場合、テープメディアが右から左に走行する場合、左側のライトヘッドは何もせず、右側のライトヘッドが書き込んだデータを中央のリードヘッドが読み出すことで、RWW の機能を実現する。
【００１２】
逆に、テープメディアが左から右に走行する場合は右側のライトヘッドは何もせず、左側のライトヘッドが書き込んだデータを中央のリードヘッドが読み出す。
【００１３】
いずれにせよ、３本のヘッドが同時に何かをすることはない。
【００１４】
テープドライブがテープメディアにデータを書き込む際、ホストから送られてきたレコードと呼ばれる高々1 MB 程度の可変長のデータを、DS (Data Set) と呼ばれる数MB程度の容量を持つ固定長のデータに組替え、DS の単位でテープメディア上に書き込む。
【００１５】
各 DS は DSIT (Data Set Information Table) と呼ばれるメタデータを持ち、各 DS にどのレコードが格納されたかといったデータを保持している。
【００１６】
DSIT は、 DS の一部として、 DS 内の所定の位置に格納される。
【００１７】
テープメディア上に記録されたデータを削除する (特殊なデータパターンで上書きする) にあたり、現状では特定の位置からテープメディアの末端まで削除することが一般的である。
【００１８】
しかし、特にテープメディアの先頭付近にしかデータを書き込んでいないことが明かな場合など、削除したいデータが書かれていない領域を数時間も渡って上書きすることは効率的ではない。
【００１９】
この点、所望のデータのみ削除できるようにするフォーマットを改善することもできよう。
【００２０】
例えば、削除したいデータの単位 (例えば LTFS (Linear Tape File System) でテープメディアを利用する場合はファイル) 毎に異なる DS に保存しておけばよい。
【００２１】
テープメディア上に記録された所定のデータ、つまり、レコードを削除するためには、削除したいレコードがどの DS に格納されており、かつ、その DS の先頭と末尾がテープメディア上のどの部分に記録されているかということを予め調べてから、該当位置に記録された DS を削除する必要がある。
【００２２】
一般的には、連続して書き込まれた複数のレコードをまとめて削除することが多く、その手順は次のようになる。
【００２３】
図３、図４、図５は、連続して書き込まれた複数のレコードをまとめて削除する手順を示す図である。
【００２４】
ステップ１：  削除したい先頭のレコードに位置合わせする（図３）。
【００２５】
ステップ２：  削除したい先頭のレコードの先頭を含む DS の先頭位置を確認する（図３）。
【００２６】
ステップ３：  削除したい最後のレコードに位置合わせをする（図４）。
【００２７】
ステップ４：  削除したい最後のレコードの末尾を含む DS の末尾位置を確認する（図４）。
【００２８】
ステップ５：  削除したいデータの先頭までテープメディアを巻き戻し（図５）、ステップ２で取得した先頭位置からステップ４で取得した末尾位置まで (例えば従来の erase コマンド実行時のように高周波パターンを上書きすることにより) 削除する（図６）。
【００２９】
図６における「書き込まれたデータ」が、「削除するために書き込まれたデータ」ではあるものの、「書き込まれたデータ」であるという点においては、図１と同様である。
【００３０】
なお、図３、図４、図５において、削除したいデータの左側において、削除する必要のないデータが書き込まれていることと同様、典型的には、削除したいデータの右側においても、削除する必要のないデータが書き込まれているのであるが、これらの図では省略している。
【００３１】
この手順では、ステップ４からステップ５に進むために最後のレコードから先頭のレコードまでテープメディアを巻き戻す必要があり、例え１つのレコードを削除する場合でも数秒、削除するレコードが多い場合は１分以上時間がかかる。
【００３２】
この位置合わせ所要時間の削減が本発明の取り組む課題であり、本発明を適用することによって、このような位置合わせを不要にしようとするものである。
【００３３】
つまりは、データをリードヘッドによって読み出した「直後に」、テープメディアとリードヘッドおよびライトヘッドと間の進行方向の移動を一方向に維持したままの状態で、レコードをライトヘッドによって削除してしまうものである。
【００３４】
かかる意味において「直後に」という表現は広く解釈されるべきものである。
【００３５】
特許文献１は、テープメディアにおいて、テープにデータセット (ファイル) が複数記憶されており、データを上書きする際、不要になったファイルの領域を使って新規ファイルを書き込む時にテープの使用効率を向上させることを目的としている。
【００３６】
そのため、特許文献１では、磁気テープ装置に、先読みヘッドを設けると共に、磁気テープの先頭位置に、ファイル位置，格納件数，レコード長，ブロック長，タイムスタンプ，継続ボリュームラベルといった、該磁気テープの循環使用の可否の判定データを含むＭＡＰ情報を記録しておくことが開示されている。
【００３７】
さらには、このデータを先読みヘッドで読み込んでデータの書き込み制御を行うことについても記載されている。
【００３８】
しかし、本発明が特徴とするところの、「データ削除中に削除終了位置を検知することにより、事前に削除終了位置を確認することなく特定のレコード群を削除する」点については教示も示唆もされていない。
【００３９】
特許文献２〜４は、参考事例にすぎない。
【先行技術文献】
【特許文献】
【００４０】
【特許文献１】特開平６−１３９６５０
【特許文献２】特開２０１２−１８１８９６
【特許文献３】特開２０１３−１９１２５９
【特許文献４】特表２０１３−５３８３９９（国際公開ＷＯ２０１２／０２５４９２の指定国日本（ＪＰ）における国内段階での国内公表に対応している）
【発明の概要】
【発明が解決しようとする課題】
【００４１】
本発明の目的は、テープメディア上に記録された特定のデータの削除所要時間を削減することにある。
【課題を解決するための手段】
【００４２】
２本のリードヘッドと１本のライトヘッドという計３本のヘッドを同時に活用し、データ削除中に削除終了位置を検知することにより、事前に削除終了位置を確認することなく特定のレコード群を削除する。
【発明の効果】
【００４３】
本発明を適用することにより、データを削除するにあたり、事前に削除終了位置を確認する必要がなくなり、削除所要時間を低減できる。
【００４４】
低減される時間は、削除するデータがテープ上に占める領域の大きさ (長さ) に比例するが、短い場合でも数秒、長い場合には１分以上短縮することができる。
【図面の簡単な説明】
【００４５】
【図１】テープドライブにリードヘッドが２つある場合を示す図である。
【図２】テープドライブにライトヘッドが２つある場合を示す図である。
【図３】連続して書き込まれた複数のレコードをまとめて削除する手順を示す図である。
【図４】連続して書き込まれた複数のレコードをまとめて削除する手順を示す図である。
【図５】連続して書き込まれた複数のレコードをまとめて削除する手順を示す図である。
【図６】テープドライブにリードヘッドが２つある場合を示す図である。
【図７】データ削除中の進行方向前方のリードヘッドの挙動をフローチャートにしたものである。
【図８】ファイルシステムのインターフェースを通じて、テープへのアクセスを可能とする構成の例を示す図である。
【発明を実施するための形態】
【００４６】
以下、本発明を実施するための形態について説明する。
【００４７】
図６は、テープドライブにリードヘッドが２つある場合を示す図である。
【００４８】
「書き込まれたデータ」が、「削除するために書き込まれたデータ」ではあるものの、「書き込まれたデータ」であるという点においては、図１と同様である。
【００４９】
本発明では、図６のように、リードヘッドが２本ある構造を前提とする。
【００５０】
データ削除時のライトヘッドと進行方向後方に位置するリードヘッド (図６では左側のリードヘッド) の挙動は従来通りであるため、本発明の特徴である進行方向前方のリードヘッド (図６では右側のリードヘッド) の挙動に着目し、解説する。
【００５１】
データ削除中に、進行方向前方のリードヘッドを用いて、既にテープメディア上に記録されている DS の DSIT を読み取り、削除したい最後のレコードの末尾に到達したら、それを含むDSを削除した後、削除を終了させる。
【００５２】
図７は、データ削除中の進行方向前方のリードヘッドの挙動をフローチャートにしたものである。
【００５３】
本発明を適用することにより、データを削除するにあたり、事前に削除終了位置を確認する必要がなくなり、削除所要時間を低減できる。
【００５４】
低減される時間は削除するデータがテープ上に占める領域の大きさ (長さ) に比例するが、短い場合でも数秒、長い場合には１分以上短縮することができる。
【００５５】
ホストから本方式でデータの削除を依頼する手法としては、既存の SCSI コマンドの１つである erase コマンドのパラメータに、新たに削除を開始するレコード番号と、削除を終了するレコード番号を追加して、開始位置と終了位置を指定できるようにすれば良い。
【００５６】
また、erase コマンドのパラメータは従来通りとし、事前に mode select コマンドを利用し削除開始/終了レコード番号をホストがテープドライブに登録できるようにしても良い。
【００５７】
開始位置については、従来通り事前に locate コマンドを用いて位置合わせを行うようにしても良い。
【００５８】
図８は、ファイルシステムのインターフェースを通じて、テープへのアクセスを可能とする構成の例を示す図である。
【００５９】
テープドライブ１０の典型的な内部構成の一例である。
【００６０】
本発明の技術的思想は、テープメディアに限らない他のストレージメディアに対しても、幅広く適用することができる。
【００６１】
本発明は、ハードウエア(H/W)とソフトウエア(S/W)との組合せとして協働するファイルシステムとしてだけでなく、ファイルシステムに方法を実施させるプログラムコードがコーディングされたコンピュータプログラム(S/W)としても具現化することができる。
【００６２】
本発明の技術的思想は、データベースのようにファイルシステムを介さずに直接ストレージを利用するシステムにおいても適用可能であり、幅広い実施形態を通じてコンピュータに実行させることができる。
【図１】
0006433170.tif 000002
【図２】
0006433170.tif 000003
【図３】
0006433170.tif 000004
【図４】
0006433170.tif 000005
【図５】
0006433170.tif 000006
【図６】
0006433170.tif 000007
【図７】
0006433170.tif 000008
【図８】
0006433170.tif 000009