JP4271967B2 - 分散ファイルシステム及び分散ファイルシステムの運用方法 - Google Patents

分散ファイルシステム及び分散ファイルシステムの運用方法 Download PDF

Info

Publication number
JP4271967B2
JP4271967B2 JP2003063569A JP2003063569A JP4271967B2 JP 4271967 B2 JP4271967 B2 JP 4271967B2 JP 2003063569 A JP2003063569 A JP 2003063569A JP 2003063569 A JP2003063569 A JP 2003063569A JP 4271967 B2 JP4271967 B2 JP 4271967B2
Authority
JP
Japan
Prior art keywords
file
client
write
operation authority
token
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 - Lifetime
Application number
JP2003063569A
Other languages
English (en)
Other versions
JP2004272668A (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.)
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 JP2003063569A priority Critical patent/JP4271967B2/ja
Priority to US10/736,630 priority patent/US7613786B2/en
Publication of JP2004272668A publication Critical patent/JP2004272668A/ja
Application granted granted Critical
Publication of JP4271967B2 publication Critical patent/JP4271967B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime 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
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • 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

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、分散ファイルシステム及び分散ファイルシステムの運用方法に係り、特に、複数のクライアント(ノード)によってファイルの共有が可能なトークン方式の分散ファイルシステム及び分散ファイルシステムの運用方法に関する。
【0002】
【従来の技術】
従来の分散ファイルシステムは、トークンを利用してデータのコンシステンシ(一貫性)を保つのもが知られている。このトークンには、データ、属性、サイズ、名前等の種類があり、それぞれのトークンについてリードとライトという状態(ステート)がある。例えば、データリードトークンを保持しているノードは、トークンに対応するファイルへの読み込みが許され、データライトトークンを保持しているノードは、トークンに対応するファイルへの書き込みが許される。また、リードトークンは複数のノードが同時に保持することができるが、ライトトークンはあるひとつのノードのみ保持できる。したがって、同一のファイルは複数のノードが同時に読み込むことができるが、複数のノードが同時に書き込むことができない。
【0003】
さらにデータトークンに関しては、ファイル全体に対して権限を与えるトークンを発行する方式と、データの中のある部分(例えば、ファイルの先頭何バイト目から何バイト目)に限定した範囲に対する権限を与えるトークンを発行する方式がある。
【0004】
このトークンは、例えば、図5のようなフォーマットで構成されている。ファイルIDフォールド31は、どのファイルに対してなされたトークンであるかを示す。リボークトークン種フィールド32は、トークンの種類(データ、属性、サイズ、名前等)を示す。範囲指定フィールド33は、データの中の範囲を指定する。
【0005】
この従来のトークン方式の分散ファイルシステムでは、
(1)複数のノードが読み込み専用で同じファイルを参照する、
(2)あるファイルに対してひとつのノードが読み込み、書き込みを行う、
ようなケースでは非常に効率的なファイルアクセスが行える。一方、
(3)複数のノードが同じファイルに対して読み込み、書き込みを行う、
ようなケースでは、パフォーマンスが極端に低下する。
【0006】
上記(3)のケースの従来の処理の流れを図6のフローチャートを参照して説明する。ここで前提条件として、クライアントAがファイルXのライトデータトークンを保持しており、ファイルXの最新更新データをディスクに未反映(書込前)の状態であるとし、前提条件における処理の流れを太線の矢印で示す。
【0007】
まず、クライアントBがファイルXに対してI/O処理(書込処理又は読出処理)を行った場合(処理101)、クライアントBはファイルXに対して適切なトークン(リード処理ではリードトークン、ライト処理ではライトトークン)を保持しているか否かを、自身のトークン保持テーブルを参照して判定する(処理102)。ファイルXに対する適切なトークンを保持していると判定された場合は処理110に移行する。
【0008】
一方、クライアントBはファイルXに対する適切なトークンを保持していない場合は、サーバCに対して適切なトークンを要求する。サーバCは、トークンの要求を受けると、ファイルXのライトトークンを保持しているクライアント(計算機)があるか否かを、自身のトークン管理テーブルを参照して判定する(処理103)。ファイルXのライトトークンを保持しているクライアントがなければ処理108に移行する。一方、クライアントAがファイルXに対するライトトークンを保持しているため、サーバCはクライアントAに対しトークンリボーク(返却)を要求する。
【0009】
クライアントAはサーバCからのリボーク要求を受けると、自身のキャッシュ内に、ファイルXのデータであってディスクに未反映の(未だ書き込んでいない)ダーティーデータがあるか否かを判定する(処理104)。ダーティーデータがない場合は処理106に移行する。一方、クライアントAにダーティーデータが存在するため、クライアントAはファイルXのダーティーデータをディスク(又はサーバ)に書き戻す(処理105)。次に、クライアントAは自身のトークン保持テーブルからファイルXのライトトークンを削除し、サーバCに対してトークンの返却を通知する(処理106)。サーバCはトークンの返却通知を受けると、トークンの返却を自身のトークン管理テーブルに反映する(処理107)。次に、サーバCは、クライアントBに対して要求トークンの付与をトークン管理テーブルに反映し(処理108)、クライアントBに対し要求トークンを付与する旨のメッセージを送る。クライアントBはメッセージを受け取ると、自身のトークン保持テーブルにトークンの保持を反映する(処理109)。クライアントBのトークンの反映が完了するとディスク(又はサーバ)に対してI/O処理を行ことができる(処理110)。
【0010】
すなわち、あるノードがあるファイルに対してライトデータトークンを保持している状態で、同じファイルに対して別のノードがアクセスしたときに、4回のノード間通信と、2回のディスクI/Oが発生していた。
【0011】
【特許文献1】
特開2000−322306号公報
【非特許文献1】
日本SGI株式会社、“CXFS:クラスタファイルシステム”、[online]、2001年11月5日、インターネット<URL:http://www.sgi.co.jp/products/pdf/sancxfswp.pdf>
【0012】
【発明が解決しようとする課題】
従来の分散ファイルシステムでは、あるノードがトークンを保有しているファイルに対して、他のノードがI/O処理をする場合に、2回のディスクI/O処理と4回のノード間通信が発生し、しかもこの処理は順番に実行しなければならないので、ディスクのI/O処理に時間を必要とし、システムの性能が低下していた。
【0013】
本発明は、上記の不具合を鑑みてなされたものであり、ディスクのI/O処理を減らした分散ファイルシステムを提供することを目的とする。
【0014】
【課題を解決するための手段】
本発明は、サーバがトークンを保持しているノードに対してリボーク要求を発行する際に、トークンを要求しているノードの情報を付加したリボーク要求を発行することにより、同じファイルをストレージに書き戻さず、ダーティーな状態のままのファイルを渡すので、ストレージへのI/O処理回数を可能な限り減らし、処理を並列化する。
【0015】
【発明の作用と効果】
本発明は、あるノードがあるファイルに対してライトデータトークンを保持している状態で、同じファイルに対して別のノードがアクセスしたときに、ファイルをストレージに書き戻さず、ダーティーな状態のままのファイルを渡すので、ストレージへのアクセス回数を減らすことができ、理想的なケースでは4回のノード間通信のみ(ディスクI/Oなし)でファイルへのアクセスが可能となり、システム全体としてのスループットを向上することができる。
【0016】
例えば、ノード間で共有しているログファイルの処理では、複数のノード間で短いデータの追記書きが発生するため、ディスクのI/O回数を軽減させ、スループット性能の性能向上が期待できる。
【0017】
【発明の実施の形態】
以下に、本発明の実施の形態を図面を参照して説明する。
【0018】
図1は、本発明の第1の実施の形態の分散ファイルシステムの構成を表したブロック図である。
【0019】
クライアント10、11は分散ファイルシステムのノードとして機能する計算機である。このクライアント10、11とストレージシステム16とがLAN14によって接続されている。
【0020】
クライアント10、11の各々には、トークン保持テーブル10b、11b、キャッシュ10c、11cが備えられている。トークン保持テーブル10b、11bは、クライアントが保持しているトークンの内容を記憶する。キャッシュ10c、11cは、ストレージシステム16から読み込んだデータを一時的に保管するためのメモリ装置である。このキャッシュ10c、11cには、キャッシュに保持されているデータがダーティーである(ストレージ装置に未だ書き込まれていない未反映のデータがある)か否かを示すダーティーフラグが備えられている。
【0021】
ストレージシステム16には、サーバ12、ストレージ装置13が備えられており、Network Attached Storage(NAS)として機能している。サーバ12とストレージ装置13とはStorage Area Network(SAN)15によって接続されている。このストレージ装置13は、ハードディスク等の記憶装置で構成されている。よって、クライアント10、11は、LAN14を経由してストレージシステム16に備えられたストレージ装置13に記憶されたデータの読み出し及び書き込みができる。
【0022】
サーバ12には、トークン管理テーブル12a、トークン保持テーブル12b、キャッシュ12cが備えられている。トークン管理テーブル12aは、全てのクライアントが、それぞれどのような内容(例えばリード、ライト等)のトークンを保持しているかを該当するデータに対応付けて記憶する。トークン保持テーブル12bは、サーバが保持しているトークンの内容を記録する。キャッシュ12cは、データを一時的に保管するためのメモリである。
【0023】
次に、以上のように構成された本発明の第1の実施の形態の動作について説明する。
【0024】
各クライアント10、11はサーバ12からトークンを付与されることによってファイルへのアクセスが許され、トークンを管理しているサーバ12は、トークン管理テーブル12cを参照することによって、現在、どのクライアントによって、どのファイルに対してどのような処理が行われているのかを知ることができる。
【0025】
例えば、クライアント10にファイルAに対するライトデータトークンが付与されると、クライアント10は、ストレージ装置13からファイルAを読み込んだり、ファイルAを書き込みモードでキャッシュ10cに保持することが可能になる。続いて、クライアント11がファイルAに対するリードデータトークンを要求した場合、サーバ12が、クライアント11からのリードデータトークン要求を受け取ると、トークン管理テーブル12cを参照することで、ファイルAがクライアント10が保有するライトデータトークンによって書き込みモードで保持されていることがわかる。そのため、サーバ12はクライアント10に対してトークンのリボーク(返却)要求を行う。リボーク処理が完了すると、クライアント11にファイルAに対するリードデータトークンが付与され、クライアント11によるファイルAの読み込みが可能となる。
【0026】
図2は、第1の実施の形態のクライアント10、11とサーバ12のファイルのI/O処理(ファイルの読み込み、書き込み等)のフローチャートを示す。
【0027】
なお、このフローチャートの処理の前提条件として、クライアント10がファイルXに対するライトデータトークンを保持しており、ファイルXの最新更新データがディスクに未反映の状態、すなわちファイルXにダーティーデータを含んでいる状態を前提し、前提条件における処理の流れを太線の矢印で示す。
【0028】
まず、クライアント11において、ファイルXを読み込む必要が生じ、分散ファイルシステム上のファイルXに対するI/O要求を発行する(処理201)。
【0029】
クライアント11は、このI/O要求を受けて、まず、自身のトークン保持テーブル11bがファイルXの適切なトークンを保持しているか否かを判定する(処理202)。適切なトークンを保持している、すなわち、ファイルXに対する読み込み処理ならばリードデータトークン、ファイルに対する書き込み処理ならばライトデータトークンを保持していると判定した場合には、サーバ12に対してI/O処理を実行し、ストレージ装置13よりファイルを読み込む(処理218)。
【0030】
処理202において適切なトークンを保持していないと判定した場合には、サーバ12に対してトークンを要求するトークン要求メッセージを送る。サーバ12はトークン要求メッセージを受け取ると、ファイルXのライトデータトークンを保持するクライアントがトークン管理テーブル12aに登録されているか否かを判定する(処理203)。ライトデータトークンを保持しているクライアントが無い場合は、直ちにトークンを付与することが可能であるので、トークン管理テーブル12aにファイルXに対するクライアント11のライトデータトークンの付与を反映し(処理216)、クライアント11にライトデータトークンを付与した旨を通知する。
【0031】
クライアント11は通知を受け取ると、トークン保持テーブル11bに、処理202で要求したトークンの種類(ライト/リード等)を登録し(処理217)、サーバ12に対してI/O処理を実行し、ストレージ装置13よりファイルを読み込む(処理218)。
【0032】
処理203において、ライトデータトークンを保持しているクライアントが既に存在すると判定した場合には、ライトデータトークンを保持しているクライアント(クライアント10)に対してリボーク要求メッセージを送る(処理204)。このリボーク要求メッセージには、図3にて後述するように、トークンを要求しているノード(クライアント11)、要求しているトークンのステート(クライアント11が要求しているステート(リード又はライト))の情報が含まれている。
【0033】
クライアント10は、リボーク要求メッセージを受け取ると、ライトデータトークンのリボーク処理(ライトデータトークンの返却とファイルの受け渡し)を行う。まず、トークン保持テーブル10bからファイルXに対するライトデータトークンを削除する(処理205)。次に、クライアント10のキャッシュ10cにあるファイルXのデータがサーバ12に反映されているかどうか、すなわちファイルXにダーティーデータが存在するか否かを判定する(処理206)。ダーティーデータが存在すると判定した場合には、ダーティーデータを含んだファイルXをトークン要求元(クライアント11)に対して送信する(処理207)。このトークン要求元はトークン要求メッセージに含まれているトークン要求ノードより得る。ファイルXを送ると処理208に移行する。
【0034】
一方、処理206においてダーティーデータが存在しないと判定した場合には、処理208に移行する。
【0035】
次に、ファイルXを受け取ったトークン要求元(クライアント11)は、受信したデータを自身のキャッシュ11cに取り込む(処理211)。このとき、クライアント11が処理202において要求したトークンの種類がリードデータトークンである場合には(処理212)、直ちにファイルXをサーバ12に書き出す処理(ファイルの同期処理)を行う(処理213)。これは、リードデータトークンのみを保有しているクライアントがダーティーデータを含むファイルを持つと、ファイルの一貫性(コンシステンシ)が失われるためである。すなわち、複数のクライアントが同時にファイルを読み出すことができるので、ディスクに未反映のデータがあるとファイルの一貫性が保てないためである。
【0036】
このとき、クライアント10は、処理205で受け取ったリボーク要求メッセージからトークン要求元の要求トークンステートフィールドを参照して、要求トークンの種類(要求トークンがリードであるかライトであるか)を判定する(処理208)。トークン要求元がライトデータトークンを要求していると判定した場合には、自身の持つキャッシュ10cにあるファイルXのダーティーデータを全て破棄する(処理209)。これは、同一のファイルに対して複数のクライアントにライトトークンを付与することはできないため、他のノードがライトデータトークンを要求した場合には、リボーク処理によってファイルの所有権を新たにライトデータトークンを保有するクライアントに完全に移行するためである。処理が完了すると、トークン要求元(クライアント11)に対して自身のトークンステートの変化を通知する。
【0037】
一方、処理208でトークン要求元がリードデータトークンを要求していると判定した場合には、キャッシュ内にあるファイルXのダーティーデータに対応するダーティー状態を示すダーティーフラグをクリアし、データ自体は破棄せず読み込み専用データに変更してキャッシュ10cに保存しておく。次に、自身のトークン保持テーブルにファイルXのリードデータトークンを登録する(処理210)。これは同一のファイルに対してリードデータトークンは複数のクライアントが持つことができるためであり、ファイルXの中のダーティーデータは処理213によってディスクに反映されるからである。処理が完了すると、トークン要求元(クライアント11)に対して自身のトークンステートの変化を通知する。
【0038】
ここで、クライアント11は、処理209又は処理210によって、クライアント10からトークンステートの変化の通知を受け、さらに処理213が完了すると、クライアント10(トークンリボーク要求先)と自身(トークン要求元であるクライアント11)のトークンステートの変化をサーバ12に送信する(処理214)。なお、このクライアント10のトークンステートの変化を、クライアント11を経由することなく、クライアント10からサーバ12に直接送信するようにしてもよい。
【0039】
サーバ12はこの変化をトークン管理テーブル12aに反映する(処理215)。
【0040】
次に、クライアント11は、自身のトークン保持テーブル11cに、処理202で要求したトークンの登録を行う(処理217)。そして、必要ならばサーバ12に対してI/O処理を実行し、ストレージ装置13よりファイルを読み込む(処理218)。
【0041】
以上の処理によって、クライアント10に対するトークンのリボーク処理が完了し、ダーティーデータを含んだデータXがクライアント10からクライアント11へ渡される。
【0042】
なお、上記の処理では、クライアント10からクライアント11に対してダーティーデータを含んだファイルXの送信(処理207→処理211)とトークン状態変化通知の送信(処理209、210→処理214)は別に行っているが、ひとつのメッセージにまとめて一度に送信することも可能である。
【0043】
また、図2の処理207おいて、クライアント11に送る代わりにストレージ装置13に書き出した方が性能上有利である場合、すなわちクライアント(またはサーバ12)が、LANのスループット性能やストレージ装置のI/Oのスループット性能等から予め設定しておいた性能予測式に基づいて、ディスクのI/Oスループット性能がLANのスループット性能より高いと判断した場合には、要求クライアントに対してファイルを送らずに、ストレージ装置13に書き出す処理を行いダーティー状態でなくなったファイルを、要求クライアントが読み出すようにしてもよい。こうすることで、スループットの高い処理手段を優先でき、分断ファイルシステム全体としてのスループットが向上する。
【0044】
図3に、図2に処理204において送信されるトークン要求メッセージの詳細を示す。
【0045】
トークン要求メッセージは、ファイルIDフィールド41、リボークトークン種フィールド42、範囲指定フィールド43、要求トークンステートフィールド44、トークン要求ノードIDフィールド45から構成される。
【0046】
ファイルIDフィールド41は、トークンの要求を行うファイルの情報を示している。リボークトークン種フィールド42は、トークンの種別(例えばデータ、属性、サイズ、ファイル名等)を示す。範囲指定フィールド43は、ファイルの範囲を示す。これはトークンによってファイルの範囲指定が可能な分散ファイルシステムにおいて、この範囲指定フィールド43で指定した範囲内のみでクライアントが処理を行うことができるものである。要求トークンステートフィールド44は、トークンのステート(リード/ライト)を示す。トークン要求ノードIDフィールド45は、トークンを要求している要求元のクライアントの情報を示す。
【0047】
以上のように構成された本発明の第1の実施の形態の分散ファイルシステムでは、あるクライアントが持っているダーティーデータを含んだファイルを他のクライアントが要求した場合に、ファイルをストレージに書き戻さず、ダーティーな状態のままのファイルを他のクライアントに渡すので、ストレージへのアクセス回数を減らすことができ、分散ファイルシステム全体のスループットを向上することができる。
【0048】
次に、本発明の第2の実施の形態の分散ファイルシステムについて説明する。第2の実施の形態では、第1の実施の形態と比較すると、各クライアントが直接ストレージとSANによって接続されており、サーバを経由することなくストレージ上のデータを読み書きできる点が相違する。なお、第1の実施例と同一の動作をする構成には同一の符号を付し、その説明は省略する。
【0049】
図4は第2の実施の形態の分散ファイルシステムの構成を表したブロック図である。
【0050】
クライアント10、11とストレージシステム26(サーバ22)とがLAN24によって接続されている。
【0051】
ストレージシステム26には、サーバ22、ストレージ装置13が備えられており、サーバ22とストレージ装置13とはSAN25によって接続されている。
【0052】
また、クライアント10、11も、ストレージ装置13とSAN25によって接続されている。そのため、クライアント10、11はサーバ22を介することなくストレージ装置13にあるファイルを読み込み、ストレージ装置23に対してファイルを書き込むことができる。すなわち、クライアント10、11、サーバ22、ストレージ装置13がSANを構成している。
【0053】
サーバ22には、トークン管理テーブル22a、トークン保持テーブル22b、キャッシュ22cが備えられている。トークン管理テーブル22aは、各クライアントから発行されたトークンを受け取り、受け取ったトークンは、どのクライアントから、どのような内容(例えばリード、ライト等)のトークンであるかを該当するデータに対応付けて記憶する。トークン保持テーブル22bは、クライアントが要求したトークンの内容を保持する。キャッシュ22cは、データを一時的に保管するためのメモリである。
【0054】
次に、上記のように構成された第2の実施の形態の分散ファイルシステムについて、次に動作を説明する。
【0055】
本実施の形態の処理の流れは、第1の実施の形態(図2)と基本的には同一であるが、クライアント10、11は、ストレージ装置13に対するI/Oをサーバを介することなく行うことができる。図2の処理213では、ファイルXをサーバ12に対して送った後にストレージ装置13に書き込まれるが、第2の実施の形態では、クライアント11が直接ストレージ装置13に対してI/Oを行いファイルXを書き込む。同様に、処理218では、クライアント11が直接ストレージ装置13に対してファイルXに対するI/Oを発行する。
【0056】
以上のように構成された第2の実施の形態では、第1の実施の形態の効果に加え、クライアントがサーバ12を介すことなくストレージ装置にI/Oが行えるので、サーバ12の処理が軽減され、結果として分散ストレージシステム全体としてのスループットを向上することができる。
【図面の簡単な説明】
【図1】 本発明の第1の実施の形態の分散ファイルシステムの構成を示すブロック図である。
【図2】 同じく分散ファイルシステムの処理を示すフローチャートである。
【図3】 同じくリボーク要求トークンの内容を示すフォーマット図である。
【図4】 本発明の第2の実施形態の分散ファイルのシステムの構成を示すブロック図である。
【図5】 従来のトークンリボーク要求の内容を示すフォーマット図である。
【図6】 従来の分散ファイルシステムの処理を示すフローチャートである。
【符号の説明】
10、11 クライアント
10b、11b トークン保持テーブル
10c、11c キャッシュ
12 サーバ
12a トークン管理テーブル
12b トークン保持テーブル
12c キャッシュ
13 ストレージ装置
14 LAN
15 SAN
16 ストレージシステム
20 クライアント
22 サーバ
22a トークン管理テーブル
22b トークン保持テーブル
22c キャッシュ
23 ストレージ装置
25 SAN
26 ストレージシステム

