特許第5963726号(P5963726)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ インターナショナル・ビジネス・マシーンズ・コーポレーションの特許一覧

特許5963726ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消
<>
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000002
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000003
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000004
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000005
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000006
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000007
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000008
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000009
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000010
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000011
  • 特許5963726-ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消 図000012
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5963726
(24)【登録日】2016年7月8日
(45)【発行日】2016年8月3日
(54)【発明の名称】ヘッド移動時間を活用したストレージメディア中ファイルの断片化の解消
(51)【国際特許分類】
   G06F 12/00 20060101AFI20160721BHJP
【FI】
   G06F12/00 501B
   G06F12/00 501M
【請求項の数】17
【全頁数】12
(21)【出願番号】特願2013-207477(P2013-207477)
(22)【出願日】2013年10月2日
(65)【公開番号】特開2015-72566(P2015-72566A)
(43)【公開日】2015年4月16日
【審査請求日】2015年11月27日
【早期審査対象出願】
(73)【特許権者】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
(74)【代理人】
【識別番号】100108501
【弁理士】
【氏名又は名称】上野 剛史
(74)【代理人】
【識別番号】100112690
【弁理士】
【氏名又は名称】太佐 種一
(72)【発明者】
【氏名】津田 崇博
【審査官】 井上 宏一
(56)【参考文献】
【文献】 特開2007−287282(JP,A)
【文献】 特開2002−268924(JP,A)
【文献】 特開2006− 31446(JP,A)
【文献】 特開2007− 72679(JP,A)
【文献】 米国特許出願公開第2010/0179868(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 12/00
(57)【特許請求の範囲】
【請求項1】
コンピュータに各ステップを実行させて、ストレージメディア中の不連続な複数の領域にわたって記録されている断片化ファイルの断片化を解消させる方法であって、
(a)ストレージメディア中の読み取り又は書き込みの対象ファイルの位置に向かって、現在の位置からヘッドを移動することを開始するステップと、
(b)対象ファイルまでの途中に存在している複数のファイルについて、前記ヘッドを通じて複数のファイルを読み込みながら、その複数のファイルの各々が有効なファイルであるのかそれとも無効なファイルであるのかを決定するステップと、
(c)有効なファイルであると決定された複数のファイルを、別のストレージメディアに連続的に書き出すステップと、
(d)前記対象ファイルの位置が、前記テープメディア上に予め設定されたポイントの位置よりも末尾側にある場合、その末尾側に記録されている有効なファイルを、前記別のストレージメディアにさらに書き出すステップと、
を有する、
方法。
【請求項2】
前記コンピュータは、前記(a)のステップ、ストレージメディア中の対象ファイルへのアクセスを要求する読み取りコマンドまたは書き込みコマンドに応答して、実行する
請求項1に記載の方法。
【請求項3】
さらに、前記(c)と(d)のステップの間において、
(e)前記ヘッドが前記対象ファイルの位置まで移動すると、読み取りコマンドまたは書き込みコマンドを実行するステップと、を有する、
請求項2に記載の方法。
【請求項4】
前記コンピュータは、前記(b)のステップにおいて、複数のファイルの各々について有効なファイルであるのかそれとも無効なファイルであるのかについて、予め記憶されている有効なファイル及び無効なファイルを管理する台帳に従って決定する
請求項1に記載の方法。
【請求項5】
ストレージメディア中の現在の位置から対象ファイルの位置までのファイルの断片化の度合いが、前記台帳に基づいて一定の閾値以上であると判断された場合にのみ、(b)のステップを実行する、
請求項4に記載の方法。
【請求項6】
ストレージメディアが2次ストレージメディアであって、
不連続な複数の領域にわたって記録されているファイルが、1次ストレージメディアから2次ストレージメディアへと移動されてきたファイルであって、2次ストレージメディアにおいて新しいファイルとして追記されたものである、
請求項4に記載の方法。
【請求項7】
無効なファイルが、1次ストレージメディアにおいて更新されたファイルである、
請求項6に記載の方法。
【請求項8】
1次ストレージメディアがHDDであり、2次ストレージメディアがテープメディアである、
請求項7に記載の方法。
【請求項9】
ヘッドの現在の位置が、テープメディアの先頭である、
請求項8に記載の方法。
【請求項10】
コンピュータに各ステップを実行させて、テープメディア中の不連続な複数の領域にわたって記録されている断片化ファイルの断片化を解消させる方法であって、
(a)ヘッドの現在の位置を特定するステップと、
(b)ヘッドによる読み取りの対象となる、テープメディアの末尾の位置を特定するステップと、
(c)テープメディア中の対象ファイルへのアクセスを要求する読み取りコマンドに応答して、テープメディア中の対象ファイルの位置を特定するステップと、
(d)特定された対象ファイルの位置が、前記テープメディア上に予め設定されたポイントの位置よりも末尾側にあるかどうかを決定するステップと、
(e)予め設定されたポイントの位置よりも末尾側にあるものと決定される場合には、ストレージメディア中の対象ファイルの位置に向かって、現在の位置からヘッドを移動することを開始するステップと、
(f)対象ファイルまでの途中に存在している複数のファイルについて、前記ヘッドを通じて複数のファイルを読み込みながら、その複数のファイルの各々が有効なファイルであるのかそれとも無効なファイルであるのかを決定するステップと、
(g)有効なファイルであると決定された複数のファイルを、別のテープメディアに連続的に書き出すステップと、
(h)対象ファイルの読み取りを実行するステップと、
(i)対象ファイルの読み取りの実行が完了した後に、さらに後ろの末尾側に記録されているファイルを読み込み、その複数のファイルの各々が有効なファイルであるのかそれとも無効なファイルであるのかを決定するステップと、
(j)有効なファイルであると決定された複数のファイルを、別のテープメディアに連続的に書き出すステップと、
を有する、
方法。
【請求項11】
(b)のステップにおいて、テープメディアの末尾の位置までの間を複数のパーティション(パーティション0、パーティション1)に分けて、
分けられた複数のパーティション(パーティション0、パーティション1)の各々の末尾から手前の位置に、前記パーティション単位でファイルが記憶されていない領域を作成するために前記ポイントを設定する、
請求項10に記載の方法。
【請求項12】
ストレージメディアが、データが一本のテープメディア上に何度も往復して書き込まれる形式のものであって、
テープメディアの先頭から順番にヘッドが移動した距離が、テープメディア上の各ファイルが記録された論理位置となり、
テープメディア上における縦横の各ファイルの物理位置と、その論理位置とがマッピングされたものが、前記ファイルが有効か無効かを決定するための台帳として予め記憶されている、
請求項1〜11の何れかに記載の方法。
【請求項13】
請求項1〜12の何れかに記載の方法の各ステップをコンピュータに実行させる、プログラム。
【請求項14】
ストレージメディア中の不連続な複数の領域にわたって記録されている断片化ファイルの断片化を解消させるシステムであって、
(a)ストレージメディア中の読み取り又は書き込みの対象ファイルの位置に向かって、現在の位置からヘッドを移動することを開始し、
(b)対象ファイルまでの途中に存在している複数のファイルについて、前記ヘッドを通じて複数のファイルを読み込みながら、その複数のファイルの各々が有効なファイルであるのかそれとも無効なファイルであるのかを決定し、
(c)有効なファイルであると決定された複数のファイルを、別のストレージメディアに連続的に書き出す、
(d)前記対象ファイルの位置が、前記テープメディア上に予め設定されたポイントの位置よりも末尾側にある場合、その末尾側に記録されている有効なファイルを、前記別のストレージメディアにさらに書き出す、
システム。
【請求項15】
請求項14に記載のシステムを含み、
ストレージメディアおよび別のストレージメディアが2次ストレージメディアであって、
それらの2次ストレージメディアをシステムの構成として含んでいて、
さらに、
1次ストレージメディアの構成を含んでいて、
不連続な複数の区分にわたって記録されている断片化ファイルが、1次ストレージメディアから2次ストレージメディアへと移動されてきたファイルであって、新しいファイルとして追記されたものであり、
無効なファイルが、1次ストレージメディアにおいて更新されたファイルである、
HSM(Hierarchical Storage Management)システム。
【請求項16】
1次ストレージメディアのアクセス速度が、2次ストレージメディアのアクセス速度よりも相対的に速い、
請求項15に記載のHSMシステム。
【請求項17】
1次ストレージメディアがHDDであり、2次ストレージメディアがテープメディアである、
請求項16に記載のHSMシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージメディア中の空間を管理する技術に関し、より詳しくは、ストレージメディア中にあるファイルの断片化を効率的に解消する技術に関する。
【背景技術】
【0002】
Hierarchical Storage Management(HSM)は、アクセス速度の速い1次ストレージメディア(例えばHDD)とアクセス速度の遅いロー・コストの2次ストレージメディア(例えばテープメディア)から構成され、使用頻度の低いファイルは、アクセス速度の速い1次ストレージメディアからアクセス速度の遅い2次ストレージメディアへ自動的に移動される。
【0003】
2次ストレージメディアに、テープ等のシーケンシャルアクセスのストレージメディアを追記型の記録で使用する場合、1次ストレージメディアから移動されたファイルは新しいファイルとして2次ストレージメディア上に追記される。
【0004】
また、2次ストレージメディア上に記録されているファイルが1次ストレージメディア上において更新された場合、以前に2次ストレージメディア上に記録されたファイルは古いものとなり、無効なデータとして扱われる。
【0005】
この際、2次ストレージメディア上のファイルはその場で消去されるわけではなく、ファイルを管理している台帳上で無効なファイルとして扱われるのみである。
【0006】
このため、無効なファイルが増えるのに伴い、2次ストレージメディア上の有効なファイルの記録領域は断片化し、複数の領域に不連続に記録されている状態となる(図1)。
【0007】
このため、2次ストレージメディアにテープメディアを追記型の記録で使用するHSMでは、有効なファイルの記録領域が断片化した状態を解消するために、断片化の度合いが一定の閾値以上の2次ストレージメディア上の有効なファイルを、別の2次ストレージメディアに詰め直して追記する方法がある(図2)。
【0008】
この方法は、リクラメーション(Reclamation)と呼ばれる。
【0009】
この動作はユーザが行うファイル操作とは無関係なものであり、バックバックグラウンドで行われる処理である。
【0010】
しかし、その実行には移動元メディアからのファイルの読み込みと移動先メディアへのファイルの書き出し両方のために合わせて2台のテープドライブを占有する。
【0011】
このため、こうした処理自体が起こらない状態が続くことが好ましい。
【0012】
また、2次ストレージメディアがテープメディアの場合、2次ストレージメディア上のファイルへのアクセスの際には、ファイルの書き出し、読み込み位置までのテープドライブのヘッドの移動が発生する(図3図4)。
【0013】
特に、テープ等のシーケンシャルアクセスのストレージメディアでは、メディア上に有効なファイルと無効なファイルが入り混じって存在する場合に、有効なファイルへのアクセス時間が長くなるという特性がある。
【0014】
これは、対象ファイルにアクセスするためのテープドライブのヘッドの移動距離が、無効なファイルが存在する分大きくなるためである。ヘッドが移動する間はファイルの書き出し、読み込みといったファイル操作の処理は行われていないため、ヘッドを移動させるだけの処理にテープドライブの使用時間を多く割くことになる。
【0015】
特許文献1および特許文献2は、テープメディアについてファイルの断片化の解消(リクラメーション)を効率的に行うための技術について記載している。
【0016】
特許文献3は、空き領域を再利用する技術について記載している。
【0017】
しかし、特許文献1〜3の何れにおいても、後述するところの本発明の特徴的構成については記載がない。
【先行技術文献】
【特許文献】
【0018】
【特許文献1】米国特許第6304880B1号公報
【特許文献2】米国特許第6785697B2号公報
【特許文献3】特開2012−181896号公報(日本国における出願から1年6月経過に伴う強制的公開)
【発明の概要】
【発明が解決しようとする課題】
【0019】
本発明の目的は、2次ストレージメディアにテープメディアを追記型の記録で使用するHSMにおいて、テープメディア上の有効なファイル領域の断片化を効率的に解消することにある。
【課題を解決するための手段】
【0020】
2次ストレージメディアがシーケンシャルアクセスのストレージメディアであるテープメディアの場合、2次ストレージメディア上の対象ファイルへのアクセスの際に、ファイルの書き出し、読み込み位置までのテープドライブのヘッドの移動が発生する。
【0021】
この際、その2次ストレージメディア上の先頭から対象ファイルまでの間の有効なファイルの記録領域の断片化の度合いが一定の閾値以上であれば、ヘッドの移動時に、ヘッドが通過する途中に存在する有効なファイルの読み込みを同時に行い、別の2次ストレージメディアへ詰め直して追記する処理を行う。
【発明の効果】
【0022】
本発明に従えば、このように、ユーザのファイル操作に伴い発生するテープドライブのヘッドの移動時間を利用し、テープドライブを1台追加して使用することで、2次ストレージメディア上の有効なファイルの記録領域の断片化を解消する処理を行うことができる。
【0023】
これにより、ユーザのファイル操作とは無関係に2台のテープドライブを占有して2次ストレージメディア上の有効な記録領域の断片化の解消を行う必要性を解消させることができる。
【図面の簡単な説明】
【0024】
図1図1は、従来技術であって、Hierarchical Storage Management(HSM)の全体構成を示すとともに、有効なファイルの記録領域が断片化したテープメディアを示す図である。
図2図2は、従来技術であって、断片化した有効なファイルの記録領域を別のテープメディアへ移動させることを説明する図である。
図3図3は、従来技術であって、テープメディアからのファイルの読み込みを説明する図である。
図4図4は、従来技術であって、テープメディアへのファイルの書き出しを説明する図である。
図5図5は、本発明であって、テープメディア上の読み込みファイルの先頭位置へのヘッド移動時に通過するデータを読み込み、別テープメディアへファイルを詰め直すことを説明する図である。
図6図6は、本発明であって、テープメディア上のファイル書き出し位置のヘッド移動時に通過するデータを、別テープメディアへファイルを詰め直すことを説明する図である。
図7図7は、本発明であって、テープメディア上の読み込みファイルの位置が予め設定されたポイントよりも末尾側の場合に、図5で説明した内容を処理することを説明する図である。
図8図8は、本発明であって、テープメディアの末尾の位置までの間を複数のパーティション(パーティション0、パーティション1)に分けて、分けられた複数のパーティション(パーティション0、パーティション1)の各々の末尾ごとに、予めポイントが設定されていることを説明する図である。
図9図9は、本発明を適用することができるテープメディアは、実際には一本のテープメディア上に何度も往復してデータが書き込まれる記録形式であることを説明する図である。
図10図10は、本発明を適用するにあたっての、何度も往復してデータが書き込まれる形式におけるテープメディア上のデータの物理位置の定義を示す図である。
図11図11は、図10に対応しており、本発明を適用するにあたっての、テープメディア上のファイルの論理位置と物理位置のマッピングを示す図である。
【発明を実施するための形態】
【0025】
本発明の基本としては、2次ストレージメディアがシーケンシャルアクセスのストレージメディアであるテープメディアの場合、2次ストレージメディア上のファイルへのアクセスの際に発生する、ファイルの書き出し、読み込み位置までのテープドライブのヘッドの移動時間を利用する。
【0026】
ヘッドの移動は、通常、ストレージメディア中の対象ファイルへのアクセスを要求する読み取りコマンドまたは書き込みコマンドに応答して、始動することになる。
【0027】
実際に、読み取りコマンドまたは書き込みコマンドを実行するためには、ファイルの書き出し位置、読み込み位置までヘッドが物理的に移動しなければならず、その移動のみに時間が割かれてしまう。
【0028】
本発明では、2次ストレージメディア上のファイルへのアクセスの際に発生する、ファイルの書き出し、読み込み位置までのテープドライブのヘッドの移動を利用する。
【0029】
2次ストレージメディア上の先頭からアクセス対象ファイルまでの間に存在する有効なファイルの記録領域の断片化の度合いが一定の閾値以上であれば、ヘッドの移動時に通過途中に存在する有効なファイルの読み込みを行い、別の2次ストレージメディアへ詰め直して追記する(図5図6)。
【0030】
ヘッドの現在の位置からのヘッドの移動を利用すればよい。
【0031】
従来はテープドライブのヘッドの移動のみに割かれていた時間を活用し、これに加えてテープドライブを1台追加して使用することで、2次ストレージメディア上の有効なファイルの記録領域の断片化を解消することが可能である。
【0032】
こうした機能を実現するためには、あらかじめ、テープメディア上の先頭からファイルの書き出し、読み込み位置までに存在するデータの断片化の度合いを知るための方法が必要となるが、これにはファイルを管理している台帳を利用する。
【0033】
この台帳としては、コンピュータにおいてテーブルという形式で記憶しておくことが考えられる。
【0034】
HSMは1次ストレージメディアと2次ストレージメディアから構成されている都合上、どのファイルがどのストレージメディア上に記録されているのかを管理する台帳が存在する。
【0035】
この台帳により、テープメディア上に記録されているファイルに関しては、どのファイルがどのテープメディア上のどの位置に記録されているのかも管理されている。
【0036】
このため、テープメディア上の先頭からファイルの書き出し、読み込み位置までの間に存在するデータ記録可能領域の大きさに対して、その領域に存在する有効なファイルの記録領域の割合を求めることが可能である。
【0037】
この割合を断片化の度合いとして定義することができる。
【0038】
即ち、値が大きい程断片化の度合いが小さく、値が小さい程、断片化の度合いが大きいことを意味する。
【0039】
この値が予め決められた閾値以下であれば、本発明の手法を適用するものとする。
【0040】
またこの際、ユーザがアクセスするファイルがテープメディア上の末尾に近い場合は、それよりも後ろの位置に存在する少量の有効なファイルの記録領域のみがテープメディア上に残り、結果として非常に断片化の度合いが高いテープメディアが作成されてしまう可能性がある。
【0041】
このため、あらかじめテープメディアの末尾から手前の位置にポイントを設定し、ユーザがテープメディアから読み込むファイルがそのポイントよりも末尾側に位置する場合には、対象ファイルの読込みが完了した後に、さらに後ろに記録されているファイルも読み込み、別のテープメディアへ詰めなおす処理を行う(図7)。
【0042】
テープメディアへファイルを書き出す場合においては、書き出す位置がそのポイントよりも末尾側となるようなテープメディアはファイルの書き出し先として選択しないようにする。
【0043】
この際、ユーザがアクセスするファイルのテープメディア上の位置及び、それよりも末尾側の位置に有効なファイルの記録領域が存在するか否かは、前述の、ファイルを管理している台帳の記録から知ることが可能である。
【0044】
本発明を適用することにより、テープメディア上の先頭に、ファイルが記録されていない大きな領域を持つテープメディアが作成される可能性が考えられる。
【0045】
このようなテープメディアは、テープメディア上のファイルの書き出し、読み込みの度に長距離のヘッドの移動が発生するため好ましくない。
【0046】
これに関しては、仮にテープドライブがテープメディアを長手方向に複数の論理パーティションに分割する機能をサポートしていれば、先頭からのパーティションが全くファイルの記録されていない領域となった時点で、そのパーティションに対して新たにデータを書き込めるようにすることが可能である。
【0047】
また、あらかじめテープメディアの末尾から手前の位置に設定するポイントと同様のものを、各パーティションの末尾から手前の位置に対しても設定することにより、本発明をテープメディア上の論理パーティション単位に対して適用することが可能である。
【0048】
この場合、ファイルが記録されていない領域がパーティション単位で作成されやすくなるため、空いたパーティションには次々と新たなデータの書き込みが可能となる。
【0049】
このため、本発明がより効果的になると考えられる。
【0050】
以上の説明においては、説明を分かり易くする都合上、一本のテープメディア上に一往復しかデータが書き込まれていない形式を想定しており、使用した図は、テープメディア上におけるファイルの記録領域を先頭から末尾まで一直線上に並べた形にして描いている。
【0051】
しかし、実際のテープメディアにおいては、図9に示す順番で、データが一本のテープメディア上に何度も往復して書き込まれる。
【0052】
また、テープメディアの先頭からその順番にヘッドが移動した距離が、テープメディア上の各ファイルが記録された論理位置として、ファイルを管理している台帳上に保存される。
【0053】
この論理位置からは、記録されたファイルのテープメディア上における物理的な位置を知ることはできない。
【0054】
このため、テープメディア上のファイルへのアクセスの際に発生する、ファイルの書き出し、読み込み位置までのテープドライブのヘッドの移動時に、実際に有効なファイルの記録領域が断片化している部分をヘッダが通過するのかどうか、また、その部分に存在する有効なファイルを、ヘッダの移動のオーバーヘッドなしに読み込むことが可能なのかをあらかじめ知ることができない。
【0055】
この問題を解決するために、テープメディアに書き込まれるファイルの論理位置と物理位置のマッピングを、ファイルを管理している台帳上に保存する。
【0056】
物理位置に関しては、図10に示すように、ファイルのテープメディア上における縦横の物理的な記録位置を座標(a, b)の形式で定義する方法が考えられる。
【0057】
これを利用することで、テープメディア上に記録される各ファイルに対して、図11のような論理位置と物理位置のマッピングを作成することが可能である。
【0058】
このマッピングを参照することで、一本のテープメディア上に何度も往復してデータを書き込む形式の場合においても、テープドライブのヘッドの移動時に、実際に通過する有効なファイルの記録領域が断片化した部分と、その部分に存在する有効なファイルの記録位置をあらかじめ知ることができ、本発明を適用することができる。
【0059】
この他、本発明は、ここまで説明してきた方法だけでなく、方法的な特徴を実行できるプログラム、システムとしても具現化することができる。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11