JP4452269B2 - データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法 - Google Patents

データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法 Download PDF

Info

Publication number
JP4452269B2
JP4452269B2 JP2006333777A JP2006333777A JP4452269B2 JP 4452269 B2 JP4452269 B2 JP 4452269B2 JP 2006333777 A JP2006333777 A JP 2006333777A JP 2006333777 A JP2006333777 A JP 2006333777A JP 4452269 B2 JP4452269 B2 JP 4452269B2
Authority
JP
Japan
Prior art keywords
tape
file
host
written
write
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.)
Active
Application number
JP2006333777A
Other languages
English (en)
Other versions
JP2008146760A (ja
Inventor
敏幸 白鳥
祐治 木伏
勝喜 香取
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP2006333777A priority Critical patent/JP4452269B2/ja
Priority to CN2007101870045A priority patent/CN101201725B/zh
Priority to US12/001,355 priority patent/US8176243B2/en
Publication of JP2008146760A publication Critical patent/JP2008146760A/ja
Application granted granted Critical
Publication of JP4452269B2 publication Critical patent/JP4452269B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0682Tape device

Description

本発明は、磁気テープ記録装置(以下テープドライブ)の書込み速度を改善することに関する。詳しくは、本発明は、書込みパフォーマンスが改善されたテープ記録装置、及びその書込み制御方法に関する。
図1は、テープ記録システムの形態の例として、テープアーカイブシステム(「テープバックアップシステム」とも言う)の構成200を示す。コンピュータ(ホスト、サーバまたはPC)210に接続されたテープドライブに着脱可能に搭載されたテープ・カートリッジ240(以下「テープ」とも言う)には、ハードディスク(HDD)220に記録されたデータを保存(Archiving)する。テープ・カートリッジ240は、HDD、CD、DVD及びDRAMなど他の記録媒体に比べて、安価に、かつ、長期の間高度な信頼性を保証する。
図2は、一般的なテープドライブ100の構成図を示す。
図2により、一般的なテープドライブのデータの書込み方法を説明する。
テープドライブ100は、バッファ120と、記録チャネル130と、ヘッド14bと、テープ及びカートリッジ14a,14eと、モータ150と、データ書込み制御装置(コントローラ160、ヘッド位置制御システム170)と、モータドライバ185とを含む。コントローラ160は、インターフェース110を介して、ホスト105からバッファ120にデータ(またはレコードとも言う)の書込みを指示する書込みコマンド、バッファ120のデータをテープ14aへの書込みを指示する同期コマンドを受け取る。 例えばインターフェース110の通信の規格がSCSIの場合、ホスト105からのデータまたはレコードの書込みコマンドは、WRITEコマンドである。同期コマンドは、バッファ120に一時的に保管(準備)されたファイルをテープに書込みされたことを確認するために、WRITE FILEMARKS 0(以下「WRITE FM0」と省略する)コマンドである。
コントローラ160は、テープドライブ100の全体を制御する。コントローラ160は、ホスト105から受け付けたコマンドに従って、データのテープ14aへの書込み読取りを制御する。また、コントローラ160は、ヘッド位置制御システム170やモータドライバ185の制御も行う。
記録チャネル130を介して渡されたレコードをヘッド14bによりテープ14aに書込む。テープ14aは、リール14c及び14dに巻かれ、これらの回転に伴い、リール14cからリール14dの方向へ、又は、その反対の方向へ、長手方向に移動する。カートリッジ14eは、テープ14aが巻きつけてあるリール14cを収容する容器である。14eと同じカートリッジにより、リール14dを収容するものを設けてもよい。モータ150は、リール14c及び14dを回転させる。
ホスト105は、WRITEコマンドによりバッファ120に一時保管された複数のレコードの固まりをファイルとして確実にテープに書込まれたことを確認したい。その確認のために、テープドライブに同期要求(Flush)を行なう。ホスト105から書込まれたレコードは、バッファ120に一時保管され、WRITE FM0のコマンドにより同期要求(Flush)され、バッファからテープにレコード書込みが確実に行なわれる。通常の利用では、同期要求は、先行する複数のレコードのWRITEコマンドがされた後に、発行される。
図3(3−1)は、テープドライブ内におけるバッファ410(図2の120)からテープ420(図2の14a)への3つのファイルの従来の同期要求による書込み制御方法を示す。図3(3−2)は、テープ420への3つのファイルの同期操作のタイミング・チャート(図3(3−2))を示す。
一般的なテープドライブの書込み制御方法では、ホストから一連のレコード(点線に区別される)がバッファ410に書込まれ一時保管されたレコードが一定量に達したときに、テープドライブの速さでテープに書込まれている。テープドライブは、シーケンシャル書込み読出し特性を有しているため、バッファ410にある程度の量のレコードが保管されると、ホストからのWRITEコマンド及び同期コマンドとは無関係に、テープ420への書き出しが開始する。
図3の(3−1)では、テープドライブに着脱可能に搭載されたテープ420に3つのファイルA,B,Cを書込むために同期要求を発行する。ホストのアプリケーションは、意味のある複数のレコードの固まりとして、ファイルA、B、Cを意味あるものとして区別している。ホストのアプリケーションは、テープ420に確実に書込まれたことを確認するために、(1)(2)(3)の区切りの時点おいて、同期要求(WRITE FM0:このコマンドを受けるとテープドライブはFlush動作を実行する)を発行する。
テープドライブは、各ファイルA,B,Cのそれぞれについての同期要求を受けると、同期要求により指定されたファイルA,B,Cがテープに書込まれたことをホストのアプリケーションに通知する。例えば、ファイルAの同期を完了すれば、ホストのアプリケーションは次のファイルBについてWRITEコマンドを実行してバッファ420にファイルBを一時保管する。
図3の(3−2)のタイミング・チャートは、テープ420への3つのファイルA,B,Cの同期操作の完了と同時にバックヒッチ(Backhitch)が伴うことを示す。例えば、ファイルAにいての同期の完了に続いてファイルBについて同期要求する場合において、テープドライブではバックヒッチが介在するため、ファイルBの同期操作の開始が遅れる。つまり、複数ファイルの全てに同期要求をする場合、全体として書込みパフォーマンスが大きく低下する。
ファイルAのテープ420への書込み完了後も、テープ420は書込みヘッドに対してテープは前進している。テープ420を停止させずに次のファイルBの同期要求を行った場合、先行する同期要求によりテープ書込まれているファイルAと、書込まれるファイルBとの間に長い記録領域の無駄が生じる。テープドライブは、この記録容量の無駄を小さくするために、バックヒッチ操作によりテープ媒体の長手方向に書込まれるファイル(レコード)の間隔を最小限にしている。
バックヒッチは、テープ媒体の走行速度を減速して、一旦停止し、反転して直前に書込まれたファイルの終端部を越えて減速して再び停止し、順方向に加速して、書込むべき位置まで戻り前回のファイルの終端に至る、モータ駆動の操作によって実行される。IBM製テープドライブ(LTO、3592等)では、同期要求ごとに生じるテープドライブのバックヒッチ操作に約2.5〜3秒かかる。多くの同期要求を伴うデータのテープ書込みは、バックヒッチ操作を頻発させて、ホストからの転送データの書込みパフォーマンスを劣化させる原因となる。
図3の(3−2)は、1つのファイルの大きさによるが、そのファイルのテープの書込み速度は数10m秒程度であることを示す。1つのバックヒッチ操作は、1つの書込み時間に書込みファイルのテープへの書込み速度と比べて2桁以上大きな時間(3秒程度)を付加する。テープドライブは、ファイルAについての同期完了とともに、バックヒッチ操作を行う必要あるため、次のファイルBをバッファ410に保管できたとしてもテープへの書込みを受付けることはできない。図3の(3−2)は、ファイルBはバッファ410に準備されているとしても、実質的にバックヒッチ(2〜3秒)の間、テープ420に書込むことを待たされることを示している。
図3のファイルA,B,Cに対してそれぞれ3回の同期要求される場合、3回のバックヒッチにより最大9秒程度の書込みパフォーマンスの低下を生じさせる。仮に100個のファイルを書き出すためには、同期操作のためだけに、本来データを書き出すために必要な時間に加えて少なくとも300秒程度の余分な書込み時間を必要とする。
図4は、同期操作(即ちバックヒッチ)にかかる時間を出来るだけ減らすため、複数のファイルをまとめて同期操作を行う書込みシーケンス(j−1)〜(j−4)を示す。この書込みシーケンスは、従来の書込みシーケンスのようにアプリケーションにとって意味のあるファイル1,2,3ごとに同期要求を行なわない。テープドライブ530のバッファに全てのファイル1、2、3が書込まれた段階で、最終的にアプリケーションが1回のみ同期要求(Flush)を発行する書込み方法である。
この書込み制御方法の問題点は、まとめて同期を行うため、個々のファイル単位でみると、最後にテープドライブに対して書き出したファイル以外は、同期の応答が遅くなる。最初にテープドライブに対して書き出しを行ったファイルも、最後のファイルの書き出し後の同期完了後までは、テープに確実に書き出されたこと保障できない。また、File1、File2、File3のどれかのテープへの書込み途中で同期操作のエラーを検出した場合、テープドライブは、どのファイルの書き出しで失敗したかをアプリケーションに対して通知できない。書き出しを指示したファイル群(File1、File2、File3)の全てについて、書き直しを行う必要がある。バックアップアプリケーションからすれば、再書込みの際最初から書き始める必要があるために、この書込み制御方法を用いても、依然として書込みパフォーマンスの低下要因を排除することができない。
この書込み制御方法の問題点は、まとめて同期を行うため、個々のファイル単位でみると、最後にテープドライブに対して書き出したファイル以外は、同期の応答が遅くなる。最初にテープドライブに対して書き出しを行ったファイルも、最後のファイルの書き出し後の同期完了後までは、テープに確実に書き出されたこと保障できない。
また、File1、File2、File3のどれかのテープへの書込み途中で同期操作のエラーを検出した場合、テープドライブは、どのファイルの書き出しで失敗したかをアプリケーションに対して通知できない。書き出しを指示したファイル群(File1、File2、File3)の全てについて、書き直しを行う必要がある。バックアップアプリケーションからすれば、再書込みの際最初から書き始める必要があるために、この書込み制御方法を用いても、依然として書込みパフォーマンスの低下要因を排除することができない。
特許文献1は、ホストから同期要求コマンドに対して、応答パフォーマンスの遅延(バックヒッチ操作の時間)を除くために、ホストからテープに書込むデータを一時的に不揮発性記憶に書込み、直ぐコマンド完了を返す技術を提供する。この技術は、同期書込みのパフォーマンスの低下を抑え、書込みパフォーマンスを改善することを課題としている。この技術は、ホストからの同期要求に対して、新たなコマンド"Deferred Sync"により既にテープへの書込みが終わっている可能性が高いデータに対して応答を返す。データが実際にテープに書込みが終了していなければ、その終了まで待つ技術であり、完全には同期を減らしていない。また、Deferred Sync Logic及び不揮発性メモリを備えるコントローラ装置を必要とする点で、テープドライブを安価に利用する技術ではない。
米国特許第6,839,801号明細書
上記の通り、特許文献1の書込み制御は、パフォーマンスの低下の原因となる同期操作を削減している点で書込みパフォーマンスの向上に寄与する。しかし、テープドライブにおいて複数のファイルの同期要求無くテープ書込みを行う場合、どのファイル区切り位置まで確実にテープに書込みできたかの特定が不可能である。
そこで、本発明は、同期要求を不要とすることにより書込み速度が改善された、テープ記録装置、そのテープ記録装置の書込み制御、及び、その書込み制御方法を提供することを目的とする。
具体的には、本発明のテープドライブに2つの新たなコマンド(以下「新コマンド」)を受け付ける機能を実装する。1つは、シーケンシャルに書込まれる複数のファイルの区切り位置をテープドライブに教える区切り位置指定命令(以下「区切り位置指定コマンド」)である。2つめは、どのファイルの区切り位置までテープに書き終わっているかをホストが確認できるテープ書込み位置確認命令(以下「書込み位置確認コマンド」)である。2つの新コマンドは対として使われるものである。
かかる目的のもと、本発明は、外部のホストから複数のファイルの書込み命令を受けた場合にその複数のファイルをシーケンシャルに記録するテープ記録装置である。この装置は、複数のファイルを一時的に保管するバッファと、複数のファイルを記録するテープと、バッファに保管された複数のファイルを前記テープに書込む書込み手段と、バッファに保管された複数のファイルの各々を前記テープにシーケンシャルに書込むことを制御する書込み制御手段とを備え、その書込み制御手段は、外部のホストから、シーケンシャルに書込まれる複数のファイルの区切り位置を指定する命令(区切り位置指定コマンド)を受けた場合に、指定された区切り位置を記憶することを特徴とする。
また、本発明の装置において、書込み制御手段は、複数の前記位置指定コマンドをシーケンシャルに受けた場合において、外部のホストから、指定された区切り位置までファイルをテープに書込み済みかを確認する命令(書込み位置確認コマンド)を受けた場合に、区切り位置までテープに書込み済みか否かの情報を外部のホストに通知することを特徴とする。
かかる目的のもと、本発明は、ホストに接続されテープ記録装置とを備え、そのテープ記録装置は、ホストが発行した複数ファイルの書込み命令、及び、ファイルの区切り位置について区切り位置指定コマンドを受付けるテープ記録システムである。
また、本発明のシステムにおいて、その書込み制御手段は、複数の位置指定コマンドをシーケンシャルに受けた場合、そのコマンドを受取った順番を、指定された区切り位置として記憶することを特徴とする。
また、本発明のシステムにおいて、書込み制御手段は、複数の位置指定コマンドをシーケンシャルに受けている場合において、ホストから、指定された区切り位置までファイルをテープに書込み済みかを確認する命令(書込み位置確認コマンド)を受けた場合に、区切り位置までテープに書込み済みか否かの情報をホストに通知することを特徴とする。
また、本発明のシステムにおいて、書込み制御手段は、書込み位置確認コマンドに対して、指定された区切り位置までテープに書込み済みか否かの情報として、最後にテープに書込まれた指定された区切り位置を示す順番を、外部のホストに通知することを特徴とする。
また、本発明のシステムにおいて、書込み制御手段は、書込み位置確認コマンドに対して、指定させた区切り位置までテープに書込み済みか否かの情報として、最後にテープに書込まれた指定された区切り位置を示す順番の最後のコマンドにより指定された区切り位置の最後の順番からの相対値を、外部のホストに通知することを特徴とする。
また、本発明のシステムにおいて、書込み制御手段は、複数の位置指定コマンドの数がM(自然数)個であって、最後にテープに書込まれた区切り位置が順番N(自然数でN<M)である場合、指定された区切り位置の最後の順番がMであり、相対位置としてN−Mをホストに通知することを特徴とする。
かかる目的のもと、本発明は、複数のファイルの書込み命令を受けた場合に複数のファイルをシーケンシャルにテープに記録するテープ記録装置のための書込み制御手段である。この書込み制御手段は、書込まれる複数のファイルの区切り位置を指定する命令(区切り位置指定コマンド)を受けた場合に、指定された区切り位置を記憶する書込み制御手段である。
また、本発明の制御手段において、区切り位置指定コマンドを受けている場合において、指定された区切り位置までファイルをテープに書込み済みかを確認する命令(書込み位置確認コマンド)を受けた場合に、区切り位置までテープに書込み済みか否かの情報を記憶することを特徴とする。
かかる目的のもと、本発明は、外部のホストから複数のファイルの書込み命令を受けた場合に複数のファイルをシーケンシャルに記録するテープ記録装置のための書込み制御方法である。この書込み制御方法は、複数のファイルをバッファに一時的に保管するステップと、複数のファイルをテープに記録するステップと、バッファに保管された複数のファイルを書込み手段によりテープに書込むステップと、バッファに保管された複数のファイルの各々をテープにシーケンシャルに書込むステップと、外部のホストから、シーケンシャルに書込まれる複数のファイルの区切り位置を指定する命令(区切り位置指定コマンド)を受けた場合に、指定された区切り位置を記憶するステップと、を備える。
また、本発明の制御方法は、更に、外部のホストから、指定された区切り位置にまでファイルがテープに書込み済みかを確認する命令(書込み区切り位置確認コマンド)を受けた場合に、区切り位置までのファイルについてテープに書込み済みか否かの情報を外部のホストに通知するステップを備えることを特徴とする。
本発明によれば、テープドライブは、ホストから新コマンドの発行を受け、どのファイルの区切り位置までがテープに書込み済であるかをホストに通知することにより同期要求を不要にできるため、複数ファイルの書込みパフォーマンスの改善が図れる。
以下、添付図面を参照して、本発明を実施するための最良の形態(以下、実施形態)について詳細に説明するが、以下の実施形態は特許請求の範囲にかかる発明に限定するものではない。
ホストは、シーケンシャルに複数のレコードをテープドライブに送る。ホストが認識する各ファイルは、複数のレコードから構成される。各ファイルは、適当なレコードにおいて区切られる。以下の説明において、“ファイル区切り位置”とは、ホストのアプリケーションが指定する1つのファイルを構成する複数のレコードの最後のものによって識別される。これら“位置”は、テープドライブ内のバッファに保管されているファイルのバッファのアドレスを意味するものでないことを注意されたい。ホストが送る一連の複数のレコードは、アプリケーション(ホスト)が指定する区切り位置よって各ファイルとして区別される。テープドライブは、単に複数のレコードをシーケンシャルに書込みを行うにぎず、テープドライブ自身が各ファイルを区別して書く込みことはできない。
ホストのアプリケーションは、アプリケーションにとって意味あるレコードの集まりをファイルとして管理する。アプリケーションは、複数レコードを書くことより、ファイルをテープに書こうとするが、テープライブ自身はファイルを認識できない。従って、本発明では、アプリケーションからの新コマンドによって、テープドライブは、ファイルの区切り位置を知る。本発明の新コマンドには、2つの主要機能(例えば「第1の新コマンド」「第2の新コマンド」という)がある。
1.第1の新コマンドは、アプリケーションにより、複数レコードの書込みの際に最後のレコードを書込むタイミングにおいてその最後のレコードの書込をファイル(レコードの集まり)の区切り位置(「ファイル区切り位置」)として順次発行し、テープドライブにファイル区切り位置を教える。テープドライブは、第1の新コマンドを受取った順番の数(例えば、1,2,・・・N;Nは自然数)を、それぞれのファイル区切り位置として記憶する。
2.第2の新コマンドは、アプリケーションにより、第1のコマンドにより指定されたどのファイルの区切り位置(1,2,・・・N)までテープに書込みが終わっているかを知るために、発行される。テープドライブは、複数の第1の新コマンドにより区切り位置(1,2,・・・N)を記憶している場合、テープに書込み済みの最後のファイルの区切り位置(区切り位置:1,2,・・・Nのどれか)の情報をアプリケーション(ホスト)に返す。テープドライブの書込み操作は、テープにはシーケンシャル書込み方式で行う。このシーケンシャル特性のため、事前に複数の第1の新コマンドにより複数の区切り位置(例えば1,2,・・・k・・・NのN個;kはNより小さい自然数)が指定され、特定の区切り位置(k)までテープへ書込み済みファイルの区切り位置(1,2,・・)が存在しても、テープドライブは、最後のテープ書込み区切り位置(k)のみをホストに通知すれば十分である。
例えば、テープドライブに、第1の新コマンドにより複数のファイル(ファイルの数をNとする)の区切り位置が指定(例えば、1,2,・・・N)された場合、バッファ受取り済みの「ファイル区切り位置」(各ファイルの区切り位置を例えば、第1の新コマンドの発行の順番、例えば1,2,・・・、N)からN回前に記憶した区切り位置(1)までがテープに書込みが終わっている場合を考える。つまりバッファ受取り済みの最後の「ファイル区切り位置」(N)からN−1回前に記憶したファイルの区切り位置(2)までのファイル(2,3,・・・、N)はまだテープに書込まれていない。この場合、ホストから第2の新コマンドを受取ったテープドライブは、「テープ書込み済みファイル区切り位置」(1)を指示するものとして最後の「ファイル区切り位置」(N)からの相対位置N−1をホストに返す。仮に、最後のファイルのテープへの書込みが終了している場合、「テープ書込み済みファイル区切り位置」(N)は最後の「ファイル区切り位置」(N)とは同じである。この場合、テープドライブは、第2の新コマンドに対して、「テープ書込み済みファイル区切り位置」(N)として、最後の「テープ受取り済みファイル区切り位置」(N)からの相対位置0としてホストに返す。
また、テープドライブは、テープの媒体不良などによるPermanent error(永久エラー)を検出した場合は、直後の新コマンドに対してCHECK CONDITIONステータスを返す。テープドライブが、ホストから複数レコードをWRITEされ、ファイルの区切りをテープドライブに教えるためにファイル区切り位置を指定した第1の新コマンドを受取っている。テープドライブは、ホストから第2の新コマンドを受取ると、その都度指定した区切り位置の内テープ書込みが確実に終っている「テープ書込み済みファイル区切り位置」をホストに返す。ホストのアプリケーションは、第2の新コマンドを発行することにより、確実にファイル書込みが終わっているテープ書込み済み「ファイル区切り位置」Nの次のファイルの区切り位置から再書込みを行えばよいことがわかる。
図5は、(1)(2)(3)の時点おいて、新コマンドは、それぞれファイルA,B,Cの区切りをテープドライブに指定して、指定された区切り位置(それぞれ順番は1,2,3)までのファイルがテープに書込まれているかを確認する命令(テープ書込み位置確認コマンドの機能)である。(3)においてアプリケーションから発行された新コマンドが、ファイルCを指定したテープ書込み確認命令であるとすると、その時点においてファイルCがテープ420に書込まれていなければその事実を通知する。この新コマンドに対して、ファイルA(シーケンスNo.1)は書き終っているがファイルB、Cが書き終っていない場合は、新コマンドに対してファイルC(シーケンスNo.3)に対するファイルAの相対位置としてを返してもよい。アプリケーションは、この相対位置を知ることにより、指定されたファイルA,B,Cのうち最後のファイルCの位置からの相対位置のファイルAまでがテープ書込み済みであることを知ることができる。
本発明の書込み制御は、バッファ410からテープ420への書込みにおいては、ホストのアプリケーションからの同期要求するものではない。ドライブは自己のタイミングでテープ書込みできるという意味で「非同期」書込みがされる。本発明の書込み制御は、通常のテープドライブのテープへのシーケンシャル書込みのドライブタイミングにまかされ、極力書込みパフォーマンスの低下を回避できる。テープドライブは、バッファ410に保管されたファイル(レコード)を、自己の書込み速さによりシーケンシャルにテープに書き始めている。アプリケーションは、各WRITEコマンドと独立して新コマンドを発行する。テープドライブは、新コマンドが最後尾のレコードの区切り位置を指定することによりファイルA,B,及びCがテープに書込まれているかの情報を保持し、その情報をアプリケーションに通知する。
図5は、(1)(2)(3)の時点おいて、新コマンドは、それぞれファイルA,B,Cの区切りをテープドライブに指定して、指定された区切り位置までのファイルがテープに書込まれているかを確認する命令(テープ書込み位置確認コマンドの機能)である。(3)においてアプリケーションから発行された新コマンドが、ファイルCを指定したテープ書込み確認命令であるとすると、その時点においてファイルCがテープ420に書込まれていなければその事実を通知する。この新コマンドに対して、ファイルAは書き終っているがファイルB、Cが書き終っていない場合は、新コマンドに対してファイルCに対するファイルAの相対位置として−2を返してもよい。アプリケーションは、この相対位置−2を知ることにより、指定されたファイルA,B,Cのうち最後のファイルCの位置からの相対位置−2のファイルAまでがテープ書込み済みであることを知ることができる。
この実施例態様では、新コマンドは、第1の新コマンド(区切り位置指定コマンド)と第2の新コマンド(書込み位置確認コマンド)の両方の機能を有する。新コマンドは、シーケンシャルに書こまれるファイルの区切り位置をテープドライブに教える(第1の新コマンドの機能)と同時に、それ以前に別の新コマンドにより指定された区切り位置のどこまでがテープに書込まれているかの情報をホストに通知すること(第2のコマンド)を行う。既に説明したように、2つの機能を異なるコマンドにより実行することは可能である。第1の新コマンドによりファイル区切り位置を指定し、第2の新コマンドにより、それまで区切指定されたどのファイルの区切り位置までがテープに書込まれているかの通知を受けることも、本発明の範囲に含まれる。
以上、本発明の実施形態のテープドライブなどのシーケンシャル記録装置におけるテープへの書込み制御方法を開示した。
本発明によれば、新コマンドをホストから受けた場合に、テープドライブは、指定されたファイルがテープに書込み済み否かを通知することにより複数のファイルの書込みに対して同期要求(バックヒッチ操作)を不要とできるため、書込みパフォーマンスの改善が図られる。
また、本発明によれば、新コマンドにより書込みエラーに対してテープ書込み済みファイルの区切り位置確認ができることにより、書込み未完了のファイルからテープ再書き直しが可能であるため、書込みエラー処理のパフォーマンスを改善できる。
更に、本発明によれば、新コマンドにより、その都度バックヒッチ操作を伴わず各ファイルの書込み確認ができるため、アプリケーションは、テープに書込み済みのファイルについて後続のファイルのテープ書込み確認を待つことなく、ファイル加工を並列して実行できるため、ホストを含めた全体として、テープドライブの書込みパフォーマンスを改善できる。
以上の実施形態に、種々の変更または改良を加えることが可能であることが当業者に明らかである。そのような変更または改良を加えた形態も当然に本発明の技術的範囲に含まれる。
テープドライブの形態の例として、データアーカイブシステムの構成200を示す。 一般的なテープドライブの構成図である。 テープドライブにおいてバッファ410からテープ420への従来の書込み方法を示す。 同期操作(即ちバックヒッチ)にかかる時間を減らすため、複数のファイルをまとめて同期操作を行う書込みシーケンス(j−1)〜(j−4)を示す。 本発明の一実施形態を示す。
符号の説明
100…テープドライブ、
105…ホスト、
110…インターフェース、
120…バッファ、
130…記録チャネル、
14a…テープ、14b…ヘッド、14c,14d…リール、
14e…カートリッジ、
150…モータ、
160…コントローラ,書込み読取り制御、
170…ヘッド位置制御システム、
185…モータドライバ、
200・・・テープアーカイブシステム、
210…コンピュータ
220・・・ハードディスク、

Claims (9)

  1. ホストからシーケンシャルに送られた複数のレコードを最後の前記レコードのよりホストが認識するファイルとして記録するテープ記録装置であって、
    前記複数のレコードを一時的に保管するバッファと、
    前記複数のレコードを記録するテープと、
    前記バッファに保管された複数のレコードを前記テープに書込む書込み手段と、
    前記バッファに保管された複数のレコードが一定量達したタイミングによりシーケンシャルに前記一定量の前記レコードを前記テープに書込み、前記テープに書込まれた前記一定量の前記レコードの間隔が最小限になるようにバックヒッチを行う書込み制御手段とを備え、
    前記書込み制御手段は、
    複数の前記ファイルの区切り位置指定するために、前記ファイルを構成する最後のレコードを受取った直後においてホストから受け取る前記ファイルの区切り位置として指定する命令(区切り位置指定コマンド)であって、1つのファイルを構成する最後の前記レコードを前記ファイルの区切り位置として指定する前記区切り位置指定コマンドを受けとった場合に前記コマンドを受取った順番を保持し、
    前記区切り位置指定コマンドを受けた後に、ホストから受け取る、どの前記ファイルの最後のレコードの前記区切り位置までを前記テープに書込み済みかを確認する命令(書込み位置確認コマンド)であって、前記書込み位置確認コマンドを受けた場合に前記テープに書込み済みのファイル区切り位置の情報(前記順番)をホストに通知し、ホストが前記区切り位置指定コマンド及び前記書込み位置確認コマンドの組合せにより、前記ファイルの区切りのタイミングごとにバックヒッチを伴わず各ファイルの書込み確認ができることを特徴とする、テープ記録装置。
  2. 前記書込み制御手段は、前記書込み位置確認コマンドに対して、前記テープに記録済みのファイル区切り位置の情報として、最後に前記テープに書込まれた前記ファイルの区切り位置を示す順番を、ホストに通知する請求項1に記載のテープ記録装置。
  3. 前記書込み制御手段は、前記書込み位置確認コマンドに対して、前記テープに記録済みのファイル区切り位置の情報を、最後に前記テープに書込まれた前記ファイルの区切り位置を示す順番を、最後に区切り位置指定コマンドにより指示された順番からの相対値を、ホストに通知する請求項1に記載のテープ記録装置。
  4. 前記書込み制御手段は、最後のもとしてN番目のファイルの前記位置指定コマンドを受けた後、前記テープに書込済みのファイルの区切り位置を示す最後の順番M(自然数でM<N)である場合、前記テープに記録済みのファイル区切り位置の情報は前記相対位置としてN−Mをホストに通知する請求項3記載のテープ記録装置。
  5. ホストと、
    前記ホストに接続され請求項1項記載のテープ記録装置とを備え、
    前記テープ記録装置は前記ホストが発行した前記複数ファイルの前記区切り位置指定コマンド、及び、前記書込み位置確認コマンドを受付けるテープ記録システム。
  6. 前記書込み制御手段は、前記書込み位置確認コマンドに対して、前記指定された区切り位置まで前記テープに書込み済みか否かの情報として、最後に前記テープに書込まれた前記指定された区切り位置を示す順番を、外部の前記ホストに通知する請求項5に記載のテープ記録システム。
  7. 前記書込み制御手段は、前記書込み位置確認コマンドに対して、前記指定させた区切り位置まで前記テープに書込み済みか否かの情報として、最後に前記テープに書込まれた前記指定された区切り位置を示す順番の最後の前記コマンドにより指定された区切り位置の最後の順番からの相対値を、外部のホストに通知する請求項5に記載のテープ記録システム。
  8. 前記書込み制御手段は、複数の前記位置指定コマンドの数がM(自然数)個であって、最後にテープに書込まれた区切り位置が順番N(自然数でN<M)である場合、前記指定された区切り位置の最後の順番がMであり、前記相対位置としてN−Mを前記ホストに通知する請求項7記載のテープ記録システム。
  9. 前記テープは、前記テープ記録装置に着脱可能な請求項5〜8にいずれか1項記載のテープ記憶システム。
JP2006333777A 2006-12-11 2006-12-11 データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法 Active JP4452269B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006333777A JP4452269B2 (ja) 2006-12-11 2006-12-11 データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法
CN2007101870045A CN101201725B (zh) 2006-12-11 2007-11-14 磁带记录设备及其数据写控制方法
US12/001,355 US8176243B2 (en) 2006-12-11 2007-12-11 Tape recording apparatus and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006333777A JP4452269B2 (ja) 2006-12-11 2006-12-11 データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法

Publications (2)

Publication Number Publication Date
JP2008146760A JP2008146760A (ja) 2008-06-26
JP4452269B2 true JP4452269B2 (ja) 2010-04-21

Family

ID=39499668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006333777A Active JP4452269B2 (ja) 2006-12-11 2006-12-11 データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法

Country Status (3)

Country Link
US (1) US8176243B2 (ja)
JP (1) JP4452269B2 (ja)
CN (1) CN101201725B (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2496773B (en) 2010-06-25 2018-03-21 Ibm Tape storage device and writing method therefor
US8941863B1 (en) * 2010-11-29 2015-01-27 Symantec Corporation Techniques for image duplication optimization
JP5643152B2 (ja) 2011-05-19 2014-12-17 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープ記憶装置、データ書込み方法、及び、プログラム
US8908314B2 (en) * 2011-08-19 2014-12-09 Oracle International Corporation Data file information based selection of tape drive tape speed
GB2513179A (en) * 2013-04-19 2014-10-22 Ibm Device and method for controlling the transport of a tape within a tape transport system

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4775969A (en) * 1986-05-15 1988-10-04 Aquidneck Systems International, Inc. Optical disk storage format, method and apparatus for emulating a magnetic tape drive
US5566032A (en) * 1991-11-12 1996-10-15 Storage Technology Corporation Method for utilizing a longitudinal track on a helical scan tape data storage system to provide a fast search capability
JPH08221844A (ja) * 1995-02-20 1996-08-30 Sony Corp データレコーダ
JP3511576B2 (ja) 1998-10-02 2004-03-29 松下電器産業株式会社 ディスク記録再生方法および装置
JP3931017B2 (ja) * 1999-08-06 2007-06-13 富士通株式会社 磁気テープ装置の制御方法
US6339810B1 (en) * 2000-01-11 2002-01-15 International Business Machines Corporation Serial data storage system with automatically adjusted data protection to implement worm media with limited overwrite allowing write appending
US6839801B2 (en) * 2003-01-06 2005-01-04 International Business Machines Corporation Deferred writing of data to be synchronized on magnetic tape employing a non-volatile store
US6970311B2 (en) 2003-08-18 2005-11-29 International Business Machines Corporation Storing data to magnetic tape both to one set of tracks and in the same operation rewritten to another set of tracks
US7236322B2 (en) * 2003-08-20 2007-06-26 International Business Machines Corporation Method, system, and program for storing data in a storage medium

Also Published As

Publication number Publication date
JP2008146760A (ja) 2008-06-26
US8176243B2 (en) 2012-05-08
CN101201725B (zh) 2011-03-23
US20080140927A1 (en) 2008-06-12
CN101201725A (zh) 2008-06-18

Similar Documents

Publication Publication Date Title
US10346078B2 (en) Method of writing a file to a plurality of media and a storage system thereof
US9025271B2 (en) Method for reading file using plurality of tape media
JP4016408B2 (ja) 磁気テープへの同期データの書き込み
JP3870215B1 (ja) テープ記録装置のデータ書込み読取り制御方法
JP3714046B2 (ja) 仮想テープ記憶装置
JP4131517B2 (ja) テープ媒体にデータを書き込むための装置
JP5325128B2 (ja) データの書込みを制御する装置及び方法
JP2008016117A (ja) テープへのデータ書込方法、テープへのデータ書込プログラム、及びテープ記憶装置
US9471255B2 (en) Tape storage device and writing method therefor
US9753664B2 (en) Method of detecting tampering of data in tape drive, and file system
JP4452269B2 (ja) データ書込みパフォーマンスが改善されたテープ記録装置、及びそのデータ書込み制御方法
US20060047894A1 (en) Data recording apparatus, and data recording control method and program
JP5065203B2 (ja) データのフォーマットを変換する装置及び方法
US20120293886A1 (en) Tape storage device, data writing method, and program
JP5179596B2 (ja) テープ記録装置におけるデータの上書き制御方法、上書き制御プログラム、及びテープ記録装置
JP5567260B2 (ja) テープ媒体にデータを書き込む装置及び方法
US20070236817A1 (en) Magnetic-tape recording method, magnetic-tape recording apparatus, and computer system
JP6928249B2 (ja) ストレージ制御装置およびプログラム
JP5044822B2 (ja) データをテープ媒体に書き込む装置及び方法
JPH06103510A (ja) 記録再生装置のデータ処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090501

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20090501

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20090522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090526

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091214

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: 20100119

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100129

R150 Certificate of patent or registration of utility model

Ref document number: 4452269

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130205

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140205

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250