JP2016110669A - 複数のファイルを書込む方法、テープ装置システム、及びプログラム - Google Patents

複数のファイルを書込む方法、テープ装置システム、及びプログラム Download PDF

Info

Publication number
JP2016110669A
JP2016110669A JP2014244325A JP2014244325A JP2016110669A JP 2016110669 A JP2016110669 A JP 2016110669A JP 2014244325 A JP2014244325 A JP 2014244325A JP 2014244325 A JP2014244325 A JP 2014244325A JP 2016110669 A JP2016110669 A JP 2016110669A
Authority
JP
Japan
Prior art keywords
files
tape
writing
file
segment
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
JP2014244325A
Other languages
English (en)
Other versions
JP6463103B2 (ja
Inventor
豊 大石
Yutaka Oishi
豊 大石
長谷川 徹
Toru Hasegawa
徹 長谷川
真幸 岩永
Masayuki Iwanaga
真幸 岩永
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 JP2014244325A priority Critical patent/JP6463103B2/ja
Priority to US14/935,527 priority patent/US9858010B2/en
Publication of JP2016110669A publication Critical patent/JP2016110669A/ja
Priority to US15/806,495 priority patent/US10078466B2/en
Application granted granted Critical
Publication of JP6463103B2 publication Critical patent/JP6463103B2/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/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • 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/0611Improving I/O performance in relation to response time
    • 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
    • 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

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)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

【課題】テープに保存されたファイルについて読み出しの際の平均位置合わせ時間を低減できる書込み方法を提供する。【解決手段】書込み方法は、ホストのアプリケーションから、テープに書込み要求された複数のファイルのデータを受け取る。受け取った複数のファイルをグループとして、複数のファイルを、所定のサイズのセグメントで断片化する。複数のファイルをグループとして、ファイルの各々の一連の所定のサイズのセグメントを、所定の順番で順次書き込む。セグメントを所定の順番で書込むステップは、ファイルの各々の先頭のセグメントを、テープの左端部に位置付けて書き込み始める。【選択図】図6

Description

