(57)【要約】      （修正有）【課題】分散ファイルシステム環境におけるファイルアクセス管理方法及びシステムを提供する。【解決手段】分散ファイルシステム環境におけるファイルアクセス管理方法及びシステムでは、ホストコンピュータの各々は、ファイルサーバのうちの１つをターゲットファイルサーバとしてこれに接続され、かつファイルサーバの少なくとも１つに格納されたターゲットファイルにアクセスするために、ファイルアクセス要求をターゲットファイルサーバに発行する。管理コンピュータは、ファイルサーバから負荷情報を収集し、ターゲットファイル及びターゲットファイルサーバの位置を特定することによって負荷情報を分析し、この分析に基づいて、ファイルサーバ間にターゲットファイルを再分散し、ホストコンピュータとターゲットファイルサーバとの間の接続を再割り当てする。【選択図】図１ａ
2012064197.tif 000002
【特許請求の範囲】
【請求項１】
複数のホストコンピュータと、ネットワークと、それぞれ少なくとも１つ以上のファイルを格納する複数のファイルサーバとを備えるシステムにおいて、ファイルアクセスを管理する方法であって、前記ホストコンピュータの各々は、前記ネットワークを介して前記ホストコンピュータの前記各々に対応付けられたターゲットファイルサーバに接続され、かつ前記ファイルサーバのうちの１つに格納されたターゲットファイルにアクセスするために、ファイルアクセス要求を前記ターゲットファイルサーバに発行するものであり、
前記ファイルサーバから負荷情報を収集することと、
前記ターゲットファイル及び前記ターゲットファイルサーバの位置を特定することによって、前記負荷情報を分析することと、
前記ファイルサーバ間で前記ターゲットファイルを再分散することと、
前記ホストコンピュータと前記ターゲットファイルサーバとの間の接続を再割り当てすることと
を含む、ファイルアクセス管理方法。
【請求項２】
前記ネットワークが、フロントエンドネットワークと、バックエンドネットワークとを備え、前記ホストコンピュータの前記各々が、前記フロントエンドネットワークを介して前記ターゲットサーバに前記ファイルアクセス要求を発行し、かつ前記ファイルサーバのうちの１つが、前記バックエンドネットワークを介して他のファイルサーバと通信する、請求項１に記載の方法。
【請求項３】
前記システムが、前記ネットワークを介して前記ホストコンピュータ及びファイルサーバと通信する管理コンピュータをさらに備える、請求項１に記載の方法。
【請求項４】
前記負荷情報の前記収集が、前記管理コンピュータで実行される、請求項３に記載の方法。
【請求項５】
前記負荷情報が、前記ホストコンピュータの前記各々の名前と、前記ターゲットファイルの名前と、転送サイズとを含む、請求項１に記載の方法。
【請求項６】
前記転送サイズが、前記ターゲットファイルへのアクセスについての前記ファイルアクセス要求の全体サイズである、請求項５に記載の方法。
【請求項７】
前記ホストコンピュータの前記各々が、ルートディレクトリと、少なくとも１つ以上のファイルを有するサブディレクトリとを含むファイルツリーを使用することによって、前記ターゲットファイルにアクセスする、請求項１に記載の方法。
【請求項８】
前記ターゲットサーバ以外のファイルサーバが前記ターゲットファイルを格納している場合、前記ターゲットサーバが、前記ファイルアクセス要求を前記ターゲットサーバ以外の前記ファイルサーバにリダイレクトする、請求項１に記載の方法。
【請求項９】
前記負荷情報が、前記ターゲットサーバの名前と、前記リダイレクトされたファイルサーバの名前とを含む、請求項５及び８に記載の方法。
【請求項１０】
前記ターゲットファイルが、前記転送サイズに従って再分散される、
請求項５に記載の方法。
【請求項１１】
前記ターゲットファイルの前記再分散が、前記ターゲットファイルを前記ターゲットファイルサーバに移動することを含む、請求項８に記載の方法。
【請求項１２】
前記再割り当てが、前記ホストコンピュータのうちの１つを前記ターゲットサーバ以外の前記ファイルサーバのうちの１つのファイルサーバに接続し、かつ前記ファイルサーバのうちの前記１つのファイルサーバを新規ターゲットファイルサーバとして指定することを含む、請求項１に記載の方法。
【請求項１３】
複数のホストコンピュータと、
ネットワークと、
前記ネットワークを介して前記ホストコンピュータに接続される複数のファイルサーバであって、各ファイルサーバが、少なくとも１つ以上のファイルを格納する、複数のファイルサーバと、
前記ネットワークを介して前記ホストコンピュータ及び前記複数のファイルサーバと通信する管理コンピュータと
を含むシステムであって、
前記複数のホストコンピュータの各々が、前記複数のファイルサーバのうちの１つに格納されたターゲットファイルにアクセスするために、ファイルアクセス要求をターゲットファイルサーバに発行するように構成され、
前記管理コンピュータが、前記ファイルサーバから負荷情報を収集するように構成され、
前記管理コンピュータが、前記ターゲットファイル及び前記ターゲットファイルサーバの位置を特定することによって、前記負荷情報を分析するように構成され、
前記管理コンピュータが、前記ファイルサーバ間で前記ターゲットファイルを再分散するように構成され、かつ
前記管理コンピュータが、前記ホストコンピュータと前記ターゲットファイルサーバとの間の接続を再割り当てするように構成される、システム。
【請求項１４】
前記ネットワークが、フロントエンドネットワークと、バックエンドネットワークとを備え、前記ホストコンピュータの前記各々が、前記フロントエンドネットワークを介して前記ターゲットサーバにファイルアクセス要求を発行し、かつ前記ファイルサーバのうちの１つが、前記バックエンドネットワークを介して他のファイルサーバと通信する、請求項１３に記載のシステム。
【請求項１５】
前記負荷情報が、前記ホストコンピュータの前記各々の名前と、前記ターゲットファイルの名前と、転送サイズとを含む、請求項１３に記載のシステム、
【請求項１６】
前記ターゲットサーバ以外のファイルサーバが前記ターゲットファイルを格納している場合、前記ターゲットサーバが、前記ファイルアクセス要求を前記ターゲットサーバ以外の前記ファイルサーバにリダイレクトするように構成される、請求項１３に記載のシステム。
【請求項１７】
前記ターゲットファイルが、前記転送サイズに従って再分散される、請求項１５に記載のシステム。
【請求項１８】
前記ターゲットファイルの前記再分散が、前記ターゲットファイルを前記ターゲットファイルサーバに移動することを含む、請求項１６に記載のシステム、
【請求項１９】
前記再割り当てが、前記ホストコンピュータのうちの１つを前記ターゲットサーバ以外の前記ファイルサーバのうちの１つのファイルサーバに接続し、かつ前記ファイルサーバのうちの前記１つのファイルサーバを新規ターゲットファイルサーバとして指定することを含む、請求項１３に記載のシステム、
【発明の詳細な説明】
【技術分野】
【０００１】
０００１    本発明は、概して、分散ファイルシステムにおけるファイルアクセス管理方法及びシステムに関する。
【背景技術】
【０００２】
０００２    一般に、分散ファイルシステムは、非分散ファイルシステムよりも高い性能及び大きいストレージ容量を実現するために使用される。分散ファイルシステムのアプローチの１つは、「インバウンド」アプローチと呼ばれ、このアプローチでは、ホストコンピュータの各々は、複数のファイルサーバのうちの１つをターゲットサーバとしてこれに要求を発行し、ターゲットサーバは、ターゲットファイルにアクセスするために、ターゲットファイルが位置するファイルサーバに要求をリダイレクトする。このリダイレクトの方法は、ホストコンピュータが、ファイルサーバのうちの１つに接続することによって、ファイルサーバに格納された全ファイルにアクセスすることを可能にする。しかし、ターゲットファイルが接続されたファイルサーバに格納されていない場合は、接続されたファイルサーバは、ターゲットファイルを格納しているファイルサーバに対して、従って、バックエンドネットワークの帯域幅及び各ファイルサーバのＣＰＵ負荷を消費するファイルサーバに対して繰り返しリダイレクトする必要があり、Ｉ／Ｏ要求のレイテンシが長くなる。
【０００３】
０００３    この状況では、負荷バランシングは、複数のサーバに割り当てられた１つのサーバだけによって引き起こされる性能ボトルネックを避けるための有用な方法である。負荷バランシングを使用することによって、分散ファイルシステムからなる各ファイルサーバは、全ファイルサーバが等しく過剰な負荷を有するまで、ＣＰＵ容量又は他のリソースの飽和を引き起こす可能性は低い。
【０００４】
０００４    例えば、米国特許第６,８８６,０３５号は、分散ネットワークに関連するボトルネック及び不利な点についての問題を扱っており、クライアントたちがクライアント間のスループット及びノードによってアクセスされるリソースを最適化することを可能にする負荷バランシングの方法を開示している。より具体的には、米国特許第６,８８６,０３５号は、リソースについてのクライアントの要求が、利用条件に従って、１つのサーバノードから他のサーバノードにリダイレクトされる方法を開示する。
【０００５】
０００５    しかし、米国６,８８６,０３５で開示される発明は、クライアントとファイルサーバの間の負荷バランシングを対象とするだけで、ファイルサーバ間の過負荷を解決しない。従って、ファイルサーバ間の負荷バランシング、並びにクライアントとファイルサーバとの間の負荷バランシングを考慮する必要がある。
【発明の概要】
【０００６】
０００６    本発明の実施形態は、分散ファイルシステム環境におけるファイルアクセス管理方法及びシステムを提供する。提供される方法及びシステムでは、ホストコンピュータの各々は、ファイルサーバのうちの１つをターゲットファイルサーバとしてこれに接続され、かつファイルサーバのうちの少なくとも１つに格納されたターゲットファイルにアクセスするために、ファイルアクセス要求をターゲットファイルサーバに発行する。管理コンピュータは、ファイルサーバから負荷情報を収集し、ターゲットファイル及びターゲットファイルサーバの位置を特定することによって負荷情報を分析し、かつこの分析に基づいて、ターゲットファイルをファイルサーバ間に再分散し、ホストコンピュータとターゲットファイルサーバの間の接続を再割り当てする。
【０００７】
０００７    本発明の一実施形態では、ホストコンピュータとファイルサーバは、フロントエンドネットワークを介して接続され、ホストコンピュータは、フロントエンドネットワークを介してファイルアクセス要求を発行する。ファイルサーバは、バックエンドネットワークを介して通信され、また、ターゲットファイルサーバがターゲットファイルを格納していない場合は、ターゲットファイルサーバは、バックエンドネットワークを介してファイルアクセス要求を別のファイルサーバにリダイレクトする。
【０００８】
０００８    本発明の他の実施形態では、負荷情報は、管理コンピュータで収集される。負荷情報は、少なくともホストコンピュータ名と、ターゲットファイル名と、転送サイズを含み、オプションとして、ターゲットファイルサーバ名と、リダイレクトされたファイルサーバ名とを含むため、ホストコンピュータと、ターゲットファイルが位置するターゲットファイルサーバとの間の転送サイズは、負荷情報から理解することができる。
【０００９】
０００９    本発明のさらに別の実施形態では、ホストコンピュータの各々は、ファイルツリーを使用して、ターゲットファイルにアクセスする。ファイルツリーは、ルートディレクトリと、少なくとも１つ以上のファイルを有するサブディレクトリとから成るため、ホストコンピュータの各々は、ターゲットファイルサーバによって提供されるファイルツリーを参照することによって、指定されたターゲットファイルサーバにアクセスすることができる。
【００１０】
００１０    本発明のさらに別の実施形態では、転送サイズに従って、ターゲットファイルは、１つのファイルサーバから他のファイルサーバに移動されるため、転送サイズは、ファイルサーバ間で良好にバランスが取られ、ホストコンピュータとファイルサーバとの間のトラフィックが少なくなる。
【００１１】
００１１    本発明のさらに別の実施形態では、転送サイズに従って、ホストコンピュータは、もともと割り当てられたターゲットファイルサーバから、異なるターゲットファイルサーバに再割り当てされるため、転送サイズは、ファイルサーバ間で良好にバランスが取られ、ホストコンピュータとファイルサーバとの間のトラフィックが少なくなる。
【００１２】
００１２    本発明のさらに別の実施形態では、転送サイズに従って、ターゲットファイルは、１つのファイルサーバから他のファイルサーバに移動され、ホストコンピュータは、もともと割り当てられたターゲットファイルサーバから、異なるターゲットファイルサーバに再割り当てされるため、転送サイズは、ファイルサーバ間で良好にバランスが取られ、ホストコンピュータとファイルサーバとの間のトラフィックは少なくなる。
【図面の簡単な説明】
【００１３】
【図１ａ】００１３    図１（ａ）は、本実施態様の方法が実施される情報システムの概要の一例を示す。
【図１ｂ】００１３    図１（ｂ）は、本実施態様の方法が実施される情報システムの概要の一例を示す。
【図１ｃ】００１３    図１（ｃ）は、本実施態様の方法が実施される情報システムの概要の一例を示す。
【図２】００１４    図２は、本発明の実施形態の１つの分散ファイルシステムの一例を示す。
【図３】００１５    図３は、ホストコンピュータがファイルサーバにおけるファイルへのアクセスを要求する情報システムの一例を示す。
【図４ａ】００１６    図４（ａ）は、負荷統計についての接続テーブルの一例を示す。
【図４ｂ】００１６    図４（ｂ）は、各ホストコンピュータからのファイルアクセスについてのファイルアクセス統計を示すファイルアクセスログを示す。
【図５】００１７    図５は、本発明の実施形態の１つに従った負荷バランシングプロセスのフローチャートを示す。
【図６ａ】００１８    図６（ａ）は、ホストコンピュータがファイルサーバにおけるファイルへのファイルシステムを要求する情報システムの他の例を示す。
【図６ｂ】００１８    図６（ｂ）は、図６（ａ）に示される情報システムのために用いられる接続テーブルを示す。
【図６ｃ】００１８    図６（ｃ）は、図６（ａ）に示される各ホストコンピュータからのファイルアクセスのファイルアクセス統計を示すファイルアクセスログを示す。
【図７ａ】００１９    図７（ａ）は、近似解法による負荷バランシングが図６（ａ）で示されるシステムに対して実行された後の情報システムを示す。
【図７ｂ】００１９    図７（ｂ）は、図７（ａ）で示される情報システムのために使用される接続テーブルを示す。
【図７ｃ】００１９    図７（ｃ）は、図７（ａ）で示される各ホストコンピュータからのファイルアクセスについてのファイルアクセス統計を示すファイルアクセスログを示す。
【発明を実施するための形態】
【００１４】
００２０    本発明の典型的な実施形態は、下記でより詳細に説明するように、ホストコンピュータとファイルサーバとの接続の間の負荷情報を特に考慮した、分散ファイルシステム環境におけるファイルアクセス管理方法及び方法を提供する。
【００１５】
００２１    図１（ａ）、図１（ｂ）、及び図１（ｃ）は、本実施態様の方法が実施される情報システム概要１００の一例を示す。図１（ａ）では、複数のホストコンピュータ１４０Ａ〜１４０Ｃと、フロントエンドネットワーク１５０と、ストレージシステム１１０とが示される。基本的に、各ホストコンピュータ１４０Ａ、Ｂ、又はＣは、ストレージシステム１１０のユーザであり、ターゲットファイルへのアクセス要求を含むファイルＩ／Ｏを、ネットワークインタフェース（Ｉ／Ｆ）１５１Ａ、Ｂ、又はＣを使用して、そしてフロントエンドネットワーク１５０を介して、ターゲットファイルサーバ１２０Ａ、Ｂ、又はＣのそれぞれに発行する。
【００１６】
００２２    ネットワークインタフェースについては、ＮＦＳ（ネットワークファイルシステム）、ＣＩＦＳ（コモンインターネットファイルシステム（Common Internet File System））、及びＡＦＰ（アップルファイリングプロトコル）などのファイルＩ／Ｏ用の共通プロトコルがいくつかある。さらに、各ホストコンピュータは、様々な目的で他のコンピュータと通信することができる。
【００１７】
００２３    ストレージシステム１１０は、複数のファイルサーバ１２０Ａ〜１２０Ｃ、そしてオプションでバックエンドネットワーク１５２及び管理コンピュータ１６０を含む。ファイルサーバ１２０Ａ〜１２０Ｃは、フロントエンドネットワーク１５０を介してホストコンピュータ１４０Ａ〜１４０ＣからファイルＩ／Ｏを受信する。バックエンドネットワーク１５２が実装された場合、ファイルサーバ１２０は、ネットワークインタフェース１５１を使用してバックエンドネットワーク１５２を介して通信する。このネットワークは、データを移動するため、メタデータを交換するため、又は分散ファイルシステムを制御するために使用することもできる。そうでなければ、バックエンドネットワーク１５２の機能をフロントエンドネットワーク１５０にマージすることが可能である。
【００１８】
００２４    図１（ｂ）で示されるように、ファイルサーバ１２０Ａは、例えば、ＣＰＵ１２１と、メモリ１２２と、ストレージインタフェース１３１と、ネットワークインタフェース１５１とをさらに含む。また、ファイルサーバ１２０は、記憶媒体１３２を有し得る。ＣＰＵ１２１は、メモリ１２２内のプログラムを実行する際に、ファイルサーバ１２０内のデバイスを制御する。メモリ１２２は、分散ファイルシステムプログラム１２３、ネットワークファイル処理プログラム１２４、及び負荷統計収集プログラム１２７などのいくつかのプログラムを格納する。また、メモリ１２２は、負荷統計１２５及びバッファキャッシュ１２６も格納する。特に、ＣＰＵ１２１は、ファイルＩ／Ｏ要求を処理し、かつ分散ファイルシステムプログラム１２３を参照して、ストレージインタフェース１３１を介して接続される記憶媒体１３２Ａ〜１３２Ｃ又はストレージアレイ１３３からデータを読み出す／に書き込む。ＦＣ（ファイバチャネル）、ＳＡＴＡ（Serial Attached Technology Attachment）、ＳＡＳ（Serial Attached SCSI）、ＩＤＥ（Integrated Device Electronics）、又は他のインタフェースは、ＣＰＵ１２１とストレージインタフェース１３１との間の通信のために使用される。ファイルサーバ１２０は、ＨＤＤ（ハードディスクドライブ）、ＳＳＤ（ソリッドステートドライブ）、フラッシュメモリ、光ディスク、及び磁気テープ、並びにＲＡＩＤ（Redundant Array of Independent Disk）技術によるそれらのアレイなどの多くの種類の記憶媒体を有することができる。ストレージアレイ１３３は、ファイルサーバ１２０並びに記憶媒体１３２の外部アレイとして使用することができる。ＣＰＵ１２１は、メモリ１２２上に負荷統計１２５を作成かつ格納する。負荷統計１２５は、分散ファイルシステムプログラム１２３、ネットワークファイル処理プログラム１２４、及びファイルサーバ１２０からのその他のあらゆる状態を通して、ファイルサーバに位置するメモリ１２２に格納された負荷統計収集プログラム１２７によって収集される。各ファイルサーバ１２０は、ネットワークインタフェース１５１を有しているので、ネットワークインタフェース１５１を用いて他のファイルサーバ１２０、ホストコンピュータ１４０、及び管理コンピュータ１６０と通信することができる。
【００１９】
００２５    図１（ｃ）は、ストレージシステム１００にオプションで含まれる、管理コンピュータ１６０の一例を示す。管理コンピュータ１６０は、ＣＰＵ１６１と、メモリ１６２と、ネットワークインタフェース１５１とを含む。ＣＰＵ１６１は、メモリ１６２内のプログラムを実行する際に、管理コンピュータ１６０内のデバイスを制御する。ＣＰＵ１６１は、ファイルサーバ１２０から負荷統計１２５を、情報システム１００のコンピュータからその他あらゆる情報を収集し、統計に基づいて分析を行い、負荷分析プログラム１６３を参照することによって、より良い負荷バランシングを達成するために計算する。分析及び計算の結果に基づいて、ＣＰＵ１６１は、リソース再割り当てプログラム１６２を参照することによって、リソース再割り当てのためにファイルサーバ１２０間でファイルを移動するように、ファイルサーバ１２０に対して指示する。ＣＰＵ１６１はさらに、接続再割り当てプログラム１６５を参照することによって、ホストコンピュータ１４０とファイルサーバとの間の接続を再割り当てするように、情報システム１１０のホストコンピュータ又は他の構成要素に対して指示する。これらのプログラムによって実行される機能は、異なる管理コンピュータ又はファイルサーバに位置する同じプログラムによって実行することができる。
【００２０】
００２６    ＤＦＳ（分散ファイルシステム）は、ある種のネットワークファイルシステムである。バックエンドネットワーク１５２を共有するファイルサーバ１２０が１つのファイルシステムを構築する場合、ファイルシステムは、ある種の分散ファイルシステムと見なされる。ファイルサーバ間でデータを分散させる方法について異なる種類のＤＦＳがある。いくつかの実装では、ページ単位でデータを分散し得るが、一方、他の実装は、ディレクトリ単位で分散を行うか、各ファイルを複数のセグメントに分割してからファイルサーバ間でこのセグメントを分散し得る。本発明の実施形態はすべての種類のＤＦＳに適用することができ、特定の種類のＤＦＳに限定されないが、本実施形態は、ファイルサーバの間のファイル単位の分散及び移動をサポートするＤＦＳ、及びそのターゲットファイルへのアクセスのためにただ１つのファイルサーバをターゲットファイルサーバとしてこれにアクセスするＤＦＳに焦点を当てる。
【００２１】
００２７    図２は、本発明の実施形態のうちの１つのＤＦＳの一例を示す。ファイルツリー２００はファイル階層を示し、ファイルサーバ１４０に接続するホストコンピュータ１２０のいずれも、ファイルツリー２００に示される任意のファイルにアクセスすることができる。ファイルツリー２００は、ルート２１０とサブディレクトリ２１１、２１２、及び２１３とを有し、その各々は、ファイル１（２２１）、ファイル２（２２２）、及びファイル３（２２３）などの１つ以上のファイルを有する。本実施形態では、各ファイルは、ファイルサーバＸ（２３０）、Ｙ（２３１）、又はＺ（２３３）に格納される。例えば、ファイル１（２２１）（パス名が「/root/dirA/file1/」）は、ファイルサーバＸ（２３０）に格納される。ＤＦＳがファイル単位でデータを分散するので、同じディレクトリのファイル１（２２１）、ファイル２（２２２）、又はファイル３（２２３）は、異なるファイルサーバＸ（２３０）、Ｙ（２３１）、又はＺ（２３２）に分散されるが、ファイルサーバＸ（２３０）、Ｙ（２３１）、又はＺ（２３２）は、異なるディレクトリからのファイルを格納する。従って、１つのファイルサーバから他のファイルサーバにファイルを移動することができるが、ファイルツリーは、移動の有無にかかわらず同じままとなる。よって、ホストコンピュータ１４０には見えない状態で移動を実行することができる。
【００２２】
００２８    図３は、ホストコンピュータがファイルサーバにおけるファイルへのアクセスを要求する、情報システム３００の一例を示す。図３は特に、「インバンド」アプローチを示している。各ホストサーバ３１０、３１１、又は３１２は、ファイルＩ／Ｏ要求（ファイルアクセス要求）を１つのファイルサーバ（例えば、図３のファイルサーバ２３０）に発行する。どのファイルサーバが各ホストコンピュータに接続されるかは、分散ファイルシステムに依存する。例えば、ホストコンピュータＡ３１０は、そのターゲットファイルサーバがファイルサーバＸ２３０となるように選択することができる。別の例としては、ＤＮＳ（ドメインネームシステム）サーバなどの外部サーバが、ホストコンピュータがどのファイルサーバに接続すべきかを回答するということである。
【００２３】
００２９    ファイルサーバＸ２３０、Ｙ２３１、及びＺ２３２は、各ファイルサーバがどのファイルを管理するかについての情報を交換するため、かつクライアントホストコンピュータにファイルツリー全体を示すために互いに通信する。従って、ホストコンピュータＡ３１０は、どのファイルがファイルサーバＸ２３０、Ｙ２３１、及びＺ２３２に格納されているかを知っている。ホストコンピュータＡ３１０がファイル３３１「/root/dirA/file1」に対するファイルＩ／Ｏ要求３４０（ファイルアクセス要求）を発行した場合、要求を受信するファイルサーバＸ２３０は、ターゲットファイル３３１を有し、従って、直ちにターゲットファイル３３１をホストコンピュータＡ３１０に返信することができる。しかし、ホストコンピュータＡ３１０がファイル３３３「/root/dirA/file3」に対するファイルＩ／Ｏ要求３４０を発行した場合、受信するファイルサーバＸ２３０がターゲットファイル３３１を有していないので、矢印３４１で示されるように、バックエンドネットワーク１５２を介して、ターゲットファイル３３３を格納するファイルサーバＹ２３１にＩ／Ｏ要求をリダイレクトする。その後、ファイルサーバＹ２３１は、要求を処理し、ファイルサーバＸ２３０に応答し、次にファイルサーバＸ２３０は、この応答を要求元のホストコンピュータＡ３１０にリダイレクトする。
【００２４】
００３０    図４（ａ）は、負荷統計のための接続テーブル４００の一例を示す。図１（ｃ）の管理コンピュータ１６０の負荷分析プログラム１６３は、負荷分析のための情報を収集する。接続テーブルは、どのホストコンピュータ（ホスト名４０１で示される）がどのファイルサーバ（ターゲットファイルサーバ４０２で示される）に接続するかを示す。図４（ｂ）は、各ホストコンピュータからのファイルアクセスのファイルアクセス統計を示すファイルアクセスログ４１０を示す。ファイルアクセスログは、ホスト名４１１（ホストコンピュータを示す）、ターゲットファイルサーバ４１２（ホストコンピュータがターゲットとして通信するファイルサーバを示す）、リダイレクトされたファイルサーバ４１３（ホストコンピュータのターゲットファイルを格納し、かつホストコンピュータからのファイルアクセス要求がリダイレクトされる先のファイルサーバ）、ファイル名４１４（ホストコンピュータのターゲットファイル名）、及び転送サイズ４１５（ファイルのついてのＩ／Ｏの全体サイズ）を含むが、これらに限定されないエントリを有する。ターゲットファイルサーバ４１２エントリ及びリダイレクトされたファイルサーバ４１３エントリは、オプションとして含めることができる。なぜならば、接続テーブル４００を参照することによってターゲットファイルサーバを知ることが容易だからであり、かつどのファイルサーバがターゲットファイルを格納しているかを知ることによって、リダイレクトされたファイルサーバを知ることが容易だからである。また、ファイルサーバ１２０のリソース使用（ＣＰＵ負荷及びメモリ使用など）、又はフロントエンドネットワーク１５０のスループットは、負荷情報として含めることができる。
【００２５】
００３１    図５は、本発明の実施形態の１つに従った負荷バランシングプロセスのフローチャート５００を示す。管理コンピュータ１６０の負荷分析プログラム１６３は、管理者によって指定されたタイミングで、周期的に、又は負荷飽和などのいくつかのイベントが情報システムで生じた時に、負荷バランシング分析を実行する。
【００２６】
００３２    プロセスの最初に、負荷分析プログラム１６３は、図５で示される情報など、ファイルサーバから負荷統計を収集する（ステップ５１０）。ステップ５２０では、負荷分析プログラム１６３は、ファイルサーバから収集された負荷統計に基づいた負荷最適化を実行する。特に、負荷分析プログラム１６３は、ファイルサーバＸ（２３０）、Ｙ（２３１）、及びＺ（２３２）の間で負荷を分散し、かつストレージシステムの合計負荷を下げるために、接続テーブル４００及びファイルアクセスログ４１０を参照して、ホストコンピュータによってターゲットされる各ファイル、及びターゲットファイルサーバの位置を特定する。
【００２７】
００３３    ステップ５３０では、負荷分析プログラム１６３は、リソース再割り当てを実行する。特に、リソース再割り当てプログラム１６４は、ステップ５２０で実行された負荷最適化の結果を受信した後、リソースを再割り当てする。この実施形態では、リソース再割り当ては、ファイルサーバＸ（２３０）、Ｙ（２３１）、及びＺ（２３２）の間のファイル移動を意味する。
【００２８】
００３４    ステップ５４０では、負荷分析プログラム１６３は、ホストコンピュータＡ（３１０）、Ｂ（３１１）、及びＣ（３１２）と、ターゲットファイルサーバＸ（２３０）、Ｙ（２３１）、及びＺ（２３２）との間の接続の再割り当てを実行する。特に、接続再割り当てプログラム１６５は、リソース再割り当ての結果を受信した後、ホストコンピュータＡ（３１０）、Ｂ（３１１）、及びＣ（３１２）と、ターゲットファイルサーバＸ（２３０）、Ｙ（２３１）、及びＺ（２３２）との間の接続を再割り当てする。この場合、接続再割り当てプログラム１６５は、ホストコンピュータ、ファイルサーバ、及び／又は接続を管理するその他あらゆるコンピュータ（ＤＮＳなど）と通信し、これらへの接続の変更の要求を発行する。
【００２９】
００３５    図６及び図７は、負荷バランシングがどのように実行されるかをより詳細に示すための一例を示す。図６（ａ）は、ホストコンピュータがファイルサーバにおけるファイルへのファイルアクセスを要求する、情報システム６００の別の例を示す。例示されたシステムでは、ホストコンピュータＡ６０１ａ及びホストコンピュータＢ６０１ｂはファイルサーバＸ６０２ａに、ホストコンピュータＣ６０１ｃ及びホストコンピュータＤ６０１ｄはファイルサーバＹ６０２ｂに、それぞれアクセスする。ファイルサーバＸ６０２ａは、ファイルａ６０３ａ、ファイルｂ６０３ｂ、及びファイルｃ６０３ｃを格納し、ファイルサーバＹ６０２ｂは、ファイルｄ６０３ｄ、ファイルｅ６０３ｅ、及びファイルｆ６０３ｆを格納する。実線６０４ａ及び６０４ｂは、ホストコンピュータＡ６０４ａ及びホストコンピュータＢ６０４ｂがファイルサーバＸ６０２ａへのアクセス要求を発行し、ホストコンピュータＣ６０４ｃ及びホストコンピュータＤ６０４ｄがファイルサーバＹ６０２ｂへのアクセス要求を発行することを示し、点線は、各ホストコンピュータがターゲットファイル（単数又は複数）へのファイルアクセス要求を発行することを示す。
【００３０】
００３６    図６（ｂ）は、情報システム６００のために使用される接続テーブル６６０を示す。接続テーブル６６０は、どのホストコンピュータ（ホスト名４０１で示される）がどのファイルサーバ（ターゲットファイルサーバ４０２で示される）に接続するかを示す。図６（ｃ）は、各ホストコンピュータからのファイルアクセスのためのファイルアクセス統計を示す、ファイルアクセスログ６７０を示す。ファイルアクセスログは、ホスト名４１１（ホストコンピュータを示す）、ターゲットファイルサーバ４１２（ホストコンピュータがターゲットとして通信するファイルサーバを示す）、リダイレクトされたファイルサーバ４１３（ホストコンピュータのターゲットファイルを格納し、かつホストコンピュータからのファイルアクセス要求がリダイレクトされる先のファイルサーバ）、ファイル名４１４（ホストコンピュータのターゲットファイル名）、及び転送サイズ４１５（ファイルのついてのＩ／Ｏの全体サイズ）を含むエントリを有する。ターゲットファイルサーバ４１２エントリ及びリダイレクトされたファイルサーバ４１３エントリは、オプションとして含むことができる。なぜならば、接続テーブル６６０を参照することによってターゲットファイルサーバを知ることが容易だからであり、かつどのファイルサーバがターゲットファイルを格納しているかを知ることによって、リダイレクトされたファイルサーバを知ることが容易だからである。
【００３１】
００３７    簡単にするために、この例では、各ファイル６０３ａ〜６０３ｆのサイズが同じであることを想定している。この状況では、一見すると、負荷は良好にバランスが取れているように見える。なぜなら、各ファイルサーバＸ６０２ａ又はＹ６０２ｂが同じ数のファイル（３個のファイル）を有し、同じ数のホストコンピュータ（２台）からＩ／Ｏ要求を受信しているからである。しかし、図６（ａ）及びファイルアクセスログ６７０で示されるように、３つのノード間通信が残っている。ファイルアクセスログ６７０では、エントリ６７１ｃ、６７１ｄ、及び６７１ｅは、ターゲットファイルサーバ４１２とリダイレクトされたファイルサーバ４１３との間の違いを示し、ノード間通信を示している。これらのエントリは、ノード間通信の全体サイズが現在１００ＭＢ／分であることを示す。
【００３２】
００３８    図５の上述の負荷最適化ステップ５２０では、負荷分析プログラム１６３は、ノード間通信を減らすことによって負荷最適化を実行し得る。負荷最適化を実行する例の１つとして、ブルートフォース法が実施され得る。この方法では、負荷分析プログラム１６３は、各割り当てパターンを計算し、最良の結果を選択する。図６（ａ）では、ホストコンピュータＡ（６０１ａ）〜ホストコンピュータＤ（６０１ｄ）がそれぞれファイルサーバＸ（６０２ａ）又はファイルサーバＹ（６０２ｂ）に接続し、ファイルａ（６０３ａ）〜ファイルｆ（６０３ｆ）がそれぞれファイルサーバＸ（６０２ａ）又はファイルサーバＹ（６０２ｂ）に配置されていると想定しており、ホストコンピュータ／ファイルサーバ接続パターンは１６となり、ファイル割り当てパターンは６４となり、従って１０２４のパターンが得られる。負荷分析プログラム１６３は、例えば、各パターンの転送サイズを分析し、すべての中から最良のものを選択する。このアプローチは、接続／割り当てのパターンがそれほど多くない場合に効果的であるが、パターンが多く、ホストコンピュータ、ファイルサーバ、及びファイルの数が増えるにつれて複雑さが増す場合は不適当である。
【００３３】
００３９    負荷最適化を実行するための別のアプローチとして、複雑さが増す場合に、近似解法が有用となり得る。近似解法に従って、負荷分析プログラム１６３は、相互接続の数を少なくする。図７（ａ）は、ホストコンピュータがファイルサーバにおけるファイルへのファイルアクセスを要求する、情報システム７００のさらに別の例を示す。図７（ａ）では、ホストコンピュータＢ（７０１ｂ）は、今度はファイルサーバＹ（７０２ｂ）に接続し、ホストコンピュータＣ（７０１ｃ）は、ファイルサーバＸ（７０２ａ）に接続する。ファイルｃ（７０３ｃ）は、ファイルサーバＹ（７０２ｂ）に移動され、ファイルｅ（７０３ｅ）は、ファイルサーバＸに移動される。この実施形態では、図７（ａ）のホストコンピュータとターゲットファイルサーバとの間の接続の数は、図６（ａ）のシステムにおける接続の数と同じであり、図７（ａ）でファイルサーバ毎に割り当てられるファイルの数も、図６（ａ）におけるファイルの数と同じである。しかし、図７（ａ）のファイルサーバ間の相互接続の数は、図６（ａ）よりも少ない。図７（ａ）は、ファイルサーバＸ（７０２ａ）とファイルサーバＹ（７０２ｂ）との間のただ１つの相互接続を示す。
【００３４】
００４０    図７（ｂ）は、情報システム７００のために使用される接続テーブル７６０を示す。接続テーブル７６０は、どのホストコンピュータ（ホスト名４０１で示される）がどのファイルサーバ（ターゲットファイルサーバ４０２で示される）に接続するのかを示す。図７（ｃ）は、各ホストコンピュータからのファイルアクセスのためのファイルアクセス統計を示す、ファイルアクセスログ７７０を示す。ファイルアクセスログは、ホスト名４１１（ホストコンピュータを示す）、ターゲットファイルサーバ４１２（ホストコンピュータがターゲットとして通信するファイルサーバを示す）、リダイレクトされたファイルサーバ４１３（ホストコンピュータのターゲットファイルを格納し、かつホストコンピュータからのファイルアクセス要求がリダイレクトされる先のファイルサーバ）、ファイル名４１４（ホストコンピュータのターゲットファイル名）、及び転送サイズ４１５（ファイルについてのＩ／Ｏの全体サイズ）を含むエントリを有する。ターゲットファイルサーバ４１２エントリ及びリダイレクトされたファイルサーバ４１３エントリは、オプションとして含むことができる。なぜなら、接続テーブル７６０を参照することによってターゲットファイルサーバを知ることが容易だからであり、かつどのファイルサーバがターゲットファイルを格納しているかを知ることによって、リダイレクトされたファイルサーバを知ることが容易だからである。図７（ｃ）は、ターゲットファイルサーバエントリ４１２にリストされたターゲットファイルサーバが、リダイレクトされたファイルサーバエントリ４１３にリストされたファイルサーバと基本的に同じであることを示す。本実施形態は、ファイルサーバ間の相互接続の数を減らすことによって、ファイルサーバＸ（７０２ａ）及びＹ（７０２ｂ）の合計負荷の削減を達成する。
【図１ａ】
2012064197.tif 000003
【図１ｂ】
2012064197.tif 000004
【図１ｃ】
2012064197.tif 000005
【図２】
2012064197.tif 000006
【図３】
2012064197.tif 000007
【図４ａ】
2012064197.tif 000008
【図４ｂ】
2012064197.tif 000009
【図５】
2012064197.tif 000010
【図６ａ】
2012064197.tif 000011
【図６ｂ】
2012064197.tif 000012
【図６ｃ】
2012064197.tif 000013
【図７ａ】
2012064197.tif 000014
【図７ｂ】
2012064197.tif 000015
【図７ｃ】
2012064197.tif 000016
【外国語明細書】
2012064197000001.pdf