(57)【要約】【課題】  キャッシュの領域を拡大できない、という課題があった。【解決手段】  ストレージ装置は、ホストコンピュータがアクセスするディスク装置と、前記ホストコンピュータによる前記ディスク装置への書き込みデータをキャッシュする揮発性メモリと、前記ホストコンピュータによる前記ディスク装置からの読み込みデータをキャッシュする不揮発性メモリと、前記揮発性メモリへの給電障害を検出して、前記揮発性メモリのデータを前記不揮発性メモリへコピーする、コピー手段と、を包含する。【選択図】      図１
2014142893.tif 000002
【特許請求の範囲】
【請求項１】
ホストコンピュータがアクセスするディスク装置と、
前記ホストコンピュータによる前記ディスク装置への書き込みデータをキャッシュする揮発性メモリと、
前記ホストコンピュータによる前記ディスク装置からの読み込みデータをキャッシュする不揮発性メモリと、
前記揮発性メモリへの給電障害を検出して、前記揮発性メモリのデータを前記不揮発性メモリへコピーする、コピー手段と、を包含する、ストレージ装置。
【請求項２】
前記揮発性メモリ、及び、前記不揮発性メモリへ一次電源を給電し、前記給電障害が検出された場合に、前記不揮発性メモリへ二次電源を給電する、電源切替手段を包含する、請求項１のストレージ装置。
【請求項３】
前記ストレージ装置が、さらに、第二の不揮発性メモリを包含し、前記コピー手段が、前記揮発性メモリへの給電障害を検出して、前記揮発メモリのデータを前記不揮発メモリ、または、前記第二の不揮発性メモリへコピーする、請求項１または２のストレージ装置。
【請求項４】
請求項１乃至３のいずれかに記載のストレージ装置と、
前記ディスク装置にアクセスするホストコンピュータと、を包含する、ストレージシステム。
【請求項５】
ホストコンピュータがディスク装置にアクセスし、
前記ホストコンピュータによる前記ディスク装置への書き込みデータを揮発性メモリにキャッシュし、
前記ホストコンピュータによる前記ディスク装置からの読み込みデータを不揮発性メモリにキャッシュし、
前記揮発性メモリへの給電障害を検出して、前記揮発性メモリのデータを前記不揮発性メモリへコピーする、方法。
【請求項６】
前記揮発性メモリ、及び、前記不揮発性メモリへ一次電源を給電し、
前記給電障害が検出された場合に、前記不揮発性メモリへ二次電源を給電する、請求項５の方法。
【請求項７】
前記揮発性メモリへの給電障害を検出して、前記揮発メモリのデータを前記不揮発メモリ、または、第二の不揮発性メモリへコピーする、請求項５または６の方法。
【請求項８】
ホストコンピュータがディスク装置にアクセスする処理において、
前記ホストコンピュータによる前記ディスク装置への書き込みデータを揮発性メモリにキャッシュする処理と、
前記ホストコンピュータによる前記ディスク装置からの読み込みデータを不揮発性メモリにキャッシュする処理と、
前記揮発性メモリへの給電障害を検出して、前記揮発性メモリを前記不揮発性メモリへコピーする処理を、コンピュータに実行させるプログラム。
【請求項９】
前記揮発性メモリ、及び、前記不揮発性メモリへ一次電源を給電する処理と、
前記給電障害が検出された場合に、前記不揮発性メモリへ二次電源を給電する処理を、
コンピュータに実行させる、請求項８のプログラム。
【請求項１０】
前記揮発性メモリへの給電障害を検出して、前記揮発メモリのデータを前記不揮発メモリ、または、第二の不揮発性メモリへコピーする処理をコンピュータに実行させる、請求項８または９のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置、方法、及び、プログラム、に関する。
【背景技術】
【０００２】
特許文献１には、一次電源から揮発性キャッシュメモリへの給電が無くなった場合に、バッテリーからの給電により、揮発性キャッシュメモリに記憶されているデータを不揮発性メモリにコピーする技術について記載されている。
【０００３】
特許文献２には、不意の電源遮断時に、揮発性キャッシュメモリにキャッシュされているデータを不揮発性キャッシュメモリにバックアップする技術について記載されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１０８０２６号公報
【特許文献２】特開２００８−２７６６４６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
上記文献の技術を用いた場合、通常時のキャッシュ領域を拡大できない、という課題があった。
【０００６】
特許文献１は、一次電源からの給電が無くなった場合にのみ、二次電源のバッテリーからの給電でキャッシュを不揮発性メモリにコピーして使用する。しかし、通常時には不揮発性メモリを使用できないため、通常時のキャッシュ領域の拡大にはならなかった。
【０００７】
特許文献２は、不意の電源遮断時にのみ、バックアップ用の不揮発性キャッシュメモリを使用するため、通常時のキャッシュ領域の拡大にはならなかった。
【課題を解決するための手段】
【０００８】
本発明のストレージ装置は、ホストコンピュータがアクセスするディスク装置と、前記ホストコンピュータによる前記ディスク装置への書き込みデータをキャッシュする揮発性メモリと、前記ホストコンピュータによる前記ディスク装置からの読み込みデータをキャッシュする不揮発性メモリと、前記揮発性メモリへの給電障害を検出して、前記揮発性メモリのデータを前記不揮発性メモリへコピーする、コピー手段と、を包含する。
【０００９】
本発明の方法は、ホストコンピュータがディスク装置にアクセスし、前記ホストコンピュータによる前記ディスク装置への書き込みデータを揮発性メモリにキャッシュし、前記ホストコンピュータによる前記ディスク装置からの読み込みデータを不揮発性メモリにキャッシュし、前記揮発性メモリへの給電障害を検出して、前記揮発性メモリのデータを前記不揮発性メモリへコピーする。
【００１０】
本発明のコンピュータプログラムは、ホストコンピュータがディスク装置にアクセスする処理において、前記ホストコンピュータによる前記ディスク装置への書き込みデータを揮発性メモリにキャッシュする処理と、前記ホストコンピュータによる前記ディスク装置からの読み込みデータを不揮発性メモリにキャッシュする処理と、前記揮発性メモリへの給電障害を検出して、前記揮発性メモリを前記不揮発性メモリへコピーする処理を、コンピュータに実行させる。
【発明の効果】
【００１１】
キャッシュの容量を増やすことができる。
【図面の簡単な説明】
【００１２】
【図１】図１は、ストレージシステムの構成の一例を示す。
【図２】図２は、ストレージ装置の動作の一例を示す。
【図３】図３は、コピー部の動作の一例を示す。
【図４】図４は、第二の実施形態に係る、ストレージシステムの構成の一例を示す。
【図５】図５は、第二の実施形態に係る、ストレージ装置の動作の一例を示す。
【図６】図６は、第二の実施形態に係る、コピー部の動作の一例を示す。
【図７】図７は、第三の実施形態に係る、ストレージ装置の構成の一例を示す。
【発明を実施するための形態】
【００１３】
発明を実施するための第一の形態について、図面を参照して詳細に説明する。
【００１４】
図１は、ストレージシステム１０の構成の一例を示す。
【００１５】
ストレージシステム１０は、ストレージ装置２０、及び、ホストコンピュータ３０を包含する。
【００１６】
ストレージ装置２０は、ストレージコントローラ４０、揮発性メモリ（主記憶装置）５０、ディスク装置６０、ディスクコントローラ７０、不揮発性メモリ（バックアップ装置）８０、バックアップ装置コントローラ９０、一次電源１００、二次電源１１０、及び、スイッチ１２０を包含する。
【００１７】
ストレージコントローラ４０は、アクセス制御部４１、コピー部４２、及び、電源切替部４３を包含する。
【００１８】
揮発性メモリ（主記憶装置）５０は、第一キャッシュ５１を包含する。不揮発性メモリ（バックアップ装置）８０は、第二キャッシュ８１を包含する。
【００１９】
ディスク装置６０は、ホストコンピュータ３０からアクセスし、データの書き込み、及び、読み出しを行う。
【００２０】
揮発性メモリ５０は、ホストコンピュータ３０によるディスク装置６０への書き込みデータを、例えば、第一キャッシュ５１に、キャッシュする。
【００２１】
不揮発性メモリ８０は、ホストコンピュータ３０によるディスク装置６０からの読み込みデータを、例えば、第二キャッシュ８１に、キャッシュする。
【００２２】
アクセス制御部４１は、ホストコンピュータ３０からディスク装置６０、揮発性メモリ５０、及び、不揮発性メモリ８０へのアクセスを実行する。
【００２３】
コピー部４２は、揮発性メモリ５０への給電障害を検出して、揮発性メモリ５０に記憶されたデータを不揮発性メモリ８０へコピーする。
【００２４】
電源切替部４３は、通常時には、不揮発性メモリ８０、及び、バックアップ装置コントローラ９０へ一次電源１００を給電し、一次電源から揮発性メモリ５０への給電障害が検出された場合には、不揮発性メモリ８０、及び、バックアップ装置コントローラ９０へ二次電源１１０を給電する命令を出力する。
【００２５】
ディスクコントローラ７０は、ディスク装置６０のデータの入出力を管理する。
【００２６】
バックアップ装置コントローラ９０は、不揮発性メモリ８０のデータの入出力を管理する。
【００２７】
一次電源１００は、揮発性メモリ５０、及び、不揮発性メモリ８０を含むストレージ装置２０全体へ給電することが可能である。
【００２８】
二次電源１１０は、一次電源１００から揮発性メモリ５０への給電に給電障害が検出された場合に、不揮発性メモリ８０、及び、バックアップ装置コントローラ９０へ給電する。
【００２９】
スイッチ１２０は、電源切替部４３の命令に基づいて、不揮発性メモリ８０、及び、バックアップ装置コントローラ９０への給電を一次電源１００または二次電源１１０に切り替える。
【００３０】
ここで、アクセス制御部４１、コピー部４２、電源切替部４３、ディスクコントローラ７０、及び、バックアップ装置コントローラ９０は、論理回路等のハードウェアで構成される。
【００３１】
揮発性メモリ５０（第一キャッシュ５１を含む）は、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等の揮発性メモリである。不揮発性メモリ８０（第二キャッシュ８１を含む）は、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の不揮発性メモリである。
【００３２】
ディスク装置６０は、磁気ディスク装置等の記憶装置である。
【００３３】
一次電源１００は、直流電源、二次電源１１０は、バッテリー等で構成される。スイッチ１２０は、電源の切替が可能な電源切替スイッチ等である。
【００３４】
また、アクセス制御部４１、コピー部４２、電源切替部４３、ディスクコントローラ７０、及び、バックアップ装置コントローラ９０は、コンピュータであるストレージ装置２０のプロセッサが、図示されないメモリ上のプログラムを実行することで実現されても良い。
【００３５】
図２は、ストレージ装置２０の動作の一例を示す。図２は、ストレージ装置２０が、ディスク装置６０からの読み込みデータ（以下、リードデータ）、または、ディスク装置６０への書き込みデータ（以下、ライトデータ）をキャッシュする動作について示す。
【００３６】
一般に、キャッシュを用いた装置のデータの経路は、図２の点線のようになる。
【００３７】
リードデータの場合、キャッシュを用いた装置は、ディスク装置６０から揮発性メモリ５０（第一キャッシュ５１）へリードデータを読み出し、キャッシュデータとした後に、キャッシュからホストコンピュータ３０へリードデータを出力する。
【００３８】
また、ライトデータの場合、キャッシュを用いた装置は、ディスク装置６０へのライトデータを揮発性メモリ５０（第一キャッシュ５１）にキャッシュした後、キャッシュからディスク装置６０へライトデータを書き込む。
【００３９】
これに対し、本発明では、図２の実線で示すように、ストレージ装置２０が、ディスク装置６０からのリードデータをバックアップ用の装置に設けられた不揮発性メモリ８０（第二キャッシュ８１）に読み出し、キャッシュデータとする。
【００４０】
なお、不揮発性メモリ８０にキャッシュするデータは、リードデータに限定される。この理由については、後述する（図３の説明）。
【００４１】
また、ストレージ装置２０は、ライトデータについては、揮発性メモリ５０をキャッシュとして用いる。
【００４２】
本発明は、通常は使用しないバックアップ装置８０（不揮発性メモリ）をキャッシュとして使用する。このため、キャッシュ領域が、主記憶装置５０とバックアップ装置８０の両方に存在することになり、キャッシュ領域が拡大する。
【００４３】
なお、本実施形態において、ストレージ装置２０が、ホストコンピュータ３０によるディスク装置６０からのリードデータを、一旦、揮発性メモリ５０の第一キャッシュ５１に記憶させた後、当該データを不揮発性メモリ８０の第二キャッシュ８１にコピーしキャッシュデータとする、としてもよい。
【００４４】
図３は、コピー部４２の動作の一例を示す。
【００４５】
揮発性メモリ５０への給電障害等により揮発性メモリ５０をバックアップする必要がある場合には、コピー部４２が、揮発性メモリ５０のデータを不揮発性メモリ８０にコピーし、不揮発性メモリ８０のデータを揮発性メモリ５０のデータで上書きする。
【００４６】
なお、不揮発性メモリ８０内の第二キャッシュ８１のリードデータは、ディスク装置６０への書き込みが完了している破棄可能なデータであるため、他のデータで上書きされても消滅することはなく、実用上の問題は無い。
【００４７】
また、不揮発性メモリ８０には、上記とは逆に、上書きされると問題になるデータを格納することはできない。例えば、ディスク装置６０への書き込みが完了していないライトデータが、これに該当する。
【００４８】
本実施形態の構成により、ストレージ装置２０は、第一キャッシュ５１をデータの書き込み用に、また、第二キャッシュ８１をデータの読み込み用に、各々、有効に使用することが可能になるため、キャッシュ領域を拡張することができる。
【００４９】
本実施形態に係るストレージ装置２０は、以下に記載するような効果を奏する。キャッシュの容量を増やすことができる。その理由は、不揮発性メモリ８０にディスク装置６０からの読み込みデータをキャッシュし、キャッシュ領域を拡張するからである。
＜第二の実施形態＞
図４は、第二の実施形態に係る、ストレージシステム１０の構成の一例を示す。
【００５０】
本実施形態は、第一の実施形態の構成に、不揮発性ディスク装置（第二の不揮発性メモリ）６１、第三キャッシュ６２、及び、不揮発性ディスク装置用電源１３０を追加する。
【００５１】
不揮発性ディスク装置６１は、第三キャッシュ６２を包含する。不揮発ディスク装置６１は、ディスクコントローラ７０と接続し、ディスク装置６０内に格納される。
【００５２】
不揮発性ディスク装置用電源１３０は、一次電源に給電障害が発生した場合に、不揮発性ディスク装置６１に給電する。
【００５３】
本実施形態では、コピー部４２が、揮発性メモリ５０への給電障害を検出して、揮発性メモリ５０のデータを不揮発性メモリ８０、または、ディスク装置６０内の不揮発性ディスク装置６１へコピーする。
【００５４】
なお、コピー部４２は、例えば、不揮発性メモリ８０、または、不揮発ディスク装置６１のうち、空き容量の大きい方をコピー先として選択する。
【００５５】
ここで、不揮発性ディスク装置６１は、ＳＳＤ等の不揮発性メモリである。また、不揮発性ディスク装置用電源１３０は、バッテリー等で構成される。
【００５６】
図５は、第二の実施形態に係る、ストレージ装置２０の動作の一例を示す。図５は、図２と同様に、ストレージ装置２０が、ディスク装置６０からのリードデータ、または、ディスク装置６０へのライトデータをキャッシュする動作について示す。
【００５７】
本発明では、図５の実線で示すように、ストレージ装置２０が、ディスク装置６０からのリードデータをバックアップ用の装置に設けられた不揮発性メモリ８０（第二キャッシュ８１）、または、ディスク装置６０内の不揮発性ディスク装置６１（第三キャッシュ６２）に読み出し、キャッシュデータとする。
【００５８】
ここで、コピー部４２は、第二キャッシュ８１、及び、第三キャッシュ６２のうち、例えば、空き容量の大きい方に、第一キャッシュ５１のリードデータをコピーする。
【００５９】
これにより、第二キャッシュ８１、または、第三キャッシュ６２にリードデータが格納されることになるが、アクセス制御部４１は、これらのキャッシュから対象のデータが格納されている場所を特定し、アクセスする。
【００６０】
なお、不揮発性メモリ８０にキャッシュするデータは、リードデータに限定される。また、ストレージ装置２０は、ライトデータについては、揮発性メモリ５０をキャッシュとして用いる。
【００６１】
また、本実施形態と通常のキャッシュを用いた装置との動作の比較については、第一の実施形態と同等であるため、詳細な説明は省略する。
【００６２】
なお、本実施形態において、ストレージ装置２０が、ホストコンピュータ３０によるディスク装置６０からのリードデータを、一旦、揮発性メモリ５０の第一キャッシュ５１に記憶させた後、当該データを不揮発性メモリ８０の第二キャッシュ８１、または、不揮発性ディスク装置６１の第三キャッシュ６２にコピーしキャッシュデータとする、としてもよい。
【００６３】
図６は、第二の実施形態に係る、コピー部４２の動作の一例を示す。
【００６４】
揮発性メモリ５０への給電障害等により揮発性メモリ５０をバックアップする必要がある場合には、コピー部４２が、揮発性メモリ５０のデータを不揮発性メモリ８０または不揮発性ディスク装置６１にコピーし、不揮発性メモリ８０または不揮発性ディスク装置６１のデータを揮発性メモリ５０のデータで上書きする。
【００６５】
なお、第二キャッシュ８１または第三キャッシュ６２のリードデータは、ディスク装置６０への書き込みが完了している破棄可能なデータであるため、他のデータで上書きされても消滅することはなく、実用上の問題は無い。
【００６６】
また、不揮発性メモリ８０または不揮発性ディスク装置６１には、上記とは逆に、上書きされると問題になるデータを格納することはできない。例えば、ディスク装置６０への書き込みが完了していないライトデータが、これに該当する。
【００６７】
本実施形態の構成により、ストレージ装置２０は、第一キャッシュ５１をデータの書き込み用に、また、第二キャッシュ８１または第三キャッシュ６２をデータの読み込み用に、各々、有効に使用することが可能になるため、キャッシュ領域を拡張することができる。
【００６８】
なお、本実施形態のストレージ装置２０は、ディスクコントローラ７０の配下に不揮発ディスク装置６１を接続する構成とすることにより、ユーザが、第三キャッシュ６１を使用するか否かを選択することも可能である、としてもよい。
【００６９】
本実施形態に係るストレージ装置２０は、以下に記載するような効果を奏する。キャッシュの容量を増やすことができる。その理由は、キャッシュに不揮発性ディスク装置６１を追加するからである。
＜第三の実施形態＞
図７は、第三の実施形態に係る、ストレージ装置２０の構成の一例を示す。
【００７０】
ストレージ装置２０は、ディスク装置６０、揮発性メモリ５０、不揮発性メモリ８０、及び、コピー部４２を包含する。
【００７１】
ディスク装置６０は、ホストコンピュータ３０からアクセスする。揮発性メモリ５０は、ホストコンピュータ３０によるディスク装置６０への書き込みデータをキャッシュする。不揮発性メモリ８０は、ホストコンピュータ３０によるディスク装置６０からの読み込みデータをキャッシュする。
【００７２】
コピー部４２は、揮発性メモリ５０への給電障害を検出して、揮発性メモリ５０のデータを不揮発性メモリ８０へコピーする。
【００７３】
本実施形態に係るストレージ装置２０は、以下に記載するような効果を奏する。キャッシュの容量を増やすことができる。その理由は、不揮発性メモリ８０にディスク装置６０からの読み込みデータをキャッシュし、キャッシュ領域を拡張するからである。
【００７４】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【符号の説明】
【００７５】
１０    ストレージシステム
２０    ストレージ装置
３０    ホストコンピュータ
４０    ストレージコントローラ
４１    アクセス制御部
４２    コピー部
４３    電源切替部
５０    揮発性メモリ（主記憶装置）
５１    第一キャッシュ
６０    ディスク装置
６１    不揮発性ディスク装置（第二の不揮発性メモリ）
６２    第三キャッシュ
７０    ディスクコントローラ
８０    不揮発性メモリ（バックアップ装置）
８１    第二キャッシュ
９０    バックアップ装置コントローラ
１００    一次電源
１１０    二次電源
１２０    スイッチ
１３０    不揮発性ディスク装置用電源
【図１】
2014142893.tif 000003
【図２】
2014142893.tif 000004
【図３】
2014142893.tif 000005
【図４】
2014142893.tif 000006
【図５】
2014142893.tif 000007
【図６】
2014142893.tif 000008
【図７】
2014142893.tif 000009