(57)【特許請求の範囲】
【請求項１】
ホスト計算機から受信したデータを格納するための複数の半導体メモリと、
前記データを格納するための複数のディスク装置と、
前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、
を備え、
前記制御部は、
前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出し、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信する
ことを特徴とするディスクアレイ装置。
【請求項２】
ホスト計算機から受信したデータを格納するための複数の半導体メモリと、
前記データを格納するための複数のディスク装置と、
前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、
を備えるディスクアレイ装置の制御方法であって、
前記制御部が、前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出す第１のステップと、
前記制御部が、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信する第２のステップと、
を備えることを特徴とするディスクアレイ装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ装置及びその制御方法に関する。
【背景技術】
【０００２】
従来、ディスクアレイ装置において、ディスクアクセス性能を向上させる手段として、ＨＤＤ（Hard Disk Drive）の代わりに、ＨＤＤよりもランダムアクセスが高速なＳＳＤ（Solid State Drive）が用いられている。
【０００３】
ＳＳＤを用いたディスクアレイ装置として、例えば、特許文献１の制御システムが開示されている。特許文献１の制御システムは、コンピュータシステムからの書き込みのアクセス要求に対しては、ハードディスクとシリコンディスクにミラーリングの書き込みを行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−２２３３５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
近年、ディスクドライブの大容量化が進んでいるため、大容量ディスクドライブでＲＡＩＤ（Redundant Arrays of Independent Disks）を構築した場合、大容量ディスクドライブに障害が発生すると、その復旧時間が数日におよぶ場合もあるため、復旧中のアクセス性能の改善が問題となる。
【０００６】
本発明は以上の点を考慮してなされたものであり、アクセス性能を向上させ得るディスクアレイ装置及びその制御方法を提案するものである。
【課題を解決するための手段】
【０００７】
かかる課題を解決するために本発明のディスクアレイ装置の一態様は、ホスト計算機から受信したデータを格納するための複数の半導体メモリと、前記データを格納するための複数のディスク装置と、前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、を備え、前記制御部は、前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出し、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信することを特徴とする。
【０００８】
また、本発明のディスクアレイ装置の制御方法の一態様は、ホスト計算機から受信したデータを格納するための複数の半導体メモリと、前記データを格納するための複数のディスク装置と、前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、を備えるディスクアレイ装置の制御方法であって、前記制御部が、前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出す第１のステップと、前記制御部が、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信する第２のステップと、を備えることを特徴とする。
【０００９】
従って、一方の記憶媒体をディスク装置としているので、コストを削減することができると共に、データ読み出し時には半導体メモリから優先的に読み出しを行っているので、コストを削減しながらもＳＳＤ３０２の読み出し性能を活用することができる。また、半導体メモリの復旧動作中でも復旧完了部分においては半導体メモリからデータの読み出しをしているので、半導体メモリの読み出し性能を活用することができる。
【発明の効果】
【００１０】
本発明によれば、アクセス性能を向上させ得るディスクアレイ装置及びその制御方法を実現することができる。
【図面の簡単な説明】
【００１１】
【図１】ストレージシステムの構成の一例を示す図である。
【図２】ＳＳＤ／ＨＤＤ混在ＲＡＩＤリストの説明に供する概念図の一例を示す図である。
【図３】データ読み出し処理手順を示すフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の一実施形態を、図面を参照して詳細に説明する。なお、これにより本発明が限定されるものではない。
【００１３】
（構成）
図１は、本実施形態のストレージシステム１の構成の一例を示す図である。ストレージシステム１は、例えば、ホスト計算機４００とディスクアレイ装置１００とを備える。ホスト計算機４００及びディスクアレイ装置１００は、例えば、所定のネックワークを介して接続される。
【００１４】
ホスト計算機４００は、例えば、ＣＰＵ（Central Processing Unit）やメモリ等の情報処理資源、情報入力装置、情報出力装置を備えたコンピュータ装置である。ホスト計算機４００は、例えば、書き込み要求をディスクアレイ装置１００に送信して、対応するデータをディスクアレイ装置１００に書き込む。また、ホスト計算機４００は、例えば、読み出し要求をディスクアレイ装置１００に送信し、対応するデータをディスクアレイ装置１００から読み出す。
【００１５】
所定のネットワークは、例えば、ＬＡＮ（Local Area Network）、ＳＡＮ（Storage Area Network）、インターネット、専用回線、公衆回線等を場合に応じて適宜用いることができる。
【００１６】
ディスクアレイ装置１００は、例えば、コントローラ部２００と記憶部３００とを備える。ディスクアレイ装置１００は、コントローラ部２００を少なくとも１つ備えている。コントローラ部２００は、当該ディスクアレイ装置１００全体を制御する。記憶部３００は、例えば、ホスト計算機４００から受信したデータを格納する複数の半導体メモリと複数の物理ディスク装置とを備える。
【００１７】
コントローラ部２００は、ホスト計算機４００から受信した各種要求を解釈して、各構成要素を制御する。また、コントローラ部２００は、半導体メモリ及び物理ディスク装置に対してＲＡＩＤ（Redundant Arrays of Inexpensive/Independent Disks）制御を行うことにより、ディスクアレイ装置１００の信頼性、可用性及び性能を向上させる。この場合、コントローラ部２００は、半導体メモリ及び物理ディスク装置により提供される物理的な記憶領域（ＲＡＩＤグループ）上に、１又は複数の論理ディスクを設定する。そして、コントローラ部２００は、ホスト計算機４００から論理ディスクのアドレスが指定されると、この論理ディスク内に所定の大きさのブロック単位でデータを記憶する。
【００１８】
コントローラ部２００は、例えば、読み出し動作制御部２０１と構成情報記憶部２０２とを備える。読み出し動作制御部２０１は、記憶部３００に格納されているデータの読み出し（リード）を制御する。構成情報記憶部２０２には、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０が格納されている。
【００１９】
記憶部３００は、例えば、ＲＡＩＤレベル１のＲＡＩＤ３０１を備える。ＲＡＩＤ３０１は、例えば、ＳＳＤ３０２とＨＤＤ３０３とを備える。すなわち、ＳＳＤ３０２及びＨＤＤ３０３は、ミラーリングされている。ＳＳＤ３０２及びＨＤＤ３０３を備えるＲＡＩＤ３０１は、ＳＳＤ／ＨＤＤ混在ＲＡＩＤとも呼ぶ。
【００２０】
図２は、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０の説明に供する概念図の一例を示す図である。ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０は、ディスクアレイ装置１００が有するすべてのＳＳＤ／ＨＤＤ混在ＲＡＩＤのＲＡＩＤ番号２１１、ＲＡＩＤ状態２１２、ＲＡＩＤ３０１を構成する物理ディスク装置の番号である構成Disk番号２１３、各物理ディスク装置の状態である構成Disk状態２１４、各ＲＡＩＤ３０１が有する論理ディスクの番号であるＬＤ番号２１５、各論理ディスクの復旧アドレス２１６を対応づけて備える。
【００２１】
復旧アドレス２１６は、ＳＳＤ３０２又はＨＤＤ３０３に障害が発生した場合に、当該障害がどこまで復旧しているかを示すアドレスである。例えば、復旧アドレス２１６が「０ｘ０３００００」である場合、「０ｘ００００００」から「０ｘ０３００００」までの論理ディスク（ＳＳＤ３０２又はＨＤＤ３０３）が、復旧完了していることとなる。
【００２２】
例えば、ＲＡＩＤ番号が「５」のＲＡＩＤ３０１は、ＲＡＩＤ状態が「Ｆａｕｌｔ（異常状態）」であり、ＳＳＤ３０２の番号が「６」、ＨＤＤ３０３の番号が「７」であり、ＳＳＤ３０２の状態が「Ｆａｕｌｔ」、ＨＤＤ３０３の状態が「Ｒｅａｄｙ（正常状態）」であり、当該ＲＡＩＤ３０１のＬＤ番号が「６」であり、当該論理ディスクの復旧アドレスが「０ｘ０３００００」である。
【００２３】
（データ読み出し処理手順）
次に、本実施形態のストレージシステム１の動作について詳細に説明する。図３は、本実施形態のディスクアレイ装置１００のデータ読み出し処理手順を示すフローチャートである。
【００２４】
読み出し動作制御部２０１は、例えば、ホスト計算機４００からデータ読み出し要求を受信すると、データ読み出し処理手順を開始し、読み出し対象論理ディスク、ＲＡＩＤ３０１を特定する。その後、読み出し動作制御部２０１は、構成情報記憶部２０２が保持するＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０のＲＡＩＤ番号２１１を参照する。続いて、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１が、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０に存在するか否かを判断することにより、ＳＳＤ／ＨＤＤ混在ＲＡＩＤであるか否かを判断する（ステップＳ１）。なお、読み出し対象論理ディスク、ＲＡＩＤ３０１を特定は、例えば、ホストＩ／Ｆ制御部（図示せず）が行うようにしても良い。
【００２５】
そして、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１がＳＳＤ／ＨＤＤ混在ＲＡＩＤでない場合（ステップＳ１：ＮＯ）には、ＳＳＤ３０２のみ又はＨＤＤ３０３のみから構成されるＲＡＩＤ３０１であるため、２つのＳＳＤ３０２又は２つのＨＤＤ３０３から負荷分散を行い、ホスト計算機４００への読み出し対象のデータの読み出し処理を実施する（ステップＳ７）。
【００２６】
これに対して、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１がＳＳＤ／ＨＤＤ混在ＲＡＩＤである場合（ステップＳ１：ＹＥＳ）には、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０のＲＡＩＤ状態番号２１２を参照する。続いて、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１の状態が、異常状態であるか否かを判断する（ステップＳ２）。
【００２７】
そして、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１の状態が異常状態でない場合（ステップＳ２：ＮＯ）には、ＳＳＤ３０２からホスト計算機４００への読み出し対象のデータの読み出しを実施する（ステップＳ５）。
【００２８】
これに対して、読み出し動作制御部２０１は、データ読み出し対象のＲＡＩＤ３０１の状態が異常状態である場合（ステップＳ２：ＹＥＳ）には、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０の構成Disk番号２１３及び構成Disk状態２１４を参照する。続いて、読み出し動作制御部２０１は、データ読み出し対象のＳＳＤ３０２の状態が異常状態であるか否かを判断する（ステップＳ３）。
【００２９】
そして、読み出し動作制御部２０１は、データ読み出し対象のＳＳＤ３０２の状態が異常状態でない場合（ステップＳ３：ＮＯ）には、ＳＳＤ３０２からホスト計算機４００への読み出し対象のデータの読み出しを実施する（ステップＳ５）。
【００３０】
これに対して、読み出し動作制御部２０１は、データ読み出し対象のＳＳＤ３０２の状態が異常状態である場合（ステップＳ３：ＹＥＳ）には、ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト２１０のＬＤ番号２１５及び復旧アドレス２１６を参照する。続いて、読み出し動作制御部２０１は、復旧アドレス２１６が、読み出し対象のデータが格納されているアドレスの番号よりも大きいことにより、当該データのＳＳＤ３０２の読み出しデータ領域が復旧完了しているか否かを判断する（ステップＳ４）。
【００３１】
そして、読み出し動作制御部２０１は、読み出し対象のデータが格納されているＳＳＤ３０２の読み出しデータ領域が復旧完了している場合（ステップＳ４：ＹＥＳ）には、ＳＳＤ３０２からホスト計算機４００への読み出し対象のデータの読み出しを実施する（ステップＳ５）。
【００３２】
これに対して、読み出し動作制御部２０１は、読み出し対象のデータが格納されているＳＳＤ３０２の読み出しデータ領域が復旧完了していない場合（ステップＳ４：ＮＯ）には、ＨＤＤ３０３からホスト計算機４００への読み出し対象のデータの読み出しを実施する（ステップＳ６）。
【００３３】
やがて、読み出し動作制御部２０１は、ＳＳＤ３０２又はＨＤＤ３０３から読み出したデータをホスト計算機４００に送信し、データ読み出し処理手順を終了する。
【００３４】
（動作及び効果）
このようにして、本実施形態のディスクアレイ装置１００では、ＲＡＩＤ３０１が、ＳＳＤ３０２とＨＤＤ３０３とを備えており、読み出し動作制御部２０１が、データ読み出し対象のＲＡＩＤ３０１の状態が異常状態でない場合に、又は読み出し対象のデータが格納されているＳＳＤ３０２の読み出しデータ領域が復旧完了している場合に、ＳＳＤ３０２からホスト計算機４００への読み出し対象のデータの読み出しを実施し、読み出したデータをホスト計算機４００に送信する。
【００３５】
従って、ＳＳＤ３０２を用いたＲＡＩＤ１レベル１のＲＡＩＤ３０１において、一方の記憶媒体をＨＤＤ３０３としているので、コストを削減することができると共に、データ読み出し時にはＳＳＤ３０２から優先的に読み出しを行っているので、コストを削減しながらもＳＳＤ３０２の読み出し性能を活用することができる。
【００３６】
また、ＳＳＤ３０２の復旧動作中でも復旧完了部分においてはＳＳＤ３０２からデータの読み出しをしているので、ＳＳＤ３０２の読み出し性能を活用することができる。
【００３７】
なお、本実施形態においては、ＲＡＩＤレベル１のＲＡＩＤ３０１（ミラーリング）について説明を行ったが、本発明はこれに限らず、例えば、ＳＳＤ３０３を１つ、ＨＤＤ３０３を２つ備えるトリプルミラーのＲＡＩＤや、その他のＲＡＩＤにおいても同様の効果を得ることが可能である。
【００３８】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００３９】
（付記１）ホスト計算機から受信したデータを格納するための複数の半導体メモリと、前記データを格納するための複数のディスク装置と、前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、を備え、前記制御部は、前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出し、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信することを特徴とするディスクアレイ装置である。
【００４０】
（付記２）ホスト計算機から受信したデータを格納するための複数の半導体メモリと、前記データを格納するための複数のディスク装置と、前記半導体メモリと前記ディスク装置とをＲＡＩＤ１により冗長構成し、前記半導体メモリ又は前記ディスク装置からのデータの読み出しを制御する制御部と、を備えるディスクアレイ装置の制御方法であって、前記制御部が、前記半導体メモリ及び前記ディスク装置の状態が正常状態である場合に、又は前記半導体メモリの状態が異常状態である場合であって、前記データが格納されている前記半導体メモリのデータ領域が復旧完了している場合に、前記半導体メモリから前記データを読み出す第１のステップと、前記制御部が、前記半導体メモリから読み出した前記データを前記ホスト計算機に送信する第２のステップと、を備えることを特徴とするディスクアレイ装置の制御方法。
【符号の説明】
【００４１】
１……ストレージシステム、１００……ディスクアレイ装置、２００……コントローラ部、２０１……読み出し動作制御部、２０２……ＳＳＤ／ＨＤＤ混在ＲＡＩＤリスト、３００……記憶部、３０１……ＲＡＩＤ、３０２……ＳＳＤ、３０３……ＨＤＤ、４００……ホスト計算機
【図１】
0005505329.tif 000002
【図２】
0005505329.tif 000003
【図３】
0005505329.tif 000004