本発明は、テープ(テープメディア、テープ媒体、テープカートリッジ)に複数のファイルを書き込む方法に関するものである。
詳細には、本発明は、テープに保存された複数のファイルの読み出しの際の平均位置合わせ時間を削減できる書込み方法に関する。
テープドライブがテープメディア上のデータを探すための所要時間は、テープメディアの長さに依存する。テープメディアの長さは800m程度であり、その走行速度は最大10m/sec 程度である。テープメディアの任意の位置にあるデータを探す平均所要時間は数十秒程度となる。ラップ(Wrap)を移動する時間は大きくても2 秒程度であり、また、テープに保存されたデータを探す動作は、長手方向の移動と平行して行なわれる。そのため、通常はデータを探すための所要時間はテープの長手方向の移動時間によって決定される。
後で詳述するLTFS(Linear Tape File System)がテープ装置用ファイルシステム用の登場している。テープを利用するにあたり、USBメモリのようにファイルシステム経由でテープを利用することが可能になった。テープへの保存は長期保存(アーカイブ)及び大容量保存に優れている。また、従来テープを使っていなかったユーザ業界でも、その業界アプリケーションが扱うファイルをテープカートリッジでもって、長期保存及び再生するようになってきている。
図1は、 複数の動画ファイルをテープに書き込んだ場合の模式図を示す。
放送業界では、ファイルサイズが数GB〜数十GB の多量の映像ファイル(picture file )を1本のテープに保存する。テープ上の動画ファイルを読み出す場合、動画1はファイルの位置合わせ(頭出し)に時間はかからないが、動画2と動画4では40秒程、動画3では80秒程位置合わせに時間がかかる。ここで動画( motion picture)は、典型的には映画(movie)などの映像ファイルである。動画ファイルをテープに書き込む場合/読み出す場合、ラップ0上の動画1と動画2は左から右へ、ラップ1上の動画3と動画4は右から左へ読み書きすることになる。また、テープをテープドライブに挿入した直後は、読み書きヘッドはラップ0の先頭、つまり、ラップ0の左端に位置する。これは、テープ上の動画ファイルを読み出す場合、動画1ではファイルの位置合わせ(頭出し)に時間はかからない。動画2と動画4では40秒程、動画3では80秒程位置合わせに時間がかかることを意味する。前述の通り、テープ長を800m、走行速度を10m/secと仮定している。また奇数ラップ上の動画3と動画4ではラップ1上を右から左に読み書きするため右端へ位置合わせする必要がある。つまり、平均位置合わせ所要時間は、40秒程となる。この平均位置合わせ所要時間の値は、図1の場合に限らず、ファイルサイズが任意の場合であっても同様である。この平均位置合わせ所要時間の削減が、本発明の取り組む課題である。
特許文献1は、各ファイルの部分をテープ上の物理的に近い位置に集めて書き込むことにより、書き込まれたデータの読み出し所要時間を低減する技術である。
特開2013−191259号公報
従来のテープ装置では、複数のファイルの全てを考慮した位置合わせ所要時間を平均的に低減できる、書込みについて言及はない。特に、テープストレージの利用の普及のためには、メディア産業(映像産業)においてこの解題を特に解決する必要がある。
本発明の目的は、テープに複数のファイルのデータを書き込みは、読み出しの際の平均位置合わせ時間を削減可能にする書込み方法、テープ装置システム、及びプログラムを提供することである。
かかる目的のもと、本発明は、テープ装置用ファイルシステムを介して、テープに保存された複数のファイルへの平均位置合わせ時間を低減できるように複数のファイルを書き込む方法である。この書込み方法は、
(a)ホストのアプリケーションからテープに書込み要求された複数のファイルのデータを受け取ることと、
(b)前記受け取った複数のファイルをグループとして、前記複数のファイルを、所定のサイズのセグメントで分割することと、
(c)前記複数のファイルをグループとして、前記ファイルの各々の一連の所定のサイズのセグメントを、所定の順番で順次(シーケンシャル)に書き込むことと、を含み、
(d)前記セグメントを所定の順番で書込むステップ(c)は、前記ファイルの各々の先頭のセグメントを、前記テープの1または複数のラップ往復において前記テープの左端部に位置付けて書き込み始めることを含むこと特徴とする。
また、この書込み方法において、前記(d)の前記セグメントを所定の順番で書込むステップ(c)は、
前記ファイルの各々の先頭のセグメントを、前記テープの偶数ラップの左端部に置付けて書き込み始めることを更に含むこと特徴とする。
また、この書込み方法において、前記(d)の前記セグメントを所定の順番で書込むステップ(c)は、前記ファイルの各々の最後のセグメントを、前記テープの奇数ラップの左端部に位置付けて書き込み始めることを更に含むこと特徴とする。
また、この書込み方法において、前記(b)での前記複数のファイルの各々のセグメントサイズは、前記複数のファイルのセグメント毎のデータの書込みが、テープのラップの往復単位の容量に収まるように、決定されることを特徴とする。
また、この書込み方法において、前記(b)での前記複数のファイルの各々のセグメントサイズは、前記複数のファイルへのアクセスが許容される最大位置合わせ所要時間に基て、算定される許容される最大セグメントサイズ以下に収まるように、決定される。
また、この書込み方法において、前記(b)での複数のファイルのセグメントサイズは、前記許容される最大セグメントサイズ以下でファイル毎に異なる値を割当てることを特徴とする。
また、この書込み方法において、前記(c)での前記複数ファイルの各々のセグメントを所定の順番(パターン)で書込むステップは、前記ファイルサイズが同一である(即ち揃っている)場合はラウンドロビン形式で順に各ファイルの前記セグメントをデータセットに収めてテープに書込むことを特徴とする。
また、この書込み方法において、前記(c)での前記複数ファイルの各々のセグメントを書込む際の所定の順番(パターン)は、使用環境によっては異なるサイズのファイルが混在することを考慮して、決定されることを特徴とする。
また、この書込み方法において、前記(c)での前記複数ファイルの各々のセグメントを書込む際の所定の順番(パターン)は、ファイル毎に既に書き込み済みのセグメントの総容量がファイルサイズに占める割合に基づいて、決定されることを特徴とする。
また、この書込み方法において、前記(c)での前記複数ファイルの各々のセグメントを書込む際の所定の順番(パターン)は、前記書込み済みセグメントの容量割合の低いファイルのセグメントから順に書き込むように決定される。
更に、かかる目的のもと、本発明は、上述の書込み方法の各ステップを実行するテープ装置システムである。
更に、かかる目的のもと、本発明は、上述の書込み方法の各ステップをテープ装置システムにおいて実行するためのコンピュータ・プログラムである。
上述の本発明を適用されたテープドライブは、テープ上に書き込まれた複数のファイルへの位置合わせ所要時間を短縮できる。
複数の動画ファイルをテープメディアに書き込んだ場合の模式図を示す。 テープの長手方向に何度も往復して読み書きされるフォーマットを示す。 テープがLTFSにより2つのパーティションに区分けされたフォーマットを示す。 ホストに接続されたテープ装置を含むテープストレージ・システム(テープ装置システム)のハードウェア構成を示す。 本発明の実施例として具体的な書込み態様を示す。 本発明を実現する典型的な書込みフローチャートを示す。
ホストに接続したテープ装置のシステムにおいて、複数のファイルを複数の断片(セグメント)に分割して書込む方法の実施の形態(実施例)について説明する。
本発明は、複数のファイルの各々をフラグメント化(fragmentally)し、各ファイルの先頭と末尾のセグメントをテープメディアの左端に集めることで位置合わせ所要時間を低減させる。
本発明の実施例は、テープに書き込むファイルをフラグメント化し、ファイルの先頭部分を偶数ラップの先頭、ないし奇数ラップ の末尾付近に集めて書き込むことにより、位置合わせ所要時間を低減する。
図5では、動画1〜動画4の4つのファイルのそれぞれを複数のセグメントに分割している。各ファイルの先頭のセグメントがラップ0の先頭に集るように各ファイルを断片(フラグメント)化した形でテープに書き込む。テープに書き込むファイルをセグメント化し、ファイルの先頭部分を偶数ラップの先頭、ないし奇数ラップの末尾付近に集めて書き込む。
図2は、テープの長手方向に何度も往復して読み書きされるフォーマットを示す。
本発明の実施例を説明のため、テープでの読み書きフォーマットを用いて、LTFSでのファイルのデータの書込み、及びテープドライブ機構を説明する。
テープドライブはテープ媒体にデータを書込む際、テープの先頭から順次書込んで行く。LTO(Linear Tape Open)やIBM TS1120のテープドライブでは,テープの長手方向に何度も往復して読み書きされるフォーマットである。
既存のフォーマットでは、テープの走行方向の切り替えまたは反転(ラップターン:wrapturn)は、常に特定の位置、長手方向の両側の端部またはその近傍(LP3及びLP4)で行う。
LTO規格のテープ装置を例に本発明を説明するが、本発明の適用はLTO規格のテープ装置や当該テープ装置に接続するホスト装置に限られない。本発明は、テープ媒体をその長手方向に往復走行させてデータを記録するテープ装置であればどのようなテープ装置に対してもその効果を奏する。
図2(a)は、LTO規格に従うテープ媒体の記録領域の構成を示す。
図(a)を参照して、データ書込み方法を説明する。図(a)は、テープ媒体10が、BOT(Beginning Of Tape)からEOT(End Of Tape)へのテープ媒体10の長手方向に沿って配置された複数のバンド15を有する。複数のバンド15のそれぞれの両側には、データの書込み位置を制御するためのサーボトラック20が長手方向に沿って設けられている。
図2(b)は、本発明で用いられるテープのLTO Ultriumフォーマットのレイアウトを示す。
図に示すように、LTO(Linear Tape Open)規格のテープ媒体10では、リニア記録方式を採用しており、テープの長手方向に平行な方向にデータトラックが設けられる。テープ媒体10の幅方向は、各サーボバンド16で挟まれた4つのデータバンド14に分けられる。4本のデータバンド14には、番号が与えられており、番号順にデータが埋められることになる。テープ媒体の長手方向では、複数の論理ポイント(LP,Logical Point)で複数の領域に区分けされている。図2には、LP2、ユーザデータ領域を画定するLP3およびLP4が示されている。
データの書き込みは、テープ始端(BOT,Beginning Of Tape)側から終端(EOT,End Of Tape)側へ向かう往路(Forward Direction)のパスと、終端(EOT)側からテープ始端(BOT)側へ向かう復路(Backward Direction)のパスとからなる。パスは、ラップとも参照される。1本のデータバンド当たり、複数のラップが含まれる。
往路のパスでEOTに達すると、ヘッドの位置を垂直方向に移動し、同じデータバンドの下部に位置決めし復路の書き込みを開始する。これを繰り返すことで、1本のテープに大容量のデータを記録することが可能となる。このような、テープの記録エリア先頭からテープの走行方向に沿って記録し、記録エリアの終端で折り返して再び先頭に向かって記録していく往復動作12から、サーペンタイン記録方式とも参照されることがある。
上記フォーマットにおいて、テープ媒体をマウントしてデータを書き始めるテープ始端(BOT)側の論理ポイント(LP3)に近い位置から書かれたファイルでは、先頭からの頭出しにかかる移動距離が短く、短時間で読み出し始めることができる。これに対し、テープの長手方向の終端(EOT)側の折り返し位置である論理ポイント(LP4)に近い位置から書かれたファイルは、頭出しにかかる移動距離が長く、読み出し始めるまで長い時間を要してしまう。
図2(c)は、1つの読み書きチャネルを有するヘッドよりアクセスされる1つのデータバンドのラップ構造またはトラック構造を示す。
テープドライブにテープカートリッジが搭載(マウント)されると、論理ポイントLP1の少し後ろの論理ポイント(LP3)の位置より書込まれることを示す。データがテープ媒体10の先頭BOTのLP2(LP:Logical Position)から書込まれるのでない。このような記録領域の構成を採用するテープ媒体10に対し、LTO規格に従うテープ装置は、テープ媒体10の先頭から順にデータを書込んでいく。
1つのデータバンドは11本のラップまたはトラックからなる。これら11のトラックは、1つのチャネルにより向きを変えながらアクセスされる。ヘッドは、矢印の示すようの先ず外側の物理トラックからアクセスする。そのヘッドはそのトラック即ちテープの終端に達すると、点線に示す反対側のトラックに向きを変えてアクセスする。ヘッドがテープの終端に至るごとに、順次外側のトラックから内側のトラックに向きを変えつつアクセスする。トラック番号(トラック#)はテープ上の物理的位置に依存して決まる番号である。ラップ番号(Wrap#)は同じテープ上の物理位置へのアクセスの順に付けられる番号である。Wrap#が偶数の時は、LP3からLP4に読み書きし、Wrap#が奇数の時はLP4からLP3に向かって読み書きする。以下で説明される本発明の書込み方法では、Wrap#0とWrap#1のように往復する偶数と奇数のラップのペアでの往復のデータの塊を表現する。
テープ10に初めてデータを書込む場合、図(b)で示される位置30(データバンド0のLP3付近)からLP4へ向かってデータを書き始める。テープ10の終端までデータを書込むと、図1(b)で示されるように、テープ走行の向きをLP4からLP3への方向へ反転(ラップターン)し、データの書込みを続ける。新たにデータを追記(append)する場合、テープ装置は、テープ10に最後に書かれたデータの隣の位置からデータを書込んでいく。
論理ポイントの位置は、カートリッジに付帯する不揮発性メモリ(CM:Cartridge Memory)に保存されている。LP3からLP4、ないし、LP4からLP3に向かってデータを書込む各領域をラップ(Wrap)と呼ぶ。複数のラップは番号で識別される。各ラップはデータトラック(トラック)と読んでもよい。テープ走行方向の切り替え(反転)はラップターン(wrap turn)と呼ばれる。テープドライブは、ホストから送られてきた可変長の長さのデータをデータセット(DS:DataSet)と呼ばれる固定長の単位に再構築し、テープ媒体上に書込む。各DSはDSIT(Data Set Information Table)と呼ばれる、データセットのメタ情報を保持する。
最初にデータを書き始める場合は偶数番号0(Wrap#0)のラップのLP3付近から書き始める。新たにデータを追記する場合には、最後に書かれたデータの場所の隣から順次追記する。テープドライブはシーケンシャル・アクセス・デバイスであるので、アクセス速度向上のために、データを任意の位置に配置することはできない。
最初に書込んだデータ以外のデータにアクセスする場合には、データの先頭が任意の場所となる。つまり、必ずしもLP3付近とは限らないため、テープの位置合わせに時間がかかる。ヘッドを現在位置のLP3からLP4付近に位置合わせを行うためには、LTOでは2分程必要となる。
シーケンシャル・アクセス・デバイスであるテープ装置は、テープ媒体10の長手方向に往復走行してデータを順次記録していくので、最初に書込んだデータを除く他のデータの先頭はテープ媒体10上の任意の位置となる。そのため、データの読出し、追記する場合に、読み出すデータの先頭の位置や次のデータの書込み位置が必ずしもテープ媒体10の先頭にあるとは限らない。先頭にない場合はテープ媒体10を目的の位置まで走行させる必要があり、位置合わせに時間がかかる。
図3は、テープがLTFSにより2つのパーティションに区分けされたフォーマットを示す。
LTO5テープドライブは、テープの長手方向に沿った書き込み領域のラップを往復しながらデータを書く。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を利用してテープに書き込むと、テープではファイル本体の他、インデックスファイル(単にインデックス(index))と呼ばれるメタ情報をテープに書き込む。インデックスは、メタ情報としてディレクトリ名及びファイル名やファイル作成日、及び、メディア上の位置、サイズ、ファイル内のオフセットなどを含む位置メタ情報をXML形式で含む。また、インデックスは、1つのファイルが複数のセグメントに分割される場合に、そのセグメントに関連するメタ情報も含む。IPには、主に最新のインデックスが書き込まれる。メディアのDPには、逐次追加及び変更されるファイルの本体、及び、それに関連するインデックスの履歴を、追記(append)で書き込まれる。
LTFS を用いてテープ上のファイルを読み書きする場合、レコードと呼ばれる単位でデータの読み書きを行う。レコードは、LTFSではブロックと呼んでLTFSフォーマットを与える。ブロックは、ファイルのデータが記録されるパーティション毎にパーティションの先頭から何番目のブロックであるという番号で管理される。インデックスファイルには、ファイルのデータに対するブロックの番号で指示される位置情報が含まれる。
図4は、ホストに接続されたテープドライブ(テープ装置)を含むテープ装置システムのハードウェア構成を示す。
テープドライブ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(Application Program Interface))によりファイル名を指定して読み書きアクセスをテープドライブ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に直接接続されてもよい。
図5は、本発明の実施例として具体的な書込み態様を示す。
図は、複数の動画ファイルをフラグメント化し、ファイルの先頭部分を偶数ラップの先頭に集めて書き込んだ場合の模式図を示す。
図1に示した4のファイル動画1〜動画4をそれぞれ、複数のセグメント(動画N-M:N,M=1,2,3,4)に分割する。各ファイルの先頭のセグメントが ラップ0の先頭に集るように各ファイルを断片化(フラグメント化)した形でテープに書き込むようにする。
図5では、各ファイルを4つのセグメントに分割 (動画N-1〜動画N-4) し、各ファイルの先頭のセグメント(動画N-1:N=1,2,3,4)をラップ0の先頭に集るように書き込んだ場合を示している。テープドライブがテープ上のデータを読み書きする場合、データセット (DS) と言う数MBの容量を持つ固定長の単位でデータを読み書きする。セグメントの大きさ (容量) を定めるに当たり、例えば、全てのファイルのセグメントを 1のデータセットに収める。最初のデータセットが全てのファイルの最初のセグメントを含ませると、1つのデータセットのアクセスにおいて、全てのファイルの位置合わせ所要時間を従来の先頭のファイル (図1の動画1) と同等にできる。
更に、図5に示したように各ファイルをテープ上に書き込むことにより、各ファイルの末尾がラップ1 上の末尾に集中して位置する。任意のファイルを読み終えた後、他の任意のファイルを読み出すための位置合わせ所要時間もほぼ0にできる。厳密には、テープの走行速度の反転など若干(数秒)の時間がかかることは見込まれるが、従来の平均位置合わせ所要時間40秒程と比べれば有意に低減できる。
テープドライブにテープカートリッジを挿入して搭載された直後だけ位置合わせの所要時間の短縮ができる。更に、本発明を適用することにより、テープ上のファイルを読み書きした直後であっても、他のファイルの先頭への位置合わせ所要時間をほぼ0にできる。
一方、セグメントサイズを小さくし過ぎると、テープドライブがテープ上のデータを読み書きする際に、書き込み/読み出しコマンドのプロトコルのオーバーヘッドが大きくなる。複数のファイル(例えば動画)を分割する際に、セグメントサイズが小さすぎると読み出しオーバーヘッドが大きくなるので、許容される最大セグメントサイズを算定する。最小位置合わせ所要時間と最大位置合わせ所要時間の差分として許容できる時間をD、テープの走行速度をS、DSの容量をC、DSの長さをL、ラップを往復する間に書き込むファイル数をNとすると、許容時間Dを満たす最大セグメントサイズXは次の式で定義できる。
X=C× (S×D/L) /N(式1)
セグメントサイズは、例えば512KB といった固定の値を用いても良い。式1で求めた値よりも小さな値であればファイル毎に異なる値を用いても良い。ファイルサイズ、および、セグメントサイズが揃っている場合はラウンドロビン形式で順にセグメントを書けば十分である。一方、使用環境によっては異なるファイルサイズのファイルが混在する場合でもよい。各ファイルのセグメントサイズが異なる場合は、ファイル毎に既に書き込み済みのセグメントの総容量がファイルサイズに占める割合を評価して、後続のサイズサイズ及び順番を変更させてよい。例えば、テープに書き込み済み容量の割合が低いファイルのセグメントから優先させた順に書き込んでもよい。
図6は、本発明を実現する典型的な書込みフローチャートを示す。
例えば、複数の映像ファイルを 1本のテープに保存するユーザの環境では、任意の映像ファイルの位置合わせ所要時間を、従来テープの先頭に保存したファイルと同等まで短縮することができる。一方、位置合わせ所要時間が短くなることと引き換えに、ファイル読み出し時間は増加する。図1及び5を例に説明すれば、従来は図1に示したようにファイル毎に堅まって書き込まれたファイルが、本発明を適用することにより図5に示したようにテープ上に散在するようになるためである。
複数のファイルの書込み要求を受け取った場合、ファイルシステム(LTFS)はファイル毎にセグメントに分割する。ファイルシステムは、ファイル毎のセグメントを所定のパターン(順番)で各セグメントを混在させる、テープドライブに書込む。同様な処理を、LTFSを利用するアプリケーションが行っても良い。
(602)ホストのアプリケーションからファイルシステム(LTFS)が書き込み要求を受け取った場合である。
(604)LTFSは、書き込みたい複数のファイルのサイズがラップ2本分(ラップ往復)または複数のラップ往復分の容量があるかを確認する。
典型的な実施例として、アプリケーションから受け取った複数のファイルのサイズがラップ往復分の複数の容量に収まる場合を示す。この場合では、最初のセグメントと最後のセグメントとをラップの左端部付近(例えばLP3)に書込むことができる。 従って、次の複数のファイルの集まりをラップの左端に位置決することにより、連続してファイルの読み書きを所要時間も短縮できる有利な効果を維持できる。
(606)ファイルシステムは、1または複数のラップ往復分の容量のファイルが揃うまで待つ。
書込むファイルのサイズの合計が1または複数のラップ往復分に達するまで(604でNo)、ファイルシステムは複数のファイルを受取り続ける。
(608)書込むファイルのサイズの合計が1または複数のラップ往復分に達した場合(604でYes)、受け取った各ファイルを複数のセグメントに分割する。
各ファイルのセグメントサイズは、複数のファイルのデータがラップ往復に収まるように所定のサイズに決定される。複数のファイルの各々は、必ずしも同じラップ往復に収めなくてもよい。例えば、2つのファイル(file1、faile2)の受け取った場合、file1のセグメントは最初の1のラップ往復に書込み、file2のセグメントは最初の2のラップ往復に書込んでもよい。
(610)ファイルシステムは、各ファイルの先頭のセグメントを順次、テープドライブに書き込む。
ファイルシステムは、所定の順番(パターン)で複数のファイルのセグメントを書込む。所定の順番は典型的にはラウンドロビン方式であるがこれに限られず、ラップへの書込み済み割合の小さいファイルを優先する順番でもよい。
(612)ファイルシステムは、書き込んでいないセグメントが存在するかを確認する。
各ファイルの末尾のセグメントが書き込まれていないことを確認すればよい。
(614)書き込んでいないセグメント(未書込みセグメント)が存在する場合(612でYes)に、ファイル毎に書き込み済みのセグメントの総容量が評価する。更に、各ファイルの書込み済み総容量がファイルサイズに占める割合を求める。最終的に、ファイルシステムは、所定の順番として、その割合が最も低いファイルのセグメントを1つ書き込む選択を行う。
(616)書き込んでいないセグメント(未書込みセグメント)が存在しない場合(612でNo)、書き込み終了となる。
ファイルシステムは、ファイル毎に末尾のセグメントがラップに書き込まれたこと確認することで、書込みの終了を確認できる。
本発明の適用のテープ装置システムは、比較的大きなファイルを複数纏めて、ファイル断片(セグメント)を混在させて書込むことに特徴を有する。この特徴的構成により、複数のファイル、例えば複数の映像ファイルへの平均位置合わせ時間を小さくできる有利な効果を発揮する。
特にファイルサイズが小さいファイルばかりを利用する環境では、例えば、従来は高々テープの片道(1ラップだけ)を移動すれば読み出せたファイルでは、本発明の利益は得られにくい。本発明を適用することによりファイル読み出しにテープを往復させ必要性が高まるために、複数のファイルへの位置決め早さを確保できる反面、読み出しに時間をかかる点がある。
しかしながら、本発明の適用が、複数のファイルの頭出しに平均的に確保できる分野においては、本発明を適用したテープ装置システムは有用である。テープをクラウド経由で利用する場合やテープ上に保存した動画を再生する場合である。動画再生で、ファイル読み出し時の転送速度が低くてもその後の処理に影響を与えないような環境では位置合わせ後のファイル読み出し所要時間の増加は問題とならない。従来、テープからテープドライブのバッファメモリにファイルのデータを比較的高速に読み出された後、テープドライブがそのデータをホストへ送出するのを待たされる。バッファメモリに蓄積されたデータについては、テープからバッファメモリへ転送される速度が遅くなるだけで、テープドライブのバッファからホストへ送出される転送速度は影響を受けない。
ここまで、1つのラップ 往復分の容量に複数のファイルを格納することを例に解説したが、必ずしも 1 往復毎に処理する必要はなく複数往復毎に処理してもよい。例えば、1.5ラップ往復分の容量を持つファイル2つを組に、3往復後にファイルの末尾が揃うようにしても良い。更には、同時に書き込むファイルのテープでの始点と終点が必ずしも一致している必要はない。例えば、ファイル1 は Wrap0〜Wrap1、ファイル2は Wrap0〜Wrap3、ファイル3はWrap2〜Wrap3 に位置するように書き込んでもよい。
以上より、本発明を適用することにより、テープ上に書き込まれた各ファイルへの位置合わせ所要時間を短縮できる。なお、本発明を実施の形態(実施例)を用いて説明したが、本発明の範囲は上記実施例には限定されない。本発明の精神及び範囲から逸脱することなく様々に変更したり代替態様を採用したりすることが可能なことは、当業者に明らかである。
40…テープカートリッジ(メディア、テープ)、
60…テープドライブ(テープ装置)、
110…通信I/F(インターフェース)、
120…バッファ、
130…記録チャネル、
140…読み書きヘッド、
150…制御部(コントローラ、読み書き制御を含む)、
160…位置決め部
170…モータドライバ、
180…モータ、
300…ホスト(ユーザ・アプリケーションとファイルシステムを含む)

Claims (12)

  1. テープに保存された複数のファイルへの平均位置合わせ時間を低減できるように、複数のファイルを書き込む方法であって、
    (a)ホストのアプリケーションから、複数のファイルのデータを受け取ることと、
    (b)前記受け取った複数のファイルをグループとして、前記複数のファイルを、所定のサイズのセグメントで分割することと、
    (c)前記複数のファイルをグループとして、前記ファイルの各々の一連の所定のサイズのセグメントを、所定の順番で順次に書き込むことと、を含み、
    (d)前記セグメントを所定の順番で書込むステップ(c)は、前記ファイルの各々の先頭のセグメントを前記テープの左端部に集めて書き込み始めることを特徴とする、
    前記画像ファイルの書き込み方法。
  2. 前記(d)の前記セグメントを所定の順番で書込むステップ(c)は、
    前記ファイルの各々の先頭のセグメントを、前記テープの偶数ラップの左端部に集めて書き込み始めることを含むことを特徴とする、請求項1に記載の方法。
  3. 前記(d)の前記セグメントを所定の順番で書込むステップ(c)は、
    前記ファイルの各々の最後のセグメントを、前記テープの奇数ラップ左端部に集めて書き込み始めることを更に含むこと特徴とする、請求項1または2に記載の方法。
  4. 前記(b)での前記複数のファイルの各々のセグメントサイズは、
    前記複数のファイルのセグメント毎のデータの書込みが、テープのラップ往復分の単位の容量に収まるように、決定される、請求項1〜3の何れか1項に記載の書込み方法。
  5. 前記(b)での前記複数のファイルの各々のセグメントサイズは、
    前記複数のファイルへのアクセスが許容される最大位置合わせ所要時間に基て、算定される許容される最大セグメントサイズ以下に収まるように、決定される、請求項1に記載の書込み方法。
  6. 前記(b)での複数のファイルのセグメントサイズは、前記最大セグメントサイズ以下でファイル毎に異なる値を割当てる請求項5に記載の書込み方法。
  7. 前記(c)での前記複数ファイルの各々のセグメントを所定の順番で書込むステップは、前記ファイルサイズが同一である場合はラウンドロビン形式で順に各ファイルの前記セグメントをデータセットに収めてテープに書込む請求項1に記載の書込み方法。
  8. 前記(c)での前記複数ファイルの各々のセグメントを所定の順番で書込むステップは、異なるファイルサイズのファイルが混在することを考慮して、前記ファイルの各々のセグメントサイズ及び前記セグメントの順番を決定する請求項1に記載の書込み方法。
  9. 前記(c)での前記複数ファイルの各々のセグメントの書込みの際の所定の順番は、ファイル毎に既に書き込み済みのセグメントの総容量がファイルサイズに占める割合に基づいて決定される請求項8に記載の書込み方法。
  10. 前記(c)での前記複数ファイルの各々のセグメントの書込むステップは、前記書込み済みセグメントの前記容量の割合が低い前記ファイルのセグメントから順番に書き込む、請求項9に記載の書込み方法。
  11. 請求項1〜10の何れか1項の各ステップを実行する、テープ装置システム。
  12. 請求項1〜10の何れか1項の各ステップを前記テープ装置システムに実行させるコンピュータ・プログラム。
JP2014244325A 2014-12-02 2014-12-02 複数のファイルを書込む方法、テープ装置システム、及びプログラム Active JP6463103B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2014244325A JP6463103B2 (ja) 2014-12-02 2014-12-02 複数のファイルを書込む方法、テープ装置システム、及びプログラム
US14/935,527 US9858010B2 (en) 2014-12-02 2015-11-09 Writing files to a storage medium
US15/806,495 US10078466B2 (en) 2014-12-02 2017-11-08 Writing files to a storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014244325A JP6463103B2 (ja) 2014-12-02 2014-12-02 複数のファイルを書込む方法、テープ装置システム、及びプログラム

Publications (2)

Publication Number Publication Date
JP2016110669A true JP2016110669A (ja) 2016-06-20
JP6463103B2 JP6463103B2 (ja) 2019-01-30

Family

ID=56079252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014244325A Active JP6463103B2 (ja) 2014-12-02 2014-12-02 複数のファイルを書込む方法、テープ装置システム、及びプログラム

Country Status (2)

Country Link
US (2) US9858010B2 (ja)
JP (1) JP6463103B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021171815A1 (ja) * 2020-02-28 2021-09-02
WO2022054402A1 (ja) * 2020-09-11 2022-03-17 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107463332B (zh) * 2016-06-03 2020-12-29 阿里巴巴集团控股有限公司 一种文件分割方法及装置
US10152993B1 (en) 2017-11-29 2018-12-11 International Business Machines Corporation Save block data to tape in a reverse order
WO2020158463A1 (ja) * 2019-01-28 2020-08-06 富士フイルム株式会社 記録装置、記録方法、記録プログラム、及び磁気テープ
US11056140B1 (en) 2020-03-24 2021-07-06 International Business Machines Corporation High resolution tape directory recovery by writing a null data set
US11152018B1 (en) 2020-10-29 2021-10-19 International Business Machines Corporation Optimized tape unmount operation
US11176964B1 (en) 2020-10-29 2021-11-16 International Business Machines Corporation Optimized tape unmount operation
US11789795B2 (en) * 2021-11-08 2023-10-17 International Business Machines Corporation Using a cut and paste segment for reading a standard housekeeping data set

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000201325A (ja) * 1989-08-03 2000-07-18 Deutsche Thomson Brandt Gmbh 媒体上に記録された信号の再生装置及びブロック符号化デジタル信号を信号処理する方法
JP2001014110A (ja) * 1999-04-30 2001-01-19 Nippon Hoso Kyokai <Nhk> ファイル記録再生方法および装置
US20010034811A1 (en) * 1997-12-10 2001-10-25 Robert Beverley Basham Host-available device block map for optimized file retrieval from serpentine tape drives
JP2002208222A (ja) * 2001-01-09 2002-07-26 Fujitsu Ltd ファイルシステム及び記憶領域の管理方法
JP2008310895A (ja) * 2007-06-15 2008-12-25 Hitachi Maxell Ltd データ記録装置、およびそれを用いたデータ記録システム
JP2014063550A (ja) * 2012-09-21 2014-04-10 International Business Maschines Corporation テープ記録装置のデータ書込みを制御する装置、方法及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0845182A (ja) 1994-07-29 1996-02-16 Fujitsu Ltd 磁気テープ装置及び記録方法
JP2669382B2 (ja) 1995-02-27 1997-10-27 日本電気株式会社 磁気テープ装置
JP4131517B2 (ja) 2005-09-06 2008-08-13 インターナショナル・ビジネス・マシーンズ・コーポレーション テープ媒体にデータを書き込むための装置
JP5106377B2 (ja) 2008-12-25 2012-12-26 インターナショナル・ビジネス・マシーンズ・コーポレーション 記録媒体に記録されたデータの移行のための装置及び方法
JP5885298B2 (ja) 2012-03-15 2016-03-15 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation テープドライブでのデータ書き込み方法、プログラム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000201325A (ja) * 1989-08-03 2000-07-18 Deutsche Thomson Brandt Gmbh 媒体上に記録された信号の再生装置及びブロック符号化デジタル信号を信号処理する方法
US20010034811A1 (en) * 1997-12-10 2001-10-25 Robert Beverley Basham Host-available device block map for optimized file retrieval from serpentine tape drives
JP2001014110A (ja) * 1999-04-30 2001-01-19 Nippon Hoso Kyokai <Nhk> ファイル記録再生方法および装置
JP2002208222A (ja) * 2001-01-09 2002-07-26 Fujitsu Ltd ファイルシステム及び記憶領域の管理方法
JP2008310895A (ja) * 2007-06-15 2008-12-25 Hitachi Maxell Ltd データ記録装置、およびそれを用いたデータ記録システム
JP2014063550A (ja) * 2012-09-21 2014-04-10 International Business Maschines Corporation テープ記録装置のデータ書込みを制御する装置、方法及びプログラム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021171815A1 (ja) * 2020-02-28 2021-09-02
WO2021171815A1 (ja) * 2020-02-28 2021-09-02 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
WO2022054402A1 (ja) * 2020-09-11 2022-03-17 富士フイルム株式会社 情報処理装置、情報処理方法、及び情報処理プログラム
JPWO2022054402A1 (ja) * 2020-09-11 2022-03-17

Also Published As

Publication number Publication date
US20160154604A1 (en) 2016-06-02
US20180067681A1 (en) 2018-03-08
JP6463103B2 (ja) 2019-01-30
US10078466B2 (en) 2018-09-18
US9858010B2 (en) 2018-01-02

Similar Documents

Publication Publication Date Title
JP6463103B2 (ja) 複数のファイルを書込む方法、テープ装置システム、及びプログラム
JP6370035B2 (ja) 複数のテープメディアを用いてファイルを読み出す方法
JP6124734B2 (ja) 高速に読み出し可能なテープメディアにファイルを書込む方法
JP5885298B2 (ja) テープドライブでのデータ書き込み方法、プログラム
JP6080799B2 (ja) テープ記録システム用ファイルシステムを介した読み書きする方法
US9619147B2 (en) Reading order search method and program for recording
US9383945B2 (en) Method of writing a file to a plurality of media and a storage system thereof
JP5925280B2 (ja) テープに書き込されたファイルを消去する方法、プログラム、及びテープ装置
JP6005122B2 (ja) 複数のテープカートリッジにファイルをスパニングして書込む方法
KR20110038639A (ko) 테이프 매체의 주행 속도 조정 장치, 주행 속도 조정 방법, 및 주행 속도 조정 프로그램
JP5325128B2 (ja) データの書込みを制御する装置及び方法
US9093107B2 (en) Controlling data writing of tape recording apparatus
US10656853B2 (en) Tape having multiple data areas
US9733859B2 (en) Method for writing file while spanning file over a plurality of tape cartridges
US9285996B2 (en) Tape drive buffer utilization

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180620

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180731

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181004

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20181228

R150 Certificate of patent or registration of utility model

Ref document number: 6463103

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150