(57)【特許請求の範囲】
【請求項１】
物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置であって、
書き込み要求を受け付けた場合、データを書き込む領域が前記不揮発性メモリの領域であるか否かを判断し、書き込む領域が前記不揮発性メモリの領域でない場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域に前記データを書き込み、前記不揮発性メモリに確保した領域に対応する前記物理ディスクの領域が確保されていた場合、当該物理ディスクの領域を解放する一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む書き込み部と、
読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す読み出し部と、
前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する物理ディスク解放部と、
前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する不揮発性メモリ解放部と
を備えることを特徴とするストレージ装置。
【請求項２】
前記不揮発性メモリ解放部は、
前記不揮発性メモリの領域に書き込まれている前記データの一定時間の読み出し回数が一定回数以下の場合、又は前記不揮発性メモリの領域に一定時間書き込みがない場合、当該領域に書き込まれている前記データを前記物理ディスクの領域に移動する
ことを特徴とする請求項１に記載のストレージ装置。
【請求項３】
前記書き込み部は、
前記物理ディスク及び前記不揮発性メモリによりＲＡＩＤが構成されている場合、前記データをデータ部分とパリティ部分とに分割し、前記データ部分を前記物理ディスク又は前記不揮発性メモリに書き込む一方、前記パリティ部分を前記物理ディスクの領域に書き込む
ことを特徴とする請求項１に記載のストレージ装置。
【請求項４】
物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置の制御方法であって、
書き込み部が、書き込み要求を受け付けた場合、データを書き込む領域が前記不揮発性メモリの領域であるか否かを判断し、書き込む領域が前記不揮発性メモリの領域でない場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域に前記データを書き込み、前記不揮発性メモリに確保した領域に対応する前記物理ディスクの領域が確保されていた場合、当該物理ディスクの領域を解放する一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む第１のステップと、
読み出し部が、読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す第２のステップと、
物理ディスク解放部が、前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する第３のステップと、
不揮発性メモリ解放部が、前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する第４のステップと
を備えることを特徴とするストレージ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、物理ディスク及び不揮発性メモリを備えるストレージ装置及びその制御方法に関する。
【背景技術】
【０００２】
従来、ＲＡＩＤ（Redundant Arrays of Independent Disks）に代表されるストレージ装置のように、複数の物理ディスクの集合に基づいて、論理ディスクを構成するストレージ装置が広く知られている。
【０００３】
ストレージ装置上の論理ディスクに格納するデータは、複数の物理ディスク上の記憶領域に分散格納される。ストレージ装置は、論理ディスクの論理記憶領域と物理ディスクの物理記憶領域との対応付けを行うテーブルを保持し、ストレージ装置に格納するデータ配置の対応関係を管理する。また、ストレージ装置は、高可用性を維持するため、格納するデータを冗長化して物理ディスクに記録する。
【０００４】
近年、ストレージ装置において、低消費電力で高速かつ高信頼なＳＳＤ（Solid State Drive）等の不揮発性メモリが採用されている。例えば、特許文献１には、物理ディスクと不揮発性メモリとによりＲＡＩＤが構成されているストレージ装置において、頻繁にアクセスされるパリティデータを高速な不揮発性メモリに格納することで、ＲＡＩＤに対するアクセス性能を向上させる技術が開示されている。
【０００５】
また、例えば、特許文献２には、物理ディスクと不揮発性メモリとによりＲＡＩＤが構成されているストレージ装置として、上位装置からのデータが入出力される第１記憶デバイス（物理ディスク）と、第１記憶デバイスに対するデータの入出力を制御する第１記憶デバイス制御部と、データのパリティデータを算出する演算回路部と、パリティデータが入出力される第２記憶デバイス（不揮発性メモリ）と、第２記憶デバイスに対するパリティデータの入出力を制御する第２記憶デバイス制御部と、を備え、第１記憶デバイスは第２記憶デバイスよりリードアクセスの速い記憶デバイスであることを特徴とする技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平６−３２４８１５号公報
【特許文献２】特開２００９−２３８０９４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
不揮発性メモリは、消費電力が低く高速で高信頼なデバイスであるが、書き換え動作によって記憶素子に劣化が発生するため、書き込み回数に上限が存在し、寿命を持つという特性がある。そこで、寿命を延ばすために、不揮発性メモリでは、データを記録するデバイス上の領域に対する書き込み回数をなるべく平準化するウェアレベリングという技術が採用されている。
【０００８】
本技術では、不揮発性メモリに対するデータ書き込み時、書き込み回数の少ない空き領域からデータを書き込み、元のデータ格納領域を空き領域として解放する。これにより、同じデータ格納領域ばかりに書き換えが行われないよう、書き込みを行う回数を平準化して不揮発性メモリ全体の寿命を延ばすことができる。
【０００９】
ここで、ストレージ装置では、時間の経過とともにデータのアクセス頻度が低下する状況が生じうる。不揮発性メモリを採用したストレージ装置においてこのような状況が生じた場合、アクセスされないデータを不揮発性メモリに保持し続ける結果、書き込み回数に偏りが発生し、不揮発性メモリの寿命が延ばせないという問題がある。特許文献１及び特許文献２のストレージ装置の技術を採用しても、上記問題は解決することはできない。
【００１０】
本発明は以上の点を考慮してなされたものであり、信頼性を向上させ得るストレージ装置及びその制御方法を提案するものである。
【課題を解決するための手段】
【００１１】
かかる課題を解決するために本発明は、物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置であって、書き込み要求を受け付けた場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域にデータを書き込む一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む書き込み部と、読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す読み出し部と、前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する物理ディスク解放部と、前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する不揮発性メモリ解放部とを備えることを特徴とする。
【００１２】
また、本発明は、物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置の制御方法であって、書き込み部が、書き込み要求を受け付けた場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域にデータを書き込む一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む第１のステップと、読み出し部が、読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す第２のステップと、物理ディスク解放部が、前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する第３のステップと、不揮発性メモリ解放部が、前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する第４のステップとを備えることを特徴とする。
【００１３】
従って、アクセス頻度に応じて最適なデバイスを選択することによってアクセス性能を維持すると共に、不揮発性メモリの寿命を延ばすことができる。
【発明の効果】
【００１４】
本発明によれば、信頼性を向上させ得るストレージ装置及びその制御方法を実現することができる。
【図面の簡単な説明】
【００１５】
【図１】ストレージシステムのハードウェア構成を示すブロック図の一例である。
【図２】ストレージシステムの機能的構成を示すブロック図の一例である。
【図３】論理ディスク管理テーブルの説明に供する概念図の一例である。
【図４】物理ディスク管理テーブルの説明に供する概念図の一例である。
【図５】アクセス頻度管理テーブルの説明に供する概念図の一例である。
【図６】データ書き込み処理手順を示すフローチャートの一例である。
【図７】データ読み出し処理手順を示すフローチャートの一例である。
【図８】不揮発性メモリ割り当て解放処理手順を示すフローチャートの一例である。
【図９】パリティ書き込み処理手順を示すフローチャートの一例である。
【発明を実施するための形態】
【００１６】
以下、本発明の一実施の形態を、図面を参照して詳細に説明する。なお、これにより本発明が限定されるものではない。
【００１７】
図１は、本実施の形態によるストレージシステム１のハードウェア構成の一例を示している。ストレージシステム１は、複数のホスト計算機２がネックワーク３を介してストレージ装置４に接続されることにより構成されている。
【００１８】
ホスト計算機２は、例えば、ＣＰＵ（Central Processing Unit）やメモリ等の情報処理資源、情報入力装置、情報出力装置を備えたコンピュータ装置である。ホスト計算機２は、例えば、書き込み要求をストレージ装置４に送信して、対応するデータをストレージ装置４に書き込む。また、ホスト計算機２は、例えば、読み出し要求をストレージ装置４に送信し、対応するデータをストレージ装置４から読み出す。
【００１９】
ネットワーク３は、例えば、ＬＡＮ（Local Area Network）、ＳＡＮ（Storage Area Network）、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。
【００２０】
ストレージ装置４は、例えば、コントローラ部５及び記憶部６により構成されている。ストレージ装置４は、コントローラ部５を最低１つ備えている。コントローラ部５は、当該ストレージ装置４全体を制御する。記憶部６は、ホスト計算機２から受信したデータを格納する複数の物理ディスク装置７及び複数の不揮発性メモリ装置８により構成されている。
【００２１】
コントローラ部５は、ホストインタフェース１１、ＣＰＵ１２、メモリ１３及び記憶インタフェース１４により構成されている。ホストインタフェース１１は、ホスト計算機２とネットワーク３を介して接続され、ホスト計算機２から受信した各種要求やデータの送受信を制御する。ホストインタフェース１１は、ネットワーク３の種類に応じた種々のインタフェースを用いることができる。
【００２２】
ＣＰＵ１２は、コントローラ部５ごとに１つ備えられる。ＣＰＵ１２は、コントローラ部５全体を制御し、ホストインタフェース１１から受信した各種要求を解釈して、各構成要素に指示を送信する。また、ＣＰＵ１２は、物理ディスク装置７及び不揮発性メモリ装置８に対してＲＡＩＤ（Redundant Arrays of Independent Disks）制御を行うことにより、ストレージ装置４の信頼性、可用性及び性能を向上させる。ＣＰＵ１２は、物理ディスク装置７及び不揮発性メモリ装置８をＲＡＩＤ方式で運用する。
【００２３】
メモリ１３は、ホスト計算機２から受信したデータを一時的に保持する。メモリ１３は、コントローラ部５内部で使用する各種プログラムや、各種テーブルを保持する。記憶インタフェース１４は、記憶部６の物理ディスク装置７及び不揮発性メモリ装置８と接続され、ホスト計算機２から受信したデータの送受信を制御する。記憶インタフェース１４は、ファイバチャネル、ＳＡＳ（Serial Attached SCSI）、ＳＡＴＡ（Serial ATA）等の種類に応じた種々のインタフェースを用いることができる。
【００２４】
図２は、本実施形態のストレージシステム１の機能的構成の一例を示している。
【００２５】
コントローラ部５は、例えば、データ書き込み手段２１、データ読み出し手段２２（読み出し部、物理ディスク解放部）、不揮発性メモリ解放手段２３、パリティ書き込み手段２４、論理ディスク管理テープ理２５、物理ディスク管理テーブル２６及びアクセス頻度管理テーブル２７により構成されている。また、記憶部６は、例えば、不揮発性メモリプール３１、物理ディスクプール３２、ストレージプール３３、論理ディスク３４により構成されている。
【００２６】
データ書き込み手段２１は、ホスト計算機２から論理ディスク３４に対して書き込み要求を受けた場合に動作し、ホスト計算機２から受信したデータを不揮発性メモリ装置８に書き込み可能な場合、当該データを不揮発性メモリ装置８の領域に書き込み、対応する物理ディスク装置７の領域を解放し、最終書き込み時刻を更新する。また、データ書き込み手段２１は、データを不揮発性メモリ装置８に書き込み可能でない場合、当該データを物理ディスク装置７の領域に書き込む。
【００２７】
データ読み出し手段２２は、ホスト計算機２から論理ディスク３４に対して読み出し要求を受けた場合に動作し、物理ディスク装置７の領域にデータが書き込まれている場合、当該物理ディスク装置７の領域からデータを読み出し、さらに一定回数以上の読み出し要求があった場合、当該データを不揮発性メモリ装置８の領域に移動する。また、データ読み出し手段２２は、物理ディスク装置７の領域にデータが書き込まれていない場合、対応する不揮発性メモリ装置８の領域からデータを読み出す。
【００２８】
不揮発性メモリ解放手段２３は、定期的に動作し、アクセス頻度テーブル２７を参照して、不揮発性メモリ装置８の領域に書き込まれているデータが一定時間アクセスされていないと判断した場合、当該データを物理ディスク装置７の領域に移動し、対応する不揮発性メモリ装置８の領域を解放する。
【００２９】
パリティ書き込み手段２４は、データ書き込み手段２１から書き込み要求を受けて動作し、例えば、物理ディスク装置７及び不揮発性メモリ装置８によりＲＡＩＤが構成されている場合、書き込むデータをデータ部分とパリティ部分に分割し、パリティ部分の書き込み先を物理ディスク装置７の領域とし、当該パリティ部分を物理ディスク装置７の領域に書き込む。
【００３０】
不揮発性メモリプール３１は、不揮発性メモリ装置８の集合により仮想的な物理記憶空間として構成されている。物理ディスクプール３２は、物理ディスク装置７の集合により仮想的な物理記憶空間として構成されている。ストレージプール３３は、不揮発性メモリプール３１及び物理ディスクプール３２により構成されている。論理ディスク３４は、ストレージプール３３上の領域を切り出した仮想的な記憶領域として、ホスト計算機２に提供される。
【００３１】
図３は、論理ディスク管理テーブル２５の一例を示した図である。論理ディスク管理テーブル２５は、論理ディスク番号、論理アドレス、デバイス種別、デバイス番号、物理アドレス及びデータ種別を対応付けて格納する。
【００３２】
論理ディスク番号は、論理ディスク３４を識別する情報である。論理アドレスは、論理ディスク３４の一定長の領域のアドレスである。デバイス種別は、当該論理アドレスに対応するデータが書き込まれているデバイスが物理ディスク装置７（ＨＤＤ）であるか、不揮発性メモリ装置８（ＳＳＤ）であるかを示す情報である。デバイス番号は、デバイス（物理ディスク装置７、不揮発性メモリ装置８）を識別する番号である。物理アドレスは、デバイスの一定長の領域のアドレスである。データ種別は、当該領域がデータ部分（Ｄ）を格納しているか、パリティ部分（Ｐ）を格納しているかを示す情報である。
【００３３】
図４は、物理ディスク管理テーブル２６の一例を示した図である。物理ディスク管理テーブル２６は、デバイス種別、デバイス番号、物理アドレス及び最終書き込み時刻を対応付けて格納する。最終書き込み時刻は、デバイスの領域に最後に書き込みを行った時刻である。
【００３４】
図５は、アクセス頻度管理テーブル２７の一例を示した図である。アクセス頻度管理テーブル２７は、論理ディスク番号、論理アドレス、読み出し回数及びしきい値を対応付けて格納する。読み出し回数は、デバイスの領域に対してデータの読み出しが行われた回数である。しきい値は、読み出し回数と比較し、当該領域のデータの移動要否を判断するために予め設定された値である。
【００３５】
なお、データ書き込み手段２１、データ読み出し手段２２、不揮発性メモリ解放手段２３及びパリティ書き込み手段２４は、主にＣＰＵ１２がメモリ１３に格納されるプログラムを実行し、各ハードウェアを制御することによって実現することができる。また、論理ディスク管理テープ理２５、物理ディスク管理テーブル２６及びアクセス頻度管理テーブル２７は、メモリ１３やＨＤＤ７などに格納される。
【００３６】
次に、本実施形態のストレージシステム１の動作について詳細に説明する。
【００３７】
図６は、本実施形態のストレージシステム１のデータ書き込み処理を示すフローチャートである。
【００３８】
データ書き込み手段２１は、ホスト計算機２から論理ディスク３４に対するデータの書き込み要求を受けて動作する。まず、データ書き込み手段２１は、ホスト計算機２から受けた論理ディスク３４の書き込み要求に対する書き込みデータを受け取ると、パリティ書き込み手段２４を呼び出す（ステップＳ１１）。なお、データ書き込み手段２１は、物理ディスク装置７及び不揮発性メモリ装置８によりＲＡＩＤが構成されている場合、パリティ部分の書き込み先を物理ディスク装置７の領域とする。
【００３９】
続いて、データ書き込み手段２１は、論理ディスク３４のデータを書き込む領域が不揮発性メモリ装置８の領域であるか否かを、論理ディスク管理テーブル２５を参照してチェックする（ステップＳ１２）。
【００４０】
そして、データ書き込み手段２１は、論理ディスク３４のデータを書き込む領域が不揮発性メモリ装置８の領域である場合（ステップＳ１２：ＹＥＳ）、ステップＳ１７に進む。これに対して、データ書き込み手段２１は、論理ディスク３４のデータを書き込む領域が不揮発性メモリ装置８の領域でない場合（ステップＳ１２：ＮＯ）、不揮発性メモリ装置８に領域を確保することができるか否かをチェックする（ステップＳ１３）。
【００４１】
そして、データ書き込み手段２１は、不揮発性メモリ装置８に領域を確保することができる場合（ステップＳ１３：ＹＥＳ）、書き込み可能な不揮発性メモリ装置８の領域を確保する（ステップＳ１４）。なお、データ書き込み手段２１は、不揮発性メモリ装置８の領域を確保する際に、物理ディスク装置７及び不揮発性メモリ装置８によりＲＡＩＤが構成されている場合、データ部分の領域のみ、不揮発性メモリ装置８の領域を確保し、パリティ部分の領域は物理ディスク装置７の領域を確保することで、不揮発性メモリ装置８の領域への書き込み量を削減する。
【００４２】
続いて、データ書き込み手段２１は、不揮発性メモリ装置８に確保した領域に対応する物理ディスク装置７の領域が確保されていた場合、当該物理ディスク装置７の領域を開放する（ステップＳ１５）。
【００４３】
一方、データ書き込み手段２１は、不揮発性メモリ装置８に領域を確保することができない場合（ステップＳ１３：ＮＯ）、書き込み可能な物理ディスク装置７の領域を確保する（ステップＳ１６）。
【００４４】
続いて、データ書き込み手段２１は、書き込み要求を受けたデータを、確保した不揮発性メモリ装置８の領域又は物理ディスク装置７の領域に書き込む（ステップＳ１７）。なお、データ書き込み手段２１は、物理ディスク装置７及び不揮発性メモリ装置８によりＲＡＩＤが構成されている場合、書き込み要求を受けたデータのデータ部分を、確保した不揮発性メモリ装置８の領域又は物理ディスク装置７の領域に書き込む。
【００４５】
続いて、データ書き込み手段２１は、論理ディスク管理テーブル２５において、対応する論理ディスク３４の論理アドレスのデバイス種別、デバイス番号及び物理アドレスを更新する（ステップＳ１８）。続いて、データ書き込み手段２１は、物理ディスク管理テーブル２６において、対応する物理アドレスの最終書き込み時刻を現時刻で更新し（ステップＳ１９）、その後、データ書き込み処理を終了する。
【００４６】
図７は、本実施形態のストレージシステム１のデータ読み出し処理を示すフローチャートである。
【００４７】
データ読み出し手段２２は、ホスト計算機２から論理ディスク３４に対する読み出し要求を受けて動作する。まず、データ読み出し手段２２は、論理ディスク管理テーブル２５を参照し、読み出し要求を受けた論理ディスク２５の論理アドレスに対応する領域を特定し、当該領域からデータを読み出して、ホスト計算機２に応答する（ステップＳ２１）。
【００４８】
続いて、データ読み出し手段２２は、アクセス頻度管理テーブル２７の当該論理ディスクの論理アドレスに対応する読み出し回数をカウントアップして、アクセス頻度管理テーブル２７を更新する（ステップＳ２２）。
【００４９】
続いて、データ読み出し手段２２は、当該読み出し回数がしきい値を超えているか否かをチェックする（ステップＳ２３）。そして、データ読み出し手段２２は、当該読み出し回数がしきい値を超えていない場合（ステップＳ２３：ＮＯ）、その後、データ読み出し処理を終了する。これに対して、データ読み出し手段２２は、当該読み出し回数がしきい値を超えている場合（ステップＳ２３：ＹＥＳ）、当該読み出し要求を受けた論理ディスク２５の論理アドレスに対応する領域のデータはアクセス頻度が高いと判断し、当該領域のデータが不揮発性メモリ装置８の領域に移動可能であるか否かをチェックする（ステップＳ２４）。
【００５０】
そして、データ読み出し手段２２は、当該領域のデータが不揮発性メモリ装置８の領域に移動可能でない場合（ステップＳ２４：ＮＯ）、その後、データ読み出し処理を終了する。これに対して、データ読み出し手段２２は、当該領域のデータが不揮発性メモリ装置８の領域に移動可能である場合（ステップＳ２４：ＹＥＳ）、不揮発性メモリ装置８の領域を確保する（ステップＳ２５）。
【００５１】
続いて、データ読み出し手段２２は、読み出し要求を受けた論理ディスク２５の論理アドレスに対応する領域のデータを読み出して、確保した不揮発性メモリ装置８の領域に書き込む（ステップＳ２６）。続いて、データ読み出し手段２２は、論理ディスク管理テーブル２５において、対応する論理ディスク３４の論理アドレスのデバイス種別、デバイス番号及び物理アドレスを更新し（ステップＳ２７）、その後、データ読み出し処理を終了する。
【００５２】
図８は、本実施形態のストレージシステム１の不揮発性メモリ解放処理を示すフローチャートである。
【００５３】
不揮発性メモリ解放手段２３は、定期的に動作する。まず、不揮発性メモリ解放手段２３は、アクセス頻度管理テーブル２７を参照し、各論理ディスク３４の論理アドレスの一定時間の読み出し回数が一定回数以下の領域を特定する（ステップＳ３１）。なお、不揮発性メモリ解放手段２３は、物理ディスク管理テーブル２６の最終書き込み時刻を参照し、一定時間書き込みがない領域を特定するようにしても良い。
【００５４】
続いて、不揮発性メモリ解放手段２３は、特定した領域のデータが物理ディスク装置７の領域に移動可能であるか否かをチェックする（ステップＳ３２）。この場合、不揮発性メモリ解放手段２３は、特定した領域のデータが不揮発性メモリ装置８の領域に格納されているか否かをチェックし、不揮発性メモリ装置８の領域に格納されている場合、物理ディスク装置７の領域に移動可能であると判断する。
【００５５】
続いて、不揮発性メモリ解放手段２３は、特定した領域のデータが物理ディスク装置７の領域に移動可能でない場合（ステップＳ３２：ＮＯ）、その後、不揮発性メモリ解放処理を終了する。これに対して、不揮発性メモリ解放手段２３は、特定した領域のデータが物理ディスク装置７の領域に移動可能である場合（ステップＳ３２：ＹＥＳ）、物理ディスク装置７の領域を確保する（ステップＳ３３）。
【００５６】
続いて、不揮発性メモリ解放手段２３は、当該領域のデータを読み出して、確保した物理ディスク装置７の領域に書き込む（ステップＳ３４）。続いて、不揮発性メモリ解放手段２３は、データが書き込まれていた不揮発性メモリ装置８の領域を解放し、当該領域を空き領域とする（ステップＳ３５）。
【００５７】
続いて、不揮発性メモリ解放手段２３は、論理ディスク管理テーブル２５において、対応する論理ディスク３４の論理アドレスのデバイス種別、デバイス番号及び物理アドレスを更新し（ステップＳ３６）、その後、不揮発性メモリ解放処理を終了する。
【００５８】
図９は、本実施形態のストレージシステム１のパリティ書き込み処理を示すフローチャートである。
【００５９】
パリティ書き込み手段２４は、データ書き込み手段２１から呼び出されて動作する。まず、パリティ書き込み手段２４は、物理ディスク装置７及び不揮発性メモリ装置８によりＲＡＩＤが構成されているか否かをチェックする（ステップＳ４１）。
【００６０】
そして、パリティ書き込み手段２４は、ＲＡＩＤが構成されていない場合（ステップＳ４１：ＮＯ）、その後、パリティ書き込み処理を終了する。これに対して、パリティ書き込み手段２４は、ＲＡＩＤが構成されている場合（ステップＳ４１：ＹＥＳ）、書き込むデータをデータ部分とパリティ部分に分割し、パリティ部分の書き込み先を物理ディスク装置７の領域とし、パリティ部分を物理ディスク装置７の領域に書き込み（ステップＳ４２）、その後、パリティ書き込み処理を終了する。
【００６１】
これにより、データ書き込み手段２１は、データ部分を不揮発性メモリ装置８の領域に書き込み、パリティ書き込み手段２４は、パリティ部分を物理ディスク装置７の領域に書き込む。
【００６２】
このようにして、ストレージシステム１は、物理ディスク装置７と不揮発性メモリ装置８とにより構成されており、データ書き込み手段２１において、書き込むデータをなるべく不揮発性メモリ装置８に書き込むことで、要求性能に対するアクセス性能を維持する。また、ストレージシステム１は、データ読み出し手段２２において、読み出し頻度の高いデータを不揮発性メモリ装置８に移動することで、要求性能に対するアクセス性能を維持する。さらに、ストレージシステム１は、不揮発性メモリ解放手段２３において、アクセス頻度の低いデータを物理ディスク装置７に移動した後、不揮発性メモリ装置８の領域を解放し、不揮発性メモリ装置８の空き容量を確保して平準化を促進することで、不揮発性メモリ装置８の寿命を延ばす。
【００６３】
従って、アクセス頻度に応じて最適なデバイスを選択することによってアクセス性能を維持すると共に、不揮発性メモリ装置８に対する寿命を延ばすことができ、かくして、信頼性を向上させることができる。
【００６４】
また、ストレージシステム１は、データ書き込み手段２１において、データ部を不揮発性メモリ装置８、パリティ部を物理ディスク装置７に書き込むことで、不揮発性メモリ装置８に対する書き込み回数及び書き込む容量を削減することができ、データ読み出し手段２２において、不揮発性メモリ装置８からデータ部のみを読み出すことでアクセス性能を維持することができる。
【００６５】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００６６】
（付記１）物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置であって、書き込み要求を受け付けた場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域にデータを書き込む一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む書き込み部と、読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す読み出し部と、前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する物理ディスク解放部と、前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する不揮発性メモリ解放部とを備えることを特徴とするストレージ装置である。
【００６７】
（付記２）前記不揮発性メモリ解放部は、前記不揮発性メモリの領域に書き込まれている前記データの一定時間の読み出し回数が一定回数以下の場合、又は前記不揮発性メモリの領域に一定時間書き込みがない場合、当該領域に書き込まれている前記データを前記物理ディスクの領域に移動することを特徴とする付記１に記載のストレージ装置である。
【００６８】
（付記３）前記書き込み部は、前記物理ディスク及び前記不揮発性メモリによりＲＡＩＤが構成されている場合、前記データをデータ部分とパリティ部分とに分割し、前記データ部分を前記物理ディスク又は前記不揮発性メモリに書き込む一方、前記パリティ部分を前記物理ディスクの領域に書き込むことを特徴とする付記１に記載のストレージ装置である。
【００６９】
（付記４）物理ディスクと不揮発性メモリとにより論理ディスクを構成し、前記論理ディスクに対応する前記物理ディスク又は前記不揮発性メモリに読書きを行うストレージ装置の制御方法であって、書き込み部が、書き込み要求を受け付けた場合、前記不揮発性メモリに前記データを格納する領域を確保できるか否かを判断し、前記不揮発性メモリに領域を確保できる場合、前記不揮発性メモリの領域にデータを書き込む一方、前記不揮発性メモリに領域を確保できない場合、前記物理ディスクの領域にデータを書き込む第１のステップと、読み出し部が、読み出し要求を受け付けた場合、前記データが前記物理ディスクの領域に書き込まれているか否かを判断し、前記データが前記物理ディスクの領域に書き込まれている場合、前記物理ディスクの領域からデータを読み出す第２のステップと、物理ディスク解放部が、前記物理ディスクの領域のアクセス頻度が一定以上である場合、前記読み出したデータを前記不揮発性メモリの領域に移動し、前記読み出したデータが書き込まれていた前記物理ディスクの領域を解放する第３のステップと、不揮発性メモリ解放部が、前記不揮発性メモリの領域に書き込まれているアクセス頻度の低いデータを前記物理ディスクの領域に移動し、前記アクセス頻度が低いデータが書き込まれていた前記不揮発性メモリの領域を解放する第４のステップとを備えることを特徴とするストレージ装置の制御方法である。
【産業上の利用可能性】
【００７０】
本発明は、物理ディスク及び不揮発性メモリを備えるストレージ装置に適用することができる。
【符号の説明】
【００７１】
１……ストレージシステム、２……ホスト計算機２、３……ネットワーク、４……ストレージ装置、５……コントローラ部、６……記憶部、７……物理ディスク装置、８……不揮発性メモリ装置、１１……ホストインタフェース、１２……ＣＰＵ、１３……メモリ、１４……記憶インタフェース、２１……データ書き込み手段、２２……データ読み出し手段、２３……不揮発性メモリ割り当て解放手段、２４……パリティ書き込み手段、２５……論理ディスク管理テーブル、２６……物理ディスク管理テーブル、２７……アクセス頻度管理テーブル、３１……不揮発性メモリプール、３２……物理ディスクプール、３３……ストレージプール、３４……論理ディスク
【図１】
0005594647.tif 000002
【図２】
0005594647.tif 000003
【図３】
0005594647.tif 000004
【図４】
0005594647.tif 000005
【図５】
0005594647.tif 000006
【図６】
0005594647.tif 000007
【図７】
0005594647.tif 000008
【図８】
0005594647.tif 000009
【図９】
0005594647.tif 000010