JP5584910B2 - 分散ストレージ - Google Patents

分散ストレージ Download PDF

Info

Publication number
JP5584910B2
JP5584910B2 JP2009511432A JP2009511432A JP5584910B2 JP 5584910 B2 JP5584910 B2 JP 5584910B2 JP 2009511432 A JP2009511432 A JP 2009511432A JP 2009511432 A JP2009511432 A JP 2009511432A JP 5584910 B2 JP5584910 B2 JP 5584910B2
Authority
JP
Japan
Prior art keywords
server
file
storage
distributed storage
manager
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.)
Expired - Fee Related
Application number
JP2009511432A
Other languages
English (en)
Other versions
JP2009537918A (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.)
Noryan Holding Corp
Original Assignee
Noryan Holding 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
Priority claimed from US11/439,784 external-priority patent/US8255420B2/en
Priority claimed from EP06114443.2A external-priority patent/EP1860846B1/en
Application filed by Noryan Holding Corp filed Critical Noryan Holding Corp
Publication of JP2009537918A publication Critical patent/JP2009537918A/ja
Application granted granted Critical
Publication of JP5584910B2 publication Critical patent/JP5584910B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication

Description

発明の分野
この発明は分散ストレージシステム、分散ストレージ管理システム、および分散ストレージへのアクセスを管理するためのサーバに関する。
背景技術
個人および商業利用のためのデータストレージに対する要求が絶えず増加している。
たとえば、デジタルカメラおよび音楽再生機のようなデジタル記録および再生装置が多く出回るにつれて、(たとえば10ギガバイトよりも多い)多量のデータを保存することを必要とする個人ユーザの数が増加する。さらに、これらの装置が用いられるにつれて、生成またはダウンロードされるコンテンツの量が蓄積されるので、保存されるべきデータの量も増加する。
データストレージに対する要求も変化している。
従来は、デジタル写真のようなデータファイルは、たとえば家のコンピュータ上のような単一の場所にある磁気ハードディスクのようなストレージ装置に保存されてきた。しかしながらユーザは、彼らのデータに対して遠距離から、さらには移動中において、アクセスすることができることを次第に望むようになってきた。さらにユーザは、彼らのデータを他のユーザと共有することを望む場合がある。
1つより多いストレージ装置を含むとともに、仮想ファイル(virtual file)システムを用いて管理される分散ストレージが、これらの問題に対する解決策を提供し得る。
ストレージ装置は付加的な容量を提供するよう加えられ得る。さらにデータは、時間とともに変化さえし得る多くのストレージ装置にわたって物理的に異なるように保存され得るが、ユーザにとっては、彼らのデータが単一のアクセス可能な「場所」に保存されるように思われる。さらに、ユーザは、友人または仕事の同僚のような他のユーザに、彼または彼女のファイルを読込んだり、さらには更新させたりさえし得るアクセス権限を与え得る。
仮想ファイルシステムを用いる従来の分散ストレージシステムが公知である。
US−A−5873085は、複数のサーバを有するシステムを記載し、各サーバはそれぞれのファイルシステムを管理するとともに、少なくとも1つのサーバは仮想ファイル管理システムを運用する。当該仮想ファイル管理システムは、仮想ファイル識別子、サーバ名、および各仮想ファイルについての実際のファイル名を保存する管理テーブルを含む。あるサーバがクライアントから、指定されたファイルを読込むまたは修正する要求を受取り、かつ当該サーバがそのファイルを保持しないならば、サーバは他のどのサーバが当該ファイルを保存しているかを特定し、当該他のサーバがクライアントに直接応答するよう命令するように要求を修正し、この修正された要求を他のサーバに転送する。
このシステムには、サーバもデータを保存するという欠点がある。これにより、任意の1つのサーバに加えられ得るストレージ量を制限し得る。さらに他のサーバを加えることで、付加的なストレージを提供し得るが、これは単に付加的なストレージ装置を加えるよりも高額の費用がかかる。
US−A−20050246393は、仮想ファイルシステムと、複数のインテリジェントストレージノード、および指定されたオブジェクトファイルを保存するインテリジェントストレージノードを特定およびそこにアクセスするための複数の制御ノード(「分散オブジェクトストレージマネージャ」とも言う)を有するストレージクラスタとを有するネットワークストレージシステムを記載する。各分散オブジェクトストレージマネージャは、インテリジェントストレージノードに保存されるオブジェクトファイルの位置を特定するルックアップテーブルと、インテリジェントストレージノードの全体の容量および健全性に関する情報を保存する状態テーブルとを維持する。状態テーブルは、新しいオブジェクトファイルを保存するようインテリジェントストレージノードを選択するのに用いられる。ネットワークストレージシステムが新しいオブジェクトファイルにデータを保存する要求を受取ると、ロードバランシングファブリックが可用性に基づき分散オブジェクトストレージマネージャのうちの1つを選択し、当該要求を選択された分散オブジェクトストレージマネージャに転送する。立ち代わって、分散オブジェクトストレージマネージャは、インテリジェントストレージノードを選択する。
異なる分散オブジェクトストレージマネージャは、新しいオブジェクトファイルを保存することを担う。したがって、各分散オブジェクトストレージマネージャは、少なくとも初期では、自身が担うファイルについての情報のみを保存する。したがって、分散オブジェクトストレージマネージャは、自身が担わない所与のファイルへのアクセス要求を受取ると、当該ファイルを求める要求をインテリジェントストレージノードにブロードキャスト送信する。したがって、インテリジェントストレージノードには、このような要求を扱う十分な処理能力が与えられなければならない。これにより、ストレージノードを加えることがさらに難しくなる。
この発明は、分散ストレージに対するアクセスを管理するための改善されたサーバ、したがって改善された分散ストレージシステムを提供することに努める。
発明の概要
この発明の第1の局面に従えば、複数のストレージ装置を含む分散ストレージへのアクセスを管理するためのサーバが与えられ、このサーバは、少なくとも1つの他のサーバと通信し、これらサーバのうちどれが、データを保存する際に用いられることになる分散ストレージの部分を選択するかを判断するよう構成される。
したがって、単一のサーバがデータの保存を制御し、これにより、ストレージの同時割当ての問題を避けるのを支援するとともに、当該データについての情報が単一のメタデータサーバに秩序立って保存されることを可能にするのを支援する。
このサーバは、分散ストレージにデータを保存する要求をクライアントから受取るための第1の制御部と、当該データを保存する際に用いる分散ストレージの部分を選択するための第2の制御部とを含んでもよく、第2の制御部は、少なくとも1つの他の第2の制御部と通信し、これら第2の制御部のどれが、用いられることになる分散ストレージの部分を選択するかを判断するよう構成されている。
このサーバは、用いられることになる分散ストレージの部分を別のサーバが選択することになるという判断に応答して、当該他のサーバから分散ストレージの部分の識別情報を受取り、かつ用いられることになる分散ストレージの部分を自身が選択することになるという判断に応答して、分散ストレージの部分を選択するよう構成されてもよい。
このサーバは、分散ストレージの部分の中におけるストレージ装置のうちの1つを選択するよう構成されてもよい。
このサーバは、第2の制御部からの命令に応答して、分散ストレージの部分の中のストレージ装置のうちの1つを選択するための第3の制御部をさらに含んでもよい。
このサーバは、ファイルが1つのストレージ装置に保存された後、分散ストレージの部分の中の他のストレージ装置においてファイルを複製させるよう構成されてもよい。このサーバは、ファイルが保存された後、ファイルに関する情報をメタデータサーバに送信するよう構成されてもよい。このサーバは、ファイルに対応する仮想ファイル識別子をメタデータサーバから受取り、仮想ファイル識別子をクライアントに対して送信するよう構成されてもよい。
このサーバは、あるファイルを読込または更新する要求に応答して、当該ファイルに関する情報を求める要求を少なくとも1つのメタデータサーバのいずれか1つに送信するよう構成されてもよい。
ストレージ装置の少なくとも1つは、ストレージアクセスネットワークのような遠隔のストレージシステムによって与えられてもよい。
この発明の第2の局面に従うと、複数のアクセス管理サーバと、分散ストレージに保存されるファイルについての情報を保存するためのメタデータサーバとを含む分散ストレージ管理システムが与えられる。
メタデータサーバはアクセス管理サーバから分離されてもよい。
分散ストレージ管理システムは少なくとも1つの追加のメタデータサーバをさらに含んでもよく、アクセス管理サーバは各々、ファイルに関する情報をメタデータサーバに送るが、当該少なくとも1つの追加のメタデータサーバには送らないように構成されている。アクセス管理サーバは各々、ファイルに関する情報を求める要求を当該少なくとも1つの追加のメタデータサーバのいずれかに送るよう構成されてもよい。
この発明の第3の局面に従えば、分散ファイル管理システムと、複数のストレージ装置を含む分散ストレージとを含む分散ストレージシステムが与えられる。
当該ストレージ装置は複数のタイプのストレージ装置を含む。
この発明の第4の局面に従えば、複数のストレージ装置を含む分散ストレージへのアクセスを管理するためのサーバを運用する方法が与えられ、当該方法は、少なくとも1つの他のサーバと通信し、これらサーバのうちどれが、データを保存する際に用いられることになる分散ストレージの部分を選択するかを判断することを含む。この方法は、分散ストレージにデータを保存する要求をクライアントから受取ることを含んでもよい。
この方法は、第1の制御部が、分散ストレージにデータを保存する要求を受取ることと、第2の制御部が、少なくとも1つの他の第2の制御部と通信し、これら第2の制御部のどれが、用いられることになる分散ストレージの部分を選択するかを判断することとを含んでもよい。
この方法は、用いられることになる分散ストレージの部分を別のサーバが選択することになると判断することと、用いられることになる分散ストレージの部分の識別情報を他のサーバから受取ることとを含んでもよい。この方法は、サーバが、用いられることになる分散ストレージの部分を選択することになると判断することと、用いられることになる分
散ストレージの部分を選択することとを含んでもよい。この方法は、用いられることになる分散ストレージの部分の中におけるストレージ装置のうちの1つを選択することを含んでもよい。この方法は、分散ストレージの選択された部分に当該データを保存することを含んでもよい。
この方法は、ファイルが1つのストレージ装置に保存された後、分散ストレージの部分の中の他のストレージ装置においてファイルを複製させることをさらに含んでもよい。この方法は、ファイルが保存された後、ファイルに関する情報をメタデータサーバに送信することを含んでもよい。この方法は、ファイルに対応する仮想ファイル識別子をメタデータサーバから受取ることを含んでもよく、仮想ファイル識別子をクライアントに対して送信することを含んでもよい。
この方法は、あるファイルを読込または更新する要求を受取ることと、当該ファイルに関する情報を求める要求を少なくとも1つのメタデータサーバのいずれか1つに送信することとを含んでもよい。
この発明の第5の局面に従えば、コンピュータによって実行される際に、コンピュータに上記の方法を実行させる命令を含むコンピュータプログラムが与えられる。
この発明の第6の局面に従えば、上記のコンピュータプログラムを保存するコンピュータ読取可能媒体が与えられる。
添付の図面を参照して、この発明の実施例を例示目的で記載する。
発明の実施例の詳細な説明
図1を参照すると、この発明に従った分散ストレージシステム1が示される。クライアント2,3、この例ではデスクトップパーソナルコンピュータ2および携帯電話ハンドセット3、がインターネットのような通信ネットワーク4を介して分散ストレージシステム1にアクセスし得る。明確さのために、2つのクライアント2,3しか示さないが、1つのクライアントか、または2つよりも多いクライアントがシステム1にアクセスし得るということは理解されるであろう。ネットワーク4は、公衆地上モバイルネットワーク(図示せず)または無線ローカルエリアネットワーク(図示せず)を含む複数の無線および有線ネットワークを含んでもよい。
分散ストレージシステム1は、分散ストレージへのアクセスを管理するための第1、第2、および第3のサーバ51,52,53を含む(サーバ51,52,53を以下では「ファイルサービスプロバイダ」と呼ぶ)。システム1は、たとえば1つもしくは2つといった、上記よりも少ないか、または上記よりも多い数のファイルサービスプロバイダを有してもよい。ファイルサービスプロバイダ51,52,53は、第3のファイルサービスプロバイダ53によって与えられるハードディスクドライブの形態である第1のストレージ装置61のようなストレージ装置6とローカルに通信するか、または通信ネットワーク4もしくはイントラネットのような別の通信ネットワーク7を介してリモートに通信する。たとえば、ストレージエリアネットワーク(storage area network;SAN)8が第2のストレージ装置62を提供してもよく、ネットワーク接続ストレージ(network attached storage;NAS)9が第3のストレージ装置63を提供してもよく、ファイルサーバ63が第4のストレージ装置64を提供してもよい。ストレージ装置6の数は異なってもよい。たとえば、SAN8またはNAS9は、1つより多いストレージ装置を提供し得、および/または1つより多いSANもしくはNASが与えられてもよく、その各々は少なくとも1つのストレージ装置6を提供する。ストレージ装置6を提供するシステムの他の形態、たとえ
ば共用インターネットファイルシステム(common internet file systems;CIFS)(図示せず)が用いられ得、光学ディスク(たとえばDVD)ドライブおよびUSBドライブが用いられてもよい。ストレージ装置6の数は時とともに変わり得る。たとえば、ストレージ装置6は加えられてもよく、または取除かれてもよい。ストレージ装置6の配置も変化し得る。
後でさらに詳細に説明するように、ストレージ装置6は集合的に単一のストレージボリューム26(図4)を提供し、クラスタ27(図4)の中に配される。
ファイルサービスプロバイダ5は、仮想ファイル参照と実際のファイルとの間のマッピングのために、通信ネットワーク7を介して第1のメタデータサーバ111および随意の第2のメタデータサーバ112と通信する。ファイルサービスプロバイダ5は、第1のメタデータサーバ111からメタデータを読込み、そこへメタデータを書込むことができる。しかしながら、ファイルサービスプロバイダ51,52,53は、第2のメタデータサーバ112からはメタデータを読込むことしかできない。第1および第2のメタデータサーバ111,112は、以下ではそれぞれ「アクティブ」および「パッシブ」メタデータサーバ111,112と呼ぶ。アクティブメタデータサーバ111は、たとえば周期的に、要求に応じて、または所定のトリガに応答して、メタデータをパッシブメタデータサーバ112にコピーしてもよい。1つより多いパッシブメタデータサーバ112が設けられてもよい。さらに、各メタデータサーバ111,112は、2つ以上のサーバの間に分散されてもよい。
図2をさらに参照すると、ファイルサービスプロバイダ5およびメタデータサーバ11は、それぞれのコンピュータシステム12上にてソフトウェアで実現される。各コンピュータシステム12は、バス16によって動作可能なように接続されるプロセッサ13、メモリ14、および入力/出力(I/O)インターフェイス15を含む。コンピュータシステム12は1つより多いプロセッサを含んでもよい。I/Oインターフェイス15は、ネットワークインターフェイス17、ハードディスクドライブの形態であるストレージ18、および、随意であるが、取外し可能なストレージ19に動作可能に接続される。キーボード(図示せず)およびディスプレイ(図示せず)のような周辺機器を含む他の要素が一時的または恒久的に設けられてもよい。
コンピュータシステム12によって実行されると、コンピュータシステム12がファイルサービスプロバイダまたはメタデータサーバの処理を与えるようにさせるコンピュータプログラムコード201,202がハードドライブ18上に保存され、プロセッサ13による処理のためにメモリ14にロードされる。コンピュータプログラムコード201,202は、取外し可能なストレージ19上に保存され、そこから転送されてもよく、またはリモートソース(図示せず)からネットワークインターフェイス17を通じて転送されてもよい。
図1および図3を参照すると、各ファイルサービスプロバイダ5は、クライアント2,3とインターフェイス接続するための第1のサービスまたは制御部21と、ストレージクラスタ27(図4)を選択するための第2のサービスまたは制御部22と、クラスタ27(図4)の中のストレージ装置6を選択するための第3のサービスまたは制御部23と、クラスタ27(図4)の中およびそれら同士の間でのデータの複製を制御するための第4のサービスまたは制御部24と、メタデータサーバ111,112とインターフェイス接続するための第5のサービスまたは制御部25とを含む。
第1のサービス21は、ファイルを書込および読込するといったようにファイルにアクセスする、クライアント2,3から受取られた要求を管理し、かつ図3に示される他のコ
ンポーネントも管理する。第1のサービス21は、ここでは「ファイルサービスマネージャ」と呼ばれる。
第2のサービス22は、データを書込む際にクラスタ27(図4)を選択し、ここでは「割当マネージャ」と呼ばれる。後でさらに詳細に説明するように、割当マネージャ22は他の割当マネージャ22と通信する。1つの割当マネージャ22M(図4)は、「マスタ割当マネージャ」と呼ばれ、クラスタ27(図4)を選択するのを担うよう選ばれ、その他の割当マネージャ22は、マスタ割当マネージャ22M(図4)のためのプロキシとして動作する。選ばれた割当マネージャ22Mは変更し得る。
書込または読込処理において、第3のサービス23はあるストレージ装置6を選択し、その可用性を確認する。ここでは、第3のサービス22は「クラスタマネージャ」と呼ばれる。クラスタマネージャ23は、1つのストレージ装置6におけるファイルストリームを他のストレージ装置6に複製することをトリガする。クラスタマネージャ23はさらに、処理量を増加させるよう、ストレージ装置6同士の間で読込処理を分散させる。クラスタマネージャ23はさらに、クライアントからストレージ装置への処理量に関するデータを集める。処理量データは、クライアント2,3に対して、より速い応答を有するストレージ装置6を選択するよう、書込または読込処理中に用いられ得る。
第4のサービス24はここでは「複製サービス」と呼ばれる。先に説明したように、複製サービス24はクラスタ27(図4)の中、およびクラスタ27同士の間でデータの複製を制御する。クラスタマネージャ23は、ストレージ装置6のいずれかが利用可能でない場合、複製トランザクションのログを取る。
第5のサービス25は、ここでは「メタデータサーバインターフェイス」と呼ばれる。メタデータサーバインターフェイス25は、たとえばファイルについての情報のようなメタデータをアクティブメタデータサーバ111に送り、アクティブまたはパッシブメタデータサーバ111,112からメタデータを抽出する。
図4を参照すると、ストレージ装置6は単一のストレージボリュームまたはストレージスペース26を提供する。ストレージ装置6はクラスタ27の中に配され、クラスタ27では、各ストレージ装置6が同じクラスタ27にある別のストレージ装置6と同じデータを保存する。すなわち、1つのクラスタ27におけるストレージ装置6同士は互いのミラーである。明確さのため、2つのクラスタ27のみを示す。一方のクラスタ27において、ストレージ装置6は、たとえばネットワークアドレスのような異なるアクセス構成を有する。各ファイルサービスプロバイダ5は、各クラスタ27における少なくとも1つのストレージ装置6にアクセスし得る。
メタデータサーバ111,112は、第1、第2、第3、第4、および第5のメタデータテーブル28,29,30,31,32を保存する。メタデータは、仮想ファイル参照を物理ファイル参照にマッピングするための情報と、(ファイル圧縮およびウイルスチェックのような)フィルタが適用される前のファイルの属性とを含む。メタデータはさらに、フォルダツリー、フォルダの中身のデータ、さらには各ファイルおよびフォルダについてのアクセス制御リストのような他の情報を含む。
第1のテーブル28(以下、「仮想ファイルシステムエンティティテーブル」と呼ぶ)は、仮想エンティティ識別子33と、クラスタ識別子34と、ファイルまたはディレクトリのような各エンティティについてのエンティティタイプ35と、物理ストレージ識別子36におけるパスとを保存する。
第2のテーブル29(以下「仮想ファイルシステムアクセス制御リスト」と呼ぶ)は、仮想エンティティ識別子37と、各エンティティについてのアクセスリスト38とを保存し、ユーザ、すなわちクライアントユーザのセキュリティ権限を規定する。仮想ファイルシステムアクセス制御リスト29は、エンティティに関するアクセス権限のセットとともに、読込、書込、作成、削除、および変更権限といったようなエンティティに対するアクセス権限を有するユーザをリストアップする。
クライアント2,3が送った、エンティティへのアクセスの各要求は、ユーザの識別情報を特定する。したがって、ファイルサービスプロバイダ5は、所与のエンティティへのアクセスの要求を受取るたびごとに、たとえば当該エンティティおよびユーザに関するリスト29の部分を抽出することによって、仮想ファイルシステムアクセス制御リスト29に問合せを行ない、これによりユーザのアクセス権限を照合する。
第3のテーブル30(以下、「仮想ファイルシステムエンティティ共有リスト」と呼ぶ)は、各エンティティについて、仮想エンティティ識別子39と、アクセスリスト40とを保存し、ファイルの閲覧を共有するよう登録ユーザによって招待される登録されていないユーザ(「共有閲覧者」と呼ぶ)のためのアクセス権限を規定する。仮想ファイルシステムアクセス制御リスト30は、アクセス権限が通常、たとえば読込のみに制限されるという点を除いて、仮想ファイルシステムアクセス制御リスト29に類似する。
共有閲覧者は、登録ユーザとは異なった形で識別および認証される。識別および認証は、分散ストレージシステム1と確立された信頼関係を有する外部のシステム(図示せず)によって行なわれ得る。
仮想ファイルシステムアクセス制御リスト30は、たとえば、共有閲覧者が分散ストレージシステム1にアクセスすることを許可されない場合、省略されてもよい。
第4のテーブル31(以下、「論理クラスタメタデータテーブル」と呼ぶ)は、各クラスタ27について、(論理)クラスタ識別子41と(物理)ストレージ装置識別子42とを保存する。論理クラスタメタデータテーブル31は、クラスタマネージャ23がクラスタ27におけるストレージ装置6を識別することを可能にする。
第5のテーブル32(以下、「論理クラスタリレーションテーブル」と呼ぶ)は、各クラスタ27について、第1のクラスタ識別子43、第2のクラスタ識別子44、および関係タイプ45を保存し、かつクラスタ27同士の間の関係を記載する。たとえば、論理クラスタリレーションテーブル32は、第1のクラスタ27Aが第2のクラスタ27Bの複製物(すなわちミラー)であると特定してもよい。代替的には、論理クラスタリレーションテーブル32は、第1のクラスタ27Aが、事前に規定された基準に従って保存された、第2のクラスタ27Bに保存されたファイルについてのアーカイブであると特定してもよい。アーカイブは、ほとんどアクセスされないファイルか、または特定の日時より前に作成されたファイルを含み得る。したがって、第1のクラスタ27Aは、第2のクラスタ27Bにアーカイブされるファイルを保存する必要はない。アーカイブされたファイルは、たとえばテープストレージシステムに保存されてもよい。
以下にさらに詳細に記載されるように、システム1は、ファイルサービスをクライアント2,3に提供するよう用いられ得る。要求および応答はセッションなしで交換されるため、異なるファイルサービスプロバイダ5は、同じクライアント2,3からの異なる要求を扱い得る。したがって、ファイルサービスプロバイダ5は、クライアント2,3の状態についてのいかなる情報も保存する必要はない。その代わり、クライアント2,3は、自身の状態についての情報を保存し得、かつファイルサービスプロバイダ5に要求を送る際
にこの情報を供給し得る。たとえば、要求は、ユーザが仮想ファイルシステムアクセス制御リスト29に保存されるアクセス権限に対して照合されるのに必要とされる認証情報を含んでもよい。
書込(ファイルの作成)
図4、図5a、および図5bを参照して、ここでファイル書込処理を記載する。
クライアント、この例ではパーソナルコンピュータ2、がファイル書込要求46をファイルサービスプロバイダ5のファイルサービスマネージャ21に送る(ステップW1)。ファイルサービスプロバイダ5は、ルーティングメカニズムに従ってか、またはネットワーク4(図1)におけるロードバランサ(図示せず)によって選択される。ファイル書込要求46は、ファイルデータ48と、ファイルタイプおよびファイルサイズのようなファイル属性49とを含む、書込まれることになるファイル47を含む。
ファイルサービスマネージャ21は、クラスタ割当要求50を割当マネージャ22に転送する(ステップW2)。要求50は、クラスタ27を選択するのに用いられてもよいファイル属性49を含んでもよい。
マスタ割当マネージャ22Mは、たとえばファイル属性49、および/もしくはクラスタ属性、および利用可能なスペースおよび利用率といった状態(図示せず)に基づくか、または総当りといったような他の何らかの基準で、クラスタ27を選択する(ステップW3)。
クラスタ27が選択される前に、割当マネージャ22は、自身がマスタ割当マネージャ22Mであるかどうか判断する。割当マネージャ22は、マスタ割当マネージャ22Mであるならば、クラスタ27を選択する。そうでなければ、割当マネージャ22は要求をマスタ割当マネージャ22Mに転送し、マスタ割当マネージャ22Mがクラスタ27を割当て、クラスタ識別子を返す。
割当マネージャ22は、選択されたクラスタ27の中のストレージ装置6を選択するよう、命令51でクラスタマネージャ23を呼出す(ステップW4)。クラスタマネージャ23はあるストレージ装置6を選択する(ステップW5)。クラスタマネージャ23は、ファイルサービスマネージャ21とストレージ装置6との間の最も高いネットワーク可用性に基づき当該選択を行なう。ネットワーク可用性は、割当マネージャ22とクラスタマネージャ23とによって所定の時間、たとえば周期的、に集められるネットワーク状態情報を用いて判断され得る。
クラスタマネージャ23は、ストレージ装置6における所与のパスを有するファイルストリーム53を作成するよう、命令52をストレージ装置6に送る(ステップW6)。ストレージ装置6はファイルストリーム53を作成する(ステップW7)。ユニークファイルハンドラーが当該ファイルストリーム53と関連付けられ、それはストレージ装置6におけるファイルストリーム53の中の第1の書込可能ブロックを(ポインタPで)指し示す。(ファイルストリーム53を識別する)ファイルハンドラーの識別情報54がクラスタマネージャ23に返される(ステップW8)。
クラスタマネージャ23は、ファイルハンドラー識別情報54と、パス55と、クラスタ識別情報56とを割当マネージャ22に返す(ステップW9)。立ち代わって、割当マネージャ22はこの情報をファイルサービスマネージャ21に返す(ステップW10)。
ファイルサービスマネージャ21は、ファイルデータ48に対して、圧縮および/また
はウイルスチェックのような書込フィルタを適用し、フィルタされたファイルデータ57を開かれたファイルストリーム53に書込む(ステップW12)。ファイルストリーム53は、フィルタされたファイルデータ57で充填される。ブロックが充填されると、ストレージ装置は、次の利用可能なフリーブロックを指し示すようポインタPを前進させる。
フィルタされたファイルデータ57がひとたび書込まれると、ファイルサービスマネージャ21は、ファイルストリーム53を閉じるよう、命令59をクラスタマネージャ23に送る(ステップW13)。クラスタマネージャ23は、ファイルストリーム53を閉じるよう命令60をストレージ装置6に送る(ステップW14)。ストレージ装置6はエンドオブファイル(end of file;EOF)マーカ61をファイルストリーム52に書込み(ステップW15)、ポインタを解放し、ストレージ装置6が提供するファイル割当テーブルのようなストレージシステム割当テーブル(図示せず)を更新する。
クラスタマネージャ23は次いで、複製サービス24(図2)に命令(図示せず)を送ることにより、保存されたファイルストリーム53を同じクラスタ27における他のストレージ装置6に複製することをトリガする(ステップW16)。
ファイルサービスマネージャ21は、メタデータサーバインターフェイス25を介して、メタデータを仮想ファイルシステムエンティティテーブル28と、仮想ファイルシステムアクセス制御リスト29と、仮想ファイルシステムエンティティ共有リストテーブル30と、論理クラスタメータテーブル31と、論理クラスタリレーションテーブル32とに必要に応じて書込むよう、命令62をメタデータサーバ111に送る。メタデータサーバ111は、ファイル情報を書込み(ステップW18)、仮想ファイル識別子63をファイルサービスマネージャ21に返す(ステップW19)。ファイルサービスマネージャ21は、ファイルが仮想ファイル識別子63を含むよう書込まれたという確認情報64をクライアント2に送る(ステップW20)。
先に述べたように、割当マネージャ22は、自身がマスタ割当マネージャ22Mであるかどうか判断する。ここで、これを達成する処理をさらに詳細に記載する。
マスタ割当マネージャの選択
図4および図6を参照すると、割当マネージャ22は、クラスタ27を割当てる要求48(図5a)を受取る(ステップS1)。割当マネージャ22は、マスタ割当マネージャ22Mが既知であるかどうかチェックする(ステップS2)。
割当マネージャ22がマスタ割当マネージャ22Mの識別情報を知っている場合、当該割当マネージャ22は自身がマスタ割当マネージャ22Mであるかどうか判断する(ステップS3)。そうであるならば、割当マネージャ22はこの要求を処理し、上述したようにクラスタ27を選択する(ステップS4)。そうでない場合、割当マネージャ22はこの要求をマスタ割当マネージャ22Mに転送する(ステップS5)。割当マネージャ22は、マスタ割当マネージャ22Mからクラスタ識別子を受取る。
割当マネージャ22がマスタ割当マネージャ22Mの識別情報を知らない場合、割当マネージャ22は、マスタの識別情報を求めるクエリ65を他の割当マネージャ22に送る。割当マネージャ22は返事を待ち(ステップS7)、当該クエリが「タイムアウト」するかどうか、すなわち所定の期間が過ぎる前に応答が受取られるかどうかチェックする(ステップS8)。
割当マネージャ22は、クエリがタイムアウトする前に返事66を受取る場合、マスタ割当マネージャ22Mの識別情報を保存し(ステップS9)、要求をマスタ割当マネージ
ャ22Mに転送する(ステップS5)。
割当マネージャ22は、クエリがタイムアウトする前に返事を受取らなかった場合、自身がマスタであると表明するメッセージ67を送る(ステップS11)。割当マネージャ22は異議を待ち(ステップS11)、メッセージ67がタイムアウトするかどうかをチェックする(ステップS12)。
要求がタイムアウトする前に何も異議を受取らなければ、割当マネージャ22は自身をマスタ割当マネージャ22Mとして記録し(ステップS13)、要求を処理し、クラスタを選択する(ステップS4)。
しかしながら、異議68を受取った場合、割当マネージャ22は識別クエリ65を他の割当マネージャ22に再送する(ステップS6)。
割当マネージャ22は、クエリ65およびメッセージ67を連続的に検出しようとする。
クエリ65またはメッセージ67を受取り、かつ自身がマスタ割当マネージャ22Mである場合、それは応答66または異議68をそれぞれ送る。マスタ割当マネージャ22Mは、別の割当マネージャ22からメッセージ67を受取った場合か、またはファイルサービスプロバイダ5が不活性化される、たとえばシャットダウンされる場合に、降格され得る。
書込(ファイルの更新)
図4、図7a、および図7bを参照して、ここで、ファイル更新処理を記載する。
ファイル更新処理は、上述したファイル書込処理に類似する。短く言えば、割当マネージャ22は、あるファイルの古いバージョンに割当てられたスペースを解放し、まるで新たに作成されたファイルであるかのように、当該ファイルのより新しいバージョンにスペースを割当て、当該ファイルの新しいバージョンを書込む。
クライアント2は、ファイルサービスプロバイダ5のファイルサービスマネージャ21にファイル更新要求69を送る(ステップU1)。ファイル書込要求69は、新しいファイルデータ71と新しいファイル属性72とを含む更新されたファイル70、および古いファイル、たとえば以前に保存されたファイル47、についての仮想ファイル識別子73を含む。
ファイルサービスマネージャ21は、どのクラスタ27に古いファイルが保存されているかを見つけるよう、クエリ74をアクティブメタデータサーバ111に送る(ステップU2)。代替的には、ファイルサーバマネージャ21はこのクエリ74をパッシブメタデータサーバ112に送ってもよい。アクティブメタデータサーバ111は、古いクラスタ識別子75と、ストレージ装置6におけるパス76と、古いファイル属性77とを返す(ステップU3)。
更新処理(ステップU4からU22)は、前述の書込処理のステップW2からW20と類似した態様で進む。
ファイルサービスマネージャ21はクラスタ割当要求78を割当マネージャ22に転送し(ステップU4)、マスタ割当マネージャ22Mはクラスタ27を選択する(ステップU5)。
割当マネージャ22は、選択されたクラスタ27の中のストレージ装置6を選択するよう、命令79を送る(ステップU6)。クラスタマネージャ23は、ストレージ装置6を選択する(ステップU7)。クラスタマネージャ23は、当該ストレージ装置6において所与のパスを有する新しいファイルストリーム81を作り出すよう、命令80をストレージ装置6に送る(ステップU8)。ストレージ装置6は、ファイルストリーム81を作成し(ステップU9)、新しいファイルハンドラー識別子82をクラスタマネージャ23に渡す(ステップU10)。クラスタマネージャ23は、新しいファイルストリーム81、対応するパス83、およびクラスタ識別子84を割当マネージャ22に返す(ステップU11)。割当マネージャ22は、この情報をファイルサービスマネージャ21に転送する(ステップU12)。
ファイルサービスマネージャ21は、新しいファイルデータ71に対して書込フィルタを適用し(ステップU13)、新しいフィルタされたファイルデータ85を開かれたファイルストリーム81に書込む(ステップU14)。
新しいフィルタされたストリーム85がひとたび書込まれると、ファイルサービスマネージャ21は、当該ファイルストリーム81を閉じるよう命令87をクラスタマネージャ23に送る(ステップU15)。
クラスタマネージャ23は、ファイルストリーム81を閉じるよう命令88をストレージ装置6に送る(ステップU16)。ストレージ装置6は、ファイルストリーム81にエンドオブファイル(EOF)マーカ89を書込み、ポインタを解放し、ストレージ装置ファイルシステム割当テーブル(図示せず)を更新する。
クラスタマネージャ23は、複製サービス24(図2)に命令(図示せず)を送ることにより、同じクラスタ27における他のストレージ装置6にファイルストリーム81を複製することをトリガする(ステップU18)。
ファイルサービスマネージャ21は、メタデータサーバインターフェイス25を介して、必要に応じて、更新されたメタデータを書込むよう、命令90をメタデータサーバ111に送る(ステップU19)。メタデータサーバ111は、更新されたファイル情報を書込み(ステップU20)、新しい仮想ファイル識別子91をファイルサービスマネージャ21に返す(ステップU21)。ファイルサービスマネージャ21は、クライアント2に、ファイルが書込まれたという確認情報92を送る(ステップU22)。
ファイルサービスマネージャ21は、古いファイルを削除するよう、命令93をクラスタマネージャ23に送る(ステップU23)。クラスタマネージャ22は、古いファイルストリームを保存するストレージ装置6を見つけ(ステップU24)、古いファイルストリームを削除するよう命令94をストレージ装置6に送る(ステップU25)。クラスタマネージャ23は、ストレージ装置6の複製をトリガする(ステップU26)。
読込
図4および図8を参照して、ここでファイル読込処理を記載する。
クライアント2は、ファイルサービスプロバイダ5のファイルサービスマネージャ21にファイル読込要求95を送る(ステップR1)。ファイル読込要求95は、たとえば以前に保存されたファイル42または更新されたファイル68のような、ファイルについての仮想ファイル識別子96を含む。
ファイルサービスマネージャ21は、どのクラスタ27に当該ファイルが保存されているかを見つけ出すよう、クエリ97をパッシブメタデータサーバ112に送る(ステップR2)。ファイルサーバマネージャ21は、クエリ97をアクティブメタデータサーバ111に送ってもよい。
パッシブメタデータサーバ112は、クラスタ識別子98と、ストレージ装置6におけるパス99と、ファイル属性100とを返す(ステップR3)。
ファイルサービスマネージャ21は、あるストレージ装置6を選択するよう、要求101をクラスタマネージャ23に送る(ステップR4)。クラスタマネージャ23は、最も高いネットワーク可用性に従って、クラスタ識別子98によって識別されるクラスタ27においてあるストレージ装置6を選択し(ステップR5)、ファイルストリーム103を開くよう、命令102をストレージ装置6に送る(ステップR6)。クラスタマネージャ23は、ストレージ装置6へのアクセスが失敗すると、クラスタ27がミラーリングまたはアーカイブされているかどうか判断するよう論理クラスタ関係テーブル32を参照する。されていれば、クラスタマネージャ23は新しい命令(図示せず)を別のストレージ装置6に送る。ストレージ装置6はファイルストリーム99からファイルデータ104を抽出し、それをクラスタマネージャ23に転送する(ステップR7)。クラスタマネージャ23はファイルデータ104をファイルサービスマネージャ21に渡す(ステップR8)。ファイルサービスマネージャ21は、ファイルデータ104に対して読込フィルタを適用し(ステップR9)、フィルタされたファイルストリーム105をクライアント2に転送する(ステップR10)。
上で説明したように、ユーザは「共有閲覧者」と呼ばれる他のユーザに対してアクセス権限を与え得る。当該ユーザは、ある共有閲覧者にアクセス権限を与え得、たとえばファイルサービスプロバイダ5および仮想ファイルを識別するユニフォームリソースロケータ(uniform resource locator;URL)の形態である、ファイルまたはフォルダにアクセスするためのリンクを含むメッセージを共有閲覧者にEメールまたはテキスト送信することによって、当該ファイルまたはフォルダの場所を共有閲覧者に知らせ得る。共有閲覧者はこのリンクを選択し、これにより、ファイルまたはフォルダを抽出するよう要求をファイルサービスプロバイダ5に送る。
上述したシステム1は、ストレージインフラストラクチャに関わらず、ファイルサービスを提供するよう用いられ得る。それは、冗長サイト(redundant site)にわたって取扱うプラグ可能ストリームを、統合されたストレージスペースにわたる分散ファイル入力および出力に与え得る。
ファイルサービスは、携帯電話ネットワークプロバイダによって、技術インテグレータによって、および会社によって、携帯電話ハンドセットを有するユーザに与えられ得る。
システム1は、ファイルデータからファイルメタデータを切離し、実際のファイルシステム同士、すなわちストレージ装置同士を一体化するので、それらは単一のストレージユニットのように思われる。これにより、ストレージ容量およびストレージ装置処理量などといったストレージ装置の制限を最小限にするまたは免れるのを助け得る。
システム1は、ファイルストリームを取扱い得、取扱のためにファイルストリームをブロックに分ける必要はない。
上述した実施例に対して多くの修正例がなされ得ることは理解されるであろう。
この発明に従った分散ストレージシステムの概略図である。 図1に示されるサーバのためのコンピュータシステムを示す図である。 分散ストレージに対するアクセスを管理するためのサーバのブロック図である。 図1に示されるシステムのブロック図である。 図4に示されるシステムにおいて行なわれるファイル書込処理を示す図である。 図4に示されるシステムにおいて行なわれるファイル書込処理を示す図である。 割当マネージャを運用する方法の処理フロー図である。 図4に示されるシステムにおいて行なわれるファイル更新処理を示す図である。 図4に示されるシステムにおいて行なわれるファイル更新処理を示す図である。 図4に示されるシステムにおいて行なわれるファイル読込処理を示す図である。

