(57)【要約】【課題】従来の技術においては、記憶装置システムに格納されるファイルの急増に伴い、ファイルへの迅速かつ簡単なアクセスが困難となっている。また、ファイルの属性情報は、ユーザが指定するファイルの特定やファイル管理のために重要な情報あり、多様な属性情報を記憶装置システム内で管理する必要がある。【解決手段】記憶装置システムは、ファイルアクセス制御用メモリ内に、ファイルの内容を管理するインデックス情報及び検索プログラムと、ファイルの属性情報を管理するデータベースと、ファイルを構成するブロックの格納位置を管理するデータベースを持つ。記憶装置システムがファイルへのアクセス要求を受信した場合には、これらのデータベースを利用してアクセス対象のファイルへアクセスする。【選択図】  図５
2004310621.tif 000002
【特許請求の範囲】
【請求項１】
複数のディスクと、該複数のディスクに接続され、該複数のディスクを制御するディスクコントローラとを有する記憶装置システムが、記憶装置システムに接続される計算機から受信したアクセス要求に応じて、該記憶装置システムに記憶されているファイルにアクセスする方法であって、
前記ディスクコントローラが、記憶装置システムに記憶されているファイルの内容であるファイルデータから一部を選択して、選択されたデータをインデックスとして管理するインデックス作成ステップと、
前記ディスクコントローラが、前記計算機から、ファイルを特定するために用いられるファイル関連情報を有するアクセス要求を受信するアクセス要求受信ステップと、
前記ディスクコントローラが、インデックスを前記ファイル関連情報をキーとして検索するインデックス検索ステップと、
前記インデックス検索ステップにおいてアクセス対象のファイルが特定された場合に、前記ディスクコントローラが、該特定されたファイルのデータにアクセスするよう制御するファイルアクセスステップとを有することを特徴とするファイルアクセス方法。
【請求項２】
請求項１記載のファイルアクセス方法であって、
前記ディスクコントローラは前記記憶装置システムに格納されているファイルの特徴を表す属性情報を有しており、
前記インデックス作成ステップは更に、属性情報をインデックスとして管理するステップを有することを特徴とするファイルアクセス方法。
【請求項３】
請求項２記載のファイルアクセス方法であって、
前記属性情報には、前記複数のディスクのいずれかにファイルのデータを格納するかを決定する処理を制御するために用いられる情報が含まれることを特徴とするファイルアクセス方法。
【請求項４】
請求項３記載のファイルアクセス方法であって、
前記属性情報には、ファイルのデータを前記ディスクコントローラが有するキャッシュメモリに優先的に格納しておくよう指定するための制御情報が含まれ、
前記ディスクコントローラは前記制御情報に対応するファイルのデータを前記キャッシュメモリに優先的に格納するよう制御し、
前記制御情報に対応するファイルのデータに対するアクセス要求を受信した場合には、前記キャッシュメモリに優先的にアクセスすることを特徴とするファイルアクセス方法。
【請求項５】
請求項４記載のファイルアクセス方法において、
前記インデックス検索ステップは、前記制御情報がインデックスとして登録されているファイルに関するインデックスを優先的に検索するステップを有することを特徴とするファイルアクセス方法。
【請求項６】
請求項１記載のファイルアクセス方法において、
前記ディスクコントローラは前記記憶装置システムに格納されているファイルの特徴を表す属性情報を有しており、
更に、前記ディスクコントローラが、前記アクセス要求に含まれるファイル関連情報をキーとして、前記属性情報を検索する属性情報検索ステップと、
前記属性情報検索ステップにおいて特定されたファイルのデータをアクセスするよう前記ディスクコントローラが制御するステップとを有することを特徴とするファイルアクセス方法。
【請求項７】
ディスクコントローラと、該ディスクコントローラに接続される複数のディスクとを有する記憶装置システムにおいて、該記憶装置システムに格納されているファイルにアクセスする処理を実行するためのプログラムであって、
記憶装置システムに記憶されているファイルの内容であるファイルデータから一部を選択して、選択されたデータをインデックスとして管理するインデックス作成ステップと、
前記ディスクコントローラに接続される計算機から、ファイルを特定するために用いられるファイル関連情報を有するアクセス要求を受信するアクセス要求受信ステップと、
インデックスを前記ファイル関連情報をキーとして検索するインデックス検索ステップと、
前記インデックス検索ステップにおいてアクセス対象のファイルが特定された場合に、特定されたファイルのデータにアクセスするよう制御するファイルアクセスステップとを、前記ディスクコントローラに実行させることを特徴とするプログラム。
【請求項８】
請求項７記載のプログラムであって、
前記ファイル関連情報には、アクセス対象のファイルが有するデータの一部が含まれることを特徴とするプログラム。
【請求項９】
請求項７記載のプログラムであって、
前記ディスクコントローラは前記記憶装置システムに格納されているファイルの特徴を表す属性情報を有しており、
前記インデックス作成ステップは更に、属性情報をインデックスとして管理するステップを有することを特徴とするプログラム。
【請求項１０】
請求項９記載のプログラムであって、
前記属性情報には、前記複数のディスクのいずれかにファイルのデータを格納するかを決定する処理を制御するために用いられる情報が含まれることを特徴とするプログラム。
【請求項１１】
請求項１０記載のプログラムであって、
前記属性情報には、ファイルのデータを前記ディスクコントローラが有するキャッシュメモリに優先的に格納しておくよう指定するための制御情報が含まれており、
更に、前記制御情報に対応するファイルのデータを前記キャッシュメモリに優先的に格納するステップと、
前記制御情報に対応するファイルに対するアクセス要求を受信した場合には、前記キャッシュメモリに優先的にアクセスするステップとを前記ディスクコントローラに実行させることを特徴とするプログラム。
【請求項１２】
請求項１１記載のプログラムにおいて、
前記インデックス検索ステップは、前記制御情報がインデックスとして登録されているファイルに関するインデックスを優先的に検索するステップを有することを特徴とするプログラム。
【請求項１３】
請求項７記載のプログラムにおいて、
前記ディスクコントローラは前記記憶装置システムに格納されているファイルの特徴を表す属性情報を有しており、
更に、前記アクセス要求に含まれるファイル関連情報をキーとして、前記属性情報を検索する属性情報検索ステップと、
前記属性情報検索ステップにおいて特定されたファイルのデータをアクセスするよう制御するステップとを前記ディスクコントローラに実行させることを特徴とするプログラム。
【請求項１４】
一又は複数の計算機と接続される記憶装置システムであって、
計算機からファイルを特定するために用いられるファイルに関する情報を受信する第一のインタフェース制御装置と、
前記第一のインタフェース制御装置に接続される第二のインタフェース制御装置と、
前記第二のインタフェース制御装置に接続される一又は複数のディスクとを有し、
前記第一のインタフェース制御装置は、
前記記憶装置システムに格納されるファイルの内容であるファイルデータから、一部のデータを選択してインデックス情報として管理し、
計算機からアクセス対象のファイルに関する情報を有するアクセス要求を受信した場合に、該ファイルに関する情報をキーとして前記インデックス情報を検索し、検索によって選択されたファイルのデータにアクセスするよう前記第二のインタフェース制御装置を制御することを特徴とする記憶装置システム。
【請求項１５】
請求項１４記載の記憶装置システムにおいて、
更に前記第一のインタフェース制御装置は、
前記複数のディスクのいずれかに格納されるファイルの特徴を示す属性情報を有しており、
前記インデックス情報を検索した結果アクセス対象のファイルが選択できなかった場合に、前記アクセス要求に含まれる前記アクセス対象のファイルに関する情報をキーとして、前記属性情報を検索し、
検索によって選択されたファイルのデータにアクセスするよう前記第二のインタフェース制御装置を制御することを特徴とする記憶装置システム。
【請求項１６】
請求項１５記載の記憶装置システムにおいて、
前記属性情報には、前記第一のインタフェース制御装置が前記第二のインタフェース制御装置を制御して、ファイルのデータを記憶装置システムに格納する処理を実行するために用いられる情報が含まれていることを特徴とする記憶装置システム。
【請求項１７】
請求項１６記載の記憶装置システムにおいて、
前記属性情報には、ファイルのデータを前記第一のインタフェース制御装置と前記第二のインタフェース制御装置とに接続されるキャッシュメモリに優先的に格納しておくよう指定する制御情報が含まれることを特徴とする記憶装置システム。
【請求項１８】
請求項１７記載の記憶装置システムにおいて、
前記第一のインタフェース制御装置は、
前記制御情報が属性情報として登録されているファイルのデータは、前記キャッシュメモリに優先的に格納しておくよう制御し、
前記制御情報が属性情報として登録されているファイルに対するアクセス要求を受信した場合には、前記キャッシュメモリを優先的にアクセスすることを特徴とする記憶装置システム。
【請求項１９】
請求項１４記載の記憶装置システムにおいて、
前記第一のインタフェース制御装置は、
記憶装置システムに格納されるファイルの特徴を表す属性情報を有しており、
前記属性情報をインデックス情報として管理することを特徴とする記憶装置システム。
【請求項２０】
請求項１９記載の記憶装置システムにおいて、
前記属性情報には、ファイルのデータを前記第一のインタフェース制御装置と前記第二のインタフェース制御装置とに接続されるキャッシュメモリに優先的に格納しておくよう指定する制御情報が含まれており、
前記第一のインタフェース制御装置は、
インデックス情報を検索する際に、前記制御情報がインデックス情報として管理されているファイルのインデックス情報を優先的に検索することを特徴とする記憶装置システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、計算機システムで用いられる記憶装置システムにかかわり、特に記憶装置システムに記憶されているファイルへのアクセス又は記憶装置システム記憶されているファイルの管理に関するものである。
【０００２】
【従来の技術】
特許文献１には、ストレージエリアネットワーク（以下、ＳＡＮと称する。）を介してアクセスを受け付けるディスクコントローラと、ローカルエリアネットワーク（以下、ＬＡＮと称する。）を介してアクセスを受け付けるファイルサーバと、接続装置を介してディスクコントローラ及びファイルサーバに接続されディスクプールを構成するディスク装置と、ディスクコントローラとファイルサーバとディスク装置との対応関係を管理するディスクプール管理装置とを有する記憶装置システムが開示されている。ＬＡＮを介して記憶装置システムに接続するクライアントは、ファイルＩ／Ｏインタフェースで記憶装置システムにアクセスすることができる。
【０００３】
【特許文献１】
特開２００３−４４３３２号公報（図１）
【０００４】
【発明が解決しようとする課題】
記憶装置システムに記憶されるファイルのデータ量は増大化しており、データ量の増大化にともない、アクセス対象のファイルへの簡単かつ迅速なアクセスが困難となっている。また、計算機システムで用いられるファイルは急増しているが、現在ファイルは構造化されていない単なるファイルとして記憶装置システムに格納されており、記憶装置システムに記憶されているファイルの管理形態は、各ユーザの記憶に委ねられている。このためファイルへの到達性という観点において問題があった。
【０００５】
また、ファイルの持つ属性情報は、ファイルを特定する上で重要な情報となる。ファイルの種類ごとに、重要性・求められる性能・求められる格納コストが存在し、またそれらは時間とともに変化していく。こういった、多種多様なファイルの属性情報や、動的に変化するファイルの属性情報を記憶装置システムが管理する技術は、従来技術に開示されていない。
【０００６】
本発明の目的は、記憶装置システムに格納されているファイルへのアクセス性能を向上させる技術を提供することである。
【０００７】
本発明の他の目的は、ファイルが持つ多様な属性情報を管理することができる記憶装置システムを提供することである。
【０００８】
【課題を解決するための手段】
上記目的を達成するために記憶装置システムは、記憶装置システムに格納されるファイルの属性情報を記憶し、属性情報を利用してファイルにアクセスする。また、記憶装置システムは、属性情報又はファイルのデータの一部をインデックスとして管理し、ファイルへのアクセス要求に含まれる情報をキーとしてインデックスを検索し、検索によって抽出さるファイルのデータにアクセスする。
【０００９】
【発明の実施の形態】
（１）システム構成
図１は、本発明を適用した計算機システムの一例を示した図である。記憶装置システム１は、ディスクコントローラ１０及びディスク群６０を有するディスクアレイである。ＮＡＳ（Ｎｅｔｗｏｒｋ  Ａｔｔａｃｈｅｄ  Ｓｔｏｒａｇｅ）ホスト１００〜１０２は、ＬＡＮ１２０若しくはＬＡＮ１２１を介してファイルＩ／Ｏインタフェースで記憶装置システム１に接続し、記憶装置システム１に格納されているファイルにアクセスする計算機である。ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ホスト１１０〜１１２は、ＳＡＮ１３０を介してブロックＩ／Ｏインタフェースで記憶装置システムに接続する計算機である。
【００１０】
ディスクコントローラ１０において、ＮＡＳチャネルアダプタ（以下ＣＨＮと称する。）２０〜２２は、ＬＡＮ１２０やＬＡＮ１２１を介してファイルＩ／ＯインタフェースでＮＡＳホストと接続される、インターフェース制御装置である。ファイバチャネルアダプタ（以下ＣＨＦと称する。）３０〜３２は、ＳＡＮ１３０を介してブロックＩ／ＯインタフェースでＳＡＮホストと接続されるインタフェース制御装置である。以下、ＣＨＮとＣＨＦをまとめてチャネルアダプタ（ＣＨ）と称する。
【００１１】
ディスクコントローラ１０は、ＣＮＨ、ＣＨＦに加えて更に、ディスクアダプタ（以下ＤＫＡと称する）５０〜５５、共有メモリ（以下ＳＭと称する。）４０、キャッシュメモリ（以下ＣＭと称する。）４２、共有メモリコントローラ（以下ＳＭＣと称する。）４１、キャッシュメモリコントローラ（以下ＣＭＣと称する。）４３を有する。共有メモリコントローラ（ＳＭＣ）４１は、ＣＨＮ２０〜２２、ＣＨＦ３０〜３２、ＤＫＡ５０〜５５及びＳＭ４０と接続され、ＣＨＮ２０〜２２、ＣＨＦ３０〜３２、又はＤＫＡ５０〜５５と、ＳＭ４０との間のデータの転送を制御する。キャッシュメモリコントローラ（ＣＭＣ）４３は、ＣＨＮ２０〜２２、ＣＨＦ３０〜３２、ＤＫＡ５０〜５５及びＣＭ４２と接続され、ＣＨＮ２０〜２２、ＣＨＦ３０〜３２、又はＤＫＡ５０〜５５と、ＣＭ４２との間のデータの転送を制御する。
【００１２】
ディスク群６０は、複数のディスク６１〜６６を有する。ディスク６１〜６６は各々、ディスクアダプタ（ＤＫＡ）５０〜５５のいずれかに接続されている。図１に示すように、各ディスクが複数のディスクアダプタに接続される構成であっても良い。各ＤＫＡ５０〜５５は、自身に接続されているディスクを制御する。
【００１３】
ＬＡＮ１２０及びＬＡＮ１２１は、ＣＨＮとＮＡＳホストを接続するネットワークである。ＳＡＮ１３０は、ＣＨＦ３０〜３１とＳＡＮホスト１１０〜１１２を接続するネットワークである。一般的に、ＳＡＮにはＦｉｂｒｅＣｈａｎｎｅｌが用いられる。しかしＳＡＮとしてＩＰネットワークを用い、ＳＡＮに接続される機器間では、ＩＰネットワーク上でＳＣＳＩプロトコルが実行されるｉＳＣＳＩを利用してもよい。ＳＡＮ１３１は、本実施形態においては複数の記憶装置システム間を接続するための専用のＳＡＮであるとし、このＳＡＮにはＳＡＮホストは接続していないものとする。
【００１４】
記憶装置システム１では、全てのＣＨは、ＳＭＣ４１又はＣＭＣ４３を介して、ＣＭ４２及びディスク６１〜６６をアクセスすることが出来る。また記憶装置システム１は、ＳＡＮホスト１１０〜１１１と接続するためのＳＡＮインタフェース即ちＣＨＦと、ＮＡＳホスト１００〜１０２と接続するためのＮＡＳインタフェース即ちＣＨＮの、双方のインタフェースを有する記憶装置システムである。なお、本発明の技術は、記憶装置システム１がＮＡＳインタフェース（ＣＨＮ）のみを有する場合でも同様に適用することが出来る。
【００１５】
（２）記憶装置システムの外観構成
図２は、記憶装置システム１の外観の一例を示す図である。ディスクコントローラユニット５００は、複数のスロット５０１を有し、各スロットには、ディスクコントローラ１０が有する構成部位である、ＣＨＮ２０〜２２、ＣＨＦ３０〜３２、ＤＫＡ５０〜５５、ＳＭＣ４１、ＣＭＣ４３、ＳＭ４０又はＣＭ４２が作りこまれたボードが格納される。ディスクユニット５１０及び５２０は、複数のディスク６１を有する記憶装置群５１１や記憶装置群５２１等を格納する。
【００１６】
ＳＭ４０は、実際には複数のコントローラボード５５０〜５５２で構成され、各コントローラボードはディスクコントローラユニット５００内のスロットに格納される。また、ＣＭ４２も、複数のキャッシュボード５６０〜５６２で構成され、各キャッシュボードはディスクコントローラユニット５００内のスロットに格納される。記憶装置システム１の使用者は、コントローラボードやキャッシュボードの枚数を増減させることによって、所望の記憶容量を有するＳＭやＣＭを構成することができる。
【００１７】
ディスクコントローラユニット５００内のスロット５０１には、ＳＭを構成するアダプタボードであるコントローラボードや、ＣＭを構成するアダプタボードであるキャッシュボードの他に、ＣＨＮ又はＣＨＦ又はＤＫＡが作りこまれたアダプタボードも格納される。本実施形態においては、スロット５０１の形状、アダプタボードのサイズ及びコネクタの形状を、インターフェースの種類を問わず一定にし、互換性を保つようにする。したがって、ディスクコントローラユニット５００には、インタフェースの種類を問わず、任意のスロット５０１に任意のアダプタボードを装填することが出来る。また、記憶装置システム１の使用者は、ＣＨＮ、ＣＨＦ、及びＤＫＡが作りこまれたアダプタボードの数を自由に組み合わせて、ディスクコントローラユニット５００のスロットに装填することにより、自己のニーズに合ったディスクコントローラ１０を構成することができる。
【００１８】
（３）ＮＡＳチャネルアダプタボード（ＣＨＮ）構成
図３は、ＣＨＮが作りこまれたアダプタボードの構成の一例を示す図である。コネクタ１００１は、ディスクコントローラユニット５００が有するコネクタと接続される。本実施形態においては、上述したように、ＣＨＮが作りこまれたアダプタボードと、ＣＨＦが作りこまれたアダプタボードとは、同一形状のコネクタを有する。インタフェースコネクタ１１０１は、イーサネット（登録商標）に対応しており、イーサネット（登録商標）に接続可能である。なお、ＣＨＦが作りこまれたアダプタボードの場合、インタフェースコネクタ１１０１は、ファイバチャネルに対応しており、ファイバチャネルに接続可能な構成となっている。
【００１９】
（４）ＮＡＳチャネルアダプタボード（ＣＨＮ）内部構成
図４は、ＣＨＮの内部構成の一例を示す図である。
【００２０】
ＣＨＮは、ファイルアクセス制御用ＣＰＵ１５０１、ファイルアクセス制御用メモリ１５０２、ディスクアレイ制御用ＣＰＵ１６０１、ディスクアレイ制御用メモリ１６０２、ＬＡＮコントローラ１７０１、ＣＰＵ間通信回路１７０２、ＳＭインタフェース制御回路１８０１、ＣＭインタフェース制御回路１８０２を有する。
【００２１】
ファイルアクセス制御用ＣＰＵ１５０１は、記憶装置システム１に格納されているファイルのデータにアクセスするためのファイルアクセス処理を制御するプロセッサである。ファイルアクセス制御用メモリ１５０２は、ファイルアクセス制御用ＣＰＵ１５０１と接続されており、ファイルアクセス制御用メモリ１５０２にはファイルアクセス制御用ＣＰＵ１５０１が実行するプログラムや、ファイルアクセス制御用ＣＰＵが使用する制御データが格納される。
【００２２】
ＬＡＮコントローラ１７０１は、インタフェースコネクタ１１０１を介してして、ＬＡＮと接続される。
【００２３】
ディスクアレイ制御用ＣＰＵ１６０１は、ディスク群６０を制御し、ディスク群６０が有するディスクへのアクセスを制御するプロセッサである。ディスクアレイ制御用メモリ１６０２は、ディスクアレイ制御用ＣＰＵ１６０１と接続されており、ディスクアレイ制御用ＣＰＵ１６０１が実行するプログラムや、ディスクアレイ制御用ＣＰＵ１６０１によって利用される制御データが格納される。
【００２４】
ＳＭＩ／Ｆ制御回路１８０１は、ＣＨＮからＳＭ４０へのアクセスを制御する回路である。ＣＭＩ／Ｆ制御回路１８０２は、ＣＨＮからＣＭ４２へのアクセスを制御する回路である。ＣＰＵ間通信回路１７０２は、ファイルアクセス制御用ＣＰＵ１５０１が、ディスク群６０が有するディスクにアクセスするために、ディスクアレイ制御用ＣＰＵ１６０１と通信するための回路である。
【００２５】
なお本実施形態では、ファイルアクセス制御用ＣＰＵ１５０１とディスクアレイ制御用ＣＰＵ１６０１の二つのプロセッサが搭載された、非対称型のマルチプロセッサ構成を有するＣＨＮの例を示しているが、もちろん、ファイルアクセス制御とディスクアレイ制御を単一のプロセッサで実行する構成を有するＣＨＮを実装することも出来る。また、ファイルアクセス制御とディスクアクセス制御とを、２つ以上のプロセッサで対等に実行する対称型マルチプロセッサの構成を有するＣＨＮを実装することも出来る。
【００２６】
なお、ＣＨＦ３０〜３２は、図４の上半分の構成部位であるＬＡＮコントローラ１７０１とファイルアクセス制御用ＣＰＵ１５０１とファイルアクセス制御用メモリ１５０２とＣＰＵ間通信回路１７０２とが、ファイバチャネルコントローラに置き換えられる以外は、図４に示すＣＨＮの構成と同様の構成を有する。
【００２７】
（５）ファイルアクセス制御メモリ構成
図５はＣＨＮが有するファイルアクセス制御メモリ１５０２に格納されているプログラム、制御データの内容を示す図である。
【００２８】
オペレーティングシステムプログラム２００１は、ファイルアクセス制御用ＣＰＵ１５０１が実行するプログラム全体の管理や、ファイルアクセス制御用ＣＰＵ１５０１の外部インターフェースの入出力制御に用いられるプログラムである。ＴＣＰ／ＩＰプログラム２００２は、ＬＡＮ上の通信プロトコルであるＴＣＰ／ＩＰの制御に用いられる。ネットワークファイルシステムプログラム２００３は、記憶装置システム１に格納されるファイルをＮＡＳホスト１００に提供するためのプロトコルであるＮＦＳやＣＩＦＳなどの制御に用いられる。ＬＡＮコントローラドライバプログラム２００４は、ＬＡＮコントローラ１７０１の制御に用いられる。ＣＰＵ間通信ドライバプログラム２００５は、ファイルアクセス制御用ＣＰＵ１５０１とディスクアレイ制御用ＣＰＵ１６０１間との間で通信を行うためのＣＰＵ間通信回路１７０２の制御に用いられる。
【００２９】
ファイルシステムプログラム２１００は、記憶装置システム１に格納されるファイルの管理に用いられる。ファイルシステムプログラム２１００は、ＮＡＳホストからファイルに対するアクセス要求を受信して、ファイルへのアクセス処理を実行する要求処理部２１０１、ファイルをブロック化してブロックのディスク上での格納位置を決定し、この格納位置を管理するファイル格納管理部２１０３、ブロックを格納するディスク上の格納位置を示すアドレスを管理するファイル格納管理テーブル２１０４、ファイル名とそのファイル名が示すファイルのファイル格納管理テーブル２１０４との関係を管理するファイル名管理テーブル２１０２とを有する。
【００３０】
ファイル属性管理プログラム２２００は、ファイルが持つ属性情報の管理に用いられる。ファイル属性管理プログラム２２００は、ファイルの属性情報を作成し登録するファイル属性登録部２２０１、ファイルの属性情報の参照要求を受け付け、要求された属性情報を要求元に返すファイル属性参照部２２０２、ファイルが持つ属性を示す属性情報が登録されているファイル属性管理テーブル２２０３を有する。ファイル属性管理テーブル２２０３をリポジトリ管理することにより、ファイルの属性情報の管理を容易化できる。
【００３１】
検索プログラム２３００は、ファイルの持つデータ及びメタデータの検索のために用いられる。ここで、データとはＮＡＳホストやＳＡＮホストからのアクセスの対象となるファイル内のデータのことであり、メタデータとはファイルのサイズ、ファイルの作成時間、ファイルへのアクセス制限を規定した情報、ファイルシステム内でのファイルの格納位置等、ファイルを管理するために用いられる管理データのことである。検索プログラム２３００は、ファイルのデータ及びメタデータからファイルの検索時に参照されるインデックスを作成するインデックス作成プログラム２３０１、インデックスを使用してファイルの検索を実行するインデックス検索プログラム２３０２、ファイル名とそのファイルを検索する際に参照されるインデックスとが関連付けて登録されているインデックス管理テーブル２３０３を有する。
【００３２】
尚、ファイルアクセス制御用メモリ内に格納されているプログラム及び制御データの構成は図５に示す例に限られるものではない。図５に示すプログラム及び制御データによって実現可能な機能と同様の機能を実現できるのであれば、例えばファイル属性管理プログラム２２００がファイルシステムプログラム２１００が有する一プログラムモジュールである場合など、ファイルアクセス制御用メモリに格納されるプログラム及び制御データは自由な構成をとることが可能である。
【００３３】
本実施形態においては、ファイルシステムプログラムが実行されることによって、ファイルのデータのディスク内での格納位置とファイル名とが関連付けられて管理され、ファイル属性管理プログラムが実行されることによって、ファイル名とファイルの属性情報が関連付けられて管理され、検索プログラムが実行されることによって、ファイル名とそのファイルを検索する際に参照されるインデックスとが関連づけて管理される。そして、これら３つのプログラムを使用して、記憶装置システム１はＮＡＳホストから受け付けたファイルへのアクセス要求に応じたアクセス処理を実行する。
（６）ディスクアレイ制御メモリ構成
図６は、ＣＨＮ２０〜２２が有するディスクアレイ制御用メモリ１６０２に格納されているプログラムを示す図である。
【００３４】
オペレーティングシステムプログラム２５０１は、ディスクアレイ制御用メモリ１６０２に格納されているプログラム全体の管理や入出力制御に用いられる。ディスクアレイ制御プログラム２５０２は、ディスクアレイ６０の内部を管理したり、ファイルアクセス制御用ＣＰＵ１５０１やディスクアレイ制御用ＣＰＵ１６０１からのアクセス要求を処理する制御に用いられる。ＣＰＵ間通信ドライバプログラム２５０４は、ファイルアクセス制御用ＣＰＵ１５０１とディスクアレイ制御用ＣＰＵ１６０１間で通信を行うためのＣＰＵ間通信回路１７０２の制御に用いられる。キャッシュ制御プログラム２５０３は、ＣＭ４２に格納されているデータの管理や、キャッシュヒット／ミス判定等、ＣＭに関する制御に用いられる。ＤＫＡ通信ドライバプログラム２５０５は、ディスク群６０内の記憶領域である論理ユニット（以下ＬＵと称する。）にアクセスする際に、当該ＬＵを構成するディスクを制御するＤＫＡと通信を行う際の制御に用いられる。
【００３５】
（７）ファイル属性情報テーブル
図７はファイル属性情報テーブル２２０３の一例を示す図である。ファイル属性情報テーブル２２０３には、ファイルごとに、そのファイルに対して設定されている属性情報が格納される。
【００３６】
ファイルの属性情報には以下のようなものがある。
【００３７】
ファイル名は、当該ファイルの名前を示す。ディレクトリ名は、当該ファイルが格納されているディレクトリの名前を示す。ファイル種類は、通常ファイルやリンク等、当該ファイルのファイルシステム上での種類を示す。種類は、例えばテキストや静止画、動画等、当該ファイルの内容の種類を示す。状態は、例えばオープン中等、当該ファイルがどのような状態に置かれているかを示す。
【００３８】
タイトルは、当該ファイルのタイトルを示す。ジャンルは、例えば報告書、技術文書等、当該ファイルのジャンルを示す。コメントは、当該ファイルの作成時に、当該ファイルに対してユーザもしくはアプリケーションが付与したコメントを示す。尚ユーザとは、ＬＡＮを介してＮＡＳホストと接続されるクライアント計算機のユーザのことであり、アプリケーションとは、前記ユーザがファイル作成の際に使用したクライアント計算機上で実行されるプログラムのことである。クライアント計算機のユーザがクライアント計算機上で実行されるアプリケーションを用いてファイルを作成しこれにコメントを付与した上で、もしくはクライアント計算机上で実行されるアプリケーションがコメントを付与した上で、ＮＡＳホストを介して記憶装置システム１にファイルを格納するよう、ＮＡＳホストに要求することができる。
【００３９】
ファイルサイズは、当該ファイルのバイト単位でのサイズを示す。ページ数は、当該ファイルが、ドキュメントファイルなどの、複数ページから構成されるファイルである場合のページ数を示す。文字数は、当該ファイルが、ドキュメントファイルなどの、文字によって構成されるファイルである場合の文字数を示す。行数は、当該ファイルがドキュメントファイルなど、複数行から構成されるファイルである場合の行数を示す。長さは、当該ファイルが音声ファイルや動画ファイルなど、再生時間という概念若しくは特性を持つファイルである場合の再生時間を示す。大きさは、当該ファイルが、画像ファイル・動画ファイルなど、表示サイズという概念若しくは特性を持つファイルである場合の大きさを示す。
【００４０】
作成アプリケーションは、当該ファイルが作成される際に使用されたアプリケーションを示す。更新アプリケーションは、当該ファイルを更新する際に使用されるアプリケーションを示す。表示アプリケーションは、当該ファイルを表示する際に使用されるアプリケーションを示す。
【００４１】
パーミッションは、当該ファイルに対するアクセス許可範囲を示す。作成時刻は、当該ファイルが作成された時刻を示す。更新時刻は、当該ファイルが更新された時刻を示す。アクセス時間は、当該ファイルがアクセスされた時刻を示す。作成者は、当該ファイルを作成したクライアント計算機のユーザのユーザ名を示す。所有者は、当該ファイルを所有しているクライアント計算機のユーザ名を示す。更新者は、当該ファイルを更新したクライアント計算機のユーザ名を示す。閲覧者は、当該ファイルを閲覧したクライアント計算機のユーザ名を示す。作成グループは、作成者が当該ファイル作成した時に属していたユーザ集合若しくはユーザグループを示す。更新グループは、更新者が当該ファイルを更新した時に属していたユーザ集合若しくはユーザグループを示す。閲覧グループは、閲覧者が当該ファイルを閲覧した時に属していたユーザ集合若しくはユーザグループを示す。
【００４２】
データライフサイクルは、ファイルが作成される「作成期」、ファイルのデータの更新が頻発する「更新期」、更新期の後ファイル更新は少なくなりファイルの参照が主体となる「参照期」、参照期の後ファイルへのアクセス要求がほとんど無くなる「保管期」等、複数の時期を有するデータライフサイクルにおいて、当該ファイルが現在どの時期に属するかを示す情報である。尚データライフサイクルは必ずしも上述の４つの時期を有するものでなくても良く、又、他の時期を有するものであっても良い。ファイルがデータライフサイクル中のどの時期に属するかは、当該アクセスへの頻度、最終アクセスからの経過時間、ファイルの内容（例えばファイルの内容がメールなのか領収書なのかといったファイルのジャンル）等に基づいて、記憶装置システム１が予め定められている方法によって決定するので、同じ時期に属するファイルには共通した特性があると考えられる。従って、例えば更新期に属するファイルに対してはＮＡＳホストから頻繁にアクセスが行われると考えられるので、このファイルを高速なアクセスが可能な記憶領域に格納したり、ＣＭにこのファイルのデータを常駐させておいたり、ファイルの検索時に優先的にこのファイルを検索できるようインデックスを作成する等といった制御を、記憶装置システム１はライフサイクル情報を利用して行うことができる。尚、インデックス作成処理については後述する。
【００４３】
重要度は、当該ファイルに設定されている重要度を示す。格納先メディアは、当該ファイルが格納される記憶領域の属性を示す。データ保持部常駐情報は、当該ファイルを構成するブロックをＣＭ４２に常駐させるか否か、もしくは優先的に常駐させるか否かを示す。尚、重要度、格納先メディア、及びデータ保持部常駐情報に関しては、記憶装置システム１が、データライフサイクルに応じて予め定められた条件に適合するようファイルの重要度、格納先メディア、データ保持部常駐情報を決定し、ファイル属性管理テーブル２２０３に設定することとしても良い。また、ＮＡＳホストのユーザ若しくはクライアントの計算機がファイルの重要度、格納先メディア、データ保持部常駐情報を指定したアクセス要求を記憶装置システム１に送信し、記憶装置システム１のファイルアクセス制御用ＣＰＵ１５０１は受信したアクセス要求に従ってこれらの情報をファイル属性管理テーブル２２０３に登録することとしても良い。
【００４４】
ユーザ定義属性は、クライアント計算機のユーザが独自に指定する属性情報を示す。ユーザ定義情報としては、例えばファイルを使用する際に課金されるファイルの値段等が登録される。
【００４５】
以上に示したのは、ファイルが持つ属性情報の一例である。上記以外にも、色々な属性情報を、ユーザ定義属性として定義してファイル属性管理テーブル２２０３に格納することが出来る。また、上述の属性情報を全てファイル属性管理テーブル２２０３が有する必要は必ずしもなく、必要なもののみを持つことも可能である。尚、属性情報には、ファイル名やディレクトリ名や状態など、ＣＨＮからファイルをアクセスするために必要となる属性情報と、タイトルやジャンルやページ数や作成アプリケーション等、ファイルをアクセスするために必要となるわけではないが、ファイルの種類やアプリケーションによって定まり、ファイルの特徴を表す属性情報の双方が含まれる。
【００４６】
また本実施形態によれば、ファイルアクセス制御用ＣＰＵがデータ保持部常駐情報を利用することによって、ファイルのデータをＣＭに常駐させるよう、即ちＣＭに常に格納しておくようディスクアレイ制御プログラム２５０２を実行するディスクアレイ制御用ＣＰＵ１６０１に指示することができる。この常駐指示は、ＣＭが既に常駐指定されたファイルで満たされている場合には、常駐指定されたファイルは、常駐指定の無いファイルに対して優先的にＣＭに格納させるための指示となる。更に、ファイルのデータのみならず、後述するインデックス管理テーブル２３０３はＣＭに常に格納しておくよう、ファイルアクセス制御用ＣＰＵがディスクアレイ制御用ＣＰＵに指示することもできる。また、更新期に属するファイルのデータは高速ディスクにアクセスできるディスクに格納するよう、ファイルアクセス制御用ＣＰＵがディスクアレイ制御用ＣＰＵに指示したり、ディスクに格納するファイルのデータのサイズをファイルアクセス制御用ＣＰＵがディスクアレイ制御用ＣＰＵに指示したり、ディスクからＣＭに先読みしておくデータの量をアクセス対象のファイルのデータ量およびデータ格納位置に応じてファイルアクセス制御用ＣＰＵからディスクアレイ制御用ＣＰＵに指示しておくこともできる。
【００４７】
この様に、ファイルにアクセスするために必要とされるファイル名やディレクトリ名等の情報と、ファイルの特性を示すサイズや作成アプリケーションやパーミッションやデータライフサイクル等の情報に加えて、格納先メディアやデータ保持部常駐情報等、記憶装置システム１の構成に基づく情報がファイル属性管理テーブル２２０３に格納されている。そしてＣＨＮのファイルアクセス制御用ＣＰＵは、ディスクへのアクセス速度等の記憶装置システムの特性と、ファイル属性管理テーブルに登録されているファイルの特性の双方を考慮して、記憶装置システムに格納されるファイルを管理するよう、ディスクアレイ制御用ＣＰＵに指示することができる。
【００４８】
（８）ファイル作成処理
次に、ファイル作成処理の手順を説明する。ＮＡＳホスト１００に接続されるクライアント計算機のユーザがファイルａｂｃ．ｔｘｔを作成したとする。クライアント計算機はＮＡＳホストへファイルの生成要求を送信し、これを受信したＮＡＳホスト１００は、ＣＨＮ２０に対して、ファイルａｂｃ．ｔｘｔの生成要求を発行する。この際に、生成要求にはファイルａｂｃ．ｔｘｔの属性情報が含まれる。生成要求に含まれるファイルの属性情報はクライアント計算機によって生成要求に付与されても、ＮＡＳホストによって生成要求に付与されても良い。またクライアント計算機によって付与された属性情報とＮＡＳホストによって付与された属性情報とが混在していても良い。生成要求として送信される情報としては、ファイルシステム上必要な情報、即ちファイル名やディレクトリ名等ファイルにアクセスするために必要な情報と、ファイルの種類・使用アプリケーションに固有の情報とがある。テキストファイルであるファイルａｂｃ．ｔｘｔの生成要求の場合には、例えば、ファイル名「ａｂｃ．ｔｘｔ」、ディレクトリ名「ｍｙｄｏｃ」、ファイル種類「通常ファイル」、種類「テキスト」、状態「オープン中」、タイトル「ＡＢＣ」、ジャンル「技術文書」、コメント「ＡＢＣについて」、ファイルサイズ「１ＭＢ」、ページ数「１００ページ」、文字数「２００００字」、行数「５００行」、長さ「なし」、大きさ「なし」、作成アプリケーション「エディタ」、更新アプリケーション「エディタ」、表示アプリケーション「ページャ」、パーミッション「４部：Ｒ−、２課：ＲＷ−…」、作成時刻「２００３／１／２  ３：４５」、更新時刻「２００３／１／２  ３：４５」、アクセス時刻「２００３／１／２  ３：４５」、作成者「田中」、所有者「田中」、更新者「田中」、閲覧者「田中」、作成グループ「２課」、更新グループ「２課」、閲覧グループ「２課」、重要度「高」、格納先メディア「高速ディスク」、データ保持優先度「高」、データ保持部常駐情報「常駐指定なし」、ユーザ定義情報「値段：１００００円」等が含まれる。
【００４９】
ＣＨＮ２０は、ＬＡＮコントローラ１７０１を通じてＮＡＳホストから生成要求を受信し、ファイルアクセス制御用ＣＰＵ１５０１は、ファイルシステムプログラム２１００を実行する。ファイルシステムプログラム２１００内の、要求処理部２１０１はファイル名管理テーブル２１０２を参照し、ａｂｃ．ｔｘｔが登録されているか否かをチェックする。ａｂｃ．ｔｘｔは新規作成されたファイルであるため、ファイル名管理テーブル２１０２には未だ登録されていないはずである。従って要求処理部２１０１はａｂｃ．ｔｘｔにファイルハンドラを割り当て、ファイル名ａｂｃ．ｔｘｔと割り当てられたファイルハンドラとをファイル名管理テーブル２１０２に、ａｂｃ．ｔｘｔを新規登録する。更にファイル格納管理部２１０３が、ファイルａｂｃ．ｔｘｔに割り当てられたファイルハンドラと対応するファイル格納管理テーブル２１０４を作成する。
【００５０】
次にファイルアクセス制御用ＣＰＵ１５０１はファイル属性情報管理プログラム２２００を起動して実行し、ファイルａｂｃ．ｔｘｔのファイル属性テーブル２２０３を当該ファイルに割り当てられたファイルハンドラに関連付ける。続いて、ファイル属性登録部２２０１が、ＮＡＳホスト１００から受信したファイル生成要求に含まれている、ファイルａｂｃ．ｔｘｔの属性情報をファイル属性テーブル２２０３に格納する。
【００５１】
（９）インデックス作成処理
次に、インデックス作成処理の手順について述べる。インデックスとは、ファイルの検索を高速に実行するために使用される、検索対象のファイルの索引である。
【００５２】
本実施形態におけるインデックス作成処理は、ファイルアクセスに対して、同期・非同期の二種類のタイミングで実行される。インデックス作成処理がファイルアクセスに対して同期して実行される場合には、（１）ＣＨＮがＮＡＳホストからファイルに対するライト要求を受け付けた場合に、ＣＨＮが受信したライト要求に応じてファイルの作成処理若しくはファイルの更新処理を実行し、更にインデックス作成処理を実行した後に、ＮＡＳホストに対してライト要求に対する応答を送信する場合と、（２）ＣＨＮがＮＡＳホストからファイル検索要求を受け付けた場合に、ＣＨＮがインデックス作成処理とファイルの検索処理を実行してＮＡＳホストにファイル検索要求に対する応答を返信する場合との二種類の場合がある。インデックス作成処理がファイルアクセスに対して非同期に実行される場合とは、ＣＨＮがＮＡＳホストからファイルに対するアクセス要求を受信し、これに対する応答をＮＡＳホストに送信した後にインデックス作成処理を実行する場合であり、この場合インデックス作成処理は一般に、ファイルアクセス制御用ＣＰＵ１５０１が低負荷時であって他に行うべき処理がない時間帯に実行される。
【００５３】
検索プログラム２３００は、上述のいずれかのタイミングでファイルアクセス制御用ＣＰＵによって実行され、インデックス作成処理を開始する。インデックスは、ファイルアクセス制御用ＣＰＵがインデックス作成プログラム２３０１を実行することにより、作成される。
【００５４】
インデックス作成プログラム２３０１が実行されると、ファイルアクセス制御用ＣＰＵはファイル属性管理テーブル２３０３を参照し、インデックスを登録すべきファイルの種類、作成アプリケーション、更新アプリケーション、表示アプリケーションの情報を取得する。そしてファイルアクセス制御用ＣＰＵは、取得したファイルの種類、アプリケーションに関する情報に基づいて、インデックスとして登録すべき情報を、ファイルのデータの中から選択する。例えばファイルａｂｃ．ｔｘｔは種類が「テキスト」で作成アプリケーションと更新アプリケーションは「エディタ」、表示アプリケーションは「ページャ」であることから、ａｂｃ．ｔｘｔの本文中に出てくる「データ」「検索」「ファイル」「データベース」等の語がインデックスとして登録される情報として選択される。また、ファイルｄｅｆ．ｍｐｇは種類が「動画」であることから、ｄｅｆ．ｍｐｇのファイルのデータの一部である、再生時間を示す長さが、インデックスに登録される情報として選択される。そしてファイルアクセス制御用ＣＰＵは選択した情報をファイル属性管理テーブル２２０３に登録する。
【００５５】
更にファイルアクセス制御用ＣＰＵは、ファイル属性管理テーブル２２０３からユーザがファイル検索時に使用する情報を抽出し、インデックスとして生成し、インデックス管理テーブル２３０３に格納してもよい。例えば、インデックス作成対象ファイルの種類がａｂｃ．ｔｘｔの様なテキストの場合はタイトルやページ数を、インデックス作成対象のファイルが音楽ファイルの場合には作成者等を、ファイルアクセス制御用ＣＰＵはファイル属性管理テーブルから選択してインデックス管理テーブルに格納しても良い。またファイルの種類やデータ保持部常駐情報等は、インデックス作成対象のファイルの種類に関わらず、インデックス管理テーブルに登録することとしても良い。もちろん、ファイルのデータの中から選択されたインデックス情報と、属性情報管理テーブルの中から選択されたインデックス情報の二種類を１つのインデックス管理テーブルで管理することも可能である。
【００５６】
図８にインデックス管理テーブル２３０３の一例を示す。図８のインデックス管理テーブル２３０３では、「インデックス（内容）」欄に格納されている情報は、ファイルのデータの中から選択されたインデックス情報であり、「属性」の欄に格納されている情報は属性管理テーブルから抽出された属性の名称であり、「属性情報」の欄に格納されている情報は「属性」欄に登録されている属性を示す属性情報である。即ち、ファイルａｂｃ．ｔｘｔの場合には、ファイルのデータ、即ちａｂｃ．ｔｘｔの本文中から「データ」「検索」「ファイル」「データベース」の語がインデックスとしてインデックス管理テーブル２３０３に登録されており、属性情報管理テーブルからは「種類」として「テキスト」が、「ページ数」として「１００ページ」が、「データ保持部常駐情報」として「常駐指定なし」が登録されている。
【００５７】
なお、図８ではファイル名によってソートされた形式で、インデックス情報がインデックス管理テーブル２３０３に格納されているが、もちろん、インデックス管理テーブル２３０３は「インデックス（内容）」や「属性」によってソートされている構成であってもよい。また、「ファイル名」、「インデックス（内容）」、「属性情報」各々でソートされているインデックス管理テーブルをファイルアクセス制御用ＣＰＵが併用することとしてもよい。
【００５８】
（１０）インデックス検索処理
次に、インデックス検索処理について述べる。
【００５９】
インデックス検索処理は、ＮＡＳホスト１００からの指示によって開始される。ＮＡＳホスト１００は、クライアント計算機のユーザからの検索指示をＬＡＮ経由で受信した場合、もしくはＮＡＳホスト１００が検索を要すると判断した場合に、記憶装置システム１に、検索を指示する。ＮＡＳホスト１００からは、検索指示と共にキーワードが記憶装置システム１に送信される。
【００６０】
ＣＨＮ２０は、ＬＡＮコントローラ１７０１経由でＮＡＳホストから検索指示とキーワードを受信し、ファイルアクセス制御用ＣＰＵ１５０１が受信したデータを処理する。ファイルアクセス制御用ＣＰＵ１５０１は、受け取ったデータが検索指示であることを理解すると、検索プログラム２３００中のインデックス検索プログラム２３０２を実行する。インデックス検索プログラム２３０２が実行されると、ファイルアクセス制御用ＣＰＵ１５０１は、インデックス管理テーブル２３０３の「インデックス（内容）」欄から受信したキーワードを検索する。キーワードに該当するインデックスを見つけた場合は、該当するファイル名を全てをＮＡＳホスト１００に返す。キーワードに該当するインデックスが存在しなかった場合は、該当ファイルが無いという結果をＮＡＳホスト１００に返す。
【００６１】
例えば、キーワードが「データベース」である場合には、インデックス管理テーブル２３０３の「インデックス（内容）」欄に「データベース」が登録されているか否かを検索し、例えば図８に示すインデックス管理テーブル２３０３であればファイルａｂｃ．ｔｘｔの「インデックス（内容）」欄に「データベース」という語が登録されているので、ファイルアクセス制御用ＣＰＵ１５０１はａｂｃ．ｔｘｔをＮＡＳホスト１００に返す。
【００６２】
尚、上述の実施形態においては、ファイルアクセス制御用ＣＰＵ１５０１がＮＡＳホストから受信したキーワードに基づいて、インデックス管理テーブル２３０３の「インデックス（内容）」欄を検索する例を示したが、検索対象は「インデックス（内容）」欄に限られることはなく、インデックス管理テーブル２３０３の「属性」欄、「属性情報」欄も検索対象とすることとしても良い。
【００６３】
更にファイルアクセス制御用ＣＰＵは、インデックス管理テーブル２３０３に登録されている情報のうち、インデックス管理テーブルの「属性情報」欄に「常駐指定あり」と登録されているファイルに関する情報をまず先に検索して結果をＮＡＳホストに報告し、検索結果に対する応答としてＮＡＳホストから全件検索の指示を受信した場合に、残りのファイルに関する情報を検索して再度検索結果をＮＡＳホストに報告する、というように、検索処理を２段階で実行しても良い。データ保持部常駐情報が「常駐指定あり」であるファイルは、アクセス頻度が高い故にＣＭに常に格納しておくようＣＨＮによって制御されているのだと考えられる。従って「常駐指定あり」との情報がインデックス管理テーブルに登録されているファイルは、アクセス頻度が高いと考えられ、係るファイルを優先的に検索してＮＡＳホストに検索結果を報告することにより、検索時間を短縮することができる。
（１１）データアクセス処理
次に、本実施形態におけるデータアクセス処理について、図９を用いて説明する。図９は、本実施形態におけるデータアクセス処理の処理手順の一例を示すフローチャートである。
【００６４】
データにアクセスするためには、まずアクセスしたいファイルを特定する必要がある。クライアント計算機のユーザはＬＡＮ経由でＮＡＳホスト１００に対し、オープンしたい、即ちアクセスしたいファイルに関するキーワードを有するアクセス要求を送信する。ＮＡＳホストは記憶装置システム１に対して、クライアント計算機から受信したキーワードを有するアクセス要求送信する。ＣＨＮ２０はＮＡＳホストからアクセス要求を受信し、アクセス要求に含まれるキーワードを、ファイルを特定するための情報と判断して、ファイルアクセス制御用ＣＰＵ１５０１がファイルシステムプログラム２１００を起動する（ステップ４００１）。ファイルシステムプログラム２１００が実行されると、ファイルアクセス制御用ＣＰＵ１５０１はＮＡＳホストから受信したファイルを特定のための情報を解析し、この情報を用いて直接ファイルを一意に特定できるかどうかを判断する（ステップ４００２）。
【００６５】
ステップ４００２において、一意にファイルが特定できると判断されるケースとしては、クライアント計算機のユーザがキーワードとしてファイル名を有するアクセス要求をＮＡＳホストに送信した場合が考えられる。また、ＮＡＳホストが記憶装置システム１に記憶されているファイルの記憶装置システム内での管理方法を理解しており、クライアント計算機からキーワードを受信した際にＮＡＳホストがそのキーワードからアクセス対象のファイルを特定して、クライアント計算機から受信したアクセス要求を、アクセス対象のファイル名を有するアクセス要求に変換して記憶装置システム１に送信した場合も考えられる。以上のように、直接ファイル名が指定された場合は、ステップ４０１０へ進む。
【００６６】
ステップ４００２において一意にファイルが特定できないと判断された場合には、ファイルアクセス制御用ＣＰＵ１５０１が検索プログラム２３００を起動し、アクセス要求に含まれるキーワードからファイルを特定するための処理を実行する。検索プログラム２３００が起動されると、ファイルアクセス制御用ＣＰＵ１５０１はアクセス要求に含まれるキーワードに、インデックス管理テーブルの「インデックス（内容）」欄に登録され得る検索キーワード、即ちファイルのデータの一部が含まれているかどうかを判断する（ステップ４００３）。検索キーワードが含まれている場合は、インデックス管理テーブル２３０３から、受信したキーワードを検索する（ステップ４００４）。この検索処理は、上述のインデックス検索処理と同様の手順で実行される。
【００６７】
次にファイルアクセス制御用ＣＰＵ１５０１は、ステップ４００４において実行された検索処理の結果から、ファイルが一意に特定可能かどうかを判断する（ステップ４００５）。ステップ４００５において、ファイルが一意に特定可能であった場合は、アクセス対象のファイルが特定できるので、ステップ４０１０へ進む。
【００６８】
フファイルアクセス制御用ＣＰＵ１５０１が、ステップ４００５においてファイルが一意に特定可能ではないと判断した場合や、ステップ４００３においてアクセス要求中のキーワードに検索キーワードが含まれていないと判断した場合には、ファイル属性管理プログラム２２００が起動され、ファイルアクセス制御用ＣＰＵ１５０１は、アクセス要求に含まれるファイルを特定するための情報であるキーワードの中に、ファイルの属性に関する情報があるかどうかを判断する（ステップ４００６）。ステップ４００６において、アクセス要求中のキーワードの中に属性情報に関する情報がなかった場合は、ステップ４００９へ進む。
【００６９】
ステップ４００６において、アクセス要求中に属性情報に関する情報が指定されていた場合は、ファイルアクセス制御用ＣＰＵが指定された属性に関する情報とファイル属性情報管理テーブル２２０３から、アクセス対象のファイルの絞込みを行う（ステップ４００７）。
【００７０】
この絞込み処理は、アクセス要求中で指定された属性に関する情報がファイル属性管理テーブル２２０３に登録されているファイルを抽出することによって行われる。例えば、アクセス要求中に「作成者」が「田中」という情報が指定されている場合には、ファイル属性管理テーブル２２０３中に「作成者」として「田中」が登録されているファイルが、ファイルアクセス制御用ＣＰＵ１５０１によって抽出される。また、アクセス要求中に、「作成者が登録されている」という情報が指定されている場合には、作成者に関する属性情報がファイル属性管理テーブル２２０３中に登録されているファイルが、ファイルアクセス制御用ＣＰＵによって抽出される。また、アクセス要求中に「更新期」という情報が指定されている場合には、ファイル属性管理テーブル２２０３に登録されているデータライフサイクルについての情報が「更新期」を示しているファイルが抽出される。この様に、アクセス要求中に含まれる属性に関する情報は、ファイル属性管理テーブル２２０３の「属性」欄に登録されている情報と「内容」欄に登録されている情報の組であっても良いし、ある属性がファイル属性管理テーブル２２０３に登録されているという条件を指定する情報であっても良いし、ファイル属性管理テーブル２２０３の「内容」欄に登録されている情報であっても良い。また、複数の属性に関する情報がアクセス要求に含まれていてもよい。
【００７１】
そして、ファイルアクセス制御用ＣＰＵ１５０１は、ステップ４００７の絞込みの結果から、ファイルが一意に特定可能かどうかを判断する（ステップ４００８）。ステップ４００８において、ファイルが一意に特定可能であった場合は、ステップ４０１０へ進む。
【００７２】
ステップ４００８において、ファイルが一意に特定可能でなかった場合は、ファイルアクセス制御用ＣＰＵ１５０１がファイルシステムプログラム２１００を起動する。そして、ファイルアクセス制御用ＣＰＵ１５０１は、ステップ４００４やステップ４００７で抽出したアクセス対象ファイルの候補をクライアント計算機のユーザに提示するため、アクセス対象の候補となっているファイルのファイル名をＮＡＳホストに送信し、クライアント計算機のユーザからファイル特定のための情報を送信するよう促し（ステップ４００９）、ステップ４００１へ進む。
【００７３】
ステップ４００２、ステップ４００５、ステップ４００８各々において、アクセス対象のファイルが一意に特定可能であった場合は、ステップ４０１０へ進み、ファイルアクセス制御用ＣＰＵ１５０１がファイルシステムプログラム２１００を起動する。ステップ４０１０では、ファイルアクセス制御用ＣＰＵ１５０１が、特定されたアクセス対象ファイルのファイル格納管理テーブル２１０４から、アクセスすべきファイルのディスク上の位置情報を取得する。ステップ４０１０において得られたディスク上の位置情報から、アクセス対象のファイルにおける、実際にアクセスすべき記憶領域が確定するので、ファイルアクセス制御用ＣＰＵはこの記憶領域に格納されているデータにアクセスするようディスクアレイ制御用ＣＰＵ１６０１に指示する。ディスクアレイ制御用ＣＰＵ１６０１は、ディスクアレイ制御プログラム２５０２を起動することによってＤＫＡを制御し、ファイルのデータをアクセスする（ステップ４０１１）。
【００７４】
尚本実施形態においては、ステップ４００３及びステップ４００４で、アクセス要求に含まれるキーワードがインデックス管理テーブル２２０３の「インデックス（内容）」欄に登録され得る情報を有するか否かをファイルアクセス制御用ＣＰＵ１５０１が判断し、「インデックス（内容）」欄に登録され得る情報を有する場合にはファイルアクセス制御用ＣＰＵ１５０１がインデックス管理テーブル２２０３を検索することによってアクセス対象のファイルを選択することとしている。しかし、「インデックス（内容）」欄に限定されることはなく、アクセス要求に含まれるキーワードがインデックス管理テーブル２２０３の「属性」欄や「属性情報」欄に登録され得る情報である場合にも、ファイルアクセス制御用ＣＰＵ１５０１はインデックス管理テーブル２２０３を検索することとしても良い。
【００７５】
本実施形態によれば、記憶装置システム内にファイルシステムプログラム、ファイル属性管理プログラム、検索プログラムを備えることによって、検索プログラムが実行されることによって管理されるインデックス管理テーブルや、ファイル属性管理プログラムが実行されることによって管理されるファイル属性管理テーブルを用いて、アクセス対象のファイルを記憶装置システムが絞り込むことができ、アクセス対象のファイルへ簡単かつ迅速にアクセス出来る。
【００７６】
また、本実施形態によれば、ファイルの特性を表す属性情報と、記憶装置システムの構成や特性に関する属性情報とを、ファイル属性管理テーブルによって管理することができ、ファイルの特性をあらわす属性情報と記憶装置システムの構成や特性に関する属性情報との双方を考慮して、記憶装置システム内に格納されるファイルを管理することができる。
【００７７】
【発明の効果】
本発明によれば、記憶装置システムに格納されているファイルへのアクセス性能を向上させることができる。また、ファイルが持つ多様な属性情報を記憶装置システムで管理することができる。
【図面の簡単な説明】
【図１】本発明が適用される計算機システムの構成の一例を示す図である。
【図２】記憶装置システムの外観の一例を示す図である。
【図３】チャネルアダプタの外観の一例を示す図である。
【図４】ＮＡＳチャネルアダプタの構成の一例を示す図である。
【図５】ＮＡＳチャネルアダプタが有するファイルアクセス制御用メモリに格納されているプログラム又はデータの一例を示す図である。
【図６】ＮＡＳチャネルアダプタが有するディスクアレイ制御用メモリに格納されているプログラムの一例を示す図である。
【図７】ファイル属性管理テーブルの一例を示す図である。
【図８】インデックス管理テーブルの一例を示す図である。
【図９】ファイルアクセス処理の手順の一例を示すフローチャートである。
【符号の説明】
１…記憶装置システム、２０…ＮＡＳチャネルアダプタ、２１…ＮＡＳチャネルアダプタ、２２…ＮＡＳチャネルアダプタ、１５０１…ファイルアクセス制御用ＣＰＵ、１５０２…ファイルアクセス制御用メモリ、１６０１…ディスクアレイ制御用ＣＰＵ、１６０２…ディスクアレイ制御用メモリ、２１００…ファイルシステムプログラム、２１０４…ファイル格納管理テーブル、２２００…ファイル属性管理プログラム、２２０３…ファイル属性管理テーブル、２３００…検索プログラム、２３０３…インデックス管理テーブル
【図１】
2004310621.tif 000003
【図２】
2004310621.tif 000004
【図３】
2004310621.tif 000005
【図４】
2004310621.tif 000006
【図５】
2004310621.tif 000007
【図６】
2004310621.tif 000008
【図７】
2004310621.tif 000009
【図８】
2004310621.tif 000010
【図９】
2004310621.tif 000011