JP2005004778A - ネットワーク化環境においてシャドウコピーを開示する機構 - Google Patents

ネットワーク化環境においてシャドウコピーを開示する機構 Download PDF

Info

Publication number
JP2005004778A
JP2005004778A JP2004176216A JP2004176216A JP2005004778A JP 2005004778 A JP2005004778 A JP 2005004778A JP 2004176216 A JP2004176216 A JP 2004176216A JP 2004176216 A JP2004176216 A JP 2004176216A JP 2005004778 A JP2005004778 A JP 2005004778A
Authority
JP
Japan
Prior art keywords
volume
computer
shadow copy
readable medium
access
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
Application number
JP2004176216A
Other languages
English (en)
Inventor
Ahmed Hassan Mohamed
ハッサン モハメド アハメド
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 JP2005004778A publication Critical patent/JP2005004778A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F2003/0697Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers device management, e.g. handlers, drivers, I/O schedulers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems

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)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Computer And Data Communications (AREA)

Abstract

【課題】 共有ボリュームのボリュームシャドウコピーをネットワ−ク上でリモートクライアントに開示するための機構を提供すること。
【解決手段】 共有ボリュームは、ルートを有するクライアントコンピューティングシステムにおいてアクセスされる。このボリュームのボリュームシャドウコピー(または「スナップショット」)は、共有ボリュームの子リソースとして識別される。スナップショットを表す子リソースは、デフォルトで通常のビューから隠されることもある。スナップショットにアクセスするために、ユーザは、まるでそれが共有ボリューム上の通常のファイルまたはディレクトリであるかのように子リソースにアクセスすることができる。有利な点は、ユーザは、スナップショットボリュームを表す新しいボリュームをマウントする必要はなく、むしろユーザはそのスナップショットに直接にアクセスすることができる。
【選択図】 図3

Description