Claims (32)

  1. 複数のストレージ装置を含む分散ストレージへのアクセスを管理するためのサーバであって、前記サーバは、少なくとも1つの他の割当マネージャと通信するように構成された割当マネージャを含み他の割当マネージャは各々他のサーバによって与えられ、これら割当マネージャのうちどれが、データを保存する際に用いられることになる分散ストレージの部分を選択するマスター割当マネージャであるかを判断するよう構成されている、サーバ。
  2. 前記分散ストレージにデータを保存する要求をクライアントから受取るための第1の制御部と、
    前記データを保存する際に用いる前記分散ストレージの前記部分を選択するための第2の制御部とを含み、前記第2の制御部は、少なくとも1つの他の第2の制御部と通信し、これら第2の制御部のうちどれが、用いられることになる分散ストレージの前記部分を選択するかを判断するよう構成されている、請求項1に記載のサーバ。
  3. 用いられることになる分散ストレージの前記部分を別のサーバが選択することになるという判断に応答して、前記他のサーバから前記分散ストレージの前記部分の識別情報を受取るよう構成されている、請求項1または請求項2に記載のサーバ。
  4. 用いられることになる分散ストレージの前記部分を自身が選択することになるという判断に応答して、分散ストレージの前記部分を選択するよう構成されている、請求項1または請求項2に記載のサーバ。
  5. 前記分散ストレージの前記部分の中における前記ストレージ装置のうちの1つを選択するよう構成されている、先行する請求項のいずれかに記載のサーバ。
  6. 前記第2の制御部からの命令に応答して、分散ストレージの前記部分の中の前記ストレージ装置のうちの1つを選択するための第3の制御部をさらに含む、請求項2に従属する場合の請求項5に記載のサーバ。
  7. 前記ファイルが1つの前記ストレージ装置に保存された後、前記分散ストレージの前記部分の中の他のストレージ装置において前記データを複製させるよう構成されている、請求項5または請求項6に記載のサーバ。
  8. 前記データが保存された後、前記データに関する情報をメタデータサーバに送信するよう構成されている、先行する請求項のいずれかに記載のサーバ。
  9. 前記データに対応する仮想ファイル識別子を前記メタデータサーバから受取るよう構成されている、請求項8に記載のサーバ。
  10. 前記仮想ファイル識別子をクライアントに対して送信するよう構成されている、請求項9に記載のサーバ。
  11. あるファイルを読込または更新する要求に応答して、前記ファイルに関する情報を求める要求を少なくとも1つのメタデータサーバのいずれか1つに送信するよう構成されている、先行する請求項のいずれかに記載のサーバ。
  12. 前記ストレージ装置の少なくとも1つは、遠隔のストレージシステムによって与えられる、先行する請求項のいずれかに記載のサーバ。
  13. 前記遠隔のストレージシステムは、ストレージアクセスネットワークを含む、請求項1
    2に記載のサーバ。
  14. 先行する請求項のいずれかに記載の複数のアクセス管理サーバと、
    前記分散ストレージに保存されるファイルについての情報を保存するためのメタデータサーバとを含む、分散ストレージ管理システム。
  15. 前記メタデータサーバは前記アクセス管理サーバから分離される、請求項14に記載の分散ストレージ管理システム。
  16. 少なくとも1つの追加のメタデータサーバをさらに含み、前記アクセス管理サーバは各々、ファイルに関する情報を前記メタデータサーバに送るが、前記少なくとも1つの追加のメタデータサーバには送らないように構成されている、請求項14または請求項15に記載の分散ストレージ管理システム。
  17. 前記アクセス管理サーバは各々、ファイルに関する情報を求める要求を前記少なくとも1つの追加のメタデータサーバのいずれかに送るよう構成されている、請求項16に記載の分散ストレージ管理システム。
  18. 請求項14から請求項17のいずれか1つの記載の分散ファイル管理システムと、
    複数のストレージ装置を含む分散ストレージとを含む、分散ストレージシステム。
  19. 前記ストレージ装置は複数のタイプのストレージ装置を含む、請求項18に記載の分散ストレージ管理システム。
  20. 複数のストレージ装置を含む分散ストレージへのアクセスを管理するためのサーバを運用する方法であって、前記サーバは割当マネージャを含み、前記方法は、
    各々が他のサーバによって与えられた少なくとも1つの他の割当マネージャと通信し、これら割当マネージャのうちどれが、データを保存する際に用いられることになる分散ストレージの部分を選択するマスター割当マネージャであるかを判断することを含む、方法。
  21. 第1の制御部が、前記分散ストレージにデータを保存する要求を受取ることと、第2の制御部が、少なくとも1つの他の第2の制御部と通信し、これら第2の制御部のうちどれが、用いられることになる分散ストレージの前記部分を選択するかを判断することとを含む、請求項20に記載の方法。
  22. 用いられることになる分散ストレージの前記部分を別のサーバが選択することになると判断することと、用いられることになる前記分散ストレージの前記部分の識別情報を前記他のサーバから受取ることとを含む、請求項20または請求項21に記載の方法。
  23. 前記サーバが、用いられることになる分散ストレージの部分を選択することになると判断することと、用いられることになる前記分散ストレージの部分を選択することとを含む、請求項20から請求項22のいずれか1つに記載の方法。
  24. 用いられることになる前記分散ストレージの前記部分の中における前記ストレージ装置のうちの1つを選択することをさらに含む、請求項20から請求項23のいずれか1つに記載の方法。
  25. 前記ファイルが1つの前記ストレージ装置に保存された後、前記分散ストレージの前記部分の中の他のストレージ装置において前記ファイルを複製させることをさらに含む、請求項24に記載の方法。
  26. 前記ファイルが保存された後、前記ファイルに関する情報をメタデータサーバに送信することを含む、請求項20から請求項25のいずれか1つに記載の方法。
  27. 前記ファイルに対応する仮想ファイル識別子を前記メタデータサーバから受取ることを含む、請求項26に記載の方法。
  28. 前記仮想ファイル識別子をクライアントに対して送信することを含む、請求項27に記載の方法。
  29. あるファイルを読込または更新する要求を受取ることと、前記ファイルに関する情報を求める要求を少なくとも1つのメタデータサーバのいずれか1つに送信することとを含む、請求項20から請求項28のいずれか1つに記載の方法。
  30. 前記分散ストレージの選択された部分に前記データを保存することを含む、請求項20から請求項28のいずれか1つに記載の方法。
  31. コンピュータによって実行される際に、前記コンピュータに請求項20から請求項30のいずれか1つに記載の方法を実行させる命令を含む、コンピュータプログラム。
  32. 請求項31に記載のコンピュータプログラムを格納した、コンピュータ読取可能媒体。
JP2009511432A 2006-05-23 2007-04-13 分散ストレージ Expired - Fee Related JP5584910B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US11/439,784 US8255420B2 (en) 2006-05-23 2006-05-23 Distributed storage
EP06114443.2A EP1860846B1 (en) 2006-05-23 2006-05-23 Method and devices for managing distributed storage
US11/439,784 2006-05-23
EP06114443.2 2006-05-23
PCT/EP2007/053657 WO2007134918A1 (en) 2006-05-23 2007-04-13 Distributed storage

Publications (2)

Publication Number Publication Date
JP2009537918A JP2009537918A (ja) 2009-10-29
JP5584910B2 true JP5584910B2 (ja) 2014-09-10

Family

ID=38269044

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009511432A Expired - Fee Related JP5584910B2 (ja) 2006-05-23 2007-04-13 分散ストレージ

Country Status (3)

Country Link
JP (1) JP5584910B2 (ja)
KR (1) KR101366220B1 (ja)
WO (1) WO2007134918A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8682845B2 (en) * 2008-07-09 2014-03-25 The Boeing Company Secure high performance multi-level security database systems and methods
SE533007C2 (sv) 2008-10-24 2010-06-08 Ilt Productions Ab Distribuerad datalagring
KR101092658B1 (ko) 2008-12-22 2011-12-13 한국전자통신연구원 분산 파일 시스템 및 그의 메타데이터 서버 선택 방법
KR101312573B1 (ko) * 2009-12-18 2013-09-30 한국전자통신연구원 메타데이터 접근 장치 및 방법
WO2011110534A2 (en) * 2010-03-08 2011-09-15 Universitat Politècnica De Catalunya Virtual shell
EP2712149B1 (en) 2010-04-23 2019-10-30 Compuverde AB Distributed data storage
US9396290B2 (en) 2011-06-09 2016-07-19 Cloudian Holdings, Inc. Hybrid data management system and method for managing large, varying datasets
US8650365B2 (en) 2011-09-02 2014-02-11 Compuverde Ab Method and device for maintaining data in a data storage system comprising a plurality of data storage nodes
US8997124B2 (en) 2011-09-02 2015-03-31 Compuverde Ab Method for updating data in a distributed data storage system
US9626378B2 (en) 2011-09-02 2017-04-18 Compuverde Ab Method for handling requests in a storage system and a storage node for a storage system
US8769138B2 (en) 2011-09-02 2014-07-01 Compuverde Ab Method for data retrieval from a distributed data storage system
US9021053B2 (en) 2011-09-02 2015-04-28 Compuverde Ab Method and device for writing data to a data storage system comprising a plurality of data storage nodes
US8645978B2 (en) 2011-09-02 2014-02-04 Compuverde Ab Method for data maintenance

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06332782A (ja) * 1993-03-22 1994-12-02 Hitachi Ltd ファイルサーバシステム及びそのファイルアクセス制御方法
JPH103421A (ja) * 1995-11-20 1998-01-06 Matsushita Electric Ind Co Ltd 仮想ファイル管理システム
JP2000207370A (ja) * 1999-01-20 2000-07-28 Matsushita Electric Ind Co Ltd 分散ファイル管理装置及び分散ファイル管理システム
US6952737B1 (en) * 2000-03-03 2005-10-04 Intel Corporation Method and apparatus for accessing remote storage in a distributed storage cluster architecture
US6944785B2 (en) * 2001-07-23 2005-09-13 Network Appliance, Inc. High-availability cluster virtual server system
JP4265245B2 (ja) * 2003-03-17 2009-05-20 株式会社日立製作所 計算機システム
JP2005266933A (ja) * 2004-03-16 2005-09-29 Fujitsu Ltd ストレージ管理システム及びストレージ管理方法
JP4448719B2 (ja) * 2004-03-19 2010-04-14 株式会社日立製作所 ストレージシステム
US7634566B2 (en) * 2004-06-03 2009-12-15 Cisco Technology, Inc. Arrangement in a network for passing control of distributed data between network nodes for optimized client access based on locality
JP2006113663A (ja) * 2004-10-12 2006-04-27 Nec Fielding Ltd データ保管システム、その方法、ファイルサーバ、端末およびプログラム

Also Published As

Publication number Publication date
KR101366220B1 (ko) 2014-02-21
JP2009537918A (ja) 2009-10-29
KR20090047393A (ko) 2009-05-12
WO2007134918A1 (en) 2007-11-29

Similar Documents

Publication Publication Date Title
JP5584910B2 (ja) 分散ストレージ
US8255420B2 (en) Distributed storage
US9413825B2 (en) Managing file objects in a data storage system
KR100974149B1 (ko) 네임스페이스에 대한 정보 유지 방법, 시스템 및 컴퓨터 판독가능 저장 매체
JP5160408B2 (ja) サービス要求を満足するためのリソース・マネージャを選択するための方法、システム、およびコンピュータ・プログラム
US9122397B2 (en) Exposing storage resources with differing capabilities
US8583616B2 (en) Policy-based file management for a storage delivery network
JP5727020B2 (ja) クラウドコンピューティングシステム及びそのデータ同期化方法
US20090112921A1 (en) Managing files using layout storage objects
US9462056B1 (en) Policy-based meta-data driven co-location of computation and datasets in the cloud
US20090112789A1 (en) Policy based file management
US10579597B1 (en) Data-tiering service with multiple cold tier quality of service levels
US8627446B1 (en) Federating data between groups of servers
US9817832B1 (en) Unified framework for policy-based metadata-driven storage services
US11221993B2 (en) Limited deduplication scope for distributed file systems
EP3296895B1 (en) File storage
EP1860846B1 (en) Method and devices for managing distributed storage
RU2656739C1 (ru) Способ и система хранения данных
WO2023040504A1 (zh) 数据处理系统、数据处理方法及相关装置
JPH09179771A (ja) ファイリングシステム及びファイリングシステムに適用するオブジェクト検索方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100408

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120731

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121030

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121106

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130529

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20130605

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20130628

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140702

R150 Certificate of patent or registration of utility model

Ref document number: 5584910

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees