(57)【要約】【課題】物理ディスクの容量コストを削減しながらも信頼性を保持しつつ、システム性能の低下を回避可能とするディスクアレイシステム、及びミラーリング制御方法を提案する。【解決手段】ディスクアレイ装置は、コントローラと、オリジナルデータを格納する第１ディスクと、第１ディスクとミラー構成であり、且つ、オリジナルデータを重複を排除して格納する第２ディスクと、ライト又はリード対象となったオリジナルデータを一時的に格納するキャッシュメモリと、を有する。コントローラは、外部から受信したリード要求に基づき、オリジナルデータをキャッシュメモリ又は第１ディスクから読み出す手段、を備える。【選択図】図１
2011232941.tif 000002
【特許請求の範囲】
【請求項１】
コントローラと、
オリジナルデータを格納する第１ディスクと、
前記第１ディスクとミラー構成であり、且つ、前記オリジナルデータを重複を排除して格納する第２ディスクと、
ライト又はリード対象となった前記オリジナルデータを一時的に格納するキャッシュメモリと、を有し、
前記コントローラは、
外部から受信したリード要求に基づき、リード対象である前記オリジナルデータを前記キャッシュメモリ又は前記第１ディスクから読み出す手段、
を備えるディスクアレイ装置。
【請求項２】
前記第２ディスクに格納される各オリジナルデータについて、前記オリジナルデータに割り当てられたハッシュ値と、前記オリジナルデータが格納される物理アドレスと、前記オリジナルデータに対応する論理アドレスとを対応付けて格納するテーブルを備え、
前記コントローラは、前記外部から受信したライト要求に基づき、前記外部から受信した前記オリジナルデータを前記第１ディスクに書き込む手段と、前記受信したオリジナルデータのハッシュ値を演算し、該演算したハッシュ値と、前記第２ディスクに格納されている各オリジナルデータに割り当てられたハッシュ値とを照合し、該照合結果に基づき、前記テーブルを更新するとともに、重複していない前記オリジナルデータを前記第２ディスクに書き込む手段と、を備える請求項１記載のディスクアレイ装置。
【請求項３】
コントローラを有するディスクアレイ装置のミラーリング制御方法であって、
前記ディスクアレイ装置は、
オリジナルデータを格納する第１ディスクと、
前記第１ディスクとミラー構成であり、且つ、前記オリジナルデータを重複を排除して格納する第２ディスクと、
ライト又はリード対象となった前記オリジナルデータを一時的に格納するキャッシュメモリと、を有し、
前記コントローラは、
外部から受信したリード要求に基づき、リード対象である前記オリジナルデータを前記キャッシュメモリ又は前記第１ディスクから読み出すステップ、
を実行するミラーリング制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスクアレイ装置、及び、ミラーリング制御方法に関する。
【背景技術】
【０００２】
ディスクアレイシステムにおいて、システム障害や不具合の発生を回避してシステムの信頼性を高めるために、２台以上の物理ディスクを冗長に構成し、すべてのディスクに同一データを書き込む、ミラー構成が知られている。
【０００３】
しかし、全ての物理ディスクをかかるミラー構成とすると、大量の重複データが物理ディスクに保存されてしまうため、物理ディスクの容量コストを削減することが難しいという問題が生じてしまう。
【０００４】
この問題を解消するため、近年、物理ディスクの容量コストを削減する技術の１つとして、特許文献１に開示されるような、重複排除（又は、重複除外）技術が注目されている。重複排除技術を用いると、重複データは削除され、重複していないオリジナルデータを物理ディスクに格納することが可能となる。削除された重複データにはポインタ情報が割り当てられ、割り当てられたポインタをたどってオリジナルデータを参照することができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−８７０２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に開示されるように、重複排除技術を用いてオリジナルデータを物理ディスクに格納する場合、該物理ディスクからデータを読み出すには、指定されたアドレスを該物理ディスクのアドレスに変換し、変換後のアドレスに基づいてデータを読み出す必要があるため、読み出しの際にディスクアレイシステムの性能が低下してしまう。
【０００７】
そこで、本発明は、物理ディスクの容量コストを削減しながらも信頼性を保持しつつ、システム性能の低下を回避可能とするディスクアレイシステム、及びミラーリング制御方法を提案する。
【課題を解決するための手段】
【０００８】
かかる課題を解決するため、本発明は、コントローラと、オリジナルデータを格納する第１ディスクと、第１ディスクとミラー構成であり、且つ、オリジナルデータを重複を排除して格納する第２ディスクと、ライト又はリード対象となったオリジナルデータを一時的に格納するキャッシュメモリと、を有し、コントローラは、外部から受信したリード要求に基づき、リード対象であるオリジナルデータをキャッシュメモリ又は第１ディスクから読み出す手段、を備える。
【０００９】
また、本発明は、コントローラを有するディスクアレイ装置のミラーリング制御方法であって、ディスクアレイ装置は、オリジナルデータを格納する第１ディスクと、第１ディスクとミラー構成であり、且つ、オリジナルデータを重複を排除して格納する第２ディスクと、ライト又はリード対象となったオリジナルデータを一時的に格納するキャッシュメモリと、を有し、コントローラは、外部から受信したリード要求に基づき、リード対象であるオリジナルデータをキャッシュ又は第１ディスクから読み出すステップ、を実行する。
【発明の効果】
【００１０】
本発明によれば、重複排除技術が適用される物理ディスクと、重複排除技術が適用されない通常の物理ディスクと、をミラー構成とすることで、物理ディスクの容量コストを削減しながらも信頼性を保持することができる。また、外部からリード要求があった場合には、重複排除が適用されない通常の物理ディスクからデータを読み出すため、システム性能の低下を回避することができる。
【図面の簡単な説明】
【００１１】
【図１】本実施形態におけるディスクアレイシステム１を示すブロック図である。
【図２】Ｉ／Ｏポリシー管理テーブル３２０の一例を示す表である。
【図３】キャッシュ管理テーブル３４０の一例を示す表である。
【図４】物理ディスク管理テーブル３６０の一例を示す表である。
【図５】重複排除管理テーブル３８０の一例を示す表である。
【図６】Ｉ／Ｏ制御手段４００が実行するフローチャートである。
【図７】重複排除制御手段４２０が実行するフローチャートである。
【図８】キャッシュ管理手段４４０が実行するフローチャートである。
【図９】物理ディスク管理手段４６０が実行するフローチャートである。
【発明を実施するための形態】
【００１２】
以下、本発明の実施の形態について、図面を参照して説明する。なお、図面中、同一の要素には同一の符号を付し、重複する説明を省略する。また、以下の実施の形態は、本発明を説明するための例示であり、本発明をその実施の形態のみに限定する趣旨ではない。さらに、本発明は、その要旨を逸脱しない限り、さまざまな変形が可能である。
【００１３】
（１）ディスクアレイシステムの構成
図１は、本実施形態によるディスクアレイシステム１の構成を示したブロック図である。ストレージシステム１は、中央演算装置である複数のホスト計算機１００，１０２が第１通信線５を介して移行先のディスクアレイ装置２００と接続される。なお、第１通信線５は、主にＳＡＮ（Storage Area Network）が使用される。
【００１４】
ホスト計算機１００，１０２は、ＣＰＵ（図示せず）、バスに接続されたメモリ（図示せず）、入力部（図示せず）、出力部（図示せず）及び入出力インタフェース（図示せず）など、通常のコンピュータ装置と同様のハードウェアを備えている。ホスト計算機１００，１０２は、物理的には、専用化したシステム、あるいは汎用の情報処理装置のいずれであってもよい。たとえば、一般的な構成の情報処理装置において、後述するミラーリング制御方法における各処理を規定したソフトウェアを実行することにより、本実施形態のホスト計算機１００，１０２として動作させることもできる。
【００１５】
ディスクアレイ装置２００は、ストレージコントローラ（図示せず）を備える。
【００１６】
ストレージコントローラは、マイクロプロセッサ（図示せず）、バスに接続されたメモリ（図示せず）、キャッシュメモリ（以下、単に、キャッシュという。）２５０、入力部（図示せず）、出力部（図示せず）、入出力インタフェース（図示せず）、及びＨＤＤコントローラ（図示せず）など、通常のストレージコントローラと同様のハードウェアを備えている。ストレージコントローラは、複数の物理ディスク（図示せず）と第２通信線（図示せず）を介して接続されており、該物理ディスクへのデータの入出力などを制御する。なお、第２通信線としては、ＦＣ（Fibre Channel），ＳＡＳ（Serial Attached SCSI），ＳＡＴＡ（Serial ATA）のいずれかが使用される。
【００１７】
また、本実施形態におけるストレージコントローラは、ハッシュ技術を用いた重複排除処理を実行する。ストレージコントローラが、ホスト計算機１００，１０２からライト要求を受信した場合、ホスト計算機１００，１０２からの送信されたデータ（オリジナルデータ）にハッシュ値を割り当てる。ストレージコントローラは、ハッシュ値が一致するか否かで、該データが重複データか否かを判断し、ハッシュ値が一致しなかったデータ（重複していないオリジナルデータ）を物理ディスク２８０，２８２に格納する。なお、ハッシュ値の割り当ては、物理ディスクの分割記憶領域であるブロック単位で行われる。一方、ストレージコントローラが、ホスト計算機からリード要求を受信した場合、物理ディスク３００，３０２又はキャッシュ２５０からデータを読み出す。
【００１８】
このような処理を実行するストレージコントローラは、機能的には、Ｉ／Ｏ制御手段４００、重複排除制御手段４２０、キャッシュ管理手段４４０、及び物理ディスク管理手段４６０を有している。
【００１９】
Ｉ／Ｏ制御手段４００は、ホスト計算機１００，１０２と通信を行い、ホスト計算機１００，１０２からのＩ／Ｏ要求を受信し、受信したＩ／Ｏ要求に基づきディスクアレイ装置２００を制御する。具体的には、Ｉ／Ｏ制御手段４００は、ホスト計算機１００，１０２から受信したライト要求に基づき、ホスト計算機１００，１０２から受信したデータを物理ディスク３００，３０２に書き込む。また、Ｉ／Ｏ制御手段４００は、ホスト計算機１００，１０２から受信したリード要求に基づき、キャッシュ２５０又は物理ディスク３００，３０２からデータを読み出す。さらに、Ｉ／Ｏ制御手段４００は、後述する各種テーブルの更新等を行う。
【００２０】
重複排除制御手段４２０は、Ｉ／Ｏ制御手段４００からのライト要求に基づき、データの重複を排除し、重複していないデータを、物理ディスク２８０，２８２に格納する。また、重複排除制御手段４２０は、後述する重複排除管理テーブル３８０の更新を実行する。さらに、重複排除制御手段４２０は、データのメタデータをメタデータディスク２４０に格納する。なお、メタデータとは、重複していないデータを識別する情報をいい、例えば、該データの容量、最終更新日、ハッシュ値等の情報をいう。
【００２１】
キャッシュ管理手段４４０は、Ｉ／Ｏ制御手段４００からの更新要求に基づき、後述するキャッシュ管理テーブル３４０を更新する。
【００２２】
物理ディスク管理手段４６０は、Ｉ／Ｏ制御手段４００からの更新要求に基づき、後述する物理ディスク管理テーブル３６０を更新する。
【００２３】
複数の物理ディスクは、ディスクプール２２０を構成する物理ディスク２８０，３００，２８２，３０２群と、メタデータを格納する物理ディスク２４０群と、を構成する。
【００２４】
ディスクプール２２０を構成する物理ディスク群は、例えば、物理ディスク２８０と物理ディスク３００、物理ディスク２８２と物理ディスク３０２、の如く、ペアが組まれており、これらペア物理ディスクがミラーを構成する。
【００２５】
ペア物理ディスク２８０，２８２，３００，３０２のうち、一方は重複排除技術が適用され、重複していないデータを格納する物理ディスク２８０，２８２（以下、重複排除物理ディスク、という。）（第２ディスク）であり、他方は重複排除技術が適用されず、通常のデータを格納する物理ディスク（以下、非重複排除物理ディスクという。）（第１ディスク）３００，３０２である。なお、重複排除物理ディスク２８０，２８２は、例えば１台の物理ディスクを共有してもよく、必ずしも物理ディスク３００，３０２と物理的に１対１の関係になるようにペアを組む必要はない。
【００２６】
ディスクプール２２０は、ミラーを構成する物理ディスク２８０，３００，２８２，３０２群から構成した仮想的な記憶領域である。
【００２７】
論理ディスク２６０，２６２は、ディスクプール２２０の容量を割り当てることで設定される。ホスト計算機１００，１０２からのＩ／Ｏは、キャッシュ２５０を介して、これら論理ディスク２６０，２６２に対して行われる。また、本実施形態においては、論理ディスク２６０は、ペア物理ディスク２８０，３００と対応付けられており、論理ディスク２６２は、ペア物理ディスク２８２，３０２と対応付けられている。
【００２８】
メモリは、Ｉ／Ｏポリシー管理テーブル３２０、キャッシュ管理テーブル３４０、物理ディスク管理テーブル３６０、及び、重複排除管理テーブル３８０を格納する。
【００２９】
図２は、Ｉ／Ｏポリシー管理テーブル３２０の一例を示している。Ｉ／Ｏポリシー管理テーブル３２０は、ディスクアレイ装置２００のＩ／Ｏ特性を判別するためのポリシーを管理する。
【００３０】
例えば、図２に示すＩ／Ｏポリシー管理テーブル３２０は、キャッシュ２５０にリード対象のデータが一時的に格納されているか否かを示す「キャッシュ上のデータの有無」欄、そのデータを格納する論理ディスク２６０，２６２に対してホスト計算機１００，１０２からのリード要求が行われた論理ディスク２６０，２６２の番号を示す「論理ディスクＩＤ」欄、リード対象のデータが格納されている物理ディスク２８０，３００，２８２，３０２の番号を示す「物理ディスクＩＤ」欄から構成される。
【００３１】
図３は、キャッシュ管理テーブル３４０の一例を示している。キャッシュ管理テーブル３４０は、キャッシュ２５０に保持されているデータのマッピング情報を管理するものであり、キャッシュ２５０とディスクプール２２０と論理ディスク２６０，２６２との対応関係を管理する。
【００３２】
例えば、図３に示すキャッシュ管理テーブル３４０は、キャッシュ２５０の記憶領域を分割した分割記憶領域の番号を示す「キャッシュブロックＩＤ」欄、そのキャッシュブロックと対応付けられたディスクプール２２０のアドレスを示す「ディスクプールアドレス」欄、そのキャッシュブロックと対応付けられた論理ディスク２６０，２６２の番号を示す「論理ディスクＩＤ」欄から構成される。
【００３３】
図４は、物理ディスク管理テーブル３６０の一例を示している。物理ディスク管理テーブル３６０は、ペア物理ディスクに格納されたデータのマッピング情報を管理するものであり、同一データを格納する、ペア物理ディスクと論理ディスク２６０，２６２との対応関係を管理する。
【００３４】
例えば、図４に示す物理ディスク管理テーブル３６０は、論理ディスク２６０，２６２の番号を示す「論理ディスクＩＤ」欄、該論理ディスク２６０，２６２と対応付けられたディスクであって、且つ、非重複排除物理ディスク３００，３０２のアドレスを示す「非重複排除物理ディスクアドレス」欄、該論理ディスク２６０，２６２と対応付けられた非重複排除物理ディスク３００，３０２とペアのディスクであって、且つ、重複排除物理ディスク２８０，２８２のアドレスを示す「重複排除物理ディスクアドレス」欄から構成される。
【００３５】
図５は、重複排除管理テーブル３８０の一例を示している。重複排除管理テーブル３８０は、データに割り当てられたハッシュ値を管理するものであって、該ハッシュ値が割り当てられたデータを格納する重複排除物理ディスク２８０，２８２と、該物理ディスク３００，３０２と対応付けられた論理ディスク２６０，２６２と、メタデータが格納されるメタデータディスク２４０と、の対応関係を管理する。
【００３６】
例えば、図５に示す重複排除管理テーブル３８０は、ハッシュ値が割り当てられたデータを格納する重複排除物理ディスク２８０，２８２の番号を示す「物理ディスクＩＤ」欄、該データが格納されているアドレスを示す「物理ディスクアドレス」欄、該物理ディスクと対応付けられた論理ディスク２６０，２６２を示す「論理ディスクＩＤ」欄、該物理ディスクのアドレスと対応付けられている論理ディスク２６０，２６２のアドレスを示す「論理ディスクアドレス」欄、メタデータを格納する「メタデータディスクブロック」欄、ホスト計算機１００，１０２から送信されたデータに割り当てられたハッシュ値を示す「ハッシュ値」欄、から構成される。
【００３７】
（２）Ｉ／Ｏ処理
このように構成されたディスクアレイシステム１において、ディスクアレイ装置２００がホスト計算機１００，１０２から受信したＩ／Ｏ要求に基づいて実行するＩ／Ｏ処理について、図６乃至図９を用いて説明する。図６は、Ｉ／Ｏ制御手段４００が実行するフローチャートであり、図７は、重複排除制御手段４２０が実行するフローチャートである。また、図８は、キャッシュ管理手段４４０が実行するフローチャートであり、図９は、物理ディスク管理手段４６０が実行するフローチャートである。
【００３８】
（２−１）Ｉ／Ｏ制御手段が実行するＩ／Ｏ処理
まず、Ｉ／Ｏ制御手段４００がホスト計算機１００，１０２からＩ／Ｏ要求を受信した場合に実行する処理について、図６を用いて説明する。
【００３９】
Ｉ／Ｏ制御手段４００がホスト計算機１００，１０２からＩ／Ｏ要求を受信すると、ホスト計算機１００，１０２からの要求がライト要求か、又はリード要求か、を判断する（Ｓ６０）。
【００４０】
Ｉ／Ｏ制御手段４００は、ホスト計算機１００，１０２からの要求がライト要求であると判断すると（Ｓ６０  Ｙｅｓ）、ホスト計算機１００，１０２から送信されたデータを、所定の非重複排除物理ディスク３００，３０２に書き込む（Ｓ６１）。
【００４１】
次に、Ｉ／Ｏ制御手段４００は、重複排除制御手段４２０に対して、所定の非重複排除物理ディスク３００，３０２に書込んだデータが重複データか否かの判断を行うよう指示する（Ｓ６２）。
【００４２】
Ｉ／Ｏ制御手段４００は、重複排除制御手段４２０から、該指示に基づく報告を受信すると（Ｓ６３）、キャッシュ管理手段４４０にキャッシュ管理テーブル３４０の更新を指示し（Ｓ６４）、物理ディスク管理手段４６０に物理ディスクテーブル３６０の更新を指示する（Ｓ６５）。
【００４３】
Ｉ／Ｏ制御手段４００は、キャッシュ管理手段４４０からキャッシュ管理テーブル３４０の更新終了報告を受信し（Ｓ６６）、物理ディスク管理手段４６０から物理ディスクテーブル３６０の更新終了報告を受信すると（Ｓ６７）、Ｉ／Ｏ制御手段４００が実行するＩ／Ｏ処理を終了する。
【００４４】
一方、ステップＳ６０において、Ｉ／Ｏ制御手段４００は、ホスト計算機１００，１０２からの要求がリード要求であると判断すると（Ｓ６０  Ｎｏ）、Ｉ／Ｏポリシー管理テーブル３２０、キャッシュ管理テーブル３４０、及び物理ディスクテーブル３６０を参照する（Ｓ６８）。
【００４５】
具体的には、Ｉ／Ｏ制御手段４００は、Ｉ／Ｏポリシー管理テーブル３２０を参照し、ホスト計算機１００，１０２が要求するデータがキャッシュ２５０に格納されているのか、又は非重複排除物理ディスク３００，３０２に格納されているのか、を判断する。
【００４６】
ホスト計算機１００，１０２が要求するデータがキャッシュ２５０に格納されている場合には、Ｉ／Ｏ制御手段４００は、キャッシュ管理テーブル３４０を参照し、ホスト計算機１００，１０２が要求するデータを読み出す（Ｓ６９）。
【００４７】
または、ホスト計算機１００，１０２が要求するデータが非重複排除物理ディスク３００，３０２に格納されている場合には、Ｉ／Ｏ制御手段４００は、物理ディスクテーブル３６０を参照し、ホスト計算機１００，１０２が要求するデータを読み出す（Ｓ６９）。
【００４８】
Ｉ／Ｏ制御手段４００は、読み出したデータをホスト計算機１００，１０２に送信すると、Ｉ／Ｏ制御手段４００が実行するＩ／Ｏ処理を終了する。
【００４９】
（２−２）重複排除制御手段が実行するＩ／Ｏ処理
次に、ステップＳ６２において、Ｉ／Ｏ制御手段４００が重複排除制御手段４２０に対し指示を送信し、重複排除制御手段４２０が該指示を受信した場合に実行する処理について、図７を用いて説明する。
【００５０】
まず、重複排除制御手段４２０が該指示を受信すると、該指示に続いて送信されるデータを受信する。該データは、非重複排除物理ディスク３００，３０２に書込まれたデータと同一のデータである。
【００５１】
重複排除制御手段４２０は、受信したデータのハッシュ値を演算すると（Ｓ７１）、重複排除管理テーブル３８０を参照し、重複排除管理テーブル３８０内に、ステップＳ７１で演算したハッシュ値と同一のハッシュ値があるか否かを判断（照合）する（Ｓ７２）。
【００５２】
重複排除制御手段４２０は、重複排除管理テーブル３８０内に演算したハッシュ値と同一のハッシュ値があると判断すると（Ｓ７２  Ｙｅｓ）、受信したデータは重複データであるので、重複排除物理ディスク２８０，２８２には格納せず、重複排除管理テーブル３８０のみ更新する（Ｓ７３）。具体的には、例えば、重複排除制御手段４２０は、演算したハッシュ値と同一のハッシュ値を有する重複排除管理テーブル３８０に、データの書き込み対象となった論理ディスクＩＤ（例えば、「０１」）と論理ディスクアドレス（例えば、「１００〜１１９」）との情報を追加し、該テーブル３８０を更新する。
【００５３】
一方、重複排除制御手段４２０は、重複排除管理テーブル３８０内に演算したハッシュ値と同一のハッシュ値がないと判断すると（Ｓ７２  Ｙｅｓ）、受信したデータは重複データではないので、ステップＳ６１において、先に該データが書き込まれている非重複排除物理ディスク３００，３０２とペアの重複排除物理ディスク２８０，２８２に該データ（重複していないデータ）を格納し、重複排除管理テーブル３８０を更新する（Ｓ７４）。
【００５４】
具体的には、例えば、重複排除制御手段４２０は、重複排除管理テーブル３８０に、新たに生成されたハッシュ値（例えば、「Ｂａａａ」）、データの書き込み対象となった論理ディスクＩＤ（例えば、「０３」）、論理ディスクアドレス（例えば、「５００〜５１９」）、該データのメタデータを格納したメタデータディスク２４０のブロック番号（例えば、「＃３００」）、該データを格納した重複排除物理ディスクＩＤ（例えば、「０２」）、及びアドレス（例えば、「２００〜２２９」の情報を追加し、該テーブル３８０を更新する。
【００５５】
重複排除制御手段４２０は、Ｉ／Ｏ制御手段４００に対して、重複排除管理テーブル３８０の更新に伴って更新処理が必要となるキャッシュ管理テーブル３４０、及び物理ディスク管理テーブル３６０の更新要求を行うと（Ｓ７６）、この処理を終了する。
【００５６】
（２−３）キャッシュ管理手段が実行するＩ／Ｏ処理
次に、ステップＳ６４において、Ｉ／Ｏ制御手段４００がキャッシュ管理手段４４０に対する指示を送信し、キャッシュ管理手段４４０が該指示を受信した場合に実行する処理について、図８を用いて説明する。
【００５７】
まず、キャッシュ管理手段４４０が該指示を受信すると、重複排除管理テーブル３８０の更新に伴うキャッシュ管理テーブル３４０の更新指示が、管理情報の削除処理か、又は管理情報の追加処理か、を判断する（Ｓ８１）。
【００５８】
キャッシュ管理手段４４０は、キャッシュ管理テーブル３４０の更新指示が、管理情報の削除処理であると判断すると（Ｓ８１  Ｙｅｓ）、ステップＳ７５において、所定のキャッシュブロックから読み出したデータを重複排除物理ディスク２８０，２８２に格納したことに伴う削除処理であると、判断する。
【００５９】
キャッシュ管理手段４４０は、データを読み出したキャッシュブロックＩＤ、このＩＤに対応付けられているディスクプールアドレス、該データの書き込み対象である論理ディスクＩＤ、及び論理ディスクアドレス、の管理情報を削除する（Ｓ８２）。
【００６０】
一方、キャッシュ管理手段４４０は、キャッシュ管理テーブル３４０の更新指示が、管理情報の追加処理であると判断すると（Ｓ８１  Ｎｏ）、該データの書込み対象である論理ディスクＩＤ、及び論理ディスクアドレス、該データを一時的に保存するキャッシュブロックＩＤ、ステップＳ６１において、該データを書込んだ非重複排除物理ディスク３００，３０２上に形成されたディスクプールアドレス、の管理情報を追加する（Ｓ８３）。
【００６１】
キャッシュ管理手段４４０は、キャッシュ管理テーブル３４０の更新を終了すると、終了報告をＩ／Ｏ制御手段４００に送信し（Ｓ８４）、この処理を終了する。
【００６２】
（２−４）物理ディスク管理手段が実行するＩ／Ｏ処理
次に、ステップＳ６４において、Ｉ／Ｏ制御手段４００が物理ディスク管理手段４６０に対する指示を送信し、物理ディスク管理手段４６０が該指示を受信した場合に実行する処理について、図９を用いて説明する。
【００６３】
まず、物理ディスク管理手段４６０が該指示を受信すると、重複排除管理テーブル３８０の更新に伴う物理ディスク管理テーブル３６０の更新指示が、ペア物理ディスクの管理情報に関する追加処理か、否か、を判断する（Ｓ９１）。
【００６４】
物理ディスク管理手段４６０は、物理ディスク管理テーブル３６０の更新指示が、ペア物理ディスクの管理情報に関する追加処理であると判断すると（Ｓ９１  Ｙｅｓ）、ステップＳ６１において、データを書込んだ非重複排除物理ディスク３００，３０２のアドレス、ステップＳ７５において、該データを書込んだ重複排除物理ディスク２８０，２８２のアドレス、及びデータの書込み対象となった論理ディスクＩＤのマッピング情報を追加し、ステップＳ９３に進む。
【００６５】
一方、物理ディスク管理手段４６０は、物理ディスク管理テーブル３６０の更新指示が、ペア物理ディスクの管理情報に関する追加処理ではなく、非重複排除物理ディスク３００，３０２の管理情報に関する追加処理であると判断すると（Ｓ９１  Ｎｏ）、ステップＳ６１において、データを書込んだ、非重複排除物理ディスク３００，３０２のアドレス、及びデータの書込み対象となった論理ディスクＩＤのマッピング情報を追加し、ステップＳ９３に進む。
【００６６】
物理ディスク管理手段４６０は、物理ディスク管理テーブル３６０にマッピング情報を追加し終えると、該終了報告をＩ／Ｏ制御手段４００に送信し（Ｓ９３）、この処理を終了する。
【００６７】
このように、本実施形態によれば、重複排除技術が適用される物理ディスクと、重複排除が適用されない通常の物理ディスクと、をミラー構成とし、すでに保存されているデータがある場合には、該データを通常の物理ディスクにのみ保存することで、物理ディスクの容量コストを削減しながらも信頼性を保持することができる。
【００６８】
また、外部からリード要求があった場合には、重複排除が適用されない通常の物理ディスクからデータを読み出すため、アドレス変換が不要となる結果、システム性能の低下を回避することができる。
【００６９】
上記実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００７０】
（付記１）コントローラと、オリジナルデータを格納する第１ディスクと、前記第１ディスクとミラー構成であり、且つ、オリジナルデータを重複を排除して格納する第２ディスクと、ライト又はリード対象となったオリジナルデータを一時的に格納するキャッシュメモリと、を有し、前記コントローラは、外部から受信したリード要求に基づき、リード対象である前記オリジナルデータを前記キャッシュメモリ又は前記第１ディスクから読み出す手段、を備えるディスクアレイ装置。
【００７１】
（付記２）前記第２ディスクに格納される各オリジナルデータについて、前記オリジナルデータに割り当てられたハッシュ値と、前記オリジナルデータが格納される物理アドレスと、前記オリジナルデータに対応する論理アドレスとを対応付けて格納するテーブルを備え、前記コントローラは、前記外部から受信したライト要求に基づき、前記外部から受信した前記オリジナルデータを前記第１ディスクに書き込む手段と、前記受信したオリジナルデータのハッシュ値を演算し、該演算したハッシュ値と、前記第２ディスクに格納されている各オリジナルデータに割り当てられたハッシュ値とを照合し、該照合結果に基づき、前記テーブルを更新するとともに、重複していない前記オリジナルデータを前記第２ディスクに書き込む手段と、を備える付記１記載のディスクアレイ装置。
【００７２】
（付記３）コントローラを有するディスクアレイ装置のミラーリング制御方法であって、前記ディスクアレイ装置は、オリジナルデータを格納する第１ディスクと、前記第１ディスクとミラー構成であり、且つ、前記オリジナルデータを重複を排除して格納する第２ディスクと、ライト又はリード対象となった前記オリジナルデータを一時的に格納するキャッシュメモリと、を有し、前記コントローラは、外部から受信したリード要求に基づき、リード対象である前記オリジナルデータを前記キャッシュメモリ又は前記第１ディスクから読み出すステップ、を実行するミラーリング制御方法。
【産業上の利用可能性】
【００７３】
本発明は、物理ディスクの容量コストを削減しながらも信頼性を保持しつつ、システム性能の低下を回避可能とするディスクアレイ装置又は該ディスクアレイ装置を含むシステムに広く適用することができる。
【符号の説明】
【００７４】
１…ディスクアレイシステム、１００，１０２…ホスト計算機、２００…ディスクアレイ装置、２２０…ディスクプール、２４０…メタデータディスク、２５０…キャッシュ、２６０，２６２…論理ディスク、２８０，２８２…重複排除物理ディスク（第２ディスク）、３００，３０２…非重複排除物理ディスク（第１ディスク）、３２０…Ｉ／Ｏポリシー管理テーブル、３４０…キャッシュ管理テーブル、３６０…物理ディスク管理テーブル、３８０…重複排除管理テーブル、４００…Ｉ／Ｏ制御手段、４２０…重複排除制御手段、４４０…キャッシュ管理手段、４６０…物理ディスク管理手段。
【図１】
2011232941.tif 000003
【図２】
2011232941.tif 000004
【図３】
2011232941.tif 000005
【図４】
2011232941.tif 000006
【図５】
2011232941.tif 000007
【図６】
2011232941.tif 000008
【図７】
2011232941.tif 000009
【図８】
2011232941.tif 000010
【図９】
2011232941.tif 000011