説明

記憶システム及びその管理方法

【課題】いずれのホスト装置からもコンテンツを参照することができ、管理やアクセス権の設定に関する管理者や操作者の煩わしさを削減し得る記憶システム及びその管理方法を提案しようとするものである。
【解決手段】1又は複数の記憶制御装置は、複数の論理ボリューム上に複数のコンテンツを格納するための複数のフォルダを形成するフォルダ形成部と、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから核となる核コンテンツを特定させて管理する核コンテンツ管理部と、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから、核コンテンツと、一部又は全部の核コンテンツと関連付けられる1又は複数の関連コンテンツを管理する関連コンテンツ管理部と、核コンテンツと関連コンテンツとを、複数の論理ボリューム間又は複数のフォルダ間を跨ってグループ化したグループフォルダを形成するグループフォルダ形成部と、を備えることとした。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、記憶システム及びその管理方法に関し、特に複数のファイルの管理を必要とする記憶システムに適用して好適なものである。
【背景技術】
【0002】
近年、ストレージ分野におけるコンテンツ(ファイルやファイル群)のアーカイブに関するストレージ製品が多数発売されている。
【0003】
コンテンツは、物理デバイスの記憶領域上から提供される論理的なボリューム(以下、ボリュームという)、フォルダ又はファイル等の名前により構成されるパス名(ロケーション情報)を使用して管理されている。加えてコンテンツは、ファイルの種類、ファイル/フォルダ属性等による種類管理及びタイムスタンプ情報等の時間管理と組み合わされて管理されるのが通常である。
【0004】
一般的に、このコンテンツをグループ化して管理する方法としては、ボリューム単位やフォルダ単位でグループ化して管理する方法がある。また、別の管理方法としては、コンテンツの内容をハッシュ演算し、演算結果の比較によってファイル単位で管理する方式があり、上述した種類管理及び時間管理と組み合わせて管理することも可能である。
【0005】
なお、種類管理や時間管理というのは、一種のフィルタリング技術であり、ある要素(種類や時間)を設定されたマッチクライテリア(適合基準)と比較し一致した要素が種類管理や時間管理に使用される。これら条件の組合せを総称してポリシーと称している。
【0006】
以上のように従来方式でのコンテンツを管理する方法としては、ファイル単体での管理方法、フォルダ単位での管理方法、ボリューム単位での管理方法、これらにファイル属性等によるフィルタリングを行う為のポリシーを組み合わせた管理方法があった。
【0007】
また上述のコンテンツをグループ化してユーザに提供し易いように開示する方法として、特許文献1から3の技術がある。特許文献1から3では、フォルダ間やボリューム間を跨った複数のコンテンツをグループ化する方法について開示されている。
【特許文献1】特表2006−514377号公報
【特許文献2】特表2006−521592号公報
【特許文献3】特表2006−521594号公報
【発明の開示】
【発明が解決しようとする課題】
【0008】
しかしこれらの文献に開示されている方式は、コンテンツ同士を関連付けすることによるグループ化を行うものでは無く、前述したポリシー条件(例えば、ファイル拡張子に基づくファイルの種類)等に基づいて複数のコンテンツをフィルタリングし、その結果、抽出されたコンテンツ(ファイル)群をグループと称しているに過ぎない。
【0009】
また一方、記憶システムの環境下において、コンテンツをグループ化して管理することは、ユーザ側の使い勝手の問題と思われている一面がある。また前述のグループ化に必要なファイル属性等はOS側での管理に比重が大きく配分されている。この為、記憶制御装置(ストレージ)側では上記属性情報の内、ファイル更新日等による更新差分の管理としてフィルタリングされるものを除くと、上述のようにフォルダ単位やボリューム単位での管理しか行えないため、フォルダ間やボリューム間を跨って関連するコンテンツをグループ化することは困難であった。
【0010】
また特に、コンテンツをフォルダ単位でグループ化して管理する場合、異なる業務ユニット間で同一の情報を使用するためには、(1)それぞれの業務ユニットが管理する共有フォルダに同一の情報を格納する、又は、(2)それぞれの業務ユニットが新たに共有フォルダを作成し当該共有フォルダ内に相手側ユニットの管理するコンテンツへのショートカット等を配置しなければならなかった。このため、記憶システム下で、新たに作成した共有フォルダの管理や当該共有フォルダにアクセスするためのアクセス権の設定等をしなければならず、管理者や操作者の煩わしさが新たに発生してしまうという問題点があった。
【0011】
本発明は以上の点を考慮してなされたもので、いずれのホスト装置からもコンテンツを参照することができ、管理やアクセス権の設定に関する管理者や操作者の煩わしさを削減し得る記憶システム及びその管理方法を提案しようとするものである。
【課題を解決するための手段】
【0012】
かかる課題を解決するため本発明は、ホスト装置から提供される複数のコンテンツを格納する物理デバイスの記憶領域上に複数の論理ボリュームを形成する1又は複数の記憶制御装置を有する記憶システムにおいて、1又は複数の記憶制御装置は、複数の論理ボリューム上に複数のコンテンツを格納するための複数のフォルダを形成するフォルダ形成部と、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから核となる核コンテンツを特定させて管理する核コンテンツ管理部と、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから、核コンテンツと、一部又は全部の核コンテンツと関連付けられる1又は複数の関連コンテンツを管理する関連コンテンツ管理部と、核コンテンツと、関連コンテンツとを、複数の論理ボリューム間又は複数のフォルダ間を跨ってグループ化したグループフォルダを形成するグループフォルダ形成部と、を備えることを特徴とする。
【0013】
その結果、別々のボリューム又は別々のフォルダに格納される複数のコンテンツを関連付けて、複数の論理ボリューム間又は複数のフォルダ間を跨って、複数のコンテンツをグループ化することができる。
【0014】
また、本発明は、ホスト装置から提供される複数のコンテンツを格納する物理デバイスの記憶領域上に複数の論理ボリュームを形成する1又は複数の記憶制御装置を有する記憶システムの管理方法において、1又は複数の記憶制御装置では、複数の論理ボリューム上に複数のコンテンツを格納するための複数のフォルダを形成するフォルダ形成ステップと、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから核となる核コンテンツを特定させて管理する核コンテンツ管理ステップと、複数の論理ボリューム又は複数のフォルダに格納される複数のコンテンツから、核コンテンツと、一部又は全部の核コンテンツと関連付けられる1又は複数の関連コンテンツを管理する関連コンテンツ管理ステップと、核コンテンツと、関連コンテンツとを、複数の論理ボリューム間又は複数のフォルダ間を跨ってグループ化したグループフォルダを形成するグループフォルダ形成ステップと、を備えることを特徴とする。
【0015】
その結果、別々のボリューム又は別々のフォルダに格納される複数のコンテンツを関連付けて、複数の論理ボリューム間又は複数のフォルダ間を跨って、複数のコンテンツをグループ化することができる。
【発明の効果】
【0016】
本発明によれば、異なるファイル種別の異なるフォルダに配置された複数のコンテンツが配置される記憶システムに関してボリューム間やフォルダ間を跨ってグループ化することで、いずれのホスト装置からもコンテンツを参照でき、管理やアクセス権の設定に関する管理者や操作者の煩わしさを軽減することができる。
【発明を実施するための最良の形態】
【0017】
(1)第1の実施の形態
(1−1)第1の実施の形態による記憶システムのハード構成
まず、第1の実施の形態による記憶システムのハード構成について以下に説明する。
【0018】
図1において、1は全体として第1の実施の形態による記憶システムを示す。
【0019】
この記憶システム1は、ホスト装置2及びバックアップサーバ3が第1のネットワーク5を介してNASコントローラ7と接続され、バックアップサーバ3及びテープライブラリ装置4が第2のネットワーク6を介してNASコントローラ7と接続され、NASコントローラ7が、ストレージコントローラ8と接続し、ストレージコントローラ8が、第1の増設筐体9A、第2の増設筐体9Bと階層的に接続される構成である。
【0020】
上記のように構成される記憶システム1の各装置について説明する。
【0021】
ホスト装置2は、パーソナルコンピュータやワークステーション、メインフレーム等が該当する。ホスト装置2は、CPU、ローカルメモリ、インターフェース及びローカル入出力装置等のハードウェア資源を備え、これらは内部バスにより相互に接続されている。ホスト装置は、デバイスドライバやオペレーティングシステム(以下、OSという)、アプリケーションプログラム等のソフトウェア資源を備えている。
【0022】
これによってホスト装置2は、CPUの制御の下、各種のプログラムを実行して、ハードウェア資源との協働作用により、所望の処理を実現する。具体的には、ホスト装置2は、CPUの制御の下、OS上でアプリケーションプログラムを実行する。アプリケーションプログラムは、ユーザがホスト装置2によって遂行しようとする処理を実現するためのプログラムである。アプリケーションプログラムは、その実行に際して、ストレージコントローラ8に対してデータの読み出しや書き込み等のアクセスを要求する。ホスト装置2は、アプリケーションプログラムからのアクセス要求をコマンドとしてストレージ装置に引渡し、また、ストレージコントローラ8から読み出したデータをアプリケーションプログラムに引き渡す。各種のプログラムは、1つのモジュールとして構成されてもよいし、複数のモジュールとして構成されてもよい。
【0023】
バックアップサーバ3は、管理者がバックアップ用のデータとして格納するためのテープライブラリ装置4及び増設筐体9を管理するために使用するコンピュータ装置である。バックアップサーバ3は、バックアップ用のデータを制御するためのCPU、当該制御プログラムを記憶するメモリ、インターフェース等を備えて構成される。
【0024】
テープライブラリ装置4は、アーカイブ用又はバックアップ用のテープを搬送する搬送機構を制御するためのCPU、搬送機構を制御する制御プログラムを記憶するメモリ、搬送機構、テープドライブ及びテープを備えて構成される。
【0025】
第1のネットワーク5及び第2のネットワーク6は、例えばSAN(Storage Area Network)、LAN(Local Area Network)、WAN(Wide Area Network)、インターネット、公衆回線又は専用回線などから構成される。例えば、ネットワークがLAN又はWANである場合にはTCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われ、SANである場合にはファイバチャネルプロトコルに従って行われる。ここでは、第1のネットワーク5はLAN又はWANで構成され、第2のネットワーク6はファイバチャネルを用いたSANで構成される。
【0026】
NASコントローラ7は、CPU70、メモリ71、キャッシュメモリ72、LAN/WAN I/F制御部73、FC(Fibre Channel) I/F制御部74、SAS(Serial Attached SCSI) I/F制御部75がデータコントローラ76を介して接続される構成である。NASコントローラ7は、ホスト装置2とストレージコントローラ8との間の入出力処理を制御する。
【0027】
メモリ71は、CPU70のメイン機能として動作する。メモリ71には、記憶管理テーブル710、関連性管理テーブル711、ノード情報管理テーブル712、各種管理テーブルを制御する管理プログラム713及びファイル間又はボリューム間の関連付け又は関連解除を行うための関連プログラム714が記憶されている。各種テーブル710〜712については、後述で説明する。
【0028】
キャッシュメモリ72は、ホスト装置2とストレージコントローラ8との間の入出力データを一時的に記憶するために利用される。ホスト装置2から送られる要求は、キャッシュメモリ72に一旦保持され、またSASハードディスク91から読み出されたデータがストレージコントローラ8を介してホスト装置2に送られる際にキャッシュメモリ72に一旦保持される。
【0029】
LAN/WAN I/F制御部73は、ホスト装置2又はバックアップサーバ3とNASコントローラ7との間の入出力処理をLAN又はWANによるデータ転送方式で制御するためのI/F機能を有する。
【0030】
FC I/F制御部74は、バックアップサーバ3又はテープライブラリ装置4とNASコントローラ7との間の入出力処理をFCによるデータ転送方式で制御するためのI/F機能を有する。
【0031】
SAS I/F制御部75は、NASコントローラ7とストレージコントローラ8との間の入出力処理をSASによるデータ転送方式で制御するためのI/F機能を有する。
【0032】
ストレージコントローラ8は、基本筐体であって、ストレージコントローラ8と接続される増設筐体9内のSASハードディスク91を制御するためのもので、コントローラ部80が二重化された構成である。それぞれのコントローラ部80A、80Bは、それぞれのデータコントローラ81A、81Bによって接続されている。
【0033】
コントローラ部80には、CPU82、キャッシュメモリ83、共用メモリ84、チャネル制御部85、ディスク制御部86がデータコントローラ81を介して接続される構成である。
【0034】
CPU82には、各種プログラムを記憶するローカルメモリ87が接続される。
【0035】
キャッシュメモリ83は、NASコントローラ7とSASハードディスク91との間の入出力データを一時的に記憶するために利用される。
【0036】
共用メモリ84は、チャネル制御部85及びディスク制御部86により共用される記憶メモリである。共用メモリ84は、ストレージコントローラ8間でのキャッシュ整合及び、受領した要求を実行するコントローラ・オーナー権限等による相手側のストレージコントローラ8との情報伝達に用いられる、或いはストレージコントローラ8の電源投入時にシステムボリュームから読み出されたシステム構成情報及び各種制御プログラムや、NASコントローラ7からの要求などを記憶するために利用される。
【0037】
チャネル制御部85は、複数のチャネルアダプタ(図示せず)から構成されている。マイクロプロセッサ、ローカルメモリ及び通信インターフェース等を備えたマイクロコンピュータシステムとして構成されており、SAS I/F制御部75に接続するためのポート(図示せず)を備える。チャネル制御部85は、NASコントローラ7から送信される各種要求を解釈して、必要な処理を実行する。チャネル制御部85のポートには、それぞれを識別するためのネットワークアドレス(例えば、SASアドレスやWWN)が割り当てられている。
【0038】
ディスク制御部86は、複数のディスクアダプタ(図示せず)から構成されている。そしてディスク制御部86は、マイクロプロセッサやメモリ等を備えたマイクロコンピュータシステムとして構成され、増設筐体9との通信時におけるプロトコル制御を行うインターフェースとして機能する。ディスク制御部86は、例えば外部SASケーブルを介して増設筐体9と接続されており、SASのプロトコルであるSSP(Serial SCSI Protocol)やSTP(Serial ATA Tunneled Protocol)、あるいはSMP(Serial Management Protocol)等に従って増設筐体9との間でデータの授受を行う。
【0039】
増設筐体9は、SASエクスパンダ90及びSASハードディスク91を備えて構成される。第1の増設筐体9Aと第2の増設筐体9Bは、それぞれのSASエクスパンダ90との間で接続される。
【0040】
SASエクスパンダ90は、複数のポートを備え、ポイント・ツー・ポイント方式により各ポートにSASハードディスク91を接続している。SASエクスパンダ90は、中継器であり、ある種のスイッチングデバイスとして機能し、ストレージコントローラ8とSASハードディスク91との間のデータ通信を調整し、スイッチングを行う。
【0041】
SASハードディスク91は、複数備えられ、SASプロトコル上のコマンドを解釈できるハードディスクドライブである。
【0042】
SASハードディスク91が提供する記憶領域上には、1又は複数のRAID方式に基づく論理ボリューム(以下、RAIDボリュームと称する)が定義される。そして、この論理ボリュームにホスト装置2からのデータがNASコントローラ7を介して、所定大きさのブロックを単位として読み書きされる。
【0043】
各論理ボリュームを構成するRAIDボリュームには、それぞれ固有の識別子(LUN:Logical Unit Number)が割り当てられる。本実施の形態の場合、ユーザデータの入出力は、この識別子と、各ブロックにそれぞれ割り当てられるそのブロックに固有の番号(LBA:Logical Block Address)との組み合わせたものをアドレスとして、当該アドレスを指定して行われる。1つの論理ボリュームに割り当てられるRAIDボリュームは1つに限定されない。1つの論理ボリュームは、複数のRAIDボリュームを複数の記憶装置に跨って構成することも可能である。
【0044】
この論理ボリューム属性の種類には大きく、実論理ボリュームと仮想論理ボリュームの2つがある。
【0045】
実論理ボリューム(以下単に実ボリューム)は、割り当てられた記憶領域(RAIDボリューム911)と対応する論理ボリュームであり、実際にデータの入出力を行うことができる。
【0046】
これに対して仮想論理ボリューム(以下単に仮想ボリューム)は、割り当てられた記憶領域とは必ずしも対応しない仮想的な論理ボリュームである。
【0047】
(1−2)論理ボリューム内の概念構成
次に、図2に示すように、複数のSASハードディスク91の記憶領域上から提供される複数のRAIDボリューム911のうち、任意のRAIDボリューム911を選択してなるボリュームを説明する。任意の論理ボリュームの属性が実ボリュームである場合、当該実ボリュームは、ホスト装置2からのデータを格納する通常の論理ボリューム92と、当該ファイルに関するメタデータを格納するメタデータ格納用ボリューム93と、を備える。
【0048】
任意の論理ボリュームの属性が仮想ボリュームである場合、当該仮想ボリュームは、仮想フォルダを実現するための機能を有する特定ボリューム97を備えている。
【0049】
メタデータ格納用ボリューム93は、管理テーブル710〜712を格納するための管理テーブル格納領域94、仮想フォルダ内のみで使用するファイルの実データを格納する仮想体用データ格納領域95及びスナップショット対象の旧データを格納するスナップ用データ格納領域96が含まれる。
【0050】
仮想フォルダVAとは、フォルダ間やボリューム間を跨って関連付けするための核となるファイル(以下、これを主体ファイルAという)を作成したときに、NASコントローラ7の機能により仮想的に生成されるフォルダである。仮想フォルダVA内にあるファイルは、仮想体用データ格納領域95又は通常の実ボリューム92に格納される実体ファイルAと対応付けられている。また仮想フォルダVAは、本発明の関連付け動作のための視覚化によるユーザビリティ向上を目的として便宜上作成されるフォルダであって、ユーザが意識的に作成するものではない。但し、ユーザの操作により名称変更等のカスタマイズが可能なように工夫されている。仮想フォルダVA内には、別の実フォルダに存在する実体ファイル(以下単に実ファイルと称する)及び仮想フォルダVA内のみでアクセス可能な仮想体ファイルがアクセス可能に配置され、ホスト装置2のディスプレイ上に(OS等の機能により)視覚化される。
【0051】
仮想体ファイルとは、主体ファイルA自体もしくは主体ファイルAに関連付けられた更新可能なファイルであり、仮想フォルダVA以外では参照できないデータもしくは参照される実データへのリンクポインタをファイルの様に視覚化したものをいう。仮想体ファイルの更新は、仮想体用データ格納領域内で実行される。仮想体ファイルは、実ファイルへのリンク情報及び仮想フォルダVA内の属性情報が格納されて形成される場合と、さらに仮想フォルダVA内でのみ操作可能な実際のデータを伴った形態で形成される場合とがある。
【0052】
またさらに仮想体ファイルには後述する2種類の機能を有したファイルがある。
【0053】
一つは、あるNASコントローラ7、ストレージコントローラ8及び増設筐体9(以下、これをNASストレージNという)上に形成された仮想フォルダVAの構成を、他のNASストレージで再現できるポータビリティ・ファイルと呼ばれる仮想体ファイルである。ポータビリティ・ファイルとは、後述する関連性管理テーブル711の内容を、ユーザに対して視覚化したファイルである。
【0054】
また、他の一つは、ある時点での仮想フォルダVAを再現できるスナップショット・ファイルと呼ばれる仮想体ファイルである。スナップショット・ファイルとは、ある時点での仮想フォルダVAを構成する、ある時点の主体ファイル及び主体ファイルに関連するファイルへのリンクポインタ(位置情報)を格納したファイルである。
【0055】
これら仮想体ファイルには、仮想体用データ格納領域95に格納されているファイルAを含む、仮想フォルダVA内の、最新もしくは、ある時点の、主体ファイルA及び関連ファイルのデータへの位置情報が格納される。
【0056】
そして仮想フォルダVAを提供するNASストレージNは、主体ファイルA及び関連ファイルの位置情報に基づき、本来のデータが格納されているNASストレージNから実ファイルもしくは仮想体ファイルのデータを読み出し又は書き込みを行う。ただし、仮想体ファイルがスナップショット・ファイルの場合には、書き込みは抑止される。この場合、本来のデータが格納されているNASストレージNがホスト装置2の書き込み要求に対してエラー報告をする。なお、仮想フォルダVAを別のNASストレージNで使用する場合には、使用元のNASストレージNと使用先のNASストレージNとの間で認証を行うように設定するのが、セキュリティ上望ましい。
【0057】
管理テーブル格納領域に格納される各種管理テーブル710〜712は、NASコントローラ7のメモリ71上に全体あるいは一部の必要部分を読み出して使用される。以下、詳述する。
【0058】
(1−3)本実施の形態による関連付け機能
(1−3−1)メモリの構成
次に、本実施の形態によるNASコントローラ7のメモリ71内に記憶されるテーブルについて説明する。
【0059】
[記憶管理テーブル]
記憶管理テーブル710は、図3に示すように、NASコントローラ7の配下に接続されるストレージコントローラ8に記憶したファイルの位置を管理するためのテーブルである。この記憶管理テーブル710は、主にホスト装置2からのファイルアクセス要求を、SASハードディスク91上に構成されたRAIDボリューム911にアクセスできるようにブロックアクセス要求として変換するためのテーブルである。
【0060】
図4に示すように、例えば一般的なノードツリーのモデル図を示す。まず、このモデル図は、「/Root」ノードは、「/normal_dir」と「/special_dir」とで示すディレクトリ・ノードへのポインタをもつことを示している。同様に、「/normal_dir」のディレクトリ・ノードは、一階層下のノードへのポインタをもつことを示している。そして、最下位階層の「File_A.doc」に関して、関連付けられたファイルがあることを示している。また、このファイルは、仮想体ファイル格納領域に格納される対象ファイルであることを示している。その他の最下位階層のファイルに関しては、通常の論理ボリューム92内に格納されるファイルを示す。また、例えば「bbb.pdf」のような実ファイルは、一階層上に移動することもできることを示している。
【0061】
このノードツリーモデルは、次の記憶管理テーブル710にて管理されている。
【0062】
図3に戻り、記憶管理テーブル710は、「ボリュームID」フィールド710A、「パス名」フィールド710B、「ファイル名」フィールド710C、「データ長」フィールド710D、「属性情報」フィールド710E、格納先装置のIDを格納する「物理装置ID」フィールド710F、論理ユニット番号を格納する「LUN」フィールド710G、当該LUN上の当該ファイル格納位置の先頭LBA(Logical Block Address)を格納する「先頭LBA」フィールド710H、使用したデータ長を格納する「使用データ長」フィールド710I及び、ファイルにフラグメントが生じて別の位置にもファイルの一部が格納されている場合に、その位置情報を格納する「リンク用テーブル」フィールド710Jを備えて構成される。
【0063】
そして「ボリュームID」フィールド710Aには、ホスト装置2がアクセスする論理ボリュームを識別するための識別IDが格納される。また「パス名」フィールド710Bには、ファイルのパス名が格納される。また、「ファイル名」フィールド710Cには、ファイル名が格納される。さらに「データ長」フィールド710Dには、ファイルデータの長さ(バイト長)が格納される。「属性情報」フィールド710Eには、図5に後述する属性情報パラメータの他、対象となるファイルが通常の実ファイル又は仮想フォルダを構成する主体ファイルもしくは関連ファイルかどうかを識別し、拡張された機能に対処するために必要な情報が格納される。例えば、対象となるファイルが通常の実ファイルに格納されている場合には「通常」の属性情報10が格納され、仮想体ファイルに格納されている場合には「拡張」の属性情報11が格納される。
【0064】
したがって、仮想フォルダVA内に配置される仮想体ファイルは、この属性情報部分に対象フラグ(例えば「拡張」)を立てることで識別が可能となる。そのため、フラグが立っているファイルの「パス名」や「ファイル名」が変更になった場合、変更前の情報をメタデータ内から検索して、その位置情報を自動的に修正するようにすれば、仮想フォルダへの影響はない。同様に、ファイルを削除する場合にも、仮想体用データ格納領域95にデータを移動し、自動的にメタデータを修正することも可能である。
【0065】
ここで、図5に示すように「通常」の属性情報10に含まれる情報としては、次が挙げられる。「通常」の属性情報10に含まれる情報は、タイムスタンプ情報10A、RW属性等情報10B、位置情報であるノード区分情報10C、セキュリティ情報10D及びファイルハンドル情報10Eを備えて構成される。
【0066】
さらにタイムスタンプ情報テーブル10Aには、作成日時、更新日時及び最新アクセス日時等のパラメータ/ステータス等を示す情報が含まれる。また、RW属性等情報テーブル10Bには、ホスト装置2からのライト可否、隠しファイル、システムファイル及び削除済等のパラメータ/ステータス等を示す情報が含まれる。ノード区分情報テーブル10Cには、ファイル、ポインタ及び特定ファイル又は特定ボリュームの意味を示すスペシャル情報等のパラメータ/ステータス等が含まれる。セキュリティ情報10Dには、さらにアクセス可及びアクセスレベル情報が含まれる。そしてファイルハンドル情報10Eには、識別子情報が含まれる。
【0067】
また、図6に示すように「拡張」の属性情報11に含まれる情報としては、関連付け機能情報11A、関連性管理テーブル711へのポインタ情報である関連性管理テーブルポインタ情報11B、モード1/仮想フォルダ情報11C及びモード2/スナップショット情報11Dを備えて構成される。
【0068】
さらに関連付け機能情報11Aには、パラメータとして関連付け変更可、関連付け禁止等の機能の状態を示す情報が含まれる。
【0069】
また、モード1/仮想フォルダ情報11Cには、仮想フォルダVA内での操作が実ファイルに反映されるか否かを示すフィードバック可否フラグ及び仮想フォルダVAの所在を示す仮想フォルダパス等の情報が含まれる。
【0070】
モード2/スナップショット情報11Dには、タイムスタンプ、以前のスナップショット・ファイルへのポインタを示す前Linkポインタ及び以後のスナップショット・ファイルへのポインタを示す後Linkポインタ等の情報が含まれる。
【0071】
図3に戻り、記憶管理テーブル710の、その他のフィールド710F〜710Jは、ファイルの位置情報であるので、詳細な説明は省略する。
【0072】
[関連性管理テーブル]
関連性管理テーブル711は、様々なボリュームやフォルダ内に記憶される複数のファイルについて、グループ化するためにファイル同士の関連付けの管理をするためのテーブルであり、本願の特徴点である。
【0073】
関連性管理テーブル711は、図7に示すように、テーブル識別子として、グループ化するために任意に選択可能な核となるファイルである主体ファイル情報711A、仮想ボリューム下で作成された仮想フォルダの所在を示す仮想フォルダパス名情報711B、タイムスタンプ情報711C、セキュリティ設定を示すモード設定情報711D、関連付けしたファイルの登録数を示す関連ファイルエントリ数711E、各種関連付けしたファイルの情報を示す関連ファイル情報711F、711G及びその他各種ファイルやフォルダの所在を示す情報が格納された主体ファイルパス名情報711L、仮想フォルダパス名情報711M、関連ファイルパス名情報711N、711O・・・を備えて構成される。
【0074】
そして、主体ファイル情報711Aのテーブル内には、さらに主体ファイルの識別子(例えばハンドル値等)、主体ファイルの所在を示すファイル名を含むパス文字列記憶領域へのポインタ、ファイルの状態や種類等を示すステータス、仮想フォルダ内での操作が実ファイルに反映されるか否かを示すフィードバック可否の情報が含まれる。前述のステータスには、実ファイル/仮想体用のメタデータ/フォルダ等のファイルの種類および、削除状態/書き込み禁止/ノーマル(通常もしくは読書き可)等のファイルの状態が含まれる。そして関連ファイル情報711F、711Gにも、711Aと同様に、識別子、関連ファイルの所在を示すパス文字列記憶領域へのポインタ、ステータス及びフィードバック可否の情報が含まれる。またこれらは通常ボリュームおよびフォルダに格納されているファイルのみならず、仮想体用データ格納領域95内のファイルデータにもアクセス可能なように構成される。
【0075】
また、仮想フォルダパス名情報711Bには、パス名のハッシュ値やハンドル値等から成る識別子、仮想フォルダVAのパス文字列記憶領域へのポインタ、仮想フォルダVAの使用可否の情報が含まれる。
【0076】
タイムスタンプ情報711Cには、このテーブルを更新した最新の日時である最新更新日時の情報が含まれる。
【0077】
モード設定情報711Dには、ユーザの操作を通じてNASストレージN内で自動的にファイルの関連付けを行うか否かを示す自動関連付可否及び、当該仮想フォルダVAへのアクセスセキュリティ制御に用いられるアクセステーブルへのポインタ情報等が含まれる。
【0078】
なお、本実施の形態では、前述の、ステータス、フィードバック可否、使用可否、自動関連付可否の情報については、フラグによるビット制御を行っている。
【0079】
[ノード情報管理テーブル]
ノード情報管理テーブル712は、ファイルの位置情報を管理するためのテーブルであり、ここでは省略する。本テーブルの代表的なものにはiノードがある。
【0080】
(1−3−2)本実施の形態による関連付けの手順
本実施の形態のNAS環境下における具体的な動作としては、ある特定ファイルと、当該特定ファイルに関連するファイルのファイルノード(位置情報)及び対象となるファイルとが仮想体ファイルの場合に、メタデータ及び実データを記憶するための仮想体用データ格納領域95に当該仮想体ファイルを格納し、当該メタデータに基づいてグループ化されたファイル群をホスト装置2に提供、あるいはバックアップ処理やアーカイブ処理を行う装置に提供、又は、他のNASストレージNに提供することができる点が特徴である。
【0081】
ある特定ファイルと、他のファイルとの関連付けを実行する契機となるのは、ユーザの操作に基づいて、ホスト装置2から発行される要求である。関連付けについては、ホスト装置2のOS又はアプリケーションによるAPIを用いて行う方式と、仮想フォルダVAへの書き込み及び更新・ファイルの削除等の操作を用いて行う方式とがある。
【0082】
以下では、夫々の方式によって、特定のファイルと他のファイルを関連付けする方法について説明する。
【0083】
(1−3−2−1)手順1 APIを用いる関連付けの方式
本実施例においては、ホスト装置2のOS又はアプリケーションによるAPI(Application Program Interface)を用いて関連付けを行う方式を実現させる場合に、ホスト装置2とNASストレージNとの双方において、ファイルの関連付け、関連付けの解除、関連付けの禁止(抑止)、関連付けされたファイル(フォルダを含めても良い)のノードリストのホスト装置への報告、報告されたノードリストに基づいて当該ノードに対応するファイルの位置する実フォルダを開く、報告されたノードリストに基づいて当該ノードに対応するファイルをアプリケーションから開く、Webブラウザ上での参照および操作可能なハイパーテキスト形式での入出力に対応する処理を実装している。
【0084】
なお、ノードリストとは、対象となるコンテンツ群のファイルノード情報を列挙したものをいう。以下に、APIを用いる関連付けの方式について説明をする。
【0085】
[処理1.機能定義、領域設定]
具体的には、まず管理者は、ホスト装置2において、NASストレージ内に上述した処理の実施を行うための特定ボリューム97、仮想フォルダVA又は特定フォルダVFを設定する。ここで、特定ボリューム97又は特定フォルダVFとは、フォルダ間やボリューム間を跨いで、コンテンツ(ファイル)同士の関連付けの機能を実現するために、設けられる仮想ボリューム又は仮想フォルダである。尚、これらは実ボリューム又は実フォルダにより実現しても良い。特定ボリューム97又は特定フォルダVF内に視覚化されるファイルは、実ボリューム92又は、仮想体用データ格納領域95内に格納されるファイルもしくはデータと対応付けられる。また、上述した仮想フォルダVAは、デフォルト状態では、この特定フォルダVF上に作成される。尚、後でユーザの設定(パス名変更等)により別の位置に変更することもできる。ここでは、管理者が特定フォルダVFを設定したとして、以下の処理を説明する。
【0086】
但し、この設定は、NASストレージNが、対象となる特定ファイルを識別するために行う設定であるため、個々のファイル属性の一部として設定するようにしてもよい。また、NASストレージN内の全てのファイルを対象にするようにしてもよいが、全てのファイルを対象にする場合には、メタデータが必要以上に大容量となる可能性に留意する必要がある。
【0087】
[処理2.エントリの生成]
操作者(ユーザ)は、ホスト装置2を操作して、処理1で設定された特定フォルダ内に、グループ化するファイル群の核となる主体ファイルAを作成し、又は任意のフォルダ内に格納されているファイルを特定フォルダVF内にコピー若しくは移動して主体ファイルAを作成する。
【0088】
このとき、ホスト装置2からNASストレージNに対して、ファイルのライト要求が発行される。当該要求を受領したNASストレージNは、当該要求が、特定フォルダVF内のファイルに対して発行されたものか否かを判断し、特定フォルダVF内のファイルに対して発行された場合には、当該ファイルに対応するメタデータの新規エントリを生成する。すなわち、操作者(ユーザ)の操作によりNASストレージNが、図7に示す、関連性管理テーブル711内の主体ファイルA情報と当該情報に関連する情報711A〜711D、711L及び711Mを記憶する。
【0089】
なお、当該要求が特定フォルダVF内のファイルに対するものではなかった場合は、ホスト装置2からのライト要求にしたがい、通常フォルダのファイルにデータが書き込まれる。
【0090】
[処理3.関連付けの命令]
次に操作者(ユーザ)は、主体ファイルAをオープン中に他のファイルZから、情報のコピー&ペーストを行った場合に、ホスト装置2は、コピー元ファイルZのiノード情報とコピー先ファイルAのiノード情報とを、NASストレージNに送信する。なお、この時に送信するiノード情報は、当該情報の一部でもよい。
【0091】
図8は、NASストレージN内の通常の論理ボリューム92内の任意のフォルダ内に格納されるファイルZの全部又は一部のデータをコピー&ペーストすることで、主体ファイルAを更新した場合の概念図である。主体ファイルAはNASストレージN内の特定ボリューム97内に見かけ上格納される。
【0092】
[処理4.関連付けの処理]
処理3により、NASストレージNは、ホスト装置2から送信されたコピー元ファイル及びコピー先ファイルのいずれか一方のファイルが関連性管理テーブル711内にエントリを有しているか否かを検索し、エントリが有ると判断した場合には、もう一方のファイルのiノード情報を、関連ファイル情報711Fとして、関連性管理テーブル711に追加する。尚、当該ファイルが、既に関連性管理テーブル711に記憶済みの場合は、再度の追加は行わない。
【0093】
NASストレージNは、コピー元ファイルZ及びコピー先ファイルAのいずれもが共に関連性管理テーブル711内にエントリがないと判断した場合には、特定フォルダVF内のファイルではないと判断し、何も行わない。
【0094】
また、NASストレージNは、上記エントリのテーブル内に「リードオンリー(関連付け抑止)」フラグが設定されていると判断した場合にも、何も行わない。
【0095】
[処理5.出力処理]
NASストレージNは、(操作者(ユーザ)の操作に基づく)ホスト装置2からの要求により、作成した主体ファイルA及び関連ファイルのiノードリストを送信する。
【0096】
ホスト装置2からの要求は、操作者がホスト装置2上の画面を操作することにより発行される。
【0097】
具体的には、図9に示すように、操作者はホスト装置2上の画面上で、特定フォルダVFのウィンドウW1内の主体ファイルAを右クリックする等で表示されるショートカットメニューの“プロパティ”P1をポイントし、マウスをクリックする等の手段により選択することで、ウィンドウW2画面が開く。ウィンドウW2内には、主体ファイルAと実際に関連づけられたファイルリスト表示部L1がある。操作者はファイルリスト表示部L1に表示された主体ファイルAに関連付けられたファイルのうち、開きたいファイルのチェックボックスCB0にチェックをするか、又は直下の「全て選択」ボタンをクリックすることにより選択し、「フォルダを開く」ボタンを押す。
【0098】
又は、操作者はホスト装置2上において、特定フォルダVFを開いたウィンドウW1内の主体ファイルAを右クリックする等で表示されるショートカットメニューの“関連フォルダを開く” P2にポインタを置き、マウスをクリックする等の手段により、選択して実行する。この場合、上記の「全て選択」ボタンを押したのと同様に、主体ファイルAに関連付けられた全てのファイルが選択される。
【0099】
NASストレージNは、ホスト装置2からの要求に応じて、選択されたファイル(または当該ファイル所属するフォルダ)のiノード情報を送信する。ホスト装置2は、NASストレージNから受領した情報に基づき、画面上に、ユーザが選択した関連ファイルの所属する実フォルダのウィンドウをオープンする処理を行う。
【0100】
上記操作により実行された主体ファイルAの所属する特定フォルダVFのウィンドウW1及び主体ファイルAと関連付けられた関連ファイルの所属する実フォルダのウィンドウW3〜W5を図9に示す。
【0101】
[処理6.メタデータの修正処理(削除処理、追加処理又は追加禁止(抑止)処理)]
操作者は、不要に関連付けが行われたファイルに対して、ホスト装置2上の画面において、主体ファイルAのプロパティ画面W2を開き、ファイルリスト表示部L1に表示された不要なファイルにチェックを入れた後、「リストから削除」ボタンを押すことで、当該ファイルの関連付けを解除することができる。具体的には、ホスト装置2は、当該ファイルの関連付け解除要求をNASストレージに発行し、当該要求を受領したNASストレージNが、関連性管理テーブル711から当該関連付けの解除指示を受けたファイルのエントリを削除する。
【0102】
自動的な関連付けの機会を与えられなかったファイルについては、操作者の操作により、手動で関連付けをすることができる。
【0103】
具体的には、図9に示すように、ホスト装置2上の画面において、作成した主体ファイルAのプロパティ画面を開いた後、ウィンドウW2内の「リストに追加」ボタンB2を押す。そうすると、ホスト装置2の画面上には、ファイルを選択するためのダイアログボックスが表示される(図示せず)ので、関連付けを行いたいファイルを選択して、「OK」ボタンを押すことにより、(ダイアログボックスが閉じ、)ウィンドウW2内のファイルリスト表示部L1に選択したファイルが登録される。そして操作者が、ウィンドウW2内の「OK」ボタンB1を押すことにより、ホスト装置2からNASストレージNへ、選択されたファイルの関連付け要求が発行される。NASストレージNが、当該主体ファイルAの関連性管理テーブル711へ当該関連付けの指示を受けたファイルの新規エントリを追加することにより、主体ファイルAと当該ファイルを関連付けることができる。
【0104】
なお、図10に示すように、通常ボリュームである実ボリューム92の実フォルダ内に格納されている新規関連付対象ファイルNについて、当該フォルダ画面(ウィンドウ)W6上の当該ファイルNのアイコンを右クリックし、「コピー」表示にポインタP3を置いて選択実行した後に、特定フォルダウィンドウW1上の主体ファイルAのショートカットメニューが有効となる(もしくは有効化される)「ファイルの関連付け」表示P4を選択して、実行することでも、同様に主体ファイルAと当該ファイルNの関連付けを行うことができる。
【0105】
図9に戻り、操作者が、これ以上の関連付けを行いたくない場合には、ホスト装置2上の画面において、作成した主体ファイルAのプロパティ画面W2を開き、「自動追加禁止」のチェックボックスCB2をチェックした後「OK」ボタンB1を押すことで、以降の関連付けを抑止することができる。これにより、ホスト装置2がNASストレージNに対して、ファイルの関連付け抑止要求を発行する。当該要求を受領したNASストレージNは、記憶管理テーブル710の属性情報フィールド710E内のフラグ11A(図6)を「関連付け禁止」設定とすることで、設定後に発行されるホスト装置2からの要求に基づく当該主体ファイルAへの関連付け要求を無視する(もしくは関連付け処理を行わない)。
【0106】
(1−3−2−2)手順2 仮想フォルダ内のファイル操作によりファイルの関連付けを行う方式
次に、仮想フォルダVA内におけるファイル操作によって、ある特定ファイルと他のファイルとの関連付けを行う方法について説明をする。上述の手順1では、ホスト装置2側の操作及びホスト装置2からの通知により関連付けを行ったが、手順2では、仮想フォルダへのファイル書き込みを契機としてNASストレージN側が関連付けを行う。
【0107】
[処理1.機能定義、領域設定]
上述したAPIを用いる特定フォルダVF等の設定の方式と同様なので、説明を省略する。
【0108】
[処理2.エントリの生成]
操作者は、ホスト装置2において、処理1で設定された特定フォルダVF内に、グループ化するファイルの核となる主体ファイルAを作成し、又は任意のフォルダ内に格納されているファイルを特定フォルダVF内にコピー若しくは移動して主体ファイルAを作成する。このとき、ホスト装置2からファイルのライト要求が発行される。
【0109】
例えば、図11に示すように、任意ボリュームSVに格納されるフォルダF0内に主体ファイルAの実ファイルがある場合を説明する。図11に示すファイルB〜Gは、主体ファイルAと関連付けられるファイルとする。
【0110】
NASストレージNの通常ボリューム920には、ファイルB、Fが格納されたフォルダF1がある。通常ボリューム921には、ファイルCが格納されたフォルダF2がある。通常ボリューム922には、ファイルD、Gが格納されたフォルダF3がある。そして、NASストレージNには、これらの通常ボリューム920〜922の他に、メタデータ格納用ボリューム93内にある仮想体用データ格納領域95を有している。
【0111】
当該要求を受領したNASストレージNは、主体ファイルAを見かけ上格納した特定フォルダVF上に、主体ファイル名をベースとした仮想フォルダVAを生成し、ホスト装置2にその旨通知する。これにより、操作者は、主体ファイルAの実ファイルを格納したフォルダF0とは別に、主体ファイルAを含むもうひとつのフォルダ(仮想フォルダVA)が作成されたことを認識する。
【0112】
図12は、図11をノードツリーの形で表現したものである。すなわち、特定フォルダVF上に、主体ファイルAを格納またはコピー等の操作により作成すると、主体ファイルAを作成したのと同じ階層に主体ファイルAを含んだ仮想フォルダVAが仮想的に生成される。詳細は後述するが、操作者はこの仮想フォルダVAにグループ化したい関連ファイルB〜Gをそれぞれ実フォルダF1〜F3からドラッグ&ドロップする。この操作により主体ファイルAおよび関連付けられたファイルB〜Gを含んだ仮想フォルダVAが形成される。それらの内ファイルB,F,Gは操作者により更新された結果、仮想体ファイルへと関連付けが変更され、ファイルB’,F’,G’が仮想フォルダ内に配置されている。図12の破線部は、操作者から見た仮想フォルダVAの状態を示している。
【0113】
仮想フォルダVA内に視覚化されるファイルは、実体的に存在する実ファイルではない。仮想フォルダVA内にある主体ファイルAを読み出す場合には実フォルダF0内に格納される実ファイルからデータが読み出される。
【0114】
仮想フォルダVA内では、例えば主体ファイルAの名前を変更すること等によって、フォルダF0内に格納される実ファイルには影響を及ぼすことなく、メタデータのみを変更することで、仮想フォルダ内でのファイルの属性情報等の変更ができる。具体的には、関連性管理テーブル711の主体ファイル情報711Aがポイントする文字列に対して変更が行われる。なお、主体ファイルAの名前を変更したことを契機として、主体ファイル情報711Aのステータスを実ファイルから仮想体ファイルに変更してもよい。この場合、実ファイルのデータが仮想体用データ格納領域95にコピーされる。
【0115】
また、図11に示すように、仮想フォルダVA内に格納されたファイルB〜Gのうち、ファイルB、F、Gの関連付けの変更を行った場合には、関連性管理テーブル711の関連ファイル情報の位置情報を別の実ファイルや、仮想体用データ格納領域95内の仮想体ファイル(本実施例では仮想体ファイルの当該データ実体B’,F’,G’)に対応するように変更すればよい。
【0116】
これにより、実ファイルB、F、Gには影響を及ぼすことなく変更後のファイルB’、F’、G’を仮想フォルダVA内で管理することができる。変更後は、操作者はファイルB’、F’、G’にアクセスすることができる。このようにメタデータの関連付けのみを変更することでデータのグループ構成を変更することができるので、全く新しい別のファイルと差し替えることもできる。
【0117】
さらに、操作者が、主体ファイルAと既に関連付けられている実ファイルの格納位置を変更した場合において、位置変更したファイルを操作者がいちいち手作業で設定変更等することなく仮想フォルダ上で参照するためには、以前に述べた関連付けを実行した際に、予め当該実ファイルの記憶管理テーブル710内の「属性情報」フィールド710Eにフラグを立てておく。このようにすることで、実ファイルの位置を変更する際に、当該ファイル記憶管理テーブル710が参照され、新しい位置情報に修正されると同時に当該ファイルのメタデータを管理する関連性管理テーブル711の関連ファイルパス名を併せて変更する。この様に主体ファイルAと関連する実ファイルの位置を常に最新の状態に自動的に保つことが可能である。また上記手段に限らず、NASストレージNが内部の当該ファイルを検索手段により検索するようにしても良い。
【0118】
また上記の様な手段を行わずに、例えば、図13に示すように、操作者が仮想フォルダVA内のウィンドウW1で、表示されているファイルCのアイコンにポインタP5をあて、ダブルクリックをすることによりNASストレージNへの当該ファイルの読み出し要求が発行されるが、以前の実ファイルの位置変更によりメタデータが示すパス位置(フォルダ)に当該実ファイルが存在しておらず、開くことができなくなったファイルCに関するメッセージM1を操作者に通知することができる。
【0119】
また、実ファイルと異なる属性を設定できることで、例えば、実ファイルの拡張子を変更して、操作者が、実ファイル側のフォルダではアプリケーションを特定できなくして編集できないようにし、仮想フォルダVA内のみで編集が可能とすることもできる。以上を簡単に纏めると、仮想フォルダVA内で、ファイル名の変更や、ファイルの削除を行っても、実ファイルに影響がないようにすることができる。また、主体ファイルAには影響を及ぼすことなく、変更後の主体ファイルA’を仮想フォルダVA内で管理することもできる。
【0120】
[処理3.関連付けの処理]
次に、操作者は、NASストレージNにある任意のフォルダ内に格納される任意のファイルを仮想フォルダVAにドラッグ&ドロップ操作を行い、任意のファイルを仮想フォルダVA内に移動もしくはコピーすることで、ホスト装置2から任意のファイルの読み出し要求及び書き込み要求が発行される。
【0121】
NASストレージNは、読み出し要求及び書き込み要求の受領を契機として、主体ファイルAと任意のファイルとの関連付けを行う。
【0122】
NASストレージNは、当該書き込み要求が、仮想フォルダVAを上位パスとする書き込み要求であると判断した場合に、書き込み対象のデータと読み出し対象のファイル内にあるデータとを比較するが、実際の書き込みはこの段階では行わない。NASストレージNは、両者のデータを比較した結果、書き込み対象のデータと読み出し対象のファイル内にあるデータとが一致した場合には、読み出し対象のファイルが特定できたとして、仮想フォルダの主体ファイルAの関連性管理テーブル711の関連ファイル情報711Fに当該読み出しファイルのエントリを追加し、そのファイルのノード情報を登録する。これにより、主体ファイルAと読み出し対象のファイルとなった任意のファイルとの関連付けが完了する。
【0123】
一方、NASストレージNは、書き込み要求が、仮想フォルダVA内のデータに対する書き込み要求ではないと判断した場合には、ホスト装置2の要求にしたがい、任意のファイルを、指定された任意のフォルダ内にコピーする。
【0124】
また、ホスト装置2から別のNASストレージに格納された任意のファイルに対する書き込み要求である場合には、([0121]で読み出しデータと書き込みデータが一致しない場合、もしくは、書き込み要求に対応する読み出し要求を受領していない場合等)NASストレージNは、任意のファイルを仮想体用データ格納領域95に格納し、関連性管理テーブル711の関連ファイル情報711Fに仮想体用データ格納領域95にあるファイルのエントリを追加し、当該データの位置情報を登録する。
【0125】
NASストレージNは、仮想フォルダVA内に主体ファイルAと関連付けられる関連ファイルノードを仮想的に作成し、ホスト装置2に通知する。そして、上述と同様に、仮想フォルダVA内では当該関連ファイル名の変更によっても、実体の関連ファイルに影響を及ぼすことなくメタデータのみを変更することで上記を実現できる。
【0126】
なお関連付けは、フォルダに対しても行うことができる。例えば、主体ファイルAと任意のファイルとの関連付けに際して、任意のファイルを格納したフォルダを仮想フォルダVAのベースとすることができる。任意のファイルを格納したフォルダが、例えばC言語等で使用するメイクファイルやプロジェクトファイルを含むフォルダをベースとして仮想フォルダVAを構築した場合に、メイクファイルに関連付けられている、異なるボリュームやフォルダ、あるいは異なるNASストレージNに格納されたファイルが、仮想フォルダVA内でグループ化することで、同一のフォルダ名を使用することができる。これにより、異なるNASストレージN内に格納されている様々なファイルをグループ化して任意のベースフォルダに一元管理したり、ベースフォルダ内の個々のファイルを個別に関連付けすることなく一括して関連付けすることができるので、操作者の負担を軽減することができる。
【0127】
また、仮想フォルダVAのパス名を任意に変更することもできる。これにより操作者には、以前と同じ特定フォルダ内の階層に置かれている仮想フォルダVAのアイコンを開くと、ショートカットを開いた時のように別のフォルダへジャンプしているかのようにみえる。
【0128】
[処理4.メタデータの修正処理]
操作者は、仮想フォルダVA内にある関連ファイルの削除を契機として、NASストレージNは、関連性管理テーブル711において、当該削除したファイルの関連ファイル情報711Fの「ステータス」を「削除」に変更する。そしてNASストレージNは、仮想フォルダVA内の当該削除したファイルの位置情報(ノード)を削除(抹消)した後、ホスト装置2に報告する。
【0129】
このとき、削除した関連ファイルが仮想体ファイルの場合には、仮想体用データ格納領域95に格納されるデータを直ちに削除して、領域を開放してもよい。またNASストレージNは、後に無効操作ができるように、任意(一定)の時間が経過した後に削除処理をおこなってもよい。
【0130】
[処理5.その他の処理]
仮想フォルダVAを特定フォルダVF以外の任意のフォルダへ実体化させたい場合、操作者が当該仮想フォルダのアイコンを任意のフォルダにドラッグ&ドロップすることで、仮想フォルダ内のファイルを実ファイルとして任意のフォルダにコピーして格納することができる。
【0131】
また、仮想フォルダVAを、別の機能を有する特定フォルダにドラッグ&ドロップすることで、例えば、ポータビリティ・ファイルの生成が行える。ポータビリティ・ファイルの詳細については後述するが、別のNASストレージN上で当該仮想フォルダVAを使用する目的で、NASストレージNによって作成される当該仮想フォルダの構成情報等をデータとするファイルである。
【0132】
上記のように、操作者は、特定フォルダVF以外にもポータビリティ・ファイル作成専用フォルダやスナップショット・ファイル作成専用フォルダの如く特殊機能用フォルダを予めNASストレージNに設定し、仮想フォルダVAを当該特殊機能用フォルダにドラッグ&ドロップを行うことで、NASストレージNに高度な機能を付与することもできる。
【0133】
また、操作者は、バックアップソフト等を使用して、仮想フォルダVAをバックアップ対象に設定した場合、仮想フォルダを別のストレージ装置上に実フォルダとしてリストア(復元)することも可能である。
【0134】
[その他]
なお、上述で説明をした手順1及び手順2における補足を説明する。
【0135】
操作者の操作は、NASストレージNを動作させる契機となる。例えば仮想フォルダVA内のファイル削除や、関連ファイルである実ファイルの削除を行うと、関連付けの解除が行われる。また仮想フォルダVA自身又は仮想フォルダVA内のファイルの名前の変更や、実フォルダの関連ファイルの名前の変更を行うことで、メタデータ(関連性管理テーブル711)の変更が行われる。
【0136】
同様に、実フォルダと仮想フォルダVAとの関連付けの変更、実フォルダ内の属性変更、仮想フォルダVAの属性変更及び仮想フォルダVAのパス変更を行うと、メタデータ(関連性管理テーブル711)の変更が行われる。
【0137】
(1−3−1−3)仮想フォルダ内のファイル操作による関連付け方式の一例
図14は、仮想フォルダVA内を操作する関連付け方式の一例として、Webブラウザで操作可能なファイルのグループをポータビリティ・ファイルにより別の装置からアクセス可能なようにする単純な例を示す。この例のようなポータビリティ・ファイルの一形態として、HTML書形式のファイルが挙げられる。
【0138】
[ウィンドウW11]
まず、操作者は、ホスト装置2上の画面上にある仮想フォルダVAを含む特定フォルダVFのウィンドウW11を開く。なお、仮想フォルダVAには、ウィンドウW10に示すように、主体ファイルAと関連付けられるファイルが配置されている。主体ファイルA及び関連付けられるファイルは、仮想体ファイルもしくは実ファイルである。
【0139】
[ウィンドウW12]
そして、操作者は仮想フォルダVAを特殊機能用フォルダの1つであるエクスポート・フォルダのウィンドウW12内にドラッグ&ドロップする。これにより、HTML形式でのファイルが特定フォルダVF内にNASストレージNによって、形成される。エクスポート・フォルダについては、後述する。
【0140】
[ウィンドウW13]
特定フォルダVF内にあるHTML形式でのファイルを通常のボリューム92内に移動する。この様子をウィンドウW13に示す。この時、当該ファイル移動する先のNASストレージNは同一ネットワーク上に配置された別の装置でも構わない。
【0141】
[ウィンドウW14]
通常のボリューム92内に格納されたHTML形式でのファイルを開く。この様子をウィンドウW14に示す。当該HTMLファイルには、Webブラウザ上に表示されたファイル名をクリックすると当該ファイルがダウンロード可能なようにファイルのリンク先が埋め込まれている。また、このリンク先は仮想体ファイルに対してもアクセス可能な様になっている。
【0142】
なお、NASストレージNには、Webサーバとしての機能を備えているストレージがある。この場合には、図15に示した画面W15のように、仮想フォルダVAを直接Webブラウザから操作できるようにしてもよい。
【0143】
(1−4)第1の実施の形態による記憶システムの概念構成
次に、第1の実施の形態による記憶システムの概念構成について以下に説明する。
【0144】
図16に示すように、100は、図1で説明をした記憶システム1のハード構成を使用した場合における概念構成である。
【0145】
なお図16において、図1で説明した符号と同じ符号を付した図番の説明は省略する。
【0146】
100は、ホスト装置2がネットワーク5を介してNASコントローラ7、ストレージコントローラ8及び増設筐体9を1つの装置としたNASストレージN1〜4とそれぞれ接続される概念構成である。そして、それぞれのNASストレージN1〜4には、複数のSASハードディスク91の記憶領域上に提供される複数の論理ボリューム92が形成されている。なお、NASストレージN1〜4は4台のネットワークに接続されているものとするが、この台数には限られない。
【0147】
仮想フォルダVAは、NASストレージN1内にある特定フォルダVF内にある主体ファイルAと、フォルダF0〜F2に格納されるファイルB〜Gと、から構成される。
【0148】
主体ファイルAと、当該主体ファイルAと関連付けされたファイルB〜Gとは、手順1で説明をした、主体ファイルAをオープン中でのコピー&ペースト操作、主体ファイルAのプロパティ画面からのファイルの関連付け操作、及び、手順2で説明をした、仮想フォルダVA内に関連付け対象のファイルをドラッグ&ドロップ操作を行うことで形成されたものである。
【0149】
本実施の形態によるNASストレージN1〜4は、3種類の特殊機能をもつ実行用フォルダを有している。それぞれは、図17に示すような機能が予め設定される。
【0150】
具体的には、機能フォルダ名「/imp」で示すインポート・フォルダFimpは、当該インポート・フォルダFimp内に格納されるファイルをインポートする機能を有し、ポータビリティ/スナップショット・ファイル読込用として用いられ、またホスト装置2からの特定の要求に対して実行可能な設定になっている。
【0151】
ここで、インポート処理とは、ポータビリティ・ファイルの内容に応じて、仮想フォルダを作成する処理をいう。操作者が仮想フォルダVAから生成した仮想フォルダVAのポータビリティ・ファイルを、インポート・フォルダFimpを有する他のNASストレージN4にドラッグ&ドロップ又はホスト装置2から当該ポータビリティ・ファイルを対象としたインポート要求が発行されることで、インポート処理が行われる。
【0152】
NASストレージN1は、記憶管理テーブル710及び関連性管理テーブル711内に仮想フォルダVA情報のエントリを追加し、ポータビリティ・ファイルから仮想フォルダVA内のファイルの位置情報を登録して、当該仮想フォルダを生成する為の仮想ノードをホスト装置2に通知する。ホスト装置2からの仮想フォルダVA内にあるファイルに対するリード/ライト要求は、仮想フォルダVA内にあるファイルと対応付けられる、ポータビリティ・ファイルの生成元のNASストレージN上の通常のボリューム92内の実ファイルや、仮想体用データ格納領域95内の仮想体ファイルに対するリード/ライト要求に変換して転送される。さらに、リード/ライト要求は、ポータビリティ・ファイルの生成元のNASストレージN以外にも自分の仮想体用データ格納領域95内の仮想体ファイルへの要求と混在することや、特定時点のスナップショット領域に格納されているファイルに対しても発行することができる。
【0153】
機能フォルダ名「/exp」で示すエクスポート・フォルダFexpは、当該エクスポート・フォルダ内にドラッグ&ドロップされた仮想フォルダをポータビリティ・ファイルにエクスポートする機能を有し、ポータビリティ・ファイル作成用として用いられ、またホスト装置2からの特定の要求に対して実行可能な設定になっている。
【0154】
ここで、エクスポート処理とは、仮想フォルダVAを別のNASストレージN上に再現するのに必要なメタデータ等の内容をポータビリティ・ファイルに書き出す処理をいう。操作者が仮想フォルダVAを、NASストレージN1のエクスポート・フォルダFexp内にドラッグ&ドロップを行い又はホスト装置2からエクスポート要求が発行されることで、エクスポート処理が行われる。エクスポート処理により生成されたポータビリティ・ファイルを、他のNASストレージN4のインポート・フォルダFimpにコピーする等の操作により、NASストレージN4上でNASストレージN1と全く同じ仮想フォルダVAを使用することが可能になる。また、このNASストレージN4上の仮想フォルダVAをさらにカスタマイズすることが可能である。
【0155】
NASストレージN1は、仮想フォルダVAの属性情報及び仮想フォルダVA内にあるファイルの位置情報や属性情報等を含むポータビリティ・ファイルを、NASストレージN1内にあるエクスポート・フォルダFexpに生成する。ポータビリティ・ファイルには、NASストレージN1のIPアドレス情報やセキュリティ情報が含まれる。このため、ポータビリティ・ファイルのデータは、暗号化したり個別のセキュリティを掛けられるようにすることが望ましい。また、エクスポート・フォルダFexpには、相手側NASストレージNの信頼レベルの制限及びポータビリティ・ファイルの有効期限の情報が設定できるようにし、また仮想フォルダVAの属性情報の変更により相手側でのインポート処理を無効化できる機能を有することが望ましい。
【0156】
機能フォルダ名「/snap」で示すスナップショット・フォルダFsnapは、当該スナップショット・フォルダ内にスナップショット時点での仮想フォルダVAの状態を再現するのに必要なメタデータ等の内容を、ポータビリティを有するスナップショット・ファイルに書き出す機能と、以降に仮想フォルダ内のファイルが更新された場合に旧ファイルを格納する為に当該ファイルをロックオンする機能を有する。そして、スナップショット・フォルダFsnapの用途としては、ポータビリティを有するスナップショット・ファイル作成用として用いられ、またホスト装置2からの特定の要求に対して実行可能な設定になっている。
【0157】
そして、ホスト装置2のOS又はアプリケーションのAPI及び仮想フォルダVAを用いて関連付けを行う場合に、図18に示すような複数の要求および機能が予め定義されている。
【0158】
具体的には、要求機能名称が「主体ファイル定義」は、メタデータ領域にエントリを生成するための要求であり、この要求と同等のユーザの操作は、特定フォルダVFにファイルのコピー又は新規作成を行うことである。
【0159】
要求の機能名称が「関連付け/関連解除」は、メタデータに当該ファイルノード情報の追加又(もしく)は削除するための要求であり、この要求と同等のユーザの操作は、仮想フォルダVAへファイルのドロップ又は仮想フォルダVA内でのファイル削除を行うことである。
【0160】
要求の機能名称が「メタデータ制御」は、実ファイルと仮想フォルダ内のファイルとの関係の変更、仮想体ファイルの作成又は仮想体ファイルの属性情報等のメタデータを変更するための要求であり、この要求と同等のユーザの操作は、仮想フォルダVA内にあるファイルの名前又は属性情報の変更を行うことである。
【0161】
要求の機能名称が「スナップショット実行」は、スナップショット・ファイルの作成及びメタデータのエントリを追加するための要求であり、この要求と同等のユーザの操作は、スナップショット・フォルダFsnapへ仮想フォルダVAをドロップする操作を行うことである。
【0162】
要求の機能名称が「仮想フォルダ制御」は、仮想フォルダVAのオープン又はクローズ又は属性情報の変更等の要求であり、この要求と同等のユーザの操作は、仮想フォルダVAのダブルクリック等によるオープンやクローズ、又は名前の変更等を行うことである。
【0163】
要求の機能名称が「実ノードリスト報告」は、複数の関連ファイルを一斉起動又はフォルダの参照を行うための要求である。本要求に相当する仮想フォルダの操作は無いが、以前に述べたユーザの主体ファイルのプロパティ画面のボタン操作により、ホスト装置2から本要求が発行される。
【0164】
要求の機能名称が「インポート/エクスポート」は、ポータビリティ・ファイルの読込/作成を行うための要求であり、この要求と同等のユーザの操作は、インポート・フォルダFimp、エクスポート・フォルダFexpへ仮想フォルダVAをドロップする操作を行うことである。
【0165】
要求の機能名称が「セキュリティ設定」は、ポータビリティの有効期限設定やインポートするためのパスワードを設定するための要求であり、この要求と同等のユーザの操作は、仮想フォルダVA内にセキュリティファイルを作成することである。
【0166】
(1−5)第1の実施の形態による関連付け動作
それでは次に、ホスト装置2とNASストレージN1との間で関連付け動作を含む上記要求に対応する双方の、本願の特徴である処理手順について説明する。ここでは、ホスト装置2とNASストレージN1との間での動作を説明するが、他のNASストレージN2〜N4との間で行ってもよい。
【0167】
具体的には、図19から図21に示すように、まずホスト装置側において、操作者はホスト装置の画面上にある仮想フォルダを開く操作を行う(SP1)。
【0168】
ホスト装置2は、NASストレージN1に対して、仮想フォルダのオープン要求を行う(SP2)。
【0169】
NASストレージN1は、オープン要求を受領する(SP3)。引き続きNASストレージN1は、ホスト装置2のアクセス権限は有効か否かを判断し(SP4)、有効であると判断すると(SP4:YES)、仮想フォルダVAを生成し、ホスト装置2へ通知する(SP5)。
【0170】
ホスト装置2は、この通知を受け取ると(SP6)、ホスト装置2上の画面表示を更新する(SP7)。
【0171】
そして操作者が更新されたホスト装置2上の画面にある仮想フォルダVA内の主体ファイルAを開く操作を行うと(SP8)、ホスト装置2は、主体ファイルAの読み出し要求をNASストレージN1に行う(SP9)。
【0172】
NASストレージN1は、主体ファイルAの読み出し要求を受領すると(SP10)、関連性管理テーブル711を検索して、仮想フォルダVA内にある主体ファイルAと対応付けられる実ボリューム92内の実ファイルAを読み出し、又は、仮想体用データ格納領域95内の仮想体ファイルAを読み出してホスト装置2に送信する(SP11)。
【0173】
ホスト装置2は、NASストレージN1から読み出された主体ファイルAを受領する(SP12)。また操作者は、仮想フォルダVA内には格納されていないファイルBを開く操作を行う(SP13)。
【0174】
ホスト装置2は、NASストレージN1に対して、ファイルBの読み出し要求を行う(SP14)。
【0175】
NASストレージN1は、読み出し要求を受領すると(SP15)、実ボリューム92内の実ファイルBを読み出し、ホスト装置2に送信する(SP16)。
【0176】
操作者は、主体ファイルA及びファイルBをオープン中に、ファイルB内のデータ(情報)の全部又は一部を、主体ファイルAにコピー&ペースト操作を行う(SP17)。
【0177】
そしてホスト装置2は、コピー元であるファイルB及びコピー先である主体ファイルAの関連付け要求及びそれぞれのiノード情報をNASストレージN1に送信する(SP18)。
【0178】
NASストレージN1は、関連付け要求及びそれぞれのiノード情報を受領すると(SP19)、関連付け処理を実行する(SP20)。関連付け処理については、後述する。
【0179】
なお、ステップSP13〜SP19までの処理は、手順1で説明した処理である。
【0180】
別の操作として、操作者は、仮想フォルダVA内には表示されていないファイルCを仮想フォルダVA内にドラッグ&ドロップ操作を行う(SP21)。そうすると、ホスト装置2は、NASストレージN1に対して、ファイルCの書き込み要求を行う(SP22)。
【0181】
NASストレージN1は、ファイルCの書き込み要求を受領すると(SP23)、関連付け処理を実行する(SP24)。ステップSP20と同様に、関連付け処理については、後述する。
【0182】
なお、ステップSP21〜SP23までの処理は、手順2で説明をした処理である。
【0183】
別の操作として、操作者は、仮想フォルダVA内にあるファイルAを上書きする操作を行う(SP25)。そうするとホスト装置2は、NASストレージN1に対して、主体ファイルAの上書き要求を行う(SP26)。
【0184】
NASストレージN1は、主体ファイルAの上書き要求を受領すると(SP27)、仮想フォルダVA内にある主体ファイルAと対応付けられる実ボリューム92内の実ファイルAを更新(実ファイルへのフィードバックが設定されている場合)、又は、仮想体用データ格納領域95内の仮想体ファイルAを更新してホスト装置に送信する(SP28)。
【0185】
別の操作として、操作者は、仮想フォルダVA内にあるファイルDを削除する操作を行う(SP29)。そうすると、ホスト装置2は、NASストレージN1に対して、ファイルDの削除要求を行う(SP30)。
【0186】
NASストレージN1は、ファイルDの削除要求を受領すると(SP31)、関連付け解除処理を実行する(SP32)。なお、関連付け解除処理については、後述する。
【0187】
なお、ステップSP29〜SP31までの処理は、手順2で説明をした処理である。
【0188】
別の操作として、操作者は、仮想フォルダVAを閉じる操作を行う(SP33)。そうすると、ホスト装置2は、NASストレージN1に対して、仮想フォルダVAのクローズ要求を行うと(SP34)、ホスト装置2側での処理を終了する(SP35)。
【0189】
NASストレージN1は、クローズ要求を受領すると(SP36)、仮想フォルダ(ノード)の削除を行い(SP37)、NASストレージN1側での処理を終了する(SP38)。
【0190】
ステップSP4に戻り、NASストレージN1は、ホスト装置のアクセス権限は有効ではないと判断すると(SP4:NO)、ホスト装置2にアクセス拒否の応答をして(SP39)、NASストレージN1側での処理を終了する(SP40)。
【0191】
なお便宜上、図19から図21には、仮想フォルダVAのオープン/クローズ操作、ファイルA〜Dの操作を連続して行っているように記載したが、各種の操作は、別個独立しているため、この順序に限定されることはない。
【0192】
(1−6)NASストレージの関連付け/関連解除処理
それでは次に、ホスト装置2からの要求に基づいてNASストレージN1が関連付け処理/関連解除処理を行うための、本願の特徴である処理手順について説明する。この処理は、NASストレージN1のNASコントローラ7のCPU70が関連プログラム714に基づいて実行する。
【0193】
具体的には図22に示すように、CPU70は、ホスト装置2から要求を受領すると、関連付け処理/関連解除処理を開始する(SP50)。
【0194】
なお、関連付け処理/関連解除処理の開始のタイミングは、図19から図21に記載のステップSP3、SP10、SP15、SP19、SP23、SP27、SP31及びSP36にて、ホスト装置2から発行された要求をNASストレージN1が受領したタイミングである。
【0195】
次に、CPU70は、ホスト装置2からの要求が関連付け要求又は関連解除要求か否かを判断し(SP51)、関連付け要求又は関連解除要求のどちらかの要求であると判断した場合には(SP51:YES)、関連性管理テーブル711から関連付けの対象となるファイルのエントリを検索する(SP52)。
【0196】
そして、CPU70は、関連性管理テーブル711から関連付けの対象となるファイルがあるか否かを判断し(SP53)、対象となるファイルがあると判断した場合には(SP53:YES)、ホスト装置2からの要求が関連解除要求であるか否かを判断する(SP54)。
【0197】
CPU70は、ホスト装置2からの要求が関連解除要求であると判断した場合には(SP54:YES)、対象ファイルの情報が関連性管理テーブル711の関連ファイル情報に削除フラグを設定し(SP55)、関連付け処理/関連解除処理を終了する(SP62)。
【0198】
一方、ステップSP53において、CPU70は、関連性管理テーブル711から関連付けの対象となるファイルがないと判断した場合には(SP53:NO)、そのまま関連付け処理/関連解除処理を終了する(SP62)。
【0199】
次に、ステップSP51において、CPU70は、ホスト装置2からの要求が関連付け要求又は関連解除要求のいずれの要求でもないと判断した場合には(SP51:NO)、ホスト装置2からの要求が図18で説明した図表の要求機能名称に記載された要求に該当するかどうかを判断する(SP56)。
【0200】
そして、CPU70は、ホスト装置2からの要求が図18で説明した図表の要求機能名称に記載された要求に該当しないと判断した場合には(SP56:NO)、ホスト装置2からの要求が仮想フォルダVA内にあるファイルに対する書き込み要求か否かを判断する(SP57)。
【0201】
CPU70は、ホスト装置2からの要求が仮想フォルダVA内にあるファイルに対する書き込み要求であると判断した場合には(SP57:YES)、仮想フォルダVA内にあるファイルが関連性管理テーブル711の関連ファイル情報711Fに登録済みか否かを判断する(SP58)。
【0202】
そして、CPU70は、仮想フォルダVA内にあるファイルが関連性管理テーブル711の関連ファイル情報711Fに未登録であると判断した場合には(SP58:NO)、仮想フォルダVA内にあるファイルを関連ファイル情報711Fとして関連性管理テーブル711に追加し(SP59)、関連付け処理/関連解除処理を終了する(SP62)。
【0203】
一方、CPU70は、仮想フォルダVA内にあるファイルが関連性管理テーブル711の関連ファイル情報711Fに登録済みであると判断した場合には(SP58:YES)、関連付け処理/関連解除処理を終了する(SP62)。
【0204】
ステップSP57において、CPU70は、ホスト装置2からの要求が仮想フォルダVA内にあるファイルに対する書き込み要求ではないと判断した場合には(SP57:NO)、ホスト装置2の要求に基づき、仮想フォルダVA内のファイルの読み出し処理(仮想体ファイルの読み出し又は、関連ファイルの実体ファイルの読み出し)又は通常フォルダの実ファイルの読み出しあるいは書き込み処理等を行い(SP60)、関連付け処理/関連解除処理を終了する(SP62)。
【0205】
ステップSP61において、CPU70は、ホスト装置2からの要求が図18で説明した図表の要求機能名称に記載された要求に該当すると判断した場合には(SP56:YES)、図18に示した要求機能名称に対応する内容及び操作を行い(SP61)、関連付け処理/関連解除処理を終了する(SP62)。
【0206】
(1−7)スナップショット機能
次に、上述で説明したスナップショット・フォルダFsnapを用いたNASストレージN1のスナップショット処理について説明をする。
【0207】
スナップショット処理とは、ある時点での仮想フォルダVAの状態を記憶し、以降の当該ファイル更新の際に、旧ファイルのデータをスナップ用データ格納領域96内に格納する処理をいう。操作者が、仮想フォルダVAをスナップショット・フォルダFsnapにドラッグ&ドロップを行うか、又はホスト装置2からの当該仮想フォルダを対象としたスナップショット・要求が発行されることで、本スナップショット処理が行われる。
【0208】
スナップショット処理は、現時点での仮想フォルダVAnとスナップ用データ格納領域96に格納されるファイルの情報から、任意の時点の仮想フォルダVA1、VA2を作成(再現)する。勿論、スナップ用データ格納領域96に格納されるファイルの情報のみからでも任意の時点での仮想フォルダVA1〜VAnを作成することは可能であるが、記憶管理テーブル710のセキュリティ情報10Dが変更になっていることを考慮して、現時点での仮想フォルダVAnの情報が使用されている。
【0209】
NASストレージN1内において、スナップショット処理が行われると、図23に示すように、任意の時点での仮想フォルダのエントリ(以後、仮想履歴フォルダと称する)VA1〜VAnが作成される。当該エントリにはその時点の当該主体ファイルに関する関連性テーブルが含まれており、また当該エントリが作成された以降に仮想フォルダVA内で(削除を含む)更新されたファイルの、更新直前のファイルが各仮想履歴フォルダ(エントリ)に格納される。例えば、2006年01月09日09:00:00時点において、スナップショットが実行された後、更新された元のファイルB、C、Gが仮想スナップショットフォルダVA1に格納されている。また、2006年01月09日12:00:00時点において、再度スナップショット処理が実施され、その後ファイルB、Cが再度更新された為、更新直前のファイルB、Cが仮想履歴フォルダVA2に格納されている。
【0210】
また図24は、スナップショット・フォルダFsnapを用いた場合の、画面に表示されるスナップショット・ファイルの一例である。スナップショット・フォルダFsnapの画面W16内に、任意の時点での仮想フォルダVA1〜VAnのスナップショットファイルが表示されている。操作者が、いずれの時点の仮想フォルダVAmを選択して、ショートカットメニューから「仮想フォルダを開く」P5を実行すると、選択された仮想フォルダVAmのスナップショット作成時点での関連ファイルを見ることができる。
【0211】
さらに図25に示すように、任意の時点での仮想フォルダVAmのプロパティ画面W17には、「SnapShot」タグT1が表示される。そして、「SnapShot」タグT1をクリックした画面W18では、最新のファイルを含む関連付けされたファイルに対して、スナップショット・ファイルへのリンクボタンB3、B4及びプロパティ切り替えボタンB5、B6が設けられる。
【0212】
図26は、図25に示す「SnapShot」タグT1画面W18において、スナップファイルへのリンクボタンB3を選択し、「検索アプリを起動」ボタンB7を実行した場合の画面W19例である。このとき、メインウィンドウW20は、縮小表示となる。また、スナップショット・ファイル検索(仮想フォルダ切替用)のアプリケーションA1は、画面の右側でスタンバイ表示となる。さらに、スナップショット・ファイル時間検索のアプリケーションA2のボリューム用のコントロールをマウス等により操作することで、画面上に一定時間範囲の仮想フォルダを複数ウィンドウの状態で画面に次々と表示することができる。目的のウィンドウを選択して、メインウィンドウに切り替えると、当該仮想フォルダはその時点の状態に復元される。
【0213】
画面W19において、目的の仮想スナップショット・フォルダVAmを選択中にウィンドウW21にフォーカスしている様子が表示されている。また、それ以外にも複数の仮想スナップショット・フォルダVAxxが画面に候補として表示されている。これはスナップショット・ファイル時間検索アプリケーションA2の要求により、ホスト装置2がNASストレージN1に仮想フォルダVAxxを選択してスナップショットへの切り替え要求を発行する。そして、NASストレージN1が仮想フォルダVAの内容を修正して、ホスト装置2に通知し、アプリケーションがその時点の仮想スナップショット・フォルダVAxxをウィンドウに視覚化することにより実現している。
【0214】
そうして、メインウィンドウに切り替えることでとなったスナップショット・フォルダFsnap内の仮想フォルダVAの任意の時点でのスナップショット・ファイルにより復元された仮想フォルダVAmを現在の仮想フォルダVAに置き換える。仮想フォルダはNASストレージNにより仮想的に生成されているだけなので、仮想フォルダVAを一時的に仮想フォルダVAmに置き換えても、仮想フォルダVAを構成するファイルに影響は生じない。
【0215】
(1−8)第1の実施の形態の効果
第1の実施の形態によれば、異なるファイル種別の異なるフォルダに配置された複数のコンテンツに関してフォルダ間やボリューム間を跨ってグループ化することがきるため、管理やアクセス権の設定に関する管理者や操作者の煩わしさを軽減することができる。
【0216】
また、第1の実施の形態によれば、特定フォルダに主体ファイルを登録するだけで、当該主体ファイルに関連するファイルを、実ファイルに影響のないように仮想フォルダ内に集合させることができる。
【0217】
さらに、上記機能を有し、同一ネットワークに接続可能なNASストレージであれば、例え異なる装置上においても、煩わしい設定の必要なく、同一の仮想フォルダを生成し、ホスト装置側に提供することができる。
【0218】
(2)第2の実施の形態
(2−1)第2の実施の形態による記憶システムの構成
次に、第2の実施の形態による記憶システムについて、以下に説明する。第2の実施の形態では、第1の実施の形態と同じ構成には同一の符号を付す。第2の実施の形態の説明では、第1の実施の形態と異なる構成についてのみ説明をする。
【0219】
図27に示すように、200は全体として第2の実施の形態による記憶システムを示す。この記憶システム200は、ホスト装置2が第1のネットワーク5を介してNASコントローラ7とストレージコントローラ8とを一体化したストレージ基本筐体15と接続され、ストレージ基本筐体15が第3の増設筐体16と接続され、第3の増設筐体16が第2のネットワーク6を介して、第4の増設筐体17及びアーカイブコントローラ18と接続され、アーカイブコントローラ18がアーカイブ用のストレージ装置であるCAS(Content Addressed Storage)19と接続される構成である。
【0220】
ストレージ基本筐体15は、第3の増設筐体16内のFCハードディスク162及びSASハードディスク172を制御するためのもので、コントローラ部150が二重化された構成である。
【0221】
そしてコントローラ部150A、150B内は、キャッシュメモリ153A、153B及びメモリ157A、157Bの構成を除いては、第1の実施の形態におけるそれぞれのコントローラ部80A、80Bと同じ構成にとなっている。
【0222】
それぞれのキャッシュメモリ153A、153Bには、第1の実施の形態で説明をした記憶管理テーブル710及び関連性管理テーブル711が格納されている。キャッシュメモリ153A、153Bに格納する理由としては、キャッシュ上にロードされている主体ファイルが存在する場合に、それらの関連ファイルへのアクセス頻度が高まることが予測され、FCハードディスク162及びSASハードディスク172のいずれのハードディスクに、関連ファイルに関する情報やデータが格納されているのかを高速に検索するためである。
【0223】
メモリ157A、157Bには、第1の実施の形態で説明をした関連性管理テーブル711及びノード情報管理テーブル712が格納されている。メモリ157A、157Bに格納される関連性管理テーブル711は、キャッシュにロードされておらず、アクセス要求が低いと予測されるものである。
【0224】
なおノード情報管理テーブル712については、通常はFCハードディスク162及びSASハードディスク172に格納しておき、必要な部分だけをメモリ157A、157Bにロードするようにしてもよい。
【0225】
各種テーブル710から712の説明については、第1の実施の形態と同様の構成なので、省略する。
【0226】
また、第1の実施の形態と同様に、第1のネットワーク5はLAN又はWANで構成され、第2のネットワーク6はSANで構成される。
【0227】
そして、第3の増設筐体16は、オンラインストレージであって、二重化されたバックエンドスイッチ160A、160B(図27中ではバックエンドSWと示す)及びFCハードディスク162を備えて構成される。
【0228】
バックエンドスイッチ160は、複数のポートを備え、各ポートにFCハードディスク162を接続している。バックエンドスイッチ160は、中継器であり、ストレージ基本筐体15とFCハードディスクドライブ162とのインターフェース・プロトコル変換を行うインターフェース・プロトコル変換部161A、161B(図27中ではI/Fプロトコル変換部と示す)を有している。バックエンドスイッチ160は、スイッチングデバイスとして機能し、ストレージ基本筐体15とFCハードディスクドライブ162との間のデータ通信を調整し、スイッチングを行う。
【0229】
FCハードディスク162は、複数備えられ、FCプロトコル上の要求を解釈できるハードディスクドライブである。そして、複数のFCハードディスク162の記憶領域上で提供されるRAIDボリューム1621が形成される。加えて、割り当てられた記憶領域(RAIDボリューム1621)と対応する論理ボリュームがメタデータ格納用ボリューム163として形成される。
【0230】
第4の増設筐体17は、ニアラインストレージであって、二重化されたバックエンドスイッチ170A、170B(図27中ではバックエンドSWと示す)及びSASハードディスク172を備えて構成される。
【0231】
バックエンドスイッチ170A、170B及びインターフェース・プロトコル変換部171A、171Bは、第3の増設筐体16と同様の構成のため、説明を省略する。また、SASハードディスク172及びRAIDボリューム1721は、第1の実施の形態で説明をしたSASハードディスク91及びRAIDボリューム911の構成と同様である。加えて、割り当てられた記憶領域(RAIDボリューム1721)と対応する論理ボリュームがメタデータ格納用ボリューム173として形成される。
【0232】
なお、図示はしていないが、CAS19には、SATAハードディスクが備えられており、論理ボリューム193を形成する。
【0233】
(2−2)スナップショット機能
本実施の形態におけるストレージ基本筐体15は、上述のように、高速で高価なオンライン用ハードディスクであるFCハードディスク162と、コストパフォーマンスの良いSASハードディスク172とを実装することで、ティアドストレージ装置(階層型ストレージ装置)の構成を備える。
【0234】
本実施の形態では、図28に示すように、上位階層である第3の増設筐体16内に形成されたメタデータ格納用ボリューム163には、スナップ用データ格納領域を形成させず、管理テーブル格納領域164と仮想体用データ格納領域165とが形成され、ニアラインのハードディスク領域であるメタデータ格納用ボリューム173内には、アーカイブ用の管理テーブル格納領域174とスナップ用データ格納領域175が形成される。
【0235】
また、アーカイブのハードディスク領域である、論理ボリューム193内にもスナップ用データ格納領域195が形成される。
【0236】
そして、例えば、比較的新しい時点でスナップ処理を行ったファイルが格納されるフォルダについては、ニアラインのハードディスク領域のスナップ用データ格納領域175に格納し、比較的古い時点でスナップ処理を行ったファイルが格納されるフォルダについては、アーカイブのハードディスク領域のスナップ用データ格納領域195に移動して格納する。
【0237】
なお、仮想フォルダ内で削除したファイルを下位の階層であるニアラインのハードディスク領域に移動して格納することも可能である。
【0238】
(2−3)自動スナップショット機能(CDP:Continuous Data Protection)
また本実施の形態においては、自動スナップショット機能を実現することもできる。
【0239】
具体的には、ストレージ基本筐体15が、仮想フォルダVA内のファイルが更新されるタイミングで、自動的にスナップショットを作成し、仮想フォルダVA内にあるファイル履歴を継続的に記憶する。
【0240】
まず最初に、主体ファイルAの設定時にメタデータが生成されると同時に、当該メタデータのスナップショットを作成する。そして、主体ファイルAが更新されると、更新直前の旧主体ファイルAは、図28に示すスナップ用データ格納領域175に移動し、格納される。さらにまた、この更新のタイミングで自動的にスナップショットが実施される。
【0241】
主体ファイルAについてのスナップショット処理及び旧主体ファイルAのスナップ用データ格納領域175への格納が終了すると、次に、主体ファイルAと関連付けられたファイルについても、関連付けが行われた直後に、当該関連付けられたファイルについてのスナップショットが実行される。そして当該関連付けられたファイルについて更新されると、旧関連ファイルは、スナップ用データ格納領域175へ転送され、格納される。さらにまた、この更新のタイミングで自動的にスナップショットが実施される。そして一定時間又は一定容量以上の予め定めた閾値を超過した場合、古いデータはさらに、スナップ用データ格納領域175からアーカイブコントローラ18に転送され、スナップ用データ格納領域195に格納する為のアーカイブ処理が行われる。
【0242】
また同様に、関連ファイルの実ファイルが更新された場合も、更新前までの旧実ファイルはスナップ用データ格納領域175に格納される。
【0243】
更新前までの旧実ファイルがスナップ用データ格納領域175に格納されると、コントローラ150は仮想フォルダVAに対し、再びスナップショット処理を実行する。
【0244】
このようにスナップショット処理およびアーカイブ処理を繰り返すことで、スナップ用データ格納領域175、195に、仮想フォルダVAの更新履歴が継続的に蓄積される。
【0245】
(2−4)第2の実施の形態の効果
第2の実施の形態によれば、異なるファイル種別の異なるフォルダに配置された複数のコンテンツに関してフォルダ間やボリューム間を跨ってグループ化することがきるため、管理やアクセス権の設定に関する管理者や操作者の煩わしさを削減することができる。
【0246】
また、第2の実施の形態によれば、アクセス頻度の少ないファイルが格納されるフォルダについては、下位の階層の記憶領域に格納することで、第1の実施の形態で説明した記憶システムより低廉なコストで記憶システムを構築することができる。さらにCDP機能によりも堅牢なデータ保護機能を備えており、またこのCDP機能は従来の様なボリューム単位の差分格納方式に比べて、仮想フォルダ単位の差分ファイルの格納で良いことから、CDPに必要な記憶容量を大幅に低減することが可能である。
【0247】
(3)第3の実施の形態
(3−1)第3の実施の形態による記憶システムの概念構成
次に、第3の実施の形態による記憶システム300の概念構成について、以下に説明する。第3の実施の形態による記憶システムにおいては、第1の実施の形態で説明をしたNASストレージを複数台使用する概念構成である。なお、第1の実施の形態と同様の対応部分には同一の符号を付し、対応部分についての説明は省略する。
【0248】
具体的には図29に示すように、300は、本実施の形態による記憶システムである。本実施の形態による記憶システム300の概念構成は、各ブロックに分けて説明する。
【0249】
本実施の形態による記憶システム300は、第1の実施の形態で説明をした記憶システム1を1つのグループとする3つの記憶システム1及び複数のグリッドストレージGSがストレージ・ネットワークSNを介して接続され、複数のグリッドコンピュータGCがコンピュータ・ネットワークCNを介して接続され、ストレージ・ネットワークSN及びコンピュータ・ネットワークCNがパスクラスタPに接続され、パスクラスタPは複数のアービタ・ゲートウェイAG1、AG2、…を介して操作者用端末装置15と接続される概念構成である。
【0250】
なお、アービタ・ゲートウェイAG1は、ネットワーク20を介して操作者用端末装置15に接続してもよく、又は、ネットワークを介さずに操作者用端末装置15に直接接続してもよい。
【0251】
なお、ストレージ・ネットワークSNとコンピュータ・ネットワークCNとの間のネットワークパスを、パスクラスタPを制御して、最適化したパスとするのが、パス負荷分散の観点から望ましい。
【0252】
また、アービタ・ゲートウェイAGに、ファイルシステム及び排他制御を含む仮想化機能をもたせ、ストレージ・ネットワークSNとコンピュータ・ネットワークCNとの間に配置させてもよい。この場合には、グリッドストレージをファイルアクセス型のNASストレージではなく、ブロックアクセス型のストレージ装置で構成することも可能である。しかしアービタ・ゲートウェイAGには高負荷がかかるため、クラスタ化してパスを分散することで負荷軽減を行うことが望ましい。
【0253】
図30に示す、グリッドコンピュータグループは、コンピュータ・ネットワークCNを介して複数のグリッドコンピュータGC1〜GCnを接続/結合することで仮想的に高性能なコンピュータを作り、操作者が仮想的に作られた高性能なコンピュータから必要な処理能力や記憶容量等のコンピュータリソースを取り出すために使用される。複数のグリッドコンピュータGC1〜GCnにおいて、1台ずつグリッドコンピュータ内で処理をするジョブの種類が異なる場合もあれば、ジョブの種類が同一の場合もある。例えば、図30に示すように、グリッドコンピュータGC1〜GCnの符号が同一番号である場合には、同一のジョブを並列的に処理するグリッドコンピュータを示している。
【0254】
図31に示す、グリッドストレージグループは、ストレージ・ネットワークSNを介して複数のグリッドストレージGS0〜GSnを結ぶことで実現しており、特定のNASストレージNに負荷が集中することを、ハードウェア的には回避できる構成である。本実施例では任意のグリッドストレージGS0には、フォルダF0が格納されている。なお、グリッドコンピュータの実行するジョブの種類等により、複数のグリッドストレージGS1〜GSnにおいて、それぞれグリッドストレージに求められる性能や容量当たりコスト等のストレージ特性や、容量や物理ポート数および必要帯域等のストレージリソースが異なる場合がある。
【0255】
図32は3つの記憶システム1を示す。3つの記憶システム1内にある夫々のグリッドストレージGS1〜GS3には、フォルダF1〜F3がそれぞれ格納されている。また、グリッドストレージGS1〜GS3は、第1の実施の形態で説明した複数のNASストレージNである。
【0256】
図33に示すように、アービタ・ゲートウェイAG1、AG2は、グリッドコンピュータGC及びグリッドストレージGSのリソースおよびスケジュールを調停する装置である。アービタ・ゲートウェイAG1、AG2は、NASストレージNのリソースを監視して、ジョブ要求によるスケジュールを計算し、必要なコンピュータおよびストレージの各リソースの割当てを制御する。
【0257】
例えば、操作者からのジョブがアービタ・ゲートウェイAG1に指示されると、アービタ・ゲートウェイAG1は必要なリソースを確保するために、共通のデータベースを参照し、確保可能なリソースおよび必要時間に基づいた計算の結果に基づき、共通データベースを更新(スケジュール予約)する。共通のデータベースの更新は、他のアービタ・ゲートウェイAG2に通知され、スケジュールの調整が一元的に管理される。
【0258】
その後アービタ・ゲートウェイAG1は、ジョブの優先度等から必要な占有時間および確保できたリソースの最適な配分を算出(概算)し、調整後に各ジョブを各グリッドコンピュータGCxx〜GCyyに転送する。但し、ひとつのジョブを担当するグリッドコンピュータGCxm〜GCxnはひとつとは限らず複数でもよく、またジョブの種類等によっては1台のグリッドコンピュータGCmが複数のジョブを実行/処理しても良い。
【0259】
このとき、ジョブを各リソースに転送するパラメータ情報の一部として、アービタ・ゲートウェイAG1を通じて処理に必要なポータビリティ・ファイルが割り当てられたグリッドストレージGSm〜GSnの一部もしくは全部にインポートされた仮想フォルダVAがグリッドストレージグループから提供される。
【0260】
この時、アービタ・ゲートウェイAG1は、リソースに余裕のあるNASストレージNを優先してポータビリティ・ファイルをインポートするように制御およびリソースの調停を行う。インポート指示を受領したNASストレージNは、仮想フォルダVAを生成する。その後、アービタ・ゲートウェイAG1は、各グリッドコンピュータGCxx〜GCyyに与えられたジョブをアクティブに設定する。
【0261】
図34は、操作者が操作者側端末装置15からフォルダF2内にデータを書き込む場合の、従来の運用に近い形態について説明する。
【0262】
まず、操作者は、操作者側端末装置15を用いて、アービタ・ゲートウェイAG1に目的のジョブを実行するのに必要なリソースの取得およびスケジューリングを要求する。このとき操作者側から、操作者が希望する、もしく許容可能な処理の終了時間、ジョブのリストおよび各ジョブに割り当てたいリソースの種類及び数量、ジョブ毎の標準システム負荷情報等の各種情報がアービタ・ゲートウェイAG1に引き渡される。
【0263】
要求を受け取ったアービタ・ゲートウェイAG1は、自身の内部もしくは外部に有する記憶システム300のリソース稼動状況およびスケジュール情報等が格納されている共有データベースにアクセスして、現時点の稼動状況等から要求に必要なリソースの抽出/選択およびリザーブを行う。選択は、現在の稼動負荷の低いものが優先的に割り当てられるように制御される。もしこの時に他の操作者等の要求により、当該操作者の所望のリソースが確保できない場合は、不足したリソース分の処理時間に相当する係数を確保できたジョブに割り当てるようにスケジュールを配分したり、もう少しで終了する予定のジョブがあるリソースを先行予約するような処理を行う。
【0264】
リソース予約のスケジューリングが完了すると、アービタ・ゲートウェイAG1は操作者側端末装置15に予約完了通知を発行する。予約完了通知には確保できたリソースの識別子や種類、処理完了に要する所要時間の見積もり等が含まれる。
【0265】
操作者側端末装置15は、もしも必要なリソースが確保できず、処理時間が標準時間を超える場合等に、操作者に、以降の処理の取り消しが可能な様に、当該情報の詳細及び、処理を継続して良いかどうかの確認を促すメッセージ等を出すようにするのが好ましい。
【0266】
操作者側端末装置15は、アービタ・ゲートウェイAG1からの予約完了通知に問題が無いか、あるいは操作者から処理継続の指示を受けた場合に、各ジョブプログラムであるジョブ1、ジョブ2および仮想フォルダVBを形成する為のポータビリティ情報を送出する。なお、本実施の形態では、ポータビリティ情報は、ファイルに限られない。
【0267】
アービタ・ゲートウェイAG1は、操作者側端末装置15から受け取った各ジョブプログラムであるジョブ1、ジョブ2を、確保したそれぞれのグリッドコンピュータGCW〜GCZに配分して転送する。図34ではジョブ1にグリッドコンピュータGCW〜GCZ、ジョブ2にグリッドコンピュータGCWが割り当てられている。また、アービタ・ゲートウェイAG1はグリッドストレージGSX〜GSZにポータビリティ情報およびインポート・要求を送出する。尚、実施例1で示したようにグリッドストレージGSX〜GSZのインポート・フォルダFimpに仮想フォルダVBのポータビリティ・ファイルを書き込むことにより、上記動作を実現しても良い。
【0268】
インポート・要求を受領したグリッドストレージGSX〜GSZは、実施例1にて説明したのと同様の手順により、各グリッドストレージGSを構成するNASストレージN内にジョブ1が使用するフォルダとして、フォルダF2(フォルダ内のファイル群も含めて)を格納する仮想フォルダVBを生成して、グリッドコンピュータGCW〜GCZに提供する。
【0269】
インポートの終了報告により仮想フォルダVBが提供可能となったことを認識したアービタ・ゲートウェイAG1は、グリッドコンピュータGCW〜GCZ上のジョブ1をアクティブ状態にする。これにより、グリッドコンピュータGCW〜GCZ上でジョブ1の処理が開始される。尚、グリッドコンピュータGCW上のジョブ2はスタンバイ状態のままである。これはジョブ2の処理には、ジョブ1の処理結果が必要な為である。ジョブ2がスタンバイである期間のグリッドコンピュータGCWの処理能力は、他の操作者のジョブへ提供することが可能である。またジョブ2の処理はグリッドコンピュータGCWでは無く、グリッドコンピュータGCW〜GCZのいずれかにジョブ1終了後に実行するようスケジュールしても良い。
【0270】
ジョブ1の動作は、仮想フォルダVB内に格納されているソースとなるファイルからデータを読み出し、中間ファイルを、それぞれのグリッドストレージGSX〜GSZ内に、書き込むことである。ソースとなるファイルの読み出しは、同じジョブ1を実行しいているグリッドコンピュータGCW〜GCZ間で連携して調整される。また、仮想フォルダVB内に格納されているソースとなるファイルの読み出し要求は、グリッドストレージGSX〜GSZから、仮想フォルダVBの実フォルダF2を有するグリッドストレージGS2へ転送され、グリッドストレージGS2から読み出されたファイルのデータがグリッドストレージGSX〜GSZ経由で、要求元のグリッドコンピュータGCW〜GCZへ、それぞれ転送される。
【0271】
グリッドコンピュータGCW〜GCZで夫々処理されているジョブ1による中間ファイルは、それぞれのグリッドストレージGSX〜GSZ内に独立して生成される。このようにして、ソースとなるファイルの読み出し時には、同一グリッドストレージGS2上で処理される為、負荷軽減効果は無いが、書き込み時においてはグリッドストレージGSX〜GSZに分散が行われる。この時ジョブ1に記述されるスクリプトには、ソースファイルの物理的位置を記述する必要は無く、担当するグリッドストレージGS内の仮想フォルダVBを指定するよう、記述すれば良い。
【0272】
ジョブ1が終了すると各グリッドコンピュータGCW〜GCZはジョブの終了通知をアービタ・ゲートウェイAG1に通知する。全てのジョブ1が完了すると、アービタ・ゲートウェイAG1はグリッドコンピュータGCW上でスタンバイ中のジョブ2をアクティブに設定する。ジョブ2はジョブ1との通信により、各ジョブ1が作成した中間ファイルの位置を認識し、夫々の中間ファイルをソースとして処理を行い、結果のファイルを仮想フォルダVBに格納する。この時指定する仮想フォルダVBはグリッドストレージGSX〜GSZのいずれを使用しても構わないし、また別のグリッドストレージGS上に新たにインポートして作成された物を使用しても構わない。また、使用しないグリッドストレージGSX〜GSZ上の仮想フォルダVBをクローズする処理を行っても構わない。ジョブ1はジョブ2に中間ファイルの位置を報告すると自分自身をスタンバイ状態にし、終了したことをアービタ・ゲートウェイAG1に通知する。通知を受けたアービタ・ゲートウェイAG1は、共有データベースを更新して、当該リソースが再利用可になったことを他のアービタ・ゲートウェイAGに通知する。
【0273】
ジョブ2は、仮想フォルダVBを介して実フォルダF2内のファイルにデータを書き込む。そして全ての処理が終了すると、自分が使用した仮想フォルダVBをクローズし、自分自身をスタンバイ状態にし、終了したことをアービタ・ゲートウェイAG1に通知する。通知を受けたアービタ・ゲートウェイAG1は、全ての処理が終了したことを操作者側端末装置15に通知すると共に、操作者に提供していた全てのリソースを開放する。そして共有データベースを更新して、当該リソースが再利用可になったことを他のアービタ・ゲートウェイAGに通知する。
【0274】
一方、図35に示すように、操作者が操作者側端末装置15からフォルダF0内に別のジョブ1による分散処理によってデータを書き込む場合の本実施の形態による運用について説明する。尚、本操作は、上記操作者が操作者側端末装置15から上記アービタ・ゲートウェイAG1を使用して行っても良いし、また別の操作者が操作者側端末装置15から別のアービタ・ゲートウェイAG(例えばAG2)を使用して行っても良い。また本処理と前述の図34で示した処理は、同時に実行することが可能である。本実施例では、上記処理に引き続き、アービタ・ゲートウェイAG1を使用したものとして解説する。
【0275】
アービタ・ゲートウェイAG1は、ジョブ1用として、任意の作業用グリッドストレージであるグリッドストレージGS0と、ソースとなる夫々の実ファイルおよび実フォルダを有するグリッドストレージGS1〜GS3から生成される仮想フォルダVAを再現可能なポータビリティ情報をグリッドストレージGS0にインポートする。このグリッドストレージGS1〜GS3により提供される実フォルダF1〜F3は、図32に示す様な、独立した各クライアントグループ(例:企業の独立部門)により使用される夫々の共有フォルダF1〜F3に対応している。インポート手段および操作者側端末装置15の指示等は前述しているので、ここでは省略する。
【0276】
ジョブ1はソースファイルの属する実フォルダF1〜F3を含む仮想フォルダVAから、複数のソースファイルを読み出し、各グリッドコンピュータGC1〜GC3上で並列的に処理を行い、連携して処理の結果であるデータを仮想フォルダVA内の出力ファイルに書き込む。この出力ファイルは、作業用グリッドストレージであるグリッドストレージGS0のフォルダF0上に実体が作成される。
【0277】
ジョブ1の処理が終了すると各グリッドコンピュータGC1〜GC3はジョブの終了通知をアービタ・ゲートウェイAG1に通知する。全てのジョブ1が完了すると、アービタ・ゲートウェイAG1は全ての処理が終了したことを操作者側端末装置15に通知するが、この時点では当該グリッドストレージ側のリソースの開放は行わず、グリッドコンピュータ側のリソースのみを開放し、共有データベースを更新して、当該リソースが再利用可になったことを他のアービタ・ゲートウェイAGに通知する。
【0278】
操作者は、操作者側端末装置15の画面等により、処理が終了したことを確認し、アービタ・ゲートウェイAG1が指示する仮想フォルダVAにアクセスして、目的の出力ファイルを得る。操作者は、当該出力ファイルを自分の管理するストレージ等へコピーもしくは移動により格納した後、操作者側端末装置15を操作して、アービタ・ゲートウェイAG1に仮想フォルダVAのクローズを指示する。指示を受領したアービタ・ゲートウェイAG1は、保留していたグリッドストレージ側のリソースを開放し、共有データベースを再び更新して、当該リソースが再利用可になったことを他のアービタ・ゲートウェイAGに通知する。
【0279】
このように、本実施の形態による運用によれば、作業用グリッドストレージGS0は、負荷の低いグリッドストレージGSから選択される為、グリッドコンピュータGCからの書き込み負荷を分散することができる。
【0280】
なお、本実施の形態の別の運用としては、ホスト装置2から2つのNASストレージNを指定し、1つのNASストレージNにエクスポート指示及び他の1つのNASストレージNにインポート指示を行うことで、NASストレージN間でポータビリティ情報であるメタデータを送受信することで、他の1つのNASストレージN側に仮想フォルダVAを再現することもできる。
【0281】
(3−2)第3の実施の形態の効果
第3の実施の形態によれば、異なるファイル種別の異なるフォルダに配置された複数のコンテンツに関してフォルダ間やボリューム間を跨ってグループ化することがきるため、管理やアクセス権の設定に関する管理者や操作者の煩わしさを削減することができる。
【0282】
また、第3の実施の形態によれば、負荷の低いグリッドストレージをアービタ・ゲートウェイが選択するため、操作者側端末装置からの指示に基づいた、グリッドコンピュータ又はホスト装置からグリッドストレージ又はNASストレージへの書き込み負荷を分散することができる。
【0283】
(4)他の実施の形態
記憶制御装置であるNASストレージNには、複数のファイルを格納するためにフォルダ形成部を論理ボリューム内に形成し、核となるファイルを主体ファイルとして核コンテンツ管理部により特定して管理したが、フォルダ形成部及び核コンテンツ管理部を個別のハードウェア内に形成してもよい。
【0284】
グループフォルダ形成部が仮想フォルダを形成し、仮想フォルダ内にあるファイルは、実際に格納されたフォルダ内にある実ファイルと対応させていたが、仮想フォルダを形成せずに、実体のあるフォルダをグループフォルダ形成部により形成させてもよい。
【0285】
NASストレージN内に関連コンテンツ管理部を設け、記憶管理テーブル710、関連性管理テーブル711及びノード情報管理テーブル712を格納し、主体ファイルと関連付けファイルとの管理情報を管理することとしたが、管理部を個別のハードウェア内に形成してもよい。
【0286】
ニアラインボリュームとして、NASストレージ内の下層に設けた論理ボリュームを使用したが、上層に設けた論理ボリュームを使用してもよい。
【産業上の利用可能性】
【0287】
本発明は、1又は複数のNASストレージを有する記憶システムや、その他の形態の記憶システムに広く適用することができる。
【図面の簡単な説明】
【0288】
【図1】第1の実施の形態における記憶システムの全体構成を示すブロック図である。
【図2】第1の実施の形態における論理ボリューム内の構成を示す概念図である。
【図3】第1の実施の形態における記憶管理テーブルを示す図表である。
【図4】第1の実施の形態におけるノードツリーのモデル図である。
【図5】第1の実施の形態における記憶管理テーブルの一部を示す図表である。
【図6】第1の実施の形態における記憶管理テーブルの一部を示す図表である。
【図7】第1の実施の形態における関連性管理テーブルを示す図表である。
【図8】第1の実施の形態における関連付け処理の一例を示す概念図である。
【図9】第1の実施の形態におけるホスト装置側のウィンドウ画面図である。
【図10】第1の実施の形態におけるホスト装置側のウィンドウ画面図である。
【図11】第1の実施の形態におけるファイルの関連付けを変更した場合の概念図である。
【図12】第1の実施の形態における仮想フォルダを作成した場合のノードツリーも出る図である。
【図13】第1の実施の形態におけるファイルの格納位置を変更した場合のホスト装置側の画面図である。
【図14】第1の実施の形態における仮想フォルダ内を操作する関連付け方式の画面図である。
【図15】第1の実施の形態におけるWebサーバ上でのホスト装置側の画面図である。
【図16】第1の実施の形態における記憶システムの全体構成を示す概念図である。
【図17】第1の実施の形態における特殊機能をもつ実行用フォルダの図表である。
【図18】第1の実施の形態における要求の定義を示す図表である。
【図19】第1の実施の形態におけるホスト装置とNASストレージとの間の動作におけるシーケンスである。
【図20】第1の実施の形態におけるホスト装置とNASストレージとの間の動作におけるシーケンスである。
【図21】第1の実施の形態におけるホスト装置とNASストレージとの間の動作におけるシーケンスである。
【図22】第1の実施の形態におけるNASストレージの関連付け処理又は関連解除処理を示すフローチャートである。
【図23】第1の実施の形態におけるスナップショット・フォルダ内に格納されるファイルを示す概念図である。
【図24】第1の実施の形態におけるスナップショット・フォルダを用いた場合のスナップショット・ファイルの一例図である。
【図25】第1の実施の形態における任意の時点での仮想フォルダのプロパティ画面である。
【図26】第1の実施の形態におけるホスト装置上での検索画面図である。
【図27】第2の実施の形態における記憶システムの全体構成を示すブロック図である。
【図28】第2の実施の形態におけるスナップショット・フォルダ内に格納されるファイルを示す概念図である。
【図29】第3の実施の形態における記憶システムの全体構成を示す概念図である。
【図30】第3の実施の形態における記憶システムの一部構成を示す概念図である。
【図31】第3の実施の形態における記憶システムの一部構成を示す概念図である。
【図32】第3の実施の形態における記憶システムの一部構成を示す概念図である。
【図33】第3の実施の形態における記憶システムの一部構成を示す概念図である。
【図34】第3の実施の形態における従来での記憶システムの運用を示す概念図である。
【図35】第3の実施の形態における記憶システムの運用を示す概念図である。
【符号の説明】
【0289】
1……記憶システム、2……ホスト装置、7……NASコントローラ、8……ストレージコントローラ、9……増設筐体、N……NASストレージ、710……記憶管理テーブル、711……関連性管理テーブル、VF……特定フォルダ、VA……仮想フォルダ。

