JP4831093B2 - ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム - Google Patents
ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム Download PDFInfo
- Publication number
- JP4831093B2 JP4831093B2 JP2008049094A JP2008049094A JP4831093B2 JP 4831093 B2 JP4831093 B2 JP 4831093B2 JP 2008049094 A JP2008049094 A JP 2008049094A JP 2008049094 A JP2008049094 A JP 2008049094A JP 4831093 B2 JP4831093 B2 JP 4831093B2
- Authority
- JP
- Japan
- Prior art keywords
- disk
- physical
- block
- logical
- logical disk
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P20/00—Technologies relating to chemical industry
- Y02P20/50—Improvements relating to the production of bulk chemicals
- Y02P20/52—Improvements relating to the production of bulk chemicals using catalysts, e.g. selective catalysts
Description
本発明は、ホットスペアを備えるディスクアレイシステム、および、ホットスペアを備えるディスクアレイシステムに適用されるディスクアレイ制御方法、ディスクアレイ制御プログラムに関する。
近年、IT(Information Technology)への依存度が増すにつれて電子データの重要性はますます増大している。そして、IT環境の発展によりコンピュータ・システムにおける記憶装置の役割はますます大きくなってきており、記憶装置に対する高信頼性化、高性能化などの要求も高まる一方である。このように大容量化が進む中で、ひとたび大容量ディスクが障害を発生した場合、ホットスペアにホットコピーを行うことが一般化されつつある。
図6は、本発明に関連するディスクアレイシステムの例を示す説明図である。図6に示すディスクアレイシステムは、I/O制御部52と、ディスク制御部53と、RAID制御部54と、物理ディスク#0〜#N−1と、ホットスペア(以下、ホットスペアディスクと記す。)#Nとを備える。
I/O制御部52は、物理ディスク#0〜#N−1やホットスペアディスク#Nに記憶されているブロックにアクセスするホスト(上位装置)とのインタフェースである。ディスク制御部53は、物理ディスク#0〜#N−1やホットスペアディスク#Nに対するブロックの読み書きを行う。ここで、ブロックは、データのブロックである。
複数の物理ディスク(本例では、物理ディスク#1〜#3)から論理ディスク65が構成され、論理ディスク65にはブロックが記憶される。ブロックにはパリティブロックが含まれ、組をなすブロックのうちの一つが読み取り不能となっても、その組の中の他のブロックから、読み取り不能となったブロックを修復することができる。このように、故障した物理ディスクが1つであり、その物理ディスクに記憶されていたブロックを修復できる状態を、冗長内故障と呼ぶ。
RAID制御部54は、論理ディスク65を構成する物理ディスクのうちの一つが故障した場合、故障した物理ディスクに記憶されていたブロックを修復し、ホットスペアディスクにコピーする。例えば、物理ディスク#1が故障した場合、RAID制御部54は、ディスク制御部53を介して、物理ディスク#0,#3に記憶されているブロック6,8からブロック7を修復し、修復したブロック7をホットスペアディスク#Nにホットコピーする。なお、ホットコピーとは、ブロックをホットスペアディスクにコピーすることである。
また、RAID制御部54は、上記のホットコピー中に、故障した物理ディスク内のブロックへのリードアクセス要求があった場合、故障した物理ディスクに記憶されていたブロックを他の物理ディスク内のブロックから修復し、ホストに返す。例えば、物理ディスク#1が故障してホットコピーを行っているときにブロック7へのリードアクセス要求があった場合には、上記のようにブロック6,8からブロック7を修復し、I/O制御部52を介してそのブロック7をホストに返す。
図6に示すディスクアレイシステムのように、故障した物理ディスクを含む論理ディスク内のブロックからデータを修復してホットスペアディスクに復元させる構成が特許文献1に記載されている。
また、特許文献2には、未使用領域を有するハードディスクを含む複数のハードディスクによって論理ユニットを構成し、ある論理ユニット内のハードディスクが故障した場合には、その論理ユニット内の故障していないハードディスクと、他の論理ユニット内の未使用領域とを使用して論理ユニットを構成するように、ハードディスクの構成管理テーブルを更新するディスクアレイ制御装置が記載されている。
また、特許文献3には、二つのメモリディスクをグループとするランクを複数形成し、エラーが多発したランクについては、業務未使用領域に複写するディスクアレイ装置が記載されている。特許文献3に記載された装置では、ランクを構成するメモリディスクの一方が故障すると、故障していない方のメモリディスクとホットスペアディスクによりランクを形成する。
図6に示すディスクアレイシステムは、ホットコピー中に、論理ディスク65を構成する他の物理ディスク#0,#2のいずれかが故障すると、故障した物理ディスクに記憶されていたブロックの修復ができなくなる。この状態を、冗長破壊と呼ぶ。
図6に示す構成において、論理ディスク65を構成する一つの物理ディスクが故障した状態(冗長内破壊)では、論理ディスク65を構成する他の物理ディスクに記憶されたブロックから故障した物理ディスクのブロックを修復して、ホットスペアディスクにホットコピーしていくことができる。しかし、ブロックの修復を行いながら、修復したブロックをホットコピーしていくため、ホットコピーの完了までに時間がかかってしまう。ホットスペアディスクへのホットコピーが完了までに、さらに論理ディスク65を構成する他の物理ディスクが故障すると冗長破壊状態となり、データの修復が行えず、修復したデータをホットスペアディスクにホットコピーする処理が進められなくなってしまう。
そこで、本発明は、物理ディスクが故障したときにホットスペアにブロックをコピーする時間を短縮し、冗長破壊状態になる可能性を少なくすることができるディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラムを提供することを目的とする。
本発明のディスクアレイシステムは、パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、故障した物理ディスクの代わりに用いられるホットスペアと、正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築する論理ディスク構築手段と、正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーするコピー制御手段とを備えることを特徴とする。
また、本発明のディスクアレイ制御方法は、パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、故障した物理ディスクの代わりに用いられるホットスペアとを備えるディスクアレイシステムに適用されるディスクアレイ制御方法であって、正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築し、正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーすることを特徴とする。
また、本発明のディスクアレイ制御プログラムは、パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、故障した物理ディスクの代わりに用いられるホットスペアとを備えるコンピュータに搭載されるディスクアレイ制御プログラムであって、前記コンピュータに、正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築する論理ディスク構築処理、および、正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーするコピー制御処理を実行させることを特徴とする。
本発明によれば、物理ディスクが故障したときにホットスペアにブロックをコピーする時間を短縮し、冗長破壊状態になる可能性を少なくすることができる
以下、本発明の実施形態を図面を参照して説明する。
図1は、本発明のディスクアレイシステムの例を示すブロック図である。本発明のディスクアレイシステム1は、複数の物理ディスク#0〜#N−1と、いずれかの物理ディスクが故障したときにその物理ディスクの代わりに用いられる物理ディスクであるホットスペア(以下、ホットスペアディスクと記す。)#Nとを備える。さらに、ディスクアレイシステム1は、I/O制御部2と、ディスク制御部3と、RAID制御部4と、ホットコピー制御部5とを備える。
図1は、本発明のディスクアレイシステムの例を示すブロック図である。本発明のディスクアレイシステム1は、複数の物理ディスク#0〜#N−1と、いずれかの物理ディスクが故障したときにその物理ディスクの代わりに用いられる物理ディスクであるホットスペア(以下、ホットスペアディスクと記す。)#Nとを備える。さらに、ディスクアレイシステム1は、I/O制御部2と、ディスク制御部3と、RAID制御部4と、ホットコピー制御部5とを備える。
I/O制御部2は、物理ディスク#0〜#N−1やホットスペアディスク#Nに記憶されているブロック(データのブロック)にアクセスするホスト(上位装置)とのインタフェースである。
ディスク制御部3は、物理ディスク#0〜#N−1やホットスペアディスク#Nに対するブロックの読み書きを行う。また、ディスク制御部3は、各物理ディスクの故障を検知する。
物理ディスク#0〜#N−1のうちの一部の物理ディスク群(第1の物理ディスク群)は、RAID構成の論理ディスク(第1の論理ディスク)15を構成する。ここでは、物理ディスク#0〜#2が第1の物理ディスク群であり、物理ディスク#0〜#2が論理ディスク15を構成している場合を例に説明する。物理ディスク#0〜#2によって構成される論理ディスク15は、その物理ディスク#0〜#2にブロックの集合を分散させて記憶する。また、論理ディスク15は、物理ディスク#0〜#2の数(ここでは3つ)のブロック毎に、そのブロックを各物理ディスク#0〜#2に分散させて記憶する。そして、そのブロックの中には1つのパリティブロックが含まれる。例えば、図1に示す例では、ブロック6〜8のうちの一つがパリティブロックである。パリティブロックは、他のブロック(ここでは他の2つのブロック)から作成され、他のブロックの対応するビットの中に1が奇数個存在するか偶数個存在するかを示す。
また、物理ディスク#0〜#N−1の中には、第1の物理ディスク群以外に、第1の物理ディスク群に属する物理ディスク#0〜#2と同数の物理ディスクを含む第2の物理ディスク群も存在する。本例では、3つの物理ディスク#N−3,#N−2,#N−1が第2の物理ディスク群であるとする。
物理ディスク#N−3,#N−2,#N−1は、ブロックを記憶するために用いられるが、RAID制御部4は、物理ディスク#N−3,#N−2,#N−1の未使用領域に、論理ディスク(第2の論理ディスク)を構築する。例えば、図1に示す例では、物理ディスク#N−3,#N−2,#N−1により、ブロック12〜14を記憶するRAID構成の論理ディスク16が構成されているが、論理ディスク16として使用されていない未使用領域も存在する。RAID制御部4は、この未使用領域に第2の論理ディスク(図1において図示せず。)を構築する。未使用領域に作成されるこの論理ディスクを、以下、ホットコピー用論理ディスクと記す。また、RAID制御部5は、ホットコピー用論理ディスクを、正常稼働時(ディスクアレイシステム1に故障が発生していないとき)に構築する。
ホットコピー制御部5は、正常稼働時に、論理ディスク15に記憶されている各ブロックの複製をホットコピー用論理ディスクに記憶させる。例えば、ホットコピー制御部5は、論理ディスク15を構成する物理ディスク#0,#1,#2と、ホットコピー用論理ディスクを構成する物理ディスク#N−3,#N−2,#N−1とを一対一に対応付け、論理ディスク15を構成する物理ディスク#0,#1,#2に記憶されているブロックの複製をホットコピー用論理ディスクに記憶させてもよい。図2は、ホットコピー制御部5によるコピー動作を示す説明図である。本例では、ホットコピー制御部5は、論理ディスク15を構成する物理ディスク#0,#1,#2に記憶されている各ブロック6〜8を、それぞれ、物理ディスク#N−3,#N−2,#N−1にコピーする。図2に示すホットコピー用論理ディスク17は、図1に示す物理ディスク#N−3,#N−2,#N−1の未使用領域によって構築された論理ディスクである。
ホットコピー制御部5は、論理ディスク1からホットコピー用論理ディスク17へのブロックのコピーを、ディスク制御部3を介して行う。すなわち、ディスク制御部3に論理ディスク1からブロック6,7,8を読み込ませ、ディスク制御部3にそのブロックをホットコピー用論理ディスク17へ書き込ませる。
また、ホットコピー制御部5は、論理ディスク15を構成する物理ディスク#0,#1,#2のいずれかの物理ディスクが故障したときに、その故障した物理ディスクからホットコピー用論理ディスク17にコピーしていたブロックを、ホットスペアディスク#Nにコピー(ホットコピー)する。例えば、図2に示す例で、物理ディスク#1が故障したとする。すると、ホットコピー制御部5は、その物理ディスク#1からホットコピー用論理ディスク17を構成する物理ディスク#N−2にコピーされていたブロック7をホットスペアディスク#Nにホットコピーする。ブロック7は、物理ディスク#0,#2に記憶されているブロック6,8から修復可能であるが、ホットコピー制御部5は、そのような修復計算を行わずに、物理ディスク#N−2にコピーされていたブロック7を直接ホットスペアディスク#Nにホットコピーする。修復計算を行わず、物理ディスク#N−2に記憶されているブロックをホットスペアディスク#Nにコピーすればよいので、ホットコピー完了までの時間を短縮することができる。
ホットコピー制御部5は、このようなホットコピー用論理ディスク17からホットスペアディスク#Nへのブロックのコピーを、ディスク制御部3を介して行う。すなわち、ディスク制御部3にホットコピー用論理ディスク17からブロックを読み込ませ、ディスク制御部3にそのブロックをホットスペアディスク#Nに書き込ませる。
また、I/O制御部2は、論理ディスク15を構成する物理ディスクの故障に起因して、上記のようにホットコピー用論理ディスク17からホットスペアディスク#Nへのホットコピーが行われている間に、その故障した物理ディスクに記憶されていたブロックへのリードアクセス要求をホストから届いた場合、その故障した物理ディスクからホットコピー用論理ディスク17にコピーされているブロックを読み込み、直接ホストに出力する。例えば、図2に示す例で、物理ディスク#1が故障し、物理ディスク#N−2からホットスペアディスク#Nにブロック7がホットコピーされているとする。このコピーの最中にリードアクセス要求が届いた場合、I/O制御部2は、物理ディスク#N−2からブロック7をリードして、直接ホストに返す。ブロック7は、物理ディスク#0,#2に記憶されているブロック6,8から修復可能であるが、そのような修復計算を行わずに、I/O制御部2は、物理ディスク#N−2にコピーされていたブロック7を直接ホストに返す。修復計算を行わなくてよいので、リードアクセス要求に応じてブロックをホストに返す時間を短縮することができる。すなわち、冗長内故障時のリード性能を向上させることができる。
また、上記のようにホットコピー用論理ディスク17からホットスペアディスク#Nへのホットコピーを行っている最中に、さらに、論理ディスク15を構成する他の物理ディスク#0,#2のいずれかに故障が生じたとする。この場合、論理ディスク15では二つの物理ディスクが破壊されているので冗長破壊となるが、論理ディスク15に記憶されていた各ブロック6〜8は、ホットコピー用論理ディスク17を構成する物理ディスク#N−3,#N−2,#N−1に残存しているので、データの損失は生じない。
また、図1では、1組のブロック6,7,8を例にして説明したが、論理ディスク15には、ブロック6,7,8の組と同様に、パリティブロックを含むブロックの組が複数記憶されていてもよい。
また、物理ディスク#N−3,#N−2,#N−1の未使用領域(図1参照)の容量が少なく、その未使用領域から構成されるホットコピー用論理ディスクの容量が、論理ディスク15の容量より小さいこともある。この場合、ホットコピー制御部5は、論理ディスク15に記憶されているブロックの一部をホットコピー用論理ディスク17(図2参照)にコピーする。すなわち、論理ディスク15のブロックのうちホットコピー用論理ディスク17にコピー可能な分だけ、ブロックをホットコピー用論理ディスク17にコピーする。例えば、論理ディスク15に記憶されているブロックを、ホットコピー用論理ディスク17にコピーしていき、ホットコピー用論理ディスク17の容量がなくなってコピーできなくなった時点でコピーを停止する。
その後、論理ディスク15を構成する物理ブロックのいずれかが故障した場合、ホットコピー制御部5は、すでに説明したように、その故障した物理ディスクからホットコピー用論理ディスク17にコピーしていたブロックを、ホットスペアディスク#Nにホットコピーする。ただし、ここでは、論理ディスク15に記憶されているブロックが全てホットコピー用論理ディスク17にコピーされているわけはない。RAID制御部4は、故障した物理ディスクからホットコピー用論理ディスク17にコピーできなかったブロックについては、論理ディスク15を構成する物理ディスクのうちの故障していない物理ディスクに記憶されているブロックから修復し、修復したブロックをホットスペアディスク#Nに記憶させる。
また、論理ディスク15を構成する物理ディスクの故障に起因して、上記のようにホットコピー用論理ディスク17からホットスペアディスク#Nへのホットコピーが行われている間に、その故障した物理ディスクに記憶されていたブロックであってホットコピー用論理ディスク17にコピーされていなかったブロックへのリードアクセス要求がホストから届いた場合、RAID制御部4は、そのブロックを、論理ディスク15を構成する物理ディスクのうちの故障していない物理ディスクに記憶されているブロックから修復する。そして、修復したブロックをI/O制御部2を介してホストに返す。故障した物理ディスクに記憶されていたブロックであってホットコピー用論理ディスク17にコピーされていたブロックへのリードアクセス要求が届いた場合、I/O制御部2は、ホットコピー用論理ディスク17を構成する物理ディスクからそのブロックを読み出して直接ホストに返せばよい。
I/O制御部2、ディスク制御部3、RAID制御部4およびホットコピー制御部5は、プログラム(ディスクアレイ制御プログラム)に従って動作するCPUによって実現されてもよい。
次に、動作について説明する。
以下、図1に示す構成において、物理ディスク#0〜#2によって構成される論理ブロック15がブロック6〜8の他にさらに一組のブロックを備えている場合を例にする。このブロックをブロック9〜11(図1において図示せず。後述の図3、図4参照。)とする。ブロック6〜8のいずれか一つはパリティブロックであり、ブロック6〜8のいずれか一つが物理ディスクの故障により失われても、残りの2つから修復計算により修復可能である。同様に、他のブロック9〜11に関しても、ブロック9〜11のいずれか一つはパリティブロックであり、ブロック9〜11のいずれか一つが物理ディスクの故障により失われても、残りの2つから修復計算により修復可能である。
以下、図1に示す構成において、物理ディスク#0〜#2によって構成される論理ブロック15がブロック6〜8の他にさらに一組のブロックを備えている場合を例にする。このブロックをブロック9〜11(図1において図示せず。後述の図3、図4参照。)とする。ブロック6〜8のいずれか一つはパリティブロックであり、ブロック6〜8のいずれか一つが物理ディスクの故障により失われても、残りの2つから修復計算により修復可能である。同様に、他のブロック9〜11に関しても、ブロック9〜11のいずれか一つはパリティブロックであり、ブロック9〜11のいずれか一つが物理ディスクの故障により失われても、残りの2つから修復計算により修復可能である。
まず、正常稼働時に、RAID制御部5は、ディスク制御部3を介して、物理ディスク#N−3,#N−2,#N−1の論理ディスク16以外の未使用領域に、その未使用領域の上限の容量でホットコピー用論理ディスクを構築する。例えば、RAID制御部5は、ディスク制御部3を介して物理ディスク#N−3,#N−2,#N−1にアクセスし、未使用領域を特定し、物理ディスク#N−3,#N−2,#N−1の未使用領域を一つの論理ディスクとすることを定める。
RAID制御部5は、ホットコピー用論理ディスクを構築すると、そのホットコピー用論理ディスクの容量が、物理ディスク#0〜#2から構成される論理ディスク15の容量以上であるか否かを判定する。ホットコピー用論理ディスクの容量が論理ディスク15の容量以上である場合、RAID制御部5は、その旨をホットコピー制御部5に伝達する。また、ホットコピー用論理ディスクの容量が論理ディスク15の容量より小さい場合、RAID制御部5は、その旨をホットコピー制御部5に伝達する。
図3は、ホットコピー用論理ディスクの容量が論理ディスク15の容量以上である場合の動作を示す説明図である。ホットコピー用論理ディスクの容量が論理ディスク15の容量以上である場合、ホットコピー制御部5は、以下のように動作する。
ホットコピー制御部5は、正常稼働時に、ディスク制御部3を介して、論理ディスク15に記憶されているブロックをホットコピー用論理ディスク17にコピーする。図3における実線の矢印は、このコピー処理を表している。本例では、ホットコピー制御部5は、図3に示すように、論理ディスクを構成する物理ディスク#0に記憶されているブロック6,9を、ホットコピー用論理ディスク17を構成する物理ディスク#N−3にコピーする。同様に、ホットコピー制御部5は、物理ディスク#1に記憶されているブロック7,10を物理ディスク#N−2にコピーし、物理ディスク#2に記憶されているブロック8,11を物理ディスク#N−1にコピーする。ホットコピー用論理ディスク17の容量は論理ディスク15の容量以上であるので、ホットコピー制御部5は、論理ディスク15に記憶されている全ブロックをホットコピー用論理ディスク17にコピーする。
その後、論理ディスク15を構成する物理ブロックのいずれか(ここでは、物理ブロック#1とする。)が故障したとする。すると、ディスク制御部3は、物理ブロック#1に故障の故障を検知し、RAID制御部4およびホットコピー制御部5に伝達する。
ホットコピー制御部5は、物理ブロック#1の故障が伝達されると、故障した物理ディスクからホットコピー用論理ディスク17にコピーしていたブロックを、ディスク制御部3を介してホットスペアディスク#Nにホットコピーする。本例では、ホットコピー制御部5は、ホットコピー用論理ディスク17を構成する物理ディスク#N−2にコピーされたブロック7,10を、ディスク制御部3を介してホットスペアディスク#Nにホットコピーする。図3における破線の矢印は、このホットコピー処理を表している。
このホットコピー処理では、物理ディスク#0,#2に記憶されたブロック6,8からブロック7を修復したり、ブロック9,11からブロック10を修復する修復計算は行わず、物理ディスク#N−2に記憶されているブロック7,10を直接ホットスペアディスク#Nにホットコピーする。ブロックの修復計算は行わないので、ホットコピー完了までの時間を短縮することができる。
また、物理ディスク#1の故障によって上記のホットコピーが行われている間に、I/O制御部2が、その故障した物理ディスク#1に記憶されていたブロックへのリードアクセス要求をホストから受信したとする。この場合、I/O制御部2は、その物理ディスク#1から物理ブロック#N−2にコピーされたブロックを物理ブロック#N−2から読み込み、直接ホストに転送する。本例では、故障した物理ブロック#1のブロック7,10に対するリードアクセス要求が届いた場合、I/O制御部2は、物理ディスク#N−2からブロック7,10を読み込み、ホストに返す。
この場合にも、物理ディスク#0,#2に記憶されたブロック6,8からブロック7を修復したり、ブロック9,11からブロック10を修復したりする修復計算は行わず、物理ディスク#N−2に記憶されているブロック7,10を直接ホストに返すので、リードアクセス要求に対する応答時間を短縮することができる。
また、物理ディスク#1の故障によって上記のホットコピーが行われている間に、さらに、論理ディスク1を構成する他の物理ディスクが故障したとする。ディスク制御部3は、新たに生じた物理ディスクの故障を検知し、RAID制御部4およびホットコピー制御部5に伝達する。このとき、論理ディスク15では、複数の物理ディスクが故障しているので、冗長破壊状態となっている。
このとき、I/O制御部2は、論理ディスク15に記憶される各ブロック6,7,8,9,10,11に対するリードアクセス要求をホストから受信すると、ホットコピー用論理ディスク17にコピーされたブロックを読み込んで、ホストに転送する。正常時に、論理ディスク15が記憶する各ブロックをホットコピー用論理ディスク17にコピーしていて、上記のように論理ディスク15が冗長破壊状態になったときは、I/O制御部2が、ホットコピー用論理ディスク17に記憶させているブロックをホストに返す。従って、データの二重化による高信頼性を確保することができる。
以上のように、正常時に、論理ディスク15に記憶されているブロックをホットコピー用論理ディスク17に記憶させ、論理ディスク15を構成する物理ブロックが故障した場合には、ホットコピー用論理ディスク17に記憶させたブロックをホットスペアディスク#Nにホットコピーする。そのため、故障により失われたブロックを修復する計算を行わなくてよいので、ホットスペアディスク#Nへのホットコピーの時間を短縮できる。また、ホットコピー完了前に論理ディスク15を構成する他の物理ディスクが故障すると冗長破壊となるが、ホットスペアディスク#Nへのホットコピー完了後に論理ディスク15を構成する他の物理ディスクが故障した場合には、ホットスペアディスク#Nを利用できるので冗長内破壊で済む。従って、ホットコピー時間を短縮できることにより、冗長破壊状態となる可能性を少なくすることができる。
また、正常時に、論理ディスク15に記憶されているブロックをホットコピー用論理ディスク17に記憶させていることにより、データを二重化させていることになる。よって、論理ディスク15が冗長破壊状態となっても、ホットコピー用論理ディスク17にブロックが記憶されているので、高信頼性を確保することができる。
また、物理ディスクの故障によってホットスペアディスク#Nへのホットコピーを行っているときに、故障した物理ディスクに記憶されていたブロックへのリードアクセス要求があった場合、ホットコピー用論理ディスク17に記憶させたブロックを出力する。従って、故障により失われたブロックを修復する必要がないので、リードアクセス要求への応答時間を短縮して、冗長内故障時のリード性能を向上させることができる。
次に、ホットコピー用論理ディスクの容量が論理ディスク15の容量より小さい場合の動作を説明する。図4は、この場合の動作を示す説明図である。
ホットコピー制御部5は、正常稼働時に、ディスク制御部3を介して、論理ディスク15に記憶されているブロックをホットコピー用論理ディスク17にコピーする。ホットコピー制御部5は、パリティブロックを含むブロックの組毎に論理ディスク15からホットコピー用論理ディスク17へのコピーを行う。ただし、ホットコピー用論理ディスクの容量が論理ディスク15より小さいので、ホットコピー用論理ディスク17にコピー可能な容量がなくなったら、残りのブロックは、ホットコピー用論理ディスク17にコピーしない。図4における実線の矢印は、このコピー処理を表している。本例では、ホットコピー制御部5は、図4に示すように、論理ディスクを構成する物理ディスク#0に記憶されているブロック6を、ホットコピー用論理ディスク17を構成する物理ディスク#N−3にコピーする。同様に、ホットコピー制御部5は、物理ディスク#1に記憶されているブロック7を物理ディスク#N−2にコピーし、物理ディスク#2に記憶されているブロック8を物理ディスク#N−1にコピーする。ブロック6,7,8をコピーした結果、ホットコピー用論理ディスク17にさらにコピーを行うことができなくなると、ホットコピー制御部5は、残りのブロック9,10,11はホットコピー用論理ディスク17にコピーしない。このように、ホットコピー制御部5は、論理ディスク15に記憶されたブロックの一部をホットコピー用論理ディスク17にコピーする。
その後、論理ディスク15を構成する物理ブロックのいずれか(ここでは、物理ブロック#1とする。)が故障したとする。すると、ディスク制御部3は、物理ブロック#1に故障の故障を検知し、RAID制御部4およびホットコピー制御部5に伝達する。
ホットコピー制御部5は、物理ブロック#1の故障が伝達されると、故障した物理ディスクからホットコピー用論理ディスク17にコピーしていたブロックを、ディスク制御部3を介してホットスペアディスク#Nにホットコピーする。本例では、ホットコピー制御部5は、ホットコピー用論理ディスク17を構成する物理ディスク#N−2にコピーされたブロック7を、ディスク制御部3を介してホットスペアディスク#Nにホットコピーする。図4における破線の矢印は、このホットコピー処理を表している。
また、このとき、RAID制御部4は、故障した物理ディスク#1からホットコピー用論理ディスク17にコピーされていなかったブロック10を、論理ディスク15を構成する物理ディスクのうち故障していない物理ディスク#0,#2に記憶されたブロック9,11から修復する。RAID制御部4は、ディスク制御部3を介して、物理ディスク#0,#2からブロック9,11を読み込み、ブロック9,11からブロック10を修復する。この修復計算は、例えば、以下のように行えばよい。すなわち、RAID制御部4は、修復対象のブロックがパリティブロックでなければ、失われたブロックを構成するビット毎に、パリティブロックではない残りのブロックの対応ビットにおける“1”の数と、故障により失われたブロックにおける“1”の数の和が、パリティブロックが示す偶数または奇数と合致するように、故障により失われたブロックのビットを特定すればよい。例えば、パリティブロックにおいて“1”の数が奇数と表されていて、もう一つのブロックのビットが“0”であるならば、故障で失われたブロックのビットは“1”であると判定する。この処理をビット毎に行い、ブロックを修復すればよい。また、修復対象のブロックがパリティブロックの場合、ブロックを構成する各ビット毎に他のブロックの“1”のビットをカウントし、偶数か奇数かに応じて“1”または“0”を定めることによって、パリティブロックを修復すればよい。RAID制御部4は、ブロック9,11を用いて修復計算によりブロック10を修復すると、そのブロック10をホットスペアディスク#Nにホットコピーさせる。図4に示す二点差線は、このホットコピー処理を表している。
正常稼働時にホットコピー用論理ディスク17にコピーされたなかったブロックについては修復計算により修復するが、正常稼働時にホットコピー用論理ディスク17にコピーされたブロックについては修復計算を行わず、ホットコピー用論理ディスク17から直接ホットスペアディスク#Nにホットコピーする。従って、ブロックの修復計算量を少なくして、ホットコピー完了までの時間を短縮することができる。
また、物理ディスク#1の故障によって上記のホットコピーが行われている間に、I/O制御部2が、その物理ディスク#1からホットコピー用論理ディスク17にコピーされたブロックへのリードアクセス要求をホストから受信したとする。この場合、I/O制御部2は、そのブロック(物理ディスク#1からホットコピー用論理ディスク17にコピーされたブロック)を、ホットコピー用論理ディスク17を構成する物理ディスクから読み込み、ホストに転送する。例えば、I/O制御部2がブロック7へのリードアクセス要求を受信したとすると、I/O制御部2は、物理ディスク#N−2からブロック7を読み込んで直接ホストに返す。
また、リードアクセス要求が、故障した物理ディスク#1からホットコピー用論理ディスク17にコピーされていなかったブロックに対するものである場合、RAID制御部4が、論理ディスク15を構成する物理ディスクのうち故障していない物理ディスク#0,#2に記憶されたブロックを読み込み、そのブロックから、リードアクセス要求のあったブロックを修復する。そして、RAID制御部4は、修復したブロックをI/O制御部2からホストに転送する。例えば、ブロック10へのリードアクセス要求があった場合、RAID制御部4は、物理ディスク#0,#2からブロック9,11を読み込み、ブロック9,11からブロック10を修復し、I/O制御部2からホストに転送する。
正常稼働時にホットコピー用論理ディスク17にコピーされたなかったブロックについては修復計算により修復する、正常稼働時にホットコピー用論理ディスク17にコピーされたブロックについては修復計算を行わず、ホットコピー用論理ディスク17に記憶されているブロックをホストに返す。従って、リードアクセス要求に対する応答時間を短縮することができる。
また、物理ディスク#1の故障によって上記のホットコピーが行われている間に、さらに、論理ディスク1を構成する他の物理ディスクが故障したとする。ディスク制御部3は、新たに生じた物理ディスクの故障を検知し、RAID制御部4およびホットコピー制御部5に伝達する。このとき、論理ディスク15では、複数の物理ディスクが故障しているので、冗長破壊状態となっている。
このとき、I/O制御部2は、論理ディスク15に記憶される各ブロック6,7,8に対するリードアクセス要求をホストから受信すると、ホットコピー用論理ディスク17にコピーされたブロックを読み込んで、ホストに転送する。このように、正常時に論理ディスク15からホットコピー用論理ディスク17にコピーしていたブロックについては、二重化されているので高信頼性を確保することができる。
次に、本発明の概要を説明する。図5は、本発明の概要を示すブロック図である。本発明のディスクアレイシステムは、第1の物理ディスク群91と、第2の物理ディスク群92と、ホットスペア93と、論理ディスク構築手段94と、コピー制御手段95とを備える。
第1の物理ディスク群91(例えば、物理ディスク#0〜#2)は、パリティブロックを含むブロックの集合を記憶する第1の論理ディスク(例えば、論理ディスク15)を構成する。
第2の物理ディスク群92(例えば、物理ディスク#N−3,#N−2,#N−1)は、第1の物理ディスク群91に属する物理ディスクと同数の物理ディスクを含む。
ホットスペア93(例えば、ホットスペアディスク#N)は、故障した物理ディスクの代わりに用いられる。
論理ディスク構築手段94(例えば、RAID制御部4)は、正常稼働時に、第2の物理ディスク群92の未使用領域を用いて第2の論理ディスク(例えば、ホットコピー用論理ディスク17)を構築する。
コピー制御手段95(例えば、ホットコピー制御部5)は、正常稼働時に、第1の論理ディスクに記憶されたブロックの集合を第2の論理ディスクにコピーし、第1の物理ディスク群91中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから第2の論理ディスクにコピーされたブロックを、ホットスペア93にコピーする。
また、上記の実施形態には、第1の物理ディスク群91中のいずれかの物理ディスクが故障したことによりコピー制御手段95がホットスペア93へのブロックのコピーを行っているときに、故障した物理ディスクが記憶していたブロックのリードアクセス要求があった場合、その物理ディスクから第2の論理ディスクにコピーされたブロックを第2の論理ディスクから読み込んで出力するデータ出力手段(例えば、I/O制御部2)を備える構成が開示されている。
また、上記の実施形態には、コピー制御手段95が、第2の論理ディスクの容量が第1の論理ディスクの容量より小さい場合に、第1の論理ディスクに記憶されているブロックの一部を第2の論理ディスクにコピーし、第1の物理ディスク群91中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから第2の論理ディスクにコピーされていなかったブロックを、第1の物理ディスク群中の故障していない物理ディスクに記憶されたブロックから修復し、そのブロックをホットスペアに記憶させるデータ修復コピー手段(例えば、RAID制御部4)を備える構成が開示されている。
また、上記の実施形態には、第1の物理ディスク群91中のいずれかの物理ディスクが故障したことによりコピー制御手段95がホットスペア93へのブロックのコピーを行っているときに、故障した物理ディスクに記憶されていたブロックであって第2の論理ディスクにコピーされていなかったブロックのリードアクセス要求があった場合に、第1の物理ディスク群91中の故障していない物理ディスクに記憶されたブロックからそのリードアクセス要求のあったブロックを修復して出力するデータ修復出力手段(例えば、RAID制御部4)を備える構成が開示されている。
本発明は、ホットスペアディスクを備えるディスクアレイシステムに好適に適用可能である。
1 ディスクアレイシステム
2 I/O制御部
3 ディスク制御部
4 RAID制御部
5 ホットコピー制御部
15 論理ディスク
17 ホットコピー用論理ディスク
#0〜#N−1 物理ディスク
#N ホットスペアディスク
2 I/O制御部
3 ディスク制御部
4 RAID制御部
5 ホットコピー制御部
15 論理ディスク
17 ホットコピー用論理ディスク
#0〜#N−1 物理ディスク
#N ホットスペアディスク
Claims (8)
- パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、
前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、
故障した物理ディスクの代わりに用いられるホットスペアと、
正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築する論理ディスク構築手段と、
正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーするコピー制御手段とを備える
ことを特徴とするディスクアレイシステム。 - 第1の物理ディスク群中のいずれかの物理ディスクが故障したことによりコピー制御手段がホットスペアへのブロックのコピーを行っているときに、故障した物理ディスクが記憶していたブロックのリードアクセス要求があった場合、当該物理ディスクから第2の論理ディスクにコピーされたブロックを第2の論理ディスクから読み込んで出力するデータ出力手段を備える
請求項1に記載のディスクアレイシステム。 - コピー制御手段は、第2の論理ディスクの容量が第1の論理ディスクの容量より小さい場合に、前記第1の論理ディスクに記憶されているブロックの一部を前記第2の論理ディスクにコピーし、
第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされていなかったブロックを、第1の物理ディスク群中の故障していない物理ディスクに記憶されたブロックから修復し、当該ブロックをホットスペアに記憶させるデータ修復コピー手段を備える
請求項1または請求項2に記載のディスクアレイシステム。 - 第1の物理ディスク群中のいずれかの物理ディスクが故障したことによりコピー制御手段がホットスペアへのブロックのコピーを行っているときに、故障した物理ディスクに記憶されていたブロックであって前記第2の論理ディスクにコピーされていなかったブロックのリードアクセス要求があった場合に、第1の物理ディスク群中の故障していない物理ディスクに記憶されたブロックから前記リードアクセス要求のあったブロックを修復して出力するデータ修復出力手段を備える
請求項3に記載のディスクアレイシステム。 - パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、故障した物理ディスクの代わりに用いられるホットスペアとを備えるディスクアレイシステムに適用されるディスクアレイ制御方法であって、
正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築し、
正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーする
ことを特徴とするディスクアレイ制御方法。 - ホットスペアへのブロックのコピーを行っているときに、故障した物理ディスクが記憶していたブロックのリードアクセス要求があった場合、当該物理ディスクから第2の論理ディスクにコピーされたブロックを第2の論理ディスクから読み込んで出力する
請求項5に記載のディスクアレイ制御方法。 - パリティブロックを含むブロックの集合を記憶する第1の論理ディスクを構成する第1の物理ディスク群と、前記第1の物理ディスク群に属する物理ディスクと同数の物理ディスクを含む第2の物理ディスク群と、故障した物理ディスクの代わりに用いられるホットスペアとを備えるコンピュータに搭載されるディスクアレイ制御プログラムであって、
前記コンピュータに、
正常稼働時に、第2の物理ディスク群の未使用領域を用いて第2の論理ディスクを構築する論理ディスク構築処理、および、
正常稼働時に、前記第1の論理ディスクに記憶されたブロックの集合を前記第2の論理ディスクにコピーし、前記第1の物理ディスク群中のいずれかの物理ディスクが故障したときに、故障した物理ディスクから前記第2の論理ディスクにコピーされたブロックを、ホットスペアにコピーするコピー制御処理
を実行させるためのディスクアレイ制御プログラム。 - 前記コンピュータに、
コピー制御処理でホットスペアへのブロックのコピーを行っているときに、故障した物理ディスクが記憶していたブロックのリードアクセス要求があった場合、当該物理ディスクから第2の論理ディスクにコピーされたブロックを第2の論理ディスクから読み込んで出力するデータ出力処理を実行させる
請求項7に記載のディスクアレイ制御プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008049094A JP4831093B2 (ja) | 2008-02-29 | 2008-02-29 | ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008049094A JP4831093B2 (ja) | 2008-02-29 | 2008-02-29 | ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009205571A JP2009205571A (ja) | 2009-09-10 |
JP4831093B2 true JP4831093B2 (ja) | 2011-12-07 |
Family
ID=41147733
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008049094A Expired - Fee Related JP4831093B2 (ja) | 2008-02-29 | 2008-02-29 | ディスクアレイシステム、ディスクアレイ制御方法およびディスクアレイ制御プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4831093B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6244974B2 (ja) | 2014-02-24 | 2017-12-13 | 富士通株式会社 | ストレージ装置、及びストレージ装置の制御方法 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3597086B2 (ja) * | 1999-07-27 | 2004-12-02 | エヌイーシーシステムテクノロジー株式会社 | ディスクアレイ制御装置 |
JP2003108316A (ja) * | 2001-09-26 | 2003-04-11 | Toshiba Corp | ディスクアレイ装置およびホットスペア制御方法 |
JP2004171373A (ja) * | 2002-11-21 | 2004-06-17 | Nec Corp | ディスクアレイ装置 |
-
2008
- 2008-02-29 JP JP2008049094A patent/JP4831093B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2009205571A (ja) | 2009-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8392752B2 (en) | Selective recovery and aggregation technique for two storage apparatuses of a raid | |
US8307159B2 (en) | System and method for providing performance-enhanced rebuild of a solid-state drive (SSD) in a solid-state drive hard disk drive (SSD HDD) redundant array of inexpensive disks 1 (RAID 1) pair | |
JP5285610B2 (ja) | グローバルホットスペアディスクが存在するときに、故障したドライブを復元、及びコピーバックする最適化された方法 | |
US7984325B2 (en) | Storage control device, data recovery device, and storage system | |
JP5887757B2 (ja) | ストレージシステム、ストレージ制御装置およびストレージ制御方法 | |
JP4815825B2 (ja) | ディスクアレイ装置及びその再構築方法 | |
US10452498B2 (en) | Fault tolerance for persistent main memory | |
US20060117216A1 (en) | Program, storage control method, and storage system | |
US20130047029A1 (en) | Storage system, storage control apparatus, and storage control method | |
US20060212748A1 (en) | Storage control apparatus and method | |
JP5353887B2 (ja) | ディスクアレイ装置の制御ユニット、データ転送装置及び復電処理方法 | |
JP2016530637A (ja) | Raidパリティストライプ再構成 | |
CN102521058A (zh) | Raid组磁盘数据预迁移方法 | |
WO2015058542A1 (zh) | 独立冗余磁盘阵列的重构方法及装置 | |
US5632013A (en) | Memory and system for recovery/restoration of data using a memory controller | |
US20110010582A1 (en) | Storage system, evacuation processing device and method of controlling evacuation processing device | |
JP2006139478A (ja) | ディスクアレイシステム | |
US9378092B2 (en) | Storage control apparatus and storage control method | |
WO2013080299A1 (ja) | データ管理装置、データコピー方法、およびプログラム | |
JPH09269871A (ja) | ディスクアレイ装置におけるデータ再冗長化方式 | |
EP3244316B1 (en) | Method and apparatus for performing data recovery in redundant storage system | |
KR20210137922A (ko) | 복구 공간으로 패리티 공간을 사용한 데이터 복구 시스템, 방법 및 장치 | |
JP2005099995A (ja) | 磁気ディスク装置のディスク共有方法及びシステム | |
JP2006268502A (ja) | アレイコントローラ、メディアエラー修復方法及びプログラム | |
JP5365236B2 (ja) | ストレージシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20110823 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110905 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140930 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |