JP2011242862A - ストレージサブシステム及びその制御方法 - Google Patents
ストレージサブシステム及びその制御方法 Download PDFInfo
- Publication number
- JP2011242862A JP2011242862A JP2010112212A JP2010112212A JP2011242862A JP 2011242862 A JP2011242862 A JP 2011242862A JP 2010112212 A JP2010112212 A JP 2010112212A JP 2010112212 A JP2010112212 A JP 2010112212A JP 2011242862 A JP2011242862 A JP 2011242862A
- Authority
- JP
- Japan
- Prior art keywords
- storage
- address
- storage device
- access request
- access
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【課題】複雑な分析や運用を行うことなく、複数の記憶装置を階層化して管理する。
【解決手段】低速な記憶デバイスで構成された記憶装置160と、高速な記憶デバイスで構成された記憶装置161と、各記憶装置に対するデータの入出力処理を制御する制御部150を有し、制御部150は、ホスト300からのアクセス要求元がライトアクセスであるときには、アクセス要求に伴うデータを記憶装置160、161に同時に書き込み、その後、記憶装置161のデータのうちアクセス頻度が低下したデータを削除する。
【選択図】図1
【解決手段】低速な記憶デバイスで構成された記憶装置160と、高速な記憶デバイスで構成された記憶装置161と、各記憶装置に対するデータの入出力処理を制御する制御部150を有し、制御部150は、ホスト300からのアクセス要求元がライトアクセスであるときには、アクセス要求に伴うデータを記憶装置160、161に同時に書き込み、その後、記憶装置161のデータのうちアクセス頻度が低下したデータを削除する。
【選択図】図1
Description
本発明は、ストレージシステムおよびその制御方法に係り、特に、性能が異なる複数の記憶装置に対するデータの入出力処理を制御するためのストレージサブシステム及びその制御方法に関する。
ストレージサブシステムまたはストレージ装置として、ハードディスクドライブなどの記憶装置に対するデータの入出力処理を制御する制御装置を備えたものがある。この種のストレージサブシステムまたはストレージ装置においては、例えば、ディスク制御装置間の通信によりデータのコピーを行ってデータを二重化することが行われている(特許文献1参照)。データを二重化することで、一方の記憶装置が故障しても、他方の正常な記憶装置に格納されたデータを用いて処理を継続することができる。
また、ストレージサブシステムまたはストレージ装置においては、記憶装置をレスポンス性能に応じて階層化し、アクセス頻度の高いデータを高速・高価な記憶装置に格納し、アクセス頻度に低いデータを低速・安価な記憶装置に格納することで、システムのコストを削減することが行われている。しかし、特許文献1に記載されている装置の場合には、記憶装置を階層化して管理することについては配慮されていない。
一方、記憶装置を階層化して管理するに際して、階層化された記憶装置のデータ移動をマイグレーショングループで行うとともに、マイグレーショングループにおける論理デバイス間の相対階層ポジション情報とマイグレーショングループの階層のヒエラルキーを保持し、マイグレーションに伴う物理デバイスの管理を容易にするようにしたものが提案されている(特許文献2参照)。
階層化された記憶装置を管理するに際して、特許文献2に記載された技術を用いた場合、例えば、アクセス頻度が低くなったデータについては、ボリュームやファイル単位で高速な記憶装置から低速な記憶装置に一度に移動する必要がある。この場合、移動のスケジュールや性能の影響を事前に考慮したシステム設計を行う必要がある。
具体的には、データを一度に移動させるには、階層化された記憶装置の性能をモニタニングするとともに、ストレージ装置に対する負荷状況の分析や負荷の低い時間帯を予測し、この予測結果を基にデータを移動することで、業務に影響を与えないように、データの移動を管理する必要がある。また、高速な記憶装置と低速な記憶装置の最適な搭載容量比率については、実際のデータの書込・読込の状況を見ながら判断する必要がある。
しかも、データを一度に移動させると、一時的にストレージ装置が高負荷状態になるととともに、データの移動に多くの時間を要することがある。
本発明は、前記従来技術の課題に鑑みて為されたものであり、その目的は、複雑な分析や運用を行うことなく、複数の記憶装置を階層化して管理することができるストレージサブシステム及びその制御方法を提供することにある。
前記目的を達成するために、本発明は、性能が異なる複数の記憶装置に対して同時にデータを書き込み、一方の記憶装置、例えば、高速な記憶装置のデータの中からアクセス頻度が低いデータを削除することで、複雑な分析や運用を行うことなく、複数の記憶装置を階層化して管理することを特徴とする。
本発明によれば、複雑な分析や運用を行うことなく、複数の記憶装置を階層化して管理することができる。
以下、本発明の一実施形態を図面に基づいて説明する。本実施例は、レスポンス性能が異なる複数の記憶装置に対して同時にデータを書き込み、その後、一方の記憶装置、例えば、高速な記憶デバイスで構成された記憶装置のデータの中からアクセス頻度が低いデータを削除するものである。
図1は、本発明に係るストレージサブシステムが適用された計算機システムのブロック構成図である。図1において、計算機システムは、ストレージサブシステム100と、ネットワーク200と、複数のホスト計算機(以下、ホストと称する。)300を備えて構成されており、ストレージサブシステム100は、例えば、FC(Fibre Channel)ネットワークで構成されたネットワーク200を介して各ホスト300に接続されている。
ストレージサブシステム100は、ネットワークインタフェース110と、キャッシュメモリ120と、制御メモリ130と、接続部140と、制御部150と、複数の記憶装置160、161を備えて構成される。
ネットワークインタフェース110は、ネットワーク200とストレージサブシステム100とを結ぶ通信路を構成する。キャッシュメモリ120はデータを一時的に記憶する記憶領域を構成する。制御メモリ130は、各種情報や制御プログラムを格納する。接続部140は、ネットワークインタフェース110と、キャッシュメモリ120と、制御メモリ130および制御部150を相互に接続するための内部ネットワークを構成する。
制御部150は、CPU(Central Processing Unit)あるいはマイクロプロセッサを有し、制御メモリ130に格納された制御プログラムに従って各種の処理を実行する。例えば、制御部150は、アクセス要求元となるホスト300からのアクセス要求に応答して、記憶装置160、161に対するデータの入出力処理を制御する。
この際、アクセス要求がライトアクセスであるときには、制御部150は、アクセス要求に伴うデータをキャッシュメモリ120に一時的に格納し、その後、記憶装置160、161に対して同時にデータを書き込む。また、アクセス要求がリードアクセスであるときには、制御部150は、アクセス要求で指定されたデータを記憶装置160または記憶装置161から読み出し、読み出したデータを、ネットワークインタフェース110を介して、アクセス要求元のホスト300に転送する。
記憶装置160、161は、性能、例えば、レスポンス性能が異なる記憶装置として、階層化されて構成されている。記憶装置160は、例えば、低速で安価な記憶デバイスとして、SATA(Serial ATA)ディスクで構成され、記憶装置161は、高速で高価な記憶デバイスとして、SAS (Serial Attached SCSI)ディスクで構成される。
なお、記憶装置160の記憶デバイスとして、SASディスクを用いたときには、記憶装置161の記憶デバイスとして、SASディスクよりも高速で高価なSSD(Solid State Drive)を用いることができる。
また、記憶装置160、161に用いる記憶デバイスとしては、記憶装置160に用いる記憶デバイスとして低速のものを用い、記憶装置161に用いる記憶デバイスとして高速のものを用いれば、他の記憶デバイスを用いることもできる。
次に、図2に、各ホストと各記憶装置との関係を示す模式図を示す。記憶装置160、161の論理的記憶領域は論理デバイスとして構成され、各論理デバイスは論理ユニット(LU(Logical Unit))170に割り当てられている。論理ユニット170に関する情報は各ホスト300に提供される。これにより、ホスト300は、論理ユニット170を用いてストレージサブシステム100をアクセスすることで、記憶装置160、161に対してリードアクセスまたはライトアクセスを行うことができる。
次に、図3に制御メモリの構成図を示す。制御メモリ130には、アドレス情報131と、アクセス時刻情報132と、戻し処理設定情報133と、領域解放処理設定情報134が格納されるとともに、制御部150が各種処理を実行するための制御プログラム135が格納される。以下、アドレス情報131、アクセス時刻情報132、戻し処理設定情報133、領域解放処理設定情報134の具体的内容を、図4乃至図7を用いて説明する。
まず、図4に、アドレス情報131の構成図を示す。アドレス情報131は、LUアドレスフィールド1310と、アクセスカウンタフィールド1311と、記憶装置Aアドレスフィールド1312と、記憶装置Bアドレス1313から構成される。
LUアドレスは、論理ユニット170を一意に識別するためのアドレスであり、LUアドレスフィールド1310の各エントリには、例えば、「0000」、「0001」、「0002」、「0003」が格納される。
アクセスカウンタは、各ホスト300が論理ユニット170をリードアクセスまたはライトアクセスしたときの計測値(制御部150による計測値)に関する情報である。アクセスカウンタフィールド1311の各エントリには、例えば、LUアドレスに対応して、「1158」、「3」、「72」、「180」が格納される。
記憶装置Aアドレスは、記憶装置160を一意に識別するためのアドレスであり、記憶装置Aアドレスフィールド1312の各エントリには、例えば、LUアドレス「000」〜「0003」に対応して、「0000」、「0001」、「0002」、「0003」が格納される。即ち、記憶装置160を常に各ホスト300のアクセス先とするために、記憶装置160のアドレスと論理ユニット170のアドレスとが対応付けられている。
記憶装置Bアドレスは、記憶装置161を一意に識別するためのアドレスであり、記憶装置Bアドレスフィールド1313の各エントリには、例えば、LUアドレス「0000」〜「0003」に対応して、「001」、「0000」、「NULL」、「0002」が格納される。なお、エントリに「NULL」が格納されているときには、記憶装置Aアドレスに対応した記憶装置Bアドレスがないことを示す。
次に、図5にアクセス時刻情報132の構成を示す。アクセス時刻情報132は、記憶装置Bアドレスフィールド1313と、最終アクセス時刻フィールド1320から構成される。
記憶装置Bアドレスフィールド1313の各エントリには、記憶装置161を一意に識別するためのアドレスとして、例えば、「0000」〜「0003」が格納される。
最終アクセス時刻は、制御部150が、記憶装置161をアクセスしたときの最終アクセス時間に関する情報である。最終アクセス時刻フィールド1320の各エントリには、最終アクセス時刻が、年月日とともに格納される。即ち、最終アクセス時刻を基に、記憶装置161に格納されたデータの中からアクセス頻度が低下したデータを削除するために、記憶装置161については、アクセス時刻情報132を用いて最終アクセス時刻を管理することとしている。
なお、エントリに「NULL」が格納されているときには、このアドレスについては、制御部150がアクセスをしていないことを示す。
次に、図6に、戻し処理設定情報133の構成を示す。戻し処理設定情報133は、スイッチ設定1331と、戻し処理実行間隔設定1332と、戻し処理実行回数設定1333に関する情報から構成される。
スイッチ設定1331には、制御部150が、記憶装置160のデータの一部を記憶装置161に戻すための戻し処理を行うときには「オン」の情報が格納され、戻し処理を実行しないときには「オフ」の情報が格納される。
戻し処理実行間隔設定1332には、制御部150による戻し処理の実行間隔として、時間をパラメータとした情報が格納される。例えば、制御部150が、戻し処理を1日あるいは1週間の間隔で実行する場合には、1日または1週間に関する情報が、戻し処理実行間隔設定1332に格納される。
戻し処理実行回数設定1333には、制御部150が、戻し処理を実行する回数に関する情報が格納される。例えば、複数のアドレスのうちアクセスカウンタの値の大きいものから上位10%に属するアドレスを、戻し処理の対象とした場合、この戻し処理の対象となったアドレスの数が、戻し処理実行回数として格納される。
次に、図7に領域解放処理設定情報134の構成を示す。領域解放処理設定情報134は、スイッチ設定1341と、領域解放処理実行間隔設定1342と、領域解放処理期間設定1343から構成される。
スイッチ設定1341には、制御部150が、記憶装置161に格納されたデータのうちアクセス頻度(使用頻度)が低いデータを削除するための領域解放処理を実行するときには「オン」の情報が格納され、領域解放処理を実行しないときには「オフ」の情報が格納される。
領域解放処理実行間隔設定1342には、制御部150が、領域解放処理を実行するための間隔として、時間に関するパラメータが格納される。
領域解放処理期間設定1343には、制御部150が、領域解放処理を実行するための期間として、時間をパラメータとした情報が格納される。例えば、最終アクセス時刻からの一定期間が格納される。
次に、書き込み処理を図8のフローチャートに従って説明する。この処理は、いずれかのホスト300からのアクセス要求がライトアクセスであるときに、制御部150によって開始される。
まず、制御部150は、ホスト300からのアクセス要求に応答して、アドレス要求に付加されたLUアドレスを基にアドレス情報131を参照し、アドレス情報131から、書き込み先の記憶装置A(記憶装置160)のアドレスを特定し(S1)、記憶装置Aのアドレスに対応する記憶装置Bのアドレスは存在するか否かを判定する(S2)。
ステップS2において、YESと判定したときには、制御部150は、特定した記憶装置Aのアドレスおよび記憶装置Bのアドレスにデータを書き込み(S3)、アクセス時刻情報132の最終アクセス時刻を更新し(S4)、このルーチンでの処理を終了する。
例えば、LUアドレスが「0000」であるときには、記憶装置Aアドレス「0000」と記憶装置Bアドレス「0001」にそれぞれアクセス要求に伴うデータを書き込むとともに、アクセス時刻情報132の第1のエントリの最終アクセス時刻を更新する。
一方、ステップS2において、NOと判定したときには、制御部150は、アクセス時刻情報132で最終アクセス時刻が存在しない記憶装置Bのアドレスは存在するか否かを判定し(S5)、このステップS5でYESと判定したときには、最終アクセス時刻が存在しない記憶装置Bのアドレスを特定し(S6)、この後、ステップs8の処理に移行し、ステップs5でnoと判定したときには、アクセス時刻情報132から最終アクセス時刻の一番古い記憶装置bのアドレスを特定し(s7)、この後、ステップs8の処理に移行する。
ここで、制御部150は、ステップs5でyesと判定したときには、最終アクセス時刻が存在しないbのアドレスとして、例えば、アクセス時刻情報132のうち第4のエントリのアドレス「0003」を特定し、ステップs5でnoと判定したときには、アクセス時刻情報132の第1〜第3のエントリのうち最終アクセス時刻の一番古い記憶装置bのアドレスとして、「0002」を特定する。
次に、ステップS8において、制御部150は、特定した記憶装置Aのアドレスおよび記憶装置Bのアドレスにデータを書き込み(S8)、アドレス情報131の記憶装置Bアドレスおよびアクセス時刻情報132の最終アクセス時刻を更新し(S9)、このルーチンでの処理を終了する。
この際、ステップS8、S9においては、ステップS2において、記憶装置Aのアドレスに対応する記憶装置Bのアドレスが存在しない場合であって、LUアドレスが「0002」である場合には、記憶装置Aアドレスとなるアドレス「0002」と、記憶装置Bアドレスとなるアドレス「0002」または「0003」にデータを書き込み、記憶装置Bアドレスに対応した最終アクセス時刻を更新する。
上記書き込み処理を実行することで、アクセス要求に伴うデータを記憶装置160と記憶装置161に同時に書き込むことができる。
なお、この書き込み処理においては、ステップS4、S9の後に、アクセスカウンタの値を+1とする処理を追加することもできる。これにより、書き込み処理が行われる毎に、LUアドレスに対応したアクセスカウンタの値が変化することになる。
次に、読み出し処理を図9のフローチャートに従って説明する。この処理は、ホスト300からのアクセス要求がリードアクセスであるときに、制御部150によって開始される。
まず、制御部150は、ホスト300からのアクセス要求に応答して、アクセス要求に付加されたLUアドレスを基にアドレス情報131を参照し、読み出し先の論理ユニット(LU)170のアドレスに対応する記憶装置Bのアドレスは存在するか否かを判定する(S11)。
このステップS11でYESと判定したときには、制御部150は、記憶装置B(記憶装置161)からデータを読み出し(S12)、アクセス時刻情報132の最終アクセス時刻を更新し(S13)、ステップS15の処理に移行し、ステップS11でNOと判定したときには、記憶装置A(記憶装置160)からデータを読み出し(S14)、ステップS15の処理に移行する。
ステップS15では、制御部150は、アドレス情報131のアクセスカウンタを+1増やし(S15)、このルーチンでの処理を終了する。
この読み出し処理では、リードアクセスの対象となるデータが記憶装置160、161にそれぞれ格納されている場合、ステップS11でYESと判定したときには、制御部150は、高速の記憶デバイスで構成されている記憶装置161からデータを読み出ることになる。一方、リードアクセスの対象となるデータが記憶装置160のみに存在する場合、ステップS11でNOと判定したときには、制御部150は、低速の記憶デバイスで構成された記憶装置160からデータを読み出すことになる。
次に、領域解放処理を図10のフローチャートに従って説明する。この処理は、記憶装置161に格納されたデータのうちアクセス頻度が低く古くなったデータを削除するために、領域解放処理設定情報134のスイッチ設定1341が「オン」であることを条件に、制御部150によって開始される。
まず、制御部150は、現在時刻から領域解放処理期間設定1343の時間を引き(減算)、得られた時刻を領域解放時刻とする(S21)。即ち、現在時刻よりも設定時間だけ古い時刻を領域解放時刻とする。
次に、制御部150は、アクセス時刻情報132の最終アクセス時刻が領域解放時刻よりも古い記憶装置Bアドレスを特定し(S22)、特定した記憶装置Bアドレスをアドレス情報131から削除し(S23)、特定した記憶装置Bアドレスの最終アクセス時刻をアクセス時刻情報132から削除し(S24)、領域解放処理を終了する。
この領域解放処理では、記憶装置161のアドレスの中に、最終アクセス時刻として、領域解放時刻よりも古い最終アクセス時刻が存在するときには、そのアドレスをアドレス情報131とアクセス時刻情報132から削除することが実行される。この領域解放処理を実行することで、高速の記憶デバイスで構成された記憶装置161のデータの中からアクセス頻度が低く古くなったデータを削除する処理に相当する処理が実行されたことになる。
即ち、制御部150は、アクセス要求元からのアクセス要求に応答して記憶装置(記憶装置B)161に対するアクセス時間を最終アクセス時刻として計測し、この計測結果を基に記憶装置161に格納されたデータのうち、アクセス要求元のアクセス対象から一定時間以上外れたデータを削除することになる。
次に、データ戻し処理を図11のフローチャートに従って説明する。このデータ戻し処理は、記憶装置161からアクセス頻度が低くなったデータを削除した後、削除したデータに対するアクセスが記憶装置160に対して行われ、このデータに対するアクセス頻度が高くなったときに、戻し処理設定情報133のスイッチ設定1331が「オン」であることを条件に、記憶装置160のデータの一部を記憶装置161に戻すために、制御部150によって開始される。
まず、制御部150は、戻し処理設定情報133のうち戻し処理実行間隔設定1332で設定された戻し処理実行間隔毎にアドレス情報131を参照し、アクセスカウンタフィールド1311のエントリのうち、アクセスカウンタの数値が大きい順にLUアドレスを特定し(S31)、特定した論理ユニット(LU)170のアドレスに対応する記憶装置Bのアドレスは存在するか否かを判定する(S32)。
ステップS32において、YESと判定したときには、制御部150は、ステップS35の処理に移行し、一方、ステップS32でNOと判定したときには、特定した論理ユニット170のアドレスに対応する記憶装置Aのアドレスからデータを読み込み(S33)、読み込んだデータを記憶装置Bのアドレスに書き込み処理を実施し(S34)、ステップS35の処理に移行する。
ステップS33、S34においては、アドレス情報131のうちアクセスカウンタの数値が、例えば、最も大きい数値に対応するLUアドレスとして「0000」を特定し、この特定したLUアドレスに対応する記憶装置Aアドレスであるアドレス「0000」からデータを読み込み、読み込んだデータを記憶装置Bアドレスであるアドレス「0001」に書き込む。
この後、制御部150は、戻し処理設定情報133のうち戻し処理実行回数設定1333に規定された回数だけ戻し処理を実施したか否かを判定し(S35)、データ戻し処理を規定された回数実施していないときには、ステップS32の処理に戻り、ステップS32〜S35の処理を繰り返し、データ戻し処理を規定された回数実施したと判定したときには、アドレス情報131の全てのアクセスカウンタを0に変更してリセットし(S36)、このルーチンでの処理を終了する。
上記データ戻し処理を行うことで、記憶装置161に存在しないデータであって、記憶装置160には存在するデータの一部を記憶装置161に戻すことができる。これにより、アクセス頻度の高いデータが記憶装置161に戻されたときには、データ戻し処理の後、アクセス頻度の高いデータに対して、高速の記憶デバイスで構成された記憶装置161からデータを読み出すことができる。
なお、本実施例におけるデータ戻し処理では、アクセスカウンタの数値が大きい順に処理を実行しているものについて述べたが、アクセスカウンタの数値が閾値よりも大きいものに対して、データ戻し処理を実行することもできる。この際、ステップS35においては、アクセスカウンタの数値が閾値を超えたものについて、全て処理を実施したか否かを判定することで、データ戻し処理が、規定された回数実施したか否かを判定することができる。
本実施例によれば、レスポンス性能が異なる複数の記憶装置160、161に対して同時にデータを書き込み、その後、高速な記憶デバイスで構成された記憶装置161のデータの中からアクセス頻度が低いデータを削除するようにしたため、複雑な分析や運用を行うことなく、複数の記憶装置160、161を低速・高速の2階層に分けて階層化して管理することができる。
また、本実施例によれば、高速な記憶デバイスで構成された記憶装置161のデータの中からアクセス頻度が低いデータを削除した後、低速な記憶デバイスで構成された記憶装置160のデータの中からアクセス頻度が高いデータのみを記憶装置161に戻すようにしたため、データを戻すための処理を低負荷状態で且つ短時間で実現できる。
さらに、記憶装置161から削除したデータであっても、その後、アクセス頻度が高くなった場合には、記憶装置160から記憶装置161に戻すことで、高速な記憶デバイスで構成された記憶装置161からデータを読み出すことができる。
次に、本発明の第2実施例を図12に基づいて説明する。図12は、ホストと記憶装置との関係を示す模式図である。
本実施例は、複数の記憶装置160によって複数のRAIDグループ162〜164を構成し、複数の記憶装置161によってRAIDグループ165を構成し、論理ユニット(LU)170の代わりに、複数の論理ユニット(LU)171、172、173を設け、複数の論理ユニット(LU)171〜173を用いて、各RAIDグループ162〜165に対するデータの入出力処理を制御するようにしたものであり、ストレージサブシステム100におけるハードウエアの構成は、第1実施例のものと同様である。
具体的には、論理ユニット(LU)171には、RAIDグループ162に属する複数の記憶装置160で構成された複数の論理的記憶領域または複数の論理デバイス(LDEV)が割り当てられ、論理ユニット(LU)172には、RAIDグループ163に属する複数の記憶装置160で構成された複数の論理的記憶領域または複数の論理デバイス(LDEV)が割り当てられ、論理ユニット(LU)173には、RAIDグループ164に属する複数の記憶装置160で構成された複数の論理的記憶領域または複数の論理デバイス(LDEV)が割り当てられる。
一方、RAIDグループ165に属する複数の記憶装置161で構成された複数の論理的記憶領域または複数の論理デバイス(LDEV)はストレージプール180に割り当てられる。このストレージプール180に割り当てられる各論理的記憶領域または論理デバイスは、例えば、論理ユニット(LU)171、172に割り当てられる。
この場合、複数の記憶装置160と複数の記憶装置161を複数のRAIDグループに分けて階層化し、低速な記憶デバイスで構成されたRAIDグループ162〜164に属する論理デバイスを論理ユニット(LU)171〜173に割り当て、高速な記憶デバイスで構成されたRAIDグループ165に属する論理デバイスをストレージプール180に割り当て、ストレージプール180に割り当てられた論理デバイスを論理ユニット(LU)171、172に割り当てる構成を採用している。
次に、図13に制御メモリ130の構成を示す。本実施例における制御メモリ130には、アドレス情報131の代わりに、アドレス情報136が格納され、アクセス時刻情報132の代わりに、アクセス時刻情報137が格納され、戻し処理設定情報133と領域解放処理設定情報134および制御プログラム135は、第1実施例と同一のものが格納される。
また、制御メモリ130には、LU割当設定情報138とスケジュール情報139が格納される。以下、アドレス情報136、アクセス時刻情報137、LU割り当て設定情報138、スケジュール情報139の具体的内容を、図14乃至図17を用いて説明する。
まず、図14にアドレス情報136の構成を示す。アドレス情報136は、LU IDフィールド1360と、LUアドレスフィールド1310と、アクセスカウンタフィールド1311と、RAIDグループIDフィールド1361と、RAIDグループアドレスフィールド1362と、ストレージプールアドレスフィールド1363から構成される。
LU IDフィールド1360の各エントリには、各論理ユニット171〜173を一意に識別するための識別子が格納される。例えば、第1〜第4のエントリには、論理ユニット171を識別するための識別子として、「00」が格納され、第5〜第7のエントリには、論理ユニット172を一意に識別するための識別子として、「01」が格納され、第8〜第10のエントリには、論理ユニット173を識別するための識別子として、「02」が格納される。
LUアドレスフィールド1310の各エントリには、各論理ユニット171〜173に割り当てられた論理デバイス(LDEV)あるいは論理的記憶領域を特定するためのアドレスが格納される。例えば、第1〜第4のエントリには、論理ユニット171のアドレスとして、「0000」、「0001」、「0002」、「0003」が格納され、第5〜第7のエントリには、論理ユニット172のアドレスとして、「0000」、「0001」、「0002」が格納され、第8〜第10のエントリには、論理ユニット173のアドレスとして、「0000」、「0001」、「0002」が格納される。
なお、LU IDフィールド1360とLUアドレスフィールド1310に格納された情報は、ホスト300からのアクセス要求に付加される。アクセス要求に付加された情報は、例えば、アクセス要求で指定された書き込み先のアドレスや読み出し先のアドレスとして用いられる。
アクセスカウンタフィールド1311の各エントリには、各論理ユニット171〜173に割り当てられた論理デバイスがアクセスされる回数を示す計測値(制御部150による計測値)が格納される。例えば、第1のエントリには、論理ユニット171のアドレス「0000」に対応したアクセスカウンタの値として、「1158」が格納され、第2のエントリには、論理ユニット171のアドレス「0001」に対応したアクセスカウンタの値として「3」が格納され、第3のエントリには、論理ユニット171のアドレス「0002」に対応したアクセスカウンタの値として、「72」が格納され、第4のエントリには、論理ユニット171のアドレス「0000」に対応したアクセスカウンタの値として、「180」が格納される。
RAIDグループIDフィールド1361の各エントリには、各RAIDグループ162〜163を識別するための識別子に関する情報が格納される。例えば、第1〜第4のエントリには、RAIDグループ162を識別するための識別子として、「00」が格納され、第5〜第10のエントリには、RAIDグループ163を識別するための識別子として、「01」が格納される。
RAIDグループアドレスフィールド1362の各エントリには、各RAIDグループ162〜164に属する論理デバイスを特定するためのアドレスが格納される。例えば、第1〜第4のエントリには、RAIDグループ162に属する論理デバイスを特定するためのアドレスとして、「0000」〜「0003」が格納され、第5〜第10のエントリには、RAIDグループ163に属する論理デバイスを特定するためのアドレスとして、「0000」〜「0005」が格納される。
ストレージプールアドレスフィールド1363の各エントリには、RAIDグループアドレスに対応したアドレスとして、ストレージプール180に割り当てられた論理デバイスまたは論理的記憶領域を特定するためのアドレスが格納される。例えば、RAIDグループ162に属するRAIDグループアドレス「0000」、「0001」、「0002」、「0003」に対応するストレージプールアドレスとして、「0001」、「0000」、「NULL」、「0002」が格納される。なお、エントリに、「NULL」が格納されているときには、このアドレスについては、ストレージプール180に論理デバイスまたは論理的記憶領域が割り当てられていないことを示す。
次に、図15にアクセス時刻情報137の構成を示す。アクセス時刻情報137は、ストレージプールアドレスフィールド1363と、最終アクセス時刻情報フィールド1320から構成される。
ストレージプールアドレスフィールド1363の各エントリには、ストレージプール130に割り当てられた論理デバイスまたは論理的記憶領域を特定するためのアドレスが格納される。例えば、ストレージプール180に、4つの論理ボリュームまたは4つの論理的記憶領域が割り当てられていた場合、これらのアドレスとして、第1〜第4のエントリには、「0000」、「0001」、「0002」、「0003」が格納される。
最終アクセス時刻フィールド1320の各エントリには、ストレージプール180に割り当てられた論理デバイスまたは論理的記憶領域に対するアクセス時間に関する情報として、最終アクセス時刻が格納される。なお、最終アクセス時刻フィールド1320のエントリに、「NULL」が格納されているときには、このアドレスに対応する論理デバイスには、制御部150からアクセスがないことを示す。
次に、図16にLU割り当て設定情報138の構成を示す。LU割り当て設定情報138は、LU IDフィールド1360と、LU割り当て設定フィールド1380から構成される。
LU IDフィールド1360の各エントリには、各論理ユニット171〜173を識別するための識別子が格納される。例えば、第1のエントリには、論理ユニット171を識別するための識別子として、「00」が格納され、第2のエントリには、論理ユニット172を識別するための識別子として「01」が格納され、第3のエントリには、論理ユニット173を識別するための識別子として、「02」が格納される。なお、第4のエントリには、他の論理ユニットを識別するための識別子として、「03」が格納される。
LU割り当て設定フィールド1380の各エントリには、各論理ユニット171〜173にストレージプール180が接続され、各論理ユニット171〜173にストレージプール180の論理デバイスが割り当てられるときに「オン」の情報が格納され、各論理ユニット171〜173とストレージプール180とが切り離されて、各論理ユニット171〜173にストレージプール180の論理デバイスが割り当てられないときには、「オフ」の情報が格納される。
次に、図17に、スケジュール情報139の構成を示す。スケジュール情報139は、LU IDフィールド1390と、割り当て時刻フィールド1391と、切り離し時刻フィールド1392から構成される。
LU IDフィールド1390の各エントリには、各論理ユニット171〜173を識別するための識別子が格納される。例えば、第1〜第3のエントリには、論理ユニット171〜173に対応した識別子として、「00」、「01」、「02」が格納される。
割り当て時刻フィールド1391の各エントリには、各論理ユニット171〜173に対して、ストレージプール180の論理デバイスが割り当てられたときの時刻、即ち、制御部150が、LU割り当て設定処理を行ったときの時刻が格納される。
切り離し時刻フィールド1392の各エントリには、制御部150が、論理ユニット171〜173からストレージプール180を切り離し、各論理ユニット171〜173に対して、ストレージプール180の論理デバイスの割り当てを解除したときの時刻が格納される。
次に、図18に、第2実施例における処理の概要を説明するための模式図を示す。
本実施例においては、例えば、論理ユニット171をアクセス対象としてホスト300から論理ユニット171にアクセスを行った場合、アクセス要求がライトアクセスであるときには、RAIDグループ162に属する記憶装置160にデータを書き込むとともに、ストレージプール180にデータを書き込み、その後、ストレージプール180に対するアクセス頻度が低下し、ストレージプール180をアクセス先とする必要がなくなったときには、論理ユニット171とストレージプール180とを切り離すこととしている。
一方、RAIDグループ164に属する記憶装置160に、アクセス頻度が低いデータを格納している過程で、RAIDグループ164に属する記憶装置160に対するアクセス頻度が増加したときには、RAIDグループ165に属する複数の記憶装置161で構成された論理デバイスが割り当てられたストレージプール180と論理ユニット173とを接続し、論理ユニット173に対してストレージプール180の論理デバイスを割り当て、アクセス頻度が高くなったデータをストレージプール180の論理デバイスに格納することとしている。
次に、第2実施例における書き込み処理を図19のフローチャートに従って説明する。この書き込み処理は、ホスト300から論理ユニット171〜173のうちいずれかの論理ユニットに対してアクセス要求が送信され、アクセス要求がライトアクセスであるときに、制御部150によって開始される。
まず、制御部150は、ホスト制御部150からのアクセス要求に付加されたLU IDとLUアドレスを基にアドレス情報136を参照し、書き込み先のRAIDグループIDとRAIDグループアドレスを特定し(S41)、次にLU割り当て設定情報138を参照し、書き込み先LUのLU割り当て設定はオンか、あるいはオフかを判定する(S42)。
ステップS42において、制御部150は、LU IDが、例えば「02」であるときには、LU割り当て設定がオフであると判定し、特定したRAIDグループIDとRAIDグループアドレスに、アクセス要求に伴うデータを書き込み、このルーチンでの処理を終了する。この場合、制御部150は、LU割り当て設定がオフであるとして、RAIDグループ164に属する記憶装置160にデータを書き込む。
一方、ステップS42において、制御部150は、LU IDが「00」または「01」であって、LU割り当て設定がオンであると判定したときには、アドレス情報136を参照し、ステップS41で特定したアドレスに対応するストレージプールアドレスは存在するか否かを判定し(S44)、YESと判定したときには、特定したRAIDグループIDとRAIDグループアドレスおよびストレージプールアドレスにデータを書き込み(S45)、アクセス時刻情報137のうちストレージプールアドレスに対応した最終アクセス時刻を更新し(S46)、このルーチンでの処理を終了する。
この場合、ステップS44〜S46では、アドレス情報136のエントリのうち、例えば、第1のエントリのアドレスを特定したときには、RAIDグループ162に属する記憶装置160のアドレス「0000」とRAIDグループ165に属する記憶装置161のアドレス「0001」にデータを同時に書き込むことになる。
次に、ステップS44でNOと判定したときには、制御部150は、アクセス時刻情報137を参照し、最終アクセス時刻が存在しないストレージプールアドレスは存在するか否かを判定し(S47)、このステップでYESと判定したときには、最終アクセス時刻が存在しないストレージプールアドレスを特定し(S48)、この後、ステップS50の処理に移行し、ステップS47でNOと判定したときには、アクセス時刻情報137を参照し、ストレージプールアドレスのうち最終アクセス時刻の一番古いストレージプールアドレスを特定し(S49)、この後、ステップS50の処理に移行する。
次に、ステップS50において、制御部150は、ステップS41で特定したRAIDグループIDとRAIDグループアドレスおよびステップS48またはステップS49で特定したストレージプールアドレスにデータを書き込み、この後、アドレス情報136のストレージプールアドレスおよびアクセス時刻情報137の最終アクセス時刻を更新し(S51)、このルーチンでの処理を終了する。
ステップS47〜S51では、例えば、LU割り当て設定がオンであって、RAIDグループアドレスに対応したストレージプールアドレスが存在しないアドレスとして、「0003」を特定し、または最終アクセス時刻の一番古いストレージプールアドレスとして、「0002」を特定し、特定したアドレスとステップS41で特定したアドレスにデータを格納することになる。
なお、ステップS46とステップS51の後に、アドレス情報136のアクセスカウンタを+1とする処理を追加することもできる。
次に、読み出し処理を図20のフローチャートに従って説明する。この読み出し処理は、ホスト300から各論理ユニット171〜173に対するアクセス要求がリードアクセスであるときに、制御部150によって開始される。
まず、制御部150は、ホスト300からのアクセス要求に応答して、LU割り当て設定情報138を参照し、アクセス要求で指定された読み出し先LUのLU割り当て設定はオンかオフかを判定し(S61)、このステップS61でオフと判定したときには、LU割り当て設定がオフとなっているRAIDグループからデータを読み出し(S62)、この後、ステップS67の処理に移行する。この場合、ステップS62では、例えば、RAIDグループ164に属する記憶装置160からデータを読み出す。
一方、ステップS61において、読み出し先LUのLU割り当て設定はオンであると判定したときには、制御部150は、ホスト300から送信されたアクセス要求に付加された情報のうちLU IDとLUアドレスを基にアドレス情報136を参照し、読み出し先のLU IDとLUアドレスに対応するストレージプールアドレスが存在するか否かを判定する(S63)。
ステップS63において、YESと判定したときには、制御部150は、ストレージプール180からデータを読み出し(S64)、アクセス時刻情報137のうちデータを読み出したストレージプールアドレスに対応した最終アクセス時刻を更新し(S65)、この後、ステップS67の処理に移行し、一方、ステップS63でNOと判定したときには、RAIDグループからデータを読み出し(S66)、この後、ステップS67の処理に移行する。
ステップS63〜S65では、高速な記憶デバイスで構成された記憶装置161から、論理デバイスが割り当てられたストレージプール180からデータを読み出し、ステップS63とステップS66では、RAIDグループ162またはRAIDグループ163に属し、低速な記憶デバイスで構成された記憶装置160からデータを読み出すことになる。
次に、制御部150は、ステップS67において、アドレス情報136のアクセスカウンタを1増やし、このルーチンでの処理を終了する。
この読み出し処理を実行することで、論理ユニット171がリードアクセスの対象となった場合、ストレージプール180にリードアクセスの対象となるデータが存在するときには、ストレージプール180からデータを読み出し、ストレージプール180にリードアクセスの対象となるデータが存在しないときには、RAIDグループ162または163に属する記憶装置160からデータを読み出し、ストレージプール180が設定されていない論理ユニット173がリードアクセスの対象となったときには、RAIDグループ164に属する記憶装置160からデータを読み出すことになる。
次に、領域解放処理を図21のフローチャートに従って説明する。この領域解放処理は、ストレージプール180のデータのうちアクセス頻度が低く古くなったデータを削除するために、現在時刻が、領域解放処理設定情報134に設定された時刻となったときに、制御部150によって開始される。
まず、制御部150は、戻し処理設定情報133を参照し、現在時刻から領域解放処理設定期間の時間を引き(減算)、得られた時刻を領域解放時刻とし(S71)、次にアクセス時刻情報137を参照し、最終アクセス時刻が領域解放時刻よりも古いストレージプールアドレスを特定し(S72)、特定したストレージプールアドレスをアドレス情報136から削除し(S73)、特定したストレージプールアドレスの最終アクセス時刻をアクセス時刻情報137から削除し(S74)、このルーチンでの処理を終了する。
この領域解放処理を実行することで、高速な記憶デバイスで構成された記憶装置161から、論理デバイスが割り当てられたストレージプール180のデータのうちアクセス頻度が低く古くなったデータを削除することができる。
次に、データ戻し処理を図22のフローチャートに従って説明する。このデータ戻し処理は、戻し処理設定情報133のうち戻し処理実行間隔設定1332に設定された戻し処理実行間隔毎に、制御部150によって開始される。
まず、制御部150は、LU割り当て設定がオンになっている論理ユニット(LU IDが「00」または「01」の論理ユニット)を処理対象として、アドレス情報136を参照し、アクセスカウンタの数値が閾値よりも大きいLUのアドレスを特定する(S81)。例えば、閾値が、「100」として設定されているときには、アクセスカウンタの数値が閾値より大きいLUのアドレスとして、「0000」、「0003」、「0000」、「0001」、「0002」を特定する。
次に、制御部150は、特定したLUのアドレスに対応するストレージプールアドレスは存在するか否かを判定し(S82)、このステップS82でYESと判定したときには、この後、ステップS85の処理に移行し、一方、ステップS82でNOと判定したときには、特定したLUのアドレスに対応するRAIDグループIDとRAIDグループアドレスからデータを読み込み(S83)、読み込んだデータをストレージプールアドレスに書き込むための処理(図19の書き込み処理)を実施する(S84)。
次に、ステップS85において、制御部150は、戻し処理設定情報133を参照し、戻し処理実行回数設定13332に規定された回数だけ、データ戻し処理を実施したか否かを判定し、ステップS85でNOと判定したときには、ステップS82〜S85の処理を繰り返し、一方、ステップS85でYESと判定したときには、アドレス情報136を参照し、アドレス情報136の全てのアクセスカウンタを0に変更してリセットし(S86)、このルーチンでの処理を終了する。
このデータ戻し処理を実行することで、RAIDグループ162、163に属する記憶装置160に格納されたデータのうちアクセスカウンタの値が閾値よりも大きく、アクセス頻度が高いデータをストレージプール180に戻すことができる。
次に、ストレージプール割り当て処理を図23のフローチャートに従って説明する。このストレージプール割り当て処理は、各論理ユニット171〜173に対するアクセス頻度を計測する過程あるいはスケジュール情報139を管理する過程で、制御部150によって開始される。
まず、制御部150は、LU割り当て設定情報138のうちLU割り当て設定がオフになっている論理ユニットを対象として、アドレス情報136を参照し、アクセスカウンタの値を基に各LUのアクセス頻度(使用頻度)が閾値以上であるか、あるいはスケジュール情報139を参照し、現在時刻が、論理ユニット171〜173に設定されたLU(論理ユニット)へのストレージプール割り当て時刻か否かを判定する(S91)。
ステップS91でNOと判定したときには、制御部150は、LU割り当て設定をオフとしたまま、このルーチンでの処理を終了し、一方、ステップS91でYESと判定したときには、LU割り当て設定情報138のうち変更対象となるLU IDのLU割り当て設定をオフからオンに設定し(S92)、このルーチンでの処理を終了する。
この処理では、例えば、論理ユニット173に対するアクセス頻度が閾値を超えたときに、論理ユニット173に対するLU割り当て設定をオフからオンに設定し、論理ユニット173とストレージプール180とを接続することになる。
次に、ストレージプール切り離し処理を図24のフローチャートに従って説明する。このストレージプール切り離し処理は、各論理ユニット171〜173に対するアクセス頻度を管理している過程またはスケジュール情報139を管理している過程で、制御部150によって開始される。
まず、制御部150は、LU割り当て設定情報138のうちLU割り当て設定がオンになっている論理ユニットを対象として、アドレス情報136を参照し、各論理ユニット171〜173のアクセス頻度(使用頻度)が閾値未満であるか、あるいはスケジュール情報139を参照し、現在時刻が、各論理ユニット171〜173に設定されたLU(論理ユニット)へのストレージプール切り離し時刻か否かを判定する(S101)。
ステップS101でNOと判定したときには、制御部150は、このルーチンでの処理を終了し、一方、ステップS101でYESと判定したときには、LU割り当て設定情報138のうち処理対象となるLU IDのLU割り当て設定をオンからオフに設定し(S102)、次に、アドレス情報136を参照し、処理対象となるLU IDのLUアドレスに対応するストレージプールアドレスは存在するか否かを判定する(S103)。
ステップS103でNOと判定したときには、制御部150は、このルーチンでの処理を終了し、一方、ステップS103でYESと判定したときには、アクセス時刻情報137のうち最終アクセス時刻を削除し(S104)、次に、アドレス情報136のうちストレージプールアドレスを削除し(S105)、処理対象のLU IDの全てのLUアドレスに対して処理が終了したか否かを判定し(S106)、このステップS106でNOと判定したときには、ステップS104〜ステップS106の処理を繰り返し、一方、ステップS106でYESと判定したときには、全てのLUアドレスに対する処理が終了したとして、このルーチンでの処理を終了する。
このストレージプール切り離し処理を実行することで、例えば、ストレージプール180に対するアクセス頻度が閾値未満となったときには、論理ユニット171に割り当てられていたストレージプール180が論理ユニット171から切り離され、論理ユニット171に割り当てられていたストレージプールアドレスが削除されるとともに、このストレージプールアドレスに対応した最終アクセス時刻が削除されることになる。
本実施例によれば、低速な記憶デバイスで構成された記憶装置160から論理デバイスが割り当てられるRAIDグループ162と高速な記憶デバイスで構成された記憶装置161から論理デバイスが割り当てられるストレージプール180に対して同時にデータを書き込み、その後、ストレージプール180のデータの中からアクセス頻度が低いデータを削除するようにしたため、複雑な分析や運用を行うことなく、複数の記憶装置160、161を低速・高速の2階層に分けて階層化して管理することができる。
また、本実施例によれば、ストレージプール180のデータの中からアクセス頻度が低いデータを削除した後、低速な記憶デバイスで構成された記憶装置160から論理デバイスが割り当てられたRAIDグループ162のデータの中からアクセス頻度が高いデータをストレージプール180に戻すようにしたため、データを戻すための処理を低負荷状態で且つ短時間で実現できる。
さらに、低速な記憶デバイスで構成された記憶装置160から論理デバイスが割り当てられているRAIDグループ164に対するアクセス頻度が低く、論理ユニット173にストレージプール180が接続されていない場合でも、その後、RAIDグループ164に対するアクセス頻度が高くなった場合には、論理ユニット173にストレージプール180を接続することで、論理ユニット173をアクセス対象とするデータのうちアクセス頻度が高くなったデータをストレージプール180に格納することができるとともに、ストレージプール180からデータを読み出すことができる。
また、論理ユニット171をアクセス対象としているときに、ストレージプール180に対するアクセス頻度が低下し、ストレージプール180をアクセス先とする必要がなくなったときには、論理ユニット171とストレージプール180とを切り離すことができる。
100 ストレージサブシステム、200 ネットワーク、300 ホスト(ホスト計算機)、120 キャッシュメモリ、110 ネットワークインタフェース、130 制御メモリ、140 制御部、150 制御部、160、161 記憶装置、170、171、172、173 論理ユニット、131 アドレス情報、132 アクセス時刻情報、133 戻し処理設定情報、134 領域解放処理設定情報、135 制御プログラム、136 アドレス情報、137 アクセス時刻情報、138 LU割り当て設定情報、139 スケジュール情報
Claims (20)
- 性能が異なる複数の記憶装置と、アクセス要求元からのアクセス要求に応答して前記複数の記憶装置に対するデータの入出力処理を制御する制御部と、を有し、
前記制御部は、
前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求に伴うデータを前記各記憶装置に書き込み、前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち一方の記憶装置に対するアクセス時間を計測し、前記計測結果を基に前記一方の記憶装置に格納されたデータのうち、前記アクセス要求元のアクセス対象から一定時間以上外れたデータを削除することを特徴とするストレージサブシステム。 - 請求項1に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち他方の記憶装置に格納されたデータに対するアクセス頻度を計測し、前記他方の記憶装置に格納されたデータの中から、前記計測によるアクセス頻度が高い順に設定数だけ読み出し、前記読み出したデータを前記一方の記憶装置に書き込むことを特徴とするストレージサブシステム。 - 請求項1に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち他方の記憶装置に格納されたデータに対するアクセス頻度を計測し、前記他方の記憶装置に格納されたデータの中から、前記計測によるアクセス頻度が閾値より大きいデータを読み出し、前記読み出したデータを前記一方の記憶装置に書き込むことを特徴とするストレージサブシステム。 - 請求項1に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求で指定された書き込み先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスを特定し、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在するか否かを判定し、前記判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在する場合、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込み、前記判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在しない場合、前記一方の記憶装置に対するアクセス時間の計測結果を基に最終アクセス時間に対応したアドレスまたは前記最終アクセス時間が存在しないアドレスを前記一方の記憶装置に対するアドレスとして特定し、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記一方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込むことを特徴とするストレージサブシステム。 - 請求項1に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求がリードアクセスであるときには、 前記アクセス要求で指定された読み出し先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスの存在の有無を判定し、前記判定結果から、前記他方の記憶装置のアドレスが存在する場合、前記アクセス要求で指定されたデータを前記他方の記憶装置から読み出し、前記判定結果から、前記他方の記憶装置のアドレスが存在しない場合、前記アクセス要求で指定されたデータを前記一方の記憶装置から読み出すことを特徴とするストレージサブシステム。 - 請求項1に記載のストレージサブシステムにおいて、
前記制御部は、
前記複数の記憶装置のうち前記一方の記憶装置からその論理的記憶領域が割り当てられるストレージプールと、前記複数の記憶装置のうち他方の記憶装置からその論理的記憶領域が割り当てられるとともに、一定の条件の下に前記ストレージプールから前記論理的記憶領域が割り当てられる複数の論理ユニットを有し、
前記制御部は、
前記複数の論理ユニットのうち、一部の論理ユニットを、前記ストレージプールに属する前記論理的記憶領域と前記他方の記憶装置に属する前記論理的記憶領域が、それぞれ前記アクセス要求元のアクセス対象として割り当てられる論理ユニットとして管理し、前記複数の論理ユニットのうち、前記一部の論理ユニットとは異なる他の論理ユニットを、前記他方の記憶装置に属する前記論理的記憶領域が、前記アクセス要求元のアクセス対象として割り当てられる論理ユニットとして管理し、前記アクセス要求元からのアクセス要求が、前記一部の論理ユニットに対するライトアクセスであるときには、前記ストレージプールに属する前記論理的記憶領域と前記他方の記憶装置に属する前記論理的記憶領域をライトアクセス先として、当該ライトアクセス先に前記アクセス要求に伴うデータを書き込み、前記アクセス要求元からのアクセス要求に応答して前記ストレージプールに割り当てられた前記論理的記憶領域に対するアクセス時間を計測し、前記計測結果を基に前記ストレージプールに割り当てられた前記論理的記憶領域に格納されたデータのうち、前記アクセス要求元のアクセス対象から一定時間以上外れたデータを削除することを特徴とするストレージサブシステム。 - 請求項6に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求に応答して前記複数の論理ユニットのうち前記一部の論理ユニットに対するアクセス頻度またはアクセス時間を計測し、前記計測によるアクセス頻度が閾値以上または前記計測によるアクセス時間が予め設定された設定時間である場合には、前記一定の条件を満たすとして、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域を割り当てることを特徴とするストレージサブシステム。 - 請求項6に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求に応答して前記複数の論理ユニットのうち前記一部の論理ユニットに対するアクセス頻度またはアクセス時間を計測し、前記計測によるアクセス頻度が閾値未満または前記計測によるアクセス時間が予め設定された設定時間でない場合には、前記一定の条件を満たさないとして、前記一部の論理ユニットに割り当てられていた前記論理的記憶領域を前記ストレージプールから切り離すことを特徴とするストレージサブシステム。 - 請求項6に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求で指定された書き込み先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスを特定し、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられているか否かの第1の判定を実行し、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられていない場合、前記特定した前記他方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込み、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられている場合、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在するか否かの第2の判定を実行し、前記第2の判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在する場合、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスに前記アクセス要求に伴うデータを書き込み、前記第2の判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在しない場合、前記ストレージプールに割り当てられた前記論理的記憶領域に対するアクセス時間の計測結果を基に最終アクセス時間に対応したアドレスまたは前記最終アクセス時間が存在しないアドレスを前記ストレージプールのアドレスとして特定し、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記ストレージプールのアドレスに前記アクセス要求に伴うデータを書き込むことを特徴とするストレージサブシステム。 - 請求項6に記載のストレージサブシステムにおいて、
前記制御部は、
前記アクセス要求元からのアクセス要求がリードアクセスであるときには、 前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられているか否かの第1の判定を実行し、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられていない場合、前記アクセス要求で指定されたデータを、前記他方の記憶装置のうち前記一部の論理ユニットとは異なる他の論理ユニットに属する前記他方の記憶装置から読み出し、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられている場合、前記アクセス要求で指定された読み出し先のアドレスとして、前記複数のユニットのうち前記一部の論理ユニットに属する前記ストレージプールのアドレスが存在するか否かの第2の判定を実行し、前記第2の判定結果から、前記ストレージプールのアドレスが存在する場合、前記アクセス要求で指定されたデータを前記ストレージプールから読み出し、前記第2の判定結果から、前記ストレージプールのアドレスが存在しない場合、前記アクセス要求で指定されたデータを、前記他方の記憶装置のうち前記一部の論理ユニットに属する前記他方の記憶装置から読み出すことを特徴とするストレージサブシステム。 - 性能が異なる複数の記憶装置と、アクセス要求元からのアクセス要求に応答して前記複数の記憶装置に対するデータの入出力処理を制御する制御部と、を有するストレージサブシステムの制御方法であって、
前記制御部が、前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求に伴うデータを前記各記憶装置に書き込むステップと、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち一方の記憶装置に対するアクセス時間を計測するステップと、
前記制御部が、前記計測結果を基に前記一方の記憶装置に格納されたデータのうち、前記アクセス要求元のアクセス対象から一定時間以上外れたデータを削除するステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項11に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち他方の記憶装置に格納されたデータに対するアクセス頻度を計測するステップと、
前記制御部が、前記他方の記憶装置に格納されたデータの中から、前記計測によるアクセス頻度が高い順に設定数だけ読み出すステップと、
前記制御部が、前記読み出したデータを前記一方の記憶装置に書き込むステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項11に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記複数の記憶装置のうち他方の記憶装置に格納されたデータに対するアクセス頻度を計測するステップと、
前記制御部が、前記他方の記憶装置に格納されたデータの中から、前記計測によるアクセス頻度が閾値より大きいデータを読み出すステップと、
前記制御部が、前記読み出したデータを前記一方の記憶装置に書き込むステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項11に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求で指定された書き込み先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスを特定するステップと、
前記制御部が、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在するか否かを判定するステップと、
前記制御部が、前記判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在する場合、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込むステップと、
前記制御部が、前記判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記一方の記憶装置のアドレスが存在しない場合、前記一方の記憶装置に対するアクセス時間の計測結果を基に最終アクセス時間に対応したアドレスまたは前記最終アクセス時間が存在しないアドレスを前記一方の記憶装置に対するアドレスとして特定するステップと、
前記制御部が、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記一方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込むステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項11に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求がリードアクセスであるときには、 前記アクセス要求で指定された読み出し先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスの存在の有無を判定するステップと、
前記制御部が、前記判定結果から、前記他方の記憶装置のアドレスが存在する場合、前記アクセス要求で指定されたデータを前記他方の記憶装置から読み出すステップと、
前記制御部が、前記判定結果から、前記他方の記憶装置のアドレスが存在しない場合、前記アクセス要求で指定されたデータを前記一方の記憶装置から読み出すステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項11に記載のストレージサブシステムの制御方法において、
前記制御部が、前記複数の記憶装置のうち前記一方の記憶装置からその論理的記憶領域が割り当てられるストレージプールと、前記複数の記憶装置のうち他方の記憶装置からその論理的記憶領域が割り当てられるとともに、一定の条件の下に前記ストレージプールから前記論理的記憶領域が割り当てられる複数の論理ユニットを有し、
前記制御部が、前記複数の論理ユニットのうち、一部の論理ユニットを、前記ストレージプールに属する前記論理的記憶領域と前記他方の記憶装置に属する前記論理的記憶領域が、それぞれ前記アクセス要求元のアクセス対象として割り当てられる論理ユニットとして管理するステップと、
前記制御部が、前記複数の論理ユニットのうち、前記一部の論理ユニットとは異なる他の論理ユニットを、前記他方の記憶装置に属する前記論理的記憶領域が、前記アクセス要求元のアクセス対象として割り当てられる論理ユニットとして管理するステップと、
前記制御部が、前記アクセス要求元からのアクセス要求が、前記一部の論理ユニットに対するライトアクセスであるときには、前記ストレージプールに属する前記論理的記憶領域と前記他方の記憶装置に属する前記論理的記憶領域をライトアクセス先として、当該ライトアクセス先に前記アクセス要求に伴うデータを書き込むステップと、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記ストレージプールに割り当てられた前記論理的記憶領域に対するアクセス時間を計測するステップと、
前記制御部が、前記計測結果を基に前記ストレージプールに割り当てられた前記論理的記憶領域に格納されたデータのうち、前記アクセス要求元のアクセス対象から一定時間以上外れたデータを削除するステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項16に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記複数の論理ユニットのうち前記一部の論理ユニットに対するアクセス頻度またはアクセス時間を計測するステップと、
前記制御部が、前記計測によるアクセス頻度が閾値以上または前記計測によるアクセス時間が予め設定された設定時間である場合には、前記一定の条件を満たすとして、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域を割り当てるステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項16に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求に応答して前記複数の論理ユニットのうち前記一部の論理ユニットに対するアクセス頻度またはアクセス時間を計測するステップと、
前記制御部が、前記計測によるアクセス頻度が閾値未満または前記計測によるアクセス時間が予め設定された設定時間でない場合には、前記一定の条件を満たさないとして、前記一部の論理ユニットに割り当てられていた前記論理的記憶領域を前記ストレージプールから切り離すステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項16に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求がライトアクセスであるときには、前記アクセス要求で指定された書き込み先のアドレスとして、前記複数の記憶装置のうち他方の記憶装置のアドレスを特定するステップと、
前記制御部が、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられているか否かの第1の判定を実行するステップと、
前記制御部が、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられていない場合、前記特定した前記他方の記憶装置のアドレスに前記アクセス要求に伴うデータを書き込むステップと、
前記制御部が、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられている場合、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在するか否かの第2の判定を実行するステップと、
前記制御部が、前記第2の判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在する場合、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスに前記アクセス要求に伴うデータを書き込むステップと、
前記制御部が、前記第2の判定結果から、前記特定した前記他方の記憶装置のアドレスに対応した前記ストレージプールのアドレスが存在しない場合、前記ストレージプールに割り当てられた前記論理的記憶領域に対するアクセス時間の計測結果を基に最終アクセス時間に対応したアドレスまたは前記最終アクセス時間が存在しないアドレスを前記ストレージプールのアドレスとして特定するステップと、
前記制御部が、前記特定した前記他方の記憶装置のアドレスおよび前記特定した前記ストレージプールのアドレスに前記アクセス要求に伴うデータを書き込むステップを含む、ことを特徴とするストレージサブシステムの制御方法。 - 請求項16に記載のストレージサブシステムの制御方法において、
前記制御部が、前記アクセス要求元からのアクセス要求がリードアクセスであるときには、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられているか否かの第1の判定を実行するステップと、
前記制御部が、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられていない場合、前記アクセス要求で指定されたデータを、前記他方の記憶装置のうち前記一部の論理ユニットとは異なる他の論理ユニットに属する前記他方の記憶装置から読み出すステップと、
前記制御部が、前記第1の判定結果から、前記一部の論理ユニットに前記ストレージプールから前記論理的記憶領域が割り当てられている場合、前記アクセス要求で指定された読み出し先のアドレスとして、前記複数のユニットのうち前記一部の論理ユニットに属する前記ストレージプールのアドレスが存在するか否かの第2の判定を実行するステップと、
前記制御部が、前記第2の判定結果から、前記ストレージプールのアドレスが存在する場合、前記アクセス要求で指定されたデータを前記ストレージプールから読み出すステップと、
前記制御部が、前記第2の判定結果から、前記ストレージプールのアドレスが存在しない場合、前記アクセス要求で指定されたデータを、前記他方の記憶装置のうち前記一部の論理ユニットに属する前記他方の記憶装置から読み出すステップを含む、ことを特徴とするストレージサブシステムの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010112212A JP2011242862A (ja) | 2010-05-14 | 2010-05-14 | ストレージサブシステム及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010112212A JP2011242862A (ja) | 2010-05-14 | 2010-05-14 | ストレージサブシステム及びその制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011242862A true JP2011242862A (ja) | 2011-12-01 |
Family
ID=45409471
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010112212A Pending JP2011242862A (ja) | 2010-05-14 | 2010-05-14 | ストレージサブシステム及びその制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011242862A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013171305A (ja) * | 2012-02-17 | 2013-09-02 | Fujitsu Ltd | ストレージ装置、ストレージシステム、ストレージ管理方法及びストレージ管理プログラム |
US10747432B2 (en) | 2016-07-27 | 2020-08-18 | Fujitsu Limiited | Storage device, storage system, and storage control method |
JP7572520B1 (ja) | 2023-08-02 | 2024-10-23 | Necプラットフォームズ株式会社 | ストレージ装置、ストレージ制御方法、及びプログラム |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002207629A (ja) * | 2001-01-12 | 2002-07-26 | Hitachi Ltd | ストレージサービスの提供方法およびストレージシステム |
JP2006139552A (ja) * | 2004-11-12 | 2006-06-01 | Hitachi Ltd | ストレージ装置及びストレージ装置のデータライフサイクル管理方法 |
JP2006216070A (ja) * | 2006-03-06 | 2006-08-17 | Hitachi Ltd | 記憶装置 |
JP2008299559A (ja) * | 2007-05-31 | 2008-12-11 | Hitachi Ltd | ストレージシステム及びストレージシステムにおけるデータ移行方法 |
-
2010
- 2010-05-14 JP JP2010112212A patent/JP2011242862A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002207629A (ja) * | 2001-01-12 | 2002-07-26 | Hitachi Ltd | ストレージサービスの提供方法およびストレージシステム |
JP2006139552A (ja) * | 2004-11-12 | 2006-06-01 | Hitachi Ltd | ストレージ装置及びストレージ装置のデータライフサイクル管理方法 |
JP2006216070A (ja) * | 2006-03-06 | 2006-08-17 | Hitachi Ltd | 記憶装置 |
JP2008299559A (ja) * | 2007-05-31 | 2008-12-11 | Hitachi Ltd | ストレージシステム及びストレージシステムにおけるデータ移行方法 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013171305A (ja) * | 2012-02-17 | 2013-09-02 | Fujitsu Ltd | ストレージ装置、ストレージシステム、ストレージ管理方法及びストレージ管理プログラム |
US9218276B2 (en) | 2012-02-17 | 2015-12-22 | Fujitsu Limited | Storage pool-type storage system, method, and computer-readable storage medium for peak load storage management |
US10747432B2 (en) | 2016-07-27 | 2020-08-18 | Fujitsu Limiited | Storage device, storage system, and storage control method |
JP7572520B1 (ja) | 2023-08-02 | 2024-10-23 | Necプラットフォームズ株式会社 | ストレージ装置、ストレージ制御方法、及びプログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8639899B2 (en) | Storage apparatus and control method for redundant data management within tiers | |
US9785381B2 (en) | Computer system and control method for the same | |
JP4749255B2 (ja) | 複数種類の記憶デバイスを備えたストレージシステムの制御装置 | |
JP4940738B2 (ja) | 記憶領域動的割当方法 | |
US8447946B2 (en) | Storage apparatus and hierarchical data management method for storage apparatus | |
US9658779B2 (en) | Computer system and control method for computer system | |
US8850152B2 (en) | Method of data migration and information storage system | |
US7506101B2 (en) | Data migration method and system | |
JP5502232B2 (ja) | ストレージシステム、及びその制御方法 | |
JP5075761B2 (ja) | フラッシュメモリを用いたストレージ装置 | |
US8694727B2 (en) | First storage control apparatus and storage system management method | |
EP1876519A2 (en) | Storage system and write distribution method | |
JP5583227B1 (ja) | 物理ブロック間でデータをコピーするディスクアレイ装置、ディスクアレイコントローラ及び方法 | |
US20110320754A1 (en) | Management system for storage system and method for managing storage system | |
JP5816303B2 (ja) | フラッシュメモリを含むストレージシステム、及び記憶制御方法 | |
US9921781B2 (en) | Storage system including multiple storage apparatuses and pool virtualization method | |
WO2015015550A1 (ja) | 計算機システム及び制御方法 | |
JP2009043030A (ja) | ストレージシステム | |
JP2008108020A (ja) | 計算機システム、データ移行方法、およびストレージ管理サーバ | |
US9361033B2 (en) | Compound storage system and storage control method | |
JP4905511B2 (ja) | 記憶装置の制御部及び制御方法 | |
JP2017211920A (ja) | ストレージ制御装置、ストレージシステム、ストレージ制御方法およびストレージ制御プログラム | |
JP2018197933A (ja) | ストレージ制御装置、情報処理システムおよびプログラム | |
JP2011242862A (ja) | ストレージサブシステム及びその制御方法 | |
JP5597266B2 (ja) | ストレージシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120724 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130321 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130326 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20130723 |