本発明は、分散ファイルシステムに関する。より詳細には、本発明は、分散ファイルシステム、およびこの分散ファイルシステム上で共有ボリュームのシャドウコピーを開示する(expose)ことに関する。
クライアント/サーバネットワーク環境は、広く普及してきている。クライアントコンピュータシステムが、ネットワークを介してサーバ上に常駐するファイル記憶装置に接続することは、今日では普通になっている。また、今日のコンピューティング環境において使用されている多くの異なるコンピューティング・アーキテクチャおよびプラットフォームがある。
ネットワークのハードウェアとソフトウェアのプロバイダ間における競争によって、プロバイダの提供する製品に関連して、ますます洗練されたサービスを提供するように、プロバイダに拍車がかけられる。例えば、単なるバックアップおよびファイル復元機能は、普通に提供されるようになりつつある。今日では、多くのネットワ−クサーバは、ネットワーク記憶装置のユーザが記憶装置の状態をある以前の時間まで逆戻りする機能を提供する。これにより、ハードウェア故障にまでは至らないいくつかの予見できない障害の場合に、失われたデータを回復する動作が簡単になる。例えば、ネットワークシステムのユーザは、ある日、自分のサーバ上のファイルが壊れてしまうか、それとも他の何らかの理由で、ある以前の時点における自分のファイル状態に再度戻りたいと思う場合がある。ボリュームシャドウコピー(volume shadow copy)(「スナップショット(snapshot)」とも呼ばれる)は、今日、特にこの目的で使用される。ボリュームシャドウコピーは、本質的には、以前のある時間におけるボリュームの状態のビューである。ボリュームシャドウコピーは、ボリュームの状態を逆戻りする一般的な機構になっている。このドキュメントを通じて、ボリュームシャドウコピーとスナップショットという用語は、区別なく使用されることもある。
既存のサーバ技術の1つの欠点は、クライアント/サーバ環境において、ボリュームシャドウコピーにアクセスするためには、スナップショットをクライアントマシンにマウントする必要があることである。この手続きは、典型的には、ユーザがボリュームをマウントするのに十分な特権をもってクライアントマシンにログインする必要があり、典型的には、管理用の特権を必要とすることもある。スナップショットにアクセスしたいと思うたびに、ユーザが管理者または十分な特権をもつ他のユーザを捜し出す必要がある場合には、ボリュームシャドウコピーの利便性が失われてしまう。
これらの技術の別の欠点は、異なるボリュームをマウントして共有する各シャドウコピーを開示することにより、名前空間が汚染される傾向にあることである。換言すれば、共有ボリュームの複数のシャドウコピーがマウントされると、ユーザは、同じボリュームとして現れるいくつかの異なるバージョンを有することにより混乱する可能性がある。
ネットワーク化環境において共有ボリュームのシャドウコピーをクライアントに開示するための適切な機構は、当業者には理解できないものであった。
本発明は、共有ボリュームのボリュームシャドウコピーを、ネットワークを介してリモートクライアントに開示するためのシステムおよび方法を対象としている。簡潔に述べると、共有ボリュームは、ルートを有するクライアントコンピューティングシステムにおいてアクセスされる。このボリュームのボリュームシャドウコピー(または「スナップショット」)は、共有ボリュームの子リソースとして識別される。スナップショットを表す子リソースを、デフォルトにより通常のビューから隠すこともできる。スナップショットにアクセスするために、ユーザは、子リソースが共有ボリューム上の通常のファイルまたはディレクトリであるかのように、子リソースにアクセスすることができる。ユーザは、スナップショットボリュームを表す新しいボリュームをマウントする必要はないが、むしろユーザは、スナップショットに直接にアクセスできることが有利である。
最初に、本発明を、本発明の実施形態を実装することができる例示的なコンピューティング環境の一例に関して説明する。次に、本発明の特定の一実装形態についての詳細な例を説明する。この特定の実装形態のある種の詳細に関しては、代替実装形態も含まれ得る。本発明の実施形態は、ここで説明する実施形態に限定されないことが理解されよう。
(本発明の例示的なコンピューティング環境)
図1に、本発明の例示的な実装形態で使用することができるコンピューティング装置を示す。図1を参照すると、本発明を実装するためのシステムの一例は、コンピューティング装置100などのコンピューティング装置を含む。非常に基本的な構成では、コンピューティング装置100は、典型的には、少なくとも1つの処理装置102とシステムメモリ104とを含む。コンピューティング装置の厳密な構成および種類に応じて、システムメモリ104は、(RAMなどの)揮発性のメモリでも、(ROM、フラッシュメモリなどの)不揮発性メモリでも、あるいはこれら2つの何らかの組合せでもよい。システムメモリ104は、典型的には、オペレーティングシステム105、1または複数のプログラムモジュール106を含み、プログラムデータ107を含むこともできる。コンピューティング装置100の基本構成は、破線108の内部の構成要素により図1に示される。
コンピューティング装置100は、追加の特徴または機能を有することもできる。例えば、コンピューティング装置100は、例えば、磁気ディスク、光ディスク、テープなど追加のデータ記憶装置(取り外し可能および/または取り外し不能)を含むこともできる。追加の記憶装置は、図1に、取り外し可能記憶装置109および取り外し不能記憶装置110によって示されている。コンピュータ記憶媒体は、コンピュータ読取り可能な命令、データ構造、プログラムモジュール、他のデータなど、情報記憶の任意の方法および技術で実装される、揮発性および不揮発性、取り外し可能および取り外し不能の記憶媒体を含むことができる。システムメモリ104、取り外し可能記憶装置109、および取り外し不能記憶装置110は、コンピュータ記憶媒体のすべての例である。コンピュータ記憶媒体は、これに限定されないが、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、ディジタル多用途ディスク(「DVD」)もしくは他の光記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置もしくは他の磁気記憶装置、または所望の情報を記憶するために使用することができ、コンピューティング装置100がアクセスすることができるその他任意の媒体を含む。コンピュータ記憶媒体のいずれも、装置100の一部とすることができる。コンピューティング装置100は、キーボード122、マウス123、ペン、音声入力装置、タッチ入力装置、スキャナなどの入力装置112を有することもできる。ディスプレイ、スピーカ、プリンタなどの出力装置114を含めることもできる。これらの装置は、当技術分野においてよく知られており、ここで長々と論ずる必要はない。
コンピューティング装置100は、ネットワークを介してなど、装置が他のコンピューティング装置118と情報のやりとりをすることができるようにする通信接続116を含むこともできる。通信接続116は、通信媒体の一例である。通信媒体は、典型的には、コンピュータ読取り可能な命令、データ構造、プログラムモジュール、または搬送波または他のトランスポート機構などの変調済みのデータ信号の形の他のデータによって実施することができ、任意の情報配信媒体を含む。用語「変調データ信号」は、信号中の情報を符号化するようにして、1または複数の信号の特徴を設定または変更した信号を意味する。例として、これに限定されないが、通信媒体は、有線ネットワークや直接配線接続などの有線媒体、音響、RF、赤外線および他の無線媒体などの無線媒体を含む。本明細書中で使用される用語、コンピュータ読取り可能媒体は、記憶媒体も通信媒体も含んでいる。
(特定の実装形態の説明)
図2は、本発明の実施形態を実装することができるネットワーク環境を一般的に示す機能ブロック図である。図2に示すように、ネットワーク環境200は、ネットワーク210上で接続されるクライアント203とサーバ201とを含む。サーバ201は、共有ボリューム220の一部分をクライアント203に使用可能にしている。当技術分野で知られているように、クライアント203のユーザは、ネットワーク210を介してサーバ201へと接続することができ、そのユーザが十分な特権をもつ場合には、共有ボリューム220上のファイルにアクセスすることができる。接続がなされると、共有ボリューム220は、クライアント203上に、共有ボリューム220上に記憶されるフォルダおよびファイルを表すディレクトリ構造240として現れる。図2は全体の共有ボリューム220をクライアント203から使用可能なものとして示していることを理解されたい。しかし、典型的には、共有ボリュームのほんのわずかの部分(例えば、サブディレクトリツリー)だけが、実際には「共有部」として使用可能にされ、1つの共有ボリュームは、典型的には、複数の共有部を有することが理解されよう。異なるクライアントおよびユーザは、同じ共有ボリューム上の異なる共有部にアクセスすることができる。しかし、説明を簡単にするためだけに、このドキュメントでは、1つの共有ボリューム220の文脈においてこのシステムを説明することにする。
クライアント203とサーバ201は、多数の異なる通信プロトコルのうちの1つを使用して情報をやりとりすることができる。分散ファイルシステム用に通常使用される1つの通信プロトコルは、NFS(Network File System)プロトコルである。NFSプロトコルは、ネットワークにわたって共有ファイルおよびディレクトリへの透過的なリモートアクセスを提供する。NFSプロトコルは、異なるマシン、オペレーティングシステム、ネットワークアーキテクチャ、およびトランスポートプロトコルの間で移植可能なように設計されている。NFSプロトコルについてのより多くの情報は、公開されて入手可能なRFC3530に見出すことができる。
サーバ201は、ユーザが共有ボリューム220の以前の状態に戻れるようにするボリュームシャドウサービスを提供する。換言すれば、サーバ201は、定期的に、共有ボリューム220のイメージまたは「スナップショット」を取り込む。図2に示したように、第1のスナップショット221は、共有ボリューム220の現在の状態に先立つある時点における共有ボリューム220上のデータの状態を表す。同様に、第2のスナップショット222は、第1のスナップショット221が取り込まれた時に先立つある時点における共有ボリューム220上のデータの状態を表す。サーバ201は、かなり長い時間にわたって、共有ボリューム220の非常に多くのスナップショットを使用可能にすることができる。
クライアント203において、現在のディレクトリ構造240は、共有ボリューム220上に記憶されるデータの現在の状態を表す。さらに、クライアント203のユーザは、共有ボリューム220のスナップショットのうちのどれかにアクセスできる可能性がある。共有ボリューム220の各スナップショットを、サーバ201により、スナップショットに対応するデータを表す別々のディレクトリ構造としてクライアント203に開示する。従って、現在のディレクトリ構造240は、現在の共有ボリューム220に関連付けられ、ディレクトリ構造241は、第1のスナップショット221に関連付けられ、ディレクトリ構造242は、第2のスナップショット222に関連付けられ、ディレクトリ構造243は、第N番目のスナップショット223に関連付けられる。
上述したように、従来技術を使用して、共有ボリューム220の各スナップショット(例えば、第1のスナップショット221、第2のスナップショット222、N番目のスナップショット223)は、別々のボリュームとしてクライアント203でアクセスされる。換言すれば、第1のスナップショット221を見るためには、ユーザは、第1のスナップショット221に対応する新しいボリュームをクライアント上にマウントすることになる。ユーザが複数のスナップショットを見たいと思う場合には、複数の新しいボリュームをクライアント203上にマウントする必要がある。以上で説明したように、この技術は、一般に、名前空間の汚染をもたらし、ユーザにはこのスナップショットをマウントする高い特権が必要になる。
対照的に、本発明は、クライアント203において各スナップショットを別々のボリュームではなく共有ボリューム220の一部として表すことを可能にする。以下でさらに詳細に説明するように、サーバ201は、共有ボリューム220の各スナップショットに直接アクセスすることを可能とする現在のディレクトリ構造240に関連して、情報をクライアント203に提供する。このようにして、本発明は、追加のボリュームをマウントする高いユーザ特権が必要という既存の問題を克服している。さらに、本質的に異なる時点における同じデータの状態をそれぞれ表す、クライアント203の名前空間にマウントされる複数のボリュームを有することにより、ユーザが混乱させられることはなくなる。
図3は、共有ボリュームの1または複数のスナップショットに対する直接アクセスを提供するサーバによって、クライアント203から使用可能になる共有ボリュームに対応したディレクトリ構造240の図である。ディレクトリ構造240は、クライアント203から使用可能な共有ボリューム上に存在するファイルとフォルダのビューを表す。ディレクトリ構造240は、共有部のルートを表すルート301を有するツリー構造である。共有ボリューム220が、クライアント203にマウントされ、何らかのイベント(例えば、新しいスナップショットの追加または古いスナップショットの除去)に応答して、または何らかの定期的な間隔に基づいて動的に更新され得るときに、ディレクトリ構造240を、クライアント203に提供する。ファイル(例えば、ファイルCおよびF)とフォルダ(例えば、フォルダAおよびD)を含むルート301の下のディレクトリ構造240中に、いくつかの他のリソースが含まれる。このドキュメント中で使用しているように、リソース、ファイル、およびディレクトリへのアクセスの間では、何の区別も行うべきではないことに留意されたい。実際、これらのアクセスの種類の各々は、この説明の目的に限れば基本的には同じであると考えることができる。
本発明によれば、別のディレクトリ構造、例えばディレクトリ構造241は、現在のディレクトリ構造240のルート301の子ディレクトリ構造として存在する。子ディレクトリ構造241は、現在のディレクトリ構造240によって表わされる共有ボリュームのスナップショットに関連付けられたディレクトリ構造を表す。換言すれば、現在のディレクトリ構造240は、対応する共有ボリュームの現在の状態を表し、子ディレクトリ構造241は、対応する共有ボリュームの以前の状態を表す。
この特定の実施形態では、子ディレクトリ構造241は、ルート301の下にある隠れ状態(hidden state)で存在する。このようにして、クライアント203の名前空間を閲覧するユーザは、現在のディレクトリ構造240の要素を見ることになるが、デフォルトでは子ディレクトリ構造241を見ることができない。ユーザが共有ボリューム220のスナップショットを閲覧したいと思うならば、ユーザは、ルート301の下の隠れファイルを閲覧するオプションを選択することができ、それによって、スナップショットのディレクトリ構造241へのアクセス権を得ることができる。
この手続きは、新しいボリュームをマウントすることに関連付けられた特権など高い特権は必要ではなく、従って、一般のユーザ(例えば、ボリュームをマウントする特権をもたないユーザ)がスナップショットにアクセスすることを可能にする。さらに、ユーザが、共有ボリュームについての1または複数のスナップショットをマウントする場合には、ユーザは、クライアント203の名前空間に存在する基本的には同じ共有ボリュームの複数のバージョンがあることによって混乱させられることがなくなる。図3には子ディレクトリ構造241を1つしか示していないが、実際には、現在のディレクトリ構造240において、複数の子ディレクトリ構造は、共有ボリューム220の複数のスナップショットのそれぞれに対して1つずつの存在し得ることを理解されたい。
子ディレクトリ構造241へのアクセスには、ファイルシステムの一部として記憶される許可に基づいた通常のアクセス制御機構を使用する。特に、ユーザは、少なくとも読取りアクセス権を有するスナップショットの存在だけが見えるにすぎない。クライアント203が、スナップショットに関連付けられたリソースのうちのどれかを変更するのを防止するために、問題のファイルのユーザの所有権、アクセス権、または許可にかかわらず、読取り専用アクセスがサーバによって強要される。換言すれば、ユーザがスナップショット中のリソースを閲覧している場合、ユーザは、スナップショットが捕捉されたとき、リソースに割り当てられた特定のアクセス特権を検査することができることになるが、サーバは、それとは関係なしに、読取り専用特権を強要することになる。しかし、他の実装形態では、スナップショットへの何らかの追加のアクセスを可能にすることができる。例えば、他の実施形態では、通常のユーザには読取り専用アクセス権しかないが、特殊なグループのユーザには、スナップショットを変更する特定の特権が付与される。
この実施形態では、クライアントに開示する子ディレクトリ構造241の名前は、一般のツールがスナップショットボリュームを列挙するのを防止するように選択される。より詳細には、子ディレクトリ構造241の名前は、その対応するスナップショットの作成時間に基づくものとすることができる。一例では、図4に示すような名前を使用することができる。図4を簡単に参照すると、子ディレクトリ構造241のルート305の名前410についての一般的な命名規則が示されている。図に示すように、期間420を使用して、名前を開始して、エントリが親ディレクトリ構造240内に隠されるようにする。名前410の本体430は、対応するスナップショットの作成に関連付けられたGMT(Greenwich Mean Time)に基づくようにすることができる。命名規則に作成時間を組み込むことによって、各スナップショットを一意的に区別できるようにする。この命名規則は、使用することができる複数の異なる命名規則のうちの任意の一例として提供されている。この例は限定するものではなく、本発明の趣旨を逸脱することなく、多数の代替命名規則が、当業者には明らかなものとなろう。
また、スナップショットについてクライアントに提供される名前は、必ずしもサーバ上に長く残るものではなく、共有ボリューム上の実際のリソースを命名するためには使用されないことに留意されたい。むしろ、スナップショットに関連付けられた子ディレクトリ構造について使用される名前は、仮想ディレクトリだけに関連しており、実際の残されたリソースには関連していない。従って、共有ボリュームが、クライアントにおける共有部として以外の何らかの機構によって(例えば、ローカルファイルシステムアクセスを介して)検査される場合、クライアントにエクスポートされる名前は、必ずしも現れないはずである。
(子ディレクトリ構造をスナップショットとして識別すること)
図5および図6は、リソースをスナップショットとして識別するために、どのようにして本発明の一実施形態がリソースハンドル中のフラグを使用するかを示すものである。当技術分野において知られているように、一意的なファイルハンドルを使用して共有ボリューム上の各リソースをクライアント203により識別することができる。ファイルハンドルは、クライアント203がサーバ201上でファイルまたはディレクトリを参照するときに用いるトークンである。パスネーム変換要求(ルックアップ)がクライアント203からサーバ201に送られると、ファイルハンドルは、サーバ201によって作成される。サーバ201は、要求されたファイルまたはディレクトリを見出し、要求中のユーザがアクセス許可を得られるようにする。許可が与えられる場合には、サーバ201は、この要求されたファイルについてのファイルハンドルを作成し、このファイルハンドルをクライアント203に戻す。ファイルハンドルは、クライアント203による将来のアクセス要求中において、このファイルを識別する。クライアント203は、クライアント203がアクセスしている各ファイルごとにファイルハンドルを記憶するボリュームハンドルテーブルを保持する。
異なるネットワークシステムで使用されるファイルハンドルの構造は、異なるものにすることができる。図5は、本発明の一実装形態中で使用される1つのファイルハンドル510の一例を示している。ファイルハンドル510の例は、ボリュームIDおよびマウントIDを含み、これらが一緒に要求されたファイルが存在するボリュームの特定の化身(incarnation)を識別する。ファイルハンドル510は、共有ボリュームのルートリソースを識別する共有IDと、どの特定のファイルがファイルハンドル510によって参照されるかを識別するファイルID511を含む。
さらに、この説明中で使用される例、ファイルハンドル510は、参照ファイルが現在のボリューム上ではなくてスナップショット上に存在することを示すフラグフィールド514を含む。換言すれば、スナップショットに関連付けられたディレクトリ構造は、現在の共有部上のリソースとして存在するので、参照中のファイルが現在のファイルであるか、それともスナップショット上に存在するファイルのバージョンであるかを識別する際に、あいまいになる可能性がある。従って、フラグフィールド514は、要求されたファイルがスナップショット上に存在し、ファイルハンドル510中の共有ID512がスナップショット共有部を指すことを示すファイルハンドル510中に含まれる。さらに、スナップショットフラグは、サーバ201に、そのファイルに対してどのような変更特権を示すことでもできるのにもかかわらず、ファイルハンドル510が参照するリソースを変更することができないことを通知する。
図6は、本発明に従って、どのようにスナップショット上のリソースをアクセスすることができるかを一般的に示した機能フロー図である。フロー図は、事象の生起、ならびにサーバ201とクライアント203の間を移動するメッセージの方向を示している。この矢印は、メッセージが移動する方向、すなわちクライアント203からサーバ201への方向、またはその逆の方向を示す。
最初にメッセージ605において、クライアント203は、特定の共有ボリュームをマウントする要求をサーバ201に発行する。メッセージ607において、サーバ201は、ファイルハンドルを要求された共有部のルートへと戻すことによって応答する。このポイントにおいて、クライアント203は、共有ボリューム内のファイルへのアクセスを要求することができる。ユーザが共有ボリュームのスナップショットへのアクセスをしたいと思う場合には、メッセージ609において、クライアント203は、共有ボリュームのルートの下に記憶されるファイルに対するファイルハンドルを求める要求を発行する。そのために、クライアント203は、要求されたリソース(この例におけるスナップショット)についてのルートハンドルに加えて識別子をサーバ201に渡す。これに応答して、メッセージ611において、サーバ201は、ハンドルをこのスナップショットに戻す。上述したように、スナップショットへのハンドルは、ハンドルがスナップショットに関連付けられることを示すフラグビットを含むことができる。最終的に、クライアントは、メッセージ613において、そのファイル(「任意のファイル」)へのファイルハンドルを求める要求を発行することにより、スナップショット上の任意のファイルにアクセスすることができる。サーバ201は、メッセージ615において、適切に設定されたスナップショットフラグビットを有する要求されたファイルにファイルハンドルを戻すことによって応答する。
このようにして、共有ボリュームへのアクセス権を持つクライアントコンピュータは、クライアントコンピュータ上に新しいボリュームをマウントする必要なしに、共有ボリュームの任意のスナップショットに直接にアクセスすることができる。この利点により、しばしばスナップショットへのアクセスを不便なものにしていた、以前は必要だった高いアクセス特権の必要性がなくなる。さらに、本発明の機構を用いたスナップショットへのアクセスには、既存のネットワークファイルアクセスプロトコルに対する変更の必要がなく、スナップショットへのアクセスの実装が非常に簡単になる。
以上の明細書、例、およびデータは、本発明の概念および実装形態の例の十分な説明を提供している。本発明の趣旨および範囲を逸脱することなく本発明の多数の実施形態を作成することができるので、本発明は、添付の特許請求の範囲に帰するものである。
本発明の実装形態において使用することができるコンピューティング装置を示す機能ブロック図である。 本発明の実施形態を実装することができるネットワーク環境を一般的に示す機能ブロック図である。 共有ボリュームの1または複数のスナップショットへの直接アクセスを提供するサーバによりクライアントを使用可能にする共有ボリュームに対応するディレクトリ構造を示す図である。 図3に示した子ディレクトリ構造のルートの名前の一般的な命名規則を示す図である。 スナップショットがアクセス中であることを示すスナップショットフラグフィールドを含む分散ファイルシステム上でファイルにアクセスするために使用されるファイルハンドルの図である。 本発明にかかるスナップショット上のリソースにどのようにアクセスするかを一般的に示す機能フロー図である。
符号の説明
104 システムメモリ
105 オペレーティングシステム
106 プログラムモジュール
107 プログラムデータ
109 取り外し可能記憶装置
110 取り外し不能記憶装置
112 入力装置
114 出力装置
116 通信接続
118 他の計算機装置
122 キーボード
123 マウス

