JP2005050165A - 分散ストレージ装置のファイル管理方法及び分散ストレージシステム - Google Patents

分散ストレージ装置のファイル管理方法及び分散ストレージシステム Download PDF

Info

Publication number
JP2005050165A
JP2005050165A JP2003282049A JP2003282049A JP2005050165A JP 2005050165 A JP2005050165 A JP 2005050165A JP 2003282049 A JP2003282049 A JP 2003282049A JP 2003282049 A JP2003282049 A JP 2003282049A JP 2005050165 A JP2005050165 A JP 2005050165A
Authority
JP
Japan
Prior art keywords
file
storage device
guid
storage
client
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
JP2003282049A
Other languages
English (en)
Other versions
JP4291077B2 (ja
Inventor
Akihiko Sakaguchi
坂口明彦
Masaaki Iwasaki
正明 岩嵜
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2003282049A priority Critical patent/JP4291077B2/ja
Priority to US10/834,866 priority patent/US7165083B2/en
Publication of JP2005050165A publication Critical patent/JP2005050165A/ja
Application granted granted Critical
Publication of JP4291077B2 publication Critical patent/JP4291077B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99931Database or file accessing
    • Y10S707/99938Concurrency, e.g. lock management in shared database
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99955Archiving or backup

Abstract

【課題】レプリケーション中であっても整合性を保ちながらファイルのアクセスを可能にする
【解決手段】分散配置された複数のストレージ装置間でレプリケーションを行い、ストレージ装置♯0、1に格納したファイルのGUIDとオリジナルのファイルを有するストレージ装置の装置IDとの関連を格納するGUID管理データベース13、23と、クライアント装置♯11からのファイルのアクセス要求に応じてファイルを検索し、要求されたファイルCがストレージ装置♯1に無い場合には、GUID管理データベースからファイルCのGUIDに基づいてオリジナルのファイルを有するストレージ装置の装置ID(♯0)を検索し、このストレージ装置♯0から要求されたファイルCにアクセスする。
【選択図】図7

Description

本発明は、ネットワークを介して記憶装置を分散して配置し、各記憶装置に格納されたファイルを共有する分散ストレージシステムの改良に関する。
クライアント/サーバ型の分散ストレージシステム(または装置)としては、Andrew File System(以下、AFSという)が知られている(非特許文献1)。
これは、各ファイルにロケーションフィールドを備えた識別子を付加し、このファイルの位置をロケーションフィールドの情報により取得して、目的とするファイルにアクセスするものである。このため、ロケーションフィールドを管理するロケーションデータベースを任意のネットワーク上に設置しておき、クライアントはファイルにアクセスする際に、まず、識別子に含まれたロケーションフィールドについてロケーションデータベースへ問い合わせを行い、ロケーションデータベースが回答した位置に対してアクセスを行っている。
そして、一回アクセスされたファイルは、ストレージ装置やキャッシュサーバなどにキャッシュされ、次回からのアクセス速度を向上させている。
「最前線UNIXのカーネル」 ユーレッシュ・ヴァハリア著、徳田英幸、中村明、戸部義人、津田悦幸 訳、株式会社ピアソン・エデュケーション、2000年5月15日発行、第371頁〜378頁、(原著 UNIX Internals:The New Frontiers by Uresh Vahalia pubkished by Prentice Hall,Inc. 1996)
しかしながら、上記従来例では、ローカルのストレージ装置にファイルがある場合には、迅速にファイルの読み書きを行うことができるが、ローカルのストレージ装置にファイルがない場合には、ロケーションデータベースへ問い合わせを行い、ロケーションデータベースからの回答を待って、目的のストレージ装置にリモートアクセスすることになり、このリモートアクセスを迅速に行うことができないという問題があった。
また、リモートアクセスによりキャッシュへアクセスする場合には、データの整合性を確保するために排他制御を必要としているため、可用性が低下するという問題がある。例えば同一のファイルに対して複数の書き込み要求があったときには、最先のクライアントの書き込み要求を受け付けて、後の書き込み要求を拒否することになる。
さらに、基準となるストレージ装置のオリジナルのデータを、リモートにある他のストレージ装置に複写するレプリケーションを行う場合、レプリケーションの完了までには時間を要し、レプリケーションが完了する以前に複写先のストレージ装置にアクセスが発生すると、ファイルの複製(レプリカ)が完成していないため、アクセス要求がエラーとなってしまい、信頼性が低下するという問題があった。
そこで本発明は、上記問題点に鑑みてなされたもので、レプリケーション中であっても整合性を保ちながらファイルのアクセスを可能にすることを目的とする。
本発明は、分散配置された複数のストレージ装置間でファイルの複製を作成するレプリケーション手段とを備え、前記ストレージ装置は、このストレージ装置で作成したファイルに分散ストレージシステム内で一意の識別子となるGUIDを付与するGUID付与手段と、このストレージ装置に格納したファイルのGUIDとオリジナルのファイルを有するストレージ装置の装置IDとの関連を格納するGUID管理データベースと、クライアント装置からのファイルのアクセス要求に応じてファイルを検索するファイル検索手段と、前記要求されたファイルが当該ストレージ装置に無い場合には、前記GUID管理データベースから前記ファイルのGUIDに基づいてオリジナルのファイルを有するストレージ装置の装置IDを検索し、このストレージ装置から要求されたファイルにアクセスする。
したがって、本発明は、ストレージ装置間でレプリケーションが行われているとき、ストレージ装置に複製が作成される以前にクライアント装置からアクセスがあったときには、ファイルに付加される一意の識別子であるGUIDに基づいてオリジナルのファイルを有するストレージ装置を検索し、このストレージ装置のオリジナルのファイルにアクセスすることで、確実にクライアント装置からの要求に応えることができ、レプリケーションを行う分散ストレージシステムの信頼性を向上することができる。また、クライアント装置はオリジナルのファイルにアクセス可能となるので、ファイルの整合性を保証できる。
以下、本発明の一実施形態を添付図面に基づいて説明する。
図1は、本発明を適用する分散ストレージシステムの構成図である。この図1では、2つのストレージ装置♯0、♯1とNISサーバ(Network Infomation Server)1がネットワーク10を介して接続され、分散ストレージシステムを構築した例を示している。なお、ネットワーク10はインターネット、WAN、LANなどを示す。
ストレージ装置♯0は、データとしてのファイルを格納するディスク14と、ディスク14に格納されるファイルに付与するGUID(Globally Unique IDentifier)の情報を管理するGUID管理データベース(以下、GUID管理DBという)13を備える。GUID管理DB13はディスク14に格納されても良いし、ストレージ装置♯0の他のディスク(図示省略)に格納されても良い。
なお、ファイルに付加されるGUIDは、この分散ストレージシステム上でファイルを一意に識別するための識別子であり、後述するように、例えば、番号などで構成される。
これら、GUID管理DB13、ディスク14は、CPU(図示省略)やメモリ、I/Oなどを含む制御部12によって、ネットワーク10やクライアント装置との間で読み書きの制御が行う。また、制御部12には、後述する書き込み要求の際に使用するバッファ16を備える。
さらに、制御部12には、ディスク14または制御部12自身の処理負荷を測定する負荷検出装置15が設けられ、レプリケーションを実行する際には負荷検出装置15が検出した負荷を判定し、検出した負荷が所定値以下のときなどにレプリケーションを実行する。
また、ストレージ装置♯0にはCPUやメモリ、コンソールなど(図示省略)を含むクライアント装置♯10が接続され、クライアント装置♯10からはストレージ装置♯0をローカルなストレージとして利用することができる。なお、図中ストレージ装置♯0がネットワーク10に接続されている例を示したが、クライアント装置10またはストレージ装置♯0の少なくとも一方がネットワーク10に接続されていればよい。
ネットワーク10に接続されたストレージ装置♯1も、上記ストレージ装置♯0と同様に構成され、ファイルを格納するストレージ24、ファイルに付与するGUIDの情報を管理するGUID管理DB23、制御部22、バッファ26、負荷検出装置25から構成され、また、ストレージ装置♯1にはCPUやメモリ、コンソールなど(図示省略)を含むクライアント装置♯11が接続され、クライアント装置♯11からはストレージ装置♯1をローカルなストレージとして利用することができる。
このストレージ装置♯1も、上記ストレージ装置♯0と同様に、ネットワーク10またはクライアント装置♯11からのアクセスに応じてストレージ24やGUID管理DB23との間で読み書きを行う。
そして、ストレージ装置♯0とストレージ装置♯1は、クライアント装置♯10、♯11からのローカルまたはネットワーク10を介したリモートのアクセスに応じてディスク14、24の読み書きを行う。そして、ストレージ装置♯0または♯1の負荷が低いときには、各ストレージ装置♯0、♯1が格納しているオリジナルのファイルを他方のストレージ装置に複写するレプリケーションを実行する。
ネットワーク10には、GUIDとストレージ装置♯0、♯1を管理するNISサーバ1が接続される。なお、NISサーバは必ずしもサーバとして独立している必要はなく、ストレージ装置内またはネットワーク装置内にその機能を持たせても良い。
NISサーバ1は、CPUやメモリ、コンソールなど(図示省略)からなる構成された制御部2と、GUIDの割当状況を管理するGUID割当データベース(以下、GUID割当DBという)3から構成される。
NISサーバ1は、ネットワーク10上に接続され、かつ、分散ストレージシステムを構成するストレージ装置の登録、管理を行うとともに、各ストレージ装置♯0、♯1が格納するファイルに付与するGUIDの割り当てを行うものである。
なお、図1においては、ストレージ装置♯0、♯1がシステム管理者などによって、NISサーバ1に登録された状態を示している。
次に、図2、図3を参照しながらGUIDとファイル及びストレージ装置の関係を説明する。
図2は、ストレージ装置♯0のディスク14に、ファイルA、Bが既に格納されており、新たにファイルCを作成する状態を示している。また、ストレージ装置♯1のディスク24にファイルD、E、Fを既に格納した状態を示している。
ストレージ装置♯0、♯1は、格納するファイルを分散ストレージシステム上で一意に特定するため、NISサーバ1から割り当てられたGUIDを各ファイルに付加している。例えば、ストレージ装置♯0のファイルAにはGUID=10001が、ファイルBにはGUID=10002が付加され、同様にストレージ装置♯1のファイルD〜Fには、GUID=20001〜20003が付加されている。
これらGUIDは、NISサーバ1が予め設定したブロック単位で各ストレージ装置に割り当てるもので、各ストレージ装置は、ローカルのGUID管理DB13、23に格納されたGUIDのうち未使用のGUIDが不足すると、NISサーバ1に対してGUIDの割り当てを要求する。
要求を受けたNISサーバ1は、未使用のGUIDをブロック単位でストレージ装置に付与し、NISサーバ1のGUID割当DB3を更新した後、分散ストレージシステムを構成するストレージ装置♯0、♯1に対して、GUIDブロックを割り当てたストレージ装置番号(または装置ID)をブロードキャストする。なお、GUIDのブロックは、予め設定した範囲で連続した識別子の一群を意味し、例えば、図示のように、連続した10000の番号をひとつのブロックとして扱う。
各ストレージ装置♯0、♯1は、NISサーバ1からブロードキャストされたGUIDブロックとストレージ装置番号を、各GUID管理DB13、23に格納する。これにより、各ストレージ装置は、アクセス要求があったときに、ファイルに対応するGUIDから、どのストレージ装置にオリジナルのファイルがあるかを特定することができる。
今、図2において、ストレージ装置♯0が新たなファイルCを作成し、既に割り当てられたGUIDブロック(10001〜20000)を使用してしまった場合、ストレージ装置♯0はGUIDのブロック割当をNISサーバ1に要求する(図中S1)。
要求を受けた、NISサーバ1は、GUID割当DB3を調べ、一つ目のブロック10001〜20000がストレージ装置♯0に、2つ目のブロック20001〜30000がストレージ装置♯1に割り当てられているので、未使用である3つめのGUIDブロック30001〜40000をストレージ装置♯0に割り当て、通知する(図中S2)。
通知を受けたストレージ装置♯0は、新たなファイルCに対して未使用且つ最小のGUID=30001を付加する。
なお、未使用GUIDが枯渇する前に少なくなった時点で予め新しいGUIDブロックの割当てを要求してもよい。またファイルに付加するGUIDは未使用なものであれば、必ずしも最小でなくとも良い。
次に、NISサーバ1は、図3に示すように、GUID割当DB3に対して、新たに割り当てたGUIDブロック30001〜40000に対応するストレージ装置番号に♯0を登録する(図中S3)。
次に、NISサーバ1は、分散ストレージシステムに所属する全てのストレージ装置(ここでは♯0、♯1)に対して、更新したGUID割当DB3の情報(割り当てたGUIDブロックと要求したストレージ装置番号の組み)をブロードキャストする(図中S4)。
NISサーバ1からGUID割当DBの更新情報を受信した各ストレージ装置♯0、♯1は、ローカルのGUID管理DB13、23を更新し、GUIDブロック30001〜40000がストレージ装置♯0に割り当てられたことを登録する(図中S5)。
このGUIDブロックの割り当てを時系列で見ると、図4のようになり、ストレージ装置♯0がGUIDブロックを要求すると、NISサーバ1はS2で通知を行うため、図中S6でストレージ装置♯0は新たなファイルCにGUIDを付加することができる。
その後、NISサーバ1は全てのストレージ装置に対して更新した情報をブロードキャストするので、図中S5以降では、全てのストレージ装置のGUID管理DB13、23は同一の内容となる。このため、クライアント装置♯10または♯11がストレージ装置に対してアクセス要求をすると、どのストレージ装置に対するアクセス要求も同一のストレージ装置の内容を伝えるため、データの整合性を確保できるのである。
以上のように、GUID管理DB13、23とGUID割当DB3のGUIDブロックとストレージ装置番号(装置ID)により、ストレージ装置♯0、♯1内のファイルは、GUIDによりオリジナルのファイルを格納しているストレージ装置番号を一意に特定することができ、どのストレージ装置からもファイルのロケーションを迅速に問い合わせることが可能となるのである。
そして、ファイルを作成したときに付与するGUIDは、管理サーバ1から各ストレージ装置♯0、♯1に対してブロードキャストされ、各ストレージ装置のGUID管理DB13、23に記録されるため、分散ストレージシステム内にはオリジナルファイルは一つであり、各GUID管理DB13、23は、GUIDに基づいてオリジナルのファイルを有するストレージ装置の装置IDを示すものである。
なお、GUIDブロックを要求したストレージ装置に対しては、割り当ての通知(S2)とブロードキャスト(S4)で、同一の内容の情報が2回(S2、S4)通知されることになるが、GUID管理DBの更新はどちらか一方の通知に基づいて行えばよい。
また、NISサーバ1及びストレージ装置♯0、♯1のGUID割当DB3及びGUID管理DB13、23は、ストレージ装置番号とGUIDブロックを対応付けて管理する例を示したが、図5で示すように、ストレージ装置番号とネットワークアドレスなどの位置情報を示すストレージ識別子を併用しても良く、あるいは、GUIDブロックとストレージ識別子で管理を行っても良い。
次に、分散ストレージシステムのレプリケーションについて図6を参照しながら説明する。
図6は、ストレージ装置♯0のオリジナルのファイルA、B、Cのレプリカ(複製)をストレージ装置♯1に作成する一例を示す。
ストレージ装置♯0は、負荷検出装置15が検出した負荷が予め設定した値以下の低負荷時(例えば、深夜などアクセスの少ない状態)であれば、ディスク14内のファイルのうちオリジナルのファイルA〜Cについて他のストレージ装置♯1にレプリカを作成するレプリケーションを実行し、耐障害性を向上させる。なお、レプリケーションの実行は、オリジナルファイルを持つ基準ストレージ装置と、レプリカを格納するストレージ装置♯1の負荷が共に低いことが望ましい。なお、負荷検出装置15が検出する負荷は、例えば、制御部12のCPUの使用率、ディスク14の稼働量(単位時間当たりのRead/Writeバイト数)等を検出すればよい。
ここで、基準ストレージ装置とは、オリジナルのファイルを格納しているストレージ装置を示し、GUID管理DB13、23またはGUID割当DB3のGUIDブロックとストレージ装置番号の組みが基準ストレージ装置を示している。例えば、GUIDが10001〜20000のファイルであれば、ストレージ装置♯0が基準ストレージ装置であり、GUIDが20001〜30000のファイルであれば、ストレージ装置♯1が基準ストレージ装置となる。
レプリケーションは、GUID管理DB13を参照して、ストレージ装置番号が自らの番号と一致するGUIDを持つファイルを、他のストレージ装置に複製することで行われる。
したがって、ストレージ装置♯0のレプリケーションは、GUIDブロック10001〜20000の範囲にあるファイルA、Bと、GUIDブロック30001〜40000の範囲にあるファイルCを、ストレージ装置♯1に複製することで行われる。
ストレージ装置♯1のディスク24には、ファイルA〜Cの複製A’〜C’が作成される。ストレージ装置♯1に複製されたファイルA’〜C’は説明のために「’」を付しただけであり、実際はファイルA〜Cと同一であって、GUIDもストレージ装置♯0のファイルA〜Cと同一である。
次に、レプリケーションは開始から完了まで時間を要するため、図7のように、ストレージ装置♯0からストレージ装置♯1へレプリケーションを行っている期間で、図中波線で示すファイルCのレプリカがまだ完了していないとき、クライアント装置♯11がローカルのストレージ装置♯1に対してGUID=30001のファイルCに対して読み込み(READ)要求を行う場合がある。
この場合、ストレージ装置♯1は次のような制御を行う。
図7において、クライアント装置♯11からのファイルCへのアクセス要求から、ストレージ装置♯1は、ファイルC(図中波線)のレプリカがローカルのディスク24にまだ作成されていないことが分かる。ストレージ装置♯1は、GUID管理DB23からGUID30001のファイルCの基準ストレージ装置が何れであるかを検索し、ストレージ装置♯0であることを判定する。
ストレージ装置♯1は、基準ストレージ装置であるストレージ装置♯0に対してGUID=30001のファイルCの読み込みを要求する。ストレージ装置♯1は、ストレージ装置♯0からオリジナルのファイルCを転送し、クライアント装置♯11に送信する。
こうして、分散ストレージシステムのレプリケーションでは、ネットワーク10等を介して位置的に異なるストレージ装置へレプリカを作成する際、全てのレプリカが完成するまでには遅延が発生するが、まだレプリカが作成されていないファイルにアクセス要求があったときには、オリジナルのファイルを格納した基準ストレージ装置へアクセス要求を転送し、基準ストレージ装置から読み出すことにより、レプリカの完成、未完成に係わらず、分散ストレージシステム上では必ず目的のファイルを読み出すことになって、データの整合性を確保できる。特に、頻繁にレプリケーションを行う場合であっても、クライアント装置♯10やクライアント装置♯11からアクセス要求があったとき、要求されたファイルが作成されていなければ、GUIDにより一意で決まる基準ストレージ装置に対してアクセスが行われるので、レプリケーションによる遅延の影響を受けることなくファイルの読み出しを保証することができるのである。
上記図7で示した読み出し要求に対するストレージ装置♯1の制御の一例を図8に示す。この図8は、クライアント装置♯10または♯11からのコマンドを受けたときに、ストレージ装置♯1の制御部22で実行されるフローチャートを示す。
まず、S11では要求されたコマンドがREAD(読み出し)要求コマンドであるかを判定し、READコマンドであれば、S12へ進んでREADコマンドで要求されたファイルがディスク24にあるか否かを判定する。
要求されたファイルがディスク24にある場合には、S20に進んで、ディスク24のファイルを要求先のクライアント装置に送信する。図7の例では、ファイルC以外の読み出し要求の場合、ファイルA’、B’、D〜Fが読み出される。
一方、上記S12の判定で、ディスク24には要求されたファイルがない場合、S13に進んで、要求されたファイルのGUIDに基づいてGUID管理DB23を検索し、基準ストレージ装置を読み込む。
S14では、要求されたファイルの基準ストレージ装置の有無を判定し、基準ストレージ装置が見つからない場合には、S21に進んで要求先のクライアント装置に対してエラーを通知する。一方、基準ストレージ装置が見つかった場合には、S15に進んで、クライアント装置からのREADコマンドを基準ストレージ装置(図7の例ではストレージ装置♯0)へファイルCの読み出し要求を転送する。
S16では、ストレージ装置♯1は、基準ストレージ装置であるストレージ装置♯0から要求されたファイルCをリモートで読み出し、要求先のクライアント装置(クライアント装置♯11)に送信する。
以上の読み出し制御により、ストレージ装置♯1は、クライアント装置からファイルの読み出し要求があると、ローカルのディスク24にファイルがあれば、このディスク24のファイルをクライアント装置に送信するが、ディスク24にファイルが無い、または作成途中の場合では、要求されたファイルのGUIDから、そのファイルの基準ストレージ装置を検索し、読み出し要求を基準ストレージ装置に送り、リモートアクセスにより要求されたファイルを読み出してクライアント装置へ送信する。
これにより、クライアント装置は、レプリケーション中の遅延の影響を受けることがなくなって、迅速にファイルを読むことができ、レプリケーションを行う分散ストレージシステムのデータのアクセスを保証することができ、システムの信頼性を向上させるのである。
さらに、クライアント装置♯10、♯11は、ストレージ装置♯0、♯1に対して読み出し要求を行うだけであって、オリジナルのファイルがどこにあるかを認識する必要がなく、常に任意のストレージ装置に対してアクセスするだけで、分散ストレージシステム上のデータを取得することができ、クライアント装置からのアクセス性を向上することができる。
なお、上記ではストレージ装置♯1に対してクライアント装置♯11が読み出し要求を行った場合について説明したが、ストレージ装置♯0に対してクライアント装置♯10や♯11が読み出し要求を行った場合も上記と同様である。
また、上記ではクライアント装置♯11からの読み出し要求を、ストレージ装置♯1がオリジナルのファイルを持つストレージ装置♯0に転送し、ストレージ装置♯1がこれを読み込んでクライアント装置♯11に送信する例を示したが、ストレージ装置♯1がクライアント装置♯11に基準ストレージ装置の位置を教え、クライアント装置♯11が基準ストレージ装置にアクセスするようにしても良い。
次に、クライアント装置♯10、♯11が同時に同一のファイルに対してWRITE(書き込み)要求を行った場合について、図9、図10を参照しながら説明する。
クライアント装置♯10とクライアント装置♯11は、同時にファイルAに対する書き込み要求を発生し、クライアント装置♯10はローカルのストレージ装置♯0に、クライアント装置♯11はローカルのストレージ装置♯1にそれぞれ要求する。
まず、ストレージ装置♯0では、クライアント装置♯10からの書き込み要求(S101)からファイルAの基準ストレージ装置をGUIDに基づいてGUID管理DB13から検索する。ファイルAの基準ストレージ装置はストレージ装置♯0であるため、ストレージ装置♯0はクライアント装置♯10の要求を受け付け、制御部12のバッファ16にクライアント装置♯10が送った新たなファイルAの内容を書き込む(S102)。バッファ16への書き込みが終了すると、ストレージ装置♯0はクライアント装置♯10に書き込み完了の通知を送信する(S103)。
一方、クライアント装置♯11がストレージ装置♯1に要求したファイルAの書き込みは、ストレージ装置♯0に転送される。ストレージ装置♯1には、ファイルAのレプリカA’が格納されているだけなので、レプリカに対する書き込みを禁止する。このため、ストレージ装置♯1は、要求されたファイルAのGUIDに基づいて、GUID管理DB23からファイルAのオリジナルを持つ基準ストレージ装置を検索する。検索の結果、基準ストレージ装置がストレージ装置♯0であることが解ると、ストレージ装置♯1はストレージ装置♯0に対してリモートアクセスによりファイルAの書き込みを要求する(S202)。
ストレージ装置♯0は、クライアント装置♯10からのバッファ16への書き込みが終了すると、ストレージ装置♯1からの書き込み要求を受け付け、ストレージ装置♯1はクライアント装置♯11が要求したファイルAの内容をストレージ装置♯0のバッファ16に書き込む(S203)。
ストレージ装置♯0は、クライアント装置♯11からのリモートアクセスによる書き込みが終了すると、ストレージ装置♯1に対して、書き込み完了の応答を送信する(S204)。ストレージ装置♯1はこの応答を受信すると、クライアント装置♯11に対して書き込み完了の通知を送信する(S205)。すなわち、クライアント装置に対しては、バッファ16への書き込みが完了した時点で完了の通知が送信される。
次に、ストレージ装置♯0は、バッファ16に書き込まれたファイルAの内容で、逐次ディスク14に書き込みを行う。つまり、最初に書き込み要求を受け付けたクライアント装置♯10の内容をファイルAに書き込んで更新し(S104)、次に要求を受け付けたクライアント装置♯11の内容をファイルAに書き込んで更新する(S206)。
こうして、書き込み要求に関しては、必ずオリジナルのファイルのファイルに対して処理を行うことで、分散して格納されたレプリカの整合性がとれなく無くなるのを防ぐことができ、ファイルの整合性を保証できる。
さらに、書き込み要求の処理は、要求を受け付けた順で、書き込むファイルAの内容をバッファ16に蓄積し、その後、バッファ16の内容でディスク14に書き込むようにしたため、書き込み順序の整合性を確保することができる。特に、ネットワーク10がインターネットで構成される場合は、データ(パケット)の到着順が要求の順序と一致しない場合も生じる。このため、一旦、ストレージ装置♯0の制御部12に設けたバッファ16に要求の受け付け順で、書き込む内容を蓄積し、バッファ16の書き込みが完了してからディスク14への書き込みを逐次行うので、ファイルの書き込み順序の整合性を保証できるのである。
なお、リモートアクセスによる書き込みとなるクライアント装置♯11では、完了の通知を受信するまでは、次の書き込み要求の送信を禁止するのが望ましい。つまり、上述のように、ネットワーク10がインターネットで構成される場合では、後の要求のパケットが、先の要求のパケットよりも先にストレージ装置♯0に到着する場合があるので、書き込み完了まで待ってから次の書き込み要求を送信することで、書き込み順序の不整合を防止できるのである。
図11は第2の実施形態を示し、前記第1実施形態のストレージ装置が、一つの分散ストレージシステムの中で一つのグループを構成していたのに対し、この第2実施形態では、一つの分散ストレージシステムの中に複数のグループを設け、各グループの中でアクセス及びレプリケーションを行うようにしたものである。
図11は、前記第1実施形態の図2に、ディスク34よGUID管理DB33を備えたストレージ装置♯2を加えるとともに、NISサーバ1にはGUID割当DB3に加えてグループ管理データベース(以下グループ管理DB)30を加えたもので、その他の構成は前記第1実施形態に準ずる。
この分散ストレージシステムにおいては、NISサーバ1が管理するストレージ装置を2つのグループAとBに分け、各グループの中で相互にアクセスするものであり、他のグループへのアクセスは禁止される。
このため、NISサーバ1には、グループAとグループBに所属するストレージ装置を管理するためのグループ管理DB30を備える。グループ管理DB30は、システム管理者等によって予め各グループに所属するストレージ装置番号(またはストレージ識別子)が設定されており、例えば、グループAにはストレージ装置♯0と♯1が属し、グループBにはストレージ装置♯2が所属するように設定されている。
一方、GUID割当DB3が各ストレージ装置に割り当てるGUIDは、分散ストレージシステム全体で一意の識別子となるよう、グループに関係なく、ストレージ装置毎にGUIDブロックが割り当てられている。ストレージ装置♯0、ストレージ装置♯2には前記第1実施形態と同様に、10001〜40000のGUIDブロックが割り当てられ、ストレージ装置♯2には、40001〜60000のGUIDブロックが割り当てられている。グループに拘わらず、GUIDをシステム全体で一意の識別子とすることで、ストレージ装置のグループを変更した場合に、GUIDが重複するのを防止することができる。
今、ストレージ装置♯0がGUIDブロックの割り当てをNISサーバ1に要求すると(S301)、NISサーバ1は前記第1実施形態と同様に、未使用のGUIDブロックをストレージ装置♯0に割り当てる。
その後、NISサーバ1は、新たなGUIDブロックに対応するストレージ装置番号をGUID割当DB3に登録して更新し、この更新の内容をストレージ装置♯0が所属するグループAのみにブロードキャストする(S303)。
つまり、NISサーバ1はグループ管理DB30を参照し、ストレージ装置♯0が所属するグループAのストレージ装置♯0、♯1のみに更新内容を通知し、グループAの各ストレージ装置♯0、♯1は、ブロードキャストされた更新内容を各GUID管理DB13、23に登録する。
これは、異なるグループ間でのアクセスは行わないため、グループBのストレージ装置は、グループAの基準ストレージ装置を指し示すGUIDを知る必要がないためである。
次に、アクセス制御について、図12を参照しながら説明する。
まず、クライアント装置♯10がストレージ装置♯1のファイルFを読み込む場合は、まず、ローカルに接続されたストレージ装置♯0にファイルFの読み出し(READ)要求を送信する。ストレージ装置♯0はディスク14にファイルFが無いため、読み出し要求に含まれるファイルFのGUIDからGUID管理DB13を検索し、ファイルFの基準ストレージ装置であるストレージ装置♯1を見つける。
次に、ストレージ装置♯0は、ストレージ装置♯1に対してファイルFの読み出し要求を転送する(S312)。ストレージ装置♯1はファイルFを読み出してストレージ装置♯0にデータを転送する(S313)。最後にストレージ装置♯0は、ストレージ装置♯1から受信したファイルFのデータをクライアント装置♯10に送信して処理を終了する。
こうして、同一グループ内では、前記第1実施形態と同様にして、ストレージ装置のローカルのディスクにデータが無い場合には、GUIDに基づいて検索した基準ストレージ装置に問い合わせ、目的のファイルを読み出すのである。
一方、異なるグループ間では、次のようになる。
図12において、クライアント装置♯11がローカルのストレージ装置♯2に対してグループAのファイルF(GUID=20003)の読み出し要求を行った場合(S321)、ストレージ装置♯2はローカルのディスク34にファイルFがないので、ファイルFのGUIDに基づいてGUID管理DB33を検索する。
しかし、GUID管理DB33には、グループAに関する情報はないため、基準ストレージ装置が見つからない。この結果、ストレージ装置♯2はクライアント装置♯11に対してエラーが生じたことを通知する(S322)。
こうして、異なるグループ間では、各ストレージ装置のGUID管理DBに情報が登録されていないため、どのストレージ装置にアクセスするべきかを決定できず、相互のアクセスは禁止されるのである。
これにより、同一の分散ストレージシステム内に、複数のグループを設けることで各グループ間のセキュリティを確保しながら、レプリケーションによって耐障害性を高めることが可能となる。
なお、NISサーバ1のグループ管理DB30は、グループ名(グループ識別子)とストレージ装置番号とを対応付けて管理する例を示したが、図13で示すように、グループ名とストレージ装置のネットワークアドレスなどの位置情報を示すストレージIDによって管理しても良い。また、一つのストレージ装置を2つのグループに登録してもよく、例えば、ストレージ装置♯1をグループAとグループBに登録することで、2つのグループで一つのストレージ装置♯1を共有することもできる。
例えば、図14で示すように、NISサーバ1のコンソールで、ストレージ装置の識別子をIPアドレスとし、複数のグループに登録する場合は、図中S401の画面にてストレージ装置のIPアドレスを入力した後、S402で登録するグループ名(グループ識別子)に「A」を入力し、S403では次に登録するグループ名として「B」を入力する。この結果、NISサーバ1のグループ管理DB30には、グループAとBにそれぞれこのストレージ装置を加えることができ、2つのグループでストレージ装置を共有することができる。
なお、レプリケーションは、各グループ内でそれぞれ実行され、前記第1実施形態と同様に負荷が低いときに行えばよい。グループAでは、ストレージ装置♯0とストレージ装置♯1との間で、前記第1実施形態と同様に負荷が低いときに各オリジナルのファイルを他方へ複写する。図11、図12では説明を簡易にするためグループBのストレージ装置を♯2のみとしたが、グループBに複数のストレージ装置を設けて各ストレージ装置間でオリジナルのファイルを複写すればよい。
なお、上記実施形態では、ストレージ装置♯0、♯1とした例を示したが、各ストレージ装置を複数のストレージ装置で構成されたストレージノードやサイトに置き換えても良い。
以上のように、本発明に係る分散ストレージシステムでは、ローカルのストレージ装置にレプリケーションが完了していなくとも、ローカルのストレージ装置がオリジナルのファイルを有するストレージ装置からファイルを転送し、クライアント装置に読み出し可能とすることができるので、各ストレージ装置間のファイルの整合性を保証して可用性の高いサイトに適用することができる。
本発明の一実施形態を示すシステム構成図。 GUIDの割り当ての様子を示す説明図。 GUIDの更新をブロードキャストする様子を示す説明図。 同じくGUIDの割り当てと更新のブロードキャストの様子を示すタイムチャート。 GUID割当データベースのデータの一例を示す説明図。 レプリケーションの様子を示す説明図。 レプリケーション中にクライアント装置から読み出し要求があった場合のデータの流れを示す説明図。 同じくストレージ装置で行われる読み出し処理の一例を示すフローチャート。 複数のクライアント装置から同時に書き込み要求があったときのデータの流れを示すタイムチャート。 同じく、複数のクライアント装置から同時に書き込み要求があったときのデータの流れを示す説明図。 第2の実施形態を示し、グループ単位でGUIDの割り当てと更新のブロードキャストを行う様子を示す説明図。 グループ単位で読み出し処理を行う際の、データの流れを示す説明図。 グループ管理データベースのデータの一例を示す説明図。 ストレージ装置を複数のグループで共有する場合の登録の様子を示す説明図。
符号の説明
1 NISサーバ
3 GUID割当データベース
13、23 GUID管理データベース
30 グループ管理データベース
♯0、♯1、♯2 ストレージ装置
♯10、♯11 クライアント装置

Claims (13)

  1. 分散配置された複数のストレージ装置と、
    これらストレージ装置が格納するファイルの識別子及びストレージ装置を管理する管理サーバとを備え、
    この管理サーバはストレージ装置からの要求に基づいて、一意の識別子としてのGUIDを前記ストレージ装置に割り当てる処理と、
    前記GUIDの割り当て状態を管理サーバのGUID割当データベースに記憶する処理と、
    前記管理サーバから割り当てられたGUIDを、前記ストレージ装置が各ファイルに付加する処理と、
    を含むことを特徴とする分散ストレージ装置のファイル管理方法。
  2. 前記ストレージ装置は、新たにファイルを作成する度に前記GUIDをこのファイルに付加する処理と、
    前記ストレージ装置は、割り当てられたGUIDが不足した場合には、前記管理サーバにGUIDを要求する処理と、
    前記管理サーバは、このストレージ装置からの前記要求に応じて未使用のGUIDをブロック単位でストレージ装置に割り当てる処理と、
    を含むことを特徴とする請求項1に記載の分散ストレージ装置のファイル管理方法。
  3. 前記管理サーバは、前記割り当てた未使用のGUID及びストレージ装置の装置IDを、各ストレージ装置に送信する処理と、
    各ストレージ装置は、それぞれに設けたローカルのGUID管理データベースに前記送信されたGUID及びストレージ装置の装置IDを格納する処理と、
    を含むことを特徴とする請求項2に記載の分散ストレージ装置のファイル管理方法。
  4. 前記管理サーバは、一つまたは複数のグループと、これら各グループに所属するストレージ装置の装置IDの対応関係を管理するグループ管理データベースを有し、
    前記ストレージ装置を追加する際には、
    このストレージ装置に装置IDを設定する処理と、
    この装置IDにグループの識別子を関連付ける処理と、
    前記グループ管理データベースに装置IDとグループ識別子の対応関係を登録する処理と、
    を含むことを特徴とする請求項2に記載の分散ストレージ装置のファイル管理方法。
  5. 前記管理サーバは、前記割り当てた未使用のGUID及びストレージ装置の装置IDを、前記割り当てを行ったストレージ装置が所属するグループのストレージ装置のみに送信する処理と、
    前記グループに所属するストレージ装置は、それぞれに設けたローカルのGUID管理データベースに前記送信されたGUID及びストレージ装置の装置IDを格納する処理と、
    を含むことを特徴する請求項4に記載の分散ストレージ装置のファイル管理方法。
  6. 前記ストレージ装置は、異なるグループIDのストレージ装置からのアクセスを拒否することを特徴とする請求項4に記載の分散ストレージ装置のファイル管理方法。
  7. 前記ストレージ装置は各負荷を検出する手段を有し、検出した負荷が少ないときに各ストレージ装置間でレプリカを作成することを特徴とする請求項1または請求項4に記載の分散ストレージ装置のファイル管理方法。
  8. 前記ストレージ装置は、ローカルに設けたGUID管理データベースのGUIDと装置IDの関係から、オリジナルのファイルを選択する処理と、
    前記オリジナルのファイルを他のストレージ装置へ複写する処理と、
    を含むことを特徴とする請求項7に記載の分散ストレージ装置のファイル管理方法。
  9. 前記ストレージ装置にアクセスするクライアント装置を有し、
    前記クライアント装置がファイルの書き込みを要求したときには、GUID管理データベースのGUIDと装置IDの関係から、オリジナルのファイルを有するストレージ装置を選択する処理と、
    この選択したストレージ装置に対して書き込む処理と、
    を含むことを特徴とする請求項7に記載の分散ストレージ装置のファイル管理方法。
  10. 前記オリジナルのファイルを有するストレージ装置は、複数のクライアント装置から書き込み要求があった場合には、各書き込み要求を逐次処理し、各書き込み処理が終了するたびに前記クライアント装置へ応答を返すことを特徴とする請求項9に記載の分散ストレージ装置のファイル管理方法。
  11. 前記ストレージ装置にアクセスするクライアント装置を有し、
    前記クライアント装置がストレージ装置に対してファイルの読み込みを要求したときに、このストレージ装置に前記要求されたファイルがない場合には、
    前記ファイルに対応するGUIDに基づいて当該ストレージ装置のGUID管理データベースからオリジナルのファイルを有するストレージ装置を選択し、この選択したストレージ装置から前記要求されたファイルを読み込むことを特徴とする請求項2または請求項7に記載の分散ストレージ装置のファイル管理方法。
  12. 前記ストレージ装置にアクセスするクライアント装置を有し、
    前記クライアント装置がストレージ装置に対してファイルの読み込みを要求したときに、このストレージ装置に前記要求されたファイルがない場合には、
    このストレージ装置は、
    前記ファイルに対応するGUIDに基づいて当該ストレージ装置のGUID管理データベースからオリジナルのファイルを有するストレージ装置を選択する処理と、
    前記選択したストレージ装置に対して前記読み込み要求を転送し、要求されたファイルを読み込む処理と、
    この読み込んだファイルを前記クライアントに送る処理と、
    を含むことを特徴とする請求項2または請求項7に記載の分散ストレージ装置のファイル管理方法。
  13. 分散配置された複数のストレージ装置と、
    各ストレージ装置間でファイルの複製を作成するレプリケーション手段とを備えた分散ストレージシステムにおいて、
    前記ストレージ装置は、このストレージ装置で作成したファイルに分散ストレージシステム内で一意の識別子となるGUIDを付与するGUID付与手段と、
    このストレージ装置に格納したファイルのGUIDとオリジナルのファイルを有するストレージ装置の装置IDとの関連を格納するGUID管理データベースと、
    クライアント装置からのファイルのアクセス要求に応じてファイルを検索するファイル検索手段と、
    前記要求されたファイルが当該ストレージ装置に無い場合には、前記GUID管理データベースから前記ファイルのGUIDに基づいてオリジナルのファイルを有するストレージ装置の装置IDを検索する基準ストレージ装置検索手段と、
    前記装置IDのストレージ装置に前記ファイルのアクセスを要求し、このファイルにアクセスする手段と、
    を備えたことを特徴とする分散ストレージシステム。
JP2003282049A 2003-07-29 2003-07-29 分散ストレージ装置のファイル管理方法及び分散ストレージシステム Expired - Fee Related JP4291077B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003282049A JP4291077B2 (ja) 2003-07-29 2003-07-29 分散ストレージ装置のファイル管理方法及び分散ストレージシステム
US10/834,866 US7165083B2 (en) 2003-07-29 2004-04-30 File management method in a distributed storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003282049A JP4291077B2 (ja) 2003-07-29 2003-07-29 分散ストレージ装置のファイル管理方法及び分散ストレージシステム

Publications (2)

Publication Number Publication Date
JP2005050165A true JP2005050165A (ja) 2005-02-24
JP4291077B2 JP4291077B2 (ja) 2009-07-08

Family

ID=34100981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003282049A Expired - Fee Related JP4291077B2 (ja) 2003-07-29 2003-07-29 分散ストレージ装置のファイル管理方法及び分散ストレージシステム

Country Status (2)

Country Link
US (1) US7165083B2 (ja)
JP (1) JP4291077B2 (ja)

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007286952A (ja) * 2006-04-18 2007-11-01 Nec Corp サーバシステム、サーバ負荷低減方法
JP2008186141A (ja) * 2007-01-29 2008-08-14 Hitachi Ltd データ管理方法、データ管理プログラム、データ管理システム、および、構成管理装置
JP2009529191A (ja) * 2006-03-08 2009-08-13 オムニオン ビデオ ネットワークス 分散メタデータサーバを利用するファイルシステムを有するアーキテクチャにおいてシステムの一意識別子を使用する技法
JP2010134519A (ja) * 2008-12-02 2010-06-17 Hitachi Ltd データベース管理方法、データベース管理プログラム、および、データベース受付装置
JP2010165255A (ja) * 2009-01-16 2010-07-29 Nec Corp 複製ボリュームの動的生成システム、および動的ペア設定方法
JP2012093827A (ja) * 2010-10-25 2012-05-17 Internatl Business Mach Corp <Ibm> ファイルの重複を排除する装置及び方法
CN106104511A (zh) * 2014-03-11 2016-11-09 亚马逊科技公司 基于块的存储的页面高速缓存存录
JP6279780B1 (ja) * 2017-02-20 2018-02-14 株式会社東芝 分散ストレージの非同期リモートレプリケーションシステムおよび分散ストレージの非同期リモートレプリケーション方法
US10489422B2 (en) 2014-03-11 2019-11-26 Amazon Technologies, Inc. Reducing data volume durability state for block-based storage
JP2020021344A (ja) * 2018-08-02 2020-02-06 日本電信電話株式会社 情報管理装置、情報管理方法およびプログラム

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4273934B2 (ja) * 2003-11-13 2009-06-03 株式会社日立製作所 ファイルシステム
US7933870B1 (en) * 2005-10-12 2011-04-26 Adobe Systems Incorporated Managing file information
US20090150399A1 (en) * 2007-12-06 2009-06-11 Patel Paritosh D Method of Improving Remote Desktop Performance
TWI476610B (zh) * 2008-04-29 2015-03-11 Maxiscale Inc 同級間冗餘檔案伺服器系統及方法
US7869383B2 (en) 2008-07-24 2011-01-11 Symform, Inc. Shared community storage network
US8108502B2 (en) * 2008-07-24 2012-01-31 Symform, Inc. Storage device for use in a shared community storage network
US8572137B2 (en) * 2009-09-08 2013-10-29 International Business Machines Corporation Data de-duplication in a distributed network
US8688838B2 (en) * 2009-12-14 2014-04-01 Hewlett-Packard Development Company, L.P. Profile management systems
CN102413156B (zh) * 2010-09-21 2014-04-16 腾讯科技(深圳)有限公司 一种分布式数据存储系统和方法
JP5455945B2 (ja) * 2011-02-14 2014-03-26 株式会社東芝 調停装置、記憶装置、情報処理装置およびプログラム
US8572231B2 (en) * 2011-07-14 2013-10-29 Google Inc. Variable-length nonce generation
WO2015145729A1 (ja) * 2014-03-28 2015-10-01 富士通株式会社 点検結果の更新制御方法、点検結果の記憶制御方法、点検結果の更新制御プログラム、点検結果の記憶制御プログラム及び点検結果の更新制御システム、点検結果の記憶制御システム
US9864791B2 (en) 2014-12-19 2018-01-09 Microsoft Technology Licensing, Llc Flow for multi-master replication in distributed storage
US10021186B2 (en) * 2014-12-19 2018-07-10 Microsoft Technology Licensing, Llc Guaranteed delivery of replication message
CN105242951A (zh) * 2015-11-13 2016-01-13 北京金山安全管理系统技术有限公司 一种软件应用的uuid调用方法
US10831381B2 (en) 2016-03-29 2020-11-10 International Business Machines Corporation Hierarchies of credential and access control sharing between DSN memories
CN108573009B (zh) * 2017-07-03 2021-05-25 北京金山云网络技术有限公司 一种文件搜索方法及装置
US11593347B2 (en) * 2019-10-09 2023-02-28 EMC IP Holding Company LLC Transient software error handling in a distributed system
CN111277634B (zh) * 2020-01-14 2021-12-21 北京金山云网络技术有限公司 一种数据id分配方法、装置、系统以及服务器
CN112764754A (zh) * 2021-01-11 2021-05-07 珠海金山网络游戏科技有限公司 基于Unity 3D的文件标识管理方法、装置及介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5799305A (en) * 1995-11-02 1998-08-25 Informix Software, Inc. Method of commitment in a distributed database transaction
US6256675B1 (en) * 1997-05-06 2001-07-03 At&T Corp. System and method for allocating requests for objects and managing replicas of objects on a network
US6654771B1 (en) * 1999-07-19 2003-11-25 Microsoft Corporation Method and system for network data replication
US6751634B1 (en) * 1999-08-26 2004-06-15 Microsoft Corporation Method and system for detecting object inconsistency in a loosely consistent replicated directory service
US6886019B1 (en) * 2000-05-15 2005-04-26 International Business Machines Corporation Optimized selection and accessing of stored files to avoid mount and position thrashing
JP3992427B2 (ja) * 2000-08-01 2007-10-17 株式会社日立製作所 ファイルシステム
JP4087097B2 (ja) * 2001-11-12 2008-05-14 株式会社日立製作所 データベース管理システム情報を考慮したデータ再配置方法およびデータ再配置を行う計算機システム
US7386529B2 (en) * 2002-12-19 2008-06-10 Mathon Systems, Inc. System and method for managing content with event driven actions to facilitate workflow and other features

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8478873B2 (en) 2006-03-08 2013-07-02 Harmonic Inc. Techniques for use of a system-unique identifier in an architecture having a file system utilizing distributed metadata servers
JP2009529191A (ja) * 2006-03-08 2009-08-13 オムニオン ビデオ ネットワークス 分散メタデータサーバを利用するファイルシステムを有するアーキテクチャにおいてシステムの一意識別子を使用する技法
JP2007286952A (ja) * 2006-04-18 2007-11-01 Nec Corp サーバシステム、サーバ負荷低減方法
JP2008186141A (ja) * 2007-01-29 2008-08-14 Hitachi Ltd データ管理方法、データ管理プログラム、データ管理システム、および、構成管理装置
JP2010134519A (ja) * 2008-12-02 2010-06-17 Hitachi Ltd データベース管理方法、データベース管理プログラム、および、データベース受付装置
JP2010165255A (ja) * 2009-01-16 2010-07-29 Nec Corp 複製ボリュームの動的生成システム、および動的ペア設定方法
US9256610B2 (en) 2010-10-25 2016-02-09 International Business Machines Corporation File deduplication in a file system
US8812460B2 (en) 2010-10-25 2014-08-19 International Business Machines Corporation File deduplication in a file system
JP2012093827A (ja) * 2010-10-25 2012-05-17 Internatl Business Mach Corp <Ibm> ファイルの重複を排除する装置及び方法
US9710336B2 (en) 2010-10-25 2017-07-18 International Business Machines Corporation File deduplication in a file system
CN106104511A (zh) * 2014-03-11 2016-11-09 亚马逊科技公司 基于块的存储的页面高速缓存存录
JP2017515193A (ja) * 2014-03-11 2017-06-08 アマゾン・テクノロジーズ・インコーポレーテッド ブロックベースのストレージにおけるページキャッシュ書き込みロギング
US10055352B2 (en) 2014-03-11 2018-08-21 Amazon Technologies, Inc. Page cache write logging at block-based storage
US10489422B2 (en) 2014-03-11 2019-11-26 Amazon Technologies, Inc. Reducing data volume durability state for block-based storage
US10503650B2 (en) 2014-03-11 2019-12-10 Amazon Technologies, Inc. Page cache write logging at block-based storage
US11188469B2 (en) 2014-03-11 2021-11-30 Amazon Technologies, Inc. Page cache write logging at block-based storage
JP6279780B1 (ja) * 2017-02-20 2018-02-14 株式会社東芝 分散ストレージの非同期リモートレプリケーションシステムおよび分散ストレージの非同期リモートレプリケーション方法
JP2020021344A (ja) * 2018-08-02 2020-02-06 日本電信電話株式会社 情報管理装置、情報管理方法およびプログラム
JP6997992B2 (ja) 2018-08-02 2022-01-18 日本電信電話株式会社 情報管理装置、情報管理方法およびプログラム

Also Published As

Publication number Publication date
US20050027718A1 (en) 2005-02-03
US7165083B2 (en) 2007-01-16
JP4291077B2 (ja) 2009-07-08

Similar Documents

Publication Publication Date Title
JP4291077B2 (ja) 分散ストレージ装置のファイル管理方法及び分散ストレージシステム
US10104175B2 (en) Massively scalable object storage system
US7325041B2 (en) File distribution system in which partial files are arranged according to various allocation rules associated with a plurality of file types
US9069835B2 (en) Organizing data in a distributed storage system
US20050234867A1 (en) Method and apparatus for managing file, computer product, and file system
EP2710477B1 (en) Distributed caching and cache analysis
US20070112812A1 (en) System and method for writing data to a directory
JP2005276094A (ja) 分散ストレージ装置のファイル管理方法及び分散ストレージシステム並びにプログラム
US8572201B2 (en) System and method for providing a directory service network
KR100936238B1 (ko) 파일 입출력과 복제의 균형적 수행을 위한 지연복제 시스템및 방법
WO2014188682A1 (ja) ストレージノード、ストレージノード管理装置、ストレージノード論理容量設定方法、プログラム、記録媒体および分散データストレージシステム
CN104750757B (zh) 一种基于HBase的数据存储方法和设备
US9380127B2 (en) Distributed caching and cache analysis
US8196179B2 (en) Storage controller for controlling access based on location of controller
JP2007018407A (ja) データ複製システム
JP2017500653A (ja) 分散システムにおけるロック・サーバの故障を処理するための方法およびシステム
US20100161585A1 (en) Asymmetric cluster filesystem
US20150106468A1 (en) Storage system and data access method
JP4208506B2 (ja) 高性能記憶装置アクセス環境
CN107493309B (zh) 一种分布式系统中的文件写入方法及装置
KR101696911B1 (ko) 분산 데이터 베이스 장치 및 그 장치에서의 스트림 데이터 처리 방법
US20070106691A1 (en) System and method for efficient directory performance using non-persistent storage
US7058773B1 (en) System and method for managing data in a distributed system
US20090138532A1 (en) Method of file allocating and file accessing in distributed storage, and device and program therefor
WO2012046585A1 (ja) 分散ストレージシステム、その制御方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090223

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090402

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120410

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees