ディスクの回転を制御するシステム
【課題】
アクセス応答速度劣化を防止しつつ、消費電力量抑制が可能なシステムが望まれている。
【解決手段】
システムは、ファイルシステムを管理するコントローラと、ファイルシステムのデータを格納するディスクアレイシステムとを有する。ディスクアレイシステムは、ディスクデバイスから構成される複数の論理ボリュームと、論理ボリュームへのデータの入出力を制御するディスク制御部とを有する。複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイスの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイスの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれている。そして、第2のタイプの論理ボリュームには、ファイルシステムのデータの内、予め定められた条件を満たすデータが格納される。
アクセス応答速度劣化を防止しつつ、消費電力量抑制が可能なシステムが望まれている。
【解決手段】
システムは、ファイルシステムを管理するコントローラと、ファイルシステムのデータを格納するディスクアレイシステムとを有する。ディスクアレイシステムは、ディスクデバイスから構成される複数の論理ボリュームと、論理ボリュームへのデータの入出力を制御するディスク制御部とを有する。複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイスの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイスの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれている。そして、第2のタイプの論理ボリュームには、ファイルシステムのデータの内、予め定められた条件を満たすデータが格納される。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ファイルシステムを管理する装置と、ファイルシステムのデータを格納するストレージシステムとに関する。
【背景技術】
【0002】
ファイルシステムを管理するファイルサーバとファイルシステムのデータを格納するストレージシステム双方の機能を有するNAS(Network Attached Storage)システムを使用したファイルサービスのニーズが近年急速に高まっている。それに伴い、NASシステムに格納されるデータの容量が増加し、NASシステムが有するストレージシステムのディスクデバイスの台数も増加の傾向にある。
【0003】
ディスクデバイスの台数が増加すると、ストレージシステム全体の消費電力も増加することになる。特に多数のディスクデバイスを搭載し、複数のディスクデバイスでRAID(Redundant Array of Inexpensive Disks)を構成している大容量のディスクアレイシステムでは、ストレージシステムの消費電力増加が課題となっている。
【0004】
そこで、一定期間上位装置からのアクセスがないディスクデバイスの回転を停止(スピンダウン)する等して、ディスクアレイシステム全体の消費電力を抑える方法が特許文献1に記載されている。
【0005】
【特許文献1】米国特許6826005号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記従来技術によると、頻繁にアクセスされるデータと余りアクセスされないデータとが同じディスクデバイスに格納されている場合、このディスクデバイスは頻繁にアクセスされるので、回転が停止される頻度は低くなり、ストレージシステムの消費電力量抑制に貢献できない。一方、ディスクデバイスの回転を頻繁に停止するために、ディスクデバイスがアクセスされてから回転が停止されるまでの期間を短く設定すると、ディスクデバイスにアクセスがある度に、ディスクデバイスの回転の開始(スピンアップ)を行わなければならない状況が生じる可能性があり、アクセスに対する応答が遅延する可能性がある。
【0007】
従って、アクセスに対する応答速度の劣化を防止しつつ、消費電力の抑制が可能なシステムが望まれている。
【課題を解決するための手段】
【0008】
システムは、ファイルシステムを管理するコントローラと、ファイルシステムのデータを格納するディスクアレイシステムとを有する。ディスクアレイシステムは、各々一以上のディスクデバイスから構成される複数の論理ボリュームと、当該複数の論理ボリュームへのデータの入出力を制御するディスク制御部とを有する。ディスクアレイシステムの複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイス中のディスクの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイス中のディスクの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれている。そして、第2のタイプの論理ボリュームには、ファイルシステムのデータの内、予め定められた条件を満たすデータが格納される。
【発明の効果】
【0009】
ストレージシステム全体の消費電力を抑制しつつ、データへのアクセス応答遅延を極力抑えることが可能となる。
【発明を実施するための最良の形態】
【0010】
以下、本発明実施の形態について、図面を用いて具体的に説明する。尚、以下に説明する実施形態は一例であって、本発明が以下に説明する実施形態に限定されるものではない。
【実施例1】
【0011】
本実施例は、ファイルサーバとしての機能を有するNASコントローラと、ストレージシステムとを用いてファイルシステムサービスを行う場合の実施形態である。
【0012】
図1は、本実施形態におけるNASシステムの論理構成の例を示す図であり、NASシステム130はファイル共有装置でありファイルサーバとして機能するNASコントローラ101とファイルシステムのデータを格納するストレージシステムであるディスクアレイシステム112とを有する。
【0013】
NASコントローラ101は、ネットワークI/O処理部102、データリスト管理部103、ディスク制御指示部104、ファイルシステム制御部106、データ処理部107、メタデータキャッシュ部108、I/F(インタフェース制御部)109を有する。
【0014】
ネットワークI/O処理部102は、外部ネットワーク110を介してクライアントや管理端末等とのデータのやり取りを行う。データリスト管理部103は、後述するファイルシステム構成情報301やボリューム管理情報401、ファイルシステム管理表701、WORMデータ管理表1001等、各種管理情報を管理する。ディスク制御指示部104は、時間を計測する計時部105を備え、ディスクアレイシステム112に対してディスクデバイスの回転開始や回転停止の指示を行う。ファイルシステム制御部106は、ファイルやディレクトリのWORM(Write Once Read Many)化指示等、ファイルシステムに関する制御を行う。データ処理部107は、データの処理を行う。メタデータキャッシュ部108は、メタデータのコピーを保持する。I/F109は、ディスクアレイシステム112が備えるI/F113とSAN(Storage Area Network)等の通信路111を介してデータのやり取りを行う。
【0015】
ディスクアレイシステム112は、I/F(インタフェース制御部)113の他に、ディスク制御部114、複数の論理ボリューム(LU0117、LU1118、LU2119、LU3120、LU4121等)を備える。尚、論理ボリュームの数は図1に示す例に限られない。論理ボリュームLU0117、LU1118、LU2119、LU3120、LU4121には、ファイルデータや、ファイルシステムの各種管理のためのデータが格納されている。ディスク制御部114は、ディスク回転管理部115とI/O処理部116を備え、I/O処理部116は、論理ボリュームへのデータの読み書きを行い、ディスク回転管理部115は、論理ボリュームを構成するディスクデバイス中のディスクの回転開始や回転停止等の制御を行う。尚、本明細書では、ディスクデバイスが有するディスクの回転開始や回転停止について説明する際、「ディスクデバイスの回転」と表現することがあるが、これは「ディスクデバイスが有するディスクの回転」を意味している。
【0016】
図2は、本実施形態におけるNASシステムの物理構成の例を示す図である。
【0017】
NASコントローラ101は、ネットワークインタフェース204、CPU205、メモリ206、ローカルディスク207、アダプタ208を備え、これらが内部通信路によって相互に通信可能に接続されている。
【0018】
ディスクアレイシステム112は、インタフェース209、キャッシュメモリ210、ディスクコントローラ211、ディスクコントローラ211に接続される複数のディスクデバイス212を備え、インタフェース209、キャッシュメモリ210、ディスクコントローラ211は内部通信路によって相互に通信可能に接続されている。
【0019】
NASコントローラ101とディスクアレイシステム112とはSAN111で接続される。NASコントローラ101とディスクアレイシステム112間の接続形態は、SAN111に限定したものではなく、専用回線やTCP/IPネットワーク等でも良い。
【0020】
NASコントローラ101のネットワークインタフェース204は、外部ネットワーク110とのデータの送受信を行う。ローカルディスク207には、NASコントローラ101で実行されるプログラムや、ファイルシステム構成情報301やボリューム管理情報401、ファイルシステム管理表701、WORMデータ管理表1001等の各種管理データが格納される。
メモリ206には、ローカルディスク207に格納された各種データやプログラムが読み込まれたり、処理のための一時データが格納される。CPU205は、NASシステム101で行われる処理を実行する。アダプタ208は、SAN111等を介して、ディスクアレイシステム112とのデータのやり取りを行う。
【0021】
尚、図1に示したデータリスト管理部103、ディスク制御指示部104、ファイルシステム制御部106、データ処理部107は各々、ローカルディスク207からメモリ206に読み出されたプログラムをCPU205が実行することによって構成される。尚、このプログラムは、CPU205に対して後述する各種処理を実行させるための一以上のコードから構成されていても良い。
【0022】
また、図1に示すメタデータキャッシュ部108は、メモリ206内の一部記憶領域であってもよいし、メモリ206とは別のメモリをNASコントローラ101が備えていて、このメモリがメタデータキャッシュ部108として使用されても良い。尚、メタデータキャッシュ部108を構成するメモリとして、NVRAM等の不揮発性メモリを使用すると、障害等でNASコントローラ101を再起動した場合にもメタデータが不揮発性メモリに保存されているので、再起動後にディスクアレイシステムからメタデータキャッシュ部108へメタデータを読み込まずに済むというメリットがある。
【0023】
ディスクアレイシステム112のインタフェース209は、NASコントローラ101とのデータのやり取りを、SAN111等を介して行う。ディスクコントローラ211は、各ディスクデバイス212に対するデータの読み書きや回転の制御を行う。キャッシュメモリ210は、ディスクデバイス212に対して読み書きされるデータを一時的に保持する。各ディスクデバイス212はディスクを有していて、このディスクは図1に示すディスク回転管理部によって回転の停止・開始が制御される。
【0024】
尚、複数のディスクデバイス212が組み合わされて、RAIDグループが構成され、RAIDグループの一部又は全部を用いて、論理ボリュームが構成される。ディスクデバイス212とRAIDグループの対応関係、及びRAIDグループとこのRAIDグループに属する論理ボリュームとの対応関係を示す情報は、ディスクコントローラ211が有するメモリ内で管理される。
【0025】
また、ディスクコントローラ211はメモリとCPUとを備えており、このメモリにはこのCPUによって実行されるI/O処理プログラムとディスク回転管理プログラムとが格納されている(図示せず)。そして、図1に示すディスク制御部114はディスクコントローラ211のCPUがメモリ内のプログラムを実行することによって構成され、CPUがI/O処理プログラムを実行することによって図1に示すI/O処理部116が、CPUがディスク回転管理プログラムを実行することによって図1のディスク回転管理部115がそれぞれ構成される。
【0026】
図3は、データリスト管理部103で管理される、ファイルシステム構成情報301の例である。ファイルシステム構成情報301は、アイテム番号305、データの種別302、格納先論理ボリューム(以降LUとも称する)303、キャッシュフラグ304を有する。
【0027】
データの種別302は、管理対象データの種別を示す情報である。例えば、アイテム#1については、データの種別がinode情報(inode情報は、ファイルシステムの管理データであるメタデータの一種である。)であることを示しており、#2については、データの種別がメタデータの一種であるmount情報であることを示している。また#3については、#3で管理されるデータが/mnt/fs0/以下の階層にて管理されるデータ(即ち”fs0”で識別されるファイルシステムのデータ)であることを示している。#m及び#nについてはデータの属性に基づくデータの種別を示しており、#nは後述するWORM(Write Only Read Many)属性のデータであることを、#mについてはそれ以外(メタデータ、WORM属性以外)の属性が付与されたデータであることを示している。
【0028】
格納先LU303は管理対象データが格納されているディスクアレイシステム112内のLUを示す情報であり、キャッシュフラグ304は管理対象データがNASコントローラ101のメタデータキャッシュ部108にキャッシュされるべきデータであるかどうかを示す。尚、本実施形態では、キャッシュフラグ304が”1”であれば、管理対象データがメタデータキャッシュ部108にキャッシュされることを示しており、”0”であればキャッシュされないことを示している。また、NASコントローラ101はメタデータキャッシュ部108を備えていなくても良く、この場合にはファイルシステム構成情報301はキャッシュフラグ304を備えていなくても良い。
【0029】
尚、図3に示したデータの種別302は一例であって、これ以外のデータ種別がファイルシステム構成情報301に登録されていても良いし、図3に示したデータ種別が全てファイルシステム構成情報301に登録されている必要もない。また、NASコントローラ101は、ファイルシステムの種類等に応じてファイルシステム構成情報301を複数備えていても良い。
【0030】
図4は、データリスト管理部103で管理される、ボリューム管理情報401の例である。ボリューム管理情報401は、アイテム番号408、LU番号402、関連LU番号403、最終アクセス時刻404、常時回転フラグ405、停止待ち時間406、回転停止時刻407を有する。
【0031】
LU番号402は論理ボリュームの識別情報である。
【0032】
関連LU番号403は、対応するLU番号402によって識別されるLUとディスクデバイスを共有しているLU(以降、関連LUと呼ぶ)の識別情報である。即ち関連LUとはあるLUと同じRAIDグループに属するLUのことであり、関連LU番号403には対応するLU番号402で識別されるLUの関連LUの識別情報が登録される。従って例えば、LU番号402に図2のLU1118の識別情報が登録されている場合には、LU1118とディスクデバイスを共有している図2のLU2119の識別情報が関連LU番号403に登録される。
【0033】
最終アクセス時刻404には、当該LUに対してアクセスがある度に計時部105が計測している時刻(即ちアクセス時の時刻)が登録される。従って、最終アクセス時刻404は、当該LUへの最新アクセスの時刻を表していることになる。
【0034】
常時回転フラグ405は、当該LUを構成しているディスクデバイスを常時回転させるかどうかを示していて、”1”が設定されていればアクセス頻度や最新アクセス時刻からの経過時間に関わらずディスクデバイスを常時回転させることを示しており、”0”が設定されていればディスクデバイスの回転が停止される可能性があることを示している。
【0035】
尚図4の例では、メタデータが格納されているLU0について常時回転フラグ405が”1”に設定されているので、LU0を構成するディスクデバイスについては回転の停止・再回転の処理が実行されないことが分かる。メタデータは、ファイルやディレクトリ等のディスクアレイシステム112内での格納位置等を示す、ファイルシステムの管理データである。従って、NASコントローラ101はアクセス要求を受信するたびに、まずメタデータにアクセスする必要がある。このためメタデータは、アクセス頻度が高いと事前に予測されるデータであると言える。この様なデータが格納されているLUについては、LUを構成しているディスクデバイスの回転を停止すると、アクセスの度に頻繁にスピンアップが必要となり、スピンアップのための待ち時間が発生してしまう。この結果、アクセス要求への応答時間性能が劣化してしまう。従って、メタデータの様な事前にアクセス頻度が高いと予測されるデータが格納されているLUについては、常時回転フラグ405を”1”に設定しておくことで、アクセス要求への応答時間性能の劣化を防止することができる。
【0036】
以降実施例1から5においては、メタデータが格納されているLUについては常時回転フラグ405が”1”に設定されているものとする。しかし、図4に示す常時回転フラグ405の設定方法は一例であって、常時回転フラグ405が”1”に設定されるのは、メタデータを格納しているLUに限られるものではない。例えば、NASシステム130の管理者が、アクセス頻度が予め定められた基準値より高いと予測されるファイルデータが格納されているLUに対して、常時回転フラグ405を”1”に設定しておいても良いし、データ処理部107が各LUのアクセス頻度の統計情報を蓄積して、アクセス頻度が予め設定されている基準値に達した場合に、当該LUの常時回転フラグ405を”1”に設定しなおしても良い。
【0037】
常時回転フラグ405の値が”0”の場合、ボリューム管理情報401には停止待ち時間406が設定される。停止待ち時間406は、ディスクデバイスの回転を停止させるタイミングを決定するために用いられる値であり、最終アクセス時刻404から停止待ち時間406分だけ時間が経過すると、ディスクデバイスの回転停止処理が実行される。即ち、この停止待ち時間406を超える期間、当該LUに対するアクセスがなかった場合、当該LUを構成するディスクデバイスの回転を停止するための処理が実行されることになる。そして、ディスクデバイスの回転が停止されると、その時刻が回転停止時刻407としてボリューム管理情報401に設定される。
【0038】
以下、図1から図6を用いて、実施例1における処理手順について説明する。
【0039】
図1に示すNASシステム130を用いてファイルシステムサービスを行う場合、まず、NASコントローラ101に対してファイルシステムを構築するための情報を設定する必要がある。このために、データリスト管理部103に図3に示すようなファイルシステム構成情報301が事前に設定される。ファイルシステム構成情報301は、NASシステム130の管理者によって、外部ネットワーク110を介してNASコントローラ101に入力される。尚、ファイルシステム構成情報301は、ファイルシステムサービス開始後に必要に応じて変更されても良い。ファイルシステム構成情報301に従って、NASシステム130にはファイルシステムが構築され、メタデータやファイルデータ等の格納先LUが決まる。
【0040】
次に、クライアント計算機(以下単にクライアントと称する)等からNASシステム130に対してアクセス要求が送信された際の処理手順について図5を用いて説明する。
【0041】
クライアント等から、NASコントローラ101で管理しているファイルシステムのデータへのアクセス要求(例えば、READ要求やWRITE要求、ファイル検索要求等)が発行されると、外部ネットワーク110を通じてネットワークI/O処理部102がこのアクセス要求を受信する(s501)。
【0042】
アクセス要求に従ってデータにアクセスするためには、NASコントローラ101はまずファイル名やパス名の解決を行い、アクセス対象のデータが格納されているディスクアレイシステム112上のデータ格納位置を特定する必要があり、このためにNASコントローラ101はメタデータにアクセスする必要がある。そこで、NASコントローラ101がメタデータキャッシュ部108を備えている場合には、データ処理部107が必要なメタデータがメタデータキャッシュ部108にキャッシュされているかどうかを調べる(s502)。これは、図3のファイルシステム構成情報301を参照し、キャッシュフラグ304の値をチェックすることによって、若しくはメタデータキャッシュ部108を検索することにより調べることができる。
【0043】
s502で、メタデータキャッシュ部108にメタデータが格納されていないと判断された場合、もしくは、NASコントローラ101がメタデータキャッシュ部108を備えていない場合、データ処理部107はファイルシステム構成情報301を参照して、目的のメタデータが格納されているLUを調べる(s503)。そしてデータ処理部107は、当該LUからメモリ206へメタデータを読み出す(s504)。
【0044】
一方s502で、メタデータキャッシュ部108にメタデータが格納されていると判断された場合、メタデータキャッシュ部108がメモリ206内の記憶領域に構成されている場合には、データ処理部107はメタデータキャッシュ部108からメモリ206の他の記憶領域(CPU205が使用するメモリ206上の他の作業領域)へ目的のメタデータを読み出す。一方メタデータキャッシュ部108がメモリ206とは別のメモリから構成されている場合には、データ処理部107は当該別のメモリからメモリ206へ目的のメタデータを読み出す(s505)。
【0045】
次に、データ処理部107はメモリ206に読み込んだメタデータを利用して、アクセス対象のデータが格納されているLUを特定する。そして、特定したLUを構成しているディスクデバイスが回転中かどうかを、データリスト管理部103で管理しているボリューム管理情報401を参照して調べる(s506)。ボリューム管理情報401に回転停止時刻407が設定されている場合、当該LUを構成しているディスクデバイスは回転停止中であり、設定されていない場合は回転中である。
【0046】
s506で、アクセス対象LUを構成するディスクデバイスが回転停止中であった場合、ディスク制御指示部104が、当該LUを構成するディスクデバイスの回転開始の指示を、ディスクアレイシステム112のディスク制御部114に対して行う(s507)。この際、ディスク制御指示部104はディスク制御部114に対して、処理対象のLUを指定する。ディスク制御部114はこの回転開始の指示を受信すると、指示の対象となっているLUを構成している一または複数のディスクデバイスを特定し、ディスク回転管理部115が特定されたディスクデバイスに対してスピンアップを指示し、この結果各ディスクデバイスの回転が開始される。
【0047】
尚、ボリューム管理情報401が更にLUを構成するディスクデバイスの識別情報を示すLU構成ディスクデバイス情報を備え、NASコントローラ101が各LUを構成しているディスクデバイスの識別情報を把握できるようにしておいても良い。この場合には、S506において、ディスク制御指示部104が処理対象のLUを構成するディスクデバイスを特定し、このディスクデバイスの識別情報を指定して回転開始の指示をディスク制御部114に発行しても良い。
【0048】
尚、s507では更に、データ処理部107がボリューム管理情報401の回転停止時刻407の値をクリアする。
【0049】
一方s506で、当該ディスクデバイスが回転中であった場合には、s508の処理へ移る。
【0050】
次にs508では、データ処理部107がアクセス対象LUに対するアクセス要求をディスクアレイシステム112に発行し、これを受信したディスク制御部114は、アクセス要求に従って当該LUに格納されたデータに対する処理(Read処理、Write処理等)をI/O処理部116を介して行い、処理結果をデータ処理部107に返す。処理結果を受信したデータ処理部107は、受信した処理結果に基づきクライアントにアクセス要求に対する応答を返す。またデータ処理部107はアクセス要求をディスクアレイシステム112に発行した時点で、ボリューム管理情報401の当該LUについての最終アクセス時刻404を更新する(s508)。
【0051】
次にデータ処理部107は、処理の結果(例えば、ファイルサイズの変更や、更新日時の変更等)、メタデータの更新が必要かどうかを調べ(s509)、更新が必要ない場合は処理を終了する。
【0052】
s509でメタデータの更新が必要であると判断された場合、データ処理部107は、LU(図3の例ではLU0)に格納されているメタデータの更新を行うよう、ディスクアレイシステム112に指示し、この指示を受信したディスク制御部114は指定されたLUに格納されているメタデータの更新を行う(s510)。
【0053】
次にデータ処理部107は、NASコントローラ101がメタデータキャッシュ部108を備えており、更にs510で更新されたメタデータの更新前の値がメタデータキャッシュ部108にキャッシュされているかどうか調べる(s511)。これは、s502と同様、図3に示すファイルシステム構成情報301のキャッシュフラグ304を参照することによって、若しくはメタデータキャッシュ部108を検索することによって判断することができる。
【0054】
メタデータがキャッシュされていない場合、もしくは、NASコントローラ101がメタデータキャッシュ部108を備えていない場合は処理を終了する。
【0055】
s511でメタデータキャッシュ部108にメタデータがキャッシュされていると判断された場合、データ処理部107はメタデータキャッシュ部108に格納されているメタデータを更新し(s512)、処理を終了する。
【0056】
次に、NASシステム130におけるディスクデバイスの回転状態の管理について説明する。NASコントローラ101では、ディスク制御指示部104により、ディスクアレイシステム112のLUを構成するディスクデバイスの回転状態を常時(又は一定時間毎に)管理している。そこで、ディスクデバイスの回転状態管理のためにディスク制御指示部104によって実行される処理の一例を図6に示す。
【0057】
ディスク制御指示部104は、現在時刻を計時する計時部105を備えており、また、データリスト管理部103で管理されているボリューム管理情報401に登録された全てのLUについて、最終アクセス時刻404を監視している。そして、ボリューム管理情報401に登録された各LUについて、以下に説明するs600からs604までの処理を行う。
【0058】
まず始めに、ディスク制御指示部104は処理対象のLUの常時回転フラグ405をチェックする(s600)。常時回転フラグ405に”1”が設定されている場合には、当該LUを構成しているディスクデバイスは常時回転させておく必要があるため、回転停止等の指示を行う必要はないので、当該LUに関する処理を終了する。
【0059】
s600で、常時回転フラグ405に”0”が設定されていると判断された場合、ディスク制御指示部104は、計時部105の指す現在時刻と当該LUの最終アクセス時刻404との差が、停止待ち時間406を超過しているかどうか調べる(s601)。停止待ち時間406を超過していない場合は、当該LUに対する処理は終了する。
【0060】
一方s601で、計時部105の指す現在時刻と当該LUの最終アクセス時刻404との差が、当該LUの停止待ち時間406を超過している場合、ディスク制御指示部104は当該LUに関連LU番号403が設定されているかどうか調べる(s602)。
【0061】
s602で当該LUに関連LU番号403が設定されていないと判断された場合、ディスク制御指示部104はディスク制御部114のディスク回転管理部115に対して、当該LU
を構成しているディスクデバイスの回転停止の指示を行い、更にボリューム管理情報401の回転停止時刻407に計時部105が指している現在時刻を設定する(s604)。
【0062】
尚、この際ディスク制御指示部104は回転停止処理対象のLUを指定して、ディスク回転管理部115に回転停止指示を発行するものとする。そして、ディスク回転管理部115がディスク制御指示部104から指定されたLUを構成しているディスクデバイスを特定し、特定された一または複数のディスクデバイスの回転を停止させるものとする。
【0063】
尚、図5のs507で述べたケースと同様、ボリューム管理情報401が更にLU構成ディスクデバイス情報を備え、NASコントローラ101が各LUを構成しているディスクデバイスの識別情報を把握できるようにしておいても良い。この場合には、S604において、ディスク制御指示部104が処理対象のLUを構成するディスクデバイスを特定し、このディスクデバイスの識別情報を指定して回転停止指示をディスク回転管理部115に発行しても良い。
【0064】
s602で当該LUに関連LU番号403が設定されている場合、ディスク制御指示部104は関連LU番号403が示す関連LUについてのボリューム管理情報401を参照し、当該関連LUの最終アクセス時刻404と計時部105が指す現在時刻との差が、当該関連LUの停止待ち時間406を超過しているかどうか調べる(s603)。そして、関連LUに関して、最終アクセス時刻404と現在時刻との差が停止待ち時間406を超過していない場合は、当該LUに対する処理を終了する。尚、s603において、関連LUについてボリューム管理情報401に停止待ち時間406が登録されていない場合にも、処理を終了する。
【0065】
一方s603で、関連LUについて、最終アクセス時刻404と現在時刻との差が停止待ち時間406を超過していると判断された場合には、ディスク制御指示部104はディスク制御部114のディスク回転管理部115に対して、元々の監視対象LU及び関連LUを構成しているディスクデバイスの回転停止の指示を行い、監視対象LU及び関連LU双方についてボリューム管理情報401に回転停止時刻407を設定する(s604)。
【0066】
以上に説明した実施例1によれば、アクセス頻度が高いと予測されるメタデータの様なデータが格納されているLUについては、当該LUを構成するディスクデバイスを常時回転させておくように設定する一方、その他のLUについては一定時間アクセスが発生しなければ当該LUを構成するディスクデバイスの回転を停止するよう構成している。この結果、アクセス頻度が高いデータについてはスピンアップによるアクセス応答時間劣化を防止することができる一方、アクセス頻度の低いデータについてはLUを構成するディスクデバイスの回転を停止することで消費電力量を抑制することができ、効率的にNASシステム130全体の消費電力を低減することができる。
【0067】
尚、より効率的にNASシステム130全体の消費電力量を低減するには、アクセス頻度の低いデータを格納するLUとアクセス頻度の高いデータを格納するLUとが、同じRAIDグループに属さないようNASシステム130を構成することが好ましい。このために、ディスク制御部114上に設定されているLUの情報、当該LUが属するRAIDグループの情報、及び当該RAIDグループを構成する一以上のディスクデバイスの情報を、NASシステム130の管理者が把握しておき、これらの情報に基づいて、アクセス頻度の低いデータを格納するLUとアクセス頻度の高いデータを格納するLUとが、同じディスクデバイスを共有しないよう、管理者が図3に示すファイルシステム構成情報301をNASコントローラ101に設定することとしても良い。
【0068】
例えば、メタデータを格納するLUとファイルデータを格納するLUとが同じRAIDグループに属することのないようファイルシステム構成情報301が構成されていても良い。また、RAIDグループと1:1に対応するLU(即ち、1つのRAIDグループにLUが1つのみ設定されているケースにおける当該LU)にメタデータが格納されるよう、ファイルシステム構成情報301が構成されていても良い。
【0069】
更に、本実施形態ではメタデータにアクセスしたのを契機に(図5のs504若しくはs505)、ディスクデバイスへの回転指示を出す(図5のs507)。ファイルシステムにおいては一般に、ファイルへのアクセス要求があると、まずメタデータがアクセスされ、メタデータを用いてファイルデータの格納位置やファイルの属性等がチェックされた後に、ファイルデータが実際に格納されている記憶領域へのアクセス処理が行われる。従って、メタデータがアクセスされたのを機にディスクデバイスへの回転指示を出しておけば、ファイル属性のチェック等メタデータを用いた処理が行われている間にディスクデバイスのスピンアップ処理を実行しておくことができるので、スピンアップ完了までのディスクアクセスの待ち時間を低減、もしくは解消することができる。
【実施例2】
【0070】
本実施例は、実施例1で述べたNASシステム130を複数台用い、これら複数台のNASシステム130を連携させてファイル共有サービスを行う形態である。実施例2は実施例1と共通点が多いので、以下には実施例1とは異なる点を説明し、実施例1と同様の点は説明を省略する。
【0071】
図7は実施例2におけるファイル共有システムの構成の一例を示す図である。ファイル共有システムは、複数のディスクアレイシステム(112a、112b)、複数のNASコントローラ(101a、101b)を有し、複数のディスクアレイシステム(112a、112b)と複数のNASコントローラ(101a、101b)とはSAN111等の通信路を介して相互に通信可能に接続されており、複数のNASコントローラ(101a、101b)は更にクライアントとLAN(Local Area Network)等の外部ネットワーク110を介して通信可能に接続されている。尚、以降複数のディスクアレイシステム(112a、112b)を区別する必要がない場合には単にディスクアレイシステム112と表現し、複数のNASコントローラ(101a、101b)を区別する必要がない場合には単にNASコントローラ101と表現する。また、図7に示すNASコントローラ101、ディスクアレイシステム112、クライアントの台数は一例であって、これに限られるものではない。
【0072】
図7においては、NASコントローラ101aとディスクアレイシステム112aがNASシステム130aを、NASコントローラ101bとディスクアレイシステム112bがNASシステム130bを構成しているものとする。即ち、NASコントローラ101aはディスクアレイシステム112aに格納されるファイルデータやメタデータについてのファイルシステム構成情報301aを有し、ディスクアレイシステム112aが有するLUやディスクデバイスに関するボリューム管理情報401aを有する。NASコントローラ101bも同様に、ディスクアレイシステム112bに格納されるファイルデータやメタデータについてのファイルシステム構成情報301bを有し、ディスクアレイシステム112bが有するLUやディスクデバイスに関するボリューム管理情報401bを有する。尚、以降複数のNASシステム(130a、130b)を区別する必要がない場合には単にNASシステム130と表現する。
【0073】
各NASコントローラ101、ディスクアレイシステム112、及びNASシステム130の構成は実施例1とほぼ同様であるから、以下には実施例1との差異点についてのみ述べる。
【0074】
複数のNASシステム130が連携してファイル共有サービスを提供する本実施例では、NASコントローラ101a又はNASコントローラ101bの少なくとも一方(双方でも良い)が、実施例1で説明した構成に加えて更に、ファイルシステムの識別情報と当該ファイルシステムを管理するNASコントローラ101の識別情報との対応関係を示すファイルシステム管理表701(図8に示す)を有している。そして、クライアントからファイルへのアクセス要求は、ファイルシステム管理表701を有するNASコントローラ101によって処理される。この処理の方法には、例えば以下の2つの方法が考えられる。
【0075】
[方法1]
NASコントローラ101がアクセス要求中に含まれるアクセス対象のファイルシステムの名前に基づき、ファイルシステム管理表701を参照して、このファイルシステムを管理するNASコントローラ101を特定する。特定されたNASコントローラ101が自身であった場合には、自身が管理するファイルシステム構成情報301やボリューム管理情報401に基づいてアクセス要求に従いアクセス処理を実行する。一方特定されたNASコントローラ101が他のNASコントローラ101であった場合には、クライアントから受信したアクセス要求を特定された他のNASコントローラ101に転送する。
【0076】
[方法2]
NASコントローラ101がファイルシステム管理表701を参照して、アクセス対象のファイルシステムを管理するNASコントローラ101を特定し、特定されたNASコントローラ101が自身であった場合には、アクセス処理を実行することは方法1と同様である。但し、特定されたNASコントローラ101が他のNASコントローラ101であった場合には、方法1とは異なりNASコントローラ101は特定されたNASコントローラ101の識別情報をクライアントに通知し、クライアントに対してこの識別情報に従って他のNASコントローラ101にアクセスするよう指示する。
【0077】
図8は、実施例2においてNASコントローラ101のデータリスト管理部103で管理されるファイルシステム管理表701の例を示す図である。上述の様にファイルシステム管理表701はファイル共有システム内に含まれる全てのNASコントローラ101が有していても良いし、一部のNASコントローラ101のみが有していても良い。
【0078】
ファイルシステム管理表701は、アイテム番号704、NASコントローラ名702、ファイルシステム名703を有しており、NASコントローラ名702が示すNASコントローラ101が管理しているファイルシステムの識別情報が対応するファイルシステム名703に設定されている。ファイルシステム名703はクライアントがNASコントローラ101に対してアクセス要求を発行する際、アクセス対象のファイルやディレクトリ等を特定するためにアクセス要求中に含ませる情報であるため、NASコントローラ101はクライアントから受信したアクセス要求とファイルシステム管理表701を用いて、クライアントのアクセス対象がどのNASコントローラ101にて管理されているかを特定することができる。
【0079】
図9は実施例2におけるアクセス要求の処理方法の一例を示す図である。本実施例におけるアクセス処理は、図5に示す処理方法とほぼ同様であるが、図5に示すステップs501が異なる。そこで、この異なる部分のみを図9を用いて以下に説明する。
【0080】
図9(A)は上述の[方法1]を用いてアクセス要求の処理(以下、アクセス処理とも称する)を実行する場合に、図5のステップs501に代わってNASコントローラ101によって実行される処理の一例を示している。
【0081】
クライアント等からファイルシステムへのアクセス要求が発行されると、ファイルシステム管理表701を有しているあるNASコントローラ101が外部ネットワーク110を通じてネットワークI/O処理部102でこのアクセス要求を受信する(s801)。
【0082】
次にアクセス要求を受信したNASコントローラ101のデータ処理部107は、アクセス対象のデータが、自身が管理するファイルシステムのデータであるか、他のNASコントローラ101が管理するファイルシステムのデータであるかを、ファイルシステム管理表701を参照して調べる(s802)。
【0083】
s802の結果、アクセス対象のデータが自身が管理しているファイルシステムのデータである場合には、図5のs502へ移る。以後の処理は、図5に示す処理と同様である。
【0084】
一方s802で、アクセス対象のデータが他のNASコントローラ101が管理しているファイルシステムのデータであると判断された場合、データ処理部107はファイルシステム管理表701に設定されている当該他のNASコントローラのNASコントローラ名702を用いて、当該他のNASコントローラ101のデータ処理部107に対して、クライアントから受信したアクセス要求を送信し、以後図5に示すアクセス処理を実行するよう指示して(s803)、処理を終了する。
【0085】
尚、このアクセス要求を受信した当該他のNASコントローラ101では、以降図5に示す処理が実行される。但し、当該他のNASコントローラ101がファイルシステム管理表701を有している場合には、当該他のNASコントローラ101で図9(A)に示す処理が実行された後、図5のs502以降の処理が実行されても良い。
【0086】
図9(B)は上述の[方法2]を用いてアクセス処理を実行する場合に、図5のステップs501に代わってNASコントローラ101によって実行される処理の一例を示している。図9(B)に示す処理は図9(A)に示す処理とほぼ同様であるが、図9(A)のs803に相当する処理が図9(B)ではs804に示す処理に置き換わっている点が異なる。そこで、以降は図9(A)との差異点についてのみ説明する。
【0087】
図9(B)の場合、s802でアクセス対象のデータが他のNASコントローラ101が管理しているファイルシステムのデータであると判断されると、データ処理部107はファイルシステム管理表701に設定されている当該他のNASコントローラのNASコントローラ名702をクライアントに通知し、当該他のNASコントローラ101にアクセス要求を発行するようクライアントに指示して(s804)、処理を終了する。
【0088】
この指示を受信したクライアントは、当該他のNASコントローラ101にアクセス要求を発行する。以降、当該他のNASコントローラ101は図5に示す処理を実行することになる。尚、当該他のNASコントローラ101がファイルシステム管理表701を有している場合には、当該他のNASコントローラ101で図9(B)に示す処理が実行された後、図5のs502以降の処理が実行されても良い。
【0089】
尚、図9(B)に示す処理に加えて更に、s804の後に、データ処理部107が当該他のNASコントローラ101に対してアクセス要求を転送し、アクセス要求に従ってメタデータをメモリ206上に読み出しておくと共に、アクセス対象のデータが格納されているLUを構成しているディスクデバイスを予め回転させておくよう指示しても良い。この指示を受信した当該他のNASコントローラ101のデータ処理部107はクライアントから実際にアクセス要求を受信する前にアクセス処理に必要となるメタデータをメモリ206上に準備しておくことができ、更に当該他のNASコントローラ101のディスク制御指示部104はクライアントから実際にアクセス要求を受信する前にアクセス対象となるディスクデバイスを回転させておくことができる。従って、アクセス要求に対する応答性能を向上させることができる。
【0090】
尚、実施例2においても、各NASコントローラ101のディスク制御指示部104は、自身と同じNASシステム130に属するディスクアレイシステム112が備えるディスクデバイスの回転状態を管理している。この管理方法は実施例1の図6に示す方法と同様であるため、説明は省略する。
【0091】
以上に説明した実施例2によれば、複数のNASシステム130を用いたファイル共有システムにおいても、アクセス応答時間の劣化を防止しつつファイル共有システム全体における消費電力量を抑制することができる。
【実施例3】
【0092】
本実施例は、WORM化されたファイルやディレクトリのデータをNASコントローラ101が検索し、WORM化されたデータが見つかった場合にはこのデータを常時回転フラグ405が”0”であるLU(即ち常時回転ではないディスクデバイスから構成されているLU)へ移行し、このLUを構成しているディスクデバイスの回転を停止することで、NASシステム130の消費電力を抑制するという形態である。
【0093】
WORMはWrite Once Read Manyの略で、ファイルやディレクトリ、論理ボリュームの属性の一種である。WORM属性を持つファイルやディレクトリ、LUについては、リードは可能であるが、ライトは一度しか許可されずファイルやディレクトリ、LUに対する更新や追記、削除の操作は禁止されている。
【0094】
ファイルやディレクトリに対する更新や追記等の操作が完了し、当該ファイルやディレクトリがリードにのみ用いられる状態になると、当該ファイルや当該ディレクトリにWORM属性が付与されたり、当該ファイルやディレクトリがWORM属性が付与されたLUに格納されることがある。例えばアーカイブファイルや、アーカイブファイルを格納するLU等が、WORM属性が付与されるデータやLUの例として挙げられる。WORM属性が付与されたファイルやディレクトリについては、頻繁にアクセスされることは少なく、専らアーカイブデータとして保存されているだけであるケースが多い。従って、この様なデータを常時回転フラグ405が”0”のLUに移動させ、このLUを構成しているディスクデバイスの回転を停止すれば、アクセス頻度の低いデータを特定のLUに集中的に格納し、このLUを構成するディスクデバイスの回転を停止することができるので、アクセス応答時間の劣化を防止しつつNASシステム130の消費電力量を低減することができる。
【0095】
実施例3は、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能であるが、いずれにしても、NASコントローラ101が更にWORMデータ管理表1001を備えている。
【0096】
図10はNASコントローラ101のデータリスト管理部103によって管理されているWORMデータ管理表1001の一例を示す図である。WORMデータ管理表1001は、アイテム番号1004、ファイルやディレクトリのパス名であるデータ名1002、当該ファイルやディレクトリのデータが格納されているLUの識別情報である格納LU番号1003を備えている。尚、WORM化処理を行ったファイルやディレクトリが、後述する移行処理によって常時回転ではないディスクデバイスから構成されているLU(WORM化データ用に準備されたLU)に格納された際には、ファイルシステム制御部106によって、格納LU番号1003にはヌル値(図10では”-”と表現)が設定されることになる。
【0097】
また本実施形態では、WORM化されたデータを格納するためのLUを予め準備しておき、図3に示すファイルシステム構成情報301に、データ種別302として”WORM化データ”を、格納先LU303としてWORM化されたデータを格納するために準備されたLUの識別情報を登録しておく。更に、WORM化されたデータを格納するために予め準備されたLUについては、当該LUを構成しているディスクデバイスを常時回転させないよう、図4に示すボリューム管理情報401の常時回転フラグ405を”0”に設定しておく。
【0098】
尚WORM化されたデータ用に用意されたLUと、アクセス頻度の高いデータが格納されたLUとが同じRAIDグループに属していると、例えWORM化されたデータ用に用意されたLUの常時回転フラグ405が”0”に設定されていたとしても、関連LUへ頻繁にアクセスがあるためにこれらのLUを構成するディスクデバイスの回転を停止することができない。従って、WORM化されたデータ用にLUを準備する場合には、アクセス頻度の高いデータが格納されるLUとは異なるRAIDグループのLUを選択することが望ましい。
【0099】
例えば、他のLUとRAIDグループを共有していないLUや、WORM化データ用LUとのみRAIDグループを共有しているLUをWOMR化されたデータ用のLUとして準備することが考えられる(即ち、1つのRAIDグループに1つのみLUを構成し、このLUをWORM化データ用LUとしたり、1つのRAIDグループに構成された複数のLU全てをWORM化データ用LUとしておくことが考えられる)。
【0100】
本実施形態では更に、NASシステム130の管理者やユーザから外部ネットワーク110を介して、任意のファイルデータやディレクトリデータに対するWORM化の指示が、NASシステム130に発行される。この指示をネットワークI/O処理部102を介して受信したNASコントローラ101のファイルシステム制御部106は、指示によって指定されたファイルやディレクトリのデータのWORM化の処理を行う。そしてファイルシステム制御部106は、WORMデータ管理表1001に、WORM化処理を行ったファイルやディレクトリ等のパス名(このパス名はWORM化の指示に際して、管理者やユーザから指定される)をデータ名1002として、またWORM化処理を行ったファイルやディレクトリ等が格納されているLUの識別情報を格納LU番号1003として設定する。
【0101】
図11はWORM化されたファイルデータ等を常時回転していないディスクデバイスから構成されたLUに移行する処理の一例を示す図である。
【0102】
ファイルシステム制御部106は、定期的(例えば、1日毎)にWORMデータ管理表1001を調べ、WORM化されているものの、WORM化されたデータ用に準備されたLUに未だ移行されていないファイルデータやディレクトリデータの有無をチェックする(s901)。これは、WORMデータ管理表1001の格納LU番号1003の欄に、ヌル値以外の値が登録されているファイルやディレクトリ等が存在するか否かをチェックすることによって行われる。
【0103】
s901において該当するデータがないと判断された場合には、処理が終了する。
【0104】
一方s901で、WORM化データ用のLU以外のLUに格納されているWORM化済みファイルやディレクトリがあると判断された場合、ファイルシステム制御部106はデータリスト管理部103のファイルシステム構成情報301をチェックし、WORM化データ用に準備されたLU特定し、当該LUにWORM化データを移行する(s902)。更にファイルシステム制御部106はWORMデータ管理表1001の格納LU番号1003の欄を更新して、移行されたデータに対応する格納LU番号1003がヌル値になるよう設定する。また、データの移行に伴ってファイルシステム制御部106はメタデータ等の変更を行う。
【0105】
データ移行後は、移行先のLU(即ちWORM化データを格納しているLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s903)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s903は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0106】
実施例3によれば、WORM化されたアクセス頻度が低いと予測されるデータは常時回転フラグ405が”0”のLUに格納されることになるので、係るデータが格納されたディスクデバイスの回転を停止することが可能となり、NASシステム130の消費電力量低減を図ることができる。
【実施例4】
【0107】
本実施例は、あるファイルやディレクトリがWORM化された場合、WORM化の操作を契機として該当するファイルやディレクトリのデータを常時回転ではないディスクデバイスから構成されたLUへ移行し、当該LUを構成するディスクデバイスの回転を停止することでNASシステム130の消費電力を抑制するという形態である。
【0108】
実施例4も実施例3と同様、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能である。尚、実施例4ではファイルやディレクトリ等へのWORM化操作を契機にデータの移行が行われるので、WORMデータ管理表1001は不要であるが、その他のNASシステム130の構成については実施例3と同様である。従って、ファイルシステム構成情報301には、WOMR化データ用のLUを用意すべく実施例3で説明したのと同様の設定を行っておく必要があり、またボリューム管理情報401には、当該WORM化データ用に用意されたLUの常時回転フラグ405を”0”に設定しておく必要がある。
【0109】
図12は、本実施例における、WORM化されたデータを常時回転していないディスクデバイスから構成されたLUに移行する処理の一例を示す図である。
【0110】
NASシステム130の管理者やユーザから任意のファイルやディレクトリ等に対するWORM化の指示が発行されると、NASコントローラ101のネットワークI/O処理部102を介してファイルシステム制御部106がこれを受信する(s1101)。
【0111】
ファイルシステム制御部106は、データリスト管理部103が管理するファイルシステム構成情報301をチェックし、WORM化データ用に準備されたLUを特定して当該LUにWORM化対象のファイルやディレクトリを移行すると共に、当該ファイルやディレクトリにWORM属性を付与する(s1102)。尚、ディスクアレイシステム112内に予めWORM属性が付与されたLU(以降WORM属性LUと称する)が構成されており、このWORM属性LUがWORM化データ用に準備されたLUとしてファイルシステム構成情報301やボリューム管理情報401に設定されている場合には、ファイルシステム制御部106はWORM化対象のファイルやディレクトリを当該WORM属性LUに移行するだけでよく、別途当該ファイルやディレクトリにWORM属性を付与する必要はない。また、ファイルやディレクトリの移行に伴い、ファイルシステム制御部106が必要に応じてメタデータの更新を行う点は実施例3と同様である。
【0112】
ファイルやディレクトリの移行後は、移行先のLU(即ちWORM化データを格納しているLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s1103)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s1103は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0113】
実施例4によれば、実施例3と同様、WORM化されたアクセス頻度が低いと予測されるデータは常時回転フラグ405が”0”のLUに格納されることになるので、係るデータが格納されたディスクデバイスの回転を停止することが可能となり、NASシステム130の消費電力量低減を図ることができる。
【実施例5】
【0114】
本実施例は、NASシステム130内に格納されているあるデータやNASシステム130が有するある論理ボリュームがWORM化された場合、このWORM化の操作を契機として、WORM化されたデータを格納しているLUを構成しているディスクデバイスや、WORM化されたLUを構成しているディスクデバイスを、常時回転ではないディスクデバイスとすることで、NASシステムの消費電力量を抑制するという形態である。
【0115】
実施例5も、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能である。
【0116】
図13は、本実施例においてデータやボリュームがWORM化される際の処理の一例を示す図である。
【0117】
NASシステム130の管理者やユーザにより、任意のファイルやディレクトリ等のデータやLUに対するWORM化の指示が発行されると、この指示はNASコントローラ101のネットワークI/O処理部102を介してファイルシステム制御部106が受信する。WORM化指示の対象がファイルやディレクトリである場合にはファイルシステム制御部106によって当該ファイルやディレクトリにWORM属性が付与される。一方WORM化指示の対象がLUである場合には、ファイルシステム制御部106からディスク制御部114に対して当該LUを指定したWORM化指示が転送され、ディスク制御部114によってLUのWORM化が行われる(s1201)。
【0118】
次にファイルシステム制御部106は、データリスト管理部103で管理されているファイルシステム構成情報301を調べ、WORM化の指示の対象となったファイルやディレクトリ等のデータが格納されているLU、若しくはWORM化指示の対象となったLUに、メタデータ(例えば、inode情報やmount情報等)が格納されていないかどうかチェックする(s1202)。
【0119】
当該LUにメタデータが格納されている場合は、処理は終了する。
【0120】
s1202で、当該LUにメタデータが格納されていないと判断された場合は、ファイルシステム制御部106がボリューム管理情報401を参照して、当該LUについての常時回転フラグ405をチェックし、当該常時回転フラグ405が”1”に設定されている場合はこれを”0”に設定し、”0”に設定されている場合はそのままにすることにより、当該LUの常時回転設定を外す(s1203)。
【0121】
常時回転設定を外した後は、当該LU(即ち常時回転設定を外されたLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s1204)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s1203は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0122】
実施例5によれば、WORM化されたデータを格納するLUや、WORM化されたLUは、常時回転フラグ405が”0”に設定されることになるので、係るLUを構成するディスクデバイスの回転を停止することが可能となり、NASシステムの消費電力量低減を図ることができる。
【図面の簡単な説明】
【0123】
【図1】NASシステムの論理構成の一例を示す図である。
【図2】NASシステムの物理構成の一例を示す図である。
【図3】ファイルシステム構成情報の一例を示す図である。
【図4】ボリューム管理情報の一例を示す図である。
【図5】アクセス要求の処理手順の一例を示す図である。
【図6】ディスクデバイスの回転状態管理のための処理の一例を示す図である。
【図7】ファイル共有システムの構成の一例を示す図である。
【図8】ファイルシステム管理表の一例を示す図である。
【図9(A)】実施例2におけるアクセス要求の処理方法の一例を示す図である。
【図9(B)】実施例2におけるアクセス要求の処理方法の他の一例を示す図である。
【図10】WORMデータ管理表の一例を示す図である。
【図11】WORM化されたデータの移行処理の一例を示す図である。
【図12】WORM化されたデータの移行処理の他の一例を示す図である。
【図13】データやLUがWORM化される場合に実行される処理の一例を示す図である。
【符号の説明】
【0124】
101…NASコントローラ
102…ネットワークI/O処理部
103…データリスト管理部
104…ディスク制御指示部
105…計時部
106…ファイルシステム制御部
107…データ処理部
108…メタデータキャッシュ部
109…I/F
110…外部ネットワーク
111…通信路
112…ディスクアレイシステム
113…I/F
114…ディスク制御部
115…ディスク回転管理部
116…I/O処理部
130…NASシステム
204…ネットワークインタフェース
205…CPU
206…メモリ
207…ローカルディスク
208…アダプタ
209…インタフェース
210…キャッシュメモリ
211…ディスクコントローラ
212…ディスクデバイス
301…ファイルシステム構成情報
401…ボリューム管理情報
701…ファイルシステム管理表
1001…WORMデータ管理表
【技術分野】
【0001】
本発明は、ファイルシステムを管理する装置と、ファイルシステムのデータを格納するストレージシステムとに関する。
【背景技術】
【0002】
ファイルシステムを管理するファイルサーバとファイルシステムのデータを格納するストレージシステム双方の機能を有するNAS(Network Attached Storage)システムを使用したファイルサービスのニーズが近年急速に高まっている。それに伴い、NASシステムに格納されるデータの容量が増加し、NASシステムが有するストレージシステムのディスクデバイスの台数も増加の傾向にある。
【0003】
ディスクデバイスの台数が増加すると、ストレージシステム全体の消費電力も増加することになる。特に多数のディスクデバイスを搭載し、複数のディスクデバイスでRAID(Redundant Array of Inexpensive Disks)を構成している大容量のディスクアレイシステムでは、ストレージシステムの消費電力増加が課題となっている。
【0004】
そこで、一定期間上位装置からのアクセスがないディスクデバイスの回転を停止(スピンダウン)する等して、ディスクアレイシステム全体の消費電力を抑える方法が特許文献1に記載されている。
【0005】
【特許文献1】米国特許6826005号公報
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、上記従来技術によると、頻繁にアクセスされるデータと余りアクセスされないデータとが同じディスクデバイスに格納されている場合、このディスクデバイスは頻繁にアクセスされるので、回転が停止される頻度は低くなり、ストレージシステムの消費電力量抑制に貢献できない。一方、ディスクデバイスの回転を頻繁に停止するために、ディスクデバイスがアクセスされてから回転が停止されるまでの期間を短く設定すると、ディスクデバイスにアクセスがある度に、ディスクデバイスの回転の開始(スピンアップ)を行わなければならない状況が生じる可能性があり、アクセスに対する応答が遅延する可能性がある。
【0007】
従って、アクセスに対する応答速度の劣化を防止しつつ、消費電力の抑制が可能なシステムが望まれている。
【課題を解決するための手段】
【0008】
システムは、ファイルシステムを管理するコントローラと、ファイルシステムのデータを格納するディスクアレイシステムとを有する。ディスクアレイシステムは、各々一以上のディスクデバイスから構成される複数の論理ボリュームと、当該複数の論理ボリュームへのデータの入出力を制御するディスク制御部とを有する。ディスクアレイシステムの複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイス中のディスクの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイス中のディスクの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれている。そして、第2のタイプの論理ボリュームには、ファイルシステムのデータの内、予め定められた条件を満たすデータが格納される。
【発明の効果】
【0009】
ストレージシステム全体の消費電力を抑制しつつ、データへのアクセス応答遅延を極力抑えることが可能となる。
【発明を実施するための最良の形態】
【0010】
以下、本発明実施の形態について、図面を用いて具体的に説明する。尚、以下に説明する実施形態は一例であって、本発明が以下に説明する実施形態に限定されるものではない。
【実施例1】
【0011】
本実施例は、ファイルサーバとしての機能を有するNASコントローラと、ストレージシステムとを用いてファイルシステムサービスを行う場合の実施形態である。
【0012】
図1は、本実施形態におけるNASシステムの論理構成の例を示す図であり、NASシステム130はファイル共有装置でありファイルサーバとして機能するNASコントローラ101とファイルシステムのデータを格納するストレージシステムであるディスクアレイシステム112とを有する。
【0013】
NASコントローラ101は、ネットワークI/O処理部102、データリスト管理部103、ディスク制御指示部104、ファイルシステム制御部106、データ処理部107、メタデータキャッシュ部108、I/F(インタフェース制御部)109を有する。
【0014】
ネットワークI/O処理部102は、外部ネットワーク110を介してクライアントや管理端末等とのデータのやり取りを行う。データリスト管理部103は、後述するファイルシステム構成情報301やボリューム管理情報401、ファイルシステム管理表701、WORMデータ管理表1001等、各種管理情報を管理する。ディスク制御指示部104は、時間を計測する計時部105を備え、ディスクアレイシステム112に対してディスクデバイスの回転開始や回転停止の指示を行う。ファイルシステム制御部106は、ファイルやディレクトリのWORM(Write Once Read Many)化指示等、ファイルシステムに関する制御を行う。データ処理部107は、データの処理を行う。メタデータキャッシュ部108は、メタデータのコピーを保持する。I/F109は、ディスクアレイシステム112が備えるI/F113とSAN(Storage Area Network)等の通信路111を介してデータのやり取りを行う。
【0015】
ディスクアレイシステム112は、I/F(インタフェース制御部)113の他に、ディスク制御部114、複数の論理ボリューム(LU0117、LU1118、LU2119、LU3120、LU4121等)を備える。尚、論理ボリュームの数は図1に示す例に限られない。論理ボリュームLU0117、LU1118、LU2119、LU3120、LU4121には、ファイルデータや、ファイルシステムの各種管理のためのデータが格納されている。ディスク制御部114は、ディスク回転管理部115とI/O処理部116を備え、I/O処理部116は、論理ボリュームへのデータの読み書きを行い、ディスク回転管理部115は、論理ボリュームを構成するディスクデバイス中のディスクの回転開始や回転停止等の制御を行う。尚、本明細書では、ディスクデバイスが有するディスクの回転開始や回転停止について説明する際、「ディスクデバイスの回転」と表現することがあるが、これは「ディスクデバイスが有するディスクの回転」を意味している。
【0016】
図2は、本実施形態におけるNASシステムの物理構成の例を示す図である。
【0017】
NASコントローラ101は、ネットワークインタフェース204、CPU205、メモリ206、ローカルディスク207、アダプタ208を備え、これらが内部通信路によって相互に通信可能に接続されている。
【0018】
ディスクアレイシステム112は、インタフェース209、キャッシュメモリ210、ディスクコントローラ211、ディスクコントローラ211に接続される複数のディスクデバイス212を備え、インタフェース209、キャッシュメモリ210、ディスクコントローラ211は内部通信路によって相互に通信可能に接続されている。
【0019】
NASコントローラ101とディスクアレイシステム112とはSAN111で接続される。NASコントローラ101とディスクアレイシステム112間の接続形態は、SAN111に限定したものではなく、専用回線やTCP/IPネットワーク等でも良い。
【0020】
NASコントローラ101のネットワークインタフェース204は、外部ネットワーク110とのデータの送受信を行う。ローカルディスク207には、NASコントローラ101で実行されるプログラムや、ファイルシステム構成情報301やボリューム管理情報401、ファイルシステム管理表701、WORMデータ管理表1001等の各種管理データが格納される。
メモリ206には、ローカルディスク207に格納された各種データやプログラムが読み込まれたり、処理のための一時データが格納される。CPU205は、NASシステム101で行われる処理を実行する。アダプタ208は、SAN111等を介して、ディスクアレイシステム112とのデータのやり取りを行う。
【0021】
尚、図1に示したデータリスト管理部103、ディスク制御指示部104、ファイルシステム制御部106、データ処理部107は各々、ローカルディスク207からメモリ206に読み出されたプログラムをCPU205が実行することによって構成される。尚、このプログラムは、CPU205に対して後述する各種処理を実行させるための一以上のコードから構成されていても良い。
【0022】
また、図1に示すメタデータキャッシュ部108は、メモリ206内の一部記憶領域であってもよいし、メモリ206とは別のメモリをNASコントローラ101が備えていて、このメモリがメタデータキャッシュ部108として使用されても良い。尚、メタデータキャッシュ部108を構成するメモリとして、NVRAM等の不揮発性メモリを使用すると、障害等でNASコントローラ101を再起動した場合にもメタデータが不揮発性メモリに保存されているので、再起動後にディスクアレイシステムからメタデータキャッシュ部108へメタデータを読み込まずに済むというメリットがある。
【0023】
ディスクアレイシステム112のインタフェース209は、NASコントローラ101とのデータのやり取りを、SAN111等を介して行う。ディスクコントローラ211は、各ディスクデバイス212に対するデータの読み書きや回転の制御を行う。キャッシュメモリ210は、ディスクデバイス212に対して読み書きされるデータを一時的に保持する。各ディスクデバイス212はディスクを有していて、このディスクは図1に示すディスク回転管理部によって回転の停止・開始が制御される。
【0024】
尚、複数のディスクデバイス212が組み合わされて、RAIDグループが構成され、RAIDグループの一部又は全部を用いて、論理ボリュームが構成される。ディスクデバイス212とRAIDグループの対応関係、及びRAIDグループとこのRAIDグループに属する論理ボリュームとの対応関係を示す情報は、ディスクコントローラ211が有するメモリ内で管理される。
【0025】
また、ディスクコントローラ211はメモリとCPUとを備えており、このメモリにはこのCPUによって実行されるI/O処理プログラムとディスク回転管理プログラムとが格納されている(図示せず)。そして、図1に示すディスク制御部114はディスクコントローラ211のCPUがメモリ内のプログラムを実行することによって構成され、CPUがI/O処理プログラムを実行することによって図1に示すI/O処理部116が、CPUがディスク回転管理プログラムを実行することによって図1のディスク回転管理部115がそれぞれ構成される。
【0026】
図3は、データリスト管理部103で管理される、ファイルシステム構成情報301の例である。ファイルシステム構成情報301は、アイテム番号305、データの種別302、格納先論理ボリューム(以降LUとも称する)303、キャッシュフラグ304を有する。
【0027】
データの種別302は、管理対象データの種別を示す情報である。例えば、アイテム#1については、データの種別がinode情報(inode情報は、ファイルシステムの管理データであるメタデータの一種である。)であることを示しており、#2については、データの種別がメタデータの一種であるmount情報であることを示している。また#3については、#3で管理されるデータが/mnt/fs0/以下の階層にて管理されるデータ(即ち”fs0”で識別されるファイルシステムのデータ)であることを示している。#m及び#nについてはデータの属性に基づくデータの種別を示しており、#nは後述するWORM(Write Only Read Many)属性のデータであることを、#mについてはそれ以外(メタデータ、WORM属性以外)の属性が付与されたデータであることを示している。
【0028】
格納先LU303は管理対象データが格納されているディスクアレイシステム112内のLUを示す情報であり、キャッシュフラグ304は管理対象データがNASコントローラ101のメタデータキャッシュ部108にキャッシュされるべきデータであるかどうかを示す。尚、本実施形態では、キャッシュフラグ304が”1”であれば、管理対象データがメタデータキャッシュ部108にキャッシュされることを示しており、”0”であればキャッシュされないことを示している。また、NASコントローラ101はメタデータキャッシュ部108を備えていなくても良く、この場合にはファイルシステム構成情報301はキャッシュフラグ304を備えていなくても良い。
【0029】
尚、図3に示したデータの種別302は一例であって、これ以外のデータ種別がファイルシステム構成情報301に登録されていても良いし、図3に示したデータ種別が全てファイルシステム構成情報301に登録されている必要もない。また、NASコントローラ101は、ファイルシステムの種類等に応じてファイルシステム構成情報301を複数備えていても良い。
【0030】
図4は、データリスト管理部103で管理される、ボリューム管理情報401の例である。ボリューム管理情報401は、アイテム番号408、LU番号402、関連LU番号403、最終アクセス時刻404、常時回転フラグ405、停止待ち時間406、回転停止時刻407を有する。
【0031】
LU番号402は論理ボリュームの識別情報である。
【0032】
関連LU番号403は、対応するLU番号402によって識別されるLUとディスクデバイスを共有しているLU(以降、関連LUと呼ぶ)の識別情報である。即ち関連LUとはあるLUと同じRAIDグループに属するLUのことであり、関連LU番号403には対応するLU番号402で識別されるLUの関連LUの識別情報が登録される。従って例えば、LU番号402に図2のLU1118の識別情報が登録されている場合には、LU1118とディスクデバイスを共有している図2のLU2119の識別情報が関連LU番号403に登録される。
【0033】
最終アクセス時刻404には、当該LUに対してアクセスがある度に計時部105が計測している時刻(即ちアクセス時の時刻)が登録される。従って、最終アクセス時刻404は、当該LUへの最新アクセスの時刻を表していることになる。
【0034】
常時回転フラグ405は、当該LUを構成しているディスクデバイスを常時回転させるかどうかを示していて、”1”が設定されていればアクセス頻度や最新アクセス時刻からの経過時間に関わらずディスクデバイスを常時回転させることを示しており、”0”が設定されていればディスクデバイスの回転が停止される可能性があることを示している。
【0035】
尚図4の例では、メタデータが格納されているLU0について常時回転フラグ405が”1”に設定されているので、LU0を構成するディスクデバイスについては回転の停止・再回転の処理が実行されないことが分かる。メタデータは、ファイルやディレクトリ等のディスクアレイシステム112内での格納位置等を示す、ファイルシステムの管理データである。従って、NASコントローラ101はアクセス要求を受信するたびに、まずメタデータにアクセスする必要がある。このためメタデータは、アクセス頻度が高いと事前に予測されるデータであると言える。この様なデータが格納されているLUについては、LUを構成しているディスクデバイスの回転を停止すると、アクセスの度に頻繁にスピンアップが必要となり、スピンアップのための待ち時間が発生してしまう。この結果、アクセス要求への応答時間性能が劣化してしまう。従って、メタデータの様な事前にアクセス頻度が高いと予測されるデータが格納されているLUについては、常時回転フラグ405を”1”に設定しておくことで、アクセス要求への応答時間性能の劣化を防止することができる。
【0036】
以降実施例1から5においては、メタデータが格納されているLUについては常時回転フラグ405が”1”に設定されているものとする。しかし、図4に示す常時回転フラグ405の設定方法は一例であって、常時回転フラグ405が”1”に設定されるのは、メタデータを格納しているLUに限られるものではない。例えば、NASシステム130の管理者が、アクセス頻度が予め定められた基準値より高いと予測されるファイルデータが格納されているLUに対して、常時回転フラグ405を”1”に設定しておいても良いし、データ処理部107が各LUのアクセス頻度の統計情報を蓄積して、アクセス頻度が予め設定されている基準値に達した場合に、当該LUの常時回転フラグ405を”1”に設定しなおしても良い。
【0037】
常時回転フラグ405の値が”0”の場合、ボリューム管理情報401には停止待ち時間406が設定される。停止待ち時間406は、ディスクデバイスの回転を停止させるタイミングを決定するために用いられる値であり、最終アクセス時刻404から停止待ち時間406分だけ時間が経過すると、ディスクデバイスの回転停止処理が実行される。即ち、この停止待ち時間406を超える期間、当該LUに対するアクセスがなかった場合、当該LUを構成するディスクデバイスの回転を停止するための処理が実行されることになる。そして、ディスクデバイスの回転が停止されると、その時刻が回転停止時刻407としてボリューム管理情報401に設定される。
【0038】
以下、図1から図6を用いて、実施例1における処理手順について説明する。
【0039】
図1に示すNASシステム130を用いてファイルシステムサービスを行う場合、まず、NASコントローラ101に対してファイルシステムを構築するための情報を設定する必要がある。このために、データリスト管理部103に図3に示すようなファイルシステム構成情報301が事前に設定される。ファイルシステム構成情報301は、NASシステム130の管理者によって、外部ネットワーク110を介してNASコントローラ101に入力される。尚、ファイルシステム構成情報301は、ファイルシステムサービス開始後に必要に応じて変更されても良い。ファイルシステム構成情報301に従って、NASシステム130にはファイルシステムが構築され、メタデータやファイルデータ等の格納先LUが決まる。
【0040】
次に、クライアント計算機(以下単にクライアントと称する)等からNASシステム130に対してアクセス要求が送信された際の処理手順について図5を用いて説明する。
【0041】
クライアント等から、NASコントローラ101で管理しているファイルシステムのデータへのアクセス要求(例えば、READ要求やWRITE要求、ファイル検索要求等)が発行されると、外部ネットワーク110を通じてネットワークI/O処理部102がこのアクセス要求を受信する(s501)。
【0042】
アクセス要求に従ってデータにアクセスするためには、NASコントローラ101はまずファイル名やパス名の解決を行い、アクセス対象のデータが格納されているディスクアレイシステム112上のデータ格納位置を特定する必要があり、このためにNASコントローラ101はメタデータにアクセスする必要がある。そこで、NASコントローラ101がメタデータキャッシュ部108を備えている場合には、データ処理部107が必要なメタデータがメタデータキャッシュ部108にキャッシュされているかどうかを調べる(s502)。これは、図3のファイルシステム構成情報301を参照し、キャッシュフラグ304の値をチェックすることによって、若しくはメタデータキャッシュ部108を検索することにより調べることができる。
【0043】
s502で、メタデータキャッシュ部108にメタデータが格納されていないと判断された場合、もしくは、NASコントローラ101がメタデータキャッシュ部108を備えていない場合、データ処理部107はファイルシステム構成情報301を参照して、目的のメタデータが格納されているLUを調べる(s503)。そしてデータ処理部107は、当該LUからメモリ206へメタデータを読み出す(s504)。
【0044】
一方s502で、メタデータキャッシュ部108にメタデータが格納されていると判断された場合、メタデータキャッシュ部108がメモリ206内の記憶領域に構成されている場合には、データ処理部107はメタデータキャッシュ部108からメモリ206の他の記憶領域(CPU205が使用するメモリ206上の他の作業領域)へ目的のメタデータを読み出す。一方メタデータキャッシュ部108がメモリ206とは別のメモリから構成されている場合には、データ処理部107は当該別のメモリからメモリ206へ目的のメタデータを読み出す(s505)。
【0045】
次に、データ処理部107はメモリ206に読み込んだメタデータを利用して、アクセス対象のデータが格納されているLUを特定する。そして、特定したLUを構成しているディスクデバイスが回転中かどうかを、データリスト管理部103で管理しているボリューム管理情報401を参照して調べる(s506)。ボリューム管理情報401に回転停止時刻407が設定されている場合、当該LUを構成しているディスクデバイスは回転停止中であり、設定されていない場合は回転中である。
【0046】
s506で、アクセス対象LUを構成するディスクデバイスが回転停止中であった場合、ディスク制御指示部104が、当該LUを構成するディスクデバイスの回転開始の指示を、ディスクアレイシステム112のディスク制御部114に対して行う(s507)。この際、ディスク制御指示部104はディスク制御部114に対して、処理対象のLUを指定する。ディスク制御部114はこの回転開始の指示を受信すると、指示の対象となっているLUを構成している一または複数のディスクデバイスを特定し、ディスク回転管理部115が特定されたディスクデバイスに対してスピンアップを指示し、この結果各ディスクデバイスの回転が開始される。
【0047】
尚、ボリューム管理情報401が更にLUを構成するディスクデバイスの識別情報を示すLU構成ディスクデバイス情報を備え、NASコントローラ101が各LUを構成しているディスクデバイスの識別情報を把握できるようにしておいても良い。この場合には、S506において、ディスク制御指示部104が処理対象のLUを構成するディスクデバイスを特定し、このディスクデバイスの識別情報を指定して回転開始の指示をディスク制御部114に発行しても良い。
【0048】
尚、s507では更に、データ処理部107がボリューム管理情報401の回転停止時刻407の値をクリアする。
【0049】
一方s506で、当該ディスクデバイスが回転中であった場合には、s508の処理へ移る。
【0050】
次にs508では、データ処理部107がアクセス対象LUに対するアクセス要求をディスクアレイシステム112に発行し、これを受信したディスク制御部114は、アクセス要求に従って当該LUに格納されたデータに対する処理(Read処理、Write処理等)をI/O処理部116を介して行い、処理結果をデータ処理部107に返す。処理結果を受信したデータ処理部107は、受信した処理結果に基づきクライアントにアクセス要求に対する応答を返す。またデータ処理部107はアクセス要求をディスクアレイシステム112に発行した時点で、ボリューム管理情報401の当該LUについての最終アクセス時刻404を更新する(s508)。
【0051】
次にデータ処理部107は、処理の結果(例えば、ファイルサイズの変更や、更新日時の変更等)、メタデータの更新が必要かどうかを調べ(s509)、更新が必要ない場合は処理を終了する。
【0052】
s509でメタデータの更新が必要であると判断された場合、データ処理部107は、LU(図3の例ではLU0)に格納されているメタデータの更新を行うよう、ディスクアレイシステム112に指示し、この指示を受信したディスク制御部114は指定されたLUに格納されているメタデータの更新を行う(s510)。
【0053】
次にデータ処理部107は、NASコントローラ101がメタデータキャッシュ部108を備えており、更にs510で更新されたメタデータの更新前の値がメタデータキャッシュ部108にキャッシュされているかどうか調べる(s511)。これは、s502と同様、図3に示すファイルシステム構成情報301のキャッシュフラグ304を参照することによって、若しくはメタデータキャッシュ部108を検索することによって判断することができる。
【0054】
メタデータがキャッシュされていない場合、もしくは、NASコントローラ101がメタデータキャッシュ部108を備えていない場合は処理を終了する。
【0055】
s511でメタデータキャッシュ部108にメタデータがキャッシュされていると判断された場合、データ処理部107はメタデータキャッシュ部108に格納されているメタデータを更新し(s512)、処理を終了する。
【0056】
次に、NASシステム130におけるディスクデバイスの回転状態の管理について説明する。NASコントローラ101では、ディスク制御指示部104により、ディスクアレイシステム112のLUを構成するディスクデバイスの回転状態を常時(又は一定時間毎に)管理している。そこで、ディスクデバイスの回転状態管理のためにディスク制御指示部104によって実行される処理の一例を図6に示す。
【0057】
ディスク制御指示部104は、現在時刻を計時する計時部105を備えており、また、データリスト管理部103で管理されているボリューム管理情報401に登録された全てのLUについて、最終アクセス時刻404を監視している。そして、ボリューム管理情報401に登録された各LUについて、以下に説明するs600からs604までの処理を行う。
【0058】
まず始めに、ディスク制御指示部104は処理対象のLUの常時回転フラグ405をチェックする(s600)。常時回転フラグ405に”1”が設定されている場合には、当該LUを構成しているディスクデバイスは常時回転させておく必要があるため、回転停止等の指示を行う必要はないので、当該LUに関する処理を終了する。
【0059】
s600で、常時回転フラグ405に”0”が設定されていると判断された場合、ディスク制御指示部104は、計時部105の指す現在時刻と当該LUの最終アクセス時刻404との差が、停止待ち時間406を超過しているかどうか調べる(s601)。停止待ち時間406を超過していない場合は、当該LUに対する処理は終了する。
【0060】
一方s601で、計時部105の指す現在時刻と当該LUの最終アクセス時刻404との差が、当該LUの停止待ち時間406を超過している場合、ディスク制御指示部104は当該LUに関連LU番号403が設定されているかどうか調べる(s602)。
【0061】
s602で当該LUに関連LU番号403が設定されていないと判断された場合、ディスク制御指示部104はディスク制御部114のディスク回転管理部115に対して、当該LU
を構成しているディスクデバイスの回転停止の指示を行い、更にボリューム管理情報401の回転停止時刻407に計時部105が指している現在時刻を設定する(s604)。
【0062】
尚、この際ディスク制御指示部104は回転停止処理対象のLUを指定して、ディスク回転管理部115に回転停止指示を発行するものとする。そして、ディスク回転管理部115がディスク制御指示部104から指定されたLUを構成しているディスクデバイスを特定し、特定された一または複数のディスクデバイスの回転を停止させるものとする。
【0063】
尚、図5のs507で述べたケースと同様、ボリューム管理情報401が更にLU構成ディスクデバイス情報を備え、NASコントローラ101が各LUを構成しているディスクデバイスの識別情報を把握できるようにしておいても良い。この場合には、S604において、ディスク制御指示部104が処理対象のLUを構成するディスクデバイスを特定し、このディスクデバイスの識別情報を指定して回転停止指示をディスク回転管理部115に発行しても良い。
【0064】
s602で当該LUに関連LU番号403が設定されている場合、ディスク制御指示部104は関連LU番号403が示す関連LUについてのボリューム管理情報401を参照し、当該関連LUの最終アクセス時刻404と計時部105が指す現在時刻との差が、当該関連LUの停止待ち時間406を超過しているかどうか調べる(s603)。そして、関連LUに関して、最終アクセス時刻404と現在時刻との差が停止待ち時間406を超過していない場合は、当該LUに対する処理を終了する。尚、s603において、関連LUについてボリューム管理情報401に停止待ち時間406が登録されていない場合にも、処理を終了する。
【0065】
一方s603で、関連LUについて、最終アクセス時刻404と現在時刻との差が停止待ち時間406を超過していると判断された場合には、ディスク制御指示部104はディスク制御部114のディスク回転管理部115に対して、元々の監視対象LU及び関連LUを構成しているディスクデバイスの回転停止の指示を行い、監視対象LU及び関連LU双方についてボリューム管理情報401に回転停止時刻407を設定する(s604)。
【0066】
以上に説明した実施例1によれば、アクセス頻度が高いと予測されるメタデータの様なデータが格納されているLUについては、当該LUを構成するディスクデバイスを常時回転させておくように設定する一方、その他のLUについては一定時間アクセスが発生しなければ当該LUを構成するディスクデバイスの回転を停止するよう構成している。この結果、アクセス頻度が高いデータについてはスピンアップによるアクセス応答時間劣化を防止することができる一方、アクセス頻度の低いデータについてはLUを構成するディスクデバイスの回転を停止することで消費電力量を抑制することができ、効率的にNASシステム130全体の消費電力を低減することができる。
【0067】
尚、より効率的にNASシステム130全体の消費電力量を低減するには、アクセス頻度の低いデータを格納するLUとアクセス頻度の高いデータを格納するLUとが、同じRAIDグループに属さないようNASシステム130を構成することが好ましい。このために、ディスク制御部114上に設定されているLUの情報、当該LUが属するRAIDグループの情報、及び当該RAIDグループを構成する一以上のディスクデバイスの情報を、NASシステム130の管理者が把握しておき、これらの情報に基づいて、アクセス頻度の低いデータを格納するLUとアクセス頻度の高いデータを格納するLUとが、同じディスクデバイスを共有しないよう、管理者が図3に示すファイルシステム構成情報301をNASコントローラ101に設定することとしても良い。
【0068】
例えば、メタデータを格納するLUとファイルデータを格納するLUとが同じRAIDグループに属することのないようファイルシステム構成情報301が構成されていても良い。また、RAIDグループと1:1に対応するLU(即ち、1つのRAIDグループにLUが1つのみ設定されているケースにおける当該LU)にメタデータが格納されるよう、ファイルシステム構成情報301が構成されていても良い。
【0069】
更に、本実施形態ではメタデータにアクセスしたのを契機に(図5のs504若しくはs505)、ディスクデバイスへの回転指示を出す(図5のs507)。ファイルシステムにおいては一般に、ファイルへのアクセス要求があると、まずメタデータがアクセスされ、メタデータを用いてファイルデータの格納位置やファイルの属性等がチェックされた後に、ファイルデータが実際に格納されている記憶領域へのアクセス処理が行われる。従って、メタデータがアクセスされたのを機にディスクデバイスへの回転指示を出しておけば、ファイル属性のチェック等メタデータを用いた処理が行われている間にディスクデバイスのスピンアップ処理を実行しておくことができるので、スピンアップ完了までのディスクアクセスの待ち時間を低減、もしくは解消することができる。
【実施例2】
【0070】
本実施例は、実施例1で述べたNASシステム130を複数台用い、これら複数台のNASシステム130を連携させてファイル共有サービスを行う形態である。実施例2は実施例1と共通点が多いので、以下には実施例1とは異なる点を説明し、実施例1と同様の点は説明を省略する。
【0071】
図7は実施例2におけるファイル共有システムの構成の一例を示す図である。ファイル共有システムは、複数のディスクアレイシステム(112a、112b)、複数のNASコントローラ(101a、101b)を有し、複数のディスクアレイシステム(112a、112b)と複数のNASコントローラ(101a、101b)とはSAN111等の通信路を介して相互に通信可能に接続されており、複数のNASコントローラ(101a、101b)は更にクライアントとLAN(Local Area Network)等の外部ネットワーク110を介して通信可能に接続されている。尚、以降複数のディスクアレイシステム(112a、112b)を区別する必要がない場合には単にディスクアレイシステム112と表現し、複数のNASコントローラ(101a、101b)を区別する必要がない場合には単にNASコントローラ101と表現する。また、図7に示すNASコントローラ101、ディスクアレイシステム112、クライアントの台数は一例であって、これに限られるものではない。
【0072】
図7においては、NASコントローラ101aとディスクアレイシステム112aがNASシステム130aを、NASコントローラ101bとディスクアレイシステム112bがNASシステム130bを構成しているものとする。即ち、NASコントローラ101aはディスクアレイシステム112aに格納されるファイルデータやメタデータについてのファイルシステム構成情報301aを有し、ディスクアレイシステム112aが有するLUやディスクデバイスに関するボリューム管理情報401aを有する。NASコントローラ101bも同様に、ディスクアレイシステム112bに格納されるファイルデータやメタデータについてのファイルシステム構成情報301bを有し、ディスクアレイシステム112bが有するLUやディスクデバイスに関するボリューム管理情報401bを有する。尚、以降複数のNASシステム(130a、130b)を区別する必要がない場合には単にNASシステム130と表現する。
【0073】
各NASコントローラ101、ディスクアレイシステム112、及びNASシステム130の構成は実施例1とほぼ同様であるから、以下には実施例1との差異点についてのみ述べる。
【0074】
複数のNASシステム130が連携してファイル共有サービスを提供する本実施例では、NASコントローラ101a又はNASコントローラ101bの少なくとも一方(双方でも良い)が、実施例1で説明した構成に加えて更に、ファイルシステムの識別情報と当該ファイルシステムを管理するNASコントローラ101の識別情報との対応関係を示すファイルシステム管理表701(図8に示す)を有している。そして、クライアントからファイルへのアクセス要求は、ファイルシステム管理表701を有するNASコントローラ101によって処理される。この処理の方法には、例えば以下の2つの方法が考えられる。
【0075】
[方法1]
NASコントローラ101がアクセス要求中に含まれるアクセス対象のファイルシステムの名前に基づき、ファイルシステム管理表701を参照して、このファイルシステムを管理するNASコントローラ101を特定する。特定されたNASコントローラ101が自身であった場合には、自身が管理するファイルシステム構成情報301やボリューム管理情報401に基づいてアクセス要求に従いアクセス処理を実行する。一方特定されたNASコントローラ101が他のNASコントローラ101であった場合には、クライアントから受信したアクセス要求を特定された他のNASコントローラ101に転送する。
【0076】
[方法2]
NASコントローラ101がファイルシステム管理表701を参照して、アクセス対象のファイルシステムを管理するNASコントローラ101を特定し、特定されたNASコントローラ101が自身であった場合には、アクセス処理を実行することは方法1と同様である。但し、特定されたNASコントローラ101が他のNASコントローラ101であった場合には、方法1とは異なりNASコントローラ101は特定されたNASコントローラ101の識別情報をクライアントに通知し、クライアントに対してこの識別情報に従って他のNASコントローラ101にアクセスするよう指示する。
【0077】
図8は、実施例2においてNASコントローラ101のデータリスト管理部103で管理されるファイルシステム管理表701の例を示す図である。上述の様にファイルシステム管理表701はファイル共有システム内に含まれる全てのNASコントローラ101が有していても良いし、一部のNASコントローラ101のみが有していても良い。
【0078】
ファイルシステム管理表701は、アイテム番号704、NASコントローラ名702、ファイルシステム名703を有しており、NASコントローラ名702が示すNASコントローラ101が管理しているファイルシステムの識別情報が対応するファイルシステム名703に設定されている。ファイルシステム名703はクライアントがNASコントローラ101に対してアクセス要求を発行する際、アクセス対象のファイルやディレクトリ等を特定するためにアクセス要求中に含ませる情報であるため、NASコントローラ101はクライアントから受信したアクセス要求とファイルシステム管理表701を用いて、クライアントのアクセス対象がどのNASコントローラ101にて管理されているかを特定することができる。
【0079】
図9は実施例2におけるアクセス要求の処理方法の一例を示す図である。本実施例におけるアクセス処理は、図5に示す処理方法とほぼ同様であるが、図5に示すステップs501が異なる。そこで、この異なる部分のみを図9を用いて以下に説明する。
【0080】
図9(A)は上述の[方法1]を用いてアクセス要求の処理(以下、アクセス処理とも称する)を実行する場合に、図5のステップs501に代わってNASコントローラ101によって実行される処理の一例を示している。
【0081】
クライアント等からファイルシステムへのアクセス要求が発行されると、ファイルシステム管理表701を有しているあるNASコントローラ101が外部ネットワーク110を通じてネットワークI/O処理部102でこのアクセス要求を受信する(s801)。
【0082】
次にアクセス要求を受信したNASコントローラ101のデータ処理部107は、アクセス対象のデータが、自身が管理するファイルシステムのデータであるか、他のNASコントローラ101が管理するファイルシステムのデータであるかを、ファイルシステム管理表701を参照して調べる(s802)。
【0083】
s802の結果、アクセス対象のデータが自身が管理しているファイルシステムのデータである場合には、図5のs502へ移る。以後の処理は、図5に示す処理と同様である。
【0084】
一方s802で、アクセス対象のデータが他のNASコントローラ101が管理しているファイルシステムのデータであると判断された場合、データ処理部107はファイルシステム管理表701に設定されている当該他のNASコントローラのNASコントローラ名702を用いて、当該他のNASコントローラ101のデータ処理部107に対して、クライアントから受信したアクセス要求を送信し、以後図5に示すアクセス処理を実行するよう指示して(s803)、処理を終了する。
【0085】
尚、このアクセス要求を受信した当該他のNASコントローラ101では、以降図5に示す処理が実行される。但し、当該他のNASコントローラ101がファイルシステム管理表701を有している場合には、当該他のNASコントローラ101で図9(A)に示す処理が実行された後、図5のs502以降の処理が実行されても良い。
【0086】
図9(B)は上述の[方法2]を用いてアクセス処理を実行する場合に、図5のステップs501に代わってNASコントローラ101によって実行される処理の一例を示している。図9(B)に示す処理は図9(A)に示す処理とほぼ同様であるが、図9(A)のs803に相当する処理が図9(B)ではs804に示す処理に置き換わっている点が異なる。そこで、以降は図9(A)との差異点についてのみ説明する。
【0087】
図9(B)の場合、s802でアクセス対象のデータが他のNASコントローラ101が管理しているファイルシステムのデータであると判断されると、データ処理部107はファイルシステム管理表701に設定されている当該他のNASコントローラのNASコントローラ名702をクライアントに通知し、当該他のNASコントローラ101にアクセス要求を発行するようクライアントに指示して(s804)、処理を終了する。
【0088】
この指示を受信したクライアントは、当該他のNASコントローラ101にアクセス要求を発行する。以降、当該他のNASコントローラ101は図5に示す処理を実行することになる。尚、当該他のNASコントローラ101がファイルシステム管理表701を有している場合には、当該他のNASコントローラ101で図9(B)に示す処理が実行された後、図5のs502以降の処理が実行されても良い。
【0089】
尚、図9(B)に示す処理に加えて更に、s804の後に、データ処理部107が当該他のNASコントローラ101に対してアクセス要求を転送し、アクセス要求に従ってメタデータをメモリ206上に読み出しておくと共に、アクセス対象のデータが格納されているLUを構成しているディスクデバイスを予め回転させておくよう指示しても良い。この指示を受信した当該他のNASコントローラ101のデータ処理部107はクライアントから実際にアクセス要求を受信する前にアクセス処理に必要となるメタデータをメモリ206上に準備しておくことができ、更に当該他のNASコントローラ101のディスク制御指示部104はクライアントから実際にアクセス要求を受信する前にアクセス対象となるディスクデバイスを回転させておくことができる。従って、アクセス要求に対する応答性能を向上させることができる。
【0090】
尚、実施例2においても、各NASコントローラ101のディスク制御指示部104は、自身と同じNASシステム130に属するディスクアレイシステム112が備えるディスクデバイスの回転状態を管理している。この管理方法は実施例1の図6に示す方法と同様であるため、説明は省略する。
【0091】
以上に説明した実施例2によれば、複数のNASシステム130を用いたファイル共有システムにおいても、アクセス応答時間の劣化を防止しつつファイル共有システム全体における消費電力量を抑制することができる。
【実施例3】
【0092】
本実施例は、WORM化されたファイルやディレクトリのデータをNASコントローラ101が検索し、WORM化されたデータが見つかった場合にはこのデータを常時回転フラグ405が”0”であるLU(即ち常時回転ではないディスクデバイスから構成されているLU)へ移行し、このLUを構成しているディスクデバイスの回転を停止することで、NASシステム130の消費電力を抑制するという形態である。
【0093】
WORMはWrite Once Read Manyの略で、ファイルやディレクトリ、論理ボリュームの属性の一種である。WORM属性を持つファイルやディレクトリ、LUについては、リードは可能であるが、ライトは一度しか許可されずファイルやディレクトリ、LUに対する更新や追記、削除の操作は禁止されている。
【0094】
ファイルやディレクトリに対する更新や追記等の操作が完了し、当該ファイルやディレクトリがリードにのみ用いられる状態になると、当該ファイルや当該ディレクトリにWORM属性が付与されたり、当該ファイルやディレクトリがWORM属性が付与されたLUに格納されることがある。例えばアーカイブファイルや、アーカイブファイルを格納するLU等が、WORM属性が付与されるデータやLUの例として挙げられる。WORM属性が付与されたファイルやディレクトリについては、頻繁にアクセスされることは少なく、専らアーカイブデータとして保存されているだけであるケースが多い。従って、この様なデータを常時回転フラグ405が”0”のLUに移動させ、このLUを構成しているディスクデバイスの回転を停止すれば、アクセス頻度の低いデータを特定のLUに集中的に格納し、このLUを構成するディスクデバイスの回転を停止することができるので、アクセス応答時間の劣化を防止しつつNASシステム130の消費電力量を低減することができる。
【0095】
実施例3は、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能であるが、いずれにしても、NASコントローラ101が更にWORMデータ管理表1001を備えている。
【0096】
図10はNASコントローラ101のデータリスト管理部103によって管理されているWORMデータ管理表1001の一例を示す図である。WORMデータ管理表1001は、アイテム番号1004、ファイルやディレクトリのパス名であるデータ名1002、当該ファイルやディレクトリのデータが格納されているLUの識別情報である格納LU番号1003を備えている。尚、WORM化処理を行ったファイルやディレクトリが、後述する移行処理によって常時回転ではないディスクデバイスから構成されているLU(WORM化データ用に準備されたLU)に格納された際には、ファイルシステム制御部106によって、格納LU番号1003にはヌル値(図10では”-”と表現)が設定されることになる。
【0097】
また本実施形態では、WORM化されたデータを格納するためのLUを予め準備しておき、図3に示すファイルシステム構成情報301に、データ種別302として”WORM化データ”を、格納先LU303としてWORM化されたデータを格納するために準備されたLUの識別情報を登録しておく。更に、WORM化されたデータを格納するために予め準備されたLUについては、当該LUを構成しているディスクデバイスを常時回転させないよう、図4に示すボリューム管理情報401の常時回転フラグ405を”0”に設定しておく。
【0098】
尚WORM化されたデータ用に用意されたLUと、アクセス頻度の高いデータが格納されたLUとが同じRAIDグループに属していると、例えWORM化されたデータ用に用意されたLUの常時回転フラグ405が”0”に設定されていたとしても、関連LUへ頻繁にアクセスがあるためにこれらのLUを構成するディスクデバイスの回転を停止することができない。従って、WORM化されたデータ用にLUを準備する場合には、アクセス頻度の高いデータが格納されるLUとは異なるRAIDグループのLUを選択することが望ましい。
【0099】
例えば、他のLUとRAIDグループを共有していないLUや、WORM化データ用LUとのみRAIDグループを共有しているLUをWOMR化されたデータ用のLUとして準備することが考えられる(即ち、1つのRAIDグループに1つのみLUを構成し、このLUをWORM化データ用LUとしたり、1つのRAIDグループに構成された複数のLU全てをWORM化データ用LUとしておくことが考えられる)。
【0100】
本実施形態では更に、NASシステム130の管理者やユーザから外部ネットワーク110を介して、任意のファイルデータやディレクトリデータに対するWORM化の指示が、NASシステム130に発行される。この指示をネットワークI/O処理部102を介して受信したNASコントローラ101のファイルシステム制御部106は、指示によって指定されたファイルやディレクトリのデータのWORM化の処理を行う。そしてファイルシステム制御部106は、WORMデータ管理表1001に、WORM化処理を行ったファイルやディレクトリ等のパス名(このパス名はWORM化の指示に際して、管理者やユーザから指定される)をデータ名1002として、またWORM化処理を行ったファイルやディレクトリ等が格納されているLUの識別情報を格納LU番号1003として設定する。
【0101】
図11はWORM化されたファイルデータ等を常時回転していないディスクデバイスから構成されたLUに移行する処理の一例を示す図である。
【0102】
ファイルシステム制御部106は、定期的(例えば、1日毎)にWORMデータ管理表1001を調べ、WORM化されているものの、WORM化されたデータ用に準備されたLUに未だ移行されていないファイルデータやディレクトリデータの有無をチェックする(s901)。これは、WORMデータ管理表1001の格納LU番号1003の欄に、ヌル値以外の値が登録されているファイルやディレクトリ等が存在するか否かをチェックすることによって行われる。
【0103】
s901において該当するデータがないと判断された場合には、処理が終了する。
【0104】
一方s901で、WORM化データ用のLU以外のLUに格納されているWORM化済みファイルやディレクトリがあると判断された場合、ファイルシステム制御部106はデータリスト管理部103のファイルシステム構成情報301をチェックし、WORM化データ用に準備されたLU特定し、当該LUにWORM化データを移行する(s902)。更にファイルシステム制御部106はWORMデータ管理表1001の格納LU番号1003の欄を更新して、移行されたデータに対応する格納LU番号1003がヌル値になるよう設定する。また、データの移行に伴ってファイルシステム制御部106はメタデータ等の変更を行う。
【0105】
データ移行後は、移行先のLU(即ちWORM化データを格納しているLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s903)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s903は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0106】
実施例3によれば、WORM化されたアクセス頻度が低いと予測されるデータは常時回転フラグ405が”0”のLUに格納されることになるので、係るデータが格納されたディスクデバイスの回転を停止することが可能となり、NASシステム130の消費電力量低減を図ることができる。
【実施例4】
【0107】
本実施例は、あるファイルやディレクトリがWORM化された場合、WORM化の操作を契機として該当するファイルやディレクトリのデータを常時回転ではないディスクデバイスから構成されたLUへ移行し、当該LUを構成するディスクデバイスの回転を停止することでNASシステム130の消費電力を抑制するという形態である。
【0108】
実施例4も実施例3と同様、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能である。尚、実施例4ではファイルやディレクトリ等へのWORM化操作を契機にデータの移行が行われるので、WORMデータ管理表1001は不要であるが、その他のNASシステム130の構成については実施例3と同様である。従って、ファイルシステム構成情報301には、WOMR化データ用のLUを用意すべく実施例3で説明したのと同様の設定を行っておく必要があり、またボリューム管理情報401には、当該WORM化データ用に用意されたLUの常時回転フラグ405を”0”に設定しておく必要がある。
【0109】
図12は、本実施例における、WORM化されたデータを常時回転していないディスクデバイスから構成されたLUに移行する処理の一例を示す図である。
【0110】
NASシステム130の管理者やユーザから任意のファイルやディレクトリ等に対するWORM化の指示が発行されると、NASコントローラ101のネットワークI/O処理部102を介してファイルシステム制御部106がこれを受信する(s1101)。
【0111】
ファイルシステム制御部106は、データリスト管理部103が管理するファイルシステム構成情報301をチェックし、WORM化データ用に準備されたLUを特定して当該LUにWORM化対象のファイルやディレクトリを移行すると共に、当該ファイルやディレクトリにWORM属性を付与する(s1102)。尚、ディスクアレイシステム112内に予めWORM属性が付与されたLU(以降WORM属性LUと称する)が構成されており、このWORM属性LUがWORM化データ用に準備されたLUとしてファイルシステム構成情報301やボリューム管理情報401に設定されている場合には、ファイルシステム制御部106はWORM化対象のファイルやディレクトリを当該WORM属性LUに移行するだけでよく、別途当該ファイルやディレクトリにWORM属性を付与する必要はない。また、ファイルやディレクトリの移行に伴い、ファイルシステム制御部106が必要に応じてメタデータの更新を行う点は実施例3と同様である。
【0112】
ファイルやディレクトリの移行後は、移行先のLU(即ちWORM化データを格納しているLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s1103)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s1103は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0113】
実施例4によれば、実施例3と同様、WORM化されたアクセス頻度が低いと予測されるデータは常時回転フラグ405が”0”のLUに格納されることになるので、係るデータが格納されたディスクデバイスの回転を停止することが可能となり、NASシステム130の消費電力量低減を図ることができる。
【実施例5】
【0114】
本実施例は、NASシステム130内に格納されているあるデータやNASシステム130が有するある論理ボリュームがWORM化された場合、このWORM化の操作を契機として、WORM化されたデータを格納しているLUを構成しているディスクデバイスや、WORM化されたLUを構成しているディスクデバイスを、常時回転ではないディスクデバイスとすることで、NASシステムの消費電力量を抑制するという形態である。
【0115】
実施例5も、実施例1で説明したNASシステム130にも、実施例2で説明したファイル共有システムにも適用可能である。
【0116】
図13は、本実施例においてデータやボリュームがWORM化される際の処理の一例を示す図である。
【0117】
NASシステム130の管理者やユーザにより、任意のファイルやディレクトリ等のデータやLUに対するWORM化の指示が発行されると、この指示はNASコントローラ101のネットワークI/O処理部102を介してファイルシステム制御部106が受信する。WORM化指示の対象がファイルやディレクトリである場合にはファイルシステム制御部106によって当該ファイルやディレクトリにWORM属性が付与される。一方WORM化指示の対象がLUである場合には、ファイルシステム制御部106からディスク制御部114に対して当該LUを指定したWORM化指示が転送され、ディスク制御部114によってLUのWORM化が行われる(s1201)。
【0118】
次にファイルシステム制御部106は、データリスト管理部103で管理されているファイルシステム構成情報301を調べ、WORM化の指示の対象となったファイルやディレクトリ等のデータが格納されているLU、若しくはWORM化指示の対象となったLUに、メタデータ(例えば、inode情報やmount情報等)が格納されていないかどうかチェックする(s1202)。
【0119】
当該LUにメタデータが格納されている場合は、処理は終了する。
【0120】
s1202で、当該LUにメタデータが格納されていないと判断された場合は、ファイルシステム制御部106がボリューム管理情報401を参照して、当該LUについての常時回転フラグ405をチェックし、当該常時回転フラグ405が”1”に設定されている場合はこれを”0”に設定し、”0”に設定されている場合はそのままにすることにより、当該LUの常時回転設定を外す(s1203)。
【0121】
常時回転設定を外した後は、当該LU(即ち常時回転設定を外されたLU)を構成しているディスクデバイスの回転を直ちに停止させるよう、ディスク制御指示部104がディスクアレイシステム112のディスク制御部114に指示し、ボリューム管理情報401に回転停止時刻407を設定する(s1204)。ディスク制御指示部104の指示を受信したディスク制御部114では、ディスク回転管理部115が指示されたLUを構成しているディスクデバイスの回転を停止する。尚、s1203は省略して、図6に示した処理手順に従ってディスクデバイスの回転を停止させることとしても良い。
【0122】
実施例5によれば、WORM化されたデータを格納するLUや、WORM化されたLUは、常時回転フラグ405が”0”に設定されることになるので、係るLUを構成するディスクデバイスの回転を停止することが可能となり、NASシステムの消費電力量低減を図ることができる。
【図面の簡単な説明】
【0123】
【図1】NASシステムの論理構成の一例を示す図である。
【図2】NASシステムの物理構成の一例を示す図である。
【図3】ファイルシステム構成情報の一例を示す図である。
【図4】ボリューム管理情報の一例を示す図である。
【図5】アクセス要求の処理手順の一例を示す図である。
【図6】ディスクデバイスの回転状態管理のための処理の一例を示す図である。
【図7】ファイル共有システムの構成の一例を示す図である。
【図8】ファイルシステム管理表の一例を示す図である。
【図9(A)】実施例2におけるアクセス要求の処理方法の一例を示す図である。
【図9(B)】実施例2におけるアクセス要求の処理方法の他の一例を示す図である。
【図10】WORMデータ管理表の一例を示す図である。
【図11】WORM化されたデータの移行処理の一例を示す図である。
【図12】WORM化されたデータの移行処理の他の一例を示す図である。
【図13】データやLUがWORM化される場合に実行される処理の一例を示す図である。
【符号の説明】
【0124】
101…NASコントローラ
102…ネットワークI/O処理部
103…データリスト管理部
104…ディスク制御指示部
105…計時部
106…ファイルシステム制御部
107…データ処理部
108…メタデータキャッシュ部
109…I/F
110…外部ネットワーク
111…通信路
112…ディスクアレイシステム
113…I/F
114…ディスク制御部
115…ディスク回転管理部
116…I/O処理部
130…NASシステム
204…ネットワークインタフェース
205…CPU
206…メモリ
207…ローカルディスク
208…アダプタ
209…インタフェース
210…キャッシュメモリ
211…ディスクコントローラ
212…ディスクデバイス
301…ファイルシステム構成情報
401…ボリューム管理情報
701…ファイルシステム管理表
1001…WORMデータ管理表
【特許請求の範囲】
【請求項1】
ファイルシステムのデータが格納されるシステムであって、
ファイルシステムを管理するコントローラと、
ファイルシステムのデータを格納するディスクアレイシステムとを有し、
前記ディスクアレイシステムは、各々一以上のディスクデバイスから構成される複数の論理ボリュームと、当該複数の論理ボリュームへのデータの入出力を制御するディスク制御部とを有しており、
前記複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイスの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイスの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれており、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた条件を満たすデータが格納されることを特徴とするシステム。
【請求項2】
請求項1記載のシステムであって、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた基準値よりアクセス頻度の高いファイルのデータが格納されることを特徴とするシステム。
【請求項3】
請求項1記載のシステムであって、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、メタデータが格納されることを特徴とするシステム。
【請求項4】
請求項3記載のシステムであって、
前記コントローラは、前記第2のタイプの論理ボリュームに格納されたメタデータのコピーを保持するメタデータキャッシュ部を有しており、
前記ファイルシステム内のファイルへのアクセス要求を受信した場合に、前記コントローラは、アクセス対象のファイルの格納位置を特定するためのメタデータがメタデータキャッシュ部に格納されているか否かを確認し、当該メタデータが当該メタデータキャッシュ部に格納されている場合には当該メタデータキャッシュ部に格納されているメタデータを用いて、当該メタデータが当該メタデータキャッシュ部に格納されていない場合には前記第2のタイプの論理ボリュームに格納されたメタデータを用いて、前記アクセス対象のファイルのデータが格納されている前記ディスクアレイシステム内の論理ボリュームを特定し、前記ディスク制御部に特定された前記論理ボリュームへのアクセス要求を発行することを特徴とするシステム。
【請求項5】
請求項4記載のシステムであって、
前記コントローラは更に、メタデータを用いて前記論理ボリュームを特定した後に、当該論理ボリュームを構成するディスクデバイスが回転しているか否かを確認し、当該ディスクデバイスの回転が停止している場合には、前記ディスク制御部に対して、当該論理ボリュームを構成しているディスクデバイスの回転を開始するよう指示し、その後に当該論理ボリュームへのアクセス要求を前記ディスク制御部に発行することを特徴とするシステム。
【請求項6】
請求項4記載のシステムであって、
前記コントローラは、ファイルシステムと当該ファイルシステムを管理するコントローラとの対応関係を示すファイルシステム管理情報を備えており、
前記ファイルシステム管理情報に基づいて、受信したアクセス要求が他のコントローラが管理するファイルシステムのデータへのアクセス要求であると前記コントローラが判断した場合に、当該コントローラは受信した前記アクセス要求を、前記他のコントローラに転送することを特徴とするシステム。
【請求項7】
請求項4記載のシステムであって、
前記コントローラは、ファイルシステムと当該ファイルシステムを管理するコントローラとの対応関係を示すファイルシステム管理情報を備えており、
前記ファイルシステム管理情報に基づいて、受信したアクセス要求が他のコントローラが管理するファイルシステムのデータへのアクセス要求であると前記コントローラが判断した場合に、当該コントローラは前記他のコントローラの識別情報を前記アクセス要求の発行元計算機に通知して、当該他のコントローラへアクセス要求を送信するよう指示することを特徴とするシステム。
【請求項8】
請求項7記載のシステムであって、
前記コントローラは更に、前記他のコントローラに対して受信した前記アクセス要求を転送し、当該アクセス要求に従ってアクセス対象のデータが格納されている論理ボリュームを構成しているディスクデバイスの回転を開始させておくよう指示することを特徴とするシステム。
【請求項9】
請求項1記載のシステムであって、
前記第1のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた条件を満たすデータが格納されることを特徴とするシステム。
【請求項10】
請求項9記載のシステムであって、
前記第1のタイプの論理ボリュームには、WORM属性を有するデータが格納されることを特徴とするシステム。
【請求項11】
請求項10記載のシステムであって、
前記ディスクアレイシステムには、WORM属性を有するデータを格納するための第1のタイプの論理ボリュームが予め準備されており、
前記コントローラは、WORM属性が付与されたファイル若しくはディレクトリの識別情報と、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームの識別情報を登録するWORMデータ管理情報を備えており、
前記コントローラは、ファイル若しくはディレクトリに対してWORM属性を付与する度に、当該ファイル若しくはディレクトリの識別情報と当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームの識別情報とを前記WORMデータ管理情報に登録し、
前記コントローラは、予め定められたタイミングで前記WORMデータ管理情報を参照し、当該WORMデータ管理情報に登録されているファイル若しくはディレクトリのデータを、WORM属性を有するデータを格納するための前記第1のタイプの論理ボリュームに移行させ、その後に当該第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止するよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項12】
請求項10記載のシステムであって、
前記ディスクアレイシステムには、WORM属性を有するデータを格納するための第1のタイプの論理ボリュームが予め準備されており、
前記コントローラはファイルシステムのファイル若しくはディレクトリに対してWORM属性を付与する度に、当該ファイル若しくはディレクトリのデータをWORM属性を有するデータを格納するための前記第1のタイプの論理ボリュームに移行させ、その後に当該第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止するよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項13】
請求項10記載のシステムであって、
前記コントローラは、前記ディスクアレイシステムが有する複数の論理ボリューム各々について、当該論理ボリュームが第1のタイプの論理ボリュームであるか第2のタイプの論理ボリュームであるかを示すボリューム管理情報を有しており、
前記コントローラは当該ボリューム管理情報に基づいて、第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止させるよう前記ディスク制御部に指示するよう構成されており、
前記コントローラはファイルシステムのファイル若しくはディレクトリに対してWORM属性を付与すると、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームについてのボリューム管理情報を更新して、当該論理ボリュームを第1のタイプの論理ボリュームに変更し、当該論理ボリュームを構成するディスクデバイスの回転を停止させるよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項14】
請求項13記載のシステムであって、
前記コントローラは、前記ファイル若しくはディレクトリに対してWORM属性を付与すると、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームにファイルシステムのメタデータが格納されているか否かを確認し、当該論理ボリュームにメタデータが格納されていない場合に当該論理ボリュームについてのボリューム管理情報を変更して、当該論理ボリュームを第1のタイプの論理ボリュームに変更することを特徴とするシステム。
【請求項15】
請求項1記載のシステムであって、
前記コントローラは、前記ディスクアレイシステムが有する複数の論理ボリューム各々について、当該論理ボリュームが第1のタイプの論理ボリュームであるか第2のタイプの論理ボリュームであるかを示すボリューム管理情報を有しており、
前記ボリューム管理情報に基づいて、第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止させるよう前記ディスク制御部に指示するよう構成されていることを特徴とするシステム。
【請求項16】
請求項1記載のシステムであって、
前記ディスクアレイシステムには、各々一以上のディスクデバイスから構成される複数のRAIDグループが構成されており、当該複数のRAIDグループ各々には論理ボリュームが設定されており、
前記第1のタイプの論理ボリュームと前記第2のタイプの論理ボリュームとは同じRAIDグループに属さないよう論理ボリュームが設定されていることを特徴とするシステム。
【請求項17】
ファイルシステムを管理するシステムの構成方法であって、
ファイルシステムのデータを格納するディスクアレイシステムが、回転が停止され得るよう制御されるディスクデバイスから構成される第1のタイプの論理ボリュームを有するよう設定するステップと、
前記ディスクアレイシステムが、回転が停止されないよう制御されるディスクデバイスから構成される第2のタイプの論理ボリュームを有するよう設定するステップと、
ファイルシステムを管理するコントローラに対して、前記第2のタイプの論理ボリュームに予め定められた基準を満たすファイルシステムのデータが格納されるよう設定するステップとを有することを特徴とする構成方法。
【請求項18】
請求項17記載の構成方法であって、
前記コントローラに対して、前記第2のタイプの論理ボリュームにアクセス頻度が予め定められた基準値より高いデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【請求項19】
請求項17記載の構成方法であって、
前記コントローラに対して、前記第2のタイプの論理ボリュームに前記コントローラが管理するファイルシステムのメタデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【請求項20】
請求項17記載の構成方法であって、
更に、前記コントローラに対して、前記第1のタイプの論理ボリュームにWORM属性が付与されたデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【請求項1】
ファイルシステムのデータが格納されるシステムであって、
ファイルシステムを管理するコントローラと、
ファイルシステムのデータを格納するディスクアレイシステムとを有し、
前記ディスクアレイシステムは、各々一以上のディスクデバイスから構成される複数の論理ボリュームと、当該複数の論理ボリュームへのデータの入出力を制御するディスク制御部とを有しており、
前記複数の論理ボリュームには、論理ボリュームを構成しているディスクデバイスの回転が停止され得るよう制御されている第1のタイプの論理ボリュームと、論理ボリュームを構成しているディスクデバイスの回転が停止されないよう制御されている第2のタイプの論理ボリュームとが含まれており、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた条件を満たすデータが格納されることを特徴とするシステム。
【請求項2】
請求項1記載のシステムであって、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた基準値よりアクセス頻度の高いファイルのデータが格納されることを特徴とするシステム。
【請求項3】
請求項1記載のシステムであって、
前記第2のタイプの論理ボリュームには、前記ファイルシステムのデータの内、メタデータが格納されることを特徴とするシステム。
【請求項4】
請求項3記載のシステムであって、
前記コントローラは、前記第2のタイプの論理ボリュームに格納されたメタデータのコピーを保持するメタデータキャッシュ部を有しており、
前記ファイルシステム内のファイルへのアクセス要求を受信した場合に、前記コントローラは、アクセス対象のファイルの格納位置を特定するためのメタデータがメタデータキャッシュ部に格納されているか否かを確認し、当該メタデータが当該メタデータキャッシュ部に格納されている場合には当該メタデータキャッシュ部に格納されているメタデータを用いて、当該メタデータが当該メタデータキャッシュ部に格納されていない場合には前記第2のタイプの論理ボリュームに格納されたメタデータを用いて、前記アクセス対象のファイルのデータが格納されている前記ディスクアレイシステム内の論理ボリュームを特定し、前記ディスク制御部に特定された前記論理ボリュームへのアクセス要求を発行することを特徴とするシステム。
【請求項5】
請求項4記載のシステムであって、
前記コントローラは更に、メタデータを用いて前記論理ボリュームを特定した後に、当該論理ボリュームを構成するディスクデバイスが回転しているか否かを確認し、当該ディスクデバイスの回転が停止している場合には、前記ディスク制御部に対して、当該論理ボリュームを構成しているディスクデバイスの回転を開始するよう指示し、その後に当該論理ボリュームへのアクセス要求を前記ディスク制御部に発行することを特徴とするシステム。
【請求項6】
請求項4記載のシステムであって、
前記コントローラは、ファイルシステムと当該ファイルシステムを管理するコントローラとの対応関係を示すファイルシステム管理情報を備えており、
前記ファイルシステム管理情報に基づいて、受信したアクセス要求が他のコントローラが管理するファイルシステムのデータへのアクセス要求であると前記コントローラが判断した場合に、当該コントローラは受信した前記アクセス要求を、前記他のコントローラに転送することを特徴とするシステム。
【請求項7】
請求項4記載のシステムであって、
前記コントローラは、ファイルシステムと当該ファイルシステムを管理するコントローラとの対応関係を示すファイルシステム管理情報を備えており、
前記ファイルシステム管理情報に基づいて、受信したアクセス要求が他のコントローラが管理するファイルシステムのデータへのアクセス要求であると前記コントローラが判断した場合に、当該コントローラは前記他のコントローラの識別情報を前記アクセス要求の発行元計算機に通知して、当該他のコントローラへアクセス要求を送信するよう指示することを特徴とするシステム。
【請求項8】
請求項7記載のシステムであって、
前記コントローラは更に、前記他のコントローラに対して受信した前記アクセス要求を転送し、当該アクセス要求に従ってアクセス対象のデータが格納されている論理ボリュームを構成しているディスクデバイスの回転を開始させておくよう指示することを特徴とするシステム。
【請求項9】
請求項1記載のシステムであって、
前記第1のタイプの論理ボリュームには、前記ファイルシステムのデータの内、予め定められた条件を満たすデータが格納されることを特徴とするシステム。
【請求項10】
請求項9記載のシステムであって、
前記第1のタイプの論理ボリュームには、WORM属性を有するデータが格納されることを特徴とするシステム。
【請求項11】
請求項10記載のシステムであって、
前記ディスクアレイシステムには、WORM属性を有するデータを格納するための第1のタイプの論理ボリュームが予め準備されており、
前記コントローラは、WORM属性が付与されたファイル若しくはディレクトリの識別情報と、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームの識別情報を登録するWORMデータ管理情報を備えており、
前記コントローラは、ファイル若しくはディレクトリに対してWORM属性を付与する度に、当該ファイル若しくはディレクトリの識別情報と当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームの識別情報とを前記WORMデータ管理情報に登録し、
前記コントローラは、予め定められたタイミングで前記WORMデータ管理情報を参照し、当該WORMデータ管理情報に登録されているファイル若しくはディレクトリのデータを、WORM属性を有するデータを格納するための前記第1のタイプの論理ボリュームに移行させ、その後に当該第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止するよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項12】
請求項10記載のシステムであって、
前記ディスクアレイシステムには、WORM属性を有するデータを格納するための第1のタイプの論理ボリュームが予め準備されており、
前記コントローラはファイルシステムのファイル若しくはディレクトリに対してWORM属性を付与する度に、当該ファイル若しくはディレクトリのデータをWORM属性を有するデータを格納するための前記第1のタイプの論理ボリュームに移行させ、その後に当該第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止するよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項13】
請求項10記載のシステムであって、
前記コントローラは、前記ディスクアレイシステムが有する複数の論理ボリューム各々について、当該論理ボリュームが第1のタイプの論理ボリュームであるか第2のタイプの論理ボリュームであるかを示すボリューム管理情報を有しており、
前記コントローラは当該ボリューム管理情報に基づいて、第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止させるよう前記ディスク制御部に指示するよう構成されており、
前記コントローラはファイルシステムのファイル若しくはディレクトリに対してWORM属性を付与すると、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームについてのボリューム管理情報を更新して、当該論理ボリュームを第1のタイプの論理ボリュームに変更し、当該論理ボリュームを構成するディスクデバイスの回転を停止させるよう前記ディスク制御部に指示することを特徴とするシステム。
【請求項14】
請求項13記載のシステムであって、
前記コントローラは、前記ファイル若しくはディレクトリに対してWORM属性を付与すると、当該ファイル若しくはディレクトリのデータが格納されている論理ボリュームにファイルシステムのメタデータが格納されているか否かを確認し、当該論理ボリュームにメタデータが格納されていない場合に当該論理ボリュームについてのボリューム管理情報を変更して、当該論理ボリュームを第1のタイプの論理ボリュームに変更することを特徴とするシステム。
【請求項15】
請求項1記載のシステムであって、
前記コントローラは、前記ディスクアレイシステムが有する複数の論理ボリューム各々について、当該論理ボリュームが第1のタイプの論理ボリュームであるか第2のタイプの論理ボリュームであるかを示すボリューム管理情報を有しており、
前記ボリューム管理情報に基づいて、第1のタイプの論理ボリュームを構成しているディスクデバイスの回転を停止させるよう前記ディスク制御部に指示するよう構成されていることを特徴とするシステム。
【請求項16】
請求項1記載のシステムであって、
前記ディスクアレイシステムには、各々一以上のディスクデバイスから構成される複数のRAIDグループが構成されており、当該複数のRAIDグループ各々には論理ボリュームが設定されており、
前記第1のタイプの論理ボリュームと前記第2のタイプの論理ボリュームとは同じRAIDグループに属さないよう論理ボリュームが設定されていることを特徴とするシステム。
【請求項17】
ファイルシステムを管理するシステムの構成方法であって、
ファイルシステムのデータを格納するディスクアレイシステムが、回転が停止され得るよう制御されるディスクデバイスから構成される第1のタイプの論理ボリュームを有するよう設定するステップと、
前記ディスクアレイシステムが、回転が停止されないよう制御されるディスクデバイスから構成される第2のタイプの論理ボリュームを有するよう設定するステップと、
ファイルシステムを管理するコントローラに対して、前記第2のタイプの論理ボリュームに予め定められた基準を満たすファイルシステムのデータが格納されるよう設定するステップとを有することを特徴とする構成方法。
【請求項18】
請求項17記載の構成方法であって、
前記コントローラに対して、前記第2のタイプの論理ボリュームにアクセス頻度が予め定められた基準値より高いデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【請求項19】
請求項17記載の構成方法であって、
前記コントローラに対して、前記第2のタイプの論理ボリュームに前記コントローラが管理するファイルシステムのメタデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【請求項20】
請求項17記載の構成方法であって、
更に、前記コントローラに対して、前記第1のタイプの論理ボリュームにWORM属性が付与されたデータが格納されるよう設定するステップを有することを特徴とする構成方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9(A)】
【図9(B)】
【図10】
【図11】
【図12】
【図13】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9(A)】
【図9(B)】
【図10】
【図11】
【図12】
【図13】
【公開番号】特開2007−86843(P2007−86843A)
【公開日】平成19年4月5日(2007.4.5)
【国際特許分類】
【出願番号】特願2005−271314(P2005−271314)
【出願日】平成17年9月20日(2005.9.20)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
【公開日】平成19年4月5日(2007.4.5)
【国際特許分類】
【出願日】平成17年9月20日(2005.9.20)
【出願人】(000005108)株式会社日立製作所 (27,607)
【Fターム(参考)】
[ Back to top ]