JP5209591B2 - 省電力機能を有するストレージシステム - Google Patents

省電力機能を有するストレージシステム Download PDF

Info

Publication number
JP5209591B2
JP5209591B2 JP2009260616A JP2009260616A JP5209591B2 JP 5209591 B2 JP5209591 B2 JP 5209591B2 JP 2009260616 A JP2009260616 A JP 2009260616A JP 2009260616 A JP2009260616 A JP 2009260616A JP 5209591 B2 JP5209591 B2 JP 5209591B2
Authority
JP
Japan
Prior art keywords
pool
area
storage device
logical
physical storage
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.)
Expired - Fee Related
Application number
JP2009260616A
Other languages
English (en)
Other versions
JP2011107857A (ja
Inventor
明史 柳川
健志 堀内
直人 柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2009260616A priority Critical patent/JP5209591B2/ja
Priority to US12/696,212 priority patent/US20110119509A1/en
Publication of JP2011107857A publication Critical patent/JP2011107857A/ja
Application granted granted Critical
Publication of JP5209591B2 publication Critical patent/JP5209591B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0634Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0625Power saving in storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Description

本発明は、ストレージシステムの省電力に関する。
ストレージシステムの省電力に関する技術として、例えば、特許文献1及び2に開示されている技術が知られている。
特許文献1には、複数の磁気ディスク装置を有するストレージシステムが開示されている。そのストレージシステムは、複数の磁気ディスク装置のうち、一定の時間帯アクセスの無い磁気ディスク装置内の磁気ディスクをスピンダウンさせる。
特許文献2には、NAS(Network Attached Storage)分野での階層ストレージシステムが開示されている。階層ストレージシステムは、ファイルサーバに接続された第1階層ストレージ装置と、第1階層ストレージ装置に接続された第2階層ストレージ装置とを有する。第2階層ストレージ装置は、ハードディスクと、ハードディスクに基づく第2のボリュームとを有する。第1階層ストレージ装置は、ハードディスクと、ハードディスクに基づく第1のボリュームと、第2のボリュームを仮想化したボリューム(仮想ボリューム)とを有する。ファイルサーバは、仮想ボリュームを第2のディレクトリとしてマウントし、第1のボリュームを第1のディレクトリとしてマウントし、第2のディレクトリ内のファイルを第1のディレクトリへコピーする。これにより、第2のディレクトリ内のファイル(第2階層ストレージ装置内のファイル)を第2階層ストレージ装置にアクセスすることなく第1階層ストレージ装置から取得することができる。第2階層ストレージ装置が有するハードディスクのうち、アクセスされないファイルを格納しているハードディスクの電源が、OFFにされる。
特開2000−293314号公報 特開2008−293149号公報
特許文献1によれば、上位装置からのアクセスを契機に磁気ディスク装置をスピンアップさせる必要がある。このため、上位装置から頻繁にアクセスがあると、頻繁に磁気ディスク装置をスピンアップさせることになり、十分な節電効果を得ることができない。
特許文献2によれば、ファイルサーバから頻繁にアクセスがあっても、アクセス対象のファイルによっては第2階層ストレージ装置にアクセスしなくても良いので、アクセスの都度のスピンアップを生じさせないようにすることができる。しかし、特許文献2の技術を、NAS分野以外のストレージシステムに適用することは難しい。
以上の問題は、ストレージシステムが磁気ディスク装置以外の物理記憶デバイスを有する場合にもあり得る。
そこで、本発明の目的は、NAS分野のストレージシステムのみならずNAS分野以外のストレージシステムにおいても物理記憶デバイスの省電力状態を解除する頻度を減らすことにある。
ストレージシステムのコントローラが、プールの一以上のプール領域に、論理記憶デバイスの一部の論理領域を対応付ける。一部の論理領域のうちのいずれのI/O(Input/Output)の頻度も、その論理記憶デバイスの残りの論理領域のI/O頻度よりも高い。コントローラは、I/Oのとき、I/O先の論理領域に対応するプール領域がプールに存在していれば、論理記憶デバイスの基になっている第1の物理記憶デバイス群が省電力状態になっていても、その省電力状態を解除することなく、I/O先の論理領域に対応するプール領域に対してデータ要素のI/Oを行う。具体的には、例えば、論理領域に対応付けられているプール領域には、その論理領域に格納されているデータ要素と同じデータ要素が格納されているため、I/Oがリードであれば、コントローラは、リード元の論理領域に格納されているデータ要素と同じデータ要素を、リード元の論理領域に対応付けられているプール領域から読み出す。一方、I/Oがライトであれば、コントローラは、ライト先の論理領域に対応付けられているプール領域に、ライト対象のデータ要素を格納する。
ストレージシステムは、第1及び第2の物理記憶デバイス群を含んだ複数の物理記憶デバイス群を有する。各物理記憶デバイス群は、一以上の物理記憶デバイスで構成されている。物理記憶デバイスは、HDD(Hard Disk Drive)、SSD(Solid State Drive)など、どのような記憶デバイス(典型的には不揮発性の記憶デバイス)でも良い。第2の物理記憶デバイス群は、プールの基になる物理記憶デバイス群であるが、第2の物理記憶デバイス群を構成する第2の物理記憶デバイスは、所定サイズのデータ要素群を第1の物理記憶デバイスよりも少ない消費電力で記憶する物理記憶デバイスであることが好ましい。具体的には、例えば、第1の物理記憶デバイスがHDDであり、第2の物理記憶デバイスは、SSDである。
物理記憶デバイス群は、複数の物理記憶デバイスで構成されたRAIDグループであっても良いし、複数の物理記憶デバイスを有するストレージ装置(例えばディスクアレイ装置)であっても良いし、物理記憶デバイス単体であっても良い。また、コントローラは、ストレージ装置に搭載される制御装置であっても良いし、ストレージ装置にI/Oコマンドを送信する上位装置であっても良いし、下位階層のストレージ装置に接続されている上位階層のストレージ装置(例えば上位装置に接続されたストレージ装置(最上位のストレージ装置))であっても良い。
また、「論理領域に対応するプール領域」とは、論理領域に対するプール領域の対応付けが、直接的であるか間接的であるかに関わらない。直接的な対応付けの例として、論理領域に対するプール領域の対応付けがある。間接的な対応付けの例としては、仮想記憶デバイス(仮想的な論理記憶デバイス)が有する複数の仮想領域(仮想的な記憶領域)のうちの一つの仮想領域に対する論理領域とプール領域の両方の対応付けがある。この場合、I/O先の仮想領域が特定され、そのI/O先の仮想領域にプール領域が対応付けられているか否かが判断されて良い。仮想領域にプール領域が対応付けられているとは、論理領域に仮想領域を通じてプール領域が対応付けられているということである。仮想記憶デバイスは、論理記憶デバイスの容量と同じ容量を有するデバイスであっても良いし、論理記憶デバイスの容量と異なる容量を有するデバイス(例えば、Thin Provisioning技術に従う仮想的な論理ボリューム)であっても良い。
本発明によれば、NAS分野のストレージシステムのみならずNAS分野以外のストレージシステムにおいても、物理記憶デバイスの省電力状態を解除する頻度を減らすことができる。
本発明の実施例1に係るストレージシステムが適用されたディスクアレイ装置を有する計算機システムを示す。 共有メモリ004が記憶する情報及びコンピュータプログラムを示す。 ディスクアレイ装置010が提供する記憶デバイスの関係を示す。 RAIDグループ構成情報013の構成を示す。 LU(プール)構成情報014の構成を示す。 I/O監視情報015の構成を示す。 退避関係情報016の構成を示す。 I/Oコマンド処理のフローチャートである。 スピンダウン処理のフローチャートである。 スピンアップ処理のフローチャートである。 I/O先RAIDグループの各PDEVが省電力状態の場合に行われるI/O処理のフローチャートである。 I/O範囲指定画面041とI/O範囲情報画面046とを示す。 スピンダウン指示画面048を示す。 各フェーズでの各PDEVの状態を示す。 プール−LDEVがHDDの場合とSSDの場合での移行中フェーズの長さの違いを示す。 本発明の実施例2に係るストレージシステムが適用された計算機システムを示す。 本発明の実施例2での、データ要素の退避と、データ要素のI/Oとを示す。 本発明の実施例3に係るストレージシステムが適用されたディスクアレイ装置群を有する計算機システムを示す。 本発明の実施例3での、データ要素の退避と、データ要素のI/Oとを示す。 本発明の実施例4に係るスピンダウン対象決定処理のフローチャートである。
以下、図面を参照して、本発明の幾つかの実施形態を説明する。なお、以下の説明において、プログラムによって行われる処理は、実際にはそのプログラムを実行する制御部(典型的にはCPU(Central Processing Unit))によって行われる。
図1は、本発明の実施例1に係るストレージシステムが適用されたディスクアレイ装置を有する計算機システムを示す。
SAN(Storage Area Network)002に、上位装置001及びディスクアレイ装置010が接続されている。
上位装置001は、ディスクアレイ装置010の外部の装置であり、例えば、ホスト計算機、或いは、ディスクアレイ装置010とは別のディスクアレイ装置である。上位装置001は、I/Oコマンド(ライトコマンド又はリードコマンド)をディスクアレイ装置010に送信することで、ディスクアレイ装置010に対してデータの読み書きを行う。
ディスクアレイ装置010は、上位装置からI/Oコマンドを受け付ける制御装置と、制御装置に接続されている複数の物理記憶デバイス(PDEV(Physical DEVice))009とを有する。
複数のPDEV009により、後述するように、複数のRAIDグループが構成されている。RAIDグループには、RAID技術に従ってデータが格納される。複数のRAIDグループには、後述するように、HDDで構成されているRAIDグループと、SSDで構成されているRAIDグループとがある。一般に、SSDは、HDDより少ない消費電力で、所定サイズのデータを記憶することができる。
制御装置は、上位装置からのI/Oコマンドに応答して、PDEV009に対するデータのI/Oを行う。制御装置は、ホストI/F003と、共有メモリ004と、キャッシュメモリ005と、ディスク制御部008と、接続部006と、制御部007とを有する。
ホストI/F003は、上位装置001に対するインタフェース装置である。ホストI/F003が、上位装置001からI/Oコマンドを受信する。
共有メモリ004は、制御部007から参照される情報と、制御部007によって実行されるコンピュータプログラムとを記憶する。
キャッシュメモリ005は、PDEV009と上位装置001との間でやり取りされるデータを一時的に記憶する。
ディスク制御部008は、PDEV009に対するインタフェース装置である。ディスク制御部008は、PDEV009にデータを書き込んだり、PDEV009からデータを読み出したりする。
制御部007は、ホストI/F003が受信したI/Oコマンドを処理したり、HDDの電力消費状態を制御したりする。
接続部006に、キャッシュメモリ005、ホストI/F003、共有メモリ004、ディスク制御部008及び制御部007が接続されている。接続部006は、例えばスイッチであり、接続部006に接続されているデバイス同士を通信可能に接続する。
ディスクアレイ装置010に、管理装置100が接続されている。管理装置100は、例えば計算機である。ユーザは、管理装置100を利用して、ディスクアレイ装置010に所望の情報を設定することができる。その情報は、例えば共有メモリ004に設定される。
図2は、共有メモリ004が記憶する情報及びコンピュータプログラムを示す。
共有メモリ004が記憶するコンピュータプログラムとして、I/Oコマンドを処理するためのプログラムであるI/O処理プログラム011と、HDDの電力消費状態を制御するためのプログラムである電源制御プログラム012とがある。共有メモリ004が記憶する情報として、RAIDグループの構成に関する情報であるRAIDグループ構成情報013と、LU(Logical Unit)及びプールの構成に関する情報であるLU(プール)構成情報014と、I/Oの監視結果を表す情報であるI/O監視情報015と、LUの論理領域(退避元領域)とプールのプール領域(退避先領域)との対応関係に関する情報である退避関係情報016とがある。
図3は、ディスクアレイ装置010が提供する記憶デバイスの関係を示す。
記憶デバイスとして、仮想LU017、LU019、プール018、HDD024及びSSD023がある。
仮想LU017は、上位装置001に認識される仮想的なLUであり、図示しない複数の仮想領域(仮想的な記憶領域(ブロック))で構成されている。上位装置001は、I/O先を表す情報(以下、I/O先情報)を含んだI/Oコマンドをディスクアレイ装置010に送信するが、I/O先情報は、例えば、仮想LU017のID(例えばLUN(Logical Unit Number))と仮想領域のアドレス(例えばLBA(Logical Block Address))とを含む。つまり、I/Oコマンドは、ブロックレベルのI/Oコマンドであって良い。仮想LU017には、LU019とプール018が関連付けられており、仮想領域に対するデータ要素のライトとして、LU019を構成する複数の論理領域(論理的な記憶領域)021のうちのいずれかに対するライト、又は、プール018を構成する複数のプール領域(論理的な記憶領域)020のうちのいずれかに対するライトが行われる。従って、仮想LU017に格納されていると上位装置001から認識される複数のデータ要素は、LU019に格納されているデータ要素とプール018に格納されているデータ要素との集合となることがある。なお、本実施例で言う「データ要素」とは、仮想領域、論理領域及びプール領域に格納されるデータのことである。また、一つの仮想LU017に複数のLU019及び/又は複数のプール018が関連付けられていてもよい。また、図3の例によれば、LU019とプール018は、多対1で対応しているが(複数のLU019に一つのプール018が対応付けられているが)、それに代えて、1対1或いは1対多で対応してもよい。
LU019は、論理的な記憶デバイスであり、複数のHDD024で構成されているRAIDグループ(以下、HDDグループ)の記憶空間の一部又は全部である。LU019は、HDDグループを構成する二以上のHDD024に跨っている。なお、LU019の基になるPDEVとして、HDD以外のPDEV、例えばSSDが採用されてもよい。
プール018は、LU019同様の論理的な記憶デバイス(例えばLUの一種)であり、複数のSSD023で構成されているRAIDグループ(以下、SSDグループ)の記憶空間の一部又は全部である。プール018は、SSDグループを構成する二以上のSSD023に跨っている。なお、プール018の基になるPDEVとして、SSD以外のPDEV、例えばHDDが採用されても良い。しかし、プール018の基になるPDEVとしては、LU019の基になるPDEVよりも消費電力の少ないPDEV(具体的には、同じサイズのデータをより少ない消費電力で保存できるPDEV)であることが好ましい。
HDD024及びSSD023は、PDEVの一種である。HDD024は、ディスクアレイ装置010の稼働中に省電力状態とされることがある。HDD024の省電力状態とは、ディスクの回転速度が低速又はゼロの状態のことである。HDD024の省電力状態が解除されると(つまり、HDD024のディスクのスピンアップが開始されると)、やがて、HDD024は非省電力状態(稼働状態)となる。HDD024の非省電力状態とは、ディスクの回転速度が、I/Oが可能な程度に高速であることである。HDD024の省電力状態/非省電力状態の切り替えは、HDDグループ単位で行われる。HDDグループ単位とは、一例として、RAIDグループ単位が挙げられる。なお、LU019の基になるPDEVがHDD以外のPDEVの場合、省電力状態とは、電源OFFの状態であって、非省電力状態とは、電源ONの状態であってもよい。
プール018の一以上のプール領域020に、LU019の一部の論理領域021が対応付けられている。具体的には、例えば、図3に示すように、LU019内の一部の論理領域021内のデータ要素が一以上のプール020にコピーされる。
I/O処理プログラム011(図2参照)は、仮想LU017の仮想領域に対するI/Oコマンドを受けた場合、以下の(C1)〜(C6)の処理を行う。
(C1)仮想LU017に関連付けられているLU019が省電力状態(具体的には、そのLU019の基になっているHDDグループが省電力状態)であるか否かを判断する。
(C2)上記(C1)の判断の結果が否定的の場合、I/OコマンドのI/O先情報から特定される仮想領域(I/O先の仮想領域)に対応する論理領域(LU019内の論理領域)に対してデータ要素のI/Oを行う。
(C3)上記(C1)の判断の結果が肯定的の場合、I/O先の仮想領域に対応する論理領域に対応付けられているプール領域が存在するか否かを判断する。
(C4)上記(C3)での判断の結果が否定的の場合、LU019の基になっているHDDグループ(各HDD024)の省電力状態を解除し、I/O先の仮想領域に対応する論理領域に対してデータ要素のI/Oを行う。
(C5)上記(C3)での判断の結果が肯定的の場合、LU019の基になっているHDDグループの省電力状態を解除することなく、I/O先の論理領域に対応するプール領域に対してデータ要素のI/Oを行う。
(C6)上記(C4)の後、LU0の基になっているHDDグループを省電力状態にさせる。
I/O処理プログラム011は、HDDグループ(RAIDグループ)を構成する各HDDを省電力状態にしたりその省電力状態を解除したりするために、電源制御プログラム012を呼び出す。呼び出された電源制御プログラム012が、HDDグループを構成する各HDDを省電力状態にしたりその省電力状態を解除したりする。
I/O処理プログラム011は、上記(C3)の後直ちに上記(C6)を行ってもよいし((C3)の都度に(C6)を行ってもよいし)、上記(C3)をN回(Nは2以上の整数)行った場合に上記(C6)を1回行ってもよいし、HDDグループに対してI/Oが最後に発生してから一定時間経ってもそのHDDグループに対してI/Oが発生しない場合に上記(C6)を行ってもよい。
図4は、RAIDグループ構成情報013の構成を示す。
RAIDグループ構成情報013は、RAIDグループ毎に、RAID_G_ID025、RAID_G属性026、PDEV_ID027、及び、PDEV種別028を有する。
RAID_G_ID025は、RAIDグループのIDである。
RAID_G属性026は、RAIDグループの属性を表す情報であり、例えば、通常用か退避用かを示す。「通常用」とは、LU019を提供するRAIDグループであることを意味する。「退避用」とは、プール018を提供するRAIDグループであることを意味する。
PDEV_ID027は、RAIDグループを構成するPDEVのIDである。
PDEV種別028は、RAIDグループを構成するPDEVの種別を表す情報である。
図5は、LU(プール)構成情報014の構成を示す。
LU(プール)構成情報014は、論理記憶デバイス毎に、RAID_G_ID025、RAID_G_容量029、RAID_G_空容量030、LU_ID031、LU容量032、及び、プール_ID033を有する。
RAID_G_ID025は、論理記憶デバイスの基になっているRAIDグループのIDである。
RAID_G_容量029は、論理記憶デバイスの基になっているRAIDグループの容量を表す情報である。
RAID_G_空容量030は、論理記憶デバイスの基になっているRAIDグループの容量の、論理記憶デバイスとして使用されていない分の容量を表す情報である。
LU_ID031は、論理記憶デバイス(LU)のIDである。
LU容量032は、論理記憶デバイス(LU)の容量である。
プール_ID033は、論理記憶デバイスがプールである場合に付与されているID、つまり、プールのIDである。
プールである論理記憶デバイスについて、LU(プール)構成情報014は、POOL_ID033、RAID_G_ID025、LU_ID031、POOL_容量034、及び、POOL_使用率035を有する。POOL_ID033、RAID_G_ID025、及び、LU_ID031は、前述した通りである。プールについてLU_ID031がある理由は、プールはLUの一種だからである。POOL_容量034は、プールの容量であり、その値は、プールである論理記憶デバイスについてのLU容量032と同じ値である。POOL_使用率035は、プールの容量に対する、プールにおいてデータ要素を格納しているプール領域の総容量の比率である。
図6は、I/O監視情報015の構成を示す。
I/O監視情報015は、I/Oの監視対象のRAIDグループ(以下、監視対象RAIDグループ)毎に用意される情報である。監視対象RAIDグループのIDが、例えば、前もってコントローラに設定されており、それ故、I/O処理プログラム011が、複数のRAIDグループのうちのどれが監視対象であるかを特定することができる。
I/O監視情報015は、退避元とする論理領域の決定の際に参照される。すなわち、本実施例では、複数のRAIDグループのうちの監視対象RAIDグループが、省電力状態にされ得るRAIDグループである。
I/O監視情報015は、論理領域(例えばブロック)毎に、I/Oの頻度を表す情報を有する。例えば、I/O監視情報015は、論理領域(例えばブロック)毎に、各時間帯でのI/Oの回数を表す情報を有する。具体的には、例えば、I/O監視情報015は、時刻036、位置(アドレス)037、及び、I/O回数061を有する。
時刻036は、各時間帯を表す。図6の例によれば、24時間における1時間毎のI/Oの回数が記録されるが、時間帯は、任意の時間長が設定されてよい。また、複数の時間帯の全てが同じ時間長である必要ない。また、複数の時間帯の合計が24時間である必要はない。
位置(アドレス)037は、論理領域のアドレス(例えば論理アドレス)に対応した、RAIDグループでのアドレス(例えば物理アドレス)を表す。
I/O回数061は、I/Oの回数(ライト及びリードの合計)を表す。なお、I/O回数に代えて又は加えて、ライト回数及び/又はリード回数が用意されてもよい。
図7は、退避関係情報016の構成を示す。
退避関係情報016は、退避元領域と退避先領域との対応毎に、退避元領域038、退避先領域039、及び、更新フラグ040を有する。
退避元領域038は、RAIDグループに基づく論理領域を表す情報である。RAIDグループに基づくLU019内の論理領域に格納されているデータ要素がプール018のプール領域に退避されるためである。退避元領域038は、例えば、RAID_G_ID025及びアドレス037を有する。RAID_G_ID025は、退避元の論理領域の基になるRAIDグループのIDである。アドレス037は、退避元の論理領域の、RAIDグループにおけるアドレスである。
退避先領域039は、プール領域を表す情報である。退避先領域039は、例えば、プール_ID033及びアドレス037を有する。プール_ID033は、退避先のプール領域を有するプールのIDである。アドレス037は、退避先のプール領域の、RAIDグループにおけるアドレスである。
更新フラグ040は、退避先のプール領域で更新が生じたか否かを表す情報である。値「1」が、更新が生じたこと、すなわち、退避先のプール領域内のデータ要素が退避元の論理領域内のデータ要素と異なることを意味する。値「0」が、更新が生じていないこと、すなわち、退避先のプール領域内のデータ要素が退避元の論理領域内のデータ要素と同じであることを意味する。例えば、退避元の論理領域から退避先のプール領域にデータ要素が退避(コピー)された後に、その退避先のプール領域にデータ要素が上書きされた場合、その退避先のプール領域に対応する更新フラグ040が、「0」から「1」に更新される。
I/O監視情報015及び退避関係情報016におけるアドレス037は、論理領域又はプール領域の物理的なアドレス(RAIDグループでのアドレス)を表すが、それに代えて又は加えて、LU又はプールのIDと論理アドレスとの組合せであっても良い。
以下、本実施例で行われる処理の流れを説明する。
図8は、I/Oコマンド処理のフローチャートである。
I/O処理プログラム011は、上位装置001からI/Oコマンドを受信した場合に、複数種類のうちのいずれかのI/O処理を行う(S801)。具体的には、例えば、プログラム011は、以下の処理:
(S801−1)I/Oコマンドが有するI/O先情報から、I/O先の仮想LU017及び仮想領域を特定する;
(S801−2)特定された仮想領域に対するI/O対象データ要素がキャッシュメモリ005に存在するか否かの判断を行う;
(S801−3)I/Oコマンドがリードコマンドであり、且つ、S801−2の判断の結果が肯定的の場合、キャッシュメモリ005からリード対象のデータ要素を読み出し、上位装置001に提供する;
(S801−4)I/Oコマンドがライトコマンドであり、且つ、S801−2の判断の結果が否定的の場合、キャッシュメモリ005にライト対象のデータ要素を書き込み、S801−6に進む;
(S801−5)S801−2の判断の結果が肯定的の場合、S801−6に進む;
(S801−6)S801−1で特定された仮想LU017に関連付けられているLU019を特定する(例えば、仮想LU017とLU019との対応付けを表す情報(例えば共有メモリ004に記憶されている図示しない情報)を参照することにより、特定する);
(S801−7)RAIDグループ構成情報013を参照し、特定されたLU019を提供するRAIDグループを特定する;
(S801−8)特定されたRAIDグループの各PDEVが、省電力状態か否かを判断する、
(S801−9)S801−8の判断の結果が肯定的の場合、図11のI/O処理を実行する、
(S801−10)S801−8の判断の結果が否定的の場合、通常のI/O処理、すなわち、S801−1で特定された仮想領域に対応する論理領域(S801−6で特定されたLU019における論理領域)に対するI/Oを行う、
を行う。
S801のI/O処理の後、プログラム011は、S801のI/O処理でI/O先となったRAIDグループであって、LU019を提供するRAIDグループが、監視対象RAIDグループであるか否かを判断する(S802)。
S802の判断の結果が肯定的の場合、プログラム011は、I/O監視情報015を更新する(S803)。具体的には、プログラム011は、S801でI/O先となった監視対象RAIDグループに対応するI/O監視情報015における該当I/O回数を、1インクリメントする。ここでいう「該当I/O回数」とは、受信したI/Oコマンドに関する時刻が属する時間帯に対応したI/O回数である。「I/Oコマンドに関する時刻」とは、例えば、I/Oコマンドの受信時刻、I/Oコマンドの処理が完了した時刻(例えば上位装置001に完了応答を返した時刻)、或いは、I/Oコマンドが有するタイムスタンプが表す時刻である。
図9は、スピンダウン処理のフローチャートである。
このスピンダウン処理は、例えば、RAIDグループID又はLUのIDを含んだ省電力指示をユーザから電源制御プログラム012に入力されたときに開始されてもよいし、現在時刻(例えば図示しないタイマから特定される時刻)が予め設定されているスピンダウン開始時刻になったときに開始されてもよい。
プログラム012が、RAIDグループ構成情報013を参照し、スピンダウン対象のRAIDグループに含まれるPDEVを特定する(S901)。「スピンダウン対象のRAIDグループ」は、上記省電力指示が有するRAIDグループID又はLUのIDから特定されてもよいし(LUのIDが含まれている場合、そのLUを提供するRAIDグループがLU(プール)構成情報014から特定されてよいし)、予め設定されていてよい。
プログラム012が、退避元領域候補を決定する(S903)。退避元領域候補は、退避元領域候補とされない論理領域のI/O頻度よりI/O頻度が高い論理領域である。具体的には、例えば、退避元領域候補は、スピンダウン対象のRAIDグループが提供する複数の論理領域のうちI/O頻度が上位X個又はY%に属する論理領域(XもYも自然数)、又は、I/O頻度が所定の閾値を超えている論理領域である。I/O頻度が参酌される期間は、後述の退避元領域決定ポリシーに従う期間である。
プログラム012が、S903で決定した一以上の退避元領域候補の総容量がプール018の空き容量より大きいか否かを判断する(S904)。プール018の空き容量は、LU(プール)構成情報014におけるPOOL_容量034及びPOOL_使用率035を基に算出される。
S904の判断の結果が否定的の場合、プログラム012は、S903で決定した各退避元領域候補内のデータ要素を空きのプール領域に退避する(コピーする)(S905)。その際、プログラム012は、退避関係情報016を更新する。具体的には、プログラム012は、退避元領域候補と退避先プール領域とのペア毎に、退避元領域候補を表す退避元領域038と退避先プール領域を表す退避先領域039とを追加する。
その後、プログラム012は、S901で特定した全てのPDEV(HDD)をスピンダウンする。すなわち、プログラム012は、S901で特定した全てのPDEVを省電力状態にさせる。
S904の判断の結果が肯定的の場合、プログラム012は、S905を行うことなくS906を実行する。なお、この例によれば、S904の判断の結果が肯定的であれば、S903で決定された退避元領域候補から空きのプール領域へのデータ要素の退避が一切行われないが、それに代えて、データ要素の退避が部分的に行われてもよい。具体的には、例えば、プログラム012は、S903で決定された退避元領域候補のうち、プール018の空き容量以下の総容量となる一部の退避元領域候補(一以上の退避元領域候補)を決定し、決定された退避元領域候補から空きのプール領域にデータ要素を退避してよい。
図10は、スピンアップ処理のフローチャートである。
このスピンアップ処理は、例えば、RAIDグループID又はLUのIDを含んだ省電力解除指示をユーザから電源制御プログラム012に入力されたときに開始されてもよいし、現在時刻が予め設定されているスピンダウン終了時刻になったときに開始されてもよい。
プログラム012が、スピンアップ処理対象のRAIDグループに属する全てのPDEVをスピンアップする(S1001)。「スピンアップ処理対象のRAIDグループ」は、上記省電力解除指示が有するRAIDグループID又はLUのIDから特定されてもよいし(LUのIDが含まれている場合、そのLUを提供するRAIDグループがLU(プール)構成情報014から特定されてよいし)、予め設定されていてよい。また、スピンアップ処理対象のRAIDグループに属するPDEVは、RAIDグループ構成情報013から特定される。
プログラム012が、スピンアップ処理対象のRAIDグループが提供する複数の論理領域の少なくとも一つに、更新有りのプール領域が対応付けられているか否かを判断する(S1002)。具体的には、例えば、プログラム012は、退避関係情報016を参照し、値が「1」となっている更新フラグ040に対応した退避元領域038が表す論理領域がスピンアップ処理対象のRAIDグループが提供する複数の論理領域に含まれているか否かを判断する。
S1002の判断の結果が肯定的であれば、プログラム012は、更新有りのプール領域内のデータ要素を、そのプール領域に対応付けられている論理領域にコピーする(S1003)。
図11は、I/Oコマンドを基に特定されたRAIDグループ(以下、I/O先RAIDグループ)の各PDEVが省電力状態の場合に行われるI/O処理のフローチャートである。
I/O処理プログラム011は、退避関係情報016を参照し、I/Oコマンドを基に特定された一以上の仮想領域の各々について、仮想領域に対応する論理領域(図11の説明において「I/O先論理領域」)にプール領域が対応付けられているか否かを判断する(S1101)。
S1101の判断の結果が肯定的の場合、プログラム011は、I/O先論理領域に対応付けられているプール領域に対してデータ要素のI/Oを行う(S1102)。S1102では、ディスクアレイ装置010の稼働中に省電力状態とされることのないRAIDグループに基づく記憶領域(つまりプール領域)に対してデータ要素のI/Oが行われるので、PDEVの省電力状態の解除は行われない。なお、I/Oがライトであって、ライト先のプール領域に対応する更新フラグ040が「0」であれば、プログラム011は、S1102において、そのプール領域に対応する更新フラグ040を「1」に更新する。
S1101の判断の結果が否定的の場合、プログラム011は、電源制御プログラム012を呼び出して、I/O先RAIDグループの各PDEVをスピンアップする(S1103)。つまり、プログラム011は、その各PDEVの省電力状態を解除する。そして、プログラム011は、I/O先論理領域に対してデータ要素のI/Oを行う(S1104)。
次に、プログラム011は、S1104での一以上のI/O先論理領域の総容量がプール018の空き容量より大きいか否かを判断する(S1105)。
S1105の判断の結果が肯定的であれば、プログラム011は、退避関係情報016を基に、I/O先RAIDグループに対応付けられている更新有りプール領域と、その更新有りプール領域に対応した論理領域とを特定し、特定された更新有りプール領域から特定された論理領域に、データ要素をコピーする(S1106)。I/O先RAIDグループの各PDEVは、省電力状態が解除されたままの状態とされる。
S1105の判断の結果が否定的であれば、プログラム011は、S1104でのI/O先論理領域に対する、I/O対象のデータ要素を、空きのプール領域に退避(コピー)する(S1107)。その際、プログラム011は、退避関係情報016を更新する。具体的には、例えば、プログラム011は、I/O先論理領域を表す退避元領域038と、退避先のプール領域039と追加する。その後、プログラム011は、電源制御プログラム012を呼び出し、I/O先RAIDグループの各PDEVをスピンダウンさせる(S1108)。つまり、プログラム011は、I/O先RAIDグループの各PDEVの状態を省電力状態に戻す。なお、プログラム011は、必ずしも、S1107を行う都度にS1108を行わなくてよい。例えば、プログラム011は、最後にS1107を行ってから一定時間経過しても再びS1107を行わない場合に、S1108を行ってもよい。
さて、前述したスピンダウン対象のRAIDグループは、例えば、下記の処理が行われることにより、設定される。
(S01)管理装置100が、図12に示すI/O範囲指定画面(例えばGUI(Graphical User Interface))041を表示する。ユーザは、そのGUI041に、開始時刻及び終了時刻を入力する。
(S02)管理装置100が、ディスクアレイ装置010から、I/O監視情報015を取得する。
(S03)管理装置100が、S01で入力された開始時刻及び終了時刻と、S02で取得したI/O監視情報015とを基に、各監視対象RAIDグループについてI/O範囲を算出する。
(S04)管理装置100が、図12に示すI/O範囲情報画面046、すなわち、S03での算出の結果を表示した画面を表示する。ここで、「I/O範囲」とは、監視対象RAIDグループが提供する論理領域の合計(監視対象RAIDグループの容量)に対する、I/Oが発生した論理領域の合計(総容量)の比率である。S01で入力された開始時刻と終了時刻との間の期間で一回でもI/Oが発生していれば、I/Oが発生した論理領域にカウントされる。
(S05)管理装置100が、ユーザからの要求に応答して、図13に示すスピンダウン指示画面048を表示する。ユーザは、S04で表示された、監視対象RAIDグループ毎のI/O範囲を基に、スピンダウン対象のRAIDグループを、画面048を介して指定する。なお、画面048には、プールの空き容量が表示され、且つ、スピンダウン対象のRAIDグループの他に、省電力状態(スピンダウン)の開始時刻及び終了時刻と、退避元領域決定ポリシーと、退避容量とのうちの少なくとも一つを設定することができる。「プールの空き容量」とは、空きのプール領域の総容量である。「開始時刻及び終了時刻」は、図12のI/O範囲指定画面041で入力された開始時刻及び終了時刻が援用されたものであっても良いし、改めてユーザから入力されてもよい。「退避元領域決定ポリシー」は、図9のS903での処理(退避元の論理領域の決定)で参酌される期間(I/O監視情報015の範囲)である。図13の例によれば、退避元領域決定ポリシーとして、前日、過去一週間、過去一ヶ月間の三種類があり、その三種類から前日が選択されている。「退避容量」は、スピンダウン対象として選択されたRAIDグループが提供する複数の論理領域のうちの退避元の論理領域の総容量である。ユーザは、表示される「プールの空き容量」を基に退避容量を決定することができる。
以上のS01〜S05において、I/O範囲の算出は、管理装置100に代えて制御部007又は上位装置001が行ってもよい。少なくとも一つの上位装置001が管理装置100として機能してもよい。
図14は、本実施例における各フェーズでの各PDEVの状態を示す。
非省電力フェーズ(通常時(I/O監視中))においては、LU019を提供するRAIDグループを構成するPDEV(以下、LU−PDEV)が非省電力状態となっており、プール018を提供するRAIDグループを構成するPDEV(以下、プール−PDEV)が省電力状態となっている。このため、非省電力フェーズにおいては、LU019内の論理領域に対応したプール領域がプール018に存在するか否かに関わらず、LU019に対してI/Oが行われる。なお、プール−PDEVがLU−PDEVよりもI/O性能が優れていて且つ省電力であれば、非省電力フェーズであっても、プール−PDEVが非省電力状態とされても良い。この場合、非省電力フェーズにおいて、LU019内の論理領域に対応したプール領域がプール018に存在すれば、論理領域ではなくプール領域に対してI/Oが行われて良い。
移行中フェーズ(すなわち、非省電力フェーズから省電力フェーズへの移行中のフェーズ、或いは、省電力フェーズから非省電力フェーズへの移行中のフェーズ)では、LU−PDEVもプール−PDEVも省電力状態ではなくなる。例えば、LU−PDEV(及びプール−PDEV)は、スピンアップ中、或いは、スピンダウン中となる。
省電力フェーズでは(例えば、スピンダウン開始時刻から終了時刻の間では)、プール−PDEVが非省電力状態であり、LU−PDEVが省電力状態である。この場合には、前述したように、論理領域に対応したプール領域があれば、プール領域に対してI/Oが行われ、論理領域に対応したプール領域がなければ、その論理領域を提供するRAIDグループの各LU−PDEVの省電力状態が一旦解除され、論理領域に対してI/Oが行われる。
なお、図14の例によれば、一以上のLU019を提供する全てのRAIDグループが一緒に各種のフェーズに移行するが、RAIDグループ毎に、各種フェーズが存在してよい。プール018を提供するRAIDグループは、一以上のLU019を提供する二以上のRAIDグループに共通で良い。
図15は、プール−LDEVがHDDの場合とSSDの場合での移行中フェーズの長さの違いを示す。
プール−LDEVがSSDであれば、プール−LDEVがHDDであることに比べて、非省電力フェーズから省電力フェーズにより早く移行することができる。
なお、例えば、プール−PDEVは、SATA(Serial ATA)−HDDのような大容量のPDEVでもよい。この場合、プール−PDEVの台数の節約が期待できる。
このように、PDEVの種別によって、より高い節電効果を期待できるため、プール018の容量やプール018に要求されるI/O性能に応じて、適切な種類のプール−PDEVが決定されて良い。または、プール−PDEVの種別ごとに複数のプール018を準備し、スピンダウン対象のRAIDグループ毎に、各時間帯及び各論理領域のI/O頻度から、退避先のプール018が選択されて良い。LU019を提供するRAIDグループとプール018の関係はn:mの関係をとることも可能である(n及びmは自然数であり、且つ、n及びmのうちの少なくとも一方は2以上である)。
以上、本実施例によれば、複数のLU019を提供する複数のRAIDグループのうちの一部のRAIDグループが、スピンダウン対象のRAIDグループとされる。一部のRAIDグループの各々は、I/O範囲の狭い時間帯が、省電力フェーズの時間帯とされる。また、スピンダウン対象のRAIDグループが提供する複数の論理領域のうちの比較的I/O頻度の高い論理領域が、退避元の論理領域とされる。退避元の論理領域からプール領域にデータ要素が退避され、その後に、スピンダウン対象のRAIDグループを構成する各PDEVが省電力状態とされる。その後、ディスクアレイ装置010が上位装置001からブロックレベルのI/Oコマンドを受信し、それにより仮想領域にI/Oが発生する場合、I/O先の仮想領域に対応した論理領域を提供するRAIDグループの各PDEVが省電力状態であって、その論理領域に対応するプール領域(その論理領域から退避されたデータ要素を記憶するプール領域)がある場合には、各PDEVの省電力状態が解除されることなく、そのプール領域に対してI/Oが行われる。これにより、ブロックレベルのI/Oコマンドを受け付けるディスクアレイ装置において、PDEVの省電力状態を解除する頻度を減らすことができる。
本発明の実施例2を説明する。その際、実施例1との相違点を主に説明し、実施例1との共通点については説明を省略或いは簡略する(なお、これは、後の実施例3及び4についても同様である)。
図16は、本発明の実施例2に係るストレージシステムが適用された計算機システムを示す。
SAN002に、複数のディスクアレイ装置210と、一以上の上位装置101とが接続されている。
また、SAN002とは別のネットワークとして、電源制御ネットワーク258がある。電源制御ネットワーク258は、例えばLAN(Local Area Network)である。このネットワーク258には、電源制御のためのコマンドが流れる。
本実施例では、RAIDグループ単位ではなく、ディスクアレイ装置単位で、省電力状態への遷移や省電力状態の解除が行われる。そのための電源制御は、上位装置204によって行われる。
上位装置201が、電源制御I/F256、制御部(例えばマイクロプロセッサ)207、I/F(例えばホストバスアダプタ)257、メモリ204、接続部206を有する。電源制御I/F256は、電源制御ネットワーク058に繋がるインタフェース装置、例えば、NIC(Network Interface Card)である。I/F257は、SAN002に繋がるインタフェース装置、例えば、HBA(Host
Bus Adapter)である。接続部206は、例えば、データ転送のためのスイッチ或いはバスである。接続部206には、前述した要素256、207、257及び204が接続されている。これらの要素間の通信は、接続部206を介して行われる。メモリ204が、実施例1で説明したI/O処理プログラム011、電源制御プログラム012、RAIDグループ構成情報013、LU(プール)構成情報014、I/O監視情報015及び退避関係情報016を記憶する。制御部207は、例えば、マイクロプロセッサであり、メモリ204内のプログラム011及び012を実行する。
図17に示すように、本実施例では、ディスクアレイ装置単位で省電力が行われる。このため、例えば、退避関係情報016が有する退避元領域038及び退避先領域039は、RAID_G_IDに代えて、ディスクアレイ装置210のIDを有して良い。また、複数のディスクアレイ装置210のうちの少なくとも一つが、プール018を提供するディスクアレイ装置210(以下、プールアレイ装置)である。LU019を提供するディスクアレイ装置210(以下、LUアレイ装置)が提供する複数のLU019の総容量は、プール018の総容量よりも大きい。
本実施例では、下記の処理が行われる。
*I/O範囲が狭い時間帯があるLUアレイ装置が、スピンダウン対象のLUアレイ装置とされる。
*上位装置201が、スピンダウン対象のLUアレイ装置から退避元領域を決定する。
*上位装置201が、決定した退避元領域から、プールアレイ装置が提供するプール018のプール領域に、データ要素を退避する。上位装置201は、退避元領域と退避先領域との対応関係を表す情報を退避関係情報016に含める。
*スピンダウン対象のLUアレイ装置は、そのLUアレイ装置のI/O範囲が所定の閾値よりも狭い時間帯に、上位装置201によって省電力状態とされる。具体的には、上位装置201で実行される電源制御プログラム012が、電源制御I/F256を介して、省電力への移行を指示する電源制御コマンドを、スピンダウン対象のLUアレイ装置宛に送信する。その電源制御コマンドは、電源制御ネットワーク258を介して、宛先のLUアレイ装置に送られる。その電源制御コマンドを受けたLUアレイ装置が、そのコマンドに応答して、省電力状態となる。例えば、そのLUアレイ装置では、LU019を提供する全てのRAIDグループが省電力状態とされる。
*上位装置201は、I/O先の論理領域に対応したプール領域があれば、図17に示すように、そのプール領域を指定したI/Oコマンドをプールアレイ装置に送信する。これにより、I/O先の論理領域を提供するLUアレイ装置の省電力状態が解除されることなく、I/Oが行われる。なお、プールアレイ装置へのI/Oコマンドの送信は、I/O先の論理領域を提供するLUアレイ装置の省電力状態の場合にのみ行われても良い。
図18は、本発明の実施例3に係るストレージシステムが適用されたディスクアレイ装置群を有する計算機システムを示す。
第1のSAN002Fに、一以上の上位装置101と、上位ディスクアレイ装置010Hとが接続されている。
第2のSAN002Sに、上位ディスクアレイ装置010Hと複数の下位ディスクアレイ装置010Lとが接続されている。
SANとは別のネットワークとして、電源制御ネットワーク358がある。電源制御ネットワーク358は、例えばLAN(Local Area Network)である。このネットワーク358には、電源制御のためのコマンドが流れる。
本実施例では、RAIDグループ単位ではなく、下位ディスクアレイ装置単位で、省電力状態への遷移や省電力状態の解除が行われる。そのための電源制御は、上位ディスクアレイ装置010Hによって行われる。
上位のディスクアレイ装置010Hの制御部006が、上位装置001に仮想LUを提供する。仮想LUに対応したLU019が、いずれかの下位ディスクアレイ装置010Lに存在する。従って、或る仮想領域に対するI/Oが発生した場合、上位ディスクアレイ装置010Hが、その仮想領域に対応した論理領域を有する下位ディスクアレイ装置010Lに、その論理領域を指定したI/Oコマンドを送信する。上位ディスクアレイ装置010Hは、NASの機能を有していても良い。すなわち、上位ディスクアレイ装置010Hは、ファイルレベルのI/Oコマンドを上位装置001から受けて、ブロックレベルのI/Oコマンドを下位ディスクアレイ装置010Lに送信しても良い。
上位ディスクアレイ装置010Hは、図1に示したディスクアレイ装置010が有する要素の他に、電源制御I/F356とI/F357とを有する。電源制御I/F356は、電源制御ネットワーク358に繋がるインタフェース装置、例えば、NIC(Network Interface Card)である。I/F357は、第2のSAN002Sに繋がるインタフェース装置、例えば、HBA(Host Bus Adapter)である。
図19に示すように、本実施例では、下位ディスクアレイ装置単位で省電力が行われる。このため、例えば、退避関係情報016が有する退避元領域038及び退避先領域039は、RAID_G_IDに代えて、下位ディスクアレイ装置010LのIDを有して良い。また、複数の下位ディスクアレイ装置010Lのうちの少なくとも一つが、プール018を提供する下位ディスクアレイ装置010H(以下、プール下位アレイ装置)である。LU019を提供する下位ディスクアレイ装置010H(以下、LU下位アレイ装置)が提供する複数のLU019の総容量は、プール018の総容量よりも大きい。
本実施例では、下記の処理が行われる。
*I/O範囲が狭い時間帯があるLU下位アレイ装置が、スピンダウン対象のLU下位アレイ装置とされる。
*上位ディスクアレイ装置010Hが、スピンダウン対象のLU下位アレイ装置から退避元領域を決定する。
*上位ディスクアレイ装置010Hが、決定した退避元領域から、プール下位アレイ装置が提供するプール018のプール領域に、データ要素を退避する。上位ディスクアレイ装置010Hは、退避元領域と退避先領域との対応関係を表す情報を退避関係情報016に含める。
*スピンダウン対象のLU下位アレイ装置は、そのLU下位アレイ装置のI/O範囲が所定の閾値よりも狭い時間帯に、上位ディスクアレイ装置010Hによって省電力状態とされる。具体的には、上位ディスクアレイ装置010Hで実行される電源制御プログラム012が、電源制御I/F356を介して、省電力への移行を指示する電源制御コマンドを、スピンダウン対象のLU下位アレイ装置宛に送信する。その電源制御コマンドは、電源制御ネットワーク358を介して、宛先のLUアレイ装置に送られる。その電源制御コマンドを受けたLU下位アレイ装置が、そのコマンドに応答して、省電力状態となる。例えば、そのLU下位アレイ装置では、LU019を提供する全てのRAIDグループが省電力状態とされる。
*上位ディスクアレイ装置010Hは、上位装置001からのI/Oコマンドから特定されたI/O先の論理領域(上位装置からのI/Oコマンドで指定された仮想領域に対応する論理領域)に対応したプール領域があれば、図19に示すように、そのプール領域を指定したI/Oコマンドをプール下位アレイ装置に送信する。これにより、I/O先の論理領域を提供するLU下位アレイ装置の省電力状態が解除されることなく、I/Oが行われる。なお、プール下位アレイ装置へのI/Oコマンドの送信は、I/O先の論理領域を提供するLU下位アレイ装置の省電力状態の場合にのみ行われても良い。
本発明の実施例4では、スピンダウン対象のRAIDグループが、自動で決定される。
図20は、スピンダウン対象決定処理のフローチャートである。
スピンダウン対象決定処理は、図9のスピンダウン処理の開始前に行われる。スピンダウン対象決定処理は、規定のタイミング或いはユーザから指示されたタイミングで開始される。スピンダウン対象決定処理は、定期的に又は不定期的に行われる(例えば、1日に1回、或いは、1月に1回)。
電源制御プログラム012が、RAID_G_IDが最小のRAIDグループを選択する(S2001)。
プログラム012が、S2001(又は後のS2008)で選択したRAIDグループがスピンダウン対象として設定済みのRAIDグループであるか否かを判断する(S2002)。
S2002の判断の結果が否定的であれば、プログラム012が、I/O範囲を参酌する期間を決定する(S2003)。その期間は、例えば、ユーザから選択済みの退避元領域決定ポリシーに従う期間と同じであっても良いし、別途ユーザから指定された期間であっても良い。
プログラム012が、S2001(又はS2008)で選択されたRAIDグループに対応したI/O監視情報015のうちの、S2003で決定された期間に該当する部分を参照する(S2004)。
プログラム012は、I/O範囲が所定の閾値未満となる時間帯があるか否かを判断する(S2005)。
S2005の判断の結果が肯定的の場合、プログラム012は、S2001(又はS2008)で選択されたRAIDグループをI/O範囲が所定の閾値未満となる時間帯でスピンダウン対象とすることを決定する(S2006)。
プログラム012は、少なくとも一つのRAIDグループについてS2002の判断を行っていない場合には、未選択のRAIDグループを選択する(S2008)。一方、プログラム012は、全てのRAIDグループについてS2002の判断を行った場合には、スピンダウン対象決定処理を終了する。
なお、図20に示した決定処理は、実施例1に代えて又は加えて、実施例2及び3のうちの少なくとも一方に適用することができる。その場合、スピンダウン対象は、RAIDグループに代えて、ディスクアレイ装置210、又は、下位のディスアレイ装置010Lである。
以上、本発明の幾つかの実施例を説明したが、本発明は、これらの実施例に限定されるものでなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。例えば、本発明のストレージシステムは、NAS分野のストレージシステムに適用されても良い。また、例えば、スピンダウン対象のRAIDグループ(又は、ディスクアレイ装置)は、I/O範囲に代えて又は加えて、I/O頻度を基に決定されても良い。例えば、I/O頻度が所定の閾値より低いRAIDグループが、スピンダウン対象のRAIDグループに決定されて良い。また、例えば、「スピンダウン対象」は、抽象的には、「省電力対象」と言うことができる。
001…上位装置、003…ホストI/F、004…共有メモリ、005…キャッシュメモリ、006…接続部、007…制御部、008…ディスク制御部、009…物理記憶デバイス(PDEV)、010…ディスクアレイ装置、022…SSD、023…HDD

Claims (12)

  1. 複数の物理記憶デバイス群と、
    前記複数の物理記憶デバイス群に接続されているコントローラと
    を有し、
    各物理記憶デバイス群が、一以上の物理記憶デバイスで構成されており、
    前記複数の物理記憶デバイス群が、第1及び第2の物理記憶デバイス群を含み、
    前記第1の物理記憶デバイス群が、複数の論理領域で構成された論理記憶デバイスの論理領域に格納されるデータ要素を記憶し、第1の時間帯に省電力状態とされ得る一以上の第1の物理記憶デバイスで構成されており、
    前記第2の物理記憶デバイス群が、複数のプール領域で構成されたプールのプール領域に格納されるデータ要素を記憶し、少なくとも一つの第1の物理記憶デバイスが省電力状態とされている間には省電力状態とされない一以上の第2の物理記憶デバイスで構成されており、
    前記プールの一以上のプール領域が、前記複数の論理領域の一部の論理領域に対応付けられ、前記一部の論理領域に格納されたデータが前記一以上のプール領域に格納されており、
    前記一部の論理領域のいずれの論理領域のI/O(Input/Output)の頻度が、前記複数の論理領域の前記一部の論理領域以外のいずれの論理領域のI/O頻度よりも高く、
    前記第1の時間帯において、前記コントローラは、
    (X1)I/Oのときに、I/O先の論理領域に対応するプール領域が前記プールに存在するか否かを判断し、
    (X2)前記(X1)での判断の結果が否定的であって、前記第1の物理記憶デバイス群が省電力状態の場合、前記第1の物理記憶デバイス群の省電力状態を解除し、前記I/O先の論理領域に対してデータ要素のI/Oを行い、
    (X3)前記(X1)での判断の結果が肯定的の場合、前記第1の物理記憶デバイス群の省電力状態を解除することなく、前記I/O先の論理領域に対応するプール領域に対してデータ要素のI/Oを行い、
    (X4)前記(X2)の後、前記第1の物理記憶デバイス群を省電力状態にさせ
    前記コントローラは、プール領域毎に、プール領域に対応する論理領域とその対応する論理領域に無いデータ要素である更新データ要素が有るか否かを表す情報である更新管理情報を管理しており、
    前記I/Oがライトであり、前記コントローラは、前記(X3)において、前記対応するプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記I/Oがライトであり、前記コントローラは、前記(X2)において、空きのプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記コントローラは、前記プールに更新データ要素が増える頻度よりも低い頻度で、更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスの基になっている第1の物理記憶デバイス群の省電力状態を解除し、且つ、前記プールに格納されている複数のデータ要素のうち更新データ要素のみを、その更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスにコピーする、
    ストレージシステム。
  2. 請求項1記載のストレージシステムであって、
    前記第1の時間帯よりも過去の時間帯である第2の時間帯において、前記第1の物理記憶デバイス群が非省電力状態であり、
    前記第2の時間帯において、前記コントローラが、論理領域毎にI/Oの頻度を計測し、
    前記コントローラは、前記第1の時間帯の開始前に、
    (M1)前記一部の論理領域として、前記第2の時間帯におけるI/O頻度が所定のI/O頻度よりも高い論理領域を特定し、
    (M2)前記(M1)で特定した一部の論理領域から前記プールにデータ要素をコピーし、
    (M3)前記(M2)の後、前記第1の物理記憶デバイス群を省電力状態にさせる、
    ストレージシステム。
  3. 請求項2記載のストレージシステムであって、
    複数の論理記憶デバイスの基になる複数の第1の物理記憶デバイス群があり、
    前記コントローラは、以下の(M0)を行い、
    (M0)各論理記憶デバイスの各論理領域について計測したI/O頻度を基に、前記第2の時間帯におけるI/O頻度が所定の閾値以下である第1の物理記憶デバイス群、又は、前記第2の時間帯において第1の物理記憶デバイス群の容量に対してI/Oが行われた論理領域の総量が所定の割合以下である第1の物理記憶デバイス群を特定する、
    前記コントローラは、前記(M0)で特定された第1の物理記憶デバイス群について、前記(M1)、(M2)及び(M3)を行う、
    ストレージシステム。
  4. 請求項記載のストレージシステムであって、
    前記I/Oがライトであり、前記コントローラは、前記(X3)において、空きのプール領域があるか否かを判断し、その判断の結果が肯定的の場合に、空きのプール領域に前記ライト対象のデータ要素を書き込み、
    前記プールに更新データ要素が増える頻度よりも低い頻度とは、前記(X3)での判断の結果が否定的になったときである、
    ストレージシステム。
  5. 請求項記載のストレージシステムであって、
    前記I/Oがリードであり、前記コントローラが、前記(X2)において、空きのプール領域があるか否かを判断し、その判断の結果が肯定的の場合に、前記リード元の論理領域から読み出したデータ要素を空きのプール領域に格納し、
    前記プールに更新データ要素が増える頻度よりも低い頻度とは、前記(X2)での判断の結果が否定的になったときである、
    ストレージシステム。
  6. 請求項1記載のストレージシステムであって、
    前記第1の時間帯よりも過去の時間帯である第2の時間帯において、前記第1の物理記憶デバイス群が非省電力状態であり、
    複数の論理記憶デバイスの基になる複数の第1の物理記憶デバイス群があり、
    前記第2の時間帯において、前記コントローラが、論理領域毎にI/Oの頻度を計測し、
    前記複数の第1の物理記憶デバイス群のうち前記第1の時間帯において省電力状態とされ得る第1の物理記憶デバイス群は、前記第2の時間帯におけるI/O頻度が所定の閾値以下である第1の物理記憶デバイス群、又は、前記第2の時間帯において第1の物理記憶デバイス群の容量に対してI/Oが行われた論理領域の総容量が所定の割合以下である第1の物理記憶デバイス群である、
    ストレージシステム。
  7. 請求項記載のストレージシステムであって、
    前記プールに更新データ要素が増える頻度よりも低い頻度とは、前記プールの容量に対する空きプール領域の総量の割合が所定の割合未満になったときである、
    ストレージシステム。
  8. 請求項1記載のストレージシステムであって、
    前記第2の物理記憶デバイスは、所定サイズのデータ要素群を前記第1の物理記憶デバイスよりも少ない消費電力で記憶する物理記憶デバイスであり、
    前記データ要素群は一以上のデータ要素である、
    ストレージシステム。
  9. 請求項1記載のストレージシステムであって、
    前記第2の物理記憶デバイスは、SSD(Solid State Drive)又はSATA(Serial ATA)−HDD(Hard Disk Drive)である、
    ストレージシステム。
  10. 請求項記載のストレージシステムであって、
    前記第2の時間帯は、前記第1の時間帯の期間と同じ期間である、
    ストレージシステム。
  11. 複数の物理記憶デバイス群を有するストレージシステムの省電力方法であって、
    各物理記憶デバイス群が、一以上の物理記憶デバイスで構成されており、
    前記複数の物理記憶デバイス群が、第1及び第2の物理記憶デバイス群を含み、
    前記第1の物理記憶デバイス群が、一以上の第1の物理記憶デバイスで構成されており、複数の論理領域で構成された論理記憶デバイスの論理領域に格納されるデータ要素を記憶し、
    前記第2の物理記憶デバイス群が、一以上の第2の物理記憶デバイスで構成されており、複数のプール領域で構成されたプールのプール領域に格納されるデータ要素を記憶し、
    前記省電力方法が、
    (a)前記プールの一以上のプール領域に、前記複数の論理領域の一部の論理領域を対応付け、前記一部の論理領域に格納されたデータを前記一以上のプール領域に格納し、前記一部の論理領域のいずれの論理領域のI/O(Input/Output)の頻度が、前記複数の論理領域の前記一部の論理領域以外のいずれの論理領域のI/O頻度よりも高く、
    (b)第1の時間帯に、前記第1の物理記憶デバイス群を省電力状態とし、
    (c)I/O先の論理領域に対応するプール領域が前記プールに存在するか否かを判断し、
    (d)前記(c)での判断の結果が否定的であり、前記第1の物理記憶デバイスが省電力状態の場合、前記第1の物理記憶デバイス群の省電力状態を解除し、前記I/O先の論理領域に対してデータ要素のI/Oを行い、
    (e)前記(d)での判断の結果が肯定的の場合、前記第1の物理記憶デバイス群の省電力状態を解除することなく、前記I/O先の論理領域に対応するプール領域に対してデータ要素のI/Oを行い、
    (f)前記(d)の後、前記第1の物理記憶デバイス群を省電力状態にさせ、
    前記省電力方法は、更に、プール領域毎に、プール領域に対応する論理領域とその対応する論理領域に無いデータ要素である更新データ要素が有るか否かを表す情報である更新管理情報を管理しており、
    前記I/Oがライトであり、前記(e)において、前記対応するプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記I/Oがライトであり、前記(d)において、空きのプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記プールに更新データ要素が増える頻度よりも低い頻度で、更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスの基になっている第1の物理記憶デバイス群の省電力状態を解除し、且つ、前記プールに格納されている複数のデータ要素のうち更新データ要素のみを、その更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスにコピーする、
    省電力方法。
  12. 複数の物理記憶デバイス群を有するストレージシステムのコントローラであって、
    各物理記憶デバイス群が、一以上の物理記憶デバイスで構成されており、
    前記複数の物理記憶デバイス群が、第1及び第2の物理記憶デバイス群を含み、
    前記第1の物理記憶デバイス群が、一以上の第1の物理記憶デバイスで構成されており、複数の論理領域で構成された論理記憶デバイスの論理領域に格納されるデータ要素を記憶し、
    前記第2の物理記憶デバイス群が、一以上の第2の物理記憶デバイスで構成されており、複数のプール領域で構成されたプールのプール領域に格納されるデータ要素を記憶し、
    前記コントローラが、
    複数の物理記憶デバイス群に接続されたインタフェースデバイスと、
    前記インタフェースデバイスに接続された制御デバイスと
    を有し、
    前記制御デバイスが、
    (a)前記プールの一以上のプール領域に、前記複数の論理領域の一部の論理領域を対応付け、前記一部の論理領域に格納されたデータを前記一以上のプール領域に格納し、前記一部の論理領域のいずれの論理領域のI/O(Input/Output)の頻度が、前記複数の論理領域の前記一部の論理領域以外のいずれの論理領域のI/O頻度よりも高く、
    (b)第1の時間帯に、前記第1の物理記憶デバイス群を省電力状態とし、
    (c)I/O先の論理領域に対応するプール領域が前記プールに存在するか否かを判断し、
    (d)前記(c)での判断の結果が否定的であり、前記第1の物理記憶デバイスが省電力状態の場合、前記第1の物理記憶デバイス群の省電力状態を解除し、前記I/O先の論理領域に対してデータ要素のI/Oを行い、
    (e)前記(d)での判断の結果が肯定的の場合、前記第1の物理記憶デバイス群の省電力状態を解除することなく、前記I/O先の論理領域に対応するプール領域に対してデータ要素のI/Oを行い、
    (f)前記(d)の後、前記第1の物理記憶デバイス群を省電力状態にさせ、
    前記制御デバイスは、更に、プール領域毎に、プール領域に対応する論理領域とその対応する論理領域に無いデータ要素である更新データ要素が有るか否かとを表す情報である更新管理情報を管理しており、
    前記I/Oがライトであり、前記制御デバイスは、前記(e)において、前記対応するプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記I/Oがライトであり、前記制御デバイスは、前記(d)において、空きのプール領域にライト対象のデータ要素を格納し、且つ、そのプール領域に更新データ要素が存在することを表す情報に前記更新管理情報を更新し、
    前記制御デバイスは、前記プールに更新データ要素が増える頻度よりも低い頻度で、更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスの基になっている第1の物理記憶デバイス群の省電力状態を解除し、且つ、前記プールに格納されている複数のデータ要素のうち更新データ要素のみを、その更新データ要素を記憶するプール領域に対応した論理領域を有する論理記憶デバイスにコピーする、
    コントローラ。
JP2009260616A 2009-11-16 2009-11-16 省電力機能を有するストレージシステム Expired - Fee Related JP5209591B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2009260616A JP5209591B2 (ja) 2009-11-16 2009-11-16 省電力機能を有するストレージシステム
US12/696,212 US20110119509A1 (en) 2009-11-16 2010-01-29 Storage system having power saving function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009260616A JP5209591B2 (ja) 2009-11-16 2009-11-16 省電力機能を有するストレージシステム

Publications (2)

Publication Number Publication Date
JP2011107857A JP2011107857A (ja) 2011-06-02
JP5209591B2 true JP5209591B2 (ja) 2013-06-12

Family

ID=44012207

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009260616A Expired - Fee Related JP5209591B2 (ja) 2009-11-16 2009-11-16 省電力機能を有するストレージシステム

Country Status (2)

Country Link
US (1) US20110119509A1 (ja)
JP (1) JP5209591B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8201001B2 (en) * 2009-08-04 2012-06-12 Lsi Corporation Method for optimizing performance and power usage in an archival storage system by utilizing massive array of independent disks (MAID) techniques and controlled replication under scalable hashing (CRUSH)
US9720606B2 (en) 2010-10-26 2017-08-01 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods and structure for online migration of data in storage systems comprising a plurality of storage devices
JP5825290B2 (ja) * 2013-04-08 2015-12-02 コニカミノルタ株式会社 画像形成装置
US20150347047A1 (en) * 2014-06-03 2015-12-03 Coraid, Inc. Multilayered data storage methods and apparatus
JP6768425B2 (ja) * 2016-09-08 2020-10-14 キヤノン株式会社 情報処理装置及びその制御方法、並びにプログラム
JP6735791B2 (ja) * 2018-06-13 2020-08-05 株式会社日立製作所 記憶制御システム及び消費電力制御方法
JP7036866B2 (ja) 2020-06-19 2022-03-15 株式会社日立製作所 情報処理装置及び方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3020833B2 (ja) * 1995-06-19 2000-03-15 株式会社東芝 チェックポイント取得システム
JP3062050B2 (ja) * 1995-07-21 2000-07-10 インターナショナル・ビジネス・マシーンズ・コーポレ−ション ディスク駆動制御方法及び装置
JP4325817B2 (ja) * 1999-04-05 2009-09-02 株式会社日立製作所 ディスクアレイ装置
US7529903B2 (en) * 2005-07-05 2009-05-05 International Business Machines Corporation Systems and methods for memory migration
JP2007193441A (ja) * 2006-01-17 2007-08-02 Toshiba Corp 不揮発性キャッシュメモリを用いる記憶装置とその制御方法
JP4794370B2 (ja) * 2006-06-20 2011-10-19 株式会社日立製作所 省電力とパフォーマンスを両立したストレージシステム及び記憶制御方法
JP4942446B2 (ja) * 2006-10-11 2012-05-30 株式会社日立製作所 ストレージ装置及びその制御方法
JP2008276626A (ja) * 2007-05-02 2008-11-13 Hitachi Ltd 記憶制御装置及び記憶制御装置の制御方法
JP4375435B2 (ja) * 2007-05-23 2009-12-02 株式会社日立製作所 予知型データ移行を行う階層ストレージシステム
US7814351B2 (en) * 2007-06-28 2010-10-12 Seagate Technology Llc Power management in a storage array

Also Published As

Publication number Publication date
US20110119509A1 (en) 2011-05-19
JP2011107857A (ja) 2011-06-02

Similar Documents

Publication Publication Date Title
JP5209591B2 (ja) 省電力機能を有するストレージシステム
US8639899B2 (en) Storage apparatus and control method for redundant data management within tiers
JP4890160B2 (ja) ストレージシステム及びバックアップ/リカバリ方法
JP5271424B2 (ja) ダイナミックストレージ階層化によるオンラインデータ配置をボリュームに提供するためのアロケートオンライトのスナップショット機構
JP4912174B2 (ja) ストレージシステム及び記憶管理方法
JP4749255B2 (ja) 複数種類の記憶デバイスを備えたストレージシステムの制御装置
JP5490093B2 (ja) ストレージシステムおよびその制御方法
JP5314772B2 (ja) 性能の異なる実領域群で構成されたプールを有するストレージシステムの管理システム及び方法
US7873600B2 (en) Storage control device to backup data stored in virtual volume
US9274723B2 (en) Storage apparatus and its control method
JP5073259B2 (ja) 仮想化システム及び領域割当て制御方法
JP5363595B2 (ja) 仮想ボリューム内のデータの再配置を行うストレージシステム及び方法
EP1876519A2 (en) Storage system and write distribution method
US8719533B2 (en) Storage apparatus, computer system, and data migration method
JP2010033261A (ja) ストレージ装置及びその制御方法
WO2015015550A1 (ja) 計算機システム及び制御方法
US20170308722A1 (en) Storage apparatus having nonvolatile memory device, and nonvolatile memory device
JP2010211681A (ja) ストレージ装置及び仮想化装置
JP2009093571A (ja) 記憶制御装置、記憶制御装置のデータアーカイブ方法及びストレージシステム
WO2013171793A1 (en) Storage apparatus, storage system, and data migration method
US20160342609A1 (en) Systems, methods, and computer program products providing an elastic snapshot repository
WO2011135622A1 (en) Storage device and method of controlling storage system
WO2011067806A1 (en) Storage system having power saving function
JP2018197933A (ja) ストレージ制御装置、情報処理システムおよびプログラム
JP5378604B2 (ja) ThinProvisioningが適用された、メインフレーム系のストレージ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120124

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120919

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121002

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20121130

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130221

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160301

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees