JP5643238B2 - ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法 - Google Patents

ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法 Download PDF

Info

Publication number
JP5643238B2
JP5643238B2 JP2012001406A JP2012001406A JP5643238B2 JP 5643238 B2 JP5643238 B2 JP 5643238B2 JP 2012001406 A JP2012001406 A JP 2012001406A JP 2012001406 A JP2012001406 A JP 2012001406A JP 5643238 B2 JP5643238 B2 JP 5643238B2
Authority
JP
Japan
Prior art keywords
disk
write
data
control unit
rebuild
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
Application number
JP2012001406A
Other languages
English (en)
Other versions
JP2013142912A (ja
Inventor
秋生 鈴木
秋生 鈴木
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP2012001406A priority Critical patent/JP5643238B2/ja
Priority to US13/733,237 priority patent/US9189350B2/en
Publication of JP2013142912A publication Critical patent/JP2013142912A/ja
Application granted granted Critical
Publication of JP5643238B2 publication Critical patent/JP5643238B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • G06F11/1092Rebuilding, e.g. when physically replacing a failing disk
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • G06F11/2087Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring with a common controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2211/00Indexing scheme relating to details of data-processing equipment not covered by groups G06F3/00 - G06F13/00
    • G06F2211/10Indexing scheme relating to G06F11/10
    • G06F2211/1002Indexing scheme relating to G06F11/1076
    • G06F2211/1009Cache, i.e. caches used in RAID system with parity

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

本発明は、ディスクアレイ制御に関し、特に、データの復旧に関する。
コンピュータやネットワークで構成された情報処理システムは、処理のデータとして、データ単位当たり容量(例えば、ファイル容量)が大きいものから小さいものまで、多くの種類の扱いが必要である。しかし、データを記憶するディスク装置(ディスクドライブ)の物理的な容量は、固定である。そのため、ディスク装置ごとにデータを保存及び管理すると、ディスク装置に使用できない領域が、発生する。
また、情報処理システムで用いられるデータは、年々増加している。そのため、多くのディスク装置をディスク装置単位で管理すると、無駄な領域が多くなる。
また、ディスク装置を使用するコンピュータなどの上位装置は、管理すべきディスク装置に数が膨大となり、管理が煩雑で、管理のための処理が多くなる。
そこで、ディスク装置の容量に制限されない大容量の記憶手段として、ディスクアレイ装置が用いられている。(例えば、特許文献1参照。)ディスクアレイ装置は、複数のディスク装置を含み、上位装置に対し、論理的なディスク装置としてデータを読み書きする。上位装置は、管理に必要な容量と数の論理的なディスク装置を、ディスクアレイ装置を用いて利用できる。
ディスクアレイ装置は、データを記憶再生する複数のディスク装置と、上位装置との接続とディスク装置を制御するディスクアレイ制御装置(ディスクアレイ・コントローラ)とを含む。
さらに、特許文献1に記載のディスクアレイ装置は、データの信頼性を確保するため、データに冗長性を持たせたレイド(RAID:Redundant Arrays of Inexpensive Disks 又は Redundant Arrays of Independent Disks)を利用する。レイドを実現するため、ディスクアレイ制御装置は、レイド構成の管理など、ディスク装置を管理する。また、ディスクアレイ制御装置は、冗長性確保のためのデータの作成、及び、冗長性を確保するためのデータの記録や再生を管理する。
特許文献1に記載のレイドを用いたディスクアレイ装置は、データの冗長性を確保するため、複数台のディスク装置でレイドを構成する。なお、レイドを構成するすべてのディスク装置が正常に動作している状態を、以下、「正常状態」と言う。正常状態は、レイドに基づくデータの冗長性を確保できるため、「冗長性がある状態」と言うこともある。
レイドを用いるディスクアレイ装置は、レイドに含まれる1台又は複数台のディスク装置が使用不能(例えば、故障)となっても、データを読み書きできる。ただし、ディスクアレイ装置は、使用不能となったディスク装置を、使用可能なディスク装置と交換するため、アレイ構成から論理的又は物理的(電気的)に切り離す。このように、レイド構成に使用できないディスク装置を含んだ状態、又は、使用できないディスク装置を切り離した状態を、「縮退状態」と言う。また、縮退状態は、データの冗長性を確保できないため、「冗長性がない状態」と言うこともある。
切り離されたディスク装置は、所定の交換作業で取り外され、正常なディスク装置がディスクアレイ装置に設置される。ディスク装置を交換後、ディスクアレイ制御装置は、縮退状態で動作していたディスク装置のデータを基に、交換したディスク装置のデータを復旧(リビルド)する。交換したディスク装置のデータがすべて復旧すると、ディスクアレイ装置は、通常状態つまり冗長性がある状態に復帰する。
このリビルドにおいて、ディスクアレイ制御装置は、縮退状態で動作していたディスク装置から、所定の単位のデータを読み出し、そのデータを基に冗長性を確保するためのデータを算出し、交換後のディスク装置に書き込む。ディスクアレイ制御装置は、この動作を繰り返し、交換後のディスク装置に記憶されるべき全データを復元する。
ただし、上記のリビルド中でも、ディスクアレイ装置は、上位装置からのデータの読み書き命令を処理する必要がある。つまり、リビルド中のディスクアレイ装置は、リビルドの読み書き動作と、上位装置からの読み書き動作との両方を行う。そのため、リビルド中のディスクアレイ装置は、リビルドの処理の時間の分、上位装置からの処理に対する応答などの処理性能が低下する。
特に、近年のディスク装置の容量は、著しく増加している。そのため、交換後のディスク装置のデータを復旧するためのリビルドに必要な時間が、増加している。つまり、性能低下となるリビルドの影響が、増大している。
ディスク装置には、性能向上のため、キャッシュを備えるものがある。
そこで、特許文献1に記載のディスクアレイ装置は、データの書き込みにおいて、書き込みデータを、ディスク媒体にデータを書き込まず、ライトキャッシュに書き込み、性能の向上を図ることができる。
より具体的に説明すると、特許文献1に記載のディスクアレイ装置は、上位装置から受け取った書き込みデータを、ディスク装置のライトキャッシュに書き込んだ時点で、上位装置に書き込みの終了を通知する。
上位装置は、ディスクアレイ装置からの終了の通知を受けると、書き込み処理が終了したと判断し、次の処理(例えば、書き込みデータのクリアや次の命令発行)を行う。
なお、ライトキャッシュに書き込みデータが書き込まれたディスク装置は、ライトキャッシュに書き込まれたデータを、所定のタイミング(例えば、アクセスが一定時間ないとき)や上位装置の指示に基づき、ディスク媒体に書き込む。
特開2010−009442
キャッシュに用いられる半導体メモリは、給電が止まると、データを消失する。
そのため、急な停電などの電気的トラブルが発生した場合、上述した特許文献1に記載のディスクアレイ装置は、ディスク装置のライトキャッシュに保存されたデータの中でディスク媒体に書き込みが完了していないデータが、消失する。
リビルドのための書き込みデータは、消失しても、縮退状態で動作したディスク装置のデータを基に再度生成できる。
しかし、上位装置からの書き込みデータは、上位装置に書き込みの完了を通知しているため、データの消失となる。
つまり、特許文献1に記載の装置は、リビルド中の性能低下を防ぐためにライトキャッシュを用いると、上位装置からの書き込みデータを保障できないという問題点があった。
本発明の目的は、上述の課題である、リビルド時の性能低下を防ぐためにライトキャッシュを用いると、上位装置からの書き込みデータが保障できない問題点を解決したディスクアレイ装置のディスクアレイ制御装置、ディスクアレイ装置、及びディスクアレイ制御方法を提供することにある。
本発明のディスクアレイ制御装置は、上位装置から書き込みデータを受け取る上位接続手段と、復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込み、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部をライトキャッシュに書き込むディスク制御手段とを含む。
本発明のディスクアレイ装置は、データ保存するディスク媒体と、前記ディスク媒体に保存するデータを一時記憶するライトキャッシュとを含む複数のディスク装置と、上位装置から書き込みデータを受け取る上位接続手段と、復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込み、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部をライトキャッシュに書き込むディスク制御手段とを含むディスクアレイ制御装置とを含む。
本発明のディスクアレイ制御方法は、上位装置から書き込みデータを受け取り、前記上位装置からの書き込みデータをディスク媒体に書き込み、復旧データを生成し、前記復旧データの少なくとも一部をライトキャッシュに書き込む。
本発明のディスクアレイ制御装置のプログラムは、上位装置から書き込みデータを受け取る処理と、前記上位装置からの書き込みデータをディスク媒体に書き込む処理と、復旧データを生成する処理と、前記復旧データの少なくとも一部をライトキャッシュに書き込む処理とをコンピュータに実行させる。
本発明によれば、リビルド中の性能低下を防ぎながら、上位装置からの書き込みデータを保障できる。
図1は、本発明における第1の実施形態に係るディスクアレイ制御装置の構成の一例を示すブロック図である。 図2は、第1の実施の形態に係るディスクアレイ装置の構成の一例を示すブロック図である。 図3は、第1の実施形態に係るリビルドの動作の一例を示すフローチャートである。 図4は、第1の実施形態の別の構成の一例を示すブロック図である。 図5は、第1の実施形態の第2の変形例の構成の一例を示すブロック図である。
次に、本発明の実施形態について図面を参照して説明する。
(第1の実施形態)
図1は、第1の実施形態に係るディスクアレイ制御装置10の構成の一例を示すブロック図である。
まず、ディスクアレイ制御装置10の構成について説明する。
ディスクアレイ制御装置10は、上位接続部110と、ディスク制御部120と、リビルド制御部130とを含む。
上位接続部110は、図示しない上位装置から書き込み命令(ライト命令)と書き込みデータを受け取り、ディスク制御部120に送る。また、上位接続部110は、上位装置から読み出し命令(リード命令)を受け取りディスク制御部120に渡し、読み出しデータをディスク制御部120から受け取り、上位装置に送る。
ディスク制御部120は、図示しないディスク装置へのデータの書き込み及び読み出しを制御する。さらに、ディスク制御部120は、ディスク装置へのデータの書き込みにおいて、ディスク装置に、ライトキャッシュへの書き込み、又は、ディスク媒体への書き込みを指示する。
リビルド制御部130は、リビルドを制御する。例えば、リビルド制御部130は、ディスク制御部120を制御して、リビルドにおける、復旧のためのデータの読み出し、復旧データの作成、及び、復旧データの書き込みを指示又は命令する。
より具体的に説明すると、リビルド制御部130は、ディスク制御部120に次を動作させる。
1)リビルドの対象となるデータを復旧元のディスク装置(縮退状態で動作していたディスク装置)から読み出す。
2)読み出したデータを基に冗長性を確保するための復旧データ(リビルドのための書き込みデータとも言う。)を作成する。
3)交換後のディスク装置に復旧データを書き込む。
なお、リビルドにおいて、リビルド制御部130がディスク制御装置120に送る指示は、ディスク制御部120の機能に合わせた指示となる。
例えば、ディスク制御部120が、ディスク装置への書き込み、又は、読み出しなど簡単な動作を行う場合、リビルド制御部130は、ディスク制御部120に、上記の「1)−3)」の動作を順番に指示する。
一方、ディスク制御部120がリビルドの一連の動作を一つの命令で実行可能な場合、リビルド制御部130は、ディスク制御部120にその命令(例えば、リビルド命令)を送る。
なお、復旧データを書き込む動作において、ディスク制御部120は、ディスク装置の書き込み状態を一致させるため、縮退状態で動作していたディスク装置にデータを書き込んでも良い。この場合、縮退状態で動作していたディスク装置へ書き込むデータは、読み出したデータと同じデータである。そのため、以下、縮退状態で動作していたディスク装置からデータを読み出し、復旧データを加えてディスク装置に書き込む(書き戻す)動作をまとめて「無修正書き込み」と言い、無修正書き込みを指示する命令を「無修正書き込み命令」と言う。(上記のリビルド命令は、無修正書き込み命令でも良い。)
次に、ディスクアレイ制御装置10の動作について説明する。
上位接続部110は、上位装置から書き込み命令と書き込みデータを受け取ると、書き込み命令と書き込みデータをディスク制御部120に送る。ディスク制御部120は、ディスク装置に、書き込みデータの書き込みを指示する。ただし、上位接続部110から書き込みデータを受けた場合、ディスク制御部120は、ディスク装置に、ディスク媒体への書き込みを指示する。
一方、リビルド制御部130から復旧のための無修正書き込み命令を受け取ると、ディスク制御部120は、縮退状態で動作していたディスク装置からデータを読み出し、復旧データを作成し、交換後のディスク装置(及び、縮退状態の動作していたディスク装置)にデータを書き込む。ただし、リビルド制御部130からの指示に基づくデータの書き込みの場合、ディスク制御部120は、ディスク装置に、ライトキャッシュへの書き込みを指示する。
このように、ディスクアレイ制御装置10は、上位装置からの書き込みデータをディスクに書き込み、リビルドのための書き込みデータをライトキャッシュに書き込む。
上位装置からの書き込みデータは、ディスク媒体に保存されてから、上位装置に終了が通知される。また、既に、交換後のディスク装置が稼動中である。そのため、上位装置からの書き込みデータは、冗長性が確保された状態でディスク装置に書き込まれる。したがって、書き込み済みが上位装置に返されたデータは、電気的な障害が発生しても、保障されている。
一方、リビルドのための書き込みデータは、ライトキャッシュに書き込まれる。そのため、リビルドの処理は、上位装置からの処理と比較し、短い時間で終了する。つまり、リビルドの処理の性能への影響は、削減される。
なお、ここまでの説明では、ディスク制御部120は、書き込みデータの送付元(上位接続部110)及び指示元(リビルド制御部130)に基づき書き込み先を判定した。しかし、本実施形態は、これに限る必要はない。
例えば、ディスク制御部120への書き込み命令が、ライトキャッシュへの書き込みとディスク媒体への書き込みとの指示する制御フラグを備えてもよい。この場合、上位接続部110は、ディスク媒体への書き込みフラグを設定して、ディスク制御部120に書き込み命令を送る。リビルド制御部130は、ライトキャッシュへの書き込みフラグを設定して、ディスク制御部120に書き込み命令を送る。
あるいは、ディスク制御部120は、ライトキャッシュへの書き込み命令と、ディスク媒体への書き込み命令とを備えても良い。この場合、上位接続部110は、ディスク媒体への書き込み命令を用い、リビルド制御部130は、ライトキャッシュへの書き込み命令を用いる。
次に、本実施形態のリビルド動作について、図面を参照して、より詳細に説明する。
図2は、本実施形態に係るディスクアレイ制御装置10を含むディスクアレイ装置30の構成の一例を示すブロック図である。図2において図1と同様の構成には同じ番号を付し、詳細な説明は省略する。
ディスクアレイ装置30は、ディスクアレイ制御装置10とディスク装置20a−20cとを含む。
ディスクアレイ制御装置10は図1と同様のため、構成の詳細な説明は省略する。
ディスク装置20a−20cは、ディスクアレイ制御装置10に制御されてデータを記録及び再生する。
ディスク装置20a−20cは、書き込みデータを一時保存するライトキャッシュ210a−210cと、データを長期的に保存するディスク媒体220a−220cとを含む。なお、以下、ディスク装置20a−20cをまとめて、ディスク装置20と、ライトキャッシュ210a−210cをまとめてライトキャッシュ210と、ディスク媒体220a−220cをまとめてディスク媒体220と言う。
また、図2においてディスク装置20を3台としたのは、一例である。本実施形態のディスクアレイ装置30は、3台未満のディスク装置20を備えても良く、3台を超えるディスク装置20を備えても良い。
ライトキャッシュ210は、ディスク装置20への書き込みデータを一時保存する。ライトキャッシュ210への書き込みを指示された場合、ディスク装置20は、ライトキャッシュ210にデータの書き込みが終了した時点で書き込み終了をディスクアレイ制御装置10に返す。
ディスク媒体220は、例えば、磁気ディスクのように、実際にデータを半永久的に保存する記憶媒体である。ディスク媒体220への書き込みを指示された場合、ディスク装置20は、受け取ったデータを、すべてディスク媒体220に書き込んでから、書き込み終了をディスクアレイ制御装置10に返す。なお、ディスク装置20は、ディスク媒体220に書き込む指示を受けた場合、書き込みデータを直接ディスク媒体220に書き込んでも良い。あるいは、通信路の輻輳を削減するため、ディスク装置20は、ライトキャッシュ210で書き込みデータを受け取り、受け取ったライトキャッシュ210のデータをディスク媒体220に書き込んでもよい。
次に、ディスクアレイ装置30の動作について説明する。
ディスクアレイ制御装置10のディスク制御部120は、図1のディスク制御部120と同様に、上位接続部110が受け取った上位装置からの書き込みデータを、ディスク装置20のディスク媒体220に書き込む。
一方、ディスク制御部120は、リビルド制御部130に指示されたリビルドのための書き込みデータを、ディスク装置20のライトキャッシュ210に書き込む。
なお、ディスクアレイ装置30の他の動作は、一般的はディスクアレイ装置と同様の動作のため、詳細な動作の説明を省略する。
次に、図3を参照して、本実施形態に特有のリビルド動作についてさらに説明する。
図3は、リビルドにおけるディスクアレイ装置30の動作の一例のフローチャートである。
ディスクアレイ装置30において、交換したディスク装置20は、ディスク装置20a−20cのいずれでも良いが、本説明では、ディスク装置20cを交換したディスク装置として説明する。また、ディスク制御部120は、リビルド命令に基づいて動作するとして説明する。
なお、既に説明したとおり、リビルド中でもディスク制御部120は、上位装置からの書き込み命令のデータをディスク媒体220に書き込む。
まず、リビルド制御部130は、ディスク装置20cの交換を検出すると、リビルドを開始する(ステップS301)。本実施形態におけるリビルド制御部130がディスク装置の交換を知る手段は、特に制限はない。例えば、リビルド制御部130は、ディスクアレイ装置30の図示しない保守装置から通知を受けてもよく、ディスク制御部120のディスク装置20の監視処理から交換の通知を受けても良い。
リビルド制御部130は、リビルドで復旧するデータ範囲を確認する(ステップS302)。リビルド制御部130が復旧するデータ範囲の確認手段は、特に制限はない。例えば、リビルド制御部130は、復旧するデータ範囲、つまり、ディスク装置20a及び20bの使用範囲を、ディスク制御部120から取得しても良い。あるいは、リビルド制御部130は、ディスク制御部120を介して、ディスク装置20cの仕様を取得し、ディスク装置20cの全域に対してリビルドしても良い。
リビルド制御部130は、未復旧の範囲の最初のアドレスから所定の範囲について、ディスク制御部120にデータの修復を指示する(ステップS303)。ステップS303において、既に説明したとおり、リビルド制御部130は、ディスク制御部120に無修正書き込みを指示する。ただし、リビルド制御部130は、ライトキャッシュ210への書き込みを指示する。
ディスク制御部120は、縮退状態で動作していたディスク装置から、指示されたリビルドの範囲のデータを読み出し、復旧データを作成し、交換後のディスク装置のライトキャッシュに書き込む(ステップS304)。具体的には、ディスク制御部120は、ディスク装置20a及び20bからデータを読み出し、復旧データを作成し、ディスク装置20cのライトキャッシュ210cに復旧データを書き込む。なお、ディスク制御部120は、ライトキャッシュ210における書き込みの状態を合わせるため、ディスク装置20a及びディスク装置20bのライトキャッシュ210a及びライトキャッシュ210bにデータを書き込んでも良い。
ディスク制御部120でのライトキャッシュ210への書き込みが終了すると、リビルド制御部130は、復旧範囲が終了したか否かを判定する(ステップS305)。
終了していない場合(ステップS305でNO)、リビルド制御部130は、ステップS302に戻り、次のリビルド範囲を処理する。
復旧範囲が終了した場合(ステップS305でYES)、リビルド制御部130は、リビルドを終了する。
このような動作に基づき、本実施形態のディスクアレイ制御装置10は、リビルドでの性能低下を防ぎながら、上位装置からのデータを保障できる。
その理由は、次のとおりである。
ディスクアレイ制御装置10のディスク制御部120は、上位接続部110から受け取った書き込み命令のデータを、ディスク装置20のディスク媒体220へ書き込む。つまり、上位装置からの書き込み命令のデータは、ディスク媒体220に保存された後、上位装置に書き込み終了を返す。そのため、上位装置からの書き込みデータは、データの信頼性が確保される。また、ディスク制御部120は、リビルド制御部130から指示されたリビルドのための書き込みデータを、ディスク装置20のライトキャッシュ210に書き込む。そのため、ディスクアレイ制御装置10は、リビルド動作に基づく性能の低下を削減できる。
なお、本実施形態のディスクアレイ制御装置10の構成は、図1の構成に限るわけではない。ディスクアレイ制御装置10は、図1の1つの構成を複数の構成に分けて実現しても良く、複数の構成を1つの構成で実現しても良い。
図4の第1の実施形態の別の構成のディスクアレイ制御装置40の一例を示すブロック図である。
ディスクアレイ制御装置40は、CPU(Central Processing Unit)140と、メモリ150と、NIC(Network Interface Card)160と、NIC165と、バス170とを含む。
CPU140は、メモリ150が記憶しているプログラムを基に、NIC160を介して上位装置とデータや命令の送受信し、NIC165を介してディスク装置20とデータの送受信し、図1に示すディスクアレイ制御装置10の各構成の動作を行う。
メモリ150は、CPU140が動作するプログラムを保持し、作業用のデータの一時保存としても動作する。メモリ150は、例えば、ROM(Read Only Memory)やRAM(Random Access Memory)、磁気ディスク装置、SSD(Solid State Drive)など一般的な記憶手段を用いればよいため、詳細な説明は省略する。
NIC160は、CPU140と上位装置とのデータのやり取りを仲介する。NIC165は、CPU140とディスク装置20とのデータやり取りを仲介する。NIC160及び165は、一般的なネットワーク接続に用いられる接続装置や部品でよいため、詳細な説明は省略する。
バス170は、各構成を接続するための一般的な接続バスである。そのため、バス170の詳細な説明は省略する。
このように構成されたディスクアレイ制御装置40は、ディスクアレイ制御装置10の各構成の動作を実現しているため、ディスクアレイ制御装置10と同様の効果を実現できる。
また、ディスクアレイ制御装置40は、コンピュータで読み書きできる記憶媒体180に保存されているプログラムを、図示しない記憶媒体読み取り部を用いて読み取り、読み取ったプログラムに基づいて動作しても良い。
(変形例1)
本実施形態のディスクアレイ制御装置10は、リビルドのための書き込みデータをすべてライトキャッシュ210に書き込んだ。しかし、本実施形態は、これに限る必要はない。例えば、ディスクアレイ制御装置10は、リビルドでの復旧データの書き込みにおいて、データ管理情報など重要性が高い一部のデータを、ディスク媒体220に書き込んでもよい。
あるいは、上位装置からアクセスを受けていない場合、ディスクアレイ制御装置10のディスク制御部120は、リビルドでの復旧データを、ディスク媒体220へ書き込んでもよい。この場合、ディスク制御部120は、上位接続部110のアクセス状態を監視し、上位装置からのアクセスを受け付けていないことを判別する機能を有する。
変形例1においても、ディスクアレイ制御装置10と同様の効果を得られる。
その理由は、次のとおりである。
データ管理情報の量は、リビルドのための書き込みデータの全体の量に対して、小さな比率である。そのため、データ管理情報をディスク媒体220に保存しても、性能低下の影響は小さいためである。
また、上位装置からアクセスを受けていない場合、ディスク媒体220への書き込み処理の時間は、上位装置へのアクセスに影響と与えないためである。
(変形例2)
本実施形態のディスクアレイ制御装置10は、上位接続部110及びリビルド制御部130が、ディスク装置20への書き込みを制御する。あるいは、ディスクアレイ制御装置10は、ディスク制御部120が、ディスク装置20への書き込みを制御する。しかし、本実施形態のディスクアレイ制御装置10は、ディスク装置20への書き込みの制御を別構成としても良い。
図5は、変形例2の構成の一例を示すブロック図である。
図5において図1と同様の構成には同じ番号を付し、詳細な説明を省略する。
ディスクアレイ制御装置50は、上位接続部110と、ディスク制御部120と、リビルド制御部130と、キャッシュ制御部190とを含む。
ディスクアレイ制御装置50のキャッシュ制御部190は、ディスク装置20へのデータの書き込みにおいて、ライトキャッシュ210へ書き込むか、ディスク媒体220へ書き込むかの指示を、各構成に送る。
そして、キャッシュ制御部190から指示を受けた上位接続部110及びリビルド制御部130が、ディスク制御部120に、書き込みデータを、ディスク装置20のライトキャッシュ210又はディスク媒体220に書き込むかを指示する。
あるいは、キャッシュ制御部190から指示を受けたディスク制御部120が、書き込みデータを、指示に従い、ディスク装置20のライトキャッシュ210又はディスク媒体220に書き込む。
上位接続部110、ディスク制御部120、及び、リビルド制御部130の上記以外の動作は、ディスクアレイ制御装置10と同様である。
より詳細に説明すると、次のようになる。
キャッシュ制御部190は、上位接続部110に、ディスク媒体220への書き込みを指示する。指示を受けた、上位接続部110は、ディスク制御部120に書き込みを指示するときに、ディスク媒体220への書き込みを指示する。
キャッシュ制御部190は、リビルド制御部130にライトキャッシュ210への書き込みを指示する。指示を受けた、リビルド制御部130は、ディスク制御部120にリビルドを指示するときに、ライトキャッシュ210への書き込みを指示する。なお、キャッシュ制御部190は、上位接続部110の状態を監視し、上位装置からアクセスがない場合、リビルド制御部130に、ディスク媒体220への書き込みを指示してもよい。この結果、ディスク制御部120は、リビルド制御部130から書き込みを指示された復旧データの少なくとも一部をディスク媒体220に書き込む。ただし、この場合でも、キャッシュ制御部190は、上位装置からのアクセスを検出すると、リビルド制御部130に、ライトキャッシュ210への書き込みを指示する。
あるいは、キャッシュ制御部190は、ディスク制御部120に、上位接続部110からの書き込みデータをディスク媒体220へ書き込み、リビルド制御部130からの書き込みデータをライトキャッシュ210へ書き込むように指示してもよい。この場合、ディスク制御部120は、上位接続部110からの書き込みデータをディスク媒体220に書き込み、リビルド制御部130から指示された書き込みデータをライトキャッシュ210に書き込む。
このように、ディスクアレイ制御装置50は、ディスクアレイ制御装置10と同様に動作する。
変形例2のディスクアレイ制御装置50は、ディスクアレイ制御装置10と同様の効果を得られる。
その理由は、ディスクアレイ制御装置50は、キャッシュ制御部190からの指示を基に図1に示したディスクアレイ制御装置10と同様に動作できるためである。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
10 ディスクアレイ制御装置
20 ディスク装置
30 ディスクアレイ装置
40 ディスクアレイ制御装置
50 ディスクアレイ制御装置
110 上位接続部
120 ディスク制御部
130 リビルド制御部
140 CPU
150 メモリ
160 NIC
165 NIC
170 バス
180 記憶媒体
190 キャッシュ制御部
210 ライトキャッシュ
220 ディスク媒体

Claims (8)

  1. 上位装置から書き込みデータを受け取る上位接続手段と、
    復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、
    前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示するディスク制御手段と
    を含むディスクアレイ制御装置。
  2. 前記ディスク制御手段が、
    前記上位接続手段からの指示を基に、前記ディスク媒体への書き込みを指示し、
    前記リビルド制御手段からの指示を基に、前記ライトキャッシュへの書き込みを指示する
    請求項1に記載のディスクアレイ制御装置。
  3. 前記ディスク制御手段が、
    前記上位接続手段からの書き込み命令を基に、前記ディスク媒体への書き込みを指示し、
    前記リビルド制御手段からの書き込み命令を基に、前記ライトキャッシュへの書き込みを指示する
    請求項1に記載のディスクアレイ制御装置。
  4. 前記ディスク媒体に書き込むか、前記ライトキャッシュに書き込むかを制御するキャッシュ制御手段を含み、
    前記ディスク制御手段が、
    前記キャッシュ制御手段の制御を基に、前記ディスク媒体への書き込み、又は、前記ライトキャッシュへの書き込みを指示する
    請求項1に記載のディスクアレイ制御装置。
  5. 前記上位装置からのアクセスがない場合、前記ディスク制御手段は、前記復旧データの少なくとも一部を前記ディスク媒体に書き込む請求項1乃至4のいずれか1項に記載のディスクアレイ制御装置。
  6. データ保存するディスク媒体と、
    前記ディスク媒体に保存するデータを一時記憶するライトキャッシュと
    を含む複数のディスク装置と、
    上位装置から書き込みデータを受け取る上位接続手段と、
    復旧データを生成しディスク媒体に書き込むためのリビルドを制御するリビルド制御手段と、
    前記上位接続手段から受け取った書き込みデータをディスク媒体に書き込むように前記複数のディスク装置に指示し、前記リビルド制御手段からの制御に基づいて生成される復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ディスク装置に指示するディスク制御手段と
    を含むディスクアレイ制御装置と
    を含むディスクアレイ装置。
  7. 上位装置から書き込みデータを受け取り、前記上位装置からの書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し、
    復旧データを生成し、前記復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示する
    ディスクアレイ制御方法。
  8. 上位装置から書き込みデータを受け取る処理と、
    前記上位装置からの書き込みデータをディスク媒体に書き込むように前記ディスク媒体を含む複数のディスク装置に指示し処理と、
    復旧データを生成する処理と、
    前記復旧データの少なくとも一部を前記ディスク装置毎に備えるライトキャッシュに書き込むように前記ライトキャッシュを含む前記ディスク装置に指示する処理と
    をコンピュータに実行させるディスクアレイ制御装置のプログラム。
JP2012001406A 2012-01-06 2012-01-06 ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法 Expired - Fee Related JP5643238B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012001406A JP5643238B2 (ja) 2012-01-06 2012-01-06 ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法
US13/733,237 US9189350B2 (en) 2012-01-06 2013-01-03 Disk array control apparatus, disk array apparatus, and disk array control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012001406A JP5643238B2 (ja) 2012-01-06 2012-01-06 ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法

Publications (2)

Publication Number Publication Date
JP2013142912A JP2013142912A (ja) 2013-07-22
JP5643238B2 true JP5643238B2 (ja) 2014-12-17

Family

ID=48744800

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012001406A Expired - Fee Related JP5643238B2 (ja) 2012-01-06 2012-01-06 ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法

Country Status (2)

Country Link
US (1) US9189350B2 (ja)
JP (1) JP5643238B2 (ja)

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10260790A (ja) * 1997-03-17 1998-09-29 Xing:Kk ディスクアレイ装置における情報記録方法およびディスクアレイ装置の制御装置
JP4314651B2 (ja) * 1998-08-26 2009-08-19 ソニー株式会社 ディスクアレイ装置及びデータ記録再生方法
US6718481B1 (en) * 2000-05-26 2004-04-06 Emc Corporation Multiple hierarichal/peer domain file server with domain based, cross domain cooperative fault handling mechanisms
US6862692B2 (en) * 2001-01-29 2005-03-01 Adaptec, Inc. Dynamic redistribution of parity groups
JP2006277042A (ja) 2005-03-28 2006-10-12 Toshiba Corp アレイコントローラ、ディスクアレイ制御方法及びプログラム
US8201018B2 (en) * 2007-09-18 2012-06-12 Hewlett-Packard Development Company, L.P. Control of sparing in storage systems
JP2009238094A (ja) * 2008-03-28 2009-10-15 Hitachi Ltd ストレージシステム及びデータ保存方法
JP2010015195A (ja) 2008-06-30 2010-01-21 Toshiba Corp 記憶制御装置及び記憶制御方法
JP2010009442A (ja) 2008-06-30 2010-01-14 Fujitsu Ltd ディスクアレイシステム、ディスク制御装置及びその再構築処理方法
US7904749B2 (en) * 2008-10-24 2011-03-08 Hitachi, Ltd. Fast data recovery from HDD failure

Also Published As

Publication number Publication date
US20130179725A1 (en) 2013-07-11
JP2013142912A (ja) 2013-07-22
US9189350B2 (en) 2015-11-17

Similar Documents

Publication Publication Date Title
US7870338B2 (en) Flushing cached data upon power interruption
JP4815825B2 (ja) ディスクアレイ装置及びその再構築方法
US7434097B2 (en) Method and apparatus for efficient fault-tolerant disk drive replacement in raid storage systems
JP4821448B2 (ja) Raidコントローラおよびraid装置
US7809979B2 (en) Storage control apparatus and method
US20100241793A1 (en) Storage system and method for controlling storage system
JP2010015195A (ja) 記憶制御装置及び記憶制御方法
JP2008204041A (ja) ストレージ装置及びデータ配置制御方法
JP2005301419A (ja) ディスクアレイ装置およびそのデータ処理方法
JP2011170589A (ja) ストレージ制御装置、ストレージ装置およびストレージ制御方法
WO2015011825A1 (ja) ストレージシステムおよびストレージシステムの制御方法
US7653831B2 (en) Storage system and data guarantee method
US8433949B2 (en) Disk array apparatus and physical disk restoration method
JP2005099995A (ja) 磁気ディスク装置のディスク共有方法及びシステム
JP2006079219A (ja) ディスクアレイ制御装置およびディスクアレイ制御方法
US9569329B2 (en) Cache control device, control method therefor, storage apparatus, and storage medium
JP5643238B2 (ja) ディスクアレイ制御装置、ディスクアレイ装置、及び、ディスクアレイ制御方法
JP4740354B2 (ja) ディスク制御装置およびディスク制御方法
JP5505329B2 (ja) ディスクアレイ装置及びその制御方法
JP6707939B2 (ja) 制御装置、ストレージ装置、制御方法及びプログラム
JPH08286844A (ja) パリティ生成制御方法およびディスク制御装置
JP2014041523A (ja) データ管理装置、及び、データ管理方法
JP2007128183A (ja) ストレージシステム
JP2019153076A (ja) 記憶装置及び制御方法
JPH08137627A (ja) ディスクアレイ装置

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130423

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130613

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131004

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141030

R150 Certificate of patent or registration of utility model

Ref document number: 5643238

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees