JP4588024B2 - 名前空間複製を用いるトランスペアレントなファイル移動 - Google Patents

名前空間複製を用いるトランスペアレントなファイル移動 Download PDF

Info

Publication number
JP4588024B2
JP4588024B2 JP2006513342A JP2006513342A JP4588024B2 JP 4588024 B2 JP4588024 B2 JP 4588024B2 JP 2006513342 A JP2006513342 A JP 2006513342A JP 2006513342 A JP2006513342 A JP 2006513342A JP 4588024 B2 JP4588024 B2 JP 4588024B2
Authority
JP
Japan
Prior art keywords
file
file server
access request
nas
handle
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
JP2006513342A
Other languages
English (en)
Other versions
JP2006524873A (ja
JP2006524873A5 (ja
Inventor
ウォン,トーマス,ケー.
トゥシリゴティス,パナジオティス
イェンガー,アナンド
チャウラ,ラジーブ
Original Assignee
ネオパス ネットワークス,インク.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US10/831,376 external-priority patent/US7346664B2/en
Priority claimed from US10/831,701 external-priority patent/US7587422B2/en
Application filed by ネオパス ネットワークス,インク. filed Critical ネオパス ネットワークス,インク.
Publication of JP2006524873A publication Critical patent/JP2006524873A/ja
Publication of JP2006524873A5 publication Critical patent/JP2006524873A5/ja
Application granted granted Critical
Publication of JP4588024B2 publication Critical patent/JP4588024B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • 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/11File system administration, e.g. details of archiving or snapshots
    • G06F16/119Details of migration of file systems
    • 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
    • G06F16/184Distributed file systems implemented as replicated file system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (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)
  • Computer Security & Cryptography (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

関連出願のクロスリファレンス
本出願は35U.S.C.119(e)条に基づき、以下の優先権を主張する。「名前空間複製技法を用いるトランスペアレントなファイル移動のための方法および装置」と題する、Thomas K.Wong他による2003年4月24日出願の米国仮特許出願第60/465,579号。「名前空間複製技法を用いるトランスペアレントなファイル複製のための方法および装置」と題する、Thomas K.Wong他による2003年4月24日出願の米国仮特許出願第60/465,578号。「名前空間複製を用いるトランスペアレントなファイル複製」と題する、Thomas K.Wong他による(本出願と同一日付)出願の米国仮特許出願第(代理人整理番号#23313−07962)号。これら各出願の全体を引用して本明細書に組み込む。
本発明は、一般にストレージネットワークに関し、より詳細には、名前空間複製を用いて、分散ストレージネットワーク内のファイルサーバ間のファイル移動を行うネットワーク装置に関する。
コンピューターネットワークでは、ネットワークに直接接続するNAS(ネットワーク接続ストレージ)ファイルサーバが、ストレージネットワークのための低価格で簡便な構成が可能なソリューションを提供している。これらのNASファイルサーバは、自己充足型である。なぜなら、これらは、如何なるオペレーティングシステムを実行しているクライアントとも相互運用でき、オープンプロトコルを用いて通信できるファイルシステムを含むからである。例えば、Unixベースのクライアントは、カリフォルニア州サンタクララのサンマイクロシステムズ社のNFS(ネットワークファイルシステム)プロトコルを用いて、また、ウインドウズベースのクライアントは、ワシントン州レッドモンドのマイクロソフト社のCIFS(共通インターネットファイルシステム)を用いて、NASファイルサーバ上のファイルにアクセスできる。しかし、オペレーティングシステムがクライアントとファイルサーバとの間の通信に影響することはない。従って、NASファイルサーバは、真に普遍的なファイルアクセスを提供することになる。
対照的に、より高価で強力なSAN(ストレージエリアネットワーク)ファイルサーバは、バックエンドでのファイバーチャンネル、つまり専用ネットワークで接続されるリソースを用いる。SANファイルシステムは、オペレーティングシステムの一部、またはクライアント上で実行するアプリケーションである。しかし、異質のクライアントオペレーティングシステムが、各ファイルの追加コピーをストレージネットワーク上に格納するようリクエストして、SANファイルサーバの互換性を確実にしてもよい。また、SAN上のファイルサーバ間の通信は、独自プロトコルを用いるので、共通のベンダーが提供するのが普通である。結果として、NASファイルサーバは、価格および簡便さが主な動機である場合に好適である。しかしながら、SANストレージネットワークを越えるNASストレージネットワークの利点はまた、欠点も有している。
NASファイルサーバの欠点の1つは、集中管理ではないことである。従って、各クライアントは、NFSファイルサーバのそれぞれの間の通信チャンネルを別々に維持しなければならない。NASファイルサーバがストレージネットワークに追加されるか、または削除される場合、各クライアントは、関係するストレージリソースのディレクトリを適切にマウントまたはアンマウントしなければならない。これは、故障しているNASファイルサーバを同一構成のバックアップNASファイルサーバと交換する場合等の、ハードウエアに変更があるがネットワーク上で利用可能な特定ファイルには変更がない場合、特に非効率的である。
関連する欠点は、ファイル移動またはファイル複製の間等、ストレージネットワーク内にファイルを再配置するたびに、クライアントを再構成しなければならないということである。クライアントは、ファイルサーバ上にあるディレクトリまたはファイルオブジェクトの物理的な場所を識別するNASファイルハンドルを生成する。オブジェクトにアクセスするために、クライアントはオブジェクトアクセスリクエストをNASファイルサーバに直接送信する。ファイルを別のNASファイルサーバに再配置する場合は、続くファイルへアクセスするリクエストにより新規照合を要求してファイルを配置し、新規NASファイルハンドルを生成する。
更なる欠点は、ファイル移動および複製等の大量データ転送動作中はNASファイルサーバにアクセスできないことである。このようなデータ転送は、業務時間以外に行って結果的に休止時間を低減するのが普通である。しかしながら、ストレージ容量を更に大量にするとデータ転送に必要な時間量が増大する。更に、多くの企業、およびアプリケーションでは、常時利用できるデータが必要である。
従って、必要があるのは、NASファイルサーバ等のファイルサーバのクライアントにトランスペアレント性を提供するネットワーク装置である。更に、クライアントが再構成をしなくてもファイル移動が可能なネットワーク装置に対するニーズがある。更に、ファイル移動中のデータにアクセスを提供するネットワーク装置に対するニーズもある。
本発明は、クライアントにトランスペアレントな分散ストレージネットワーク内のファイル移動を提供することにより、これらのニーズを満たす。クライアントおよびNASファイルサーバのデータパス内のNASスイッチが、宛先ファイルサーバへのソースファイルサーバのファイル移動を名前空間複製を用いて確実に調整して、新規ファイル場所を追跡する。更に、NASスイッチは、時間を要するデータ転送中のデータ利用可能性を維持する。
本発明により構成されるシステムの実施の形態は、ストレージネットワークのフロントエンドにあるクライアントと、バックエンドにあるソースファイルサーバおよび宛先ファイルサーバの双方に通信するNASスイッチを備える。NASスイッチは、ソースおよび宛先ファイルサーバから受信するNASファイルハンドル(例えば、CIFSファイルハンドルまたはNFSファイルハンドル)を、場所とは無関係なスイッチファイルハンドルと結びつける。次いで、NASスイッチは、クライアントにスイッチファイルハンドルをエクスポートする。続くクライアントからのオブジェクトアクセスリクエストに応じて、NASスイッチは、スイッチファイルハンドルを、適切なNASファイルサーバに提出するために適切なNASファイルハンドルで置き換える。
別の実施の形態では、NASスイッチは更に、ソースファイルサーバ上の場所にあるソースファイルを、宛先ファイルサーバ上の場所にある宛先ファイルに移動するのを調整する移動モジュールを備える。移動モジュールは、名前空間複製およびデータ複製を別々に実行する。名前空間複製は、ソースファイルサーバ上のディレクトリ階層の名前空間を宛先ファイルサーバにコピーする。名前空間複製では、宛先ファイルサーバへ移動されるファイルに対するソースファイルサーバからのポインタとして、またはソースファイルサーバから更に移動されるファイルに対する宛先ファイルサーバからのポインタとして、格納したファイルハンドルを使用することも含むことができる。次に、移動モジュールはデータを移動し、格納したファイルハンドルをスワップする。
更に別の実施の形態では、移動モジュールは、オブジェクトの移動が成功したときにファイル移動テーブルを更新する。従って、移動モジュールは、ソースファイルサーバにあるオブジェクトの場所、および宛先ファイルサーバにあるオブジェクトの場所を入力する。オブジェクトアクセスリクエストを受信すると、NASスイッチは、スイッチファイルハンドルにより移動テーブルを検索する。一致した場合、NASスイッチは、オブジェクトアクセスリクエストを宛先ファイルサーバ上の場所に送信する。さもなければ、NASスイッチは、オブジェクトアクセスリクエストをソースファイルサーバ上の場所に送信する。移動モジュールは、分散ファイルサーバ、および移動を本来サポートしていないファイルサーバに移動サービスを提供するという利点を有する。
更に別の実施の形態では、移動中、移動モジュールは、ソースファイルサーバ上の名前空間、および宛先ファイルサーバ上の複製した名前空間の双方に、名前空間アクセスリクエストを複製する。
本発明は、クライアントにトランスペアレントなストレージネットワーク内のファイル移動を提供する。クライアントおよびストレージネットワーク上のNASファイルサーバのデータパスにおけるNAS(ネットワーク接続ストレージ)スイッチは、クライアントへのデータ利用可能性を維持しながら、名前空間複製を用いて分散サーバ間のファイル移動を調整する。システムの実施の形態の幾つかを、図1〜図2で説明し、そこで動作する方法の幾つかの実施の形態を、図3〜図10で説明する。
付帯の説明は、多様な具体的詳細内容により完全な説明を提供するためのものである。もちろん、ストレージネットワーク分野では、開示し、説明する本発明の特長に対して多くの異なる改変が可能であることは言うまでもない。当該技術に習熟する者にとって疑問の余地なく明らかなことは、本発明は以下に説明する幾つかの具体的な詳細説明なしに実施でき、自明のことであるが、本発明の多数の他の改変および実施の形態が、その教示および精神を満たしつつ実施できるのは事実である。例えば、本発明は、NASプロトコルに基づいて動作するストレージネットワークに関して説明するが、NAS以外の分散ストレージネットワーク、または混合プロトコルネットワークに対する将来のプロトコルでも同様に実施できる。従って、本発明は、以下に説明する特定の実施に制限されると理解すべきではなく、以下の請求の範囲によってのみ制限されると理解すべきである。
本発明の処理、特長、または機能は、適切な演算装置で実行されるプログラム命令により実施できる。例示の演算装置には、企業サーバ、アプリケーションサーバ、ワークステーション、パーソナルコンピュータ、ネットワークコンピュータ、ネットワーク家電、携帯情報端末、ゲームコンソール、テレビ、セットトップボックス、構内自動設備、POS端末、自動車、および個人通信装置が含まれる。プログラム命令はコンピュータ可読媒体、ストレージボリューム、またはインターネット上で配布できる。プログラム命令は、ソースコード、オブジェクトコード、またはスクリプト等の任意の適切な形式をとることができる。
図1は、本発明の一実施の形態によるストレージネットワークシステム100を示すハイレベルブロック図である。システム100は、ネットワーク195に接続されるNASスイッチ110、およびクライアント140を備える。NASスイッチ110、ソースファイルサーバ120、および宛先ファイルサーバ130は、サブネットワーク196を介してそれぞれ通信接続される。注意すべきは、追加クライアント140、追加のソースおよび/または宛先ファイルサーバ120、130、および追加NASスイッチ110を含む実施の形態等の、多様なシステム100の構成をとり得るということである。システム100のコンポーネントは、例えば、オペレーティングシステム、および/またはアプリケーションプログラムを実行するx86型プロセッサを有するパーソナルコンピュータ、ワークステーション、最適化オペレーティングシステム、および/またはアプリケーションプログラムを有する特殊NAS装置、修正したサーバブレード等に実装される。一実施の形態では、ストレージネットワーク175は、NFSおよびCIFS等のプロトコルを用いるNASを備える。別の実施の形態では、ストレージネットワーク175は、NAS、SANや他の形式のストレージネットワークの組合せを備える。更に別の実施の形態では、ストレージネットワーク175は、分散した標準またはNAS以外の独自形式のストレージシステムを備える。
NASスイッチ110は、オブジェクト管理に関してクライアント140に連続したトランスペアレント性を提供する。特に、NASスイッチは、物理的構成、オブジェクト管理、オブジェクト移動、オブジェクト複製、効率的ストレージ、および/またはストレージネットワーク175上の他のサービスに関連するタスクをオフロードすることができる。好ましくは、NASスイッチ110は、ファイルサーバ処理をクライアント140にエミュレートし、クライアント処理をファイルサーバ120、130にエミュレートする。従って、NASスイッチ110が、ソースファイルサーバ120に対して意図したNASリクエストを宛先ファイルサーバ130上の適切な場所(すなわち格納位置)にリダイレクトできるので、クライアント140はNASスイッチ110を意識しない。このように、クライアント140は、NASスイッチ110に対して直接、ファイル書き込み、ディレクトリ読み込み等のオブジェクトリクエストを提出する。同様に、NASスイッチ110が、サーバファイルハンドルに含まれるリクエストをあたかもクライアント140から発信されたかのように提出できるので、ファイルサーバ120、130はNASスイッチ110を意識しない。そのために、NASスイッチ110は、マッピング、コード変換、ブリッジ、パケット送出、他のネットワークインターフェース機能、および他の管理プロセスを用いて、ファイルハンドルスイッチングを実行するので、クライアント140は、ファイルの物理的場所(格納位置)の変更を追跡する必要性から開放される。
一実施の形態では、NASスイッチ110は、通信、およびファイルハンドルスイッチングを容易にするために、クライアントモジュール112、およびファイルサーバーモジュール114を備える。クライアントモジュール112は、NASスイッチハンドルを含むファイルサーバ120、130からエクスポートされたファイルシステムディレクトリを受信する。クライアント140と、NASスイッチ110との間の互換性を作り出すために、クライアントモジュール112は、クライアント140に送信する内部スイッチファイルシステムにファイルシステムディレクトリをマッピングする。オブジェクトをリクエストするために、クライアント140は、エクスポートされたスイッチファイルシステムを検討し、リクエストした操作と併せてNASスイッチ110に送信するスイッチファイルハンドルを選択する。
ファイルサーバーモジュール114は移動処理を調整する。ファイルサーバーモジュール114は、移動能力を本来有していないこともあるソースおよび宛先ファイルサーバ120、130が受動的に実行するタスクを開始する。ファイルサーバーモジュール114は、ソースファイルサーバ120から宛先ファイルサーバ130に移動すべきデータを含む名前空間を複製し、次いで関連データを複製する。その間、およびそのあとで、ファイルサーバーモジュール114は、名前空間、およびクライアント140によるファイルオブジェクトアクセスリクエストを適切な場所にリダイレクトする。よって、データ転送サービスはクライアント140に利用可能なままである。
一実施の形態では、ファイルサーバーモジュール114は、移動、複製、および他のオブジェクト再配置処理(例えば、ファイルサーバ容量の追加または削除)により生じた再構成の追跡も、テーブルのネストされたシステム、さもなくばスイッチファイルシステムにリンクされた情報により行う。スイッチファイルハンドルは、再配置処理を通じて持続するので静的であるが、関係するNASファイルハンドルは、オブジェクトの現在場所に基づいて選択されるので、動的になることがある。オブジェクトの各種コピーを追跡するために、ファイルサーバーモジュール114は、移動、および複製したオブジェクトのNASファイルハンドルをストレージネットワーク175上の場所にマッピングする各ファイルシステムに対応するファイルハンドル移動テーブルおよびファイルハンドル複製テーブルを維持する。ファイルサーバーモジュール114の更なる実施の形態は、図2で説明する。
クライアントモジュール112は、図4に関して以下に説明するように、NASファイルハンドルをスイッチファイルハンドルと関係付ける(310)。これにより、NASスイッチ110が、クライアント140とファイルサーバ120、130との間の仲介として働くことが可能になる。クライアント140は、NASスイッチ110があたかもファイルサーバ120、130であるかのように、スイッチファイルハンドルを用いてNASリクエストを提出し、次いで、ファイルサーバ120、130は、NASスイッチ110からのNASファイルハンドルを、あたかもクライアント140が提出したかのように処理する。
一般に、NASファイルハンドルは、オブジェクトが存在する限り、ディレクトリまたはファイル等の、ファイルサーバ120、130上のディレクトリファイルサーバ等のオブジェクトを一意に識別する。NASファイルハンドルは、ファイルサーバ固有であり、ファイルハンドルを発行したファイルサーバ120、130にだけ有効である。ファイル名からファイルハンドルを取得する処理を照合と称する。NASファイルハンドルは、以下に更に詳細に説明するように、例えば、テーブル1A、および1Bを参照して、NFSまたはCIFS等のプロトコルに従ってフォーマットしてもよい。対照的に、スイッチファイルハンドルは、場所に無関係なディレクトリまたはファイルオブジェクトを識別し、ファイル複製、移動、および他のデータ転送を通じて、それを持続する。スイッチファイルハンドルは、ソースファイルサーバ120ではなく、NASスイッチ110内の内部システムを参照する修正したNASファイルハンドルとすることができる。これにより、持続ファイルハンドルを代替NASファイルハンドルの選択にマッピングする際にNASスイッチ110が有効となる。元のNASファイルハンドルは、ソースファイルサーバ120上の最初のオブジェクト場所を指す。格納したNASファイルハンドルは、ファイルサーバ120、130上のオブジェクトとして格納した、代替のファイル場所を指し示すNASファイルハンドルを指す。
NASスイッチ110が扱うオブジェクトアクセスリクエストには、例えば、ディレクトリおよび/またはファイルの読出し、書込み、作成、削除、移動、およびコピーが含まれる。名前空間アクセスは、照合、名前書換え、削除、または作成等の名前空間にアクセスし、または修正する操作を指す。ファイルアクセスは、読込みまたは書込み等のファイルにアクセスするか、修正する操作を指す。オブジェクトは、ディレクトリオブジェクトまたはファイルオブジェクトを参照することがある。ディレクトリオブジェクトは更に、サブディレクトリ、およびディレクトリ内のファイルオブジェクトを備えることがある。本明細書で用いるように、移動前のオブジェクト場所を指す各種の用語を同意語として用い(例えば、「一次の」、「ソースの」、「元の」、および「第一の」)、移動後の同一オブジェクトの場所を参照する各種の用語を用いる(例えば、「複製の」、「宛先の」、「置き換えの」、および「第2の」)。NASスイッチ110の更なる実施の形態、およびそこで動作させる方法を以下に説明する。
クライアント140は、ソースファイルサーバ120に対して意図したスイッチファイルハンドルをNASスイッチ110に提出することによりファイルサーバ120、130上のリソースにアクセスする。スイッチハンドルを見つけるために、クライアント140は、最初に、スイッチファイルハンドルを含むエクスポートされたスイッチファイルシステムをマウントする。クライアント140は、オブジェクトを照合して、そのファイルハンドルを取得し、関係するリクエストを提出する。クライアント140の立場から見ると、変更していないオブジェクト場所を有するファイルサーバ120、130によりトランザクションが実行される。このように、クライアント140は、同じ方法でファイル複製の前後にNASスイッチ110と相互作用する。クライアント140のユーザは、コマンドラインインターフェース、ウインドウズ環境、ソフトウエアアプリケーション、または他の方法により操作を提出できる。一実施の形態では、NASスイッチ110は、更に、NASストレージネットワーク以外のストレージネットワーク175へのアクセスを提供する。
ソースファイルサーバ120は、ファイル移動前は、クライアント140に対する既定の、つまり元のネットワークファイルサーバである。ソースファイルサーバ120は更に、ソースオブジェクト125を備え、それには、企業データ、記録、データベース情報、アプリケーション等の、名前空間のディレクトリまたはファイルを含んでいる。ソースファイルサーバ120には、名前空間移動から生じた結果と相関関係があるNASスイッチ110が維持する移動ディレクトリのテーブルが格納できる。更に、ソースファイルサーバ120には、NASスイッチ110が維持し、移動ディレクトリおよびファイルオブジェクト毎に表示されるファイルハンドル移動テーブルが格納できる。ソースファイルサーバ120は、例えば、オペレーティングシステムおよび/またはアプリケーションを有するx86型プロセッサを用いるパーソナルコンピュータ、ワークステーション、最適化オペレーティングシステムおよび/またはアプリケーションを有する特殊NAS装置、修正したサーバブレード等を備える。
宛先ファイルサーバ130は、ファイル移動後、NASスイッチ110が用いるプライマリネットワークファイルサーバとなる。宛先ファイルサーバ130は、更に、宛先オブジェクト135を備え、それには複製された名前空間のディレクトリ、およびソースファイルが含まれる。宛先ファイルサーバ130は、ソースファイルサーバ120に関して説明したものと同一のハードウエアおよび/またはソフトウエアを備えることができる。ソースおよび宛先ファイルサーバ120、130は、NASファイルサーバであることが好ましいが、ファイル移動を本来サポートしていない他の分散プロトコルを用いるファイルサーバとすることもできる。ソースおよび宛先ファイルサーバ120、130の更なる実施の形態、および関連する方法を以下に説明する。
ネットワーク195は、接続されているホスト(例えば、110、140)間のデータ転送を容易にする。ネットワーク195への接続は、有線および/または無線、パケットおよび/または回路スイッチ式でもよく、TCP/IP(伝送制御プロトコル/インターネットプロトコル)、IEEE(電気電子技術者協会)802.11、IEEE802.3(すなわち、イーサネット)、ATM(非同期転送モード)等のネットワークプロトコルを用いてもよい。ネットワーク195は、例えば、LAN(ローカルエリアネットワーク)、WAN(広域エリアネットワーク)、インターネット等を備える。一実施の形態では、NASスイッチ110は、インターネットに接続されるクライアント140と、LANに接続されるディレクトリファイルサーバ120、およびシャドウファイルサーバ130との間のゲートウエイとして働く。サブネットワーク196は、NASスイッチ110に最適応答時間を提供するローカルエリアネットワークであることが好ましい。一実施の形態では、サブネットワーク196は、ネットワーク195に統合される。
図2は、本発明の一実施の形態によるファイルサーバーモジュール114を示すブロック図である。ファイルサーバーモジュール114は、ファイルサーバーインターフェース210、移動モジュール220、およびリダイレクションモジュール230を備える。一般に、ファイルサーバーインターフェース210は移動前の操作を管理し、移動モジュール220は移動中のデータ利用可能性を維持し、そしてリダイレクションモジュール230は、クライアント140に移動後のトランスペアレント性を提供する。注意すべきは、モジュールは機能グループの例示にすぎないということである。
移動に先立ち、ファイルサーバーインターフェース210は、元のNASファイルハンドルを見付けるために用いるクライアント140からのリクエストによるスイッチファイルハンドルを受信する。ファイルサーバーインターフェース210は、ソースファイルサーバ120へのリクエストにより、元のNASファイルハンドルを提出する。オブジェクトが、ストレージネットワーク175の場所を未だ変更していない場合、ファイルサーバーインターフェース210は、元のNASファイルハンドルを用いる。ファイルサーバーインターフェース210は、スイッチファイルハンドルを移動モジュール220に提出して、オブジェクトがデータ移動の一部かどうかを判定できる。また、ファイルサーバーインターフェース210は、スイッチファイルハンドルをリダイレクションモジュール230に提出して、オブジェクトがデータ移動を完了させたかどうかを判定できる。いずれの場合も、ファイルサーバーインターフェース210が適切なファイルサーバ120、130へクライアントリクエストを送るのに用いるのに適切なNASファイルハンドルが返される。
移動中は、NASスイッチ110内の移動モジュール220が、名前空間複製を用いて、ソースファイルサーバ120から宛先ファイルサーバ130への移動を調整する。名前空間複製は、ソースファイルサーバ120のディレクトリメタデータをデータ自体から切り離してコピーする。移動モジュール220がディレクトリを全体にわたってチェックしてデータをコピーする時、移動モジュールは、オブジェクトが移動したかどうか、もしそうならオブジェクトがどこに移動したかを示すファイルハンドル移動テーブルを更新する。名前空間複製は、データ移動よりも何倍も高速なので、データ移動が発生している間もディレクトリサービスは利用可能のままである。ファイルハンドル移動テーブルは、どのオブジェクトが移動したかの現在のリストを提供するので、NASスイッチ110は、ほとんど連続したデータ利用可能性を提供できる。一実施の形態では、NASスイッチは、例えば、装置クラッシュまたはデータ破壊に対してファイルハンドル移動テーブルを再構成できる。
ファイル移動してから、リダイレクションモジュール230は、ファイルハンドル移動テーブル内のクライアント140から受信したスイッチファイルハンドルを照合する。オブジェクトが移動した場合、リダイレクションモジュールは、宛先ファイルサーバ130上の場所と対応する宛先NASファイルハンドルを出力する。
図3は、本発明の一実施の形態により、NASストレージネットワーク内のトランスペアレントなファイル移動を提供する方法(300)を示すハイレベルフロー図である。クライアントモジュール112は、図4に関し以下で説明するように、元のNASファイルハンドルをスイッチファイルハンドルと関係付ける(310)。これにより、NASスイッチ110は、クライアント140と、ファイルサーバ120、130との間の仲介として働くことが可能になる。クライアント140は、あたかもNASスイッチ110がファイルサーバ120、130であるかのように、スイッチファイルハンドルを用いてNASリクエストを提出し、次いで、ファイルサーバ120、130は、あたかもそれらがクライアント140から提出されたかのように、NASスイッチ110からのNASファイルハンドルを処理する。
移動モジュール220は、図5〜図9に関し以下で説明するように、名前空間複製を用いてファイル移動を実行する(320)。データ複製からディレクトリ複製を分離することにより、移動モジュール220は、ファイルサーバ120、130間の利用可能性、およびデータ統合を維持できる。
リダイレクションモジュール230は、図10で以下に説明するように、移動したファイルに関するNASリクエストをリダイレクトする(330)。NASスイッチ110は、移動に関わる要素を調整し、格納するので、クライアント140は、複製の前に用いたのと同一のスイッチファイルハンドルにより、代替場所に格納したオブジェクトの参照を継続する。しかしながら、バックエンドでは、多くの変更が起きる。例えば、ファイル移動は、ソースファイルサーバ120から宛先ファイルサーバ130にソースオブジェクト125を再配置する。
図4は、本発明の一実施の形態により、NASファイルハンドルをスイッチファイルハンドルと関係付ける方法(310)を示すフロー図である。最初に、NASスイッチ110は、プライマリサーバ120からエクスポートされたファイルシステムのディレクトリをマウントする(410)。一般に、ファイルシステムは、ファイルサーバ120、130上のオブジェクトをNASファイルハンドルのディレクトリ階層に体系化する。一実施の形態では、NASスイッチ110は、関係するソースファイルサーバ120からエクスポートされたディレクトリを受信し、次いで、関係するクライアント140にエクスポートされたディレクトリを送信する。
クライアントモジュール112は、プライマリファイルサーバ120内のオブジェクト場所と無関係なスイッチファイルハンドルを生成する(420)。クライアントモジュール112は、ファイルサーバ120からのエクスポートされたファイルシステムを、表2Aおよび表2Bの下に示すようなスイッチファイルシステム番号で、ファイルシステムまたはツリー識別子を置き換えることにより体系化する。クライアントモジュール112は、リクエスト操作で用いるためにクライアント140にスイッチファイルシステムをエクスポートする(430)。逆の処理では、NASスイッチ110は、NASリクエストを受信し、複製されたファイルハンドルおよび/または複製された名前空間を、NASファイルハンドルを用いて検索する。従って、ファイルサーバーインターフェース210は、同期モジュール230が維持するネストされたテーブルのエントリをチェックする。ファイルサーバーインターフェース210は、オブジェクト場所に基づいて、スイッチファイルハンドルからNASファイルハンドルを生成する。NFSおよびCIFSファイルハンドルの内容の実施例を表1A、表1Bに示す一方、スイッチファイルハンドル、または修正したNFSおよびCIFSファイルハンドルを表2Aおよび表2Bに示す。
Figure 0004588024
Figure 0004588024
以下に説明するように、オブジェクトを移動した後、NASスイッチ110は、更新したNASファイルハンドルを用いて新規場所のオブジェクトにアクセスできる。
図5は、本発明の一実施の形態により、名前空間複製を用いてファイル移動を実行する方法(220)を示すフロー図である。移動モジュール220は、図6〜図7に関し以下で説明するように、ソースファイルサーバ120のディレクトリ階層を複製する(510)。一実施の形態では、ディレクトリ操作等のオブジェクトアクセスリクエストをクライアント140から受信する場合、それを第1および宛先ファイルサーバ120、130の双方に送信して、名前空間と、複製した名前空間との間の一貫性を維持する。こうして、ディレクトリをファイル移動処理中に作成または削除できる。一方、従来技術のシステムでは、ディレクトリはロックされるので、このような操作は不可能である。
ファイル移動中(510)に、クリティカルなディレクトリリクエストがソースファイルサーバに発行される場合(520)、移動モジュール220は、リクエストを再提出して複製した名前空間を更新する(530)。複製した名前空間は、宛先ファイルサーバ130上に格納するのが好ましい。結果的に、ディレクトリ作成、ファイル作成、ディレクトリ削除、ファイル削除等の操作がソースの名前空間に影響を与える場合、それと同一の修正が複製された名前空間に成される。ディレクトリ複製が完了すると(540)、クリティカルなディレクトリ操作を、複製した名前空間に直接提出できる。別の処理では、移動モジュール220は、ソースファイルサーバ120から宛先ファイルサーバ130にデータをコピーする(550)。
図6は、本発明の一実施の形態により、ソースファイルサーバ120から宛先ファイルサーバ130にディレクトリ階層を複製する方法(510)を示すフロー図である。再生モジュール220は、ソースファイルサーバ120のディレクトリ階層から現在のソースディレクトリを選択し、宛先ファイルサーバ130から現在の宛先ディレクトリを選択する(610)。移動モジュール220は、ソースおよび宛先場所に関連するスイッチファイルハンドルにより、複製テーブルにマッピングエントリを追加する(620)。移動モジュール220は、現在のソースディレクトリ内の、ファイルおよびディレクトリオブジェクトのリストから現在のオブジェクトを選択する(630)。
現在のオブジェクトがディレクトリの場合(530)、移動モジュール220は、宛先ファイルサーバ130内のディレクトリを、プライマリファイルサーバ120内の現在のディレクトリと同一名で作成する(650)。他方、現在のオブジェクトがファイルの場合(640)、再生モジュール220は、現在の宛先ディレクトリ内のファイルハンドルから、そのオブジェクトに対する格納したファイルハンドルにより、ファイルを作成する(645)。一実施の形態では、格納したファイルハンドルは、スイッチファイルハンドルと類似している。好適には、格納したファイルハンドルは所定のサイズなので、NASスイッチ110は、ファイルサイズを検査するだけで、ファイルが格納したファイルハンドルを含むかどうかを判定できる。例示の格納したファイルフォーマットを表3に示す。
Figure 0004588024
しかしながら、注意すべきは、格納したファイルフォーマットの変形があり得るということである。移動モジュール220は、ソースおよび宛先スイッチファイルハンドルにより、複製されたファイルリストにマッピングエントリを追加する(655)。
すべてのオブジェクトが処理され(660)、エラーがプロセス内で発生せず(670)、複製するディレクトリがそれ以上ない場合(680)、再生モジュール220は、名前空間複製を行う(690)。しかしながら、処理すべきオブジェクトがまだある場合(660)、移動モジュール220は、オブジェクトを選択する(630)ところから処理を続行する。ディレクトリまたはファイルの作成にエラーがあった場合(670)、再生モジュール220は、宛先ディレクトリを削除し(675)、マッピングエントリを追加する(620)点から処理を繰り返す。また、処理するディレクトリがまだある場合(680)、第1のファイルサーバ120は、プライマリディレクトリを選択する(510)点に戻る。
移動モジュール220は、図7に示すように名前空間に関わる。図7は、本発明の一実施の形態による名前空間複製を行う方法(690)を示すフロー図である。移動モジュール220は、移動ディレクトリテーブルにエントリを追加する(710)。その結果、以降のオブジェクトアクセスリクエストは、ソースファイルサーバ120ではなく、宛先ファイルサーバ130に導かれることになる。ソースファイルサーバ120は、複製テーブルを、もはや必要ないので削除する(720)。
図8は、本発明の一実施の形態によるデータコピーの方法(420)を示すフロー図である。NASスイッチ110は、移動したファイルリスト内の現在のエントリを選択する(810)。ソースファイルサーバ120は、ソースオブジェクト125のデータを、宛先ファイルサーバ130内の宛先オブジェクト135にコピーする(820)。
データ転送中に(830)、エラーが発生しない場合、宛先ファイルサーバ130は、図9に示すようにデータ移動を行う(840)。図9は、本発明の一実施の形態によるデータ移動を行う方法(840)を示すフロー図である。移動モジュール220は、ソースファイルをロックして、ファイルへのそれ以上のアクセスを阻止する(910)。移動モジュール220は、ソースファイルの内容を、宛先ファイルサーバ130上の新規場所を示す格納したファイルハンドルで置き換える(920)。それが済むと、移動モジュール220は、移動したファイルリスト内の現在のエントリをマークし(930)、ファイルハンドル移動テーブル内のソースおよび宛先ファイルサーバ120、130上の場所を示すソースおよび宛先ファイルハンドルを記入する(940)。最後に、移動モジュール220は、ソースファイルへのアクセスを再開する(950)。
一実施の形態では、移動モジュール220は、例えば、装置クラッシュまたはデータ破壊により、移動モジュール220を再構成する。そのために、移動モジュール220は、ソースファイルサーバ120の名前空間を全体にわたってチェックする。格納したファイルハンドルは一貫したサイズを有するので、移動モジュール220は、格納したファイルハンドルを直ちに認識し、ポインタ情報を検索できる。この関連性を再構成したファイルハンドル移動テーブルのエントリに追加する。
図8を再度参照すると、エラーが発生する場合は(830)、データ転送を繰り返す。一実施の形態では、宛先ファイルサーバ130は、移動前のファイルサイズを移動後のファイルサイズと比較することによりエラーを検出する。
図10は、本発明の一実施の形態により、移動したオブジェクトに関するNASリクエストをリダイレクトする方法(330)を示すフロー図である。NASスイッチ110は、スイッチファイルハンドルから、ファイルシステムテーブルにおいてファイルシステムIDを見つける(1010)。NASスイッチ110は、次に、ファイルシステムIDから、ファイルハンドル移動テーブルを見つける(1020)。ファイルが移動されていない場合(1030)、NASスイッチ110は、ソース、つまり元のNASファイルハンドルを用いてクライアントリクエストを送る。ファイルが移動された場合(1030)、NASスイッチ110は、ソースファイルサーバ120内のファイルハンドル移動テーブルから宛先NASファイルハンドルを検索する。
本発明の一実施の形態に従うストレージネットワークシステムを示すハイレベルブロック図である。 本発明の一実施の形態に従うNASスイッチを示すブロック図である。 本発明の一実施の形態に従って、NASストレージネットワーク内のトランスペアレントなファイル移動を提供する方法を示すハイレベルフロー図である。 本発明の一実施の形態に従って、元のNASファイルハンドルをスイッチファイルハンドルと関係付ける方法を示すフロー図である。 本発明の一実施の形態に従って、名前空間複製を用いてファイル移動を実行する方法を示すフロー図である。 本発明の一実施の形態に従って、ソースファイルサーバのディレクトリ階層を複製する方法を示すフロー図である。 本発明の一実施の形態に従って、名前空間複製を行う方法を示すフロー図である。 本発明の一実施の形態に従って、データコピーの方法を示すフロー図である。 本発明の一実施の形態に従って、データ移動を行う方法を示すフロー図である。 本発明の一実施の形態に従って、移動したオブジェクトに関するNASリクエストをリダイレクトする方法を示すフロー図である。

Claims (42)

  1. ストレージネットワーク内のアクセス対象物であるオブジェクトにアクセスするための方法であって、
    ソースファイルサーバ上の前記オブジェクトの格納位置を示す情報を含むNAS(ネットワーク接続ストレージ)ファイルハンドルを、前記ストレージネットワーク内に設けられたコンピュータが前記ソースファイルサーバから受信し、該コンピュータにおいて記憶するステップと、
    前記オブジェクトを表すものとして、前記オブジェクトの格納位置に依存しないスイッチファイルハンドルを、前記コンピュータからクライアント装置に送信するステップと、
    前記コンピュータによって、前記オブジェクトに係る名前空間を前記ソースファイルサーバから宛先ファイルサーバに複製し且つ該オブジェクトに係るデータを該複製した名前空間に移動することにより、該ソースファイルサーバ上の格納位置から宛先ファイルサーバ上の格納位置に前記オブジェクトを移動するステップと、ここで、前記名前空間の複製は前記データの移動とは別に実行され、
    前記スイッチファイルハンドルを用いて前記オブジェクトへのアクセスをリクエストするアクセスリクエストを、前記コンピュータがクライアント装置から受信するステップと、
    前記コンピュータによって、前記受信したアクセスリクエストがリクエストする前記オブジェクトの前記宛先ファイルサーバ上の格納位置にアクセスリクエストを送信するステップと
    を具備する方法。
  2. 前記オブジェクトは、サブディレクトリおよびファイルを表すオブジェクトを有するディレクトリを備える、請求項1の方法。
  3. 前記オブジェクトはファイルを備える、請求項1の方法。
  4. 前記オブジェクトを移動するステップは、
    移動中に、前記アクセスリクエストが前記名前空間にアクセスするか、またはそれを修正するリクエストを含む場合、前記名前空間アクセスリクエストを、移動の間、前記名前空間および前記複製した前記名前空間の双方に送信するステップを備える、請求項の方法。
  5. 前記オブジェクトを移動するステップは、更に、
    前記オブジェクトを移動する前に、記憶したファイルハンドル前記宛先ファイルサーバ上の格納位置に格納するステップを備え、前記記憶したファイルハンドルは、前記ソースファイルサーバ上の前記オブジェクトの格納位置を示す、請求項の方法。
  6. 前記オブジェクトを移動するステップは、に、
    前記オブジェクトを移動した後記憶されたファイルハンドルを前記ソースファイルサーバ上の格納位置に格納するステップを備え、前記記憶されたファイルハンドルは、前記宛先ファイルサーバ上の前記オブジェクトの格納位置を示す、請求項の方法。
  7. 前記オブジェクトを移動するステップは、前記オブジェクトに対応するデータを移動するステップを備える、請求項1の方法。
  8. 前記オブジェクトを移動するステップは、移動の成功に応じて、ファイルハンドル移動テーブルを、前記ソースファイルサーバ上の格納位置ついてのエントリ、および前記宛先ファイルサーバ上の格納位置ついてのエントリで更新することを備える、請求項1の方法。
  9. 前記アクセスリクエストを送信するステップは、
    前記ファイルハンドル移動テーブル内の前記オブジェクトを照合するステップと、
    前記オブジェクトが見つけられたならば、前記アクセスリクエストを前記宛先ファイルサーバ上の格納位置に送信するステップとを備える、請求項の方法。
  10. 前記アクセスリクエストを受信するステップは、更に、
    移動されていない第2オブジェクトのための第2アクセスリクエストをクライアント装置から受信するステップを含み
    前記アクセスリクエストを送信するステップは、更に、
    前記ファイルハンドル移動テーブル内の前記第2オブジェクトを照合することと、
    前記第2オブジェクトが見つけられないならば、前記第2アクセスリクエストを前記ソースファイルサーバ上の格納位置に送信することを備える、請求項1の方法。
  11. 前記アクセスリクエストは、読出しリクエストおよび書込みリクエスト1つを含むファイルアクセスリクエストを備える、請求項1の方法。
  12. 前記アクセスリクエストは、作成リクエスト、削除リクエスト、移動リクエスト、コピーリクエスト、照合リクエスト、および名前書換えリクエストから成るグループの中の1つを含む名前空間アクセスリクエストを備える、請求項1の方法。
  13. 前記NASファイルハンドルは、NFS(ネットワークファイルシステム)ファイルハンドル、およびCIFS(共通インターネットファイルシステム)ファイルハンドルから成るグループの中の1つを備える、請求項1の方法。
  14. 分散ストレージネットワーク内のアクセス対象物であるオブジェクトに集中してアクセスするための方法であって、
    ソースファイルサーバ上の前記オブジェクトの格納位置を示す情報を含む入力ファイルハンドルを、前記ストレージネットワーク内に設けられたコンピュータが前記ソースファイルサーバから受信し、該コンピュータにおいて記憶するステップと、
    前記オブジェクトを表すものとして、前記オブジェクトの格納位置に依存しないスイッチファイルハンドルを、前記コンピュータからクライアント装置に送信するステップと、
    前記コンピュータによって、前記オブジェクトに対応付けられた名前空間を前記ソースファイルサーバから宛先ファイルサーバに複製し且つ該オブジェクトに対応付けられたデータを該複製した名前空間に移動することにより、該ソースファイルサーバ上の格納位置から宛先ファイルサーバ上の格納位置に前記オブジェクトを移動するステップとで、ここで、前記名前空間の複製は前記データの移動とは別に実行され、また、移動中、オブジェクトアクセスリクエストは、前記ソースファイルサーバ上の名前空間と、前記宛先ファイルサーバ上の複製された名前空間との間で複製さ
    前記コンピュータによって、前記移動後、ファイルハンドル移動テーブルを更新するステップと、ここで、前記ファイルハンドル移動テーブルは、前記ソースおよび宛先ファイルサーバ上のエントリオブジェクトの格納位置を示す情報を記憶し
    前記スイッチファイルハンドルを用いて前記オブジェクトへのアクセスをリクエストするアクセスリクエストを、前記コンピュータがクライアント装置から受信するステップと、
    前記コンピュータによって、前記受信したアクセスリクエストがリクエストする前記オブジェクトの前記宛先ファイルサーバ上の格納位置にアクセスリクエストを送信するステップと、
    を具備する方法。
  15. 前記分散ストレージネットワークは、NAS(ネットワーク接続ストレージ)ストレージネットワークであり、前記アクセスリクエストは、NASアクセスリクエストであり、そして前記入力ファイルハンドルはNASファイルハンドルである、請求項14の方法。
  16. 前記ソースおよび宛先ファイルサーバは、ファイルシステムを含み、前記クライアント装置は前記ファイルシステムを含まない、請求項14の方法。
  17. NAS(ネットワーク接続ストレージ)ストレージネットワーク内のアクセス対象物であるオブジェクトにアクセスするために前記ストレージネットワーク内に設けられたコンピュータによって実行されるコンピュータプログラムであって、前記コンピュータに
    ソースファイルサーバ上の前記オブジェクトの格納位置を示す情報を含むNASファイルハンドルを、前記コンピュータが前記ソースファイルサーバから受信し、該コンピュータにおいて記憶する手順と、
    前記オブジェクトを表すものとして、前記オブジェクトの格納位置に依存しないスイッチファイルハンドルを、前記コンピュータからクライアント装置に送信する手順と、
    前記コンピュータによって、前記オブジェクトに係る名前空間を前記ソースファイルサーバから宛先ファイルサーバに複製し且つ該オブジェクトに係るデータを該複製した名前空間に移動することにより、前記ソースファイルサーバ上の格納位置から宛先ファイルサーバ上の格納位置に前記オブジェクトを移動する手順と、ここで、前記名前空間の複製は前記データの移動とは別に実行され、
    前記スイッチファイルハンドルを用いて前記オブジェクトへのアクセスをリクエストするアクセスリクエストを、前記コンピュータがクライアント装置から受信する手順と、
    前記コンピュータによって、前記受信したアクセスリクエストがリクエストする前記オブジェクトの前記宛先ファイルサーバ上の格納位置にアクセスリクエストを送信する手順と、
    実行させるためのコンピュータプログラ
  18. 前記オブジェクトは、サブディレクトリおよびファイルを表すオブジェクトを有するディレクトリを備える、請求項17のコンピュータプログラ
  19. 前記オブジェクトはファイルを備える、請求項17のコンピュータプログラ
  20. 前記オブジェクトを移動する手順更に、
    移動中に、前記アクセスリクエストを前記名前空間よび前記複製した名前空間の双方に送信する手順を前記コンピュータに実行させることを含む、請求項17のコンピュータプログラ
  21. 前記オブジェクトを移動する手順は、更に、
    オブジェクトを移動する前に、記憶したファイルハンドルを、前記宛先ファイルサーバ上の格納位置に格納する手順を前記コンピュータに実行させることを含み、前記格納したファイルハンドルは、前記ソースファイルサーバ上の前記オブジェクトの格納位置を示す、請求項17のコンピュータプログラ
  22. 前記オブジェクトを移動する手順は、更に、
    前記オブジェクトを移動した後記憶されたファイルハンドルを前記ソースファイルサーバ上の格納位置に格納する手順を前記コンピュータに実行させることを含み、前記記憶されたファイルハンドルは、前記宛先ファイルサーバ上の前記オブジェクトの格納位置を示す、請求項17のコンピュータプログラ
  23. 前記オブジェクトを移動する手順は、前記オブジェクトに対応するデータを移動する手順を前記コンピュータに実行させることを含む、請求項17のコンピュータプログラ
  24. 前記オブジェクトを移動する手順は、移動の成功に応じて、ファイルハンドル移動テーブルを、前記ソースファイルサーバ上の格納位置に対するエントリ、および前記宛先ファイルサーバ上の格納位置に対するエントリで更新する手順を前記コンピュータに実行させることを含む、請求項17コンピュータプログラム
  25. 前記アクセスリクエストを送信する手順は、
    前記ファイルハンドル移動テーブル内の前記オブジェクトを照合する手順と、
    前記オブジェクトが見つけられたならば、前記アクセスリクエストを前記宛先ファイルサーバ上の格納位置に送信する手順
    前記コンピュータに実行させることを含む、請求項24のコンピュータプログラ
  26. 前記アクセスリクエストを受信する手順は、
    移動されていない第2オブジェクトのための第2アクセスリクエストをクライアント装置から受信する手順を前記コンピュータに更に実行させることを含み
    前記アクセスリクエストを送信する手順は、
    前記ファイルハンドル移動テーブル内の前記第2オブジェクトを照合する手順と、、
    前記第2オブジェクトが見つけられないならば、前記第2アクセスリクエストを前記ソースファイルサーバ上の格納位置に送信する手順と、
    前記コンピュータに更に実行させることを含む、請求項17のコンピュータプログラ
  27. 前記クセスリクエストは、読出しリクエストおよび書込みリクエスト1つを含むファイルアクセスリクエストを備える、請求項26のコンピュータプログラ
  28. 前記アクセスリクエストは、作成リクエスト、削除リクエスト、移動リクエスト、コピーリクエスト、照合リクエスト、および名前書換えリクエストから成るグループの中の1つを含む名前空間アクセスリクエストを備える、請求項17のコンピュータプログラ
  29. 前記NASファイルハンドルは、NFS(ネットワークファイルシステム)ファイルハンドルおよびCIFS(共通インターネットファイルシステム)ファイルハンドルから成るグループの中の1つを備える、請求項17のコンピュータプログラ
  30. ストレージネットワーク内のアクセス対象物であるオブジェクトにアクセスするためのNAS(ネットワーク接続ストレージ)スイッチであって、
    ソースファイルサーバ上のオブジェクトの格納位置を示す情報を含むNASファイルハンドルを該ソースファイルサーバから受信し、受信したNASファイルハンドルに応答して前記オブジェクトを表すものとして、該オブジェクトの格納位置に依存しないスイッチファイルハンドルを発行し、クライアント装置に送信するファイルサーバインターフェース
    前記オブジェクトに係る名前空間を前記ソースファイルサーバから宛先ファイルサーバに複製し且つ該オブジェクトに係るデータを該複製した名前空間に移動することにより、前記ソースファイルサーバ上の格納位置から該宛先ファイルサーバ上の格納位置に前記オブジェクトを移動する移動モジュールと、ここで、前記名前空間の複製は前記データの移動とは別に実行され、
    前記移動モジュールに通信接続され、前記スイッチファイルハンドルを用いて前記オブジェクトへのアクセスをリクエストするアクセスリクエストをクライアント装置から受信し、該受信したアクセスリクエストがリクエストする前記オブジェクトの前記宛先ファイルサーバ上の格納位置にアクセスリクエストを送信するリダイレクションモジュールと、
    を備えるNASスイッチ。
  31. 前記オブジェクトは、サブディレクトリおよびファイルを表すオブジェクトを有するディレクトリを備える、請求項30のNASスイッチ。
  32. 前記オブジェクトはファイルを備える、請求項30のNASスイッチ。
  33. 移動中、前記リダイレクションモジュールは、前記名前空間および前記複製された名前空間の双方に前記アクセスリクエストを送信する、請求項30のNASスイッチ。
  34. 前記オブジェクトを移動する前に、前記移動モジュールは、格納したファイルハンドルを前記宛先ファイルサーバ上の格納位置に格納し、前記格納したファイルハンドルは、前記ソースファイルサーバ上の前記オブジェクトの格納位置を示す、請求項30のNASスイッチ。
  35. 前記オブジェクトを移動した後、前記移動モジュールは、記憶されたファイルハンドルを前記ソースファイルサーバ上の格納位置に格納し、前記記憶されたファイルハンドルは、前記宛先ファイルサーバ上の前記オブジェクトの場所を示す、請求項30のNASスイッチ。
  36. 前記移動モジュールは、前記オブジェクトに対応するデータを移動する、請求項30のNASスイッチ。
  37. 前記移動モジュールは、移動成功に応じて、前記ソースファイルサーバ上の格納位置ついてのエントリ、および前記宛先ファイルサーバ上の格納位置ついてのエントリでファイルハンドル移動テーブルを更新する、請求項30のNASスイッチ。
  38. 前記リダイレクションモジュールは、前記ファイルハンドル移動テーブルの前記オブジェクトを照合し、前アクセスリクエストを前記宛先ファイルサーバ上の格納位置に送信する、請求項37のNASスイッチ。
  39. 前記リダイレクションモジュールは、移動されていない第2オブジェクトのための第2アクセスリクエストを受信し、記ファイルハンドル移動テーブル内の前記第2オブジェクトを照合し、前記第2アクセスリクエストを前記ソースファイルサーバ上の場所に送信する、請求項30のNASスイッチ。
  40. アクセスリクエストは、読出しリクエストおよび書込みリクエスト1つを含むファイルアクセスリクエストを備える、請求項30のNASスイッチ。
  41. アクセスリクエストは、作成リクエスト、削除リクエスト、移動リクエスト、コピーリクエスト、照合リクエスト、および名前書換えリクエストから成るグループの中の1つを含む名前空間アクセスリクエストを備える、請求項30のNASスイッチ。
  42. 前記NASファイルハンドルは、NFS(ネットワークファイルシステム)ファイルハンドル、およびCIFS(共通インターネットファイルシステム)ファイルハンドルの中の1つを備える、請求項30のNASスイッチ。
JP2006513342A 2003-04-24 2004-04-26 名前空間複製を用いるトランスペアレントなファイル移動 Expired - Fee Related JP4588024B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US46557803P 2003-04-24 2003-04-24
US46557903P 2003-04-24 2003-04-24
US10/831,376 US7346664B2 (en) 2003-04-24 2004-04-23 Transparent file migration using namespace replication
US10/831,701 US7587422B2 (en) 2003-04-24 2004-04-23 Transparent file replication using namespace replication
PCT/US2004/012847 WO2004097572A2 (en) 2003-04-24 2004-04-26 Transparent file migration using namespace replication

Publications (3)

Publication Number Publication Date
JP2006524873A JP2006524873A (ja) 2006-11-02
JP2006524873A5 JP2006524873A5 (ja) 2010-08-12
JP4588024B2 true JP4588024B2 (ja) 2010-11-24

Family

ID=33425572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006513342A Expired - Fee Related JP4588024B2 (ja) 2003-04-24 2004-04-26 名前空間複製を用いるトランスペアレントなファイル移動

Country Status (3)

Country Link
EP (1) EP1618500A4 (ja)
JP (1) JP4588024B2 (ja)
WO (2) WO2004097572A2 (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7587422B2 (en) 2003-04-24 2009-09-08 Neopath Networks, Inc. Transparent file replication using namespace replication
US7346664B2 (en) 2003-04-24 2008-03-18 Neopath Networks, Inc. Transparent file migration using namespace replication
WO2004097624A1 (en) 2003-04-24 2004-11-11 Neopath Networks, Inc. Large file support for a network file server
WO2005029251A2 (en) 2003-09-15 2005-03-31 Neopath Networks, Inc. Enabling proxy services using referral mechanisms
US7720796B2 (en) 2004-04-23 2010-05-18 Neopath Networks, Inc. Directory and file mirroring for migration, snapshot, and replication
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
JP4451293B2 (ja) 2004-12-10 2010-04-14 株式会社日立製作所 名前空間を共有するクラスタ構成のネットワークストレージシステム及びその制御方法
DE102005013502A1 (de) * 2005-03-23 2006-09-28 Fujitsu Siemens Computers Gmbh Verfahren zum Entfernen eines Massenspeichersystems aus einem Rechnerverbund sowie Computerprogramm-Produkt und Rechnerverbund zur Durchführung des Verfahrens
EP1900189B1 (en) 2005-06-29 2018-04-18 Cisco Technology, Inc. Parallel filesystem traversal for transparent mirroring of directories and files
US8131689B2 (en) 2005-09-30 2012-03-06 Panagiotis Tsirigotis Accumulating access frequency and file attributes for supporting policy based storage management
US7716420B2 (en) * 2006-04-28 2010-05-11 Network Appliance, Inc. Methods of converting traditional volumes into flexible volumes
JP4288525B2 (ja) 2007-02-16 2009-07-01 日本電気株式会社 ファイル共有システムおよびファイル共有方法
US9235595B2 (en) * 2009-10-02 2016-01-12 Symantec Corporation Storage replication systems and methods
JP2012008854A (ja) * 2010-06-25 2012-01-12 Hitachi Ltd ストレージ仮想化装置
WO2015012297A1 (ja) * 2013-07-23 2015-01-29 スカラ株式会社 受信装置、方法、コンピュータプログラム
CN104407947B (zh) * 2014-10-29 2018-04-27 中国建设银行股份有限公司 主备nas切换方法及装置
JP6720744B2 (ja) 2016-07-15 2020-07-08 富士通株式会社 情報処理システム、情報処理装置、及び制御プログラム
CN109428942A (zh) * 2017-09-05 2019-03-05 南京南瑞继保电气有限公司 一种多现场文件服务系统及文件服务器跨现场同步方法
JP7347007B2 (ja) * 2019-08-28 2023-09-20 富士フイルムビジネスイノベーション株式会社 情報処理装置、情報処理システム、及び情報処理プログラム

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5689701A (en) * 1994-12-14 1997-11-18 International Business Machines Corporation System and method for providing compatibility between distributed file system namespaces and operating system pathname syntax
JP3410010B2 (ja) * 1997-12-24 2003-05-26 株式会社日立製作所 サブシステムの移行方法および情報処理システム
US5937406A (en) * 1997-01-31 1999-08-10 Informix Software, Inc. File system interface to a database
WO1999042934A2 (en) * 1998-02-20 1999-08-26 Storm Systems, Llc File system performance enhancement
US6850959B1 (en) * 2000-10-26 2005-02-01 Microsoft Corporation Method and system for transparently extending non-volatile storage
US6976060B2 (en) * 2000-12-05 2005-12-13 Agami Sytems, Inc. Symmetric shared file storage system
AU2002249939A1 (en) * 2001-01-11 2002-07-24 Z-Force Communications, Inc. File switch and switched file system
US20030154236A1 (en) * 2002-01-22 2003-08-14 Shaul Dar Database Switch enabling a database area network
US7225204B2 (en) * 2002-03-19 2007-05-29 Network Appliance, Inc. System and method for asynchronous mirroring of snapshots at a destination using a purgatory directory and inode mapping
US6540337B1 (en) * 2002-07-26 2003-04-01 Hewlett-Packard Company Slotted substrates and methods and systems for forming same
US7284030B2 (en) * 2002-09-16 2007-10-16 Network Appliance, Inc. Apparatus and method for processing data in a network

Also Published As

Publication number Publication date
WO2004097572A2 (en) 2004-11-11
JP2006524873A (ja) 2006-11-02
EP1618500A2 (en) 2006-01-25
EP1618500A4 (en) 2009-01-07
WO2004097686A1 (en) 2004-11-11
WO2004097572A3 (en) 2005-01-06

Similar Documents

Publication Publication Date Title
US8180843B2 (en) Transparent file migration using namespace replication
JP4588024B2 (ja) 名前空間複製を用いるトランスペアレントなファイル移動
US7720796B2 (en) Directory and file mirroring for migration, snapshot, and replication
US8190741B2 (en) Customizing a namespace in a decentralized storage environment
US7587422B2 (en) Transparent file replication using namespace replication
US8700573B2 (en) File storage service system, file management device, file management method, ID denotative NAS server and file reading method
US7072917B2 (en) Extended storage capacity for a network file server
US6947940B2 (en) Uniform name space referrals with location independence
US8195627B2 (en) Storage policy monitoring for a storage network
US7831641B2 (en) Large file support for a network file server
JP3396223B2 (ja) ネットワーク・ディレクトリにおいてサブツリーを移動する方法ならびにその装置
US6968345B1 (en) Technique to enable support for symbolic link access by windows clients
JP2008515120A (ja) ストレージネットワーク用ストレージポリシーモニタリング
US8856068B2 (en) Replicating modifications of a directory
US20070112812A1 (en) System and method for writing data to a directory
WO2007035653A2 (en) Providing direct access to distributed managed content
US8627446B1 (en) Federating data between groups of servers
JP4247975B2 (ja) データ管理方法、データ管理システム、およびそのためのプログラムならびに記録媒体
WO2004097571A2 (en) Extended storage capacity for a network file server
US9727569B2 (en) Transitive file copying
JPH0844609A (ja) データバックアップ方法
CN111562936A (zh) 基于Openstack-Swift的对象历史版本管理方法和装置
JP2002290468A (ja) 電子メールシステム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070419

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091222

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100319

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100329

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100422

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100430

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20100521

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20100528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100617

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20100617

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4588024

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

Year of fee payment: 3

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

LAPS Cancellation because of no payment of annual fees