JP2010055287A - 節電機能を備えたストレージシステム - Google Patents
節電機能を備えたストレージシステム Download PDFInfo
- Publication number
- JP2010055287A JP2010055287A JP2008218272A JP2008218272A JP2010055287A JP 2010055287 A JP2010055287 A JP 2010055287A JP 2008218272 A JP2008218272 A JP 2008218272A JP 2008218272 A JP2008218272 A JP 2008218272A JP 2010055287 A JP2010055287 A JP 2010055287A
- Authority
- JP
- Japan
- Prior art keywords
- normal
- area
- data
- log
- file
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
- G06F1/3268—Power saving in hard disk drive
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3215—Monitoring of peripheral devices
- G06F1/3221—Monitoring of peripheral devices of disk drive devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Power Sources (AREA)
- Debugging And Monitoring (AREA)
Abstract
【課題】記憶装置の電力消費状態を節電状態から通常状態に変更する必要が生じる頻度を抑える。
【解決手段】コントローラユニットと複数の記憶装置とが備えられ、複数の記憶装置を基に、ログ領域と通常領域が設けられる。ログ領域の基になっているログ記憶装置の数が、通常領域の基になっている通常記憶装置の数よりも少ない。コントローラユニットがI/Oコマンドを外部装置から受け付け得る状態にある運用期間において、ログ記憶装置の電力消費状態が、常に、データの入出力を行なえる通常状態であり、通常記憶装置の電力消費状態が、運用期間のうちの特定の期間に、通常状態よりも電力消費が少ない状態である節電状態である。コントローラユニットは、外部装置からI/Oコマンドを受けた場合に、通常記憶装置の電力消費状態が通常状態であれば、通常領域及びログ領域の双方に対してI/Oを行う。
【選択図】図6
【解決手段】コントローラユニットと複数の記憶装置とが備えられ、複数の記憶装置を基に、ログ領域と通常領域が設けられる。ログ領域の基になっているログ記憶装置の数が、通常領域の基になっている通常記憶装置の数よりも少ない。コントローラユニットがI/Oコマンドを外部装置から受け付け得る状態にある運用期間において、ログ記憶装置の電力消費状態が、常に、データの入出力を行なえる通常状態であり、通常記憶装置の電力消費状態が、運用期間のうちの特定の期間に、通常状態よりも電力消費が少ない状態である節電状態である。コントローラユニットは、外部装置からI/Oコマンドを受けた場合に、通常記憶装置の電力消費状態が通常状態であれば、通常領域及びログ領域の双方に対してI/Oを行う。
【選択図】図6
Description
本発明は、ストレージシステムの節電に関する。
ストレージシステムの節電に関する技術として、例えば特許文献1に開示の技術が知られている。特許文献1によれば、複数のディスクドライブに、ログ記憶領域の基になっているログドライブと、データ記憶領域の基になっている通常ドライブとがある。ログドライブは、常にデータのライトができるように動作しており、通常ドライブは、通常は、データのライトができない。ホストからのライト対象のデータは、ログ記憶領域にライトされ、その後、通常ドライブが動作させられ、ログ記憶領域からデータ記憶領域に転送される。
ログ記憶領域にリード対象のデータが無い場合、データ記憶領域からリード対象のデータをリードすることになる。データ記憶領域の基になっている通常ドライブは、通常、データのリード・ライトができない。このため、例えばログ記憶領域に無いデータをリード対象としたリードコマンドを複数回受信した場合、そのようなリードコマンドを受信する都度に、通常ドライブに存在するデータのリードができるよう動作させられる必要がある。このため、動作開始になるまで(例えば、ハードディスクドライブであれば、ディスクのスピンアップを開始してI/Oが可能な状態になるまで)に時間がかかり、クライアントからのI/Oのタイムアウトを発生させ、また、スピンアップには、ディスクドライブの電力消費が大きいため、動作開始が発生する頻度を少なくすることが、I/O動作や節電の面で望ましいと考えられる。
従って、本発明の目的は、記憶装置の電力消費状態を節電状態から通常状態に変更する必要が生じる頻度を抑えることにある。
コントローラユニットと複数の記憶装置とが備えられ、複数の記憶装置を基に、ログ領域と通常領域が設けられる。ログ領域の基になっているログ記憶装置の数が、通常領域の基になっている通常記憶装置の数よりも少ない。コントローラユニットがI/Oコマンドを外部装置から受け付け得る状態にある運用期間において、ログ記憶装置の電力消費状態が、常に、データの入出力を行なえる電力消費状態(通常状態)であり、通常記憶装置の電力消費状態が、運用期間のうちの特定の期間に、通常状態よりも電力消費が少ない状態である節電状態である。
以下、本発明の一実施形態を説明する。本実施形態の概要は、下記の通りである。
すなわち、通常状態において、ストレージシステムが、外部装置からライトコマンドを受領すると、通常記憶装置とログ記憶装置の双方にデータを書き込む。ストレージシステムは、リードコマンドを受領した場合は、通常記憶装置からデータを読み出すだけではなく、そのデータをログ記憶装置に書き込む。これにより、直近にI/Oされたデータは、ログ記憶装置に存在することになる。
I/Oの頻度が少ない時間帯になったら、通常記憶装置が節電状態とされる(例えば、通常記憶装置がディスクドライブであれば、ディスクのスピンダウンが行われる)。この状態において、ストレージシステムは、外部装置からライトコマンドを受領した場合、ライト対象のデータをログ記憶装置に書き込み、一方、外部装置からリードコマンドを受領した場合、リード対象のデータをログ記憶装置から読み出す。これにより、通常状態にある記憶装置(物理記憶装置)は、ログ記憶装置だけとなり(つまり、通常記憶装置は節電状態であり)、省電力化の実現が可能となる。なお、この状態においてリードコマンドを受領した場合、ストレージシステムは、ログ記憶装置にリード対象のデータが無い場合は、通常記憶装置の電力消費状態を節電状態から通常状態に変更する(例えば、記憶装置がディスクドライブであればスピンアップを行う)。しかし、リードの対象となるデータは、現在から直近の特定の期間(例えば、現在から一週間前までの期間)にライトされたデータであるケースが多いと考えられる。このため、電力消費状態を節電状態から通常状態に変更する頻度をなるべく抑えることができる。
以下、本発明の一実施形態に係るストレージシステムが適用されたファイルサーバ装置、例えばNAS(Network Attached Storage)装置を、図面を参照して説明する。
図1は、本発明の一実施形態に係るシステム全体の構成を示す。
通信ネットワーク(例えばLAN(Local Area Network))102に、一以上のクライアント計算機(以下、クライアント)111と、NAS装置101と、管理計算機104とが接続されている。NAS装置101は、クライアント111から、ファイルレベルのI/Oコマンドを受け付ける。また、NAS装置101は、管理計算機104から種々の設定が行われる。
NAS装置101は、一又は複数(例えば2つ)のNASヘッド103と、NAS本体105とを備える。
NASヘッド103は、例えば計算機であり、LAN IF1031と、マイクロプロセッサ1032と、メモリ1033と、FC IF1034とを備える。LAN IF1031は、例えばNIC(Network Interface Card )であり、通信ネットワーク102に接続される。FC IF1034は、例えばHBA(Host Bus Adapter)であり、NAS本体105に接続される。メモリ1033は、コンピュータプログラム及びテーブル等を記憶する。プロセッサ1032は、コマンドをNAS本体105に送信する。また、プロセッサ1032は、ファイルシステムを処理するプログラムを実行しており、ファイル毎の後述するファイル管理データを基に、ファイルレベルのI/Oコマンドに基づくブロックレベルのI/OコマンドをNAS本体105に発行する。
NAS本体105は、例えば、複数のHDD(Hard Disk Drive)が配列されたディスクアレイ装置である。NAS本体105は、例えば、HDD群1053と、電源ユニット1052と、コントローラ1051とを備える。
電源ユニット1052は、コントローラ1051及びHDD群1053に電力を供給する。
HDD群1053は、複数のHDD120の集合である。各HDD120が、コントローラ1051に接続されている。HDD群1053は、例えば複数のRAID(Redundant Array of Independent (or Inexpensive) Disks)グループで構成される。各RAIDグループは、二以上のHDDで構成されており、所定のRAIDレベルでデータを記憶する。
コントローラ1051は、例えばFC IF10511と、LAN IF10512と、プロセッサ10513と、メモリ10514と、ディスクIF10515とを備える。FC IF10511は、NASヘッド103に接続される。LAN IF10512は、通信ネットワーク102に接続される。メモリ10514は、HDD120にライトされる又はHDD120からリードされたデータを一時的に記憶するキャッシュ領域を含む。メモリ10514は、テーブル等を記憶する。プロセッサ10513は、NASヘッド103からのコマンドを処理する。
以下、NAS装置101の各構成要素について詳細に説明する。
図23は、NASヘッド103のメモリ1033に記憶されるLU管理テーブルを示す。
LU管理テーブル2401には、通常LUN毎に、電力消費状態と、I/O頻度とが記録される。
「通常LUN」とは、通常LU(Logical Unit)のLUN(Logical Unit Number)である。「通常LU」とは、後述の通常領域(一又は複数の論理ボリューム)に割り当てられたLUである。
「電力消費状態」とは、通常LUの電力消費状態である。通常LUの電力消費状態としては、通常状態と節電状態の二種類がある。「通常状態」とは、I/Oが可能な状態である。具体的には、通常状態とは、通常LUに関連付けられている通常領域の基になっている全てのHDD(以下、通常HDD)内のディスクが高速でスピンしている(I/O可能な速度でスピンしている)状態である。一方、「節電状態」とは、通常状態よりも電力消費が少ない状態であり、I/Oが不可能な状態である。具体的には、節電状態とは、全ての通常HDD内のディスクが低速でスピンしている状態(例えば、ディスクがスピンしていないスリープ状態)である。
「I/O頻度」とは、単位時間当たりのI/O回数である。具体的には、例えば、単位時間当りの、通常LUに対応付けられているファイルシステム空間を指定したファイルレベルI/Oコマンドの受領回数である。
図2は、NASヘッド103の機能ブロック図である。
NASヘッド103は、I/O頻度チェック部201と、フェーズ遷移部202と、UI(User Interface)制御部203と、I/O制御部204とを有する。これらの機能201〜204のうちの少なくとも一つは、例えば、NASヘッド203内のプロセッサ1032がコンピュータプログラムを実行することにより実現される。
I/O頻度チェック部201は、LU管理テーブル2401を参照し、通常LU毎のI/O頻度をチェックする。
フェーズ遷移部202は、フェーズの遷移を制御する。フェーズとしては、後述するように、通常フェーズ、スピンダウンフェーズ、スピンアップ/再同期フェーズの3種類がある。フェーズ遷移部202は、フェーズ遷移のために電力消費制御コマンドを発行する。電力消費制御コマンドには、例えば、図24に示すように、通常LUNと、電力消費状態を表す情報とが含まれる。その通常LUNに対応した通常LUの電力消費状態は、その情報が表す電力消費状態(通常状態又は節電状態)になるよう制御され、また、LU管理テーブル2041における、その通常LUの通常LUNに対応した電力消費状態が、その情報が表す電力消費状態に更新される。
UI制御部203は、GUI(Graphical User Interface)を表す情報を管理計算機104に送信する。GUIとしては、例えば、図25に示すフェーズ制御GUIがある。このGUIに、通常フェーズからスピンダウンフェーズに遷移する第一の開始時刻と、スピンダウンフェーズから通常フェーズに遷移する第二の開始時刻とを入力することができる。入力された第一及び第二の開始時刻は、UI制御部203により、NASヘッド103のメモリ1033に格納される。
I/O制御部204は、通常領域及び後述のログ領域に対するI/Oを制御する。例えば、I/O制御部204は、ファイルレベルI/Oコマンドに従って或るファイルのI/Oを行う場合、その或るファイルが格納されるファイルシステム空間に対応した通常LUNを指定したブロックレベルI/Oコマンドと、ログLUNを指定したブロックレベルI/Oコマンドとを、NAS本体105に送信する。また、I/O制御部204は、通常LUに対応したファイルシステム空間を指定したファイルレベルI/Oコマンドの受領に基づき、その通常LUに対応したI/O頻度を計算し、LU管理テーブル2041における、その通常LUの通常LUNに対応したI/O頻度を、算出されたI/O頻度に更新する。
図26は、NAS本体1052内のコントローラ1051が有するメモリ10514に記憶される構成テーブルを示す。
構成テーブル2601には、例えば、論理アドレスと物理アドレスとの対応関係が記録されている。具体的には、例えば、構成テーブル2601には、LUN毎に、RAIDグループ(以下、RG)の番号と、そのRGを構成するHDDの番号とが記録される。図27に示すように、コントローラ1051内のプロセッサ10513は、電力消費制御コマンド(図24参照)を受領した場合、そのコマンド内のLUNに対応したHDD番号を特定し、特定したHDD番号を含んだスピンアップコマンド又はスピンダウンコマンドを、そのHDD番号が割り当てられているHDD120に送信する。例えば、電力消費制御コマンド内の電力消費状態が通常状態を表していれば、スピンアップコマンドが発行され、その電力消費状態が節電状態を表していれば、スピンダウンコマンドが発行される。なお、スピンアップコマンド又はスピンダウンコマンドでは、HDD番号に代えて、RG番号が指定されても良い。
図3は、HDD群1053に基づく記憶領域を示す。
記憶領域としては、通常領域301と、ログ領域303とがある。
通常領域301は、NASヘッド103が管理するファイルシステム空間に割り当てられた領域である。通常領域301の基になっているRGを構成する全ての通常HDD120Nが、スピンダウンの対象となる。通常領域301には、ファイルデータが格納されるサブ領域(以下、通常データサブ領域)3012と、各ファイルデータに対応する各ファイル管理データが格納されるサブ領域(以下、通常管理サブ領域)3011とがある。図3では、通常領域301に、1つのファイルデータのみ示しているため、ファイル管理データも1つのみが示される。
ログ領域303は、通常領域301に対するI/Oのログとして、通常領域301に対するI/O対象のファイルデータが格納される領域である。ログ領域303の基になっているRGを構成する全てのHDD(以下、ログHDD)120Lは、運用期間(クライアント111からI/Oコマンドを受け付け得る期間)では、スピンダウンされない。つまり、全てのログHDD120L内のディスクは、常に、高速でスピンしている状態にある。ログ領域303にも、通常領域301と同様に、ファイルデータが格納されるサブ領域(以下、ログデータサブ領域)3032と、各ファイルデータに対応する各ファイル管理データが格納されるサブ領域(以下、ログ管理サブ領域)3031とがある。図3では、ログ領域303に、1つのファイルデータのみ示しているため、ファイル管理データも1つのみが示される。
図4に示すように、一つの通常領域301の基になる通常HDD120Nの数よりも、一つのログ領域303の基になるログHDD120Lの数の方が少ない。また、ログHDD120Lが存在するRGと通常HDD120Nが存在するRGとは異なる。通常領域301及びログ領域303は、例えば、UI制御部203によって管理計算機104に表示された領域設定GUI(図28参照)を介してユーザが設定することが可能であるが、その際、UI制御部203によって、コントローラ1051から入手した構成テーブル2601(図26参照)を基に、通常領域301の基になるRGとログ領域303の基になるRGが重複しないよう制御される。なお、本実施形態では、全てのHDD120の記憶容量は同じである。従って、通常領域301の記憶容量よりもログ領域303の記憶容量の方が少ない。なお、通常HDDとログHDDの記憶容量は異なっていても良い(例えば、通常HDDの記憶容量よりもログHDDの記憶容量の方が大きくても良い)。また、通常領域301は複数個存在しても良い。この場合、複数の通常領域301に一つのログ領域303が共通であっても良いし、通常領域301毎にログ領域303が存在しても良い。通常領域301毎に、RGは異なる。NASヘッド103のメモリ1033に、例えば、どの通常LUNにどのログLUN(ログ領域303が割り当てられたLUN)が対応するかを表す情報が記憶される。
さて、前述したように、本実施形態では、NASヘッド103が管理するフェーズとして、以下の3種類、
(1)通常フェーズ:通常HDD120N内のディスクが高速でスピンしている状態にあるフェーズ(通常領域301の電力消費状態が通常状態であるフェーズ);
(2)スピンダウンフェーズ:通常HDD120N内のディスクがスピンダウンするフェーズ、言い換えれば、通常HDD120N内のディスクのスピン速度が、高速から低速(例えば速度ゼロ)に遷移するフェーズ(通常領域301の電力消費状態が節電状態であるフェーズ);
(3)スピンアップ/再同期フェーズ:通常HDD120N内のディスクがスピンアップし(通常HDD120N内のディスクのスピン速度が、低速から高速に遷移し)、ログ領域303に格納されているファイルデータのうち通常領域301に未格納のファイルデータがログ領域303から通常領域301にコピーされるフェーズ(通常領域301の節電状態が解除されるフェーズ);
がある。通常領域301が複数個存在する場合、通常領域301と別の通常領域301とではフェーズが独立している。例えば、或る通常領域301については通常フェーズであっても、別の通常領域301についてはスピンダウンフェーズであることがある。通常フェーズにおいて、通常領域301についてのI/O頻度が低ければ、スピンダウンフェーズへの遷移が行われる。一方、スピンダウンフェーズにおいて、通常領域301についてのI/O頻度が高ければ、スピンアップ/再同期フェーズへの遷移が行われる。「I/O頻度が低い」とは、例えば、I/O頻度(例えばそれの平均値)が一定期間第一の閾値以下であることである。一方、「I/O頻度が高い」とは、例えば、I/O頻度(例えばそれの平均値)が一定期間第二の閾値以上であることである。第一の閾値と第二の閾値は同じ値であっても良い。
(1)通常フェーズ:通常HDD120N内のディスクが高速でスピンしている状態にあるフェーズ(通常領域301の電力消費状態が通常状態であるフェーズ);
(2)スピンダウンフェーズ:通常HDD120N内のディスクがスピンダウンするフェーズ、言い換えれば、通常HDD120N内のディスクのスピン速度が、高速から低速(例えば速度ゼロ)に遷移するフェーズ(通常領域301の電力消費状態が節電状態であるフェーズ);
(3)スピンアップ/再同期フェーズ:通常HDD120N内のディスクがスピンアップし(通常HDD120N内のディスクのスピン速度が、低速から高速に遷移し)、ログ領域303に格納されているファイルデータのうち通常領域301に未格納のファイルデータがログ領域303から通常領域301にコピーされるフェーズ(通常領域301の節電状態が解除されるフェーズ);
がある。通常領域301が複数個存在する場合、通常領域301と別の通常領域301とではフェーズが独立している。例えば、或る通常領域301については通常フェーズであっても、別の通常領域301についてはスピンダウンフェーズであることがある。通常フェーズにおいて、通常領域301についてのI/O頻度が低ければ、スピンダウンフェーズへの遷移が行われる。一方、スピンダウンフェーズにおいて、通常領域301についてのI/O頻度が高ければ、スピンアップ/再同期フェーズへの遷移が行われる。「I/O頻度が低い」とは、例えば、I/O頻度(例えばそれの平均値)が一定期間第一の閾値以下であることである。一方、「I/O頻度が高い」とは、例えば、I/O頻度(例えばそれの平均値)が一定期間第二の閾値以上であることである。第一の閾値と第二の閾値は同じ値であっても良い。
以下、各フェーズでのライト及びリードの処理を説明する。
図5は、通常フェーズにおけるライト及びリードの処理の説明図である。
NASヘッド103は、通常フェーズにおいて、ファイルレベルのライトコマンドを受けた場合、実線矢印で示すように、ライト対象のファイルデータD1を、通常領域301及びログ領域303の双方にライトする。
NASヘッド103は、通常フェーズにおいて、ファイルレベルのリードコマンドを受けた場合、点線矢印で示すように、リード対象のファイルデータD2を、通常領域301からリードし、且つ、そのファイルデータD2を、ログ領域303にライトする。
図6は、スピンダウンフェーズにおけるライト及びリードの処理の説明図である。
NASヘッド103は、スピンダウンフェーズにおいて、ファイルレベルのライトコマンドを受けた場合、実線矢印で示すように、ライト対象のファイルデータD3を、ログ領域303にライトする。
NASヘッド103は、スピンダウンフェーズにおいて、ファイルレベルのリードコマンドを受けた場合、点線矢印で示すように、リード対象のファイルデータD4を、ログ領域303からリードする。もし、別種の点線矢印で示すように、そのファイルデータD4がログ領域303に無ければ、NASヘッド103は、通常領域301の基になっている全ての通常HDD120Nをスピンアップさせ、ファイルデータD4を通常領域301からリード、且つ、そのファイルデータD4をログ領域303にライトし、通常領域301の基になっている全ての通常HDD120Nをスピンダウンさせる。
図7は、スピンアップ/再同期フェーズにおけるライト及びリードの処理の説明図である。
NASヘッド103は、一点鎖線矢印で示すように、ログ領域303に格納されているが通常領域301に未格納のファイルデータD3を、ログ領域303から通常領域301にコピーする。
この他は、通常フェーズと同様である。
すなわち、NASヘッド103は、ファイルレベルのライトコマンドを受けた場合、実線矢印で示すように、ライト対象のファイルデータD6を、通常領域301及びログ領域303の双方にライトする。
また、NASヘッド103は、ファイルレベルのリードコマンドを受けた場合、点線矢印で示すように、リード対象のファイルデータD7を、通常領域301からリードし、且つ、そのファイルデータD7を、ログ領域303にライトする。
以上のように、ログ領域303には、通常領域301にライトされるファイルデータだけでなく通常領域301からリードされたファイルデータも格納される。このため、ログ領域303には、直近の期間(例えば直近1週間)にI/Oされたファイルデータが格納されていることになる。
図8は、ファイル管理データの構成図である。
ファイル管理データは、ファイルデータ毎にNASヘッド103によって生成されるデータである。ファイル管理データには、例えば、ファイル番号、属性情報、通常位置情報、ログ位置情報、通常データフラグ、ログデータフラグ及び反映先位置が含まれる。
「ファイル番号」は、このファイル管理データに対応するファイルデータ(以下、図8の説明において「対応ファイルデータ」)の番号である。
「属性情報」は、対応ファイルデータに関する属性を表す情報(例えば、ライト及びリードの両方が可能或いはリードのみ可能といったアクセス制御情報、対応ファイルデータのサイズなど)である。
「通常位置情報」は、対応ファイルデータの、通常領域301における位置を表す情報(例えば通常LUN及びLBA(Logical Block Address))である。
「ログ位置情報」は、対応ファイルデータの、ログ領域303における位置を表す情報である。
「通常データフラグ」は、通常領域301に対応ファイルデータがライトされたら設定されるフラグ(ログ領域303よりも新しい対応ファイルデータが存在することを示すフラグ)であり、その対応ファイルデータがログ領域303にライトされたら、削除される。
「ログデータフラグ」は、ログ領域303に対応ファイルデータがライトされたら設定されるフラグ(通常領域301よりも新しい対応ファイルデータが存在することを示すフラグ)であり、その対応ファイルデータが通常領域301にライトされたら、削除される。
「反映先位置情報」は、ログ領域303に記憶されている対応ファイルデータの、通常領域301における反映先の位置を表す情報である。この情報は、例えば、ファイルレベルI/Oコマンドに基づく、通常領域301へのライト先位置を表す情報である。
図9に実線矢印で示すように、通常管理サブ領域3011(又はログ管理サブ領域3031)に記憶されている複数のファイル管理データ(又は、それらの複数のファイル管理データのうちの二以上のデータ)は、通常管理サブ領域3011(又はログ管理サブ領域3031)から、コントローラ1051内のメモリ10514(特に、メモリ10514内のキャッシュ領域)にリードされて常駐されている(NASヘッド103のメモリ1033に常駐しても良い)。メモリ10514における更新後のファイル管理データが、点線矢印で示すように、通常管理サブ領域3011及びログ管理サブ領域3031にライトされる。スピンダウンフェーズの場合には、更新後のファイル管理データは、ログ管理サブ領域3031のみにライトされ、通常フェーズ或いはスピンアップ/再同期フェーズになった場合に、その更新後のファイル管理データが、通常管理サブ領域3011にライトされる。
図10は、フェーズの遷移の流れを示す。
現在のフェーズが何であるかは、フェーズ遷移部202(図2参照)によって管理されている。
通常フェーズの場合、条件(1)に合致するイベントが生じると、通常フェーズからスピンダウンフェーズへの遷移が行われる。具体的には、条件(1)に合致するイベントとは、下記(1−1)乃至(1−3)のいずれか、
(1−1)現在時刻が、フェーズ制御GUI(図25参照)からユーザが指定した第一の開始時刻(例えば、I/O頻度が少ない時間帯の開始時刻)になる、
(1−2)通常領域301に対応したI/O頻度(LU管理テーブル(図23参照)に記録されているI/O頻度)が、一定時間、第一の閾値(例えば、I/O頻度の平均値の5%)以下になる、
(1−3)ユーザが、UI制御部203によって表示されたGUIを介して手動で通常領域301を節電状態にすることを指示する、
がある。フェーズ遷移部202が、通常LUNと“節電状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンダウンコマンドを発行する。これにより、通常フェーズからスピンダウンフェーズへの遷移が行われる。
(1−1)現在時刻が、フェーズ制御GUI(図25参照)からユーザが指定した第一の開始時刻(例えば、I/O頻度が少ない時間帯の開始時刻)になる、
(1−2)通常領域301に対応したI/O頻度(LU管理テーブル(図23参照)に記録されているI/O頻度)が、一定時間、第一の閾値(例えば、I/O頻度の平均値の5%)以下になる、
(1−3)ユーザが、UI制御部203によって表示されたGUIを介して手動で通常領域301を節電状態にすることを指示する、
がある。フェーズ遷移部202が、通常LUNと“節電状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンダウンコマンドを発行する。これにより、通常フェーズからスピンダウンフェーズへの遷移が行われる。
スピンダウンフェーズの場合、条件(2)に合致するイベントが生じると、スピンダウンフェーズからスピンアップ/再同期フェーズへの遷移が行われる。具体的には、条件(2)に合致するイベントとは、下記(2−1)乃至(2−4)のいずれか、
(2−1)現在時刻が、フェーズ制御GUI(図25参照)からユーザが指定した第二の開始時刻(例えば、I/O頻度が多い時間帯の開始時刻)になる、
(2−2)通常領域301に対応したI/O頻度(LU管理テーブル(図23参照)に記録されているI/O頻度)が、一定時間、第二の閾値(例えば、I/O頻度の平均値の5%)以上になる、
(2−3)ユーザが、UI制御部203によって表示されたGUIを介して手動で通常領域301を通常状態にすることを指示する、
(2−4)リード対象のファイルデータがログ領域303に無い、
がある。フェーズ遷移部202が、通常LUNと“通常状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンアップコマンドを発行する。これにより、通常フェーズからスピンアップ/再同期フェーズへの遷移が行われる。
(2−1)現在時刻が、フェーズ制御GUI(図25参照)からユーザが指定した第二の開始時刻(例えば、I/O頻度が多い時間帯の開始時刻)になる、
(2−2)通常領域301に対応したI/O頻度(LU管理テーブル(図23参照)に記録されているI/O頻度)が、一定時間、第二の閾値(例えば、I/O頻度の平均値の5%)以上になる、
(2−3)ユーザが、UI制御部203によって表示されたGUIを介して手動で通常領域301を通常状態にすることを指示する、
(2−4)リード対象のファイルデータがログ領域303に無い、
がある。フェーズ遷移部202が、通常LUNと“通常状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンアップコマンドを発行する。これにより、通常フェーズからスピンアップ/再同期フェーズへの遷移が行われる。
スピンアップ/再同期フェーズの場合、条件(3)に合致するイベントが生じると、スピンアップ/再同期フェーズから通常フェーズへの遷移が行われる。条件(3)に合致するイベントとは、下記(3−1)、
(3−1)上記(2−1)〜(2−3)のいずれかのイベントの発生によりスピンアップ/再同期フェーズへの遷移が行われた後、ログ領域303に格納されている全てのファイルデータが通常領域301に格納されている状態になる(ログ領域303に格納されているが通常領域301に未格納の全てのファイルデータが通常領域301にコピーされる)、
がある。これにより、スピンアップ/再同期フェーズから通常フェーズへの遷移が行われる。
(3−1)上記(2−1)〜(2−3)のいずれかのイベントの発生によりスピンアップ/再同期フェーズへの遷移が行われた後、ログ領域303に格納されている全てのファイルデータが通常領域301に格納されている状態になる(ログ領域303に格納されているが通常領域301に未格納の全てのファイルデータが通常領域301にコピーされる)、
がある。これにより、スピンアップ/再同期フェーズから通常フェーズへの遷移が行われる。
一方、スピンアップ/再同期フェーズの場合、条件(4)に合致するイベントが生じると、スピンアップ/再同期フェーズからスピンダウンフェーズへの遷移が行われる。
具体的には、条件(4)に合致するイベントとは、下記(4−1)、
(4−1)上記(2−4)のイベントの発生によりスピンアップ/再同期フェーズへの遷移が行われた後、当該データ(ログ領域303に無い、リード対象のファイルデータ)を通常領域301からリードし且つログ領域303にライトした後、
がある。フェーズ遷移部202が、通常LUNと“節電状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンダウンコマンドを発行する。これにより、スピンアップ/再同期フェーズからスピンダウンフェーズへの遷移が行われる。
具体的には、条件(4)に合致するイベントとは、下記(4−1)、
(4−1)上記(2−4)のイベントの発生によりスピンアップ/再同期フェーズへの遷移が行われた後、当該データ(ログ領域303に無い、リード対象のファイルデータ)を通常領域301からリードし且つログ領域303にライトした後、
がある。フェーズ遷移部202が、通常LUNと“節電状態”を表す電力消費状態とを含んだ電力消費制御コマンドをコントローラ1051に発行し、コントローラ1051が、通常LUNに対応したRGに存在する全ての通常HDDに、スピンダウンコマンドを発行する。これにより、スピンアップ/再同期フェーズからスピンダウンフェーズへの遷移が行われる。
以下、本実施形態で行われる処理の流れを説明する。
図29は、ファイルレベルI/Oコマンドの処理の流れの全体概要を示す。
ファイルレベルI/Oコマンドを受領したとき(ステップ1901)、I/O制御部204(図2参照)は、現在のフェーズが通常フェーズの場合(ステップ1902:YES)、下記(29−1)〜(29−3)、
(29−1)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1903:YES)、図11に示す処理を行う、
(29−2)そのコマンドがリードコマンドならば(ステップ1903:NO、ステップ1904:YES)、図14に示す処理を行う、
(29−3)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1904:NO)、図15に示す処理を行う、
を実行する。
(29−1)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1903:YES)、図11に示す処理を行う、
(29−2)そのコマンドがリードコマンドならば(ステップ1903:NO、ステップ1904:YES)、図14に示す処理を行う、
(29−3)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1904:NO)、図15に示す処理を行う、
を実行する。
ファイルレベルI/Oコマンドを受領したとき(ステップ1901)、I/O制御部204は、現在のフェーズがスピンダウンフェーズの場合(ステップ1902:NO、ステップ1905:YES)、下記(29−4)〜(29−6)、
(29−4)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1906:YES)、図16に示す処理を行う、
(29−5)そのコマンドがリードコマンドならば(ステップ1906:NO、ステップ1907:YES)、図17に示す処理を行う、
(29−6)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1907:NO)、図18に示す処理を行う、
を実行する。
(29−4)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1906:YES)、図16に示す処理を行う、
(29−5)そのコマンドがリードコマンドならば(ステップ1906:NO、ステップ1907:YES)、図17に示す処理を行う、
(29−6)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1907:NO)、図18に示す処理を行う、
を実行する。
ファイルレベルI/Oコマンドを受領したとき(ステップ1901)、I/O制御部204は、現在のフェーズがスピンアップ/再同期フェーズの場合(ステップ1902:NO、ステップ1905:NO)、下記(29−7)〜(29−9)、
(29−7)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1908:YES)、図20に示す処理を行う、
(29−8)そのコマンドがリードコマンドならば(ステップ1908:NO、ステップ1909:YES)、図21に示す処理を行う、
(29−9)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1909:NO)、図22に示す処理を行う、
を実行する。
(29−7)そのコマンドが新しいファイルデータのライトコマンドならば(ステップ1908:YES)、図20に示す処理を行う、
(29−8)そのコマンドがリードコマンドならば(ステップ1908:NO、ステップ1909:YES)、図21に示す処理を行う、
(29−9)そのコマンドが既存ファイルデータのライトコマンドならば(ステップ1909:NO)、図22に示す処理を行う、
を実行する。
図11は、通常フェーズにおける新規ファイルのライト処理の流れを示す。
I/O制御部204は、新規ファイルデータに対応するファイル管理データを作成する(ステップ1101)。以下、このステップ1101で作成されたファイル管理データを、図11の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、通常データサブ領域部分を確保する(ステップ1102)。「通常データサブ領域部分」とは、通常データサブ領域3012内の一領域である。
次に、I/O制御部204は、ログデータサブ領域部分を確保する(ステップ1103)。「ログデータサブ領域部分」とは、ログデータサブ領域3032内の一領域である。もし、ログデータサブ領域部分を確保できない場合、I/O制御部204は、図12に示す開放処理を実行する。すなわち、I/O制御部204は、開放指示ポインタが指すエリア(ログデータサブ領域部分)を開放し(ステップ1201)、開放指示ポインタをカウントアップする(ステップ1202)。開放指示ポインタは、図13に示すように、ログデータサブ領域3032における、最も過去にライトされたファイルデータが格納されているログデータサブ領域部分1031を、指し示している。従って、開放指示ポインタが指すエリア1031を開放するということは、最も過去にライトされたファイルデータが格納されているエリアを開放するということになる。
次に、I/O制御部204は、対象管理データに、新規ファイルデータのファイル番号をセットする(ステップ1104)。
次に、I/O制御部204は、対象管理データに、新規ファイルデータに関する属性情報をセットする(ステップ1105)。
次に、I/O制御部204は、ステップ1102で確保した部分に、新規ファイルデータをライトする(ステップ1106)。
次に、I/O制御部204は、対象管理データに、通常位置情報をセットする(ステップ1107)。この通常位置情報は、新規ファイルデータの通常データサブ領域3012におけるライト先位置を表す情報、換言すれば、ステップ1102で確保された部分の位置を表す情報である。
次に、I/O制御部204は、対象管理データに、通常データフラグをセットする(ステップ1108)。
次に、I/O制御部204は、ステップ1103で確保した部分に、新規ファイルデータをライトする(ステップ1109)。
次に、I/O制御部204は、対象管理データに、ログ位置情報をセットする(ステップ1110)。このログ位置情報は、新規ファイルデータのログデータサブ領域3032におけるライト先位置を表す情報、換言すれば、ステップ1103で確保された部分の位置を表す情報である。
最後に、I/O制御部204は、対象管理データから、通常データフラグを削除する(ステップ1111)。
図14は、通常フェーズにおけるリード処理の流れを示す。
I/O制御部204は、リード対象のファイルデータに対応するファイル管理データを検索する(ステップ1401)。以下、このステップ1401の検索により見つかったファイル管理データを、図14の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、対象管理データ内の通常位置情報が表す部分から、リード対象のファイルデータをリードする(ステップ1502)。リードされたファイルデータはクライアント111に提供される。
次に、I/O制御部204は、対象管理データ内に通常データフラグがある場合(ステップ1403:YES)、すなわち、リード対象のファイルデータがログデータサブ領域3032に格納されていない場合、ログデータサブ領域部分を確保し(ステップ1404)、確保した部分に、リード対象のファイルデータをライトする(ステップ1405)。そして、I/O制御部204は、対象管理データに、ステップ1404で確保した部分の位置を表すログ位置情報をセットし(ステップ1406)、対象管理データから、通常データフラグを削除する(ステップ1407)。
図15は、通常フェーズにおける既存ファイルのライト処理の流れを示す。
I/O制御部204は、対象のファイルデータに対応するファイル管理データを検索する(ステップ1501)。以下、このステップ1501の検索により見つかったファイル管理データを、図15の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、対象管理データ内の通常位置情報が表す部分から、対象のファイルデータをリードする(ステップ1502)。リードされたファイルデータはクライアント111に提供される。
次に、I/O制御部204は、通常データサブ領域部分を確保する(ステップ1503)。
次に、I/O制御部204は、ログデータサブ領域部分を確保する(ステップ1504)。
その後、I/O制御部204は、図11に示したステップ1106〜1111を実行する。
図16は、スピンダウンフェーズにおける新規ファイルのライト処理の流れを示す。
I/O制御部204は、新規ファイルデータに対応するファイル管理データを作成する(ステップ1601)。以下、このステップ1601で作成されたファイル管理データを、図16の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、ログデータサブ領域部分を確保する(ステップ1602)。
次に、I/O制御部204は、対象管理データに、新規ファイルデータのファイル番号をセットする(ステップ1603)。
次に、I/O制御部204は、対象管理データに、新規ファイルデータに関する属性情報をセットする(ステップ1604)。
次に、I/O制御部204は、ステップ1602で確保した部分に、新規ファイルデータをライトする(ステップ1605)。
次に、I/O制御部204は、対象管理データに、ステップ1602で確保した部分の位置を表すログ位置情報をセットする(ステップ1606)。
最後に、I/O制御部204は、対象管理データに、ログデータフラグをセットする(ステップ1607)。
図17は、スピンダウンフェーズにおけるリード処理の流れを示す。
I/O制御部204は、リード対象のファイルデータに対応するファイル管理データを検索する(ステップ1701)。以下、このステップ1701の検索により見つかったファイル管理データを、図17の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、リード対象のファイルデータがログ領域303にあるかどうかを判断する(ステップ1702)。具体的には、例えば、I/O制御部204は、対象管理データに、通常データフラグがセットされていないか否かを判断する。
ステップ1702の判断の結果が肯定的の場合(つまり、対象管理データに通常データフラグがセットされていない場合)(ステップ1702:YES)、I/O制御部204は、対象管理データ内のログ位置情報が表す部分からリード対象のファイルデータをリードする。リードされたファイルデータはクライアント111に提供される。
一方、ステップ1702の判断の結果が否定的の場合(つまり、対象管理データに通常データフラグがセットされている場合)(ステップ1702:NO)、I/O制御部204は、フェーズ遷移部202を呼び出し、フェーズ遷移部202が、ドライブスピンアップを実行する(ステップ1704)。このステップでは、フェーズ遷移部202は、通常領域301の電力消費状態を節電状態から通常状態にするための電力消費制御コマンドを発行し、コントローラ1051が、そのコマンドに従って、通常領域301の基になっている全ての通常HDD120Nに対してスピンアップコマンドを発行する。
I/O制御部204は、全ての通常HDD120Nのスピンアップが完了した場合、対象管理データ内の通常位置情報が表す部分からリード対象のファイルデータリードする(ステップ1705)。その後、I/O制御部204は、図14に示したステップ1404〜1407を実行する。
図18は、スピンダウンフェーズにおける既存ファイルのライト処理の流れを示す。
I/O制御部204は、対象のファイルデータに対応するファイル管理データを検索する(ステップ1801)。以下、このステップ1801の検索により見つかったファイル管理データを、図18の説明において、「対象管理データ」と言う。
次に、I/O制御部204は、対象のファイルデータがログ領域303にあるかどうかを判断する(ステップ1802)。
ステップ1802の判断の結果が肯定的の場合(ステップ1802:YES)、I/O制御部204は、対象管理データ内のログ位置情報が表す部分から対象のファイルデータをリードする。リードされたファイルデータはクライアント111に提供される。その後、I/O制御部204は、図14に示したステップ1404〜1407を実行する。
一方、ステップ1802の判断の結果が否定的の場合(ステップ1802:NO)、I/O制御部204は、フェーズ遷移部202を呼び出し、フェーズ遷移部202が、ドライブスピンアップを実行する(ステップ1804)。I/O制御部204は、全ての通常HDD120Nのスピンアップが完了した場合、図15に示したステップ1502〜1504を実行し、その後、図11に示したステップ1106〜1111を実行する。
図19は、スピンアップ/再同期フェーズにおける同期処理の流れを示す。
I/O制御部204は、全てのファイル管理データから一つのファイル管理データを選択する(ステップ1902)。以下、選択されたファイル管理データを、図19の説明において、「対象管理データ」と言う。
I/O制御部204は、対象管理データ内にログデータフラグが無ければ(ステップ1903:NO)、別のファイル管理データを選択する(ステップ1908:NO)。
I/O制御部204は、対象管理データ内にログデータフラグがあれば(ステップ1903:YES)、通常データサブ領域部分を確保し(ステップ1905)、その部分に、対象管理データ内のログ位置情報が表す部分に記憶されているファイルデータをコピーし(ステップ1906)、対象管理データからログデータフラグを削除する(ステップ1907)。
全てのファイル管理データについて、ステップ1903以降の処理が行われる。
図20は、スピンアップ/再同期フェーズにおける新規ファイルのライト処理の流れを示す。
I/O制御部204は、通常HDD120Nがスピンアップ中であれば(ステップ2001:YES)、未だ通常領域301にファイルデータをライトできないため、図16に示したライト処理を実行する。
一方、通常HDD120Nのスピンアップが完了していれば(ステップ2001:NO)、通常領域301にファイルデータをライトできるため、I/O制御部204は、図11に示したライト処理を実行する。
図21は、スピンアップ/再同期フェーズにおけるリード処理の流れを示す。
I/O制御部204は、通常HDD120Nがスピンアップ中であれば(ステップ2101:YES)、図17に示したリード処理を実行する。
一方、通常HDD120Nのスピンアップが完了していれば(ステップ2101:NO)、I/O制御部204は、リード対象のファイルデータに対応したファイル管理データを検索する(ステップ2102)。I/O制御部204は、そのファイル管理データを基に、リード対象のファイルデータがログ領域303にあるかどうかを判断する(ステップ2103)。ステップ2103の判断の結果が肯定的であれば(ステップ2103:YES)、I/O制御部204は、その管理データ内のログ位置情報が表す部分からファイルデータをリードする(ステップ2104)。ステップ2104の判断の結果が否定的であれば(ステップ2103:NO)、I/O制御部204は、図12に示したリード処理を実行する。
図22は、スピンアップ/再同期フェーズにおける既存ファイルのライト処理の流れを示す。
I/O制御部204は、通常HDD120Nがスピンアップ中であれば(ステップ2201:YES)、図18に示した既存ファイルの処理を実行する。
一方、通常HDD120Nのスピンアップが完了していれば(ステップ2201:NO)、I/O制御部204は、リード対象のファイルデータに対応したファイル管理データを検索する(ステップ2202)。I/O制御部204は、そのファイル管理データを基に、対象のファイルデータがログ領域303にあるかどうかを判断する(ステップ2203)。ステップ2203の判断の結果が肯定的であれば(ステップ2203:YES)、I/O制御部204は、その管理データ内のログ位置情報が表す部分からファイルデータをリードし(ステップ2204)、図14に示したステップ1404〜1407を実行する。ステップ2104の判断の結果が否定的であれば(ステップ2203:NO)、I/O制御部204は、図15に示した既存ファイルの処理を実行する。
以上、上述した実施形態によれば、ログ領域303の電力消費状態は常に通常状態であり、通常領域301の電力消費状態が、適宜に節電状態にされる。ログ領域303の基になっているログHDD120Lの数は、通常領域301の基になっている通常HDD120Nの数よりも少ない。このため、高い省電力効果が期待できる。
また、上述した実施形態によれば、通常領域301に対するライト対象のファイルデータだけでなく、通常領域301からのリード対象のファイルデータも、ログ領域303にライトされる。このため、スピンダウンフェーズにおいて、直近の特定の期間(例えば1週間)にリードされたファイルデータのリードの際には、通常領域301の節電状態を解除する必要が無い。すなわち、通常領域301の電力消費状態を節電状態から通常状態に変更する必要が生じる頻度を抑えることができる。
以上、本発明の好適な実施形態を説明したが、本発明は、この実施形態に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、HDDに代えて、他種の物理記憶装置(フラッシュメモリデバイス)が採用されても良い。また、通常領域及びログ領域は、記憶装置が収納されている筺体の単位で設けられても良い。また、記憶装置に対する電力消費制御としては、スピンアップ/スピンダウンに代えて、電源ON/OFFが採用されても良い。
101…NAS装置 103…NASヘッド 105…NAS本体
Claims (15)
- ライトコマンド又はリードコマンドであるI/O(Input/Output)コマンドを発行する外部装置に接続されるストレージシステムであって、
複数の記憶装置と、
前記外部装置からI/Oコマンドを受け付けるコントローラユニットと
を備え、
前記複数の記憶装置を基に、前記外部装置からのI/Oコマンドに従うI/O先となりI/O対象のユーザデータが格納される記憶領域である通常領域の他に、前記I/O対象のユーザデータが格納される記憶領域であるログ領域が設けられており、
前記ログ領域の基になっている記憶装置であるログ記憶装置の数は、前記通常領域の基になっている記憶装置である通常記憶装置の数よりも少なく、
前記コントローラユニットがI/Oコマンドを前記外部装置から受け付け得る状態にある期間である運用期間において、前記ログ記憶装置の電力消費状態が、常に、データの入出力を行なえる電力消費状態である通常状態であり、前記通常記憶装置の電力消費状態が、前記運用期間のうちの特定の期間に、前記通常状態よりも電力消費が少ない状態である節電状態であり、
前記コントローラユニットが、前記外部装置からI/Oコマンドを受けた場合に、前記通常記憶装置の電力消費状態が前記通常状態であれば、前記通常領域及び前記ログ領域の双方に対してI/Oを行う、
ストレージシステム。 - 前記外部装置は、クライアント計算機であり、
前記ユーザデータは、ファイルデータであり、
前記コントローラユニットが、各ファイルデータに対応した各ファイル管理データを記憶するメモリを有し、
前記ファイル管理データは、そのファイル管理データに対応するファイルデータである対応ファイルデータについて、
前記通常領域及において前記対応ファイルデータが格納されている通常位置を表す通常位置情報と、
前記ログ領域及において前記対応ファイルデータが格納されているログ位置を表すログ位置情報と、
前記通常領域及び前記ログ領域のいずれかにのみ前記対応ファイルデータが存在するか双方に前記対応ファイルデータが存在するかを表す同期情報と、
前記ログ領域のみに存在する前記対応ファイルデータの前記通常領域への反映先位置を表す反映先位置情報と
を含み、
前記コントローラユニットが、
(2−1)前記通常記憶装置の電力消費状態が前記通常状態の場合、
(2−1−1)前記クライアント計算機から第一のライトコマンドを受けたならば、前記第一のライトコマンドに従うライト対象である第一のファイルデータを、前記通常領域と前記ログ領域の両方にライトし、前記第一のファイルデータに対応する第一のファイル管理データについて、前記通常位置情報を、前記通常領域における前記第一のファイルデータのライト先位置を表す情報に更新し、前記ログ位置情報を、前記ログ領域における前記第一のファイルデータのライト先位置を表す情報に更新し、前記同期情報を、前記第一のファイルデータが前記通常領域及び前記ログ領域の双方に存在することを表す情報に更新し、
(2−1−2)前記クライアント計算機から第二のリードコマンドを受けたならば、前記第二のリードコマンドに従うリード対象である第二のファイルデータを、前記第二のリードコマンドに従う、前記通常領域内のリード元位置からリードし、リードした前記第二のファイルデータを、前記クライアント計算機に提供し、前記第二のファイルデータに対応する第二のファイル管理データ内の前記同期情報が、前記通常領域にのみ前記第二のファイルデータが存在することを表す情報になっていれば、前記第二のファイルデータを、前記ログ領域にライトし、前記第二のファイル管理データについて、前記ログ位置情報を、前記ログ領域における前記第二のファイルデータのライト先位置を表す情報に更新し、前記同期情報を、前記第二のファイルデータが前記通常領域及び前記ログ領域の双方に存在することを表す情報に更新し、
(2−1−3)前記通常領域に対するI/Oの頻度が低い場合に、前記通常記憶装置の電力消費状態を前記通常状態から前記節電状態に変更し、
(2−2)前記通常記憶装置の電力消費状態が前記節電状態の場合、
(2−2−1)前記クライアント計算機から第三のライトコマンドを受けたならば、前記第三のライトコマンドに従うライト対象である第三のファイルデータを、前記ログ領域にライトし、前記第三のファイルデータに対応した前記第三のファイル管理データについて、前記ログ位置情報を、前記ログ領域における前記第三のファイルデータのライト先位置を表す情報に更新し、前記同期情報を、前記第一のファイルデータが前記ログ領域にのみ存在することを表す情報に更新し、前記反映先位置情報を、前記第三のライトコマンドに従う、前記通常領域内のライト先位置を表す情報に更新し、
(2−2−2)前記クライアント計算機から第四のリードコマンドを受けたならば、前記第四のリードコマンドに従うリード対象である第四のファイルデータに対応した前記第四のファイル管理データを参照して、前記第四のファイルデータが前記ログ領域に存在するか否かの判断を行い、
(2−2−2−1)前記(2−2−2)での判断の結果が肯定的であれば、前記第四のファイル管理データ内の前記ログ位置情報が表す前記ログ位置から、前記第四のファイルデータをリードし、リードした前記第四のファイルデータを、前記クライアント計算機に提供し、
(2−2−2−2)前記(2−2−2)での判断の結果が否定的であれば、前記通常記憶装置の電力消費状態を前記節電状態から前記通常状態に変更し、前記第四のファイル管理データ内の前記通常位置情報が表す前記通常位置から、前記第四のファイルデータをリードし、リードした前記第四のファイルデータを、前記クライアント計算機に提供し、前記第四のファイルデータを、前記ログ領域にライトし、前記第四のファイル管理データについて、前記ログ位置情報を、前記ログ領域における前記第四のファイルデータのライト先位置を表す情報に更新し、前記同期情報を、前記第四のファイルデータが前記通常領域及び前記ログ領域の双方に存在することを表す情報に更新し、前記通常記憶装置の電力消費状態を前記通常状態から前記節電状態に戻し、
(2−2−3)前記通常領域に対するI/Oの頻度が高い場合に、前記通常記憶装置の電力消費状態を前記節電状態から前記通常状態に変更し、前記対応ファイルデータが前記ログ領域にのみ存在することを表す同期情報を含んだファイル管理データに対応する前記対応ファイルデータを、そのファイル管理データ内の前記反映先位置情報が表す、前記通常領域内の前記反映先位置にライトし、そのファイル管理データ内の前記同期情報を、前記対応ファイルデータが前記通常領域及び前記ログ領域の双方に存在することを表す情報に更新する、
請求項1記載のストレージシステム。 - 前記各ファイル管理データが、前記ログ領域に格納されており、
前記コントローラユニット内の前記メモリに記憶されているファイル管理データは、前記ログ領域からリードされたファイル管理データであり、
前記コントローラユニットが、前記メモリに記憶されているファイル管理データを更新した場合、前記ログ領域に記憶されている、そのファイル管理データに対応したファイル管理データの内容を、前記メモリに記憶されているファイル管理データの内容に更新する、
請求項2記載のストレージシステム。 - NAS(Network Attached Storage)ヘッドと、
前記複数の記憶装置と前記複数の記憶装置に対するI/Oを行うコントローラとを有したNAS本体と
を備え、
前記コントローラユニットは、前記NASヘッドと、前記NASヘッドに接続された前記コントローラとで構成されており、
前記NASヘッドが、前記通常領域及び前記ログ領域を管理しており、前記通常領域を指定した電力消費制御コマンドを前記コントローラに発行し、
前記コントローラが、前記複数の記憶装置のうちどれが通常記憶装置でどれがログ記憶装置であるかを管理しており、前記電力消費制御コマンドに応答して、前記通常領域の基になっている前記通常記憶装置を特定し、特定した通常記憶装置の電力消費状態を制御する、
請求項2又は3記載のストレージシステム。 - 前記コントローラユニットは、ファイルデータを前記ログ領域にライトする場合、前記ログ領域に空きの領域が無い場合、前記ログ領域内の、最も過去にライトされたファイルデータが格納されている領域に、ファイルデータをライトする、
請求項2乃至4のうちのいずれかに記載のストレージシステム。 - 前記コントローラユニットは、前記クライアント計算機からのライトコマンドに応答してライト対象のファイルデータを前記通常領域及び前記ログ領域の双方にライトする場合、前記通常領域に先に前記ライト対象のファイルデータをライトし、前記通常領域へのライトが完了したならば、前記ログ領域に前記ライト対象のファイルデータをライトする前に、前記クライアント計算機にライト完了を報告する、
請求項2乃至5のうちのいずれかに記載のストレージシステム。 - 前記コントローラユニットが、
(7−1)前記通常記憶装置の電力消費状態が前記通常状態の場合に、前記外部装置から第一のリードコマンドを受けたならば、前記第一のリードコマンドに従うリード対象である第一のユーザデータを前記通常領域からリードし、リードした前記第一のユーザデータを前記ログ領域にライトし、
(7−2)前記通常記憶装置の電力消費状態が前記節電状態の場合に、前記外部装置から第二のリードコマンドを受けたならば、前記第二のリードコマンドに従うリード対象である第二のユーザデータを前記ログ領域からリードする、
請求項1記載のストレージシステム。 - 前記コントローラが、前記(7−2)において、前記第二のユーザデータが前記ログ領域に無い場合には、前記通常記憶装置の電力消費状態を前記節電状態から前記通常状態に変更し、その後に、前記第二のユーザデータを前記通常領域からリードする、
請求項7記載のストレージシステム。 - 前記ユーザデータは、ファイルデータであり、
前記コントローラユニットが、各ファイルデータに対応した各ファイル管理データを記憶するメモリを有し、
前記ファイル管理データは、そのファイル管理データに対応するファイルデータである対応ファイルデータについて、
前記通常領域及において前記対応ファイルデータが格納されている通常位置を表す通常位置情報と、
前記ログ領域及において前記対応ファイルデータが格納されているログ位置を表すログ位置情報と、
前記通常領域及び前記ログ領域のいずれかにのみ前記対応ファイルデータが存在するか双方に前記対応ファイルデータが存在するかを表す同期情報と、
前記ログ領域のみに存在する前記対応ファイルデータの前記通常領域への反映先位置を表す反映先位置情報と
を含む、
前記コントローラユニットは、ライトコマンドを受けた場合、
(9−1)前記通常記憶装置の電力消費状態が前記通常状態であれば、前記ライトコマンドに従うライト対象のファイルデータを前記通常領域及び前記ログ領域の双方にライトし、前記ライト対象のファイルデータに対応するファイル管理データを更新し、
(9−2)前記通常記憶装置の電力消費状態が前記節電状態であれば、前記ライト対象のファイルデータを前記ログ領域にのみライトし、前記ライト対象のファイルデータに対応するファイル管理データ内の前記反映先位置情報を、前記ライトコマンドに従う、前記通常領域内のライト先位置を表す情報に更新し、
(9−3)前記通常記憶装置の電力消費状態を前記節電状態から前記通常状態に変更した場合に、前記ライト対象のファイルデータが前記ログ領域にのみ存在することを表す同期情報を含んだファイル管理データに対応する前記ライト対象のファイルデータを、そのファイル管理データ内の前記反映先位置情報が表す、前記通常領域内の前記反映先位置にライトし、そのファイル管理データ内の前記同期情報を、前記ライト対象のファイルデータが前記通常領域及び前記ログ領域の双方に存在することを表す情報に更新する、
請求項1、7又は8記載のストレージシステム。 - 前記各ファイル管理データが、前記ログ領域に格納されており、
前記コントローラユニット内の前記メモリに記憶されているファイル管理データは、前記ログ領域からリードされたファイル管理データであり、
前記コントローラユニットが、前記メモリに記憶されているファイル管理データを更新した場合、前記ログ領域に記憶されている、そのファイル管理データに対応したファイル管理データの内容を、前記メモリに記憶されているファイル管理データの内容に更新する、
請求項9記載のストレージシステム。 - NAS(Network Attached Storage)ヘッドと、
前記複数の記憶装置と前記複数の記憶装置に対するI/Oを行うコントローラとを有したNAS本体と
を備え、
前記コントローラユニットは、前記NASヘッドと、前記NASヘッドに接続された前記コントローラとで構成されており、
前記NASヘッドが、前記通常領域及び前記ログ領域を管理しており、前記通常領域を指定した電力消費制御コマンドを前記コントローラに発行し、
前記コントローラが、前記複数の記憶装置のうちどれが通常記憶装置でどれがログ記憶装置であるかを管理しており、前記電力消費制御コマンドに応答して、前記通常領域の基になっている前記通常記憶装置を特定し、特定した通常記憶装置の電力消費状態を制御する、
請求項1、7乃至10のうちのいずれかに記載のストレージシステム。 - 前記コントローラユニットは、ユーザデータを前記ログ領域にライトする場合、前記ログ領域に空きの領域が無い場合、前記ログ領域内の、最も過去にライトされたユーザデータが格納されている領域に、ユーザデータをライトする、
請求項1、7乃至11のうちのいずれかに記載のストレージシステム。 - 前記コントローラユニットは、前記外部装置からのライトコマンドに応答してライト対象のユーザデータを前記通常領域及び前記ログ領域の双方にライトする場合、前記通常領域に先に前記ライト対象のユーザデータをライトし、前記通常領域へのライトが完了したならば、前記ログ領域に前記ライト対象のユーザデータをライトする前に、前記外部装置にライト完了を報告する、
請求項1、7乃至12のうちのいずれかに記載のストレージシステム。 - 前記コントローラユニットは、
(14−1)前記通常記憶装置の消費電力状態が前記通常状態の場合に、前記通常領域に対するI/Oの頻度が低ければ、前記通常記憶装置の消費電力状態を前記通常状態から前記節電状態に変更し、
(14−2)前記通常記憶装置の消費電力状態が前記節電状態の場合に、前記通常領域に対するI/Oの頻度が高ければ、前記通常記憶装置の消費電力状態を前記節電状態から前記通常状態に変更する、
請求項1、7乃至13のうちのいずれかに記載のストレージシステム。 - ライトコマンド又はリードコマンドであるI/O(Input/Output)コマンドを発行する外部装置に接続されるストレージシステムの電力消費制御方法であって、
前記ストレージシステムに備えられている前記複数の記憶装置を基に、前記外部装置からのI/Oコマンドに従うI/O先となりI/O対象のユーザデータが格納される記憶領域である通常領域と、前記I/O対象のユーザデータが格納される記憶領域であるログ領域とを設け、その際、前記ログ領域の基になっている記憶装置であるログ記憶装置の数を、前記通常領域の基になっている記憶装置である通常記憶装置の数よりも少ない数とし、
I/Oコマンドを前記外部装置から受け付け得る状態にある期間である運用期間において、前記ログ記憶装置の電力消費状態を、常に、データの入出力を行なえる電力消費状態である通常状態とし、前記通常記憶装置の電力消費状態を、前記運用期間のうちの特定の期間に、前記通常状態よりも電力消費が少ない状態である節電状態とし、
前記外部装置からI/Oコマンドを受けた場合に、前記通常記憶装置の電力消費状態が前記通常状態であれば、前記通常領域及び前記ログ領域の双方に対してI/Oを行う、
電力消費制御方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008218272A JP2010055287A (ja) | 2008-08-27 | 2008-08-27 | 節電機能を備えたストレージシステム |
US12/289,058 US8868934B2 (en) | 2008-08-27 | 2008-10-20 | Storage system including energy saving function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008218272A JP2010055287A (ja) | 2008-08-27 | 2008-08-27 | 節電機能を備えたストレージシステム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010055287A true JP2010055287A (ja) | 2010-03-11 |
Family
ID=41727050
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008218272A Pending JP2010055287A (ja) | 2008-08-27 | 2008-08-27 | 節電機能を備えたストレージシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8868934B2 (ja) |
JP (1) | JP2010055287A (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9557800B2 (en) * | 2012-08-31 | 2017-01-31 | Micron Technology, Inc. | Sequence power control |
JP2018195185A (ja) * | 2017-05-19 | 2018-12-06 | 富士通株式会社 | 記憶装置および制御方法 |
JP2020017133A (ja) * | 2018-07-26 | 2020-01-30 | キオクシア株式会社 | ストレージ装置及び制御方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060115238A1 (en) * | 1999-12-28 | 2006-06-01 | Yoichiro Sako | Digital data processing device and method therefor |
US7174471B2 (en) * | 2003-12-24 | 2007-02-06 | Intel Corporation | System and method for adjusting I/O processor frequency in response to determining that a power set point for a storage device has not been reached |
US7769947B2 (en) * | 2005-09-30 | 2010-08-03 | Intel Corporation | Management of data redundancy based on power availability in mobile computer systems |
JP2007156597A (ja) | 2005-12-01 | 2007-06-21 | Hitachi Ltd | ストレージ装置 |
JP4436316B2 (ja) * | 2005-12-27 | 2010-03-24 | 富士通株式会社 | ビットマップ処理方式 |
JP4794370B2 (ja) * | 2006-06-20 | 2011-10-19 | 株式会社日立製作所 | 省電力とパフォーマンスを両立したストレージシステム及び記憶制御方法 |
US7814351B2 (en) * | 2007-06-28 | 2010-10-12 | Seagate Technology Llc | Power management in a storage array |
-
2008
- 2008-08-27 JP JP2008218272A patent/JP2010055287A/ja active Pending
- 2008-10-20 US US12/289,058 patent/US8868934B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
US8868934B2 (en) | 2014-10-21 |
US20100058080A1 (en) | 2010-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8261036B2 (en) | Storage system comprising function for reducing power consumption | |
US7856526B2 (en) | Storage apparatus and power-saving control method of storage apparatus | |
US7529950B2 (en) | Information processing system, control method for information processing system, and storage system | |
US8086877B2 (en) | Storage device and control method for the same | |
US8806125B2 (en) | Storage system comprising power saving function | |
US8521978B2 (en) | Storage apparatus and method for controlling storage apparatus | |
JP5529283B2 (ja) | ストレージシステム及びストレージシステムにおけるキャッシュの構成変更方法 | |
JP2007156597A (ja) | ストレージ装置 | |
US20050228802A1 (en) | Storage control system and method | |
JP2008276646A (ja) | ストレージ装置及びストレージ装置におけるデータの管理方法 | |
JP2005157710A (ja) | ドライブの稼働時間を抑止するディスクアレイ | |
US7380090B2 (en) | Storage device and control method for the same | |
JP2007293442A (ja) | ストレージシステム及びその制御方法 | |
US8108637B2 (en) | Information processing system, controlling method in information processing system, and managing apparatus to manage remote copy in consideration of saving power | |
JP2008299695A (ja) | ストレージシステムの電力消費を制御するデータベース管理システム | |
US8347033B2 (en) | Storage system having power saving function | |
JP2010055287A (ja) | 節電機能を備えたストレージシステム | |
US20100031074A1 (en) | Storage device and control method for the same | |
JP2013134690A (ja) | 情報処理装置およびキャッシュ制御方法 | |
JP2013206009A (ja) | ドライブ制御装置及びストレージシステム及びドライブ制御方法 | |
WO2016006108A1 (ja) | ストレージおよびその制御方法 | |
JP5012599B2 (ja) | メモリ内容復元装置、メモリ内容復元方法及びメモリ内容復元プログラム | |
JP2001022614A5 (ja) | ||
JP2005004282A (ja) | ディスクアレイ装置、ディスクアレイ装置の管理方法及び管理プログラム | |
US20140208023A1 (en) | Storage system and control method for storage system |