JP5456670B2 - 分散ファイルシステムのための効率的な更新 - Google Patents

分散ファイルシステムのための効率的な更新 Download PDF

Info

Publication number
JP5456670B2
JP5456670B2 JP2010514952A JP2010514952A JP5456670B2 JP 5456670 B2 JP5456670 B2 JP 5456670B2 JP 2010514952 A JP2010514952 A JP 2010514952A JP 2010514952 A JP2010514952 A JP 2010514952A JP 5456670 B2 JP5456670 B2 JP 5456670B2
Authority
JP
Japan
Prior art keywords
dfs
directory
link
metadata
component
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.)
Active
Application number
JP2010514952A
Other languages
English (en)
Other versions
JP2010532526A (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 JP2010532526A publication Critical patent/JP2010532526A/ja
Application granted granted Critical
Publication of JP5456670B2 publication Critical patent/JP5456670B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Landscapes

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

Description

本発明は、分散ファイルシステムのための効率的な更新に関する。
職場および世界中でコンピュータネットワーキング技術(例えばインターネット)が進化したことによって、生産性の大幅な増加がもたらされてきた。特に、多くの仕事が自動化され、また様々な価値あるサービスが、通信の増加、ワークフロー、および多くのビジネスおよび個人用アプリケーションの効果を促すために提供されている。ネットワーキング技術は、ユーザまたはアプリケーションがデータの論理パーティションを他のユーザおよびアプリケーションと共有するための共有機能性を提供する。例えば、ユーザは、何らかの許可規則に従ってネットワークを介してユーザがフォルダに直接アクセスすることを可能にすることによって、1つまたは複数の他のユーザとフォルダを共有することができる。この機能性は、ディレクトリサービスを活用するアプリケーションまたはサービスを実装することよって提供され、このディレクトリサービスは、例えば様々なユーザアカウントおよびネットワークリソースの識別面を定義し、管理する。ライトウェイトディレクトリアクセスプロトコル(LDAP:Lightweight directory access protocol)は、伝送制御プロトコル/インターネットプロトコル(TCP/IP:transmission control protocol/internet protocol)などのネットワークプロトコルを介して動作するディレクトリサービス実装の一例である。LDAPは、効率およびアクセシビリティのためにレプリケートされたサービスを提供するために、複数のネットワーク装置間で分散させることができ、LDAPサービス装置は、LDAP実装によって定義された更新手順によって同期され得る。
より最近の技術では、分散ファイルシステム(DFS:distributed file system)が、DFSリンクと呼ばれる単一のシームレスなリンク内の複数のネットワークリソースへのアクセスを提供するために実装されており、こうしたアクセスは一般に、所与の名前空間について提供される。DFSルートターゲットサーバは、複数のDFSリンクを有する1つまたは複数の名前空間をホストし;DFSルートターゲットサーバは、後続のアクセスに備えてDFSリンクデータを収集し管理する。ディレクトリサービス実装(例えばLDAP)は、DFSルートノードが、名前空間に関連するリンクデータをその名前空間に関連する特定のディレクトリオブジェクトに格納することを可能にすることによってこの機能性を提供するために使用されてきた。この実装では、名前空間ディレクトリオブジェクトの属性は、名前空間の様々な共有に関する。
複数のディレクトリサービス実装を用いて操作する場合、またはDFSルートターゲットサーバへのキャッシュを更新する場合、単一のDFSリンクへの更新を行うには、名前空間全体についての最新リンク情報を提供するためにDFSルートターゲットサーバ間で名前空間全体に関連するディレクトリオブジェクトを転送し、格納することが必要である。
下記は、本明細書に述べられたいくつかの態様についての基本的な理解を促すために、簡略化された概要を提示している。この概要は、広範な概略ではなく、また重要な/重大な要素を識別するものでも、本明細書に述べられた様々な態様の範囲を定めるものでもない。その唯一の目的は、以下に提示されるより詳細な説明の序文として、いくつかの概念を簡略化された形で提示することである。
例えばDFSリンクまたは共有がディレクトリサービスを使用して単一のディレクトリオブジェクトとして格納され得る、分散ファイルシステム(DFS)機能性に関連するメタデータの効率的な更新が提供される。したがって、この追加の粒度レベルを提供することによって、リンクに関連するデータの修正時、名前空間全体に関連する単一のディレクトリオブジェクトではなく、単一のDFSリンクに関連するディレクトリオブジェクトだけを更新することが必要となる。さらに、DFSリンクをディレクトリオブジェクトとして格納し、オブジェクトの属性に、リンクに関連するメタデータを取り込む(populate)ことによって、データへの追加のサービスを提供するためにディレクトリサービス実装を使用することが可能になる。例えば、DFSリンクデータは、それについての照会および/または解釈が互換性をもつようにデータを標準化することを容易にするためにスキーマ化することができる。さらに、ディレクトリサービス実装の照会機能性は、例えば所与の操作(更新操作など)において関連レコードを検索するために、DFSリンクに関連しても同様に使用することができる。
一例では、DFSリンクは、1つまたは複数の使用可能なネットワークリソースの集合体として定義され、LDAP実装で単一のライトウェイトディレクトリアクセスプロトコル(LDAP)オブジェクトとして格納され得る。さらに、ネットワークリソースの位置、それに関連する許可情報など、DFSリンクに関連するデータ、および(本明細書に述べられたような)他の情報が、リンクに関連するメタデータとして格納され得る。リンクに関連するデータおよび/またはリンク自体を更新する(例えばリンクを追加または削除する)と、単一のリンクに関連するLDAPオブジェクトが更新され得る。さらに、更新の存在に関して通知が、1つまたは複数のDFSルートターゲットに送られ得る(またはDFSルートターゲットは、LDAPコンポーネントをポーリングすることができ);名前空間内のDFSデータのレプリケーションを保証するために、LDAP照会機能性を使用して更新済みのレコードを検索することができる。
上記内容および関連の目的を達成するために、例示的な特定の態様について、以下の説明および添付の図面に関連して本明細書に述べる。これらの態様は、実施することができる様々なやり方を示すものであり、そのすべてを本明細書で網羅することが意図されている。他の利点および新規の特徴は、図面と併せて考慮されるとき、以下の詳細な説明から明らかになり得る。
分散ファイルシステム(DFS)名前空間データを異種のディレクトリオブジェクトに格納することを容易にする例示的なシステムのブロック図である。 DFSルートターゲットコンポーネントのオブジェクトおよびメタデータの更新を容易にする例示的なシステムのブロック図である。 複数のリソースへのDFSデータの更新を容易にする例示的なシステムのブロック図である。 DFSディレクトリオブジェクトおよびノードの例示的なツリーのブロック図である。 ネットワーク環境内のDFSデータの更新を容易にする例示的なシステムのブロック図である。 DFSリンクに対応するディレクトリオブジェクトの作成のための例示的なフローチャートである。 DFSリンクに関連するディレクトリデータを更新するための例示的なフローチャートである。 ディレクトリデータを介したDFSリンクへのアクセスを提供するための例示的なフローチャートである。 適切な動作環境を示す概略ブロック図である。 コンピュータ環境例の概略ブロック図である。
ディレクトリサービスなどの機能性を使用して、DFSおよび/または関連メタデータに関する付加価値を提供することができる、分散ファイルシステム(DFS)のための効率的なメタデータ更新が提供される。DFSの定義は、変更が生じるとき単一の定義に関連するオブジェクトだけを更新するディレクトリサービスを使用して定義への更新が効率的に行われ得るように、オブジェクトの属性として格納されたメタデータを有する1つまたは複数のディレクトリオブジェクトとして生成することができ、同様に、検索、スキーマ検証および他のディレクトリプロパティが、定義に関連して使用され得る。これに関して、DFS定義は、データを更新すると、単一の名前空間のすべての定義に関連する単一のリソースをトランスポートし、処理し、かつ/または更新することが必要とならないように、ディレクトリサービス実装において1つまたは複数の独立した自己完結型のリソースまたはオブジェクトとして展開される。
一例によれば、DFSサービスは、所与のドメインについて提供され得る。ドメインは、関連するドメインコントローラを有することができ、このドメインコントローラは、例えば、DFS情報を格納するために使用されるディレクトリデータベースを管理し、受信された情報で残りのドメインコントローラを更新することができる。DFSリンクは、ドメイン上の1つまたは複数の集合リソース(または共有)を備えるDFSノードによって定義することができ;この定義のメタデータは、1つまたは複数のディレクトリオブジェクトとして、またはその中に格納することができる。メタデータは、DFSリンクに適切にアクセスするために使用され得るデータを少なくとも備えることを理解されたい。この例では、名前空間内および/またはドメインコントローラもしくはDFSノード上に他の多くのDFSリンクが存在し得るが、ドメインコントローラは、DFSリンクに関連するディレクトリオブジェクトを単に追加することによって、新しいリンクを反映するようにそれぞれのディレクトリ情報を更新することができる。これに関して、DFSリンクをディレクトリオブジェクトの属性データとして表現する名前空間全体に対する1つのディレクトリオブジェクトを実装するのとは対照的に、所与の名前空間内にさらなるリンクが存在し得るが1つまたは複数のDFSリンクに関連するデータを個別のディレクトリオブジェクトとして格納し、かつ/または管理することができる。さらに、異種のディレクトリオブジェクトまたはDFSノードは、所与の名前空間に関連するオブジェクト全体を置き換え、かつ/または通信するのではなく、単一のオブジェクトを追加することによってローカル情報を更新することができる。これによって、DFS情報のより効率的な更新が提供され、またさらに詳細に述べるように、リンクに関連してディレクトリサービス実装の他の機能性を使用することが可能となり得る。
次に、添付の図面を参照して、本開示の様々な態様について述べる。図面では、同じ符号は、全体を通して同様のまたは対応する要素に言及する。しかし、図面、および図面に関する詳細な説明は、特許請求された主題を開示された特定の形に限定するものではないことを理解されたい。より正確に述べると、特許請求された主題の精神および範囲に含まれるすべての修正物、等価物および代替物を網羅することが意図されている。
次に図に移ると、図1は、DFSリンクを1つまたは複数のディレクトリオブジェクトとして定義することを容易にするシステム100を示している。1つまたは複数の名前空間のためのDFS機能性を提供するDFSルートターゲットコンポーネント102、ならびに情報の効率的な格納、共有およびその更新を提供するために1つまたは複数の定義されたDSF名前空間のメタデータを収容することができるディレクトリコンポーネント104が示されている。一例によれば、DFSルートターゲットコンポーネント102は、メタデータ、ならびに他のDFSリンクに関連するメタデータに付加価値を提供するためにディレクトリコンポーネント104を活用することができるように、(例えば名前空間に属し得る)DFSリンクを確立し、リンクに関連するメタデータをディレクトリコンポーネント104に提供することができる。
DFSルートターゲットコンポーネント102は、1つまたは複数の集合リソースに関する複数のDFSリンクを定義し管理するために使用することができ、例えば、リソースは、ローカルに、かつ/あるいはリンクを介してネットワークまたはドメイン上で共有され得る。共有可能なリソースは、それだけに限らないが、ソフトウェアまたはオペレーティングシステムリソース(例えばファイル、フォルダ、アカウント、資格情報など)、ハードウェアリソース(プリンタ、ドライブ、スキャナ、プロセッサ、物理メモリを含むI/O装置など)および/または類似物を備え得る。一例によれば、DFSルートターゲットコンポーネント102は、フォルダやディレクトリなど、複数の共有リソースの一部の集合体のための単一のDFSリンクを定義することができる。したがって、単一のリンクをDFSルートターゲットコンポーネント102に要求することができ、このDFSルートターゲットコンポーネント102は、複数のリソースへのアクセスを提供することができるが、この複数のリソースは、エンドユーザには単一のリソースのように見える。これに関して、DFSルートターゲットコンポーネント102は、1つまたは複数のDFS名前空間のDFSリンクをホストすることができる。DFSリンクは、単一の、または複数の共有点をも同様に有する単一の装置に関係し得ることを理解されたい。DFSルートターゲットコンポーネント102によって定義されたDFSリンクは、例えばドメイン全体に渡って使用可能なリソース、および/または特定のドメインコントローラによって管理されたリソースの範囲に及び;リンクに関連するメタデータおよび/またはその定義は、例えば所与のリンクに関連する1つまたは複数のオブジェクトの属性としてディレクトリコンポーネント104内に含まれ得る。
ディレクトリコンポーネント104は、検索、修正、配布、自動更新および/または類似物を含めて、複数の付加価値サービスを備えたディレクトリサービス実装を提供することができる。ディレクトリサービス実装は、例えば、ローカルおよび/またはリモートのネットワークリソースの格納および管理を提供することができ、ディレクトリコンポーネント104は、上述されたように、1つまたは複数の通信プロトコル(例えば伝送制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザデータグラムプロトコル(UDP:user datagram protocol)、ポイントツーポイントプロトコル(PPP:point−to−point protocol)、および/または類似物など)によってこうしたリソースへのアクセスを可能にする。一例では、ディレクトリサービスデータを通信するためにTCP/IPを使用し得るライトウェイトディレクトリアクセスプロトコル(LDAP)が、ディレクトリコンポーネント104によって使用され得る。ディレクトリコンポーネント104は、(例えばリレーショナルデータベース、階層ファイルまたはデータベース、フラットファイル、コンマ区切り値ファイル、実行可能プログラムもしくはサービス、および/または類似物を含めて)上記の機能性を提供するために様々な構成で実装することができ、また分散させることもできる(例えば、複数のネットワークリソースに冗長な/レプリケートされたデータおよび/またはサービスを提供する複数のディレクトリコンポーネントの一部など)。ディレクトリコンポーネント104は、上述されたように、ネットワーク上の様々なリソースに関連する複数のディレクトリオブジェクトを含むことができ、上記の付加価値サービスをディレクトリオブジェクトに関して実施することを可能にすることができる。したがって、所与の名前空間のDFSリンクはそれぞれ、所与の名前空間のリンク全体に必ずしも関係するとは限らないディレクトリコンポーネント104の1つまたは複数のディレクトリオブジェクトに関することがあり、これに関して、DFSリンク情報は、ディレクトリコンポーネント104および/またはその提供されたサービスを活用することによって検索され、修正され、配布され、更新され、かつ/または他のやり方でアクセスされ得る。さらに、メタデータに変更が生じる場合、例えば名前空間内の実質上すべてのリンクに関連するディレクトリオブジェクトではなく、名前空間内のリンク全体ではなく所与のリンクに関連するディレクトリオブジェクトが異種のDFSルートターゲットコンポーネントに転送され、より効率的な更新が提供され得る。
図2を参照すると、ディレクトリサービスを使用して、DFSリンクに関連するメタデータを格納し使用するための例示的なシステム200が示されている。DFSルートターゲットコンポーネント102および202が、ローカルまたはネットワーク環境内の集約された、かつ/または単一のリソースのアクセスに関して1つまたは複数のリンクを定義することを可能にするために提供される。さらに、1つまたは複数のネットワークドメインに関連するサービスを複数のネットワーククライアント(図示せず)に提供するためのドメインコントローラ204が示されており;ドメインコントローラは、例えばドメインコントローラ204の一部としてディレクトリサービスを提供するために使用されるディレクトリコンポーネント104を備える。一例では、ドメインコントローラ204は、ネットワークドメインに参加することができ、ディレクトリコンポーネント104は、DFSルートターゲットコンポーネント102および202からのドメイン内で使用可能なDFSリンクに関連する情報を編成し提供することができる。ドメインコントローラ204は、ディレクトリコンポーネント104を活用して、接続されたクライアントなどのドメインリソースにディレクトリサービスを提供し、ドメインリソースがディレクトリコンポーネント104内に指定された関連データに従って、DFSルートターゲットコンポーネント102および202によって定義されたDFSリンクを使用することを可能にすることができる。
一例によれば、ディレクトリコンポーネント104は、それぞれのドメインコントローラ204に対応するディレクトリサービスに関連する情報を備えることができるが、しかし、さらにディレクトリコンポーネント104は、異種のディレクトリコンポーネント(図示せず)に格納されたディレクトリサービスに関連する情報を備えることができ、これに関して、レプリケートされた複数のディレクトリデータベースのうちの1つとなり得る。上述されたように、ディレクトリコンポーネント104内に格納された一部の情報は、それぞれのリンクがディレクトリコンポーネント104内の複数のオブジェクトの少なくとも1つに対応する、1つまたは複数の所与の名前空間のDFSリンク(例えば1つまたは複数のリソースの集合体へのリンク)に関し得る。DFSルートターゲットコンポーネント102および202は、ディレクトリコンポーネント104を活用して、ディレクトリコンポーネント104に格納されたデータに基づいて1つまたは複数のネットワークリソースにDFS機能性を提供するためのDFSメタデータを取得することができる。一例では、DFSルートターゲットコンポーネント102は、1つまたは複数のネットワークリソースに関連するDFSリンクを作成するために使用することができ;リンクに関するデータ(例えば、後述されるようなリソース位置、許可情報など)は、ディレクトリコンポーネント104の1つまたは複数のディレクトリオブジェクトに格納することができ、この1つまたは複数のディレクトリオブジェクトは、名前空間全体の実質上すべてのリンクに必ずしも関係するのではなく、個別のDFSリンクに関係する。データは、実質上任意の更新機構を使用してDFSルートターゲットコンポーネント202に対して更新され、DFSルートターゲットコンポーネント202が、作成されたDFSリンクへのアクセスをも提供することを可能にすることができる。
言及されたように、ディレクトリコンポーネント104は、所与の名前空間の実質上すべてのリンクを格納することを必要とせずに、DFSリンクごとに1つまたは複数のディレクトリオブジェクトを格納することができ;DFSリンクへの更新処理が行われる場合、DFSルートターゲットコンポーネントは、例えば、名前空間全体または所与のドメインコントローラ204の実質上すべてのリンクに関連するオブジェクトの更新とは対照的に、DFSリンクに関連する1つまたは複数のオブジェクトだけを更新する必要がある。一例では、DFSルートターゲットコンポーネント102および/または202は、メタデータのローカルキャッシュまたはコピーをロードすることができる。DFSルートターゲットコンポーネント102および/または202は、1つまたは複数のディレクトリオブジェクトに変更が生じたことの通知を受けることができ、対象となるリンク(例えば更新されたリンク)を取得し、それに応じてそのローカル表現を更新するために、具体的には様々なDFSリンクに関連するディレクトリオブジェクトを求めてディレクトリコンポーネント104に照会することができる。照会機能性は、一例では、ディレクトリサービス実装によって提供され得ることを理解されたい。さらに、リンクに関連するディレクトリオブジェクトは、関連する識別子を有することができ、この識別子は、(DFSリンクメタデータ属性の更新により)オブジェクトが更新されるときに変化することがあり、この変化は、ディレクトリコンポーネント104に伝搬され;この値は、変更を検出するために、DFSルートターゲットコンポーネント102および/または202のローカル値との不整合性を求めて照会され得る。その後、DFSルートターゲットコンポーネント102および/または202は、更新されたリンクへのアクセスを提供するために、それらのローカルデータを更新することができる。リンクの追加はディレクトリコンポーネント104からも同様に照会することができ、ディレクトリオブジェクトは存在するが、その属性が削除を示すように、削除されたDFSリンクがディレクトリコンポーネント104からソフトデリートされ得る(soft−delete)場合、削除を検索することもできることを理解されたい。さらに、更新は、言及されたように、更新されたディレクトリオブジェクトを1つまたは複数のDFSルートターゲットコンポーネント102および/または202にプッシュすること、プルの後に続く通知、ならびに/あるいはランダムの、時間が定められた、または他のイベントドリブン型のプルなど、実質上任意の機構を使用して行うことができる。
DFSルートターゲットコンポーネント102および202の初期化時、および/またはその存続期間を通じての様々なときに、ディレクトリコンポーネント104との完全な同期が行われることがあり、実質上すべてのデータおよびメタデータ(例えばディレクトリオブジェクトおよび属性)がディレクトリコンポーネント104からダウンロードされ、DFSルートターゲットコンポーネント102および202にアクセス可能に格納される。異種のDFSルートターゲットコンポーネント(例えばDFSルートターゲットコンポーネント204)を介してディレクトリデータへの更新が行われるとき、DFSルートターゲットコンポーネント202は、例えば増分更新を受けることがあり、逆も同様である。DFSルートターゲットコンポーネント102と202は両方とも、データが異種のDFSルートターゲットコンポーネントによって変更される場合も同様に、増分更新され得ることを理解されたい。簡潔に述べられたように、増分更新は、更新を示すDFSリンクの属性値を求めるディレクトリコンポーネント104の照会をトリガするイベントによって実施され得る。トリガは、DFSルートターゲットコンポーネント102および202によって受信されるイベント、タイマのイベント、および/または類似物であり得ることを理解されたい。さらに、DFSルートターゲットコンポーネント102および/または202は、ディレクトリコンポーネント104内でそれが更新したメタデータに対する更新を実施しないようにすることができる。
さらに、削除操作は、ディレクトリコンポーネント104に照会するとDFSルートターゲットコンポーネント102および202がソフトデリートを認識し、それに応じてローカルレコードを削除し得るように、DFSリンクに関連するディレクトリオブジェクトの属性値(例えばソフトデリート)によって示すことができる。このために、削除値属性を有するDFSリンクに対応する動的なオブジェクトがレプリケートされてもよく、ただし、この動的オブジェクトは、ディレクトリコンポーネント104によって収集されたガーベッジであり得る。したがって、作成が成功する場合、古いオブジェクトは削除することができ、新しいオブジェクトは、ディレクトリコンポーネント104に照会するDFSルートターゲットコンポーネント102および/または202のための削除表示であり得る。さらに、他の更新および削除方式が可能であり、例えば、レイジー削除が行われることがあり、この場合、DFSリンクが要求されると、DFSルートターゲットコンポーネント102および/または202は、適切なオブジェクトを求めてディレクトリコンポーネント104をチェックすることができる。例えば、オブジェクトがなくなっている場合、リンクは削除されている。
述べられた諸例によれば、ディレクトリコンポーネント104のディレクトリサービス実装によって提供されるサービスは、例えば検索など、DFSリンクに関して使用され得る。したがって、使用可能なリンク、およびそれに関連するデータは、例えば、上述されたように使用可能な検索基準に基づいて1つまたは複数の関連リンクを検索するために、ディレクトリコンポーネント104を使用することにより照会することができる。さらに、ディレクトリスキーマ検証は、一例では、ディレクトリオブジェクトに関して実施され得る。所与のディレクトリオブジェクトに別々に関係する複数のDFSリンクでは、リンクの適合性をもたらすDFSリンクに、同じ制約が課され得る。また、新しいDFSルートターゲットコンポーネントを設定し、または名前空間全体をレプリケートすることは、必ずしも名前空間の実質上すべてのリンクに関連するディレクトリオブジェクトではなく、所望のリンク(または所望の名前空間のリンク)に関連する個別のディレクトリオブジェクトが(例えば非同期に)転送され、新しいDFSルートターゲットコンポーネントを構成するために使用され得るので、より効率的であり得る。
DFSリンクデータは、更新されると、例えば、ドメインコントローラ204、ならびに/あるいはDFSルートターゲットコンポーネント102および/または202に接続された1つまたは複数のクライアントによって使用され得る(あるいはドメインコントローラ204は、クライアントの代理でDFSルートターゲット102および/または202を活用し、またはその間の通信チャネルを開くことができる)。一例によれば、1つまたは複数のクライアントは、DFSリンクにアクセスすることができ、このDFSリンクは、1つまたは複数のネットワークリソースの集約されたビューを備え得るが、上述されたように、その集合体のマシン境界は、クライアントに透過的である。DFSルートターゲットコンポーネント102および/または202は、ドメインに関連する単一のコンポーネントであっても、例えばレプリケーションおよび/または有効な要求処理のために、(示されたように)1つまたは複数のコンポーネントに分散されてもよいことを理解されたい。さらに、それぞれDFSルートターゲットコンポーネント102および/または202は、1つまたは複数の名前空間に従ってDFS機能性を提供することができる。DFSルートターゲットコンポーネント102および202は、レプリケートされたデータを提供することができるので、1つのDFSルートターゲットコンポーネント102によって定義されたDFSリンクが、DFSルートターゲットコンポーネント202を活用するクライアントまたは他の装置によって使用され得る。
次に図3に移ると、複数のネットワークリソース間でアクセス可能なDFSリンクを確立するための例示的なシステム300が示されている。DFSルートターゲットコンポーネント102および202は、ローカルの、または(例えばネットワークを介して)分散されたファイルシステムリソースへの1つまたは複数のリンクをホストするために提供される。クライアントコンポーネント302が提供され、このクライアントコンポーネント302は、DFSリンクデータの作成および/または取得のためのDFSルートターゲットコンポーネント102との通信をもたらすDFS名前空間へのアクセスを要求することができる。1つまたは複数のネットワークリソースにディレクトリサービスを提供するためにそれぞれのディレクトリコンポーネント104を有するドメインコントローラ204および304も提供される。さらに、(例えばリンクターゲットとして)1つまたは複数のDFSリンクに関係し得るネットワークリソース306および308が提供される。ここでは示されていないが、一実施形態では、ネットワークリソース306および/または308は、クライアントコンポーネント302の機能を実施することもでき、逆も同様であることを理解されたい。一例では、DFSルートターゲットコンポーネント102および202はそれぞれ、1つまたは複数のDFSリンクに関連するメタデータを、1つまたは複数の最適なドメインコントローラ204および/または304の所与のDFSリンクに関連するそれぞれのディレクトリコンポーネント104内に格納することができる。
DFSリンクは、上述されたように、リンクを要求するクライアントコンポーネント302(例えばクライアントコンポーネント302)のユーザがマシン境界を認識せずにリソースを見ることができるように、1つまたは複数の個別のネットワークリソース306および/または308へのアクセスを提供することができる。さらに、DFSリンクは、単一または複数のネットワークリソース上の複数の共有リソース(所与のリソース上の2つのフォルダなど)に関係し得る。したがって、一例では、DFSルートターゲットコンポーネント102は、ネットワークリソース306および/または308の1つまたは複数の共有リソースを備えるDFSリンクを作成するために(一例ではクライアントコンポーネント302によって)使用され得る。DFSルートターゲットコンポーネント102は、DFSリンクに対応するディレクトリオブジェクトを作成するために、ドメインコントローラ204のディレクトリコンポーネント104を使用することができる。さらに、(許可、バージョン管理、ステータス、および後述された他の値など)リンクに関係するメタデータが、オブジェクトの属性として格納され得る。オブジェクトを作成すると、ドメインコントローラ204および/または304に接続された追加のDFSルートターゲットコンポーネント(例えば図2のDFSルートターゲットコンポーネント202)は、更新について通知を受け、または別のやり方で更新を発見し、それに応じて、上述されたようにローカルの表現を更新することができる。さらに、(上述されたようにディレクトリオブジェクト情報の更新を求める)DFSルートターゲットコンポーネント102によってDFSリンクが更新され、または削除される場合、更新は、上述されたように、増分更新または完全同期によって伝搬され得る。ネットワークリソース306および/または308は他のネットワークリソースを介してレプリケートすることができ(または、例えば互いのレプリケーションとすることができ)、DFSルートターゲットコンポーネント102は、リソースの高い可用性のために、ネットワークリソース306/308、および/またはそのレプリケーションへのアクセスを提供できることを理解されたい。一例では、DFSルートターゲットコンポーネント102は、負荷分散方式に少なくとも一部基づいて、適切なリソースまたはレプリケーションを選ぶことができる。
DFSルートターゲットコンポーネント102内の現在の1つまたは複数の名前空間についてのDFSリンク情報では、更新されたDFSルートターゲットコンポーネント102は、DFSルートターゲットコンポーネント102を介してDFSリンクおよびそのリソース(例えばネットワークリソース306および/または308)にアクセスするための情報を提供することができる。情報は、例えばリンクへのアクセスを求める際に使用するために、クライアントコンポーネント302に引き渡すことができる。さらに、示されたように、ドメインコントローラ204のディレクトリコンポーネント104は、所与のドメイン用のレプリケートされたデータベースとして機能する(例えばドメインコントローラ304のディレクトリコンポーネント104を含めた)複数のディレクトリコンポーネントのうちの1つであり得る。したがって、(DFSリンクデータを含めて)ディレクトリコンポーネント104内のディレクトリデータは、ディレクトリコンポーネント内に定義された機能を使用して同期することができる。DFSルートターゲットコンポーネント102がドメインコントローラ204のディレクトリコンポーネント104に対してDFSリンクデータを更新するとき、データは、ディレクトリサービス実装用の事前定義された更新機構を使用するドメインコントローラ304のディレクトリコンポーネント104を含めて、ドメイン内の他のディレクトリコンポーネントに伝搬され得る。(例えばデータがドメインコントローラ204および/または304のディレクトリコンポーネント104に対して更新されるとき)更新通知がDFSルートターゲットコンポーネント202に送られてもよく、DFSルートターゲットコンポーネント202は、更新されたデータを取得するために、最も近いディレクトリコンポーネント104(ドメインコントローラ304内のディレクトリコンポーネント)に同様に照会することができる。更新は、(例えば完全または増分更新同期によって)上記と同様に実施することができる。続いて、更新されたデータは、DFSルートターゲットコンポーネント202(図示せず)に接続された1つまたは複数のネットワークリソースによって使用され得る。DFSルートターゲットコンポーネント202によって定義されたDFSリンクは、DFSルートターゲットコンポーネント102に対しても同様に更新され、それによって使用され得ることを理解されたい。
別の例によれば、ディレクトリコンポーネント104は、DFSメタデータスキーマの複数のバージョンを備えることができる。例えば、DFSルートターゲットコンポーネント102および/または202は、複数の名前空間をホストすることができ、ただし、それぞれの名前空間は、ディレクトリコンポーネント104内の異なるメタデータスキーマに対応し得る。バージョン情報を使用して、ディレクトリコンポーネント104は、例えば名前空間をホストし始めるために、あるいはネットワークに追加された新しいDFSルートターゲットコンポーネントのために、DFSルートターゲットコンポーネント102および/または202にメタデータを適切に提供することができる。
次に図4に移ると、1つまたは複数の名前空間内の複数のDFSリンクを表すために使用され得る例示的な階層DFSディレクトリサービスレイアウト400が示されている。例えばドメイン内に存在することがあり、一例では名前空間アンカー(図示せず)に関係し得る異種の名前空間を表す名前空間ノード402および404が提供され、この名前空間アンカーは、名前空間に対するバージョン不可知論的アクセスを提供するために活用することができ、バージョン管理については、上記により詳しく述べている。名前空間ノード402は、それぞれDFSターゲットノード410、412、414および416などの1つまたは複数の共有リソースの集合体を表し得るDFSリンクオブジェクト406および408を有する。一例によれば、DFSターゲットノード412、414および416はそれぞれ、ネットワーク上の共有リソースに関係することがあり、ただし、これらのリソースが組み合わされて、DFSリンクオブジェクト408が関係するDFSリンクが生成される。例えばDFSターゲットノード412、414および416に関するメタデータは、DFSリンクオブジェクト408内に常駐することがあり;同様に、DFSターゲットノード410に関するメタデータは、DFSリンクオブジェクト406内の属性データとして表され得る。DFSリンクは、上述されたように、例えばそれが単一の共有リソースとして現れ得るように、共有リソースへ透過的なアクセスを提供するように要求され得る。同様にDFSリンクオブジェクト406は、共有ネットワークリソースを同様に表し得るDFSターゲットノード410へのアクセスを提供することができる。DFSリンクオブジェクト406および408は、名前空間ノード402として表されたドメイン用に定義された名前空間に関係し得る。(示されたように)所与のドメインについて、2つ以上の名前空間もまた定義され得ることを理解されたい。
DFSディレクトリサービスレイアウト400は、例えばディレクトリサービス実装内に定義することができ、ただし、名前空間ノード402および404は、ディレクトリオブジェクトとして表され得る。さらに、DFSリンクオブジェクト406および408は、それぞれのDFSターゲットノード410、412、414および416について記述し、またはそれに対応するメタデータを有する別個のディレクトリオブジェクトとして表すことができる。したがって、ディレクトリサービス機能性は、オブジェクトデータおよびメタデータに関して追加のサービスを提供するために活用することができる。述べられたように、DFSリンクを単一のディレクトリオブジェクトに関連付けることによって、リンクに関してさらなる粒度がもたらされる。例えば、リンク、またはそれに関連するデータが修正されるとき、基になる名前空間に関するオブジェクト(例えば、一般に、名前空間についての他のDFSリンクデータもまた含み得る名前空間ノード402など)ではなく、(例えばDFSリンクオブジェクト406など)単一のオブジェクトだけを、レプリケートされた他のディレクトリデータベースまたはDFSルートノードに対して更新する必要がある。
これは、例えば、更新された所与のリンクに関連するディレクトリオブジェクトが、名前空間内のすべてのリンクに関連するディレクトリオブジェクトより小さいサイズになる可能性が高いので、より効率的であり得る。さらに、ディレクトリデータベースおよび/またはDFSルートターゲット間でデータをレプリケートする場合、効率を高めるために、述べられたように、既存のディレクトリサービス検索/照会能力を使用して修正済みオブジェクトを検索することもできる。例えば、(DFSリンクオブジェクト406など)DFSリンクの特定のディレクトリオブジェクト内の1つまたは複数の値は、更新済みおよび/または削除済みのステータスに関連するデータ/メタデータを有し得る。このために、ディレクトリデータベース、DFSルートターゲット、および/または他のコンポーネントは、修正されたデータを検索し、それに応じてそれ自体のレコードを更新するために、ディレクトリサービス照会機構を使用してディレクトリデータに照会することができる。メタデータのこの効率的な更新によって、データの様々なリソース間のレプリケーションが保証される。述べられたように、各DFSリンクのディレクトリオブジェクトを使用することによって、適合性向上のためにもリンクデータへのスキーマを実施することができる。例えば、DFSリンクオブジェクト406および408の属性のスキーマは、1つまたは複数のディレクトリサービス実装を伴う操作性を促進するために、上述されたようにバージョン情報に関係するエントリを有することができる。さらに、オブジェクトスキーマは、それらが属する常駐の名前空間を識別する属性値、DFSリンクの一意の識別子、1つまたは複数の値が修正されたことの表示、最後の修正時間、照会リンクの数、コメント、プロパティ、DFSリンクの一部であるターゲットまたは共有のリスト、DFSリンクにアクセスするためのリンク経路、セキュリティ情報、短い名前などを有し得る。さらに、DFSリンクオブジェクト406および408は、例えば名前空間アンカー値、リンクが関係する名前空間値(例えば文字列、一意の識別子、ポインタ、オブジェクトクラスおよび/または類似物)、メタデータオブジェクトへのリンク、(ソフトデリートと呼ばれ得る)削除されるオブジェクトへのリンクを含めて属性を有することができ;属性は、スキーマにも対応し得る。これに関して、ディレクトリデータベースおよび/またはDFSルートターゲットは、例えば、どのDFSリンクが非アクティブか決定するために取り込まれた削除済みリンクを有するエントリを求めて照会することができる。
別の例によれば、ターゲットノードは、粒度を増すためにそれ自体がオブジェクトになり得る。したがって、DFSターゲットノード410、412、414および416は、別の抽象化レベルを提供するために個別のディレクトリオブジェクトに関係し得る。したがって、ターゲットに関するデータは、更新、検索などを含めて、上述されたようなディレクトリサービス実装の利点および機能性を得ることができる。
図5を参照すると、ネットワーク環境内でアクセス可能なDFSリンクを定義するための例示的なシステム500が示されている。DFSルートターゲットコンポーネント102および202が、それに通信可能に結合された1つまたは複数のクライアントコンポーネント302によるアクセスのための1つまたは複数のDFSリンクを作成し管理するために提供される。さらに、ドメインコントローラ204および304は、データに一貫性があることを保証するためにそれぞれのDFSルートターゲットコンポーネント102および202のメタデータを格納するためのディレクトリコンポーネント104を含む。さらに、ネットワークリソース306および308は、別個のまたは組み合わされた使用を1つまたは複数のDFSリンクとして表すように示されている。さらに、例えば1つまたは複数のDFSリンクに関して行われた1つまたは複数の推論を評価するために、DFSルートターゲットコンポーネント102および202に使用され得る推論コンポーネント502が提供される。一例では、DFSルートターゲットコンポーネント102および202は、上記に述べられたように、1つまたは複数の共有ネットワークリソースの集合体に関連するDFSリンクを確立することができる。リンクに関連するメタデータは、全体を通してレプリケーションを保証するために、ディレクトリコンポーネント104間で取り込まれ、かつ/または更新され得る。さらに、DFSルートターゲットコンポーネント102および202は、例えば推論コンポーネント502によって行われた推論に少なくとも一部基づいてDFSリンクを定義することができる。
述べられたように、ドメインコントローラ204および304(ならびに/あるいはそのデータベース)のレプリケートされたディレクトリコンポーネント104は、DFSルートターゲットコンポーネント102および202によって定義された1つまたは複数のDFSリンクに関連するデータを格納するために、それぞれのDFSルートターゲットコンポーネント102および202によって活用することができる。一例では、推論コンポーネント502は、1つまたは複数のディレクトリコンポーネント104にメタデータを入力するバージョンを推論することができ;したがって、ディレクトリコンポーネント104、ならびに/あるいはDFSルートターゲットコンポーネント102および/または202がDFSリンク構成ごとのディレクトリオブジェクトをサポートする場合、DFSルートターゲットコンポーネント102および/または202は、それに応じてデータを入力することができる。また、推論コンポーネント502は、コンピュータの数、共有の数、環境変数、システムの使用などを含めてネットワークプロパティに少なくとも一部基づいて、1つまたは複数のディレクトリコンポーネント104、ならびに/あるいはDFSルートターゲットコンポーネント102および/または202の構成を予測することができる。さらに、推論コンポーネント502は、他の関連またはクロスドメインのDFSルートターゲットコンポーネントの前の構成に少なくとも一部基づいて、1つまたは複数のDFSリンクを割り当て、または定義することができる。前の構成はさらに、DFSルートターゲットコンポーネント102および/または202内で実装され、選ばれたサーバ構成に基づいて(例えばネットワーク設定や構成インターフェースによってなど)実施され得る。
推論コンポーネント502は、更新のためにも同様に使用することもできる。例えば、DFSルートターゲットコンポーネント102および/または202が、DFSリンクに関する更新を求めて様々な他のディレクトリコンポーネント104(例えば最も近いものなど)に照会することができるプル構成では、推論コンポーネントは、更新の時間間隔および/またはイベントを決定するために使用され得る。推論された時間間隔は、それだけに限らないが、例えば要求の数(または他の需要ベースのパラメータ)、名前空間内のリンクの数、リンクの位置、および/または含まれたターゲット共有のうちの1つまたは複数、バージョン、名前空間、および/またはリンクに関連する実質上任意の内部または外部の測定データ値、名前空間、および/または個々のコンポーネントを含めて、複数の要因に基づき得る。推論は、例えばディレクトリコンポーネント104間のデータを更新するために使用することもできる。さらに、推論コンポーネント502は、複数の推論に基づいて、本明細書に述べられたように1つまたは複数のDFSリンク(特定のリンク、または特定のプロパティを満たすものなど)を求めて照会するために使用することができる。例えば、DFSリンクは、推論された類似の構成に従って、他のリンクの存在に基づいてディレクトリオブジェクトとして追加され得る。
上述のシステム、アーキテクチャなどは、複数のコンポーネント間の対話に関して述べられている。こうしたシステムおよびコンポーネントは、本明細書で指定されたコンポーネントまたはサブコンポーネント、指定されたコンポーネントまたはサブコンポーネントの一部、ならびに/あるいは追加のコンポーネントを含み得ることを理解されたい。サブコンポーネントは、親コンポーネント内に含まれるのではなく、他のコンポーネントに通信可能に結合されたコンポーネントとして実装することもできる。さらに、1つまたは複数のコンポーネントおよび/またはサブコンポーネントは,集約機能性を提供するために、単一のコンポーネントへと組み合わされてもよい。システム間の通信、コンポーネントおよび/またはサブコンポーネントは、プッシュおよび/またはプルモデルに従って遂行することができる。コンポーネントは、簡潔にするために本明細書では具体的に述べていないが、当業者には知られている1つまたは複数の他のコンポーネントと対話することもできる。
さらに、理解されるように、開示されたシステムおよび方法の様々な部分は、人工知能、機械学習、または知識または規則ベースのコンポーネント、サブコンポーネント、プロセス、手段、方法論、または機構(例えばサポートベクトルマシン、ニューラルネットワーク、エキスパートシステム、ベイズ信頼度ネットワーク、ファジイ論理、データ融合エンジン、分類子...)を含み、またはそれからなり得る。とりわけ、こうしたコンポーネントは、実施される特定の機構またはプロセスを自動化して、例えばコンテキスト情報に基づいてアクションを推論することによってシステムおよび方法の一部の適応性、ならびに効率および知能を高めることができる。限定のためではなく、例を挙げると、こうした機構は、具体化されたビューなどの生成に関して使用することができる。
上記に述べられた例示的なシステムを考慮して、開示された主題に従って実施され得る方法論は、図6〜8のフローチャートに関してよりよく理解されよう。説明を単純にするために方法論が一連のブロックとして示され述べられているが、特許請求された主題は、ブロックの一部が、本明細書に示され述べられたものとは異なる順序で、かつ/または他のブロックと同時に行われ得るので、ブロックの順序によって制限されないことを理解されたい。さらに、示されたすべてのブロックが、以下に述べられた方法論を実施することを求められ得るとは限らない。
図6は、DFSリンクデータをディレクトリオブジェクトのインスタンスとして格納するための方法論600を示している。述べられたように、DFSリンクデータは、DFSリンクのより効率的な更新および照会の提供のため、ディレクトリサービス実装で使用可能な特徴の使用を容易にするために1つまたは複数のディレクトリオブジェクト内に格納され得る。602で、DFSリンクの確立を求める要求が受け取られる。要求は、例えば、1つまたは複数のネットワーク(またはローカル)リソースを単一のDFSリンクとしてまとめた集合体を作成することであり得る。リンクは、一例では、複数のリソースの組合せであるが、要求されたときは単一のリソースとして現れ得る。一例では、DFSリンクによって定義されたリソースが検証され得る。例えば、集約のために要求されるリソースは、ネットワーク上の異種のリソースであってもよく;したがって、ステータス、存在、および/またはリソースの使用可能性が、例えば動作可能なリンクを保証するために検証され得る。
604で、DFSリンクに関連する1つまたは複数のディレクトリオブジェクトが作成され得る。述べられたように、オブジェクトは、DFSリンクに関係することがあり、それに関連する1つまたは複数の属性としてメタデータを備えることができる。メタデータは、検証されたリソースの位置に関係することあり;さらに、認証情報が、検証されたリソースへのアクセスおよび/またはDFSリンクへのアクセスのためにメタデータ内に含まれ得る。さらに、上述された、スキーマ化されたフィールドも含まれ得る。606で、メタデータが、ディレクトリオブジェクトの属性として格納され得る。ディレクトリオブジェクトを使用して、DFSリンクに対応するデータを格納することによって、スキーマは、適切なデータが取り込まれることを保証し、また本明細書に述べられたようなディレクトリサービスの機能性を提供するためにリンク上で実施され得る。
図7は、DFSリンクメタデータ(またはリンク自体)の追加、修正または削除時のディレクトリサービスデータベースおよび/またはDFSルートターゲットの更新を容易にする方法論700を示している。述べられたように、DFSリンクは、例えばリンクを更新する際にディレクトリサービス機能性を活用するために、ディレクトリオブジェクトとして格納され得る。702で、DFSリンクデータまたはメタデータに関連して、更新通知が受け取られ得る。例えば、DFSルートターゲットコンポーネントの要求または類似物などによって情報を更新すると、他のコンポーネントに更新について通知するために更新が送られ得る。更新は、例えば、ディレクトリサービス実装に応じて、更新された情報を備えてもよく、かつ/または例えば更新されたデータを示す表示となり得る。704で、更新されたデータを決定するために、ディレクトリサービスへの照会が開始されてもよく;これは、例えば1つまたは複数のディレクトリデータベースに対して行われ得る。述べられたように、ディレクトリサービス実装の照会機能性を使用して、1つまたは複数のDFSリンクをDFSルートターゲットの1つまたは複数のローカルリンクと比較して、例えばメタデータが変更されたかどうか、リンクが削除されたかどうか、かつ/またはリンクが追加されたかどうか決定することができる。削除されたリンクは、例えば、メタデータ内に示された削除値を有する通常のリンクであり得ることを理解されたい。
706で、更新されたリンクまたはメタデータが、例えばDFSルートターゲットのローカルメモリ内などに格納され得る。DFSリンクは1つまたは複数の個別のディレクトリオブジェクトに関係するので、名前空間内の実質上すべてのリンクに関連するディレクトリオブジェクトではなく、データの更新のためにそのリンクのディレクトリオブジェクトだけにアクセスする必要がある。例えば、リンクが新しいリンクである場合、新しいリンクは、DFSルートターゲット内の新しいオブジェクトとして同様にレプリケートされ得る。これに関して、1つまたは複数のDFSルートターゲットは、ドメインのメンバが最新のDFSリンクへのアクセスを有することを保証するために、所与のドメインについて同期され得る。708で、こうしたアクセスが、最新のリンクまたはメタデータに対して許される。したがって、メタデータは、これに関して、ディレクトリサービスを活用することによって効率的に更新し使用することができる。
図8は、それぞれのリンクに関連する1つまたは複数のディレクトリオブジェクト内に格納された対応するデータを有するDFSリンクへのアクセスを提供するための方法論800を示している。802で、DFSリンクの要求(例えばDFSリンクまたはその一部の使用を求める要求)が受け取られる。DFSリンクは、(例えばローカルで、かつ/またはネットワーク上で)1つまたは複数のリソースに関係することがあり、リソースは、(例えば、マシンまたはリソースの境界が透過的に見え得るように)エンドユーザには単一のソースのように見え得る。804で、メタデータが、要求されたDFSリンクに関連するロードされたディレクトリオブジェクト(例えばDFSルートターゲットのメモリにロードされたオブジェクト)から決定され得る。例えば、データは、リンク(例えば共有リソース)のターゲット位置、認証/認可情報、バージョン管理、名前空間および/または類似物に関係し得る。806で、DFSリンクの関連するリソース位置が、メタデータから抽出される。その共有リソースを得るために、リンクの認証/認可情報も同様に抽出され得ることを理解されたい。808で、リソース位置、またはそれへのリンクが、DFSリンクのリソースにアクセスする際に使用するために返され得る。
本明細書では、用語「コンポーネント」、「システム」などは、コンピュータ関連のエンティティ、ハードウェア、ハードウェアとソフトウェアの組合せ、ソフトウェア、または実行中のソフトウェアを指すものである。例えば、コンポーネントは、それだけに限らないが、プロセッサ上で実行されるプロセス、プロセッサ、オブジェクト、インスタンス、実行可能ファイル、実行スレッド、プログラムおよび/またはコンピュータであり得る。例を挙げると、コンピュータ上で実行されるアプリケーションとコンピュータの両方が、コンポーネントであり得る。1つまたは複数のコンポーネントが、プロセスおよび/または実行スレッド内に常駐してもよく、コンポーネントは、1つのコンピュータ上に集中させ、かつ/または2つ以上のコンピュータ間で分散させてもよい。
単語「例示的な」は本明細書では、例、事例または例証として働くことを指すために使用されている。本明細書で「例示的」として示されたどんな態様または設計も、他の態様または設計よりも好ましいまたは有利であると必ずしも解釈すべきでない。さらに、例は、明瞭にし理解を促すためだけに提供されており、この技術革新またはその関連部分をいかなるやり方によっても制限するものではない。無数の追加または代替例を提示し得たであろうが、簡潔にするために省略されていることを理解されたい。
さらに、技術革新のすべてまたは一部は、開示された技術革新を実施するようにコンピュータを制御するソフトウェア、ファームウェア、ハードウェアまたはその任意の組合せを作成するための標準のプログラミングおよび/またはエンジニアリング技術を使用して、方法、装置または製品として実施され得る。本明細書では、用語「製品」は、任意のコンピュータ読取り可能装置または媒体からアクセス可能なコンピュータプログラムを包含するためのものである。例えば、コンピュータ読取り可能媒体は、それだけに限らないが、磁気記憶装置(例えばハードディスク、フロッピーディスク、磁気ストリップ...)、光ディスク(例えばコンパクトディスク(CD:compact disk)、デジタル多用途ディスク(DVD:digital versatile disk)...)、スマートカード、およびフラッシュメモリ装置(例えばカード、スティック、キードライブ...)を含み得る。さらに、電子メールを送受信し、あるいはインターネットやローカルエリアネットワーク(LAN:local area network)などのネットワークにアクセスする際に使用されるものなど、コンピュータ読取り可能電子データを運ぶために搬送波が使用され得ることを理解されたい。もちろん、特許請求された主題の範囲または精神から逸脱せずに、多くの修正がこの構成に加えられ得ることが当業者には認識されよう。
開示された主題の様々な態様についての文脈を提供するために、図9および図10、ならびに以下の議論は、開示された主題の様々な態様が実施され得る適切な環境についての簡潔な概説を提供するためのものである。この主題について、1つまたは複数のコンピュータ上で実行されるプログラムのコンピュータ実行可能命令の一般的な文脈で上記に述べられているが、この技術革新は、他のプログラムモジュールと組み合わせて実施することもできることが当業者には認識されよう。一般に、プログラムモジュールは、特定のタスクを実施し、かつ/または特定の抽象データ型を実装するルーチン、プログラム、コンポーネント、データ構造体などを含む。さらに、これらのシステム/方法は、単一のプロセッサ、マルチプロセッサまたはマルチコアプロセッサコンピュータシステム、ミニコンピューティング装置、メインフレームコンピュータ、ならびにパーソナルコンピュータ、手持ち式コンピューティング装置(例えば携帯情報端末(PDA:personal digital assistant)、電話、時計...)、マイクロプロセッサベースまたはプログラマブル家電または工業電子機器などを含めて、他のコンピュータシステム構成で実施され得ることが当業者には理解されよう。示された諸態様は、通信ネットワークを介してリンクされるリモート処理装置によってタスクが実施される分散コンピューティング環境でも実行され得る。しかし、特許請求された主題のすべてではないにしても一部は、スタンドアロンコンピュータ上で実施され得る。分散コンピューティング環境では、プログラムモジュールは、ローカルとリモートの両方のメモリ記憶装置に置かれ得る。
図9を参照すると、本明細書に開示された様々な態様を実施するための例示的な環境900が、コンピュータ912(例えばデスクトップ、ラップトップ、サーバ、手持ち式、プログラマブル家電または工業電子機器...)を含んでいる。コンピュータ912は、処理装置914と、システムメモリ916と、システムバス918とを含む。システムバス918は、それだけに限らないが、システムメモリ916を含めて、システムコンポーネントを処理装置914に結合する。処理装置914は、様々な使用可能なマイクロプロセッサのいずれかであり得る。デュアルマイクロプロセッサ、マルチコアおよび他のマルチプロセッサアーキテクチャが、処理装置914として使用され得ることを理解されたい。
システムメモリ916は、揮発性および不揮発性メモリを含む。起動時などにコンピュータ912内の要素間で情報を転送する基本ルーチンを含む基本入出力システム(BIOS:basic input/output system)は、不揮発性メモリに格納される。限定するためではなく、例を挙げると、不揮発性メモリは、読取り専用メモリ(ROM:read only memory)を含み得る。揮発性メモリは、処理を円滑に進めるための外部キャッシュメモリとして働くことができるランダムアクセスメモリ(RAM:random access memory)を含む。
コンピュータ912は、取外し可能/取外し不可能、揮発性/不揮発性のコンピュータ記憶装置媒体をも含む。図9は、例えば大容量記憶装置924を示している。大容量記憶装置924は、それだけに限らないが、磁気または光ディスクドライブ、フロッピーディスクドライブ、フラッシュメモリまたはメモリスティックのような装置を含む。さらに、大容量記憶装置924は、記憶媒体を他の記憶媒体とは別々に含むことも、それと組み合わせて含むこともある。
図9は、ユーザおよび/または他のコンピュータと、適切な動作環境900に示された基本のコンピュータリソースとの間の仲介として働くソフトウェアアプリケーション928を示している。こうしたソフトウェアアプリケーション928は、システムソフトウェアおよびアプリケーションソフトウェアのうちの1つまたは両方を含む。システムソフトウェアはオペレーティングシステムを含むことができ、このオペレーティングシステムは、コンピュータシステム912のリソースを制御し割り当てる働きをする大容量記憶924内に格納され得る。アプリケーションソフトウェアは、システムメモリ916および大容量記憶装置924のいずれかまたは両方に格納されたプログラムモジュールおよびデータを介して、システムソフトウェアによるリソースの管理を活用する。
コンピュータ912は、バス918に通信可能に結合されて、コンピュータ912との対話を円滑に進める1つまたは複数のインターフェースコンポーネント926をも含む。例を挙げると、インターフェースコンポーネント926は、ポート(例えばシリアル、パラレル、PCMCIA、USB、FireWire...)またはインターフェースカード(例えば音声、ビデオ、ネットワーク...)または類似物であり得る。インターフェースコンポーネント926は、入力を受け取り、(有線または無線で)出力を提供することができる。例えば、入力は、それだけに限らないが、ポインティング装置、例えばマウス、トラックボール、スタイラス、タッチパッド、キーボード、マイクロホン、ジョイスティック、ゲームパッド、衛星放送アンテナ、スキャナ、カメラ、他のコンピュータおよび類似物を含めて、装置から受け取ることができる。出力は、インターフェースコンポーネント926を介してコンピュータ912から出力装置に供給することもできる。出力装置は、特に挙げると、ディスプレイ(例えばCRT、LCD、プラズマ...)、スピーカ、プリンタおよび他のコンピュータを含み得る。
一例によれば、処理装置914は、1つまたは複数のDFSリンクをディレクトリオブジェクトとして格納するための命令を備え、または受け取ることができ、ただし、大容量記憶924は、例えばディレクトリサービス実装のためのディレクトリオブジェクトを格納することができる。システムメモリ916は、さらにまたは別法としてこうした命令を収容することができ、処理装置914は、命令を処理するために使用され得ることを理解されたい。処理装置914は、これに関して、DFSリンクの要求を受け取り、要求されたデータを返すために、例えばDFSルートターゲットのディレクトリオブジェクトにアクセスすることもできる。さらに、システムメモリ916は、例えば1つまたは複数の追加の動作環境とのレプリケーションを保証するためにディレクトリオブジェクトの更新を実施するための命令を保持することができ、かつ/または処理装置914は、それを備えることができる。
図10は、この技術革新が対話し得るコンピューティング環境例1000の概略ブロック図である。システム1000は、1つまたは複数のクライアント1010を含む。クライアント1010は、ハードウェアおよび/またはソフトウェア(例えばスレッド、プロセス、コンピューティング装置)であり得る。システム1000は、1つまたは複数のサーバ1030をも含む。したがって、システム1000は、数あるモデルの中で特に挙げると、2層クライアントサーバモデル、または多層モデル(例えばクライアント、中層サーバ、データサーバ)に対応し得る。サーバ1030は、ハードウェアおよび/またはソフトウェア(例えばスレッド、プロセス、コンピューティング装置)とすることもできる。サーバ1030は、例えば、この技術革新の態様を使用することによって変換を実施するスレッドを収容することができる。クライアント1010とサーバ1030の間の可能な1つの通信は、2つ以上のコンピュータプロセス間で送信されるデータパケットの形であり得る。
システム1000は、クライアント1010とサーバ1030の間の通信を円滑に進めるために使用され得る通信フレームワーク1050を含む。ここで、上述されたように、クライアント1010は、プログラムアプリケーションコンポーネントに対応し、サーバ1030は、インターフェース、および任意選択でストレージシステムの機能性を提供することができる。クライアント1010は、クライアント1010にローカルな情報を格納するために使用され得る1つまたは複数のクライアントデータストア1060に動作可能に接続される。同様に、サーバ1030は、サーバ1030にローカルな情報を格納するために使用され得る1つまたは複数のサーバデータストア1040に動作可能に接続される。
例を挙げると、1つまたは複数のクライアント1010は、(例えばサーバデータストア1040に格納された関連するデータを有し得る)1つまたは複数のDFSリンクへのアクセス、またはその修正を望むことがある。クライアント1010は、例えば、DFSリンクの更新を求める要求を通信フレームワーク1050に送信することができ、サーバ1030は、リンクデータを更新し、サーバデータストア1040に格納することができる。さらに、サーバ1030は、全体を通して有効なレプリケーションを保証するために、通信フレームワーク1050を介して新しいデータで1つまたは複数の他のクライアント1010またはサーバ1030を更新することができる。続いて、更新されたデータは、例えば1つまたは複数のサーバ1030にアクセスを要求することによって、1つまたは複数の追加のクライアント1010に使用可能になり得る。
上記で述べられた内容は、特許請求された主題の態様の例を含む。もちろん、特許請求された主題について述べるためにコンポーネントまたは方法論の考えられるあらゆる組合せについて述べることは不可能であるが、開示された主題の多くのさらなる組合せおよび置換が可能であることが当業者には認識されよう。したがって、開示された主題は、添付の特許請求の範囲の精神および範囲内に含まれるこうしたすべての変更形態、修正形態および変形形態を包含するものである。さらに、用語「含む(includes、has、having)」またはその形の変形形態が、発明を実施するための形態または特許請求の範囲において使用される限りでは、こうした用語は、用語「備える(comprising)」が請求項において移行語として使用されるときに「備える」が解釈されるのと同様に包含的なものである。

Claims (18)

  1. ディレクトリサービスを使用して分散ファイルシステム(DFS)内のリソースへアクセスするための情報の効率的な維持・管理を提供するためのシステムであって、
    1又は複数のネットワーク上のリソースの所在を示す少なくとも1つのDFSリンクを有する少なくとも1つのDFS名前空間をホストするDFSルートターゲットコンポーネントであって、
    1又は複数のクライアントに、前記1又は複数のクライアントが前記リソースへアクセスするための情報を提供し、
    前記情報は、前記DFS名前空間内の前記DFSリンクに対する少なくとも1つの個別のディレクトリオブジェクトを含み、
    前記ディレクトリオブジェクトは、前記DFSリンクに適切にアクセスするために使用されるメタデータであって、各DFSリンクにアクセスするための認証情報と、更新されたDFSリンクのバージョン情報を含むメタデータを複数の属性として格納し、
    前記メタデータをローカルに格納する
    DFSルートターゲットコンポーネントと、
    前記DFSルートターゲットコンポーネントにディレクトリサービスを提供するディレクトリサービスコンポーネントであって、
    前記名前空間全体の属性情報を有し、
    前記DFSルートターゲットコンポーネントへ提供するためのディレクトリオブジェクトを作成し、
    ディレクトリコンポーネントと
    を具えたことを特徴とするシステム。
  2. 前記ディレクトリコンポーネントは、前記ディレクトリオブジェクトをLDAPオブジェクトとして作成し、前記メタデータを前記LDAPオブジェクトの属性として格納するためにライトウェイトディレクトリアクセスプロトコル(LDAP)実装を使用すること
    を特徴とする請求項1記載のシステム。
  3. 前記ディレクトリコンポーネントは、前記DFSルートターゲットコンポーネントから、更新されたDFS情報を受け取ることを特徴とする請求項1記載のシステム。
  4. 前記ディレクトリコンポーネントは、1つまたは複数の異種のDFSルートターゲットコンポーネントに前記更新について通知することを特徴とする請求項3記載のシステム。
  5. 前記DFSルートターゲットコンポーネントは、所与の操作に有用なディレクトリオブジェクトを取り出すために前記ディレクトリコンポーネントに照会することを特徴とする請求項1記載のシステム。
  6. 前記操作は、前記ディレクトリオブジェクトへの更新の発生についての通知を異種のDFSルートターゲットコンポーネントから受け取ると開始される更新であることを特徴とする請求項5記載のシステム。
  7. 前記DFSルートターゲットコンポーネントは、前記ディレクトリオブジェクトのローカルコピーを前記更新で更新することを特徴とする請求項6記載のシステム。
  8. 前記少なくとも1つのDFSリンクにアクセスするために使用される前記メタデータは、前記ディレクトリオブジェクトのスキーマに適合することを特徴とする請求項1記載のシステム。
  9. ディレクトリサービスを使用して、分散ファイルシステム(DFS)内のリソースへアクセスするための情報の効率的な維持・管理をするための方法であって、
    ディレクトリコンポーネントが、DFSルートターゲットコンポーネントから、DFS名前空間内のDFSリンクにアクセスするためのメタデータであって、各DFSリンクにアクセスするための認証情報と、更新されたDFSリンクのバージョン情報を含むメタデータを受け取るステップと、
    ディレクトリコンポーネントが、前記受信したメタデータを前記DFSリンクに対応する1つまたは複数の個別のディレクトリオブジェクトの属性として格納するステップであって、前記ディレクトリオブジェクトは、単一のDFS名前空間内の各々のDFSリンクを表すディレクトリオブジェクトの一部であり、1又は複数のクライアントが前記リソースへアクセスするために使用する情報に含まれる、ステップと
    を具えたことを特徴とする方法。
  10. 前記ディレクトリオブジェクトの属性として格納された前記メタデータは、前記DFSリンクの一部である1つまたは複数のネットワークリソースに関するデータを具えたことを特徴とする請求項9記載の方法。
  11. 前記ディレクトリオブジェクトは、そのリレーショナルデータベース照会を可能にするためにリレーショナルデータベースのリレーショナルオブジェクトとして実装されることを特徴とする請求項10記載の方法。
  12. 前記ディレクトリオブジェクト内の前記DFSリンクにアクセスするために使用される前記メタデータを更新し、前記更新についての通知を提供するステップをさらに具えたことを特徴とする請求項9記載の方法。
  13. 1つまたは複数のディレクトリオブジェクトに関連する更新通知を受け取り、前記更新されたメタデータを決定するためにディレクトリコンポーネントに照会するステップをさらに具えたことを特徴とする請求項9記載の方法。
  14. 前記更新は、前記DFSリンクのうちの1つまたは複数の削除であり、前記削除は、前記対応するディレクトリオブジェクトの属性として示されることを特徴とする請求項13記載の方法。
  15. 前記ディレクトリオブジェクトのレプリケーションを提供するために、前記決定された、更新されたメタデータに少なくとも一部分基づいて前記ディレクトリオブジェクトの前記属性を更新するステップをさらに具えたことを特徴とする請求項13記載の方法。
  16. 前記ディレクトリオブジェクトのメタデータへ前記DFSリンクにアクセスするために使用される前記メタデータをスキーマ化するステップをさらに具えたことを特徴とする請求項9記載の方法。
  17. 分散ファイルシステム(DFS)内のリソースへアクセスするための情報の効率的な維持・管理を提供するためにディレクトリサービス実装を使用するためのシステムであって、
    1つまたは複数のネットワーク上のリソースの所在を示す少なくとも1つのDFSリンクを備える少なくとも1つのDFS名前空間をホストする手段であって、
    1又は複数のクライアントに、前記1又は複数のクライアントが前記リソースへアクセスするための情報を提供し、
    前記情報は、前記DFS名前空間内の前記DFSリンクに対する少なくとも1つの個別のディレクトリオブジェクトを含み、
    前記ディレクトリオブジェクトは、前記DFSリンクに適切にアクセスするために使用される1つ又は複数のメタデータであって、各DFSリンクにアクセスするための認証情報と、更新されたDFSリンクのバージョン情報を含むメタデータを複数の属性として格納し、
    前記メタデータをローカルに格納する
    手段と、
    前記1つまたは複数メタデータを前記DFS名前空間をホストする手段に渡すために1つまたは複数の個別のディレクトリオブジェクトを作成する手段であって、
    前記名前空間全体の属性情報を有し、
    前記受信したメタデータを前記DFSリンクに対応する1つまたは複数の個別のディレクトリオブジェクトの属性として格納してディレクトリオブジェクトを作成し、
    前記ディレクトリオブジェクトは、単一のDFS名前空間内の各々のDFSリンクを表すディレクトリオブジェクトの一部であり、1又は複数のクライアントが前記リソースへアクセスするために使用する情報に含まれ、
    前記ディレクトリオブジェクトは前記名前空間に対して複数存在する
    手段を含むことを特徴とするシステム。
  18. 前記DFS名前空間に対応する前記個別のディレクトリオブジェクト内の前記メタデータを更新するための手段をさらに具え、
    前記DFS名前空間の残りの複数のディレクトリオブジェクトは、前記更新による影響を受けないことを特徴とする請求項17記載のシステム。
JP2010514952A 2007-06-29 2008-06-12 分散ファイルシステムのための効率的な更新 Active JP5456670B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US94699407P 2007-06-29 2007-06-29
US60/946,994 2007-06-29
US12/013,284 2008-01-11
US12/013,284 US8452821B2 (en) 2007-06-29 2008-01-11 Efficient updates for distributed file systems
PCT/US2008/066740 WO2009005994A1 (en) 2007-06-29 2008-06-12 Efficient updates for distributed file systems

Publications (2)

Publication Number Publication Date
JP2010532526A JP2010532526A (ja) 2010-10-07
JP5456670B2 true JP5456670B2 (ja) 2014-04-02

Family

ID=40161909

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010514952A Active JP5456670B2 (ja) 2007-06-29 2008-06-12 分散ファイルシステムのための効率的な更新

Country Status (6)

Country Link
US (1) US8452821B2 (ja)
EP (1) EP2176783B1 (ja)
JP (1) JP5456670B2 (ja)
CN (1) CN101689182B (ja)
BR (1) BRPI0812125B1 (ja)
WO (1) WO2009005994A1 (ja)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9116929B2 (en) * 2003-12-08 2015-08-25 Teradata Us, Inc. Workload priority influenced data temperature
WO2011033565A1 (ja) * 2009-09-17 2011-03-24 株式会社 東芝 メタデータ収集装置
US8793645B2 (en) 2010-04-02 2014-07-29 Microsoft Corporation Replacement of data element in a graph
US8880586B2 (en) * 2010-04-08 2014-11-04 Microsoft Corporation Metadata subscription registry
US10423577B2 (en) * 2010-06-29 2019-09-24 International Business Machines Corporation Collections for storage artifacts of a tree structured repository established via artifact metadata
JP5539126B2 (ja) * 2010-09-09 2014-07-02 キヤノン株式会社 データ処理装置、制御方法、及びプログラム
US9430291B2 (en) 2010-12-30 2016-08-30 International Business Machines Corporation Distributed topology enabler for identity manager
CN102075584B (zh) * 2011-01-30 2014-08-06 中国科学院计算技术研究所 一种分布式文件系统及其访问方法
US8930646B2 (en) * 2011-03-02 2015-01-06 International Business Machines Corporation Characterization and optimization of tracks on disks
US9619539B2 (en) 2012-09-28 2017-04-11 Vmware, Inc. Automated document replication in a distributed computing system
US9171042B1 (en) 2013-02-25 2015-10-27 Emc Corporation Parallel processing database tree structure
US9984083B1 (en) 2013-02-25 2018-05-29 EMC IP Holding Company LLC Pluggable storage system for parallel query engines across non-native file systems
CN104077315B (zh) * 2013-03-29 2017-08-11 国家计算机网络与信息安全管理中心 分布式文件系统数据导入方法及装置
JP6037469B2 (ja) 2014-11-19 2016-12-07 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 情報管理システム、情報管理方法およびプログラム
US10887429B1 (en) * 2015-06-30 2021-01-05 EMC IP Holding Company LLC Processing multi-protocol redirection links
US9747291B1 (en) * 2015-12-29 2017-08-29 EMC IP Holding Company LLC Non-disruptive upgrade configuration translator
US10162834B2 (en) * 2016-01-29 2018-12-25 Vmware, Inc. Fine-grained metadata management in a distributed file system
US10579587B2 (en) 2017-01-03 2020-03-03 International Business Machines Corporation Space management for a hierarchical set of file systems
US10592479B2 (en) 2017-01-03 2020-03-17 International Business Machines Corporation Space management for a hierarchical set of file systems
US10585860B2 (en) 2017-01-03 2020-03-10 International Business Machines Corporation Global namespace for a hierarchical set of file systems
US10649955B2 (en) 2017-01-03 2020-05-12 International Business Machines Corporation Providing unique inodes across multiple file system namespaces
US10657102B2 (en) 2017-01-03 2020-05-19 International Business Machines Corporation Storage space management in union mounted file systems
US10579598B2 (en) 2017-01-03 2020-03-03 International Business Machines Corporation Global namespace for a hierarchical set of file systems
US10642796B2 (en) * 2017-07-18 2020-05-05 International Business Machines Corporation File metadata verification in a distributed file system
CN112073521B (zh) * 2020-09-10 2022-09-02 成都中科大旗软件股份有限公司 一种分散数据的共享调度方法及系统
JP2022182577A (ja) 2021-05-28 2022-12-08 株式会社日立製作所 ストレージリストアシステム、ストレージリストア方法、及びストレージリストアプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3213766B2 (ja) 1992-03-16 2001-10-02 株式会社日立製作所 レプリケートファイル更新システム
US5701462A (en) 1993-12-29 1997-12-23 Microsoft Corporation Distributed file system providing a unified name space with efficient name resolution
US5617568A (en) 1994-12-14 1997-04-01 International Business Machines Corporation System and method for supporting file attributes on a distributed file system without native support therefor
US6209036B1 (en) 1997-06-06 2001-03-27 International Business Machines Corporation Management of and access to information and other material via the world wide web in an LDAP environment
US6212640B1 (en) * 1999-03-25 2001-04-03 Sun Microsystems, Inc. Resources sharing on the internet via the HTTP
US7165096B2 (en) 2000-12-22 2007-01-16 Data Plow, Inc. Storage area network file system
US7054927B2 (en) 2001-01-29 2006-05-30 Adaptec, Inc. File system metadata describing server directory information
US6625604B2 (en) 2001-03-09 2003-09-23 Hewlett-Packard Development Company, L.P. Namespace service in a distributed file system using a database management system
US6925515B2 (en) 2001-05-07 2005-08-02 International Business Machines Corporation Producer/consumer locking system for efficient replication of file data
US7240114B2 (en) 2001-09-25 2007-07-03 Hewlett-Packard Development Company, L.P. Namespace management in a distributed file system
US7043485B2 (en) 2002-03-19 2006-05-09 Network Appliance, Inc. System and method for storage of snapshot metadata in a remote file
US8041735B1 (en) 2002-11-01 2011-10-18 Bluearc Uk Limited Distributed file system and method
JP4237515B2 (ja) 2003-02-07 2009-03-11 株式会社日立グローバルストレージテクノロジーズ ネットワークストレージ仮想化方法およびネットワークストレージシステム
US7567974B2 (en) * 2004-09-09 2009-07-28 Microsoft Corporation Method, system, and apparatus for configuring a data protection system
US7769709B2 (en) 2004-09-09 2010-08-03 Microsoft Corporation Method, system, and apparatus for creating an archive routine for protecting data in a data protection system
US7584220B2 (en) 2004-10-01 2009-09-01 Microsoft Corporation System and method for determining target failback and target priority for a distributed file system
US7571168B2 (en) 2005-07-25 2009-08-04 Parascale, Inc. Asynchronous file replication and migration in a storage network
US7499905B2 (en) 2005-10-17 2009-03-03 Cisco Technology, Inc. Method and apparatus for accessing information based on distributed file system (DFS) paths

Also Published As

Publication number Publication date
BRPI0812125B1 (pt) 2019-04-09
US8452821B2 (en) 2013-05-28
EP2176783A4 (en) 2014-01-15
US20090006468A1 (en) 2009-01-01
CN101689182A (zh) 2010-03-31
JP2010532526A (ja) 2010-10-07
EP2176783A1 (en) 2010-04-21
EP2176783B1 (en) 2019-07-24
CN101689182B (zh) 2013-06-19
BRPI0812125A2 (pt) 2014-11-18
WO2009005994A1 (en) 2009-01-08

Similar Documents

Publication Publication Date Title
JP5456670B2 (ja) 分散ファイルシステムのための効率的な更新
JP6962971B2 (ja) データ記憶サービスを実装するシステム及び方法
JP7050931B2 (ja) クライアント同期更新の効率的な管理
US8285925B1 (en) Management of object mapping information corresponding to a distributed storage system
EP2098962B1 (en) Synchronization server process
JP2020091902A (ja) 分散型データストアのバージョン化された階層型データ構造
US10931748B2 (en) Optimistic concurrency utilizing distributed constraint enforcement
US20150229715A1 (en) Cluster management
US20170078383A1 (en) Hosted file sync with stateless sync nodes
US10747739B1 (en) Implicit checkpoint for generating a secondary index of a table
JP2008102795A (ja) ファイル管理装置、システム及びプログラム
US8621182B1 (en) Management of object mapping information corresponding to a distributed storage system
US8316213B1 (en) Management of object mapping information corresponding to a distributed storage system
US8521771B1 (en) Management of class-associated object mapping information corresponding to a distributed storage system
CN115794164A (zh) 一种云数据库升级方法、装置、设备及存储介质
Whited et al. Entity Versioning
Ucan Data storage, transfers and communication in personal clouds
Baron Grid caching: specification and implementation of collaborative cache services for grid computing

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110316

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121116

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130218

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130225

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130318

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130712

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130719

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130813

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131112

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: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140108

R150 Certificate of patent or registration of utility model

Ref document number: 5456670

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250