(57)【特許請求の範囲】
【請求項１】
上位装置からリード・ライト要求の対象となる論理ボリュームに対して送られたデータを、複数のデータと前記複数のデータから生成した冗長データとして、正側記憶サブシステムの複数の物理ボリュームに分散して格納するステップと、
前記複数のデータと前記冗長データとを、前記正側記憶サブシステムとは遠隔に配置された副側記憶サブシステムの複数の物理ボリュームに複写するステップと、
前記正側記憶サブシステムが、前記副側記憶サブシステムの物理ボリュームペア状態管理情報を蓄積して、管理するステップと、
前記冗長データの冗長度を超えるデータの障害が前記正側記憶サブシステムに発生した場合に、前記物理ボリュームペア状態管理情報に基づいて、前記副側記憶サブシステムの複数の物理ボリュームに格納してあるデータを読み取り、前記正側記憶サブシステムの複数の物理ボリュームに格納されている正常なデータと、前記副側記憶サブシステムの複数の物理ボリュームに格納してあるデータから別の冗長グループを作成し、前記障害データを復元するステップと、を有する記憶サブシステムの障害回復方法。
【請求項２】
上位装置からリード・ライト要求の対象となる論理ボリュームに対して送られたデータを、複数のデータと前記複数のデータから生成した冗長データとして冗長グループを作成するステップと、
前記複数のデータと前記冗長データを正側記憶サブシステムの複数の物理ボリュームに分散して格納するステップと、
前記複数のデータと前記冗長データとを、前記正側記憶サブシステムとは遠隔に配置された副側記憶サブシステムの複数の物理ボリュームに複写するステップと、
前記正側記憶サブシステムが、前記副側記憶サブシステムの物理ボリュームペア状態管理情報を蓄積して、管理するステップと、
前記正側記憶サブシステムの物理ボリュームに前記冗長データの冗長度を超える障害が発生した場合に、前記物理ボリュームペア状態管理情報に基づいて、前記障害物理ボリュームに対応する前記副側記憶サブシステムの前記物理ボリュームに複写されているデータを読み取り、前記正側記憶サブシステムの正常な前記物理ボリュームに格納されているデータと、前記障害物理ボリュームに対応する前記副側記憶サブシステムの前記物理ボリュームに複写されているデータにより別の冗長グループを作成するステップと、を有する記憶サブシステムの障害回復方法。
【請求項３】
上位装置からリード・ライト要求の対象となる論理ボリュームに対して送られたデータを、複数のデータと前記複数のデータから生成した冗長データとして、正側記憶サブシステムの複数の物理ボリュームに分散して格納するステップと、
前記複数のデータと前記冗長データとを、前記正側記憶サブシステムとは遠隔に配置された副側記憶サブシステムの複数の物理ボリュームに複写するステップと、
前記正側記憶サブシステムが、前記副側記憶サブシステムの物理ボリュームペア状態管理情報を蓄積して、管理するステップと、
前記正側記憶サブシステムの正側物理ボリュームで構成される冗長グループＧ１において、前記冗長データの冗長度を超える障害が発生した場合に、前記物理ボリュームペア状態管理情報に基づいて、障害が発生した前記正側物理ボリュームに対応する前記副側物理ボリュームのデータを読み取り、前記冗長グループＧ１に属する障害が発生していない前記正側物理ボリュームと、障害が発生した前記正側物理ボリュームに対応するデータを保持する前記副側物理ボリュームとの間で冗長グループＧ２を構成するステップと、
前記正側記憶サブシステムの正側予備物理ボリュームに、前記障害が発生した前記正側物理ボリュームに対応するデータを保持する前記副側物理ボリュームの保持する内容を複写するステップと、
前記冗長グループＧ１に属する障害が発生していない前記正側物理ボリュームと、前記正側予備物理ボリュームとの間で冗長グループＧ３を構成するステップと、を有する記憶サブシステムの障害回復方法。
【請求項４】
更新データを遠隔に配置された他の記憶サブシステムに備わる物理ボリュームとの間で多重に保持する物理ボリュームと、前記他の記憶サブシステムの物理ボリュームペア状態管理情報を蓄積する管理テーブルを有する制御メモリとを備え、
上位装置からリード・ライト要求の対象となる論理ボリュームに対して送られたデータを、前記物理ボリュームは、冗長グループを構成する複数のデータ、および前記データから生成した冗長データとして、複数個の物理ボリュームに分散して格納する記憶サブシステムであって、
前記記憶サブシステムが、前記他の記憶サブシステムの物理ボリュームペア状態管理情報を前記管理テーブルに蓄積して、管理し、
前記記憶サブシステムの前記物理ボリュームで構成される冗長グループＧ１において、前記冗長データの冗長度を超える障害が発生した場合に、前記管理テーブルに蓄積された前記物理ボリュームペア状態管理情報に基づいて、障害が発生した物理ボリュームに対応する前記他の記憶サブシステムのデータを読み取り、前記冗長グループＧ１に属する障害が発生していない前記物理ボリュームと、障害が発生した物理ボリュームに対応するデータを保持する前記他の記憶サブシステムに備わる物理ボリュームとの間で冗長グループＧ２を構成する記憶サブシステム。
【請求項５】
上位装置からリード・ライト要求の対象となる論理ボリュームに対して送られたデータを、複数のデータと前記複数のデータから生成した冗長データとして、正側記憶サブシステムの複数の物理ボリュームに分散して格納するステップと、
前記複数のデータと前記冗長データとを、前記正側記憶サブシステムとは遠隔に配置された副側記憶サブシステムの複数の物理ボリュームに複写するステップと、
前記正側記憶サブシステムが、前記副側記憶サブシステムの物理ボリュームペア状態管理情報を蓄積して、管理するステップと、
前記冗長データの冗長度を超えるデータの障害が前記正側記憶サブシステムに発生した場合に、前記正側記憶サブシステムの複数の物理ボリュームに格納されている正常なデータと、前記副側記憶サブシステムの複数の物理ボリュームに格納してあるデータから前記障害データを復元するステップと、を有する記憶サブシステムの障害回復方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、記憶サブシステムおよびその障害回復技術に関し、特に、遠隔地に設置され、各々が冗長記憶構成を採る複数の記憶サブシステムにて構成されるデータ二重化記憶サブシステム等に適用して有効な技術に関する。
【０００２】
【従来の技術】
中央処理装置と周辺記憶装置とからなる情報処理システムでは、情報量の膨大化とともに取り扱うデータに対する信頼性への要求が強まる中で、従来より記憶媒体や記憶装置の物理的な障害に対する信頼性向上策として、複数個の記憶媒体にデータを二重に保持することによって、障害に伴うデータ消失に対しバックアップデータからのデータ回復を図るデータ二重化記憶サブシステムが実用化されている。
【０００３】
一方、個々の記憶サブシステムとしては、データを複数個の記憶媒体に分割して配置し、更に幾つかのデータを一単位としてパリティデータに代表される冗長データを生成および分散記憶する事によって、あるデータの記憶媒体の障害時に、冗長データと当該一単位内の他データとからデータ回復を行なうＲＡＩＤ記憶装置も実用化されている。
【０００４】
ところが銀行等のオンラインシステムに代表されるように、広域に渡って情報処理システムが機能し、多くの情報処理システムが連動しているようなシステムにおいては、これらのデータ信頼性向上技術は、一つの記憶サブシステム内でデータを多重に保持したり冗長化を図るものであり、その記憶サブシステム全体の障害や、中央処理装置をも含む情報処理システム全体が例えば建物全体の停電・火災等によって動作しなくなった場合、その被害が広域のシステム全体に影響を及ぼすばかりでなく、データ消失に伴う被害度は甚大なものになってしまう。この様な懸念に対し、遠隔地においてデータを二重に保持するデータ二重管理システムが実用化されている。しかしながらこの遠隔データ二重化においては、遠隔の情報処理システム間のデータの通信を中央処理装置間の通信機能によって処理しているため、データ処理や演算等を行なう中央処理装置の負荷が大きく、この中央処理装置の負荷を軽減する事が、遠隔データ二重化システムの課題とされている。
【０００５】
この様な課題の対策として、遠隔地にあるそれぞれの情報処理システム間を、記憶制御装置に制御装置間で通信およびデータ転送を行なう機能を設け、通信・データ転送パスで制御装置同士を接続する事により、データ二重化に掛かる負荷を記憶制御装置に持たせ中央処理装置の負荷を軽減するシステムも実用化されている。この遠隔データ二重化記憶サブシステムでは、主業務を行なう情報処理システムをプライマリシステムとし、それぞれ第１の中央処理装置、第１の記憶サブシステムおよび第１の記憶制御装置とする。また、バックアップ側の情報処理システムをセカンダリシステムとし、それぞれ第２の中央処理装置、第２の記憶サブシステムおよび第２の記憶制御装置とする。第１、第２のそれぞれの記憶制御装置は不揮発化機構を備えた大容量のキャッシュメモリ（ディスクキャッシュ）を備えている場合が一般的である。第１と第２の記憶制御装置間を１本ないしは複数本のデータ転送パスで接続し、データの一単位毎（例えばボリューム毎）に正・副のペアボリュームの関係を定義する。正側のデータをマスタデータ（マスタボリューム）と呼び、副側データをリモートデータ（リモートボリューム）と呼ぶ。プライマリシステムでの記憶サブシステムへのライト要求（Ｉ／Ｏ）においては、第１の中央処理装置から第１の記憶サブシステムへの書き込みデータを、自配下の記憶装置に書き込むだけでなく、第２の記憶制御装置のホストとして第２の記憶サブシステムにデータライトＩ／Ｏを発行し、データの二重化を図る。この様にしてデータファイルの二重化の運用を行なっている最中に、プライマリシステム側で障害が発生し、業務の継続が不可能になった場合には、即座にセカンダリシステムに業務を切替え、二重化されている第２の記憶サブシステムのデータを元に業務を継続する。このような技術の一例として、米国特許第５，１５５，８４５号に開示された技術があげられる。
【０００６】
また、既に第１の記憶サブシステム上に存在するデータボリュームを新たに遠隔二重化ボリュームとして定義し二重化ペアを新規に作成する場合（これを初期コピーと呼ぶ）には、第１の記憶制御装置は、第１の記憶サブシステムの当該ボリュームのデータを順次に記憶装置からキャッシュメモリに読み出し、第１の記憶制御装置から第２の記憶サブシステムにライトＩ／Ｏを発行する事によって、ボリュームデータの複写を行なう。この時のデータ複写の一単位はデータ格納単位の一単位（トラック）毎であっても良いし、複数個のデータ単位（例えば、シリンダ）毎であっても構わない。更に、第１の記憶サブシステムは、初期コピー処理のＩ／Ｏを実行しながら、同時に第１の中央処理装置からの更新Ｉ／Ｏを受ける事も可能である。初期コピー実行中のボリューム上のデータに対する更新においては、第１の記憶制御装置は、その更新範囲が、初期コピー処理が実施済み（第２の記憶サブシステムへの複写が完了済み）の領域に対する更新の場合には、同期または非同期の方式において第２の記憶サブシステムへの更新データの反映を行なう。
【０００７】
第１および第２の記憶サブシステムは、以下に述べるようなＲＡＩＤ方式のデータ格納方式であっても良い。本技術は、Ｄ．Ａ，Ｐａｔｔｅｒｓｏｎ，ｅｔ  ａｌ．”Ｉｎｔｒｏｄｕｃｔｉｏｎ  ｔｏ  Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ（ＲＡＩＤ）”，ｓｐｒｉｎｇ  ＣＯＭＰＣＯＮ’８９，ｐｐ．１１２−１１７，Ｆｅｂ．１９８９の論文にて述べられている技術である。ＲＡＩＤ方式とは、記憶サブシステムをｎ＋ｍ個の記憶装置を一つのデータ格納単位とし、データのある一単位（例えば、記憶媒体上の１トラック）毎に、ｎ個の記憶装置に分割して格納する。さらにｎ個のデータ単位を１グループとしてパリティデータと呼ばれる冗長データを作成する。冗長データ数はその冗長度に応じて定まり、冗長度がｍの場合はｍ個の冗長データを作成する。冗長データそのものも当該冗長データを構成するデータグループの格納記憶媒体とは異なる記憶媒体に格納する。このｎ個のデータ単位とそのｍ個の冗長データから構成されるデータ群を冗長化グループと呼ぶ。このことにより、一つの記憶装置が障害により読み出し不能に陥ったとしても、当該冗長化グループの他のｎ―１個のデータとｍ個の冗長データからデータの再生が可能であり、また同様に障害によって書き込み不能に陥った場合でもｍ個の冗長データを更新しておくことで論理的にデータの格納がなされる。このようにして記憶媒体やディスク媒体の障害に対しデータの信頼性を高めている。
【０００８】
従来の、ＲＡＩＤ方式を用いている遠隔データ二重化記憶サブシステムにおいては、第１の記憶サブシステムで記憶媒体の障害により冗長性が失われた場合、第１の記憶サブシステム内で、障害が発生した記憶媒体以外の第１の記憶サブシステム内の記憶媒体に格納されたｎ−１個のデータおよびｍ個の冗長データを用い、障害が発生した記憶媒体のデータを復元し再び第１の記憶サブシステム内の前記記憶媒体に記録させ、完全に冗長性およびｎ個のデータを復元させた後、前記第２の記憶サブシステムからのデータ複写を完了させて初めて前記第２の記憶サブシステムとの二重化システムとして運用可能である。この種の技術として例えば特開平０６−２６６５０８号公報がある。
【０００９】
しかし、この技術では前記第１の記憶サブシステム内の完全なる冗長性およびデータの回復がなされるまで、ＲＡＩＤの遠隔データ二重化記憶サブシステムとしての機能が制限される事になる。
【００１０】
【発明が解決しようとする課題】
上記で述べたＲＡＩＤ方式の場合、論理ボリュームと物理ボリュームが１：１に対応していない場合があり（特にＲＡＩＤ５など）、冗長データの作成単位（以下、ＥＣＣグループとする）内に複数の論理ボリュームが含まれる事がある。この時、ＥＣＣグループ内で複数の物理記憶媒体に障害が発生すると、そのＥＣＣグループは冗長性を失い、ＥＣＣグループ内のデータへのアクセスが不可能（ＥＣＣグループの閉塞）となるが、このＥＣＣグループの閉塞によりそのＥＣＣグループ内の全論理ボリューム内データへのアクセスが不可能になってしまうという技術的課題がある。
【００１１】
一方、上記で述べた遠隔データ二重化記憶サブシステムにＲＡＩＤ方式を用いている場合には、このように第１の記憶サブシステム内のある１ＥＣＣグループが閉塞したとしても、そのＥＣＣグループ内のデータに対するアクセス時はそのデータを二重化している第２の記憶サブシステム内の物理記憶媒体にアクセスすることでデータのリード・ライト処理を実行することができる。
【００１２】
しかしこの状態では、中央処理装置からのリード・ライト要求は第２の記憶サブシステム内のデータのみを用いて処理することになり、データは二重化状態にない。従って、この状態が長く続くと第２の記憶サブシステムに障害が発生し、セカンダリシステムがダウンすることでデータ損失を引き起こす危険性が高くなる。そこで閉塞したＥＣＣグループを直ちに回復する処理が必要である。
【００１３】
ここで、閉塞したＥＣＣグループを回復させるには、障害の発生した物理記憶媒体内のデータが二重化されている第２の記憶サブシステム内の物理記憶媒体内のデータを第１の記憶サブシステム内の予備の物理記憶媒体内に複写しデータを復元するとともに、閉塞したＥＣＣグループの冗長データを回復する処理が必要である。
【００１４】
しかし、閉塞したＥＣＣグループに含まれる全論理ボリュームの複写をするには多大な処理時間を要し、ＥＣＣグループの回復が遅れる上、サブシステム内の各資源を占有する時間も増大し、中央処理装置からのリード・ライト要求の処理性能を劣化させる恐れがある。また、従来の遠隔データ二重化技術では、二重化はあくまでも論理ボリューム単位であり、物理ボリュームの二重化という意識はない。従って、冗長データの複写は行われず、閉塞したＥＣＣグループの冗長性を回復させることが出来ない。もし、冗長データも回復させようとするならば、閉塞したＥＣＣグループ内の冗長データを除く全データを第１の記憶サブシステムに回復した後、それらのデータを元に冗長データを作成して冗長データの回復を行なう必要がある。これもやはり、閉塞したＥＣＣグループの回復に時間がかかってしまう。
【００１５】
そこで、第１の記憶サブシステム内のＥＣＣグループ内の複数の記憶媒体に障害が発生し冗長性がなくなった場合、即座にＥＣＣグループを再構成し、データの冗長性を復元させ遠隔のデータ二重化状態に戻すための手段が必要である。
【００１６】
本発明の目的は、冗長記憶構成の記憶サブシステムにおいて障害によって失われた冗長性を、システムを停止させることなく迅速に回復することが可能な記憶サブシステムおよびその障害回復技術を提供することにある。
【００１７】
本発明の他の目的は、冗長記憶構成の記憶サブシステムにおいて障害によって失われた冗長性およびデータ二重化状態の回復を、システムを停止させることなく迅速に行うことが可能な記憶サブシステムおよびその障害回復技術を提供することにある。
【００１８】
【課題を解決するための手段】
本発明の記憶サブシステムの障害回復方法は、
複数のデータと当該複数のデータから生成した冗長データを、正側記憶サブシステムの複数の記憶媒体に分散して格納するステップと、
複数のデータと冗長データとを、副側記憶サブシステムの複数の記憶媒体に複写するステップと、
冗長データの冗長度を超えるデータの障害が正側記憶サブシステムに発生した場合に、正側記憶サブシステムの複数の記憶媒体に格納されている正常なデータと、副側記憶サブシステムの複数の記憶媒体に格納してあるデータから障害データを復元するステップと、を有するものである。
また、本発明の記憶サブシステムの障害回復方法は、
複数のデータと当該複数のデータから生成した冗長データとで冗長グループを作成するステップと、
複数のデータと冗長データを正側記憶サブシステムの複数の記憶媒体に分散して格納するステップと、
複数のデータと冗長データとを、副側記憶サブシステムの複数の記憶媒体に複写するステップと、
正側記憶サブシステムの記憶媒体に冗長データの冗長度を超える障害が発生した場合に、正側記憶サブシステムの正常な記憶媒体に格納されているデータと、障害記憶媒体に対応する副側記憶サブシステムの記憶媒体に複写されているデータにより別の冗長グループを作成するステップと、を有するものである。
また、本発明の記憶サブシステムの障害回復方法は、
複数のデータと当該複数のデータから生成した冗長データを、正側記憶サブシステムの複数の記憶媒体に分散して格納するステップと、
複数のデータと冗長データとを、副側記憶サブシステムの複数の記憶媒体に複写するステップと、
正側記憶サブシステムの正側記憶手段のみで構成される冗長グループＧ１において、冗長データの冗長度を超える障害が発生した場合に、冗長グループＧ１に属する障害が発生していない正側記憶手段と、障害が発生した正側記憶手段に対応するデータを保持する副側記憶手段との間で冗長グループＧ２を構成するステップと、
正側記憶サブシステムの正側予備記憶手段に、障害が発生した正側記憶手段に対応するデータを保持する副側記憶手段の保持する内容を複写するステップと、冗長グループＧ１に属する障害が発生していない正側記憶手段と、正側予備記憶手段との間で冗長グループＧ３を構成するステップと、を有するものである。
また、本発明の記憶サブシステムの障害回復方法は、
複数のデータと当該複数のデータから生成した冗長データを、正側記憶サブシステムの複数の記憶媒体に分散して格納するステップと、
複数のデータと冗長データとを、副側記憶サブシステムの複数の記憶媒体に複写するステップと、
正側記憶サブシステムの正側記憶手段のみで構成される冗長グループＧ１において、冗長データの冗長度を超える障害が発生した場合に、冗長グループＧ１に属する障害が発生していない正側記憶手段と、障害が発生した正側記憶手段に対応するデータを保持する副側記憶手段との間で冗長グループＧ２を構成するステップと、
正側記憶サブシステムの正側予備記憶手段に、障害が発生した正側記憶手段に対応するデータを保持する副側記憶手段の保持する内容を複写するステップと、障害が発生した正側記憶手段の数が、正側予備記憶手段の数を上回る場合に、冗長グループＧ１に属する障害が発生していない正側記憶手段と、正側予備記憶手段、および障害が発生した正側記憶手段に対応するデータを保持する副側記憶手段との間で冗長グループＧ４を構成するステップと、を有するものである。
また、本発明の記憶サブシステムは、更新データを他の記憶サブシステムに備わる記憶手段との間で多重に保持する記憶手段を備え、
記憶手段は、冗長グループを構成する複数のデータ、および当該データから生成した冗長データ、を複数個の記憶媒体に分散して格納する記憶サブシステムであって、
記憶サブシステムの記憶手段で構成される冗長グループＧ１において、冗長データの冗長度を超える障害が発生した場合に、冗長グループＧ１に属する障害が発生していない記憶手段と、障害が発生した記憶手段に対応するデータを保持する他の記憶サブシステムに備わる記憶手段との間で冗長グループＧ２を構成するものである。
【００１９】
より具体的には、一例として、データ二重化記憶サブシステムにおいて、正側記憶サブシステム内の第１の冗長データグループＧ１内でｍ個（ｍ＞１）の記憶媒体に障害が発生し、正側記憶サブシステム内の記憶媒体だけで冗長性を保証する冗長データグループの構成が不可能となった場合、障害の発生したｍ個の記憶媒体の二重化データを保有している副側記憶サブシステム内の記憶媒体と、正側記憶サブシステム内の第１の冗長データグループＧ１内の障害の発生した記憶媒体以外の正常な記憶媒体とから第２の冗長データグループＧ２を構成して、障害が発生した第１の冗長データグループＧ１内のデータの冗長性を保証し、上位装置からのリード・ライト要求の処理を可能とする手段を備えたものである。
また、障害が発生している記憶媒体のうちの（ｍ―１）個のデータは副側記憶サブシステムから正側記憶サブシステム内の予備の記憶媒体にデータを複写することで第１の冗長データグループＧ１を第３の冗長データグループＧ３に再構成してデータの冗長性を復元し、残りの一つの障害の発生している記憶媒体内のデータについては、障害の発生した第１の冗長データグループＧ１内のデータおよび冗長データを用いて正側記憶サブシステム内の予備の記憶媒体内に復元し、データ二重化状態に戻す手段を備えたものである。
【００２０】
また、障害の発生したｍ個の記憶媒体内のデータを冗長データグループ作成単位に副側記憶サブシステムから正側記憶サブシステム内の予備の記憶媒体に復元して障害が発生している記憶媒体を含む第１の冗長データグループＧ１を第３の冗長データグループＧ３に再構成し、第３の冗長データグループＧ３の再構成が終了した範囲に対する上位装置からのリード・ライト要求は、再構成した第３の冗長データグループＧ３内のデータを用いて処理し、データの複写が済んでおらず、第３の冗長データグループＧ３が再構成されていない範囲に対する上位装置からのリード・ライト要求は、上述の第２の冗長データグループＧ２内のデータを用いて処理し、データの複写による第１の冗長データグループＧ１の第３の冗長データグループＧ３への再構成終了後、データ二重化状態に戻す手段を備えたものである。
【００２１】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照しながら詳細に説明する。
【００２２】
図１は、本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムを含む情報処理システムの構成の一例を示す概念図であり、図２、図３および図４は、本実施の形態のデータ二重化記憶サブシステムにて用いられる制御情報の一例を示す説明図、図５は、本実施の形態のデータ二重化記憶サブシステムの作用の一例を示す概念図、図６は、本実施の形態のデータ二重化記憶サブシステムの作用の一例を示すフローチャートである。また、図７は、本実施の形態のデータ二重化記憶サブシステムの変形例の作用の一例を示す概念図である。
【００２３】
本実施の形態の情報処理システムは、中央処理装置１と、記憶制御装置２、ディスク装置３、記憶制御装置４、ディスク装置５からからなるデータ二重化記憶サブシステムとで構成されている。データ二重化記憶サブシステムの記憶制御装置２は中央処理装置１とデータ転送パス６１により接続されているが、記憶制御装置４は中央処理装置１には接続されておらず、記憶制御装置２とデータ転送パス６２で接続されている。
【００２４】
ディスク装置３およびディスク装置５の各々には、それぞれ複数の物理ドライブ３ａ（正側記憶手段）および複数の物理ドライブ５ａ（副側記憶手段）が配置されており、データの記憶にはＲＡＩＤ５の冗長記憶構成を用いている。すなわち、外部から受領したデータは複数のデータ単位に分割され、さらに当該データ単位群からはパリティ等の冗長データ（群）が生成され、これらのデータ単位群および対応する冗長データ（群）が、異なる物理ドライブ３ａ（物理ドライブ５ａ）に分散して格納される。
【００２５】
ディスク装置３およびディスク装置５の各々には、予備の物理ドライブ３ａ（ＳＰＡＲＥ−ＶＯＬ）および予備の物理ドライブ５ａ（ＳＰＡＲＥ−ＶＯＬ）が配置されており、後述のように、必要に応じて、障害の発生した物理ドライブの代替として用いられる。
【００２６】
なお、以下の説明では、中央処理装置１に接続される記憶制御装置２とディスク装置３からなる記憶サブシステムを正側記憶サブシステム、記憶制御装置４とディスク装置５からなる記憶サブシステムを副側記憶サブシステムとする。
【００２７】
まず、正側記憶サブシステムの構成の一例について説明する。
【００２８】
チャネル制御部２２は中央処理装置１と記憶制御装置２とのインターフェース機能を有し、中央処理装置１が発行するディスク装置３内のデータに対する入出力要求を受け付ける。ホストコマンド処理部２４は、チャネル制御部２２が受け付けた要求を実行する。ドライブ制御部２７はドライブパス６３を介して接続された記憶制御装置２とディスク装置３とのインタフェース機能を有し、ディスク装置３と記憶制御装置２とのデータ転送の制御を行なう。
【００２９】
制御メモリ２５は論理ボリュームと物理ボリュームとの相互の変換を行うための論理・物理ＶＯＬ変換テーブル２０１、正側記憶サブシステム内のボリュームと副側記憶サブシステム内のボリュームの二重化の状態を示すペア状態管理テーブル２０２と、物理ＶＯＬ状態管理テーブル２０３を格納している。これらの詳細については必要に応じて後述する。
【００３０】
キャッシュメモリ２６は中央処理装置１とディスク装置３とのデータ転送時に一時的にデータを格納するためのバッファメモリである。物理ドライブ障害復旧部２８は、ディスク装置３内の物理ドライブ３ａに障害が発生した場合の復旧処理を制御する。この詳細については必要に応じて後述する。データ転送制御部２１は、データ転送パス６２を介して接続された記憶制御装置２と記憶制御装置４とのインタフェース機能を有し、データ転送の制御を行なう。リモートＩ／Ｏ制御部２３は、ディスク装置５内のデータに対する入出力要求を発行する処理を行なう。
【００３１】
次に副側記憶サブシステムの構成の一例について説明する。
【００３２】
チャネル制御部４１は、データ転送パス６２を介して接続された記憶制御装置２と記憶制御装置４とのインターフェース機能を有し、記憶制御装置２が発行するディスク装置５内のデータに対する入出力要求を受け付ける。ホストコマンド処理部４２は、チャネル制御部４１が受け付けた要求を実行する。ドライブ制御部４５は、ドライブパス６４を介して接続された記憶制御装置４とディスク装置５とのインタフェース機能を有し、ディスク装置５と記憶制御装置４とのデータ転送の制御を行なう。制御メモリ４３は論理ボリュームと物理ボリュームとの相互の変換を行う論理・物理ＶＯＬ変換テーブル４０１を格納している。この詳細については必要に応じて後述する。キャッシュメモリ４４は記憶制御装置２とディスク装置５とのデータ転送時に一時的にデータを格納するためのバッファメモリである。物理ドライブリード・ライト処理部４６は物理ドライブ５ａの単位にディスク装置５内のデータのリード・ライト処理を実行する。
【００３３】
次に正側記憶サブシステムと副側記憶サブシステムのデータの二重化について説明する。
【００３４】
まず、正側記憶サブシステム内の論理ＶＯＬおよび物理ＶＯＬはそれぞれ副側記憶サブシステム内の論理ＶＯＬおよび物理ＶＯＬと二重化のペア状態を形成する。このペア状態はペア状態管理テーブル２０２に格納されている。このペア形成のためのコピーを形成コピーと呼ぶ。形成コピーは形成コピー制御部２９がディスク装置３内のデータをリードし、リモートＩ／Ｏ制御部２３からディスク装置５内のペアＶＯＬに対しライト要求を発行してデータを書き込むことでデータの二重化を図っている。
【００３５】
次に中央処理装置１からのデータの流れを説明する前に、ＲＡＩＤ５におけるデータの更新時の処理の概要について説明する。ＲＡＩＤ５では、データは複数のドライブによって分割され格納される。また、あるデータ単位に対し、冗長データ（以下パリティデータとする）を持っている。このパリティデータを作成する単位のデータ群およびパリティデータの列をストライプ列といい、パリティデータを作成する単位をＥｒｒｏｒ  Ｃｏｒｒｅｃｔｉｏｎ  Ｃｏｄｅグループ（以下、ＥＣＣグループとする）という。今、あるデータに対し更新要求があった場合、更新前の旧データおよびそのストライプ列の旧パリティデータと更新データより、更新後の新パリティデータを割り出し、更新データおよび新パリティデータをドライブに書き込む。この処理をリード・モディファイ・ライト処理という。
【００３６】
次に中央処理装置１からディスク装置３内のデータに対するライト要求があった場合のデータの流れについて説明する。中央処理装置１から発行されたライト要求はチャネル制御部２２によって受け付けられ、ホストコマンド処理部２４によってキャッシュメモリ２６にライトデータが格納される。一方、ドライブ制御部２７により、ディスク装置３内の更新範囲の更新前旧データおよびそのストライプ列の旧パリティデータをリードし、キャッシュメモリ２６に格納する。そしてキャッシュメモリ２６に格納されている旧データ、旧パリティデータおよび更新データから新パリティデータを作成し、ライトデータおよび新パリティデータをディスク装置３へライトする。
【００３７】
一方、リモートＩ／Ｏ制御部２３は、副側記憶サブシステムの記憶制御装置４に対し、ディスク装置３内のライトデータと二重化対象となっているディスク装置５内のペアの物理ドライブ５ａ上データにライト要求を発行し、中央処理装置１からのライトデータを転送する。記憶制御装置４では記憶制御装置２からのライト要求をチャネル制御部４１で受け付け、ホストコマンド処理部４２がキャッシュメモリ４４にライトデータを格納する。
【００３８】
一方、ドライブ制御部２７は上記のライトデータと更新前データおよびそのストライプ列の旧パリティデータから新パリティデータを求め、ライトデータとともにディスク装置５へライトする。これらのライト処理が全て完結した時点で記憶制御装置２は中央処理装置１に対し、ライト処理の終了報告を行なう。
【００３９】
次に、制御メモリ２５内の各テーブルについて説明する。
【００４０】
論理・物理ＶＯＬ変換テーブル２０１は、論理ＶＯＬと物理ＶＯＬの変換を行なうためのテーブルであり、上位からある論理ＶＯＬに対するリード・ライト要求があった場合、それがどの物理ＶＯＬに対応するものかを示す情報が格納されている。図２は、この論理・物理ＶＯＬ変換テーブル２０１の構成の一例示す説明図である。論理ＶＯＬ番号２０１ａと、物理ＶＯＬ番号２０１ｂとが対応付けて格納され、一つの物理ＶＯＬ内に複数の論理ＶＯＬが設定される場合には、必要に応じて、物理ＶＯＬ内使用シリンダ範囲２０１ｃの情報も設定される。なお、特に図示しないが、副側記憶サブシステムの制御メモリ４３における論理・物理ＶＯＬ変換テーブル４０１も同様の構成となっている。
【００４１】
図３は、ペア状態管理テーブル２０２の内容の一例を示す説明図である。このテーブルは論理ＶＯＬペア状態管理テーブル２００１と物理ＶＯＬペア状態管理テーブル２００２から構成されている。
【００４２】
論理ＶＯＬペア状態管理テーブル２００１は正側記憶サブシステム内の論理ＶＯＬと副側記憶サブシステム内の論理ＶＯＬの二重化の対応関係を示す情報が格納されている。具体的には、一例として、正側論理ＶＯＬ番号２００１ａ、副側論理ＶＯＬ番号２００１ｂ、ペア状態フラグ２００１ｃ、当該ＶＯＬ内の二重完のデータ範囲を示す有効範囲ポインタ２００１ｄ、等の情報が設定される。
【００４３】
物理ＶＯＬペア状態管理テーブル２００２は正側記憶サブシステム内の物理ＶＯＬと副側記憶サブシステム内の物理ＶＯＬの二重化の対応関係を示す情報が格納されている。具体的には、一例として、正側物理ＶＯＬ番号２００２ａ、副側物理ＶＯＬ番号２００２ｂ、ペア状態フラグ２００２ｃ、当該ＶＯＬ内の二重完のデータ範囲を示す有効範囲ポインタ２００２ｄ、等の情報が設定される。
【００４４】
なお、ペア状態フラグ２００１ｃおよびペア状態フラグ２００２ｃは、一例として、“０”：非二重化、“１”：二重化、“２”：二重化構築中、“３”：正側障害、“４”：副側障害、等の情報が必要に応じて設定される。
【００４５】
図４は、物理ＶＯＬ状態管理テーブル２０３の構成の一例を示す説明図である。複数のＥＣＣグループを識別するためのＥＣＣグループ番号２０３ａと、ＥＣＣグループ状態フラグ２０３ｂと、当該ＥＣＣグループを構成する物理ＶＯＬ群を示す構成物理ＶＯＬ番号２０３ｃ、当該ＥＣＣグループを構成する各物理ＶＯＬの状態を示す物理ＶＯＬ状態フラグ２０３ｄ等で構成されている。
【００４６】
ＥＣＣグループ状態フラグ２０３ｂは、“０”：正常、“１”：コレクション動作不可、“２”：コレクション動作中、“３”：副ボリューム使用によるコレクション動作中、“４”：ＳＰＡＲＥ−ＶＯＬ復旧中、“５”：ＳＰＡＲＥ−ＶＯＬ使用によるコレクション動作中、等の情報が必要に応じて設定される。
【００４７】
また、物理ＶＯＬ状態フラグ２０３ｄは、“０”：正常、“１”：障害、“２”：副側物理ＶＯＬ使用、“３”：ＳＰＡＲＥ−ＶＯＬ使用、等の各情報が必要に応じて設定される。
【００４８】
さて、次に１ＥＣＣグループ内で１つの物理ドライブに障害が発生した場合の動作について説明する。１ＥＣＣグループ内の１つの物理ドライブが故障し、その故障したドライブ内のデータに対し、中央処理装置１からリード・ライト要求があった場合、そのリード・ライト要求範囲を含むストライプ列のデータおよびパリティデータから障害が発生してリード・ライト不可となった範囲のデータを復元し、リード・ライト処理を実行する処理をコレクションリード・ライト処理という。また、コレクションリード処理によって障害が発生したドライブ内の全データを復元しスペアドライブに反映することで、ＥＣＣグループを再構成する処理をコレクションコピー処理という。
【００４９】
本実施の形態では、正側記憶サブシステムの１ＥＣＣグループ内で２つ以上の物理ドライブ３ａに障害が発生し、上記で述べたコレクション処理が不可能となった場合には、副側記憶サブシステムの対応するデータを用いてＥＣＣグループの再構成を行う方法の一例について述べる。以下、これについて説明する。
【００５０】
上述のようにＲＡＩＤ５の場合、１ＥＣＣグループ内で２つ以上の物理ドライブ３ａに障害が発生するとコレクション処理が不可能となり、そのＥＣＣグループ内のデータは冗長性を失う。この時、物理ＶＯＬ状態管理テーブル２０３のＥＣＣグループ状態フラグ２０３ｂには当該ＥＣＣグループは使用不可を示す情報（“１”：コレクション動作不可）が記憶される。この場合、本実施の形態のデータ二重化記憶サブシステムでは副側記憶サブシステムを利用して正側記憶サブシステム内の障害が発生したＥＣＣグループを再構成し、そのＥＣＣグループを復旧することが可能である。
【００５１】
この方法の一つを図５を用いて説明する。
【００５２】
まず、正側記憶サブシステム内のあるＥＣＣグループ内でＭ個（Ｍ＞１）の物理ドライブ３ａに障害が発生したとする。この時のＥＣＣグループを第１のＥＣＣグループＧ１とする。まず物理ＶＯＬ状態管理テーブル２０３のＥＣＣグループ状態フラグ２０３ｂには当該ＥＣＣグループの使用不可の情報（“１”：コレクション動作不可）が記憶される。そして、物理ドライブ障害復旧部２８が、障害が発生した正側の物理ドライブ３ａとペア状態にある副側記憶サブシステム内の物理ドライブ５ａを障害発生した正側記憶サブシステム内の物理ドライブの代りにＥＣＣグループの構成要素とし、図５のように第２のＥＣＣグループＧ２を構成する。この第２のＥＣＣグループＧ２内のデータに対し、中央処理装置１からライト要求があった場合、データ更新後に作成された冗長データは第２のＥＣＣグループＧ２内のパリティドライブ（Ｐ）および、第１のＥＣＣグループＧ１内のパリティドライブ（Ｐ）の両方に書き込む。これにより、第１および第２のＥＣＣグループＧ２内の冗長性を保証しつつ、中央処理装置１からのリード・ライト要求を処理できる。
【００５３】
このように第２のＥＣＣグループＧ２を構成すれば、ＥＣＣグループ内のデータの冗長性は保証され、中央処理装置１からのリード・ライト処理は正常に処理できる。この状態で、障害が発生した物理ドライブ３ａ内のデータ（Ｄ）を復元してもよいし、最終的に正側記憶サブシステム内で図５のように、予備の物理ドライブ３ａ（Ｓ）を用いた第３のＥＣＣグループＧ３を形成して二重化状態に復帰してもよい。
【００５４】
次に、障害が発生した物理ドライブ内のデータの復元方法について述べる。
【００５５】
正側記憶サブシステム内の１ＥＣＣグループ内でＭ個の物理ドライブ３ａに障害が発生した場合、障害が発生した（Ｍ−１）個の物理ドライブ内のデータに関しては、物理ドライブ障害復旧部２８が物理ＶＯＬペア状態管理テーブル２００２を参照し、障害が発生した物理ドライブ３ａと二重化のペア状態にある副側記憶サブシステム内の各物理ＶＯＬ＃（物理ドライブ５ａ）を算出する。そしてその物理ＶＯＬ＃単位にその物理ＶＯＬ内のデータに対してリモートＩ／Ｏ制御部２３がリード要求を発行し、正側記憶サブシステム内のスペアボリューム（Ｓ）に副側記憶サブシステムからデータをコピーすることで障害が発生している（Ｍ−１）個の物理ドライブ３ａ内のデータを復元させる。これにより、障害が発生した物理ドライブ３ａを含むＥＣＣグループはコレクション動作が可能となり、物理ＶＯＬ状態管理テーブル２０３のＥＣＣグループ状態フラグ２０３ｂには当該ＥＣＣグループ使用可の情報（“５”：ＳＰＡＲＥ−ＶＯＬ使用によるコレクション動作中）が書き込まれる。
【００５６】
データの複写の途中で、正側記憶サブシステム内のコレクション動作が不可能なＥＣＣグループに対し、中央処理装置１からのリード・ライト要求があった場合は図５に示した第２のＥＣＣグループＧ２のように、障害が発生した物理ドライブ３ａとペア状態にある副側記憶サブシステム内の物理ドライブ５ａを構成要素としたＥＣＣグループを再構成し、この再構成したＥＣＣグループ内のデータを用いて処理する。データの複写が完了し、障害が発生しているＥＣＣグループでコレクション動作が可能となった後、残りの一つの障害が発生している物理ドライブ内のデータについては、コレクションコピー処理によって正側記憶サブシステム内のスペアドライブ（Ｓ）にデータを復元する。なお、データが復元されたスペアボリュームは新たに物理ＶＯＬペア状態管理テーブル２００２（の正側物理ＶＯＬ番号２００２ａ）に登録され、正側記憶サブシステム内の物理ＶＯＬと副側記憶サブシステム内の物理ＶＯＬの二重化ペア状態を維持する。
【００５７】
また、１ＥＣＣグループ内でＭ個（Ｍ＞１）の物理ドライブ３ａの障害が発生し、論理ＶＯＬペア状態管理テーブル２００１上の障害が発生した物理ドライブ３ａを含む論理ＶＯＬのペア状態が解除状態になった場合は、上記のデータ復元後に論理ＶＯＬペア状態管理テーブル２００１上のペア状態を自動的に二重化ペア状態に戻す手段があってもよい。以上のような処理シーケンスを示したフローチャートを図６に示す。
【００５８】
また、障害が発生した物理ドライブが１ＥＣＣグループ内でＭ個（Ｍ＞１）の場合、図７に示す方法でデータを復旧してもよい。
【００５９】
すなわち、１ＥＣＣグループ内でＭ個の物理ドライブ３ａに障害が発生すると、そのＥＣＣグループは使用不能という情報（“１”：コレクション動作不可）が物理ＶＯＬ状態管理テーブル２０３のＥＣＣグループ状態フラグ２０３ｂに記憶される。この復旧はまず、物理ドライブ障害復旧部２８が物理ＶＯＬペア状態管理テーブル２００２を参照し、Ｍ個の障害が発生した物理ドライブ３ａと二重化のペア状態にある副側のサブシステム内の各物理ＶＯＬ＃（物理ドライブ５ａ）を算出する。そして、算出した各物理ＶＯＬ＃内のデータをストライプ列単位にリモートＩ／Ｏ制御部２３がリード要求を発行し、正側記憶サブシステム内のスペアドライブ（Ｓ）にデータを複写する。データの複写が終了した範囲は論理ＶＯＬペア状態管理テーブル２００１および物理ＶＯＬペア状態管理テーブル２００２内の有効範囲を示すポインタ（有効範囲ポインタ２００１ｄ、有効範囲ポインタ２００２ｄ）で記憶しておく。データの複写が終了した範囲は、その範囲でＥＣＣグループを再構成し（図７中のＥＣＣグループＧ５）、複写完了済の範囲に対する中央処理装置１からのリード・ライト要求は、正側記憶サブシステムでリード・モディファイ・ライト処理を行なうとともに、ライト要求時はライトデータを副側記憶サブシステムにも書き込み、データの二重化を維持する。
【００６０】
一方、ストライプ列単位のデータ複写が済んでいない範囲に対し中央処理装置１からリード・ライト要求があった場合は、図７に示したＥＣＣグループＧ４（副側記憶サブシステムの一部の物理ドライブ５ａのデータを障害の物理ドライブ３ａの代替として使用）内のデータを用いて処理する。また、ＥＣＣグループ内でＭ個（Ｍ＞１）の物理ドライブ３ａの障害が発生し、論理ＶＯＬペア状態管理テーブル２００１上の障害が発生した物理ドライブ３ａを含む論理ＶＯＬのペア状態が解除状態になった場合は、上記のデータ復元後に論理ＶＯＬペア状態管理テーブル２００１上のペア状態を自動的に二重化ペア状態に戻す手段があってもよい。
【００６１】
以上説明したように、本実施の形態に例示されたデータ二重化記憶サブシステムを用いれば、正側記憶サブシステム内の一つのＥＣＣグループ内の物理ドライブ３ａが、冗長度を越えて（本実施の形態の場合２台以上）故障し、当該ＥＣＣグループ内でのコレクション動作が不能となった場合でも、当該故障で使用不能となったデータに対応した副側記憶サブシステム内の正常なデータや物理ドライブ５ａを用いてＥＣＣグループを再構成することで、即座に、データの冗長性を回復することができ、情報処理システムを止めることなく、データの冗長性を維持した稼働を継続でき、遠隔でデータの二重化を行なっている記憶サブシステムの信頼性を向上させることができる。
【００６２】
また、中央処理装置１との間のオンライン処理中に障害の発生した物理ドライブ３ａ内のデータ復元が可能であり、情報処理システム全体の運用効率や可用性が向上する。またデータの復元後、再び遠隔でのデータ二重化を実現することが可能である。
【００６３】
以上本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００６４】
【発明の効果】
本発明の記憶サブシステムおよびその障害回復方法によれば、冗長記憶構成の記憶サブシステムにおいて障害によって失われた冗長性を、システムを停止させることなく迅速に回復することができる、という効果が得られる。
【００６５】
また、冗長記憶構成の記憶サブシステムにおいて障害によって失われた冗長性およびデータ二重化状態の回復を、システムを停止させることなく迅速に行うことができる、という効果が得られる。
【図面の簡単な説明】
【図１】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムを含む情報処理システムの構成の一例を示す概念図である。
【図２】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムにて用いられる制御情報の一例を示す説明図である。
【図３】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムにて用いられる制御情報の一例を示す説明図である。
【図４】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムにて用いられる制御情報の一例を示す説明図である。
【図５】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムの作用の一例を示す概念図である。
【図６】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムの作用の一例を示すフローチャートである。
【図７】本発明の一実施の形態である障害回復方法を実施する記憶サブシステムにて構成されるデータ二重化記憶サブシステムの変形例の作用の一例を示す概念図である。
【符号の説明】
１…中央処理装置、２…記憶制御装置、２１…データ転送制御部、２２…チャネル制御部、２３…リモートＩ／Ｏ制御部、２４…ホストコマンド処理部、２５…制御メモリ、２６…キャッシュメモリ、２７…ドライブ制御部、２８…物理ドライブ障害復旧部、２９…形成コピー制御部、３…ディスク装置、３ａ…物理ドライブ（正側記憶手段）、４…記憶制御装置、４１…チャネル制御部、４２…ホストコマンド処理部、４３…制御メモリ、４４…キャッシュメモリ、４５…ドライブ制御部、４６…物理ドライブリード・ライト処理部、４０１…論理・物理ＶＯＬ変換テーブル、５…ディスク装置、５ａ…物理ドライブ（副側記憶手段）、６１…データ転送パス、６２…データ転送パス、６３…ドライブパス、６４…ドライブパス、２０１…論理・物理ＶＯＬ変換テーブル、２０１ａ…論理ＶＯＬ番号、２０１ｂ…物理ＶＯＬ番号、２０１ｃ…物理ＶＯＬ内使用シリンダ範囲、２０２…ペア状態管理テーブル、２００１…論理ＶＯＬペア状態管理テーブル、２００１ａ…正側論理ＶＯＬ番号、２００１ｂ…副側論理ＶＯＬ番号、２００１ｃ…ペア状態フラグ、２００１ｄ…有効範囲ポインタ、２００２…物理ＶＯＬペア状態管理テーブル、２００２ａ…正側物理ＶＯＬ番号、２００２ｂ…副側物理ＶＯＬ番号、２００２ｃ…ペア状態フラグ、２００２ｄ…有効範囲ポインタ、２０３…物理ＶＯＬ状態管理テーブル、２０３ａ…ＥＣＣグループ番号、２０３ｂ…ＥＣＣグループ状態フラグ、２０３ｃ…構成物理ＶＯＬ番号、２０３ｄ…物理ＶＯＬ状態フラグ、Ｇ１〜Ｇ３…ＥＣＣグループ、Ｇ４〜Ｇ５…ＥＣＣグループ。
【図１】
0003597349.tif 000002
【図２】
0003597349.tif 000003
【図３】
0003597349.tif 000004
【図４】
0003597349.tif 000005
【図５】
0003597349.tif 000006
【図６】
0003597349.tif 000007
【図７】
0003597349.tif 000008