(57)【要約】【課題】マスター権限を有しないコントローラ側にホスト装置からのライト要求があった場合にも、データの一貫性を維持しつつ、応答性能の向上を図るディスクアレイ装置、ディスクアレイシステム、及びキャッシュ制御方法を提案する。【解決手段】ディスクアレイ装置は、マスターコントローラとスレーブコントローラとを備える構成である。スレーブコントローラは、ライトデータがバッファメモリに保存されたことを示す識別情報を前記ライト要求に付加すると、識別情報が付加されたライト要求及びライトデータをマスターコントローラに送信する。マスターコントローラは、ライトデータを保存した後、識別情報が付加されたライト要求をスレーブコントローラに送信する。スレーブコントローラは該ライト要求を受信すると、ライトデータを保存するバッファメモリの属性をバッファメモリからキャッシュメモリに変更する。【選択図】図４
2011192053.tif 000002
【特許請求の範囲】
【請求項１】
マスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置であって、
前記マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、
前記スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、
前記スレーブＩ／Ｏ部は、
ホスト装置からライト要求及びライトデータを受信した場合、前記ライトデータを前記バッファメモリに保存し、前記バッファメモリに保存したことを示す識別情報を付加した前記ライト要求及び前記ライトデータを前記マスターコントローラに送信し、
前記マスターキャッシュ制御部は、
前記識別情報が付加されたライト要求及び前記ライトデータを受信した場合、前記ライトデータを前記マスターキャッシュメモリに保存し、前記識別情報を付加したライト要求を前記スレーブコントローラに送信し、
前記スレーブキャッシュ制御部は、
前記マスターコントローラから前記識別情報を付加したライト要求を受信した場合、前記ライトデータが保存された前記バッファメモリの属性を変更し、キャッシュメモリとして機能させる、
ディスクアレイ装置。
【請求項２】
ホスト装置と、前記ホスト装置と通信可能に構成され、且つマスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置と、を備えるディスクアレイシステムであって、
前記マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、
前記スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、
前記スレーブＩ／Ｏ部は、
ホスト装置からライト要求及びライトデータを受信した場合、前記ライトデータを前記バッファメモリに保存し、前記バッファメモリに保存したことを示す識別情報を付加した前記ライト要求及び前記ライトデータを前記マスターコントローラに送信し、
前記マスターキャッシュ制御部は、
前記識別情報が付加されたライト要求及び前記ライトデータを受信した場合、前記ライトデータを前記マスターキャッシュメモリに保存し、前記識別情報を付加したライト要求を前記スレーブコントローラに送信し、
前記スレーブキャッシュ制御部は、
前記マスターコントローラから前記識別情報を付加したライト要求を受信した場合、前記ライトデータが保存された前記バッファメモリの属性を変更し、キャッシュメモリとして機能させる、
ディスクアレイシステム。
【請求項３】
マスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置のキャッシュ制御方法であって、
前記マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、
前記スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、
前記スレーブＩ／Ｏ部は、ホスト装置からライト要求及びライトデータを受信するステップと、前記ライトデータを前記バッファメモリに保存するステップと、前記バッファメモリに保存したことを示す識別情報を付加した前記ライト要求及び前記ライトデータを前記マスターコントローラに送信するステップと、を実行し、
前記マスターキャッシュ制御部は、前記識別情報が付加されたライト要求及び前記ライトデータを受信するステップと、前記ライトデータを前記マスターキャッシュメモリに保存するステップと、前記識別情報を付加したライト要求を前記スレーブコントローラに送信するステップと、を実行し、
前記スレーブキャッシュ制御部は、前記マスターコントローラから前記識別情報を付加したライト要求を受信するステップと、前記ライトデータが保存された前記バッファメモリの属性を変更し、キャッシュメモリとして機能させるステップと、を実行する、
キャッシュ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ装置、ディスクアレイシステム、及びキャッシュ制御方法に関する。
【背景技術】
【０００２】
耐障害性の向上を図る目的から、ディスクアレイ装置は、その内部の構成を二重化（冗長化）することが多い。ディスクアレイ装置を二重化する一例としては、図１に示すディスクアレイ装置や特許文献１に示す記憶デバイス制御装置のように、コントローラの二重化が挙げられる。このような構成を採ることにより、万一、ディスクアレイ装置の所定部分に障害が生じても、ディスクアレイ装置は稼動し続けることが可能であり、迅速な修理が可能である。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−１１５６０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
図１に示すディスクアレイシステム１００は、ディスクアレイ装置２’がホスト装置１とネットワークを介して接続されており、ディスクアレイ装置２’は、その内部に二重化されたコントローラ３’Ｍ，３’Ｓを有する構成である。それぞれのコントローラ３’Ｍ，３’Ｓは、データを一時的に保存するキャッシュメモリ５’Ｍ，５’Ｓを有しており、機能的には、ホスト装置１との間でデータ等の入出力を送受信するＩ／Ｏ送受信部４’Ｍ，４’Ｓ、及びキャッシュメモリ５’Ｍ，５’Ｓにおけるデータの入出力を制御するキャッシュ制御部７’Ｍ，７’Ｓを有する構成である。
【０００５】
かかるディスクアレイシステム１００においては、マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍ、及びスレーブコントローラ３’Ｓのキャッシュ制御部７’Ｓにライト要求を同時に送信することができない。なぜなら、ライト要求が同時に送信されてしまうと、コントローラ３’Ｍ，３’Ｓ間において双方のライト要求が行き違いになり、それぞれのキャッシュメモリ５’Ｍ，５’Ｓに異なるデータが保存されることになる。このため、キャッシュメモリ５’Ｍ，５’Ｓ間において、データの不一致が発生する可能性が高く、その結果、データの一貫性が失われる可能性も高くなる。
【０００６】
そこで従来のディスクアレイシステム１００では、ホスト装置１から送信されるライトデータの一貫性を維持するために、一方のコントローラが他方のコントローラを制御するためのマスター権限を有するマスターコントローラ３’Ｍとし、他方のコントローラをスレーブコントローラ３’Ｓとした場合に、それぞれのキャッシュメモリ５’Ｍ，５’Ｓにライトデータが書込まれる手順を次のように行っている。
【０００７】
まず、マスターコントローラ３’ＭのＩ／Ｏ送受信部４’Ｍが、ホスト装置１からのライト要求を受信した場合（Ｓ１）、マスターコントローラ３’ＭのＩ／Ｏ送受信部４’Ｍは、自コントローラがマスター権限を有していると判断し、マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍに、ライト要求を送信する（Ｓ２）。マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、ライト要求を受信すると、ホスト装置１からライト要求に続いて送信されるライトデータを、マスターコントローラ３’ＭのＩ／Ｏ送受信部４’Ｍを介して、キャッシュメモリ５’Ｍに保存する（Ｓ３）。
【０００８】
その後、マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、ライト要求をスレーブコントローラ３’Ｓのキャッシュ制御部７’Ｓに送信し（Ｓ４）、マスターコントローラ３’Ｍのキャッシュメモリ５’Ｍに保存したライトデータを、スレーブコントローラ３’Ｓのキャッシュメモリ５’Ｓに送信する（Ｓ５）。スレーブコントローラ３’Ｓのキャッシュ制御部７’Ｓは、キャッシュメモリ５’Ｓにライトデータを保存すると、ライトデータの保存完了報告をマスターコントローラ３’Ｍのキャッシュ制御部７’Ｍに送信する（Ｓ６）。マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、該保存完了報告をマスターコントローラ３’ＭのＩ／Ｏ送受信部４’Ｍに送信し（Ｓ７）、マスターコントローラ３’ＭのＩ／Ｏ送受信部４’Ｍがホスト装置１に該保存完了報告を送信する（Ｓ８）。
【０００９】
一方、スレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓが、ホスト装置１からのライト要求を受信した場合には、図２に示すように、キャッシュメモリ５’Ｍ，５’Ｓにライトデータが書込まれる。
【００１０】
まず、スレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓが、ホスト装置１からのライト要求を受信した場合（Ｓ１１）、スレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓは、自コントローラがマスター権限を有していないと判断すると、マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍに、ライト要求を送信する（Ｓ１２）。また、スレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓは、ホスト装置１からライトデータを受信すると、受信したライトデータをマスターコントローラ３’Ｍのキャッシュ制御部７’Ｍに送信する。
【００１１】
マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、ライト要求を受信すると、該ライト要求に続いて送信されるライトデータを、キャッシュメモリ５’Ｍに保存する（Ｓ１３）。その後、マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、ライト要求をスレーブコントローラ３’Ｓのキャッシュ制御部７’Ｓに送信し（Ｓ１４）、マスターコントローラ３’Ｍのキャッシュメモリ５’Ｍに保存したライトデータを、スレーブコントローラ３’Ｓのキャッシュメモリ５’Ｓに送信する（Ｓ１５）。
【００１２】
スレーブコントローラ３’Ｓのキャッシュ制御部７’Ｓは、キャッシュメモリ５’Ｓにライトデータを保存すると、ライトデータの保存完了報告をマスターコントローラ３’Ｍのキャッシュ制御部７’Ｍに送信する（Ｓ１６）。マスターコントローラ３’Ｍのキャッシュ制御部７’Ｍは、該保存完了報告をスレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓに送信し（Ｓ１７）、スレーブコントローラ３’ＳのＩ／Ｏ送受信部４’Ｓが、ホスト装置１に該保存完了報告を送信する（Ｓ１８）。
【００１３】
このように、ディスクアレイ装置は、ライト処理の実行において、マスター権限を有しないスレーブコントローラがライト要求を受信した場合、スレーブコントローラがライト要求及びライトデータを一旦マスターコントローラに送信した後、マスターコントローラから改めてライト要求及びライトデータを受信しなければならず、無駄なデータ転送をしていた。
【００１４】
また、二重化されたコントローラが共通のキャッシュメモリを備えるディスクアレイシステムの場合には、上述のような無駄なデータ転送は生じないが、それぞれのコントローラが、キャッシュメモリ内の別々の記憶領域に対し、ロック（排他制御）を行った後、二重書込みを行うことにより、ライトデータの一貫性を維持する必要がある。かかるロック処理には時間を要するため、結果として、ライト処理に多くの時間を要し、応答性能の低下が生じてしまう。
【００１５】
そこで、本発明は、マスター権限を有しないコントローラ側にホスト装置からのライト要求があった場合にも、データの一貫性を維持しつつ、応答性能の向上を図るディスクアレイ装置、ディスクアレイシステム、及びキャッシュ制御方法を提案する。
【課題を解決するための手段】
【００１６】
かかる課題を解決するため、本発明は、マスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置であって、マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、スレーブＩ／Ｏ部は、ホスト装置からライト要求及びライトデータを受信した場合、ライトデータをバッファメモリに保存し、バッファメモリに保存したことを示す識別情報を付加したライト要求及びライトデータをマスターコントローラに送信し、マスターキャッシュ制御部は、識別情報が付加されたライト要求及びライトデータを受信した場合、ライトデータをマスターキャッシュメモリに保存し、識別情報を付加したライト要求をスレーブコントローラに送信し、スレーブキャッシュ制御部は、マスターコントローラから識別情報を付加したライト要求を受信した場合、ライトデータが保存されたバッファメモリの属性を変更し、キャッシュメモリとして機能させる。
【００１７】
また、本発明は、ホスト装置と、ホスト装置と通信可能に構成され、且つマスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置と、を備えるディスクアレイシステムであって、マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、スレーブＩ／Ｏ部は、ホスト装置からライト要求及びライトデータを受信した場合、ライトデータをバッファメモリに保存し、バッファメモリに保存したことを示す識別情報を付加したライト要求及びライトデータをマスターコントローラに送信し、マスターキャッシュ制御部は、識別情報が付加されたライト要求及びライトデータを受信した場合、ライトデータをマスターキャッシュメモリに保存し、識別情報を付加したライト要求をスレーブコントローラに送信し、スレーブキャッシュ制御部は、マスターコントローラから識別情報を付加したライト要求を受信した場合、ライトデータが保存されたバッファメモリの属性を変更し、キャッシュメモリとして機能させる。
【００１８】
さらに、本発明は、マスターコントローラ及びスレーブコントローラによって行われるキャッシュメモリへの二重書き込みを制御するディスクアレイ装置のキャッシュ制御方法であって、マスターコントローラは、マスターＩ／Ｏ部と、マスターキャッシュメモリと、マスターキャッシュ制御部と、を備え、スレーブコントローラは、スレーブＩ／Ｏ部と、スレーブキャッシュメモリと、メモリ属性を変更することによりキャッシュメモリとして機能させるバッファメモリと、スレーブキャッシュ制御部と、を備え、スレーブＩ／Ｏ部は、ホスト装置からライト要求及びライトデータを受信するステップと、ライトデータをバッファメモリに保存するステップと、バッファメモリに保存したことを示す識別情報を付加したライト要求及びライトデータをマスターコントローラに送信するステップと、を実行し、マスターキャッシュ制御部は、識別情報が付加されたライト要求及びライトデータを受信するステップと、ライトデータをマスターキャッシュメモリに保存するステップと、識別情報を付加したライト要求をスレーブコントローラに送信するステップと、を実行し、スレーブキャッシュ制御部は、マスターコントローラから識別情報を付加したライト要求を受信するステップと、ライトデータが保存されたバッファメモリの属性を変更し、キャッシュメモリとして機能させるステップと、を実行する。
【発明の効果】
【００１９】
本発明によれば、コントローラが二重化されたディスクアレイ装置において、マスター権限を有しないコントローラに、キャッシュメモリのみならずバッファメモリをも搭載し、且つバッファメモリの属性をキャッシュメモリに変更できる（切り替える）ようにした。このため、マスター権限を有しないコントローラにホスト装置からのライト要求があった場合であっても、コントローラ間における無駄なデータ転送を回避しつつ、データの一貫性を維持することができる。これにより、ディスクアレイ装置は、ライト処理の処理時間が低減されるので、応答性能の向上を図ることができる。
【図面の簡単な説明】
【００２０】
【図１】ディスクアレイシステム１００の書込み手順の一例を示すブロック図である。
【図２】ディスクアレイシステム１００の書込み手順の一例を示すブロック図である。
【図３】ディスクアレイシステム３００の構成の一例を示すブロック図である。
【図４】ディスクアレイシステム３００の書込み手順の一例を示す説明図である。
【発明を実施するための形態】
【００２１】
以下、本発明の実施の形態について、図面を参照して説明する。なお、図面中、同一の要素には同一の符号を付し、重複する説明を省略する。また、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。さらに、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。
【００２２】
（１）ディスクアレイシステムの構成
図３は、本実施の形態によるディスクアレイシステム３００の構成を示したブロック図である。ディスクアレイシステム３００は、中央演算装置であるホスト装置１が第１通信線８を介してディスクアレイ装置２と通信可能に接続される。
【００２３】
ホスト装置１は、ＣＰＵ（図示せず）、バスに接続されたメモリ（図示せず）、入力部（図示せず）、出力部（図示せず）及び入出力インタフェース（図示せず）など、通常のコンピュータ装置と同様のハードウェアを備えている。ホスト装置１は、物理的には、専用化したシステム、あるいは汎用の情報処理装置のいずれであってもよい。たとえば、一般的な構成の情報処理装置において、後述する書込み方法における処理を規定したソフトウェアを実行することにより、本実施形態のホスト装置１として動作させることもできる。
【００２４】
ディスクアレイ装置２は、コントローラ３Ｍ，３Ｓが二重化され、それぞれのコントローラ３Ｍ，３Ｓが互いに通信可能に接続されている。それぞれのコントローラ３Ｍ，３Ｓのうち、コントローラ３Ｍが、他のコントローラ３Ｓを制御するためのマスター権限を有するマスターコントローラであり、コントローラ３Ｓがマスター権限を有しないスレーブコントローラである。
【００２５】
ディスクアレイ装置２の各コントローラ３Ｍ，３Ｓは、マイクロプロセッサ（図示せず）、バスに接続されたメモリ（図示せず）、キャッシュメモリ５Ｍ，５Ｓ、入力部（図示せず）、出力部（図示せず）、入出力インタフェース（図示せず）、及びＨＤＤコントローラ（図示せず）などのハードウェアを備えている。マイクロプロセッサ、メモリ、キャッシュメモリ５Ｍ，５Ｓ、入力部、出力部、入出力インタフェース、及びＨＤＤコントローラは、第２通信線を介して、複数のハードディスクと接続されている。
【００２６】
コントローラ３Ｍ，３Ｓが備えるキャッシュメモリ５Ｍ，５Ｓは、読み書き性能を向上するために搭載されるメモリであり、ライトデータ及びリードデータを一時的に保存するメモリである。
【００２７】
また、スレーブコントローラ３Ｓは、上述したハードウェアの他、バッファメモリ６をさらに備える構成である。このバッファメモリ６は、キャッシュメモリ５Ｓの他にスレーブコントローラ３Ｓに搭載される第二のメモリであり、ホスト装置１から送信されるライトデータを一時的に保存するメモリである。
【００２８】
また、ディスクアレイ装置２は、１以上のハードディスクを１以上の論理ディスクとして管理する。論理ディスクは、一のハードディスクから構成される記憶領域をグループ化することにより形成された１つの仮想的な記憶領域、または、一のハードディスクの記憶領域を複数分割した分割記憶領域をグループ化することにより形成された１つの仮想的な記憶領域を示す。
【００２９】
ディスクアレイ装置２の各コントローラ３Ｍ，３Ｓは、機能的には、Ｉ／Ｏ送受信部（Ｉ／Ｏ部）４Ｍ，４Ｓ、及びキャッシュ制御部７Ｍ，７Ｓを含んでいる。Ｉ／Ｏ送受信部４Ｍ，４Ｓ、及びキャッシュ制御部７Ｍ，７Ｓは、主にマイクロプロセッサがメモリに格納されるプログラムを実行し、各ハードウェアを制御することにより実現してもよく、例えばＲＡＩＤチップのような汎用の集積回路で実現してもよい。
【００３０】
ここで、Ｉ／Ｏ送受信部４Ｍ，４Ｓは、ホスト装置１から送信されるライト要求，ライトデータ及びリード要求等を受信し、リードデータ等を送信する。
【００３１】
また、スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、上述した機能の他、ホスト装置１から送信されたライトデータをバッファメモリ６に一時的に保存する。さらに、ホスト装置１から送信されたライトデータがバッファメモリ６に一時的に保存された場合に、スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、ライトデータがバッファメモリ６に一時的に保存されたことを示す識別情報をライト要求に付加し、マスターコントローラ３Ｍのキャッシュ制御部７Ｍに送信する。
【００３２】
キャッシュ制御部７Ｍ，７Ｓは、主に、キャッシュメモリ５Ｍ，５Ｓに対するデータの入出力を制御し、ハードディスクに保存されるデータの属性情報及び位置情報を管理する。また、キャッシュ制御部７Ｍ，７Ｓは、キャッシュメモリ５Ｍ，５Ｓ又はバッファメモリ６に一時的に保存されるデータの属性情報及び位置情報を管理し、各メモリＭ，５Ｓ，６の属性を管理する。キャッシュメモリ５Ｍ，５Ｓ又はバッファメモリ６に保存されるデータは、キャッシュメモリ５Ｍ，５Ｓ又はバッファメモリ６の記憶領域を、所定の記憶領域毎に分割した、ページと呼ばれる分割記憶領域に保存する。
【００３３】
なお、第１通信線８としては、主にＳＡＮ（Storage Area Network）が使用され、第２通信線（図示せず）としては、ＦＣ（Fibre Channel），ＳＡＳ（Serial Attached SCSI），ＳＡＴＡ（Serial ATA），ＵＳＢ，ＩＥＥＥ１３９４等のＨＤＤへのアクセス線が使用される。
【００３４】
このように構成されたディスクアレイシステム３００において、ホスト装置１から送信されるライト要求及びライトデータをスレーブコントローラ３Ｓが受信する場合の、キャッシュメモリ５Ｍ，５Ｓの二重書込み処理を、図４に示す説明図を用いて説明する。
【００３５】
まず、スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓが、ホスト装置１からのライト要求を受信した場合（Ｓ４１）、スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、自コントローラ内に、マスターコントローラ３Ｍのキャッシュ制御部７Ｍを有するか否か、すなわち自コントローラがマスター権限を有しているか否かを判断する。スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、自コントローラがマスター権限を有していないと判断すると、ホスト装置１から続いて送信されるライトデータを受信し（Ｓ４２）、受信したライトデータをバッファメモリ６の所定のページに保存する（Ｓ４３）。
【００３６】
スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、ライトデータがバッファメモリ６の所定のページに保存されたことを示す識別子を識別情報としてライト要求に付加すると、識別情報が付加されたライト要求、及びライトデータをマスターコントローラ３Ｍのキャッシュ制御部７Ｍに送信する（Ｓ４４）。
【００３７】
マスターコントローラ３Ｍのキャッシュ制御部７Ｍは、識別情報が付加されたライト要求、及びライトデータを受信すると、受信したライトデータを、キャッシュメモリ５Ｍの所定のページに保存する（Ｓ４５）。その後、マスターコントローラ３Ｍのキャッシュ制御部７Ｍは、識別情報が付加されたライト要求をスレーブコントローラ３Ｓのキャッシュ制御部７Ｓに送信する（Ｓ４６）。スレーブコントローラ３Ｓのキャッシュ制御部７Ｓに送信する際のライト要求には、バッファメモリ６の属性変更の指示も含まれる。
【００３８】
スレーブコントローラ３Ｓのキャッシュ制御部７Ｓは、識別情報が付加されたライト要求を受信すると、ライトデータが保存されているメモリの属性を変更する（Ｓ４７）。具体的には、スレーブコントローラ３Ｓのキャッシュ制御部７Ｓは、ライトデータが保存されているバッファメモリ６の属性をキャッシュメモリ５Ｓに変更する。これにより、バッファメモリ６をキャッシュメモリ５Ｓとして使用することができる。
【００３９】
スレーブコントローラ３Ｓのキャッシュ制御部７Ｓは、ライトデータが保存されているメモリの属性変更が完了すると、ライトデータの二重書込み処理が終了した旨の完了報告をマスターコントローラ３Ｍのキャッシュ制御部７Ｍに送信する（Ｓ４８）。
【００４０】
マスターコントローラ３Ｍのキャッシュ制御部７Ｍは、完了報告を受信すると、この完了報告を、スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓに送信する（Ｓ４９）。
【００４１】
スレーブコントローラ３ＳのＩ／Ｏ送受信部４Ｓは、完了報告を受信すると、この完了報告を、ホスト装置１に送信し（Ｓ５０）、キャッシュメモリ５Ｍ，５Ｓの二重書込み処理が終了する。
【００４２】
なお、マスターコントローラ３ＭのＩ／Ｏ送受信部４Ｍが、ホスト装置１から送信されるライト要求及びライトデータを受信する場合の、キャッシュメモリ５Ｍ，５Ｓの二重書込み処理は、次に説明するが、図１で説明した二重書込み処理と同じである。
【００４３】
まず、マスターコントローラ３ＭのＩ／Ｏ送受信部４Ｍが、ホスト装置１からのライト要求を受信すると、自コントローラがマスター権限を有していると判断するので、ライト要求、及び続いてホスト装置１から送信されるライトデータをキャッシュ制御部７Ｍに送信する。キャッシュ制御部７Ｍは、キャッシュメモリ５Ｍにライトデータを保存する。
【００４４】
その後、マスターコントローラ３Ｍのキャッシュ制御部７Ｍは、ライト要求をスレーブコントローラ３Ｓのキャッシュ制御部７Ｓに送信し、マスターコントローラ３Ｍのキャッシュメモリ５Ｍに保存したライトデータを、スレーブコントローラ３Ｓのキャッシュメモリ５Ｓに送信する。スレーブコントローラ３Ｓのキャッシュ制御部７Ｓは、キャッシュメモリ５Ｓにライトデータを保存すると、ライトデータの保存完了報告をマスターコントローラ３Ｍのキャッシュ制御部７Ｍに送信する。マスターコントローラ３Ｍのキャッシュ制御部７Ｍは、該保存完了報告をＩ／Ｏ送受信部４Ｍに送信し、Ｉ／Ｏ送受信部４Ｍがホスト装置１に該保存完了報告を送信することで、キャッシュメモリ５Ｍ，５Ｓの二重書込み処理が終了する。
【００４５】
このように、本実施形態のディスクアレイ装置２によれば、ホスト装置１から送信されるライト要求及びライトデータをスレーブコントローラ３Ｓが受信した場合、スレーブコントローラ３Ｓは、識別情報が付加されたライト要求とともにライトデータをマスターコントローラ３Ｍに送信し、マスターコントローラ３Ｍは、識別情報が付加されたライト要求のみをスレーブコントローラ３Ｓに送信する。このため、本実施形態によれば、コントローラ３Ｍ，３Ｓ間におけるライトデータの転送を一回で済ませることができる。
【００４６】
また、スレーブコントローラ３Ｓがマスターコントローラ３Ｍから識別情報が付加されたライト要求のみを受信した場合、ライトデータが保存されているバッファメモリ６の属性をキャッシュメモリ５Ｓに変更すればよいので、スレーブコントローラ３Ｓの内部におけるライトデータのコピー回数を抑止することもできる。
【００４７】
このように、本実施形態によれば、コントローラ３Ｍ，３Ｓ間における無駄なデータ転送を回避しつつ、データの一貫性を維持することができる。これにより、ライト処理の処理時間が低減されるので、応答性能の向上を図ることができる。
【産業上の利用可能性】
【００４８】
本発明は、データの一貫性を維持し、且つ応答性能の向上を図ることを目的とするディスクアレイシステムに広く適用することができる。
【符号の説明】
【００４９】
１００，３００…ディスクアレイシステム、１…ホスト装置、２…ディスクアレイ装置、３…コントローラ、３Ｍ…マスターコントローラ、３Ｓ…スレーブコントローラ、４Ｍ…マスターコントローラのＩ／Ｏ送受信部（マスターＩ／Ｏ部）、４Ｓ…スレーブコントローラのＩ／Ｏ送受信部（スレーブＩ／Ｏ部）、５Ｍ…マスターコントローラのキャッシュメモリ（マスターキャッシュメモリ）、５Ｓ…スレーブコントローラのキャッシュメモリ（スレーブキャッシュメモリ）、６…バッファメモリ、７Ｍ…マスターコントローラのキャッシュ制御部（マスターキャッシュ制御部）、７Ｓ…スレーブコントローラのキャッシュ制御部（スレーブキャッシュ制御部）。
【図１】
2011192053.tif 000003
【図２】
2011192053.tif 000004
【図３】
2011192053.tif 000005
【図４】
2011192053.tif 000006