JP2015103033A - テープカートリッジのデータを自動的にリクラメーションする方法 - Google Patents
テープカートリッジのデータを自動的にリクラメーションする方法 Download PDFInfo
- Publication number
- JP2015103033A JP2015103033A JP2013243395A JP2013243395A JP2015103033A JP 2015103033 A JP2015103033 A JP 2015103033A JP 2013243395 A JP2013243395 A JP 2013243395A JP 2013243395 A JP2013243395 A JP 2013243395A JP 2015103033 A JP2015103033 A JP 2015103033A
- Authority
- JP
- Japan
- Prior art keywords
- data
- partition
- writing
- unnecessary
- data partition
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000005192 partition Methods 0.000 claims abstract description 228
- 238000013500 data storage Methods 0.000 claims description 19
- 238000013508 migration Methods 0.000 claims description 3
- 230000005012 migration Effects 0.000 claims description 3
- 238000009434 installation Methods 0.000 claims description 2
- 239000000872 buffer Substances 0.000 description 31
- 230000008569 process Effects 0.000 description 16
- 230000008859 change Effects 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 238000007906 compression Methods 0.000 description 10
- 230000006835 compression Effects 0.000 description 10
- 230000006870 function Effects 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000004804 winding Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/008—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires
- G11B5/00813—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes
- G11B5/00817—Recording on, or reproducing or erasing from, magnetic tapes, sheets, e.g. cards, or wires magnetic tapes on longitudinal tracks only, e.g. for serpentine format recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1201—Formatting, e.g. arrangement of data block or words on the record carriers on tapes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B20/1201—Formatting, e.g. arrangement of data block or words on the record carriers on tapes
- G11B20/1202—Formatting, e.g. arrangement of data block or words on the record carriers on tapes with longitudinal tracks only
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/12—Formatting, e.g. arrangement of data block or words on the record carriers
- G11B2020/1291—Formatting, e.g. arrangement of data block or words on the record carriers wherein the formatting serves a specific purpose
- G11B2020/1292—Enhancement of the total storage capacity
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
(a)第1のデータ・パーティション(DP1)からデータを書き込み始め、第1のデータ・パーティション(DP1)への書込みデータが規定容量に達した後は第2のデータ・パーティション(DP2)に後続のデータを書込み(DP1及びDP2書込み)することと、
(b)第1のデータ・パーティション(DP1)のデータ書込みが完了した後に、第1のデータ・パーティション(DP1)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第1のデータ・パーティション(DP1)のデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティション(DP2)への書込みデータが規定容量に達した後、第3のデータ・パーティション(DP3)の空き容量に書き込み(DP3書込み)することと、
(d)第2のデータ・パーティション(DP2)のデータ書込みが完了した後に、第2のデータ・パーティション(DP2)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第2のデータ・パーティション(DP2)のデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティション(DP3)の書込みデータが規定容量に達した後、第1のデータ・パーティション(DP1)の空き容量に新たな編集データを書き込みする(DP1書込みする)ことと、
(f)第3のデータ・パーティション(DP3)のデータ書込みが完了した後に、第3のデータ・パーティション(DP3)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティション(DP2)に移動し、第3のデータ・パーティション(DP3)のデータ記憶エリアを部分的リクラメーションすることと、を含む。
前記インデックスは、DPに保管された前記ファイルのデータ部分のメタ情報を含み、
前記メタデータは、DPに保管された前記ファイルの必要データのそれぞれの位置情報(エクステント)を含み、
前記インデックスは、前記エクステント(ブロック番号、オフセット、サイズ)及び前記データ・パーティションのIDを含み、
前記部分的なリクラメーションは、前記移動されたファイルのインデックスとして、前記移動元のデータ・パーティションのIDから前記移動先のデータ・パーティションのIDに変更することを含む。
前記メディアを、前記データを保管する少なくとも3つのデータ・パーティション(DP1,DP2,DP3)に分割管理する、前記装置の制御は、
(a)第1のデータ・パーティション(DP1)からデータを書き込み始め、第1のデータ・パーティション(DP1)への書込みデータが規定容量に達した後は第2のデータ・パーティション(DP2)に後続のデータを書込み(DP1及びDP2書込み)することと、
(b)第1のデータ・パーティション(DP1)のデータ書込みが完了した後に、第1のデータ・パーティション(DP1)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第1のデータ・パーティション(DP1)のデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティション(DP2)への書込みデータが規定容量に達した後、第3のデータ・パーティション(DP3)の空き容量に書き込み(DP3書込み)することと、
(d)第2のデータ・パーティション(DP2)のデータ書込みが完了した後に、第2のデータ・パーティション(DP2)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第2のデータ・パーティション(DP2)のデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティション(DP3)の書込みデータが規定容量に達した後、第1のデータ・パーティション(DP1)の空き容量に書き込みする(DP1書込みする)こと、
(f)第3のデータ・パーティション(DP3)のデータ書込みが完了した後に、第3のデータ・パーティション(DP3)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティション(DP2)に移動し、第3のデータ・パーティション(DP3)のデータ記憶エリアを部分的リクラメーションすることと、を実行する。
前記メディアを、前記データを保管する少なくとも3つのデータ・パーティション(DP1,DP2、DP3)に分割管理する。また、このプログラムは、
(a)第1のデータ・パーティション(DP1)からデータを書き込み始め、第1のデータ・パーティション(DP1)への書込みデータが規定容量に達した後は第2のデータ・パーティション(DP2)に後続のデータを書込み(DP1及びDP2書込み)することと、
(b)第1のデータ・パーティション(DP1)のデータ書込みが完了した後に、第1のデータ・パーティション(DP1)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第1のデータ・パーティション(DP1)のデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティション(DP2)への書込みデータが規定容量に達した後、第3のデータ・パーティション(DP3)の空き容量に書き込み(DP3書込み)することと、
(d)第2のデータ・パーティション(DP2)のデータ書込みが完了した後に、第2のデータ・パーティション(DP2)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティション(DP3)に移動し、第2のデータ・パーティション(DP2)のデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティション(DP3)の書込みデータが規定容量に達した後、第1のデータ・パーティション(DP1)の空き容量に書き込み始める(DP1書込みする)ことと、
(f)第3のデータ・パーティション(DP3)のデータ書込みが完了した後に、第3のデータ・パーティション(DP3)に保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティション(DP2)に移動し、第3のデータ・パーティション(DP3)のデータ記憶エリアを部分的リクラメーションすることと、を前記コンピュータ(テープ装置)に実行させる。
1.自動リクラメーションの流れ。
2.データコピーの方法。
3.リクラメーションと通常読み書きの切り替え。
4.削除したデータをゼロ値の圧縮でコピーする手法。
実施例の説明の前提として、テープメディアのデータ・パーティション(図1)、テープドライブ構成及びその動作(図2)、メディアに保管されたファイルのデータの書込み(変更/編)(図3)、テープドライブ用ファイルシステム(LTFS)でのファイル更新とインデックス・パーティション及びデータ・パーティションのフォーマット(図4)、LTFSでファイルの一部が変更され場合のインデックス(メタ情報)の内容(図5)について説明する。
LTO5テープドライブは、テープの長手方向に沿った書き込み領域のラップ(wrap)を往復しながらデータを書く。LTFSではこのラップ2本分(1往復分)をインデックス・パーティションとして利用している。テープの先端部(BOT:Beginning of Tape)から終端部(EOT:End of tape)に渡ってIPとDPとの2つに区分される。ヘッドが同時に読み書きするトラック群であり、トラック16本がラップ1本に相当する。LTO5のテープカートリッジでは、テープ長手方向は約800m、横手方向はラップ数80本の幅である。IPとDPとは2本のラップの保護領域(guard band)で区分される。テープはラップの長手方向に前後に進行し、BOTおよびEOTにおいて進行する向きを反転することをラップターン(wrap turn)と呼ぶ。テープドライブのヘッドに対してテープの長手方向のBOTからEOTの移動時間は60〜90秒である。長手方向の半分のテープ移動時間は30〜45秒程度である。LTO5のテープカートリッジの記憶容量は、約1TBである。例えば、メディア情報を含むIPの容量はユーザが変更できるが、典型的には全体容量の5%(50GB)を占める。
テープドライブ60は、ホスト300のアプリケーションからファイルシステム(LTFS)を介してファイルの読み書き要求を受け取る。テープドライブは、通信I/F(インターファース)110と、バッファ120と、記録チャネル130と、読書きヘッド140と、制御部150と、位置決め部160と、モータドライバ170と、モータ180とを含む。
上図(A)は、初めは各ファイル(第1、第2、第3、第4)が連続して記録されていることを示す。下図(B)は、各ファイルを部分的に変更している後のテープ上でのデータ部分を示す。第1のファイルのデータ部分1,3,5について上書や削除されて変更され、2,4は変更さていない。第2のファイルはデータ部分6が変更されている。第4のファイルは、データ部分7が変更されている。変更された元のデータ部分は無効データとしてメディア上にそのまま残る。第1のファイルの変更後、データ部分1,3,5,6についての更新された新しいデータ部分は、ファイルのEOD(End of Data)以降に順番に追記書込みされる。
(A)は、LTFSフォーマットで初期化した直後のテープメディアに書き込まれるメタ情報を示す。
テープメディアを LTFS フォーマットで初期化した直後には、テープメディアにはA)に示す情報が書き込まれる。
・FID(Format Identification Data set)は、テープドライブがテープメディアを初期化する際、テープメディアの先頭に書き込まれる特殊なデータであり、テープメディア上のパーティションの数や各パーティションの容量などの情報を持つ。
・VOL1 Labelは、ANSI Label とも呼ばれるもので、文字通り ANSI で規定された一般的なフォーマットのラベルである。
・LTFS Labelは、LTFS フォーマットで規定されたラベルで、このテープメディアがLTFSフォーマットのどのバージョンに準拠してフォーマットされたかといった情報を保持するラベルである。ここでメディアに記録されるレコードのサイズを指示する。レコードサイズはブロック・サイズ(block size)とも言う。ファイルの終端がレコードサイズ(例えば、512KB)に満たない場合でもレコードサイズを確保する。
・FM(Filemark)とは、テープメディアで一般的に利用される、いわば本のしおりのようなものであり、データの位置合わせ(seek)を行う際に利用される。
・Index#0とは、フォーマット時に書き込まれるインデックスであり、この段階ではファイル自体は一つも存在しないためファイル固有の情報は持たないもののテープメディアのボリューム名などの情報を保持するため書き込まれる。
LTFSフォーマットで初期化後、ファイル(File1)を書き込むと、テープメディア上に書き込まれたデータは(B)のようになる。太線で囲まれた部分が追加/更新されたデータである。Index#1はFile1のメタ情報(インデックス)を持つ。IPは最新のインデックスのみ保持する一方、DPはインデックスの履歴を保持する。インデックスを更新するタイミングはファイルシステムの実装にまかされており、例えば一定時間毎に更新したり、テープドライブからテープメディアを取り出す時のみ更新したりしている。更に使い続ける場合も、IPに置かれるインデックスは常に最新のインデックスのみが置かれ、DPは既存のインデックスを上書きすることなく、ファイルおよびインデックスを追記していく。
最初のファイル(File1)をテープメディア上に書き込んだ後、次のファイル(File2)を追加すると、格納されるFile1にFile2が連続してテープメディアに保管される。Index#2はFile1およびFile2のメタ情報(インデックス)を持つ。
アプリケーションによるが、文書作成アプリケーション(例、マイクロソフト社のワード)は、メディア上に書き込まれたファイルを更新した後、1つのファイル(File1)がFile1-1及びFile1-2のようにフラグメント化(分散)して記録する。このようなファイルの書き換えでは、更新時のテープメディアの空き容量の減少分が更新した情報量に依存する。
インデックス(index)はファイルの位置情報(ポインター)をエクステント(extent)と呼ぶ形式で保管する。エクステントの要素(element)は、ファイルの部分(データ部分)の先頭のブロックの番号(StartBlock),その番号のブロック内での開始オフセット(ByteOffset),データのサイズ(ByteCount),データ部分のファイルでの位置(FileOffset)を含む。ユーザデータはブロックサイズで指定されたサイズ(例えば512KB)単位のブロック単位でメディアに記録される。
StartBlockは、テープメディアの先頭から固定サイズのブロックの順番を指す。ByteOffsetは、特定番号のブロック内で書き始めるオフセットを示す。
ByteCountは、エクステントで指示されるデータ部分のデータサイズを指す。
FileOffsetは、エクステントで指示されるデータ部分のファイル位置を指す。
ブロックは、ブロックまたはFM(FileMaker:ブロックの区切り)を含み、LTFSLabelにおいてサイズが指定される。ユーザデータはブロックサイズで指定されたサイズ(例えば512KB)単位のブロック単位でメディアに記録される。
エクステント(y)は、File1のデータ部分600KBバイトを変更して書き込まれる250KBのデータ(ブロック)を指示する。データ部分の連続ではなく、後続するBlock番号(StartBlock:N+4)のブロックとして追記書込む。
エクステント(y)は、StartBlock=N+4のオフセットByteOffset=0から250KBを追記(append write)する。
エクステント(x)は、StartBlock=NのByteCount=Mまでのデータ(ブロック)を指示す。ブロックNのオフセットMから600KBのデータは変更される。
エクステント(z)は、StartBlock=N+2のByteOffset=(M+600K)mod DからByteCount=L-(M+600)のデータ部分を示す。Dはブロックサイズ(例えば512KB)である。ByteOffsetはM+600KBをDで割った余りであり、ブロック番号N+2でのオフセットを与える。
File1のインデックスは、データ部分の書換えにより、複数のエクステント(x)→(y)→(z)にようにフラグメント(分散)化した配置情報を含む。この250KBのデータを含む斜線部は必要データであり、600KBのデータが不要データである。
データ・パーティションを3つ(DP1,DP2,DP3)用いて、自動的にリクラメーションする手法を提案する。
・DP1からデータを書き込み始める。
・DP1のデータが規定容量に達し書き込めなくなった後、DP2にデータを書き込み始める。
・DP1のデータを、不要なエリアを削除した上で、DP3に移動する。DP3のデータは不要なエリアを削除しているため、規定容量には達しない。また、DP2の書き込みとは同時に行えないので、LTFSはDP2への通常の書き込みと、DP3へのデータコピーをコントロールする。DP1からDP3へのデータ移動が完了した段階で、DP1のデータエリアはすべて再利用可能となる。
・DP2のデータが規定容量に達し書き込めなくなった後、DP3の空き容量にデータを書き込み始める。
5) DP2のデータを、不要なエリアを削除した上で、DP1に移動する。
この作業を繰り返す
このように3つのパーティションを利用することで、テープに対するデータの書き込みを完全に中断させる必要が無い状況下で、かつ1台のドライブのみで、かつ人の作業を要さずにテープの再利用が行える。
不要データをすべてゼロ値に置換し圧縮機能を働かせた場合、テープに書かれた場合の物理使用エリアは大幅に縮小できるため容量を増やすことが可能である。例えば、不要データ部分を全てゼロで置換してコピー先に移動した場合、データ。サイズは元の10%以下になる。置換データのゼロは例示であり、高圧縮が可能なデータであれば他のデータでもよい。この手法は、不要データのサイズを変更せず、データ自体を高圧縮可能なデータで置換する。
LTFSの場合、データ・パーティション(DP)の他にインデックス・パーティション(IP)がひとつ存在する。IPはDPに書かれたすべてのファイルのメタ情報(インデックス)が保管されているため、データの移動を行った場合、すべてのファイル情報に対して、新しくデータが書かれた領域の情報(特に、パーティション番号・ブロック番号・ブロック長など)に更新する必要がある。
図6〜図10は、メディアの3つのデータ・パーティションにファイルの通常の書込み(変更)及び部分的なリクラメーションを実行する自動リクラメーションの実施例を示す。部分的リクラメーション(partial reclamation)は、データ・パーティションのファイルのデータを必要データと不要データを区別して他のデータ・パーティションに移動して記憶領域の再利用することを言う。各データ・パーティションでの書込み及びその完了後に部分的なリクラメーションが次のステップで実行される。
(1)第1のステップは、DP1からデータを書き込み始め、DP1のデータが規定容量に達し書き込めなくなった後、DP2にデータを書き込み始める。灰色部分は不要データの領域である。
(2)第2のステップは、DP1のデータを不要データを削除した上で、DP3に移動する部分的リクラメーションを示す。
DP1の灰色部分と斜線部分、即ち全ての容量領域は、再利用可能である。DP3の波線部分は、移動されたDP1の斜線部分の必要データを示す。
(3)第3のステップは、部分的クラメーションの完了後したDP3の空き領域への後続の書込みを示す。
図8において、DP2のデータが規定容量に達し書き込めなくなった後、DP3の空き容量にデータを書き込み始める。DP2の灰色部分は不要データであり、点領域は必要データである。DP3の点領域は、後続の書込みデータである。
(4)第4のステップは、DP1のデータを、不要データを削除した上で、DP3に移動することを示す。DP2の点領域と斜線部分、即ち全ての容量領域は再利用可能である。DP1の網面部分は、移動されたDP2の斜線部分の必要なデータである。
他のデータ・パーティションに対する通常の書込みのための第5のステップ及び第6のステップと、部分的リクラメーションのための第7のステップとを繰り返す。
(5)第5のステップの後続の書込みは、(2)の第2のステップの部分的リクラメーションの先のDP3の空き容量への書込みデータが規定容量に達した状態である。
(6)第6のステップの後続の書込みは、(4)の第4ステップの部分的リクラメーションの先のDP1の空き容量に書き込み始める。
(7)第7のステップの部分的リクラメーションは、DP3の必要データを、(4)の第4ステップの部分的リクラメーションにより空になったDP2に移動する。
図11は、ホストからの通常の書込みとリクラメーションとを切り替えながらデータコピーする方法を示す。
灰色の矢印はファイルの通常の書き込み及びそのファイルの編集の際のデータのフローを示す。黒色の矢印はデータ・パーティションごとの部分的なリクラメーションのデータのフローを示す。ドライブ60内のバッファ120は、その記憶域を分割して別の読み書きのプロセスに使用することが可能である。自動リクラメーションの実施には、ドライブのバッファ120のエリア(領域)を、通常の読み書き用途のバッファBとリクラメーションの読み書き用のバッファAに分割して使用する。図で示すように、通常の読み書きは、ホスト300とドライブバッファBの領域を用いてデータ転送を行いDP3に書き込む。このデータコピーの方法は、ドライブ内部ですべて対応可能である。部分的リクラメーションはテープの規定容量が達したパーティション(DP1)からドライブバッファAの領域に読み出し、新しいパーティション(DP3)に書き出す。この部分的リクラメーションのデータコピー方法を適切に処理するためには、現行のLTO5およびTS1140などのテープドライブのファームウェアに新たな処理機能を追加する必要はある。他の方法として、ドライブバッファを分割して使用せず、ホストのHDDにデータも転送し、テープに書き出す方法でもよい。この方法の場合テープドライブ本体への追加機能を必要としない。
実施例の方法では部分的リクラメーションと通常の読み書きとを切り替えて行うことが可能である。その場合、以下のような流れでLTFSはドライブに対して処理の切り替えを行う。
A.バッファA,Bの大きさの割当:
あらかじめバッファAの容量Xをドライブから取得しておく。通常の読み書きに使用するバッファBの大きさをLTFSが知っておく必要はない。バッファA、Bの大きさはドライブの起動時に決まるので、LTFSが使用されているシステム下の履歴などから、適した値を割り当てておくのが良い。
B.部分的リクラメーションのタイミング:
書き込み先のパーティションDP1が規定容量に達したことをドライブから取得する。書込みがDP1の規定容量に達したことはDP1のデータ書込みを完了したことなので、基本的には、DP1のデータについていつでもリクラメーションしてよいことを意味する。LTFSはメタ情報からDP1の有効データの割合を計算し、設定した規定値以下であればリクラメーションモードに入る。ファイルに対して多数の書込み編集を行った場合、そのファイルに関連して必要データに対して不要データの割合が多くなり、「設定値」以下になる。例えば「設定値」を50%とした場合には、リクラメーションすることによりテープの容量について50%の再利用が可能となる。一方、「設定値」に対して必要データが90%の場合は、たとえリクラメーションしたとして10%のデータ容量の再生しかできない。
C.部分的リクラメーション作業:
リクラメーションモードに入った場合、LTFSは先に示したデータ移動処理を開始する。このとき、DP1からX量の有効データをバッファAに読み出し、DP3に書き込む。有効データの特定は、LTFSのインデックス情報から行える。有効データが連続していない場合も、X量のデータを先にDP1から読み出し、DP3にすべて書き込むほうが現行のテープドライブにとっては効率が良い。
D.通常の読み書きのタイミング:
リクラメーション中に、通常の読み書きの処理要求がアプリケーションからLTFSに来た場合、LTFSはアプリケーション側の処理を優先させる。リクラメーションの処理から通常の読み書きモードに移る。以下の図12のフローチャート上は処理理解のため、DP3にデータを書き出したタイミングでチェックを行っている。実際のリクラメーションの処理では、リクラメーションを中断させるタイミングは、実装の容易性を考慮しないのであれば、SCSIコマンドレベルの処理の完了時点が最短である。
E.通常の読み書き後の部分的リクラメーションのタイミング:
通常の読み書きから再びリクラメーションに移るタイミングは、通常はLTFSを通じてアプリケーションから処理されているファイルがすべてクローズされたことをトリガにする。当然、DP2の残り容量などを鑑みて切り替える必要がある。また、ファイルはオープンされているが読み書きの処理が一定時間以上発生していない場合は、リクラメーションの処理に戻るなどの考慮が必要である。読み書きの途中にリクラメーションの処理を入れることも理論上可能ではある。実際のテープドライブの読み書きに時間がかかるものである。従って、リクラメーションを一定時間に完了したい場合は、通常の読み書き作業を適当に区切って、一定のタイミングでリクラメーション作業を別して実行することが推奨される。
(1100):ドライブのバッファ120からリクラメーション用バッファAの容量Xを確保する。
同時にドライブのバッファ120から通常の書込み用バッファBの容量Yを確保する。
(1102):ファイルシステム(LTFS)はバッファBを使いDP1へ通常のファイルの書き込み及び編集をしている。
(1104):DP1への書込みが規定容量に達したか、を確認する。
規定容量は、テープの全容量(例えば1TB)をIP(5%程度)と3つのDPとに分割した場合で与えられ、例えば290MBの値である。
Yesの場合、部分的リクラメーションの処理(1106)を移動する。
Noの場合、DP1への通常の書込み処理(1102)を続ける。
(1106):DP1の書込みが完了した場合LTFSは部分的リクラメーションのモードに入る。
リクラメーションは、上のBで説明したタイミングで開始される。
(1108):オープン状態のファイルが存在するかを確認する。
LTFSは既に通常の書込み及び編集しているファイルがあるかを確認する。
Yesの場合、オープン状態のファイルのデータの書込み処理(1110)を継続する。
Noの場合、部分的リクラメーションの処理(1114)を開始する。
(1110):オープン状態のファイルのデータをバッファBを介してDB2への書き込みを継続する。
(1112):DP1のファイル・データについての部分的リクラメーションのタイミングを判断するために、DP2への通常の書き込み容量が設定した値より大きくなったかを確認する。
具体的には、上のDで説明したタイミングである。部分的リクラメーションのタイミングは、通常の書込みとの進捗を考慮して決定される。例えば、DP2への通常の書き込み容量が「設定した値」より大きくなった場合にリクラメーションを開始する。
Yesの場合、バッファAを介して部分的リクラメーションの処理(1114)を開始する。
Noの場合、オープン状態のファイルへの書込み(1108)を継続する。
(1114):部分的リクラメーションとして、DP1からX量の有効データをバッファAに読み出す。
Yesの場合(1110)のオープン(Open)されているファイルへの書込みを継続する。
有効データには、ファイル・データの編集により不要データとなったデータは含まれない。この場合、不要データを削除するためブロック番号が削除されるために、エクステントの再設定が必要である。このエクステントの再設定を避けるため、後で説明するように不要データ部分に圧縮率の高いデータで置換して、不要データ部分も含めてデータコピーする方法を採用する。
Noの場合(1114)の処理、バッファAへの有効データ(必要データ)を読み出し、保管する。
(1116):部分的リクラメーションとして、バッファAからDP3にデータを書き出す。
(1118):部分的リクラメーションとして、DP1からのデータの読み出しが最後に達したかを確認する。DP1のリクラメーションの完了を確認する。
Yesの場合、インデックスの変更処理(1120)を行う。
Noの場合、書込み処理中のオープン状態のファイルの確認処理(1108)に移動する。
(1120):部分的リクラメーションの完了にともないコピーされたファイルのインデックスについて、インデックスを変更する。
有効データが必要データ及び不要データを含む場合、当該ファイルのインデックスについてデータ・パーティションのIDを変更するのみでエクステント(ブロック番号、オフセット、サイズ)の変更は不要とされる。有効データが必要データのみとしてコピーされた場合は、不要データ部分のブロックが削除されているため、エクステントの計算に時間がかかる。この部分的リクラメーションが完了した時点で、DP1の必要データ及び不要データが占有するDP1の記憶領域は開放される。
(1122):チェック対象のパーティションをDP1から例えばデータ・パーティションDP2に変更する。DP2に保管されたファイル・データについて部分的リクラメーションをするモードになる。
(1102)に戻り、例えば、DP2の空き記憶領域に通常の書込みをDP2に継続する。
並行して、DP2の保管データについてDP1に部分的リクラメーションの上記処理ステップを実行する。
またDP2のファイル・データの部分的リクラメーションが完了したら、チェック対象のパーティションをDP2からDP3に変更する(1122)。DP3について部分的リクラメーションを実行する。
図13は、ファイルのデータを不要データ(不要ブロック)を含めて圧縮してリクラメーションする場合を示す。
ファイルが編集されて、一部のブロックを不要データとして削除して他のデータ・パーティションの移動の際にエクステントの計算のために所定の時間を必要する。編集により削除された不要データのサイズ分を考慮して、他のデータ・パーティションに移動して部分的リクラメーションをする。本発明の実施例では、データ・パーティションID以外、エクステントの変更算定を不要とできるため高速な部分的リクラメーションを可能にする。
部分的なリクラメーションのステップ、即ち第2のステップ(図7)、第4のステップ(図9)、第7のステップ(図10)及び(114)処理・(1116)処理(図12)のコピーの際にこの方法を用いる。(a)に示すように、ブロック2,3,5,7(b2、b3,b5,b7)が不要データであった場合、その値をゼロにして圧縮機能を有効にした上で、DP3に書き込む。この結果、DP3上にはDP1と対応するブロック番号のデータサイズ分の領域はそのまま残す。但し圧縮率を高めるために削除されているブロックの全てのデータ内容をゼロで置換して圧縮したうえで、他のデータ・パーティションにデータコピーを行う。不要データの元のサイズの10%以下に圧縮できるため、圧縮した形式で不要データをテープ領域に残してもリクラメーションを無意味にすることにはならない。不要ブロックをゼロで置換した残し方法は、複数回の編集を経たファイルについて必要データのブロックの位置関係がはずれないため、エクステントの再計算の時間を除ける点で有利である。
ここで、パーティションIDは、物理的にテープ上のパーティションをポインタしているのではない。LTFSのメタ情報は、テープ全体の情報をあらわすラベル部分と、個々のファイル・ディレクトリすべての情報をもつインデックス部分に分けられる。下の表の情報は個々のファイルの情報を含むインデックスの一部である。インデックスのパーティション情報は、実際のテープ上のパーティション番号とラベルで紐付けられている。
テープ上のDP1のファイルのインデックス → パーティションID=a
テープ上のDP2のファイルのインデックス → パーティションID=b
テープ上のDP3のファイルのインデックス → パーティションID=c
・FileAはインデックスとして、データ・パーティションID=a、エクステント(開始ブロック番号=0、ブロック長=5)を含む。
・FileBはインデックスとして、データ・パーティションID=a、エクステント(開始ブロック番号=5、ブロック長=20)を含む。
・FileCはインデックスとして、データ・パーティションID=a、エクステント(開始ブロック番号=25、ブロック長=20)を含む。
・FileAはインデックスとして、データ・パーティションID=c、エクステント(開始ブロック番号=0、ブロック長=5)を含む。
・FileBはテープ上に残るがインデックスとして、エクステント及びパーティションIDの割当は無視される。
・FileCはインデックスとして、データ・パーティションID=c、エクステント(開始ブロック番号=5、ブロック長=20)を含む。
完全にFileBのデータをエクステント算定において除外してコピーした場合、FileCの開始ブロック情報は(c)のように変更しなければならない。ファイルがひとつ削除されただけでも、FileC以降の開始ブロックはすべて変更しなければならいことになる。ファイルが1万個あった場合、先頭のファイルが削除されたら1万ファイルのデータすべてに対して変更する必要がある。
DP1からDP3にコピーのファイルのインデックス → パーティションID=c
DP2からDP1にコピーのファイルのインデックス → パーティションID=a
DP3からDP2にコピーのファイルのインデックス → パーティションID=b
60…テープドライブ、
110…通信I/F(インターフェース)、
120…バッファ(ドライブバッファ)、
130…記録チャネル、
140…読み書きヘッド、
150…制御部(コントローラ、読み書き制御を含む)、
160…位置決め部
170…モータドライバ、
180…モータ、
300…ホスト(ファイルシステム、アプリケーションを含む)
Claims (9)
- 追記書込みにより更新されたファイルを保管するテープカートリッジ(メディア)の不要なデータの領域を自動的にリクラメーションする方法であって、
前記追記書込みは、前記更新されたファイルについて必要なデータ(必要データ)と不要なデータ(不要データ)とをシーケンシャルに圧縮して前記メディアに保管することを特徴として、
前記メディアを、前記データを保管する少なくとも3つのデータ・パーティションに分割管理する、前記方法であって、
(a)第1のデータ・パーティションからデータを書き込み始め、第1のデータ・パーティションへの書込みデータが規定容量に達した後は第2のデータ・パーティションに後続のデータを書込みすることと、
(b)第1のデータ・パーティションのデータ書込みが完了した後に、第1のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第1のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティションへの書込みデータが規定容量に達した後、第3のデータ・パーティションの空き容量に書き込みすることと、
(d)第2のデータ・パーティションのデータ書込みが完了した後に、第2のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第2のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティションの書込みデータが規定容量に達した後、第1のデータ・パーティションの空き容量に書き込みすることと、
(f)第3のデータ・パーティションのデータ書込みが完了した後に、第3のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティションに移動し、第3のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、を含む前記メディアを自動的にリクラメーションする方法。 - 前記部分的リクラメーションは、移動元の前記データ・パーティションに保管される必要データの割合が設定閾値以下である場合に、実行される、ことを特徴とする、請求項1に記載の方法。
- 前記メディアは、更に前記データ・パーティション(DP)に書き込まれたファイルのインデックスを保管するインデック・パーティション(IP)に区分され、
前記インデックスは、DPに保管された前記ファイルのデータ部分のメタ情報を含み、
前記メタデータは、DPに保管された前記ファイルの必要データのそれぞれの位置情報(エクステント)を含み、
前記インデックスは、前記エクステント(ブロック番号、オフセット、サイズ)及び前記データ・パーティションのIDを含み、
前記部分的なリクラメーションは、前記移動されたファイルのインデックスとして、前記移動元のデータ・パーティションのIDから前記移動先のデータ・パーティションのIDに変更することと、を含む請求項1に記載の方法。 - 前記データ・パーティションの各々の必要データの割合は、前記インデックスから計算される、ことを特徴とする請求項3に記載の方法。
- 前記設置閾値は、50%と設定されることを特徴とする、請求項4に記載の方法。
- 前記部分的リクラメーションは、前記移動元のデータ・パーティションの書込みが完了した後であって後続のデータ・パーティションへの通常の書込みデータの容量が設定した値を超えた場合に、データ移動を開始すること、を特徴とする請求項1に記載する方法。
- 前記部分的なリクラメーションは、前記不要データのサイズを変えずに前記高圧縮可能なデータとして全てゼロで置換して前記必要データとともに、前記移動元のデータ・パーティションから他の前記移動先のデータ・パーティションに移動すること、を特徴とする請求項1に記載の方法。
- 追記書込みにより更新されたファイルを保管するテープカートリッジ(メディア)の不要なデータの領域を自動的にリクラメーションするテープ装置であって、
前記追記書込みは、前記更新されたファイルについて必要なデータ(必要データ)と不要なデータ(不要データ)とをシーケンシャルに圧縮して前記メディアに保管することを特徴として、
前記メディアを、前記データを保管する少なくとも3つのデータ・パーティションに分割管理する、前記テープ装置の制御は、
(a)第1のデータ・パーティションからデータを書き込み始め、第1のデータ・パーティションへの書込みデータが規定容量に達した後は第2のデータ・パーティションに後続のデータを書込みすることと、
(b)第1のデータ・パーティションのデータ書込みが完了した後に、第1のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第1のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティションへの書込みデータが規定容量に達した後、第3のデータ・パーティションの空き容量に書き込みすることと、
(d)第2のデータ・パーティションのデータ書込みが完了した後に、第2のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第2のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティションの書込みデータが規定容量に達した後、第1のデータ・パーティションの空き容量に書き込みすることと、
(f)第3のデータ・パーティションのデータ書込みが完了した後に、第3のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティションに移動し、第3のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、を実行する、自動的にリクラメーションするテープ装置。 - 追記書込みにより更新されたファイルを保管するテープカートリッジ(メディア)の不要なデータの領域を自動的にリクラメーションする、テープ装置のためのプログラムであって、
前記追記書込みは、前記更新されたファイルについて必要なデータ(必要データ)と不要なデータ(不要データ)とをシーケンシャルに圧縮して前記メディアに保管することを特徴として、
前記メディアを、前記データを保管する少なくとも3つのデータ・パーティションに分割管理する、前記プログラムであって、
(a)第1のデータ・パーティションからデータを書き込み始め、第1のデータ・パーティション(DP1)への書込みデータが規定容量に達した後は第2のデータ・パーティション(DP2)に後続のデータを書込みすることと、
(b)第1のデータ・パーティションのデータ書込みが完了した後に、第1のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第1のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(c)第2のデータ・パーティションへの書込みデータが規定容量に達した後、第3のデータ・パーティションの空き容量に書き込みすることと、
(d)第2のデータ・パーティションのデータ書込みが完了した後に、第2のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第3のデータ・パーティションに移動し、第2のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
(e)第3のデータ・パーティションの書込みデータが規定容量に達した後、第1のデータ・パーティションの空き容量に書き込みすることと、
(f)第3のデータ・パーティションのデータ書込みが完了した後に、第3のデータ・パーティションに保管されている必要データと不要データとを前記不要データを高圧縮可能なデータで置換して、第2のデータ・パーティションに移動し、第3のデータ・パーティションのデータ記憶エリアを部分的リクラメーションすることと、
を前記テープ装置に実行させる自動的にリクラメーションするプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013243395A JP6341652B2 (ja) | 2013-11-25 | 2013-11-25 | テープカートリッジのデータを自動的にリクラメーションする方法 |
US14/511,660 US9236065B2 (en) | 2013-11-25 | 2014-10-10 | Reclamation of data on tape cartridge |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013243395A JP6341652B2 (ja) | 2013-11-25 | 2013-11-25 | テープカートリッジのデータを自動的にリクラメーションする方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015103033A true JP2015103033A (ja) | 2015-06-04 |
JP6341652B2 JP6341652B2 (ja) | 2018-06-13 |
Family
ID=53182482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013243395A Expired - Fee Related JP6341652B2 (ja) | 2013-11-25 | 2013-11-25 | テープカートリッジのデータを自動的にリクラメーションする方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9236065B2 (ja) |
JP (1) | JP6341652B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11221989B2 (en) * | 2018-07-31 | 2022-01-11 | International Business Machines Corporation | Tape image reclaim in hierarchical storage systems |
WO2022185650A1 (ja) * | 2021-03-01 | 2022-09-09 | 富士フイルム株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9996459B2 (en) | 2015-09-21 | 2018-06-12 | International Business Machines Corporation | Reclaiming of sequential storage medium |
US10089481B2 (en) | 2015-09-23 | 2018-10-02 | International Business Machines Corporation | Securing recorded data |
US10824338B2 (en) * | 2018-11-02 | 2020-11-03 | EMC IP Holding Company LLC | Using variable sized uncompressed data blocks to address file positions when simultaneously compressing multiple blocks |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010522914A (ja) * | 2007-03-26 | 2010-07-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 順次メディアのリクラメーション及びレプリケーション・システム、方法、及びコンピュータ・プログラム |
JP2012243339A (ja) * | 2011-05-17 | 2012-12-10 | Nec Corp | 磁気テープ装置、磁気テープ用データ再配置方法、及びそのプログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5005023B2 (ja) * | 2009-12-25 | 2012-08-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 読出し及び書込み命令の混在するコマンド列を受け取った場合の最適な書込みを実行するリニア記録方式の装置、その方法、及びプログラム。 |
-
2013
- 2013-11-25 JP JP2013243395A patent/JP6341652B2/ja not_active Expired - Fee Related
-
2014
- 2014-10-10 US US14/511,660 patent/US9236065B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010522914A (ja) * | 2007-03-26 | 2010-07-08 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 順次メディアのリクラメーション及びレプリケーション・システム、方法、及びコンピュータ・プログラム |
JP2012243339A (ja) * | 2011-05-17 | 2012-12-10 | Nec Corp | 磁気テープ装置、磁気テープ用データ再配置方法、及びそのプログラム |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11221989B2 (en) * | 2018-07-31 | 2022-01-11 | International Business Machines Corporation | Tape image reclaim in hierarchical storage systems |
WO2022185650A1 (ja) * | 2021-03-01 | 2022-09-09 | 富士フイルム株式会社 | 情報処理装置、情報処理方法、及び情報処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20150146317A1 (en) | 2015-05-28 |
JP6341652B2 (ja) | 2018-06-13 |
US9236065B2 (en) | 2016-01-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10915244B2 (en) | Reading and writing via file system for tape recording system | |
JP6041839B2 (ja) | メタ情報を保管する方法、プログラム、及びそのテープ記録システム | |
JP5623239B2 (ja) | 書込みレコードの重複を排除する記憶装置、及びその書込み方法 | |
JP5925280B2 (ja) | テープに書き込されたファイルを消去する方法、プログラム、及びテープ装置 | |
US9262081B2 (en) | Method for reading file using plurality of tape media | |
JP6124734B2 (ja) | 高速に読み出し可能なテープメディアにファイルを書込む方法 | |
JP5325078B2 (ja) | テープ記録装置およびテープ記録方法 | |
JP2015069290A (ja) | テープドライブ用ファイルシステムよる更新されたファイルの読み出し速度を改善する方法 | |
US20140379980A1 (en) | Selective duplication of tape cartridge contents | |
JP6005122B2 (ja) | 複数のテープカートリッジにファイルをスパニングして書込む方法 | |
JP6341652B2 (ja) | テープカートリッジのデータを自動的にリクラメーションする方法 | |
US9471255B2 (en) | Tape storage device and writing method therefor | |
JP2015036851A (ja) | 複数のテープメディアに1つのファイルをスパニングする方法、ストレージ・システム、およびプログラム | |
US9058843B2 (en) | Recovery of data written before initialization of format in tape media | |
US10656853B2 (en) | Tape having multiple data areas | |
JP6482264B2 (ja) | 複数のテープカートリッジにファイルをスパニングして書込む方法 | |
JP2012181896A (ja) | 磁気テープ装置の制御方法および磁気テープ装置とその制御プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20161101 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170920 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20171003 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20171220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20180424 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20180515 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6341652 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |