JP2016053895A - メタ情報を保管する方法、プログラム、及びそのテープ記録システム - Google Patents

メタ情報を保管する方法、プログラム、及びそのテープ記録システム Download PDF

Info

Publication number
JP2016053895A
JP2016053895A JP2014180165A JP2014180165A JP2016053895A JP 2016053895 A JP2016053895 A JP 2016053895A JP 2014180165 A JP2014180165 A JP 2014180165A JP 2014180165 A JP2014180165 A JP 2014180165A JP 2016053895 A JP2016053895 A JP 2016053895A
Authority
JP
Japan
Prior art keywords
meta information
file
tape
storing
base
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
Application number
JP2014180165A
Other languages
English (en)
Other versions
JP6041839B2 (ja
Inventor
長谷川 徹
Toru Hasegawa
徹 長谷川
浩 板垣
Hiroshi Itagaki
浩 板垣
輝江 渡邊
Terue Watanabe
輝江 渡邊
慎介 三間
Shinsuke Mima
慎介 三間
山本 紀子
Noriko Yamamoto
紀子 山本
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 JP2014180165A priority Critical patent/JP6041839B2/ja
Priority to US14/834,715 priority patent/US10067700B2/en
Publication of JP2016053895A publication Critical patent/JP2016053895A/ja
Application granted granted Critical
Publication of JP6041839B2 publication Critical patent/JP6041839B2/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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • G06F3/0622Securing storage systems in relation to access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/19Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
    • G11B27/28Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
    • G11B27/32Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording on separate auxiliary tracks of the same or an auxiliary record carrier
    • G11B27/327Table of contents
    • G11B27/328Table of contents on a tape [TTOC]
    • 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/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/90Tape-like record carriers
    • G11B2220/93Longitudinal format, wherein tracks are in the direction of the tape, read with a static head, e.g. DCC

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

【課題】直前に保管したメタ情報からのファイルの更新操作に関連した差分だけのメタ情報を定期的に保管する。
【解決手段】メタ情報をテープに保管するために、テープへのアクセス操作履歴(追加、削除、変更)の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、ベース・メタ情報を保管した後に、アクセス操作履歴を反映するメタ情報を所定のタイミングでテープに保管することとを含む。所定のタイミングのメタ情報を保管するステップは、ベース・メタ情報を保管した以降に生じたアクセス操作履歴を反映するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管し、大量のメタ情報がテープのデータ領域を占有するのを避ける。差分メタ情報が保管されたテープカートリッジからのインデックスを最新のメタ情報で修復する。
【選択図】図9

Description

本発明は、直前に保管したメタ情報からのファイルに関連するアクセス履歴の差分だけのメタ情報を、定期的に保管するテープ記録システムのための方法に関する。
テープドライブ用ファイルシステムのLTFS(Linear Tape FileSystem)は、テープカートリッジに、OS(Linux,Windows,MacOS X)上のアプリケーションからファイル単位でデータを書込み・読み出しすることを可能にする。LTFSフォーマットでは、テープカートリッジをインデックスパーティション(IP)とデータパーティション(DP)の2つのパーティションにわけることが規定されている。ここで、インデックスパーティションはファイルのアロケーション情報などのメタ情報を記録し、データパーティションにはデータ本体を記録する。テープはシーケンシャルアクセスデバイスであり、データは常に追記されるので、ひとつのパーティションに記録すると、アロケーション情報は常に末尾に記録することになる。テープカートリッジをマウントするときに、必ず末尾の情報を読み出すため、マウントに長い時間がかかってしまう。そこでLTFSでは、テープカートリッジをアンマウント(Unmount)するときに、メタ情報をインデックスパーティションの先頭部分に上書き記録する。テープカートリッジをマウント時には常にインデックスパーティションからメタ情報を読み出すことを可能としている。
メタ情報はデータパーティションにも書き込みを行っている。突然の電源断などでインデックスパーティションのメタ情報を更新できなかった場合がある。この場合に、時間はかかるがデータパーティションに保管されたメタ情報を利用して、インデックスパーティションのメタ情報を修復できる。
図1は、従来のLTFSを用いて、xcopyコマンドで10KB, 20KB、30KBのファイルをテープカートリッジに書き込む場合のファイル量を示す表を与える。
実際に、IBMのWindows版LTFSとLTO5テープドライブとを用いて、xcopyコマンドで10KB, 20KB、30KBのファイルをテープカートリッジに書き込むと、5分間でそれぞれ、表1のように3000個以上のファイルを書き込むことができる。
表1は、書き込まれるファイルの数及びサイズを示す。
デフォルトの設定では5分ごとにメタ情報をデータパーティションに書き込むが、3000個のファイルのメタ情報はおよそ1440KBの記録領域を占有する。
5分で約3000個なので、10分後には約6000個分の2880KBのメタ情報を書き込むことになる。
表2は、 データパーティションにおけるファイルとメタ情報の書き込み量を示す。
LTO5のテープカートリッジでは、データパーティションの大きさは1.425TBである。できるだけファイルを書き込んでいくと、表2のように、データパーティションの90%以上がメタ情報によって消費されてしまう。テープカートリッジのデータパーティション全体でファイルデータは10%以下しか保管することができない。突然の電源断に備えてメタ情報を定期的に書き込んでいると、メタ情報がデータパーティション領域の大部分を消費して、本来保管したいファイルの記録領域が少なくなってしまう。
特許文献1は、障害や人的間違いによるデータの欠損を復元するために、データを記録手段に記録する毎に、別の記録手段にも記録する。その際、特許文献1は、変更記録手段に差分データの差分を記録していることを示す。
非特許文献1は、テープ用のファイルシステムとしてLTFSの規格を与える。
特許公開2002−55863号公報
http://www.trustlto.com/LTFS_Format_To%20Print.pdf
LTFSを使用しているユーザからすると、小さなファイルを書き込んでいたらいつの間にかデータパーティションの残り領域が少なくなってしまうように感じられる。この突然の電源断に対応するために、ユーザの意図しないタイミングでデータパーティションをメタ情報で大量に占有してしまう。従来のLTFSではデータパーティションにデータとメタ情報を追記で保管していく。しかしながら、突然の電源断に対応するために定期的にメタ情報を保管していると、メタ情報がデータパーティションを大量に消費してしまうという課題が存在する。
従って、本発明の目的は、テープ記録システム用のファイルシステムを介して、直前に保管したメタ情報からの複数のファイルの更新操作(変更、追加、削除など)に関連した差分だけのメタ情報(差分メタ情報)を、定期的な保管する方法を提供する。
かかる目的のもと、本発明は、テープに書込まれたファイルに関連するメタ情報をテープに保管する方法である。この方法は、
(a)少なくとも1つのファイルについてのテープへのアクセス操作履歴(追加、削除、変更)の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
(b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
(b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することを含む。
また、上記保管する方法において、(b2)前記所定のタイミングのメタ情報をメタ情報として保管するステップは、先行する前記差分メタ情報をテープに保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を後続の差分メタ情報として所定のタイミングでテープに保管することとを含むことを特徴とする。
また、上記保管する方法において、前記テープに書込み方法は、テープを前記ファイルのデータを書き込むデータパーティションと、前記ファイルのメタ情報を保管するインデックスパーティションとに区分するテープ記録装置用ファイルシステムであって、
前記ベース・メタ情報をテープのデータパーティションに追記することと、
前記ベース・メタ情報の追記後のテープへのファイルのアクセス操作履歴に対して、所定のタイミングで前記差分メタ情報をデータパーティションに追記することと、
テープを排出するときに、前記差分メタ情報を前記ベース・メタ情報に追加または変更して最新のメタ情報を構築してインデックスパーティションに保管することと、
前記差分メタ情報の追記後のテープへのファイルのアクセス操作履歴に対して、所定のタイミングで後続の差分メタ情報をデータパーティションに追記することと、
テープを前記装置から排出するとき、または所定に命令により、前記差分メタ情報を前記ベース・メタ情報に追加または変更して最新のメタ情報を構築してインデックスパーティションに保管することと、を含み、
前記ベース・メタ情報及び前記差分メタ情報の追記は、ベース・メタ情報か差分メタ情報かを識別するタグ(識別タグ)を前記情報に含ませてデータパーティションに追記されることを特徴とする。
また、上記保管する方法において、前記所定のタイミングのメタ情報をメタ情報として保管するステップ(b1)及び(b2)は、前記先行のタイミング以降での前記後続のファイルのアクセス操作履歴が既存の保管ファイルを削除することを含む場合に、前記保管済みファイルの削除を指示する新規な削除フラグをメタ情報に新たに設け、前記後続の差分メタ情報が前記保管済みファイルの削除を示す前記削除フラグを含み、テープに前記後続の差分メタ情報として追記することを含むことを特徴とする。
また、上記保管する方法において、前記所定のタイミングのメタ情報をメタ情報として保管するステップ(b1)及び(b2)は、前記先行のタイミング以降での変更履歴が既存のファイルを変更によりデータを追加することを含む場合に、既存のファイルのデータ部分に後続する追加のデータのメタ情報を差分メタ情報として、テープに追記することを含むことを特徴とする。
また、上記保管方法において、前記所定のタイミングのメタ情報をメタ情報として保管するステップ(b1)及び(b2)は、前記前回のタイミング以降での変更履歴が既存のファイルのファイル名を変更することを含む場合に、既存のファイルのファイルIDについてファイル名の変更するメタ情報を差分メタ情報として、既存のファイルのデータ部分に関連付けて、テープに追記することを含むことを特徴とする。
更に、かかる目的のもと、本発明は、上記保管する方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復する方法である。この方法は、
(a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
(b)次に書かれているメタ情報はあるかを確認するステップと、
(c)ステップaにおいて差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
(d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
(e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、を含む。
また、上記修復方法において、(f)ステップdでファイルIDがベース・メタ情報に含まれていない場合、ベース・メタ情報に該当するファイル等のメタ情報を追加することを、含むことを特徴とする。
また、上記修復方法において、(g)ステップbにおいて差分メタ情報がない場合、ステップaで読み出したベース・メタ情報をインデックスパーティションに保管することを、含むことを特徴とする。
更に、かかる目的のもと、本発明は、テープに書込まれたファイルに関連するメタ情報をテープに保管するテープ記録システムである。このステップは、
(a)少なくとも1つのファイルについてのテープへのアクセス操作履歴(追加、削除、変更)の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
(b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
(b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することを含む、メタ情報を保管することと、を実行する。
更に、かかる目的のもと、本発明は、テープに書込まれたファイルに関連したメタ情報をテープに保管するテープ記録システムのためのプログラムである。このプログラムは、
(a)少なくとも1つのファイルについてのテープへのアクセス操作履歴(追加、削除、変更)の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
(b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
(b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することと、
をテープ記録システムに実行させる。
更に、かかる目的のもと、本発明は、上記保管方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復するテープ記録装置システムである。このシステムは、
(a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
(b)次に書かれているメタ情報はあるかを確認するステップと、
(c)ステップaにおいて差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
(d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
(e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、を実行する。
更に、かかる目的のもと、本発明は、上記保管方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復するためのプログラムである。このプログラムは、
(a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
(b)次に書かれているメタ情報はあるかを確認する。
(c)ステップaにおいて差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
(d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
(e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、をテープ記録システムに実行させる。
上述の本発明の適用により、突然の電源断の際にメタ情報の修正ができるように、ファイルのメタ情報を保管しながらデータパーティションを占有してしまうことを避けることができる。
従来のLTFSを用いて、xcopyコマンドで10KB, 20KB、30KBのファイルをテープカートリッジに書き込む場合のファイル量を示す表を与える。 LTFSの2つのパーティションにより区分けされたテープを示す。 ホストに接続されたテープドライブ(磁気テープ装置)を含むテープストレージシステム(テープ記録装置システム)のハードウェアを示す。 LTFSフォーマットでのメディアのインデックスパーティションとデータパーティションの内容を示す。 1つのファイルを部分的な書き換えの場合のインデックスファイルに含まれる位置メタ情報(エクステント)の変更内容を示す。 LTFSでファイルをテープ上に書いた場合のテープカートリッジ上での情報の記録例を示す。 データパーティションにメタ情報が1つしか書かれていない例を示す。 メタ情報書き込みフローを示す。 メタ情報の変更履歴(差分メタ情報)の保管のフローを示す。 差分メタ情報の保管のフローを示す。 例1として、テープ上の2つのファイルのデータとメタ情報の配置を示す。 例2として、テープ上の2つのファイルの1つを削除したデータとメタ情報の配置を示す。 例3として、テープ上の残っているファイルに追加データで更新し、そのファイル名を変更した場合データとメタ情報の配置を示す。 修復プログラム(API)によるインデックスパーティションに書くべきメタ情報(インデックス)の作成のフローを示す。 本発明を適用したLTFSを用いて、xcopyコマンドで10KB, 20KB、30KBのファイルをテープに書き込む場合のデータ量及びメタ情報量の対比を示す。
直前にメタ情報を保管した以降のファイルへのアクセス操作履歴を反映するメタ情報を、所定のタイミングでテープに保管する実施の形態(実施例)を説明する。
本発明では、テープのデータパーティションに書き込むメタ情報を、メタ情報を書き込むタイミングを元にして次の2つのグループAとBにわける。グループAのメタ情報は、現行にメタ情報であり、本発明ではベース・メタ情報と呼ぶ。グループBのメタ情報は、直前のメタ情報からの差分だけをもつようにし、本発明では差分メタ情報と呼ぶ。ファイルシステム(LTFS)内部では、メタ情報を生成する際に、どちらのグループに入るかを判断することができる。
●グループA
・フォーマット時に先頭に書き込むメタ情報。
・アンマウント時に書き込むメタ情報。
・ユーザがFlushFileBuffers()のようなAPIで明示的に作成したメタ情報。
●グループB
・LTFSがその設定により、定期的もしくはファイルのCloseのタイミングで自動的に書き込むメタ情報。
突然の電源断の際に使用するltfsck(現行の修復機能を組み込んだAPI:LTFS checkの略称)を本発明のメタ情報のグループを考慮した動作に変更する。この動作は、データパーティションのメタ情報からインデックスパーティションに書き込むべきメタ情報を作成(または修復)する。このメタ情報の修復の際、そのデータパーティションに書き込まれた、最後のグループAのメタ情報(ベース・メタ情報)を元とする。このベース・メタ情報が保管された以降にファイル関連して実行された操作履歴(追加、削除、変更など)のみを反映したメタ情報(差分メタ情報)を用いて、最終的なメタ情報を作成する。このメタ情報が最新のベース・メタ情報となり、データパーティションの最後尾とインデックスパーティションとに書き込むことで修復が完了する。
本発明の実施例の基本動作を説明のため、LTFSフォーマット、テープドライブ、LTFSでのファイルのデータの書込みについて説明する。
図2は、LTFSの2つのパーティションにより区分けされたテープを示す。
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秒程度である。
テープドライブ用のファイルシステム、例えばLTFSでは、メディア上に書かれたデータをファイルとして見せることができる。ユーザがLTFSを利用してテープメディアに書き込むと、テープメディアではファイル本体の他、インデックスファイル(単にインデックスとも言う)と呼ばれるメタ情報をテープメディアに書き込む。インデックスは、メタ情報としてディレクトリ名及びファイル名やファイル作成日、及び、メディア上の位置、サイズ、ファイル内のオフセットなどを含む位置メタ情報(図5で説明されるエクステント)をXML形式で含む。IPには、主に最新のインデックスが書き込まれる。DPには、ファイルの本体、及び、インデックスの履歴が書き込まれる。
LTFS を用いてテープメディア上のファイルを読み書きする場合、レコードと呼ばれる単位でデータの読み書きを行う。レコードは、LTFSではブロックと呼んでLTFSフォーマットを与える。ブロックは、ファイルのデータが記録されるパーティション毎にパーティションの先頭から何番目のブロックであるという番号で管理される。インデックスファイルには、ファイルのデータに対するブロックの番号で指示される位置情報が含まれる。
図3は、ホストに接続されたテープドライブ(テープ装置)を含むテープストレージシステム(テープ記録装置システム)のハードウェアを示す。
テープドライブ60は、ホスト300のアプリケーションからファイルシステム(LTFS)を介してファイルの読み書き要求を受け取る。テープドライブは、通信I/F(インターファース)110と、バッファ120と、記録チャネル130と、読書きヘッド140と、制御部150と、位置決め部160と、モータドライバ170と、モータ180とを含む。
インターフェース110は、ネットワークを介してホスト300との通信を行う。例えばインターフェース110は、ホスト300から、テープカートリッジ(メディア、テープ)40へのデータの書込みを指示する書込みコマンドを受信する。またインターフェース110は、ホスト300から、メディア40からのデータ読出しを指示する読出しコマンドを受信する。インターファース110は、書込みデータの圧縮と、読み出しデータの非圧縮とを行う機能を有し、実際のデータに対してメディアへの記憶容量を約2倍近く高めている。
テープドライブ60は、ホスト300のアプリケーションから送られた複数のレコードで構築されるデータセット(DataSet:DSと言う)単位でメディア40への読み書きを行う。DSの典型的な大きさは4MBである。ホスト300のアプリケーションは、ファイルシステム(例えばLTFS−API)によりファイルを指定して読み書きアクセスをテープドライブ60に発行する。ファイルシステムは、SCSIコマンドのレベルでレコードをテープドライブに書込み/読み出し要求(Write/Read)を送る。DSは複数のレコードで構成される。
各DSは、データセットに関する管理情報を含む。ユーザデータはレコード単位で管理される。管理情報はデータセット情報テーブル(DSIT:Data Set Information Table)に含まれる。DSITは、そのDSに含まれるレコード又はブロック数およびFM(Filemark)数、更にはメディアの先頭から書かれた累積レコード数および累積FM数、を含む。
バッファ120は、メディア40に書込むべきデータ、また、メディアから読み出したデータを一時的に蓄積するメモリである。例えばバッファ120は、DRAM(Dynamic Random Access Memory)によって構成される。記録チャネル130は、バッファ120に蓄積されたデータをメディア40に書き出すため、またはメディア40から読み出されたデータをバッファ120に一時的に蓄積するために用いられる通信経路である。
読書きヘッド140は、データ読書き素子を有し、メディア40へのデータの書込み及びメディアからのデータの読出しを行う。本実施形態に係る読書きヘッド140はまたサーボ読取り素子を有し、メディア40に設けられたサーボトラックから信号を読み取る。位置決め部160は、カートリッジ40の短手方向(幅方向)に読書きヘッド140の移動を指示する。モータドライバ170は、モータ180を駆動する。
テープドライブ60は、ホスト300から受取ったコマンドに従って、データのテ−プへの書込みやテ−プからの読出しをする。テ−プドライブ60は、バッファ、読み書きチャネル、ヘッド、モ−タ、テ−プを巻きつけるリ−ルと、読み書き制御と、ヘッド位置制御システムと、モ−タドライバとを含む。テ−プドライブは、テープカートリッジを着脱可能に搭載する。テ−プは、リ−ルの回転に伴い、長手方向に移動する。ヘッドは、テープの長手方向に移動してデータを書き込んだり、テ−プからデータを読出したりする。また、テープカートリッジ40はカートリッジメモリ(CM:Cartridge Memory)と呼ばれる非接触不揮発性メモリを備える。テープカートリッジ40に搭載されたCMは、テープドライブ60により非接触的に読み書きされる。CMはカートリッジ属性を保管する。テープドライブは、読出し及び書込み時に、CMからカートリッジ属性を取り出して最適な読み書きができるようにする。
制御部150は、テープドライブ60の全体の制御を行う。すなわち、制御部150は、インターフェースで受信したコマンドに従って、データのメディア40への書込み及びメディア40からのデータの読出しを制御する。また、制御部150は、読取られたサーボドラックの信号に従って位置決め部160を制御する。更に制御部150は、位置決め部160及びモータドライバ170を介してモータの動作を制御する。なお、モータドライバ170は制御部150に直接接続されてもよい。
図4は、LTFSフォーマットでのメディアのインデックスパーティションとデータパーティションの内容を示す。
(A)は、LTFSフォーマットで初期化した直後のテープメディアに書き込まれるメタ情報を示す。
テープメディアを LTFS フォーマットで初期化した直後には、テープメディアにはA)に示す情報が書き込まれる。
・FID(Format Identification Data set)は、テープドライブがテープメディアを初期化する際、テープメディアの先頭に書き込まれる特殊なデータであり、テープメディア上のパーティションの数や各パーティションの容量などの情報を持つ。
・VOL1 Labelは、ANSI Label とも呼ばれるもので、文字通りANSIで規定された一般的なフォーマットのラベルである。
・LTFS Labelは、LTFS フォーマットで規定されたラベルで、このテープメディアがLTFSフォーマットのどのバージョンに準拠してフォーマットされたかといった情報を保持するラベルである。ここでメディアに記録されるレコードのサイズを指示する。レコードサイズはブロック・サイズ(block size)とも言う。
・FM(Filemark)とは、テープメディアで一般的に利用される、いわば本のしおりのようなものであり、データの位置合わせ(seek)を行う際に利用される。
・Index#0とは、フォーマット時に書き込まれるインデックスであり、この段階ではファイル自体は一つも存在しないためファイル固有の情報は持たないもののテープメディアのボリューム名などの情報を保持するため書き込まれる。
(B)は、LTFSフォーマットで初期化した後にファイルを書き込んだ場合にテープメディアに書き込まれる情報を示す。
LTFSフォーマットで初期化後、ファイル(File1)を書き込むと、テープメディア上に書き込まれたデータは(B)のようになる。太線で囲まれた部分が追加/更新されたデータである。Index#1はFile1のメタ情報(インデックス)を持つ。IPは最新のインデックスのみ保持する一方、DPはインデックスの履歴を保持する。インデックスを更新するタイミングはファイルシステムの実装にまかされており、例えば一定時間毎に更新したり、テープドライブからテープメディアを取り出す時のみ更新したりしている。更に使い続ける場合も、IPに置かれるインデックスは常に最新のインデックスのみが置かれ、DPは既存のインデックスを上書きすることなく、ファイルおよびインデックスを追記していく。
図4の(C)は、(B)の状態の後、更にファイル(File2)を書き込んだ場合のテープメディアに書き込まれる情報を示す。
最初のファイル(File1)をテープメディア上に書き込んだ後、次のファイル(File2)を追加すると、格納されるFile1にFile2が連続してテープメディアに保管される。Index#2はFile1およびFile2のメタ情報(インデックス)を持つ。
図4の(D)は、(B)の状態の後、File1の末尾に文字情報(File1-2)を追加してFile1を更新した後、メディア上に書き込まれるメタ情報を示す。
文書作成アプリケーション(例、マイクロソフト社のワード)は、メディア上に書き込まれたファイルを更新した後、1つのファイル(File1)がFile1-1及びFile1-2のようにフラグメント化(分散)して記録する。
図5は、1つのファイルを部分的な書き換えの場合のインデックスファイルに含まれる位置メタ情報(エクステント)の変更内容を示す。
インデックス(index)はファイルの位置情報(ポインター)をエクステント(extent)と呼ぶ形式で保管する。エクステントの要素(element)は、ファイルの部分(データ部分)の先頭のブロックの番号(StartBlock),その番号のブロック内での開始オフセット(ByteOffset),データのサイズ(ByteCount),データ部分のファイルでの位置(FileOffset)を含む。ユーザデータはブロックサイズで指定されたサイズ(例えば512KB)単位のレコード単位でメディアに記録される。
StartBlockは、テープメディアの先頭から固定サイズのブロックの順番を指す。ByteOffsetは、特定番号のブロック内で書き始めるオフセットを示す。
ByteCountは、エクステントで指示されるデータ部分のデータサイズを指す。
FileOffsetは、エクステントで指示されるデータ部分のファイル位置を指す。
ブロックは、レコードまたはFM(FileMaker:レコードの区切り)を含み、LTFS Labelにおいてサイズが指定される。ユーザデータはブロックサイズで指定されたサイズ(例えば512KB)単位のレコード単位でメディアに記録される。
File1のサイズがLをメディアに記録されている最初の場合(A)、インデックスはエクステント(x)であることを示す。File1は、テープメディアの長手方向にレコード単位で連続して書き込まれている斜線部分である。レコードはエクステントではブロックに相当する。データ部分の書換えの場合(B)は、(A)でFile1を書き込んだ後、そのFile1のMバイトから600KBを250KBのレコードで書換えた場合エクステント(x)(y)(z)の情報を示す。エクステント(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)にように分散化した配置情報を含む。
図6は、LTFSでファイルをテープ上に書いた場合のテープカートリッジ上での情報の記録例を示す。
インデックスパーティションには、特別に指定したファイルBと最新のメタ情報3とが記録される。データパーティションには、ファイルA、ファイルB、ファイルC、ファイルDだけでなく、メタ情報1、メタ情報2、メタ情報3も記録されている。ここで、メタ情報1及びメタ情報2は古い情報である。テープドライブでは基本的に情報は追記されるので、メタ情報は上書きされることなく追記(append write)して古いメタ情報も保管されている。メタ情報をデータパーティションに書き込むタイミングは、アプリケーションから明示的に指定されたときである。たとえば、Windowsで標準のAPIである、FlushFileBuffers()が呼ばれたときである。またファイルをCloseしたタイミングや、一定時間経過したとき、などを設定により指定することができる。
図7は、 データパーティションにメタ情報が1つしか書かれていない例を示す。
テープカートリッジをフォーマットしてマウントした後、データパーティションにファイルA,B, C, Dを書き込んだときには、テープ上にはファイルのデータが記録されている。ここでメタ情報1はフォーマット直後のメタ情報のため、その後に書かれたどのファイルの情報も持っていない。図7の状態ではアンマウントせずに電源を落とした場合には、テープ上でファイルA, B, C, Dのデータ位置を特定することができない。ファイルのデータ位置を特定するメタ情報(特にエクステント)が無いため、すべてのファイルを失うことになる。
IBMの現在のLTFSでは、突然の電源断でのデータロスを少なくするために、5分に一度、データパーティションにメタ情報を記録する設定を推奨し、そのように動作するようになっている。インデックスパーティションにメタ情報を記録することなく、突然の電源断が発生した場合には、修復用のコマンド(ltfsck)を用意している。データパーティションにファイルの最新のメタ情報が保管されていないテープに対して、ltfsckを実行することにより、最新のメタ情報を再生できる。この再生は、データパーティションに書かれている最新のメタ情報をインデックスパーティションに記録しなおすことにより、可能である。この修復処理により、電源断によりファイルの特定が出来なくなったテープカートリッジは通常のLTFSでマウントできるようになる。このように修復の手順も確立しているので、突然の電源断に対応するように、定期的にデータパーティションにメタ情報を記録する設定が通常用いられている。
図8は、メタ情報書き込みフローを示す。
大量のファイルをLTFSに記録すると、大きなサイズのメタ情報が記録されてしまう。
具体的にLTFSにファイルを大量に書くと、定期的、例えば5分毎のタイミング(ステップ804、Yes)でメタ情報がデータパーティションに情報が書かれていく(ステップ806)。
ホストのファイルの書込みアクセス処理は、従来のファイルシステム(LTFS)を介して、テープドライブ・システムに対して各ステップ処理を実行される。
(802)ホストはファイルをLTFSを介してテープドライブに書き込む。
(804)最後にメタ情報を書いてから5分が経過したかを確認する。
(806)その時点でのメタ情報を作成し、データパーティションに書き込む。
(808)すべてのファイルを書き込んだかを確認する。
(810)テープへのファイルの書き込みを完了する。
本発明は、通常のLTFSをS/Wとして拡張し、メタ情報をデータパーティションに書き込んだ後、ファイルやディレクトリのアクセス操作履歴(作成、削除、パスの変更、拡張属性の変更など)をメモリやHDDに一時的に保管する。次のメタデータ書き込みの際に、そのメタデータ書き込みがグループBに属するなら、履歴の分だけのメタ情報を作成し、データパーティションに書き込む。ここで、ファイル等の削除は現在のLTFSのメタ情報には保管されないが、削除されたファイル等には特別な拡張属性(削除フラグ)を設ける。削除フラグをメタ情報に含ませることにより、保管されたファイル等が削除されたことを意味するようにする。特別な拡張属性とは、たとえば、LTFSフォーマットでベンダー依存の属性として定義されている、ltfs.vendor.IBM.deleted という属性にTRUEという値を設定することで保持することができる。
図9は、メタ情報の変更履歴(差分メタ情報)の保管のフローを示す。
ファイルやディレクトリの処理の履歴を、メタ情報の履歴または差分メタ情報と呼ぶこととすると、図のような流れで、メタ情報の履歴を保管する。本発明のファイルシステムは、アプリケーション(図3)からのアクセスに対して、各ステップ処理を実行する。
(902)ファイルやディレクトリへのアクセスを受け取る。
ファイルの処理のアクセス操作履歴として変更、追加、削除のアクセスをアプリケーションから受け取る。
(904)メタ情報に変更(差分メタ情報)が必要かを確認する。
グループAのインデックスを保管後のファイルについて上記の処理の履歴を反映する差分メタ情報が生じたかを確認する。Noの場合はメタ情報の変更が必要になるまで、ステップ902のアプリケーションのアクセスを待つ(908)。
(906)上記処理履歴には、例えば、ファイルやディレクトリの削除が含まれるかを確認する。アプリケーションからのファイル及びディレクトリ削除以外のファイルのアクセスの場合はNoとなる。Noの場合、ファイル名等の変更、ファイルの追加、及びファイルデータの変更に関するメタ情報を、差分メタ情報として与えられる。
(908)ステップ902において、アプリケーションからの次のファイルへの処理のアクセスを待つ。
ステップ904において差分メタ情報が生じるまで、ステップ902のホストのアクセスを待つ(908)
(910)メタ情報からファイルやディレクトリを削除する代わりに拡張属性のフラグltfs.vendor.IBM.deletedにTRUEを設定したものとする。
LTFSの拡張属性のフラグltfs.vendor.IBM.deletedを利用して、保管済みのファイルがアプリケーションのアクセス(ステップ902)により削除されたことを(ステップ906、Yes)をTRUEで示す。差分メタ情報はこの拡張属性フラグを含む。
(912)メタ情報の変更履歴として変更メタ情報をLTFSのメモリ中に保管する。
図10は、差分メタ情報の保管のフローを示す。
このフローチャートは、図9でLTFSのメモリ中に保管したメタ情報の変更履歴をテープに保管する際のフローである。
LTFSの設定により、定期的もしくはファイルのCloseのタイミングでメタ情報を書き込むタイミングが来た際には、次のようにデータパーティションにグループBの差分メタ情報を書き込む。本発明のファイルシステムは、テープドライブ・システムに対して各ステップ処理を実行する。
(1002)図9のステップ912において、グループBの差分メタ情報の書き込み処理(保管)の開始をする。
(1004)LTFSのメモリ中に保管されたメタ情報の差分履歴から、履歴に入っている分のファイル及びディレクトリに関する差分メタ情報を作成する。
(1006)差分メタ情報をデータパーティションへ追記により書き込む。
(1008)LTFSのメモリ中に保存されたメタ情報の変更履歴を削除する。
アンマウントやFlushFileBuffers()が呼ばれたりして、グループAのメタ情報を書き込む際には、すべてのファイルやディレクトの情報を持つメタ情報を書き込み、メタ情報の変更履歴は単に削除する。このようにして、本発明では、LTFSを拡張することで、グループAまたはグループBに属するメタ情報を書き込むことができる。図9はLTFSのメモリ中に変更履歴を作成する時のフローであり、図10はその変更履歴をテープに書き込む際のフローである。
本発明の拡張されたLTFSで書き込まれるメタ情報の具体例を説明する。
●メタ情報の例1 (グループA)
図11は、例1として、テープ上の2つのファイルのデータとメタ情報の配置を示す。
メタ情報0及びメタ情報1は、現在のLTFSによる通常のメタ情報と同様である。本発明では、フォーマット時のメタ情報0は、グループAに分類されるように指標タグ(creatorタグ)を含ませる。メタ情報0は、データパーティション及びインデックスパーティションに保管されている。また、メタ情報1は、グループAに属するメタ情報であることを特定の指標タグで識別しておく。なおこのceartタグ(XML表示で与える)の使用は、LTFSフォーマット上ベンダーが自由に内容を設定して使用することは許されている。この例1では、a.txt、b.txtのとb.txtという2つのファイルが記録されている。a.txt及びb.txtのメタ情報(ファイル名、タイムステップ、位置情報など)を含むメタ情報1は、2つのファイルに続いてデータパーティションに追記されている。メタ情報1はインデックスパーティションには保管されていない。
●メタ情報の例2(グループB )
図12は、例2として、テープ上の2つのファイルの1つを削除したデータとメタ情報の配置を示す。例1の状態から、ファイルa.txtを削除してグループBのメタ情報を書き込むと、図のようなメタ情報2が追記書き込みされている。メタ情報2を表すXML表示の特定の指標(creatorタグ)によりグループBであることを指標する。また、ファイルが削除されたことを指示するために、拡張属性ltfs.vendor.IBM.deleted(削除フラグ)をTRUEとして保管する。ここで、特にファイルb.txtのメタ情報は保管しておらず、変更のあったのファイルの操作履歴を反映する「差分メタ情報」のみが保管される。この例2では、1つのファイルa.txtを削除しているが、テープ上にはa.txtは残存する。差分のメタ情報2は、a.txtが削除されたファイルであることを指示する削除フラグをa.txtに関連づけて含む。グループBの処理において、他方のファイルb.txtへのアクセスないので、差分のメタ情報2は、b.txtのメタ情報を含まない。差分のメタ情報2は、データパーティションにメタ情報1の後に保管される。
●メタ情報の例3 (グループB)
図13は、例3として、テープ上の残っているファイルに追加データで更新し、そのファイル名を変更した場合データとメタ情報の配置を示す。
ファイル処理の履歴操作を与える順次、例1、例2、例3におけるファイルのアクセス操作履歴を反映するメタ情報1、メタ情報2、メタ情報3の追記あれたテープ上の情報配置を示す。例1及び例2の状態に続いて、ファイルb.txtに更にデータを追加して、さらにb.txtの名前をc.txtに変更したアクセス操作理履歴を行う。この操作のメタ情報3は、XML表示のcreateタグ中でグループBの差分メタ情報として書き込まれる。メタ情報3は、変更のあったファイルb.txtに関するメタ情報のみが保管される。詳細には、メタ情報3は、既存のファイルb.txtのファイル名をc.txtに変更するメタ情報と、c.txtの後半のデータ位置を特定するメタ情報(エクステント)とを含む。差分メタ情報としてメタ情報3は、データパーティションに追加されたc.txtの後半に後続して書き込まれる。最終的に図13は、ファイル処理の履歴操作を与える例1,2,3のファイルデータ及びメタ情報1,2,3のテープ上での物理配置を示す。
図14は、修復プログラム(API)によるインデックスパーティションに書くべきメタ情報(インデックス)の作成のフローを示す。
突然の電源断が発生した際には、ltfsckが図のような流れでインデックスパーティションに書き込むべきメタ情報を作成する。本発明の機能を組み込んだLTFSは、ファイルシステムのAPIを、また、独立の修復プログラムとして与えられる。例えば、修復プログラムは、本発明の改良されたLTFSにより定期的に差分メタ情報が保管されたメディアについて、インデックスパーティションのインデックスを修復するステップである。修復機能を組み込んだプログラムは、テープドライブ・システムに対して各ステップ処理を実行する。
(1402)データパーティション上のグループAのメタ情報のうち、一番最後に書かれたものを読み出しベースのメタ情報(ベース・メタ情報)とする。
(1404)次に書かれているメタ情報はあるかを確認する。
本発明のLTFSのグループBのモードによりメディアに保管された一連の差分メタ情報をデータパーティションから読み出すステップである。
(1406)ステップ1404において差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのfileuid(ファイルID)を読み出す。fileuidは、メタ情報(インデックス)のXML表示で、ファイルを識別するファイルIDとして、与えられる。
(1408)ステップ1404において差分メタ情報がない場合、1402に読み出したベース・メタ情報をインデックスパーティションに保管する。
(1410)差分メタ情報に含まれるfileuid(ステップ1406)は、ベース・メタ情報に含まれているものかを確認する。
(1412)ステップ1410においてfileuidがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新する。
後続の差分メタ情報は、ベース・メタ情報に含まれるIDが共通するファイルについてアクセス操作履歴(削除、データ追加、ファイル名変更など)を反映するメタ情報を含んでいる。共通するファイルについて、最終的なインデックスを作成するために、共通するファイルについて、ベース・メタ情報に一連の差分情報を反映させた変更を行う。
(1414)ステップ1410においてfileuidがベース・メタ情報に含まれていない場合、ベース・メタ情報に該当するファイル等の情報を追加する。
後続の差分メタ情報は、ベース・メタ情報に含まれないファイルについてアクセス操作履歴(削除、データ追加、ファイル名変更など)を行っていることを示す。従って、新たなファイルについて、最終的なインデックスを作成するために、別のファイルにつての一連の差分メタ情報を、ベース・メタ情報に追加する。
ここで、メタ情報は、テープ上でファイルマークと呼ばれる特殊な情報をつけて記録することがLTFSフォーマットで規定されているので、最後に書かれたメタ情報を探し出すことは容易に可能であり、実際に現在のIBMのLTFSの実装でも行われている。そのメタ情報から、前に書かれたファイルマークを探していくことで、前に書かれているメタ情報を探し出すことも可能である。よって、テープ上のメタ情報を最後に書かれたメタ情報から、書かれたのと逆順にメタ情報を読み出していくことができる。逆順にグループAのメタ情報が見つかるまでメタ情報の一覧を取得していくことで、上記の図14のフローチャートで必要となるメタ情報はすべて読み出すことができる。
図15は、本発明を適用したLTFSを用いて、xcopyコマンドで10KB, 20KB、30KBのファイルをテープに書き込む場合のデータ量及びメタ情報量の対比を示す。図のような流れで、グループAのメタ情報にグループBのメタ情報による変更を適用することができるので、突然の電源断のときに、最後にメタ情報を書いた時点まで修復することができる。実際に、従来のLTFSと本発明を適用したLTFSとで、LTO5のテープカートリッジに10KB, 20KB、30KBのファイルを書けるだけ書き込んだ場合に想定される、データの書き込み量とその割合は下の表3、表4のようになる。表3は、従来のLTFSでの データパーティションにおけるファイルとメタ情報の書き込み量を示す。表4は、本発明適用のLTFSでの データパーティションにおけるファイルとメタ情報の書き込み量を示す。従来のLTFSではデータパーティションの90%以上の領域をメタ情報の書き込みで消費してしまっていたが、本発明を適用したLTFSでは5%以下の領域しか使用しない。
以上より、上述の実施例の方法では、本発明を適用することで、突然の電源断のときの対応したメタ情報を記録しながら、データパーティションをメタ情報で大量に占有してしまうことを避けることができる。なお、本発明を実施の形態(実施例)を用いて説明したが、本発明の範囲は上記実施例には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
40…テープカートリッジ(メディア、テープ、テープメディア)、
60…テープドライブ(テープ記録装置)、
110…通信I/F(インターフェース)、
120…バッファ(ドライブバッファ)、
130…記録チャネル、
140…読み書きヘッド、
150…制御部(コントローラ、読み書き制御を含む)、
160…位置決め部
170…モータドライバ、
180…モータ、
300…ホスト(サーバ)

Claims (13)

  1. テープに書込まれたファイルに関連するメタ情報をテープに保管する方法であって、
    (a)少なくとも1つのファイルについてのテープへのアクセス操作履歴の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
    (b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
    (b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することを含む、メタ情報を保管する方法。
  2. (b2)前記所定のタイミングのメタ情報をメタ情報として保管するステップは、
    先行する前記差分メタ情報をテープに保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を後続の差分メタ情報として所定のタイミングでテープに保管することとを含む、請求項1に記載の方法。
  3. 前記テープに書込み方法は、テープを前記ファイルのデータを書き込むデータパーティションと、前記ファイルのメタ情報を保管するインデックスパーティションとに区分するテープ記録装置用ファイルシステムであって、
    前記ベース・メタ情報をテープのデータパーティションに追記することと、
    前記ベース・メタ情報の追記後のテープへのファイルのアクセス操作履歴に対して、所定のタイミングで前記差分メタ情報をデータパーティションに追記することと、
    テープを排出するときに、前記差分メタ情報を前記ベース・メタ情報に追加または変更して最新のメタ情報を構築してインデックスパーティションに保管することと、
    前記差分メタ情報の追記後のテープへのファイルのアクセス操作履歴に対して、所定のタイミングで後続の差分メタ情報をデータパーティションに追記することと、
    テープを前記装置から排出するとき、または所定に命令により、前記差分メタ情報を前記ベース・メタ情報に追加または変更して最新のメタ情報を構築してインデックスパーティションに保管することと、を含み、
    前記ベース・メタ情報及び前記差分メタ情報の追記は、ベース・メタ情報か差分メタ情報かを識別するタグ(識別タグ)を前記情報に含ませてデータパーティションに追記されることを特徴とする、請求項2に記載の方法。
  4. 前記前記所定のタイミングのメタ情報を保管するステップ(b1)及び(b2)は、前記先行のタイミング以降での前記後続のファイルのアクセス操作履歴が既存の保管ファイルを削除することを含む場合に、前記保管済みファイルの削除を指示する新規な削除フラグをメタ情報に新たに設け、前記後続の差分メタ情報が前記保管済みファイルの削除を示す前記削除フラグを含み、テープに前記後続の差分メタ情報として追記することを含む、請求項1または2に記載の方法。
  5. 前記前記所定のタイミングのメタ情報を保管するステップ(b1)及び(b2)は、前記先行のタイミング以降での変更履歴が既存のファイルを変更によりデータを追加する場合、既存のファイルのデータ部分に後続する追加のデータのメタ情報を差分メタ情報として、テープに追記することを含む、請求項1または2に記載の方法。
  6. 前記前記所定のタイミングのメタ情報を保管するステップ(b1)及び(b2)は、前記前回のタイミング以降での変更履歴が既存のファイルのファイル名を変更する場合、既存のファイルのファイルIDについてファイル名の変更するメタ情報を差分メタ情報として、テープに追記することを含む、請求項1または2に記載の方法。
  7. 請求項3の方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復する方法であって、
    (a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
    (b)次に書かれているメタ情報はあるかを確認するステップと、
    情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
    (d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
    (e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、を含むインデックスを修復する方法。
  8. (f)ステップdでファイルIDがベース・メタ情報に含まれていない場合、ベース・メタ情報に該当するファイル等のメタ情報を追加することを、含む請求項7に記載の方法。
  9. (g)ステップbにおいて差分メタ情報がない場合、ステップaで読み出したベース・メタ情報をインデックスパーティションに保管することを、含む請求項7に記載の方法。
  10. テープに書込まれたファイルに関連するメタ情報をテープに保管するテープ記録システムであって、
    (a)少なくとも1つのファイルについてのテープへのアクセス操作履歴の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
    (b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
    (b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することを含む、メタ情報を保管することと、
    を実行するテープ記録システム。
  11. テープに書込まれたファイルに関連したメタ情報をテープに保管するテープ記録システムのためのプログラムであって、
    (a)少なくとも1つのファイルについてのテープへのアクセス操作履歴の結果として、テープに保管された有効なファイルに関連するメタ情報(ベース・メタ情報)をテープに保管することと、
    (b)前記ベース・メタ情報を保管した後に、前記有効なファイル及び新たなファイルについてのテープへのアクセス操作履歴の結果として、前記アクセス操作履歴を反映する前記ファイルに関連するメタ情報を所定のタイミングでテープに保管することと、を含み、
    (b1)前記所定のタイミングのメタ情報を保管するステップは、前記ベース・メタ情報を保管した以降のみに生じたアクセス操作履歴を反映する前記ファイルに関連するメタ情報を先行の差分メタ情報として所定のタイミングでテープに保管することと、
    をテープ記録システムに実行させるプログラム。
  12. 請求項3に記載の方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復するテープ記録装置システムであって、
    (a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
    (b)次に書かれているメタ情報はあるかを確認するステップと、
    (c)ステップaにおいて差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
    (d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
    (e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、
    を実行するテープ記録装置システム。
  13. 請求項3に記載の方法により差分メタ情報が保管されたテープから、インデックスパーティションのインデックスを修復するプログラムであって、
    (a)データパーティション上の前記指標タグにより識別されるメタ情報のうち、一番最後に書かれた前記ベース・メタ情報を読み出すステップと、
    (b)次に書かれているメタ情報はあるかを確認するステップと、
    (c)ステップaにおいて差分メタ情報がある場合、そのメタ情報を読み出し、そのメタ情報に書かれている各ファイルやディレクトリのファイルIDを読み出すステップと、
    (d)差分メタ情報に含まれるファイルIDは、ベース・メタ情報に含まれているものかを確認するステップと、
    (e)ステップdでファイルIDがベース・メタ情報に含まれている場合、ベース・メタ情報の該当するファイル等のメタ情報を更新するステップと、
    をテープ記録システムに実行させる修復するプログラム。
JP2014180165A 2014-09-04 2014-09-04 メタ情報を保管する方法、プログラム、及びそのテープ記録システム Active JP6041839B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2014180165A JP6041839B2 (ja) 2014-09-04 2014-09-04 メタ情報を保管する方法、プログラム、及びそのテープ記録システム
US14/834,715 US10067700B2 (en) 2014-09-04 2015-08-25 Storing meta-information on tape recording systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014180165A JP6041839B2 (ja) 2014-09-04 2014-09-04 メタ情報を保管する方法、プログラム、及びそのテープ記録システム

Publications (2)

Publication Number Publication Date
JP2016053895A true JP2016053895A (ja) 2016-04-14
JP6041839B2 JP6041839B2 (ja) 2016-12-14

Family

ID=55454793

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014180165A Active JP6041839B2 (ja) 2014-09-04 2014-09-04 メタ情報を保管する方法、プログラム、及びそのテープ記録システム

Country Status (2)

Country Link
US (1) US10067700B2 (ja)
JP (1) JP6041839B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10152993B1 (en) 2017-11-29 2018-12-11 International Business Machines Corporation Save block data to tape in a reverse order
WO2019181949A1 (ja) * 2018-03-22 2019-09-26 富士フイルム株式会社 記録装置、読取装置、記録方法、記録プログラム、読取方法、読取プログラム、及び磁気テープ
JPWO2021054243A1 (ja) * 2019-09-17 2021-03-25
JPWO2021171683A1 (ja) * 2020-02-28 2021-09-02
JPWO2021171814A1 (ja) * 2020-02-28 2021-09-02
US11195546B1 (en) 2021-05-26 2021-12-07 International Business Machines Corporation Data storage beyond a threshold tape position

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5925280B2 (ja) * 2014-11-04 2016-05-25 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープに書き込されたファイルを消去する方法、プログラム、及びテープ装置
CN108885671B (zh) * 2016-11-16 2021-06-22 华为技术有限公司 一种目录删除方法、装置和存储服务器
US10572170B2 (en) 2016-12-05 2020-02-25 International Business Machines Corporation Writing file information for tape file systems
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
EP3940700A4 (en) * 2019-03-13 2022-10-05 FUJIFILM Corporation RECORDING DEVICE, READING DEVICE, RECORDING METHOD, RECORDING PROGRAM, READING METHOD, READING PROGRAM AND MAGNETIC TAPE
US12007833B2 (en) 2022-07-27 2024-06-11 International Business Machines Corporation Adjusting error recovery procedure (ERP) in data drive based on historical ERP information

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004029991A (ja) * 2002-06-24 2004-01-29 Fujitsu Ltd ファイル処理プログラムおよびファイル処理装置
JP2005128861A (ja) * 2003-10-24 2005-05-19 Hitachi Ltd リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
JP2006331472A (ja) * 2005-05-23 2006-12-07 Canon Inc 情報記録方法及び装置
WO2013054597A1 (ja) * 2011-10-14 2013-04-18 インターナショナル・ビジネス・マシーンズ・コーポレーション テープドライブでのデータ改ざん検知方法、ファイルシステム

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3260923B2 (ja) * 1993-09-20 2002-02-25 富士通株式会社 データ処理システムのバックアップ制御装置及び方法
US6141773A (en) * 1998-06-30 2000-10-31 Emc Corporation Method and apparatus for undoing changes to computer memory
CA2244626A1 (en) * 1998-07-31 2000-01-31 Kom Inc. A hardware and software system
US6629110B2 (en) * 2000-01-10 2003-09-30 Connected Corporation Administration of a differential backup system in a client-server environment
US6675177B1 (en) * 2000-06-21 2004-01-06 Teradactyl, Llc Method and system for backing up digital data
JP3869194B2 (ja) 2000-08-14 2007-01-17 日本電信電話株式会社 データ復元方法およびシステム
WO2005017686A2 (en) * 2003-08-05 2005-02-24 Sepaton, Inc. Emulated storage system
JP2006333293A (ja) 2005-05-30 2006-12-07 Matsushita Electric Ind Co Ltd ネットワーク圧縮システム
US9009114B1 (en) * 2005-10-31 2015-04-14 Symantec Operating Corporation Version mapped incremental backups
JP2008059443A (ja) * 2006-09-01 2008-03-13 Hitachi Ltd 記憶システムおよびバックアップ方法
JP4900811B2 (ja) * 2007-03-30 2012-03-21 株式会社日立製作所 記憶システムおよび記憶制御方法
US8676809B1 (en) * 2008-06-30 2014-03-18 Symantec Corporation Method and apparatus for mapping virtual machine incremental images
US9063666B2 (en) * 2010-03-25 2015-06-23 International Business Machines Corporation File index, metadata storage, and file system management for magnetic tape
US9430155B2 (en) * 2010-03-25 2016-08-30 International Business Machines Corporation File index, metadata storage, and file system management for magnetic tape
JP2012243339A (ja) 2011-05-17 2012-12-10 Nec Corp 磁気テープ装置、磁気テープ用データ再配置方法、及びそのプログラム
JP5753476B2 (ja) 2011-10-27 2015-07-22 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データをシーケンシャルに記録する記憶装置
JP2014533850A (ja) * 2011-11-18 2014-12-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 記憶システム上に格納されたファイルを読み取るための方法、コンピュータ・プログラム、記憶システム
US8719235B2 (en) * 2011-12-07 2014-05-06 Jeffrey Tofano Controlling tape layout for de-duplication
JP5885298B2 (ja) 2012-03-15 2016-03-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープドライブでのデータ書き込み方法、プログラム
US8959297B2 (en) * 2012-06-04 2015-02-17 Spectra Logic Corporation Retrieving a user data set from multiple memories
JP6133396B2 (ja) * 2012-10-01 2017-05-24 株式会社日立製作所 計算機システム、サーバ、及び、データ管理方法
US9311014B2 (en) * 2012-11-29 2016-04-12 Infinidat Ltd. Storage system and methods of mapping addresses of snapshot families
JP2014115807A (ja) * 2012-12-10 2014-06-26 International Business Maschines Corporation ファイルを複数のメディアに書込む方法、及びストレージ・システム
JP2014123254A (ja) * 2012-12-21 2014-07-03 International Business Maschines Corporation メディア上のファイルをユーザ単位で分割管理する方法、プログラム、及びストレージ・システム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004029991A (ja) * 2002-06-24 2004-01-29 Fujitsu Ltd ファイル処理プログラムおよびファイル処理装置
JP2005128861A (ja) * 2003-10-24 2005-05-19 Hitachi Ltd リモートサイト及び/又はローカルサイトのストレージシステム及びリモートサイトストレージシステムのファイル参照方法
JP2006331472A (ja) * 2005-05-23 2006-12-07 Canon Inc 情報記録方法及び装置
WO2013054597A1 (ja) * 2011-10-14 2013-04-18 インターナショナル・ビジネス・マシーンズ・コーポレーション テープドライブでのデータ改ざん検知方法、ファイルシステム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6016006651; 長谷川 徹: 'IBMプロフェッショナル論文4' PROVISION No.72 Winter 2012 , 20120208, 第97-103頁, 日本アイ・ビー・エム株式会社 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10152993B1 (en) 2017-11-29 2018-12-11 International Business Machines Corporation Save block data to tape in a reverse order
US11227635B2 (en) 2018-03-22 2022-01-18 Fujifilm Corporation Recording device, readout device, recording method, recording program, readout method, readout program, and magnetic tape
JPWO2019181949A1 (ja) * 2018-03-22 2021-04-01 富士フイルム株式会社 記録装置、読取装置、記録方法、記録プログラム、読取方法、読取プログラム、及び磁気テープ
WO2019181949A1 (ja) * 2018-03-22 2019-09-26 富士フイルム株式会社 記録装置、読取装置、記録方法、記録プログラム、読取方法、読取プログラム、及び磁気テープ
JP7130032B2 (ja) 2018-03-22 2022-09-02 富士フイルム株式会社 記録装置、読取装置、記録方法、記録プログラム、読取方法、読取プログラム、及び磁気テープ
JPWO2021054243A1 (ja) * 2019-09-17 2021-03-25
JPWO2021171683A1 (ja) * 2020-02-28 2021-09-02
JPWO2021171814A1 (ja) * 2020-02-28 2021-09-02
WO2021171683A1 (ja) * 2020-02-28 2021-09-02 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
WO2021171814A1 (ja) * 2020-02-28 2021-09-02 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
EP4113269A4 (en) * 2020-02-28 2023-08-09 FUJIFILM Corporation INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND INFORMATION PROCESSING PROGRAM
US11763840B2 (en) 2020-02-28 2023-09-19 Fujifilm Corporation Information processing device, information processing method, and information processing program
US11195546B1 (en) 2021-05-26 2021-12-07 International Business Machines Corporation Data storage beyond a threshold tape position

Also Published As

Publication number Publication date
US10067700B2 (en) 2018-09-04
JP6041839B2 (ja) 2016-12-14
US20160077757A1 (en) 2016-03-17
US20170336999A9 (en) 2017-11-23

Similar Documents

Publication Publication Date Title
JP6041839B2 (ja) メタ情報を保管する方法、プログラム、及びそのテープ記録システム
US10915244B2 (en) Reading and writing via file system for tape recording system
JP5623239B2 (ja) 書込みレコードの重複を排除する記憶装置、及びその書込み方法
JP5925280B2 (ja) テープに書き込されたファイルを消去する方法、プログラム、及びテープ装置
US20140379980A1 (en) Selective duplication of tape cartridge contents
JP2015069290A (ja) テープドライブ用ファイルシステムよる更新されたファイルの読み出し速度を改善する方法
JP6005010B2 (ja) 複数のテープメディアに1つのファイルをスパニングする方法、ストレージ・システム、およびプログラム
JP6005122B2 (ja) 複数のテープカートリッジにファイルをスパニングして書込む方法
US9721610B2 (en) Method of managing, writing, and reading file on tape
US9058843B2 (en) Recovery of data written before initialization of format in tape media
US9236065B2 (en) Reclamation of data on tape cartridge
US10656853B2 (en) Tape having multiple data areas

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160112

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20160125

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20160216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160307

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20160531

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160909

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20160915

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161108

R150 Certificate of patent or registration of utility model

Ref document number: 6041839

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150