特許第6978087号(P6978087)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ NECプラットフォームズ株式会社の特許一覧

特許6978087ストレージ制御装置、制御方法及びプログラム
<>
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000002
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000003
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000004
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000005
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000006
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000007
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000008
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000009
  • 特許6978087-ストレージ制御装置、制御方法及びプログラム 図000010
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6978087
(24)【登録日】2021年11月15日
(45)【発行日】2021年12月8日
(54)【発明の名称】ストレージ制御装置、制御方法及びプログラム
(51)【国際特許分類】
   G06F 3/06 20060101AFI20211125BHJP
   G06F 16/185 20190101ALI20211125BHJP
   G06F 1/32 20190101ALI20211125BHJP
【FI】
   G06F3/06
   G06F3/06 301Z
   G06F3/06 304N
   G06F16/185
   G06F3/06 304F
   G06F1/32
【請求項の数】10
【全頁数】18
(21)【出願番号】特願2019-59187(P2019-59187)
(22)【出願日】2019年3月26日
(65)【公開番号】特開2020-160769(P2020-160769A)
(43)【公開日】2020年10月1日
【審査請求日】2020年7月7日
(73)【特許権者】
【識別番号】000227205
【氏名又は名称】NECプラットフォームズ株式会社
(74)【代理人】
【識別番号】100106909
【弁理士】
【氏名又は名称】棚井 澄雄
(74)【代理人】
【識別番号】100134544
【弁理士】
【氏名又は名称】森 隆一郎
(74)【代理人】
【識別番号】100149548
【弁理士】
【氏名又は名称】松沼 泰史
(74)【代理人】
【識別番号】100162868
【弁理士】
【氏名又は名称】伊藤 英輔
(72)【発明者】
【氏名】根岸 邦尚
(72)【発明者】
【氏名】中島 真
(72)【発明者】
【氏名】田子 顕
(72)【発明者】
【氏名】早川 裕貴
(72)【発明者】
【氏名】松井 康尚
(72)【発明者】
【氏名】杉原 充将
【審査官】 吉田 歩
(56)【参考文献】
【文献】 特表2012−516476(JP,A)
【文献】 特開2013−210744(JP,A)
【文献】 特開2018−151815(JP,A)
【文献】 特開2008−003719(JP,A)
【文献】 米国特許出願公開第2013/0290598(US,A1)
【文献】 米国特許出願公開第2007/0067559(US,A1)
【文献】 米国特許出願公開第2013/0198468(US,A1)
【文献】 特開2007−164650(JP,A)
【文献】 特開2013−097635(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/06
G06F 16/185
(57)【特許請求の範囲】
【請求項1】
一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージに記憶させるデータのデータ配置を決定する決定部と、
前記決定部が決定した前記データ配置に基づいて、前記データの再配置を行う制御部と、
を備えるストレージ制御装置。
【請求項2】
前記決定部は、前記一次ストレージおよび前記二次ストレージの消費電力量の合計が最小となるように、前記データ配置を決定する
請求項1に記載のストレージ制御装置。
【請求項3】
前記データの再配置により、前記複数の論理ボリュームのいずれかが記憶するデータが無くなった場合に、前記制御部は、前記複数の論理ボリュームのいずれかを停止させる
請求項1または2に記載のストレージ制御装置。
【請求項4】
前記一次ストレージおよび前記二次ストレージが使用している消費電力量の合計が、前記消費電力量設定値よりも大きい場合には、前記制御部は、前記複数の論理ボリュームから、前記少なくとも一つの論理ボリュームを減少させる
請求項1から3のいずれかに記載のストレージ制御装置。
【請求項5】
前記一次ストレージおよび前記二次ストレージが使用している消費電力量の合計が、前記消費電力量設定値よりも小さい場合には、前記制御部は、前記複数の論理ボリュームから、前記少なくとも一つの論理ボリュームを増加させる
請求項1から3のいずれかに記載のストレージ制御装置。
【請求項6】
前記決定部は、前記データ配置の決定を、前記一次ストレージを停止させることなく行う
請求項1から5のいずれかに記載のストレージ制御装置。
【請求項7】
前記決定部は、前記複数の論理ボリュームの少なくとも一つを増減させたと仮定した場合の前記一次ストレージの第1の消費電力量と、前記二次ストレージの第2の消費電力量との関係に基づいて、前記データ配置を決定する
請求項1から6のいずれかに記載のストレージ制御装置。
【請求項8】
前記決定部は、前記第1の消費電力量と、前記第2の消費電力量を、定期的に更新する
請求項7に記載のストレージ制御装置。
【請求項9】
ストレージ制御装置の決定部が、一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージに記憶させるデータのデータ配置を決定し、
前記ストレージ制御装置の制御部が、決定した前記データ配置に基づいて、前記データの再配置を行う
制御方法。
【請求項10】
ストレージ制御装置のコンピュータを、
一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージに記憶させるデータのデータ配置を決定する決定手段、
前記決定手段が決定した前記データ配置に基づいて、前記データの再配置を行う制御手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ストレージ制御装置、制御方法及びプログラムに関する。
【背景技術】
【0002】
階層型ストレージ管理(HSM:Hierarchical Storage Management)を行うため、ストレージ装置内のデータの最適な配置を実現する方法として、特許文献1が知られている。特許文献1は、一定時間、アクセスされないデータであって、使用頻度の低いデータを、一次ストレージから、二次ストレージに、移動させることについて開示している。一次ストレージとしては、アクセス速度が高速であり、高価なディスクが用いられるRAID(Redundant Arrays of Inexpensive Disks)などが用いられる。また、二次ストレージとしては、アクセス速度は低速であるものの、安価なディスクが用いられるRAIDや、テープなどが用いられる。
【0003】
また、特許文献2は、単位容量あたりのデータを保存しておくために必要な消費電力量に基づいて、データの配置及び格納場所を判定し、一次ストレージと二次ストレージの最適な場所にデータを移動させて再配置することについて開示している。これにより、特許文献2では、消費電力を低くすることにより、ランニングコストを減少させている。
【0004】
また、特許文献3は、データを、所定のルールに基づき、第1のハードディスクから第2のハードディスクに移動させることにより、第1のハードディスクのアクセス頻度を低下させ、第1のハードディスクを停止することについて開示している。
【0005】
また、特許文献4は、情報処理システムを構成する複数の情報処理装置に割り当てられた処理の負荷に応じて、情報処理装置を適切に選択することにより、情報処理システムの消費電力を削減することについて開示している。
【0006】
また、特許文献5は、データを保存している複数のストレージの電力使用量に基づいて、データを保存する場所を、移動させることについて開示している。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2007−272721号公報
【特許文献2】特開2018−151815号公報
【特許文献3】特開2007−219703号公報
【特許文献4】特許第4724730号公報
【特許文献5】特開2011−210024号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかし、特許文献1〜5のいずれにおいても、指定された消費電力量に基づいて、一次ストレージ及び二次ストレージが使用する消費電力量を制御することはできなかった。
【0009】
そこで、この発明は、上述の課題を解決するストレージ制御装置、制御方法及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【0010】
本発明の第1の態様によれば、ストレージ制御装置は、
一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージが記憶するデータのデータ配置を決定する決定部と、
前記決定部が決定した前記データ配置に基づいて、前記データの再配置を行う制御部と、
を備える。
【0011】
また、本発明の第2の態様によれば、ストレージの制御方法は、
ストレージ制御装置の決定部が、一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージに記憶させるデータのデータ配置を決定し、
前記ストレージ制御装置の制御部が、決定した前記データ配置に基づいて、前記データの再配置を行う。
【0012】
また、本発明の第3の態様によれば、プログラムは、
ストレージ制御装置のコンピュータを、
一次ストレージおよび二次ストレージが使用可能な消費電力量の合計を示す消費電力量設定値に基づいて、前記一次ストレージが有する複数の論理ボリュームの少なくとも一つを増減させたと仮定して、前記一次ストレージおよび前記二次ストレージに記憶させるデータのデータ配置を決定する決定手段、
前記決定手段が決定した前記データ配置に基づいて、前記データの再配置を行う制御手段、
として機能させる。
【発明の効果】
【0013】
本発明によれば、指定された消費電力量に基づいて、一次ストレージ及び二次ストレージが使用する消費電力量を制御することができる。
【図面の簡単な説明】
【0014】
図1】第1の実施形態によるストレージ制御システムを示すシステム構成図である。
図2】一次ストレージと二次ストレージのいずれにデータを記憶させた方が、消費電力量が有利になるかを判定するために用いられるグラフである。
図3】第1の実施形態のサーバの処理を示すフローチャートである。
図4】第1の実施形態による処理後のストレージ制御システムの状態を示すシステム構成図である。
図5】第2の実施形態によるストレージ制御システムを示すシステム構成図である。
図6】第2の実施形態のサーバの処理を示すフローチャートである。
図7】第2の実施形態による処理後のストレージ制御システムの状態を示すシステム構成図である。
図8】最小構成を有するサーバの構成を示すブロック図である。
図9】最小構成を有するサーバの処理を示すフローチャートである。
【発明を実施するための形態】
【0015】
以下、本発明の実施形態によるストレージ制御装置を、図面を参照して説明する。
【0016】
[第1の実施形態]
始めに、本発明の第1の実施形態について説明する。
図1は、第1の実施形態によるストレージ制御システム100Aを示すシステム構成図である。ストレージ制御システム100Aは、サーバ10A(ストレージ制御装置とも称する)、一次ストレージ20、二次ストレージ30、電力計40、電力計41、電源50を備えている。
サーバ10Aは、サーバ制御部11、決定部12、入力部13、記憶部14、表示部15を備えている。
【0017】
サーバ制御部11は、決定部12、入力部13、記憶部14、表示部15に接続されており、決定部12、入力部13、記憶部14、表示部15を制御する。
サーバ制御部11及び決定部12は、CPU(Central Processing Unit)などにより構成される。入力部13は、キーボードなどの入力機器により構成される。記憶部14は、メモリなどにより構成される。表示部15は、ディスプレイなどにより構成される。
サーバ制御部11は、LAN(Local Area Network)ケーブルなどのケーブル61を介して、電力計40に接続されている。また、サーバ制御部11は、インターフェースケーブルなどのケーブル63を介して、一次ストレージ制御部21に接続されている。また、サーバ制御部11は、LANケーブルなどのケーブル62を介して、電力計41に接続されている。
【0018】
一次ストレージ20は、一次ストレージ制御部21、論理ボリューム201、・・・、210を備えている。一次ストレージ制御部21は、論理ボリューム201、・・・、210に接続されている。一次ストレージ制御部21は、論理ボリューム201、・・・、210にデータを書き込んだり、論理ボリューム201、・・・、210からデータを読み出したりする。なお、論理ボリュームは、物理的に異なる複数のディスクの記憶領域を組み合わせることにより、1つの連続した記憶領域として用いるために設定される。
なお、ここでは、一次ストレージ20が、10個の論理ボリューム201、・・・、210により構成される場合について説明しているが、それ以外の個数の論理ボリュームにより、一次ストレージ20を構成するようにしても良い。
一次ストレージ20は、ケーブル63を介して、サーバ制御部11に接続されている。また、一次ストレージ20は、ケーブル65を介して、電力計40に接続されている。
【0019】
二次ストレージ30は、テープライブラリ装置などであり、二次ストレージ制御部31、テープドライブ32、テープメディア33を備えている。二次ストレージ制御部31は、テープドライブ32に接続されている。二次ストレージ制御部31は、テープドライブ32を制御することにより、テープメディア33に、データを書き込んだり、テープメディア33からデータを読み出したりする。
【0020】
電力計40は、ケーブル65を介して、一次ストレージ制御部21に接続されている。また、電力計40は、ケーブル61を介して、サーバ制御部11に接続されている。また、電力計40は、ケーブル67を介して、電源50に接続されている。
電力計40は、電源50からの電力を使用して、一次ストレージ20を駆動するために使用されている消費電力量P(D)を測定し、測定結果を、サーバ制御部11に送信する。
【0021】
電力計41は、ケーブル66を介して、二次ストレージ制御部31に接続されている。また、電力計41は、ケーブル62を介して、サーバ制御部11に接続されている。また、電力計41は、ケーブル68を介して、電源50に接続されている。
電力計41は、電源50からの電力を使用して、二次ストレージ30を駆動するために使用されている消費電力量P(T)を測定し、測定結果を、サーバ制御部11に送信する。
【0022】
サーバ制御部11は、一次ストレージ20を構成する10個の論理ボリューム201、・・・、210の構成を変更する。例えば、サーバ制御部11は、10個の論理ボリュームで構成されている一次ストレージ20を、9個の論理ボリュームで構成されるように変更する。
決定部12は、一次ストレージ20を構成する10個の論理ボリューム201、・・・、210の構成を変更するか否かについての判定を行う。決定部12は、電力計40が測定した一次ストレージ20の消費電力量P(D)と、電力計41が測定した二次ストレージ30の消費電力量P(T)の合計である合計消費電力量Psumが、消費電力量設定値P1以下であるか否かについて判定する。決定部12は、判定結果を、サーバ制御部11に出力する。
サーバ制御部11は、決定部12の判定結果に基づき、一次ストレージ制御部21に、論理ボリューム201、・・・、210の構成を変更するか否かについて指示する。
【0023】
なお、サーバ10Aから、一次ストレージ20に、データアクセスができるようにするために、一次ストレージ20は、サーバ10Aで用いられているOS(Operating System)でサポートされたファイルシステムで構成されることが好ましい。ただし、OSでサポートされたファイルシステム以外のファイルシステムを用いることも可能である。
また、サーバ10Aから、二次ストレージ30に、データアクセスができるようにするために、二次ストレージ30は、LTFS(Linear Tape File System)で構成されることが好ましい。ただし、LTFS以外のファイルシステムを用いることも可能である。
【0024】
ここで、サーバ10Aの記憶部14が記憶するデータについて説明する。
記憶部14は、図2に示すグラフに関するデータを記憶する。図2において、横軸は、一次ストレージ20及び二次ストレージ30が記憶するデータ量U[ギガバイト]を示している。また、図2において、縦軸は、一次ストレージ20及び二次ストレージ30が記憶するデータが、外部からアクセスされる平均的な時間間隔であるデータアクセス間隔T(D)[時間]を示している。つまり、図2の縦軸に示されている数値10、100、1000は、それぞれ、10時間、100時間、1000時間を示している。図2に示される曲線L1は、一次ストレージ20の消費電力量P(D)と、二次ストレージ30の消費電力量P(T)が一致する条件を示している。
例えば、図2のグラフにおいて、データアクセス間隔T(D)とデータ量Uとにより定まる点が、曲線L1よりも上側の領域R1に位置する場合には、一次ストレージ20よりも二次ストレージ30にデータを保存した方が、一次ストレージ20及び二次ストレージ30の合計消費電力量が有利となる。一方、図2のグラフにおいて、データアクセス間隔T(D)とデータ量Uとにより定まる点が、曲線L1よりも下側の領域R2に位置する場合には、二次ストレージ30よりも一次ストレージ20にデータを保存した方が、一次ストレージ20及び二次ストレージ30の合計消費電力量が有利となる。
【0025】
サーバ制御部11は、後述の式(1)〜(5)に、数値を代入することにより、図2の曲線L1を求める。後述の式(1)〜(5)に代入される数値は、一次ストレージ20や二次ストレージ30に固有の値である。そのため、本実施形態によるストレージ制御システム100Aでは、これらの数値を予め求めて、記憶部14に記憶させておく。
ただし、一次ストレージ20の消費電力量P(D)については、電力計40で測定した電力が使用される。また、二次ストレージ30の消費電力量P(T)については、電力計41で測定した電力が使用される。
【0026】
ここでは、一例として、一次ストレージ20の消費電力量P(D)を、1000[ワット]とする。また、一次ストレージ20の実効容量S(D)を、320000[ギガバイト]とする。一次ストレージ20としてRAID6の構成を用い、4000[ギガバイト]のHDDによるディスクを使用し、8ディスクにより1論理ボリュームを構成する。RAID6は、2種類のパリティを異なるディスクに配置することにより、一次ストレージ20内の2台のディスクの故障しても、正常に稼働することができるようにしたシステムである。RAID6の構成を用いるため、一次ストレージ20は、パリティディスクとして2台のディスクが追加され、計10台のディスクで構成される。1論理ボリュームは、32000[ギガバイト]である。ここでは、HDD(Hard Disk Drive)を100ディスク用いて、10論理ボリュームにより構成する。
【0027】
LTO(Linear Tape−Open)7のテープメディア33の1巻の容量は6000[ギガバイト]である。二次ストレージ30には、テープメディア33を、30巻格納できる。そのため、二次ストレージ30の実効容量S(T)は、180000[ギガバイト]である。
【0028】
なお、サーバ制御部11は、以下の式(1)を用いることにより、図2の曲線L1を求める。
【0029】
T(D) ≧ {3600×Ph(Tmove)+P(Tread)/V(Tread)×U×U}/{(P(Dread)−P(Twait))×U} ・・・(1)
【0030】
なお、上記式(1)に含まれるパラメータは、それぞれ以下のように定義される。
T(D):ディスクデータアクセス間隔時間[秒]
Ph(Tmove):テープメディア33をテープドライブ32のモーターで位置づけるための消費電力[ワット]
P(Tread):テープによる単位容量のリードに必要な消費電力[ワット/ギガバイト]
V(Tread):テープドライブ32の転送速度[ギガバイト/秒]
U:データ量[ギガバイト]
P(Dread):ディスクによる単位データ容量のリードに必要な消費電力[ワット/ギガバイト]
P(Twait):単位容量あたりの二次ストレージ30の待機に必要な消費電力[ワット/ギガバイト]
【0031】
なお、上記式(1)に含まれるパラメータPh(Tmove)は、以下の式(2)のように表される。
【0032】
Ph(Tmove)=
P(Tmove_acc)×T(Tmove_acc)/3600×2+
P(Tmove_drive_load)×T(Tmove_drive_load)/3600+
P(Tmove_drive_locate)×T(Tmove_drive_locate)/3600+
P(Tmove_drive_rewind)×T(Tmove_drive_rewind)/3600+
P(Tmove_drive_unload)×T(Tmove_drive_unload)/3600[ワット・時] ・・・(2)
【0033】
なお、上記式(2)に含まれるパラメータは、それぞれ以下のように定義される。
P(Tmove_acc):テープメディア33を移動させる時の消費電力[ワット]
T(Tmove_acc):テープメディア33を搬送する時間[秒]
P(Tmove_drive_load):テープドライブ32にテープメディア33をロードさせる時の消費電力[ワット]
T(Tmove_drive_load):ロードに掛かる時間[秒]
P(Tmove_drive_locate):テープドライブ32で、テープメディア33を位置づけるときの消費電力[ワット]
T(Tmove_drive_locate):位置づけに掛かる時間[秒]
P(Tmove_drive_rewind):ロード処理後に、テープメディア33のテープを巻き戻す時の消費電力[ワット]
T(Tmove_drive_rewind):巻き戻すのに掛かる時間[秒]
P(Tmove_drive_unload):テープメディア33をテープドライブ32から取り出す時の消費電力[ワット]
T(Tmove_drive_unload):テープメディア33をテープドライブ32から取り出すのに掛かる時間[秒]
【0034】
なお、上記式(1)に含まれるパラメータP(Tread)は、以下の式(3)のように表される。
【0035】
P(Tread)=P(Tr)/S(T)[ワット/ギガバイト] ・・・(3)
【0036】
なお、上記式(3)に含まれるパラメータは、それぞれ以下のように定義される。
P(Tr):テープドライブ32によるリード時の消費電力[ワット]
S(T):二次ストレージ30の実効容量[ギガバイト]
【0037】
なお、上記式(1)に含まれるパラメータP(Dread)は、以下の式(4)のように表される。
【0038】
P(Dread)=P(D)/S(D)[ワット/ギガバイト] ・・・(4)
【0039】
なお、上記式(4)に含まれるパラメータは、それぞれ以下のように定義される。
P(D):一次ストレージ20の消費電力[ワット]
S(D):一次ストレージ20の実効容量[ギガバイト]
なお、本実施形態では、パラメータS(D)として、論理ボリューム(例えば、図1の論理ボリューム210)を1つ停止させたと仮定した場合の実行容量を用いる。
【0040】
なお、上記式(1)に含まれるパラメータP(Twait)は、以下の式(5)のように表される。
【0041】
P(Twait)=P(Tw)/S(T)[ワット/ギガバイト] ・・・(5)
【0042】
なお、上記式(5)に含まれるパラメータは、以下のように定義される。
P(Tw):二次ストレージ30の待機電力[ワット]
【0043】
なお、上述の式において、パラメータP(D)、S(D)、P(Tmove_acc)、T(Tmove_acc)、P(Tmove_drive_load)、T(Tmove_drive_load)、P(Tmove_drive_locate)、T(Tmove_drive_locate)、P(Tmove_drive_rewind)、T(Tmove_drive_rewind)、P(Tmove_drive_unload)、T(Tmove_drive_unload)、V(Tread)、P(Tr)、P(Tw)、S(T)については、予め定義する必要がある。
一方、パラメータS(D)、S(T)は、ストレージ制御システム100Aの構築時に定まる。ただし、パラメータS(D)、S(T)は、一次ストレージ20の構成を変更すると変化する。
【0044】
パラメータT(Tmove_acc)、T(Tmove_drive_load)、T(Tmove_drive_locate)、T(Tmove_drive_rewind)、T(Tmove_drive_unload)は、テープメディア33をテープドライブ32に搬送するアクセッサの走行距離やテープ長から想定される平均動作時間に基づいて事前に設定される。
【0045】
ここでは、一例として、パラメータT(Tmove_acc)を、37[秒]とする。
また、パラメータT(Tmove_drive_load)を、17[秒]とする。
また、パラメータT(Tmove_drive_locate)を、63[秒]とする。
また、パラメータT(Tmove_drive_rewind)を、63[秒]とする。
また、パラメータ(Tmove_drive_unload)を、17[秒]とする。
【0046】
パラメータP(D)、P(Tmove_acc)、P(Tmove_drive_load)、P(Tmove_drive_locate)、P(Tmove_drive_rewind)、P(Tmove_drive_unload)、P(Tr)、P(Tw)は、ストレージ制御システム100Aの運用中も動的に値が変化していく。そのため、恒久的に、事前に定義したパラメータを使用するのではなく、一次ストレージ20及び二次ストレージ30の消費電力量を定期的に測定し、パラメータを定期的に更新することが好ましい。
【0047】
例えば、二次ストレージ30に接続された電力計41により、二次ストレージ30の消費電力量P(T)を測定する。また、サーバ10Aと電力計41をケーブル62で接続し、電力計41で測定した消費電力量P(T)を測定し、サーバ10Aの記憶部14に記録する。
二次ストレージ30は、動作モードにより電力消費する構成物が異なるため、消費電力量P(T)も動作モードに応じて異なる。そのため、電力計41で測定した消費電力量P(T)の測定を行うと同時に、サーバ10Aと二次ストレージ30の間をケーブル62で接続し、二次ストレージ30の動作モードを確認し、各動作モードでの消費電力量のリストをサーバ10Aのサーバ制御部11で作成して、それぞれの動作モードの平均値を算出するようにしても良い。
【0048】
例えば、パラメータP(Tmove_acc)、P(Tmove_drive_load)、P(Tmove_drive_locate)、P(Tmove_drive_rewind)、P(Tmove_drive_unload)、P(Tr)、P(Tw)は、それぞれ以下のようになる。
つまり、パラメータP(Tmove_acc)は、44[ワット]となる。
また、パラメータP(Tmove_drive_load)は、69[ワット]となる。
また、パラメータP(Tmove_drive_locate)は、26.5[ワット]となる。
また、パラメータP(Tmove_drive_rewind)は、26.5[ワット]となる。
また、パラメータP(Tmove_drive_unload)は、69[ワット]となる。
また、パラメータP(Tr)は、32[ワット]となる。
また、パラメータP(Tw)は、19[ワット]となる。
【0049】
次に、第1の実施形態のサーバ10Aの処理について説明する。
図3は、第1の実施形態のサーバ10Aの処理を示すフローチャートである。
【0050】
表示部15は、一次ストレージ20と二次ストレージ30で使用される消費電力量設定値P1の入力を、ストレージ制御システム100Aの管理者に対して要求するメッセージを、画面に表示する。入力部13は、管理者が入力する消費電力量設定値P1を取得する(ステップS101)。ここでは、消費電力量設定値P1が、800[ワット]の場合について説明する。
サーバ制御部11は、電力計40で測定される一次ストレージ20の消費電力量P(D)と、電力計41で測定される二次ストレージ30の消費電力量P(T)を取得する。そして、サーバ制御部11は、消費電力量P(D)と、消費電力量P(T)の合計である合計消費電力量Psumを算出する(ステップS102)。
なお、ここでは、合計消費電力量Psumが、1000[ワット]の場合について説明する。つまり、図3のフローチャートでは、1000[ワット]の合計消費電力量Psumを、800[ワット]の消費電力量設定値P1に基づいて、20%削減する場合について説明する。
【0051】
次に、サーバ制御部11は、合計消費電力量Psumが、消費電力量設定値P1以下であるか否かについて判定する(ステップS103)。
ここでは、合計消費電力量Psum(=1000[ワット])が、消費電力量設定値P1(=800[ワット])よりも大きいため、サーバ制御部11は、ステップS103でNOと判定し、ステップS104の処理を行う。なお、もしも、合計消費電力量Psumが、消費電力量設定値P1以下である場合には、サーバ制御部11は、ステップS103でYESと判定し、図3に示すフローチャートによる処理を終了する。
【0052】
ステップS103でNOと判定された場合には、サーバ制御部11は、一次ストレージ20の複数の論理ボリューム201、・・・、210の一つである論理ボリューム210を停止させたと仮定した場合の一次ストレージの実効容量S(D)を算出する(ステップS104)。なお、この実効容量S(D)は、上述の式(4)で説明したパラメータである。サーバ制御部11は、式(4)で求められるパラメータP(Dread)を、上述の式(1)で用いる。そして、サーバ制御部11は、式(1)を用いて、図2に示される曲線L1を求め、記憶部14に記録する。
なお、10個の論理ボリューム201、・・・、210のうち、1つの論理ボリュームを停止させると仮定した場合には、サーバ制御部11は、例えば、10個の論理ボリューム201、・・・、210の実効容量(=32000[ギガバイト]×10個)から、論理ボリューム210の分の実効容量(=32000[ギガバイト])を減算した容量(=288000[ギガバイト])を、実効容量S(D)として用いる。
【0053】
決定部12は、一次ストレージ20の複数の論理ボリューム201、・・・、210の一つである論理ボリューム210を、停止させたと仮定した場合の合計消費電力量Psum’が最小となるデータ配置を決定する(ステップS105)。例えば、決定部12は、一次ストレージ20及び二次ストレージ30へのデータアクセス間隔T(D)と、一次ストレージ20及び二次ストレージ30に記憶されるデータ量Uで定まる点が、図2のグラフの領域R1にあるか、領域R2にあるかに基づいて、データを、一次ストレージ20から二次ストレージ30に移動させるか、二次ストレージ30から一次ストレージ20に移動させるかを決定する。
【0054】
例えば、決定部12は、一次ストレージ20及び二次ストレージ30へのデータアクセス間隔T(D)と、一次ストレージ20及び二次ストレージ30に記憶されるデータ量Uで定まる点が、図2のグラフの領域R1と領域R2のいずれにあるかを決定する。データアクセス間隔T(D)とデータ量Uで定まる点が、領域R1にある場合には、一次ストレージ20よりも二次ストレージ30にデータを記憶させる方が、消費電力量の観点から有利である。そのため、決定部12は、一次ストレージ20の論理ボリューム210が記憶しているデータを、論理ボリューム201、・・・、209よりも優先的に、二次ストレージ30に、できるだけ移動させるように、一次ストレージ20及び二次ストレージ30が記憶するデータのデータ配置を決定する。
【0055】
一方、データアクセス間隔T(D)とデータ量Uで定まる点が、領域R2にある場合には、二次ストレージ30よりも一次ストレージ20にデータを記憶させる方が、消費電力量の観点から有利である。そのため、決定部12は、二次ストレージ30のテープメディア33が記憶しているデータ、及び、論理ボリューム210が記憶しているデータを、一次ストレージ20の論理ボリューム210以外の論理ボリューム201、・・・、209に、できるだけ移動させるように、一次ストレージ20及び二次ストレージ30が記憶するデータのデータ配置を決定する。
【0056】
サーバ制御部11は、一次ストレージ20の論理ボリューム201、・・・、210の構成を変更させる(ステップS106)。具体的には、サーバ制御部11は、論理ボリューム210を停止させる指示を、一次ストレージ制御部21に送信する。この指示を受信した一次ストレージ制御部21は、論理ボリューム210を停止させる。
【0057】
その後、サーバ制御部11は、ステップS105で決定部12が決定したデータ配置に基づいて、一次ストレージ20又は二次ストレージ30に記憶されているデータの再配置を行う(ステップS107)。
なお、ここでは、サーバ制御部11が、ステップS106の処理を行った後で、ステップS107の処理を行う場合について説明したが、これに限定されるものではない。例えば、サーバ制御部11は、ステップS107の処理を先に行った後で、ステップS106の処理を行うようにしても良い。
【0058】
その後、ステップS102に進み、サーバ制御部11は、再度、一次ストレージ20及び二次ストレージ30の合計消費電力量Psumを算出する。合計消費電力量Psumが、消費電力量設定値P1(ここでは、P1=800[ワット])以下となっていれば、サーバ制御部11は、ステップS103でYESと判定し、図3のフローチャートの処理を終了する。
一方、合計消費電力量Psumが、まだ、消費電力量設定値P1よりも大きければ、サーバ制御部11は、ステップS103でNOと判定し、ステップS104〜S107の処理を繰り返す。
【0059】
図4は、第1の実施形態による処理後のストレージ制御システム100Aの状態を示すシステム構成図である。
第1の実施形態による処理前のストレージ制御システム100Aの状態を示す図1の一次ストレージ20では、10個の論理ボリューム201、・・・、210を有していた。これに対して、第1の実施形態による処理後のストレージ制御システム100Aの状態を示す図4の一次ストレージ20では、9個の論理ボリューム201、・・・、209を有している。つまり、ストレージ制御システム100Aからの消費電力削減の要求に基づき、論理ボリューム210が無くなるように、一次ストレージ20の構成が変更されている。これにより、論理ボリューム210を駆動するための消費電力が不要となるため、ストレージ制御システム100Aの消費電力を減少させることができる。
【0060】
第1の実施形態によれば、ストレージ制御システム100Aの管理者が、一次ストレージ20及び二次ストレージ30が使用する合計消費電力量Psumを減少させるために指定した消費電力量設定値P1に基づいて、一次ストレージ20及び二次ストレージ30が使用する消費電力量を減少させることができる。
また、第1の実施形態によれば、一次ストレージ20の一部の論理ボリュームを停止させたと仮定して、最適なデータ配置を求めた後で、実際に、一次ストレージ20や二次ストレージ30が記憶するデータの再配置を行うため、一次ストレージ20や二次ストレージ30の運用を停止させることなく、消費電力量を減少させることができる。
【0061】
なお、図3のフローチャートのステップS105では、決定部12が、論理ボリューム210を停止させたと仮定した場合の合計消費電力量Psum’が最小となるデータ配置を決定する場合について説明したが、これに限定されるものではない。例えば、論理ボリューム210にデータが記憶されないデータ配置がある場合には、それ以外のデータについては、更に、一次ストレージ20と二次ストレージ30の間で移動させるようなデータ配置としなくても良い。この場合、合計消費電力量Psum’を最小とすることはできない可能性はあるが、論理ボリューム210を停止させることができるため、一次ストレージ20の消費電力量を減少させることはできるからである。
【0062】
[第2の実施形態]
次に、本発明の第2の実施形態について説明する。なお、第2の実施形態が、第1の実施形態と同様の構成を有していたり、処理を行ったりする部分については、同一の符号を付して、それらの説明を省略する。
【0063】
図5は、第2の実施形態によるストレージ制御システム100Bを示すシステム構成図である。図5に示す第2の実施形態によるストレージ制御システム100Bは、図1に示す第1の実施形態によるストレージ制御システム100Aと同様の構成を有している。ただし、ストレージ制御システム100Bが備えるサーバ10B(ストレージ制御装置とも称する)は、第1の実施形態によるストレージ制御システム100Aが備えるサーバ10Aとは異なる処理を行う。そのため、以下では、サーバ10Bが行う処理について説明する。
【0064】
図5は、第2の実施形態のサーバ10Bの処理を示すフローチャートである。
表示部15は、一次ストレージ20と二次ストレージ30で使用される消費電力量設定値P2の入力を、ストレージ制御システム100Bの管理者に対して要求するメッセージを、画面に表示する。入力部13は、管理者が入力する消費電力量設定値P2を取得する(ステップS201)。ここでは、消費電力量設定値P2が、1200[ワット]の場合について説明する。
サーバ制御部11は、電力計40で測定される一次ストレージ20の消費電力量P(D)と、電力計41で測定される二次ストレージ30の消費電力量P(T)を取得する。そして、サーバ制御部11は、消費電力量P(D)と、消費電力量P(T)の合計である合計消費電力量Psumを算出する(ステップS202)。
なお、ここでは、合計消費電力量Psumが、1000[ワット]の場合について説明する。つまり、図6のフローチャートでは、1000[ワット]の合計消費電力量Psumを、1200[ワット]の消費電力量設定値P2に基づいて、20%増加する場合について説明する。
【0065】
次に、サーバ制御部11は、合計消費電力量Psumが、消費電力量設定値P2以上であるか否かについて判定する(ステップS203)。
ここでは、合計消費電力量Psum(=1000[ワット])が、消費電力量設定値P2(=1200[ワット])よりも小さいため、サーバ制御部11は、ステップS203でNOと判定し、ステップS204の処理を行う。なお、もしも、合計消費電力量Psumが、消費電力量設定値P2以上である場合には、サーバ制御部11は、ステップS203でYESと判定し、図6に示すフローチャートによる処理を終了する。
【0066】
ステップS203でNOと判定された場合には、サーバ制御部11は、一次ストレージ20の複数の論理ボリューム201、・・・、210に対して、一つの論理ボリュームを、追加したと仮定した場合の一次ストレージの実効容量S(D)を算出する(ステップS204)。なお、この実効容量S(D)は、上述の式(4)で説明したパラメータである。ただし、本実施形態では、パラメータS(D)として、論理ボリュームを1つ増加させたと仮定した場合の実行容量を用いる。
サーバ制御部11は、式(4)で求められるパラメータP(Dread)を、上述の式(1)で用いる。そして、サーバ制御部11は、式(1)を用いて、図2に示されるグラフL1を求め、記憶部14に記録する。
なお、10個の論理ボリューム201、・・・、210に対して、1つの論理ボリュームを追加すると仮定した場合には、サーバ制御部11は、例えば、10個の論理ボリューム201、・・・、210の実効容量(=32000[ギガバイト]×10個)に、1つの論理ボリュームの分の実効容量(=32000[ギガバイト])を加算した容量(=288000[ギガバイト])を、実効容量S(D)として用いる。
【0067】
決定部12は、一次ストレージ20の複数の論理ボリューム201、・・・、210に対して、一つの論理ボリュームを、追加すると仮定した場合の合計消費電力量Psum’が最小となるデータ配置を決定する(ステップS205)。例えば、決定部12は、一次ストレージ20及び二次ストレージ30へのデータアクセス間隔T(D)と、一次ストレージ20及び二次ストレージ30に記憶されるデータ量Uで定まる点が、図2のグラフの領域R1にあるか、領域R2にあるかに基づいて、データを、一次ストレージ20から二次ストレージ30に移動させるか、二次ストレージ30から一次ストレージ20に移動させるかを決定する。
【0068】
例えば、決定部12は、一次ストレージ20及び二次ストレージ30へのデータアクセス間隔T(D)と、一次ストレージ20及び二次ストレージ30に記憶されるデータ量Uで定まる点が、図2のグラフの領域R1と領域R2のいずれにあるかを決定する。データアクセス間隔T(D)とデータ量Uで定まる点が、領域R1にある場合には、一次ストレージ20よりも二次ストレージ30にデータを記憶させる方が、消費電力量の観点から有利である。そのため、決定部12は、一次ストレージ20の論理ボリューム201、・・・、210が記憶しているデータを、できるだけ、二次ストレージ30に移動させるように、一次ストレージ20及び二次ストレージ30が記憶するデータのデータ配置を決定する。
【0069】
一方、データアクセス間隔T(D)とデータ量Uで定まる点が、領域R2にある場合には、二次ストレージ30よりも一次ストレージ20にデータを記憶させる方が、消費電力量の観点から有利である。そのため、決定部12は、二次ストレージ30のテープメディア33が記憶しているデータを、一次ストレージ20の論理ボリューム201、・・・、210と、追加する1つの論理ボリュームに、できるだけ移動させるように、一次ストレージ20及び二次ストレージ30が記憶するデータのデータ配置を決定する。
【0070】
サーバ制御部11は、一次ストレージ20の論理ボリューム201、・・・、210の構成を変更させる(ステップS206)。具体的には、サーバ制御部11は、論理ボリューム210を1つ増加させる指示を、一次ストレージ制御部21に送信する。この指示を受信した一次ストレージ制御部21は、論理ボリューム210を1つ増加させる。
【0071】
その後、サーバ制御部11は、ステップS205で決定部12が決定したデータ配置に基づいて、一次ストレージ20又は二次ストレージ30に記憶されているデータの再配置を行う(ステップS207)。
なお、ここでは、サーバ制御部11が、ステップS206の処理を行った後で、ステップS207の処理を行う場合について説明したが、これに限定されるものではない。例えば、データの再配置により、新たに追加する論理ボリュームにデータが記憶されない場合には、サーバ制御部11は、ステップS207の処理を先に行った後で、ステップS206の処理を行うようにしても良い。
【0072】
その後、ステップS202に進み、サーバ制御部11は、再度、一次ストレージ20及び二次ストレージ30の合計消費電力量Psumを算出する。合計消費電力量Psumが、消費電力量設定値P2(ここでは、P2=1200[ワット])以上となっていれば、サーバ制御部11は、ステップS203でYESと判定し、図6のフローチャートの処理を終了する。
一方、合計消費電力量Psumが、まだ、消費電力量設定値P2よりも小さければ、サーバ制御部11は、ステップS203でNOと判定し、ステップS204〜S207の処理を繰り返す。
【0073】
図7は、第2の実施形態による処理後のストレージ制御システム100Bの状態を示すシステム構成図である。
第2の実施形態による処理前のストレージ制御システム100Bの状態を示す図5の一次ストレージ20では、10個の論理ボリューム201、・・・、210を有していた。これに対して、第2の実施形態による処理後のストレージ制御システム100Bの状態を示す図7の一次ストレージ20では、11個の論理ボリューム201、・・・、211を有している。つまり、ストレージ制御システム100Bからの消費電力増加の要求に基づき、論理ボリューム211を増加させるように、一次ストレージ20の構成が変更されている。これにより、論理ボリューム211を駆動するための消費電力が増加するため、管理者の要求に基づいて、ストレージ制御システム100Bの消費電力を増加させることができる。
【0074】
第2の実施形態によれば、ストレージ制御システム100Bの管理者が、一次ストレージ20及び二次ストレージ30が使用する合計消費電力量Psumを増加させるために指定した消費電力量設定値P2に基づいて、一次ストレージ20及び二次ストレージ30が使用する消費電力量を増加させることができる。
また、第2の実施形態によれば、一次ストレージ20の論理ボリュームを増加させたと仮定して、最適なデータ配置を求めた後で、実際に、一次ストレージ20や二次ストレージ30が記憶するデータの再配置を行うため、一次ストレージ20や二次ストレージ30の運用を停止させることなく、消費電力量を増加させることができる。
【0075】
図8は、最小構成を有するサーバ10C(ストレージ制御装置とも称する)の構成を示すブロック図である。サーバ10Cは、サーバ制御部11C、決定部12Cを備えている。
【0076】
図9は、サーバ10Cの処理を示すフローチャートである。
決定部12Cは、一次ストレージ20および二次ストレージ30が使用可能な消費電力量(=P(D)+P(T))を示す消費電力量設定値に基づいて、一次ストレージ20が有する複数の論理ボリューム201、・・・、210の少なくとも一つを増減させると仮定して、一次ストレージ20および二次ストレージ30に記憶させるデータのデータ配置を決定する(ステップS301)。
サーバ制御部11Cは、決定部12Cが決定したデータ配置に基づいて、データの再配置を行う(ステップS302)。
【0077】
上述のサーバ10A、10B、10Cは内部に、コンピュータシステムを有している。そして、上述した図3図6図9で示した各処理は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【0078】
なお、図1図5図8における各部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することにより・・・・・・を行ってもよい。なお、ここでいう「コンピュータシステム」とは、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータシステム」は、ホームページ提供環境(あるいは表示環境)を備えたWWWシステムも含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリ(RAM)のように、一定時間プログラムを保持しているものも含むものとする。
【0079】
また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【産業上の利用可能性】
【0080】
本発明は、指定された消費電力量に基づいて、一次ストレージ及び二次ストレージが使用する消費電力量を制御することが必要なストレージ制御装置、制御方法及びプログラムなどに適用することができる。
【符号の説明】
【0081】
10A、10B、10C・・・サーバ
11、11C・・・サーバ制御部
12、12C・・・決定部
13・・・入力部
14・・・記憶部
15・・・表示部
20・・・一次ストレージ
21・・・一次ストレージ制御部
30・・・二次ストレージ
31・・・二次ストレージ制御部
32・・・テープドライブ
33・・・テープメディア
40、41・・・電力計
50・・・電源
61〜68・・・ケーブル
71、72・・・インターフェースケーブル
100A、100B・・・ストレージ制御システム
201〜211・・・論理ボリューム
図1
図2
図3
図4
図5
図6
図7
図8
図9