(57)【要約】【課題】  読み書き指令を伝達する経路の障害が解消された場合に、ストレージ装置の読み書き指令に対する応答性能の迅速な回復を図る。【解決手段】  性能の異なる複数種の物理ディスク７を備えるストレージ装置１の対策部５は、検知部４による検知情報に基づいて指令経路１１における障害発生を検知した場合に、その障害が発生した指令経路１１に対応する論理ディスク１０のデータが格納されている物理ディスク７の種別情報を障害発生時情報として取得する。また、対策部５は、その指令経路１１が復旧したことを検知した場合には、復旧した指令経路１１に対応する論理ディスク１０のデータを、障害発生時情報に基づいて、障害発生時に格納されていた種別の物理ディスク７に移動する。【選択図】      図１
2015185068.tif 000002
【特許請求の範囲】
【請求項１】
性能が異なる複数種の記憶装置である物理ディスクを備えているディスク群と、
データの読み書き指令を発する複数のホストコンピュータにそれぞれ関連付けられ仮想的にデータを格納する複数の論理ディスクのそれぞれに対する前記読み書き指令の頻度に応じて、前記論理ディスクの前記データを格納する前記物理ディスクの種別を変更し前記データを移動するデータ配置部と、
前記ホストコンピュータから、関連付けられている前記論理ディスクに向けて前記読み書き指令を伝達する指令経路における障害発生とその指令経路の復旧を検知する検知部と、
前記検知部による検知情報に基づいて前記指令経路における障害発生を検知した場合に、その障害が発生した前記指令経路に対応する前記論理ディスクの前記データが格納されている前記物理ディスクの種別情報を障害発生時情報として取得し、前記検知部による検知情報に基づいて前記指令経路が復旧したことを検知した場合には、その復旧した前記指令経路に対応する前記論理ディスクの前記データを、前記障害発生時情報に基づいて、障害発生時に格納されていた種別の前記物理ディスクに移動する対策部と
を備えているストレージ装置。
【請求項２】
前記検知部は、前記指令経路の状況を知らせる情報を前記ホストコンピュータから受け取り、当該情報に基づいて、前記指令経路の障害発生とその指令経路の復旧を検知する請求項１に記載のストレージ装置。
【請求項３】
前記対策部は、障害発生時に格納されていた種別の前記物理ディスクに前記データを移動する場合に、その移動対象のデータの容量に対して、移動先の前記物理ディスクの空き領域が足りない場合には、当該物理ディスクに格納されているデータに対応する前記論理ディスクの中から、前記読み書き指令を受ける頻度が低い前記論理ディスクを選択し当該論理ディスクの前記データを別の種別の前記物理ディスクに移動する請求項１又は請求項２に記載のストレージ装置。
【請求項４】
前記対策部は、障害発生時に格納されていた種別の前記物理ディスクに前記データを移動する前に、前記ホストコンピュータから、復旧した前記指令経路を介して前記読み出し指令を受け取り始めた場合には、前記障害発生時情報に基づいた前記データの移動よりも前記データ配置部による前記データの移動を優先して処理を終了する請求項１又は請求項２又は請求項３に記載のストレージ装置。
【請求項５】
請求項１乃至請求項４の何れか一つに記載のストレージ装置と、
前記ストレージ装置を共通に利用する複数のホストコンピュータと
を備えるストレージシステム。
【請求項６】
前記ホストコンピュータは、前記ストレージ装置に読み書き指令を伝達する指令経路の状況を知らせる通知部を備えている請求項５に記載のストレージシステム。
【請求項７】
性能が異なる複数種の記憶装置である物理ディスクを備え、
データの読み書き指令を発する複数のホストコンピュータにそれぞれ関連付けられ仮想的にデータを格納する複数の論理ディスクのそれぞれに対する前記読み書き指令の頻度に応じて、前記論理ディスクの前記データを格納する前記物理ディスクの種別を変更し前記データを移動し、
また、前記ホストコンピュータから、関連付けられている前記論理ディスクに向けて前記読み書き指令を伝達する指令経路における障害発生を検知した場合には、その障害が発生した前記指令経路に対応する前記論理ディスクの前記データが格納されている前記物理ディスクの種別情報を障害発生時情報として取得し、前記指令経路が復旧したことを検知した場合には、その復旧した前記指令経路に対応する前記論理ディスクの前記データを、前記障害発生時情報に基づいて、障害発生時に格納されていた種別の前記物理ディスクに移動するデータ配置方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数種の物理ディスクを効率的に利用する技術に関する。
【背景技術】
【０００２】
図１０は、ストレージ装置の一構成例を簡略化して表すブロック図である。このストレージ装置１００は、ＩＬＭ（Information Lifecycle Management）と呼ばれる技術を利用する装置である。ストレージ装置１００は、制御部１０１と、物理ディスク群（プール）１０２とを有している。物理ディスク群１０２は、記憶装置である複数（図１０の例では４個）の物理ディスク１０４を備えている。それら物理ディスク１０４は同一種ではなく、物理ディスク群１０２には、ディスクに対する読み書き性能および容量が異なる複数種の物理ディスク１０４が混在している。例えば、少なくとも一つの物理ディスク１０４はニアラインＳＡＳ（Serial Attached SCSI (Small Computer System Interface)）であり、残りの物理ディスク１０４のうちの一つは、ニアラインＳＡＳよりも性能が高いＳＳＤ（Solid State Drive）である。
【０００３】
このストレージ装置１００では、物理ディスク１０４により実現される複数の論理ディスク（仮想ディスク）１１０が設定されている。これら各論理ディスク１１０は、対応するホストコンピュータ１１１が定められている。ホストコンピュータ１１１は、論理ディスク１１０に向けてデータの読み書きを指令する。これに対し、ストレージ装置１００の制御部１０１は、その読み書き指令（ＩＯ（Input/Output）指令）に基づいて、論理ディスク１１０に関連付けられているデータを物理ディスク１０４に書き込んだり、物理ディスク１０４から読み出す。
【０００４】
このストレージ装置１００の制御部１０１は、ホストコンピュータ１１１から論理ディスク１１０に対するデータの読み書き（ＩＯ（Input/Output））頻度を監視する。そして、制御部１０１は、ＩＯ頻度の低い論理ディスク１１０に対応するデータを、低性能の物理ディスク１０４に格納し、ＩＯ頻度の高い論理ディスク１１０に対応するデータを、高性能の物理ディスク１０４に格納する。このように、ＩＬＭ技術を利用するストレージ装置１００は、データをＩＯ頻度に応じた性能の物理ディスク１０４に格納することにより、物理ディスク１０４を効率良く利用する。
【０００５】
なお、特許文献１はデータの階層管理方法に関し、当該特許文献１には、仮想ボリュームアドレスおよび論理ボリュームアドレスによって特定される領域へのアクセス数に基づいて当該領域の移動先階層を決定する処理に関わる技術が開示されている。
【０００６】
特許文献２はバーチャリゼーション装置に関し、当該特許文献２には、受信した障害通知メッセージを解釈し、その障害が実ボリューム又は仮想ボリュームのアクセスに与える影響を検出出力する技術が開示されている。また、特許文献２には、複数の障害通知メッセージを受信した場合には、実ボリュームと仮想ボリュームとの対応関係に基づいて、複数の障害通知を関連付けて出力する技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０１１−２２７８９８号公報
【特許文献２】特開２００７−１７２００３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、ホストコンピュータ１１１とストレージ装置１００は、多くの場合、ケーブル（例えば、ＦＣ（Fibre Channel）ケーブル）により接続される。また、ホストコンピュータ１１１には、ストレージ装置１００と通信するために定められた通信方式に応じたインターフェース機器（例えば、ホストバスアダプタ）が備えられている。ホストコンピュータ１１１から発せられるＩＯ指令は、そのようなインターフェース機器とケーブルを通ってストレージ装置１００に伝達される。
【０００９】
しかしながら、ホストコンピュータ１１１のインターフェース機器が故障したり、ケーブルが切断してしまうＩＯ（Input/Output）パス障害が発生する場合がある。そのようなＩＯパス障害に関係するホストコンピュータ１１１から発せられるＩＯ指令はストレージ装置１００に到達しない。このことに起因して次のような問題が発生する場合がある。すなわち、例えば、図１０に示す論理ディスク１１０Ａに対するＩＯ頻度が高く、これにより、論理ディスク１１０Ａに対応するデータは、高性能な物理ディスク１０４に格納されているとする。このような状態である場合に、ＩＯパス障害のためにホストコンピュータ１１１Ａから論理ディスク１１０Ａに向けてＩＯ指令が伝達されなくなると、論理ディスク１１０ＡのＩＯ頻度が低下する。このＩＯ頻度低下のために、制御部１０１は、論理ディスク１１０Ａに対応するデータを、高性能な物理ディスク１０４から低性能な物理ディスク１０４に移動する。
【００１０】
その後、ＩＯパス障害の復旧作業により、ホストコンピュータ１１１Ａと論理ディスク１１０Ａを接続するＩＯパスが復旧すると、論理ディスク１１０ＡのＩＯ頻度が障害発生前のように高くなる。このＩＯ頻度の上昇を検知すると、制御部１０１は、論理ディスク１１０Ａに対応するデータを、低性能な物理ディスク１０４から高性能な物理ディスク１０４に移動する。
【００１１】
しかしながら、ＩＯパスが復旧してから論理ディスク１１０ＡのＩＯ頻度が障害発生前の高い状態に戻ったことを制御部１０１が検知するまでに、タイムラグがある。このタイムラグのために、ＩＯ頻度が高いのにも拘わらずデータは低性能な物理ディスク１０４に格納されている状態が続くという問題がある。
【００１２】
本発明は上記課題を解決するために考え出された。すなわち、本発明の主な目的は、読み書き指令を伝達する経路の障害が解消された場合に、ストレージ装置の読み書き指令に対する応答性能の迅速な回復を図る技術を提供することにある。
【課題を解決するための手段】
【００１３】
上記目的を達成するために、本発明のストレージ装置は、
性能が異なる複数種の記憶装置である物理ディスクを備えているディスク群と、
データの読み書き指令を発する複数のホストコンピュータにそれぞれ関連付けられ仮想的にデータを格納する複数の論理ディスクのそれぞれに対する前記読み書き指令の頻度に応じて、前記論理ディスクの前記データを格納する前記物理ディスクの種別を変更し前記データを移動するデータ配置部と、
前記ホストコンピュータから、関連付けられている前記論理ディスクに向けて前記読み書き指令を伝達する指令経路における障害発生とその指令経路の復旧を検知する検知部と、
前記検知部による検知情報に基づいて前記指令経路における障害発生を検知した場合に、その障害が発生した前記指令経路に対応する前記論理ディスクの前記データが格納されている前記物理ディスクの種別情報を障害発生時情報として取得し、前記検知部による検知情報に基づいて前記指令経路が復旧したことを検知した場合には、その復旧した前記指令経路に対応する前記論理ディスクの前記データを、前記障害発生時情報に基づいて、障害発生時に格納されていた種別の前記物理ディスクに移動する対策部と
を備えている。
【００１４】
本発明のストレージシステムは、
本発明のストレージ装置と、
前記ストレージ装置を共通に利用する複数のホストコンピュータと
を備える。
【００１５】
本発明のデータ配置方法は、
性能が異なる複数種の記憶装置である物理ディスクを備え、
データの読み書き指令を発する複数のホストコンピュータにそれぞれ関連付けられ仮想的にデータを格納する複数の論理ディスクのそれぞれに対する前記読み書き指令の頻度に応じて、前記論理ディスクの前記データを格納する前記物理ディスクの種別を変更し前記データを移動し、
また、前記ホストコンピュータから、関連付けられている前記論理ディスクに向けて前記読み書き指令を伝達する指令経路における障害発生を検知した場合には、その障害が発生した前記指令経路に対応する前記論理ディスクの前記データが格納されている前記物理ディスクの種別情報を障害発生時情報として取得し、前記指令経路が復旧したことを検知した場合には、その復旧した前記指令経路に対応する前記論理ディスクの前記データを、前記障害発生時情報に基づいて、障害発生時に格納されていた種別の前記物理ディスクに移動する。
【発明の効果】
【００１６】
本発明によれば、読み書き指令を伝達する経路の障害が解消された場合に、ストレージ装置の読み書き指令に対する応答性能の迅速な回復を図ることができる。
【図面の簡単な説明】
【００１７】
【図１】本発明に係る第１実施形態のストレージ装置の構成を簡略化して表すブロック図である。
【図２】第１実施形態のストレージ装置を備えたストレージシステムの構成を簡略化して表すブロック図である。
【図３】本発明に係る第２実施形態のストレージ装置を備えたストレージシステムの構成を簡略化して表すブロック図である。
【図４】第２実施形態のストレージ装置の構成を簡略化して表すブロック図である。
【図５】第２実施形態のストレージ装置の記憶部が保持するデータの一例を模式的に表す図である。
【図６】第２実施形態においてホストコンピュータが保持するデータの一例を模式的に表す図である。
【図７】第２実施形態においてホストコンピュータを構成するパス状況通知部の動作例を表すフローチャートである。
【図８】第２実施形態においてストレージ装置を構成する対策部の動作例を表すフローチャートである。
【図９】さらに、対策部の動作例を表すフローチャートである。
【図１０】ストレージ装置の一構成例を表すブロック図である。
【発明を実施するための形態】
【００１８】
以下に、本発明に係る実施形態を図面を参照しつつ説明する。
【００１９】
（第１実施形態）
図１は、本発明に係る第１実施形態のストレージ装置の構成を簡略化して表すブロック図である。この第１実施形態のストレージ装置１は、物理ディスク群２と、データ配置部３と、検知部４と、対策部５とを備えている。
【００２０】
物理ディスク群２は、性能の異なる複数種の記憶装置である物理ディスク７を備えている。この第１実施形態では、複数の論理ディスク（仮想ディスク）１０が設定されている。これら論理ディスク１０は、それぞれ、データの読み書き指令を発するホストコンピュータ８に関連付けられており、ホストコンピュータ８からの読み書き指令に基づいて、仮想的にデータを格納する。その論理ディスク１０に仮想的に格納されるデータは、実際には、物理ディスク７に格納される。
【００２１】
データ配置部３は、各論理ディスク１０に対するホストコンピュータ８からの読み書き指令の頻度に応じて、論理ディスク１０に対応するデータを実際に格納する物理ディスク７の種別を変更し移動する機能を備えている。
【００２２】
検知部４は、ホストコンピュータ８から、関連付けられている論理ディスク１０に向けて読み書き指令を伝達する指令経路１１における障害発生とその指令経路１１の復旧を検知する機能を備えている。
【００２３】
対策部５は、検知部４による検知情報に基づき指令経路１１の障害発生を検知した場合に、その障害が発生した指令経路１１に対応する論理ディスク１０のデータが格納されている物理ディスク７の種別情報を障害発生時情報として取得する機能を備えている。
【００２４】
また、対策部５は、その指令経路１１が復旧したことを検知した場合には、復旧した指令経路１１に対応する論理ディスク１０のデータを、障害発生時情報に基づいて、障害発生時に格納されていた種別の物理ディスク７に移動する機能を備えている。
【００２５】
つまり、障害が発生した指令経路１１に関連付けられている論理ディスク１０に対しては、ホストコンピュータ８からの読み書き指令が伝達されなくなるため、当該論理ディスク１０に対する読み書き指令の頻度が低下する。このために、データ配置部３によって、その頻度が低下した論理ディスク１０のデータが、例えば、性能の低い物理ディスク７に移動される。対策部５は、指令経路１１が復旧したことを検知した場合には、復旧した指令経路１１に関連付けられている論理ディスク１０のデータを、障害発生時情報に基づいて、障害発生時に格納されていた性能の高い物理ディスク７に移動する。
【００２６】
このようなデータ配置部３と検知部４と対策部５は、例えば、ＣＰＵ（Central Processing Unit）を備えている制御装置１３により実現される機能部である。
【００２７】
この第１実施形態のストレージ装置１は、論理ディスク１０に対する読み書き指令の頻度に応じて、論理ディスク１０のデータを格納する物理ディスク７の種別を変更し移動する機能を備えている。これに加えて、このストレージ装置１は、対策部５を備えている。この対策部５によって、ストレージ装置１は、障害が発生していた指令経路１１が復旧した場合に、その指令経路１１に関連付けられている論理ディスク１０のデータを障害発生時に格納されていた種別の物理ディスク７に移動することができる。つまり、その論理ディスク１０に対する読み書き指令の頻度が高くなることを待たずに、ストレージ装置１は、その論理ディスク１０のデータを、性能の高い物理ディスク７に移動できる。このため、ストレージ装置１は、指令経路１１が復旧してから、障害発生前の状態に回復するまでの時間を短縮できる。
【００２８】
図２は、第１実施形態のストレージ装置１を含むストレージシステム１５の構成を簡略化して表すブロック図である。このストレージシステム１５は、第１実施形態のストレージ装置１と、当該ストレージ装置１を共通に利用する複数のホストコンピュータ８とを備えている。
【００２９】
このストレージシステム１５は、ストレージ装置１を備えているので、障害が発生していた指令経路１１が復旧した場合に、読み書き指令に対する応答性能を迅速に回復できる。
【００３０】
（第２実施形態）
以下に、本発明に係る第２実施形態を説明する。
【００３１】
図３は、本発明に係る第２実施形態のストレージ装置を備えたストレージシステムの大概構成を表すブロック図である。図４は、第２実施形態のストレージ装置の構成を簡略化して表すブロック図である。
【００３２】
このストレージシステム２０は、複数のホストコンピュータ２１と、ストレージ装置２２とを備えている。各ホストコンピュータ２１とストレージ装置２２は、ケーブル（例えば、ＦＣ（Fibre Channel）ケーブル）２３により接続されている。
【００３３】
ホストコンピュータ２１は、そのケーブル２３と接続するインターフェース機器（例えば、ホストバスアダプタ）２４を備えている。データの読み書き指令であるＩＯ（Input/Output）指令は、ホストコンピュータ２１のインターフェース機器２４とケーブル２３を通ってストレージ装置２２に伝達される。つまり、この第２実施形態では、ホストコンピュータ２１からストレージ装置２２にＩＯ指令（読み書き指令）を伝達する指令経路であるＩＯ（Input/Output）パス２５は、インターフェース機器２４とケーブル２３を有して構成される。
【００３４】
ホストコンピュータ２１は、さらに、パス状況通知部２６を備えている。パス状況通知部２６は、ＩＯパス２５の状況を監視する機能を有している。さらに、パス状況通知部２６は、ＩＯパス２５に障害（インターフェース機器２４の故障やケーブル２３の切断など）が発生した場合に、ＩＯパス２５とは別の通信手段２７により、ＩＯパス２５の障害発生をストレージ装置２２に通知する機能を備えている。さらにまた、パス状況通知部２６は、障害が発生していたＩＯパス２５が復旧した場合には、その復旧したことを通信手段２７を利用してストレージ装置２２に通知する機能を備えている。
【００３５】
ストレージ装置２２は、大別すると、制御装置３０と、物理ディスク群３１とを備えている。物理ディスク群３１は、性能および記憶容量の異なる複数種の物理ディスク（記憶装置）３２を備えている。この物理ディスク群３１は、仮想的な一つの記憶装置（プール）３８として扱われる。
【００３６】
この第２実施形態では、複数の論理ディスク（仮想ディスク）３３が設定されている。これら論理ディスク３３は、それぞれ、ホストコンピュータ２１に関連付けられており、ホストコンピュータ２１からのＩＯ指令に基づいて、仮想的にデータを格納する。その論理ディスク２１に仮想的に格納されるデータは、実際には、仮想的なプール３８を構成する物理ディスク３２に格納される。
【００３７】
制御装置３０は、データ配置部３４と、検知部３５と、対策部３６と、記憶部３７とを備えている。記憶部３７は、記憶媒体を備え、データや、コンピュータプログラムを格納する。例えば、記憶部３７に格納されるコンピュータプログラムは、ストレージ装置２２全体の動作を制御する制御手順が表されているコンピュータプログラム（プログラム）である。
【００３８】
また、記憶部３７には、例えば、次のようなテーブルデータが記憶されている。図５は、記憶部３７に格納されているテーブルデータを模式的に表す図である。この第２実施形態では、記憶部３７は、ホスト情報テーブルデータ４９と、論理ディスク情報テーブルデータ５０と、障害対策テーブルデータ５１とを格納している。ホスト情報テーブルデータ４９は、ホスト番号とＩＯパス番号とＩＯパス状況と論理ディスク番号との関連付けを表すデータである。ホスト番号とは、ホストコンピュータ２１の識別情報である。ＩＯパス番号とは、そのホストコンピュータ２１に接続しているＩＯパス２５の識別情報である。ＩＯパス状況とは、そのＩＯパス２５が正常であるか障害が発生しているかのパス状況を表す情報である。論理ディスク情報とは、そのＩＯパス２５に関連付けられている論理ディスク３３の識別情報である。
【００３９】
論理ディスク情報テーブルデータ５０は、論理ディスク番号とデータ番号と物理ディスク種別情報との関連付けを表すデータである。論理ディスク情報とは、論理ディスク３３の識別情報である。データ番号とは、その論理ディスク３３に仮想的に格納されるデータを識別する情報である。物理ディスク種別情報とは、論理ディスク３３に関連付けられているデータが格納される物理ディスク３２の種類を識別する情報である。
【００４０】
障害対策テーブルデータ５１は、ＩＯパス２５に障害が発生した場合に当該ＩＯパス２５に関連付けられている論理ディスク番号とデータ番号と物理ディスク種別情報との関連を表すデータである。その論理ディスク番号とは、障害が発生したＩＯパス２５に関連付けられている論理ディスク３３の識別番号である。データ番号とは、その論理ディスク３３に仮想的に格納されるデータを識別する情報である。物理ディスク種別情報とは、ＩＯパス２５に障害が発生した時に当該ＩＯパス２５に対応する論理ディスク３３のデータが格納されていた物理ディスク３２の種類を識別する情報である。
【００４１】
データ配置部３４と検知部３５と対策部３６は、例えばＣＰＵ（Central Processing Unit）３９により実現される機能部である。つまり、ＣＰＵ３９は、記憶部３７に格納されているコンピュータプログラムを読み出し、当該コンピュータプログラムを実行することにより、ストレージ装置２２の全体的な動作を制御する。この第２実施形態では、ＣＰＵ３９は、機能部として、前記の如く、データ配置部３４と検知部３５と対策部３６を備えている。
【００４２】
データ配置部３４は、ＩＯ監視部４０と、変更部４１とを有している。ＩＯ監視部４０は、各ホストコンピュータ２１から、関連付けられている論理ディスク３３に向けて発せられたＩＯ指令の数を監視（カウント）する機能を備えている。さらに、ＩＯ監視部４０は、予め定められた単位時間に受け取ったＩＯ指令の数（つまり、ＩＯ（Input/Output）頻度）を各論理ディスク３３毎に算出し保持する機能を備えている。
【００４３】
変更部４１は、ＩＯ監視部４０により算出された各論理ディスク３３のＩＯ頻度に応じて、論理ディスク３３に仮想的に格納されるデータを実際に格納する物理ディスク３２の種別を決定する機能を備えている。さらに、変更部４１は、その決定した物理ディスク３２の種別に基づいて、記憶部３７に格納されている論理ディスク情報テーブルデータ５０における物理ディスク種別情報を更新する機能を備えている。さらに、変更部４１は、決定した物理ディスク３２の種別が、論理ディスク３３のデータを実際に格納している物理ディスク３２の種別と異なる場合には、そのデータを新たに決定した種別の物理ディスク３２に移動する機能を備えている。
【００４４】
検知部３５は、障害検知部４３と、復旧検知部４４とを備えている。障害検知部４３は、ホストコンピュータ２１のパス状況通知部２６から通信手段２７を介して送信されるパス状況情報に基づいて、ＩＯパス２５に障害が発生していることを検知する機能を備えている。さらに、障害検知部４３は、障害発生を検知した場合には、記憶部３７のホスト情報テーブルデータ４９において、障害が発生したＩＯパス２５に対応するＩＯパス状況の情報を「正常」から「障害」に変更（更新）する機能を備えている。
【００４５】
復旧検知部４４は、ホストコンピュータ２１のパス状況通知部２６から通信手段２７を介して送信されるパス状況情報に基づいて、ＩＯパス２５が正常であることを検知する機能を備えている。さらに、復旧検知部４４は、ＩＯパス２５が正常であることを検知した場合に、記憶部３７のホスト情報テーブルデータ４９のＩＯパス状況の情報が「障害」である場合には、その「障害」を「正常」に変更（更新）する機能を備えている。さらに、復旧検知部４４は、そのように「障害」を「正常」に変更した場合には、ＩＯパス２５が復旧したことを検知する機能を備えている。
【００４６】
対策部３６は、取得部４６と、復元部４７とを備えている。取得部４６は、障害検知部４３が障害発生を検知した場合には、その検知情報に基づいて、障害が発生したＩＯパス２５を検知する機能を備えている。さらに、取得部４６は、その検知したＩＯパス２５に関連付けられている論理ディスク３３とそのデータが格納されている物理ディスク３２の種別情報を論理ディスク情報テーブルデータ５０から障害発生時情報として読み出す機能を備えている。さらに、取得部４６は、その読み出した情報を障害対策テーブルデータ５１に登録する機能を備えている。
【００４７】
復元部４７は、復旧検知部４４がＩＯパス２５の復旧を検知した場合には、その検知情報に基づいて、復旧したＩＯパス２５を検知する機能を備えている。さらに、復元部４７は、検知したＩＯパス２５に関連付けられている論理ディスク３３のデータが、そのＩＯパス２５の障害発生時に格納されていた物理ディスク３２の種別情報を障害対策テーブルデータ５１から読み出す機能を備えている。また、復元部４７は、復旧したＩＯパス２５に関連付けられている論理ディスク３３のデータが格納されている物理ディスク３２の種別情報を論理ディスク情報テーブルデータ５０から読み出す機能を備えている。さらに、復元部４７は、それら読み出した情報に基づいて、復旧したＩＯパス２５に関連付けられている論理ディスク３３のデータを、障害発生時に格納されていた種別の物理ディスク３２に移動する機能を備えている。
【００４８】
以下に、第２実施形態のホストコンピュータ２１とストレージ装置２２における、ＩＯパス２５の障害発生と復旧に関係するデータ格納に関わる制御動作を図７〜図９を利用して説明する。なお、図７は、ホストコンピュータ２１の動作に関するフローチャートを表している。当該図６のフローチャートは、ホストコンピュータ２１が実行するコンピュータプログラムに表されている制御手順である。また、図８と図９は、ストレージ装置２２のＣＰＵ３９の動作に関するフローチャートを表している。図８および図９のフローチャートは、ＣＰＵ３９が実行するコンピュータプログラムに表されている制御手順である。
【００４９】
まず、ホストコンピュータ２１におけるパス状況通知部２６の動作について説明する。なお、ホストコンピュータ２１は、図６に表されるパス情報テーブルデータ５２を保持しているとする。そのパス情報テーブルデータ５２は、ホストコンピュータ２１自身の識別番号であるホスト番号と、接続しているＩＯパス２５の識別情報であるＩＯパス番号と、そのＩＯパス２５の状況情報であるＩＯパス状況との関連付けを表すデータである。
【００５０】
ホストコンピュータ２１のパス状況通知部２６は、対応するＩＯパス２５の状況を監視する（ステップＳ１０１）。そして、パス状況通知部２６は、その監視に基づいて、パス情報テーブルデータ５２におけるＩＯパス状況の情報を更新する（ステップＳ１０２）。また、パス状況通知部２６は、そのＩＯパス状況の情報を「正常」から「障害」に更新したか否かを判断する（ステップＳ１０３）。この判断動作により、パス状況通知部２６は、「正常」から「障害」に更新したと判断した場合には、ＩＯパス２５に障害が発生したと判断する。これにより、パス状況通知部２６は、パス情報テーブルデータ５２におけるホスト番号と、ＩＯパス番号と、ＩＯパス状況情報である「障害」とをパス状況情報として通信手段２７によってストレージ装置２２に通知する（ステップＳ１０４）。
【００５１】
また、ステップＳ１０３の判断動作により、パス状況通知部２６は、「正常」から「障害」に更新していないと判断した場合には、次に、ＩＯパス状況の情報を「障害」から「正常」に更新したか否かを判断する（ステップＳ１０５）。この判断動作により、パス状況通知部２６は、「障害」から「正常」に更新したと判断した場合には、ＩＯパス２５が復旧したと判断する。そして、ＩＯパス状況通知部２６は、パス情報テーブルデータ５２におけるホスト番号と、ＩＯパス番号と、ＩＯパス状況情報である「正常」とをパス状況情報として通信手段２７によってストレージ装置２２に通知する（ステップＳ１０６）。
【００５２】
次に、ストレージ装置２２における制御装置３０（ＣＰＵ３９）のＩＯパス２５の障害と復旧に関わるデータ格納の制御動作を説明する。まず、ホストコンピュータ２１からパス状況情報を受信すると（図８におけるステップＳ２０１）、そのパス状況情報に含まれているＩＯパス状況情報に基づいて、検知部３５が、障害が発生したか否かを判断する（ステップＳ２０２）。つまり、パス状況情報に含まれているＩＯパス状況情報が「障害」である場合には、障害検知部４３がＩＯパス２５に障害が発生したと判断（検知）する。また、パス状況情報に含まれているＩＯパス状況情報が「正常」である場合には、復旧検知部４４が、ＩＯパス２５が復旧したと判断（検知）する。
【００５３】
ＩＯパス２５に障害が発生したことが検知された場合には、障害検知部４３は、パス状況情報に含まれているホスト番号とＩＯパス番号を抽出する。そして、障害検知部４３は、記憶部３７のホスト情報テーブルデータ４９において、それら抽出したホスト番号とＩＯパス番号に関連付けられているＩＯパス状況の情報を「正常」から「障害」に変更（更新）する（ステップＳ２０３）。
【００５４】
また、検知部３５の検知情報に基づいて、ＩＯパス２５に障害が発生したことを検知すると、対策部３６の取得部４６は、ホストコンピュータ２１からのパス状況情報に含まれているホスト番号とＩＯパス番号をホスト情報テーブルデータ４９に照合する。そして、取得部４６は、それらホスト番号とＩＯパス番号に関連付けられている論理ディスク番号を読み出す（ステップＳ２０４）。
【００５５】
その後、取得部４６は、その読み出した論理ディスク番号を記憶部３７の論理ディスク情報テーブルデータ５０に照合し、その論理ディスク番号に関連付けられているデータ番号と物理ディスク種別情報を障害発生時情報として取得する（ステップＳ２０５）。そして、取得部４６は、それら読み出した情報と、論理ディスク番号とを障害対策テーブルデータ５１に障害発生時情報として登録する（ステップＳ２０６）。
【００５６】
なお、ホストコンピュータ２１からのパス状況情報には、障害が発生した複数のＩＯパス２５に関する情報が含まれている場合がある。この場合には、各ＩＯパス２５に関し、前述したステップＳ２０３〜Ｓ２０６の動作（処理）が制御装置３０（ＣＰＵ３９）によって実行される。そして、障害が発生した全てのＩＯパス２５に関する障害発生時情報の登録が完了したことにより、ＩＯパス２５に障害が発生した場合におけるＣＰＵ３９によるデータ格納の制御動作が終了する。
【００５７】
一方、検知部３５によりＩＯパス２５の復旧が検知された場合には、復旧検知部４４は、パス状況情報に含まれているホスト番号とＩＯパス番号を抽出する。そして、復旧検知部４４は、記憶部３７のホスト情報テーブルデータ４９において、それら抽出したホスト番号とＩＯパス番号に関連付けられているＩＯパス状況の情報を「障害」から「正常」に変更（更新）する（ステップＳ２０７）。
【００５８】
また、検知部３５の検知情報に基づいて、ＩＯパス２５が復旧したことを検知すると、対策部３６の復元部４７は、ホストコンピュータ２１からのパス状況情報に含まれているホスト番号とＩＯパス番号をホスト情報テーブルデータ４９に照合する。そして、復元部４７は、それらホスト番号とＩＯパス番号に関連付けられている論理ディスク番号を読み出す（ステップＳ２０８）。
【００５９】
その後、復元部４７は、その読み出した論理ディスク番号を記憶部３７の障害対策テーブルデータ５１に照合し、その論理ディスク番号に関連付けられているデータ番号と物理ディスク種別情報（つまり、障害発生時情報）を読み出す（ステップＳ２０９）。また、復元部４７は、その読み出した論理ディスク番号を記憶部３７の論理ディスク情報テーブルデータ５０に照合し、その論理ディスク番号に関連付けられているデータ番号と物理ディスク種別情報（つまり、復旧時点でのディスク情報）を読み出す。
【００６０】
そして、復元部４７は、それら読み出した情報に基づいて、復旧したＩＯパス２５に関連付けられている論理ディスク３３のデータを、ＩＯパス２５に障害が発生した時点における種別の物理ディスク３２に移動する処理を実行する（ステップＳ２１０）。
【００６１】
図９は、データを障害発生時点での種別の物理ディスク３２に移動する制御手順の一例を表すフローチャートである。まず、復元部４７は、復旧したＩＯパス２５に関連付けられている論理ディスク３３のデータの容量と、当該データを移動する移動先の種別の物理ディスク３２の空き容量とを比較する。これにより、復元部４７は、移動先の種別の物理ディスク３２の空き容量が移動対象のデータの容量よりも多いか否かを判断する（ステップＳ３０１）。そして、復元部４７は、空き容量がデータ容量よりも多いと判断した場合には、復旧したＩＯパス２５に関連付けられている論理ディスク３３のデータを、障害発生時に格納されていた種別の物理ディスク３２に移動する（ステップＳ３０２）。
【００６２】
その後、復元部４７は、そのデータを移動した論理ディスク３３に関わる記憶部３７の論理ディスク情報テーブルデータ５０における物理ディスク種別の情報を、最新の情報に更新する（ステップＳ３０３）。
【００６３】
一方、復元部４７は、移動先の物理ディスク３２の空き容量がデータ容量よりも多くないと判断した場合には、その物理ディスク３２の空き容量を増加する処理を実行する（ステップＳ３０４）。例えば、復元部４７は、その移動先の種別の物理ディスク３２にデータが格納されている論理ディスク３３の情報（論理ディスク情報）を論理ディスク情報テーブルデータ５０から読み出す。そして、復元部４７は、その読み出した情報を利用して、移動先の種別の物理ディスク３２に格納されている論理ディスク３３のデータに対するＩＯ監視部４０により算出されるＩＯ頻度を検出する。さらに、復元部４７は、検出したＩＯ頻度のうちの最もＩＯ頻度が低い論理ディスク３３のデータを、性能のより低い別の種別の物理ディスク３２に移動する。このようにして、復元部４７は、移動先の種別の物理ディスク３２の空き容量を増加する。その後、復元部４７は、前述したステップＳ３０２，Ｓ３０３の動作を実行する。
【００６４】
このようにして、ＩＯパス２５が復旧した場合における制御装置３０の制御動作が終了する。
【００６５】
この第２実施形態のストレージ装置２２は、前述したように、ＩＯパス２５に障害が発生した場合に、その障害発生のＩＯパス２５に関連する論理ディスク３３のデータが格納されている物理ディスク３２の種別を保持する。そして、ＩＯパス２５が復旧した場合には、ストレージ装置２２は、その保持しておいた物理ディスク３２の種別情報に基づき、復旧したＩＯパス２５に対応するデータを、障害発生時に格納されていた物理ディスク３２と同じ種別の物理ディスク３２に移動する。これにより、ストレージ装置２２は、ＩＯパス２５が復旧した場合に、ＩＯ頻度に基づいてデータの格納先を徐々に移動する場合に比べて、データの格納先を障害発生前の状態に迅速に回復できる。
【００６６】
（その他の実施形態）
なお、この発明は第１と第２の実施形態に限定されず、様々な実施の形態を採り得る。例えば、第２実施形態において、ＩＯパス２５が復旧した場合に、復元部４７がデータを移動する前に、その復旧したＩＯパス２５を利用してホストコンピュータ２１からストレージ装置２２へのＩＯ指令の出力が開始される場合がある。この場合には、復元部４７ではなく、ＩＯ頻度を利用する変更部４１によりデータが移動される構成であってもよい。
【符号の説明】
【００６７】
１，２２  ストレージ装置
２，３１  物理ディスク群
３，３４  データ配置部
４，３５  検知部
５，３６  対策部
８，２１  ホストコンピュータ
１０，３３  論理ディスク
１１  指令経路
２５  ＩＯパス
２６  パス状況通知部
【図１】
2015185068.tif 000003
【図２】
2015185068.tif 000004
【図３】
2015185068.tif 000005
【図４】
2015185068.tif 000006
【図５】
2015185068.tif 000007
【図６】
2015185068.tif 000008
【図７】
2015185068.tif 000009
【図８】
2015185068.tif 000010
【図９】
2015185068.tif 000011
【図１０】
2015185068.tif 000012