【特許請求の範囲】
【請求項1】
ホスト装置から提供される複数のコンテンツを格納する物理デバイスの記憶領域上に複数の論理ボリュームを形成する1又は複数の記憶制御装置を有する記憶システムにおいて、
前記1又は複数の記憶制御装置は、
前記複数の論理ボリューム上に前記複数のコンテンツを格納するための複数のフォルダを形成するフォルダ形成部と、
前記複数の論理ボリューム又は前記複数のフォルダに格納される前記複数のコンテンツから核となる核コンテンツを特定させて管理する核コンテンツ管理部と、
前記複数の論理ボリューム又は前記複数のフォルダに格納される複数のコンテンツから、前記核コンテンツと、一部又は全部の前記核コンテンツと関連付けられる1又は複数の関連コンテンツを管理する関連コンテンツ管理部と、
前記核コンテンツと、前記関連コンテンツとを、前記複数の論理ボリューム間又は前記複数のフォルダ間を跨ってグループ化したグループフォルダを形成するグループフォルダ形成部と、を備える
ことを特徴とする記憶システム。
【請求項2】
前記グループフォルダ形成部は、
グループ化を行うための仮想的なフォルダを形成し、
前記仮想的なフォルダ内に配置される前記核コンテンツ及び前記関連コンテンツは、前記フォルダ形成部により形成された前記複数のフォルダ内又は前記複数の論理ボリューム内に格納される複数のコンテンツと対応付けられる
ことを特徴とする請求項1記載の記憶システム。
【請求項3】
前記関連コンテンツ管理部で、前記核コンテンツと、前記関連コンテンツとの関連付けを管理する管理情報を変更すると、前記グループフォルダ内に格納される前記関連コンテンツの関連付けが変更される
ことを特徴とする請求項1記載の記憶システム。
【請求項4】
前記複数のコンテンツは、複数のファイルであり、
前記核コンテンツ管理部は、
前記ホスト装置から送信されるコンテンツ情報に基づいて、前記核ファイルを検索することによって特定して管理する
ことを特徴とする請求項1の記憶システム。
【請求項5】
前記複数の論理ボリュームのうち前記ホスト装置からのアクセス回数が少ないコンテンツを格納するニアラインボリュームを備え、
前記ニアラインボリュームは、
任意の時点における前記グループフォルダの情報を随時格納するためのスナップショット・フォルダを備え、
前記スナップショット・フォルダに格納された複数の前記グループフォルダの情報の中から前記ホスト装置からのアクセス頻度の少ない前記グループフォルダに関する情報を優先的に選択して格納する
ことを特徴とする請求項1記載の記憶システム。
【請求項6】
ホスト装置から提供される複数のコンテンツを格納する物理デバイスの記憶領域上に複数の論理ボリュームを形成する1又は複数の記憶制御装置を有する記憶システムの管理方法において、
前記1又は複数の記憶制御装置では、
前記複数の論理ボリューム上に前記複数のコンテンツを格納するための複数のフォルダを形成するフォルダ形成ステップと、
前記複数の論理ボリューム又は前記複数のフォルダに格納される前記複数のコンテンツから核となる核コンテンツを特定させて管理する核コンテンツ管理ステップと、
前記複数の論理ボリューム又は前記複数のフォルダに格納される複数のコンテンツから、前記核コンテンツと、一部又は全部の前記核コンテンツと関連付けられる1又は複数の関連コンテンツを管理する関連コンテンツ管理ステップと、
前記核コンテンツと、前記関連コンテンツとを、前記複数の論理ボリューム間又は前記複数のフォルダ間を跨ってグループ化したグループフォルダを形成するグループフォルダ形成ステップと、を備える
ことを特徴とする記憶システムの管理方法。
【請求項7】
前記グループフォルダ形成ステップは、
グループ化を行うための仮想的なフォルダを形成し、
前記仮想的なフォルダ内に配置される前記核コンテンツ及び前記関連コンテンツは、前記フォルダ形成ステップにより形成された前記複数のフォルダ内又は前記複数の論理ボリューム内に格納される複数のコンテンツと対応付けられる
ことを特徴とする請求項6記載の記憶システムの管理方法。
【請求項8】
前記関連コンテンツ管理ステップでは、前記核コンテンツと、前記関連コンテンツとの関連付けを管理する管理情報を変更すると、前記グループフォルダ内に格納される前記関連コンテンツの関連付けが変更される
ことを特徴とする請求項6記載の記憶システムの管理方法。
【請求項9】
前記複数のコンテンツは、複数のファイルであり、
前記核コンテンツ管理ステップは、
前記ホスト装置から送信されるコンテンツ情報に基づいて、前記核ファイルを検索することによって特定して管理する
ことを特徴とする請求項6の記憶システムの管理方法。
【請求項10】
前記複数の論理ボリュームのうち前記ホスト装置からのアクセス回数が少ないコンテンツを格納するニアラインボリュームを備え、
前記ニアラインボリュームは、
任意の時点における前記グループフォルダの情報を随時格納するためのスナップショット・フォルダを備え、
前記スナップショット・フォルダに格納された複数の前記グループフォルダの情報の中から前記ホスト装置からのアクセス頻度の少ない前記グループフォルダの情報を優先的に選択して格納する
ことを特徴とする請求項6記載の記憶システムの管理方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate

【図30】
image rotate

【図31】
image rotate

【図32】
image rotate

【図33】
image rotate

【図34】
image rotate

【図35】
image rotate


【公開番号】特開2008−210057(P2008−210057A)
【公開日】平成20年9月11日(2008.9.11)
【国際特許分類】
【出願番号】特願2007−44654(P2007−44654)
【出願日】平成19年2月23日(2007.2.23)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】