(57)【特許請求の範囲】
【請求項１】
それぞれが複数のデータファイルを蓄積する複数のファイルサーバを相互接続するように機能するネットワークのデータを管理するシステムであって、前記複数のファイルサーバから転送される複数のデータファイルを蓄積するための複数の媒体を含む第２次蓄積手段と、前記ネットワークに接続され、前記複数のファイルサーバと前記第２次蓄積手段との間で、データファイルの転送を、前記複数のファイルサーバから独立して自動的に管理するための蓄積サーバ手段とを有し、この蓄積サーバ手段は前記複数のファイルサーバから転送される複数のデータファイルをデータブロックとして集めて転送ユニットに構成する手段と、前記第２次蓄積手段に移された複数のデータファイルの各々が前記第２次蓄積手段の中で占める位置を識別するために物理的データ蓄積位置を示すデータを蓄積するディレクトリ手段とを備え、このディレクトリ手段が、個々のデータファイルとこのデータファイルが入っている転送ユニットとの間の対応を示すデータを蓄積する転送ユニット・ディレクトリ手段と、個々の転送ユニットと、個々の転送ユニットとそれらが格納されている媒体との間の対応を示すデータを蓄積する媒体オブジェクト・ディレクトリ手段とを備えるデータ蓄積管理システム。
【請求項２】
前記第２次蓄積手段が、多階層メモリを有し、この階層メモリが異なる特性の媒体を有する請求項１のシステム。
【請求項３】
前記階層メモリが複数の層を有し、磁気媒体、光学媒体、及び固体媒体のクラスの中の少なくとも１つの媒体からなるメモリ装置を含む請求項２のシステム。
【請求項４】
前記階層メモリの各層が前記蓄積サーバ手段に接続されている請求項２のシステム。
【請求項５】
前記階層メモリの内の少なくとも１層が、前記複数のファイルサーバから移されてきた複数のデータファイルを蓄積する複数のデータ蓄積要素と、少なくとも１つのデータ蓄積要素駆動手段であって、このデータ蓄積要素駆動手段に取り付けられたデータ蓄積要素に対してデータの読み出し／書き込みを行う手段と、そして前記複数のデータ蓄積要素から選択された１つを前記データ蓄積要素駆動手段にロボットのように取り付ける自動化されたデータ蓄積要素管理手段とを有する請求項２のシステム。
【請求項６】
前記第２次蓄積手段が多階層メモリを有し、この多階層メモリの各階層メモリが異なる特性の媒体を有し、前記蓄積サーバ手段が、前記階層メモリの第１層に前記転送ユニットを蓄積する手段と、前記階層メモリの或る層に蓄積されているデータファイルを所定の基準の関数に従って前記階層メモリの別の層へ自動的に再配置する手段とを有し、そして前記自動的に再配置する手段によって前記転送ユニットを前記階層メモリの前記別の層へ転送する請求項１のシステム。
【請求項７】
前記階層メモリの或る媒体に蓄積されている転送ユニットが、前記転送ユニットが入っている前記媒体から前記階層メモリの中の別の媒体へ再配置されるとき、前記蓄積サーバ手段が前記媒体オブジェクト・ディレクトリ手段を更新する請求項２のシステム。
【請求項８】
前記階層メモリの前記第１層に書き込まれているそれぞれの前記転送ユニットを、取り付け可能なデータ蓄積要素に書き込むためのバックアップ手段を更に有する請求項２のシステム。
【請求項９】
前記転送ユニットを一杯に充たすだけのデータがなくとも所定の時間が経過すると、前記バックアップ手段が前記取り付け可能なデータ蓄積要素に部分的にしか充たされていない前記転送ユニットを書き込む請求項８のシステム。
【請求項１０】
前記バックアップ手段が前記取り付け可能なデータ蓄積要素に蓄積されている部分的にしか充たされていない前記転送ユニットを、この部分的にしか充たされていない転送ユニットに含まれていた全てのデータファイルを含む充たされた転送ユニットで上書きする請求項９のシステム。
【請求項１１】
前記蓄積サーバ手段が、指定された前記転送ユニットの中に要求されたデータファイルがないことに応じて、前記バックアップ手段から要求のあったデータファイルを検索し、前記指定された転送ユニットの少なくとも一部分を前記取り付け可能なデータ蓄積要素から読み出して前記失われたデータファイルを回復させる請求項９のシステム。
【請求項１２】
前記蓄積サーバ手段が、前記階層メモリの最下層にデータ蓄積の空きスペースが不足しているということに応じて、少なくとも１つの選択された前記転送ユニットを前記最下層から消去する手段を更に有する請求項９のシステム。
【請求項１３】
前記蓄積サーバ手段が、前記階層メモリの前記最下層より下に媒体の層を追加したことに応じて、前記選択され、消去された転送ユニットを前記取り付け可能なデータ蓄積要素から読み出すことによって、前記選択され、消去された転送ユニットを前記バックアップ手段から前記追加された媒体の層へ転送する手段を更に有する請求項１２のシステム。
【請求項１４】
前記蓄積サーバ手段が、前記階層メモリの最下層にデータ蓄積容量を追加したことに応じて、前記選択され、消去された転送ユニットを前記取り付け可能なデータ蓄積要素から読み出すことによって、前記選択され、消去された転送ユニットを前記バックアップ手段から前記追加されたデータ蓄積容量へ転送する手段を更に有する請求項１２のシステム。
【請求項１５】
前記蓄積サーバ手段が、前記階層メモリの中で選択された層のデータ蓄積空きスペースが取り除かれたことに応じて、前記取り除かれるデータ蓄積空きスペースに蓄積されていた全ての前記転送ユニットを前記選択された層から消去する手段を更に有する請求項８のシステム。
【請求項１６】
前記蓄積サーバ手段が、前記階層メモリの中の前記選択された層より下の層の利用可能なデータ蓄積容量の大きさに応じて、前記消去された転送ユニットを前記取り付け可能なデータ蓄積要素から読み出して、前記消去された転送ユニットを前記バックアップ手段から前記利用可能なデータ蓄積容量へ転送する手段を更に有する請求項１５のシステム。
【請求項１７】
前記階層メモリの内の少なくとも１層が、前記複数のファイルサーバから移された複数のデータファイルを含む少なくとも１つの取り付け可能な前記データ蓄積要素を有するシェルフ層であって、前記データ蓄積要素上のそのデータファイルの位置は前記転送ユニット・ディレクトリ手段に保持されている請求項８のシステム。
【請求項１８】
前記シェルフ層の取り付け可能な媒体が前記バックアップの取り付け可能な媒体を有する請求項１７のシステム。
【請求項１９】
前記階層メモリの内の１層が、前記ファイルサーバから移されたデータファイルを含む少なくとも１つの取り付け可能な前記データ蓄積要素を有する退役層であって、そのデータファイルのディレクトリ・エントリが前記転送ユニット・ディレクトリ手段から排除されている請求項１７のシステム。
【請求項２０】
前記蓄積サーバ手段が、前記シェルフ層に取り付け可能なデータ蓄積要素が無くなっていることに応じて、前記無くなった取り付け可能なデータ蓄積要素に蓄積されていた全ての前記転送ユニットを前記取り付け可能なバックアツプ・データ蓄積要素から読み出して、前記取り付け可能なデータ蓄積要素を前記バックアップ手段から検索する請求項１７のシステム。
【請求項２１】
前記蓄積サーバ手段が、前記階層メモリの内の１層にあった媒体が無くなっていることに応じて、前記無くなった媒体に蓄積されていた全ての前記転送ユニットを前記取り付け可能なバックアツプ・データ蓄積要素から読み出して、前記無くなった媒体を前記バックアップ手段から呼び戻す請求項１７のシステム。
【請求項２２】
前記蓄積サーバ手段が、前記次に低い層にある前記媒体の関数によって前記転送ユニットのサイズを決定する手段を更に有する請求項６のシステム。
【請求項２３】
前記蓄積サーバ手段が、前記複数のファイルサーバの中に位置し、前記第２次蓄積手段に移されたデータファイルへの選択された前記ファイルサーバにおける呼び出しを傍受する傍受手段と、そしてこの傍受手段に応じて、移されたデータファイルを前記第２次蓄積手段から前記選択されたファイルサーバへ呼び戻す呼び戻し手段とを有する請求項１のシステム。
【請求項２４】
前記ネットワークが、前記複数のファイルサーバ上での複数のデータファイルの蓄積位置を識別するディレクトリ手段を含み、前記蓄積サーバ手段がネットワーク・ディレクトリでそれぞれの移動されたデータファイルに対するディレクトリ位置に、前記データファイルが前記第２次蓄積手段へ移されたことを示すデータを書き込む書き込み手段を有する請求項１のシステム。
【請求項２５】
前記蓄積サーバ手段が、前記ファイルサーバの中に位置し、前記ファイルサーバに蓄積されたデータファイルへの選択された前記複数のファイルサーバにおける呼びを傍受する傍受手段と、そして前記ネットワーク・ディレクトリに書き込まれ、要求されたデータファイルが前記第２次蓄積手段へ移されたことを示す前記データに応じて、要求されたデータファイルを前記第２次蓄積手段から前記ファイルサーバへ呼び戻す呼び戻し手段とを有する請求項２４のシステム。
【請求項２６】
前記蓄積サーバ手段が、前記第２次蓄積手段へ移されたデータファイルそれぞれの前記第２次蓄積手段における位置を識別するために物理的データ蓄積位置に関するデータを蓄積するディレクトリ手段を有し、そして前記呼び戻し手段が、前記ディレクトリ手段に蓄積されている前記データを読み出して、移動されていたデータファイルの前記第２次蓄積手段へ移されたデータファイルそれぞれの前記第２次蓄積手段における位置を識別するために前記ディレクトリ手段に蓄積されている前記データを要求に応じて読み出す手段と、そして移動されていたデータファイルを前記第２次蓄積手段の位置から前記選択されたファイルサーバへ要求に応じて送信する送信手段とを有する請求項２５のシステム。
【請求項２７】
前記蓄積サーバ手段が、前記第２次蓄積手段へ移されたデータファイルそれぞれの前記第２次蓄積手段における位置を識別するために物理的データ蓄積位置に関するデータを蓄積する前記ディレクトリ手段を有し、そして前記ネットワーク・ディレクトリで移動していたデータファイルの中から選別されたデータファイルに対するディレクトリ位置に、前記書き込み手段によって書き込まれた前記データが、前記移動していたデータファイルの中から選別されたデータファイルの前記第２次蓄積手段における位置を識別するために物理的データ蓄積位置に関するデータを蓄積している前記ディレクトリ内のデータ蓄積位置を識別する請求項２４のシステム。
【請求項２８】
選択され、移動された前記データファイルのディレクトリ位置において、前記ネットワーク・ディレクトリ中の前記書き込み手段によって書き込まれた前記データが、データファイル・アトリビュートの一部である請求項２４のシステム。
【請求項２９】
前記ネットワークが前記ファイルサーバ上のデータファイルの蓄積位置を識別するためのディレクトリ手段を含み、前記蓄積サーバ手段がデータファイル移動手段を備え、選択されたファイルサーバ上に蓄積されているデータファイルに関するデータを得るために、前記データファイルの種々の特性を示すネットワーク・ディレクトリを見る手段を有する請求項１のシステム。
【請求項３０】
前記データファイル移動手段が、前記選択されたファイルサーバ上に蓄積されているデータファイルに前記データファイルの選択された特性に基づいて優先度を伴った順序付けをする手段を有する請求項２９のシステム。
【請求項３１】
前記ファイルサーバのそれぞれが複数のデータ蓄積のボリュームを含み、前記データファイル移動手段が、前記少なくとも１つのファイルサーバの各ボリュームを見直し、そこに蓄積されているデータファイルの中から優先度が最も低いものを認識する手段を更に有する請求項３０のシステム。
【請求項３２】
前記データファイル移動手段が、前記優先度が最も低いと認識されたデータファイルの内の少なくとも１つを前記第２次蓄積手段に送信する手段を更に有する請求項３１のシステム。
【請求項３３】
前記蓄積サーバ手段が、前記選択されたファイルサーバのボリュームにおいて利用できるメモリの容量が予め定められた閾値と少なくとも同じになるまで、優先度が最も低い連続した前記データファイルのために前記データファイル移動手段を起動させる手段を更に有する請求項３２のシステム。
【請求項３４】
前記蓄積サーバ手段が、前記データファイル移動手段の起動予定を時間ベースで組み込む手段を更に有する請求項３２のシステム。
【請求項３５】
前記蓄積サーバ手段が、前記ボリューム空間の利用状況の関数で前記データファイル移動手段を起動させる手段を更に有する請求項３２のシステム。
【請求項３６】
前記蓄積サーバ手段が、前記データファイル移動手段を前記データ・ネットワーク上の活動度の関数で起動させる手段を更に有する請求項３２のシステム。
【請求項３７】
前記データファイル移動手段が、前記優先度で順序付けしたデータファイルの少なくとも１つを前記選択されたファイルサーバから前記第２次蓄積手段にコピーする手段と、そして前記コピーされた少なくとも１つの前記優先度で順序付けされたデータファイルが占めるデータ蓄積空間を利用可能なデータ蓄積空間として活用するために、前記選択されたファイルサーバ上で利用可能なデータ蓄積空間の不足分を絶えずチェックする手段とを有する請求項３１のシステム。
【請求項３８】
前記第２次蓄積手段が多階層メモリを有し、前記蓄積サーバ手段が、前記第２次蓄積手段に送信された複数のデータファイルをデータブロックとして集めて前記転送ユニットに構成する手段と、前記転送ユニットを前記階層メモリの第１層に蓄積する手段とを有し、前記第２次蓄積手段が、前記階層メモリの前記第１層上に蓄積されている前記転送ユニットのコピーを蓄積する手段を更に有する請求項１のシステム。
【請求項３９】
前記第２次蓄積手段が前記階層メモリの上位の階層にある層から再配置されたデーファイルを蓄積するために、最下層が複数の媒体ユニットに分割された多層階層メモリを有し、前記第２次蓄積手段がその上に利用できるデータ蓄積空間を使用しきった前記複数の媒体ユニットの１つのために、媒体代替ユニット要素上に前記媒体ユニットのコピーを蓄積する手段を更に有する請求項１のシステム。
【請求項４０】
前記蓄積サーバ手段が、前記媒体ユニットが無くなったことに応じて、前記無くなった媒体ユニットに蓄積されていた全てのデータファイルを前記媒体代替ユニット要素から読み出して、前記無くなった媒体ユニットを前記媒体代替ユニット要素から呼び戻す請求項３９のシステム。
【請求項４１】
前記媒体代替ユニット要素が取り付け可能なデータ蓄積要素を有する請求項３９のシステム。
【請求項４２】
前記第２次蓄積手段が多階層メモリを有し、この階層メモリの層が異なる特性を備えた媒体を有し、前記蓄積サーバ手段が前記第２次蓄積手段に送信された複数のデータファイルをデータブロックとして集めて前記転送ユニットに構成する手段と、前記転送ユニットを前記階層メモリの第１層に蓄積する手段と、前記第１層に蓄積されている前記転送ユニットを所定の基準の関数に従って前記階層メモリの別の層へ自動的に再配置する手段とを有し、そして前記自動的に再配置する手段は媒体ユニット中で組み合わされた前記複数の転送ユニットを前記階層メモリの前記別の層に蓄積するために送信する請求項１のシステム。
【請求項４３】
それぞれが複数のデータファイルを蓄積する複数のファイルサーバを相互接続するように機能するデータ・ネットワークに接続された第２次蓄積要素と蓄積サーバとを有するデータ蓄積管理システムにおいて複数のデータファイルを蓄積する方法であって、前記複数のファイルサーバから移された前記複数のデータファイルを前記第２次蓄積要素に蓄積するステップと、前記複数のファイルサーバと前記第２次蓄積要素との間でデータファイルの転送を、前記複数のファイルサーバから独立して自動的に管理するステップと、前記複数のファイルサーバから転送される複数のデータファイルをデータブロックとして集めて転送ユニットに構成するステップと、前記第２次蓄積要素に移された複数のデータファイルの各々が前記第２次蓄積要素の中で占める位置を識別する物理的データ蓄積位置を示すデータをディレクトリに蓄積するステップとを備え、この物理的データ蓄積位置を示すデータをディレクトリに蓄積するステップが、個々のデータファイルとこのデータファイルが入っている転送ユニットとの対応を示すデータを前記ディレクトリの転送ユニット・ディレクトリに蓄積するステップと、個々の転送ユニットとそれらが格納されている媒体との間の対応を示すデータを前記ディレクトリの媒体オブジェクト・ディレクトリに蓄積するステップとを有するデータファイル蓄積方法。
【請求項４４】
前記第２次蓄積要素が多階層メモリを有し、更に磁気媒体、光学媒体、及び固体媒体のクラスの中の少なくとも１つの媒体からなるメモリ装置を含んで異なった特性を有する媒体と共に階層メモリに集めた前記階層を有する請求項４３の方法。
【請求項４５】
前記第２次蓄積要素が多階層メモリを有し、その内の少なくとも１層が前記ファイルサーバから移されたデータファイルを蓄積する複数のデータ蓄積要素と、そこに取り付けられた前記データ蓄積要素の上にデータを読み出し／書き込みする少なくとも１つのデータ蓄積要素駆動装置とを有し、前記複数のデータ蓄積要素の内から選択された１つを前記データ蓄積要素駆動手段にロボットにより取り付けるステップを更に有する請求項４４の方法。
【請求項４６】
前記第２次蓄積要素が多階層メモリを有し、この階層メモリの前記層が異なる特性を持つ媒体を有し、前記転送ユニットを前記階層メモリの第１層に蓄積するステップと、前記階層メモリの１つの層に蓄積されたデータファイルを前記階層メモリの別の層に所定の関数に従って自動的に再配置するステップと、そして前記転送ユニットを前記階層メモリの前記別の層に送信するステップとを更に有する請求項４３の方法。
【請求項４７】
前記転送ユニットが、それまで入っていた前記媒体から前記階層メモリの別の媒体に再配置されたとき、蓄積サーバ要素が媒体オブジェクト・ディレクトリを更新する請求項４３の方法。
【請求項４８】
前記階層の前記第１層に書かれていた前記転送ユニットを取り付け可能なバックアップ蓄積要素に書き込むステップから成る請求項４３の方法。
【請求項４９】
前記転送ユニットが十分なデータファイルで充たされていなくても所定の時間が経過すると、書き込みステップが前記取り付け可能なバックアツプ・データ蓄積要素に部分的にしか充たされていない前記転送ユニットを書き込む請求項４８の方法。
【請求項５０】
前記書き込みステップが前記取り付け可能なバックアップ・データ蓄積要素にある一部分しか充たされていない前記転送ユニットの上に、前記部分的にしか充たされていない転送ユニットに書かれていた全てのデータファイルを含む前記転送ユニットで上書きする請求項４９の方法。
【請求項５１】
前記指定された転送ユニットの中に要求されたデータファイルがないことに応じて、前記指定された転送ユニットの少なくとも一部分を前記取り付け可能なバックアップ・データ蓄積要素から読み出して要求されたデータファイルを呼び戻すステップを更に有する請求項５０の方法。
【請求項５２】
前記階層メモリの最下層にデータ蓄積の空きスペースがまだ不足しているということに応じて、少なくとも１つの選択された前記転送ユニットを前記最下層から消去するステップを更に有する請求項４８の方法。
【請求項５３】
前記最下層より下層の前記階層メモリに前記媒体の層を追加したことに応じて、前記取り付け可能なバックアップ・データ蓄積要素から前記選択され、消去された転送ユニットを読み出すことによって、前記選択され、消去された転送ユニットを前記バックアップの取り付け可能なバックアップ・データ蓄積要素から前記追加された媒体の層へ転送するステップを更に有する請求項５２の方法。
【請求項５４】
前記最下層にデータ蓄積容量を追加したことに応じて、前記選択され、消去された転送ユニットを前記取り付け可能なバックアップ・データ蓄積要素から読み出すことによって、前記選択され、消去された転送ユニットを前記取り付け可能なバックアップ・データ蓄積要素から前記追加されたデータ蓄積容量へ転送するステップを更に有する請求項５２の方法。
【請求項５５】
前記階層メモリの選択された層の上のデータ蓄積空きスペースが取り除かれたことに応じて、前記取り除かれたデータ蓄積空きスペースに蓄積されていた前記全ての転送ユニットを前記選択された層から消去するステップを更に有する請求項５２の方法。
【請求項５６】
前記階層メモリの中の前記選択された層より下の層の空きのあるデータ蓄積容量の大きさに応じて、前記消去された転送ユニットを前記取り付け可能なバックアップ・データ蓄積要素から読み出して、前記消去された転送ユニットを前記バックアップの取り付け可能データ蓄積要素から前記利用可能なデータ蓄積容量へ転送するステップを更に有する請求項５５の方法。
【請求項５７】
前記階層メモリの内の少なくとも１層が前記ファイルサーバから移されたデータファイルを含む少なくとも１つの前記取り付け可能なバックアップ・データ蓄積要素を有するシェルフ層を有し、前記データ蓄積要素上のデータファイルの位置が転送ユニット・ディレクトリに保持されており、前記シェルフ層の取り付け可能な前記媒体が前記バックアップの取り付け可能な媒体を有する請求項４８の方法。
【請求項５８】
前記階層メモリの内の１層が前記ファイルサーバから移されたデータファイルを含む少なくとも１つの前記取り付け可能なバックアップ・データ蓄積要素を有する退役層を有し、更にそのディレクトリ・エントリが前記転送ユニット・ディレクトリから前記退役層に蓄積されたデータファイルを記載する排除ディレクトリを有する請求項５７の方法。
【請求項５９】
前記シェルフ層に取り付け可能な前記データ蓄積要素が失われたことに応じて、前記取り付け可能なバックアツプ・データ蓄積要素から前記失われた取り付け可能なデータ蓄積要素に蓄積されていた前記全ての転送ユニットを読み出して、前記取り付け可能なバックアップ・データ蓄積要素から取り付け可能なデータ蓄積要素を呼び戻す請求項５７の方法。
【請求項６０】
前記バックアップ手段から前記失われた前記階層メモリの内の１つの層にあった媒体が失われていることに応じて、前記失われた媒体に蓄積されていた全ての前記転送ユニットを前記取り付け可能なバックアツプ・データ蓄積要素から読み出して、前記取り付け可能なバックアツプ・データ蓄積要素から前記失われた媒体を呼び戻す請求項５８の方法。
【請求項６１】
前記次に下の層の上の前記媒体の関数によって前記転送ユニットのサイズを決定するステップを更に有する請求項４３の方法。
【請求項６２】
前記第２次蓄積要素に移されたデータファイルの呼び出しを選択されたファイルサーバで傍受するステップと、前記移されたデータファイルを前記第２次蓄積要素から前記選択されたファイルサーバへ呼び戻すステップとを更に有する請求項４３の方法。
【請求項６３】
前記ネットワークが前記ファイルサーバ上のデータファイルの蓄積位置を識別するための前記ディレクトリを含み、ネットワーク・ディレクトリのそれぞれの移動された前記データファイルに対するディレクトリ位置に、前記データファイルが前記第２次蓄積要素へ移されたことを示すデータを書き込むステップを更に有する請求項４３の方法。
【請求項６４】
前記ファイルサーバに蓄積されたデータファイルの呼び出しを選択された前記ファイルサーバで傍受するステップと、前記ネットワーク・ディレクトリに書き込まれ、前記要求されたデータファイルが前記第２次蓄積要素へ移されたことを示す前記データに応じて、前記要求されたデータファイルを前記第２次蓄積要素から前記ファイルサーバへ呼び戻す呼び戻しステップとを更に有する請求項６３の方法。
【請求項６５】
前記データを前記ディレクトリに蓄積するステップにおいて、前記データが、前記第２次蓄積要素へ移されたデータファイルそれぞれの前記第２次蓄積要素における位置を識別する物理的データ蓄積位置に応じるものであって、前記呼び出すステップが、前記ディレクトリに蓄積されている前記データを読み出して、前記要求されている移動されたデータファイルの前記第２次蓄積要素における位置を識別するための物理的データ蓄積位置を識別するステップと、要求があって移動されていた前記データファイルを前記第２次蓄積要素の前記位置から前記選択されたファイルサーバへ送信するステップとから成る請求項６４の方法。
【請求項６６】
前記データを前記ディレクトリに蓄積するステップにおいて、前記データが前記第２次蓄積要素へ移された前記データファイルそれぞれの前記第２次蓄積要素における位置を識別する物理的データ蓄積位置に応じるものであって、前記ネットワーク・ディレクトリで選択され、移動されたデータファイルに対する前記ディレクトリ位置に、前記書き込みステップによって書き込まれた前記データが、前記選択され移動されたデータファイルの前記第２次蓄積要素における位置を識別するための物理的データ蓄積位置を示す前記データを蓄積している前記ディレクトリにおけるデータ蓄積位置を識別する請求項６３の方法。
【請求項６７】
ネットワーク・ディレクトリで選択され、移動されたデータファイルに対する前記ディレクトリ位置への前記書き込みステップによって書き込まれた前記データがデータファイル・アトリビュートの一部分である請求項６４の方法。
【請求項６８】
前記ネットワークが前記ファイルサーバ上のデータファイルの蓄積位置を識別する前記ディレクトリを含み、データファイル移動ステップを含む前記方法が、ネットワーク・ディレクトリを見て選択された前記ファイルサーバに蓄積されているデータファイルに関連したデータを得るステップであって、どのデータが前記データファイルの様々な特性を把握しているかを見る請求項４３の方法。
【請求項６９】
前記データファイル移動ステップが、前記選択されたファイルサーバ上に蓄積されているデータファイルをそのデータファイルの選択された特性によって優先順位を付けるステップを更に有する請求項６８の方法。
【請求項７０】
前記ファイルサーバのそれぞれが複数のデータ蓄積のボリュームを含み、前記データファイル移動ステップが、前記少なくとも１つのファイルサーバの各ボリュームを見直し、そこに蓄積されている優先度が最も低い前記データファイルを識別するステップを更に有する請求項６９の方法。
【請求項７１】
前記データファイル移動ステップが、前記優先度が最も低いと認識されたデータファイルの内の少なくとも１つを前記第２次蓄積要素に送信するステップを更に有する請求項７０の方法。
【請求項７２】
前記選択されたファイルサーバのボリュームにおいて利用可能なメモリが予め定められた閾値の大きさと少なくとも同じ大きさになるまで、前記優先度が最も低いデータファイルに前記データファイルを次々に移動するために前記ステップを始動するステップを更に有する請求項７１の方法。
【請求項７３】
前記データファイルの移動ステップを起動するタイミングを時間ベースで組み込むステップを更に有する請求項７１の方法。
【請求項７４】
前記データファイル移動ステップを前記ボリュームの利用できる空きスペースの関数で起動するステップを更に有する請求項７１の方法。
【請求項７５】
前記データファイル移動ステップを前記データ・ネットワーク上の活動度の関数で起動するステップを更に有する請求項７１の方法。
【請求項７６】
前記データファイル移動ステップが、前記優先順位付けしたデータファイルの内の少なくとも１つを前記特定のファイルサーバから前記第２次蓄積手段にコピーするステップと、そして引き続いて前記選択されたファイルサーバ上に十分なデータ蓄積の空きスペースが無いと判定されたことに応じて、前記コピーされた少なくとも１つの優先順位付けされたデータファイルによって占められたデータ蓄積スペースを、利用可能なデータ蓄積の空きスペースとして利用するステップとを更に有する請求項７０の方法。
【請求項７７】
前記第２次蓄積要素が多階層メモリを有し、前記第２次蓄積要素に転送される複数のデータファイルをデータブロックとして集めて前記転送ユニットに構成するステップと、前記転送ユニットを前記階層メモリの第１層に蓄積するステップと、前記第１層上に蓄積されている前記転送ユニットのコピーを蓄積するステップとを有する請求項４３の方法。
【請求項７８】
前記第２次蓄積要素が多階層メモリを有し、その階層メモリの最下層が複数の媒体ユニットに分割され、階層的に上の層から再配置された前記データファイルを蓄積し、その上に利用可能なデータ蓄積を使い切った前記複数の媒体ユニットの１つに対応して、前記媒体ユニットのコピーを媒体代替ユニット要素上に蓄積するステップを更に有する請求項４３の方法。
【請求項７９】
前記媒体ユニットが失われたことに応じて、前記失われた媒体ユニットに蓄積されていた全ての前記データファイルを前記媒体代替ユニット要素から読み出して、前記失われた媒体ユニットを前記媒体代替ユニット要素から検索するステップを更に有する請求項７８の方法。
【請求項８０】
前記媒体代替ユニット要素が取り付け可能な前記データ蓄積要素を有する請求項７８の方法。
【請求項８１】
前記第２次蓄積要素が多階層メモリを有し、この階層メモリの前記層が異なる特性の前記媒体を有し、前記方法が、前記第２次蓄積要素に転送される複数のデータファイルをデータブロックとして集めて前記転送ユニットに構成するステップと、前記転送ユニットを前記階層メモリの第１層に蓄積するステップと、前記第１層に蓄積されている前記転送ユニットを所定の基準の関数に従って前記階層メモリの別の層へ自動的に再配置するステップとを有し、そして前記複数の転送ユニットが、前記階層メモリの前記別の層に蓄積のために送信される前に組み合わされて送信されるときは媒体ユニットになる請求項４３の方法。
【発明の詳細な説明】
発明の技術分野
本発明は、複数のデータプロセッサとデータ蓄積サブシステムとを相互接続するように機能するローカルエリア・ネットワークなどのデータ通信ネットワークと、優先度の低いデータファイルをデータ蓄積サブシステムからバックエンド・データ蓄積へ自動的に移動させて、より大きなデータ蓄積の空きスペースをデータ蓄積サブシステムに与えるようにするデータ蓄積管理システムに関するものである。
課題
ローカルエリア・ネットワークの分野においては、ネットワークに接続され、プロセッサのために働くデータ蓄積サブシステムに係わって、データ蓄積を如何に効率的に管理するか、そしてネットワークに接続されたプロセッサのために必要なデータ蓄積資源を如何に供給してゆくかが課題となっている。既存のローカルエリア・ネットワークでは、データ蓄積サブシステムとも表現され、プロセッサが利用するデータファイルを収めた多数のデータ蓄積装置と複数のプロセッサとが相互に接続されている。データファイルという用語は記憶装置に蓄積することができる多様なデータを特徴付ける際に使われ、ここでは一括して「ファイルサーバ」と表記するが、ファイルサーバ、データベース、アプリケーション・サーバ、及びノート・システムなどが含まれる。一般的に、データ蓄積サブシステムというのは、独立した磁気ディスク駆動装置やアレイ構成にしたディスク駆動装置のデータ蓄積サブシステムを指す。
このネットワークを構成する際には、これらデータ蓄積サブシステムが非常に高価になるという問題が生ずる。そこに蓄積されているデータの内のかなりの部分は殆ど使われることがないため、高価なデータ蓄積媒体を導入しても必ずしも意味を成さなくなるのである。このことに関連してデータ蓄積管理の領域においては、一般的にネットワークに直接接続されているこれらのデータ蓄積サブシステムに蓄積されたデータファイルが管理されることはないのである。データ蓄積管理動作は概して、プロセッサがデータ蓄積サブシステム上にデータ蓄積スペースに適当な空きがないことを感知したときに起動されるものである。その際に、一般的に使用者は使用していないか、又は使用頻度の低い様々なデータファイルを人手で消去したり、後日の使用に備えてアーカイブ蓄積の中に入れられる磁気テープ等の別の媒体に、これらのデータファイルを人手で移しているのである。このデータ蓄積管理の方法においては、使用者が人手でデータ蓄積サブシステムからデータファイルを取り除いてデータ蓄積の空きスペースを確保する間、データ処理操作を中止しなければならないので、効率は大幅に低下する。この人手によるデータ蓄積の空きスペースを確保する配置方式は、消去されたり蓄積されたりするデータファイルの中にそのような処理の対象にならないものがある場合には効率が低下する。更に、データ蓄積媒体はランダムに発生するデータがやりとりされる間は管理されないままに放置されている。
これに代わって、使用者はネットワークに別のディスク駆動装置を加えて、データ蓄積スペースを増やすこともできる。しかし、加えたディスク駆動装置のコストの分だけ、ネットワークのコストは増えてしまい、データ蓄積資源としては非効率的な費用の発生を見ることになる。この場合、ローカルエリア・ネットワークに接続される装置のデータ蓄積容量は通常かなり増加するが、使用者にデータを生成し、プロセッサとデータ蓄積媒体にソフトウェアを追加しようとする傾向がある限り、データ蓄積容量を増やすためにローカルエリア・ネットワークに接続される様々な装置を時間を追って改善しても、データ量がデータ蓄積容量をはるかに凌いでしまうのである。従って、十分なデータ蓄積容量を確保しようとすると、一般的に高いコストを強いられることになるが、同時に優先度の低いデータファイルを蓄積したり、ネットワークに接続してデータ蓄積サブシステムに蓄積されているデータファイルを自動的に管理しようとする際に、より安価な媒体であっても効率良く利用できるシステム・アーキテクチャやデータ管理機能が存在しないこともコスト高の要因となっている。
先行技術としてのデータ蓄積システムは１９９１年１０月大容量蓄積システムに関するｉＥＥＥシンポジウムで刊行された“ルネッサンス：ネットワークコンピュータとその蓄積要件”と題された論文に述べられている。この論文はデータの古さに応じてオンライン蓄積からより大容量の蓄積そして速度を落とした蓄積装置へとデータを移動する３つの段階からなる階層的蓄積システムを開示している。データファイルは管理され各ファイルベースに応じて移動される。
他のデータ蓄積システムは米国特許５２７６８６７号に開示されており、ここでもデータの古さに応じてオンライン蓄積から、より大容量の蓄積そして速度を落とした蓄積装置へとデータを移動する３つの段階からなる階層的蓄積システムを使用している。データファイルは管理され各ファイルベースに応じて移動される。
解決法
本発明のデータ蓄積管理システムによって、前記の課題は解決され、この分野における技術的な進歩が達成される。ネットワークに接続されるこのデータ蓄積管理システムは、階層的なデータ蓄積機能を備えており、ネットワークに接続されているデータ蓄積サブシステムから優先度の低いデータファイルを、光ディスクや磁気テープのようにより安価なバックエンドのデータ蓄積媒体に自動的に移動させる。データ蓄積管理機能はまた、自動的な自己回復データバックアップとデータ空きスペース管理機能も含んでいる。
このデータ蓄積管理システムは、複数の仮想ファイルのシステムを有し、ネットワークに接続されているプロセッサのために仮想データ蓄積システムの役割を担う。仮想データ蓄積システムは、複数のデータ蓄積サブシステムを有する第１セクションからなり、更に、それぞれのサブシステムはファイルサーバと系列のデータ蓄積装置とからなり、これらのサブシステムはネットワークに接続されてプロセッサのために働いている。仮想データ蓄積システムの第２セクションは、蓄積サーバ・プロセッサと階層的に配置されたデータ蓄積装置の少なくとも１層からなる蓄積サーバを有し、この蓄積サーバがバックエンドのデータ蓄積の空きスペースを与えるのである。蓄積サーバ・プロセッサは、各プロセッサに蓄積されているソフトウェア部品とネットワークに接続されているファイルサーバとの間でインタフェイスの役割を持つ。蓄積サーバは、要求に応じて／又は定期的にネットワークに接続されている各データ蓄積装置が持つそれぞれのボリュームの活動度をチェックする。優先度の低いデータファイルは、ネットワークと蓄積サーバを介してバックエンドのデータ蓄積媒体に移される。当初、このデータファイルを含んでいたデータ蓄積装置の中のデータファイルのディレクトリ・レジデントは、このデータファイルがバックエンドのデータ蓄積に移されたことを示すディレクトリの中の位置エントリによって更新される。従って、プロセッサがこのデータファイルを要求すると、位置エントリがディレクトリから検索され、蓄積サーバは要求したデータファイルがバックエンド蓄積に移されており、元のデータ蓄積装置に呼び戻さなければならないことを知るのである。蓄積サーバは位置エントリに蓄積されている情報を使って、要求のあったデータファイルを自動的に検索し、検索したデータファイルを元の経路からデータ蓄積装置へ送信するのである。蓄積サーバ、バックエンド・データ蓄積及びプロセッサに常在するソフトウェア・モジュールは、それぞれのデータ蓄積装置のためにプロセッサと使用者の両者に対して透過的な方法をもって仮想の蓄積ボリュームを作り出す。このシステムの各仮想ボリュームは、低コストのマス・ストレージ装置を使えば、プロセッサの要求に合わせて連続的に拡張することができる。
動作中、蓄積サーバはプロセッサにとって適正な量のデータ蓄積空きスペースを確保するために、各データ蓄積装置上のそれぞれのボリューム（ネットワーク・ボリューム）の内で得られる蓄積空きスペースの量をチェックする。利用可能なデータ蓄積空きスペースの量が所定の閾値以下になると、蓄積サーバは蓄積されている様々なデータファイルの活動度レベルを見直し、優先度の低いデータファイルを自動的バックエンドのデータ蓄積に移してゆく。更に、バックエンドのデータ蓄積も、優先度の低いデータファイルを同様に管理し、その活動度レベル、内容及び利用可能な様々な層のデータ蓄積空きスペースの大きさに応じて、多層構造のデータ蓄積の中を層から層へと移すのである。従って、階層蓄積の各層には、その層或いは媒体のタイプに適切な利用パターン及び優先度に準拠したデータファイルが集められることになる。データ蓄積装置はこのデータ蓄積階層の第１層であり、一方でバックエンドのディスク駆動装置やディスク駆動装置アレイは、このデータ蓄積階層の第２層と見倣すことができる。データ蓄積装置においてこの階層に引き続く層には、光ディスク及び／又は磁気テープ及び／又は自動媒体蓄積・検索ライブラリ、及び／又は人手で操作される媒体蓄積・検索ライブラリを組み込んでもよい。
データファイルが蓄積サーバから呼び出されると、そのデータファイルはバックエンド・データ蓄積位置からデータ蓄積装置へと直接送信され、要求しているプロセッサからそのデータ蓄積装置へのアクセスが可能になるのである。データファイルは、蓄積サーバの通常の検査・移動処理手順に従ってバックエンド蓄積に移されるまで、このデータ蓄積装置上に留まっている。
このシステムによれば、階層の第２層は余分なデータ蓄積装置を含むことができるので、データファイルのシャドウ・コピーなどの更に別のサービス及び機能を提供して、これらデータ蓄積装置内の活性化している１つに蓄積されている全てのデータを別のデータ蓄積装置に複製し、そこに蓄積されているデータを直ちに利用できるようにするのである。更に、蓄積サーバは全体のバックアップ動作を自動的に起動させることができるができるので、階層データ蓄積システムの特定のレベルに蓄積されている全てのデータは磁気テープなどのバックアップ媒体に定期的に書き込まれるのである。そのため、本データ蓄積システムでは仮にバックエンド・データ蓄積にあるデータ蓄積装置が故障しても、そのデータは自動化された磁気テープ・カートリッジ・ライブラリなどに含まれるバックアップ媒体にも蓄積されているから、使用者は自動的に事故から回復することができるのである。蓄積サーバが、故障したデータ蓄積装置に書き込まれていたデータファイルのバックアップ・コピーを呼び戻し、これらのデータファイルを代りの階層データ蓄積装置に送信することによって、故障した階層データ蓄積装置のデータは自動的に再構築され、要求しているプロセッサのアクセスが可能になるのである。
【図面の簡単な説明】
図１は本発明のデータ蓄積管理システムを含む一般的なローカルエリア・ネットワークの全体構成を示すブロック図の形式で示し、
図２は様々なネットワーク・ソフトウェア部品をブロック図の形式で示し、
図３は本発明のデータ蓄積管理システムの階層メモリの構成を概念図の形式で示し、
図４は本発明のデータ蓄積管理システムの階層メモリの物理的な装備を示し、
図５はデータ蓄積管理システムに使われているデータファイルの移動・バックアップ経路をブロック図の形式で示し、
図６は本発明の装置が定常的な掃引処理を行うために取られる処理ステップをフロー図の形式で示し、
図７はデータ蓄積管理システムに使われているデータファイル呼び出し経路をブロック図の形式で示し、
図８は本発明の装置がデータファイル呼び出し動作を行うために取る処理ステップをフロー図の形式で示し、
図９は本発明のデータ蓄積管理プロセスを時間的に変化するグラフの形式で示し、
図１０は階層的な蓄積管理ソフトウェアの様々な部品をブロック図の形式で示し、
図１１及び図１２は第２次蓄積におけるデータ移動に使われるデータ転送ユニットの２つの実施態様を示し、そして、
図１３はファイルシステムが使う一般的なディレクトリ構造を示す。
詳細な説明
ローカルエリア・ネットワークは、ビジネス環境において不可欠な要素となりつつある。図１は一般的なローカルエリア・ネットワーク１の全体構成と、本発明のデータ蓄積管理システムをローカルエリア・ネットワーク１に組み込んだ状態をブロック図の形式で示したものである。ローカルエリア・ネットワーク１は、データ通信リンク１１と、複数のプロセッサ２１、２２を多数のファイルサーバ４１−４３に連携させるソフトウェアと（図示せず）からなる。プロセッサはパーソナルコンピュータでも、ワークステーションでも、ミニコンピュータやその他のどのような処理要素であってもよい。説明を簡潔にするために、これらの装置には全てそれらの上位概念の用語である「プロセッサ」を用いることにする。大多数のプロセッサ２１、２２は相当量のデータ蓄積容量を有するが、一般的にローカルエリア・ネットワーク１ではプロセッサ２１、２２自身の持つ蓄積能力を補うためにデータ蓄積ボリュームが追加することはまれなことではない。ローカルエリア・ネットワーク１のデータ通信リンクに接続されるデータ蓄積管理装置３１−３３は、一般的には大容量ディスク駆動装置やディスク駆動装置アレイなどの高速ランダムアクセス装置であり、従ってプロセッサ２１、２２やデータ通信リンク１１の動作速度とは実質的に協同可能である。各データ蓄積装置３１−３３はファイルサーバ４１やワークステーション４２或いは別のタイプのサーバ４３に含まれ、ネットワーク１とディスク駆動装置などのデータ蓄積装置３１−３３との間のインタフェイスとして機能する。説明を簡潔にするために、ファイルサーバ４１−４３及びそれに関連するデータ蓄積装置３１−３３によってもたらされるデータ蓄積装置を、ここでは「ファイルサーバ」と称する。
ローカルエリア・ネットワーク１に接続されている各プロセッサ２１は、一般的には、これらのファイルサーバ４１の１つが備える少なくとも１つのボリュームにアクセスすることができ、またこのプロセッサ２１がデータファイルを蓄積するために新に追加したデータ蓄積スペースにもアクセスすることができる。データファイルという用語は、データ蓄積装置に蓄積することのできる様々なデータを表すために使用され、ここでは「ファイルサーバ」と総称されるファイルサーバ、データベース、アプリケーション・サーバ、及びノート・システムによって管理されるデータなどが含まれる。このシステムにおいては、ローカルエリア・ネットワーク１は、プロセッサ２１、２２とファイルサーバ４１−４３が決められたプロトコルを介して通信する通信網を提供する。ローカルエリア・ネットワーク１及びそのプロトコル、プロセッサ２１、２２とここで述べられているファイルサーバ４１−４３について開示されている構成と装備は、単に本発明を説明するためだけのものであって、このシステムにおいて可能な実施態様は他にも多数ある。
プロセッサ２１、２２とファイルサーバ４１−４３に加えて、本発明のデータ蓄積管理システムは、ローカルエリア・ネットワーク１に接続されるデータ蓄積管理装置を備えている。このデータ蓄積管理装置はローカルエリア・ネットワーク１に接続される蓄積サーバ５０を有する。蓄積サーバ・プロセッサ５１は、第２次蓄積５２となるバックエンド・データ蓄積装置６１−６５（図４）とローカルエリア・ネットワーク１のインタフェイスとして働く。バックエンド・データ蓄積装置は６１−６５は、ファイルサーバ４１−４３との組み合わせで階層データ蓄積システムを構成する。バックエンド・データ蓄積装置６１−６５は、一般的には少なくとも１層のデータ蓄積層を含むが、この蓄積装置はファイルサーバ４１−４３の専用データ蓄積装置３１−３３よりも安価で、プロセッサ２１、２２によって一層コスト効率の高いデータ蓄積ボリュームを提供する。データ蓄積管理システムはローカルエリア・ネットワーク１に接続されているプロセッサ２１、２２に仮想データ蓄積スペースを与える。仮想データ蓄積スペースは、ネットワーク１に接続され、プロセッサ２１、２２によって使用される第１次データ蓄積装置３１を備えた第１セクションＡからなる。仮想メモリの第２セクションＢは、蓄積サーバ・プロセッサ５１が管理している第２次蓄積５２を有する。第２次蓄積５２は第１次蓄積装置３１−３３にデータ蓄積容量を追加して供給するが、図１においてそれはファイルサーバ４１−４３の第１次データ蓄積装置３１−３３に点線で付記された仮想装置３１Ｓ−３３Ｓとして表示されている。これによって、プロセッサ２１はファイルサーバ４１に接続されているものより大きな容量を持つデータ蓄積装置３１としてイメージされる。蓄積サーバ５１は各プロセッサ２１、２２に蓄積されているソフトウェア部品とローカルエリア・ネットワーク１に接続されているファイルサーバ４１−４３との間のインタフェイスとして働く。蓄積サーバ・プロセッサ５１は要求に応じて、或いは決められた時間間隔でネットワーク１に接続しているファイルサーバ４１〜４３の各データ蓄積装置３１〜３３の持つそれぞれの容量をチェックする。優先度の低いデータファイルは、ネットワーク１と蓄積サーバ・プロセッサ５１を介して第２次蓄積５２のバックエンド・データ蓄積媒体に移される。このデータファイルを元々含んでいたファイルサーバ４１の中のデータファイル・ディレクトリ・レジデントは、このデータファイルがバックエンド・データ蓄積に移されたことを示す、ディレクトリの中の位置エントリで更新される。従って、プロセッサ２１がこのデータファイルを要求すると、位置エントリがそのディレクトリから検索されて、要求されたデータファイルはバックエンド蓄積に移されており、それを元のファイルサーバ４１に呼び戻さなければならないということを蓄積サーバ・プロセッサ５１に知らせる。プロセッサ２１、２２及び使用者とのインタフェイスの役割をするファイルサーバ４２の場合には、蓄積サーバ５０は、必要ならば要求されたデータファイルにアクセスするには時間が掛かることを使用者に知らせることもできる。蓄積サーバ・プロセッサ５１は自動的に要求されたデータファイルを検索し、それを元のところからデータ蓄積装置３１へ送信する。蓄積サーバ・プロセッサ５１、第２次蓄積５２及びプロセッサ常駐ソフトウェア・モジュールは、プロセッサ２１、２２と使用者の両者に対して透過的な方法で、それぞれのファイルサーバ４１−４３に対して仮想蓄積ボリュームを作り出す。第２次蓄積５２に低コストの大容量蓄積装置を使えば、このシステムの仮想ボリュームはプロセッサ２１、２２のニーズに沿いながら途切れることなく拡張することができる。
ネットワーク・ソフトウェア
図２は本発明のデータ蓄積管理ソフトウェアを含むネットワーク・ソフトウェアの典型的な構成要素をブロック図の形式で示している。現在、多数のネットワーク・サーバが市販されているが、その中でもＮｏｖｅｌ  ＮｅｔＷａｒｅ（登録商標）ソフトウェアは有力な製品である。本発明はそこに示された実施態様に限定されるものではないが、分かりやすくするために本発明の説明には、ＮｅｔＷａｒｅ（登録商標）で使われている実施態様の用語を使用する。
ネットワーク・ソフトウェアは、基本的なネットワークの骨組みの形成に機能するオペレーティング・システム２１１を含んでいる。更に、ネットワークに接続されているプロセッサに求められる様々な機能を支援するために、複数のモジュールが備えられる。これらのモジュールは、以下のものには限定されることはないがファイル管理２１２、印字制御２１３、データ蓄積管理２１４、通信２１５、データファイル・ディレクトリ２１６等を含む。本発明のデータ蓄積管理システムは、図１に示したデータ蓄積装置とともにネットワーク・ソフトウェアに組み込まれるデータ蓄積管理ソフトウェア２１４も含んでいる。データ蓄積管理ソフトウェア２１４は複数のモジュールを含んでおり、それぞれは一般的なデータ蓄積管理タスクにおいて特有の機能を提供する。図２には事故回復ファシリティ２２１、オブジェクト・アクセス管理ファシリティ２２２、及び階層蓄積管理２２３等のモジュールが示されている。これらのモジュールは、ネットワークの使用者にとってデータ蓄積効率の改善に繋がる幾つかの一般的な特徴を有している。各モジュールの中には更に多数のプロセスがあり、これらはリストに上がったモジュールのカテゴリーに組み込まれているのである。
階層蓄積管理アーキテクチャ
図３は階層データ蓄積管理システムの概念的なアーキテクチャを示し、また図４はこの階層データ蓄積管理システムに装着可能なハードウェアを示している。図におけるプロセッサ２１の使用者は、ネットワーク１を介して第１次データ蓄積装置Ｐとやり取りをする。第１次蓄積装置Ｐはファイルサーバ４１やディスク駆動装置のような連携する（複数の）データ蓄積装置３１からなる。ファイルサーバ４１は系列にあるデータ蓄積装置３１のデータ蓄積媒体を公知の方法で管理する。データ蓄積装置３１は一般的には多数のボリュームに分割されており、これらはネットワーク・ボリュームと呼ぶことができる。同じデータ蓄積装置３１の中にある追加のボリュームを指定したり、データ蓄積装置をネットワーク１に更に追加することによって、ボリュームを増やすのである。
図３に示すように、第２次蓄積５２は一般的にはデータ蓄積装置６１−６５を装備するのに使われる媒体の関数として、少なくとも１層、通常は複数の層３１１−３１３に分割されている。特に、第２次蓄積５２の第１層である階層データ蓄積の第２層３１１には高速磁気蓄積装置６１を装備することができる。このような装置には、ディスク駆動装置やディスク駆動装置アレイが含まれる。第２次蓄積５２の第２層である階層データ蓄積の第３層３１２には、光学的蓄積装置６２を装備することができる。このような装置には、光ディスク装置やロボット式媒体蓄積・検索ライブラリ・システムが含まれる。第２次蓄積５２の第３層である階層データ蓄積の第４層３１３には、低速の磁気蓄積装置６３を装備することができる。このような装置には、磁気テープ装置やロボット式媒体蓄積・検索ライブラリ・システムが含まれる。階層データ蓄積の付加層３１４は「シェルフ層」として利用ができるが、これは人手による媒体の蓄積６４である。開示した階層はデータ蓄積管理の概念を分かりやすくしたものであって、様々な層の数、次数及び具体的装備はここで開示しているものと異なってもよい。
図３に示すように、データファイルは階層メモリの第１セクションＡのファイルサーバ・ボリュームから階層メモリの第２セクションＢのデータ蓄積装置６１−６５に移動することができる。更に、図３に示すようにこれらのデータファイルを、データファイルの活動度の関数として、第２次蓄積５２の第１層３１１から第２次蓄積５２の第２層３１２や第３層３１３へ再配置することもできる。更にデータファイルは第２次蓄積５２のどの層からでも、ファイルサーバ・ボリュームに呼び出すことができる。
シェルフ層
データファイルが第２次蓄積５２へ移動するために蓄積サーバ５１へ送信されると、それらは幾つかの方法によって消失から自動的に保護される。仮想データ蓄積システムの第２セクションの第１層３１１にあるデータ蓄積装置６１は、一般的にはシャドウ・コピーを使って保護されるが、その際に各データ蓄積装置６１とその内容は別のデータ蓄積装置６５とその内容に複製されるのである。更に、データファイルは蓄積サーバ５１から保存のために移されるときに、転送ユニットと呼ばれる大きなデータ・ブロックに詰められる。この転送ユニットは、バックアップ駆動装置７１を介して高密度磁気テープ媒体など別のバックアップ媒体７２にバックアップのために蓄積される。データのセキュリティのために、オフサイトのコピーとオンサイトのコピーとの両方を確保させるために、このバックアップ媒体７２の複数のコピーを作り出しておくこともできる。バックアップ媒体の循環作業に当っては、複数の配置位置の間で、通常は火災などを含むどのような物理的事故に対してもデータファイルを守れるようにオンサイトとオフサイトの位置の間で、バックアップ媒体を循環させて実行される。仮想データ蓄積スペースの第２セクションにおける最下層３１３がほぼ満杯になると、この層を有するデータ蓄積装置６３を見直して、これに含まれている最も優先度の低い転送ユニットを見つけ出す。そのように見つけ出された転送ユニットはこの層から消去され、第２次蓄積ディレクトリが更新されて、消去されたこれらの転送ユニットの中に含まれていたデータファイルはシェルフ層３１４へ「配置し直された」ことが示される。そこの転送ユニットもデータファイルも物理的に移動することはない。この再配置は仮想のものであるが、それはこれらの認識されたデータファイルが第２次蓄積の第１層へ最初に移された時点で作り出されたバックアップ媒体７２上にデータファイルが蓄積されているからである。消去された転送ユニットに含まれる各データファイルの位置エントリは、これらのデータファイルがデータ蓄積システムの中でアクセス可能な間は更新されない。第２次蓄積ディレクトリは、データファイルが現在シェルフ層３１４上に蓄積されていると認知されると更新され、このデータファイルを含む媒体要素７２のアイデンティティはこのデータファイルのためにディレクトリ・エントリに追加される。このシェルフ蓄積という考え方は、階層の最下層３１３に空きスペースが必要であっても、使用者が追加のデータ蓄積装置６３を入手できないために、一時的にオーバーフローする条件下では非常に便利である。引き続き、使用者がこの層のデータ蓄積容量を拡張すると、オーバーフローしたデータはシェルフ蓄積から検索され、追加されたデータ蓄積空きスペースに配置される。
プロセッサ２１がシェルフ層３１４に蓄積されているデータファイルへのアクセスを要求すると、蓄積サーバ５１は要求されたデータファイルに対応する第２次蓄積ディレクトリから物理的な蓄積位置を検索する。このデータには要求されたデータファイルが収められた媒体要素７２の認識データが含まれている。この媒体７２の物理的位置は、データの読み出し／書き込み動作の度合いとシステムの構成に依存する。データファイル・バックアップ機能を有するバックアップ駆動装置７１に認識された媒体要素７２が取り付けられるのもあり得ないことではない。もしそうであるならば、データファイルはバックアップ駆動装置７１から検索されることになる。媒体要素７２がバックアップ駆動装置７１から移動されているならば、オペレータは移動された媒体要素７２を検索して駆動装置７１の上にこの媒体要素を取り付けて、蓄積サーバ５１が媒体要素７２から要求のあったデータファイルを呼び戻し、要求しているプロセッサ２１によって使用されているファイルサーバ３１に、このデータファイルを送信するようにする。検索された媒体要素７２は、バックアップ駆動装置７１に取り付けることができるが、この目的のために別の駆動装置を選択的に提供してもよく、その結果、第２次蓄積にデータファイルが移されている間に、蓄積サーバ５１は常にデータファイルをバックアップできるようになる。即ち、バックアップ媒体７２は２つの目的をこなすことができ、それらはデータファイルのバックアップであり、データ蓄積階層におけるシェルフ層３１４の活用である。
退役層
データファイルが長期間に渡って使われなくなったら、それらは仮想データ蓄積システムから移動させて、より高価な自動資源である仮想データ蓄積システムを使わない別に管理されたデータ蓄積システムに配置される。これらの退役データファイルを検索する必要が生じたときは、これらのファイルを追跡するのが有利である。退役層３１５はこの機能を果たすのである。データファイルが引っ込められると、それは最早、仮想データ蓄積システムの部分ではなくなり、その位置エントリは第１次蓄積ディレクトリから消去される。更に、そのデータファイルの認識データと第２次蓄積ディレクトリに記録されていたその他の特性データは、保存されて別の退役ディレクトリに置かれる。退役ファイルの位置エントリ、第２次蓄積ディレクトリ・エントリ及びバックアップ・ディレクトリ・エントリは消去される。退役ディレクトリの管理を簡単にするために、それは幾つかのセグメントに分割してもよく、分割されたセグメントはそれぞれ指定された時間間隔の最後にアクセスされたデータファイルをリストアップしている。退役ディレクトリの構造は、基本的なツリー構造などのその下にある仮想ファイルシステム・ディレクトリの構造が持つ形式を踏襲してもよい。通常、仮想ファイルシステムはツリーのボリュームレベルから始まるが、退役ディレクトリのディレクトリ構造は、所定の領域内でのサーバを含めるように上方に拡張してもよい。その領域は会社の部単位でも、概念的にサーバのレベルに比較して数レベル高いデータファイルを持つセグメンテーションであってもよい。この拡張によって、蓄積サーバ５１はファイルサーバ４１−４３による蓄積のために、退役ディレクトリをローカルエリア・ネットワーク１全体に渡って分布させることができるのである。どのような退役データファイルのツリー探索も、複数のファイルサーバ４１−４３によって同時に行うことができる。階層が仮想ファイルシステムによって組織されていれば、一般的にデータファイルはデータ蓄積階層の中の最も古い媒体上にある最も古い転送ユニットか、或いは所定の仮想ファイルシステムにあって最も古い転送ユニットを構成するグループとして退役させられる。データファイル退役のプロセスは、退役させられた各データファイルを最後にアクセスした時刻を調べ、この一時的な区分に対応する退役ディレクトリにエントリを置く。このように、それぞれの退役ディレクトリ・セグメントは、最後にアクセスされた間隔と領域により組織化されている退役データファイルの仕訳簿になる。各領域は、ファイルサーバ４１−４３或いはボリュームによって分解され、ローカルエリア・ネットワーク１全体にわたってそれぞれに対応するファイルサーバに分散させることのできるディレクトリのためのツリー構造を持っている。
データ管理システム・ソフトウェア
本発明のデータ管理システム・ソフトウェアは、システム全体に渡ってデータファイルの流れを管理する。図１０のブロック図はクライアントサーバの観点から概念的にネットワークとデータ管理システム・ソフトウェアを描いたものである。ローカルエリア・ネットワーク１のデータ通信リンク１１が蓄積サーバ・プロセッサ５１とそれに付属する３つのファイルシステム４１−４３を持っているように描かれている。蓄積サーバ・プロセッサ５１はネットワーク・オペレーティング・システム１１１と共に、様々な媒体と装置管理・ユーザーインタフェイス１１２と、制御・サービスソフトウェア１１３とからなるデータ蓄積管理システム・ソフトウェアを備えている。ファイルサーバ４１−４３はそれぞれ、蓄積サーバ・エイジェント１２１−１２３を有し、ネットワークのプロセッサは全て管理ユーザインタフェイス１３１を備えて、それらを作動させることができる。制御サービスソフトウェア１１３はネットワークに接続され、蓄積サーバ５０からサービスを要求するクライアントの集合体としてシステムを見ている。各ファイルサーバ４１−４３は、蓄積サーバ・プロセッサ５１と常在する蓄積サーバ・エイジェント・ソフトウェア１２１−１２３を介して交信する。かくして、データ管理システムソフトウェアはネットワーク全体に分布し、ネットワークに接続されている全ての要素がデータ蓄積階層に透過的に統合できるように作用する。
蓄積サーバ・エイジェント１２１−１２３は、ローカルエリア・ネットワーク１の中の各ファイルサーバ４１−４３にインストールされた部品を表しており、移動させられたデータファイルに対し、その要求されるデータファイルが元々入っていた容器であるファイルサーバ４１−４３から蓄積サーバ５０への転送要求を指示する機能を有している。蓄積サーバ・エイジェント１２１−１２３は、ファイルサーバ４１−４３から蓄積サーバ・プロセッサ５１と第２次蓄積５２に対してデータファイルへのアクセスを指示するよう要求があった場合には、その要求に係るどのようなインタフェイスでもそれを提供する。使用者に対してインタフェイスをするプロセッサ２１、２２、４２の場合は、蓄積サーバ５０が要求されたデータファイルへアクセスするには時間が掛かることを使用者に伝える。このように、蓄積サーバ・エイジェント１２１−１２３は、現行のクライアント・ファイルサーバ・プラットホームや環境に適応できる特性を備えている。例えば、ファイルサーバがデータベース管理サーバである場合に、蓄積サーバ・エイジェントはデータベース管理システム・オブジェクトマネジャとのインタフェイスとして作用し、サブファイルと見なせるデータベース・オブジェクトの移動、呼び出しを自動的に行わせる。別の例としては、ファイルサーバにおいてあらゆるＮｅｔＷａｒｅ（登録商標）支援ファイルシステム呼び出しを捕捉するＮｅｔＷａｒｅ（登録商標）ファイルシステム・アクセスマネジャがある。これもまた、指名されるべき、移動されたデータファイルの自動呼び出しを可能にする。
これらの基本的要素を使えば、ローカルエリア・ネットワーク１には多くのバリエーションの構成が可能になり、それらには複数のプロセッサ２１、２２及び複数のファイルサーバ４１−４３があって、それぞれにデータ蓄積装置３１−３３が付設される。蓄積サーバ・ソフトウェアが作動するプロセッサ５１には、ローカルエリア・ネットワーク１のデータ通信リンク１１への物理的なインタフェイスも含まれる。
リアルタイム・ネットワーク蓄積空きスペース管理
図９は第１次蓄積における典型的なネットワーク・ボリュームのボリューム空きスペース利用度を時系列的に示した図である。この図から判るように、ネットワーク・ボリューム空きスペース利用度のレベルは、本発明のデータ蓄積管理システムの活動度の関数として時間的に変化する。管理されていないネットワーク・ボリュームでは、増加する空きスペースを単純に利用してしまう。配列されたネットワーク・ボリュームが過剰に使われても、以前であれば使用者は人手によって十分なデータファイルをネットワーク・ボリュームから取り出して、プロセッサが使用できるようにデータ蓄積に適当な空きスペースを確保していた。図９のチャートには、予め定められた幾つかの空きスペース利用のレベルが示されている。これらのレベルには、「危険」、「許可可能」、「最適」と記されている。データ蓄積管理システムは、配列された空きスペース利用のレベルの関数として、階層になったデータ蓄積管理のアプリケーションの中の様々な処理を起動させる。曲線の様々なピークには、ボリューム空きスペース利用を減らすためにそのときに起動する処理操作の名称が付けられている。
例えば、「掃引」は定期的に起動されるデータ蓄積空きスペース管理の処理操作である。掃引処理操作は一般的には毎日所定の時間に起動され、図９で配列ボリュームの利用が最適と示したレベル以下に減少するように作動するのである。掃引処理操作によって、優先度の低いデータファイルをネットワーク・ボリュームから第２次蓄積５２の媒体へ移し、ネットワーク１に接続されている様々なプロセッサ２１、２２の使用者が起動したとき、ネットワーク・ボリューム上に適切な量のデータ蓄積の空きスペースを何時でも確実に得られるようにするのである。空きスペース管理処理は、複数の同時に実行される空きスペース管理規則を含んでいてもよい。従って、移動に当ってデータファイルは、最後のアクセスの時刻、サイズ、ネットワーク・ボリューム上で入手できるデータ蓄積空きスペースの量の関数として選択されるのである。管理規則によって、特定のネットワーク・ボリュームから第２次蓄積５２に対して要求されている最適なレベル以上に、より多くのデータファイルを移動できれば、これらの不必要なデータファイルは第２次蓄積５２に「事前移動」しておく。データファイルを事前移動することは、必然的にデータファイルを第２次蓄積５２に移すことも伴うが、それはネットワーク・ボリュームからデータファイルを消去（切り詰め）することを意味するものではない。事前移動されたデータファイルは、ファイルシステム・ディレクトリにおいて事前移動と印を付けて、データファイルがネットワーク・ボリュームと第２次蓄積５２に存在していることを示すのである。
更に、ネットワーク・ボリュームの中はいつでも、拡大されたデータファイルや、データファイルのコピーそして新たに作り出されたデータファイル等で一杯になりがちである。階層データ蓄積管理アプリケーションの空きスペース・タスクは、常時、配列ボリューム空きスペースの利用状況をチェックしている。掃引処理操作の間隔内で、ボリュームの利用が閾値を越えると、空きスペース・タスクが空きスペース管理処理を起動して、ボリューム空きスペース利用を２番目に低い閾値まで減少させる。例えば、ボリューム利用のレベルが許容可能レベルと危険レベルの間にあるときは、空きスペース・タスクは事前移動したデータファイルを、ボリューム利用のレベルが許容可能レベル以下になるまで切り詰めてゆくのである。従って、データファイルの事前移動によって、ボリューム利用レベルが過剰になっても、直ちにデータ蓄積管理システムがデータ蓄積の空きスペースに追加することができる。同様に、ボリューム利用レベルが危険レベルを越えると、危険移動ジョブが直ちに実行されるようになっており、許容可能レベルになるまで優先度の低いデータファイルを第２次蓄積に移動するように機能する。データファイル移動処理は、様々に構成されて空きスペース管理タスクに追随できるようになっている。特に、掃引処理は通常ネットワークの活動度が最も低い間に起動させるので、空きスペース管理の要求に合うように掃引処理のレベルを制御しながら、バックグランド処理としての掃引処理を連続して稼働させることができる。従って、掃引処理には「加速」機能も存在する。更に、掃引操作は要求による移動処理或いは危険移動処理が完了したときに起動して、ボリューム利用レベルを最適レベルにすることができる。システムはマルチプロセス・システムなので、掃引操作はまたデータファイル呼び出し操作と同時に作動させることができる。
定常的掃引処理
図５はデータファイル移動処理に使われる様々な経路を示し、図６はデータ蓄積管理アプリケーションが定常の掃引処理で実行するステップをフロー図の形式で示している。毎晩所定時刻などに定常的に起動される掃引処理である。図１０に示すように、各クライアント・アプリケーション・プログラム（ＤＯＳ  （登録商標）、Ｗｉｎｄｏｗｓ（商標）、ＮｅｔＷａｒｅ（登録商標）  Ｆｉｌｅ  Ｓｅｒｖｅｒなど）には、蓄積サービス・エイジェント・モジュール１２１−１２３が与えられ、これらは、その下のクライアント・プラットフォームに合致するように作られている。更に、管理ユーザーインタフェイス１３１が与えられ、そこには蓄積・マネジャ、媒体マネジャ、装置マネジャ、バックアップ・マネジャのソフトウェア・モジュールが備えられている。蓄積マネジャは一般的なジョブ、コンフィギュレーション、セットアップ及びシステム情報監視機能を提供する。媒体マネジャはコピー媒体や復旧媒体などの媒体特有の処理を受け持つ。装置マネジャは装置の追加、削除などの装置特有の処理をする。バックアップ・マネジャはバックアップセットの数の決定、交替の決定及びデータファイルの重要性選択などのバックアップ処理を指示する。様々なモジュールの数と機能は、設計上の選択の問題であり、ここでは本発明を説明するために注釈を付けるにとどめる。
所定の時間にステップ６０１で掃引処理が作動すると、ステップ６０２で蓄積サーバ・プロセッサ５１の処理カーネル５０１がネットワーク・インタフェイス５０２、データ通信リンク１１及びネットワーク・インタフェイス５０３を介して、ファイルサーバ４１のファイルシステム・マネジャ５２１に対応してメモリに蓄積されているデータファイル・ディレクトリ５１１にアクセスする。ファイルサーバ５１の部分であるデータ蓄積装置３１に蓄積されている全てのネットワーク・ボリュームの内容がディレクトリ５１１にはリストアップされている。ファイルシステム・マネジャ５２１は通常、データファイル、その蓄積位置及びアトリビュートをリストアップしているディレクトリ５１１を管理する。ステップ６０３で、処理カーネル５０１は各管理されているネットワーク・ボリュームにある全てのデータファイルを所定の方法に従って、少なくとも最近使用したリストのように優先度の高いリストを要求する。そのリストの最下欄にエントリされたファイルが今回の移動候補のセットであることを表している。移動候補はデータファイル・アトリビュートの数を基にして選択され、それによって管理候補のセットはこの管理されたネットワーク・ボリュームのために必要な空きスペース対象を充たすために十分なデータ蓄積の空きスペースを提供する。更に、これらの管理候補は最短の非活動期間よりも長い期間非活動的であったのである。
ステップ６０４で蓄積サーバ５０の装置マネジャ５０４は、処理カーネル５０１によって起動され、ステップ６０５で特定の管理されたネットワーク・ボリュームから移動候補を掃引し、それらを送信して合体させ、第２次蓄積５２の最上層３１１の中で転送ユニットに構成する。図５は移されるデータファイルのデータ蓄積管理システムを通る経路を示している。特に、移動データファイル候補は処理カーネル５０１が選択して、ネットワーク・インタフェイス５０３、ネットワーク１のデータ通信リンク１１及びネットワーク・インタフェイス５０２を介して蓄積サーバ５０に送信し、データファイルが正しく転送されたことをチェックした後に、データ蓄積装置３１の管理されたボリュームから取り除かれる。このようにして蓄積サーバ５０は、転送されたデータファイルとその他のデータファイルを含む転送ユニットを第２次蓄積５２のレベル１（３１１）に書き込む。
プロセッサ２１がデータファイルを書き込んだネットワーク・ボリュームのディレクトリ５１１に、データファイルはリストアップされる。ステップ６０６でこのディレクトリ・リストは、処理カーネル５０１によって修正され、データファイルがネットワーク・ボリュームの中の管理されたボリュームにあろうと、第２次蓄積５２のボリュームにあろうと、プロセッサ２１によるデータファイルの取得を可能にする。この仕事は、処理カーネル５０１が管理されたボリュームのディレクトリ５１１にある「位置エントリ」を提供することによって成し遂げられる。このエントリは「０」の量を持つようなデータファイルをリストアップし、データはディレクトリ・アトリビュート或いはカタログ・エントリを指示するデータファイルのためのメタデータ領域に与えられ、ステップ６０７で移動されたデータファイルを含む第２次蓄積５２の蓄積位置をリストアップしている第２次蓄積ディレクトリ５３１において、システムサービス５０５によって作り出される。第２次蓄積５２にある特定のデータファイルの位置に関するディレクトリは、ネットワーク・ボリューム自身の中で維持管理される。このことは、蓄積サーバ５０の処理カーネル５０１とシステムサービス５０５によってファイルサーバ４１の中で維持管理されている第２次蓄積ディレクトリ５３１を使って成し遂げられる。ディレクトリ５１１と第２次蓄積ディレクトリ５３１は、いずれもファイルサーバ４１のデータ蓄積装置３１に書き込まれる。
キーをデータファイル・アトリビュートの部分として蓄積すれば、要求されたデータファイルの第２次蓄積ディレクトリ・エントリを表す際に、位置エントリにキー又はポインタが使えるようになる。これによって、位置エントリと第２次蓄積ディレクトリの両方が要求しているプロセッサの１部分にデータファイルをリネームする機能が残る。一般的に、ファイルシステムはデータファイルをリネームするが、キーがファイル名の１部である場合はリネームの際に消去されてしまう。しかしながら、データファイル・アトリビュートはデータファイル・リネームの１部分として残る。データファイルをリネームすると、このデータファイルに付けられていた名称は修正され、ネットワーク・ディレクトリのエントリはファイルシステム第１次蓄積ディレクトリの他の部分に突然移される。データファイル・アトリビュートは、新たなデータファイル名が付けられて修正されない形で移送され、位置はデータファイル・アトリビュートの部分なので、新たに名称を付けられたデータファイル・アトリビュートは、今なお、正しい第２次蓄積ディレクトリ・エントリを指示しており、従ってリネームされたものは自動的に第２次蓄積ディレクトリに転送される。従って、ファイルシステムの仮想セグメントは、自動的にファイルシステムの第１次セグメントにあるデータファイルのリネームを追跡するのである。
移されたデータファイルは蓄積サーバ５０によって受け取られ、第２次蓄積５２のレベル１３１１の中にあって、データ蓄積装置６１の移動ボリュームにある特定のデータ蓄積空きスペースに書き込まれる。更に、シャドウ・ボリューム６５がデータの信頼性のために第２次蓄積５２に与えられていれば、ステップ６０８で移されたデータファイルはシャドウ・ボリューム６５の１つにある特定のデータ蓄積空きスペースにも書き込まれる。また、シャドウ・ボリューム６５に蓄積されているデータファイルのグループは、ステップ６０９で周期的な掃引処理の後に特別なバックアップ駆動装置７１を介してバックアップ媒体要素７２に定期的に緩衝領域を取り、確実に事故回復ができるようにする。階層の中のデータファイルを更に効率的に管理するために、処理カーネル５０１は複数のデータファイルをまとめて所定の大きさの転送ユニットに構成し、階層のより下層レベルに連続して移動させることができる。転送ユニットの候補となるサイズは、第２次蓄積の第１層３１１を成すのに使用されている媒体にとっては標準の対象サイズである。第２次蓄積で使われる転送ユニットは、フラグメンテーションを最小にして全ての媒体に適合させることが望ましい。
移動ボリューム６１とシャドウ・ボリューム６５に書き込まれたデータファイルは、蓄積サーバ５０が持っている第２次蓄積ディレクトリに書き込まれたそれらの物理的蓄積配置識別データを持っている。このディレクトリは蓄積サーバ５０の中に全て入れることもできるが、そのようにするとかなりの量のデータ蓄積空きスペースを占めてしまい保護するのが困難になる。代りに、プロセッサ２１、２２のための管理されたボリューム３１−３３を含むファイルサーバ４１−４３全体にこのディレクトリを分散させるのが、それぞれのディレクトリの断片には第１次蓄積装置３１−３３上の管理されたボリュームのための第２次蓄積ディレクトリ５３１を表示させる。ファイルサーバ４１−４３の位置エントリは、第２次蓄積ディレクトリ５３１の中のこのディレクトリ・エントリを指示している。従って、この移されたデータファイルへのアクセスを要求したプロセッサ２１は、第２次蓄積の存在には気付かなくても要求したデータファイルを得ることができるのである。これは蓄積サービス・エイジェント１２１によって成し遂げられる（下記に詳述する）のであって、このエイジェントはファイルサーバ・ディレクトリ５１１から位置エントリを得て、このディレクトリが第２次蓄積ディレクトリ５３１の中のディレクトリ・エントリを指示する。第２次蓄積ディレクトリ５３１の中の識別されたディレクトリ・エントリは、要求したデータファイルを収めた移動ボリューム中でアドレスを有することになる。
このデータファイルの移動処理は、第２次蓄積５２の中の階層データ蓄積の各層に対しても同様に行われる。従って、第２次蓄積５２の各層が所定の閾値以上に使用されると、データファイルはデータ蓄積階層の次の下の層へ再配置される。
ここに示す蓄積サーバ５０の処理カーネル５０１、装置マネジャ５０４及びシステムサービス５０５への特別な区分けは、蓄積サーバ５０が持つ多くの実現可能な機能の１つに過ぎない。これらの要素による他の責任分担や、他の要素との組合わせも、ここに述べている実施態様の考え方から外れることなく実現可能であることが予想される。
ファイルシステム
データ管理システムは、クライアント・ファイルサーバ４１−４３の潜在的に展開可能なファイルシステムのために通常の容器を提供するファイルシステム構造を利用している。データ管理システムのファイルシステム構造は、ファイルサーバ４１−４３からデータファイルを受け取るだけではなく、データ管理システムにおいては固有のバックエンド・データ蓄積、データ呼び出し、データ・バックアップ、データ再配置及び事故回復機能も果たさなければならないが、これらの機能を発揮するために媒体は広範囲に変化する。この媒体は磁気ディスクのように「適切に更新」される媒体であるか、或いは磁気テープのように「追加」機能さえ持っていればよいのである。一般的には、データファイル転送は範囲が広く、データバックアップ及びデータの再配置処理は効率的でなければならない。典型的なファイルシステム・アーキテクチャは良く知られたＤＯＳのファイルシステムであるが、図１３にこのアーキテクチャを示す。このファイルシステムは４つの基本的な部分を持っている：
１．ファイルの名称付与方法。
２．データファイル位置を容易に特定できるように、それらを組織化するディレクトリ・アーキテクチャ。
３．データファイル名をデータ蓄積媒体上の物理的位置に関連付けて、データ蓄積空きスペースを利用できるようにし、データファイルが消去されても再請求できる物理的空きスペース配置方法。
４．アクセス方法を含むファイル管理方法。
例えば、ＤＯＳデータファイルは、１−８バイトのファイル名と０−３バイトの拡張子で「．」で区切って名前を付ける（ｎｎｎｎｎｎｎｎ．ｘｘｘ）。図１３に示したディレクトリ・アーキテクチャはディレクトリ名の階層ツリーの形をしている。ルートは一般的にはボリュームを意味し、ここから多数のディレクトリが枝分かれする。各ディレクトリは別のディレクトリ及び／又はデータファイルを含んでいる。データファイルのフルネームは、ディレクトリのツリー構造のルートから特定のデータファイルまでの全ての部分を連結したもので表し、各部分の間は「＼」で区切る。この方法を使うとデータファイルの名前は、「＼ｖｏｌ＼ｄｉｒ１＼ｄｉｒ３＼ファイル名．拡張子」のようになる。ファイルサーバ上の各ＤＯＳボリュームは、固有のファイルシステムを持っている。データ蓄積媒体上の物理的空きスペースの位置は、ファイル配置表（ＦＡＴ）を使って決められる。ＤＯＳボリューム上のデータ蓄積空きスペースは、クラスタと称する配置ユニットに分割される。ボリュームに収められた全てのディレクトリとデータファイル名はファイル配置表にリストアップされており、ディレクトリ・ツリーの中で親と子の繋がりをもって階層的に関連付けられる。データファイル名がファイル配置表に入ると、隠されている或いは読出し専用などのデータファイル・アトリビュートに対してスペースが与えられ、更にデータファイルを蓄積するために使用する第１クラスタの識別データも記録される。このデータファイルを蓄積するために更にクラスタを要求された時は、これらのクラスタをポインタを介して鎖状にリンクさせ、できた全部の鎖でデータ蓄積媒体上のデータファイルの物理的位置を表す。
転送ユニット
本発明のデータ管理システムは、異なったディレクトリ構造を使って第２次蓄積５２のデータ蓄積媒体におけるデータファイルの蓄積を管理する。第２次蓄積５２の様々な層にわたってデータファイルを蓄積し、再配置する場合に、転送ユニットを使うと作業は簡単になる。転送ユニットは仮想ファイルシステム・オブジェクト（例えばデータファイル）を含む所定サイズのデータのブロックであって、それらはバックアップシステムまで、そして階層を通じて共に移動し、各転送ユニットにはデータ管理システムの中で固有の識別データが割り当てられている。
上記のように、蓄積サーバ・プロセッサ５１の処理カーネル５０１は所定のアルゴリズムに従ってファイルシステム４１−４３において管理されているボリュームそれぞれに収められたデータファイルに順序付けする。この順序付けはデータファイルの利用度、内容、緊急度、サイズ或いは別の選定基準に基づいてもよい。順序付けを、簡単なＬＲＵ法で説明する。処理カーネル５０１が管理されたボリュームのそれぞれのデータファイルをＬＲＵ法に基づいて順序付けすると、リストの最下位のエントリが移動の候補を表すことになる。処理カーネル５０１は管理されているボリュームから移動候補のデータファイルを定期的に掃引し、管理されているボリューム毎にそれらを順番に組み立てて複数のデータファイルを含む転送ユニットを構成する。データファイルのフルネームがデータファイルの位置情報即ち、転送ユニット中のデータファイルの位置、転送ユニット識別データ、媒体オブジェト識別データと共に第２次蓄積ディレクトリ５３１に入れられる。データファイル名は常に元の転送ユニット識別データと論理的に関連付けられ、データファイルが別の転送ユニットに移動させられることはなく、第２次蓄積５２へ移される際に、各仮想ファイルシステムから移動し一時的に関連付けられた他のデータファイルと共にその転送ユニットの中に留められる。媒体オブジェクト自身はデータファイルではなく転送ユニットと関連付けられる。この方法においては、１つのディレクトリはデータファイルと転送ユニットとの間の対応を記録するために使われ、第２のディレクトリは転送ユニットと媒体オブジェクトとの間の対応を記録するために使われる。転送ユニットが１つの媒体から別の媒体に移されるときは、データファイルは元の転送ユニットに留まっており、記録されるべき媒体上の転送ユニットの位置が単に変わるだけなので、データファイル・ディレクトリを更新する必要はないのである。
蓄積サーバ・プロセッサ５１は、所定の時間内に転送ユニットを完全に埋めるだけの十分なデータファイルを取り込んでいないことがある。蓄積サーバ・プロセッサ５１は所定の期間が経過すると、第２次蓄積５２とバックアップ媒体７２に部分的な転送ユニットを書き込む。ファイルサーバから追加して移動されたデータファイルを受け取ったならば、蓄積サーバ・プロセッサ５１は部分的にしか充たされていない転送ユニットを、この部分的にしか充たされていない転送ユニットに含まれていた全てのデータファイルを含む充たされた転送ユニットで上書きする。蓄積サーバ・プロセッサ５１は部分的に埋められている転送ユニットを追跡するのである。移されたデータファイルはバックアップ媒体に、周期的かつ適時に書き込まれるので、部分的な転送ユニット書き込み処理を利用するとウインドウの動作が安定する。
このファイルシステムは、データ蓄積の論理的配置と物理的な蓄積配置とを分離するが、データファイルはその固有の転送ユニットに留まっているので、データ蓄積階層の全ての層に対する論理的配置は同じになる。このシステムの特質すべき利点の１つは、転送ユニットがその階層の層から層へと移されるとき、或いはバックアップ媒体上におかれたときに、転送ユニット識別データと媒体オブジェクトの間の関係のみを更新すれば、この転送ユニットが蓄積された新たな媒体を知ることが出来る点にある。更に、データファイルはバックアップシステムにおいても転送ユニットに対する関係を維持しており、バックアップ媒体は、同じ転送ユニット識別データに対しては単に余分な媒体オブジェクトを与えるだけである。それから、転送ユニットは、第２次蓄積５２の第１層３１１に書き込まれる。この処理によって、データ蓄積階層の１つの層からデータ蓄積階層の下層にある次の層へ転送ユニットを再配置する。図１１のブロック図は、転送ユニットが入れ子状になっていることを示している。従って、第１次蓄積から移されたデータファイルの転送ユニットは、第１の大きさのデータブロックを表している。階層データ蓄積の第１層から第２層へデータファイルを再配置するために組み立てられた第２層の転送ユニットは、第１層にある複数の転送ユニットから構成することができる。同様に、この処理はデータ蓄積階層の引き続く層に対しても適用できる。図１１は３層からなる第２次蓄積におけるデータ蓄積階層の最下層に書き込まれたデータの流れの終始を示しており、この第２次蓄積は順番に並べられた第２層の複数の転送ユニットから成り、第２層のそれぞれの転送ユニットは第１層の複数の転送ユニットから成っている。
代りの形のファイルシステムを図１２に示しているが、ここでは物理的配置システムは特定の媒体の型及び階層の層の上にかぶせられている。データ蓄積階層の各層の媒体は、このアプローチに対してはチャンクと称される所定の最大サイズまで様々なサイズの転送ユニットに配置される。下の物理的空きスペース配置管理が許せば、チャンクは要求に応じて小さくなったり大きくなったりすることを始める。そうでない場合でも、チャンクは固定サイズのブロックに予め配置されており、必要に応じて充たされる。特定のネットワーク・ボリュームからのデータファイルだけがデータ蓄積階層の各層にある選択されたチャンク或いは複数のチャンク（チャンクの集合）に蓄積される。従って、所定の層にあるチャンクの集合は、その層に蓄積されている仮想ファイルシステムの部分を表している。図１２のブロック図はチャンクが入れ子状態になっていることを示している。従って、第１次蓄積からのデータファイルのチャンクは、第１の大きさのデータブロックを表しており、このブロックは単一のネットワーク・ボリュームだけからのデータファイルを含んでいる。階層データ蓄積の第１層から第２層へデータファイルを再配置するために組み立てられた第２層のチャンクは、複数の第１層チャンクからなっている筈である。同様に、この処理はデータ蓄積階層の引き続く層にも適用できる。図１２は３層からなる第２次蓄積におけるデータ蓄積階層の最下層に書き込まれたデータの流れの終始を示したもので、この第２次蓄積は順番に並べられた第２層の複数のチャンクから成り、第２層のそれぞれのチャンクは第１層の複数のチャンクから成っている。
階層の中の層の再構成
階層の層の数と構成は、使用者のニーズに合わせて動的に変えることができる。追加層を階層に加えることもできるし、そこから消去することもできる。更に、選択された層にデータ蓄積装置を設置したり、取り外したりして、階層のどのように選択された層に対してもデータ蓄積容量を追加したり削除したりすることができる。データ蓄積管理システムは、最高の性能と信頼性を得るために適宜そのような階層の修正に応ずることができる。バックアップ駆動装置８１と取り付け可能バックアップデータ蓄積要素８２を装備したシェルフ層は、層を追加しない場合は第２次蓄積の第１層３１１に対して、また複数の層を与える場合は最下層３１３に対してオーバーフロー機能を与える。従って、階層の最下層にデータ蓄積の空きスペースがなくなると、転送ユニット或いは媒体ユニットがこの層から除去される。データ蓄積装置の追加という形でデータ蓄積容量をこの層に追加し、或いはこれまで媒体の最下層であった層の下に媒体の層を追加すると、消去された転送ユニット或いは媒体ユニットは、取り付け可能なバックアップ・データ蓄積要素８２からその階層に戻って来ることができる。この作業は蓄積サーバ５１が、階層の最下層に利用可能なデータ蓄積の空きスペースを新たに追加し、以前に消去された転送ユニット或いは媒体ユニットが存在したことを記録することによって可能になるのである。蓄積サーバ５１は媒体オブジェクト・ディレクトリにアクセスして、消去されたデータの位置を認識し、バックアップ駆動装置８１に取り付けられた装着可能なバックアップ・データ蓄積要素８２からこのデータを検索する。そして、この検索されたデータは、利用可能なデータ蓄積の空きスペースの新たに追加された媒体に書き込まれる。データ蓄積装置が媒体の層から取り除かれたり、媒体の層に追加されたりする際にこの処理は起動される。この媒体の変更が最下層以外のどこかで起こったならば、消去された転送ユニット或いは媒体オブジェクトは取り付け可能なバックアップ・データ蓄積要素８２から検索され、データ蓄積装置が取り除かれた層のレベルの直ぐ下層の媒体レベルに蓄積される。
データファイルの呼び戻し
図８が示すフロー図や図７のシステム・アーキテクチャを参照すると、データファイルの呼び戻し動作は実質的にデータファイル移動とは逆向きになっている。上記のように、移動ボリューム６１とシャドウ・ボリューム６５に書き込まれたデータファイルは、ファイルサーバ４１の第２次蓄積ディレクトリ５３１に書かれている物理的蓄積位置識別データを持っている。ファイルサーバ４１にあるディレクトリ５１１の位置エントリは、この第２次蓄積ディレクトリ・エントリを指示している。従って、ステップ８０１でプロセッサ２１がこの移されたデータファイルへのアクセス要求を出し、その要求はステップ８０２で、ファイルサーバ４１にあるトラップ或いはインタフェイス７１１によって傍受される。このトラップは蓄積サーバ・エージェント１２１への処理を分岐させるために、ファイルシステム４１の中でフックを使ってもよいし、蓄積サーバ・エージェント１２１のファイルシステム４１への登録やデータファイル要求をプロセッサ２１から受け取る際に呼ばれるようにするための呼び戻しルーチンを設けてもよい。何れの場合でも、傍受された要求が蓄積サーバ・エージェント１２１に送られて、要求されたデータファイルが第２次蓄積５２に移されているかどうかを判定する。このことは、ステップ８０３で蓄積サーバ・エージェント１２１がディレクトリ５１１を読み、要求されたデータファイルの位置を判定することで成し遂げられる。ステップ８０５で位置エントリがディレクトリ５１１の中に見つからなければ、ステップ８０６において制御はファイルサーバ４１に戻され、要求されているデータファイルを探すためにファイルサーバ４１がディレクトリ５１１に蓄積されているディレクトリ・エントリを読めるようにする。このディレクトリ・エントリに蓄積されているデータによって、ファイルサーバ４１が要求されたデータファイルのあるデータ蓄積装置３１から要求されたデータファイルを検索することができる。ステップ８０５で蓄積サーバ・エージェント１２１が、位置エントリの存在を知って、要求されたデータファイルが第２次蓄積５２に移されていると判定すると、ステップ８０７で蓄積サーバ・エージェント１２はデータファイル呼び戻し要求を起こし、この要求を位置エントリの中に蓄積されているダイレクトアクセス第２次蓄積ポインタ・キーと共にネットワーク１経由で蓄積サーバ５０へ送信する。ステップ８０８で、処理カーネル５０１は、第２次蓄積ディレクトリ５３１の中のエントリを直接検索できるポインタ・キーを使ったシステムサービス５０５を利用する。この第２次蓄積ディレクトリ５３１の識別されたエントリには、要求されているデータファイルを含む移動ボリュームの中のアドレスが含まれている。このアドレスは転送ユニット識別データと転送ユニット中のデータファイルの位置から成っている。装置マネジャ５０４はデータファイル・アドレス情報を使って、要求されているデータファイルをそれが蓄積されているデータ蓄積装置から呼び戻すのである。このデータ蓄積装置はそのデータファイルの活動レベルの関数としての階層中のどのレベルに存在してもよい。装置マネジャ５０４は第２次蓄積ディレクトリ５３１で識別されたデータ蓄積装置の中の蓄積位置からデータファイルを読み出して、検索したデータファイルをネットワーク１に提示し、当初要求されたデータファイルを有していたファイルサーバ４１とボリューム３１に送信させる。そして、処理カーネル５０１のシステムサービス５０５は、第２次蓄積ディレクトリ５３１とディレクトリ５１１を更新し、データファイルがネットワーク・ボリュームに呼び戻されていることを表示するようにする。ステップ８１１で制御はファイルサーバ４１に戻り、そこでディレクトリ５１１を読んで要求されたデータファイルの位置を認識する。ここにおいて、ディレクトリ５１１はこの呼び戻されたデータファイルのデータ蓄積装置３１上の現在位置を示す情報を得ることになる。そして、プロセッサ２１はファイルサーバ４１を介して呼び戻されたデータファイルに直接アクセスすることができるのである。
事故回復
本発明のデータ管理システムにおいてはデータファイルを保全するために数多くの技術が使われる。また一般的には、第１次蓄積バックアップがデータファイルを各ネットワーク・ボリュームからバックアップ装置（図示せず）に流すようにしている。データ管理システムの中では、ネットワーク・ボリュームからの混ざり合ったデータファイルの流れを掃引ルーチンが作り出しているが、このデータが第２次蓄積５２の第１層にあるデータ蓄積媒体上の転送ユニットに書き込まれるだけでなく、同時に第２次蓄積５２の第１層のデータ蓄積媒体からバックアップ装置７１上のバックアップ媒体７２へと書き込まれるのである。更に、このデータはシャドウ・ボリューム６５にも複製される。バックアップ処理は第２次蓄積の第１層に書き込まれる転送ユニットを、たとえ転送ユニットが部分的にしか充たされていなくても、定期的にバックアップしている。バックアップ媒体７２が交替してオフサイトに出ていても、それら多数のバックアップ媒体７２は、完了段階の異なった様々な転送ユニットを含むであろう。バックアップ媒体７２がバックアップ装置７１に取り付けられる度に、装置マネジャ５０５は全ての部分的に充たされた転送ユニットをその時点の充填レベルに更新し、バックアップ媒体がシステムの最新状況を確実に反映するようにする。更なるレベルのデータ保護は上記のようにバックアップ・システムによって与えられる。第３層３１上の媒体ユニットが充たされると、この媒体ユニットの内容をバックアップ・テープにコピーし、媒体代替ユニットと称する複製の媒体ユニットを作ってもよい。これによって媒体ユニットの複製コピーが作成され、第３層３１３上に蓄積されている媒体ユニットが故障しても、そこに蓄積されている全てのデータに対して媒体代替ユニットが十分な余裕を与えるのである。一般的に、媒体代替ユニットはオフサイトの貯蔵場所に蓄積され、オンサイトで蓄積されている媒体を破壊したり、損傷を与える可能性のある火災やその他起こりうる事故のために、物理的に隔離されているのである。従って、媒体の故障が発生した場合は、このデータを１つの媒体から別の媒体に流す必要はなく、媒体代替ユニットをシステムの中のライブラリ装置に装着して直ちにデータファイルを提供することができる。
更に、第２次蓄積ディレクトリ５３１はネットワーク・ボリュームに分散しているので、上記のように第１次蓄積バックアップ媒体上にバックアップされる。また、このメタデータは第２次蓄積のデータ蓄積装置に随時複製され、またバックアップ媒体７２にバックアップすることができる。
【図１】
0003786955.tif 000002
【図２】
0003786955.tif 000003
【図３】
0003786955.tif 000004
【図４】
0003786955.tif 000005
【図１０】
0003786955.tif 000006
【図５】
0003786955.tif 000007
【図６】
0003786955.tif 000008
【図７】
0003786955.tif 000009
【図８】
0003786955.tif 000010
【図９】
0003786955.tif 000011
【図１３】
0003786955.tif 000012
【図１１】
0003786955.tif 000013
【図１２】
0003786955.tif 000014