JP4448005B2 - 記憶システム - Google Patents

記憶システム Download PDF

Info

Publication number
JP4448005B2
JP4448005B2 JP2004308017A JP2004308017A JP4448005B2 JP 4448005 B2 JP4448005 B2 JP 4448005B2 JP 2004308017 A JP2004308017 A JP 2004308017A JP 2004308017 A JP2004308017 A JP 2004308017A JP 4448005 B2 JP4448005 B2 JP 4448005B2
Authority
JP
Japan
Prior art keywords
server device
data
command
server
shared memory
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
JP2004308017A
Other languages
English (en)
Other versions
JP2006119966A (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 JP2004308017A priority Critical patent/JP4448005B2/ja
Priority to US11/009,812 priority patent/US7451279B2/en
Publication of JP2006119966A publication Critical patent/JP2006119966A/ja
Application granted granted Critical
Publication of JP4448005B2 publication Critical patent/JP4448005B2/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
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Description

本発明は、クライアントと接続され、このクライアントが用いるデータを記憶する記憶システムに関する。
近年、ネットワークを介してクライアントから転送されたデータを記憶するNAS(Network Attached Storage)と呼ばれる記憶システムが普及している。NASは、主としてサーバ装置とディスク装置とから構成される。サーバ装置は、クライアントからデータ入出力に関するコマンドを受信し、このコマンドに応じてディスク装置に対するデータの読み書きを制御する。
近年では、クライアントの性能向上に伴い、クライアントが扱うデータのサイズが増加している。そのため、記憶システムに対して、記憶容量の増大が望まれるとともに、データの入出力速度の向上が望まれている。一般的に、記憶システムのデータの入出力速度を向上させるためには、例えば、サーバ装置のCPUを高性能なものと交換したり、搭載するメモリの容量を増設することなどが必要である。しかし、サーバ装置に搭載可能なCPUの種類やメモリの容量には限界があるため、近年では、サーバ装置自体の数を増やすことで、システム全体の性能向上を図る技術が提案されている。
このように、サーバ装置を複数備える記憶システムとして、下記特許文献1には、ネットワークエレメントと称された複数のサーバ装置が、スイッチング装置を介して複数のディスク装置に接続された記憶システムの構成が開示されている。
米国特許第6671773号明細書
しかしながら、複数のサーバ装置を備える従来の記憶システムにおいて、あるサーバ装置が、クライアントから受信したコマンドを、そのコマンドの処理に適した他のサーバ装置に転送するような場合には、ディスク装置に書き込みを行うユーザデータも含めてコマンド全体を転送する必要があった。そのため、ユーザデータのサイズが大きい場合には、データ転送を行うサーバ装置のCPU負荷が増大し、クライアントに対するレスポンス遅延が発生するおそれがあった。このような課題は、NASに限らず複数のサーバ装置を備える記憶システム全般に共通の課題であった。
本発明は、このように、サーバ装置間でコマンドを転送することに伴って生じる課題を解決するためになされたものであり、さらに、記憶システム全体の性能向上を図ることを目的としている。
上記目的を踏まえ、本発明の記憶システムは、クライアントと接続され、該クライアントが用いるデータを記憶する記憶システムであって、
複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置と、少なくとも一部の前記ファイルシステムを各々排他的に管理する複数のサーバ装置と、前記各サーバ装置が共通して用いる共有メモリとを備え、
前記サーバ装置は、
データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する判別部と、
前記判別部によって判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行うデータ処理部とを備え
前記サーバ装置の判別部は、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されていることを要旨とする。
本発明の記憶システムが備えるサーバ装置は、クライアントから受信したコマンドの処理対象となるデータが、他のサーバ装置が管理しているデータであると判別した場合には、コマンド全体ではなく、コマンド中に含まれる制御データ部分のみを、そのサーバ装置に転送する。そのため、サーバ装置間でやり取りが行われるデータ量が削減されることになり、クライアントに対するレスポンス遅延が抑制され、記憶システム全体の処理能力を向上させることができる。
上記構成の記憶システムにおいて、
前記サーバ装置は、更に、前記判別部によるサーバ装置の判別を行った自身以外のサーバ装置から前記制御データの転送を受けたときに、該制御データによって特定されるデータを前記記憶装置から読み出し、前記共有メモリに転送する共有メモリ転送部を備えものとしてもよい。
このような構成によれば、記憶システムが備える全てのサーバ装置が、他のサーバ装置からの制御データの転送を受け付けることができる。
上記構成の記憶システムにおいて、
前記サーバ装置のデータ処理部は、前記コマンドがデータの書き込みに関するコマンドである場合には、前記コマンド中に含まれるユーザデータによって前記共有メモリに転送されたデータを更新する更新処理部を備えるものとしてもよい。この場合、前記サーバ装置は、更に、前記共有メモリに転送したデータが、前記制御データを送信したサーバ装置によって更新された場合に、該更新されたデータを、前記記憶装置に書き戻す書込処理部を備えるものとすることができる。
このような構成によれば、コマンド中に含まれるユーザデータをサーバ装置同士で直接授受することなく、共有メモリを介して記憶装置に書き込むことができる。そのため、各サーバ装置にかかる処理負担を軽減することができる。
上記構成の記憶システムにおいて、
前記サーバ装置のデータ処理部は、前記コマンドがデータの読み出しに関するコマンドである場合には、前記共有メモリに転送されたデータを前記クライアントに対して出力する読出処理部を備えるものとしてもよい。
このような構成によれば、記憶装置から読み出したデータを、サーバ装置同士で直接授受することなく、共有メモリを介してクライアントに出力することができる。そのため、各サーバ装置にかかる処理負担を軽減することができる。
上記構成の記憶システムにおいて、
前記サーバ装置の判別部は、前記各サーバ装置と該各サーバ装置が固有に管理する前記記憶装置内のファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別するものとしてもよい。
このような構成によれば、管理テーブルを用いることによって容易に制御データを転送すべきサーバ装置を判別することができる。
上記構成の記憶システムにおいて、
更に、前記管理テーブルの設定を前記サーバ装置毎に行うための管理装置を備えるものとしてもよい。
このような構成によれば、クライアントに対してアクセスを許可するファイルシステムをサーバ装置毎に柔軟に設定することができる。
上記構成の記憶システムにおいて、
前記サーバ装置は、該サーバ装置が備えるローカルメモリ内の記憶領域のアドレスと前記共有メモリ内の記憶領域のアドレスとが共通のアドレス体系によってマッピングされたメモリマップを有しており、該メモリマップを用いて、前記共有メモリにアクセスする手段を備えるものとしてもよい。
このような構成によれば、サーバ装置は、自己のローカルメモリに対するアクセスと同様の手法によって、容易に共有メモリにアクセスすることができる。
上記構成の記憶システムにおいて、
前記共有メモリは、電源がバックアップされた不揮発性のメモリであるものとしてもよい。
このような構成によれば、停電などによって電源が切断された場合であっても、共有メモリ内に記憶されたデータが喪失することを抑制することができる。
なお、上記記憶システムは、前記共有メモリを、前記各サーバ装置のローカルメモリ内にそれぞれ共有メモリ領域として備えるものとし、各サーバ装置は、相互に他のサーバ装置の共有メモリ領域をマッピングしたメモリマップを有するものとしてもよい。このような構成であれば、ハードウェア構成を簡略化することができる。
また、本発明は、次のようなサーバ装置としても構成することができる。すなわち、複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置と、少なくとも一部の前記ファイルシステムを各々排他的に管理する複数のサーバ装置と、前記各サーバ装置が共通して用いる共有メモリとを備える記憶システムに用いられる前記サーバ装置であって、
データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する判別部と、
前記判別部によって判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行うデータ処理部とを備え、
前記判別部は、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されている
サーバ装置である。

このような構成のサーバ装置によっても、サーバ装置間でやり取りが行われるデータ量が削減されることになるため、クライアントに対するレスポンス遅延が抑制され、記憶システム全体の処理能力を向上させることができる。
また、本発明は、上述した記憶システムやサーバ装置としての構成のほか、例えば、サーバ装置が他のサーバ装置と共に共有メモリを用いてデータの入出力を行うデータ処理方法やデータの入出力を制御するためのコンピュータプログラムとしても構成することができる。このコンピュータプログラムは、データ信号として搬送波内に具現化されていてもよいし、コンピュータ読み取り可能な記録媒体に記録されているものとしてもよい。記録媒体としては、例えば、CD−ROMやフレキシブルディスク、光磁気ディスク、DVDなどを用いることができる。
以下、本発明の作用・効果を一層明らかにするため、本発明の実施の形態を実施例に基づき次の順序で説明する。
A.記憶システムの構成:
B.ファイルアクセス処理:
A.記憶システムの構成:
図1は、実施例としての記憶システム1000のハードウェア構成を示す説明図である。記憶システム1000は、LANを介して接続されたクライアントCL1,CL2が用いる種々のデータを記憶するためのファイルサーバとして用いられるシステムである。
本実施例の記憶システム1000は、第1サーバ装置100aと、第2サーバ装置100bと、共有メモリ200と、ディスク装置400a,400bが接続されたディスクコントローラ300aと、ディスク装置400c,400dが接続されたディスクコントローラ300bとを備えており、これらは、スイッチ500を介してそれぞれ接続されている。なお、ここではスイッチ500を介して接続するものとしたが、バスやネットワークを介して接続するものとしてもよい。なお、サーバ装置やディスクコントローラ、ディスク装置の台数は任意であり、より多くの数を備えるものとしてもよい。
第1サーバ装置100aおよび第2サーバ装置100bは、ディスク装置400a〜400dに記憶されたファイルシステムをそれぞれ排他的に管理している。例えば、図中に記載したファイルシステムFS1〜FS3を第1サーバ装置100aが管理し、残りのファイルシステムFS4〜FS8を第2サーバ装置100bが管理することなどができる。なお、各サーバ装置100は、ファイルシステムを完全に排他的に管理するものとしてもよいが、その一部を重複して管理するものとしてもよい。
本実施例の各サーバ装置100は、他のサーバ装置100が管理しているファイルシステムも含めて、記憶システム1000内に保持されているファイルシステムの全ての所在を把握している。そのため、自己の管理しているファイルシステムだけではなく、他のサーバ装置100が管理しているファイルシステムに対するアクセスもクライアントCLから受け付けることができる。例えば、第1サーバ装置100aが、クライアントCL1から、第2サーバ装置100bが管理しているファイルシステムFS7へのデータの書き込みコマンドを受信したとすると、第1サーバ装置100aは、スイッチ500を介して、このコマンド中の制御データ部分を第2サーバ装置100bに直接転送し、コマンド中に含まるユーザデータ部分については、一旦、自身のローカルメモリ130a内に保持する。第1サーバ装置100aから制御データを受信した第2サーバ装置100bは、共有メモリ200内のキャッシュ位置を第1サーバ装置100aに通知する。第1サーバ装置100aは、通知された共有メモリ200内のキャッシュ位置に対してローカルメモリ130a内に保持しておいたユーザデータを書き込む。第2サーバ装置100bは、第1サーバ装置100aによって共有メモリに書き込まれたユーザデータを、自己の管理するファイルシステムFS7に書き込みを行う。このような処理を行うことで、各サーバ装置100は、他のサーバ装置100が管理しているファイルシステムに対するアクセスを受け付けることができる。
次に、記憶システム1000を構成する各装置のハードウェア構成について簡単に説明する。なお、説明の便宜上、サーバ装置やディスクコントローラを個別に区別する必要のない場合には、符号の一部(符号の末端のa,b等)を省略して説明する。
第1サーバ装置100aおよび第2サーバ装置100bは、それぞれ、CPU110、ROM120、ローカルメモリ130、LANに対して接続を行うためのネットワークインタフェース140、スイッチ500に対して接続を行うためのアダプタ150等を備えている。
ROM120には、サーバ装置100の動作を制御するための制御プログラムが記憶されている。CPU110は、この制御プログラムを実行することで、判別部、データ処理部、共有メモリ転送部、更新処理部、書込処理部、読出処理部として機能する。
ローカルメモリ130は、CPU110が上述した制御プログラムを実行する際のワークエリアとして用いられる。また、ローカルメモリ130には、自己や他のサーバ装置100が管理しているファイルシステムを統括的に管理するためのファイルシステム管理テーブルFTや共有メモリ200内のデータを管理するキャッシュ管理テーブルCTが記憶されている。これらのテーブルの詳細については後述する。
ディスクコントローラ300a,300bは、それぞれ、スイッチ500に対して接続を行うためのアダプタ310a,310bと、マイクロプロセッサ320a,320bとを備えている。マイクロプロセッサ320a,320bは、第1サーバ装置100aや第2サーバ装置100bからの指示に従い、そのディスクコントローラ300a,300bに接続された磁気ディスク400aないし400bに対するデータの読み書きを制御する。
共有メモリ200は、各サーバ装置100が共通してキャッシュメモリとして用いるメモリである。内部の記憶領域は、サーバ装置毎に使用可能な領域が区分されている。例えば、第1サーバ装置100aは、図1に示す共有メモリ200中の「第1サーバ用領域」と示した領域を使用する。この共有メモリ200は、バッテリによって記憶内容がバックアップされた不揮発性のメモリによって構成されている。そのため、停電などによって電源が遮断された場合であっても、記憶内容が保持されることになり、キャッシュされたデータが喪失することを抑制することができる。
図2は、各サーバ装置100が自己のローカルメモリ130や共有メモリ200にアクセスする際に用いるメモリマップを模式的に示す説明図である。このメモリマップには、個々のサーバ装置が備えるローカルメモリ130内の領域と共有メモリ200内の領域が、共通のアドレス体系によって連続的にマッピングされている。各サーバ装置100は、このメモリマップを用いることで、自己のローカルメモリ130に対するアクセス方法と同様の手法で共有メモリ200にアクセスすることができる。
図3は、クライアントCLとサーバ装置100間で授受されるコマンドのデータ構造を示す説明図である。図3(a)は、サーバ装置100がクライアントCLから受信するリクエストコマンドのデータ構造を示し、図3(b)は、サーバ装置100がクライアントCLに対して返信するレスポンスコマンドのデータ構造を示している。図示したコマンド中、ハッチングを施した部分は、ディスク装置400への読み書きの対象となるユーザデータを表し、その他の部分は、この読み書きを制御するための制御データを表している。
図3(a)に示すように、リクエストコマンドは、コマンド種別とファイルハンドルとコマンド長とパラメータとによって構成される。コマンド種別は、例えば、「リード」や「ライト」といったコマンドの種別を表す。ファイルハンドルは、コマンド処理の対象となるファイルを指定するための識別子である。ファイルハンドルは、後述するGFS−IDとそのファイルシステム内で固有のIDとの組み合わせによって構成される。コマンド長は、コマンド全体のサイズを表す。パラメータには、コマンド種別に応じた種々の情報が記録される。
クライアントがサーバに対してリード要求を行う際に送信されるリクエストコマンドのパラメータ種別には、「リード」と指定され、パラメータには、オフセットとデータサイズとが含まれる。オフセットには、ファイルハンドルによって指定されたファイルの中で、実際に読み込みを行う部分の先頭アドレスが指定される。データサイズには、その読み込みを行う部分のサイズが指定される。
クライアントがサーバに対してライト要求を行う際に送信されるリクエストコマンドのパラメータ種別には、「ライト」と指定され、パラメータには、オフセットとデータサイズとユーザデータとが含まれる。オフセットには、ファイルハンドルによって指定されたファイルの中で、実際に書き込みを行う部分の先頭アドレスが指定される。データサイズには、書き込みを行うデータのサイズが指定される。ユーザデータには、書き込みを行うデータの実体が格納される。
図3(b)に示すように、サーバ装置からクライアントに返信されるレスポンスコマンドは、ステータスとコマンド長とパラメータとにより構成される。ステータスは、レスポンスコマンドに応じて実行された処理の成否を表す。コマンド長は、レスポンスコマンド全体のサイズを表す。パラメータには、リクエストコマンドの種別に応じた種々の情報が記録される。
クライアントからリード要求を受けた場合に返信されるレスポンスコマンドのステータスには、データの読み出しに成功した場合には「OK」と記録され、失敗した場合には「NG」と記録される。パラメータには、属性とデータサイズとユーザデータとが記録される。属性には、そのデータのパーミッション情報が記録される。パーミッション情報とは、そのデータが読み書き可能かどうか等を示す情報である。データサイズには、読み出したデータのサイズが記録される。ユーザデータには、読み出されたデータの実体が格納される。
クライアントからライト要求を受けた場合に返信されるレスポンスコマンドのステータスには、データの書き込みに成功した場合には「OK」と記録され、失敗した場合には「NG」と記録される。また、パラメータには、実際に書き込まれたデータのサイズが記録される。
なお、本実施例では、データの読み書きに関するコマンドについて例示したが、記憶システム1000はこれらのコマンド以外にも、データを削除するためのコマンドやディレクトリを作成するためのコマンド等、種々のコマンドを処理することができる。
図4は、サーバ装置100のローカルメモリ130に記憶されるファイルシステム管理テーブルFTの構造を示す説明図である。このファイルシステム管理テーブルFTは、各サーバ装置100が直接管理しているファイルシステムと他のサーバ装置100が管理しているファイルシステムとを統括的に管理するためのテーブルである。このファイルシステム管理テーブルFTには、仮想ファイルシステムID(GFS−ID)と、サーバID(S−ID)と、ローカルファイルシステムID(LFS−ID)とが対応付けて記録されている。
仮想ファイルシステムIDは、サーバ装置100がクライアントCLに対してアクセスを許可している仮想的なファイルシステムのIDである。サーバIDは、個々のサーバ装置100に固有に割り当てられたIDである。本実施例では、第1サーバ装置100aにサーバIDとして「s1」が、第2サーバ装置100bにサーバIDとして「s2」が割り当てられているものとする。ローカルファイルシステムIDは、そのサーバ装置100が直接管理しているファイルシステムのIDである。各サーバ装置100は、クライアントCLから仮想ファイルシステムIDが指定されれば、このファイルシステム管理テーブルFTを参照することで、そのファイルシステムの実体を管理しているサーバ装置100を判別することができる。このファイルシステム管理テーブルFTは、サーバ装置100毎に異なる内容が保持されていてもよい。この場合には、サーバ装置100毎に、クライアントCLにアクセスを許可しているファイルシステムが異なることになる。
ファイルシステム管理テーブルFTは、LANに接続された管理用端末MT(図1参照)を用いて編集が可能である。管理用端末MTは、汎用的なコンピュータであり、ファイルシステム管理テーブルFTをサーバ装置100から読み出して編集するためのプログラムがインストールされている。図5および図6は、ファイルシステム管理テーブルFTを編集する際に管理用端末MTに表示される画面の一例である。図5に示すように管理用端末MTには、GFS−IDやサーバID、LFS−IDのほかに、そのローカルファイルシステムがマウントされているマウントポイントや、そのファイルシステムのパーミッションを示す属性情報等が表示される。この画面上で、「作成」ボタンや「編集」ボタンが押されると、図6に示すような画面が表示され、各項目の入力/編集を行うことができる。また、GFS−IDの左隣に設けられたチェックボックスにチェックを入れて「削除」ボタンを押すことで、その仮想ファイルシステムをアンマウントすることができる。
図7は、サーバ装置100のローカルメモリ130に記憶されるキャッシュ管理テーブルCTの構造を示す説明図である。このキャッシュ管理テーブルCTは、共有メモリ200内に記憶されたキャッシュデータを管理するためのテーブルである。共有メモリ200がキャッシュするデータの格納単位は4キロバイトであり、キャッシュ管理テーブルCTは、その格納単位毎に1つのエントリを有している。各エントリには、「リスト」「ファイルハンドル」「オフセット」「アドレス」「参照数」「ステータス」が記録される。
「リスト」は、キャッシュのヒット判定等を行う場合に、他のエントリへのポインタとなる管理情報である。「ファイルハンドル」は、そのエントリが管理しているキャッシュ領域に記憶されているファイルの識別子である。「オフセット」は、実際にそのキャッシュ領域に記憶されているファイル内の部分を表すオフセットアドレスである。「アドレス」は、そのエントリが管理している共有メモリ200内のキャッシュ領域の先頭アドレスである。上述したように、キャッシュの格納単位は4キロバイトであるため、通常、1つのキャッシュ領域には、ファイルの一部分しか格納されない。そのため、「ファイルハンドル」と「オフセット」の組合せと「アドレス」とを用いることにより、ファイル中のどの部分がどのキャッシュ領域に格納されているかを管理することができる。なお、本実施例では、「ファイルハンドル」と「オフセット」の組合せを用いるものとしたが、「inode番号」と「オフセット」の組合せを用いるものとしてもよい。「inode番号」とは、ファイルハンドルと1対1に対応付けられている番号である。
エントリ中の「参照数」は、そのキャッシュ領域を参照しているクライアントの数である。「ステータス」は、そのキャッシュ領域の現在の状態を表す情報である。このステータスには、そのキャッシュ領域への書き込みが禁止されている場合には「locked」と記録され、そのキャッシュデータが既に参照された場合には「referred」と記録される。また、そのキャッシュデータが更新された場合には「dirty」と記録される。この「参照数」や「ステータス」は、他のサーバ装置100に対してそのキャッシュ領域に対するアクセスを許可するか否かを設定する際に用いられる情報である。
サーバ装置100は、このように構成されたキャッシュ管理テーブルCTを参照することで、読み書きを行うデータが既に共有メモリ200にキャッシュされているか否かを判別することができる。なお、共有メモリ200にキャッシュされたデータは、共有メモリ200の容量が使い尽くされると、最も長い間使用されていないデータから消去されることになる。
B.ファイルアクセス処理:
次に、以上のように構成された記憶システム1000で実行されるファイルアクセス処理について、図8および図9に基づき説明する。
図8は、リクエストコマンドを受信したサーバ装置100(以下、「主サーバ」という)が実行する主サーバ処理のフローチャートである。まず、主サーバは、クライアントCLからリクエストコマンドを受信すると(ステップS100)、そのリクエストコマンドを一旦、ローカルメモリ130内に記憶する。リクエストコマンドには、リード要求の場合には、制御データが含まれ、ライト要求の場合には、制御データとユーザデータとが含まれる(図3(a)参照)。
次に、主サーバは、受信したリクエストコマンドの内容を解析して、このコマンドの処理対象となるデータを管理しているサーバ装置を判別する。具体的には、まず、リクエストコマンド中に記録されたファイルハンドルに含まれるGFS−IDを抽出する(ステップS110)。例えば、ファイルハンドルが「gfs01f001」であれば、GFS−IDとして、「gfs01」が抽出される。次に、ファイルシステム管理テーブルFT(図4参照)を参照して、このGFS−IDに対応するサーバIDを検索する(ステップS120)。こうすることで、受信したコマンドの処理対象となるデータを管理しているサーバ装置100を判別することができる。
次に、主サーバは、検索されたサーバIDが他のサーバ装置100のサーバIDであるかを判別する(ステップS130)。判別の結果、そのサーバIDが自己のサーバIDであれば(ステップS130:No)、受信したリクエストコマンドに応じてリードやライト等のコマンド処理を行い(ステップS140)、そのリクエストコマンドに応じたレスポンスコマンドをクライアントに返信して(ステップS150)、主サーバ処理を終了する。ローカルメモリ130内に一時的に記憶したリクエストコマンドは、主サーバ処理の終了とともに消去する。
一方、検索されたサーバIDが他のサーバ装置100のサーバIDであれば(ステップS130:Yes)、主サーバは、そのサーバIDが割り当てられたサーバ装置100(以下、「副サーバ」という)に対して、クライアントから受信したリクエストコマンドの制御データ部分を転送する(ステップS160)。ここで、便宜上、説明を図9に移す。
図9は、副サーバが主サーバから制御データを受信した際に実行する副サーバ処理のフローチャートである。副サーバは、主サーバから制御データを受信すると(ステップS300)、受信した制御データのコマンド種別を判別する(ステップS310)。その結果、コマンド種別がリードあるいはライトであれば、制御データ中に指定されたファイルハンドルとオフセットとが既にキャッシュ管理テーブルCT(図7参照)に登録されているか否かを検索する(ステップS320)。かかる検索により、読み書きの対象となるファイルが既に共有メモリにキャッシュされているか否かを判別することができる。
検索の結果、読み書きの対象となるファイルがキャッシュされていないと判断されれば(ステップS330:Yes)、共有メモリ200内に、このファイルを格納するための新たなキャッシュ領域を確保する(ステップS340)。また、この新たなキャッシュ領域に関する情報をキャッシュ管理テーブルCTに登録する。そして、必要に応じて、このキャッシュ領域に対して、制御データによって指定されたファイルの一部を自己の管理するファイルシステムから読み出して転送する(ステップS350)。上記ステップS320による検索の結果、読み書きの対象となるファイルが既に共有メモリ200にキャッシュされていると判別された場合には、上記ステップS340とステップS350の処理は省略する。
次に、副サーバは、キャッシュ管理テーブルCT中の参照数をインクリメントする。このとき、制御データのコマンド種別が「ライト」の場合には、主サーバ以外のサーバ装置からキャッシュされたデータに対して書き込みが行われないようにそのキャッシュ領域をロックする(ステップS360)。そして、副サーバは、キャッシュ領域のアドレスを主サーバに通知する(ステップS370)。なお、上記ステップS310において、コマンド種別がリードもしくはライトではないと判別された場合には、そのコマンド種別に応じた処理を行い(ステップS380)、その処理が完了した旨を主サーバに通知する(ステップS390)。
説明を図8に戻す。主サーバは、副サーバからの通知を受信すると(ステップS170)、クライアントCLから受信したリクエストコマンドのコマンド種別を判別する(ステップS180)。そして、その種別が、「リード」の場合には、副サーバから通知されたキャッシュ領域のアドレスを参照して共有メモリ200内のキャッシュ領域からデータを読み込む(ステップS190)。「ライト」の場合には、副サーバから通知されたキャッシュ領域のアドレスに対してリクエストコマンドに含まれるユーザデータを書き込み、共有メモリに記憶されたデータを更新する(ステップS200)。コマンド種別が「リード」や「ライト」でなければ、そのコマンドに応じた処理を行う(ステップS210)。
次に、主サーバは、リクエストコマンドのコマンド種別に応じたレスポンスコマンドを、クライアントに返信する(ステップS220)。コマンド種別が「リード」の場合には、上記ステップS190で共有メモリから読み出したデータがユーザデータとしてクライアントに返信されることになる。また、「ライト」の場合には、書き込みが成功したか否かの情報がクライアントに返信されることになる。主サーバは、こうしてクライアントにレスポンスコマンドを返信すると、副サーバに対して、処理が終了した旨の終了通知を送信し(ステップS230)、主サーバ処理を終了する。なお、上記ステップS190およびステップS220では、リードコマンドの処理にあたり、主サーバが共有メモリ200からデータ読み出してクライアントに返信するものとしたが、主サーバを介すことなく共有メモリ200から直接クライアントに対してデータを返信するものとしてもよい。
再度、説明を図9に移す。副サーバは、主サーバから終了通知を受信すると(ステップS400)、コマンド種別が、「リード」および「ライト」の場合には、上記ステップS360でインクリメントした参照数をデクリメントする。また、コマンド種別が「ライト」の場合には、上記ステップS360でロックしたキャッシュ領域のロック状態を解除する(ステップS410)。コマンド種別が「リード」および「ライト」以外の場合には、そのコマンド種別に応じた終了処理を行う。
最後に、副サーバは、コマンド種別が「ライト」の場合には、図8のステップS200において、主サーバによって共有メモリ200に書き込まれたデータを、必要に応じて自己の管理するファイルシステムに書き戻して(ステップS390)、副サーバ処理を終了する。
なお、上述した主サーバ処理のステップS140(図8)における処理の詳細は省略したが、かかるステップでは、副サーバ処理のステップS310〜S360における処理と、主サーバ処理のステップS180〜S210における処理と、副サーバ処理のステップS410〜S420における処理とに相当する処理が実行される。
以上のように構成された本実施例の記憶システム1000によれば、各サーバ装置100は、他のサーバ装置100の管理するファイルシステムまでも含めた仮想ファイルシステムを各クライアントCLに公開する。そのため、クライアントCLは、どのサーバ装置100がどのファイルシステムを管理しているかを意識することなく、任意のサーバ装置100を用いて所望のファイルシステムにアクセスすることができる。
また、本実施例のサーバ装置100は、他のサーバ装置100にコマンドを転送する場合には、制御データ部分のみを転送して、ユーザデータ部分は、共有メモリを介してやり取りを行う。そのため、サーバ装置100間で直接転送されるデータのサイズが削減されることになり、サーバ装置100のCPU負荷が軽減され、クライアントCLに対するレスポンス遅延が抑制される。この結果、記憶システム全体の性能向上を図ることができる。
以上、本発明の実施例について説明したが、本発明はこのような実施例に何ら限定されるものではなく、本発明の趣旨を逸脱しない範囲内において様々な形態で実施し得ることは勿論である。
例えば、上記実施例では、共有メモリ200を不揮発性のメモリによって構成するものとしたが、これに対して、揮発性のメモリを用いる構成も可能である。この場合、主サーバが共有メモリ200に書き込んだデータが、副サーバによって確実にディスク装置400に書き込まれたことを確認した上で、レスポンスコマンドをクライアントに返信するようにするため、主サーバは、副サーバから図9のステップS420の処理が完了した旨の通知を受けた後に図8のステップS220の処理を行うことが好ましい。
また、記憶システム1000は、共有メモリ200を備えない構成とすることもできる。この場合には、各サーバ装置100は、ローカルメモリ130内に、それぞれ共有メモリ領域を備え、それぞれの共有メモリ領域を相互にマッピングしたメモリマップを保持するものとする。このような構成であれば、システム構成を簡略化することができる。
また、各サーバ装置100は、自己の管理するファイルシステムを動的に変更可能であるものとしてもよい。こうすることにより、例えば、第1サーバ装置100aの負荷が増大した場合に、この第1サーバ装置100aが管理しているファイルシステムの一部の管理を、第2サーバ装置100bに割り振るといった制御を行うことができる。管理対象のファイルシステムを割り振る制御は、各サーバ装置100が相互に負荷を監視して行うものとしてもよいし、管理用端末MTが、各サーバ装置100の負荷を監視して行うものとしてもよい。このような構成であれば、記憶システムの処理能力を、より向上させることができる。
記憶システム1000のハードウェア構成を示す説明図である。 メモリマップを模式的に示す説明図である。 コマンドのデータ構造を示す説明図である。 ファイルシステム管理テーブルFTの構造を示す説明図である。 管理用端末MTに表示される画面の一例である。 管理用端末MTに表示される画面の一例である。 キャッシュ管理テーブルCTの構造を示す説明図である。 主サーバ処理のフローチャートである。 副サーバ処理のフローチャートである。
符号の説明
1000…記憶システム
100a…第1サーバ装置
100b…第2サーバ装置
110a,110b…CPU
120a,120b…ROM
130a,130b…ローカルメモリ
140a,140b…ネットワークインタフェース
150a,150b…アダプタ
200…共有メモリ
300a,300b…ディスクコントローラ
310a,310b…アダプタ
320a,320b…マイクロプロセッサ
400a,400b,400c,400d…ディスク装置
500…スイッチ
CL1,CL2…クライアント
MT…管理用端末
FT…ファイルシステム管理テーブル
CT…キャッシュ管理テーブル

Claims (12)

  1. クライアントと接続され、該クライアントが用いるデータを記憶する記憶システムであって、
    複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置と、少なくとも一部の前記ファイルシステムを各々排他的に管理する複数のサーバ装置と、前記各サーバ装置が共通して用いる共有メモリとを備え、
    前記サーバ装置は、
    データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する判別部と、
    前記判別部によって判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行うデータ処理部とを備え
    前記サーバ装置の判別部は、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
    前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
    前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されている
    記憶システム。
  2. 請求項1に記載の記憶システムであって、
    前記サーバ装置は、更に、前記判別部によるサーバ装置の判別を行った自身以外のサーバ装置から前記制御データの転送を受けたときに、該制御データによって特定されるデータを前記記憶装置から読み出し、前記共有メモリに転送する共有メモリ転送部を備える
    記憶システム。
  3. 請求項1または2に記載の記憶システムであって、
    前記サーバ装置のデータ処理部は、前記コマンドがデータの書き込みに関するコマンドである場合には、前記コマンド中に含まれるユーザデータによって前記共有メモリに転送されたデータを更新する更新処理部を備える
    記憶システム。
  4. 請求項3に記載の記憶システムであって、
    前記サーバ装置は、更に、前記共有メモリに転送したデータが、前記制御データを送信したサーバ装置によって更新された場合に、該更新されたデータを、前記記憶装置に書き戻す書込処理部を備える
    記憶システム。
  5. 請求項1〜4のいずれかに記載の記憶システムであって、
    前記サーバ装置のデータ処理部は、前記コマンドがデータの読み出しに関するコマンドである場合には、前記共有メモリに転送されたデータを前記クライアントに対して出力する読出処理部を備える
    記憶システム。
  6. 請求項1〜5のいずれかに記載の記憶システムであって、
    更に、前記管理テーブルの設定を前記サーバ装置毎に行うための管理装置を備える
    記憶システム。
  7. 請求項1〜のいずれかに記載の記憶システムであって、
    前記サーバ装置は、該サーバ装置が備えるローカルメモリ内の記憶領域のアドレスと前記共有メモリ内の記憶領域のアドレスとが共通のアドレス体系によってマッピングされたメモリマップを有しており、該メモリマップを用いて、前記共有メモリにアクセスする手段を備える
    記憶システム。
  8. 請求項1〜のいずれかに記載の記憶システムであって、
    前記共有メモリは、電源がバックアップされた不揮発性のメモリである
    記憶システム。
  9. 複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置と、少なくとも一部の前記ファイルシステムを各々排他的に管理する複数のサーバ装置と、前記各サーバ装置が共通して用いる共有メモリとを備える記憶システムに用いられる前記サーバ装置であって、
    データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する判別部と、
    前記判別部によって判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行うデータ処理部とを備え、
    前記判別部は、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
    前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
    前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されている
    サーバ装置。
  10. 複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置の少なくとも一部の前記ファイルシステムを各々排他的に管理する複数のサーバ装置のうちの一のサーバ装置が、他のサーバ装置とともに共有メモリを用いてデータの入出力を行うデータ処理方法であって、
    (a)データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する工程と
    (b)前記判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行う工程と、を備え、
    前記工程(a)では、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
    前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
    前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されている
    データ処理方法。
  11. 複数のファイルシステムを有し、該ファイルシステム毎にデータを記憶する記憶装置の少なくとも一部のファイルシステムを各々排他的に管理する複数のサーバ装置のうちの一のサーバ装置が、他のサーバ装置とともに共有メモリを用いてデータの入出力を行うためのコンピュータプログラムであって、
    データの入出力に関するコマンドを前記クライアントから受信した場合に、該コマンドの内容を解析することによって、該コマンドの処理対象となるデータを管理するサーバ装置を判別する機能と、
    前記判別したサーバ装置が自身以外のサーバ装置である場合に、前記コマンド中に含まれる制御データを前記判別したサーバ装置に転送すると共に、該制御データの転送を受けたサーバ装置によって、該制御データにより特定されたデータが前記記憶装置から読み出されて前記共有メモリに転送されたときに、該共有メモリに転送されたデータを用いて前記コマンドに応じた処理を行う機能と
    をコンピュータに実現させるためのコンピュータプログラムであり、
    前記サーバ装置を判別する機能では、前記各サーバ装置と該各サーバ装置が固有に管理する前記ファイルシステムとの対応関係が定義された管理テーブルに基づき、前記コマンドの処理対象となるデータを管理するサーバ装置を判別し、
    前記管理テーブルは、前記サーバ装置毎にそれぞれ備えられており、
    前記各サーバ装置が備える管理テーブルには、該管理テーブルを備えるサーバ装置によって前記クライアントにアクセスが許可されるファイルシステムが、該サーバ装置が該ファイルシステムを実際に管理しているか否かに拘わらず、仮想ファイルシステムとして、前記サーバ装置毎に独立して設定されている
    コンピュータプログラム。
  12. 請求項11に記載のコンピュータプログラムをコンピュータが読み取り可能に記録した記録媒体。
JP2004308017A 2004-10-22 2004-10-22 記憶システム Expired - Fee Related JP4448005B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004308017A JP4448005B2 (ja) 2004-10-22 2004-10-22 記憶システム
US11/009,812 US7451279B2 (en) 2004-10-22 2004-12-09 Storage system comprising a shared memory to access exclusively managed data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004308017A JP4448005B2 (ja) 2004-10-22 2004-10-22 記憶システム

Publications (2)

Publication Number Publication Date
JP2006119966A JP2006119966A (ja) 2006-05-11
JP4448005B2 true JP4448005B2 (ja) 2010-04-07

Family

ID=36295578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004308017A Expired - Fee Related JP4448005B2 (ja) 2004-10-22 2004-10-22 記憶システム

Country Status (2)

Country Link
US (1) US7451279B2 (ja)
JP (1) JP4448005B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7386673B2 (en) * 2005-11-30 2008-06-10 Red Hat, Inc. Method for tracking of non-resident pages
EP1858227A1 (en) * 2006-05-16 2007-11-21 THOMSON Licensing Network storage device with separated control and storage data interfaces
US20070276951A1 (en) * 2006-05-25 2007-11-29 Nicholas Dale Riggs Apparatus and method for efficiently and securely transferring files over a communications network
JP4919851B2 (ja) 2007-03-23 2012-04-18 株式会社日立製作所 ファイルレベルの仮想化を行う中間装置
US8478835B2 (en) * 2008-07-17 2013-07-02 Netapp. Inc. Method and system for using shared memory with optimized data flow to improve input/output throughout and latency
US9575986B2 (en) * 2012-04-30 2017-02-21 Synopsys, Inc. Method for managing design files shared by multiple users and system thereof
US11353868B2 (en) * 2017-04-24 2022-06-07 Intel Corporation Barriers and synchronization for machine learning at autonomous machines
CN109308189A (zh) * 2018-09-27 2019-02-05 珠海市君天电子科技有限公司 一种配置文件更新方法、装置及电子设备
US11126553B2 (en) * 2019-01-31 2021-09-21 EMC IP Holding Company LLC Dynamic allocation of memory between containers

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4382287A (en) * 1980-07-15 1983-05-03 Westinghouse Electric Corp. Pseudo-synchronized data communication system
GB2256735B (en) * 1991-06-12 1995-06-21 Intel Corp Non-volatile disk cache
US5452447A (en) * 1992-12-21 1995-09-19 Sun Microsystems, Inc. Method and apparatus for a caching file server
US6108684A (en) * 1996-12-23 2000-08-22 Lsi Logic Corporation Methods and apparatus for balancing loads on a storage subsystem among a plurality of controllers
US6718375B1 (en) * 1997-01-31 2004-04-06 Hewlett-Packard Development Company, L.P. Using local storage to handle multiple outstanding requests in a SCI system
US6381674B2 (en) * 1997-09-30 2002-04-30 Lsi Logic Corporation Method and apparatus for providing centralized intelligent cache between multiple data controlling elements
US6321298B1 (en) * 1999-01-25 2001-11-20 International Business Machines Corporation Full cache coherency across multiple raid controllers
US6453354B1 (en) * 1999-03-03 2002-09-17 Emc Corporation File server system using connection-oriented protocol and sharing data sets among data movers
US6247099B1 (en) * 1999-06-03 2001-06-12 International Business Machines Corporation System and method for maintaining cache coherency and data synchronization in a computer system having multiple active controllers
US20030188045A1 (en) * 2000-04-13 2003-10-02 Jacobson Michael B. System and method for distributing storage controller tasks
JP2002049511A (ja) * 2000-05-24 2002-02-15 Hitachi Ltd アドレスの割付変更方法及びこれを用いた外部記憶サブシステム
JP3992427B2 (ja) * 2000-08-01 2007-10-17 株式会社日立製作所 ファイルシステム
US6671773B2 (en) * 2000-12-07 2003-12-30 Spinnaker Networks, Llc Method and system for responding to file system requests
JP4014923B2 (ja) * 2002-04-30 2007-11-28 株式会社日立製作所 共有メモリ制御方法および制御システム

Also Published As

Publication number Publication date
US7451279B2 (en) 2008-11-11
JP2006119966A (ja) 2006-05-11
US20060090042A1 (en) 2006-04-27

Similar Documents

Publication Publication Date Title
JP4681249B2 (ja) ディスクアレイ装置
US7107323B2 (en) System and method of file distribution for a computer system in which partial files are arranged according to various allocation rules
US7765189B2 (en) Data migration apparatus, method, and program for data stored in a distributed manner
EP1148416B1 (en) Computer system and snapshot data management method
US7890716B2 (en) Method of managing time-based differential snapshot
US7783737B2 (en) System and method for managing supply of digital content
JP4837378B2 (ja) データの改竄を防止する記憶装置
JP5320557B2 (ja) ストレージシステム
US7418563B2 (en) Method for controlling storage device controller, storage device controller, and program
JP4521865B2 (ja) ストレージシステム、計算機システムまたは記憶領域の属性設定方法
JP2007079774A (ja) ファイルシステムの構築方法
JP2006127106A (ja) ストレージシステム及びその制御方法
US7640588B2 (en) Data processing system and method
JP4448005B2 (ja) 記憶システム
US20060221721A1 (en) Computer system, storage device and computer software and data migration method
US20070113041A1 (en) Data processing system, storage apparatus and management console
US8909875B1 (en) Methods and apparatus for storing a new version of an object on a content addressable storage system
JP2006113882A (ja) データ管理装置
US8010741B1 (en) Methods and apparatus for controlling migration of content
JP2007011864A (ja) ファイル管理方法、ファイル管理装置、プログラムおよび記憶媒体
JP2002073381A (ja) ファイル再配置処理方法
JP2005190260A (ja) ストレージ装置の運用管理

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091007

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091020

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091214

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

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

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

Free format text: PAYMENT UNTIL: 20130129

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

LAPS Cancellation because of no payment of annual fees