JP2006330779A - 自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム - Google Patents
自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム Download PDFInfo
- Publication number
- JP2006330779A JP2006330779A JP2005148905A JP2005148905A JP2006330779A JP 2006330779 A JP2006330779 A JP 2006330779A JP 2005148905 A JP2005148905 A JP 2005148905A JP 2005148905 A JP2005148905 A JP 2005148905A JP 2006330779 A JP2006330779 A JP 2006330779A
- Authority
- JP
- Japan
- Prior art keywords
- block
- content
- error correction
- storage device
- blocks
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
【解決手段】 自律ストレージ装置2は、コンテンツを、予め定めた分割数のコンテンツブロックに分割するコンテンツ分割手段21bと、コンテンツブロックに対する誤り訂正符号からなる誤り訂正符号ブロックを生成する誤り訂正符号ブロック生成手段21cと、ブロックを記憶するコンテンツ記憶手段30とを備え、コンテンツブロック及び誤り訂正符号ブロックの各ブロックを、自律ストレージ装置2並びに他の自律ストレージ装置に分散して記憶することを特徴とする。
【選択図】 図3
Description
図11に示すように、自律ストレージシステム1Dは、ここでは、ネットワークNに接続されたn台の自律ストレージ装置2D(2D1〜2Dn)で構成されている。この自律ストレージ装置2Dは、クライアントコンピュータ5等からデータの書き込み要求があったときに、各々の自律ストレージ装置2D(2D1〜2Dn)間でコンテンツの分散を行い、分散化されたコンテンツをコンテンツ記憶手段30D(30D1〜30Dn)に記憶するものである。
システム管理手段20Dは、CPUやメモリ等を備えたコンピュータであって、各システム管理手段20D(20D1〜20Dn)間で、コンテンツの分散や障害回復を行うものである。
コンテンツ記憶手段30Dは、ハードディスク等の一般的な記録媒体であって、ここでは、コンテンツの原データを蓄積するプライマリ領域Pと、コンテンツのバックアップデータを蓄積するバックアップ領域Bとに論理的に分割されている。
これによって、ある自律ストレージ装置2Dが故障した場合であっても、コンテンツの消失を防ぐことができる。
しかし、従来の自律ストレージシステムでは、1つのコンテンツに対して、同じデータ量のバックアップを生成する必要があるため、コンテンツを記憶するための記憶容量が2倍必要になり、自律ストレージシステムの導入コストを下げるための阻害要因となっていた。
このような障害回復処理を行う場合、自律ストレージ装置自体の処理とともに、ネットワークを介したデータ転送を伴うため、従来の自律ストレージシステムは、クライアントコンピュータ等に対するサービスを低下させてしまうという問題がある。
さらに、従来の自律ストレージシステムでは、原データを記憶している自律ストレージ装置と、そのバックアップデータを記憶している自律ストレージ装置とが同時に故障した場合、そのデータが回復できなくなるという問題がある。
そして、コンテンツ記憶装置は、分割されたすべてコンテンツブロックと、1つ以上の誤り訂正符号ブロックとを、複数の記憶装置に分散して記憶する。
これによって、コンテンツ記憶装置は、コンテンツブロックが記憶装置から読み出せない等の障害があった場合でも、動作中に、誤り訂正の範囲内で、コンテンツブロックの誤り訂正を行い、消失したコンテンツブロックを回復させることができる。
そして、自律ストレージ装置は、当該自律ストレージ装置に記憶するブロックとして設定されたブロックと、ブロック受信手段で受信したブロックとをコンテンツ記憶手段に記憶する。
そして、自律ストレージ装置は、ブロック誤り訂正手段によって、ブロック収集手段で収集されたブロックと、コンテンツ記憶手段に記憶されているブロックとにより、コンテンツブロックの誤り訂正を行う。さらに、自律ストレージ装置は、ブロック結合手段によって、誤り訂正がなされたコンテンツブロックを結合してコンテンツを生成する(回復させる)。
そして、自律ストレージ装置は、誤り訂正符号サブブロック生成手段によって、ブロック分割手段で分割されたすべてのデータサブブロックに対する誤り訂正符号からなる誤り訂正符号サブブロックを生成する。この誤り訂正符号サブブロックは、各データサブブロックの先頭ビット、先頭バイト等から順番に誤り訂正符号を生成し、ビット毎、バイト毎等のデータサブブロックに対応するデータ毎に配列したデータである。なお、誤り訂正符号は、誤り訂正符号ブロックと同様に、排他的論理和、リードソロモン符号等の一般的な符号を用いることができる。すなわち、誤り訂正符号サブブロックは、その誤り訂正符号によって、1つのサブブロックである場合、あるいは、2つ以上のサブブロックとなる場合がある。
そして、自律ストレージ装置は、分割されたすべてのデータサブブロックと、1つ以上の誤り訂正符号サブブロックとを、複数の記憶装置に分散して記憶する。
そして、自律ストレージ装置は、コンテンツを回復させる場合、ブロック収集手段によって、コンテンツに対応する、他の自律ストレージ装置に記憶されているブロックを収集する。
そして、コンテンツ分散プログラムは、書き込み手段によって、分割されたすべてのコンテンツブロックと、1つ以上の誤り訂正符号ブロックとを、複数の記憶装置に分散して記憶する。
そして、コンテンツ分散プログラムは、記憶先設定手段によって、予め定めた規則により、コンテンツブロック及び誤り訂正符号ブロックの各ブロックを、当該自律ストレージ装置に記憶するブロック、又は、他の自律ストレージ装置に記憶するブロックに設定する。
そして、コンテンツ分散プログラムは、書き込み手段によって、当該自律ストレージ装置に記憶するブロックとして設定されたブロックと、ブロック受信手段で受信したブロックとをコンテンツ記憶手段に記憶する。
そして、コンテンツ分散プログラムは、読み出し手段によって、コンテンツに対応するブロックをコンテンツ記憶手段から読み出す。そして、コンテンツ分散プログラムは、ブロック誤り訂正手段によって、ブロック収集手段で収集されたブロックと、コンテンツ記憶手段から読み出されたブロックとにより、コンテンツブロックの誤り訂正を行う。そして、コンテンツ分散プログラムは、ブロック結合手段によって、誤り訂正がなされたコンテンツブロックを結合してコンテンツを生成する(回復させる)。
また、本発明によれば、コンテンツ単位で、誤り訂正符号ブロックを生成しているため、障害が発生した自律ストレージ装置に記憶させてあったコンテンツを回復させる場合に、従来のRAIDシステムのように、障害が発生した記憶装置全体の記憶領域のデータを誤り訂正する必要がなく、コンテンツ単位で回復を行うことが可能になる。これによって、障害回復の時間を短くすることができる。
また、本発明によれば、コンテンツを自律ストレージ装置間で分散するとともに、同一自律ストレージ装置内でも分散することによって、自律ストレージ装置間及び同一自律ストレージ装置内でそれぞれ誤り訂正を行うため、いずれか一方の誤り訂正が行えない場合であっても、他方の誤り訂正によって、コンテンツを回復させることができるため、コンテンツの安全性を高めることができる。
[自律ストレージシステムの構成]
まず、図1を参照して、本発明に係る自律ストレージシステムの構成について、その概要を説明する。図1は、本発明に係る自律ストレージシステムの構成を示す概略ブロック図である。
なお、自律ストレージ装置2は、システム管理手段20と、コンテンツ記憶手段30とを備え(詳細な構成については後記する)、システム管理手段20によって、他の自律ストレージ装置との間で協働することで、コンテンツを分散してコンテンツ記憶手段30に記憶するものである。
なお、ホストコンピュータは、自律ストレージシステム1の予め定めた1台とすることとしてもよいし、クライアントコンピュータ5等から要求のあった自律ストレージ装置2が、ホストコンピュータとなって、他の自律ストレージ装置2と協働して、コンテンツの記憶先を決定することとしてもよい。
ここで、図1を参照して、自律ストレージシステム1におけるコンテンツの分散記憶方法について、その概要を説明する。
自律ストレージシステム1は、記憶するコンテンツを複数のブロック(コンテンツブロック)に分割するとともに、その分割したブロックに対する誤り訂正符号となるブロック(誤り訂正符号ブロック)を生成し、そのコンテンツブロック及び誤り訂正符号ブロックを、複数の自律ストレージ装置2に分散して記憶する。
このように、誤り訂正符号ブロックを付加して、コンテンツを分散させることで、いずれかの自律ストレージ装置2に障害が発生した場合であっても、コンテンツを回復させることができる。
図2に示すように、自律ストレージ装置2は、コンテンツ記憶手段30として複数(ここでは一例として5台)の記憶装置300を備えている。そして、自律ストレージ装置2は、記憶するブロックを複数のサブブロック(データサブブロック)に分割するとともに、その分割したデータサブブロックに対する誤り訂正符号となるサブブロック(誤り訂正符号サブブロック)を生成し、そのデータサブブロック及び誤り訂正符号サブブロックを、複数の記憶装置300に分散して記憶する。
このように、誤り訂正符号サブブロックを付加して、ブロック(コンテンツブロック又は誤り訂正符号ブロック)を分散させることで、いずれかの記憶装置300に障害が発生した場合であっても、ブロックを回復させることができる。
次に、図3を参照して、本発明に係る自律ストレージ装置の構成について詳細に説明する。図3は、本発明に係る自律ストレージ装置の構成を示すブロック図である。
図3に示すように、自律ストレージ装置2は、通信送受信手段10と、システム管理手段20と、コンテンツ記憶手段30とを備えている。
なお、コンテンツ分割手段21bは、コンテンツを分割する分割数を、コンテンツ毎に定めることとしてもよい。
また、誤り訂正符号ブロック生成手段21cは、コンテンツ分割手段21bにおいて、コンテンツが等分に分割されなかった場合、例えば、図1において、コンテンツブロックC1-2及びC1-3又はコンテンツブロックC1-3のバイト長が、コンテンツブロックC1-1よりも1バイト短い場合、そのバイト長の短いコンテンツブロックに、値が“0x00”となる1バイト分のデータ(ダミーデータ)を付加して排他的論理和演算を行う。
なお、ここでは、バイト単位で誤り訂正符号を生成することとしたが、ビット単位で誤り訂正符号を生成することとしてもよい。
なお、ブロック分割手段21dは、ブロックを分割する分割数を、ブロック毎に定めることとしてもよい。
また、この誤り訂正符号には、誤り訂正符号ブロック生成手段21cと同様に一般的な誤り訂正符号を用いることが可能で、リードソロモン符号等を用いることとしてもよい。例えば、リードソロモン(n,k)符号を用いる場合、誤り訂正符号サブブロック生成手段21eは、k個のデータサブブロックに対して、(n−k)個の誤り訂正符号サブブロックを生成する。これによって、(n−k)個のデータサブブロックの消失に対して、データサブブロックの回復が可能になる。
なお、誤り訂正符号サブブロック生成手段21eは、コンテンツ操作制御手段26から通知されるサブブロック(データサブブロック及び誤り訂正符号サブブロック)の記憶先(記憶装置300)に基づいて、書き込み手段28を介して、サブブロックをコンテンツ記憶手段30の各記憶装置300に分散して記憶する。
なお、ブロック受信手段21fは、コンテンツ操作制御手段26から通知されるブロックの出力先により、受信したブロックの出力先を、ブロック分割手段21dかブロック誤り訂正手段22cかのいずれか一方に出力する。
また、自律ストレージ装置21がホストコンピュータとして機能する場合に、ブロック受信手段21fがブロックをブロック誤り訂正手段22cに出力することを指示されることで、当該ブロックはコンテンツを回復させるために使用されることになる。
例えば、誤り訂正符号サブブロックが、複数のデータサブブロックの排他的論理和演算によって生成されたものであって、あるデータサブブロックにおいて、データが消失した場合、あるいは、記憶装置300の障害等によってデータサブブロックが読み出せない場合、サブブロック誤り訂正手段22aは、正常に読み出せたデータサブブロックと、誤り訂正符号サブブロックとを排他的論理和演算することで、消失したデータサブブロック、あるいは、読み出せなかったデータサブブロックを回復させる。
このサブブロック誤り訂正手段22aにおいて、誤り訂正がなされたデータサブブロックは、サブブロック結合手段22bに出力される。
なお、サブブロック誤り訂正手段22aは、複数の記憶装置300の障害によって、データサブブロックの誤り訂正が行えない場合、その旨をサブブロック結合手段22bに出力する。
なお、サブブロック結合手段22bは、コンテンツ操作制御手段26から通知される送信先により、ブロックの出力先を、ブロック誤り訂正手段22cかブロック送信手段22fかのいずれか一方に出力する。
また、自律ストレージ装置21が非ホストコンピュータとして機能する場合、サブブロック結合手段22bがブロックをブロック送信手段22fに出力することを指示されることで、当該ブロックはホストコンピュータ(他の自律ストレージ装置2)でコンテンツを回復させるために使用されることになる。
なお、サブブロック結合手段22bは、サブブロック誤り訂正手段22aにおいて、誤り訂正が行えなかった場合には、当該ブロックを障害ブロックとしてブロック誤り訂正手段22c又はブロック送信手段22fに出力する。
このブロック誤り訂正手段22cにおいて、誤り訂正がなされたコンテンツブロックは、ブロック結合手段22dに出力される。
なお、ブロック誤り訂正手段22cは、障害ブロックが複数あって、コンテンツブロックの誤り訂正が行えない場合、その旨をコンテンツ管理手段25に通知し、コンテンツを要求したクライアントコンピュータ等に通知する。
ここで、制御情報は、コンテンツを格納する(書き込む)旨を示すコンテンツ格納指示、コンテンツを配信する(読み出す)旨を示すコンテンツ配信指示、ブロックを格納する(書き込む)旨を示すブロック格納指示、ブロックを配信する(読み出す)旨を示すブロック配信指示等、あるいはこれらの指示に対する応答等である。
なお、この役割設定手段25aは、例えば、クライアントコンピュータから、コンテンツ格納指示を制御情報として受信した場合、その制御情報を受信した自律ストレージ装置を、ホストコンピュータとして設定する。あるいは、他の自律ストレージ装置と協働し、コンテンツ記憶手段30に記憶されているコンテンツの量が最も少ない自律ストレージ装置をホストコンピュータとして設定することとしてもよい。
例えば、コンテンツブロックの先頭となるブロックを、当該自律ストレージ装置21に記憶し、他のブロックを当該自律ストレージ装置21に論理的に隣接する(例えば、IPアドレスが昇順となる)自律ストレージ装置に順番に記憶するといった規則を予め定めておくことで、記憶先設定手段25bは、各ブロックの記憶先を設定する。
この記憶先設定手段25bで設定された記憶先は、コンテンツ記憶手段30のいずれか決められた記憶装置300になるとともに、コンテンツ操作制御手段26を介して、コンテンツ格納手段21に出力される。
なお、各ブロックは、必ずしも論理的に隣接する自律ストレージ装置の順番に記憶される必要はなく、予め規則として定めたものであれば、どの自律ストレージ装置に記憶されてもよい。
このブロック収集手段25cは、コンテンツ配信指示を制御情報として受信した場合に、記憶先設定手段25bで設定された記憶先に基づいて、要求のあったコンテンツを構成するブロックを収集するための、ブロック配信指示を他の自律ストレージ装置に送信する。これによって、他の自律ストレージ装置に分散して記憶されているブロックが、当該自律ストレージ装置21に配信されることになる。
記憶装置300は、サブブロックを記憶するもので、ハードディスク等の一般的な記憶装置である。
また、1つのブロックC1-1は、複数(ここでは3つ)のサブブロック(データサブブロック)C1-1-1,C1-1-2,C1-1-3に対して、1つの誤り訂正符号サブブロックC1-1-Pが生成され、自律ストレージ装置21のコンテンツ記憶手段30内の4台の記憶装置3001,3002,3003,3004に分散されて記憶される。
さらに、サブブロック(データサブブロック)C1-1-1,C1-1-2,C1-1-3において、コンテンツブロックと同様に、1つのデータサブブロックが読み出せない場合であっても、他の読み出し可能なデータサブブロック及び誤り訂正符号サブブロックによって、読み出し不可のデータサブブロックを回復させることができる。
また、1つのブロックC1-1は、複数(ここでは3つ)のサブブロック(データサブブロック)C1-1-1,C1-1-2,C1-1-3に対して、2つの誤り訂正符号サブブロックC1-1-P1,C1-1-P2が生成され、自律ストレージ装置21のコンテンツ記憶手段30内の5台の記憶装置3001,3002,3003,3004,3005に分散されて記憶される。
さらに、サブブロック(データサブブロック、誤り訂正符号サブブロック)C1-1-1,C1-1-2,C1-1-3,C1-1-P1,C1-1-P2のいずれか2つ、あるいは、記憶装置3001,3002,3003,3004,3005のいずれか2台に障害が発生し、いずれか2つのサブブロックが読み出せない場合であっても、他の読み出し可能なデータサブブロック及び誤り訂正符号サブブロックによって、読み出し不可のデータサブブロックを回復させることができる。
例えば、自律ストレージ装置2は、コンテンツを分割したブロックを、サブブロックに分割せずにそのまま記憶することとしてもよい。すなわち、図5に示したように、図3の自律ストレージ装置2の構成から、ブロック分割手段21d及び誤り訂正符号サブブロック生成手段21eを省略したコンテンツ格納手段21B、サブブロック誤り訂正手段22a及びサブブロック結合手段22bを省略したコンテンツ配信手段22Bとし、コンテンツ記憶手段30の記憶装置300を1台とした簡略化した構成の自律ストレージ装置2Bとしてもよい。この場合であっても、コンテンツは、ブロック単位で複数の自律ストレージ装置に誤り訂正符号ブロックとともに分散されるため、いずれかの自律ストレージ装置に障害があった場合でも、コンテンツを回復させることができる。
次に、図7及び図8を参照して、自律ストレージシステムの動作について説明する。図7は、自律ストレージシステムにおけるコンテンツの書き込み動作を示すフローチャートである。図8は、自律ストレージシステムにおけるコンテンツの読み出し動作を示すフローチャートである。
最初に、図7を参照(適宜図1及び図3参照)して、自律ストレージシステムにおけるコンテンツの書き込み動作について説明する。
まず、自律ストレージシステム1内の任意の1台である自律ストレージ装置(ここでは、自律ストレージ装置21とする)が、制御情報受信手段23によって、クライアントコンピュータ5から、コンテンツを記憶する自律ストレージ装置を問い合わせる「コンテンツ転送先要求」を、通信送受信手段10を介して受信する(ステップS1)。
そして、自律ストレージ装置21は、コンテンツ管理手段25の役割設定手段25aによって、他の自律ストレージ装置(ここでは、自律ストレージ装置22〜211)と協働して、各自律ストレージ装置の役割を設定(決定)する(ステップS2,S2n)。例えば、役割設定手段25aは、コンテンツ記憶手段30に記憶されているコンテンツの量が最も少ない自律ストレージ装置をホストコンピュータとして設定する。ここでは、自律ストレージ装置21が、ホストコンピュータとして設定されたこととする。
そして、自律ストレージ装置21は、コンテンツ格納手段21のコンテンツ受信手段21aによって、クライアントコンピュータ5から、通信送受信手段10を介してコンテンツを受信する(ステップS4)。
そして、自律ストレージ装置21は、コンテンツ分割手段21bによって、ステップS4で受信したコンテンツを、予め定めた分割数のブロック(コンテンツブロック)に分割する(ステップS5)。なお、ここでは、コンテンツを3分割することとする。
そして、自律ストレージ装置21は、記憶先設定手段25bによって、予め定めた規則に基づいて、ブロック(コンテンツブロック及び誤り訂正符号ブロック)の記憶先を設定(決定)し、各ブロックをその記憶先に送信する。ここでは、分割した先頭のブロックを自律ストレージ装置21内に記憶することとし、他のブロックを非ホストコンピュータである他の自律ストレージ装置22〜24に送信する(ステップS7)。
そして、自律ストレージ装置21は、ブロック分割手段21dによって、当該自律ストレージ装置21内に記憶するブロックを、予め定めた分割数のサブブロック(データサブブロック)に分割する(ステップS8)。
そして、自律ストレージ装置21は、書き込み手段28によって、コンテンツ管理手段25が、コンテンツ操作制御手段26を介して、コンテンツ格納手段21に通知したサブブロックの記憶位置に基づいて、ステップS8で分割されたデータサブブロックと、ステップS9で生成された誤り訂正符号サブブロックとを、複数の記憶装置300に分散して記憶する(ステップS10)。
そして、自律ストレージ装置22は、ブロック分割手段21dによって、ステップS72で受信したブロックを、予め定めた分割数のサブブロック(データサブブロック)に分割する(ステップS82)。
そして、自律ストレージ装置22は、書き込み手段28によって、ステップS82で分割されたデータサブブロックと、ステップS92で生成された誤り訂正符号サブブロックとを、コンテンツ記憶手段30内の複数の記憶装置300に分散して記憶する(ステップS102)。
なお、他の非ホストコンピュータとして機能する自律ストレージ装置23及び24の動作(ステップS73〜S103及びステップS74〜S104)は、自律ストレージ装置22の動作(ステップS72〜S102)と同一であるため、説明を省略する。
次に、図8を参照(構成については適宜図1及び図3参照)して、自律ストレージシステムにおけるコンテンツの読み出し動作について説明する。
まず、自律ストレージシステム1内の任意の1台である自律ストレージ装置(ここでは、自律ストレージ装置21とする)が、制御情報受信手段23によって、クライアントコンピュータ5から、コンテンツを記憶している自律ストレージ装置を問い合わせる「コンテンツ転送元要求」を、通信送受信手段10を介して受信する(ステップS11)。
そして、自律ストレージ装置21は、コンテンツ管理手段25の役割設定手段25aによって、他の自律ストレージ装置(ここでは、自律ストレージ装置22〜211)と協働して、各自律ストレージ装置の役割を設定(決定)する(ステップS12,S12n)。例えば、役割設定手段25aは、要求のあったコンテンツを記憶している自律ストレージ装置の中で、先頭のブロックを記憶している自律ストレージ装置をホストコンピュータとして設定する。ここでは、自律ストレージ装置21が、ホストコンピュータとして設定されたこととする。
そして、自律ストレージ装置21は、制御情報受信手段23によって、クライアントコンピュータ5から、通信送受信手段10を介して、コンテンツの配信要求を示す「コンテンツ配信指示」を制御情報として受信する(ステップS14)。
そして、自律ストレージ装置21は、コンテンツ管理手段25のブロック収集手段25cによって、当該コンテンツに対応するブロックが記憶されている他の自律ストレージ装置(ここでは、自律ストレージ装置22〜24)に、ブロックの配信要求を示す「ブロック配信指示」を送信する(ステップS15)。
そして、コンテンツ管理手段25が、コンテンツ操作制御手段26を介して、コンテンツ配信手段22に、ブロックを構成するサブブロックの記憶位置を通知する。
そして、自律ストレージ装置22は、コンテンツ配信手段22のサブブロック誤り訂正手段22aによって、コンテンツ記憶手段30内の記憶装置300からサブブロック(データサブブロック及び誤り訂正符号サブブロック)を、読み出し手段27を介して読み出し、データサブブロックの誤り訂正を行う(ステップS162)。
そして、自律ストレージ装置22は、ブロック送信手段22fによって、ステップS172で生成されたブロックを、ホストコンピュータである自律ストレージ装置21に送信する(ステップS182)。
なお、他の非ホストコンピュータとして機能する自律ストレージ装置23及び24の動作(ステップS153〜S183及びステップS154〜S184)は、自律ストレージ装置22の動作(ステップS152〜S182)と同一であるため、説明を省略する。
さらに、自律ストレージ装置21は、サブブロック結合手段22bによって、ステップS16で誤り訂正がなされたデータサブブロックを結合し、ブロック(コンテンツブロック又は誤り訂正符号ブロック)を生成する(ステップS17)。
そして、自律ストレージ装置21は、ブロック誤り訂正手段22cによって、ステップ17で生成したブロックと、ステップS18で受信したブロックとに基づいて、コンテンツブロックの誤り訂正を行う(ステップS19)。
さらに、自律ストレージ装置21は、ブロック結合手段22dによって、ステップS19で誤り訂正がなされたコンテンツブロックを結合し、コンテンツを生成する(ステップS20)。
そして、自律ストレージ装置21は、コンテンツ送信手段22eによって、ステップS20で生成されたコンテンツを、通信送受信手段10を介してクライアントコンピュータ5に送信する(ステップS21)。
すなわち、本発明は、自律ストレージ装置内のいずれの記憶装置が故障してデータが消失した場合においても誤り訂正が可能であることから、障害が発生した自律ストレージ装置を交換する等の物理的な復旧を早急に行う必要はない。これらの物理的復旧は、例えば、夜間、休日等のサービスの提供を行わない日時に行えばよい。
次に、自律ストレージシステム1の保守動作について説明する。
(自律ストレージ装置切り離し処理及び障害回復処理)
まず、図9を参照(適宜図1及び図3参照)して、障害が発生した自律ストレージ装置を自律ストレージシステム1から切り離す障害回復動作について説明する。なお、本動作は、自律ストレージ装置を保守するために切り離す場合も同様である。図9は、自律ストレージ装置の保守又は障害時に、自律ストレージ装置をシステムから切り離す動作を説明するための説明図であって、(a)は切り離し時におけるブロック移動、(b)は切り離し後(回復後)のブロックの記憶状態を模式的に示している。
ここでは、図9(a)に示すように、自律ストレージシステム1が11台の自律ストレージ装置21〜211で構成され、コンテンツが3つのデータコンテンツ(例えば、C2-1,C2-2及びC2-3)と1つの誤り訂正符号ブロック(例えば、C2-P)に分割されて、論理的に隣接する自律ストレージ装置に連続性を持って記憶されているものとする。また、ここでは、自律ストレージ装置25に障害が発生したとする。
例えば、ブロックC2-1を、自律ストレージ装置26に移動させると、それに伴って、ブロックC2-2,C2-3及びC2-Pをさらに隣接する自律ストレージ装置27〜29にそれぞれ移動させなければならない。
そこで、ここでは、移動させるブロックの数を判定し、その数が最も少なくなるように、ブロックC2-1を自律ストレージ装置24に移動させることとする。
この規則によって、ブロックC4-Pを自律ストレージ装置26に移動させ、ブロックC7-3を自律ストレージ装置26、ブロックC7-Pを自律ストレージ装置27にそれぞれ移動させ、ブロックC10-2を自律ストレージ装置24、ブロックC10-1を自律ストレージ装置23にそれぞれ移動させる。
図9(a)において、ブロックC2-1を移動(回復)させる場合、自律ストレージ装置26は、移動対象となるブロックを無効(アクセス禁止)とし、ブロック収集手段25cによって、自律ストレージ装置27及び28に対してブロックC2-2、C2-3及びC2-Pの配信要求を示す「ブロック配信指示」を送信する。
そして、自律ストレージ装置26は、ブロック受信手段21fによって、ブロックC2-3及びC2-Pを受信し、ブロック誤り訂正手段22cによって、受信したブロックC2-3及びC2-Pと自律ストレージ装置26自身が記憶しているブロックC2-2とにより、誤り訂正を行ったブロックC2-1を生成する。ここで、自律ストレージ装置26は、通常の動作時のようにブロックC2-1をブロック結合手段22dに出力せずに、ブロック送信手段22fに出力することで、ブロックC2-1を移動先の自律ストレージ装置24に送信する。
以上の動作によって、自律ストレージシステム1は、サービスを停止させることなく、障害回復を行うことが可能になる。
次に、図10を参照(適宜図1及び図3参照)して、自律ストレージシステム1に新規に自律ストレージ装置を追加する自律ストレージ装置追加処理動作について説明する。図10は、自律ストレージ装置追加処理動作を説明するための説明図であって、(a)は自律ストレージ装置追加時におけるブロック移動、(b)は自律ストレージ装置追加後のブロック記憶状態を模式的に示している。なお、図10(a)は、図9(b)の状態から、新規に自律ストレージ装置22Bを追加する例を示している。
例えば、ブロックC4-2を自律ストレージ装置22Bに移動させると、それに伴って、ブロックC4-3及びC4-Pをさらに隣接する自律ストレージ装置23及び24にそれぞれ移動させなければならない。
そこで、ここでは、移動させるブロックの数を判定し、その数が最も少なくなるように、ブロックC4-1を自律ストレージ装置22Bに移動させることとする。なお、移動させるブロックの数が等しい場合は、例えば、コンテンツの先頭ブロックを移動させないように、後方のブロックを移動させることとする。
この規則によって、ブロックC1-3を自律ストレージ装置22B、ブロックC1-Pを自律ストレージ装置23にそれぞれ移動させ、ブロックC9-Pを自律ストレージ装置22Bに移動させる。
これによって、図10(b)に示すように、自律ストレージ装置22Bを追加した状態で、コンテンツを構成するブロックが、論理的に隣接する自律ストレージ装置に連続性を持って記憶されることになる。
ここで、自律ストレージ装置22Bは、論理的に隣接する左右それぞれ2つの自律ストレージ装置21,22,23及び24から、制御情報受信手段23を介して、それぞれが記憶しているブロックの情報を取得する。そして、自律ストレージ装置22Bは、自律ストレージ装置22B自身に移動(追加)させるブロックの数が最も少なくなるように、コンテンツ管理手段25によって、ブロックの移動手順を決定する。
図10(a)において、ブロックC4-1を移動させる場合、自律ストレージ装置22Bは、移動対象となるブロックを無効(アクセス禁止)とし、ブロック収集手段25cによって、自律ストレージ装置22に対してブロックC4-1の配信要求を示す「ブロック配信指示」を送信する。
これによって、追加された自律ストレージ装置22Bによって連続性が断たれたコンテンツのブロックが、最小限の移動によってその連続性が回復することになる。
2、2B 自律ストレージ装置
2C コンテンツ記憶装置
10 通信送受信手段
20 システム管理手段
21 コンテンツ格納手段
21a コンテンツ受信手段
21b コンテンツ分割手段
21c 誤り訂正符号ブロック生成手段
21d ブロック分割手段
21e 誤り訂正符号サブブロック生成手段
22 コンテンツ配信手段
22a サブブロック誤り訂正手段
22b サブブロック結合手段
22c ブロック誤り訂正手段
22d ブロック結合手段
22e コンテンツ送信手段
22f ブロック送信手段
23 制御情報受信手段
24 制御情報送信手段
25 コンテンツ管理手段
25a 役割設定手段
25b 記憶先設定手段
25c ブロック収集手段
26 コンテンツ操作制御手段
27 読み出し手段
28 書き込み手段
30 コンテンツ記憶手段
300 記憶装置
Claims (8)
- コンテンツを複数の記憶装置に分散して記憶するコンテンツ記憶装置であって、
前記コンテンツを、予め定めた分割数のコンテンツブロックに分割するコンテンツ分割手段と、
このコンテンツ分割手段で分割されたすべてのコンテンツブロックに基づいて、当該分割されたコンテンツブロックに対する誤り訂正符号からなる誤り訂正符号ブロックを生成する誤り訂正符号ブロック生成手段と、
前記コンテンツ分割手段で分割されたコンテンツブロックと、前記誤り訂正符号ブロック生成手段で生成された誤り訂正符号ブロックとを分散して記憶する前記複数の記憶装置と、
を備えていることを特徴とするコンテンツ記憶装置。 - 前記複数の記憶装置に記憶されている前記コンテンツブロックと、前記誤り訂正符号ブロックとに基づいて、前記コンテンツブロックの誤り訂正を行うブロック誤り訂正手段と、
このブロック誤り訂正手段で誤り訂正がなされた前記コンテンツブロックを結合し、前記コンテンツを生成するブロック結合手段と、
を備えていることを特徴とする請求項1に記載のコンテンツ記憶装置。 - ネットワークに複数接続されて、コンテンツを分散して記憶する自律ストレージ装置において、
前記コンテンツを、予め定めた分割数のコンテンツブロックに分割するコンテンツ分割手段と、
このコンテンツ分割手段で分割されたすべてのコンテンツブロックに基づいて、当該分割されたコンテンツブロックに対する誤り訂正符号からなる誤り訂正符号ブロックを生成する誤り訂正符号ブロック生成手段と、
予め定めた規則に基づいて、前記分割されたコンテンツブロック及び前記誤り訂正符号ブロックの各ブロックを、当該自律ストレージ装置に記憶するブロック、又は、他の自律ストレージ装置に記憶するブロックに設定する記憶先設定手段と、
この記憶先設定手段で他の自律ストレージ装置に記憶するブロックとして設定されたブロックを、前記他の自律ストレージ装置に送信するブロック送信手段と、
前記他の自律ストレージ装置から、当該自律ストレージ装置に記憶するブロックとして設定されたブロックを、前記他の自律ストレージ装置から受信するブロック受信手段と、
前記記憶先設定手段で当該自律ストレージ装置に記憶するブロックとして設定されたブロックと、前記ブロック受信手段で受信したブロックとを記憶するコンテンツ記憶手段と、
を備えていることを特徴とする自律ストレージ装置。 - 前記規則に基づいて、前記コンテンツに対応する、他の自律ストレージ装置に記憶されているブロックを収集するブロック収集手段と、
このブロック収集手段で収集されたブロックと、前記コンテンツに対応する、前記コンテンツ記憶手段に記憶されているブロックとに基づいて、前記コンテンツブロックの誤り訂正を行うブロック誤り訂正手段と、
このブロック誤り訂正手段で誤り訂正がなされた前記コンテンツブロックを結合し、前記コンテンツを生成するブロック結合手段と、
を備えていることを特徴とする請求項3に記載の自律ストレージ装置。 - 前記記憶先設定手段で当該自律ストレージ装置に記憶するブロックとして設定されたブロック及び前記ブロック受信手段で受信したブロックの各ブロックを、予め定めた分割数のサブブロックであるデータサブブロックに分割するブロック分割手段と、
このブロック分割手段で分割されたすべてのデータサブブロックに対する誤り訂正符号からなる誤り訂正符号サブブロックを生成する誤り訂正符号サブブロック生成手段とを備え、
前記コンテンツ記憶手段が、前記分割されたデータサブブロックと前記誤り訂正符号サブブロックとを分散して記憶する複数の記憶装置を備えていることを特徴とする請求項3に記載の自律ストレージ装置。 - 前記記憶装置に分散して記憶されている前記データサブブロックと前記誤り訂正符号サブブロックとに基づいて、前記データサブブロックの誤り訂正を行うサブブロック誤り訂正手段と、
このサブブロック誤り訂正手段で誤り訂正がなされたデータサブブロックを結合し、前記ブロックを生成するサブブロック結合手段と、
前記規則に基づいて、前記コンテンツに対応する、他の自律ストレージ装置に記憶されているブロックを収集するブロック収集手段と、
このブロック収集手段で収集されたブロックと、前記サブブロック結合手段で生成されたブロックとに基づいて、前記コンテンツブロックの誤り訂正を行うブロック誤り訂正手段と、
このブロック誤り訂正手段で誤り訂正がなされた前記コンテンツブロックを結合し、前記コンテンツを生成するブロック結合手段と、
を備えていることを特徴とする請求項5に記載の自律ストレージ装置。 - コンテンツを複数の記憶装置に分散して記憶するコンテンツ記憶装置で、前記コンテンツを誤り訂正するために、コンピュータを、
前記コンテンツを、予め定めた分割数のコンテンツブロックに分割するコンテンツ分割手段、
このコンテンツ分割手段で分割されたすべてのコンテンツブロックに基づいて、当該分割されたコンテンツブロックに対する誤り訂正符号からなる誤り訂正符号ブロックを生成する誤り訂正符号ブロック生成手段、
前記コンテンツ分割手段で分割されたコンテンツブロックと、前記誤り訂正符号ブロック生成手段で生成された誤り訂正符号ブロックとを分散して前記複数の記憶装置に書き込む書き込み手段、
前記複数の記憶装置に記憶されている前記コンテンツブロックと、前記誤り訂正符号ブロックとを、前記複数の記憶装置から読み出す読み出し手段、
この読み出し手段で読み出されたコンテンツブロックと、誤り訂正符号ブロックとに基づいて、前記コンテンツブロックの誤り訂正を行うブロック誤り訂正手段、
このブロック誤り訂正手段で誤り訂正がなされた前記コンテンツブロックを結合し、前記コンテンツを生成するブロック結合手段、
として機能させることを特徴とするのコンテンツ分散プログラム。 - ネットワークに複数接続されて、コンテンツを分散して記憶する自律ストレージ装置で、前記コンテンツを誤り訂正するために、コンピュータを、
前記コンテンツを、予め定めた分割数のコンテンツブロックに分割するコンテンツ分割手段、
このコンテンツ分割手段で分割されたすべてのコンテンツブロックに基づいて、当該分割されたコンテンツブロックに対する誤り訂正符号からなる誤り訂正符号ブロックを生成する誤り訂正符号ブロック生成手段、
予め定めた規則に基づいて、前記分割されたコンテンツブロック及び前記誤り訂正符号ブロックの各ブロックを、当該自律ストレージ装置に記憶するブロック、又は、他の自律ストレージ装置に記憶するブロックに設定する記憶先設定手段、
この記憶先設定手段で他の自律ストレージ装置に記憶するブロックとして設定されたブロックを、前記他の自律ストレージ装置に送信するブロック送信手段、
前記他の自律ストレージ装置から、当該自律ストレージ装置に記憶するブロックとして設定されたブロックを、前記他の自律ストレージ装置から受信するブロック受信手段、
前記記憶先設定手段で当該自律ストレージ装置に記憶するブロックとして設定されたブロックと、前記ブロック受信手段で受信したブロックとをコンテンツ記憶手段に書き込む書き込み手段、
前記規則に基づいて、前記コンテンツに対応する、他の自律ストレージ装置に記憶されているブロックを収集するブロック収集手段、
前記コンテンツに対応するブロックを前記コンテンツ記憶手段から読み出す読み出し手段、
前記ブロック収集手段で収集されたブロックと、前記読み出し手段で読み出されたブロックとに基づいて、前記コンテンツブロックの誤り訂正を行うブロック誤り訂正手段、
このブロック誤り訂正手段で誤り訂正がなされた前記コンテンツブロックを結合し、前記コンテンツを生成するブロック結合手段、
として機能させることを特徴とするコンテンツ分散プログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005148905A JP2006330779A (ja) | 2005-05-23 | 2005-05-23 | 自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005148905A JP2006330779A (ja) | 2005-05-23 | 2005-05-23 | 自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006330779A true JP2006330779A (ja) | 2006-12-07 |
Family
ID=37552440
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005148905A Pending JP2006330779A (ja) | 2005-05-23 | 2005-05-23 | 自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006330779A (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008097156A (ja) * | 2006-10-06 | 2008-04-24 | Fujitsu Ltd | 記憶制御装置、記憶制御方法および記憶制御プログラム |
WO2013132877A1 (ja) * | 2012-03-08 | 2013-09-12 | 株式会社 東芝 | ビデオサーバ装置及びそのリビルド処理制御方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05314674A (ja) * | 1991-04-01 | 1993-11-26 | Hitachi Ltd | 記憶装置の障害回復システム及びその方法 |
JP2001356882A (ja) * | 2000-06-13 | 2001-12-26 | Nec Corp | データ読み書き制御方法及びディスクアレイ装置並びにデータ読み書き制御用プログラムを記憶した記録媒体 |
JP2004334739A (ja) * | 2003-05-12 | 2004-11-25 | Tokyo Institute Of Technology | データのバックアップ方法及びバックアップデータ復旧方法、並びに、ネットワーク蓄積装置及びネットワーク蓄積プログラム |
-
2005
- 2005-05-23 JP JP2005148905A patent/JP2006330779A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05314674A (ja) * | 1991-04-01 | 1993-11-26 | Hitachi Ltd | 記憶装置の障害回復システム及びその方法 |
JP2001356882A (ja) * | 2000-06-13 | 2001-12-26 | Nec Corp | データ読み書き制御方法及びディスクアレイ装置並びにデータ読み書き制御用プログラムを記憶した記録媒体 |
JP2004334739A (ja) * | 2003-05-12 | 2004-11-25 | Tokyo Institute Of Technology | データのバックアップ方法及びバックアップデータ復旧方法、並びに、ネットワーク蓄積装置及びネットワーク蓄積プログラム |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008097156A (ja) * | 2006-10-06 | 2008-04-24 | Fujitsu Ltd | 記憶制御装置、記憶制御方法および記憶制御プログラム |
US8046630B2 (en) | 2006-10-06 | 2011-10-25 | Fujitsu Limited | Storage control apparatus, storage control method, and computer product |
WO2013132877A1 (ja) * | 2012-03-08 | 2013-09-12 | 株式会社 東芝 | ビデオサーバ装置及びそのリビルド処理制御方法 |
JP2013186752A (ja) * | 2012-03-08 | 2013-09-19 | Toshiba Corp | ビデオサーバ装置及びそのリビルド処理制御方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10318380B2 (en) | Multi-stage slice recovery in a dispersed storage network | |
JP5285610B2 (ja) | グローバルホットスペアディスクが存在するときに、故障したドライブを復元、及びコピーバックする最適化された方法 | |
US10387249B2 (en) | Migrating data slices within a dispersed storage network | |
US8464094B2 (en) | Disk array system and control method thereof | |
US9442800B2 (en) | Data migration between a raid memory and a dispersed storage network memory | |
US9135115B2 (en) | Storing data in multiple formats including a dispersed storage format | |
US10142115B2 (en) | Distributed storage network data revision control | |
JP5285611B2 (ja) | グローバルホットスペアディスクが存在するときに、切断されたドライブを復元、及びコピーバックする最適化された方法 | |
US20060190683A1 (en) | Disk array apparatus and backup method of data | |
JP2008046986A (ja) | ストレージシステム | |
JP5241117B2 (ja) | Raidストレージ・システムのパリティ値を生成する方法及びアダプタを内蔵するraidストレージ・システム(エンクロージャベースのraidパリティ支援機構) | |
JP2006252126A (ja) | ディスクアレイ装置及びその再構築方法 | |
JP2012519318A (ja) | 計算機システムとそのデータ制御方法 | |
JP2006227964A (ja) | ストレージシステム、処理方法及びプログラム | |
US10552341B2 (en) | Zone storage—quickly returning to a state of consistency following an unexpected event | |
JP4144549B2 (ja) | データ保存システムおよび該システムの制御方法 | |
JP2006330779A (ja) | 自律ストレージ装置、コンテンツ記憶装置及びコンテンツ分散プログラム | |
US20030204539A1 (en) | Facility protection utilizing fault tolerant storage controllers | |
WO2010092634A1 (ja) | ストレージシステム | |
JP4272465B2 (ja) | バックアップデータ復旧方法、並びに、ネットワーク蓄積装置及びネットワーク蓄積プログラム | |
US10067998B2 (en) | Distributed sync list | |
JP2009020780A (ja) | ストレージ制御プログラム、ストレージ制御装置、ストレージ制御方法 | |
JP6536083B2 (ja) | ストレージ装置、ストレージシステム、及びリカバリプログラム | |
JP2014041523A (ja) | データ管理装置、及び、データ管理方法 | |
JP5125722B2 (ja) | ディスクアレイシステム、ディスク装置、筐体間ミラーリング方法およびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20061227 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080321 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20080321 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20080321 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110301 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110705 |