Claims (6)

  1. ファイルを保持するストレージ装置と、前記ストレージ装置に対してファイルの操作を行う複数のクライアントと、前記複数のクライアントによるファイルに対する書き込み及び読み込み操作権限を管理するサーバと、がネットワークを介して通信可能に接続された分散ファイルシステムであって、
    第1のクライアントは、
    前記ファイルに対する書き込み又は読み込み要求を生成する手段と、
    前記ファイルに対して、自身が書き込み又は読込み操作権限を有するか否かを示す操作権限情報を保持する手段と、
    前記書き込み又は読み込み要求が生成された前記ファイルについて、自身が書き込み又は読み込み操作権限を有するか否かを前記操作権限情報に基づいて判断する手段と、
    前記判断の結果、前記ファイルについて書き込み又は読み込み操作権限が無い場合、前記ファイルに対する書き込み又は読み込み操作権限の付与の要求、該ファイルのID及び前記第1のクライアントのIDを含む操作権限付与要求を前記サーバに送信する手段と、を有し、
    前記サーバは、
    前記複数のクライアント毎に、クライアントのID、前記ファイルのID及び現在の書き込み又は読み込み操作権限の状態を示す情報を対応付けて管理する手段と、
    前記第1のクライアントから前記操作権限付与要求を受け、当該ファイルに対する書き込み操作権限を有するクライアントを、前記対応付けられた情報に基づいて検索する手段と、
    前記検索の結果、前記書き込み操作権限を有する第2のクライアントがある場合、前記第1のクライアントのID及び前記ファイルのIDを含む書き込み操作権限返還要求を前記第2のクライアントに送信する手段と、を有し、
    前記第2のクライアントは、
    自身に設けられた記憶部に記憶された、前記ファイルのIDに対応するファイルが前記ストレージ装置に反映済みであるか否かを示す情報を保持する手段と、
    前記サーバから書き込み操作権限返還要求を受信し、前記ストレージ装置に反映済みであるか否かを示す情報に基づいて、当該書き込み操作権限返還要求に対応するファイルが、前記ストレージ装置に反映済みであるか否かを判断する手段と、
    該判断結果が未反映の場合、前記書き込み操作権限返還要求に含まれた前記第1のクライアントのIDに基づいて、前記第1クライアントに前記ファイルを送信する手段と、
    を有することを特徴とする分散ファイルシステム。
  2. 請求項1に記載の分散ファイルシステムであって、
    前記第2クライアントは、前記第1クライアントに前記ファイルを送信した後、自身に設けられた記憶部に記憶した前記ストレージ装置に未反映のファイルを削除する手段を備えることを特徴とする分散ファイルシステム。
  3. 請求項1又は請求項2に記載の分散ファイルシステムであって、
    前記第1クライアントは、前記第2クライアントから送信された前記ストレージ装置に未反映のファイルを受信した後、前記サーバに送信した前記操作権限要求が、読み込み操作権限である場合、該ファイルを前記ストレージ装置に反映することを特徴とする分散ファイルシステム。
  4. ファイルを保持するストレージ装置と、前記ストレージ装置に対してファイルの操作を行う複数のクライアントと、前記複数のクライアントによるファイルに対する書き込み及び読み込み操作権限を管理するサーバと、がネットワークを介して通信可能に接続された分散ファイルシステムの運用方法であって、
    第1のクライアントが、
    前記ファイルに対する書き込み又は読み込み要求を生成するステップと、
    前記ストレージ装置に格納されたファイルのIDと、前記ファイルに自身が書き込み又は読込み操作権限を有するか否かを示す操作権限情報とを保持するステップと、
    前記書き込み又は読み込み要求が生成された前記ファイルについて、自身が書き込み又は読み込み操作権限を有するか否かを前記操作権限情報に基づいて判断するステップと、
    前記判断の結果、前記ファイルについて書き込み又は読み込み操作権限が無い場合、前記ファイルに対する書き込み又は読み込み操作権限の付与の要求、該ファイルのID及び前記第1のクライアントのIDを含む操作権限付与要求を前記サーバに送信するステップと、を含み、
    前記サーバが、
    前記複数のクライアント毎に、クライアントのID、前記ファイルのID及び現在の書き込み又は読み込み操作権限の状態を示す情報を対応付けて管理するステップと、
    前記第1のクライアントから前記操作権限付与要求を受け、当該ファイルに対する書き込み操作権限を有するクライアントを、前記対応付けられた情報に基づいて検索するステップと、
    前記検索の結果、前記書き込み操作権限を有する第2のクライアントがある場合、前記第1のクライアントのID及び前記ファイルのIDを含む書き込み操作権限返還要求を前記第2のクライアントに送信するステップと、を含み、
    前記第2のクライアントが、
    自身に設けられた記憶部に記憶された、前記ファイルのIDに対応するファイルが前記ストレージ装置に反映済みであるか否かを示す情報を保持するステップと、
    前記サーバから書き込み操作権限返還要求を受信し、前記ストレージ装置に反映済みであるか否かを示す情報に基づいて、当該書き込み操作権限返還要求に対応するファイルが、前記ストレージ装置に反映済みであるか否かを判断するステップと、
    該判断結果が未反映の場合、前記書き込み操作権限返還要求に含まれたクライアントのIDに基づいて、前記第1クライアントに前記ファイルを送信するステップと、
    を含むことを特徴とする分散ファイルシステムの運用方法。
  5. 請求項4に記載の分散ファイルシステムの運用方法であって、
    前記第2クライアントが、前記第1クライアントに前記ファイルを送信した後、自身に設けられた記憶部に記憶した前記ストレージ装置に未反映のファイルを削除するステップを更に含むことを特徴とする分散ファイルシステムの運用方法。
  6. 請求項4又は請求項5に記載の分散ファイルシステムの運用方法であって、
    前記第1クライアントが、前記第2クライアントから送信された前記ストレージ装置に未反映のファイルを受信した後、前記サーバに送信した前記操作権限要求が読み込み操作権限である場合、該ファイルを前記ストレージ装置に反映するステップを更に含むことを特徴とする分散ファイルシステムの運用方法。
JP2003063569A 2003-03-10 2003-03-10 分散ファイルシステム及び分散ファイルシステムの運用方法 Expired - Lifetime JP4271967B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2003063569A JP4271967B2 (ja) 2003-03-10 2003-03-10 分散ファイルシステム及び分散ファイルシステムの運用方法
US10/736,630 US7613786B2 (en) 2003-03-10 2003-12-17 Distributed file system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003063569A JP4271967B2 (ja) 2003-03-10 2003-03-10 分散ファイルシステム及び分散ファイルシステムの運用方法

Publications (2)

Publication Number Publication Date
JP2004272668A JP2004272668A (ja) 2004-09-30
JP4271967B2 true JP4271967B2 (ja) 2009-06-03

Family

ID=33125115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003063569A Expired - Lifetime JP4271967B2 (ja) 2003-03-10 2003-03-10 分散ファイルシステム及び分散ファイルシステムの運用方法

Country Status (2)

Country Link
US (1) US7613786B2 (ja)
JP (1) JP4271967B2 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8533291B1 (en) * 2007-02-07 2013-09-10 Oracle America, Inc. Method and system for protecting publicly viewable web client reference to server resources and business logic
US20080271130A1 (en) * 2007-04-30 2008-10-30 Shankar Ramamoorthy Minimizing client-side inconsistencies in a distributed virtual file system
US9323681B2 (en) 2008-09-18 2016-04-26 Avere Systems, Inc. File storage system, cache appliance, and method
US8214404B2 (en) 2008-07-11 2012-07-03 Avere Systems, Inc. Media aware distributed data layout
US20120102314A1 (en) * 2010-04-01 2012-04-26 Huizhou TCL Mobile Communications Co., Ltd. Smart phone system and booting method thereof
US9092149B2 (en) 2010-11-03 2015-07-28 Microsoft Technology Licensing, Llc Virtualization and offload reads and writes
US9146765B2 (en) 2011-03-11 2015-09-29 Microsoft Technology Licensing, Llc Virtual disk storage techniques
US20130041985A1 (en) * 2011-08-10 2013-02-14 Microsoft Corporation Token based file operations
US9817582B2 (en) 2012-01-09 2017-11-14 Microsoft Technology Licensing, Llc Offload read and write offload provider
US9071585B2 (en) 2012-12-12 2015-06-30 Microsoft Technology Licensing, Llc Copy offload for disparate offload providers
US9251201B2 (en) 2012-12-14 2016-02-02 Microsoft Technology Licensing, Llc Compatibly extending offload token size
US11232429B2 (en) * 2018-12-19 2022-01-25 Paypal, Inc. Automated data tokenization through networked sensors

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5175851A (en) * 1989-05-15 1992-12-29 International Business Machines Corporation System and method for controlling client machine access to a portion of a file with a variable length
EP0756730B1 (en) * 1994-04-21 1998-09-23 BRITISH TELECOMMUNICATIONS public limited company Data storage
JP3504763B2 (ja) * 1994-08-19 2004-03-08 富士通株式会社 分散システムに使用されるクライアント,サーバ及び記憶装置並びに分散システムにおける資源管理用サーバの復旧方法
US5634122A (en) * 1994-12-30 1997-05-27 International Business Machines Corporation System and method for multi-level token management for distributed file systems
US5742812A (en) * 1995-08-28 1998-04-21 International Business Machines Corporation Parallel network communications protocol using token passing
US6385704B1 (en) * 1997-11-14 2002-05-07 Cirrus Logic, Inc. Accessing shared memory using token bit held by default by a single processor
US6466978B1 (en) * 1999-07-28 2002-10-15 Matsushita Electric Industrial Co., Ltd. Multimedia file systems using file managers located on clients for managing network attached storage devices
US6246871B1 (en) * 1999-09-24 2001-06-12 Nokia Networks Oy Method and apparatus for providing access of messages to multiple recipients in cellular networks
US6834351B1 (en) * 1999-10-29 2004-12-21 Gateway, Inc. Secure information handling system
US6385701B1 (en) * 1999-11-19 2002-05-07 International Business Machines Corporation Method, system and program products for sharing data between varied clients using token management
US6684306B1 (en) * 1999-12-16 2004-01-27 Hitachi, Ltd. Data backup in presence of pending hazard
WO2001061590A2 (en) * 2000-02-14 2001-08-23 Ubs Painewebber Inc. System for providing financial services
US6826570B1 (en) * 2000-07-18 2004-11-30 International Business Machines Corporation Dynamically switching between different types of concurrency control techniques to provide an adaptive access strategy for a parallel file system
US6665675B1 (en) * 2000-09-07 2003-12-16 Omneon Video Networks Shared file system having a token-ring style protocol for managing meta-data
US7325064B2 (en) * 2001-07-17 2008-01-29 International Business Machines Corporation Distributed locking protocol with asynchronous token prefetch and relinquish
JP2003322306A (ja) 2002-05-01 2003-11-14 Samson Co Ltd 予備給水ポンプを設けたボイラ
JP2004192483A (ja) * 2002-12-13 2004-07-08 Hitachi Ltd 分散ストレージシステムの管理方法

Also Published As

Publication number Publication date
US7613786B2 (en) 2009-11-03
US20040205202A1 (en) 2004-10-14
JP2004272668A (ja) 2004-09-30

Similar Documents

Publication Publication Date Title
US11388251B2 (en) Providing access to managed content
US8396938B2 (en) Providing direct access to distributed managed content
US7624207B2 (en) Method, system and program products for reducing data movement within a computing environment
JP2018531465A6 (ja) メッセージデータを格納するためのシステム及び方法
JP2018531465A (ja) メッセージデータを格納するためのシステム及び方法
JP2005004778A (ja) ネットワーク化環境においてシャドウコピーを開示する機構
JP4271967B2 (ja) 分散ファイルシステム及び分散ファイルシステムの運用方法
US10503693B1 (en) Method and system for parallel file operation in distributed data storage system with mixed types of storage media
US9910808B2 (en) Reflective memory bridge for external computing nodes
JP4247975B2 (ja) データ管理方法、データ管理システム、およびそのためのプログラムならびに記録媒体
US9489456B1 (en) Previewing file information over a network
WO2012046585A1 (ja) 分散ストレージシステム、その制御方法、およびプログラム
JP2019532399A (ja) スケーラブルメッセージングシステムにおけるデータ複製
KR100785774B1 (ko) 객체 기반 파일 입출력 시스템 및 방법
US20050071338A1 (en) Data file system, data access node, brain node, data access program storage medium and brain program storage medium
JP4492569B2 (ja) ファイル操作制御装置、ファイル操作制御システム、ファイル操作制御方法及びファイル操作制御プログラム
US10762011B2 (en) Reflective memory bridge for external computing nodes
JP7279450B2 (ja) 並列コンピュータシステム
JP2005092288A (ja) 分散ファイル共有システム、方法、及び、サーバ、クライアント、クライアントにおける分散ファイル共有プログラム
KR100343231B1 (ko) 클러스터 파일 시스템 및 시스템내의 매핑 방법
JP2006185463A (ja) ゲートウェイ装置
US9934230B1 (en) Delegations for non-regular files
JPH10173709A (ja) ネットワークサーバ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090119

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

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

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

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4271967

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20120306

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130306

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term