JPH06342392A - ファイル配置方法 - Google Patents
ファイル配置方法Info
- Publication number
- JPH06342392A JPH06342392A JP3351740A JP35174091A JPH06342392A JP H06342392 A JPH06342392 A JP H06342392A JP 3351740 A JP3351740 A JP 3351740A JP 35174091 A JP35174091 A JP 35174091A JP H06342392 A JPH06342392 A JP H06342392A
- Authority
- JP
- Japan
- Prior art keywords
- file
- memory
- computer
- index
- stored
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9014—Indexing; Data structures therefor; Storage structures hash tables
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9017—Indexing; Data structures therefor; Storage structures using directory or table look-up
- G06F16/902—Indexing; Data structures therefor; Storage structures using directory or table look-up using more than one table in sequence, i.e. systems with three or more layers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99953—Recoverability
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99951—File or database maintenance
- Y10S707/99952—Coherency, e.g. same view to multiple users
- Y10S707/99955—Archiving or backup
Abstract
(57)【要約】
【目的】 バックアップメモリ中でファイルを効率よく
配置する方法を提供する。 【構成】 本発明のファイル配置方法においては、ファ
イルを識別する階層的パス名を形成している構成要素の
各々が最少のバイト数を用いて唯一つのアイデンティテ
ィに変換され、バックアップメモリ中のファイルの位置
が前記階層的パス名を構成している各々の構成要素の名
前ではなく前記アイデンティティの各々の関数として決
定される。
配置する方法を提供する。 【構成】 本発明のファイル配置方法においては、ファ
イルを識別する階層的パス名を形成している構成要素の
各々が最少のバイト数を用いて唯一つのアイデンティテ
ィに変換され、バックアップメモリ中のファイルの位置
が前記階層的パス名を構成している各々の構成要素の名
前ではなく前記アイデンティティの各々の関数として決
定される。
Description
【0001】
【産業上の利用分野】本発明はバックアップメモリにお
けるコンピュータファイルのアーカイビングに関し、特
にバックアップメモリ中にアーカイブされたメモリを配
置するためのメモリインデクシング装置に関する。
けるコンピュータファイルのアーカイビングに関し、特
にバックアップメモリ中にアーカイブされたメモリを配
置するためのメモリインデクシング装置に関する。
【0002】
【従来の技術】コンピュータシステムは、通常、システ
ムファイル及びプログラムのコピーをストアするための
メモリ”バックアップ”装置を有している。このような
システムにおいては、バックアップメモリは磁気テープ
かあるいはディスクメモリである。オペレータは周期的
にバックアップメモリを新たなテープあるいはディスク
に置き換え、バックアップをこの種のテープあるいはデ
ィスクのライブラリにストアする。バックアップメモリ
にストアされた特定のファイルをアクセスするために
は、オペレータはまずそのファイルを含む磁気テープあ
るいはディスクメモリがライブラリ中のどこにおかれて
いるかを見いだし、次いでそのテープあるいはディスク
の内容をバックアップシステムにロードしなければなら
ない。よって、この種の装置は労働集約的である。より
効率的なシステムにおいては、光ディスク等の非常に多
くのバックアップファイルをストア出来る大規模メモリ
を用いており、磁気テープあるいはディスクのライブラ
リを維持する必要は除かれている。後者の装置において
は、ファイルがバックアップメモリにストアされる度
に、バックアップメモリ中のそのストレージ位置及びそ
の名前及びバージョンナンバーがファイル名テーブルに
ストアされる。よって、バックアップメモリ中にストア
されたファイルの位置が、ファイル名テーブルを参照す
ることによって迅速に確認される。
ムファイル及びプログラムのコピーをストアするための
メモリ”バックアップ”装置を有している。このような
システムにおいては、バックアップメモリは磁気テープ
かあるいはディスクメモリである。オペレータは周期的
にバックアップメモリを新たなテープあるいはディスク
に置き換え、バックアップをこの種のテープあるいはデ
ィスクのライブラリにストアする。バックアップメモリ
にストアされた特定のファイルをアクセスするために
は、オペレータはまずそのファイルを含む磁気テープあ
るいはディスクメモリがライブラリ中のどこにおかれて
いるかを見いだし、次いでそのテープあるいはディスク
の内容をバックアップシステムにロードしなければなら
ない。よって、この種の装置は労働集約的である。より
効率的なシステムにおいては、光ディスク等の非常に多
くのバックアップファイルをストア出来る大規模メモリ
を用いており、磁気テープあるいはディスクのライブラ
リを維持する必要は除かれている。後者の装置において
は、ファイルがバックアップメモリにストアされる度
に、バックアップメモリ中のそのストレージ位置及びそ
の名前及びバージョンナンバーがファイル名テーブルに
ストアされる。よって、バックアップメモリ中にストア
されたファイルの位置が、ファイル名テーブルを参照す
ることによって迅速に確認される。
【0003】
【発明が解決しようとする課題】しかしながら、この種
のテーブルを維持するためにバックアップメモリの容量
の10−15%が必要とされる。この理由は、ある時間
が経過すると、ファイル名テーブル中のかなりの数のエ
ントリ(レコード)が同一のファイル名でバージョンナ
ンバーの異なるものを含むことになるからである。よっ
て、相異なった名前の多数のファイルがストアされてこ
れらのファイル名が多くの相異なったバージョンに関す
る場合には、ファイル名テーブルのエントリがバックア
ップメモリのストレージ容量の内のかなりの部分を実際
に消費されることになる。
のテーブルを維持するためにバックアップメモリの容量
の10−15%が必要とされる。この理由は、ある時間
が経過すると、ファイル名テーブル中のかなりの数のエ
ントリ(レコード)が同一のファイル名でバージョンナ
ンバーの異なるものを含むことになるからである。よっ
て、相異なった名前の多数のファイルがストアされてこ
れらのファイル名が多くの相異なったバージョンに関す
る場合には、ファイル名テーブルのエントリがバックア
ップメモリのストレージ容量の内のかなりの部分を実際
に消費されることになる。
【0004】
【課題を解決するための手段】バックアップメモリ中の
ファイル配置技法に関する進歩が、本発明に係る方法に
よって達成される。本発明に係る方法においては、ファ
イルの全てのバージョン、すなわちファイル名及びバー
ジョンナンバー、が唯一つのアイデンティティに関連付
けられており、この唯一つのアイデンティティがバック
アップメモリ中でファイルがストアされている位置を含
むコンパクトなメモリレコードのアドレスに対してマッ
ピングされている。このため、本発明に係る方法におい
ては、バックアップメモリ中にストアされているファイ
ルあるいはプログラムの位置に関するインデックスを維
持するためにバックアップメモリのわずか0.5−1%
の容量しか必要としない。
ファイル配置技法に関する進歩が、本発明に係る方法に
よって達成される。本発明に係る方法においては、ファ
イルの全てのバージョン、すなわちファイル名及びバー
ジョンナンバー、が唯一つのアイデンティティに関連付
けられており、この唯一つのアイデンティティがバック
アップメモリ中でファイルがストアされている位置を含
むコンパクトなメモリレコードのアドレスに対してマッ
ピングされている。このため、本発明に係る方法におい
ては、バックアップメモリ中にストアされているファイ
ルあるいはプログラムの位置に関するインデックスを維
持するためにバックアップメモリのわずか0.5−1%
の容量しか必要としない。
【0005】
【実施例】図1は、本発明に係るアーカイビングシステ
ム100を示した図である。当該システムは、コンピュ
ータ110及びハードウエアディスク115を有してい
る。システム100を駆動するソフトウエアはディスク
115にストアされている。コンピュータ110は、例
えばサン・マイクロシステム社(Sun Micros
ystems、Inc.)から市販されているSPAR
KSTATION1+であり、従来技術に係る方法によ
りデータネットワーク20を介して複数個のコンピュー
タ10−1から10−Nを個々に周期的にポーリングす
る。データネットワーク20は、例えば公知のイーサネ
ット(Ethernet)ネットワークである。コンピ
ュータ110はこのようなポーリングをスケジュールに
基づいて(例えば、毎日、毎週、毎月等)行ない、ポー
リングされたコンピュータ10に関するメモリの内容を
メモリ30−1から30−Pにストアする。この内容
は、通常データ及び/あるいはプログラムよりなる名前
のつけられた複数個のファイルよりなり、例えばディス
クメモリ11−1から11−mのうちの対応するものに
ストアされた40メガバイトから数ギガバイトのオーダ
ーのものである。本発明の一実施例においては、メモリ
30−1から30−Pの各々は、例えばいわゆる再書き
込み可能な光ディスクライブラリユニットであり、これ
は一般に”ジュークボックス”と呼称される。この種
の”ジュークボックス”の一例は、日立製作所(株)製
のモデルOL112−22ユニットであり、このユニッ
トはやはり日立製作所(株)から市販されている644
メガバイトの光ディスクドライバを複数個有している。
コンピュータ10−1から10−Nの各々は、パーソナ
ルコンピュータ、ミニコンピュータあるいはより大きな
メインフレームコンピュータである。さらに、ディスク
ユニット11−1から11−Pの各々は実際には単一あ
るいは複数個のユニットであり、所謂ウインチェスター
型のディスクユニットあるいは他の型のディスクユニッ
トである。よく知られているように前者の型のディスク
ユニットは通常パーソナルコンピュータに関連している
ものであり、後者の型のディスクユニットはより大きな
コンピュータに関連しているものである。
ム100を示した図である。当該システムは、コンピュ
ータ110及びハードウエアディスク115を有してい
る。システム100を駆動するソフトウエアはディスク
115にストアされている。コンピュータ110は、例
えばサン・マイクロシステム社(Sun Micros
ystems、Inc.)から市販されているSPAR
KSTATION1+であり、従来技術に係る方法によ
りデータネットワーク20を介して複数個のコンピュー
タ10−1から10−Nを個々に周期的にポーリングす
る。データネットワーク20は、例えば公知のイーサネ
ット(Ethernet)ネットワークである。コンピ
ュータ110はこのようなポーリングをスケジュールに
基づいて(例えば、毎日、毎週、毎月等)行ない、ポー
リングされたコンピュータ10に関するメモリの内容を
メモリ30−1から30−Pにストアする。この内容
は、通常データ及び/あるいはプログラムよりなる名前
のつけられた複数個のファイルよりなり、例えばディス
クメモリ11−1から11−mのうちの対応するものに
ストアされた40メガバイトから数ギガバイトのオーダ
ーのものである。本発明の一実施例においては、メモリ
30−1から30−Pの各々は、例えばいわゆる再書き
込み可能な光ディスクライブラリユニットであり、これ
は一般に”ジュークボックス”と呼称される。この種
の”ジュークボックス”の一例は、日立製作所(株)製
のモデルOL112−22ユニットであり、このユニッ
トはやはり日立製作所(株)から市販されている644
メガバイトの光ディスクドライバを複数個有している。
コンピュータ10−1から10−Nの各々は、パーソナ
ルコンピュータ、ミニコンピュータあるいはより大きな
メインフレームコンピュータである。さらに、ディスク
ユニット11−1から11−Pの各々は実際には単一あ
るいは複数個のユニットであり、所謂ウインチェスター
型のディスクユニットあるいは他の型のディスクユニッ
トである。よく知られているように前者の型のディスク
ユニットは通常パーソナルコンピュータに関連している
ものであり、後者の型のディスクユニットはより大きな
コンピュータに関連しているものである。
【0006】コンピュータ110がコンピュータ10−
1から10−Nの内の一つ、例えばコンピュータ10−
1、とのアーカイビングセッションにかかると、コンピ
ュータ10−1はそれ自体に関連するディスクユニット
からアーカイブさるべき各々のファイルをアンロード
し、ネットワーク20を介してデータバイトストリーム
の形態でコンピュータ110に供給する。各々のファイ
ルには、なかんずくコンピュータ10の名前、すなわち
コンピュータ10−1、及びそのファイルが渡されてき
たパス名、そのファイルに対してなされた最後の変更が
行なわれた日付、及びそのファイルに係る他の情報を識
別するファイルヘッダが付加されている。
1から10−Nの内の一つ、例えばコンピュータ10−
1、とのアーカイビングセッションにかかると、コンピ
ュータ10−1はそれ自体に関連するディスクユニット
からアーカイブさるべき各々のファイルをアンロード
し、ネットワーク20を介してデータバイトストリーム
の形態でコンピュータ110に供給する。各々のファイ
ルには、なかんずくコンピュータ10の名前、すなわち
コンピュータ10−1、及びそのファイルが渡されてき
たパス名、そのファイルに対してなされた最後の変更が
行なわれた日付、及びそのファイルに係る他の情報を識
別するファイルヘッダが付加されている。
【0007】よく知られているように、コンピュータの
ファイルはディレクトリにグループ分けされ、ディレク
トリは階層ファイルシステムに組織される。ファイルシ
ステムの頂点は、例えばスラッシュ(”/”)によって
定義される所謂ルートディレクトリである。ルートディ
レクトリは通常複数個の標準的なディレクトリ及びファ
イル、例えば/bin、/usr、/dev、/etc
等を含んでいる。これら後者のディレクトリはサブディ
レクトリ及び/あるいはファイルを含んでおり、サブデ
ィレクトリは他のサブディレクトリを含んでいる。よっ
て、ファイルのパス名は階層ファイルシステムにおける
位置を規定している。例えば、ファイルのパス名が/e
tc/servicesである場合には、ファイル”s
ervices”はディレクトリ”etc”内に存在
し、この”etc”はルートディレクトリ”/”のサブ
ディレクトリである。また、パス名が/usr/bin
/servicesである場合には、ファイル”ser
vices”はディレクトリ”/bin”中に存在
し、”bin”はディレクトリ”usr”のサブディレ
クトリであって、”usr”はルートディレクトリ”
/”のサブディレクトリである。
ファイルはディレクトリにグループ分けされ、ディレク
トリは階層ファイルシステムに組織される。ファイルシ
ステムの頂点は、例えばスラッシュ(”/”)によって
定義される所謂ルートディレクトリである。ルートディ
レクトリは通常複数個の標準的なディレクトリ及びファ
イル、例えば/bin、/usr、/dev、/etc
等を含んでいる。これら後者のディレクトリはサブディ
レクトリ及び/あるいはファイルを含んでおり、サブデ
ィレクトリは他のサブディレクトリを含んでいる。よっ
て、ファイルのパス名は階層ファイルシステムにおける
位置を規定している。例えば、ファイルのパス名が/e
tc/servicesである場合には、ファイル”s
ervices”はディレクトリ”etc”内に存在
し、この”etc”はルートディレクトリ”/”のサブ
ディレクトリである。また、パス名が/usr/bin
/servicesである場合には、ファイル”ser
vices”はディレクトリ”/bin”中に存在
し、”bin”はディレクトリ”usr”のサブディレ
クトリであって、”usr”はルートディレクトリ”
/”のサブディレクトリである。
【0008】コンピュータ110はファイル及びそのパ
ス名の受信に応じてアーカイビングメモリ30−1から
30−Pの内の一つ、例えばメモリ30−1、を選択
し、選択されたメモリ宛受信されたバイトストリームを
渡す。(コンピュータ110がメモリ30−1から30
−Pの内から一つのメモリを選択する方法は本発明に直
接関係あるものではないので本明細書においてはふれな
い。コンピュータ110は従来技術に係る方法によりポ
ーリングされたコンピュータ10のアイデンティティ
(名前)をメモリ30の内の一つのアイデンティティ
(アドレス)へマッピングする。)その後、メモリ30
−1はそれ自身に関連しているメモリディスク上の利用
可能なメモリブロックの位置を選択し、コンピュータ1
10から受信したデータバイトを選択されたメモリブロ
ックの位置から連続した位置にストアする。(実際に
は、ファイルをメモリ30−1内にストアするために複
数個のメモリブロックが必要な場合があり、このような
ブロックは相異なった大きさを有していて複数個のメモ
リディスクにわたって配置されている場合がありうる。
このような場合には、複数個のメモリブロックが従来技
術に係る方法により”リンク”されている。)
ス名の受信に応じてアーカイビングメモリ30−1から
30−Pの内の一つ、例えばメモリ30−1、を選択
し、選択されたメモリ宛受信されたバイトストリームを
渡す。(コンピュータ110がメモリ30−1から30
−Pの内から一つのメモリを選択する方法は本発明に直
接関係あるものではないので本明細書においてはふれな
い。コンピュータ110は従来技術に係る方法によりポ
ーリングされたコンピュータ10のアイデンティティ
(名前)をメモリ30の内の一つのアイデンティティ
(アドレス)へマッピングする。)その後、メモリ30
−1はそれ自身に関連しているメモリディスク上の利用
可能なメモリブロックの位置を選択し、コンピュータ1
10から受信したデータバイトを選択されたメモリブロ
ックの位置から連続した位置にストアする。(実際に
は、ファイルをメモリ30−1内にストアするために複
数個のメモリブロックが必要な場合があり、このような
ブロックは相異なった大きさを有していて複数個のメモ
リディスクにわたって配置されている場合がありうる。
このような場合には、複数個のメモリブロックが従来技
術に係る方法により”リンク”されている。)
【0009】さらに、メモリ30−1はコンピュータ1
10に対して、アーカイブされるファイルの最初のバイ
トをストアするために選択されたメモリブロックの最初
の位置のアドレスを規定するメモリポインタを戻す。そ
の後、コンピュータ110はメモリポインタをディスク
115にアーカイブされるファイルと関連させてストア
する。当該ファイルの相異なったバージョンが既にメモ
リ30−1にストアされている場合には、コンピュータ
110は現時点のバージョンに関連する新たなレコード
を作成してこの新たなレコードを従来技術に係る方法に
よりそのファイルの最終すなわち直前のバージョンとリ
ンクする。このようにして、コンピュータ10−1がス
トアされたファイルの特定のバージョンを要求する場合
に当該コンピュータ10−1がなすべきことはネットワ
ーク20を介して要求するファイルのパス名及びそのバ
ージョンナンバーあるいは関連する日付を識別するメッ
セージをコンピュータ110宛送出することだけであ
る。コンピュータ110は、本発明に従って、当該メッ
セージに応答して受信したパス名の各々の構成要素を唯
一つのアイデンティティに変換して各々のアイデンティ
ティを、検索されているファイルがストアされている位
置を規定する前記ポインタを含む関連するレコードがス
トアされているDISK115のメモリ位置にマッピン
グする。
10に対して、アーカイブされるファイルの最初のバイ
トをストアするために選択されたメモリブロックの最初
の位置のアドレスを規定するメモリポインタを戻す。そ
の後、コンピュータ110はメモリポインタをディスク
115にアーカイブされるファイルと関連させてストア
する。当該ファイルの相異なったバージョンが既にメモ
リ30−1にストアされている場合には、コンピュータ
110は現時点のバージョンに関連する新たなレコード
を作成してこの新たなレコードを従来技術に係る方法に
よりそのファイルの最終すなわち直前のバージョンとリ
ンクする。このようにして、コンピュータ10−1がス
トアされたファイルの特定のバージョンを要求する場合
に当該コンピュータ10−1がなすべきことはネットワ
ーク20を介して要求するファイルのパス名及びそのバ
ージョンナンバーあるいは関連する日付を識別するメッ
セージをコンピュータ110宛送出することだけであ
る。コンピュータ110は、本発明に従って、当該メッ
セージに応答して受信したパス名の各々の構成要素を唯
一つのアイデンティティに変換して各々のアイデンティ
ティを、検索されているファイルがストアされている位
置を規定する前記ポインタを含む関連するレコードがス
トアされているDISK115のメモリ位置にマッピン
グする。
【0010】前記レコードが検索されているバージョン
に関連するものではない場合には、コンピュータ110
は検索されているバージョンに関連するレコードに到達
するまで前記リンクされたレコードを辿って行く。検索
されているバージョンに到達した時点でコンピュータ1
10は当該レコードから関連するメモリポインタをアン
ロードし、当該ポインタを適切なインストラクションに
従って検索されているファイルがストアされているメモ
リ30−1から30−Pの内の一つに渡す。検索されて
いるファイルがメモリ30−1にストアされていると仮
定すると、メモリ30−1は前記インストラクションに
応答して受信されたポインタによって識別されるメモリ
ブロックの位置を決定し、コンピュータ110に対して
当該メモリブロックの内容を渡す。(検索されているフ
ァイルが複数個のメモリブロックにわたってストアされ
ている場合には、メモリ30−1はこれらのメモリブロ
ックを順次アンロードしてその内容をコンピュータ11
0に対して渡すことになる。)
に関連するものではない場合には、コンピュータ110
は検索されているバージョンに関連するレコードに到達
するまで前記リンクされたレコードを辿って行く。検索
されているバージョンに到達した時点でコンピュータ1
10は当該レコードから関連するメモリポインタをアン
ロードし、当該ポインタを適切なインストラクションに
従って検索されているファイルがストアされているメモ
リ30−1から30−Pの内の一つに渡す。検索されて
いるファイルがメモリ30−1にストアされていると仮
定すると、メモリ30−1は前記インストラクションに
応答して受信されたポインタによって識別されるメモリ
ブロックの位置を決定し、コンピュータ110に対して
当該メモリブロックの内容を渡す。(検索されているフ
ァイルが複数個のメモリブロックにわたってストアされ
ている場合には、メモリ30−1はこれらのメモリブロ
ックを順次アンロードしてその内容をコンピュータ11
0に対して渡すことになる。)
【0011】その後、コンピュータ110は要求をした
コンピュータ(ここではコンピュータ10−1)に対し
てネットワーク20を介してメモリ30−1から受信し
たファイルの各々のバイトを供給する。
コンピュータ(ここではコンピュータ10−1)に対し
てネットワーク20を介してメモリ30−1から受信し
たファイルの各々のバイトを供給する。
【0012】より詳細に述べれば、コンピュータ110
は、メモリ30−1から30−Pの内の一つに対してス
トアされるあるいはそれからアンロードされるファイル
に係るレコードを配置するあるいは生成するプロセスに
おいて所謂ハッシュテーブル(図2)及びストリングス
ペーステーブル(図3)を用いる。以下の説明において
は、ファイルがメモリ30−1から30−Pの内の一
つ、例えば30−1、にストアされていてそのファイル
のパス名が/etc/servicesであると仮定す
る。さらに、要求を行なったコンピュータがコンピュー
タ10−1であると仮定する。(もちろん、以下の説明
はコンピュータ10の内の各々に対して等しく当てはま
るものであり、さらに相異なったパス名、例えば/us
r/data1、あるいはより長いパス名、例えば/u
sr/etc/bin/services、を有するフ
ァイルに対しても等しく当てはまる。)
は、メモリ30−1から30−Pの内の一つに対してス
トアされるあるいはそれからアンロードされるファイル
に係るレコードを配置するあるいは生成するプロセスに
おいて所謂ハッシュテーブル(図2)及びストリングス
ペーステーブル(図3)を用いる。以下の説明において
は、ファイルがメモリ30−1から30−Pの内の一
つ、例えば30−1、にストアされていてそのファイル
のパス名が/etc/servicesであると仮定す
る。さらに、要求を行なったコンピュータがコンピュー
タ10−1であると仮定する。(もちろん、以下の説明
はコンピュータ10の内の各々に対して等しく当てはま
るものであり、さらに相異なったパス名、例えば/us
r/data1、あるいはより長いパス名、例えば/u
sr/etc/bin/services、を有するフ
ァイルに対しても等しく当てはまる。)
【0013】ファイル、すなわちパス名/etc/se
rvicesを受信すると、コンピュータ110は当該
パス名を当該ファイルがメモリ30−1にストアされた
後にそれを配置するために用いられた前記唯一つのアイ
デンティティへとマッピングする。すなわち、コンピュ
ータ110はまずパス名の各々の構成要素、すなわちe
tc及びservices、を本発明に従って所定数バ
イト−具体的には4バイト−よりなる唯一つのアイデン
ティティに変換する。この唯一つのアイデンティティは
Sインデックスを呼称される。ここでは”etc”及
び”services”に対応するSインデックスはそ
れぞれ310及び205であると仮定する。コンピュー
タ110は、各々のSインデックスを、まずパス名の構
成要素の各々に対して従来技術に係るハッシングアルゴ
リズムを適用してメモリオフセット(すなわちhm=h
ash(”文字列成分”=i))を得ることによって生
成する。ここでは、メモリオフセット32及び10がそ
れぞれ”etc”及び”services”に対してハ
ッシングアルゴリズムを適用することによって得られた
ものと仮定する。(これらの値は以下の説明を簡潔に説
明するように選択されたものであり、前記構成要素に従
来技術に係るハッシングアルゴリズムを適用することに
よって得られた実際のハッシュ値を表わしているのでは
ないことに留意されたい。)
rvicesを受信すると、コンピュータ110は当該
パス名を当該ファイルがメモリ30−1にストアされた
後にそれを配置するために用いられた前記唯一つのアイ
デンティティへとマッピングする。すなわち、コンピュ
ータ110はまずパス名の各々の構成要素、すなわちe
tc及びservices、を本発明に従って所定数バ
イト−具体的には4バイト−よりなる唯一つのアイデン
ティティに変換する。この唯一つのアイデンティティは
Sインデックスを呼称される。ここでは”etc”及
び”services”に対応するSインデックスはそ
れぞれ310及び205であると仮定する。コンピュー
タ110は、各々のSインデックスを、まずパス名の構
成要素の各々に対して従来技術に係るハッシングアルゴ
リズムを適用してメモリオフセット(すなわちhm=h
ash(”文字列成分”=i))を得ることによって生
成する。ここでは、メモリオフセット32及び10がそ
れぞれ”etc”及び”services”に対してハ
ッシングアルゴリズムを適用することによって得られた
ものと仮定する。(これらの値は以下の説明を簡潔に説
明するように選択されたものであり、前記構成要素に従
来技術に係るハッシングアルゴリズムを適用することに
よって得られた実際のハッシュ値を表わしているのでは
ないことに留意されたい。)
【0014】その後、コンピュータ110はハッシュテ
ーブル1からオフセット32によって規定される位置の
内容を読み出す。この値はここでは構成要素”etc”
に対するSインデックス、すなわち図2に示されている
ように310である。その後、コンピュータ110は3
10という値が構成要素”etc”に対するSインデッ
クスであるか否かを確認する。コンピュータ110はこ
のことを”etc”に対するSインデックスの値、すな
わち310、によって規定された文字列テーブル3内の
位置をアクセスすることによって行なう。この位置はこ
の構成要素の名前”etc”を含むはずである。コンピ
ュータ110は、その後、ハッシュテーブル1の位置1
0において示されているように、値205が構成要素”
services”に対するSインデックスであること
を同様に確認する。よって、パス名における構成要素に
対するSインデックスは構成要素を含む文字列テーブル
3におけるメモリ位置である。
ーブル1からオフセット32によって規定される位置の
内容を読み出す。この値はここでは構成要素”etc”
に対するSインデックス、すなわち図2に示されている
ように310である。その後、コンピュータ110は3
10という値が構成要素”etc”に対するSインデッ
クスであるか否かを確認する。コンピュータ110はこ
のことを”etc”に対するSインデックスの値、すな
わち310、によって規定された文字列テーブル3内の
位置をアクセスすることによって行なう。この位置はこ
の構成要素の名前”etc”を含むはずである。コンピ
ュータ110は、その後、ハッシュテーブル1の位置1
0において示されているように、値205が構成要素”
services”に対するSインデックスであること
を同様に確認する。よって、パス名における構成要素に
対するSインデックスは構成要素を含む文字列テーブル
3におけるメモリ位置である。
【0015】続いてコンピュータ110は前記3つの関
連するテーブルをアクセスするために従来技術に係る技
法を用いてコンピュータ10−1のアイデンティティを
メモリインデックスにマッピングする。この3つの関連
するテーブルの内の一つには前記パス名によって識別さ
れるファイルがストアされているメモリ30−1のアド
レスすなわちポインタが含まれている。
連するテーブルをアクセスするために従来技術に係る技
法を用いてコンピュータ10−1のアイデンティティを
メモリインデックスにマッピングする。この3つの関連
するテーブルの内の一つには前記パス名によって識別さ
れるファイルがストアされているメモリ30−1のアド
レスすなわちポインタが含まれている。
【0016】図4、5、及び6はコンピュータ10−1
に関連する3つのテーブル、テーブル4、テーブル5及
びテーブル6を示した図である。テーブル4、5及び6
は本明細書においてはそれぞれD−、H−及びV−ノー
ドテーブルとして識別され、RAM125中及びディス
ク115中の双方にハッシュ及び文字列テーブル(図2
及び3)と共にストアされている。ここで、ディスク1
15はRAM125に対するバックアップメモリとして
機能している。(この種のテーブルはコンピュータ11
0によってサービスされるコンピュータ10−2から1
0−Nのうちの各々に対して予約されていることに留意
されたい。よって、以下の議論はコンピュータ10−2
から10−Nのいずれに対しても等しく当てはまるもの
である。)
に関連する3つのテーブル、テーブル4、テーブル5及
びテーブル6を示した図である。テーブル4、5及び6
は本明細書においてはそれぞれD−、H−及びV−ノー
ドテーブルとして識別され、RAM125中及びディス
ク115中の双方にハッシュ及び文字列テーブル(図2
及び3)と共にストアされている。ここで、ディスク1
15はRAM125に対するバックアップメモリとして
機能している。(この種のテーブルはコンピュータ11
0によってサービスされるコンピュータ10−2から1
0−Nのうちの各々に対して予約されていることに留意
されたい。よって、以下の議論はコンピュータ10−2
から10−Nのいずれに対しても等しく当てはまるもの
である。)
【0017】より詳細に述べれば、H−ノードテーブル
5中のレコードはパス名の構成要素に関するものであ
り、2つのフィールドより成り立っている。その第一の
フィールドはD−ノードポインタフィールド51であ
り、前記構成要素の対応する”子供”に係るD−ノード
レコードの組の第一のD−ノードを指し示している。例
えば、テーブル5における第一のレコードはルートディ
レクトリ”/”に係るものであり、既に述べられている
ようにパス名における第一のスラッシュ(/)によって
規定される。この第一のレコードのフィールド51の内
容は、ルートディレクトリに直接従属している、すなわ
ちルートディレクトリに含まれているディレクトリ及び
ファイル、例えばusr、bin、etc等、に係るD
−ノードレコードの組の第一のD−ノードレコードを指
し示している。H−ノードポインタの第二のフィールド
すなわちV−ノードポインタ52は、なかんずく構成要
素名によって識別されるファイルがストアされているメ
モリ30−1のアドレス(ポインタ)を含むV−ノード
テーブル6内のレコードを指し示している。ここでは、
アドレス1にストアされていてルートディレクトリに関
連しているH−ノードレコードのフィールド52の内容
は、バックアップメモリ、すなわち仮定されているよう
にメモリ30−1、にストアされているルートディレク
トリの最新バージョンに関連しているデータを含むV−
ノードテーブル6のレコード(すなわちレコード13)
を指し示している。
5中のレコードはパス名の構成要素に関するものであ
り、2つのフィールドより成り立っている。その第一の
フィールドはD−ノードポインタフィールド51であ
り、前記構成要素の対応する”子供”に係るD−ノード
レコードの組の第一のD−ノードを指し示している。例
えば、テーブル5における第一のレコードはルートディ
レクトリ”/”に係るものであり、既に述べられている
ようにパス名における第一のスラッシュ(/)によって
規定される。この第一のレコードのフィールド51の内
容は、ルートディレクトリに直接従属している、すなわ
ちルートディレクトリに含まれているディレクトリ及び
ファイル、例えばusr、bin、etc等、に係るD
−ノードレコードの組の第一のD−ノードレコードを指
し示している。H−ノードポインタの第二のフィールド
すなわちV−ノードポインタ52は、なかんずく構成要
素名によって識別されるファイルがストアされているメ
モリ30−1のアドレス(ポインタ)を含むV−ノード
テーブル6内のレコードを指し示している。ここでは、
アドレス1にストアされていてルートディレクトリに関
連しているH−ノードレコードのフィールド52の内容
は、バックアップメモリ、すなわち仮定されているよう
にメモリ30−1、にストアされているルートディレク
トリの最新バージョンに関連しているデータを含むV−
ノードテーブル6のレコード(すなわちレコード13)
を指し示している。
【0018】V−ノードテーブル6中の各々のレコード
は、関連する構成要素名、例えばルート(/)、によっ
て識別されるファイルに関連するデータを含む複数個の
フィールドより成り立っている。第一のフィールド61
はルートディレクトリのそれ以前のバージョンに関連し
ているデータを含むV−ノードレコードへのリンクリス
トポインタとして用いられる。ここでは、レコード13
のフィールド61の内容はドレス1を指し示している。
第二のフィールド62の内容は、バックアップメモリ、
すなわちメモリ30−1、にストアされたルートディレ
クトリの最新バージョンを識別している。ルートディレ
クトリの最新バージョンに係る日付はフィールド63に
ストアされている。レコードの他のフィールド、すなわ
ちフィールド64はルートディレクトリの最新バージョ
ンがストアされたバックアップメモリ位置のアドレスを
含んでいる。
は、関連する構成要素名、例えばルート(/)、によっ
て識別されるファイルに関連するデータを含む複数個の
フィールドより成り立っている。第一のフィールド61
はルートディレクトリのそれ以前のバージョンに関連し
ているデータを含むV−ノードレコードへのリンクリス
トポインタとして用いられる。ここでは、レコード13
のフィールド61の内容はドレス1を指し示している。
第二のフィールド62の内容は、バックアップメモリ、
すなわちメモリ30−1、にストアされたルートディレ
クトリの最新バージョンを識別している。ルートディレ
クトリの最新バージョンに係る日付はフィールド63に
ストアされている。レコードの他のフィールド、すなわ
ちフィールド64はルートディレクトリの最新バージョ
ンがストアされたバックアップメモリ位置のアドレスを
含んでいる。
【0019】よって、バックアップメモリ内にストアさ
れたルートディレクトリのいかなるバージョンの位置も
H−ノードテーブル5内の関連するレコードから始めて
容易に確認され得る。
れたルートディレクトリのいかなるバージョンの位置も
H−ノードテーブル5内の関連するレコードから始めて
容易に確認され得る。
【0020】ここでの実施例において、H−ノードレコ
ード1のフィールド51の内容はV−ノードレコードア
ドレス3709を含んでおり、これはルートディレクト
リに対して最も最近直接に追加され、バックアップメモ
リにストアされたディレクトリに関するものである。コ
ンピュータ110はアドレス3709によって識別され
るD−ノードレコードを読み出し、後者のレコードのフ
ィールド42にストアされたSインデックスの値と構成
要素名”etc”に関連するSインデックスの値、すな
わち値310とを比較する。これらの値は同じではない
のでコンピュータ110はレコード3709にリンクさ
れた次のレコードを読み出す。すなわち、コンピュータ
110はD−ノードオフセット10によって識別される
レコードを読み出し、そのレコードに含まれているSイ
ンデックスを値310と比較する。これらの値も同じで
はないのでコンピュータ110はD−ノードテーブル4
中のその次にリンクされたレコード、すなわちリンクア
ドレス9によって識別されるレコードを読み出す。この
例ではコンピュータ110は”etc”のSインデック
スの値がレコード9のフィールド42にストアされてい
るSインデックスの値と等しいことを見いだす。
ード1のフィールド51の内容はV−ノードレコードア
ドレス3709を含んでおり、これはルートディレクト
リに対して最も最近直接に追加され、バックアップメモ
リにストアされたディレクトリに関するものである。コ
ンピュータ110はアドレス3709によって識別され
るD−ノードレコードを読み出し、後者のレコードのフ
ィールド42にストアされたSインデックスの値と構成
要素名”etc”に関連するSインデックスの値、すな
わち値310とを比較する。これらの値は同じではない
のでコンピュータ110はレコード3709にリンクさ
れた次のレコードを読み出す。すなわち、コンピュータ
110はD−ノードオフセット10によって識別される
レコードを読み出し、そのレコードに含まれているSイ
ンデックスを値310と比較する。これらの値も同じで
はないのでコンピュータ110はD−ノードテーブル4
中のその次にリンクされたレコード、すなわちリンクア
ドレス9によって識別されるレコードを読み出す。この
例ではコンピュータ110は”etc”のSインデック
スの値がレコード9のフィールド42にストアされてい
るSインデックスの値と等しいことを見いだす。
【0021】後者の比較の結果、コンピュータ110は
レコード9のフィールド43にストアされている値(す
なわち50)をインデックス(すなわちオフセット)と
して用いてH−ノードテーブル5をアクセスする。図5
から、オフセット50の所に位置するH−ノードレコー
ドのフィールド51及び52の値はそれぞれ81及び1
11であることがわかる。値111は”etc”ディレ
クトリに直接従属している各々のファイル及び/あるい
はディレクトリに係るD−ノードレコードの組の内の一
つを指し示している。既に説明されているように、値1
11は”etc”ディレクトリの最終バージョンがスト
アされているバックアップメモリ(例えばメモリ30−
1)内のメモリ位置のアドレスを含むV−ノードレコー
ドを指し示している。(既に述べられているように、”
etc”ディレクトリのそれ以前のバージョンがバック
アップメモリにストアされている場合には、後者のV−
ノードレコードはそのバージョンに対するバックアップ
メモリアドレスを含むV−ノードレコードを指し示して
いる。)
レコード9のフィールド43にストアされている値(す
なわち50)をインデックス(すなわちオフセット)と
して用いてH−ノードテーブル5をアクセスする。図5
から、オフセット50の所に位置するH−ノードレコー
ドのフィールド51及び52の値はそれぞれ81及び1
11であることがわかる。値111は”etc”ディレ
クトリに直接従属している各々のファイル及び/あるい
はディレクトリに係るD−ノードレコードの組の内の一
つを指し示している。既に説明されているように、値1
11は”etc”ディレクトリの最終バージョンがスト
アされているバックアップメモリ(例えばメモリ30−
1)内のメモリ位置のアドレスを含むV−ノードレコー
ドを指し示している。(既に述べられているように、”
etc”ディレクトリのそれ以前のバージョンがバック
アップメモリにストアされている場合には、後者のV−
ノードレコードはそのバージョンに対するバックアップ
メモリアドレスを含むV−ノードレコードを指し示して
いる。)
【0022】その後、コンピュータ110は”etc”
ディレクトリに直接従属しているものに関するD−ノー
ドレコードを一つずつアクセスし、その関連するフィー
ルド42がファイル”services”に対して割り
当てられたSインデックスの値(すなわち205)と等
しいSインデックスを含むD−ノードにおいてこのアク
セスを終了する。より詳細に述べれば、コンピュータ1
10はD−ノードテーブル4のレコード81をアクセス
することから開始してそのレコードのフィールド42の
内容を値205と比較する。レコード81のフィールド
42に含まれているインデックスは612という値を有
していて205というSインデックスとは同じではない
ので、コンピュータ110はD−ノードレコード81に
リンクされたD−ノードレコード、例えばレコード41
7(図示せず)をアクセスする。このようにしてコンピ
ュータ110はリンクされたD−ノードレコードのアク
セスを続行し、ファイル”services”に割り当
てられたSインデックスの値と等しい値を有するD−ノ
ードレコード20のフィールド42を見いだした時点で
この検索を終了する。その後、レコード20のフィール
ド43の内容(123)を用いてコンピュータ110は
H−ノードテーブル5のレコード123をアクセスして
関連するV−ノードポインタの値(図示されているよう
に68と仮定されている)を得る。
ディレクトリに直接従属しているものに関するD−ノー
ドレコードを一つずつアクセスし、その関連するフィー
ルド42がファイル”services”に対して割り
当てられたSインデックスの値(すなわち205)と等
しいSインデックスを含むD−ノードにおいてこのアク
セスを終了する。より詳細に述べれば、コンピュータ1
10はD−ノードテーブル4のレコード81をアクセス
することから開始してそのレコードのフィールド42の
内容を値205と比較する。レコード81のフィールド
42に含まれているインデックスは612という値を有
していて205というSインデックスとは同じではない
ので、コンピュータ110はD−ノードレコード81に
リンクされたD−ノードレコード、例えばレコード41
7(図示せず)をアクセスする。このようにしてコンピ
ュータ110はリンクされたD−ノードレコードのアク
セスを続行し、ファイル”services”に割り当
てられたSインデックスの値と等しい値を有するD−ノ
ードレコード20のフィールド42を見いだした時点で
この検索を終了する。その後、レコード20のフィール
ド43の内容(123)を用いてコンピュータ110は
H−ノードテーブル5のレコード123をアクセスして
関連するV−ノードポインタの値(図示されているよう
に68と仮定されている)を得る。
【0023】この実施例においては、ファイル/etc
/servicesの最新のバージョンはバックアップ
メモリ30−1にストアされていると仮定されているの
で、コンピュータ110は新たなレコードをV−ノード
テーブル6に追加し、この新たなレコードをそれ以前の
ファイルと関連付ける。ここではこの新たなレコードの
オフセットが10053であると仮定されている。コン
ピュータ110はこの新たなレコードを、関連するフィ
ールド61にオフセットインデックス68をストアする
ことによってファイル/etc/servicesの直
前のバージョンとリンクする。ここで、このファイルの
直前のバージョン及び現在のバージョンはそれぞれ2及
び3であると仮定されている。さらに、コンピュータ1
10はフィールド62、63及び64にそれぞれファイ
ルの現在のバージョンナンバー(すなわち3)、このバ
ージョンに関連する日付及び現在のバージョンがストア
されているバックアップメモリ位置のアドレスを挿入す
る。コンピュータ110は現在のレコードをオフセット
インデックス123によって識別されるH−ノードレコ
ードと、後者のレコードのフィールド52に新たなV−
ノードレコードのオフセットインデックス、すなわち1
0053、を挿入することによってリンクする。この値
はレコード123の68という値を置換することにな
る。
/servicesの最新のバージョンはバックアップ
メモリ30−1にストアされていると仮定されているの
で、コンピュータ110は新たなレコードをV−ノード
テーブル6に追加し、この新たなレコードをそれ以前の
ファイルと関連付ける。ここではこの新たなレコードの
オフセットが10053であると仮定されている。コン
ピュータ110はこの新たなレコードを、関連するフィ
ールド61にオフセットインデックス68をストアする
ことによってファイル/etc/servicesの直
前のバージョンとリンクする。ここで、このファイルの
直前のバージョン及び現在のバージョンはそれぞれ2及
び3であると仮定されている。さらに、コンピュータ1
10はフィールド62、63及び64にそれぞれファイ
ルの現在のバージョンナンバー(すなわち3)、このバ
ージョンに関連する日付及び現在のバージョンがストア
されているバックアップメモリ位置のアドレスを挿入す
る。コンピュータ110は現在のレコードをオフセット
インデックス123によって識別されるH−ノードレコ
ードと、後者のレコードのフィールド52に新たなV−
ノードレコードのオフセットインデックス、すなわち1
0053、を挿入することによってリンクする。この値
はレコード123の68という値を置換することにな
る。
【0024】ファイル/etc/servicesがバ
ックアップメモリにそれ以前のバージョンがストアされ
ていないという意味で新しいファイルであると仮定する
と、コンピュータ110は、V−ノードテーブル6に新
たなレコードを追加するだけではなく新たなレコードを
D−ノードテーブル4及びH−ノードテーブル5にも追
加する。この場合には、新たなV−ノードレコードのフ
ィールドはヌル値(すなわち0という値)をとることに
なる。なぜなら、新たなファイルはそれ自体の以前のフ
ァイルに対してリンクされないからである。新たなH−
ノードレコードのフィールド51及び52は、それぞれ
ヌル値及び新たなV−ノードレコードに対するV−ノー
ドテーブルオフセットインデックスを含むことになる。
(システムがこの新しいファイルに対して直接従属して
いる他のファイル及び/あるいはディレクトリを見いだ
していないため、ヌル値が挿入される。)新たなD−ノ
ードファイルのフィールド41、42、及び43は、そ
れぞれ、”etc”に対して直接従属しているファイル
及び/あるいはディレクトリの組に対してこの新たなレ
コードをリンクするためのオフセットインデックス8
1、このファイルに対する唯一つのSインデックス、及
びこのファイルに関連しているH−ノードオフセットイ
ンデックスを含む。
ックアップメモリにそれ以前のバージョンがストアされ
ていないという意味で新しいファイルであると仮定する
と、コンピュータ110は、V−ノードテーブル6に新
たなレコードを追加するだけではなく新たなレコードを
D−ノードテーブル4及びH−ノードテーブル5にも追
加する。この場合には、新たなV−ノードレコードのフ
ィールドはヌル値(すなわち0という値)をとることに
なる。なぜなら、新たなファイルはそれ自体の以前のフ
ァイルに対してリンクされないからである。新たなH−
ノードレコードのフィールド51及び52は、それぞれ
ヌル値及び新たなV−ノードレコードに対するV−ノー
ドテーブルオフセットインデックスを含むことになる。
(システムがこの新しいファイルに対して直接従属して
いる他のファイル及び/あるいはディレクトリを見いだ
していないため、ヌル値が挿入される。)新たなD−ノ
ードファイルのフィールド41、42、及び43は、そ
れぞれ、”etc”に対して直接従属しているファイル
及び/あるいはディレクトリの組に対してこの新たなレ
コードをリンクするためのオフセットインデックス8
1、このファイルに対する唯一つのSインデックス、及
びこのファイルに関連しているH−ノードオフセットイ
ンデックスを含む。
【0025】さらに、コンピュータ110はオフセット
インデックス50を有するH−ノードレコードのフィー
ルド51の内容を新たなD−ノードレコードのオフセッ
トインデックスの値に変更する。
インデックス50を有するH−ノードレコードのフィー
ルド51の内容を新たなD−ノードレコードのオフセッ
トインデックスの値に変更する。
【0026】他方、ファイル/etc/service
sのバージョン1がバックアップメモリからアンロード
されてコンピュータ10−1から10−Nの内の一つ、
例えば10−1、に渡されなければならない場合には、
コンピュータ110はこの要求に対して既に説明された
ような方法で対処する。すなわち、コンピュータ110
はパス名の各々の構成要素を対応する唯一つのアイデン
ティティすなわちインデックスにマッピングし、このイ
ンデックスを用いて上述された方法でD−ノード及びH
−ノードを検索して関連するV−ノードレコード、すな
わちV−ノードレコード10053、の位置を見いだ
す。その後、コンピュータ110は互いにリンクされて
いる関連するV−ノードレコードを検索して、求められ
ているファイル/etc/servicesのバージョ
ン1に関連しているV−ノードレコード、すなわちレコ
ード18、の位置を見いだす。この時点でコンピュータ
110はフィールド64の内容を求められているファイ
ルを含むバックアップメモリに渡す。バックアップメモ
リはそれに応答して受信されたポインタによって識別さ
れるメモリ位置から始まるファイルをアンロードしてそ
れをコンピュータ110にそのまま供給する。その後、
コンピュータ110は要求を発したコンピュータ10宛
当該ファイルをバックアップメモリから受信したまま渡
す。
sのバージョン1がバックアップメモリからアンロード
されてコンピュータ10−1から10−Nの内の一つ、
例えば10−1、に渡されなければならない場合には、
コンピュータ110はこの要求に対して既に説明された
ような方法で対処する。すなわち、コンピュータ110
はパス名の各々の構成要素を対応する唯一つのアイデン
ティティすなわちインデックスにマッピングし、このイ
ンデックスを用いて上述された方法でD−ノード及びH
−ノードを検索して関連するV−ノードレコード、すな
わちV−ノードレコード10053、の位置を見いだ
す。その後、コンピュータ110は互いにリンクされて
いる関連するV−ノードレコードを検索して、求められ
ているファイル/etc/servicesのバージョ
ン1に関連しているV−ノードレコード、すなわちレコ
ード18、の位置を見いだす。この時点でコンピュータ
110はフィールド64の内容を求められているファイ
ルを含むバックアップメモリに渡す。バックアップメモ
リはそれに応答して受信されたポインタによって識別さ
れるメモリ位置から始まるファイルをアンロードしてそ
れをコンピュータ110にそのまま供給する。その後、
コンピュータ110は要求を発したコンピュータ10宛
当該ファイルをバックアップメモリから受信したまま渡
す。
【0027】上述されているように、ハッシュナンバー
及びSインデックスは、それぞれ図2及び図3に示され
ているテーブル1及びテーブル2にストアされている情
報をアクセスするためのオフセットとして用いられる。
すなわち、Sインデックスは一群のメモリバイト、例え
ば4バイト、を用いてテーブル1にストアされている。
テーブル1においてSインデックスをストアするために
用いられる特定の一群のメモリバイトは、関連するハッ
シュナンバーの値によって決定される、すなわちハッシ
ュナンバーがテーブル1における関連するインデックス
の位置を決定するためのオフセットとして用いられる。
ハッシュナンバーはある意味では乱数であるため、スト
アされたSインデックスの後のテーブル1内の一群ある
いはそれ以上のメモリバイトが空である場合がある。こ
のことは、同一のハッシュナンバーが2つあるいはそれ
以上の相異なったファイル名に対して生成され得る、す
なわちハッシュナンバーが違いに衝突することを意味し
ている。
及びSインデックスは、それぞれ図2及び図3に示され
ているテーブル1及びテーブル2にストアされている情
報をアクセスするためのオフセットとして用いられる。
すなわち、Sインデックスは一群のメモリバイト、例え
ば4バイト、を用いてテーブル1にストアされている。
テーブル1においてSインデックスをストアするために
用いられる特定の一群のメモリバイトは、関連するハッ
シュナンバーの値によって決定される、すなわちハッシ
ュナンバーがテーブル1における関連するインデックス
の位置を決定するためのオフセットとして用いられる。
ハッシュナンバーはある意味では乱数であるため、スト
アされたSインデックスの後のテーブル1内の一群ある
いはそれ以上のメモリバイトが空である場合がある。こ
のことは、同一のハッシュナンバーが2つあるいはそれ
以上の相異なったファイル名に対して生成され得る、す
なわちハッシュナンバーが違いに衝突することを意味し
ている。
【0028】例えば、ハッシュナンバー10がファイル
名”aaaaa”に対して従来技術にかかるハッシング
アルゴリズムを適用することによって生成されたと仮定
する。ここで、”aaaaa”は相異なったアルファベ
ットあるいは数字を表わしている。図2から理解される
ように、テーブル1のオフセット10にストアされたS
インデックスの値は205であり、これは文字列テーブ
ル2における”services”というファイル名を
指し示している。ファイル名”services”はフ
ァイル名”aaaaa”と一致しないので、コンピュー
タ110は205がファイル名”aaaaa”に対して
割り当てられたSインデックスではないと結論付ける。
この場合にはコンピュータ110はオフセット10から
開始して一つずつテーブル1のそれ以降のエントリを検
索して空でない各々のエントリを用いてテーブル2をア
クセスし、ファイル名”aaaaa”がテーブル2に含
まれているか否かを決定する。ファイル名”aaaa
a”がテーブル2に含まれている場合には、コンピュー
タ110は後者のファイルに対するSインデックスとし
て関連するオフセットを用いる。
名”aaaaa”に対して従来技術にかかるハッシング
アルゴリズムを適用することによって生成されたと仮定
する。ここで、”aaaaa”は相異なったアルファベ
ットあるいは数字を表わしている。図2から理解される
ように、テーブル1のオフセット10にストアされたS
インデックスの値は205であり、これは文字列テーブ
ル2における”services”というファイル名を
指し示している。ファイル名”services”はフ
ァイル名”aaaaa”と一致しないので、コンピュー
タ110は205がファイル名”aaaaa”に対して
割り当てられたSインデックスではないと結論付ける。
この場合にはコンピュータ110はオフセット10から
開始して一つずつテーブル1のそれ以降のエントリを検
索して空でない各々のエントリを用いてテーブル2をア
クセスし、ファイル名”aaaaa”がテーブル2に含
まれているか否かを決定する。ファイル名”aaaa
a”がテーブル2に含まれている場合には、コンピュー
タ110は後者のファイルに対するSインデックスとし
て関連するオフセットを用いる。
【0029】コンピュータ110がテーブル2中にファ
イル名”aaaaa”を見いださなかった場合には、コ
ンピュータ110はテーブル2の最終文字列にこのファ
イル名を追加する。その後、コンピュータ110は、ハ
ッシュナンバー10より大きいオフセット値を有する利
用可能な一群のメモリバイトを用いてテーブル1中に”
aaaaa”に対するテーブル2オフセットをストアす
る。このオフセット値はオフセット10によって識別さ
れる一群のメモリバイトに比較的近接したメモリバイト
内にストアされる場合が多い。なぜなら、既に説明され
ているように、Sインデックス205を含むメモリバイ
ト群の後ろのメモリバイト群が空である場合が多いから
である。このような場合には、コンピュータ110がフ
ァイル名”aaaaa”に対するSインデックスを配置
するために消費する時間が最小となる。なぜならこのイ
ンデックスとSインデックス205とはテーブル1中で
互いに近接してストアされる可能性が最も高いからであ
る。
イル名”aaaaa”を見いださなかった場合には、コ
ンピュータ110はテーブル2の最終文字列にこのファ
イル名を追加する。その後、コンピュータ110は、ハ
ッシュナンバー10より大きいオフセット値を有する利
用可能な一群のメモリバイトを用いてテーブル1中に”
aaaaa”に対するテーブル2オフセットをストアす
る。このオフセット値はオフセット10によって識別さ
れる一群のメモリバイトに比較的近接したメモリバイト
内にストアされる場合が多い。なぜなら、既に説明され
ているように、Sインデックス205を含むメモリバイ
ト群の後ろのメモリバイト群が空である場合が多いから
である。このような場合には、コンピュータ110がフ
ァイル名”aaaaa”に対するSインデックスを配置
するために消費する時間が最小となる。なぜならこのイ
ンデックスとSインデックス205とはテーブル1中で
互いに近接してストアされる可能性が最も高いからであ
る。
【0030】上述されているように、ファイル名”aa
aaa”はテーブル2中にストアされている最終文字列
に追加される。すなわち、テーブル2中にストアされて
いるファイル名は互いに連続している、すなわち”パッ
ク”されている。
aaa”はテーブル2中にストアされている最終文字列
に追加される。すなわち、テーブル2中にストアされて
いるファイル名は互いに連続している、すなわち”パッ
ク”されている。
【0031】以上の説明は、本発明の一実施例に関する
もので,この技術分野の当業者であれば、本発明の種々
の変形例が考え得るが、それらはいずれも本発明の技術
的範囲に包含される。例えば、特別なマッピング技法を
用いることによりD−ノードテーブル及びH−ノードテ
ーブルが各々のコンピュータ10に対して1つのテーブ
ルとしてまとめられ得る。さらに、ハッシュナンバー間
の衝突は当業者には既知の所謂二次ハッシング技法を用
いることによって取り扱われ得る。
もので,この技術分野の当業者であれば、本発明の種々
の変形例が考え得るが、それらはいずれも本発明の技術
的範囲に包含される。例えば、特別なマッピング技法を
用いることによりD−ノードテーブル及びH−ノードテ
ーブルが各々のコンピュータ10に対して1つのテーブ
ルとしてまとめられ得る。さらに、ハッシュナンバー間
の衝突は当業者には既知の所謂二次ハッシング技法を用
いることによって取り扱われ得る。
【0032】
【発明の効果】以上述べたごとく、本発明によれば、バ
ックアップメモリ中のより効率的なファイル配置技法が
提供される。
ックアップメモリ中のより効率的なファイル配置技法が
提供される。
【図1】 本発明の原理に係るコンピュータアーカイビ
ングシステムのブロック図。
ングシステムのブロック図。
【図2】 図1のシステムにおいて特定のファイル名を
唯一つのアイデンティティに関連付けるために用いられ
るハッシュテーブルを示した図。
唯一つのアイデンティティに関連付けるために用いられ
るハッシュテーブルを示した図。
【図3】 図1のシステムにおいて特定のファイル名に
対して割り当てられた唯一つのアイデンティティを確認
するために用いられるストリングテーブルを示した図。
対して割り当てられた唯一つのアイデンティティを確認
するために用いられるストリングテーブルを示した図。
【図4】 図1のシステムにおいてバックアップメモリ
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
【図5】 図1のシステムにおいてバックアップメモリ
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
【図6】 図1のシステムにおいてバックアップメモリ
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
内に関連するアイデンティティに基づいて特定のファイ
ルを配置するために用いられるテーブルを示した図。
4 D−ノードテーブル 5 H−ノードテーブル 6 V−ノードテーブル 10 コンピュータ 11 ディスク 20 ネットワーク 30 バックアップメモリ 41 リンクポインタ 42 Sインデックス 43 H−ノードポインタ 51 D−ノードポインタ 52 V−ノードポインタ 61 バージョンポインタ 62 バージョンナンバー 63 日付 64 媒体ポインタ 100 アーカイビングシステム 110 コンピュータ 115 ディスク
Claims (4)
- 【請求項1】 バックアップメモリ中にファイルを配置
する方法において、前記ファイルは前記バックアップメ
モリ中にストアされた一群の関連するファイルの内の一
つであり、前記ファイル群が共通の名前によって識別さ
れ、前記共通の名前がその並びが階層構造を表わしてい
るような階層的パス名を識別しているN個の構成要素か
らなるシーケンスの内の一つの構成要素であり(ここで
N≧1である)、前記方法が、 前記構成要素の各々を対応する唯一つのアイデンティテ
ィ値に変換する段階;前記バックアップメモリ中の前記
ファイルがストアされている位置を前記N個の構成要素
の最初のものに関連している唯一つのアイデンティティ
値から始まる各々の前記値の関数として決定する段階;
を有することを特徴とするファイル配置方法。 - 【請求項2】 前記構成要素の各々を、第一の位置テー
ブル内の利用可能な位置に、当該利用可能な位置のアド
レスがそこにストアされている構成要素に係る唯一つの
アイデンティティ値を決定するようにストアする段階;
及び、 前記構成要素の各々に対して関連するハッシュナンバー
を導出して第二の位置テーブル内の前記ハッシュナンバ
ーによって識別される位置に前記利用可能な位置の前記
アドレスをストアする段階;を有することを特徴とする
請求項第1項に記載のファイル配置方法。 - 【請求項3】 前記変換段階が、前記構成要素からなる
前記シーケンスの各々に対して関連するハッシュナンバ
ーを導出するために前記構成要素からなる前記シーケン
スの第一のものから始めてハッシングアルゴリズムを適
用しその後前記ハッシュナンバーを前記第二のテーブル
に対するインデックスとして用いて前記第二のテーブル
から関連するアイデンティティ値を取り出す段階を有す
ることを特徴とする請求項第2項に記載のファイル配置
方法。 - 【請求項4】 第三のテーブルに前記アイデンティティ
値の各々及び他のファイル及び/あるいはディレクトリ
のそれぞれのものに関連する他のアイデンティティ値を
それぞれ対応するエントリとして、当該エントリの個々
のものが前記階層内のそれぞれのレベルに基づいて前記
第三のテーブル内でリンクされたエントリ群として形成
されるようにストアする段階;及び、前記エントリの各
々に第一のインデックス及び第二のインデックスをスト
アする段階、 ここで前記第一のインデックスは次位に従属したエント
リ群を間接的に指し示しており、前記第二のインデック
スは関連するアイデンティティ値によって識別されるフ
ァイルがストアされているバックアップメモリ位置を間
接的に指し示している;を有し、 前記決定段階が、 前記シーケンス中の前記構成要素が出現する順序内で前
記エントリ群の内の関連する一つを形成する第一のエン
トリを識別してその後関連するエントリ群内で関連する
唯一つのアイデンティティ値を含むエントリを配置する
段階;及び、 前記識別された一群のエントリの最終のものを形成し前
記ファイル名に係る唯一つのアイデンティティを含むエ
ントリから前記第二のインデックスを得る段階を有する
ことを特徴とする請求項第2項に記載のファイル配置方
法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US636310 | 1991-01-02 | ||
US07/636,310 US5301286A (en) | 1991-01-02 | 1991-01-02 | Memory archiving indexing arrangement |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH06342392A true JPH06342392A (ja) | 1994-12-13 |
Family
ID=24551341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3351740A Pending JPH06342392A (ja) | 1991-01-02 | 1991-12-16 | ファイル配置方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5301286A (ja) |
JP (1) | JPH06342392A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015532993A (ja) * | 2012-11-01 | 2015-11-16 | 光毅 陶 | 光ディスクに基づくデータベース記憶システム及びその利用方法 |
Families Citing this family (233)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SE500599C2 (sv) * | 1992-12-08 | 1994-07-25 | Ellemtel Utvecklings Ab | Sätt att optimera minnesutrymme i en databas |
JP2583010B2 (ja) * | 1993-01-07 | 1997-02-19 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 多層インデックス構造におけるローカルインデックステーブル及び大域インデックステーブルの間の一貫性を維持する方法 |
US5483653A (en) * | 1993-04-02 | 1996-01-09 | Xerox Corporation | Printing system with file specification parsing capability |
US5642496A (en) * | 1993-09-23 | 1997-06-24 | Kanfi; Arnon | Method of making a backup copy of a memory over a plurality of copying sessions |
US5572729A (en) * | 1994-01-11 | 1996-11-05 | Sun Microsystems, Inc. | Method for stateless rename propagation between hierarchical file name spaces |
US5537587A (en) * | 1994-05-11 | 1996-07-16 | International Business Machines Corporation | File record maintenance in a data processing system by synchronization of menus with corresponding data files |
US5634028A (en) * | 1994-12-15 | 1997-05-27 | International Business Machines Corporation | Compact track address translation mapping system and method |
FR2728703B1 (fr) * | 1994-12-23 | 1997-01-31 | Amitel | Procede de stockage et de classement de donnees sur un disque optique compact a memoire fixe |
US5566328A (en) * | 1995-01-23 | 1996-10-15 | Tandem Computers Incorporated | Reconstructing directory pathnames from file handles in a computer system |
EP2270687A2 (en) | 1995-04-11 | 2011-01-05 | Kinetech, Inc. | Identifying data in a data processing system |
US6453325B1 (en) * | 1995-05-24 | 2002-09-17 | International Business Machines Corporation | Method and means for backup and restoration of a database system linked to a system for filing data |
US6023705A (en) * | 1995-08-11 | 2000-02-08 | Wachovia Corporation | Multiple CD index and loading system and method |
US5960194A (en) * | 1995-09-11 | 1999-09-28 | International Business Machines Corporation | Method for generating a multi-tiered index for partitioned data |
US5778395A (en) * | 1995-10-23 | 1998-07-07 | Stac, Inc. | System for backing up files from disk volumes on multiple nodes of a computer network |
US5878428A (en) * | 1995-11-20 | 1999-03-02 | International Business Machines Corporation | System, method, and article of manufacture for adding transactional recovery to a binary class in an object oriented system |
US5867708A (en) * | 1995-11-20 | 1999-02-02 | International Business Machines Corporation | System, method, and article of manufacture for adding concurrency to a binary class in an object oriented system |
US6782538B1 (en) | 1995-12-14 | 2004-08-24 | International Business Machines Corporation | Object oriented information handling system including an extensible instance manager |
US5873092A (en) * | 1995-12-14 | 1999-02-16 | International Business Machines Corporation | Information handling system, method, and article of manufacture including persistent, distributed object name services including shared properties |
US5765153A (en) * | 1996-01-03 | 1998-06-09 | International Business Machines Corporation | Information handling system, method, and article of manufacture including object system authorization and registration |
US5809506A (en) * | 1996-01-22 | 1998-09-15 | International Business Machines Corporation | Method for creating an object base of persisent application objects in an object oriented programming environment and apparatus related thereto |
US5907679A (en) * | 1996-08-19 | 1999-05-25 | Visiontek | Hard drive upgrade system |
US5937416A (en) * | 1997-03-25 | 1999-08-10 | Bennethum Computer Systems | Method for preserving data in an electronic document |
US6789080B1 (en) | 1997-11-14 | 2004-09-07 | Adobe Systems Incorporated | Retrieving documents transitively linked to an initial document |
US6415278B1 (en) * | 1997-11-14 | 2002-07-02 | Adobe Systems Incorporated | Retrieving documents transitively linked to an initial document |
US6269431B1 (en) * | 1998-08-13 | 2001-07-31 | Emc Corporation | Virtual storage and block level direct access of secondary storage for recovery of backup data |
US6366987B1 (en) | 1998-08-13 | 2002-04-02 | Emc Corporation | Computer data storage physical backup and logical restore |
US6353878B1 (en) * | 1998-08-13 | 2002-03-05 | Emc Corporation | Remote control of backup media in a secondary storage subsystem through access to a primary storage subsystem |
US6938039B1 (en) | 2000-06-30 | 2005-08-30 | Emc Corporation | Concurrent file across at a target file server during migration of file systems between file servers using a network file system access protocol |
US20030101139A1 (en) * | 2000-09-14 | 2003-05-29 | Kaag Bjoern Christiaan Wouter | Method of and system for storing a data item |
US6823336B1 (en) | 2000-09-26 | 2004-11-23 | Emc Corporation | Data storage system and method for uninterrupted read-only access to a consistent dataset by one host processor concurrent with read-write access by another host processor |
US6625591B1 (en) | 2000-09-29 | 2003-09-23 | Emc Corporation | Very efficient in-memory representation of large file system directories |
JP2002149699A (ja) * | 2000-11-10 | 2002-05-24 | Hitachi Ltd | データ検索装置 |
EP1419457B1 (en) * | 2001-08-20 | 2012-07-25 | Symantec Corporation | File backup system and method |
US7546364B2 (en) * | 2002-05-16 | 2009-06-09 | Emc Corporation | Replication of remote copy data for internet protocol (IP) transmission |
US7356768B1 (en) | 2002-11-27 | 2008-04-08 | Adobe Systems Incorporated | Using document templates to assemble a collection of documents |
US6889288B2 (en) * | 2002-12-02 | 2005-05-03 | Emc Corporation | Reducing data copy operations for writing data from a network to storage of a cached data storage system by organizing cache blocks as linked lists of data fragments |
US8818950B2 (en) * | 2004-01-22 | 2014-08-26 | Symantec Corporation | Method and apparatus for localized protected imaging of a file system |
US8775823B2 (en) | 2006-12-29 | 2014-07-08 | Commvault Systems, Inc. | System and method for encrypting secondary copies of data |
US8316060B1 (en) * | 2005-01-26 | 2012-11-20 | 21st Century Technologies | Segment matching search system and method |
US7831081B2 (en) * | 2005-08-15 | 2010-11-09 | Boston Scientific Scimed, Inc. | Border detection in medical image analysis |
WO2007097826A2 (en) * | 2005-12-19 | 2007-08-30 | Commvault Systems, Inc. | System and method for providing a flexible licensing system for digital content |
US8185576B2 (en) | 2006-03-14 | 2012-05-22 | Altnet, Inc. | Filter for a distributed network |
US8370442B2 (en) | 2008-08-29 | 2013-02-05 | Commvault Systems, Inc. | Method and system for leveraging identified changes to a mail server |
US8677091B2 (en) | 2006-12-18 | 2014-03-18 | Commvault Systems, Inc. | Writing data and storage system specific metadata to network attached storage device |
US8095509B2 (en) * | 2007-08-11 | 2012-01-10 | Novell, Inc. | Techniques for retaining security restrictions with file versioning |
US8769048B2 (en) | 2008-06-18 | 2014-07-01 | Commvault Systems, Inc. | Data protection scheduling, such as providing a flexible backup window in a data protection system |
US8484162B2 (en) | 2008-06-24 | 2013-07-09 | Commvault Systems, Inc. | De-duplication systems and methods for application-specific data |
US8335776B2 (en) | 2008-07-02 | 2012-12-18 | Commvault Systems, Inc. | Distributed indexing system for data storage |
US8307177B2 (en) | 2008-09-05 | 2012-11-06 | Commvault Systems, Inc. | Systems and methods for management of virtualization data |
US9178842B2 (en) | 2008-11-05 | 2015-11-03 | Commvault Systems, Inc. | Systems and methods for monitoring messaging applications for compliance with a policy |
US8943183B2 (en) * | 2008-12-10 | 2015-01-27 | Commvault Systems, Inc. | Decoupled installation of data management systems |
US8209307B2 (en) | 2009-03-31 | 2012-06-26 | Commvault Systems, Inc. | Systems and methods for data migration in a clustered file system |
WO2010114855A1 (en) | 2009-03-31 | 2010-10-07 | Commvault Systems, Inc. | Information management systems and methods for heterogeneous data sources |
CN101551736B (zh) * | 2009-05-20 | 2010-11-03 | 杭州华三通信技术有限公司 | 基于地址指针链表的缓存管理装置和方法 |
US8930306B1 (en) | 2009-07-08 | 2015-01-06 | Commvault Systems, Inc. | Synchronized data deduplication |
US8572719B2 (en) | 2010-05-28 | 2013-10-29 | Commvault Systems, Inc. | Firewall proxy systems and methods in a backup environment |
US8504526B2 (en) | 2010-06-04 | 2013-08-06 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations |
US11449394B2 (en) | 2010-06-04 | 2022-09-20 | Commvault Systems, Inc. | Failover systems and methods for performing backup operations, including heterogeneous indexing and load balancing of backup and indexing resources |
US8504869B2 (en) | 2010-07-16 | 2013-08-06 | Commvault Systems, Inc. | Kernel swapping systems and methods for recovering a network device |
US8495420B2 (en) | 2010-07-16 | 2013-07-23 | Commvault Systems, Inc. | Registry key federation systems and methods |
US8364652B2 (en) | 2010-09-30 | 2013-01-29 | Commvault Systems, Inc. | Content aligned block-based deduplication |
US8572340B2 (en) | 2010-09-30 | 2013-10-29 | Commvault Systems, Inc. | Systems and methods for retaining and using data block signatures in data protection operations |
US9020900B2 (en) | 2010-12-14 | 2015-04-28 | Commvault Systems, Inc. | Distributed deduplicated storage system |
US20120150818A1 (en) | 2010-12-14 | 2012-06-14 | Commvault Systems, Inc. | Client-side repository in a networked deduplicated storage system |
US9323466B2 (en) | 2011-04-27 | 2016-04-26 | Commvault Systems, Inc. | System and method for client policy assignment in a data storage system |
US20130227352A1 (en) | 2012-02-24 | 2013-08-29 | Commvault Systems, Inc. | Log monitoring |
US9292815B2 (en) | 2012-03-23 | 2016-03-22 | Commvault Systems, Inc. | Automation of data storage activities |
US9286327B2 (en) | 2012-03-30 | 2016-03-15 | Commvault Systems, Inc. | Data storage recovery automation |
US9189167B2 (en) | 2012-05-31 | 2015-11-17 | Commvault Systems, Inc. | Shared library in a data storage system |
US8977672B2 (en) | 2012-06-08 | 2015-03-10 | Commvault Systems, Inc. | Intelligent scheduling for remote computers |
US9189170B2 (en) | 2012-06-12 | 2015-11-17 | Commvault Systems, Inc. | External storage manager for a data storage cell |
WO2013188550A1 (en) | 2012-06-13 | 2013-12-19 | Commvault Systems, Inc. | Client-side signature repository in a networked storage system |
US20140025796A1 (en) | 2012-07-19 | 2014-01-23 | Commvault Systems, Inc. | Automated grouping of computing devices in a networked data storage system |
US9275086B2 (en) | 2012-07-20 | 2016-03-01 | Commvault Systems, Inc. | Systems and methods for database archiving |
US20140040580A1 (en) | 2012-07-31 | 2014-02-06 | Commvault Systems, Inc. | Administering a shared, on-line pool of data storage resources for performing data storage operations |
US9026498B2 (en) | 2012-08-13 | 2015-05-05 | Commvault Systems, Inc. | Lightweight mounting of a secondary copy of file system data |
US8938481B2 (en) | 2012-08-13 | 2015-01-20 | Commvault Systems, Inc. | Generic file level restore from a block-level secondary copy |
US20140181441A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Identifying files for multiple secondary copy operations using data obtained during backup of primary storage |
US20140181033A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to track deleted files |
US9201906B2 (en) | 2012-12-21 | 2015-12-01 | Commvault Systems, Inc. | Systems and methods to perform data backup in data storage systems |
US9311121B2 (en) | 2012-12-21 | 2016-04-12 | Commvault Systems, Inc. | Archiving virtual machines in a data storage system |
US20140181046A1 (en) | 2012-12-21 | 2014-06-26 | Commvault Systems, Inc. | Systems and methods to backup unprotected virtual machines |
US20140196038A1 (en) | 2013-01-08 | 2014-07-10 | Commvault Systems, Inc. | Virtual machine management in a data storage system |
US20140201140A1 (en) | 2013-01-11 | 2014-07-17 | Commvault Systems, Inc. | Data synchronization management |
US9760444B2 (en) | 2013-01-11 | 2017-09-12 | Commvault Systems, Inc. | Sharing of secondary storage data |
US9811423B2 (en) | 2013-01-11 | 2017-11-07 | Commvault Systems, Inc. | Partial file restore in a data storage system |
US9766987B2 (en) | 2013-01-11 | 2017-09-19 | Commvault Systems, Inc. | Table level database restore in a data storage system |
US9633033B2 (en) | 2013-01-11 | 2017-04-25 | Commvault Systems, Inc. | High availability distributed deduplicated storage system |
US20140201162A1 (en) | 2013-01-11 | 2014-07-17 | Commvault Systems, Inc. | Systems and methods to restore selected files from block-level backup for virtual machines |
US9286110B2 (en) | 2013-01-14 | 2016-03-15 | Commvault Systems, Inc. | Seamless virtual machine recall in a data storage system |
US9483489B2 (en) | 2013-01-14 | 2016-11-01 | Commvault Systems, Inc. | Partial sharing of secondary storage files in a data storage system |
US9483655B2 (en) | 2013-03-12 | 2016-11-01 | Commvault Systems, Inc. | File backup with selective encryption |
US9934103B2 (en) | 2013-04-16 | 2018-04-03 | Commvault Systems, Inc. | Managing multi-source restore operations in an information management system |
US9483362B2 (en) | 2013-05-08 | 2016-11-01 | Commvault Systems, Inc. | Use of auxiliary data protection software in failover operations |
US9483558B2 (en) | 2013-05-29 | 2016-11-01 | Commvault Systems, Inc. | Assessing user performance in a community of users of data storage resources |
US9939981B2 (en) | 2013-09-12 | 2018-04-10 | Commvault Systems, Inc. | File manager integration with virtualization in an information management system with an enhanced storage manager, including user control and storage management of virtual machines |
US9590886B2 (en) | 2013-11-01 | 2017-03-07 | Commvault Systems, Inc. | Systems and methods for differential health checking of an information management system |
US9798596B2 (en) | 2014-02-27 | 2017-10-24 | Commvault Systems, Inc. | Automatic alert escalation for an information management system |
US9633026B2 (en) | 2014-03-13 | 2017-04-25 | Commvault Systems, Inc. | Systems and methods for protecting email data |
US10380072B2 (en) | 2014-03-17 | 2019-08-13 | Commvault Systems, Inc. | Managing deletions from a deduplication database |
US9811427B2 (en) | 2014-04-02 | 2017-11-07 | Commvault Systems, Inc. | Information management by a media agent in the absence of communications with a storage manager |
US20160004605A1 (en) | 2014-07-01 | 2016-01-07 | Commvault Systems, Inc. | Lightweight data reconstruction based on backup data |
US20160019117A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Creating customized bootable image for client computing device from backup copy |
US20160019317A1 (en) | 2014-07-16 | 2016-01-21 | Commvault Systems, Inc. | Volume or virtual machine level backup and generating placeholders for virtual machine files |
US20160019224A1 (en) | 2014-07-18 | 2016-01-21 | Commvault Systems, Inc. | File system content archiving based on third-party application archiving rules and metadata |
US9641388B2 (en) | 2014-07-29 | 2017-05-02 | Commvault Systems, Inc. | Customized deployment in information management systems |
US10031917B2 (en) | 2014-07-29 | 2018-07-24 | Commvault Systems, Inc. | Efficient volume-level replication of data via snapshots in an information management system |
US10360110B2 (en) | 2014-08-06 | 2019-07-23 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or iSCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
US11249858B2 (en) | 2014-08-06 | 2022-02-15 | Commvault Systems, Inc. | Point-in-time backups of a production application made accessible over fibre channel and/or ISCSI as data sources to a remote application by representing the backups as pseudo-disks operating apart from the production application and its host |
US9852026B2 (en) | 2014-08-06 | 2017-12-26 | Commvault Systems, Inc. | Efficient application recovery in an information management system based on a pseudo-storage-device driver |
US9405928B2 (en) | 2014-09-17 | 2016-08-02 | Commvault Systems, Inc. | Deriving encryption rules based on file content |
US9436555B2 (en) | 2014-09-22 | 2016-09-06 | Commvault Systems, Inc. | Efficient live-mount of a backed up virtual machine in a storage management system |
US9710465B2 (en) | 2014-09-22 | 2017-07-18 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US9417968B2 (en) | 2014-09-22 | 2016-08-16 | Commvault Systems, Inc. | Efficiently restoring execution of a backed up virtual machine based on coordination with virtual-machine-file-relocation operations |
US10204010B2 (en) | 2014-10-03 | 2019-02-12 | Commvault Systems, Inc. | Intelligent protection of off-line mail data |
US9609058B2 (en) | 2014-10-13 | 2017-03-28 | Commvault Systems, Inc. | Storage management operations based on executable files served on demand to storage management components |
US9575673B2 (en) | 2014-10-29 | 2017-02-21 | Commvault Systems, Inc. | Accessing a file system using tiered deduplication |
US10776209B2 (en) | 2014-11-10 | 2020-09-15 | Commvault Systems, Inc. | Cross-platform virtual machine backup and replication |
US9848046B2 (en) | 2014-11-13 | 2017-12-19 | Commvault Systems, Inc. | Archiving applications in information management systems |
US9912625B2 (en) | 2014-11-18 | 2018-03-06 | Commvault Systems, Inc. | Storage and management of mail attachments |
US9983936B2 (en) | 2014-11-20 | 2018-05-29 | Commvault Systems, Inc. | Virtual machine change block tracking |
US20160162364A1 (en) | 2014-12-03 | 2016-06-09 | Commvault Systems, Inc. | Secondary storage pruning |
US9632713B2 (en) | 2014-12-03 | 2017-04-25 | Commvault Systems, Inc. | Secondary storage editor |
US9645891B2 (en) | 2014-12-04 | 2017-05-09 | Commvault Systems, Inc. | Opportunistic execution of secondary copy operations |
US9753816B2 (en) | 2014-12-05 | 2017-09-05 | Commvault Systems, Inc. | Synchronization based on filtered browsing |
US20160210044A1 (en) | 2015-01-15 | 2016-07-21 | Commvault Systems, Inc. | Intelligent hybrid drive caching |
US20160210306A1 (en) | 2015-01-15 | 2016-07-21 | Commvault Systems, Inc. | Managing structured data in a data storage system |
US9952934B2 (en) | 2015-01-20 | 2018-04-24 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
US9588849B2 (en) | 2015-01-20 | 2017-03-07 | Commvault Systems, Inc. | Synchronizing selected portions of data in a storage management system |
US10108687B2 (en) | 2015-01-21 | 2018-10-23 | Commvault Systems, Inc. | Database protection using block-level mapping |
US9575804B2 (en) | 2015-03-27 | 2017-02-21 | Commvault Systems, Inc. | Job management and resource allocation |
US9928144B2 (en) | 2015-03-30 | 2018-03-27 | Commvault Systems, Inc. | Storage management of data using an open-archive architecture, including streamlined access to primary data originally stored on network-attached storage and archived to secondary storage |
US9934265B2 (en) | 2015-04-09 | 2018-04-03 | Commvault Systems, Inc. | Management of log data |
US10339106B2 (en) | 2015-04-09 | 2019-07-02 | Commvault Systems, Inc. | Highly reusable deduplication database after disaster recovery |
US9710253B2 (en) | 2015-04-16 | 2017-07-18 | Commvault Systems, Inc. | Managing a software-patch submission queue |
US9904598B2 (en) | 2015-04-21 | 2018-02-27 | Commvault Systems, Inc. | Content-independent and database management system-independent synthetic full backup of a database based on snapshot technology |
US9639286B2 (en) | 2015-05-14 | 2017-05-02 | Commvault Systems, Inc. | Restore of secondary data using thread pooling |
US20160350391A1 (en) | 2015-05-26 | 2016-12-01 | Commvault Systems, Inc. | Replication using deduplicated secondary copy data |
US9766825B2 (en) | 2015-07-22 | 2017-09-19 | Commvault Systems, Inc. | Browse and restore for block-level backups |
US10192065B2 (en) | 2015-08-31 | 2019-01-29 | Commvault Systems, Inc. | Automated intelligent provisioning of data storage resources in response to user requests in a data storage management system |
US10853406B2 (en) | 2015-09-18 | 2020-12-01 | Commvault Systems, Inc. | Data storage management operations in a secondary storage subsystem using image recognition and image-based criteria |
US10489249B2 (en) | 2015-09-30 | 2019-11-26 | Commvault Systems, Inc. | Dynamic triggering of block-level backups based on block change thresholds and corresponding file identities using communication pathways between co-resident data agents |
US10353994B2 (en) | 2015-11-03 | 2019-07-16 | Commvault Systems, Inc. | Summarization of email on a client computing device based on content contribution to an email thread using classification and word frequency considerations |
US10228962B2 (en) | 2015-12-09 | 2019-03-12 | Commvault Systems, Inc. | Live synchronization and management of virtual machines across computing and virtualization platforms and using live synchronization to support disaster recovery |
US10387266B2 (en) | 2015-12-23 | 2019-08-20 | Commvault Systems, Inc. | Application-level live synchronization across computing platforms including synchronizing co-resident applications to disparate standby destinations and selectively synchronizing some applications and not others |
US20170193003A1 (en) | 2015-12-30 | 2017-07-06 | Commvault Systems, Inc. | Redundant and robust distributed deduplication data storage system |
US10684924B2 (en) | 2016-02-18 | 2020-06-16 | Commvault Systems, Inc. | Data restoration operations based on network path information |
US10303557B2 (en) | 2016-03-09 | 2019-05-28 | Commvault Systems, Inc. | Data transfer to a distributed storage environment |
US10296368B2 (en) | 2016-03-09 | 2019-05-21 | Commvault Systems, Inc. | Hypervisor-independent block-level live browse for access to backed up virtual machine (VM) data and hypervisor-free file-level recovery (block-level pseudo-mount) |
US10592350B2 (en) | 2016-03-09 | 2020-03-17 | Commvault Systems, Inc. | Virtual server cloud file system for virtual machine restore to cloud operations |
US10248174B2 (en) | 2016-05-24 | 2019-04-02 | Hedvig, Inc. | Persistent reservations for virtual disk using multiple targets |
US10664447B2 (en) | 2016-07-12 | 2020-05-26 | Commvault Systems, Inc. | Dynamic management of expandable cache storage for multiple network shares configured in a file server |
US10474548B2 (en) | 2016-09-30 | 2019-11-12 | Commvault Systems, Inc. | Heartbeat monitoring of virtual machines for initiating failover operations in a data storage management system, using ping monitoring of target virtual machines |
US10152251B2 (en) | 2016-10-25 | 2018-12-11 | Commvault Systems, Inc. | Targeted backup of virtual machine |
US10162528B2 (en) | 2016-10-25 | 2018-12-25 | Commvault Systems, Inc. | Targeted snapshot based on virtual machine location |
US10210048B2 (en) | 2016-10-25 | 2019-02-19 | Commvault Systems, Inc. | Selective snapshot and backup copy operations for individual virtual machines in a shared storage |
US11106632B2 (en) | 2016-11-16 | 2021-08-31 | Commvault Systems, Inc. | Dynamically configuring a proxy server using containerization for concurrent and/or overlapping backup, restore, and/or test operations |
US10678758B2 (en) | 2016-11-21 | 2020-06-09 | Commvault Systems, Inc. | Cross-platform virtual machine data and memory backup and replication |
US10740193B2 (en) | 2017-02-27 | 2020-08-11 | Commvault Systems, Inc. | Hypervisor-independent reference copies of virtual machine payload data based on block-level pseudo-mount |
US20180276022A1 (en) | 2017-03-24 | 2018-09-27 | Commvault Systems, Inc. | Consistent virtual machine replication |
US10613939B2 (en) | 2017-03-28 | 2020-04-07 | Commvault Systems, Inc. | Backup index generation process |
US10949398B2 (en) | 2017-03-29 | 2021-03-16 | Commvault Systems, Inc. | Synchronization operations for network-accessible folders |
US10387073B2 (en) | 2017-03-29 | 2019-08-20 | Commvault Systems, Inc. | External dynamic virtual machine synchronization |
US10599527B2 (en) | 2017-03-29 | 2020-03-24 | Commvault Systems, Inc. | Information management cell health monitoring system |
US10664352B2 (en) | 2017-06-14 | 2020-05-26 | Commvault Systems, Inc. | Live browsing of backed up data residing on cloned disks |
US11086834B2 (en) | 2017-09-14 | 2021-08-10 | Commvault Systems, Inc. | Distributed framework for data proximity-based task splitting in a content indexing system |
US10846266B2 (en) | 2017-09-14 | 2020-11-24 | Commvault Systems, Inc. | Distributed architecture for content indexing emails |
US10846180B2 (en) | 2017-09-14 | 2020-11-24 | Commvault Systems, Inc. | Distributed framework for task splitting and task assignments in a content indexing system |
US11036592B2 (en) | 2017-09-14 | 2021-06-15 | Commvault Systems, Inc. | Distributed content indexing architecture with separately stored file previews |
US11263088B2 (en) | 2017-09-14 | 2022-03-01 | Commvault Systems, Inc. | Distributed architecture for tracking content indexing |
US10635546B2 (en) | 2017-12-07 | 2020-04-28 | Commvault Systems, Inc. | Synthesizing a restore image from one or more secondary copies to facilitate data restore operations to a file server |
US10740300B1 (en) | 2017-12-07 | 2020-08-11 | Commvault Systems, Inc. | Synchronization of metadata in a distributed storage system |
US10742735B2 (en) | 2017-12-12 | 2020-08-11 | Commvault Systems, Inc. | Enhanced network attached storage (NAS) services interfacing to cloud storage |
US10592145B2 (en) | 2018-02-14 | 2020-03-17 | Commvault Systems, Inc. | Machine learning-based data object storage |
US10848468B1 (en) | 2018-03-05 | 2020-11-24 | Commvault Systems, Inc. | In-flight data encryption/decryption for a distributed storage platform |
US10877928B2 (en) | 2018-03-07 | 2020-12-29 | Commvault Systems, Inc. | Using utilities injected into cloud-based virtual machines for speeding up virtual machine backup operations |
US10754729B2 (en) | 2018-03-12 | 2020-08-25 | Commvault Systems, Inc. | Recovery point objective (RPO) driven backup scheduling in a data storage management system |
US11321183B2 (en) | 2018-05-02 | 2022-05-03 | Commvault Systems, Inc. | Multi-tiered backup indexing |
US10673943B2 (en) | 2018-05-02 | 2020-06-02 | Commvault Systems, Inc. | Network storage backup using distributed media agents |
US10628267B2 (en) | 2018-05-02 | 2020-04-21 | Commvault Systems, Inc. | Client managed data backup process within an enterprise information management system |
US11249863B2 (en) | 2018-05-02 | 2022-02-15 | Commvault Systems, Inc. | Backup-based media agent configuration |
US10893103B2 (en) | 2018-07-25 | 2021-01-12 | Commvault Systems, Inc. | Distributed and scalable storage management using a storage-microservices server |
US10891304B2 (en) | 2018-07-25 | 2021-01-12 | Commvault Systems, Inc. | Distributed and scalable client-based storage management |
US11016696B2 (en) | 2018-09-14 | 2021-05-25 | Commvault Systems, Inc. | Redundant distributed data storage system |
US11010258B2 (en) | 2018-11-27 | 2021-05-18 | Commvault Systems, Inc. | Generating backup copies through interoperability between components of a data storage management system and appliances for data storage and deduplication |
US11200124B2 (en) | 2018-12-06 | 2021-12-14 | Commvault Systems, Inc. | Assigning backup resources based on failover of partnered data storage servers in a data storage management system |
US10860443B2 (en) | 2018-12-10 | 2020-12-08 | Commvault Systems, Inc. | Evaluation and reporting of recovery readiness in a data storage management system |
US11012508B2 (en) | 2018-12-14 | 2021-05-18 | Commvault Systems, Inc. | Region-based distributed information management system |
US11698727B2 (en) | 2018-12-14 | 2023-07-11 | Commvault Systems, Inc. | Performing secondary copy operations based on deduplication performance |
US11347707B2 (en) | 2019-01-22 | 2022-05-31 | Commvault Systems, Inc. | File indexing for virtual machine backups based on using live browse features |
US10872069B2 (en) | 2019-01-22 | 2020-12-22 | Commvault Systems, Inc. | File indexing for virtual machine backups in a data storage management system |
US10768971B2 (en) | 2019-01-30 | 2020-09-08 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data |
US10996974B2 (en) | 2019-01-30 | 2021-05-04 | Commvault Systems, Inc. | Cross-hypervisor live mount of backed up virtual machine data, including management of cache storage for virtual machine data |
US11126365B2 (en) | 2019-03-11 | 2021-09-21 | Commvault Systems, Inc. | Skipping data backed up in prior backup operations |
US11269732B2 (en) | 2019-03-12 | 2022-03-08 | Commvault Systems, Inc. | Managing structured data in a data storage system |
US11321184B2 (en) | 2019-03-26 | 2022-05-03 | Commvault Systems, Inc. | Streamlined secondary copy operations for data stored on shared file storage |
US20200327017A1 (en) | 2019-04-10 | 2020-10-15 | Commvault Systems, Inc. | Restore using deduplicated secondary copy data |
US11100064B2 (en) | 2019-04-30 | 2021-08-24 | Commvault Systems, Inc. | Automated log-based remediation of an information management system |
US11442623B2 (en) | 2019-05-02 | 2022-09-13 | Commvault Systems, Inc. | Faster browse of secondary copies of block-level data volumes |
US11463264B2 (en) | 2019-05-08 | 2022-10-04 | Commvault Systems, Inc. | Use of data block signatures for monitoring in an information management system |
US20210037112A1 (en) | 2019-07-29 | 2021-02-04 | Commvault Systems, Inc. | Data storage system with rapid restore capability |
US11263173B2 (en) | 2019-07-30 | 2022-03-01 | Commvault Systems, Inc. | Transaction log index generation in an enterprise backup system |
US11513922B2 (en) | 2019-08-14 | 2022-11-29 | Commvault Systems, Inc. | Systems and methods for change block tracking for backing up changed data |
US11218450B2 (en) | 2019-09-11 | 2022-01-04 | Commvault Systems, Inc. | Data protection component scaling in a cloud-based data storage system |
US11237935B2 (en) | 2019-09-11 | 2022-02-01 | Commvault Systems, Inc. | Anomaly detection in data protection operations |
US11256673B2 (en) | 2019-09-11 | 2022-02-22 | Commvault Systems, Inc. | Anomaly detection in deduplication pruning operations |
US20210133167A1 (en) | 2019-11-04 | 2021-05-06 | Commvault Systems, Inc. | Efficient implementation of multiple deduplication databases in a heterogeneous data storage system |
US11442896B2 (en) | 2019-12-04 | 2022-09-13 | Commvault Systems, Inc. | Systems and methods for optimizing restoration of deduplicated data stored in cloud-based storage resources |
US11237924B2 (en) | 2019-12-11 | 2022-02-01 | Commvault Systems, Inc. | Dynamic resizing and re-distribution of destination data storage resources for bare metal restore operations in a data storage management system |
US11223535B2 (en) | 2019-12-31 | 2022-01-11 | Commvault Systems, Inc. | Smart network topology systems and methods |
US11467753B2 (en) | 2020-02-14 | 2022-10-11 | Commvault Systems, Inc. | On-demand restore of virtual machine data |
US11005935B1 (en) | 2020-03-10 | 2021-05-11 | Commvault Systems, Inc. | Using multiple streams with network data management protocol to improve performance and granularity of backup and restore operations from/to a file server |
US11334442B2 (en) | 2020-03-10 | 2022-05-17 | Commvault Systems, Inc. | Management database long-term archiving to a recovery manager |
US11442768B2 (en) | 2020-03-12 | 2022-09-13 | Commvault Systems, Inc. | Cross-hypervisor live recovery of virtual machines |
US11099956B1 (en) | 2020-03-26 | 2021-08-24 | Commvault Systems, Inc. | Snapshot-based disaster recovery orchestration of virtual machine failover and failback operations |
US11748143B2 (en) | 2020-05-15 | 2023-09-05 | Commvault Systems, Inc. | Live mount of virtual machines in a public cloud computing environment |
US11687424B2 (en) | 2020-05-28 | 2023-06-27 | Commvault Systems, Inc. | Automated media agent state management |
US11327663B2 (en) | 2020-06-09 | 2022-05-10 | Commvault Systems, Inc. | Ensuring the integrity of data storage volumes used in block-level live synchronization operations in a data storage management system |
US11537959B2 (en) | 2020-06-16 | 2022-12-27 | Commvault Systems, Inc. | Dynamic computing progress tracker |
US11614883B2 (en) | 2020-07-17 | 2023-03-28 | Commvault Systems, Inc. | Distributed data storage system using erasure coding on storage nodes fewer than data plus parity fragments |
US11494417B2 (en) | 2020-08-07 | 2022-11-08 | Commvault Systems, Inc. | Automated email classification in an information management system |
US11513708B2 (en) | 2020-08-25 | 2022-11-29 | Commvault Systems, Inc. | Optimized deduplication based on backup frequency in a distributed data storage system |
US11108861B1 (en) | 2020-08-26 | 2021-08-31 | Commvault Systems, Inc. | System for managing multiple information management cells |
US11789830B2 (en) | 2020-09-22 | 2023-10-17 | Commvault Systems, Inc. | Anti-entropy-based metadata recovery in a strongly consistent distributed data storage system |
US11570243B2 (en) | 2020-09-22 | 2023-01-31 | Commvault Systems, Inc. | Decommissioning, re-commissioning, and commissioning new metadata nodes in a working distributed data storage system |
US11656951B2 (en) | 2020-10-28 | 2023-05-23 | Commvault Systems, Inc. | Data loss vulnerability detection |
US11474753B2 (en) | 2020-10-30 | 2022-10-18 | Commvault Systems, Inc. | Systems and methods for backing up to a virtual tape library |
US11323513B1 (en) | 2021-01-22 | 2022-05-03 | Commvault Systems, Inc. | Geo-location-based data replication |
US11645175B2 (en) | 2021-02-12 | 2023-05-09 | Commvault Systems, Inc. | Automatic failover of a storage manager |
US11574050B2 (en) | 2021-03-12 | 2023-02-07 | Commvault Systems, Inc. | Media agent hardening against ransomware attacks |
US11561978B2 (en) | 2021-06-29 | 2023-01-24 | Commvault Systems, Inc. | Intelligent cache management for mounted snapshots based on a behavior model |
US11954513B2 (en) | 2021-07-29 | 2024-04-09 | Commvault Systems, Inc. | Scalable recovery and/or migration to cloud- based custom-made virtual machines without using failed machines' credentials |
US11615147B2 (en) | 2021-08-23 | 2023-03-28 | Commvault Systems, Inc. | Mobile storage manager control application for managing a storage manager of an information management system |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63178346A (ja) * | 1987-01-20 | 1988-07-22 | Fujitsu Ltd | ライブラリ管理処理方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4558413A (en) * | 1983-11-21 | 1985-12-10 | Xerox Corporation | Software version management system |
JPS63100562A (ja) * | 1986-10-17 | 1988-05-02 | Hitachi Ltd | フアイルシステム管理方式 |
US4887204A (en) * | 1987-02-13 | 1989-12-12 | International Business Machines Corporation | System and method for accessing remote files in a distributed networking environment |
US5175852A (en) * | 1987-02-13 | 1992-12-29 | International Business Machines Corporation | Distributed file access structure lock |
US5151989A (en) * | 1987-02-13 | 1992-09-29 | International Business Machines Corporation | Directory cache management in a distributed data processing system |
US5001628A (en) * | 1987-02-13 | 1991-03-19 | International Business Machines Corporation | Single system image uniquely defining an environment for each user in a data processing system |
US5202982A (en) * | 1990-03-27 | 1993-04-13 | Sun Microsystems, Inc. | Method and apparatus for the naming of database component files to avoid duplication of files |
US5129082A (en) * | 1990-03-27 | 1992-07-07 | Sun Microsystems, Inc. | Method and apparatus for searching database component files to retrieve information from modified files |
US5032979A (en) * | 1990-06-22 | 1991-07-16 | International Business Machines Corporation | Distributed security auditing subsystem for an operating system |
-
1991
- 1991-01-02 US US07/636,310 patent/US5301286A/en not_active Expired - Fee Related
- 1991-12-16 JP JP3351740A patent/JPH06342392A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63178346A (ja) * | 1987-01-20 | 1988-07-22 | Fujitsu Ltd | ライブラリ管理処理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015532993A (ja) * | 2012-11-01 | 2015-11-16 | 光毅 陶 | 光ディスクに基づくデータベース記憶システム及びその利用方法 |
Also Published As
Publication number | Publication date |
---|---|
US5301286A (en) | 1994-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH06342392A (ja) | ファイル配置方法 | |
US5813000A (en) | B tree structure and method | |
US4945475A (en) | Hierarchical file system to provide cataloging and retrieval of data | |
US6029170A (en) | Hybrid tree array data structure and method | |
US6922688B1 (en) | Computer system storage | |
US7085781B2 (en) | Multi-volume extent based file system | |
US8176013B2 (en) | Systems and methods for accessing and updating distributed data | |
US7162486B2 (en) | System and method for representing named data streams within an on-disk structure of a file system | |
JP4157858B2 (ja) | ストレージ・エリア・ネットワーク(san)ファイル・システムの並列高速バックアップ | |
US5873103A (en) | Data storage management for network interconnected processors using transferrable placeholders | |
US7797283B2 (en) | Systems and methods for maintaining distributed data | |
US5819275A (en) | System and method for superimposing attributes on hierarchically organized file systems | |
US7228299B1 (en) | System and method for performing file lookups based on tags | |
EP0851366B1 (en) | Modified indirect addressing for file system | |
EP1082651B1 (en) | Incremental updating | |
US6952730B1 (en) | System and method for efficient filtering of data set addresses in a web crawler | |
US7657543B1 (en) | Method and system for creating and using shadow roots | |
US20160261694A1 (en) | Method and Apparatus for Tiered Storage | |
US8392477B2 (en) | Seamless remote traversal of multiple NFSv4 exported file systems | |
US20040267822A1 (en) | Rapid restoration of file system usage in very large file systems | |
US20070208757A1 (en) | Mechanism for handling file level and block level remote file accesses using the same server | |
US20030220985A1 (en) | System and method for virtualizing network storages into a single file system view | |
WO1996041283A9 (en) | System and method for superimposing attributes on hierarchically organized file systems | |
US20020188626A1 (en) | Disk storage with modifiable data management function | |
US20160283501A1 (en) | Posix-compatible file system, method of creating a file list and storage device |