Claims (22)

  1. コンピュータ実行可能なコンポーネントを有するコンピュータ読取り可能媒体であって、
    サーバコンピュータ上に常駐する共有ボリュームを開示するように構成された分散ファイルシステムサーバコンポーネントを備え、前記共有ボリュームは、ルートおよびボリュームシャドウコピーを有し、前記分散ファイルシステムサーバコンポーネントは、前記ボリュームシャドウコピーを識別するボリュームシャドウコピーリソースを含む前記共有ボリュームの前記ルートの下にあるリソースのリスト化を要求中のクライアントに戻すようにさらに構成され、前記ボリュームシャドウコピーリソースは、前記ボリュームシャドウコピーへのアクセス権を前記要求中のクライアントに提供するように動作することを特徴とするコンピュータ読取り可能媒体。
  2. 前記リソースのリスト化は、ディレクトリツリー構造を含むことを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  3. 前記サーバコンピュータと前記クライアントは、前記ネットワークファイルシステムプロトコルを使用して通信するように構成されていることを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  4. 前記ボリュームシャドウコピーリソースは、前記共有ボリュームの前記ルートの下にあるエントリを含むことを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  5. 前記エントリは、デフォルトで隠されていることを特徴とする請求項4に記載のコンピュータ読取り可能媒体。
  6. 前記エントリは、前記ボリュームシャドウコピーを前記共有ボリュームの他のボリュームシャドウコピーと一意的に区別する名前を含むことを特徴とする請求項4に記載のコンピュータ読取り可能媒体。
  7. 前記名前は、前記ボリュームシャドウコピーの作成時間に基づいていることを特徴とする請求項6に記載のコンピュータ読取り可能媒体。
  8. 前記名前は、仮想の名前であることを特徴とする請求項6に記載のコンピュータ読取り可能媒体。
  9. 前記要求中のクライアントは、高いアクセス特権を使用せずに前記ボリュームシャドウコピーへのアクセス権が提供されることを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  10. 前記要求中のクライアントは、前記要求中のクライアントに追加のボリュームをマウントせずに前記ボリュームシャドウコピーへのアクセス権が提供されることを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  11. 前記ボリュームシャドウコピーリソースへのアクセスは、前記共有ボリュームに関連付けられ記憶される許可に基づくアクセス制御機構を使用することを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  12. 前記ボリュームシャドウコピーへのアクセスは、読取り専用ベースで提供されることを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  13. 前記ボリュームシャドウコピーへのアクセスは、読取り/書込みベースで提供されることを特徴とする請求項1に記載のコンピュータ読取り可能媒体。
  14. データ構造で符号化されるコンピュータ読取り可能媒体であって、
    ルートエントリを有し、共有ボリュームを表す第1のディレクトリ構造と、
    前記第1のディレクトリ構造に関連付けられた第2のディレクトリ構造であって、前記第2のディレクトリ構造は、前記共有ボリュームのボリュームシャドウコピーを表し、前記第1のディレクトリ構造の前記ルートエントリの下にある子エントリを介してアクセス可能である第2のディレクトリ構造と
    を備えたことを特徴とするコンピュータ読取り可能媒体。
  15. 前記第1のディレクトリ構造および前記第2のディレクトリ構造は、サーバコンピュータ上で維持され、ネットワーク上で要求中のクライアントコンピュータに提供されることを特徴とする請求項14に記載のコンピュータ読取り可能媒体。
  16. 前記サーバコンピュータと前記要求中のクライアントコンピュータは、前記ネットワークファイルシステムプロトコルを使用して通信することを特徴とする請求項15に記載のコンピュータ読取り可能媒体。
  17. 前記子エントリは、前記ボリュームシャドウコピーの作成時間に基づく名前を含むことを特徴とする請求項14に記載のコンピュータ読取り可能媒体。
  18. 前記名前は、デフォルトで前記第1のディレクトリ構造中の隠れエントリであることを特徴とする請求項17に記載のコンピュータ読取り可能媒体。
  19. データ構造で符号化されるコンピュータ読取り可能媒体であって、
    分散ファイルシステム上でファイルにアクセスするためのファイルハンドルであって、前記ファイルハンドルは、前記ファイルハンドルに関連付けられたファイルが共有ボリュームのボリュームシャドウコピー中に存在することを示すボリュームシャドウコピーフラグビットを含むファイルハンドルを
    備えたことを特徴とするコンピュータ読取り可能媒体。
  20. 分散ファイルシステム上でファイルにアクセスするためのコンピュータ実装方法であって、
    要求中のクライアントから共有ボリュームをマウントする要求を受け取ること、
    前記共有ボリュームのルートに関連付けられた第1のファイルハンドルを前記要求中のクライアントに戻すこと、
    前記共有ボリュームのボリュームシャドウコピーを表す、前記ルートの子エントリに関連付けられた別のファイルハンドルを求める要求を受け取ること、および、
    前記ボリュームシャドウコピーの前記ルートに関連付けられた第2のファイルハンドルを前記要求中のクライアントに戻すこと
    を備えたことを特徴とするコンピュータ実装方法。
  21. 前記ボリュームシャドウコピーの前記ルートに関連付けられた前記ファイルハンドルを戻すことは、前記第2のファイルハンドルが前記ボリュームシャドウコピーに関連付けられたことを示すように設定されるボリュームシャドウコピーフラグビットを有するボリュームシャドウコピーファイルハンドルを生成することをさらに含むことを特徴とする請求項20に記載のコンピュータ実装方法。
  22. 前記要求中のクライアントに関連付けられたアクセス許可を評価して、前記要求中のクライアントが前記ボリュームシャドウコピーにアクセスする許可を有するかどうかを判定することをさらに含むことを特徴とする請求項20に記載のコンピュータ実装方法。
JP2004176216A 2003-06-13 2004-06-14 ネットワーク化環境においてシャドウコピーを開示する機構 Pending JP2005004778A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/461,564 US7730033B2 (en) 2003-06-13 2003-06-13 Mechanism for exposing shadow copies in a networked environment

Publications (1)

Publication Number Publication Date
JP2005004778A true JP2005004778A (ja) 2005-01-06

Family

ID=33418110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004176216A Pending JP2005004778A (ja) 2003-06-13 2004-06-14 ネットワーク化環境においてシャドウコピーを開示する機構

Country Status (5)

Country Link
US (1) US7730033B2 (ja)
EP (1) EP1489510A3 (ja)
JP (1) JP2005004778A (ja)
KR (1) KR20040107412A (ja)
CN (1) CN1573750A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007164295A (ja) * 2005-12-09 2007-06-28 Hitachi Ltd ストレージシステム、nasサーバ、及びスナップショット方法
JP2011175616A (ja) * 2010-02-24 2011-09-08 Hitachi Ltd 書込み可能コピーオンライト・スナップショット機能のためのi/oレイテンシーの削減

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7849112B2 (en) * 2003-09-03 2010-12-07 Emc Corporation Using a file handle for associating the file with a tree quota in a file server
JP4495508B2 (ja) * 2004-04-23 2010-07-07 株式会社日立製作所 計算機システムの構成管理方法および構成管理装置
US7366858B2 (en) * 2004-09-09 2008-04-29 Microsoft Corporation Framework for taking shadow copies and performing backups in a networked environment
US20110181981A1 (en) * 2005-05-09 2011-07-28 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Method and system for rotational control of data storage devices
US7565596B2 (en) * 2005-09-09 2009-07-21 Searete Llc Data recovery systems
US9396752B2 (en) 2005-08-05 2016-07-19 Searete Llc Memory device activation and deactivation
US8462605B2 (en) * 2005-05-09 2013-06-11 The Invention Science Fund I, Llc Method of manufacturing a limited use data storing device
US8099608B2 (en) 2005-05-09 2012-01-17 The Invention Science Fund I, Llc Limited use data storing device
US8224837B2 (en) * 2005-06-29 2012-07-17 Oracle International Corporation Method and mechanism for supporting virtual content in performing file operations at a RDBMS
US8037026B1 (en) * 2005-07-01 2011-10-11 Hewlett-Packard Development Company, L.P. Protected user-controllable volume snapshots
US20070022117A1 (en) * 2005-07-21 2007-01-25 Keohane Susann M Accessing file system snapshots directly within a file system directory
US8272058B2 (en) 2005-07-29 2012-09-18 Bit 9, Inc. Centralized timed analysis in a network security system
US7895651B2 (en) 2005-07-29 2011-02-22 Bit 9, Inc. Content tracking in a network security system
US8984636B2 (en) 2005-07-29 2015-03-17 Bit9, Inc. Content extractor and analysis system
US8150936B2 (en) * 2006-01-30 2012-04-03 Emc Corporation Methods and apparatus to manage shadow copy providers
US7461223B2 (en) * 2006-05-29 2008-12-02 Microsoft Corporation Retaining shadow copy data during replication
US8264928B2 (en) * 2006-06-19 2012-09-11 The Invention Science Fund I, Llc Method and system for fluid mediated disk activation and deactivation
US7953946B2 (en) * 2007-04-16 2011-05-31 Microsoft Corporation Controlled anticipation in creating a shadow copy
US9110920B1 (en) 2007-05-03 2015-08-18 Emc Corporation CIFS access to NFS files and directories by translating NFS file handles into pseudo-pathnames
US8533847B2 (en) 2007-05-24 2013-09-10 Sandisk Il Ltd. Apparatus and method for screening new data without impacting download speed
US8271445B2 (en) * 2007-06-08 2012-09-18 Apple Inc. Storage, organization and searching of data stored on a storage medium
US7877553B2 (en) * 2007-08-06 2011-01-25 Microsoft Corporation Sharing volume data via shadow copies using differential areas
US8725967B2 (en) 2008-08-08 2014-05-13 Amazon Technologies, Inc. Providing executing programs with access to stored block data of others
EP2359271A2 (en) * 2008-12-16 2011-08-24 SanDisk IL Ltd. Discardable files
US8849856B2 (en) 2008-12-16 2014-09-30 Sandisk Il Ltd. Discardable files
US9015209B2 (en) 2008-12-16 2015-04-21 Sandisk Il Ltd. Download management of discardable files
US8375192B2 (en) 2008-12-16 2013-02-12 Sandisk Il Ltd. Discardable files
US9020993B2 (en) 2008-12-16 2015-04-28 Sandisk Il Ltd. Download management of discardable files
US9104686B2 (en) 2008-12-16 2015-08-11 Sandisk Technologies Inc. System and method for host management of discardable objects
US8205060B2 (en) 2008-12-16 2012-06-19 Sandisk Il Ltd. Discardable files
US8566362B2 (en) 2009-01-23 2013-10-22 Nasuni Corporation Method and system for versioned file system using structured data representations
US8392481B2 (en) * 2009-04-22 2013-03-05 International Business Machines Corporation Accessing snapshots of a time based file system
US20110231698A1 (en) * 2010-03-22 2011-09-22 Zlati Andrei C Block based vss technology in workload migration and disaster recovery in computing system environment
US8086638B1 (en) 2010-03-31 2011-12-27 Emc Corporation File handle banking to provide non-disruptive migration of files
US8549229B2 (en) 2010-08-19 2013-10-01 Sandisk Il Ltd. Systems and methods for managing an upload of files in a shared cache storage system
US8463802B2 (en) 2010-08-19 2013-06-11 Sandisk Il Ltd. Card-based management of discardable files
US8799231B2 (en) 2010-08-30 2014-08-05 Nasuni Corporation Versioned file system with fast restore
US8661063B2 (en) * 2010-10-12 2014-02-25 Nasuni Corporation Versioned file system with sharing
US8788849B2 (en) 2011-02-28 2014-07-22 Sandisk Technologies Inc. Method and apparatus for protecting cached streams
US8818951B1 (en) * 2011-12-29 2014-08-26 Emc Corporation Distributed file system having separate data and metadata and providing a consistent snapshot thereof
US9201887B1 (en) * 2012-03-30 2015-12-01 Emc Corporation Cluster file server proxy server for backup and recovery
US20140250075A1 (en) * 2013-03-03 2014-09-04 Jacob Broido Using a file system interface to access a remote storage system
GB2520043A (en) 2013-11-07 2015-05-13 Ibm Sharing of snapshots among multiple computing machines
US20160012070A1 (en) * 2014-07-08 2016-01-14 Netapp, Inc. Methods for managing a request to list previous versions of an object and devices thereof
EP3224744A4 (en) 2014-11-28 2018-08-01 Nasuni Corporation Versioned file system with global lock
US9998528B2 (en) 2016-02-17 2018-06-12 International Business Machines Corporation Direct access storage device analyzer
US10356158B2 (en) * 2016-05-16 2019-07-16 Carbonite, Inc. Systems and methods for aggregation of cloud storage
US11100107B2 (en) 2016-05-16 2021-08-24 Carbonite, Inc. Systems and methods for secure file management via an aggregation of cloud storage services
US10606766B1 (en) * 2017-07-14 2020-03-31 STEALTHbits Technologies, Inc. Systems and methods for shadow copy access prevention
CN109324929B (zh) * 2018-09-17 2021-11-09 郑州云海信息技术有限公司 一种快照创建方法、装置、设备及可读存储介质
CN109460319A (zh) * 2018-11-01 2019-03-12 郑州云海信息技术有限公司 一种可写快照的创建方法、装置、系统、设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051882A (ja) * 1999-08-04 2001-02-23 Fujitsu Ltd スナップショット参照方法、及び記憶装置

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5043876A (en) * 1988-05-27 1991-08-27 International Business Machines Corporation N-level file shadowing and recovery in a shared file system
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
US5706510A (en) * 1996-03-15 1998-01-06 Hewlett-Packard Company Zymbolic history management system
US5905990A (en) * 1997-06-23 1999-05-18 International Business Machines Corporation File system viewpath mechanism
JPH11134234A (ja) * 1997-08-26 1999-05-21 Reliatec Ltd バックアップ・リストア方法およびその制御装置,並びにバックアップ・リストアプログラムを記録したコンピュータ読み取り可能な記録媒体
US6073220A (en) * 1997-09-03 2000-06-06 Duocor, Inc. Apparatus and method for providing a transparent disk drive back-up
US6131148A (en) * 1998-01-26 2000-10-10 International Business Machines Corporation Snapshot copy of a secondary volume of a PPRC pair
US6792454B2 (en) * 1998-02-04 2004-09-14 Interwoven, Inc. System and method for website development
US6026414A (en) * 1998-03-05 2000-02-15 International Business Machines Corporation System including a proxy client to backup files in a distributed computing environment
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
US6760723B2 (en) * 2000-01-31 2004-07-06 Commvault Systems Inc. Storage management across multiple time zones
US6918113B2 (en) * 2000-11-06 2005-07-12 Endeavors Technology, Inc. Client installation and execution system for streamed applications
US6912645B2 (en) * 2001-07-19 2005-06-28 Lucent Technologies Inc. Method and apparatus for archival data storage
US20030097640A1 (en) * 2001-07-25 2003-05-22 International Business Machines Corporation System and method for creating and editing documents
US20030220948A1 (en) * 2002-01-22 2003-11-27 Columbia Data Products, Inc. Managing snapshot/backup collections in finite data storage
US7284016B2 (en) * 2002-12-03 2007-10-16 Emc Corporation Client-server protocol for directory access of snapshot file systems in a storage system
US6883083B1 (en) * 2002-12-20 2005-04-19 Veritas Operating Corporation System and method for maintaining and accessing information regarding virtual storage devices
US7155460B2 (en) * 2003-03-18 2006-12-26 Network Appliance, Inc. Write-once-read-many storage system and method for implementing the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001051882A (ja) * 1999-08-04 2001-02-23 Fujitsu Ltd スナップショット参照方法、及び記憶装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007164295A (ja) * 2005-12-09 2007-06-28 Hitachi Ltd ストレージシステム、nasサーバ、及びスナップショット方法
JP2011175616A (ja) * 2010-02-24 2011-09-08 Hitachi Ltd 書込み可能コピーオンライト・スナップショット機能のためのi/oレイテンシーの削減

Also Published As

Publication number Publication date
EP1489510A3 (en) 2005-08-03
EP1489510A2 (en) 2004-12-22
US20040254936A1 (en) 2004-12-16
US7730033B2 (en) 2010-06-01
CN1573750A (zh) 2005-02-02
KR20040107412A (ko) 2004-12-20

Similar Documents

Publication Publication Date Title
JP2005004778A (ja) ネットワーク化環境においてシャドウコピーを開示する機構
KR100974149B1 (ko) 네임스페이스에 대한 정보 유지 방법, 시스템 및 컴퓨터 판독가능 저장 매체
US9836244B2 (en) System and method for resource sharing across multi-cloud arrays
US7653935B2 (en) File server for translating user identifier
US8285817B1 (en) Migration engine for use in a logical namespace of a storage system environment
US8200788B2 (en) Slice server method and apparatus of dispersed digital storage vaults
US7836018B2 (en) Simultaneously accessing file objects through web services and file services
US9122397B2 (en) Exposing storage resources with differing capabilities
US10289694B1 (en) Method and system for restoring encrypted files from a virtual machine image
US20020129216A1 (en) Apparatus and method for configuring available storage capacity on a network as a logical device
US20050021915A1 (en) Managing storage of items across a network of heterogeneous storage devices
JP2007272874A (ja) クラスタ化ファイルシステムにおいてデータのバックアップを取る方法
US20170154039A1 (en) Enabling a hadoop file system with posix compliance
US8627446B1 (en) Federating data between groups of servers
US20080320590A1 (en) Method and apparatus for creating secured file views in a software partition
JP5173110B2 (ja) トランスペアレントなストレージ再編成のためのシステムおよび方法
JP5241298B2 (ja) 履歴上のファイル名およびロケーションをインデックス付きにすることによりファイル・サーチおよびファイル操作を支援するためのシステムおよび方法
US9736240B2 (en) In-band management of a network attached storage environment
JP4271967B2 (ja) 分散ファイルシステム及び分散ファイルシステムの運用方法
US20120005162A1 (en) Managing Copies of Data Structures in File Systems
US20100268738A1 (en) System that maintains objects created and modified within designated directories on a per-client basis in a network filesystem
US7987335B1 (en) Techniques for virtualizing data
JP2009535707A (ja) プレゼンスに関する統一された概念
US7209248B1 (en) Managing the lifetime of distributed resource data using temporal scopes
JP4492569B2 (ja) ファイル操作制御装置、ファイル操作制御システム、ファイル操作制御方法及びファイル操作制御プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070613

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100129

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100625