JP5173110B2 - トランスペアレントなストレージ再編成のためのシステムおよび方法 - Google Patents

トランスペアレントなストレージ再編成のためのシステムおよび方法 Download PDF

Info

Publication number
JP5173110B2
JP5173110B2 JP2004152119A JP2004152119A JP5173110B2 JP 5173110 B2 JP5173110 B2 JP 5173110B2 JP 2004152119 A JP2004152119 A JP 2004152119A JP 2004152119 A JP2004152119 A JP 2004152119A JP 5173110 B2 JP5173110 B2 JP 5173110B2
Authority
JP
Japan
Prior art keywords
server
path
legacy
share
access request
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
JP2004152119A
Other languages
English (en)
Other versions
JP2004348742A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2004348742A publication Critical patent/JP2004348742A/ja
Application granted granted Critical
Publication of JP5173110B2 publication Critical patent/JP5173110B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/0604Improving or facilitating administration, e.g. storage management
    • G06F3/0605Improving or facilitating administration, e.g. storage management by facilitating the interaction with a user or administrator
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0632Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、一般にコンピュータシステムに関し、より詳細には、トランスペアレントなストレージ再編成のための改良されたシステムおよび方法に関する。
ストレージの再編成は、いくつもの理由によって動機付けることができる。たとえば、ストレージの移行および統合は、企業におけるストレージサーバの総所有コストを削減するのに役立つ重要なオペレーションである。総所有コストを削減するにあたっての1つの重要な要素が、ストレージサーバの管理に必要な時間および費用を削減すること、すなわちサーバの数を減らすことである。驚くにあたらないが、ストレージ統合は、Microsoft(登録商標)Windows(登録商標)NTサーバのバージョン4.0からMicrosoft(登録商標)Windows(登録商標)サーバ2003への変更のように、より新しく性能の良いサーババージョンへのアップグレードに伴って行われることが多い。ストレージ管理者は、このようなアップグレードを利用して、ストレージを多くのレガシー(legacy)サーバから、レガシーサーバ上にあったすべてのコンテンツをサービスすることができる1台または数台の新しいマシンに統合することによって、管理オーバヘッドを削減することができる。
ファイルシェア(share)を、「foo」および「bar」などの2つのサーバから再配置する場合、実施される1つの共通した戦略が、サーバ名「foo」およびサーバ名「bar」の両方を同じストレージサーバにマッピングすることである。このストレージの再編成で生じる可能性のある1つの問題が、\\foo\publicおよび\\bar\publicなど、同じ名前を有する2つのファイルシェアを同じストレージサーバ上に再配置しようとすることから生じる名前の衝突(clash)である。通常、2つのシェアは、どちらもパス名\\server\publicで作成する必要があるであろう。このような名前の衝突は、バージョン化などの1つまたは複数の周知の技法を用いて、再配置されたシェアの一方または両方を名前変更することによって、避けることができるであろう。しかし、システム管理者は、このような名前の衝突を避けるためにファイルシェア名を修正しなければならない場合、レガシーシェアを統合することをためらうことがある。
名前の衝突を避けるためにユーザに可視(visible)のファイルシェア名を修正すると、いくつかの問題が生じる。第1に、ストレージの再編成中にユーザに可視のファイルシェア名を修正するには、ユーザをトレーニングして新しい名前を使用する必要があるであろう。さらに、文書、Webページ、およびアプリケーションに埋め込まれたファイルシェアパス名を見つける必要があり、古い名前を新しい名前に変更する必要があるであろう。これらの面倒な活動には、ストレージ管理者にとってストレージの再編成を管理するさらなる時間および費用が必要になるであろう。
ストレージ管理者がレガシーシェア名を使用してストレージを再編成し、ユーザまたはクライアントがレガシーシェア名を使用して再配置されたレガシーシェアにアクセスすることが可能な方法が求められている。このような何らかのシステムおよび方法により、システム管理者が再配置されたレガシーシェアに対するクライアントアクセスを容易かつ効率的に監視することができるようにすべきであり、その結果、ストレージ管理者は頻繁に使用されていない再配置されたレガシーシェアを廃棄することができるようになる。
簡潔に言えば、本発明は、トランスペアレントにストレージを再編成するための改良されたシステムおよび方法を提供する。このため、レガシーシェアを1つまたは複数のレガシーサーバから1つまたは複数の他のサーバへ再配置することができる再編成サーバが提供される。再編成サーバは、受け取ったレガシーパスに他のサーバ名をトランスペアレントにプリペンド(prepend)するためのパスリライタ(rewriter)と、書き換えられたレガシーシェアパスをトラバース(traverse)する間に遭遇する可能性のある新しいストレージロケーションへの任意のリンクを解決(resolve)するためのパスリダイレクタ(redirector)とを備えた、分散ファイルシステムを含むことができる。再編成サーバは、再配置されたレガシーシェアのアクセスおよび使用情報を記録するためのデータベースまたはログファイルを含むこともできる。
本発明は、先ずレガシーサーバの名前を再編成サーバのネットワークアドレスに別名付け(aliasing)することによって、ストレージをトランスペアレントに再編成することができる。そして、それぞれのレガシーシェアのコンテンツおよび許可を、他のサーバ上の一意のシェア名にコピーすることができる。次に、レガシーサーバ名を使用して再編成サーバ上にルートを作成し、そのルート上に、他のサーバ上にコピーされたレガシーシェアを指すリンクを作成することができる。そして、任意のクライアントは、レガシーシェア名を使用して、再配置されたレガシーシェアへのアクセスを要求することができる。再編成サーバは、受け取ったレガシーパスを再編成サーバ名でプリペンドすることによって受け取ったレガシーパスを書き換え、書き換えられたレガシーシェアパス名における任意のリンクを解決し、再配置されたレガシーシェアのストレージロケーションのシェアパス名で応答することができる。
有利なこととして、このシステムおよび方法を使用して、以前にはまったく異なったファイルシェアを再構成し、単一の名前スペースに統合することができる。さらに本発明を使用して、ストレージを多くのサーバから数台のサーバへ統合することに加えて、ストレージを数台のサーバから多数のサーバへ拡張することができる。単一の再編成サーバ上のレガシーシェアへのアクセスおよびその使用に関する情報を記録することによって、ストレージ管理者は、管理および保存の目的でレガシーシェアへのアクセスおよび使用を容易に監視することができる。さらに、提供されるシステムおよび方法は、パス書き換えおよびパスリダイレクトの機能を備えた任意のファイルシステムまたは名前解決プロトコルを使用することができるように柔軟性があり、拡張可能である。このように、本発明によって提供されるリダイレクトは、シェアパス名、サーバ名、ファイルシステムプロトコル、および他のデータアクセスプロトコルにわたって広範囲に対応することができる。
他の利点は、図面と共に以下の詳細な記述から明らかになろう。
(例示的な動作環境)
図1に、本発明を実施することができる好適なコンピューティングシステム環境100の一例を示す。コンピューティングシステム環境100は、好適なコンピューティング環境の一例に過ぎず、本発明の使用または機能の範囲に関していかなる制限を示唆することを意図するものではない。さらにコンピューティング環境100は、例示的なオペレーティング環境100に示された構成要素のいずれか1つまたはそれらの組合せに関して、いかなる依存性または要件を有するものと解釈されるべきではない。
本発明は、多数の他の汎用または特定用途のコンピューティングシステム環境または構成で動作可能である。本発明と共に使用するのに適した周知のコンピューティングシステム、環境、および/または構成の例には、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドもしくはラップトップデバイス、タブレットデバイス、ヘッドレスサーバ、マルチプロセッサシステム、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのいずれかを含む分散コンピュータリング環境などが含まれるが、これらに限定されるものではない。
本発明は、プログラムモジュールなどのコンピュータによって実行されるコンピュータ実行可能命令の一般的なコンテキストで説明することができる。一般に、プログラムモジュールには、特定のタスクを実行するかまたは特定の抽象データ型を実施するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。本発明は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される分散コンピューティング環境でも実施可能である。分散コンピューティング環境では、プログラムモジュールはメモリ記憶デバイスを含むローカルおよび/またはリモートのコンピュータ記憶媒体に配置することができる。
図1を参照すると、本発明を実施するためのシステム例には、コンピュータ110の形態の汎用コンピューティングデバイスが含まれる。コンピュータ110の構成要素には、処理ユニット120、システムメモリ130、および、システムメモリを含む様々なシステム構成要素を処理ユニット120に結合するシステムバス121が含まれるが、これらに限定されるものではない。システムバス121は、メモリバスもしくはメモリコントローラ、周辺バス、および様々なバスアーキテクチャのいずれかを使用するローカルバスを含む、数種のバス構造のいずれであってもよい。限定ではなく、例として、このようなアーキテクチャには、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、拡張ISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカルバス、およびメザニンバスとしても知られるPCI(Peripheral Component Interconnect)バスが含まれる。
コンピュータ110は、通常、様々なコンピュータ読取り可能媒体を含む。コンピュータ読取り可能媒体は、揮発性および不揮発性の両媒体ならびに取外し可能および取外し不可の両媒体を含む、コンピュータ110によってアクセスすることができる任意の利用可能な媒体とすることができる。限定ではなく、例として、コンピュータ読取り可能媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体には、コンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータなど、情報を格納するための任意の方法または技術で実装された揮発性および不揮発性、取外し可能および取外し不可の媒体が含まれる。コンピュータ記憶媒体には、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD−ROM、デジタル多用途ディスク(DVD)もしくは他の光ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気ストレージデバイス、または、所望の情報を格納するために使用することができ、コンピュータ110によってアクセスすることができる任意の他の媒体が含まれるが、これらに限定されるものではない。通信媒体は、通常、搬送波または他のトランスポートメカニズムなどの変調データ信号にコンピュータ読取り可能命令、データ構造、プログラムモジュール、または他のデータを具体化し、任意の情報送達媒体を含む。「変調データ信号」という用語は、信号に情報を符号化するような様式でその特徴の1つまたは複数が設定または変更された信号を意味する。限定ではなく、例として、通信媒体には、有線ネットワークもしくは直接配線接続などの有線媒体、音響、RF、赤外線、および他の無線媒体などの無線媒体を含む。上記のいずれの組合せも、コンピュータ読取り可能媒体の範囲に含まれるべきである。
システムメモリ130は、読取り専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132などの、揮発性および/または不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動時などにコンピュータ110内の要素間で情報の転送を助ける基本ルーチンが入っている基本入出力システム133(BIOS)は、通常、ROM131内に格納される。RAM132は、通常、処理ユニット120によって即時にアクセス可能であり、そして/または現在動作中であるデータおよび/またはプログラムモジュールを収容する。限定ではなく、例として、図1には、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137が示されている。
コンピュータ110は、他の取外し可能/取外し不可、揮発性/不揮発性のコンピュータ記憶媒体を含むこともできる。単に例として、図1には、取外し不可な不揮発性磁気媒体との読取りまたは書込みを行うハードディスクドライブ141、取外し可能な不揮発性磁気ディスク152との読取りまたは書込みを行う磁気ディスクドライブ151、および、CD ROMまたは他の光媒体などの取外し可能な不揮発性光ディスク156との読取りまたは書込みを行う光ディスクドライブ155が示されている。例示的なオペレーティング環境で使用することができる他の取外し可能/取外し不可、揮発性/不揮発性のコンピュータ記憶媒体には、磁気テープカセット、フラッシュメモリカード、デジタル多用途ディスク、デジタルビデオテープ、半導体RAM、半導体ROMなどが含まれるが、これらに限定されるものではない。ハードディスクドライブ141は、通常、インターフェース140などの取外し不可メモリインターフェースを通してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は、通常、インターフェース150などの取外し可能メモリインターフェースによってシステムバス121に接続される。
上述し、図1に示したドライブおよびそれらに関連するコンピュータ記憶媒体は、コンピュータ読取り可能命令、データ構造、プログラムモジュール、およびコンピュータ110のための他のデータのストレージを提供する。たとえば図1では、ハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147を格納するものとして示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137と同じであっても異なっていてもよいことに留意されたい。本明細書では、オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147が少なくとも異なるコピーであることを示すためにこれらには異なる番号が与えられている。ユーザは、タブレットまたは電子デジタイザ164、マイクロフォン163、キーボード162、および、一般にマウス、トラックボール、またはタッチパッドと呼ばれるポインティングデバイス161などの入力デバイスを通して、コンピュータ110にコマンドおよび情報を入力することができる。図1に示されていない他の入力デバイスには、ジョイスティック、ゲームパッド、衛星アンテナ、スキャナ、または、バイオメトリックセンサ、環境センサ、位置センサ、もしくは他のタイプのセンサを収容するデバイスを含む他のデバイスが含まれる。これらおよび他の入力デバイスは、多くの場合、システムバスに結合されているユーザ入力インターフェース160を通して処理ユニット120に接続されるが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などの他のインターフェースおよびバス構造によって接続することもできる。モニタ191または他のタイプのディスプレイデバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。モニタ191は、タッチスクリーンパネルなどと一体化することもできる。モニタおよび/またはタッチスクリーンパネルは、タブレットタイプのパーソナルコンピュータのように、コンピューティングデバイス110が組み込まれた筐体に物理的に連結することができる。さらに、コンピューティングデバイス110などのコンピュータは、出力周辺インターフェース194などを通して接続することができるスピーカ194およびプリンタ195などの他の周辺出力デバイスを含むこともできる。
コンピュータ110は、リモートコンピュータ180などの1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク環境で動作可能である。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、または他の共通ネットワークノードであってよく、通常は、コンピュータ110に関して上記で述べた要素のうちの多くまたはすべてを含むが、図1ではメモリ記憶デバイス181のみが示されている。図1に表現した論理接続は、ローカルエリアネットワーク(LAN)171およびワイドエリアネットワーク(WAN)173を含むが、他のネットワークを含むこともできる。このようなネットワーキング環境は、オフィスや企業規模のコンピュータネットワーク、イントラネット、およびインターネットでよく見られるものである。LANネットワーキング環境で使用される場合、コンピュータ110はネットワークインターフェースまたはアダプタ170を通してLAN171に接続される。WANネットワーキング環境で使用される場合、コンピュータ110は通常、モデム172、またはインターネットなどのWAN173を介した通信を確立するための他の手段を含む。モデム172は内蔵であっても外付けであってもよく、ユーザ入力インターフェース160または他の適切なメカニズムを介してシステムバス121に接続することができる。ネットワーク化された環境では、コンピュータ110に関して示されたプログラムモジュールまたはその一部をリモートメモリ記憶デバイスに格納することができる。限定ではなく、例として、図1では、リモートアプリケーションプログラム185がメモリデバイス181上にあるものとして示されている。図示したネットワーク接続は例示的なものであり、コンピュータ間の通信リンクを確立する他の手段を使用できることが理解されよう。
(トランスペアレントなストレージ再編成)
本発明は、一般に、トランスペアレントなストレージ再編成を提供するための方法およびシステムを対象とする。本明細書で使用されるストレージ再編成とは、1つのコンピュータから他のコンピュータへのファイルシェアの任意の再配置を意味する。本明細書で定義されるシェアとは、リモートファイルシステムまたはデータアクセスプロトコルを介して公開されるファイルおよびディレクトリのセットを意味する。レガシーシェアとは、様々な企業、政府機関、および他の組織のサーバ上で使用されているシェアなど、以前から存在するシェアを意味する。
ストレージ再編成の1つの形態に、ストレージ統合がある。ストレージ統合とは、本明細書ではストレージサーバを含む1つまたは複数の他のストレージシステムへのファイルシェアの任意の再配置であって、結果としてストレージシステムのセットを削減することになる再配置を意味する。本明細書に記載された様々なブロック図、流れ図、およびシナリオは、単なる例に過ぎず、本発明が適用されることになる他のシナリオが多くあることを理解されよう。
ストレージは、様々なシステム構成を使用して多くの方法で再編成することができる。一例として、図2のシステムについて、ストレージを再編成するためのシステムである統合サーバの一実施形態を使用して説明することにする。統合サーバは、1つまたは複数のレガシーサーバからストレージを統合することによって、ストレージを再編成することができる。1つまたは複数のレガシーサーバからストレージを統合するためのシステムは、ストレージを再編成するために記載したシステム構成要素を使用することができる多くのシステム構成のうちの一例であることを理解されよう。
図2の図面を見ると、ストレージを再編成するためのシステム構成要素の例示的なアーキテクチャを一般的に表すブロック図が示されている。当業者であれば、図に示されたブロックにおいて実施される機能は別の構成要素として実施可能であるか、あるいは、いくつかまたはすべてのブロックの機能が単一の構成要素において実施可能であることを理解されよう。たとえば、データベース210のための機能を分散ファイルシステム204に含めることができる。あるいは、パスリライタ206の機能を別の構成要素として実施することができる。
サーバ202は、分散ファイルシステム204およびデータベース210を含むことができる。一般に、分散ファイルシステム204およびデータベース210は、カーネルコンポーネント、アプリケーションプログラム、リンクされたライブラリ、オブジェクトなど、任意のタイプの実行可能ソフトウェアコードとすることができる。分散ファイルシステム204は、動作可能に結合されたパスリライタ206および動作可能に結合されたパスリダイレクタ208を含むことができる。これらの構成要素のそれぞれは、カーネルコンポーネント、アプリケーションプログラム、リンクされたライブラリ、オブジェクト、または他のタイプの実行可能ソフトウェアコードなど、任意のタイプの実行可能ソフトウェアコードとすることができる。
特に、分散ファイルシステム204は、図2でそれぞれパスリライタ206およびパスリダイレクタ208によって示されたように実施されるパス書き換えおよびパスリダイレクトを備えた任意のファイルシステムとすることができる。このようなファイルシステムは、任意のタイプのファイルプロトコルを使用してファイルシェアにアクセスするための要求を受け取ることができ、ファイルシェアにアクセスするためにサーバメッセージブロック(SMB)プロトコルを使用するか、あるいは同様の特性を提供するNetBIOSプロトコル、ネットワークファイルシステム(NFS)プロトコル、Netwareファイル共有プロトコル(NFSP)、または他のプロトコルなどの他のタイプのファイルシステムプロトコルを使用するMicrosoft(登録商標)分散ファイルシステム(Dfs)がある。一実施形態では、パス書き換えおよびパスリダイレクトで補強されたDfsサービスをサーバ202上で実行することができる。このDfsサービスは、たとえば、サーバ202のオペレーティングシステムのレジストリにあるレジストリキーなど、オペレーティングシステム構成を通じて有効にすることができる。
分散ファイルシステム204は、ファイルにアクセスするための要求を受け取ることができる。パスリライタ206は、レガシーシェアのための任意のパスを自動的に書き換えて、レガシーサーバ名に別のサーバ名をプリペンドすることができる。たとえば、統合サーバなどの一実施形態では、パスリライタ206は、レガシーシェアパスを書き換えて、レガシーシェアパスに統合サーバ名をプリペンドすることができる。統合サーバ上にある分散ファイルシステム204は、パス名を書き換えた後、書き換えられたパス名に関して通常の処理を継続することができる。この通常の処理の一部として、分散ファイルシステム204はレガシーサーバ名に対応するDfsルートにアクセスし、レガシーシェアパス名をトラバースし、再配置されたレガシーシェアのストレージロケーションを指すリンクに遭遇することができる。この場合、分散ファイルシステム204はパスリダイレクタ208を呼び出すことができる。
パスリダイレクタ208は、書き換えられたレガシーシェアパスを含め、レガシーシェアパスをトラバースする間に遭遇した任意のリンクを解決することができる。このようなリンクは、Dfs、SMB、NetBIOS、NFS、NFSP、または他のタイプのプロトコルなどのファイルシステムプロトコルによってサポートすることができる任意の種類のパスを指すことができる。リンクを解決すると、分散ファイルシステムは、再配置されたレガシーシェアのストレージロケーションのシェアパスで応答することができる。
統合サーバの一実施形態では、統合されたストレージを別個のDfsの名前スペースの中で編成することができる。この場合、リンクは、統合されたレガシーシェアに対応する名前スペースの中のパスを収容することができる。有利なことに、統合されたサーバのパスリダイレクタ208は、今度はそのパスを新しい名前スペースにリダイレクトすることができ、その後、新しいDfs名前スペース内で、新しいDfs名前スペースへのリダイレクトに影響を与えることなく、ストレージを移動または再編成することができる。
データベース210は、分散ファイルシステム204に動作可能に結合されており、アクセス活動およびレガシーシェアの使用を記録および監視することができる。データベースは、任意のタイプのデータベースであっても、またはログファイルであってもよい。サーバがレガシーシェアに対する要求を見つけるときは常に、分散ファイルシステム204は要求についての情報をデータベースまたはログファイルにログすることができる。アクセスされたレガシーシェアの名前、どのクライアントがシェアへのアクセスを要求したかなど、レガシーシェアへのアクセスに関するどのような情報もデータベースに記録することができる。この情報は、ストレージ管理者によっていくつもの方法で使用することができる。たとえば、ストレージ管理者は、レガシーシェアのアクティブな使用を追跡することができる。シェアがあまり頻繁に使用されていないとストレージ管理者が判断した場合、その管理者はそれらのシェアを廃棄することができる。別の例として、ストレージ管理者は情報を使用して、どのユーザまたはアプリケーションがレガシーパスにアクセスしているかをマッピングすることができ、その結果、ストレージ管理者は、新しいパス名を使用してどのアプリケーションを更新する必要があるか、あるいは、どのユーザに新しいパス名へのリンクを更新するように通知するかを決定することができる。
1つまたは複数のレガシーサーバからストレージを統合するための記載されたシステムは、ストレージの再編成のための図2に示したシステム構成要素を使用することのできる多くのシステム構成の一例である。ストレージを再編成するための他のシステム構成には、モノリシックサーバから1つまたは複数の小規模サーバにわたってレガシーファイルシェアを分散させることによって、モノリシックサーバを置換えるための記載されたシステム構成要素を使用することが可能な分散サーバを含むことができる。さらに他のシステム構成は、レガシーサーバ上のレガシーファイルシェアを置換サーバに転送することによって、レガシーサーバを置換サーバと置換えるための記載されたシステム構成要素を使用することが可能な転送サーバを含むことができる。
図3は、レガシーサーバから他のサーバ上にシェアを再編成するために行われるステップを一般的に表す流れ図である。ステップ302では、どのレガシーサーバ名も再編成サーバのネットワークアドレスに別名付けすることができる。レガシーシェアは、再編成サーバまたは他の宛先サーバに格納することができる。レガシーサーバ名に別名を付けると、結果としてレガシーサーバ名の名前検索は再編成サーバに対して解決されることになり、レガシーサーバについてのどのような要求も代わりに、要求を処理するために再編成サーバに対してなされることになる。この別名付けは、ドメイン名システム(DNS)およびNetBIOS名など、レガシーサーバに使用されたすべての命名スキームに対して実行されて、任意のプロトコルを通してレガシーサーバ名に関する任意の検索が、実際には、要求が処理されることになる再編成サーバのアドレスとなることを確実なものにすることができる。
レガシーサーバ名に再編成サーバ名で別名付けした後、ステップ304で、それぞれのレガシーシェアのコンテンツおよび許可を宛先サーバにコピーすることができる。一実施形態では、再編成サーバは、1つまたは複数のレガシーシェアに対する宛先サーバとしての機能を果たすこともできる。ステップ306で、それぞれのレガシーシェアに新しい一意のシェア名が割り当てられる。一実施形態では、この一意のシェア名はユーザまたはクライアントマシンには可視ではない場合がある。ステップ308で、レガシーサーバ名を使用して、レガシーサーバのDfsルートを再編成マシン上に作成することができる。一実施形態では、レガシーサーバのDfsルートがレガシーサーバの同一名を有しない場合があり、代わりにレガシーサーバのDfsルート名は、識別子文字列をレガシーサーバ名にプリペンドするなど、レガシーサーバ名の変形とする場合がある。ステップ310で、レガシーシェアがコピーされた宛先サーバ上のシェア名へのDfsリンクをレガシーサーバのルート上に作成することができる。レガシーサーバのルート上にリンクが作成されると、コピーされたレガシーシェアに宛先サーバからアクセスすることができる。当業者であれば、図3に記載されたステップが、レガシーサーバから他のサーバにシェアを再編成するために異なる順序で実行できることを理解されよう。たとえば、レガシーファイルのコンテンツおよび許可が宛先サーバにコピーされる前に、レガシーサーバのルートおよびレガシーサーバのルート上のリンクを再編成マシン上に作成することができる。
本発明の一実施形態では、サーバ202は、レガシーサーバからより小規模な宛先サーバのセット上にレガシーシェアを統合することのできる統合サーバとすることができる。図4は、統合シェアがレガシーサーバから新しいサーバ上にシェアを統合することを一般的に表す例示的な図である。この実施形態では、レガシーサーバM402など、いくつかのレガシーサーバMからMがあってよい。これらのサーバのそれぞれは、\\M\Sなどのパス名を使用してアクセスされる1つまたは複数のシェアSからSを備えたファイルシステム404を有することができる。ストレージ管理者は、クライアントマシンが同じパス名を使用して任意のシェアへのアクセスを継続することができるので、これらのシェアを新しいストレージサーバのより小さなセット上(新しいサーバNSなど)に統合したいと望む場合がある。
しかし、いくつかのシェア名が普及しているので、1つのマシン上のシェアが他のマシン上のシェアと同じ名前を有する場合がある。たとえば、「public」という名前は一般的なシェア名である。マシンMおよびM上に、それぞれパス名\\M\publicおよび\\M\publicを使用してアクセス可能な「public」というシェア名がある場合がある。同じ名前の2つのシェアが同じサーバ上に統合されると、一方または両方のシェアにアクセス用の一意のパス名が割り当てられない限り、名前の衝突が生じる場合がある。通常、名前の衝突を避けるために、一方または両方のシェアにアクセスするためのパス名を変更する。しかし、本発明では、ストレージ管理者がストレージデバイスのより小さなセット上でこれらのシェアを統合できるようにすることができ、その結果、クライアントマシンは、たとえ名前の衝突が生じる場合であっても、同じパス名を使用して任意のシェアにアクセスを継続することができる。そのためには、統合サーバCS406は、図2に記載したように、パスリライタ206によって実施されるパス書き換えと、パスリダイレクタ208によって実施されるパスリダイレクトとを備えた分散ファイルシステム204を含むことができる。
図4の第1のステップは、レガシーサーバ名Mを統合サーバCS406のネットワークアドレスに別名付けして、レガシーサーバの名前、この場合はMを統合サーバCSのネットワークアドレスに解決するようにさせることであって、その結果、レガシーサーバMに対するどんな要求も代わりに、統合サーバCSに向けられることになる。この別名付け(aliasing)は、ドメイン名システム(DNS)およびNetBIOS名など、レガシーサーバに使用されたすべての命名スキームに対して実行して、任意のプロトコルを通してレガシーサーバ名に関する任意の検索が、実際には、レガシーサーバMのアドレスではなく、統合サーバCSのアドレスとなることを確実なものにすることができる。
第2のステップは、あらゆる統合されたレガシーシェアについて行われることがある。統合されることになるそれぞれのレガシーシェアSは、レガシーサーバM402から新しいサーバNS410にコピーすることができる。シェアSのコンテンツおよび許可を新しいサーバNS410にコピーすることができ、ユーザまたはクライアントマシンに可視ではない可能性のある新しい一意のシェア名をシェアSに与えることができる。名前の競合を引き起こすことのない任意の名前を新しいシェアに使用することができる。一実施形態では、命名スキーム「\\NS\M−S」がこのような競合が起こらないことを確実なものにすることができる。
第3のステップは、統合されたレガシーサーバMごとに1回実行することができる。レガシーサーバ名を使用して、名前Mを有する新しいDFSルートなど、レガシーサーバのルートを統合サーバCS406上に作成することができる。その結果、統合サーバCSは、\\CS\Mの形式のパスへのアクセスに応答するか、またはローカルに処理することができる。パスリライタ206が使用可能な状態で、統合サーバCS406の分散ファイルシステム204が、\\Mなど、サーバ名Mで始まるパス名を受け取るときは常に、\\CS\Mの後に残りのパスが続くようにパスを書き換えることができる。このように、分散ファイルシステム204は、書き換えられたパスがローカルのDfsルートに対応することを見つけることができ、その後、Dfsプロトコルに従ってそのローカルルートにアクセスすることができる。
一実施形態では、ルートまたはシェア名の最初の文字には違法であるハッシュマーク(hash mark、#)などの文字を使用して、統合サーバ上にレガシーサーバのルートを作成する前に、それをレガシーサーバ名にプリペンドすることができる。レガシーサーバのルートを作成するためにレガシーサーバ名をそのように修正することによって、統合サーバCS上のローカルシェア名とレガシーサーバのルート名との間に衝突が発生しないであろうことを確実なものにすることができる。このような文字で始まるローカルルートまたはシェア名がないと想定すると、統合サーバCS上のローカルシェアの名前と、統合されたシェアのレガシーサーバからの名前とを素早く識別することができる。これによってストレージ管理者は、有利なこととして統合サーバCS上のどのルートがローカルルートであるか、そしてどのルートが統合されたシェアからであるかを素早く識別することができる。
第4のステップは、新しいサーバ上に統合されるレガシーシェアSごとに1回実行することができる。統合サーバCSのレガシーサーバのルート\\CS\M上に、レガシーシェアがコピーされた新しいサーバNS410上のシェア名\\NS\M−Sへのリンクを作成することができる。このようなリンクは、Dfs、SMB、NetBIOS、NFS、NFSP、または他のタイプのプロトコルを含む、分散ファイルシステムプロトコルによってサポートすることのできる任意の種類のパスを指すことができる。一実施形態では、このリンクは、新しいサーバNS410上の統合されたレガシーシェアのロケーションを直接指すDfsリンクとすることができる。この場合、\\CS\M\Sで始まるパスを、ルート\\CS\MからリンクSに遭遇するまでトラバースし、新しいサーバNS410上のファイルシステム412の統合されたレガシーシェア\\NS\M−Sの新しいロケーションに要求をリダイレクトすることができる。統合サーバの他の実施形態では、統合されたストレージを別個のDfs名前スペースに編成することができる。この場合、リンクは、統合されたレガシーシェアに対応するパスを名前スペースに収容することができる。有利なことに、統合されたサーバのパスリダイレクタ208は、次に、そのパスを新しい名前スペースにリダイレクトすることができ、その後、新しいDfs名前スペース内で、新しいDfs名前スペース中へのリダイレクトに影響を与えることなく、統合サーバCS上でのどのような構成変更も必要とすることなく、ストレージを移動または再編成することができる。
レガシーサーバのルート上でリンクが作成されると、新しいサーバNS410上で統合されたレガシーシェアにアクセスできるようになる。当業者であれば、図4に表現されたステップが、レガシーサーバから新しいサーバにシェアを統合するために異なる順序で実行できることが理解されよう。たとえば、レガシーファイルのコンテンツおよび許可が新しいサーバNS410にコピーされる前に、レガシーサーバのルートおよびレガシーサーバのルート上のリンクを統合サーバCS406上に作成することができる。レガシーシェアが新しいサーバ上に統合された後、レガシーサーバを廃棄したり、改名したりするか、または他の目的に使用することができる。
図5は、レガシーサーバから他のサーバに移動された再編成済みシェアにアクセスするために実行されるステップを一般的に表す流れ図である。クライアントは、レガシーシェア名を使用して再編成されたレガシーシェアにアクセスしようと思う場合がある。ステップ502で、クライアントは、別名のレガシーサーバ名を解決し、再編成サーバCSのネットワークアドレスへの接続を確立することができる。その後クライアントは、ステップ504で、レガシーシェアにアクセスするための要求を再編成サーバに送信することができる。一実施形態では、この要求は、レガシーシェアにアクセスを確立するためのDfs要求とすることができる。
ステップ506で、再編成サーバは、再編成サーバ名をレガシーシェアパスにプリペンドすることによってレガシーシェアパスを書き換えることができ、その結果、分散ファイルシステムは、書き換えられたパスがレガシーサーバ名を有するローカルルートに対応することを見つけ、その後そのローカルルートにアクセスすることができる。レガシーシェアパスを書き換えた後、再編成サーバ上の分散ファイルシステムは、書き換えられたパスに関して通常の処理を継続する。その通常の処理の一部として、分散ファイルシステム204は書き換えられたレガシーシェアパスをトラバースし、再配置されたレガシーシェアのストレージロケーションを指すリンクに遭遇することができる。この場合、分散ファイルシステム204は、ステップ508で、パスリダイレクタ208を呼び出すことによって、書き換えられたレガシーシェアパスをトラバースする間に遭遇した任意のリンクを解決することができる。このようなリンクは、Dfs、SMB、NetBIOS、NFS、NFSP、または他のタイプのプロトコルを含む、分散ファイルシステムプロトコルによってサポートすることができるどのような種類のパスでも指すことができる。
リンクを解決すると、分散ファイルシステムはステップ510で、再配置されたレガシーシェアのストレージロケーションのシェアパスで応答することができる。次にクライアントは、ステップ512でレガシーシェアにアクセスすることができる。レガシーシェアへのリダイレクトに関する情報は、データベースに記録することもできる。再編成サーバの一実施形態では、再配置されたストレージを別個のDfs名前スペース内で編成することができる。この場合、リンクは、再編成されたレガシーシェアに対応する名前スペースの中のパスを収容することができる。有利なこととして、再編成サーバのパスリダイレクタ208は、今度はそのパスを新しい名前スペースにリダイレクトし、その後、新しいDfs名前スペース内で、新しいDfs名前スペースへのリダイレクトに影響を与えることなく、ストレージを移動または再編成することができる。
再編成サーバを統合サーバとすることができる本発明の実施形態に戻ると、図6は、図4で以前に記載し図示したように他のサーバ上に統合されたレガシーシェアにクライアントがアクセスすることを一般的に表す例示的な図である。この実施形態では、クライアント602は、レガシーシェア\\M\Sに関するアクセス要求を統合サーバCS406に送ることができる。図6の第1のステップでは、レガシーパス\\M\Sへのアクセスを望むクライアントが、DNSまたはNetBIOS、あるいは任意の他の名前解決プロトコルのいずれかを通じて、統合サーバCS406に別名付けされたサーバ名Mを解決することができる。次にクライアントは、SMBプロトコルを介して統合サーバCS406のネットワークアドレスに接続することができる。クライアントおよびサーバは、レガシーシェアがDfsシェアであることをネゴシエートすることができ、その後クライアントは、レガシーパス\\M\Sの作成要求を統合サーバCS406に送ることができる。
第2のステップでは、パスリライタ206を使用可能にした分散ファイルシステム204を実行中の統合サーバがレガシーパス\\M\Sの作成要求を受け取ることができる。シェアに関する任意のタイプの要求がパスリライタを使用可能にした状態で受け取られると、統合サーバ上の分散ファイルシステムは、統合サーバ名をパスにプリペンドすることによって、レガシーシェアに関する任意のパスを自動的に書き換えることができる。たとえば、パス名\\M\Sを有するシェアに関する要求を受け取ると、統合サーバ上の分散ファイルシステムは、このパス名に関して何らかの処理を実行する前に、このパスを自動的に\\CS\M\Sに書き換えることができる。その結果、統合サーバCSは、\\CS\Mの形式のパスへのアクセスに応答するか、またはローカルに処理することができる。パス名を書き換えた後、統合サーバ上の分散ファイルシステムは、書き換えられたパス名上で通常の処理を継続することができる。分散ファイルシステム204は、このパスがローカルルートに対応することを見つけることができ、そしてローカルルートMにアクセスすることができる。一実施形態では、統合サーバは、書き換えられたパス\\CS\M\Sを使用してどのルートも見つけることができない場合、クライアントによって送られた当初のパス\\M\Sに自動的に戻ることができ、これが統合されなかったローカルルートであると想定することができる。
ステップ3では、分散ファイルシステムはレガシーシェアのパス名をトラバースし、ファイルシステム408のレガシーパス\\M\S内のリンクSなど、再配置されたレガシーシェアのストレージロケーションを指すリンクに遭遇することができる。一実施形態では、統合サーバ上のSMBサーバは、レガシーシェアパスをトラバースし、Sがリンクであることを示す再パース(reparse)ポイントを発見することができ、Sがリンクであることをクライアント602に示す、STATUS_PATH_NOT_COVEREDなどのメッセージを戻すことができる。ステップ4では、クライアント602は、\\M\Sに関する参照メッセージを統合サーバに送ることができる。メッセージを受け取ると、統合サーバCSは、ステップ5で参照要求パス\\M\Sを\\CS\M\Sに書き換えることができ、パスリダイレクタ208を使用して、書き換えられたパス\\CS\M\Sが\\NS\M−Sへのリンクにマッピングしているかどうかを判定することができる。パス内には多くのリンクがある場合があり、このプロセスが、パス中で発見された各リンクについて、同じかまたは異なるサーバ上で繰り返すことができることに留意されたい。一実施形態では、統合サーバが書き換えられたパス\\CS\M\Sを使用して何のルートも見つけることができない場合、クライアントによって送られた当初のパス\\M\Sに自動的に戻すことができ、これが統合されなかったローカルルートであると想定することができる。
ステップ6では、統合サーバは、統合されたレガシーシェアの新しいロケーションであるシェアパス\\NS\M−Sへの参照でクライアントに応答する。クライアントは、次にステップ7でパス\\NS\M−Sにアクセスすることができる。一実施形態では、クライアントマシンは統合されたレガシーシェアのロケーションへの参照を自動的にキャッシュすることができ、クライアントは、統合サーバをくまなく調べたり、リダイレクトしたりする必要なく、任意の追加のアクセスについて、または特定の期間中に、統合されたレガシーシェアのロケーションに直接アクセスすることができる。
図4および6では、1つの統合サーバが示されているが、統合されたレガシーシェアについて名前のリダイレクトを行うことのできる統合サーバは、1つまたは複数あってもよい。さらに一実施形態では、図7に示したように、レガシーシェアを1つまたは複数の他のサーバ上に配置することもできる。図7の統合サーバ406のファイルシステム408は、レガシーサーバ名MからMに対するローカルルートを含むことができ、そのルートのそれぞれは、そのレガシーサーバのレガシーシェアがコピーされている新しいサーバ上のシェア名へのリンクSを有する。たとえば、統合サーバ406のファイルシステム408は、新しいサーバNS1 702のファイルシステム704上に統合されたレガシーシェア\\NS\M−Sを指すリンクSを有するレガシーサーバ名Mに対するローカルルートを含んでいる。同様に、統合サーバ406のファイルシステム408は、新しいサーバNSN710のファイルシステム712上に統合されたレガシーシェア\\NS\M−Sを指すリンクSを有するレガシーサーバ名Mに対するローカルルートを含んでいる。
統合されたレガシーシェアに対する名前のリダイレクトを行うことに加えて、図8に示したような他の実施形態において、統合サーバはそれ自体、統合されたレガシーシェアのサブセットをホストすることができる。図8の統合サーバ406のファイルシステム408は、レガシーサーバ名MからMに対するローカルルートを含むことができる。レガシーサーバ名MおよびMに関するローカルルートを除き、ローカルルートのそれぞれは、そのレガシーサーバに対するレガシーシェアがコピーされている新しいサーバ上のシェア名へのリンクSを有する。これらの統合されたレガシーシェアについて、統合サーバ406は、名前のリダイレクトを行うことができる。たとえば、統合サーバ406のファイルシステム408は、新しいサーバNS2 706のファイルシステム708上の統合されたレガシーシェア\\NS\M−Sを指すリンクSを有するレガシーサーバ名Mに対するローカルルートを含んでいる。しかし、統合サーバ406のファイルシステム408はそれ自体、統合されたレガシーシェア\\M\Sおよび\\M\Sを、それぞれ、シェア名\\CS\M−Sおよび\\CS\M−Sの下でホストすることができる。統合シェア406は、これらの統合されたレガシーシェアについても名前のリダイレクトを行うことができる。当業者であれば、他の実施形態において、統合サーバのみで統合されたシェアのすべてをホストできるであろうことを理解されよう。
このシステムおよび方法がトランスペアレントにストレージを再編成することができるだけでなく、有利なこととして、本発明により、分散ファイルシステムにおける複数のロケーションではなく単一のロケーションにて、再編成されたレガシーシェアへのアクセスおよび使用を監視することができる。統合サーバがレガシーシェアに対する要求を見つけると常に、分散ファイルシステム204は、その要求に関する情報をデータベースまたはログファイルにログすることができる。アクセスされたレガシーシェアの名前、どのクライアントがシェアへのアクセスを要求したかなど、レガシーシェアへのアクセスに関するどんな情報もデータベースに記録することができる。この情報はストレージ管理者によって使用されて、レガシーシェアのアクティブな使用を追跡し、あまり頻繁に使用されていないシェアを廃棄することができる。さらにストレージ管理者は、この情報を使用して、どのユーザまたはアプリケーションがレガシーパスにアクセスしているかをマッピングすることができ、その結果、ストレージ管理者は、どのアプリケーションを新しいパス名で更新する必要があるか、またあるいは、どのユーザに新しいパス名へのリンクを更新するよう通知するかを決定することができる。
上記の詳細な説明からわかるように、本発明は、ストレージをトランスペアレントに再編成するための改良されたシステムおよび方法を提供するものであり、その結果、クライアントまたはユーザが再編成されたストレージにレガシーシェア名を使用してアクセスすることができる。有利なこととして、文書、Webページ、およびアプリケーションに埋め込まれたレガシー名を、再配置されたレガシーシェアの新しいストレージロケーションに対するパス名に変更する必要がないだけでなく、再配置されたレガシーシェアのパス名を使用するためにユーザをトレーニングする必要もない。ここで理解されるように、1つまたは複数のレガシーサーバからストレージを統合するための記載されたシステムおよび方法は、ストレージを再編成するために本発明を使用することができる多くのシステム構成の一例に過ぎない。ストレージを再編成するための他のシステム構成には、モノリシックサーバから1つまたは複数の小規模サーバにわたってレガシーファイルシェアを分散させることによって、モノリシックサーバを置換えるために本発明を使用することのできる分散サーバを含むことができる。このように、本発明は、多数のサーバから数台のサーバへとストレージを統合することに加えて、数台のサーバから多数のサーバへとストレージを拡張するために使用することも可能である。他のシステム構成には、レガシーサーバ上のレガシーファイルシェアを置換サーバに転送することによって、レガシーサーバを置換サーバと置き換えるためのシステムおよび方法を使用することができる転送サーバを含むことができる。さらに、提供されるシステムおよび方法は、柔軟性があって拡張可能であり、パス書き換えおよびパスリダイレクトが実装されるファイルシステムまたは名前解決プロトコルを使用する任意のファイルシステムまたはデータアクセスシステムを使用することができる。さらに、本発明が提供するリダイレクトは、シェアパス名、サーバ名、および、ファイルシステムまたはデータアクセスプロトコルにわたって行うことができる。このように、このアプローチを使用して、たとえばMicrosoft(登録商標)Windows(登録商標)Sharepointサーバ上で、ストレージを統合することができる。結果として、このシステムおよび方法は、現代のコンピューティングに必要とされる重要な利点および恩恵をもたらす。
本発明は、様々な修正および代替の構成が可能であるが、そのうちの特定の実施形態を図面に示し、上記で詳細に説明した。しかし、本発明を開示した特定の形態に限定する意図はなく、その逆に、本発明の趣旨および範囲内にあてはまるすべての修正形態、代替構成、および等価物を対象とすることが意図されている。
本発明を組み込むことのできるコンピュータシステムを一般的に表すブロック図である。 本発明の一態様に従って、ストレージを再編成するためのシステム構成要素の例示的なアーキテクチャを一般的に表すブロック図である。 本発明の一態様に従って、レガシーサーバから他のサーバ上にシェアを再編成するために行われるステップを一般的に表す流れ図である。 本発明の一態様に従って、統合サーバがレガシーサーバから新しいサーバ上にシェアを統合することを一般的に表す例示的な図である。 本発明の一態様に従って、レガシーサーバから他のサーバに移動された再編成済みシェアにアクセスするために行われるステップを一般的に表す流れ図である。 本発明の一態様に従って、クライアントが他のサーバ上に統合されたレガシーシェアにアクセスすることを一般的に表す例示的な図である。 本発明の一態様に従って、統合サーバがいくつかの他のサーバ上に位置する統合されたレガシーシェアに対して名前のリダイレクトを実行することを一般的に表す例示的な図である。 本発明の一態様に従って、統合サーバが統合されたレガシーシェアのサブセットをホストすることを一般的に表す例示的な図である。
符号の説明
100 コンピューティングシステム環境
110 コンピューティングデバイス
120 処理ユニット
121 システムバス
130 システムメモリ
131 ROM
132 RAM
133 BIOS
134 オペレーティングシステム
135 アプリケーションプログラム
136 他のプログラムモジュール
137 プログラムデータ
140 取外し不可の不揮発性メモリインターフェース
141 ハードディスクドライブ
144 オペレーティングシステム
145 アプリケーションプログラム
146 他のプログラムモジュール
147 プログラムデータ
150 取外し可不揮発性メモリインターフェース
151 磁気ディスクドライブ
152 取外し可能な不揮発性磁気ディスク
155 光ディスクドライブ
156 取外し可能な不揮発性光ディスク
160 ユーザ入力インターフェース
161 マウス
162 キーボード
163 マイク
164 タブレット
170 ネットワークインターフェース
171 ローカルエリアネットワーク
172 モデム
173 ワイドエリアネットワーク
180 リモートコンピュータ
181 メモリ記憶デバイス
185 リモートアプリケーションプログラム
190 ビデオインターフェース
191 モニタ
192 タッチスクリーンインターフェース
193 出力周辺インターフェース
194 スピーカ
195 プリンタ
202 サーバ
204 分散ファイルシステム
206 パスリライタ
208 パスリダイレクタ
210 データベース
402 レガシーサーバM
404 ファイルシステム
406 統合サーバCS
408 ファイルシステム
410 新しいサーバNS
412 ファイルシステム
602 クライアント
702 新しいサーバNS1
704 ファイルシステム
706 新しいサーバNS2
708 ファイルシステム
710 新しいサーバNSN
712 ファイルシステム

Claims (25)

  1. ストレージを再編成するための統合サーバであって、
    レガシーサーバに対するファイルアクセス要求であって、前記レガシーサーバ名から統合サーバのネットワークアドレスに解決されたファイルアクセス要求を受け取るためのファイルシステムと、
    前記ファイルシステムに動作可能に結合されたパスリライタであって、前記ファイルシステムによって受け取られた前記レガシーサーバに対するファイルアクセス要求のパスを前記ファイルシステムの対応するパスに書き換えるためのパスリライタと、
    前記ファイルシステムに動作可能に結合されたパスリダイレクタであって、前記ファイルアクセス要求の前記書き換えられたパスを前記レガシーサーバ以外のストレージロケーションにリダイレクトするためのパスリダイレクタと
    を備えたことを特徴とする統合サーバ。
  2. 前記ファイルシステムによって受け取られた前記レガシーサーバに対するファイルアクセス要求に関する情報を格納するためのデータベースをさらに備えたことを特徴とする請求項1に記載の統合サーバ。
  3. 前記データベースは、ログファイルを含むことを特徴とする請求項2に記載の統合サーバ。
  4. 前記格納される情報は、前記ファイルアクセス要求に関する使用情報を含むことを特徴とする請求項2に記載の統合サーバ。
  5. 前記ファイルシステムは、分散ファイルシステムを含むことを特徴とする請求項1に記載の統合サーバ。
  6. 前記ファイルアクセス要求の前記書き換えられたパスを前記レガシーサーバ以外のストレージロケーションにリダイレクトすることは、前記ファイルアクセス要求の前記書き換えられたパスを前記統合サーバ上のストレージロケーションにリダイレクトすることを含むことを特徴とする請求項1に記載の統合サーバ。
  7. 分散コンピューティングシステムであって、
    パスリライタに動作可能に結合されたファイルシステムを有する第1のサーバであって、前記ファイルシステムによって受け取られた他のサーバに対するファイルアクセス要求のパスを前記ファイルシステムの対応するパスに書き換えるための第1のサーバと、
    前記第1のサーバに動作可能に結合された第2のサーバであって、ファイルシステムを有する第2のサーバと、
    前記第1のサーバの前記ファイルシステムに動作可能に結合されたパスリダイレクタであって、前記第1のサーバによって受け取られた他のサーバに対するファイルアクセス要求の書き換えられたパスを前記第2のサーバのシェア名にリダイレクトするためのパスリダイレクタと
    を備えたことを特徴とするシステム。
  8. 前記第1のサーバに動作可能に結合されたデータベースであって、前記第1のサーバの前記ファイルシステムによって受け取られた他のサーバに対するファイルアクセス要求に関する情報を格納するためのデータベースをさらに備えたことを特徴とする請求項7に記載のシステム。
  9. コンピュータによって実行されると、請求項1に記載の統合サーバを実現するコンピュータ実行可能命令を備えたことを特徴とするコンピュータ読取り可能媒体。
  10. 再編成されたストレージにアクセスするためのクライアントサーバコンピュータネットワークにおける方法であって、
    レガシーシェアのパスについてクライアントからのアクセス要求を再編成サーバにて受け取るステップと、
    前記レガシーシェアのパスに前記再編成サーバ自体の名前をプリペンドすることによって、前記レガシーシェアのパスを前記再編成サーバの対応するパスに書き換えるステップと、
    前記書き換えられたレガシーシェアのパスにおける任意のリンクを解決するステップと、
    前記解決されたリンクに従って前記レガシーシェアの再配置されたストレージロケーションのシェアパスとともに前記クライアントからのアクセス要求に応答するステップと
    を備えることを特徴とする方法。
  11. 別名レガシーサーバ名を解決して再編成サーバのネットワークアドレスへの接続をクライアントにて確立することをさらに備えることを特徴とする請求項10に記載の方法。
  12. レガシーシェアのパスについてクライアントからアクセス要求を再編成サーバに送ることをさらに備えることを特徴とする請求項10に記載の方法。
  13. 前記レガシーシェアのパスを書き換えることは、パスリライタを呼び出して前記レガシーシェアのパスを書き換えることを含むことを特徴とする請求項10に記載の方法。
  14. 前記書き換えられたレガシーシェアのパスをトラバースする間にリンクに遭遇することをさらに備えることを特徴とする請求項10に記載の方法。
  15. 前記書き換えられたレガシーシェアのパスにおいて任意のリンクを解決することは、パスリダイレクタを呼び出して前記書き換えられたレガシーシェアのパスにおいて任意のリンクを解決することを含むことを特徴とする請求項10に記載の方法。
  16. 前記レガシーシェアの前記再配置されたストレージロケーションの前記シェアパスにアクセスすることをさらに備えることを特徴とする請求項10に記載の方法。
  17. 前記レガシーシェアの前記再配置されたストレージロケーションの前記シェアパスにアクセスすることは、別個のDfs名前スペースのパスにアクセスすることを含むことを特徴とする請求項16に記載の方法。
  18. 前記書き換えられたレガシーシェアパスをトラバースする間にDfs再パースポイントに遭遇することをさらに備えることを特徴とする請求項10に記載の方法。
  19. 前記書き換えられたレガシーシェアのパスがリンクを収容することを示すメッセージを前記クライアントに戻すことをさらに備えることを特徴とする請求項18に記載の方法。
  20. 前記リンクについて参照要求メッセージを前記クライアントから受け取ることをさらに備えることを特徴とする請求項19に記載の方法。
  21. 請求項10に記載の方法をコンピュータが行うためのコンピュータ実行可能命令を有することを特徴とするコンピュータ読取り可能媒体。
  22. 再配置されたストレージのためのコンピュータシステムであって、
    レガシーシェアに対するファイルアクセス要求を受け取るための手段と、
    前記受け取られたファイルアクセス要求のパスを対応する別のパスに書き換えるための手段と、
    前記ファイルアクセス要求の前記書き換えられたパスを前記レガシーシェアの再配置されたストレージロケーションにリダイレクトするための手段と
    を備えたことを特徴とするシステム。
  23. 前記ファイルアクセス要求の前記書き換えられたパスを前記レガシーシェアの再配置されたストレージロケーションにリダイレクトするための手段は、前記ファイルアクセス要求の前記書き換えられたパスにおいて任意のリンクを解決するための手段を含むことを特徴とする請求項22に記載のシステム。
  24. 前記ファイルアクセス要求の前記書き換えられたパスを前記レガシーシェアの再配置されたストレージロケーションにリダイレクトするための手段は、前記ファイルアクセス要求の前記書き換えられたパスを別個の名前スペースにリダイレクトするための手段を含むことを特徴とする請求項22に記載のシステム。
  25. 前記レガシーシェアの前記再配置されたストレージロケーションのシェアパスとともに前記ファイルアクセス要求に応答するための手段をさらに備えたことを特徴とする請求項22に記載のシステム。
JP2004152119A 2003-05-21 2004-05-21 トランスペアレントなストレージ再編成のためのシステムおよび方法 Expired - Fee Related JP5173110B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US47250003P 2003-05-21 2003-05-21
US60/472,500 2003-05-21
US10/772,533 2004-02-05
US10/772,533 US7716187B2 (en) 2003-05-21 2004-02-05 System and method for transparent storage reorganization

Publications (2)

Publication Number Publication Date
JP2004348742A JP2004348742A (ja) 2004-12-09
JP5173110B2 true JP5173110B2 (ja) 2013-03-27

Family

ID=33101526

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004152119A Expired - Fee Related JP5173110B2 (ja) 2003-05-21 2004-05-21 トランスペアレントなストレージ再編成のためのシステムおよび方法

Country Status (5)

Country Link
US (1) US7716187B2 (ja)
EP (1) EP1480117A3 (ja)
JP (1) JP5173110B2 (ja)
KR (1) KR101169068B1 (ja)
CN (1) CN100401286C (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6973654B1 (en) 2003-05-27 2005-12-06 Microsoft Corporation Systems and methods for the repartitioning of data
US7418507B2 (en) * 2003-12-18 2008-08-26 Microsoft Corporation Virtual resource serving of consolidated server shares
US7577640B1 (en) * 2004-03-31 2009-08-18 Avaya Inc. Highly available, highly scalable multi-source logical database with low latency
US7558859B2 (en) * 2005-10-17 2009-07-07 Microsoft Corporation Peer-to-peer auction based data distribution
JP4795787B2 (ja) * 2005-12-09 2011-10-19 株式会社日立製作所 ストレージシステム、nasサーバ、及びスナップショット方法
JP4908849B2 (ja) * 2006-01-11 2012-04-04 富士通セミコンダクター株式会社 ファイル削除方法、ファイル・オープン方法、ファイル削除プログラム、および、ファイル・オープン・プログラム
US7640247B2 (en) * 2006-02-06 2009-12-29 Microsoft Corporation Distributed namespace aggregation
US20080028319A1 (en) * 2006-07-27 2008-01-31 Aaron Roger Cox Console-Integrated Updatable Terms
WO2008122642A2 (en) * 2007-04-10 2008-10-16 Apertio Limited Alias hiding in network data repositories
EP2145456B1 (en) * 2007-04-10 2016-12-07 Apertio Limited Variant entries in network data repositories
CN101587480B (zh) * 2008-05-21 2013-08-28 鸿富锦精密工业(深圳)有限公司 Notes文件分布式存储系统及方法
US20090313259A1 (en) * 2008-06-17 2009-12-17 Microsoft Corporation Container handlers for sharing and unsharing
US9235587B2 (en) * 2012-12-31 2016-01-12 Sandisk Technologies Inc. System and method for selectively routing cached objects
US10649961B2 (en) 2012-12-31 2020-05-12 Sandisk Technologies Llc System and method for selectively routing cached objects
US10666513B2 (en) * 2017-05-03 2020-05-26 International Business Machines Corporation Filesystem share auto-detect
GB2575099B (en) * 2018-06-29 2022-10-05 Bae Systems Plc Load Controller
CN112274913B (zh) * 2020-10-27 2024-04-19 完美世界(重庆)互动科技有限公司 游戏服务器的合并方法及装置、存储介质、电子装置

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4408273A (en) * 1980-05-27 1983-10-04 International Business Machines Corporation Method and means for cataloging data sets using dual keyed data sets and direct pointers
US5237682A (en) * 1987-10-19 1993-08-17 International Business Machines Corporation File management system for a computer
US4888681A (en) * 1987-10-19 1989-12-19 International Business Machines Corporation Space management system for data files having shared access
US5701462A (en) * 1993-12-29 1997-12-23 Microsoft Corporation Distributed file system providing a unified name space with efficient name resolution
US5742806A (en) * 1994-01-31 1998-04-21 Sun Microsystems, Inc. Apparatus and method for decomposing database queries for database management system including multiprocessor digital data processing system
US5566328A (en) * 1995-01-23 1996-10-15 Tandem Computers Incorporated Reconstructing directory pathnames from file handles in a computer system
US5724512A (en) * 1995-04-17 1998-03-03 Lucent Technologies Inc. Methods and apparatus for storage and retrieval of name space information in a distributed computing system
US6189000B1 (en) * 1997-06-30 2001-02-13 Microsoft Corporation System and method for accessing user properties from multiple storage mechanisms
US6108649A (en) * 1998-03-03 2000-08-22 Novell, Inc. Method and system for supplanting a first name base with a second name base
US6654830B1 (en) * 1999-03-25 2003-11-25 Dell Products L.P. Method and system for managing data migration for a storage system
US6598038B1 (en) * 1999-09-17 2003-07-22 Oracle International Corporation Workload reduction mechanism for index tuning
US6385701B1 (en) * 1999-11-19 2002-05-07 International Business Machines Corporation Method, system and program products for sharing data between varied clients using token management
JP2003516582A (ja) * 1999-12-07 2003-05-13 データ ファウンデイション、インコーポレイテッド スケーラブルな記憶アーキテクチャ
US6460055B1 (en) * 1999-12-16 2002-10-01 Livevault Corporation Systems and methods for backing up data files
US6985901B1 (en) * 1999-12-23 2006-01-10 Accenture Llp Controlling data collection, manipulation and storage on a network with service assurance capabilities
US6195650B1 (en) * 2000-02-02 2001-02-27 Hewlett-Packard Company Method and apparatus for virtualizing file access operations and other I/O operations
US6850959B1 (en) * 2000-10-26 2005-02-01 Microsoft Corporation Method and system for transparently extending non-volatile storage
US7062490B2 (en) * 2001-03-26 2006-06-13 Microsoft Corporation Serverless distributed file system
US20020147929A1 (en) * 2001-04-10 2002-10-10 Rose Mark E. Access control for distributed content servers
US7752130B2 (en) * 2001-05-31 2010-07-06 Oracle America, Inc. Methods and systems for delivery of information upon enrollment in an internet bill presentment and payment environment
US6944785B2 (en) * 2001-07-23 2005-09-13 Network Appliance, Inc. High-availability cluster virtual server system
JP3776769B2 (ja) * 2001-08-08 2006-05-17 株式会社東芝 ファイルサーバシステムおよびその制御方法
US7065541B2 (en) * 2001-10-10 2006-06-20 International Business Machines Corporation Database migration
JPWO2003038634A1 (ja) * 2001-10-30 2005-02-24 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Maschines Corporation ネットワーク上の複数のコンピュータの間でのコラボレーションを行うための方法、システム、コンピュータ・プログラム
US7107285B2 (en) * 2002-03-16 2006-09-12 Questerra Corporation Method, system, and program for an improved enterprise spatial system
US7065618B1 (en) * 2003-02-14 2006-06-20 Google Inc. Leasing scheme for data-modifying operations
US7346664B2 (en) * 2003-04-24 2008-03-18 Neopath Networks, Inc. Transparent file migration using namespace replication

Also Published As

Publication number Publication date
CN1652102A (zh) 2005-08-10
EP1480117A3 (en) 2007-09-26
KR101169068B1 (ko) 2012-07-26
KR20040101022A (ko) 2004-12-02
JP2004348742A (ja) 2004-12-09
US7716187B2 (en) 2010-05-11
EP1480117A2 (en) 2004-11-24
CN100401286C (zh) 2008-07-09
US20040243646A1 (en) 2004-12-02

Similar Documents

Publication Publication Date Title
JP5173110B2 (ja) トランスペアレントなストレージ再編成のためのシステムおよび方法
US9986033B2 (en) Facilitating access to remote cloud services
US8645940B2 (en) Installing and executing shared applications in shared folders
US7243089B2 (en) System, method, and service for federating and optionally migrating a local file system into a distributed file system while preserving local access to existing data
US10122792B2 (en) Read-only storage device having network interface, a system including the device and a method of distributing files over a network
US6260069B1 (en) Direct data retrieval in a distributed computing system
US6795835B2 (en) Migration of computer personalization information
US8677111B2 (en) Booting devices using virtual storage arrays over wide-area networks
US20090254590A1 (en) Method of bi-directional synchronization of user data
EP1489510A2 (en) Mechanism for exposing shadow copies in a networked environment
US20050004925A1 (en) Copy-on-write mapping file system
US20090198704A1 (en) Method for automated network file and directory virtualization
US20090164738A1 (en) Process Based Cache-Write Through For Protected Storage In Embedded Devices
US20160342519A1 (en) File-based client side cache
JP4654963B2 (ja) 情報漏洩防止システム、情報漏洩防止方法、プログラムおよび記録媒体
US8332844B1 (en) Root image caching and indexing for block-level distributed application management
JP5428455B2 (ja) 仮想マシンサーバ、仮想マシン制御方法及び仮想マシン制御プログラム
US8065737B1 (en) Virus scanning for block-level distributed application management
JP2003162440A (ja) ファイルサーバおよびファイルアクセス方法
JP2003288291A (ja) コンテンツ配信システム、コンテンツ配信方法、及びコンテンツ配信プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070515

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100205

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100427

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100723

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101025

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110415

RD13 Notification of appointment of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7433

Effective date: 20110816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110816

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20121227

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees