JP4154893B2 - ネットワークストレージ仮想化方法 - Google Patents
ネットワークストレージ仮想化方法 Download PDFInfo
- Publication number
- JP4154893B2 JP4154893B2 JP2002013652A JP2002013652A JP4154893B2 JP 4154893 B2 JP4154893 B2 JP 4154893B2 JP 2002013652 A JP2002013652 A JP 2002013652A JP 2002013652 A JP2002013652 A JP 2002013652A JP 4154893 B2 JP4154893 B2 JP 4154893B2
- Authority
- JP
- Japan
- Prior art keywords
- network storage
- network
- directory
- file
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols 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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1023—Server selection for load balancing based on a hash applied to IP addresses or costs
Description
【発明の属する技術分野】
本発明は、ネットワークストレージの仮想化方法に関し、特に複数のファイルシステムをひとつに見せるための方法に関する。
【0002】
【従来の技術】
従来の情報処理システムでは、情報は計算機システムに直接接続されたストレージに格納されていた。ストレージに格納されている情報は直接接続されている計算機を介してのみアクセスすることが許されていたため、他の計算機システムからは前記直接接続されている計算機を経由してデータをアクセスする必要があった。しかしながら、近年のネットワーク技術の発達と格納すべき情報量の飛躍的な増大は情報を処理する計算機システムと情報を格納するストレージシステムの分離を促し、ストレージがネットワークに接続され、複数の計算機システムで共有できるようになってきた。このようなネットワークに接続されるストレージのことをネットワークストレージと呼ぶ。
このようなネットワークストレージの例としては、SAN(Storage Area Network)で接続されてブロックアクセスを提供するSANストレージ、IPネットワークやInfiniband等で接続されてファイルアクセスを提供するNAS(Network Attached Storage)、WebアクセスのインタフェースHTTPプロトコルやそれを拡張したプロトコルでのアクセス形態を提供するWebストレージなど、種々のネットワークストレージがある。
ネットワークストレージが普及するにつれ、システム管理者はネットワークに接続された複数のネットワークストレージを管理する必要がでてきた。例えば、格納すべきデータの量が既存のネットワークストレージの最大値を超えてしまうような場合には新たなネットワークストレージを追加し、データの再分配などのシステム再構築を行なう必要がある。ストレージ容量に対する需要の急激な伸びは度重なるシステム再構築を強いることとなり、システム管理コストを膨張させてきた。
システム管理コストを抑制するためには複数のネットワークストレージを計算機システムからは仮想的にひとつに見せ、新たな装置の追加を行なってもシステム全体に影響が及ばないようにするストレージの仮想化技術が必須となっている。このようなストレージの仮想化技術に関しては種々の方式が開発され、提案されている。
例えば、The Zebra Striped Network File System, Hartman et. al., ACM Transactions on Computer System, vol. 13, No. 3, 1995, pp. 274-310.には、ひとつのファイルを複数のネットワークストレージに分散格納する方式が記載される。ファイルは一定の長さ毎に分割され、ネットワークストレージにラウンド・ロビン方式で順次格納されている。ファイルがどのストレージにどのような順で分散格納されているか集中管理するサーバがあり、ファイルアクセス処理時にはこの管理サーバにファイルの格納位置に関する情報を問い合わせてからデータをアクセスするという特長を有する。すなわち、ファイルを複数のサーバに分散格納させて一つのサーバで集中管理することにより複数のネットワークストレージを仮想的に一つの大きいネットワークストレージに見せる効果を得ている。
また、米国特許第6,029,168号には上記の集中管理サーバ方式と異なる非集中管理サーバ方式によりファイルのストライピングを行なう方法が記載されている。この方式では、ファイル識別子にファイルのストライピング情報が格納されているスタータノード情報を埋め込むことによって、ストライピング情報を複数のネットワークストレージで分散管理している。ファイル識別子にスタータノードが格納されているため、ファイルアクセスの際にはまずスタータノードへアクセスを行ない、そこで、ファイルの格納位置を決定し必要があればアクセスすべきファイルの断片(ブロック)を格納しているサーバへアクセス要求を転送して処理することが特徴となっている。このため、クライアントは当該ファイルについてのアクセスはスタータノードへ要求を発行するだけで良く、ファイルのストライピングによる格納位置を考慮する必要がないという効果を得ている。
【0003】
【発明が解決しようとする課題】
前記The Zebra Striped Network File Systemに記載のシステムでは、アクセスするファイルの断片を格納するネットワークストレージを決定する際に集中管理サーバに問い合わせる必要があった。従って、ネットワークストレージの台数が増加すると集中管理サーバが隘路となり、システムのスケーラビリティの阻害要因となっていた。
また、米国特許第6,029,168号に記載の非集中管理サーバ方式では、管理サーバが複数のサーバに分散されている点では集中管理サーバの問題点を解決している。しかしながら、該システムではファイルアクセスする際にファイルを一意に特定するファイル名あるいはディレクトリ名とスタータノードが埋め込まれているファイル識別子との変換を分散ディレクトリ等のサーバが行なうことが前提となっており、ファイルの格納場所を管理するサーバ(スタータノード)とファイル名との対応を管理する情報が別途必要となっている。なお、米国特許第6,029,168号にはそのような情報を格納する手段としてとして a "well-known" distributed Directory fileを利用するとの記載がある。また、ファイル識別子にスタータノードの位置が直接埋め込まれるため、新しいネットワークストレージを追加して既存のファイルのスタータノードを新しいネットワークストレージに移動する際には前記分散ディレクトリに格納されているファイル名とファイル識別子との対応情報を書きかえる必要があった。
本発明の一つの目的は、アクセス対象のオブジェクトの論理識別子からそのアクセス対象を格納するネットワークストレージを一意に決定できる複数ネットワークストレージの仮想一元化方法を提供することにある。
本発明の他の目的は、ネットワークストレージの拡張性が高い複数ネットワークストレージの仮想一元化方法を提供することにある。
【0004】
【課題を解決するための手段】
本発明の特徴は、ファイルシステムではファイルのフルパス名、WebストレージではURLなど、ネットワークストレージに格納するオブジェクトを論理的に識別するオブジェクト識別子のハッシュ値に基づき格納するネットワークストレージを決定する点にある。これにより、オブジェクト識別子と格納するネットワークストレージの対応の管理が排除される。
一つの代表的な例では、クライアントのアクセス要求は仮想化対象のネットワークストレージ群の任意のひとつに通知され、このアクセス要求を受け取ったネットワークストレージがオブジェクト識別子のハッシュ値に基づきその要求のアクセス対象のオブジェクトを格納するネットワークストレージを特定し、アクセス要求を特定したネットワークストレージへと転送して処理を行なう。別の例では、クライアントからのアクセス要求を仮想化対象のネットワークストレージ群の全てに通知し、各ネットワークストレージがオブジェクト識別子のハッシュ値に基づき該アクセス要求を処理すべきネットワークストレージが自装置か否かを判定して自装置が該当する場合に処理を行なう、という方法でクライアントからのアクセス要求を処理する。
サン・マイクロシステムズ社(Sun Microsystems, Inc.)によって開発されたNFS(Network File System)など、ファイルアクセスプロトコルでファイルやディレクトリをアクセスするためのハンドルにファイル名やディレクトリ名などのオブジェクトを論理的に識別する情報が含まれないプロトコルを用いたネットワークストレージの場合には、ハンドルの生成時にファイルの論理的識別子(フルパス名)のハッシュ値を埋め込むことで、ファイルのフルパス名がアクセスハンドルに含まれる場合と同様の方法でアクセス要求を処理するネットワークストレージを決定することができる。
本発明により、アクセス対象のオブジェクトの論理的識別子、例えばファイル名、と該オブジェクトを物理的に格納しているネットワークストレージとの対応表を管理する必要がなくなり、管理サーバを必要としない複数ネットワークストレージの仮想化方法が可能となる。
また、管理サーバが不要なため、ファイルの物理的格納位置の変更が容易になり、動的なネットワークストレージの追加などが容易となる。
更に、管理サーバが不要なため、システムの隘路がなくなりネットワークストレージの拡張性が高くなる。
更に、ファイルの論理的識別子からハッシュ関数により格納位置を算出できるため、アクセス要求を適切なサーバへ転送する処理が高速化される。
【0005】
【発明の実施の形態】
図1は本発明の実施例を示す図である。クライアント1はネットワークルータ2を介して複数のネットワークストレージ(3,4,5)に接続されている。各ネットワークストレージはクライアント1からのファイルアクセス要求を処理するためのファイルシステム7と該ファイルシステムによってアクセスされるストレージシステム8を有する。また、複数のファイルシステムを仮想的に一つのファイルシステムに見せるための仮想一元化ファイルシステム6を有する。ネットワークルータ2および複数のネットワークストレージ(3,4,5)はクライアントからは仮想的にひとつのネットワークストレージ9として認識される。すなわち、クライアントからはネットワークルータが提供するひとつのネットワークアドレスまたはネットワーク識別名で仮想的に一元化されたネットワークストレージ9を識別する。このような機能を持つネットワークルータとしてクライアント側のネットワークにはひとつのネットワークアドレスを、複数のネットワークストレージ側にはプライベートアドレスをそれぞれ提供し、プライベートアドレスと外部アドレスの変換を行なうルータが適用可能であるが、ひとつの外部アドレスと、複数の内部アドレスを管理できる機能を有するネットワークルータ、負荷分散機、サーバやPCなどの汎用の計算機、ネットワークスイッチなどネットワークルータ以外の装置ももちろん適用可能である。また、ネットワークストレージのひとつがネットワークルータ2の機能を備える構成も可能である。さらに、複数のネットワークストレージが物理的にひとつの装置内に配置されていても良いことは明白である。また、サーバやPCなどの汎用の計算機とネットワークスイッチなどの組み合わせでネットワークルータを構成しても良い。さらに、ネットワークルータ2と各装置の間のネットワークは有線・無線のいかなる形態であっても良い。また、ネットワークルータ2を複数接続して外部との通信の負荷を分散させるたりシステムに冗長度を持たせる構成を取ることも可能である。
図2はクライアント1から見える仮想化一元化されたファイルシステムのイメージである。本実施例では説明を簡単にするため、クライアントから見えるディレクトリツリーとネットワークストレージのディレクトリツリーが同一である場合を示しているが、ネットワークストレージのディレクトリツリーをクライアントのローカルファイルシステムのディレクトリツリーの一部にマウントしてもよい。その場合にはマウントポイント以下の部分がネットワークストレージのディレクトリツリーとなる。なお、本発明ではファイルシステムがファイルを識別する記号としてファイルの階層構造を持つパス名を例として説明しているが、ファイルの識別子が階層構造を持つパス名以外であっても構わない。例えば、ファイル自身に内在するキーワードを識別子としてファイルをアクセスするようなファイルシステムにおいては、識別子として扱うキーワードをパス名と同等に扱うことにより本発明と同等の複数のファイルシステムの仮想化が実現できることは明白である。
本実施例ではネットワークファイルシステムを例として説明しているが、オブジェクトを格納するネットワークストレージであればオブジェクト自身はファイルでなくても良く、Webにおけるページなど、オブジェクトの論理的な識別子を有する全てのオブジェクトを格納するシステムが対象となる。論理的な識別子とはファイルシステムではファイルのパス名、WebストレージではURLなど、ストレージの構成に依存しない上位ソフトウェアから見たオブジェクトの識別子のことを意味する。また、オブジェクトの識別子は必ずしも一意にオブジェクトを特定する必要はなく、複数のオブジェクトをさしていても良い。その場合には同一識別子を持つオブジェクトは同じネットワークストレージに格納される。
本発明では図2で示す仮想的に一元化されたファイルシステムを複数のネットワークストレージ(3,4,5)に分散格納する方法とそのアクセス方法を提供する。各ファイルはファイルのパス名のハッシュ値と分散格納するネットワークストレージの台数を引数とする格納位置決定関数によって一意に決定されるネットワークストレージに格納される。たとえば、本実施例では、ハッシュ関数をパス名を構成する各コンポーネントの文字列の和を2の16乗で割った余りをハッシュ関数とし、格納位置決定関数fを
f=mod(ハッシュ値、ネットワークストレージ台数)
とした場合の例を示している。すなわち、図2の/usr/local/aのファイルのハッシュ値は"usr" "local" "a"の各コンポーネントの文字コードの和
('u'+'s'+'r')+('l'+'o'+'c'+'a'+'l')+('a') = 0x03c6
であり、格納位置決定関数の値は
mod(0x03c6, 3) = 0
となるので、最初のネットワークストレージ3に格納されている。同様に/usr/loca/b, /usr/home/c, /use/d, /usr/bin/eのそれぞれのハッシュ値はそれぞれ0x03c7, 0x0366, 0x01be, 0x258となり、格納位置決定関数fの値は1, 0, 2, 1となり、図1に示されるように対応するネットワークストレージにそれぞれ格納される。
本実施例ではハッシュ関数を各コンポーネントの文字列の和としたが、引数の値に対して一意に決定される値を返す他のいかなる関数を用いても同様の実装ができることは明らかである。ここで、一意に決定されるとは、引数の値が同じ時に同じ値を返すということを意味しており、異なる引数に対して異なる値(ユニークな値)を返すという意味ではない。すなわち,異なる2つの引数が同じ値を返しても構わない。また、格納位置決定関数として乗余関数を用いたが、これに関しても、他のいかなる関数を用いても同様の実装ができることは明らかである。本発明ではファイルの格納の冗長化を行なわない場合について述べているが、ファイルの冗長格納を行なう場合には、上記のハッシュ関数あるいは格納関数を複数種類用意して、それぞれの値に応じた格納場所へ対象となるファイルを格納する。従って、引数の値に対して一意に決定される値を返す関数が複数提供される場合や、ひとつの関数が、冗長化を行なう目的で複数の値を返す場合も含まれる。
本発明の最大の特徴は、ファイルのパス名あるいは識別子のみからハッシュ値が計算でき、また、ハッシュ値と分散格納するネットワークストレージの台数のみから格納すべきネットワークストレージの番号が一意に決定できることである。従来の分散ファイルシステムではファイルのパス名あるいは識別子から格納位置を求める際にディレクトリサーバなどに問い合わせを行ない、格納位置情報を求めていたが、本発明ではこの問い合わせが全く不要となる。また、ファイルのパス名あるいは識別子と格納位置のマッピングを示す情報をテーブルとして格納する必要があるため、該テーブルをメンテナンスする必要があったが、本発明では該テーブルは不要であり、一貫性の維持や排他処理、構成変更時のメンテナンスなどのオーバヘッドは発生しない。
また、本実施例では簡単のためファイルのストライピングを行なわない場合について説明を行なっているが、ファイルのストライピングを行なう場合も格納位置決定関数の引数としてファイルのパス名とアクセス位置(あるいはファイルの断片番号)を追加するだけで、同様のシステムが容易に実現可能であることは明らかである。
図3はクライアントからのアクセス要求の処理の流れを示す図である。クライアント1が発行したアクセス要求はネットワークルータ2に送信される(15)。ネットワークルータは仮想化で一元化すべきストレージに受け取ったアクセス要求をフォワードする(16)。各ネットワークストレージは受け取った要求の内容とハッシュ関数および格納位置決定関数の値の基づき処理を行ない(17)、結果をクライアント1にリターンする(18)。
ネットワークをアクセスするプロトコルの一例としてNetwork File System(NFS)プロトコルがある。NFSプロトコルではファイルやディレクトリをアクセスするためにフルパス名を用いず、LOOKUPコマンド要求で取得するハンドル情報でファイルやディレクトリをアクセスする。本発明では、フルパス名のハッシュ値で格納位置を決定しているため、このハンドルにファイルのフルパス名もしくはハッシュ値を格納する必要が有る。NFSプロトコルではハンドルの実装はネットワークストレージが自由に決定して良いことになっているが、ファイルハンドルの長さに制限がある。そのため、ファイルやディレクトリのフルパス名を格納することが一般にできない。そこで、ハンドルの一部にフルパス名のハッシュ値を格納しておくことによりハンドルがフルパス名を格納できない場合でもハッシュ値による格納位置決定処理を実行できるようにする。なお、NFS以外のプロコルで、ファイルやディレクトリをアクセスする際に用いる識別情報がフルパス名を含む場合にはパス名のハッシュ値を識別情報に含めなくても良い。ファイルやディレクトリをアクセスする際にはアクセス対象を識別できる識別情報が必要である。識別情報にフルパス名が含まれる場合には該フルパス名からハッシュ値を導出することができるのでハッシュ値そのものの保持は任意である。識別情報にフルパス名が含まれないアクセスプロトコルの場合にはアクセスの識別情報がハッシュ値を保持するように改変を行ない、もってファイルの格納位置がアクセスの識別情報から一意に決定できるようにする。いずれにしても、任意のファイルアクセスプロトコルに対して本発明は適用可能である。以下では簡単のためにアクセスプロトコルとしてNFSを例に取りアクセス処理の流れについて説明する。
図4はアクセスに用いるディレクトリハンドル20およびファイルハンドル25の構成を示す例である。ディレクトリハンドル20はディレクトリ識別子21およびディレクトリパスハッシュ値22から構成される。ファイルハンドル25はファイル識別子22とファイルパスハッシュ値27から構成される。ディレクトリ識別子およびファイル識別子は従来のハンドルと同様の方法で生成することができるが、ハンドラの長さが固定長の場合には、パスハッシュ値を格納するサイズ分だけ短くする必要がある。図4では、ファイル/usr/local/aをオープンしてオフセット1024から4096バイトのデータを読み込む場合を例に取り説明する。まず、最初にLOOKUPコマンド30を発行して実行結果31を得る。実行結果31には/usrのディレクトリハンドラが含まれており、/usrのディレクトリハンドラにはパスハッシュ値0x015a(='u'+'s'+'r')が埋め込まれている。次にこのディレクトリハンドラを用いて/usr/localのディレクトリをLOOKUPし(32)、実行結果33を得る。実行結果33には/usr/localのディレクトリハンドラが含まれており、/usr/localのディレクトリハンドラにはパスハッシュ値0x0365(='u'+'s'+'r'+'l'+'o'+'c'+'a'+'l')が埋め込まれている。次に/usr/local/aのLOOKUPを行ない(34)、そのファイルハンドルを得る(35)。最後に、取得したファイルハンドルを用いてREADコマンドを発行し(36)、データを読み込む。
NFSプロトコルなどではハンドルとファイルやディレクトリを1対1に対応付けるためにinodeへのポインタなどを用いている。本発明では複数のネットワークストレージにファイルを格納するため、ハンドルにファイルのフルパス名を含まないNFSのようなプロトコルの場合には、ディレクトリの実体とハンドルを1対1に対応付ける為のローカルなマッピングテーブル等が必要となる場合がある。これらに関しては適用するネットワークプロトコルの仕様に応じて適切な手法を実装することができる。
図5はファイルやディレクトリ情報を取得するLOOKUPコマンドの処理の流れを示す図である。LOOKUPコマンドを仮想一元化ファイルシステムが受け付けると(50)、ディレクトリハンドルの指定の有無をチェックし(51)、ディレクトリハンドルの指定がある場合には53の処理に進む。そうでない場合には、ディレクトリハンドルを初期化し、ディレクトリパスハッシュ値を0に初期化する(52)。次に、ディレクトリハンドルに格納されているディレクトリパスハッシュ値とアクセスするファイル名(またはディレクトリ名)を引数としてハッシュ関数を呼び出し、ハッシュ値を求める(53)。求めたハッシュ値が自装置が処理すべき値かどうかを格納位置決定関数を用いて判定を行ない(54)、自装置が処理すべき値でない場合には、要求を破棄する(55)。自装置が処理すべき値である場合には、当該ファイルをLOOKUPして(56)、その結果得られたハンドル情報に53で求めたハッシュ値を埋め込み、(57)、要求元に結果をリターンする。なお、LOOKUPに失敗した場合にはエラー情報をクライアントにリターンするなどの適切な処理を行なう。エラー処理に関しては適用するファイルアクセスプロトコルの規格に合せて実装する。また、上記ではハンドルにファイルのパス名が含まれない場合を想定してパス名の代わりにハッシュ値をハンドルに埋め込む場合のフローを提示したが、ハンドルにファイルのパス名が含まれている場合には、53のハッシュ値を求める処理でディレクトリのパス名とファイル名を用いてハッシュ値を計算する。その場合、ハッシュ値をLOOKUPの結果得られたファイルハンドルに埋め込む処理57は不要となる。
LOOKUPと同様の処理フローとなるコマンドにはCREATE、SYMLINK、MKNOD、REMOVE等が有る。なお,REMOVE処理の場合にはリターン値にファイルハンドルを含まないので、ハッシュ値のハンドラへの埋め込み(57)に相当する処理は不要である。
図6はファイルを読み込むREADコマンドの処理の流れを示す図である。READコマンドを受け取ると(60)、ファイルハンドルに格納されているファイルパスハッシュ値を取りだし(61)、格納位置決定関数を用いてハッシュ値が自サーバの処理すべき値かどうかをチェックし(62)、該当しない場合には要求を破棄する(63)。該当する場合には、当該ファイルをREADし(64)、結果を要求元にリターンする(65)。本処理においても適用するアクセスプロトコルの規格に合せてエラー発生時の処理を適宜追加する。
READと同様の処理フローとなるコマンドにはWRITE、GETATTR、SETATTR、READLINK、STATFS等が有る。
図7はディレクトリを作成するコマンドMKDIRの処理の流れを示す図である。MKDIRのコマンドを受け取ると(66)、ディレクトリハンドルの指定の有無をチェックし(67)、ディレクトリハンドルの指定がある場合には69の処理に進み、そうでない場合にはディレクトリハンドルの初期化を行ないディレクトリパスハッシュ値を0にセットする(68)。次にディレクトリハンドルに格納されているディレクトリパスハッシュ値と作成するディレクトリ名を引数としてハッシュ関数を呼び出し、ハッシュ値を求める(69)。求めたハッシュ値が自装置で処理すべきことを示す値かどうかを格納位置決定関数を用いて判定する(70)。自装置で処理すべき値でない場合には、MKDIRを実行して指定されたディレクトリを作成し(71)、その結果をMKDIRを処理すべきネットワークストレージ装置に送信する(72)。自装置が処理すべきハッシュ値である場合には、MKDIRを実行して指定されたディレクトリを作成し(74)、他の全てのネットワークストレージ装置からのMKDIR実行結果通知(73)を受信するまで待つ(75)。全てのネットワークストレージ装置からの結果を受け取ったら、それが全て成功かどうかをチェックし(76)、全て成功である場合にはリターンするディレクトリハンドルにハッシュ値を埋め込み(77)、要求元のクライアントに結果をリターンする(78)。そうでない場合には、MKDIRに成功した全てのサーバに対して作成したディレクトリを削除するコマンドRMDIRを発行して要求元にエラーをリターンする。RMDIRが失敗したときやその他の個所(例えば73の通信の送受信)でエラーが発生した場合には、適用するプロトコルの規格に従ったエラー処理を行なう。
RMDIRもMKDIRと同様の処理フローとなる。すなわち、全てのサーバから指定されたディレクトリをREMOVEする。また、一部のサーバがRMDIRに失敗したば場合にはRMDIRに成功したサーバでMKDIRを実行して現状を回復し、エラーリターンさせるなどプロトコルに応じたエラー処理を実装する。
図8はファイル名の変更を行なうRNAMEコマンドの処理の流れを示す図である。REMANEコマンドを受け取ると(81)、リネーム元のファイルのハッシュ値とリネーム先ファイルのハッシュ値をそれぞれ求め(82)、リネーム元およびリネーム先のハッシュ値が自ネットネットワークストレージ装置で処理すべき値かどうかを格納位置決定関数に基づき判断する(83)。リネーム元およびリネーム先が共に自ネットネットワークストレージ装置で処理すべき場合には、自ネットネットワークストレージ装置内でRENAMEコマンドを実行する(85)。リネーム元が自ネットネットワークストレージ装置、リネーム先が他ネットネットワークストレージ装置である場合には、リネーム先サーバにファイルをコピーし(86)、コピーが成功したかどうか判定し(87)、コピーが失敗した場合には要求元にエラーをリターンする(88)。コピーが成功した場合にはファイルハンドルリダイレクト情報を登録し(89)、リネーム元ファイルを削除する(90)。ファイルハンドルリダイレクト情報はリネーム元のファイルハンドルと、リネーム先のファイルハンドラの対を格納しているテーブルで、リネーム前のハンドラを一定時間有効にするためにリネーム前のファイルを格納すべきサーバが一定時間保持する。ハンドラとファイルの実体のマッピングを取る際に、該リダイレクト情報を参照することで、リネームにより格納位置が変更されたファイルに対するアクセスを可能にする事を目的とする。該テーブルに登録されているファイルハンドラはリネーム後のファイルハンドラに自動的に変更されて、当該サーバへのアクセスとして転送される。なお、83の判定でリネーム元が自サーバの場合には上記処理を行なった後、要求元に結果をリターンする(91)。それ以外の場合には要求を破棄する(84)。
図8はRENAMEの対象がファイルである場合の処理フローを示している。RENAMEの対象がディレクトリの場合には、種々の実装方法が実現可能である。例えば、リネーム先のディレクトリをリカーシブに最下層までMKDIRしてから、リネーム元の当該ディレクトリに有るファイルを順次RENAMEする。最後に、リネーム元のディレクトリを最下層までリカーシブにRMDIRする。これ以外にも本発明が適用可能な種々のディレクトリのRENAMEコマンドが実装可能であることは明らかである。
図9はディレクトリ情報を取得するREADDIRコマンドの処理の流れを示す。READDIRコマンドを受け取ると、ディレクトリハンドラのハッシュ値を取りだし(92)、格納位置決定関数を用いてハッシュ値が自サーバの処理すべき値かどうかをチェックし(93)、該当しない場合にはREADDIRコマンドを実行して(95)結果を該READDIRコマンドを実行すべきネットワーックストレージ装置に送信する(96)。自装置が処理すべきネットワーックストレージ装置に該当する場合には、READDIRコマンドを実行し(94)、他の全てのネットワーックストレージ装置からREADDIRコマンドの実行結果(97)を受信するまで待つ(98)。全てのREADDIRコマンドの結果を受信するとそれらの結果をマージし(99)、要求元に結果をリターンする(100)。
本実施例では全てのネットワークストレージが同一のディレクトリツリー構造を有するため、全てのサーバでMKDIRおよびRMDIRは実行され、格納位置決定関数で指定されたひとつのサーバがそれらの実行結果を取りまとめてクライアントに応答する。しかしながら、格納位置決定関数で指定されたひとつのサーバのみでMKDIRやRMDIRを行なう別の実施例も可能である。その場合には、ディレクトリの作成時やファイルの作成時に指定された親ディレクトリが格納位置決定関数で指定される実行サーバに存在しない場合、当該親ディレクトリまでのディレクトリを生成コマンド実行時と同様の方法で生成する必要がある。また、READDIRコマンドなどではディレクトリが存在しないサーバが存在するため、それらに対する処理フローの修正も必要となるが、いずれも容易に実装可能であるのは明らかである。
図10は、本発明の他の実施例を示す図である。本実施例では各ネットワークストレージ(3,4,5)はクライアントとネットワーク101を介して接続されている。クライアントからは全てのネットワークストレージのIPアドレスが見える。また、ネットワークストレージ間はネットワークスイッチ102を介して接続しており、ネットワーク101に負荷をかけずにコマンドやデータの送受信を行なう。この場合、クライアントはネットワークストレージの任意のひとつに対してアクセス要求を発行する(103)。アクセス要求を受け取ったネットワークストレージ4がパス名のハッシュ値に基づき実行すべきネットワークストレージを決定し、この実行すべきネットワークストレージが他のネットワークストレージの場合には、その実行すべきネットワークストレージに対してアクセス要求を転送する(104)。転送を受けたネットワークストレージがアクセス要求を処理し(105)、その結果をアクセス要求を受け付けたネットワークストレージ4経由でクライアント1にリターンする(105、106)。なお、アクセス要求のリターンが別サーバから戻ってきても良いのであれば、アクセス要求を実行したネットワークストレージから直接結果を要求元クライアントに送信しても良い(108)。インターネットの発行元IPアドレスを書きかえることでアクセス要求受付サーバ経由で結果をリターンするのと同等のことを実現することも容易に可能である。また、ネットワーク101の負荷が問題とならないのであれば、ネットワークスイッチ102を省略して、サーバ間の通信をネットワーク101経由で行なうことも当然可能である。
図11は、本発明の更に他の実施例を示す図である。本実施例は、図3に示す実施例と同様のハードウェア構成を取る。クライアントから発行されたアクセス要求110をネットワークルータ2がグループ内の1台のネットワークストレージ(図11ではネットワークストレージ4)に転送する。ネットワークルータ2にていずれのネットワークストレージに転送するかを決定する方法は、例えばラウンドロビン等を採用できる。アクセス要求の転送を受けたネットワークストレージは、図1の実施例の各ネットワークストレージと同様な方法で、つまりアクセス対象の論理的な識別子(ファイルのパス名)のハッシュ値に基づき要求を処理すべきネットワークストレージを決定する。処理すべきネットワークストレージが自分であれば要求を処理する。処理すべきネットワークストレージが自分以外であれば(図示のケース)、その処理すべきネットワークストレージに要求を転送する(111)。要求を受け取ったネットワークストレージは転送された要求を処理し(112)、その結果をクライアントにリターンする(111)。なお、リターンする経路は、要求を最初に受け取ったネットワークストレージ経由であっても構わない。
図12は、ネットワークストレージ149のソフトウェア構成の一実施例を示す。図12では、ネットワークファイルシステム142に仮想一元化制御部143を組み込み、ハンドラ生成部144でシステム全体のグローバルなハンドル140を生成する。ハンドルの内部にファイルやディレクトリのフルパスが存在しない場合にはハンドル140にパスのハッシュ値141を埋め込む。また、仮想一元化制御部143は必要に応じてクライアントから受け取ったアクセス要求147を他のネットワークストレージに送受信する(146)。
図13は、ネットワークストレージ149のソフトウェア構成の他の実施例を示す。図13では、ネットワークファイルシステム156の上位に仮想化ネットワークファイルシステム151を置く。仮想化ネットワークファイルシステム151は仮想一元化制御部152とローカルハンドラ・グローバルハンドラ変換部153を有する。本ソフトウェア構成ではネットワークファイルシステム156がローカルに生成するローカルハンドラ154と他のネットワークストレージと共通に利用するグローバルハンドラ150とのマッピングをローカルハンドル・グローバルハンドル変換部153で行なう。ローカルハンドル・グローバルハンドル変換部153はハンドル変換表155を参照してクライアントから指定されたグローバルハンドルをネットワークファイルシステム156が利用するローカルハンドルに変換する。仮想一元化制御部152は必要に応じて他のネットワークファイルシステムとアクセス要求を送受信する(159)。
【0006】
【発明の効果】
本発明のネットワークストレージの仮想化方式では、オブジェクトの格納位置を該オブジェクトをアクセスする時に用いる論理的な識別子のハッシュ値に基づき格納すべきネットワークストレージを決定することで、オブジェクトの格納位置に関する情報を管理サーバに保持する必要をなくした。これにより、オブジェクトの格納位置に関する情報を管理サーバに問い合わせるための処理コストが削減され、システムのスケーラビリティが向上した。また、ネットワークストレージを追加・削除する際にも管理サーバに対する情報の更新処理が不要となるため、サーバの構成変更が容易となり、運用管理が簡素化される。
【図面の簡単な説明】
【図1】本発明のネットワークストレージの仮想化方式のシステム構成を示す図である。
【図2】クライアントから見たファイルシステムイメージを示す図である。
【図3】本発明のネットワークストレージ仮想化方式の処理の概略を示す図である。
【図4】ハンドラの構成の一実施例およびファイルアクセス処理の例を示す図である。
【図5】 LOOKUP処理の流れを示すフローチャートである。
【図6】 READ処理の流れを示すフローチャートである。
【図7】 MKDIR処理の流れを示すフローチャートである。
【図8】ファイルのRENAME処理の流れを示すフローチャートである。
【図9】 READDIR処理の流れを示すフローチャートである。
【図10】本発明のネットワークストレージの仮想化方式の他のシステム構成例と処理の流れを示す図である。
【図11】本発明のネットワークストレージの仮想化方式の更に他のシステム構成例と処理の流れを示す図である。
【図12】ネットワークストレージのソフトウェア構成の実装例を示す図である。
【図13】ネットワークストレージのソフトウェア構成の他の実装例を示す図である。
【符号の説明】
1 クライアント
2 ネットワーク装置
3、4、5 ネットワークストレージ
6 仮想一元化ファイルシステム
7 ローカルファイルシステム
8 記憶装置
9 仮想化されたネットワークストレージ
10 ネットワーク
11 クライアントから見た仮想化されたファイルシステムイメージ
20 ディレクトリハンドラ
25 ファイルハンドラ
101 ネットワーク
102 ネットワーク装置
142 ネットワークファイルシステム
143 仮想一元化制御部
144 ハンドラ性西部
145 ローカルファイルシステム
150 グローバルハンドラ
151 仮想化ネットワークファイルシステム
152 仮想一元化制御部
153 ローカルハンドラ・グローバルハンドラ変換部
154 ローカルハンドラ
155 ハンドラ変換表
156 ネットワークファイルシステム
157 ハンドラ生成部。
Claims (6)
- 階層構造を持つ複数のディレクトリによって構成され、データを管理するファイルシステムを備えた複数のネットワークストレージ装置を、仮想的な一つのネットワークストレージシステムとしてネットワーク経由で接続されるクライアントからアクセスさせるためのネットワークストレージ仮想化方法において、
前記クライアントから要求されたデータの前記ネットワークストレージにおける格納位置を前記ファイルシステム内で特定する際に、前記クライアント側から指定されるディレクトリの情報を元に lookup コマンドを順次実行して当該ディレクトリのディレクトリハンドラを取得することを繰り返すことにより、前記複数のディレクトリの階層構造を上位から下位に辿るネットワークストレージ仮想化方法であって、
前記 lookup コマンドを実行して得られるディレクトリハンドラに現在のディレクトリのパス名のハッシュ値を埋め込んで前記クライアント側に return を返し、
当該 return に対してクライアント側から返される更に下位のディレクトリの情報と現在のディレクトリのパス名のハッシュ値を用いて当該下位ディレクトリの lookup コマンドを実行し、もって前記データの格納位置を特定することを特徴とするネットワークストレージ仮想化方法。 - 請求項1に記載のネットワークストレージ仮想化方法において、
前記データが前記複数のネットワークストレージ装置にストライピングされて格納されることを特徴とするネットワークストレージ仮想化方法。 - 請求項1に記載のネットワークストレージ仮想化方法において、
前記複数のネットワークストレージ装置は、所定のネットワーク装置を介して前記ネットワークに接続され、
当該ネットワーク装置は、前記仮想的な一つのネットワークストレージシステムに対する前記クライアントからのアクセス要求を前記複数のネットワークストレージ装置に転送し、
前記複数のネットワークストレージ装置の各々は、前記転送されたアクセス要求のアクセス対象であるデータのパス名を引数とするハッシュ関数を用いて当該アクセス対象であるデータの格納先が自己のネットワークストレージ装置と一致するか否か判定し、
一致する場合には、前記アクセス要求を処理することを特徴とするネットワークストレージ仮想化方法。 - 請求項1に記載のネットワークストレージ仮想化方法において、
前記複数のネットワークストレージ装置は、所定のネットワーク装置を介して前記ネットワークに接続され、
当該ネットワーク装置は、前記仮想的な一つのネットワークストレージシステムに対する前記クライアントからのアクセス要求を前記複数のネットワークストレージ装置のいずれか1つに転送し、
当該アクセス要求を受信したネットワークストレージ装置は、当該転送されたアクセス要求のアクセス対象であるデータのパス名を引数とするハッシュ関数を用いて当該アクセス対象であるデータの格納先が自己のネットワークストレージ装置と一致するか否か判定し、
一致する場合には、前記アクセス要求を処理し、
一致しない場合には、前記ハッシュ関数で特定されるネットワークストレージ装置に、前記アクセス要求を転送することを特徴とするネットワークストレージ仮想化方法。 - 複数のネットワークストレージ装置により構成され、ネットワークを介して接続されるクライアントからのアクセス要求を処理するネットワークストレージシステムにおいて、
前記ネットワークストレージ装置は、
データを格納するためのストレージシステムと、
階層構造を持つ複数のディレクトリによって構成され、当該格納するデータを管理するファイルシステムと、
複数のファイルシステムを仮想的に一つに見せるための仮想一元化ファイルシステムとを有し、
前記ファイルシステムは、以下の動作を繰り返して実行することにより前記複数のディレクトリの階層構造を上位から下位に辿り、もってクライアントから要求されたデータの前記ネットワークストレージにおける格納位置を前記ファイルシステム内で特定することを特徴とするネットワークストレージシステム。
(1)前記クライアント側から指定されるディレクトリの情報を元に lookup コマンドを実行して当該ディレクトリのディレクトリハンドラを取得する、
(2)当該取得したディレクトリハンドラに現在のディレクトリのパス名のハッシュ値を埋め込んで前記クライアント側に return を返す、
(3)当該 return に対してクライアント側から返される更に下位のディレクトリの情報と前記現在のディレクトリのパス名のハッシュ値を用いて、該更に下位のディレクトリに対する lookup コマンドを実行する。 - 複数のネットワークストレージ装置を備え、ネットワークを介して接続されるクライアントから仮想的にひとつのネットワークストレージとしてアクセスさせる機能を提供するネットワークストレージシステムにおけるオブジェクトのハンドル情報生成方法において、
前記クライアント側から指定されるディレクトリの情報を元に lookup コマンドを実行することにより当該ディレクトリのディレクトリハンドラを生成し、
当該ディレクトリのパス名のハッシュ値を生成し、前記ディレクトリハンドラに埋め込み、
当該ハッシュ値を埋め込んだディレクトリハンドラを、前記オブジェクトのハンドル情報として前記クライアント側に返送することを特徴とするオブジェクトのハンドル情報生成方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002013652A JP4154893B2 (ja) | 2002-01-23 | 2002-01-23 | ネットワークストレージ仮想化方法 |
US10/219,770 US7587426B2 (en) | 2002-01-23 | 2002-08-16 | System and method for virtualizing a distributed network storage as a single-view file system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002013652A JP4154893B2 (ja) | 2002-01-23 | 2002-01-23 | ネットワークストレージ仮想化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003216474A JP2003216474A (ja) | 2003-07-31 |
JP4154893B2 true JP4154893B2 (ja) | 2008-09-24 |
Family
ID=19191823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002013652A Expired - Fee Related JP4154893B2 (ja) | 2002-01-23 | 2002-01-23 | ネットワークストレージ仮想化方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7587426B2 (ja) |
JP (1) | JP4154893B2 (ja) |
Families Citing this family (158)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7412462B2 (en) * | 2000-02-18 | 2008-08-12 | Burnside Acquisition, Llc | Data repository and method for promoting network storage of data |
US7171434B2 (en) * | 2001-09-07 | 2007-01-30 | Network Appliance, Inc. | Detecting unavailability of primary central processing element, each backup central processing element associated with a group of virtual logic units and quiescing I/O operations of the primary central processing element in a storage virtualization system |
US7472231B1 (en) | 2001-09-07 | 2008-12-30 | Netapp, Inc. | Storage area network data cache |
US8010961B1 (en) * | 2003-06-11 | 2011-08-30 | Symantec Corporation | Data layer prioritization in an application layered system |
US7613796B2 (en) * | 2002-09-11 | 2009-11-03 | Microsoft Corporation | System and method for creating improved overlay network with an efficient distributed data structure |
JP4237515B2 (ja) * | 2003-02-07 | 2009-03-11 | 株式会社日立グローバルストレージテクノロジーズ | ネットワークストレージ仮想化方法およびネットワークストレージシステム |
JP4068473B2 (ja) * | 2003-02-19 | 2008-03-26 | 株式会社東芝 | ストレージ装置、分担範囲決定方法及びプログラム |
US7346664B2 (en) * | 2003-04-24 | 2008-03-18 | Neopath Networks, Inc. | Transparent file migration using namespace replication |
US7831641B2 (en) * | 2003-04-24 | 2010-11-09 | Neopath Networks, Inc. | Large file support for a network file server |
US7181439B1 (en) * | 2003-04-25 | 2007-02-20 | Network Appliance, Inc. | System and method for transparently accessing a virtual disk using a file-based protocol |
US6973654B1 (en) | 2003-05-27 | 2005-12-06 | Microsoft Corporation | Systems and methods for the repartitioning of data |
US7653699B1 (en) * | 2003-06-12 | 2010-01-26 | Symantec Operating Corporation | System and method for partitioning a file system for enhanced availability and scalability |
US7676551B1 (en) * | 2003-06-25 | 2010-03-09 | Microsoft Corporation | Lookup partitioning storage system and method |
EP1513152A1 (en) * | 2003-09-02 | 2005-03-09 | Deutsche Thomson-Brandt Gmbh | Method for retrieving data from first and second storage medium |
US7849112B2 (en) * | 2003-09-03 | 2010-12-07 | Emc Corporation | Using a file handle for associating the file with a tree quota in a file server |
WO2005029251A2 (en) * | 2003-09-15 | 2005-03-31 | Neopath Networks, Inc. | Enabling proxy services using referral mechanisms |
JP4257783B2 (ja) | 2003-10-23 | 2009-04-22 | 株式会社日立製作所 | 論理分割可能な記憶装置及び記憶装置システム |
JP4703959B2 (ja) | 2003-12-03 | 2011-06-15 | 株式会社日立製作所 | 記憶装置システムおよびそのレプリケーション作成方法 |
US7536377B1 (en) * | 2003-12-18 | 2009-05-19 | Xilinx, Inc. | Component naming |
US7133988B2 (en) * | 2004-02-25 | 2006-11-07 | Hitachi, Ltd. | Method and apparatus for managing direct I/O to storage systems in virtualization |
US7272654B1 (en) * | 2004-03-04 | 2007-09-18 | Sandbox Networks, Inc. | Virtualizing network-attached-storage (NAS) with a compact table that stores lossy hashes of file names and parent handles rather than full names |
JP2005266933A (ja) | 2004-03-16 | 2005-09-29 | Fujitsu Ltd | ストレージ管理システム及びストレージ管理方法 |
JP2005301590A (ja) | 2004-04-09 | 2005-10-27 | Hitachi Ltd | ストレージシステム及びデータ複製方法 |
US8195627B2 (en) * | 2004-04-23 | 2012-06-05 | Neopath Networks, Inc. | Storage policy monitoring for a storage network |
US8190741B2 (en) * | 2004-04-23 | 2012-05-29 | Neopath Networks, Inc. | Customizing a namespace in a decentralized storage environment |
US7720796B2 (en) * | 2004-04-23 | 2010-05-18 | Neopath Networks, Inc. | Directory and file mirroring for migration, snapshot, and replication |
US7730012B2 (en) * | 2004-06-25 | 2010-06-01 | Apple Inc. | Methods and systems for managing data |
US7774326B2 (en) | 2004-06-25 | 2010-08-10 | Apple Inc. | Methods and systems for managing data |
US7437358B2 (en) * | 2004-06-25 | 2008-10-14 | Apple Inc. | Methods and systems for managing data |
US8335807B1 (en) * | 2004-08-30 | 2012-12-18 | Sprint Communications Company, L.P. | File distribution system and method |
US7844691B2 (en) * | 2004-12-30 | 2010-11-30 | Xstor Systems, Inc. | Scalable distributed storage and delivery |
US20060206524A1 (en) * | 2005-03-14 | 2006-09-14 | Microsoft Corporation | Intelligent collection management |
US20060277334A1 (en) * | 2005-06-01 | 2006-12-07 | Creative Technology Ltd. | Portable data storage device |
US7467158B2 (en) * | 2005-06-10 | 2008-12-16 | Microsoft Corporation | Object virtualization |
US20060294215A1 (en) * | 2005-06-24 | 2006-12-28 | Finisar Corporation | Using a network portal to store diagnostic data |
WO2007002855A2 (en) * | 2005-06-29 | 2007-01-04 | Neopath Networks, Inc. | Parallel filesystem traversal for transparent mirroring of directories and files |
US7647335B1 (en) | 2005-08-30 | 2010-01-12 | ATA SpA - Advanced Technology Assessment | Computing system and methods for distributed generation and storage of complex relational data |
US8209363B2 (en) * | 2007-10-09 | 2012-06-26 | Cleversafe, Inc. | File system adapted for use with a dispersed data storage network |
US8131689B2 (en) | 2005-09-30 | 2012-03-06 | Panagiotis Tsirigotis | Accumulating access frequency and file attributes for supporting policy based storage management |
US7596659B2 (en) * | 2005-12-08 | 2009-09-29 | Electronics And Telecommunications Research Institute | Method and system for balanced striping of objects |
JP4877921B2 (ja) * | 2006-01-25 | 2012-02-15 | 株式会社日立製作所 | ストレージシステム、記憶制御装置及び記憶制御装置のリカバリポイント検出方法 |
US20070198540A1 (en) * | 2006-02-01 | 2007-08-23 | Kohl John T | Non-bindable mount in a shared mount tree |
JP2007206931A (ja) * | 2006-02-01 | 2007-08-16 | Hitachi Ltd | 記憶システム、データ処理方法並びにストレージ装置 |
JP2007272357A (ja) * | 2006-03-30 | 2007-10-18 | Toshiba Corp | ストレージクラスタシステム、データ処理方法、及びプログラム |
US8543782B2 (en) * | 2006-04-25 | 2013-09-24 | Hewlett-Packard Development Company, L.P. | Content-based, compression-enhancing routing in distributed, differential electronic-data storage systems |
US8190742B2 (en) | 2006-04-25 | 2012-05-29 | Hewlett-Packard Development Company, L.P. | Distributed differential store with non-distributed objects and compression-enhancing data-object routing |
JP4912026B2 (ja) * | 2006-04-27 | 2012-04-04 | キヤノン株式会社 | 情報処理装置、情報処理方法 |
KR101381551B1 (ko) | 2006-05-05 | 2014-04-11 | 하이버 인크 | 그룹 기반의 완료 및 증분 컴퓨터 파일 백업 시스템, 프로세스 및 장치 |
EP1858228A1 (en) * | 2006-05-16 | 2007-11-21 | THOMSON Licensing | Network data storage system with distributed file management |
EP1858229A1 (en) * | 2006-05-16 | 2007-11-21 | Thomson Licensing | Network data storage system with distributed file management |
US8429242B1 (en) * | 2006-06-26 | 2013-04-23 | Emc Corporation | Methods and apparatus for providing content |
US8935302B2 (en) * | 2006-12-06 | 2015-01-13 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for data block usage information synchronization for a non-volatile storage volume |
US8489817B2 (en) | 2007-12-06 | 2013-07-16 | Fusion-Io, Inc. | Apparatus, system, and method for caching data |
WO2008070814A2 (en) | 2006-12-06 | 2008-06-12 | Fusion Multisystems, Inc. (Dba Fusion-Io) | Apparatus, system, and method for a scalable, composite, reconfigurable backplane |
FR2912520B1 (fr) * | 2007-02-13 | 2009-05-15 | Stg Interactive Sa | Procede de gestion de fichiers. |
US9110920B1 (en) | 2007-05-03 | 2015-08-18 | Emc Corporation | CIFS access to NFS files and directories by translating NFS file handles into pseudo-pathnames |
US7779175B2 (en) | 2007-05-04 | 2010-08-17 | Blackwave, Inc. | System and method for rendezvous in a communications network |
US20080288563A1 (en) * | 2007-05-14 | 2008-11-20 | Hinshaw Foster D | Allocation and redistribution of data among storage devices |
US8209365B2 (en) * | 2007-07-23 | 2012-06-26 | Hewlett-Packard Development Company, L.P. | Technique for virtualizing storage using stateless servers |
US8332404B2 (en) * | 2007-10-25 | 2012-12-11 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
WO2009054827A1 (en) * | 2007-10-25 | 2009-04-30 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
GB2466581B (en) * | 2007-10-25 | 2013-01-09 | Hewlett Packard Development Co | Data processing apparatus and method of deduplicating data |
US8099573B2 (en) * | 2007-10-25 | 2012-01-17 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
US8782368B2 (en) * | 2007-10-25 | 2014-07-15 | Hewlett-Packard Development Company, L.P. | Storing chunks in containers |
US9372941B2 (en) * | 2007-10-25 | 2016-06-21 | Hewlett Packard Enterprise Development Lp | Data processing apparatus and method of processing data |
US8150851B2 (en) * | 2007-10-25 | 2012-04-03 | Hewlett-Packard Development Company, L.P. | Data processing apparatus and method of processing data |
US8140637B2 (en) | 2007-10-25 | 2012-03-20 | Hewlett-Packard Development Company, L.P. | Communicating chunks between devices |
US7836226B2 (en) | 2007-12-06 | 2010-11-16 | Fusion-Io, Inc. | Apparatus, system, and method for coordinating storage requests in a multi-processor/multi-thread environment |
US9519540B2 (en) | 2007-12-06 | 2016-12-13 | Sandisk Technologies Llc | Apparatus, system, and method for destaging cached data |
CN102016789B (zh) * | 2008-04-25 | 2014-03-19 | 惠普开发有限公司 | 数据处理装置和处理数据的方法 |
TWI476610B (zh) * | 2008-04-29 | 2015-03-11 | Maxiscale Inc | 同級間冗餘檔案伺服器系統及方法 |
US9176779B2 (en) * | 2008-07-10 | 2015-11-03 | Juniper Networks, Inc. | Data access in distributed systems |
US8706900B2 (en) * | 2008-07-10 | 2014-04-22 | Juniper Networks, Inc. | Dynamic storage resources |
US20100011091A1 (en) * | 2008-07-10 | 2010-01-14 | Blackwave Inc. | Network Storage |
US8954976B2 (en) * | 2008-07-10 | 2015-02-10 | Juniper Networks, Inc. | Data storage in distributed resources of a network based on provisioning attributes |
US8650270B2 (en) * | 2008-07-10 | 2014-02-11 | Juniper Networks, Inc. | Distributed computing with multiple coordinated component collections |
US8099402B2 (en) * | 2008-07-10 | 2012-01-17 | Juniper Networks, Inc. | Distributed data storage and access systems |
US8364710B2 (en) * | 2008-07-10 | 2013-01-29 | Juniper Networks, Inc. | Model-based resource allocation |
US8191070B2 (en) * | 2008-07-10 | 2012-05-29 | Juniper Networks, Inc. | Dynamic resource allocation |
US8887166B2 (en) * | 2008-07-10 | 2014-11-11 | Juniper Networks, Inc. | Resource allocation and modification using access patterns |
US8307044B2 (en) * | 2008-08-28 | 2012-11-06 | Netapp, Inc. | Circuits, systems, and methods to integrate storage virtualization in a storage controller |
US8117343B2 (en) * | 2008-10-28 | 2012-02-14 | Hewlett-Packard Development Company, L.P. | Landmark chunking of landmarkless regions |
US9066141B2 (en) * | 2009-01-21 | 2015-06-23 | Juniper Networks, Inc. | Resource allocation and modification using statistical analysis |
US8375182B2 (en) * | 2009-02-10 | 2013-02-12 | Hewlett-Packard Development Company, L.P. | System and method for segmenting a data stream |
US8001273B2 (en) * | 2009-03-16 | 2011-08-16 | Hewlett-Packard Development Company, L.P. | Parallel processing of input data to locate landmarks for chunks |
US7979491B2 (en) * | 2009-03-27 | 2011-07-12 | Hewlett-Packard Development Company, L.P. | Producing chunks from input data using a plurality of processing elements |
US8200723B1 (en) * | 2009-04-21 | 2012-06-12 | Network Appliance, Inc. | Metadata file system backed by database |
US9141621B2 (en) * | 2009-04-30 | 2015-09-22 | Hewlett-Packard Development Company, L.P. | Copying a differential data store into temporary storage media in response to a request |
US20100281077A1 (en) * | 2009-04-30 | 2010-11-04 | Mark David Lillibridge | Batching requests for accessing differential data stores |
JP5367470B2 (ja) * | 2009-06-11 | 2013-12-11 | 日本放送協会 | ストレージサーバー装置及びコンピュータプログラム |
JP5999645B2 (ja) | 2009-09-08 | 2016-10-05 | ロンギチュード エンタープライズ フラッシュ エスエイアールエル | ソリッドステート記憶デバイス上にデータをキャッシングするための装置、システム、および方法 |
US9122579B2 (en) | 2010-01-06 | 2015-09-01 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for a storage layer |
EP2476079A4 (en) | 2009-09-09 | 2013-07-03 | Fusion Io Inc | APPARATUS, SYSTEM, AND METHOD FOR STORAGE ALLOCATION |
US8601222B2 (en) | 2010-05-13 | 2013-12-03 | Fusion-Io, Inc. | Apparatus, system, and method for conditional and atomic storage operations |
US7716179B1 (en) * | 2009-10-29 | 2010-05-11 | Wowd, Inc. | DHT-based distributed file system for simultaneous use by millions of frequently disconnected, world-wide users |
US8660994B2 (en) * | 2010-01-28 | 2014-02-25 | Hewlett-Packard Development Company, L.P. | Selective data deduplication |
US8281182B2 (en) | 2010-03-12 | 2012-10-02 | Cleversafe, Inc. | Dispersed storage unit selection |
US8086638B1 (en) | 2010-03-31 | 2011-12-27 | Emc Corporation | File handle banking to provide non-disruptive migration of files |
JP2011242826A (ja) * | 2010-05-14 | 2011-12-01 | Fujitsu Ltd | ファイル管理システム及びファイル管理プログラム |
US8943550B2 (en) | 2010-05-28 | 2015-01-27 | Apple Inc. | File system access for one or more sandboxed applications |
US8473961B2 (en) | 2011-01-14 | 2013-06-25 | Apple Inc. | Methods to generate security profile for restricting resources used by a program based on entitlements of the program |
US8365192B2 (en) | 2011-01-14 | 2013-01-29 | Apple Inc. | Methods for managing authority designation of graphical user interfaces |
US20120047504A1 (en) * | 2010-08-17 | 2012-02-23 | Robert Paul Morris | Methods, systems, and computer program products for maintaining a resource based on a cost of energy |
WO2012023384A1 (ja) | 2010-08-19 | 2012-02-23 | 日本電気株式会社 | オブジェクト配置装置及び方法、コンピュータプログラム |
WO2012083308A2 (en) | 2010-12-17 | 2012-06-21 | Fusion-Io, Inc. | Apparatus, system, and method for persistent data management on a non-volatile storage media |
US9213594B2 (en) | 2011-01-19 | 2015-12-15 | Intelligent Intellectual Property Holdings 2 Llc | Apparatus, system, and method for managing out-of-service conditions |
US8874823B2 (en) | 2011-02-15 | 2014-10-28 | Intellectual Property Holdings 2 Llc | Systems and methods for managing data input/output operations |
US9003104B2 (en) | 2011-02-15 | 2015-04-07 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a file-level cache |
US9201677B2 (en) | 2011-05-23 | 2015-12-01 | Intelligent Intellectual Property Holdings 2 Llc | Managing data input/output operations |
WO2012116369A2 (en) | 2011-02-25 | 2012-08-30 | Fusion-Io, Inc. | Apparatus, system, and method for managing contents of a cache |
WO2012129191A2 (en) | 2011-03-18 | 2012-09-27 | Fusion-Io, Inc. | Logical interfaces for contextual storage |
US9563555B2 (en) | 2011-03-18 | 2017-02-07 | Sandisk Technologies Llc | Systems and methods for storage allocation |
US9037618B2 (en) | 2011-03-31 | 2015-05-19 | Novell, Inc. | Distributed, unified file system operations |
US8627104B2 (en) * | 2011-04-28 | 2014-01-07 | Absio Corporation | Secure data storage |
US8554809B1 (en) | 2011-05-26 | 2013-10-08 | Emc Corporation | Calculating quota usage without impacting file system services |
US8904128B2 (en) | 2011-06-08 | 2014-12-02 | Hewlett-Packard Development Company, L.P. | Processing a request to restore deduplicated data |
US9553817B1 (en) | 2011-07-14 | 2017-01-24 | Sprint Communications Company L.P. | Diverse transmission of packet content |
US9552367B2 (en) | 2011-09-16 | 2017-01-24 | Ca, Inc. | System and method for network file system server replication using reverse path lookup |
US8301597B1 (en) | 2011-09-16 | 2012-10-30 | Ca, Inc. | System and method for network file system server replication using reverse path lookup |
US8667569B2 (en) * | 2011-09-29 | 2014-03-04 | Target Brands, Inc. | Credentials management |
US9274937B2 (en) | 2011-12-22 | 2016-03-01 | Longitude Enterprise Flash S.A.R.L. | Systems, methods, and interfaces for vector input/output operations |
US9251086B2 (en) | 2012-01-24 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system, and method for managing a cache |
US9116812B2 (en) | 2012-01-27 | 2015-08-25 | Intelligent Intellectual Property Holdings 2 Llc | Systems and methods for a de-duplication cache |
US10359972B2 (en) | 2012-08-31 | 2019-07-23 | Sandisk Technologies Llc | Systems, methods, and interfaces for adaptive persistence |
US9305004B2 (en) | 2012-06-05 | 2016-04-05 | International Business Machines Corporation | Replica identification and collision avoidance in file system replication |
US10339056B2 (en) | 2012-07-03 | 2019-07-02 | Sandisk Technologies Llc | Systems, methods and apparatus for cache transfers |
US9612966B2 (en) | 2012-07-03 | 2017-04-04 | Sandisk Technologies Llc | Systems, methods and apparatus for a virtual machine cache |
US9971787B2 (en) | 2012-07-23 | 2018-05-15 | Red Hat, Inc. | Unified file and object data storage |
US10169348B2 (en) * | 2012-08-23 | 2019-01-01 | Red Hat, Inc. | Using a file path to determine file locality for applications |
US8769105B2 (en) | 2012-09-14 | 2014-07-01 | Peaxy, Inc. | Software-defined network attachable storage system and method |
US10509776B2 (en) | 2012-09-24 | 2019-12-17 | Sandisk Technologies Llc | Time sequence data management |
US10318495B2 (en) | 2012-09-24 | 2019-06-11 | Sandisk Technologies Llc | Snapshots for a non-volatile device |
US8589659B1 (en) * | 2012-11-08 | 2013-11-19 | DSSD, Inc. | Method and system for global namespace with consistent hashing |
US9842053B2 (en) | 2013-03-15 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for persistent cache logging |
US10102144B2 (en) | 2013-04-16 | 2018-10-16 | Sandisk Technologies Llc | Systems, methods and interfaces for data virtualization |
US10558561B2 (en) | 2013-04-16 | 2020-02-11 | Sandisk Technologies Llc | Systems and methods for storage metadata management |
CN103535014B (zh) * | 2013-04-23 | 2016-09-28 | 华为技术有限公司 | 一种网络存储系统、数据处理方法和客户端 |
US9842128B2 (en) | 2013-08-01 | 2017-12-12 | Sandisk Technologies Llc | Systems and methods for atomic storage operations |
US20150039645A1 (en) * | 2013-08-02 | 2015-02-05 | Formation Data Systems, Inc. | High-Performance Distributed Data Storage System with Implicit Content Routing and Data Deduplication |
US10754825B2 (en) * | 2013-08-28 | 2020-08-25 | Red Hat, Inc. | Path resolver for client access to distributed file systems |
US10019320B2 (en) | 2013-10-18 | 2018-07-10 | Sandisk Technologies Llc | Systems and methods for distributed atomic storage operations |
EP2878348B1 (en) * | 2013-11-01 | 2020-04-29 | Sony Interactive Entertainment Inc. | Information processing device, data structure of game data, program, and recording medium |
JP2015088143A (ja) | 2013-11-01 | 2015-05-07 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置およびゲームデータのデータ構造 |
US10073630B2 (en) | 2013-11-08 | 2018-09-11 | Sandisk Technologies Llc | Systems and methods for log coordination |
US20170286195A1 (en) * | 2014-09-11 | 2017-10-05 | Systemic Management Science Corporation | Information object system |
US9767118B2 (en) * | 2014-12-01 | 2017-09-19 | Dell Products, Lp | Optimized UEFI file system with network file system compound statements |
JP6378847B2 (ja) * | 2015-02-03 | 2018-08-22 | 華為技術有限公司Huawei Technologies Co.,Ltd. | ネットワーク・ファイル・システムにおいてi/o要求を処理するための方法及び装置 |
US9946607B2 (en) | 2015-03-04 | 2018-04-17 | Sandisk Technologies Llc | Systems and methods for storage error management |
RU2634223C2 (ru) * | 2015-06-30 | 2017-10-24 | Общество С Ограниченной Ответственностью "Яндекс" | Способ (варианты) и система (варианты) управления данными, связанными с иерархической структурой |
US10397029B2 (en) | 2015-07-08 | 2019-08-27 | Toshiba Memory Corporation | Relay apparatus |
US10515016B2 (en) * | 2015-12-03 | 2019-12-24 | Hitachi, Ltd. | Method and apparatus for caching in software-defined storage systems |
CN106874320A (zh) | 2016-06-20 | 2017-06-20 | 阿里巴巴集团控股有限公司 | 分布式流式数据处理的方法和装置 |
US10509921B2 (en) * | 2017-05-31 | 2019-12-17 | Intuit Inc. | System for managing transactional data |
US10318191B1 (en) * | 2017-07-18 | 2019-06-11 | EMC IP Holding Company LLC | Migration and transformation of data storage in a replicated environment |
WO2019122971A1 (en) * | 2017-12-20 | 2019-06-27 | Telefonaktiebolaget Lm Ericsson (Publ) | Datafall: a policy-driven algorithm for decentralized placement and reorganization of replicated data |
US10931756B2 (en) * | 2019-06-28 | 2021-02-23 | International Business Machines Corporation | Direct file send from storage to end client by transferring socket information to the storage |
US20210336796A1 (en) * | 2019-09-03 | 2021-10-28 | Christopher A. Wiklof | System and computer method including a blockchain-mediated agreement engine |
JP7361384B2 (ja) | 2020-02-04 | 2023-10-16 | 株式会社エムケイシステム | 電子申請の補助方法、電子申請補助システム、電子申請補助システムのプログラム及びその記録媒体 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5151989A (en) * | 1987-02-13 | 1992-09-29 | International Business Machines Corporation | Directory cache management in a distributed data processing system |
US6026452A (en) * | 1997-02-26 | 2000-02-15 | Pitts; William Michael | Network distributed site cache RAM claimed as up/down stream request/reply channel for storing anticipated data and meta data |
US5864854A (en) * | 1996-01-05 | 1999-01-26 | Lsi Logic Corporation | System and method for maintaining a shared cache look-up table |
US5944789A (en) * | 1996-08-14 | 1999-08-31 | Emc Corporation | Network file server maintaining local caches of file directory information in data mover computers |
US6081807A (en) * | 1997-06-13 | 2000-06-27 | Compaq Computer Corporation | Method and apparatus for interfacing with a stateless network file system server |
US5987477A (en) * | 1997-07-11 | 1999-11-16 | International Business Machines Corporation | Parallel file system and method for parallel write sharing |
US6807632B1 (en) * | 1999-01-21 | 2004-10-19 | Emc Corporation | Content addressable information encapsulation, representation, and transfer |
US6029168A (en) * | 1998-01-23 | 2000-02-22 | Tricord Systems, Inc. | Decentralized file mapping in a striped network file system in a distributed computing environment |
US6311216B1 (en) * | 1998-05-29 | 2001-10-30 | Microsoft Corporation | Method, computer program product, and system for client-side deterministic routing and URL lookup into a distributed cache of URLS |
US6421711B1 (en) * | 1998-06-29 | 2002-07-16 | Emc Corporation | Virtual ports for data transferring of a data storage system |
US6370620B1 (en) * | 1998-12-10 | 2002-04-09 | International Business Machines Corporation | Web object caching and apparatus for performing the same |
US6308320B1 (en) * | 1999-01-15 | 2001-10-23 | Hewlett-Packard Company | Method and apparatus for incremental selective compilation of intermediate code files during computer system compilation and linking |
US6542964B1 (en) * | 1999-06-02 | 2003-04-01 | Blue Coat Systems | Cost-based optimization for content distribution using dynamic protocol selection and query resolution for cache server |
US6915302B1 (en) * | 1999-10-01 | 2005-07-05 | International Business Machines Corporation | Method, system, and program for accessing files in a file system |
US7412462B2 (en) * | 2000-02-18 | 2008-08-12 | Burnside Acquisition, Llc | Data repository and method for promoting network storage of data |
US6704730B2 (en) * | 2000-02-18 | 2004-03-09 | Avamar Technologies, Inc. | Hash file system and method for use in a commonality factoring system |
US6952737B1 (en) * | 2000-03-03 | 2005-10-04 | Intel Corporation | Method and apparatus for accessing remote storage in a distributed storage cluster architecture |
US7418439B2 (en) * | 2000-03-17 | 2008-08-26 | Twin Peaks Software, Inc. | Mirror file system |
US7908337B2 (en) * | 2000-04-28 | 2011-03-15 | Adara Networks, Inc. | System and method for using network layer uniform resource locator routing to locate the closest server carrying specific content |
US6842784B1 (en) * | 2000-06-27 | 2005-01-11 | Emc Corporation | Use of global logical volume identifiers to access logical volumes stored among a plurality of storage elements in a computer storage system |
US6782389B1 (en) * | 2000-09-12 | 2004-08-24 | Ibrix, Inc. | Distributing files across multiple, permissibly heterogeneous, storage devices |
US6985956B2 (en) * | 2000-11-02 | 2006-01-10 | Sun Microsystems, Inc. | Switching system |
US6907414B1 (en) * | 2000-12-22 | 2005-06-14 | Trilogy Development Group, Inc. | Hierarchical interface to attribute based database |
AU2002249939A1 (en) * | 2001-01-11 | 2002-07-24 | Z-Force Communications, Inc. | File switch and switched file system |
US7043637B2 (en) * | 2001-03-21 | 2006-05-09 | Microsoft Corporation | On-disk file format for a serverless distributed file system |
US20030037061A1 (en) * | 2001-05-08 | 2003-02-20 | Gautham Sastri | Data storage system for a multi-client network and method of managing such system |
US6813690B1 (en) * | 2001-06-12 | 2004-11-02 | Network Appliance, Inc. | Caching media data using content-sensitive identifiers |
US7313694B2 (en) * | 2001-10-05 | 2007-12-25 | Hewlett-Packard Development Company, L.P. | Secure file access control via directory encryption |
US6754800B2 (en) * | 2001-11-14 | 2004-06-22 | Sun Microsystems, Inc. | Methods and apparatus for implementing host-based object storage schemes |
US7373406B2 (en) * | 2001-12-12 | 2008-05-13 | Valve Corporation | Method and system for effectively communicating file properties and directory structures in a distributed file system |
US6772161B2 (en) * | 2001-12-19 | 2004-08-03 | Hewlett-Packard Development Company, L.P. | Object-level migration in a partition-based distributed file system |
US7360034B1 (en) * | 2001-12-28 | 2008-04-15 | Network Appliance, Inc. | Architecture for creating and maintaining virtual filers on a filer |
-
2002
- 2002-01-23 JP JP2002013652A patent/JP4154893B2/ja not_active Expired - Fee Related
- 2002-08-16 US US10/219,770 patent/US7587426B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003216474A (ja) | 2003-07-31 |
US7587426B2 (en) | 2009-09-08 |
US20030140051A1 (en) | 2003-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4154893B2 (ja) | ネットワークストレージ仮想化方法 | |
US7647461B2 (en) | Method and apparatus for allocating resources among virtual filers on a filer | |
US10467188B2 (en) | In-line policy management with multi-level object handle | |
JP4547264B2 (ja) | プロキシ・キャッシュに関する装置および方法 | |
JP4547263B2 (ja) | データをネットワーク中で処理する装置および方法 | |
US8312046B1 (en) | System and method for enabling a data container to appear in a plurality of locations in a super-namespace | |
CA2512312C (en) | Metadata based file switch and switched file system | |
US8190741B2 (en) | Customizing a namespace in a decentralized storage environment | |
USRE43346E1 (en) | Transaction aggregation in a switched file system | |
US7512673B2 (en) | Rule based aggregation of files and transactions in a switched file system | |
US9015123B1 (en) | Methods and systems for identifying changed data in an expandable storage volume | |
US7383288B2 (en) | Metadata based file switch and switched file system | |
US20070038697A1 (en) | Multi-protocol namespace server | |
US8832154B1 (en) | Object location service for network-based content repository | |
US6530036B1 (en) | Self-healing computer system storage | |
US8990270B2 (en) | Protocol virtualization for a network file system | |
US20070055703A1 (en) | Namespace server using referral protocols | |
US20070088702A1 (en) | Intelligent network client for multi-protocol namespace redirection | |
EP2557514A1 (en) | Cloud Storage System with Distributed Metadata | |
US20190258604A1 (en) | System and method for implementing a quota system in a distributed file system | |
US20140259123A1 (en) | Aliasing of exported paths in a storage system | |
US8627446B1 (en) | Federating data between groups of servers | |
US8868970B2 (en) | Object based storage system and method of operating thereof |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041125 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060419 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080318 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080514 |
|
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: 20080617 |
|
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: 20080630 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110718 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110718 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110718 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120718 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130718 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |