JP2002503841A - ステージ・データにスパース・ファイル技術を使用し、次いでリモート・ストレージに格納するシステムおよび方法 - Google Patents

ステージ・データにスパース・ファイル技術を使用し、次いでリモート・ストレージに格納するシステムおよび方法

Info

Publication number
JP2002503841A
JP2002503841A JP2000525831A JP2000525831A JP2002503841A JP 2002503841 A JP2002503841 A JP 2002503841A JP 2000525831 A JP2000525831 A JP 2000525831A JP 2000525831 A JP2000525831 A JP 2000525831A JP 2002503841 A JP2002503841 A JP 2002503841A
Authority
JP
Japan
Prior art keywords
data
storage
storing
storage area
sparse
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2000525831A
Other languages
English (en)
Other versions
JP2002503841A5 (ja
JP4323719B2 (ja
Inventor
キャブレラ,ルイス・フェリペ
スタイナー,ステファン・アール
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2002503841A publication Critical patent/JP2002503841A/ja
Publication of JP2002503841A5 publication Critical patent/JP2002503841A5/ja
Application granted granted Critical
Publication of JP4323719B2 publication Critical patent/JP4323719B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • YGENERAL 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
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 本発明は、データを保管またはバックアップするシステムおよび方法に関する。本システムおよび方法は、バックアップまたはアーカイブ・ストレージへの転送に先立って、ステージング・エリアを用いてデータを一時的に格納する。ローカル・ストレージ(64)からステージング・エリア(76)にデータをコピーし、バックアップまたはアーカイブ・ストレージ(66)に転送するまで、その中に一時的に格納しておく。ステージング・エリア(76)は、スパース・ファイル技術を用い、非ゼロ・データのみを格納するために必要なストレージ空間に実質的に等しいストレージ空間内にゼロ・データおよび非ゼロ・データの混成を格納することが好ましい。一旦データをステージング・エリア(76)からリモート・ストレージ(62)に転送したなら、ステージング・エリア(76)内に割り当てていたストレージ空間の割り当てを解除し、ステージング・エリア(76)に必要なストレージ空間量を最小に抑えることができる。加えて、適宜、ローカル・ストレージ空間(64)も割り当てを解除することができる。スパース・ファイル技術をステージング・エリア(76)として用いることにより、ストレージの必要量を最小に抑え、ステージング・エリア(76)のストレージ空間を管理するためのオーバーヘッドを極力軽減させる。

Description

【発明の詳細な説明】
【0001】 (発明の背景) 発明の分野 本発明は、ローカル・ストレージ・エリアからリモート・ストレージ・エリア
にデータを転送し、保管するシステムおよび方法に関する。更に特定すれば、本
発明は、データをリモート・ストレージに転送する前に、一次的に格納、即ち、
ステージ(staging)するシステムおよび方法に関するものである。 (本技術分野の技術的現状) コンピュータはかつては科学的および技術的努力の秘密研究に属する理解しが
たい奇異なものであったが、今日ではコンピュータは社会の主流に入り、日常生
活の一体化部分となっている。コンピュータによって格納し、管理し、操作する
データ量は、増々増え続けている。コンピュータに格納するデータの重要性は、
凡庸なものから極秘のものまでの範囲に及ぶ。重要な情報の保護に役立てるため
に、種々の格納媒体上に情報を「バックアップ」または「保管」する多くのシス
テムおよび方式が考案されている。重要な情報のコピーを多数扱うことにより、
情報のコピーの1つが損傷したり、または何らかの事情で利用できなくなった場
合、バックアップ・ストレージ媒体から情報を検索することが可能となる。
【0002】 バックアップまたはアーカイブの機能、あるいは多くの場合同義語として用い
られるが、バックアップ・システムは、通常、重要な情報のコピーを多数維持し
、情報のコピーの1つが損傷したり利用できなくなった場合に、当該情報を他の
コピーから検索できるようにすることを意図したものである。一方、アーカイブ
・システムは、通常、特定のファイルまたは記憶装置のような、特定のエンティ
ティに対して行われた変更の完全な履歴を維持することを意図したものである。
しかしながら、バックアップ・システムおよびアーカイブ・システムは、多くの
共通性を有し、一方のシステムに対して論じられたり適用される原理の多くは、
他方にも同様に適用可能である。例えば、双方のシステムは、通常、データをロ
ーカル・ストレージ媒体から、遠隔地に位置する場合もあるバックアップまたは
アーカイブ・ストレージ媒体にコピーする。データをローカル・ストレージ媒体
からバックアップまたはリモート・ストレージ媒体に転送するステップは、いず
れの場合でも全く同じである。
【0003】 ローカル・ストレージ媒体からバックアップ・ストレージ媒体に、バックアッ
プまたはアーカイブの目的でデータをコピーするのは、瞬時的なプロセスではな
い。ローカル・ストレージ媒体からバックアップ・ストレージ媒体にデータを転
送する際に要する時間は、ローカルおよびバックアップ・ストレージ媒体のアク
セス時間、および2つのストレージ媒体間で転送するデータ量によっては、かな
り長くなる場合もある。このプロセスは瞬時的でないので、いくつかの問題が生
ずる可能性がある。例えば、特定のファイルまたはボリュームをバックアップす
る場合、バックアップ手順の最中に当該ファイルまたはボリュームの内容を変更
させず、論理的に一貫性のあるバックアップ・コピーを作成することが、常に重
要である。論理的に一貫性のあるコピーとは、内部に不一致がないコピーのこと
である。例えば、財務トランザクション・データベースのバックアップまたはア
ーカイブを作ることを想定する。また、バックアップが進んでいる最中に、個人
が1つの口座から別の口座に送金しようとしていることも想定する。一方の口座
から出金する(debit)トランザクションおよび他方の口座に入金する(credit )トランザクション双方が同じバックアップ・コピーにバックアップされない場
合、内部不一致が生ずる。
【0004】 このような論理的不一致を避けるために、いくつかの手法を用いることができ
る。1つの手法は、アーカイブまたはバックアップ手順の間、特定のファイルに
対するアクセスを制限または禁止することである。このような手法は、当該ファ
イルに対するアクセスを切断することが現実的に可能な状況では、うまく行く。
しかしながら、状況によっては、このような手法が現実的でない場合もある。コ
ンピュータ・システムによっては、1日24時間、1週間に7日オン・ラインで
なければならない動作に使用する場合もある。これらの環境では、格納してある
情報のバックアップまたはアーカイブ・コピー作成は、非常に困難なこともあり
得る。アーカイブまたはバックアップ・コピーを作成している最中にファイルへ
のアクセスを許可する手法の1つは、バックアップまたは保管する情報を二重化
(duplicate)し、一時的格納エリアに情報を「ステージ」することである。次 いで、情報をステージング・エリアからコピーし、バックアップまたはアーカイ
ブ・ストレージに送ることができる。
【0005】 生憎、情報をステージング・エリアにコピーすることから、いくつかの問題が
生ずる。例えば、ステージ・データを格納するために、ストレージ空間を別途設
けなければならない。データのコピーを多数作成するに連れて、確実なバックア
ップまたはアーカイブ・コピーを作成するために必要なストレージの必要量が増
大する。したがって、バックアップまたはアーカイブ・コピーの作成または維持
に必要となる余分なストレージ空間を極力抑えるように、ステージング・ストレ
ージ空間を管理することが重要である。
【0006】 したがって、バックアップまたはアーカイブ・ストレージへの転送に先立って
、データをステージするために必要なストレージ空間を極力抑えるステージング
機構が求められている。このステージング機構は、ストレージ空間の量を可変と
することができなければならない。何故なら、ステージする必要があるデータ量
は、幅広く変動する要因に応じて増大または減少する可能性があるからである。
更に、ステージング・エリアにおけるストレージ管理は、バックアップまたはア
ーカイブ・システムによる介入を殆どまたは全く必要とせず、システムに対する
運用上の負担を極力軽くしなければならない。
【0007】 バックアップまたはアーカイブ・システムにおいて時々遭遇する別の問題に、
使用するバックアップまたはアーカイブ媒体の種類に関係するものがある。ある
形態のバックアップまたはアーカイブ媒体を最も効率的に使用するには、規定し
たサイズのデータ集合体としてバックアップまたはアーカイブ媒体に書き込む。
例えば、あるシステムでは、光ディスクをアーカイブまたはバックアップ・スト
レージとして利用することが望ましい場合がある。多くの場合、データのバック
アップまたは保管を行う前に、十分な情報を収集し光ディスクを完全に埋める方
が効率的である。このような状況では、ステージング・エリアが十分なデータを
収容し、バックアップ媒体を完全に満たすまで、バックアップまたは保管するデ
ータをステージング・エリアに移動させることが望ましい場合が多い。
【0008】 このようにステージング・エリアを用いる場合、時間的に連続してステージン
グ・エリアにデータを入力する機能が必要となる。このような場合、バックアッ
プまたはアーカイブに追加すべきデータが特定される毎に、必要なストレージ空
間を割り当てることが多くの場合望ましい。したがって、ストレージ空間の量を
可変とすることができ、データを生成するに連れて、ストレージ空間を動的に割
り当てることができるステージング・エリアを有することができれば望ましいで
あろう。更に、バックアップまたはアーカイブ・システムに対するオーバーヘッ
ドが殆どまたは全くなく、このような機能を備えることができれば、非常に望ま
しいであろう。 (発明の概要) 当技術分野の技術的現状における前述の問題は、本発明によって確実に克服さ
れることとなった。本発明は、データをステージするために必要なストレージ空
間量を最小に抑えつつ、同時にアーカイブまたはバックアップ・システムに対す
る運用上の負担を極力軽くするステージング機構を用いて、データを保管または
バックアップするシステムおよび方法に関するものである。ストレージ空間およ
び運用上の負担双方を極力抑えるために、本発明は、スパース・ファイル技術を
用い、リモート・ストレージ媒体への転送に先立ってデータをステージする。本
発明の説明(context)では、バックアップまたはアーカイブ・ストレージのこ とを、リモート・ストレージと呼ぶことにする。リモートという命名は、通常コ
ンピュータ・システムによって利用するローカル・ストレージ・ボリュームとは
別個で離れたストレージを表現することを意図するものである。リモート・スト
レージは、必ずしも、ストレージがアーカイブ・システムから離れて位置するこ
とを意味する訳ではない。アーカイブまたはバックアップ・ストレージは、この
ような目的に適しているのであれば、あらゆるストレージ媒体を含むことができ
る。このようなストレージ媒体の位置は、バックアップまたはローカル・システ
ム内部である場合もあり、あるいはバックアップまたはアーカイブ・システムか
ら離れている場合もある。
【0009】 スパース・ファイル技術とは、スパース・データを効率的に格納するために設
計された技術のことである。スパース・データとは、有用なデータ即ち非ゼロ・
データを含むデータのある部分と、ゼロ・データを含むデータの他の部分とを有
するデータのことである。このような状況に遭遇することは多く、例えば、疎に
入力した(populate)マトリクスまたはスプレッドシートにおいて、あるエント
リは非ゼロであるが、マトリクスまたはスプレッドシードの大部分がゼロ・デー
タを収容する場合がある。スパース・ファイル技術は、このような情報をローカ
ル・ストレージ媒体に格納するのに先立って、ゼロ・データを除去するが、デー
タを検索する際には再現することができるようなフォーマットで格納するように
設計している。本発明はあらゆるスパース・ファイル技術を利用可能であるが、
一実施形態は、Windows NTのスパース・ファイル機能を用いて、所望
の特性を有するステージング・エリアを作成する。
【0010】 Windows NTのスパース・ファイル技術を利用することにより、ステ
ージング・ストレージの必要性に応じて拡大および縮小が可能なステージング・
エリアを備えることができる。スパース・ファイルに非ゼロ・データを格納する
場合、当該非ゼロ・データを格納するのに十分なストレージ空間を自動的に割り
当てる。スパース・ファイルにゼロ・データを格納する場合、またはスパース・
ファイル内に既に格納してあるデータをゼロ・データと置換する場合、ゼロ・デ
ータを除去し、ゼロにしたあらゆるストレージ空間の割り当てを解除する(deal
locate)。こうして、スパース・ファイル技術は、ゼロ・データおよび非ゼロ・
データの混成を、非ゼロ・データを格納するために必要なストレージ空間にほぼ
等しい空間に格納することを可能にする。ストレージ空間は、必要に応じて自動
的に割り当て、そして割り当てを解除するので、スパース・ファイル技術を用い
たステージング・エリアは、事実上バックアップまたはアーカイブ・サービスに
対するオーバーヘッドなく、データをステージング・エリアから添付または除去
することを可能にする。
【0011】 本発明を用いてデータをバックアップまたは保管する方法は、ステージング・
エリアに転送すべき十分なデータがローカル・ストレージ上に存在するときに開
始する。例えば、データ生成部がデータを生成し、それをローカル・ストレージ
上に格納している場合、規定量のデータをローカルに格納したとき、または特定
の時間が経過したときに、スパース・ファイル技術を用いてデータをローカル・
ストレージからステージング・エリアにコピーまたは移動することができる。こ
のエリアに移動したデータを、スパース・ファイルに格納する。スパース・ファ
イルにデータを格納する際、スパース・ファイルはあらゆるゼロ部分を排除する
。ステージング・エリア内のデータ量を監視し、バックアップまたはアーカイブ
・セッションを起動すべきときを特定することも可能である。あるいは、最後の
バックアップまたはアーカイブ以来の時間を監視し、特定の時間が経過したとき
にセッションを起動することも可能である。アーカイブまたはバックアップ・セ
ッションを起動する時点以前にローカル・ストレージに追加のデータが利用可能
になった場合、このようなデータは、ステージング・エリア内に既に格納してあ
るデータに添付することができる。一旦バックアップまたはアーカイブ・セッシ
ョンを起動し、データをステージング・エリアからリモート・ストレージに移動
したなら、バックアップまたは保管したデータのステージング・エリア・コピー
を保持する必要はない。ステージング・エリア内で転送したデータを格納するた
めに割り当てていたストレージ空間は、安全に解放し割り当てを解除することが
できる。スパース・ファイル技術を用いる場合、バックアップまたは保管したデ
ータを単にゼロにすることによって、これを行うことができる。次いで、スパー
ス・ファイル技術は、ゼロにしたデータをローカル・ストレージから割り当て解
除、即ち、除去する。状況によっては、一旦データをステージング・エリアにコ
ピーしたなら、またはデータをバックアップまたはアーカイブ・ストレージに転
送した後に、データ生成部が使用していたローカル・ストレージ・エリアからス
トレージ空間の割り当てを解除し、除去することも可能な場合がある。
【0012】 本発明の更に別の利点は、以下に続く説明に明記してあり、部分的にはその説
明から自明であり、あるいは本発明の実施によって習得することができる。本発
明の利点は、添付した特許請求の範囲に特定的に指摘した手段(instrument)お
よび組み合わせによって、実現し獲得することができる。本発明のこれらおよび
その他の特徴は、以下の説明および添付した特許請求の範囲から一層明らかとな
り、以下に明記するように本発明の実施によって習得することができる。 (図面の簡単な説明) 本発明の先に引用した利点およびその他の利点を得るために、添付図面に示す
その具体的な実施形態を参照しながら、先に端的に説明した本発明の更に特定的
な説明を行う。これらの図面は、本発明の典型的な実施形態のみを図示するので
あり、したがってその範囲の限定と見なすべきでないことを理解の上で、添付図
面の使用を通じて、具体性を高め詳細に本発明の記述および説明を行う。 (好適な実施形態の詳細な説明) 以下に、本発明のシステムおよび方法を実現するために用いる実施形態の構造
または処理のいずれかを図示する図面を用いて、本発明について説明する。この
ように図面を用いて本発明を提示することは、その範囲の限定として解釈すべき
ことではない。本発明は、階層状データ格納のための方法およびシステム双方を
念頭に入れている。本発明の実施形態は、種々のコンピュータ・ハードウエアを
備えた特殊目的コンピュータまたは汎用コンピュータから成るものとすることが
でき、以下で更に詳細に説明する。
【0013】 また、本発明の範囲に該当する実施形態は、実行可能な命令またはデータ・フ
ィールドが記憶されているコンピュータ読み取り可能媒体も含む。このようなコ
ンピュータ読み取り可能媒体は、汎用コンピュータまたは特殊目的コンピュータ
によってアクセス可能で、かつ入手可能なあらゆる媒体とすることができる。一
例として、限定ではなく、このようなコンピュータ読み取り可能媒体は、RAM
、ROM、EEPROM、CD−ROMまたはその他の光ディスク・ストレージ
、磁気ディクス・ストレージまたはその他の磁気記憶装置、あるいは所望の事項
可能な命令またはデータ・フィールドを格納するために用いることができ、汎用
コンピュータまたは特殊目的コンピュータによってアクセス可能なその他のあら
ゆる媒体を含むことができる。前述の組み合わせも、コンピュータ読み取り可能
媒体の範囲に含まれて当然である。実行可能な命令とは、例えば、汎用コンピュ
ータ、特殊目的コンピュータ、または特殊目的処理装置に、ある種の機能または
機能群を実行させる、命令やデータを含む。
【0014】 図1および以下の論述は、本発明を実現可能な、適当な計算機環境の端的で全
体的な説明を行うことを意図したものである。本発明は、パーソナル・コンピュ
ータが実行するプログラム・モジュールのような、コンピュータ実行可能命令に
全体的に関連して説明するが、これが必要条件ということではない。一般的に、
プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネ
ント、データ構造等を含み、特定のタスクを実行したり、あるいは特定の抽象的
なデータ型を実装する。更に、本発明は、ハンド・ヘルド型デバイス、マルチ・
プロセッサ・システム、マイクロプロセッサを用いたまたはプログラム可能な民
生用電子機器、ネットワークPC、ミニコンピュータ、メインフレーム・コンピ
ュータ等を含む、その他のコンピュータ・システム構成とでも実施可能であるこ
とを、当業者は認めよう。また、本発明は、分散型計算機環境においても実施可
能であり、その場合、タスクは、通信ネットワークを通じてリンクしてあるリモ
ート処理デバイスによって実行する。分散型計算機環境では、プログラム・モジ
ュールは、ローカルおよびリモート記憶装置双方に位置することができる。
【0015】 図1を参照すると、本発明を実現するシステム例は、従来のコンピュータ20
の形態の汎用計算機を含み、演算装置21、システム・メモリ22、およびシス
テム・メモリ22ないし演算装置21を含む種々のシステム・コンポーネントを
結合するシステム・バス23を含む。システム・バス23は、種々のバス・アー
キテクチャのいずれかを用いたメモリ・バスまたはメモリ・コントローラ、周辺
バス、およびローカル・バスを含む、数種類のバス構造のいずれでもよい。シス
テム・メモリは、リード・オンリ・メモリ(ROM)24、およびランダム・ア
クセス・メモリ(RAM)25を含む。起動中等においてコンピュータ20内の
エレメント間の情報転送に供する基本ルーチンを収容する基本入出力システム(
BIOS)26は、ROM24に格納しておくことができる。また、コンピュー
タ20は、図示しない磁気ハード・ディスクの読み取りおよび書き込みを行う磁
気ハード・ディスク・ドライブ27、リムーバブル磁気ディスク29の読み取り
および書き込みを行う磁気ディスク・ドライブ28、ならびにCD−ROMまた
はその他の光媒体のようなリムーバブル磁気ディスク31の読み取りおよび書き
込みを行う光ディスク・ドライブ30も含むことができる。磁気ハード・ディス
ク・ドライブ27、磁気ディスク・ドライブ28、および光ディスク・ドライブ
30は、ハード・ディスク・ドライブ・インターフェース32、磁気ディスク・
ドライブ・インターフェース33、および光ディスク・ドライブ・インターフェ
ース34によって、それぞれシステム・バス23に接続してある。これらのドラ
イブおよびそれに関連するコンピュータ読み取り可能媒体は、コンピュータ読み
取り可能命令、データ構造、プログラム・モジュール、およびコンピュータ20
用のその他のデータの不揮発性格納を可能にする。ここに記載する環境の一例は
、磁気ハード・ディスク27、リムーバブル磁気ディスク29およびリムーバブ
ル光ディスク31を採用するが、磁気カセット、フラッシュ・メモリ・カード、
ディジタル・ビデオ・ディスク、ベルヌーイ・カートリッジ、ランダム・アクセ
ス・メモリ(RAM)、リード・オンリ・メモリ(ROM)のような、コンピュ
ータによるアクセスが可能なデータを格納することができる、他の種類のコンピ
ュータ読み取り可能媒体も、動作環境の一例において使用可能であることは、当
業者には認められよう。
【0016】 多数のプログラム・モジュールを、ハード・ディスク、磁気ディクス29、光
ディスク31、ROM24またはRAM25上に格納することができ、オペレー
ティング・システム35、1つ以上のアプリケーション・プログラム36、その
他のプログラム・モジュール37、およびプログラム・データ38を含む。ユー
ザは、キーボード40およびポインティング・デバイス42のような入力デバイ
スによって、コマンドおよび情報をコンピュータ20に入力することができる。
他の入力デバイス(図示せず)として、マイクロフォン、ジョイスティック、ゲ
ーム・パッド、衛星ディッシュ(satellite dish)、スキャナ等を含むことがで
きる。これらおよびその他の入力デバイスは、多くの場合、システム・バス23
に結合してあるシリアル・ポート・インターフェース46を介して、演算装置2
1に接続しているが、パラレル・ポート、ゲーム・ポートまたはユニバーサル・
シリアル・バス(USB:universal serial bus)のようなその他のインターフ
ェースによって接続することも可能である。モニタ47または別の種類の表示装
置も、ビデオ・アダプタ48のようなインターフェースを介して、システム・バ
ス23に接続する。モニタに加えて、パーソナル・コンピュータは、通常、スピ
ーカやプリンタのような、その他の周辺出力デバイス(図示せず)を含む。
【0017】 コンピュータ20は、リモート・コンピュータ49のような1つ以上のリモー
ト・コンピュータへの論理接続を用いて、ネットワーク環境で動作することも可
能である。リモート・コンピュータ49は、別のパーソナル・コンピュータ、サ
ーバ、ルータ、ネットワークPC、ピア・デバイス、またはその他の一般的なネ
ットワーク・ノードとすることができ、通常、コンピュータ20に関して先に記
載したエレメントの多くまたは全てを含むが、メモリ記憶装置59だけを図1に
示す。図1に示す論理接続は、ローカル・エリア・ネットワーク(LAN)51
およびワイド・エリア・ネットワーク(WAN)52を含み、ここでは、例示の
ためにこれらを提示するが、限定ではない。このようなネットワーク環境は、事
務所の企業規模のコンピュータ・ネットワーク、イントラネットおよびインター
ネットでは一般的である。
【0018】 LANネットワーク環境で用いる場合、コンピュータ20は、ネットワーク・
インターフェースまたはアダプタ53を介して、ローカル・ネットワーク51に
接続する。WANネットワーク環境で用いる場合、コンピュータ20は通常モデ
ム54またはインターネットのようなワイド・エリア・ネットワーク52を通じ
て通信を確立するその他の手段を含む。モデム54は、内蔵型でも外付け型でも
よく、シリアル・ポート・インターフェース46を介してシステム・バス23に
接続する。ネットワーク環境では、コンピュータ20に関連して図示したプログ
ラム・モジュールまたはその一部を、リモート・メモリ記憶装置に格納すること
も可能である。図示のネットワーク接続は一例であり、コンピュータ間に通信リ
ンクを確立するその他の手段も使用可能であることは認められよう。
【0019】 ここに論ずる本発明の例は、通常、アーカイブ・サービスを利用する。尚、本
発明は、アーカイブ・システムだけでなくバックアップ・システムにも適用可能
であることは理解されよう。したがって、アーカイブ・システムまたはサービス
を詳細に示す例は代表例であり、本発明の範囲を限定するように解釈してはなら
ない。同様に、バックアップまたはアーカイブ・コピーを格納するストレージも
、以下の例では、リモート・ストレージと呼ぶことにする。この命名は、通常コ
ンピュータ・システムによって使用するローカル・ストレージとは別個で離れた
ストレージを示すことを意図するものである。リモートという命名は、必ずしも
、バックアップまたはアーカイブ・ストレージの位置を特定するために用いる訳
ではない。例えば、特定のコンピュータ・システムに直接取り付けたバックアッ
プまたはアーカイブ・ストレージも、当該ストレージは遠隔地に位置するのでは
ないが、リモート・ストレージと呼ぶ。このように、リモート・ストレージとい
う用語は、広く解釈することを意図しており、バックアップまたはアーカイブ・
ストレージにバックアップまたは保管するデータを格納するために用いる、ロー
カル・ハード・ディスクのような、ローカル・ストレージからは別個の、ローカ
ルおよびリモート双方のバックアップおよびアーカイブ・ストレージ全てを含む
のは当然である。
【0020】 ここで図2を参照し、本発明の一実施形態の上位図を示す。図2では、データ
生成部60のような1つ以上のデータ生成部がデータを作成し、これをリモート
・ストレージ62のようなバックアップまたはアーカイブ記憶装置にバックアッ
プまたは保管する。データ生成部60が生成するデータは、ローカル・コンピュ
ータ・システムのハード・ディスクのような、ローカル・ストレージ媒体に格納
する。図2では、データ生成部60は、データ・ファイル64内にデータを格納
するように示してある。データ・ファイル64は、データ生成部60が生成した
データを格納するために用いるローカル・ストレージ・エリアを表わす。このよ
うなデータは、必ずしも、従来の意味ではデータ・ファイルに格納しなければな
らない訳ではない。しかしながら、殆どの場合に該当する。
【0021】 第1イベントが発生し、ローカル・ストレージ・エリアのデータをステージン
グ・エリアに転送することが示された場合、アーカイブ・システム66は、適切
な量のデータを、データ・ファイル64のようなローカル・ストレージ・エリア
から、データを一時的に格納するのに適したステージング・ストレージ・エリア
に移動させる。したがって、本発明の範囲内の実施形態は、データ生成サービス
によってデータ格納に用いられるローカル・ストレージ・エリアから、データを
一時的にステージするために用いられるステージング・ストレージ・エリアにデ
ータを移動させる手段を備えることができる。例えば、適切なロケーションから
データを読み出し、ステージング・ストレージ・エリア内にデータのコピーを格
納するというように、この機能を行うあらゆる機構が利用可能である。直接メモ
リ転送等のような、そのほかの機構も利用可能である。図2では、データを移動
させる手段を、矢印68、70および72で示す。これらの矢印は、データ・ブ
ロック74のようなデータのブロックを、ローカル・ストレージ・エリアからス
テージング・ストレージ・エリアに移動させることを図示したものである。
【0022】 先に論じたように、ステージング・ストレージ・エリアは、効率的にデータを
格納し、不要なストレージ空間を全て排除することが望ましい。一実施形態では
、本発明は、ゼロ・データおよび非ゼロ・データの混成から成るスパース・デー
タを、非ゼロ・データを格納する際に必要なストレージ空間未満または実質的に
これに等しいストレージ空間に格納する手段を用いる。言い換えると、このよう
な手段は、最低限として、ゼロ・データを格納するために必要な空間に等しいス
トレージ空間を実質的に排除することができる。これは、以下で説明するように
、またはその他のいずれかの方法で、ゼロ・データを格納するのに必要なストレ
ージ空間を実質的に排除することによって、行うことができる。このような手段
は、更に進んで、非ゼロ・データを圧縮し、非ゼロ・データを格納するために必
要なストレージ空間を縮小することも可能である。しかしながら、本発明の全て
の実施形態にこのようなことが必要な訳ではない。とは言え、ゼロ・データを格
納するために必要となるはずのストレージ空間に等しいストレージ空間を実質的
に排除することができれば、望ましいであろう。限定ではなく一例として、図2
では、このような格納手段は、データ・ステージング・スパース・ファイル76
で例示している。スパース・ファイル76を実現するには、いずれの種類の技術
でも利用可能である。Windows NTにおける適当な技術について、以下
で更に詳しく論ずる。必要とされる全ては、スパース・ファイル76が、非ゼロ
・データのみを格納するために必要なストレージ空間に実質的に等しいストレー
ジ空間に、非ゼロ・データおよびゼロ・データの混成から成るデータを格納でき
ることである。
【0023】 第2の所定のイベントが発生すると、アーカイブ・システム66は、スパース
・ファイル76内のデータ全てまたはその一部をリモート・ストレージ62に転
送する。したがって、本発明の範囲内に該当する実施形態は、ステージング・ス
トレージ・エリアからリモート・ストレージ媒体にデータを転送する手段を備え
ることができる。限定ではなく一例として、図2では、このような手段は、矢印
78、80および82で示しており、スパース・ファイル76からデータを移動
させ、リモート・ストレージ通信インフラストラクチャ84に送出することを示
す。このようなデータは、スパース・ファイル76からデータを検索し、直接デ
ータをリモート・ストレージ62に送出するか、あるいは中間システムまたはサ
ブシステムに送出し、次いでこれが適切なデータをリモート・ストレージに送出
することができるあらゆる機構によって実現することができる。
【0024】 図2では、アーカイブ・システム66がデータをリモート・ストレージ62に
送出するために用いる機構は、リモート・ストレージ通信インフラストラクチャ
84である。本発明の実施形態の中には、リモート・ストレージ62を直接、ア
ーカイブ・システム66が常駐するコンピュータ・システムに取り付けることが
可能な場合もある。このような状況では、リモート・ストレージ通信インフラス
トラクチャ84は、ドライバに他ならず、関連するハードウエア・デバイスを用
いてリモート・ストレージ62にデータを格納し、あるいはリモート・ストレー
ジ62からデータを検索することができる。しかしながら、他の実施形態では、
リモート・ストレージ62は、アーカイブ・システム66が常駐するコンピュー
タ・システムとは別個の場所に配置することも可能である。このような実施形態
では、リモート・ストレージ通信インフラストラクチャ84は、アーカイブ・シ
ステム66がデータをリモート・ストレージ62に転送することを可能にするた
めに必要な、種々のドライバ、インターフェース・カード、ネットワーク、コン
ピュータ・システム、サブシステム等を表わすことができる。必要とされる全て
は、アーカイブ・システム66が、リモート・ストレージ62がどこに位置して
いても、情報をリモート・ストレージ62に転送する機能(ability)である。
【0025】 データ・ブロック86のようなデータをスパース・ファイル76からリモート
・ストレージ62に転送した後、スパース・ファイル76にデータを維持する必
要はない。したがって、スパース・ファイル76からデータを削除してもよく、
以前データが占有していたストレージの割り当てを解除し、スパース・ファイル
76の全体的なデータ・ストレージ要求量を減少させることができる。したがっ
て、本発明の範囲内に該当する実施形態は、データをステージング・ストレージ
・エリアからリモート・ストレージに転送した場合、ステージング・エリア内の
ストレージ空間を割り当て解除する手段を備えることができる。限定ではなく一
例として、図2では、このような手段を矢印88で示す。ストレージの割り当て
を解除する手段を実現するために用いる正確な機構は、スパース・ファイル76
およびアーカイブ・システム66の部分を実現するために用いる技術に左右され
る。以下で更に詳しく論ずるが、スパース・ファイル76内に格納してあるデー
タがゼロである場合に、スパース・ファイル76が自動的にストレージ空間の割
り当てを解除するのであれば、割り当て解除手段は、スパース・ファイル76内
のデータをゼロ化(zeroing)する手段を備えることができる。
【0026】 既に説明したように、本発明の範囲内に該当する実施形態は、非ゼロ・データ
を格納するために必要なストレージ空間に実質的に等しいストレージ空間に、ゼ
ロ・データおよび非ゼロ・データの混成から成るスパース・データを格納する手
段を備えることができる。このような手段は、この機能を実行可能ないずれの機
構でもよい。一例として、このような手段は、スパース・ファイルを構成すると
して、既に記載した。適切な格納手段を実現するためには、いずれのスパース・
ファイル技術でも使用可能である。しかしながら、一実施形態では、本発明は、
NTファイル・システム(NTFS)のスパース・ファイル機構を利用する。W
indows NTファイル・システムについては、Microsoft Press(マイク ロソフト出版)が出版した、Helen Custer(ヘレン・カスター)の”Inside the
Windows NT File System”(Windows NTファイル・システムの内側)に記載さ れている。その内容は、この言及により本願にも含まれるものとする。NTFS
の重要度が高い特徴の一部について以下に説明し、本発明において有用なNTF
Sの様々なコンポーネントを例示することにする。本発明のステージング・エリ
アにはその他のあらゆるスパース・ファイル技術でも使用可能であるので、この
ような論述は、限定ではなく、一例として与えるである。
【0027】 ここで図3を参照し、Windows NTFSファイルの種々の属性を示す
図を提示する。図3において、ファイルを構成する属性を2つの基本的グループ
に分割することができる。第1グループはシステム属性を含み、第2グループは
ユーザ属性を含む。一般に、システム属性は、システムがその種々の機能を実行
するために必要な情報または要求する情報を格納するために用いる。このような
システム属性は、一般に、ロバストなファイル・システムの実現を可能にする。
一般に、システム属性の正確な数および形式は、利用する個々のオペレーティン
グ・システムまたは個々のファイル・システムに全体的に依存する。一方、ユー
ザ属性は、ユーザ制御データを格納するために用いる。これは、ある状況の下で
は、ユーザは1つ以上のシステム属性へのアクセスを得ることができないという
ことを言っているのではない。しかしながら、ユーザ属性は、ユーザまたはクラ
イアント・プログラムが対象データをプログラムに格納できる、ストレージ・ロ
ケーションを定義する。図3では、システム属性は、標準情報属性90、属性リ
スト92、名称属性94、セキュリティ記述子96、およびその他のシステム属
性98から成る。ユーザ属性は、データ属性100およびその他のユーザ属性1
02を含む。
【0028】 標準情報属性90は、リード・オンリ、システム、隠れ(hidden)等のような
標準的な「MS−DOS」属性を表わす。属性リスト92は、ファイルが、マス
タ・ファイル・テーブルに記録されている1つの記憶レコード以上を占める場合
に、NTFSがファイルを構成する追加の属性の場所を識別するために用いる属
性である。マスタ・ファイル・テーブルは、ファイルまたはディレクトリの常駐
属性全てを格納してある場所である。名称属性94は、ファイルの名称である。
ファイルは、NTFS内に多数の名称属性を有することができ、例えば、長いフ
ァイル名称、短いMS−DOSファイル名称等がある。セキュリティ記述子属性
96は、Windows NTが、ファイルを所有する者およびそれにアクセス
できる者を指定するために用いるデータ構造を含む。その他のシステム属性98
は、NTFSファイルの一部とすることができるその他のシステム属性を表わす
。これらの属性については、先に引用して本願にも含まれるものとした、Inside
the Windows NT File Systemに更に詳しく記載されている。通常、NTFSフ ァイルは、図3にデータ属性100として示すデータ属性を1つ以上有する。殆
どの従来のファイル・システムは、単一のデータ属性のみに対応する。データ属
性とは、基本的に、ユーザ制御データを格納することができるロケーションのこ
とである。例えば、ワード・プロセシング文書の文書は、通常、ファイルのデー
タ属性の中に格納する。NTFSファイル・システムでは、ファイルは多数のデ
ータ属性を有することができる。1つのデータ属性を「無名」データ属性(unna
med data attribute)と呼び、一方他の属性は有名データ属性であり、各々関連
する名称を有する。データ属性の各々は、異なる形式のユーザ制御データを格納
することができるストレージ・ロケーションを表わす。
【0029】 1つ以上のデータ属性に加えて、ファイルは、その他の属性102で例示する
ように、その他のユーザ定義属性も有することができる。このような属性は、ユ
ーザが定義しファイルに格納する、他のあらゆる属性を表わす。このようなユー
ザ属性は、ユーザが望むあらゆる目的のために、定義し、作成し、用いることが
できる。
【0030】 以上の論述は特定の形式のファイルに関する詳細に入り込んだが、このような
ことは、例示に過ぎず、本発明の範囲を限定するものとして解釈してはならない
。本発明は、あらゆる形式のファイルまたはその他のエンティティとでも動作す
る。
【0031】 次に図4を参照し、スパース・ファイル・ストレージ機構の一例を提示する。
この例は、NTFSが用いてスパース・ファイルを格納する機構を示す。更なる
情報は、先に引用して本願にも含まれるものとした、Inside the Windows NT Fi
le Systemの第6章において見出すことができる。図4では、全体的に104で 示すデータ・ファイルは、非ゼロ・データ106(陰影なしブロックで示す)お
よびゼロ・データ108(陰影付きブロックで示す)の混成を有する。NTFS
では、ファイルは、クラスタと呼ぶ、一連の割り当て単位でデータを格納する。
NTFSは、0からmまでの仮想クラスタ番号(VCN)を用いて、ファイルの
クラスタを列挙する。データ・ファイル104は、0〜14と付番した15個の
クラスタを有する。図4では、データ・ファイル104の仮想クラスタ番号を、
全体的に110で示す。各VCNは、クラスタのディスク・ロケーションを識別
する、対応の論理クラスタ番号(LCN)にマップする。図4のデータ・ファイ
ル104は、1372ないし1375、1553ないし1557、および181
0ないし1815と付番した、3つのクラスタ・グループ(ディスク割り当て)
を有する。図4では、論理クラスタ番号を全体的に112で示す。
【0032】 NTFSでは、ファイルのデータ属性は、VCNをLCNにマップする情報を
含む。データ・ファイル104のデータ属性を図4では114で示す。尚、デー
タ属性は、ファイルに対するディスク割り当ての各々に、1つのエントリを含む
ことを注記しておく。
【0033】 先の論述では、クラスタという用語は、最小割り当て単位を定義する、ディス
ク上のセクタ集合体に言及するために用いた。NTFSは、いくつのセクタが1
つのクラスタを構成するのかについて判断する機構を定義する。クラスタおよび
セクタがどのように関係するのかについての更なる情報は、先に引用して本願に
も含まれるものとした、Inside the Windows NT File Systemに見出すことがで きる。本発明の目的上、クラスタおよびセクタ間の対応は無関係とする。図4に
示す方式は、クラスタを構成するセクタ数には無関係に、動作する。
【0034】 図4に示すように、データ・ファイル104はデータがゼロであるエリアをい
くつか含む。これらのエリアは、VCN2〜8およびVCN11〜13である。
これらのクラスタはゼロを含むので、あるエンティティがディスクからデータを
読み出すときにゼロ・データのロケーションを再現することができれば、ディス
ク上にゼロ・データを格納しておく必要はない。言い換えると、ディスク上に物
理的に格納する必要があるクラスタは、クラスタVCN0〜1、VCN9〜10
、およびVCN14だけである。これは、図4では全体的に116で示す。この
場合、VCN0および1をそれぞれLCN1137およびLCN1138に格納
し、VCN9、10および14をそれぞれLCN1411、1412および14
13に格納する。
【0035】 データ属性への適切なエントリを作成することにより、ゼロ・クラスタのロケ
ーションは、データを読み出すときに再現可能となる。データ属性の一例を全体
的に118で示す。どのようにデータ属性がゼロ・クラスタのロケーション再現
を可能にするのかについての一例として、エントリ120を調べる。エントリ1
20は、VCN0がLCN1137にて開始し、連続クラスタ数が2であること
を示す。したがって、VCN0および1は、LCN1137にて開始して読み出
される。しかしながら、エントリ122はVCN9から開始することに注意する
こと。つまり、VCN2〜8はゼロ・クラスタに違いなく、読み出し要求を受け
取ったときに、これらのクラスタは、VCN0および1の後に適切な数のゼロ・
クラスタを挿入することによって、再現することができる。NTFSがどのよう
にスパース・ファイル技術を用いてゼロ・クラスタを圧縮し排除するかについて
の更なる情報は、先に引用して本願にも含まれるものとした、Inside the Windo
ws NT File Systemの第6章において見出すことができる。
【0036】 ここで図5を参照し、ローカルに格納したデータをリモート・ストレージにバ
ックアップまたは保管するために一実施形態が利用可能なステップを示すフロー
図を提示する。図5において、本方法は判断ブロック124から開始し、ステー
ジング・エリアにステージするだけの十分なデータがローカル・ストレージ内に
あるか否かについて確認する。ステージするだけの十分なデータがローカル・ス
トレージ内にない場合、システムは、図5において時間遅延126で示す所与の
時間期間だけ待ち、ローカル・ストレージ内のデータ量を再度チェックする。尚
、判断ブロック124および時間遅延126は、ローカル・ストレージ内にステ
ージング・ファイルにステージするだけの十分なデータがあるか否かについてシ
ステムが調べるために周期的にチェックする際に用いる機構を示す。所与のロー
カル・ストレージを利用したときにステージング・エリアにデータをステージす
る代わりに、本システムの他の実施形態では、ローカル・ストレージ内のデータ
量には関係なく、周期的に、得られるデータをいずれもステージすることも可能
である。言い換えると、データをステージング・エリアにステージするためのト
リガ・イベントは、データ量の蓄積ではなく、経過時間の満了となる。
【0037】 ここで図5に戻り、一旦トリガ・イベントが発生したなら、所与のデータ量の
蓄積、所与の時間遅延の満了、データをステージするコマンドの受け取り、また
はその他のトリガ・イベントのいずれであっても、実行はステップ128に進み
、ローカル・ストレージからステージング・ファイルにデータをコピーする。こ
のステップは、数種類の形態から1つを取ることができる。例えば、データがロ
ーカルおよびリモート双方に位置する場合、ステップ128は単純なコピーとし
て、適切なデータを二重化し、データがローカル・ストレージおよびステージン
グ・ファイル双方に位置するようにすればよい。しかしながら、データをローカ
ル・ストレージからリモート・ストレージに移動させる場合、ステップ128は
ローカル・ストレージからステージング・エリアにデータを移動させ、データが
ステージング・エリアにのみ位置し、ローカル・ストレージ・エリア内には位置
しないようにすればよい。しかしながら、データをローカル・ストレージからリ
モート・ストレージに移動させる場合であっても、この時点では単にデータをコ
ピーし、ローカル・ストレージおよびステージング・ファイル双方にデータが位
置するようにし、データをリモート・ストレージに置くことに成功した後に、ロ
ーカル・ストレージからデータを削除または排除することが望ましい場合もある
。これについては、以下のステップ136に関連付けて更に詳しく説明する。
【0038】 ステップ128においてデータをステージング・ファイルにコピーした後、シ
ステムは次に第2のトリガ・イベントを待つ。種々の実施形態では、このトリガ
・イベントは、数種類のことの1つとすることができる。例えば、外部ソースか
らのコマンド受信を、トリガ・イベントとして用いる実施形態もあり得る。別の
実施形態では、トリガ・イベントは、固定時間の満了としてもよい。更に別の実
施形態では、トリガ・イベントは、ステージング・ファイル内にある量のデータ
が存在することとしてもよい。図5に示す実施形態では、トリガ・イベントは、
時間遅延の満了である。したがって、判断ブロック130は、リモート・ストレ
ージ接続を確立する時点か否かについて判定を行う。その時点でない場合、実行
は判断ブロック138に進み、ステージング・ファイルに更にデータを添付すべ
きか否かについて判定を行う。この判定は、判断ブロック124および判断ブロ
ック130に関連付けて先に説明したような、いずれかのトリガ・イベントに基
づいて行えばよい。ステージング・ファイルに添付する別のデータが存在する場
合、ステップ140においてデータを添付する。いずれの場合でも、実行は判断
ブロック130に戻り、リモート・ストレージへの接続を開始する第2のトリガ
・イベントを待つ。
【0039】 先に説明したように、リモート・ストレージは、必ずしも、バックアップまた
はアーカイブ・ストレージが遠隔地に位置することを意味する訳ではない。この
命名が意味するのは、バックアップまたはアーカイブ・ストレージがローカル・
ストレージ・エリアとは別個であるということである。一方、リモート・ストレ
ージが実際に遠隔地に位置することもあり得る。このように、リモート・ストレ
ージとして用いるストレージの種類によって、リモート・ストレージへの接続の
確立は、バックアップまたはアーカイブ・サービスが位置するコンピュータに取
り付けられているディスクまたはその他の記憶装置に単に書き込むだけである場
合もあり、あるいはネットワークを通じた接続、ダイアル・アップ接続、他のコ
ンピュータを経由した接続等の確立を必要とし遥かに複雑な場合もある。使用す
る機構は、使用するリモート・ストレージの種類によって異なる。
【0040】 第2のトリガ・イベントが発生し、リモート・ストレージへの接続を確立する
時点である場合、ステップ132は、データをステージング・ファイルからリモ
ート・ストレージに転送することを指示する。データを転送する正確な機構は、
用いるリモート・ストレージの種類によって異なる。先に論じたように、これは
、ローカル・ディスクまたは記憶装置へのデータ書き込みに他ならない場合もあ
り、あるいは種々のネットワークを通じて、あるいは種々のコンピュータ・シス
テムまたはその他の中間デバイスを経由してリモート・ストレージにデータを転
送しなければならない場合もあり得る。
【0041】 データをリモート・ストレージに転送し終えた後には、ステージング・ファイ
ル内にデータを保持する必要はない。したがって、ステップ134は、ステージ
ング・ファイル内の転送したデータを格納するために用いていたデータ・ストレ
ージの割り当てを解除することを示す。これによって、ステージング・ファイル
が使用するストレージ量を減少させる。図4に示したようなスパース・ファイル
技術をステージング・ファイルとして用いる場合、ストレージ空間の割り当て解
除は、転送したデータをゼロと置換することに他ならないものとすることができ
る。次いで、スパース・ファイル技術のために用いる機構は、ゼロ・クラスタを
排除し、ステージング・ファイルにどのようなストレージ媒体を用いていても、
それらを格納しない。他の技術を用いてデータをステージする場合、ステージン
グ・ファイルにおいてストレージの割り当てを解除するには、別の機構が必要と
なる場合もある。しかしながら、割り当て解除手順は、バックアップまたはアー
カイブ・システムに対して発生するオーバーヘッドを極力少なくすることが好ま
しい。
【0042】 図5のステップ136は、適用可能であれば、ローカル・ストレージの割り当
てを解除してもよいことを示す。データのコピーをリモートおよびローカル双方
で維持する意図がある場合、データをリモート・ストレージにコピーし終えたと
きにローカル・ストレージの割り当てを解除することが望ましくないのは明らか
であろう。一方、リモートにはデータを維持するが、ローカルには維持しないこ
とが望ましい場合、一旦データをリモート・ストレージに移動させ終えたならば
、ローカル・ストレージから安全に削除することができる。先に論じたように、
ステップ128の後に、このステップを実行することも可能である。このステッ
プをステップ128の後に実行するか、あるいは図5に示す現在の位置で実行す
るかは、個々のシステムを実現する際に行われる種々の設計選択によって決めら
れる。
【0043】 次に図6を参照し、データをリモートに維持するがローカルには提示すべきで
ない状況の特定例を提示する。この例は、ログ・ファイルの関連において発生す
る。ログ・ファイルは、一連のイベントまたは変更が発生する毎にこれらを追跡
することが望ましい種々の状況において用いる。一例として、NTFSは、ディ
スク・ボリュームに行う変更を追跡し、エラーが発生した場合に、ボリュームの
復元を可能とするために、ログ・ファイルを用いる。図6では、ログ・ファイル
・サービス即ちログ・ファイルの生成部を142で示す。ログ・ファイル・サー
ビスは、全体として144で示すログ・ファイルを作成する。ログ・ファイルは
、イベントまたは変更のストリーム即ちシーケンスを捕獲するので、ログ・ファ
イルは、イベントまたは変更が発生する毎にファイルの終端に新たなエントリを
添付して行く、アペンド・オンリ型ファイル(append-only type file)で実現 するとよい。記録するイベントの種類、およびこれらのイベントが発生する頻度
に応じて、ログ・ファイルは非常に大きく成長する場合もある。加えて、多くの
場合、ローカル・ストレージ内に完全なログ・ファイルを維持することは不要で
ある。一般に、ログ・ファイルの短い部分即ちアーカイブ履歴を維持し、必要で
あればログ・ファイル内のいずれかのレコードにアクセスできれば十分である。
この状況は、ログ・ファイルを、ある評価基準を満たすログ・エントリを取り込
み、ストレージにこれらをリモートに保管し、ローカル・ストレージからこれら
を除去する、アーカイブ・サービスの理想的な候補にする。
【0044】 図6では、ログ・ファイルを、3つの部分を有するものとして示す。新ログ・
レコード146は、ログ・ファイルに置かれた新たなレコードを収容する。アク
ティブ履歴レコード148は、その中に収容されているレコードに対して即座に
アクセスできるようにするために、ローカル・ストレージに維持すべきログ・フ
ァイルの部分を収容する。旧履歴レコード150は、アーカイブ評価基準を満た
し、安全にリモート・ストレージに保管し、ローカル・ストレージから除去でき
るレコードを収容する。
【0045】 概略的に、本システムの一実施形態では、種々のトリガ・イベントを利用して
、所定のアクションを実行することを指示する。例えば、本システムの一実施形
態は、ログ・ファイル内のいずれかのレコードが旧履歴レコード・カテゴリに該
当し、安全にアーカイブ・ストレージに移動させることができるか否かを確認す
るために常にチェックを行うことも可能である。別の代替案として、恐らく、ア
ーカイブ・システムは、どれだけのレコードが旧履歴カテゴリに該当するかを監
視し、十分な数が蓄積したときに、アーカイブ・システムが移動プロセスを開始
する。更に別の例として、恐らく、アーカイブ・システムは外部要求に応答して
、アーカイブ動作を開始する。その他のトリガ・イベントも利用可能である。こ
のようなトリガ・イベントを用いる実施形態は、所定のイベントがいつ発生する
か監視する手段を備えるとよい。これら所定のイベントの発生に基づいて、アー
カイブ・システムは種々のアクションを行うことができる。図6では、所定のイ
ベントがいつ発生するか監視する手段は、例えば、イベント・モニタ152で例
示している。イベント・モニタ152は、多種多様な方法で実現可能である。最
新のオペレーティング・システムでは、例えば、多くのプログラム、サービス、
またはプロセスはイベント・ドリブン(event driven)である。これが意味する
のは、サービス、プログラムまたはプロセスは、所定のイベントが発生したとき
に、所定のアクションを実行するということである。したがって、このモデル上
で構築するサービス、プログラム、プロセス等は、いつ種々のイベントが発生す
るのか監視するビルトイン機構を内蔵することができる。これらの機構を適切に
変更し、所望のトリガ・イベントを注視して、そのイベントが発生したときに適
切なアクションを開始するようにするとよい。他の代替案として、監視手段を動
作させておき(go out)、所定のイベントが発生したか否か確認するために積極
的にチェックするようにしてもよい。図6に示す実施形態では、イベント・モニ
タ152は、旧履歴レコード150のステージング・エリア154のようなステ
ージング・エリアへの移動をトリガすることができる。
【0046】 ログ・ファイル144からステージング・エリア514に旧履歴レコード15
0を移動させるので、本発明の範囲内に該当する実施形態は、データ生成サービ
スがデータ格納に用いるローカル・ストレージ・エリアからステージング・エリ
アにデータを移動させる手段を備えることができる。限定ではなく一例として、
図6では、このようにデータを移動させる手段は、データ移動ブロック156か
ら成る。図6では、データ移動ブロック156は、旧履歴レコード150をステ
ージング・エリア154にコピーする役割を担う。旧履歴レコード150をステ
ージング・エリア154にコピーすることを可能にする機構であれば、いずれで
もデータ移動ブロック156に利用することができる。図5に関連して既に説明
したように、データ移動ブロック156は単に旧履歴レコード150をステージ
ング・エリア154にコピーするだけであると考えられるが、旧履歴レコード1
50をステージング・エリア154に移動させ、これらを移動させつつログ・フ
ァイル144から排除することも可能である。
【0047】 図6における実施形態は、ステージング・エリア154を用いて、リモート・
ストレージ158のようなリモート・ストレージへの転送に先立って、データを
ステージする。旧履歴レコード150がゼロ・データおよび非ゼロ・データの混
成から成ることが考えられる。このため、本発明の実施形態は、非ゼロ・データ
を格納するのに必要なストレージ空間に実質的に等しいストレージ空間にゼロ・
データおよび非ゼロ・データの混成から成るスパース・データを格納する手段を
備えるとよい。言い換えると、非ゼロ・データのみを格納するのに必要なストレ
ージ空間に実質的に等しいストレージ空間に、データを格納する機構を備える実
施形態も可能である。図6では、このような手段は、一例として、ステージング
・エリア154で示している。先に論じたように、このような手段は、図4に関
連して説明したスパース・ファイル技術のような、スパース・ファイル格納技術
を用いることによって実現することができる。種々のデータ圧縮機構等のような
、その他の機構も使用可能である。総合的な目標は、ステージングに必要なスト
レージ空間を減少させることであり、より狭い範囲では、ステージング・エリア
のストレージ空間の管理に伴うオーバーヘッドを削減することである。
【0048】 一旦データをステージング・エリア154に移動させたなら、第2のトリガ・
イベントが発生したときに、データをステージング・エリア154からリモート
・ストレージ158に転送する。この場合も、イベント・モニタ512のように
、所定のイベントがいつ発生するかを監視する手段によってトリガ・イベントを
監視することができる。図6では、データをステージング・エリアからリモート
・ストレージに転送する手段は、リモート・アーカイブ・ブロック160で示す
。アーカイブ・ブロック160は、ステージング・エリア154から適切な情報
を抽出し、この情報を適切な機構を経由してリモート・ストレージ158に転送
する機構であれば、いずれでもよい。リモート・ストレージ158は、アーカイ
ブ・システムが常駐するコンピュータに直接取り付けたディスクまたはその他の
記憶装置、ネットワークまたはダイアル・アップ接続を通じてアクセスするリモ
ート記憶装置、または中間のコンピュータまたはその他の中間デバイスを経由し
てアクセスするリモート記憶装置のように、多種多様な記憶機構で構成可能であ
ることを思い出されたい。図6では、適切な情報をステージング・エリア154
から抽出し、これをリモート・ストレージ158に転送するプロセスは、リモー
ト・ストレージ通信インフラストラクチャ164を経由してアーカイブ・レコー
ド162をリモート・ストレージ158に転送することによって示してある。リ
モート・ストレージ通信インフラストラクチャ164は、情報をリモート・スト
レージ158に伝達し転送するのに必要なあらゆる機構を備えることができる。
【0049】 一旦データを安全にリモート・ストレージ158に転送したならば、ログ・フ
ァイルおよび/またはステージング・エリアからデータを安全に除去することが
できる。したがって、本発明の範囲内に該当する実施形態は、ローカル・ストレ
ージ・エリア内のストレージ空間の割り当てを解除する手段、および/またはス
テージング・エリアにおけるストレージ空間の割り当てを解除する手段を備える
とよい。図6では、このような手段は、一例として、ストレージ割り当て解除ブ
ロック166によって示している。図6には、ログ・ファイルを扱う実施形態を
提示する。このような状況では、旧履歴レコードをログ・ファイルに維持してお
く必要がない可能性が高い。したがって、割り当てを解除する手段は、ローカル
・ストレージの割り当てを解除する手段、およびステージング・エリアのストレ
ージの割り当てを解除する手段の双方を含むことも可能である。尚、これら個々
のストレージ・タイプの各々を割り当て解除する手段は非常に異なる場合もある
ことを注記しておく。ストレージの割り当てをどのようにして解除するかは、ス
テージング・エリアおよびローカル・ストレージに用いる個々の記憶機構によっ
て異なる。例えば、先に説明したスパース・ファイル技術を用いてステージング
・エリア154を実現する場合、リモート・ストレージ158に転送し終えたア
ーカイブ・レコードは、単に、ステージング・エリア154に用いたスパース・
ファイルにおいてそれらをゼロ化することによって、割り当てを解除することが
できる。つまり、図4に関連付けて先に説明したように、スパース・ファイルの
性質から、ゼロ化したセクタは物理的にファイルから割り当て解除されることに
なる。同様の機構をログ・ファイル144にも使用可能であるが、同じスパース
・ファイル技術を用いる必要はない。
【0050】 要約すると、本発明は、ステージング・ストレージ・エリアが最小量のストレ
ージ空間を用い、その管理に伴うオーバーヘッドをバックアップまたはアーカイ
ブ・システムに殆どまたは全く負担させないように、データをリモート・ストレ
ージにバックアップまたはアーカイブするシステムおよび方法を提供する。
【0051】 本発明は、その精神または本質的な特徴から逸脱することなく、他の特定的な
形態においても具体化することができる。記載した実施形態は、いかなる観点に
おいても、限定ではなく例示として見なすべきである。したがって、本発明の範
囲は、前述の説明ではなく、添付した請求の範囲によって示すものとする。特許
請求の範囲の均等の意味および範囲に該当する全ての変更は、その範囲に包含す
るものとする。
【図面の簡単な説明】
【図1】 本発明に適した動作環境を備えるシステム例である。
【図2】 本発明の一実施形態の上位図である。
【図3】 本発明と共に用いるのに適したファイル構造を示す図である。
【図4】 スパース・ファイル技術の一例を示す図である。
【図5】 本発明によるフロー図である。
【図6】 本発明の別の実施形態である。
【手続補正書】特許協力条約第34条補正の翻訳文提出書
【提出日】平成11年12月9日(1999.12.9)
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
【請求項16】 請求項15記載の方法において、前記第2のトリガ・イベ
ントは、所定量のデータが前記スパース・ファイル内に蓄積したときに発生する
ことを特徴とする方法。
【手続補正書】
【提出日】平成12年6月23日(2000.6.23)
【手続補正1】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正内容】
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
───────────────────────────────────────────────────── フロントページの続き (72)発明者 スタイナー,ステファン・アール アメリカ合衆国ワシントン州98029,イサ クア,トゥハンドレッドアンドフォーティ ナインス・コート・サウス・イースト 4220 Fターム(参考) 5B075 KK54 NR02 PQ05 5B082 DE06 【要約の続き】 ステージング・エリア(76)として用いることによ り、ストレージの必要量を最小に抑え、ステージング・ エリア(76)のストレージ空間を管理するためのオー バーヘッドを極力軽減させる。

Claims (25)

    【特許請求の範囲】
  1. 【請求項1】 コンピュータ・システムにおいてデータ生成サービスが発生
    したデータを保管する方法であって、 前記データ生成サービスが生成したデータを、第1の所定イベントが発生する
    まで、ローカル・ストレージ・エリアに格納するステップと、 前記第1の所定イベントが発生したときに、前記ローカル・ストレージ・エリ
    アに格納したデータの少なくとも一部を、スパース・ファイルにコピーするステ
    ップと、 第2の所定イベントが発生したときに、前記スパース・ファイル内にあるデー
    タの少なくとも一部をリモート・ストレージに転送するステップと、 から成ることを特徴とする方法。
  2. 【請求項2】 請求項1記載のデータ保管方法において、前記第1の所定イ
    ベントは、前記ローカル・ストレージ・エリアが所定量のデータを収容したとき
    に発生することを特徴とするデータ保管方法。
  3. 【請求項3】 請求項1記載のデータ保管方法において、前記第1の所定イ
    ベントは、所定時間が経過したときに発生することを特徴とするデータ保管方法
  4. 【請求項4】 請求項1記載のデータ保管方法において、前記第1の所定イ
    ベントは、外部ソースからのデータを保管する指令から成ることを特徴とするデ
    ータ保管方法。
  5. 【請求項5】 請求項1記載のデータ保管方法において、前記第2の所定イ
    ベントは、前記スパース・ファイルが所定量のデータを収容したときに発生する
    ことを特徴とするデータ保管方法。
  6. 【請求項6】 請求項1記載のデータ保管方法において、前記第2の所定イ
    ベントは、所定時間が経過したときに発生することを特徴とするデータ保管方法
  7. 【請求項7】 請求項1記載のデータ保管方法において、前記第2の所定イ
    ベントは、外部ソースからのデータの前記リモート・ストレージ・エリアへの転
    送を開始する指令から成ることを特徴とするデータ保管方法。
  8. 【請求項8】 請求項1記載のデータ保管方法であって、更に、前記コピー
    するステップまたは前記転送するステップのいずれか一方の後に、ローカル・ス
    トレージ空間の割り当てを解除するステップを含むことを特徴とするデータ保管
    方法。
  9. 【請求項9】 請求項1記載のデータ保管方法であって、更に、前記リモー
    ト・ストレージ・エリアに転送した前記データの一部に実質的に等しい、前記ス
    パース・ファイルにおける空間の割り当てを解除するステップを含むことを特徴
    とするデータ保管方法。
  10. 【請求項10】 コンピュータ・システムにおいてデータ生成サービスが発
    生したデータを保管する方法であって、 前記データ生成サービスが用いたデータを、第1の所定イベントが発生するま
    で、ローカル・ストレージ・エリアに格納するステップと、 前記第1の所定イベントが発生したときに、前記ローカル・ストレージ・エリ
    ア内に格納してあるデータの少なくとも一部を、データを一時的に格納するよう
    に構成したステージング・ストレージ・エリアにコピーするステップと、 第2の所定イベントが発生したときに、前記ステージング・ストレージ・エリ
    ア内にあるデータの少なくとも一部をリモート・ストレージ・エリアに転送する
    ステップと、 前記ステージング・ストレージ・エリアにおいて、前記ステージング・ストレ
    ージ・エリアから前記リモート・ストレージ・エリアに転送したデータ量に実質
    的に等しいストレージ量の割り当てを解除し、前記ステージング・ストレージ・
    エリアが占有するストレージ空間を、前記割り当て解除したストレージ量だけ縮
    小するステップと、 から成ることを特徴とする方法。
  11. 【請求項11】 請求項11記載のデータ保管方法において、前記ステージ
    ング・ストレージ・エリアは、非ゼロ・データのあらゆるストレージ空間を実質
    的に排除したスパース・ファイルを備えることを特徴とするデータ保管方法。
  12. 【請求項12】 請求項12記載のデータ保管方法において、前記第1の所
    定イベントは、前記ローカル・ストレージ・エリアが所定量のデータを収容した
    ときに発生することを特徴とするデータ保管方法。
  13. 【請求項13】 請求項13記載のデータ保管方法において、前記第2の所
    定イベントは、所定時間が経過したときに発生することを特徴とするデータ保管
    方法。
  14. 【請求項14】 請求項12記載のデータ保管方法において、前記第1の所
    定イベントは、所定時間が経過したときに発生することを特徴とするデータ保管
    方法。
  15. 【請求項15】 請求項15記載のデータ保管方法において、前記第2の所
    定イベントは、所定量のデータが前記スパース・ファイル内に蓄積したときに発
    生することを特徴とするデータ保管方法。
  16. 【請求項16】 コンピュータ・システムにおいてデータ生成サービスが発
    生したデータを保管する方法であって、 前記データ生成サービスが使用する第1ストレージ媒体のローカル・ストレー
    ジ・エリアに、第1の所定時間が経過するまで、または前記ローカル・ストレー
    ジ・エリアが所定量のデータを収容するまで、データを格納するステップと、 前記ローカル・ストレージ・エリア内に格納したデータの少なくとも一部を、
    前記第1ストレージ媒体上にデータを一時的に格納するように構成したステージ
    ング・ストレージ・エリアにコピーするステップと、 第2の所定時間が経過したとき、または前記ステージング・ストレージ・エリ
    アが所定量のデータを収容するまで、前記ステージング・ストレージ・エリア内
    にあるデータの少なくとも一部を、第2ストレージ媒体上のリモート・ストレー
    ジ・エリアに転送するステップと、 前記ステージング・ストレージ・エリア内において、前記ステージング・スト
    レージ・エリアから前記リモート・ストレージ・エリアに転送したデータ量に実
    質的に等しいストレージ量の割り当てを解除し、前記第1ストレージ媒体上にお
    いて前記ステージング・ストレージ・エリアが占有するストレージ空間を、割り
    当て解除したストレージ量だけ縮小するステップと、 から成ることを特徴とする方法。
  17. 【請求項17】 請求項17記載のデータ保管方法において、前記ステージ
    ング・ストレージ・エリアは、非ゼロ・データのあらゆるストレージ空間を実質
    的に排除したスパース・ファイルを備えることを特徴とするデータ保管方法。
  18. 【請求項18】 コンピュータ実行可能命令を有するコンピュータ読み取り
    可能媒体であって、 ゼロ・データおよび非ゼロ・データの混成から成るスパース・データを、前記
    非ゼロ・データを格納するために必要なストレージ空間に実質的に等しいストレ
    ージ空間に格納する手段と、 データ生成サービスがデータ格納に用いるローカル・ストレージ・エリアから
    スパース・データを格納する前記手段にデータを移動させる手段と、 所定のイベントがいつ発生するか監視し、データを移動させる前記手段による
    データの移動を開始する手段と、 前記格納手段からリモート・ストレージ媒体にデータを転送する手段と、 を備えることを特徴とするコンピュータ読み取り可能媒体。
  19. 【請求項19】 請求項19記載のコンピュータ読み取り可能媒体において
    、スパース・データを格納する前記手段は、前記ゼロ・データのあらゆるストレ
    ージ空間を実質的に排除したスパース・ファイルを備えることを特徴とするコン
    ピュータ読み取り可能媒体。
  20. 【請求項20】 請求項19記載のコンピュータ読み取り可能媒体であって
    、更に、前記データをスパース・データを格納する前記手段から前記リモート・
    ストレージ媒体に転送するときに、スパース・データを格納する前記手段におけ
    るストレージ空間の割り当てを解除することによって、スパース・データを格納
    する前記手段内に残っているデータを格納するために必要なストレージ空間を縮
    小する手段を備えることを特徴とするコンピュータ読み取り可能媒体。
  21. 【請求項21】 請求項19記載のコンピュータ読み取り可能媒体であって
    、更に、前記ローカル・ストレージ・エリア内におけるストレージ空間の割り当
    てを解除することによって、前記データ生成サービスが生成するデータを格納す
    るために用いるストレージ空間を縮小する手段を備えることを特徴とするコンピ
    ュータ読み取り可能媒体。
  22. 【請求項22】 コンピュータ実行可能命令を有するコンピュータ読み取り
    可能媒体であって、 ゼロ・データおよび非ゼロ・データの混成から成るスパース・データを、前記
    非ゼロ・データを格納するために必要なストレージ空間に実質的に等しいストレ
    ージ空間に格納する手段と、 データ生成サービスがデータ格納に用いるローカル・ストレージ・エリアから
    、スパース・データを格納する前記手段にデータを移動させる手段と、 所定のイベントがいつ発生するか監視し、前記データ移動手段によるデータの
    移動を開始させる手段と、 前記格納手段からリモート・ストレージ媒体にデータを転送する手段と、 前記格納手段から前記リモート・ストレージ媒体にデータを移動させたときに
    、前記格納手段内におけるストレージ空間の割り当てを解除することにより、前
    記格納手段内に残っているデータを格納するために必要なストレージ空間を縮小
    する手段と、 を備えることを特徴とするコンピュータ読み取り可能媒体。
  23. 【請求項23】 請求項23記載のコンピュータ読み取り可能媒体において
    、スパース・データを格納する前記手段は、前記ゼロ・データのあらゆるストレ
    ージ空間を実質的に排除したスパース・ファイルを備えることを特徴とするコン
    ピュータ読み取り可能媒体。
  24. 【請求項24】 請求項24記載のコンピュータ読み取り可能媒体であって
    、更に、前記ローカル・ストレージ・エリア内におけるストレージ空間の割り当
    てを解除することによって、前記データ生成サービスが生成するデータを格納す
    るために用いるストレージ空間を縮小する手段を備えることを特徴とするコンピ
    ュータ読み取り可能媒体。
  25. 【請求項25】 コンピュータ実行可能命令を有するコンピュータ読み取り
    可能媒体であって、 ゼロ・データおよび非ゼロ・データの混成から成るスパース・データを、前記
    非ゼロ・データを格納するために必要なストレージ空間に実質的に等しいストレ
    ージ空間に格納する手段であって、前記非ゼロ・データのためにストレージ媒体
    上にストレージ空間を物理的に割り当て、前記ゼロ・データを格納するために必
    要な前記ストレージ媒体上のストレージ空間を実質的に排除する、前記格納手段
    と、 データ生成サービスがデータ格納に用いるローカル・ストレージ・エリアから
    、スパース・データを格納する前記手段にデータを移動させる手段と、 所定のイベントがいつ発生するか監視し、前記データ移動手段によるデータの
    移動を開始させる手段と、 前記格納手段からリモート・ストレージ媒体にデータを転送する手段と、 前記格納手段から前記リモート・ストレージ媒体にデータを移動させたときに
    、前記格納手段内におけるストレージ空間の割り当てを解除することにより、前
    記格納手段内に残っているデータを格納するために必要なストレージ空間を縮小
    する手段と、 備えることを特徴とするコンピュータ読み取り可能媒体。
JP2000525831A 1997-12-23 1998-09-08 ステージ・データにスパース・ファイル技術を使用し、次いでリモート・ストレージに格納するシステムおよび方法 Expired - Fee Related JP4323719B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/997,066 1997-12-23
US08/997,066 US5953729A (en) 1997-12-23 1997-12-23 Using sparse file technology to stage data that will then be stored in remote storage
PCT/US1998/018691 WO1999032995A1 (en) 1997-12-23 1998-09-08 Using sparse file technology to stage data that will then be stored in remote storage

Publications (3)

Publication Number Publication Date
JP2002503841A true JP2002503841A (ja) 2002-02-05
JP2002503841A5 JP2002503841A5 (ja) 2006-01-05
JP4323719B2 JP4323719B2 (ja) 2009-09-02

Family

ID=25543622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000525831A Expired - Fee Related JP4323719B2 (ja) 1997-12-23 1998-09-08 ステージ・データにスパース・ファイル技術を使用し、次いでリモート・ストレージに格納するシステムおよび方法

Country Status (4)

Country Link
US (1) US5953729A (ja)
EP (1) EP1055183A4 (ja)
JP (1) JP4323719B2 (ja)
WO (1) WO1999032995A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002116938A (ja) * 2000-10-11 2002-04-19 Id Gate Co Ltd 世代管理機能を備えたファイルバックアップ方法
US7519758B2 (en) 2002-02-22 2009-04-14 Robert Bosch Gmbh Method and apparatus for transmitting measurement data between an object detection device and an evaluation device
JP2010522914A (ja) * 2007-03-26 2010-07-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 順次メディアのリクラメーション及びレプリケーション・システム、方法、及びコンピュータ・プログラム
JP2010282383A (ja) * 2009-06-04 2010-12-16 Hitachi Ltd ランダムアクセス型の記憶媒体を仮想的なシーケンシャルアクセス型の記憶媒体にエミュレートするエミュレータを実行する計算機システム

Families Citing this family (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6073209A (en) * 1997-03-31 2000-06-06 Ark Research Corporation Data storage controller providing multiple hosts with access to multiple storage subsystems
US20020107837A1 (en) * 1998-03-31 2002-08-08 Brian Osborne Method and apparatus for logically reconstructing incomplete records in a database using a transaction log
US6175838B1 (en) * 1998-04-29 2001-01-16 Ncr Corporation Method and apparatus for forming page map to present internet data meaningful to management and business operation
US6237000B1 (en) * 1998-05-01 2001-05-22 International Business Machines Corporation Method and apparatus for previewing the results of a data structure allocation
US6269382B1 (en) * 1998-08-31 2001-07-31 Microsoft Corporation Systems and methods for migration and recall of data from local and remote storage
US6240427B1 (en) * 1999-01-05 2001-05-29 Advanced Micro Devices, Inc. Method and apparatus for archiving and deleting large data sets
US20120179715A1 (en) 1999-04-13 2012-07-12 Mirror Imaging L.L.C. Method of Obtaining An Electronically-Stored Financial Document
AU4238500A (en) * 1999-04-13 2000-11-14 Richard J. Gagnon Method of obtaining an electronically-stored financial document
US6473776B2 (en) * 1999-04-16 2002-10-29 International Business Machines Corporation Automatic prunning for log-based replication
US6651074B1 (en) * 1999-12-20 2003-11-18 Emc Corporation Method and apparatus for storage and retrieval of very large databases using a direct pipe
US6636953B2 (en) * 2000-05-31 2003-10-21 Matsushita Electric Co., Ltd. Receiving apparatus that receives and accumulates broadcast contents and makes contents available according to user requests
US6675177B1 (en) 2000-06-21 2004-01-06 Teradactyl, Llc Method and system for backing up digital data
US6952730B1 (en) * 2000-06-30 2005-10-04 Hewlett-Packard Development Company, L.P. System and method for efficient filtering of data set addresses in a web crawler
GB2365556B (en) * 2000-08-04 2005-04-27 Hewlett Packard Co Gateway device for remote file server services
US6981005B1 (en) * 2000-08-24 2005-12-27 Microsoft Corporation Partial migration of an object to another storage location in a computer system
US6978281B1 (en) * 2000-11-21 2005-12-20 Microsoft Corporation Versioned project data
JP4691798B2 (ja) * 2001-01-15 2011-06-01 ソニー株式会社 記録装置および記録媒体
US7047420B2 (en) * 2001-01-17 2006-05-16 Microsoft Corporation Exclusive encryption
US7043637B2 (en) 2001-03-21 2006-05-09 Microsoft Corporation On-disk file format for a serverless distributed file system
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US6981138B2 (en) 2001-03-26 2005-12-27 Microsoft Corporation Encrypted key cache
US6988124B2 (en) 2001-06-06 2006-01-17 Microsoft Corporation Locating potentially identical objects across multiple computers based on stochastic partitioning of workload
GB2400704A (en) * 2001-10-31 2004-10-20 Gen I Ltd Information archiving software
US7133910B2 (en) * 2001-11-23 2006-11-07 International Business Machines Corporation Method for recovering the data of a logic cell in a DCE system
JP4168626B2 (ja) * 2001-12-06 2008-10-22 株式会社日立製作所 記憶装置間のファイル移行方法
JP2003223365A (ja) * 2002-01-31 2003-08-08 Fujitsu Ltd データ管理機構及びデータ管理機構を有する装置又はカード
US20030163562A1 (en) * 2002-02-26 2003-08-28 Ford Daniel E. Remote information logging and selective reflections of loggable information
US20040027378A1 (en) * 2002-08-06 2004-02-12 Hays Grace L. Creation of user interfaces for multiple devices
US20040027377A1 (en) * 2002-08-06 2004-02-12 Grace Hays User interface design and validation including dynamic data
US6938134B2 (en) * 2002-09-19 2005-08-30 Sun Microsystems, Inc. System for storing block allocation information on multiple snapshots
US7809679B2 (en) * 2003-03-03 2010-10-05 Fisher-Rosemount Systems, Inc. Distributed data access methods and apparatus for process control systems
US7139846B1 (en) * 2003-09-30 2006-11-21 Veritas Operating Corporation Computer system and method for performing low impact backup operations
US7284017B2 (en) * 2003-12-29 2007-10-16 Storage Technology Corporation Data migration system and method
JP4646526B2 (ja) 2004-02-18 2011-03-09 株式会社日立製作所 記憶制御システム及び同システムの制御方法
US8108429B2 (en) 2004-05-07 2012-01-31 Quest Software, Inc. System for moving real-time data events across a plurality of devices in a network for simultaneous data protection, replication, and access services
US7565661B2 (en) 2004-05-10 2009-07-21 Siew Yong Sim-Tang Method and system for real-time event journaling to provide enterprise data services
US7680834B1 (en) 2004-06-08 2010-03-16 Bakbone Software, Inc. Method and system for no downtime resychronization for real-time, continuous data protection
US7979404B2 (en) 2004-09-17 2011-07-12 Quest Software, Inc. Extracting data changes and storing data history to allow for instantaneous access to and reconstruction of any point-in-time data
US7904913B2 (en) 2004-11-02 2011-03-08 Bakbone Software, Inc. Management interface for a system that provides automated, real-time, continuous data protection
AU2005304759B2 (en) 2004-11-05 2012-05-17 Drobo, Inc. Dynamically expandable and contractible fault-tolerant storage system permitting variously sized storage devices and method
US7831639B1 (en) * 2004-12-22 2010-11-09 Symantec Operating Corporation System and method for providing data protection by using sparse files to represent images of data stored in block devices
WO2006116183A1 (en) * 2005-04-25 2006-11-02 Network Appliance, Inc. Architecture for supporting sparse volumes
US7873681B2 (en) * 2005-07-14 2011-01-18 Microsoft Corporation Moving data from file on storage volume to alternate location to free space
US7788521B1 (en) 2005-07-20 2010-08-31 Bakbone Software, Inc. Method and system for virtual on-demand recovery for real-time, continuous data protection
US7689602B1 (en) 2005-07-20 2010-03-30 Bakbone Software, Inc. Method of creating hierarchical indices for a distributed object system
FR2890765B1 (fr) * 2005-09-09 2007-10-26 Charles Yves Bourhis Procede de memorisation de donnees numeriques dans un grand systeme informatique et dispositif associe
US20070136423A1 (en) * 2005-11-23 2007-06-14 Gilmore Alan R Methods, systems, and media for managing a collaboration space
JP4755487B2 (ja) * 2005-11-24 2011-08-24 株式会社日立製作所 データ読出しシステム、データ読出し装置およびデータ読出し方法
US7567994B2 (en) * 2006-01-18 2009-07-28 International Business Machines Corporation Method and apparatus to proactively capture and transmit dense diagnostic data of a file system
US7743023B2 (en) * 2006-02-01 2010-06-22 Microsoft Corporation Scalable file replication and web-based access
JP2008146574A (ja) * 2006-12-13 2008-06-26 Hitachi Ltd 記憶制御装置及び記憶制御方法
US8131723B2 (en) 2007-03-30 2012-03-06 Quest Software, Inc. Recovering a file system to any point-in-time in the past with guaranteed structure, content consistency and integrity
US8364648B1 (en) 2007-04-09 2013-01-29 Quest Software, Inc. Recovering a database to any point-in-time in the past with guaranteed data consistency
US8239348B1 (en) * 2008-08-14 2012-08-07 Symantec Corporation Method and apparatus for automatically archiving data items from backup storage
JP4762289B2 (ja) 2008-10-01 2011-08-31 株式会社日立製作所 特定パターンデータが格納される仮想ボリュームへの記憶領域の割り当てを制御するストレージシステム
FR2947926A1 (fr) * 2009-07-07 2011-01-14 Neowave Procede de compaction du contenu d'un cd-rom sur une memoire de faible capacite
CN102467419A (zh) * 2010-11-10 2012-05-23 英业达股份有限公司 文件备份方法
US9204175B2 (en) * 2011-08-03 2015-12-01 Microsoft Technology Licensing, Llc Providing partial file stream for generating thumbnail
US8938550B2 (en) * 2011-12-15 2015-01-20 Microsoft Corporation Autonomous network streaming
US8832296B2 (en) * 2011-12-15 2014-09-09 Microsoft Corporation Fast application streaming using on-demand staging
US10140212B2 (en) * 2013-09-30 2018-11-27 Vmware, Inc. Consistent and efficient mirroring of nonvolatile memory state in virtualized environments by remote mirroring memory addresses of nonvolatile memory to which cached lines of the nonvolatile memory have been flushed
US10223026B2 (en) 2013-09-30 2019-03-05 Vmware, Inc. Consistent and efficient mirroring of nonvolatile memory state in virtualized environments where dirty bit of page table entries in non-volatile memory are not cleared until pages in non-volatile memory are remotely mirrored
US10860237B2 (en) 2014-06-24 2020-12-08 Oracle International Corporation Storage integrated snapshot cloning for database
US10346362B2 (en) * 2014-09-26 2019-07-09 Oracle International Corporation Sparse file access
US11068437B2 (en) 2015-10-23 2021-07-20 Oracle Interntional Corporation Periodic snapshots of a pluggable database in a container database
US10372547B1 (en) 2015-12-29 2019-08-06 Veritas Technologies Llc Recovery-chain based retention for multi-tier data storage auto migration system
US11068460B2 (en) 2018-08-06 2021-07-20 Oracle International Corporation Automated real-time index management
WO2020033446A1 (en) 2018-08-06 2020-02-13 Oracle International Corporation Techniques for maintaining statistics in a database system
US11656773B2 (en) * 2020-04-28 2023-05-23 EMC IP Holding Company LLC Automatic management of file system capacity using predictive analytics for a storage system
US11740789B2 (en) 2020-05-18 2023-08-29 EMC IP Holding Company LLC Automated storage capacity provisioning using machine learning techniques

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4825354A (en) * 1985-11-12 1989-04-25 American Telephone And Telegraph Company, At&T Bell Laboratories Method of file access in a distributed processing computer network
US4887204A (en) * 1987-02-13 1989-12-12 International Business Machines Corporation System and method for accessing remote files in a distributed networking environment
US4914571A (en) * 1987-06-15 1990-04-03 International Business Machines Corporation Locating resources in computer networks
US5029199A (en) * 1989-08-10 1991-07-02 Boston Technology Distributed control and storage for a large capacity messaging system
US5095423A (en) * 1990-03-27 1992-03-10 Sun Microsystems, Inc. Locking mechanism for the prevention of race conditions
US5222242A (en) * 1990-09-28 1993-06-22 International Business Machines Corp. System for locating a node containing a requested resource and for selectively verifying the presence of the resource at the node
US5377323A (en) * 1991-09-13 1994-12-27 Sun Microsytems, Inc. Apparatus and method for a federated naming system which can resolve a composite name composed of names from any number of disparate naming systems
US5434974A (en) * 1992-03-30 1995-07-18 International Business Machines Corporation Name resolution for a multisystem network
US5493607A (en) * 1992-04-21 1996-02-20 Boston Technology Multi-system network addressing
US5425028A (en) * 1992-07-16 1995-06-13 International Business Machines Corporation Protocol selection and address resolution for programs running in heterogeneous networks
US5617566A (en) * 1993-12-10 1997-04-01 Cheyenne Advanced Technology Ltd. File portion logging and arching by means of an auxilary database
US5564037A (en) * 1995-03-29 1996-10-08 Cheyenne Software International Sales Corp. Real time data migration system and method employing sparse files
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
US5774715A (en) * 1996-03-27 1998-06-30 Sun Microsystems, Inc. File system level compression using holes

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002116938A (ja) * 2000-10-11 2002-04-19 Id Gate Co Ltd 世代管理機能を備えたファイルバックアップ方法
US7519758B2 (en) 2002-02-22 2009-04-14 Robert Bosch Gmbh Method and apparatus for transmitting measurement data between an object detection device and an evaluation device
JP2010522914A (ja) * 2007-03-26 2010-07-08 インターナショナル・ビジネス・マシーンズ・コーポレーション 順次メディアのリクラメーション及びレプリケーション・システム、方法、及びコンピュータ・プログラム
JP2010282383A (ja) * 2009-06-04 2010-12-16 Hitachi Ltd ランダムアクセス型の記憶媒体を仮想的なシーケンシャルアクセス型の記憶媒体にエミュレートするエミュレータを実行する計算機システム

Also Published As

Publication number Publication date
EP1055183A1 (en) 2000-11-29
US5953729A (en) 1999-09-14
WO1999032995A1 (en) 1999-07-01
EP1055183A4 (en) 2005-03-23
JP4323719B2 (ja) 2009-09-02

Similar Documents

Publication Publication Date Title
JP4323719B2 (ja) ステージ・データにスパース・ファイル技術を使用し、次いでリモート・ストレージに格納するシステムおよび方法
US20200278792A1 (en) Systems and methods for performing storage operations using network attached storage
US6714952B2 (en) Method for backup and restore of a multi-lingual network file server
US6161111A (en) System and method for performing file-handling operations in a digital data processing system using an operating system-independent file map
US6434681B1 (en) Snapshot copy facility for a data storage system permitting continued host read/write access
US6549992B1 (en) Computer data storage backup with tape overflow control of disk caching of backup data stream
US5379412A (en) Method and system for dynamic allocation of buffer storage space during backup copying
US8121983B2 (en) Systems and methods for monitoring application data in a data replication system
US7418464B2 (en) Method, system, and program for storing data for retrieval and transfer
US6029166A (en) System and method for generating an operating system-independent file map
US7870353B2 (en) Copying storage units and related metadata to storage
EP2158541B1 (en) Performing backup operations for a volume group of volumes
US9424137B1 (en) Block-level backup of selected files
US20070156982A1 (en) Continuous backup using a mirror device
EP1202159A2 (en) Method and system utilizing data fragments for efficiently importing/exporting removable storage volumes
US20070168403A1 (en) Continuous backup to a remote storage device
CA2632935A1 (en) Systems and methods for performing data replication
JPH10510642A (ja) コンピュータデータの記憶装置
US20070033361A1 (en) Apparatus, system, and method for fastcopy target creation
EP1636690A2 (en) Managing a relationship between one target volume and one source volume
US7516133B2 (en) Method and apparatus for file replication with a common format
US20030004920A1 (en) Method, system, and program for providing data to an application program from a file in a file system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050816

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050928

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090413

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090508

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090605

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120612

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130612

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees