JP2006338357A - データ管理システム及びデータサーバ及びデータ管理方法 - Google Patents

データ管理システム及びデータサーバ及びデータ管理方法 Download PDF

Info

Publication number
JP2006338357A
JP2006338357A JP2005162642A JP2005162642A JP2006338357A JP 2006338357 A JP2006338357 A JP 2006338357A JP 2005162642 A JP2005162642 A JP 2005162642A JP 2005162642 A JP2005162642 A JP 2005162642A JP 2006338357 A JP2006338357 A JP 2006338357A
Authority
JP
Japan
Prior art keywords
data
server
identification information
request
data server
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
JP2005162642A
Other languages
English (en)
Other versions
JP4729987B2 (ja
Inventor
Kengo Osawa
賢悟 大澤
Satoshi Sunada
智 砂田
Sunao Hashimoto
直 橋元
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co Ltd
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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP2005162642A priority Critical patent/JP4729987B2/ja
Priority to US11/256,008 priority patent/US20060277196A1/en
Priority to CNB2005101289927A priority patent/CN100422994C/zh
Publication of JP2006338357A publication Critical patent/JP2006338357A/ja
Application granted granted Critical
Publication of JP4729987B2 publication Critical patent/JP4729987B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • G06F16/9566URL specific, e.g. using aliases, detecting broken or misspelled links

Landscapes

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

Abstract

【課題】サーバ間でデータが移動した場合でも、そのデータを見つけ出せるようにする。【解決手段】データ管理部12に登録されるデータは、データサーバ10内で一意なローカル識別情報とグローバルに一意なグローバル識別情報を有する。ローカル識別情報とグローバル識別情報との対応関係はID変換部13で管理される。データサーバ10は、クライアントから受け取ったデータ要求の要求対象データをデータ管理部12から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、他のデータサーバ10に対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより、要求対象データを持つデータサーバ10を探索する。ここでデータ要求が要求対象データをローカル識別情報により指定している場合は、ID変換部13からその要求対象データのグローバル識別情報を求めることで、前記データ問合せを生成する。
【選択図】図1

Description

本発明は、ユーザが要求したデータの所在場所(ロケーション)を解決するための技術に関する。
この分野の従来技術として、特許文献1に示される技術がある。この技術では、データ管理システムが、各ファイルに対してハンドルと呼ぶ一意な識別子を付与して管理している。そして、そのファイルのURLとして、従来一般的なファイルの所在場所(所在サーバとそのサーバ内でのファイルのパス名の組合せ)を示したURLではなく、当該システムのサーバ名とファイルのハンドルとを指定した仮想URLをユーザに提供する。ユーザがその仮想URLを用いて当該システムにアクセスすると、システムはそのハンドルからファイルの所在場所を特定し、ユーザに提供する。このような仕組みにより、ファイルがデータ管理システム上のどの場所(ディレクトリ)に移動しても、ユーザからの要求に応じてそのファイルを見つけることができる。
また、同様の従来技術として、特許文献2に示されるものがある。特許文献2のサーバは、管理する各コンテンツに識別子を付与し、ユーザから検索要求があった場合、その要求に合致するコンテンツの識別子を含んだ仮想URLをユーザに提供する。このサーバは、仮想URLを用いてユーザからアクセスがあると、その仮想URLに含まれる識別子を蓄積システムに渡し、蓄積システムはその識別子に対応するコンテンツをキャッシュメモリにコピーし、キャッシュメモリ上のコンテンツのコピーのアドレスをサーバに返す。これにより、サーバはそのキャッシュメモリ上のコンテンツをユーザに提供することができる。
また、非特許文献1には、マサチューセッツ工科大学(MIT)が開発したオープンソースソフトウェアのデータ管理システム「Dspace」が照会されている。Dspaceでは、中央にハンドルサーバを用意し、そのハンドルサーバでデータのハンドル(識別子)と、各データを管理しているサーバの情報とを管理する。各Dspaceプラットフォームは、ユーザより提示されたハンドルをハンドルサーバに問い合わせることで、そのハンドルに対応する実際のデータを管理しているサーバを解決する。
特開平11−3265号公報 特開平2000−207421号公報 ロバート・タンズリー(Robert Tansley)他4名,"DSpace System Documentation"、[online]、Documentation Version: 1.1-2, 2003年6月3日、[平成17年(2005年)3月9日検索]、インターネット<URL: http://libraries.mit.edu/dspace-mit/technology/system-docs/index.html> 、特にその項目Functional Overview - Handles <URL: http://libraries.mit.edu/dspace-mit/technology/system-docs/functional.html#handles>
特許文献1及び2の技術は、1つのデータ管理システム内で管理されているファイル・コンテンツの所在場所解決に限定されており、例えばファイル・コンテンツの所在場所がネットワーク上の複数のデータ管理システムの中で移動してしまうようなケースには対応できない。
非特許文献1の技術はこのようなケースに対応できるものであるが、中央管理サーバに完全に依存しているため、中央管理サーバに登録されていないサーバ上のデータは解決できない、中央管理サーバが停止した場合は全くデータの所在を解決できない、といった集中管理であるが故の問題が発生する。
本発明は、データが他のサーバに移動しても移動前に発行されたURL等のデータの所在情報からそのデータの所在を解決することを、非特許文献1のような中央管理サーバを用いずに実現する。
本発明は、ネットワークを介して接続された他のデータサーバと連携してデータ管理システムを構成するデータサーバとして、コンピュータシステムを動作させるためのプログラムであって、該コンピュータシステムを、登録されるデータを記憶するデータ管理部であって、登録されるデータに対し当該データサーバ内で一意なローカル識別情報を付与するとともに、そのデータに対しグローバルに一意なグローバル識別情報が付与されていない場合はグローバル識別情報を付与するデータ管理部、データに付与されたローカル識別情報とグローバル識別情報との対応関係を記憶する対応関係記憶部、クライアントから受け取ったデータ要求の要求対象データをデータ管理部から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、データ管理システムを構成する他のデータサーバに対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより、前記要求対象データを持つデータサーバを探索する要求処理部であって、前記データ要求が要求対象データをローカル識別情報により指定している場合は、前記対応関係記憶部からその要求対象データのグローバル識別情報を求めて前記データ問合せを生成する要求処理部、他のデータサーバからデータ問合せを受けた場合、該データ問合せに含まれるグローバル識別情報に対応するデータを前記データ管理部から検索し、その検索の結果に応じた応答を前記他のデータサーバに送る応答部、として機能させるためのプログラム、を提供する。
本発明によれば、各データサーバが他のデータサーバを検出し、グローバルに一意なグローバル識別情報を用いた問合せにより、要求対象データを持つデータサーバを探索するので、非特許文献1の中央管理サーバのような集中管理をしなくても、データの所在を解決できる。また、本発明によれば、クライアントが要求対象データをローカル識別情報で指定した場合でも、その要求対象データのグローバル識別情報を対応関係記憶部から求めることで、他のデータサーバへの問合せが可能となる。
以下、図面を参照して、本発明を実施するための最良の形態(以下「実施形態」と呼ぶ)について説明する。
図1は、本発明に係るデータ管理システムの概略構成を示す図である。図1に示すように、本システムは、LAN(ローカル・エリア・ネットワーク)やインターネットなどのネットワーク20に接続された複数のデータサーバ10−1,10−2,...(以下では、区別の必要のない場合は「データサーバ10」と総称する。データサーバ10内のモジュールについても同様)から構成される。本システムは、ネットワーク20上のクライアント30(例えばパーソナルコンピュータ)からのデータ要求に応じ、要求対象のデータを提供する。
図2は、本発明に係るデータ管理システムを構成するデータサーバ10の概略構成を示す図である。データサーバ10は、データ管理部12、ID変換部13,検出部14及び問合せ部16を備えている。データ管理部12には、ユーザが操作するクライアント30に提供することができる1以上のデータ(言い換えれば、オブジェクト)が登録される。ここでデータ管理部12に登録される各データには、グローバルに一意なグローバルID(識別情報)と、当該データサーバ10内で一意なローカルIDとが付与されている。
グローバルIDとしては、例えばUUID(Universally Unique IDentifier)又はGUID(Globally Unique IDentifier)と呼ばれる128ビットの識別情報を用いることができる。ちなみに、UUIDは、グローバルな一意性を保証するために、そのUUIDを作成した時刻や作成に使用したマシンに装着されたネットワークカードのMAC(Media Access Control)アドレス等を含んでいる。URL(Uniform Resource Locator)は、データを有するデータサーバ10のホスト名とそのサーバ10において当該データが実際に記憶されている場所を示すパス名とによって当該データを一意に指すのに対し、本実施形態のグローバルIDは、そのようなデータの所在場所の情報とは独立した識別情報である。
一方、ローカルIDは、データ管理部12に記憶されたデータの中で一意であればよい。したがって、ローカルIDは、グローバルIDに比べてデータ量(桁数)が小さくて済む。本実施形態では、一例として、データ(オブジェクト)の種類と通し番号との組合せからなるローカルIDを用いる。データの種類は、例えば、文書(Document)やフォルダ(Folder)又はディレクトリ等といった種別である。通し番号は、例えば、データ管理部12に登録された順番でよい。この順番は、データの種類ごとのものでよい。例えば、10番目に登録された文書のローカルIDは「Document-10」となる。データの種類と通し番号の組合せのローカルIDは、データ管理部12が自動生成できるとともに、ユーザにとっても比較的覚えやすく入力も容易である。
図3にデータ管理部12が管理する各データの管理情報のデータ構造を示す。この図に示すように、データ管理部12は、登録された各データにつき、そのデータのデータID102と、データサーバ10内でそのデータを指し示すリンク情報(例えばそのデータのパス名)104とを対応づけて管理している。ここで、データID102は、ローカルIDでもグローバルIDでもよいが、データ検索の効率からすれば、桁数が小さいローカルIDを用いることが好ましい。
ID変換部13は、グローバルIDとローカルIDとの間のID変換を行う。この変換のため、ID変換部13は、同じデータに対して付与されたグローバルIDとローカルIDとの対応関係を示す対応表を有している。図4に対応表のデータ内容の一例を示す。例えば、ID変換部13は、ローカルIDが与えられた場合、この対応表からそれに対応するグローバルIDを求める。なお、ID変換部13は、必ずしもローカルIDとグローバルIDの間の双方向の変換ができる必要はないが、ローカルIDからグローバルIDへの変換機能は必要である。これは、ユーザからローカルIDで指定されたデータを他のデータサーバに問い合わせるためである(詳細は後述)。データ管理部12がグローバルIDでデータを管理している場合はこれで足りる。逆に、データ管理部12がローカルIDでデータを管理している場合において、ユーザからグローバルIDを用いたデータ要求を受け付ける場合には、逆方向の変換機能も必要となる。
図5に示すように、データサーバ10は、データをデータ管理部12に新たに登録する場合、まずそのデータに対してローカルIDを付与する(S10)。そして、そのデータにグローバルIDが付属しているかどうかを調べ(S12)、付属していれば、そのグローバルIDとステップS10で付与したローカルIDとの対応関係をID変換部13の対応表に登録する(S16)。データにグローバルIDが付属していなければ、データサーバ10は、そのデータにグローバルIDを付与し(S14)、これとステップS10で付与したローカルIDとをID変換部13に登録する(S16)。
なお、ID変換部13の対応表に登録した情報は、データ管理部12に登録されていたデータが削除されても、また他のデータサーバに移動しても、削除はしない。これは、ユーザからのデータへのアクセスを容易にするためである。なお、データ管理部12に登録されていたデータが削除された場合に、その旨を例えば対応表の当該データのローカル又はグローバルIDに対応づけて記録するようにすることも好適である。
検出部14は、ネットワーク20上に存在する他のデータサーバ10を検出する手段である。
問合せ部16は、クライアント30から要求されたデータを有しているか否かを、他のデータサーバ10に対して問い合わせる手段である。また問合せ部16は、他のデータサーバ10の問合せ部16からの問合せに対して回答する機能も備える。
本実施形態では、ユーザの操作するクライアント30は、データ管理システムに対してデータを要求する場合、図6a又は図6bに示すような仮想URL110のを用いて要求を行う。図6aの例は、当該データを管理するデータサーバ10のホスト名112(IPアドレスでも良い)と、そのデータのグローバルID114aとを含む仮想URL110である。グローバルIDは桁数が非常に多くなるため、図6aではその一部を省略して示した。この仮想URLは、「xxx.fx.co.jp」という名前のデータサーバが管理している「12345......67890」というグローバルIDをもつデータを指している。なお、図6aの仮想URLのうちホスト名112とグローバルID114aに挟まれた「get」は、データサーバ10が提供するメソッドの名前である。データサーバ10が管理するデータに対して複数種類の操作をクライアント30に認める場合、仮想URLにはその操作を示すメソッドを含めるようにする。逆に言えば、データサーバ10が単に要求されたデータをクライアント30に提供するだけであれば、このようなメソッドの記述は不要である。また、図6bの例は、グローバルID114aの代わりにローカルID114bを含んだ仮想URLの例である。この場合のローカルID114bは、その仮想URLが発行されたときに当該データが存在したデータサーバ10における、当該データのローカルIDである。
なお、これら仮想URLはURLであるため、当然プロトコル、ポート等の情報も含まれるが、ここでは特に説明しない。
なお、データへのアクセスのための仮想URLは、例えば電子メールなどに記述されてユーザへと提供される。ユーザはその仮想URLをクリックするなどの操作により、クライアント30にインストールされたウェブブラウザを介してそのデータへのアクセスを試みる。
仮想URL通知の仕組みの一つとして、データサーバ10は、データ管理部12に対して新たなデータが登録されたり、登録されているデータが更新されたりするなど、データ管理部12に変更が生じた場合に、その変更に係るデータを示す仮想URLを関係ユーザに通知する機能を備えていてもよい。この通知は、例えば電子メールの形で送信する。通知に記述する仮想URLは、グローバルIDを用いたものでもローカルIDを用いたものでもよいが、ユーザの利便性を考えた場合、ローカルIDの方が好ましい。通知を送信する関連ユーザは、例えばデータごと、或いはフォルダごとなどの単位で、予めデータサーバ10に登録されている。また、ユーザがデータをデータサーバ10に登録する際に、このデータへのアクセスを許す人を通知送信先ユーザとして登録してもよい。
いずれにしても、ユーザは、過去に取得した仮想URLを用いて、そのデータに対するアクセスを行うことができる。
ユーザが、クライアント30を操作し、仮想URL110を用いてデータ要求を行った場合、ホスト名112が示すサーバに対し、グローバルID114a又はローカルID114bを含んだデータ要求情報が送信されることになる。
次に図7を参照して、データサーバ10がクライアント30からデータ要求情報を受け取ったときの処理手順を説明する。以下では、便宜上、システムを構成する複数のデータサーバ10のうちの1つ、すなわちデータサーバ10−1の処理として説明するが、他のデータサーバもこれと同様の処理を行う。
この手順では、まずデータサーバ10−1は、クライアント30からのデータ要求情報からデータIDを抽出し(S100)、データ管理部12−1からそのデータIDに対応する実データのリンク情報を検索する(S102)。ここで、仮想URLを用いて行われるデータ要求からは、データIDとしてグローバルID114aが抽出される場合もあれば、ローカルID114bが抽出される場合もある。一方、データ管理部12−1も、登録されたデータのインデックスとしてグローバルIDを用いる構成の場合もあれば、ローカルIDを用いる構成の場合もある。したがって、この検索ステップS102においては、必要に応じて、ID変換部13−1を用い、データ要求に示されたデータIDをデータ管理部12−1の検索インデックスのIDタイプへと変換する。例えば、データ管理部12−1がデータをローカルIDで管理している場合に、クライアント30からグローバルIDによるデータ要求を受けた場合、データ管理部12−1はそのグローバルIDをID変換部13−1に渡してローカルIDに変換させ、得られたローカルIDに対応するデータを検索する。データ要求中のデータIDのタイプと検索インデックスのIDタイプとが同じ場合は、ID変換は不要である。検索により、要求されたデータに対応するリンク情報が検索できた場合(S104の判定結果が肯定(Y))、データサーバ10−1は、そのリンク情報が指し示すデータの実体をデータサーバ10−1内の記憶装置から取得し、クライアント30に提供する(S114)。
一方、要求されたデータIDに対応するリンク情報がなかった場合(S104の判定結果が否定(N))、データサーバ10−1は検出部14−1に、本システムを構成する他のデータサーバ10−2等の検出を指示し、検出部14−1はこの指示に応じて他のデータサーバ10−2等の検出を行う(S106)。他のデータサーバ10の検出は、例えば、他サーバ検出用の所定のメッセージを、検出部14−1からネットワーク20へブロードキャストすることで行うことができる。各データサーバ10−2等の検出部14−2等は、他サーバ検出用のメッセージを認識し、それに対して応答するためのプロトコルを有している。すなわち、他サーバ検出用メッセージを受け取った他のデータサーバ10−2等の検出部14−2等は、このプロトコルに従い、当該他のデータサーバ10−2等のサーバID(識別情報)を含んだ応答を返す。サーバIDとしては、例えばIPアドレスや、ホスト名を用いることができる。他サーバ検出用のメッセージを発信した検出部14−1は、他のデータサーバ10−2等からの応答を受け取り、その応答に含まれるサーバIDを取得する。これにより、本システムを構成する他のデータサーバ10−2を見つけることができる。
他のデータサーバ10−2が見つかると、データサーバ10−1は、問合せ部16−1に、見つけた他のデータサーバ10−2に対する問合せを指示する。この指示に応じ、問合せ部16−1は、クライアント30から要求されたデータのグローバルIDを含んだデータ問合せをデータサーバ10−2に送り、そのグローバルIDに対応するデータを持っているか否かを問い合わせる(S108)。すなわち、問合せ部14は、クライアント30からのデータ要求中のデータIDがグローバルIDであればこれをそのまま用い、ローカルIDであれば、それをID変換部13によりグローバルIDに変換して問合せを生成する。この問合せを受けたデータサーバ10−2の問合せ部16−2の動作については、後で詳しく説明する。
この問合せの結果、問合せ先の他のデータサーバ10−2が当該データを持っていないことが判明した場合は(S110の判定結果が否定(N))、他のデータサーバの検出(S106)及びそれに対する問合せ(S108)を繰り返す。当該データを持つデータサーバ10が見つかるまで、ステップS106及びS108が繰り返される。
なお、図7では、他のデータサーバをステップS106で1つ検出してはステップS108でそれに対して問合せを行うという手順を示したが、これに限らず、例えばステップS106でブロードキャストにより検出可能なデータサーバ10を全て検出して記憶し、それら記憶した各データサーバ10に対しステップS108で順に問合せを行うようにしてももちろんよい。
問合せ先の他のデータサーバ10−2が当該データを持っていることが判明した場合は(S110の判定結果が肯定(Y))、データサーバ10−1はデータサーバ10−2のサーバIDを含んだリダイレクト情報をクライアント30に返す(S112)。このリダイレクト情報の返送は、例えば、一般的なHTTP(HyperText Transfer Protocol)リダイレクトの方式に従って行うことができる。すなわち、データサーバ10−1は、302(Found)等のリダイレクトを示すステータスコードと、リダイレクト先のURLを含んだLocationフィールドと、を含むリダイレクト情報をクライアント30に返す。なお、リダイレクト情報に含まれるリダイレクト先のURLは、リダイレクト先のデータサーバ10−2のサーバIDと要求対象データのデータIDとを含んだ上述の仮想URLである。この場合のデータIDは、グローバルIDでもローカルIDでもよいが、ユーザの使いやすさを優先するとローカルIDが好適である。ただし、このときのローカルIDは、当該データを持つと判明した他のデータサーバ10−2でのローカルIDである。
グローバルIDを用いた仮想URLの場合、リダイレクト先のサーバIDも要求対象データのグローバルIDも問合せの時点で既知なので、データサーバ10−1はそのような仮想URLを生成できる。ローカルIDを用いた仮想URLの場合は、問合せ先のデータサーバ10−2からそのデータのローカルIDを取得し、それとサーバIDを組み合わせて作成する。
このリダイレクト情報を受けたクライアント30は、HTTPに従って、リダイレクト情報中のサーバIDが示すデータサーバ10−2に対し、同じくリダイレクト情報中のデータIDを含んだデータ要求を送る。
次に、他のデータサーバから問合せを受けたときのデータサーバの処理手順を、図8を参照して説明する。以下では、便宜上、データサーバ10−2の処理として説明するが、他のデータサーバもこれと同様の処理を行う。
データサーバ10−2の問合せ部16は、他のデータサーバ10−1の問合せ部16からデータ問合せを受けた場合、そのデータ問合せの情報の中から対象データのグローバルIDを取り出し(S200)、そのグローバルIDに対応するリンク情報をデータ管理部12−2から検索する(S202)。この検索の際、データ管理部12−2がローカルIDによりデータを管理している場合は、ID変換部13−2によりそのグローバルIDをローカルIDに変換し、検索を行う。この検索の結果、データ管理部12−2からそのグローバルIDに対応するリンク情報が検索できた場合(S204の判定結果が肯定(Y))、問合せ部16−2は、問合せ対象のデータが存在する旨を示すメッセージを問合せ元のデータサーバ10−1に返す(S206)。一方、検索できなかった場合(S204の判定結果が肯定(Y))、問合せ部16−2は、問合せ対象のデータが存在しない旨を示すメッセージを問合せ元のデータサーバ10−1に返す(S208)。
なお、ステップS206では、問合せ対象のデータが存在する旨を示すメッセージを問合せ元に返す代わりに、問合せ対象のデータの仮想URL(すなわちそのデータを持つデータサーバ10−2のサーバIDと、そのデータのデータIDを含む)を返してもよい。仮想URLに示されるデータIDとしては、ローカルIDを用いた方がユーザにとって記憶しやすく、また入力もしやすい。本システムが、ユーザに対して提供するリダイレクト情報としてローカルIDを用いたものを提供する場合には、問合せ部16−2は、ローカルIDを含んだ仮想URLをデータサーバ10−1に返す。このように問合せ先のデータサーバ10−2からデータの仮想URLが返される場合、問合せ元のデータサーバ10−1は、ステップS112において、データサーバ10−2から返された仮想URLをリダイレクト情報としてクライアント30に返せばよい。
以上説明したようなデータ管理システムの動作を、具体例を用いて説明する。
まず図1の構成において、クライアント30からデータサーバ10−1に送ったデータ要求の対象データがデータサーバ10−1に存在する場合は、上述のフローチャートの処理に従って、その対象データがデータサーバ10−1からクライアント30に提供される。
一方、クライアント30からデータサーバ10−1に送ったデータ要求の対象データがデータサーバ10−1に存在しない場合は、例えば図9のような流れとなる。図9の例では、データ管理部12−1,12−2はデータをローカルIDで管理しているものとする。
図9において、クライアント30から要求対象データをローカルID(図中では「SID−1」と表記した)で示したデータ要求が来ると(1)、データサーバ10−1はそのローカルID「SID−1」のデータがデータ管理部12にあるか検索する(2)。この例ではデータ管理部12−1に当該データは存在しないので、次に検出部14−1が他のデータサーバ10−2を検出する(3)。そして、ローカルID「SID−1」に対応するグローバルID(この例では「UUID−1」とする)をID変換部13−1から求める(4)。要求対象データがデータサーバ10−1に登録されていたことがあれば、ID変換部13−1に当該データのローカルIDとグローバルIDの対応関係が登録されているので、ID変換が可能である。ユーザがデータサーバ10−1やその他のユーザなどから当該データを示す仮想URLを受け取っていた場合は、そのデータはデータサーバ10−1に登録されていたことがある可能性が高い。要求対象データのグローバルID「UUID−1」が求められると、問合せ部16−1は、そのグローバルIDを含んだデータ問合せを、データサーバ10−2に対して送信する(5)。
この問合せを受けたデータサーバ10−2の問合せ部16−2は、その問合せ中のグローバルID「UUID−1」に対応するローカルIDをID変換部13−2により求める(6)。この例では、UUID−1のデータがデータ管理部12−2に登録されているので、UUID−1に対応するローカルID(「SID−2」とする)は求めることができる。データ管理部12−2は、「SID−2」に対応するデータを自身の記憶部から検索し、その検索結果を問合せ部16−2に渡す(7)。この例では、ローカルID「SID−2」のデータが検索できたので、問合せ部16−2は、「SID−2」を含んだ返答情報をデータサーバ10−1の問合せ部16−1に返す(8)。これを受け取ったデータサーバ10−1は、「SID−2」を含んだリダイレクト情報を作成し、要求元のクライアント30に返す(9)。このリダイレクト情報は、データサーバ10−2のホスト名とローカルID「SID−2」を含んだものである。クライアント30は、そのリダイレクト情報に従ってデータサーバ10−2にアクセスし(10)、「SID−2」のデータを取得する(11)。
図9の例は、データ管理部12がデータをローカルIDで管理している場合であったが、グローバルIDで管理している場合は、データ管理部12の検索のためにデータ要求中のローカルIDをグローバルIDに変換する必要が出てきたり、他のデータサーバ10からのデータ問合せを受けた場合、その問合せに含まれるグローバルIDでそのままデータ管理部12を検索できたりする点が異なるだけで、その他の点は図9の場合と同様でよい。
次に、クライアント30の要求するデータがデータサーバ10−1にも10−2にも存在せず、データサーバ10−3に存在する場合の例を図10に示す。
この例は、データサーバ10−1がデータサーバ10−2を検出して問合せを行い、問合せ部16−2がその問合せに係るグローバルID「UUID−1」に対応するローカルIDをID変換部13−2に問い合わせるところまでは(6)、図9の例と同じである。そして、この図10の例では、グローバルID「UUID−1」に対応するローカルIDがID変換部13−2から得られない。当該データがデータサーバ10−2に一度も登録されたことがない場合は、このような事態が生ずる。この場合、問合せ部16−2は、問合せに係るデータが当該サーバ10−2にない旨を示す返答情報をデータサーバ10−1に返す(7)。
なお、要求対象データがデータサーバ10−2にないケースとしては、上述のように一度も登録されたことがない場合の他、過去に登録された後、現在までの間にそのデータが移動させられたり削除されたりする場合もある。このような場合、ID変換部13−2にはUUID−1に対応するローカルIDが存在するが、データ管理部12−2からはそのデータは検索できないので、結局のところそのデータが存在しない旨を示す返答情報がデータサーバ10−2に返されることになる。
データサーバ10−1の問合せ部16−1はこの返答情報からサーバ10−2に要求対象データがないことがを知る。この場合、検出部14−1が更に別のデータサーバ10−3を検出し(8)、「UUID−1」を含んだデータ問合せを送る(9)。データサーバ10−3では、その「UUID−1」がID変換部13−3によりローカルID(「SID−2」とする)に変換され(10)、このローカルIDを用いてデータ管理部12−3の登録データが検索される(11)。この例では、この検索により要求対象データが見つかる。したがって、問合せ部16−3は、そのローカルID「SID−2」を含んだ返答情報をデータサーバ10−1に返す(12)。以降は、図9の例と同様である(13)〜(15)。
以上のように、クライアント30からの要求されたデータがデータサーバ10−1にない場合も、データサーバ10−1はそのデータのグローバルIDを用いて他のデータサーバ10−2,3,...にそのデータがあるかどうかを問い合わせていく。したがって、いずれかのデータサーバ10にそのデータがあれば、そのデータサーバ10へのリダイレクト情報がデータサーバ10−1を介してクライアント30に提供され、クライアント30はそのリダイレクト情報を用いてそのデータにアクセスすることができる。
なお、要求対象データを現在保持しているデータサーバ10が停止していたり、或いはそのデータが削除されている場合は、ネットワーク20上をいくら探索してもそのデータは見つからない。したがって、クライアント30からデータ要求を受けたデータサーバ10−1は、あらかじめ設定された終了条件を満足した時点で他のデータサーバへの問合せを終了し、クライアント30にデータが見つからなかった旨を回答するようにしてもよい。終了条件としては、(a)あらかじめ指定された数のデータサーバ10に問い合わせても要求対象データが見つからない場合、(b)あらかじめ指定された時間が経過しても要求対象データが見つからない場合、(c)データサーバ10を探すドメインがあらかじめ指定されており、そのドメイン内のすべてのデータサーバ10に問い合わせても要求対象データが見つからない場合、などのいずれかを用いることができる。また、(d)データ管理システムを構成するデータサーバの一部又は全部のサーバIDが登録されたリストがデータサーバ10−1に登録されている場合は、「そのリストにあるデータサーバ10の全てに問い合わせても要求対象データが見つからないこと」、を終了条件とすることもできる。
なお、データの削除操作が行われた場合、データ管理部12がその旨をそのデータのローカルID又はグローバルIDに対応づけて削除リストに記憶することも好適である。この場合、データサーバ10−2は、他のデータサーバ10−1から問い合わせられたデータがその削除リストに載っている場合は、そのデータが削除する旨を回答する。これにより、データサーバ10はそれ以上の探索を打ち切り、クライアント30に対し要求対象データが削除されていることを通知することができる。
以上の実施形態の説明では、クライアント30からローカルIDを用いたデータ要求を受け取った場合の例を示したが、グローバルIDを用いた場合も同様の探索処理が可能なことは容易に理解できるであろう。
以上説明したように、本実施形態では、各データサーバ10が、クライアント30から要求されたデータを持つデータサーバ10を探し、見つけたデータサーバ10に対してその要求をリダイレクトする。したがって、非特許文献1のような中央管理サーバが無くても要求されたデータを見つけることができため、サーバ停止によりデータが解決不能になる問題も従来技術に比べて大幅に抑制することができる。
また、本実施形態では、データサーバ10間でデータが移動されデータの所在場所が変わったとしても、クライアント30は既存の仮想URLを用いてデータにアクセスすれば、元々そのデータを管理していたデータサーバ10、すなわち仮想URL中のサーバIDに対応するデータサーバ10がそのアクセス要求を受け取り、現在そのデータを有しているデータサーバ10を探索する。したがって、クライアント30は、既に有している仮想URLをそのまま利用しても、データを取得することができる。
例えば、既存のデータサーバの中には、新たにデータが登録されるなどサーバ上のデータに変更が生じると変更を確認可能なURLをメールでユーザに配布する機能を持つものがある。しかし、このサーバ上のデータが他のサーバへ移動されると、既に配布したURLは利用できなくなってしまう。これに対し、本実施形態の仕組みを適用すれば、そのようなケースでも、クライアント30はデータ移動前に配布された仮想URLを利用してそのデータを取得することができる。また、管理対象のデータの増大などによりデータサーバ10を分割する必要が出てくることがよくあるが、このような場合でも、本実施形態では、分割前にユーザに配布した仮想URLを分割後にも使用することができる。
また、本実施形態では、グローバルIDよりも桁数の少ないローカルIDを用いた仮想URLでデータ要求を行うことができるので、グローバルIDを用いる場合に比べユーザにとって仮想URLを覚えたり、口頭で近くの人に伝えたりするのが容易になり、また仮想URLのタイプ入力も容易になる。
また本実施形態では、データがデータサーバ10に登録されると、当該データの当該サーバ内でのローカルIDとグローバルIDとの対応関係がID変換部13に登録され、その対応関係の情報は、当該データが他のデータサーバに移動しても消えない。これにより、データがデータサーバ間で移動しても、一度でもそのデータが登録されていたデータサーバ10があれば、そのサーバ10に対し、そのサーバ10におけるそのデータのローカルIDを用いて問合せを行うことで、そのデータを見つけ出すことができる。
なお、データサーバ10間のデータの移動は、例えば、次のように行われる。すなわち、ユーザがあるデータサーバ10−1のデータ管理部12−1に登録されているデータを別のデータサーバ10−2に移動させる指示を入力したとする。この場合、データ管理部12−1は、そのデータのグローバルIDをそのデータと共にデータサーバ10−2に渡す。移動対象のデータをローカルIDで指定されている場合、データ管理部12−1は、ID変換部13−1からそのデータのグローバルIDを取得した上で、データと共にデータサーバ10−2に送る。これを受け取ったデータサーバ10−2は、前述の図5の手順に従い、そのデータをデータ管理部12−2に登録する。
次に、図11及び図12を参照して、上記実施形態の変形例を説明する。図11に示すように、この変形例では、データサーバ10は認証部17を備える。認証部17は、データ要求元のユーザが当該データサーバ10、又は要求対象データに対するアクセスできるかどうかを判定する。例えば、各ユーザの当該データサーバ10に対するアクセス権、又は当該データサーバ10内に登録された各データへのアクセス権を、データサーバ10又は該サーバ10からアクセス可能な他のサーバに登録しておき、このアクセス権情報に基づき上述の判定を行えばよい。このアクセス権の判定は、クライアント30からのデータ要求に対してだけでなく、他のサーバ10からのデータ問合せに対しても行う。アクセス権判定のための基礎となるユーザ情報(ユーザIDなど)は、例えばクライアント30からデータ要求を受け取ったデータサーバ10が、その要求を処理する前に、例えばユーザIDとパスワードの入力を求めるなどの方法でユーザ認証を行うことで、取得できる。そして、他のデータサーバ10−1からデータ問合せを受けたデータサーバ10−2に当該データが存在する場合、サーバ10−2がサーバ10−1に要求元のユーザIDを送信するよう要求する。この代わりに、データ問合せの際にユーザIDを併せて送るようにしても良い。サーバ10−2は、問合せ元から送られてきたユーザIDをもとに、アクセス権情報を参照して、当該要求元のユーザがサーバ10−2及び当該データにアクセスする権限を持つかどうかを判定する。サーバ及びデータの一方でもアクセス権がない場合は、当該ユーザはそのデータにアクセスできないと判定する。
また、アクセス可否判定の別の例として次のようなものもある。すなわち、データサーバ10が定期メンテナンス等でユーザからのアクセスを制限している場合に、他のデータサーバ10からのデータ問合せに対して一律に、ユーザからのアクセスを不可と判定するという方法である。
また、問合せが受けたデータサーバ10−2が、常時監視している自身の処理負荷に基づき、要求元のユーザからのアクセスを認めるかどうかを判定しても良い。すなわち、処理負荷が所定の閾値より高ければユーザからのアクセスを認めず、そうでなければアクセスを認めるようにするなどである。
この変形例において、他のデータサーバ10−1からデータ問合せを受けたデータサーバ10−2の処理手順を図12に示す。この手順では、データサーバ10−2は、データ問合せから対象データのグローバルIDを取得し(S200)、上述の方法で要求元ユーザからその対象データへのアクセスを認めるかどうかを判定する(S210)。アクセスを認める(すなわち「アクセス不可」ではない)場合は、図8のステップS202以降の処理に進めばよい。一方、アクセス不可の場合は、データサーバ10−2はその旨をデータサーバ10−1に通知する(S212)。この通知を受け取ったデータサーバ10−1は、別のデータサーバ10を探してデータ問合せを繰り返す。
データサーバ10−2は、ステップS212で処理を終了しても良いが、図12の例では、更に対象データが自身のデータ管理部12−2に登録されているかどうかを調べている(S214)。このとき、必要に応じてID変換部13−2によりID変換を行う。そして、対象データがデータ管理部12−2にあれば(ステップS216の判定結果がY)、対象データのローカルIDは通知せずに対象データを持っている旨をデータサーバ10−1に通知する(S218)。その通知を受け取ったデータサーバ10−1は、要求対象データがアクセス不可のデータサーバ10−2にあることが判明したので、探索を打ち切る。このとき、データサーバ10−1が、データ要求元のクライアント30に対して、ユーザのアクセスできないデータサーバに要求対象データがある旨を回答するようにしてもよい。
なお、ステップS212でアクセス不可の旨の通知を問合せ元のサーバ10−1に送る代わりに、データ管理部12−2の検索の後で、その結果を踏まえた通知(「アクセス不可且つ対象データ存在」又は「アクセス不可且つ対象データなし)を送るようにしてもよい。
次に、別の変形例を説明する。上記実施形態では、検出部14が所定のメッセージをブロードキャストすることにより他のデータサーバ10を検出した。これに対し、図13に示すような変形例も考えられる。この変形例では、データ管理システムを構成する各データサーバ10aが、他のデータサーバ10aのサーバIDのリスト(「サーバリスト」と呼ぶ)を記憶したサーバリスト記憶部18を備えている。サーバリストは、データサーバ10aの管理者がサーバリスト記憶部18に登録してもよいし、上記実施形態のブロードキャストによる検出の手法での検出結果に基づき自動作成してもよい。また、後述する手順の中で他のデータサーバ10aから取得したサーバリストの情報をサーバリスト記憶部18に追加することもできる。検出部14aは、このサーバリスト記憶部18から他のデータサーバ10aを検出する。
また、この場合、他のデータサーバ10a−1からデータ問合せを受けたデータサーバ10a−2は、問合せ対象のデータが当該サーバ10a−2に存在しないことが判った場合、単にその旨をサーバ10a−1に回答しても良いが、当該サーバ10a−2のサーバリスト記憶部18内のサーバID(又はそのリスト)を回答しても良い。サーバ10a−1は回答として受け取ったサーバID(又はそのリスト)を自身のサーバリスト記憶部18に追加することで、サーバリストを拡張することができる。
この変形例によれば、データサーバ10aは、他のデータサーバ10aが持つサーバリストを取得することで、サーバリスト記憶部18に未登録のデータサーバ10aを知ることができ、それら新たに知ったデータサーバ10aに対しても問合せを行うことができる。
また、図11の例でサーバリスト記憶部18から問合せ未済のサーバが無くなった場合に、ブロードキャストによる検出を行い、その結果をサーバリスト記憶部18に登録するようにしてもよい。
また、以上の実施形態では、クライアント30からのデータ要求が、要求先のサーバ10−1により他のサーバ10−2にリダイレクトされた場合、リダイレクト先のサーバ10−2に要求対象データが存在していた。リダイレクトはデータ問合せの結果に基づき行われるので、リダイレクト先に要求対象データが存在する可能性は極めて高いが、存在しない場合も考えられる。例えば、データ問合せの後、リダイレクトされたデータ要求が到来するまでの間に、要求対象データがデータサーバ10−2から他のデータサーバに移動した場合などである。
また、別の例として、各データサーバ10が、他のデータサーバへのデータ問合せの結果をキャッシュする場合も考えられる。すなわちこの場合、データサーバ10は、データ問合せの結果、要求対象データが存在すると判明したデータサーバ10のサーバIDをその要求対象データのデータIDと対応づけてキャッシュメモリに一時的に記憶する。そして、データサーバ10は、他のデータサーバを検出してデータ問合せを行う前に、そのキャッシュメモリの中に、要求対象データを保持するデータサーバの情報が存在するかどうかを調べ、存在すればそのデータサーバに対してデータ要求をリダイレクトする。この場合も、キャッシュの情報が古くなっていると、リダイレクトにより導かれたデータサーバ10には要求対象データが存在しない場合がある。
このようにリダイレクト先のデータサーバ10に要求対象データが存在しない場合、リダイレクト先のサーバ10は、クライアント30からデータ要求を受け取ったサーバという意味では、最初に要求を受け取ったサーバと何ら変わらないので、今度はそのリダイレクト先のデータサーバ10が、上述の同じ処理手順を実行することで、要求対象データを持つデータサーバ10を探すことになる。このように、リダイレクト先に要求対象データが無くても、本実施形態によれば、リダイレクト先のサーバ10がクライアント30から要求を受けたサーバとなって再帰的に探索を繰り返すことができる。
以上に説明した実施形態及び変形例は、データがサーバ間で移動した場合に限らず、同一サーバ内でデータが移動してURLが変わってしまう場合にも適用可能である。例えば、データの仮想URLが"http://xxx.fx.co.jp/Folder1/Folder2/uuid1"であったとする。このうち"uuid1"がそのデータのグローバルIDであり、"/Folder1/Folder2/"はサーバ"xxx.fx.co.jp"内でのそのデータのパスである。すなわち、この仮想URLは、一般的なロケーションベースのURLと、グローバルに一意なグローバルIDとの折衷型である。このような折衷型の仮想URLでも、グローバルIDを含んでいる以上、上記実施形態の仕組みでそのデータを検索することができる。更に、この仮想URLでは、サーバ内でのデータのパス情報も含んでいるので、従来からのロケーション(ディレクトリ)ベースでのデータの所在場所の表示(例えばフォルダツリー表示)等を行うことができる。このようなデータ"uuid1"が同じサーバ内のディレクトリ"/Folder3/Folder4/"に移動した場合、仮想URLは正しくは"http://xxx.fx.co.jp/Folder3/Folder4/uuid1"となるが、ユーザが元の仮想URL"http://xxx.fx.co.jp/Folder1/Folder2/uuid1"を用いてアクセスしたとしても、その仮想URLはグローバルIDを含んでいるので、ディレクトリ"/Folder3/Folder4/"内のデータ"uuid1"に正しくアクセスできる。もちろん、この場合、データ管理部12におけるデータ"uuid1"のリンク情報がディレクトリ"/Folder3/Folder4/"内のそのデータを指すように正しく更新されているものとする。
以上説明した実施形態及び変形例に係るデータサーバは、汎用のコンピュータシステムに、上述したデータサーバの機能・動作を記述したプログラムを実行させることにより実現される。
本発明に係るデータ管理システムの概略構成を示す図である。 実施例のデータサーバの構成を示す図である。 データ管理部におけるデータの管理情報の構造を示す図である。 ID変換部に登録される対応表の一例を示す図である。 データ管理部に新たにデータが登録される場合の処理手順を示すフローチャートである。 仮想URLの例を示す図である。 仮想URLの例を示す図である。 データサーバがクライアントからデータ要求情報を受け取ったときの処理手順を示すフローチャートである。 他のデータサーバから問合せを受けたときのデータサーバの処理手順を示すフローチャートである。 実施形態のシステムの動作を説明するための図である。 実施形態のシステムの動作を説明するための図である。 変形例のデータサーバの概略構成を示す図である。 変形例のデータサーバがクライアントからデータ要求情報を受け取ったときの処理手順を示すフローチャートである。 別の変形例のデータサーバの概略構成を示す図である。
符号の説明
10 データサーバ、12 データ管理部、13 ID変換部、14 検出部、16 問合せ部、20 ネットワーク、30 クライアント。

Claims (7)

  1. ネットワークを介して接続された他のデータサーバと連携してデータ管理システムを構成するデータサーバとして、コンピュータシステムを動作させるためのプログラムであって、該コンピュータシステムを、
    登録されるデータを記憶するデータ管理部であって、登録されるデータに対し当該データサーバ内で一意なローカル識別情報を付与するとともに、そのデータに対しグローバルに一意なグローバル識別情報が付与されていない場合はグローバル識別情報を付与するデータ管理部、
    データに付与されたローカル識別情報とグローバル識別情報との対応関係を記憶する対応関係記憶部、
    クライアントから受け取ったデータ要求の要求対象データをデータ管理部から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、データ管理システムを構成する他のデータサーバに対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより、前記要求対象データを持つデータサーバを探索する要求処理部であって、前記データ要求が要求対象データをローカル識別情報により指定している場合は、前記対応関係記憶部からその要求対象データのグローバル識別情報を求めて前記データ問合せを生成する要求処理部、
    他のデータサーバからデータ問合せを受けた場合、該データ問合せに含まれるグローバル識別情報に対応するデータを前記データ管理部から検索し、その検索の結果に応じた応答を前記他のデータサーバに送る応答部、
    として機能させるためのプログラム。
  2. 前記コンピュータシステムを、前記データ管理システムを構成する他のデータサーバを検出する検出部、として機能させるとともに、
    前記要求処理部は、該検出部が検出した他のデータサーバに対して前記データ問合せを送る、
    ことを特徴とする請求項1記載のプログラム。
  3. 前記要求処理部は、前記データ要求の要求対象データが前記データ管理部から検索できなかった場合、前記データ問合せにより探索した前記要求対象データを持つデータサーバのサーバ識別情報を含むリダイレクト情報を前記クライアントに送信する、ことを特徴とする請求項1記載のプログラム。
  4. 前記応答部は、当該データサーバが前記要求対象データに対する前記クライアントからのアクセスを認めない場合、他のデータサーバからのデータ問合せに対してその旨を回答すると共に、該データ問合せに含まれるグローバル識別情報に対応するデータが前記データ管理部から検索された場合は、前記データ問合せの対象であるデータが当該データサーバに存在する旨を前記他のデータサーバに回答し、
    前記要求処理部は、前記要求対象データに対する前記クライアントのアクセスを認めない旨の回答をデータ問合せの送り先のデータサーバから受け取った場合において、更に該データ問合せの対象であるデータが該送り先のデータサーバに存在する旨の回答を受け取った場合は、前記クライアントに対して前記リダイレクト情報を送ることなく前記要求対象データを持つデータサーバの探索を終了する、
    ことを特徴とする請求項3記載のプログラム。
  5. ネットワークに接続された複数のデータサーバから構成されるデータ管理システムであって、
    各データサーバが、
    登録されるデータを記憶するデータ管理部であって、登録されるデータに対し当該データサーバ内で一意なローカル識別情報を付与するとともに、そのデータに対しグローバルに一意なグローバル識別情報が付与されていない場合はグローバル識別情報を付与するデータ管理部と、
    データに付与されたローカル識別情報とグローバル識別情報との対応関係を記憶する対応関係記憶部と、
    クライアントから受け取ったデータ要求の要求対象データをデータ管理部から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、データ管理システムを構成する他のデータサーバに対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより、前記要求対象データを持つデータサーバを探索する要求処理部であって、前記データ要求が要求対象データをローカル識別情報により指定している場合は、前記対応関係記憶部からその要求対象データのグローバル識別情報を求めて前記データ問合せを生成する要求処理部と、
    他のデータサーバからデータ問合せを受けた場合、該データ問合せに含まれるグローバル識別情報に対応するデータを前記データ管理部から検索し、その検索の結果に応じた応答を前記他のデータサーバに送る応答部と、
    を備えることを特徴とするデータ管理システム。
  6. ネットワークを介して接続された他のデータサーバと連携してデータ管理システムを構成するデータサーバであって、
    登録されるデータを記憶するデータ管理部であって、登録されるデータに対し当該データサーバ内で一意なローカル識別情報を付与するとともに、そのデータに対しグローバルに一意なグローバル識別情報が付与されていない場合はグローバル識別情報を付与するデータ管理部と、
    データに付与されたローカル識別情報とグローバル識別情報との対応関係を記憶する対応関係記憶部と、
    クライアントから受け取ったデータ要求の要求対象データをデータ管理部から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、データ管理システムを構成する他のデータサーバに対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより、前記要求対象データを持つデータサーバを探索する要求処理部であって、前記データ要求が要求対象データをローカル識別情報により指定している場合は、前記対応関係記憶部からその要求対象データのグローバル識別情報を求めて前記データ問合せを生成する要求処理部と、
    他のデータサーバからデータ問合せを受けた場合、該データ問合せに含まれるグローバル識別情報に対応するデータを前記データ管理部から検索し、その検索の結果に応じた応答を前記他のデータサーバに送る応答部と、
    を備えるデータサーバ。
  7. ネットワークに接続された複数のデータサーバから構成されるデータ管理システムにより実行されるデータ管理方法であって、
    各データサーバが、
    自身が備えるデータ管理部に登録されるデータに対し当該データサーバ内で一意なローカル識別情報を付与するとともに、そのデータに対しグローバルに一意なグローバル識別情報が付与されていない場合はグローバル識別情報を付与するステップと、
    データに付与されたローカル識別情報とグローバル識別情報との対応関係を対応関係記憶部に記憶するステップと、
    クライアントから受け取ったデータ要求の要求対象データをデータ管理部から検索し、該当するデータが検索できた場合はそのデータをクライアントに提供し、検索できなかった場合は、データ管理システムを構成する他のデータサーバに対し該要求対象データのグローバル識別情報を含むデータ問合せを送ることにより前記要求対象データを持つデータサーバを探索するステップであって、前記データ要求が要求対象データをローカル識別情報により指定している場合は、前記対応関係記憶部からその要求対象データのグローバル識別情報を求めて前記データ問合せを生成するステップと、
    他のデータサーバからデータ問合せを受けた場合、該データ問合せに含まれるグローバル識別情報に対応するデータを前記データ管理部から検索し、その検索の結果に応じた応答を前記他のデータサーバに送るステップと、
    を実行するデータ管理方法。
JP2005162642A 2005-06-02 2005-06-02 データ管理システム及びデータサーバ Expired - Fee Related JP4729987B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005162642A JP4729987B2 (ja) 2005-06-02 2005-06-02 データ管理システム及びデータサーバ
US11/256,008 US20060277196A1 (en) 2005-06-02 2005-10-21 Data management system, data server, data management method and storage medium thereof
CNB2005101289927A CN100422994C (zh) 2005-06-02 2005-12-05 数据管理系统、数据服务器和数据管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005162642A JP4729987B2 (ja) 2005-06-02 2005-06-02 データ管理システム及びデータサーバ

Publications (2)

Publication Number Publication Date
JP2006338357A true JP2006338357A (ja) 2006-12-14
JP4729987B2 JP4729987B2 (ja) 2011-07-20

Family

ID=37484119

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005162642A Expired - Fee Related JP4729987B2 (ja) 2005-06-02 2005-06-02 データ管理システム及びデータサーバ

Country Status (3)

Country Link
US (1) US20060277196A1 (ja)
JP (1) JP4729987B2 (ja)
CN (1) CN100422994C (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007074240A (ja) * 2005-09-06 2007-03-22 Toshiba Corp コンテンツリスト出力装置および方法
JP2012060473A (ja) * 2010-09-09 2012-03-22 Fuji Xerox Co Ltd データ中継システム、中継装置、およびプログラム
JP2013503390A (ja) * 2009-08-28 2013-01-31 アップル インコーポレイテッド コンテンツ配信ネットワーク上のチャンク形式ダウンロード
JP2014235514A (ja) * 2013-05-31 2014-12-15 富士ゼロックス株式会社 処理指示装置、処理装置およびプログラム

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4497993B2 (ja) * 2004-04-16 2010-07-07 株式会社日立製作所 電子配付物の配付制御システム及び方法
JP4852938B2 (ja) * 2005-09-02 2012-01-11 富士ゼロックス株式会社 データサーバ及びデータ管理方法及びプログラム
US8543637B2 (en) * 2006-01-18 2013-09-24 At&T Intellectual Property I, L.P. Distributed web publishing
JP4919851B2 (ja) * 2007-03-23 2012-04-18 株式会社日立製作所 ファイルレベルの仮想化を行う中間装置
US8280983B2 (en) * 2007-05-02 2012-10-02 Microsoft Corporation Distributed search in a casual network of servers
JP2009176144A (ja) * 2008-01-25 2009-08-06 Access Co Ltd マークアップ言語文書変換システム、マークアップ言語文書変換装置、マークアップ言語文書変換方法およびマークアップ言語文書変換プログラム
US8185601B2 (en) * 2008-05-11 2012-05-22 Nokia Corporation Sharing information between devices
BRPI0917782B1 (pt) * 2008-12-17 2020-04-22 Koninl Philips Electronics Nv sistema e método para armazenar imagens de pacientes em um sistema hospitalar
CN103164502A (zh) * 2011-09-13 2013-06-19 吉菲斯股份有限公司 网络中的在线内容的管理
US9423922B2 (en) * 2013-12-24 2016-08-23 Dropbox, Inc. Systems and methods for creating shared virtual spaces
US10067652B2 (en) 2013-12-24 2018-09-04 Dropbox, Inc. Providing access to a cloud based content management system on a mobile device
US9544373B2 (en) * 2013-12-24 2017-01-10 Dropbox, Inc. Systems and methods for maintaining local virtual states pending server-side storage across multiple devices and users and intermittent network connections
WO2015112870A1 (en) 2014-01-25 2015-07-30 Cloudpin Inc. Systems and methods for location-based content sharing using unique identifiers
US10936494B1 (en) 2014-12-05 2021-03-02 EMC IP Holding Company LLC Site cache manager for a distributed file system
US10430385B1 (en) 2014-12-05 2019-10-01 EMC IP Holding Company LLC Limited deduplication scope for distributed file systems
US9898477B1 (en) 2014-12-05 2018-02-20 EMC IP Holding Company LLC Writing to a site cache in a distributed file system
US10445296B1 (en) 2014-12-05 2019-10-15 EMC IP Holding Company LLC Reading from a site cache in a distributed file system
US10951705B1 (en) 2014-12-05 2021-03-16 EMC IP Holding Company LLC Write leases for distributed file systems
US10452619B1 (en) 2014-12-05 2019-10-22 EMC IP Holding Company LLC Decreasing a site cache capacity in a distributed file system
US10021212B1 (en) 2014-12-05 2018-07-10 EMC IP Holding Company LLC Distributed file systems on content delivery networks
US10423507B1 (en) 2014-12-05 2019-09-24 EMC IP Holding Company LLC Repairing a site cache in a distributed file system
US10963430B2 (en) 2015-04-01 2021-03-30 Dropbox, Inc. Shared workspaces with selective content item synchronization
US9922201B2 (en) 2015-04-01 2018-03-20 Dropbox, Inc. Nested namespaces for selective content sharing
US9571573B1 (en) 2015-10-29 2017-02-14 Dropbox, Inc. Peer-to-peer synchronization protocol for multi-premises hosting of digital content items
CN105701168B (zh) * 2015-12-31 2019-07-12 北京金山安全软件有限公司 一种数据存储方法、装置及电子设备
JP6736943B2 (ja) * 2016-03-29 2020-08-05 富士通株式会社 情報処理装置、情報処理方法、情報処理プログラム及び情報配信システム
CN105827721B (zh) * 2016-04-20 2019-06-21 努比亚技术有限公司 一种数据传输方法及装置
US11290531B2 (en) 2019-12-04 2022-03-29 Dropbox, Inc. Immediate cloud content item creation from local file system interface

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02231843A (ja) * 1989-03-03 1990-09-13 Fujitsu Ltd システム一括管理方式
JPH04104342A (ja) * 1990-08-24 1992-04-06 Hitachi Ltd データ分散管理方法及び管理システム
JP2000122910A (ja) * 1998-10-20 2000-04-28 Dainippon Printing Co Ltd データベースシステム、及びそのためのアクセス管理装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2583010B2 (ja) * 1993-01-07 1997-02-19 インターナショナル・ビジネス・マシーンズ・コーポレイション 多層インデックス構造におけるローカルインデックステーブル及び大域インデックステーブルの間の一貫性を維持する方法
US5542087A (en) * 1993-10-15 1996-07-30 Hewlett-Packard Company Linear hashing for distributed records
US5930801A (en) * 1997-03-07 1999-07-27 Xerox Corporation Shared-data environment in which each file has independent security properties
US6173415B1 (en) * 1998-05-22 2001-01-09 International Business Machines Corporation System for scalable distributed data structure having scalable availability
US6195680B1 (en) * 1998-07-23 2001-02-27 International Business Machines Corporation Client-based dynamic switching of streaming servers for fault-tolerance and load balancing
US20020087559A1 (en) * 1999-01-11 2002-07-04 PRATT John Method and system for retrieving documents using hyperlinks
US6594651B2 (en) * 1999-12-22 2003-07-15 Ncr Corporation Method and apparatus for parallel execution of SQL-from within user defined functions
KR100831768B1 (ko) * 2000-02-04 2008-05-27 리슨.컴 .인크. 매체 데이터 획득 방법, 분산 매체 네트워크 및 메타 데이타 서버를 위한 시스템
US6973473B1 (en) * 2000-05-31 2005-12-06 International Business Machines Corporation Method, system and program products for managing identifiers of components of a clustered environment
US6801937B1 (en) * 2000-05-31 2004-10-05 International Business Machines Corporation Method, system and program products for defining nodes to a cluster
US6757753B1 (en) * 2001-06-06 2004-06-29 Lsi Logic Corporation Uniform routing of storage access requests through redundant array controllers
WO2003034669A1 (en) * 2001-10-17 2003-04-24 British Telecommunications Public Limited Company Network location management system
US7571206B2 (en) * 2002-08-12 2009-08-04 Equallogic, Inc. Transparent request routing for a partitioned application service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02231843A (ja) * 1989-03-03 1990-09-13 Fujitsu Ltd システム一括管理方式
JPH04104342A (ja) * 1990-08-24 1992-04-06 Hitachi Ltd データ分散管理方法及び管理システム
JP2000122910A (ja) * 1998-10-20 2000-04-28 Dainippon Printing Co Ltd データベースシステム、及びそのためのアクセス管理装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007074240A (ja) * 2005-09-06 2007-03-22 Toshiba Corp コンテンツリスト出力装置および方法
JP2013503390A (ja) * 2009-08-28 2013-01-31 アップル インコーポレイテッド コンテンツ配信ネットワーク上のチャンク形式ダウンロード
JP2012060473A (ja) * 2010-09-09 2012-03-22 Fuji Xerox Co Ltd データ中継システム、中継装置、およびプログラム
JP2014235514A (ja) * 2013-05-31 2014-12-15 富士ゼロックス株式会社 処理指示装置、処理装置およびプログラム

Also Published As

Publication number Publication date
CN1873641A (zh) 2006-12-06
CN100422994C (zh) 2008-10-01
JP4729987B2 (ja) 2011-07-20
US20060277196A1 (en) 2006-12-07

Similar Documents

Publication Publication Date Title
JP4729987B2 (ja) データ管理システム及びデータサーバ
JP4852938B2 (ja) データサーバ及びデータ管理方法及びプログラム
US10511567B2 (en) Network resource identification
JP5404766B2 (ja) ルーティングをリクエストするための方法とシステム
US6092204A (en) Filtering for public databases with naming ambiguities
RU2409846C2 (ru) Организация ресурсов в коллекции, способствующая более эффективному и надежному доступу к ресурсам
JP2006323721A (ja) データ管理システム及びデータサーバ及びデータ管理方法
US8321503B2 (en) Context-specific network resource addressing model for distributed services
US8438614B2 (en) Communication system, relay apparatus, terminal apparatus and computer readable medium
JP2007108905A (ja) ファイルサーバ、ファイル提供方法及びプログラム
US9705843B2 (en) Method and system for domain name system based discovery of devices and objects
JP2006252085A (ja) ユーザ識別情報を変換するファイルサーバ
KR19980041908A (ko) 컴퓨터화된 자원 명칭 도출 메카니즘
US5961645A (en) Filtering for public databases with naming ambiguities
JP6540063B2 (ja) 通信情報制御装置、中継システム、通信情報制御方法、および、通信情報制御プログラム
JP2007072524A (ja) データサーバ及びデータ管理方法及びプログラム
JP2006338436A (ja) データ管理システム、データサーバ、およびデータ管理方法
JP2009116496A (ja) ディレクトリサーバ装置、ディレクトリサーバプログラム、ディレクトリサービスシステム、およびディレクトリサービス管理方法
JP4426183B2 (ja) 論理経路制御システム
Kurnikov et al. Data to the People
KR101109524B1 (ko) 복수의 cdn 사업자를 통한 컨텐츠 분배시스템 및 방법, 그 컨텐츠 제공자 네임서버
Lentini et al. Namespace Database (NSDB) Protocol for Federated File Systems
KR20100054660A (ko) 복수의 cdn 사업자를 통한 컨텐츠 분배시스템 및 방법, 그 컨텐츠서버
Lentini et al. RFC 7532: Namespace Database (NSDB) Protocol for Federated File Systems
Muldner et al. Building Infrastructure for Mobile Software Agents

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080317

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110126

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110404

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

Free format text: PAYMENT UNTIL: 20140428

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees