(57)【特許請求の範囲】
【請求項１】
第１の記憶装置と，
前記第１の記憶装置よりもデータ転送時間が長い第２の記憶装置と，
前記第２の記憶装置よりもデータ転送時間が長い第３の記憶装置と，
前記第１の記憶装置よりデータ転送時間が短い一時記憶装置と，
前記第１の記憶装置乃至第３の記憶装置に記憶されているデータのうち，そのアクセス頻度が所定値より大きいデータについては，当該データが記憶されている記憶装置から，第１の記憶装置乃至第３の記憶装置の中で当該記憶装置よりもデータ転送速度が短い記憶装置に当該データを移動させ，そのアクセス頻度が所定値より小さいデータについては，当該データが記憶されている記憶装置から，当該記憶装置よりもデータ転送速度が長いデータ記憶装置と前記一時記憶装置とに当該データを移動させる制御手段と，
データへのアクセス要求を受け付けた場合，当該アクセス要求に対応するデータが前記一時記憶装置に記憶されている場合，前記一時記憶装置にアクセスするアクセス制御手段と，
を備えたことを特徴とするストレージシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は大容量の記憶装置を多数備えたストレージシステムに関する。
【０００２】
近年のＩＴの普及に伴い，様々な情報のデジタル化が進められている。これらのデジタル情報を処理・蓄積するコンピュータシステムは拡大の一途を辿っており，ユーザのコンピュータシステムを集めて運用するＩＤＣ（インターネット・データ・センター）や，ユーザから委託された業務処理をするためのコンピュータシステムを保有してユーザが必要とするアプリケーションを提供するＡＳＰ（アプリケーション・サービス・プロバイダ）のような業態も出現している。
【０００３】
ユーザが使用する比較的大規模なコンピュータシステムや，ＩＤＣ，ＡＳＰにおいては大量のハードディスクを含むストレージシステムが利用され，その消費電力はコンピュータシステム全体の２／３を占めると言われており，その消費電力の削減をすることが望まれている。
【背景技術】
【０００４】
近年のＩＤＣ（インターネット・データ・センター）や，ＡＳＰ（アプリケーション・サービス・プロバイダ）のようにデータ処理や，データ蓄積の委託を受けて業務を行うところでは，各顧客またはユーザに対応した処理装置（ＣＰＵとメモリ）とその処理装置を利用するユーザのデータを記憶したり，入力または処理の結果をバックアップのためにコピーしたデータを格納するための大容量の記憶装置を多数備えたストレージシステムが設けられている。大容量で比較的高速のアクセスが可能な記憶装置としてハードディスクが用いられ，現在では１００Ｇ（ギガバイト）程度の容量の装置が利用されるようになった。
【０００５】
このようなハードディスクを多数（数十台，数百台）からなるストレージシステムを備えた上記のＩＤＣや，ＡＳＰでは，ハードディスクにより消費する電力消費が大きくなる。例えば，一台のハードディスクの消費電力が２０ワットとして，１００台のハードディスクを備えた場合は２０００ワットとなり，多数のＣＰＵを含むデータ処理装置全体の電力消費の５割以上の電力を消費することが多く，コスト面及び施設の維持の上で問題があった。
【０００６】
そのため，ストレージシステムの電力消費を低減することが望まれており，図４は従来例の説明図であり，図４のＡ．は構成を示し，Ｂ．はハードディスクとファイルの関係を示す。図４のＡ．において，８０はＣＰＵ，８１はＩＯバス，８２はハードディスク（ＨＤＤ）番号変換手段，８３はハードディスク（８７）のファイル毎のアクセス回数（ファイルへのアクセス頻度）を検出する入出力監視手段，８４はあるハードディスクに格納されたファイルを別のハードディスクに移動させるファイル移動手段，８５は各ハードディスク毎のアイドル時間（アクセス間隔時間）を検出してハードディスク毎のアクセス頻度を検出するアイドル時間検出手段，８６はモータ起動・停止手段，８７は複数のハードディスク８７−０〜８７−２から成るハードディスク装置である。
【０００７】
ＣＰＵからＩＯバス８１を介してハードディスクにアクセスすると，ハードディスク（ＨＤＤ）番号変換手段８２において論理アドレスをハードディスク番号に変換して，ハードディスク装置８７の中の対応する番号のハードディスクにアクセスしてリード，またはライトの動作を行う。このハードディスクへのアクセス時に，入出力監視手段８３はハードディスク装置８７のどのファイルにアクセスするかを監視し，ファイル対応のアクセス回数（頻度）を計数する。また，アイドル時間検出手段８５は，ハードディスク８７−０〜８７−２毎のアイドル時間（空き状態の時間）を計測して，ハードディスク毎のアクセス頻度を検出する。このアイドル時間検出手段８５の検出結果により，ハードディスク８７−０〜８７−２の中でアイドル時間がある程度長いものについては，モータの電源を停止して消費電力を低減させる。
【０００８】
また，図４のＢ．は各ハードディスク８７−０〜８７−２をディスク０〜ディスク２として表した場合，それぞれにファイルａ〜ｃ，ファイルｄ，ｅ，ファイルｆ〜ｈが格納されているものとする。入出力監視手段８３の監視動作によりこれらのファイルの中でディスク２の中のファイルｆ，ファイルｇ，ファイルｈの中で，ファイルｆへの入出力回数が比較的多く，ファイルｈへの入出力回数が極めて少ない場合は，ファイル移動手段８４を駆動して，ファイルｆを他の空き容量があるアクセス頻度の高いディスク（例えば，ハードディスク８７−１）に移動させる。この結果，ハードディスク８７−２のアイドル時間が長くなると，モータ起動・停止手段８６を制御してそのモータを停止させる。これにより，ハードディスク８７−２の電力消費を低減させることができ，使用頻度が一定基準より高いファイルｆはハードディスク８７−１に移動させることで，データの処理に影響を与える可能性が低い。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
上記した従来例の方法では，ファイル単位でアクセス頻度を監視して頻度の低いファイルを移動させるため，ファイルの中の一部のデータについてアクセス頻度にばらつきがあった場合にはファイル全体として移動させるので，移動させる必要がないファイルを移動させたり，必要な移動を行わないといった事態を招く可能性があった。また，データの移動がファイル単位で生じるため，そのための手続きや転送のための時間を含めて移動時間がかかるという問題があった。更に，ハードディスク単位のアクセス頻度の検出によりアクセス頻度が低いと判定されて停止したディスクにアクセスが発生した場合，ディスクの再起動にはモータを回転させ，回転数が一定数になるまでのウォーミングアップのための時間がかかり，アクセス動作が低速になるという問題があった。
【００１０】
本発明はシステムの性能を低下させることなく省電力を実現するストレージシステムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
図１は本発明の原理構成を示す。図中，１はデータアクセス頻度検出手段，２はデータ移動手段，３は一時記憶装置，４は性能検出手段，５は装置アクセス頻度判定手段，６は装置稼働制御手段，７はハードディスク等の複数の個別の記憶装置７−１〜７−ｎを備えた記憶装置である。
【００１２】
本発明はデータをブロック単位で監視してアクセス頻度を検出すると共に，各記憶装置（ハードディスク）のデータ転送時間を検出して性能に対応したグループ分けを行い，データブロックをアクセス頻度に応じて性能が異なるグループに移動して，データブロック単位でアクセス頻度に対応した最適な記憶装置にデータを配置することで，省電力化をはかるものである。
【００１３】
図１において，記憶装置７へのアクセスが発生するとデータアクセス頻度検出手段１は記憶装置７の中のどの個別の記憶装置７−１〜７−ｎのどのデータブロック（ファイルよりも小さい一定量の領域）に対するアクセスであるかその都度検出してテーブル（図示省略）を更新し，データブロックのアクセス頻度を判定する。一方，性能検出手段４では記憶装置７の中の個別の記憶装置７−１〜７−ｎに対しテストの指令によりアクセスを行うことで各記憶装置７−１〜７−ｎによるデータ転送時間を求め，データ転送時間の長さに応じて記憶装置を高い性能の記憶装置のグループから低い性能の記憶装置のグループまでの複数のグループに分類する。この場合，データ転送時間が短い記憶装置は性能が良いが消費電力が多く，転送時間が長い記憶装置は低性能であるが低消費電力である。上記データアクセス頻度検出手段１により各データブロックについてアクセス頻度が予め設定した下限値を下回るか，または予め設定した上限値を上回るかの判定を行い，データ移動手段２を駆動して下限値を下回ると判定されたデータブロックを，よりデータ転送時間が長い記憶装置グループに移動し，上限値を上回ると判定されたデータブロックをよりデータ転送時間が短い記憶装置グループに移動する。これにより，データブロック単位でアクセス頻度に応じて最適な記憶装置グループにデータが配置され，性能は低いが消費電力が小さい装置と性能は高いが消費電力が大きな装置を組み合わせてストレージシステムを構成でき，省電力化を実現できる。また，アクセス頻度が小さいデータであっても性能が低い装置に移動するだけであり，装置の停止に伴う性能低下を避けることができる。
【００１４】
更に，記憶装置別の装置アクセス頻度を計測して判定する装置アクセス頻度判定手段５は，装置稼働状態を予め定められた値よりも低くなった装置については，省電力モードで稼働（モータの回転を停止）し，再びアクセスがあった場合に通常動作モードで稼働させることにより，より大きな省電力化を図ることが可能となる。この時，移動したデータブロックを一時記憶装置３に蓄え，省電力モードで動作している記憶装置のデータブロックへのアクセスに対して，一時記憶装置３で高速に処理することで性能低下を防止することができる。
【発明の効果】
【００１５】
本発明によればデータブロック単位でアクセス頻度に応じて最適な記憶装置にデータが配置されるため，性能は低いが消費電力が低い装置と性能は高いが消費電力が大きな装置を組み合わせてストレージシステムを構成でき，省電力化を実現することができる。また，アクセス頻度が小さなデータであっても性能の低い装置に移動するだけであり，装置の停止に伴う性能低下を避けることができる。
【００１６】
更に，装置稼働状態が予め定められた値よりも低くなった場合に装置を省電力モードで稼働し，再びアクセスがあった場合に通常動作モードで稼働させることにより，より大きな省電力化が可能となる。
【００１７】
また，アクセス頻度により移動したデータブロックを一時蓄える一時記憶装置を設けたことにより，省電力モードで稼働している装置へのアクセスを回避し，低能低下を避けることができる。
【００１８】
更に，低性能で低価格の記憶装置と高性能で高価格の記憶装置を組み合わせることにより平均してコスト，電力消費を下げつつ性能的には高性能のストレージシステムを構成することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】本発明の原理構成を示す図である。
【図２】実施例の構成を示す図である。
【図３】実施例のテーブルの構成例を示す図である。
【図４】従来例の説明図である。
【発明を実施するための形態】
【００２０】
図２は実施例の構成，図３に実施例のテーブルの構成例を示す。
【００２１】
図２において，１０はアドレス変換部，１１はデータアドレス変換テーブル，１２はデータアクセス頻度計測部，１３はデータアクセス頻度判定部，１４はデータアクセス頻度テーブル，２０はデータブロック移動部，３０は一時記憶装置，４０は性能検出部，４１は分類部，５０は装置アクセス頻度計測部，５１は装置アクセス頻度判定部，５２は装置アクセス頻度テーブル，６０は装置稼働制御部，７は複数のハードディスクからなる記憶装置，７ａは高性能（高速）のハードディスクグループ，７ｂは中性能（中速）のハードディスクグループ，７ｃは低性能（低速）のハードディスクグループである。なお，図２の符号１０〜１２の各部は上記図１のデータアクセス頻度検出手段１に対応し，図２の符号２０は図１のデータ移動手段２に対応し，図２の符号３０は図１の一時記憶装置３に対応し，図２の符号４０，４１は図１の性能検出手段４に対応し，図２の５０〜５２の各部は図１の装置アクセス頻度判定手段５に対応し，図２の符号６０は図１の装置稼働制御手段６に対応する。
【００２２】
上位（ＣＰＵ）からハードディスクへのデータアクセスが発生すると，アドレス変換部１０はデータアドレス変換テーブル１１を参照して，論理アドレスを記憶装置７内のどのハードディスクのどの位置であるかを表すアドレス（物理アドレス）に変換する。データアドレス変換テーブル１１はアドレス変換部１０により変換された変換元のアドレスと変換後のアドレスの対応を記憶する。変換されたアドレスは記憶装置７内の指定されたハードディスクに供給されると，該当するハードディスクの電源が入っている場合に指定されたアドレスにアクセスする。データアクセス頻度計測部１２は記憶装置７にアクセスが発生する毎にどのデータブロックにアクセスしたか識別し，データアクセス頻度テーブル１４の該当するデータブロックのアクセス回数を更新する。図３のＡ．にデータアクセス頻度テーブルの構成例を示し，各データブロック１，２，３，…ｎに対応してそれぞれのある期間におけるアクセス回数が書き込まれている。なお，１つのデータブロックの長さは，例えば，ハードディスクの１セクタ（約５１２バイト）または４ＫＢ（キロバイト）程度とすることができる。
【００２３】
データアクセス頻度判定部１３は，一定周期または決められた時間，または任意の時間にデータアクセス頻度テーブル１４に設定されているデータブロック毎のアクセス回数（頻度）を調べて，予め指定された下限値より低いか，あるいは予め指定された上限値より高いデータブロックを判定する。このデータアクセス頻度判定部１３により上記の下限値を下回ったデータブロックであると判定されると，データブロック移動部２０は，そのデータブロックをより性能の低いハードディスクグループのハードディスクに移動させ，データアドレス変換テーブル１１の内容を更新する。具体的には，高性能のハードディスクグループ７ａに格納されていたデータブロックが下限値を下回った場合は，そのデータブロックを中性能のハードディスクグループ７ｂの一つに移動させる。但し，低性能のハードディスクグループ７ｃのハードディスクに格納されたデータブロックが下限値を下回った場合には移動させない。
【００２４】
また，記憶装置７の中の各個別の装置についてある大きさのデータの読み出しに要する時間を計測する等により各ハードディスクの性能値を性能検出部４０により検出し，その性能値に応じて分類部４１によりグループ分けする。分類方法としては，例えば，性能検出部４０により検出されたハードディスクの性能値をすべて比較し，最も近いものを一つのグループとして統合する処理を指定されたグループ数になるまで繰り返すことにより行う。この実施例では，各ハードディスクを高性能，中性能，低性能の何れかに分類付けて３つのハードディスクグループ７ａ〜７ｃが形成される。
【００２５】
データアクセス頻度判定部１３により上記の上限値を上回ったデータブロックが検出されると，データブロック移動部２０は，そのデータブロックを現在のハードディスクグループより性能の高いハードディスクグループのハードディスクに移動させ，データアドレス変換テーブル１１の内容を更新する。具体的には，中性能のハードディスクグループ７ｂに格納されていたデータブロックが上限値を上回った場合は，そのデータブロックを高性能のハードディスクグループ７ａに移動させる。但し，高性能のハードディスクグループ７ａのハードディスクに格納されたデータブロックが上限値を上回った場合には移動させない。
【００２６】
データブロック移動部２０により高性能のハードディスクグループ７ａから中性能のハードディスクグループ７ｂのハードディスクに移動したデータブロックまたは，中性能のハードディスクグループ７ｂから低性能のハードディスクグループ７ｃに移動したデータブロックについては，移動を行った時に一時記憶装置３０にそのデータブロックを記憶する。この一時記憶装置３０は，低い性能のハードディスクグループに移動したデータブロックに対するアクセスが発生した時，低い性能のハードディスクにアクセスすることなくこの一時記憶装置３０にアクセスすることで高速に処理を行うことができる。但し，一時記憶装置３０の記憶容量が一定量に制限されるため，その内容は一定期間だけ保持されて，順次更新される。なお，低性能のハードディスクグループから高い性能のハードディスクグループへ移動したデータブロックも一時記憶装置３０に記憶してもよい。
【００２７】
一方，装置アクセス頻度計測部５０は記憶装置７に含まれるハードディスク毎のアクセス頻度を計測し，アドレス変換部１０によりアクセスが行われるハードディスクを識別して，どのハードディスクにアクセスしたかに応じて装置アクセス頻度テーブル５２の各ハードディスクに対応したアクセス回数を更新する。
【００２８】
装置アクセス頻度テーブルの構成例が図３のＢ．に示され，各ハードディスク（ＨＤで表示）番号別にそのハードディスクへのアクセス回数が格納されており，このアクセス回数はアクセス動作が行われる毎に更新される。装置アクセス頻度判定部５１はこの装置アクセス頻度テーブル５２から，予め指定された下限値以下のアクセス頻度を持つハードディスクを検出するか，既に省電力状態（モータの駆動を停止した状態）の装置にアクセスされたかを検出する。装置稼働制御部６０は，装置アクセス頻度判定部５１により，アクセス頻度が上記下限値以下になったハードディスクを検出すると，そのハードディスクを省電力状態に移行させ，既に省電力状態のハードディスクへのアクセスが発生した場合（アドレス変換部１０からのアクセスを検出した場合）は，そのハードディスクを通常状態（稼働状態）にする。
【００２９】
このようにして，記憶装置７の各ハードディスクについて頻度に応じて省電力状態か，通常状態にすることで電力消費を低減できる。
【００３０】
この実施例では，記憶装置７のハードディスクは高性能，中性能，低性能の３グループに分類しているが，これ以外の数に分類することができる。
【００３１】
（付記１）大容量の記憶装置を複数備えたストレージシステムにおいて，複数の各記憶装置のデータ転送時間を検出して転送時間に対応した性能別の複数のグループに分類する性能検出手段と，記憶装置へアクセスが行われたデータブロック別にアクセス頻度を調査するデータアクセス頻度検出手段と，前記データアクセス頻度検出手段によりデータアクセス頻度が予め指定した上限を上回るデータブロックを高性能のグループの記憶装置に移動し，予め指定した下限を下回るデータブロックを低性能のグループの記憶装置に移動する移動部とを備えることを特徴とするストレージシステム。
【００３２】
（付記２）付記１において，前記データアクセス頻度検出手段は，各データブロック別にアクセスが行われる毎に更新される頻度を保持するデータアクセス頻度テーブルを備えることを特徴とするストレージシステム。
【００３３】
（付記３）付記１において，前記移動部により性能の異なるグループの記憶装置の間で移動を行ったデータブロックを記憶する高速動作を行う一時記憶装置を設け，アクセスの対象となるデータブロックが前記一時記憶装置に格納されていると当該一時記憶装置にアクセスすることを特徴とするストレージシステム。
【００３４】
（付記４）付記３において，前記移動部による移動を行ったデータブロックについて移動後のアドレスに変換を行うためのアドレス変換テーブルの更新を行うことを特徴とするストレージシステム。
【００３５】
（付記５）付記１において，各記憶装置別にアクセス頻度を検出して判定する装置アクセス頻度判定手段を設け，前記装置別のアクセス頻度が予め指定した下限を下回る場合はその記憶装置を省電力状態に設定し，省電力状態に設定した記憶装置へのアクセスが発生するとその記憶装置を通常状態に設定する装置稼働制御手段を設けたことを特徴とするストレージシステム。
【００３６】
（付記６）付記５において，前記装置アクセス頻度判定手段は，各記憶装置別にアクセスが行われる毎に更新される頻度を保持する装置アクセス頻度テーブルを備えることを特徴とするストレージシステム。
【符号の説明】
【００３７】
１    データアクセス頻度検出手段
２    データ移動手段
３    一時記憶装置
４    性能検出手段
５    装置アクセス頻度判定手段
６    装置稼働制御手段
７    記憶装置
７−１〜７−ｎ    個別の記憶装置
【図１】
0005131373.tif 000002
【図２】
0005131373.tif 000003
【図３】
0005131373.tif 000004
【図４】
0005131373.tif 000005