(57)【特許請求の範囲】
【請求項１】
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御装置であって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち１つのストレージノードに、前記再生成されたフラグメントを書込むデータ処理手段を備える、
制御装置。
【請求項２】
前記データ処理手段は、前記一のストレージノードの復旧後、前記１つのストレージノードに格納された前記再生成されたフラグメントを前記一のストレージノードに移動させる、
請求項１に記載の制御装置。
【請求項３】
前記データ処理手段は、前記複数のストレージノードの中に前記１つのストレージノードがある場合、前記１つのストレージノード以外の前記他のストレージノードから前記データブロックを復元するためのフラグメントを優先的に読込み、前記読込んだフラグメントから前記データブロックを復元する、
請求項１又は２に記載の制御装置。
【請求項４】
複数のストレージノードと、
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを前記複数のストレージノードに分散して格納させる制御装置を備えるストレージシステムであって、
制御装置は、前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納された前記フラグメントを用いて再生成し、前記他のストレージノードのうち１つのストレージノードに、再生成された前記フラグメントを書込むデータ処理手段を備える、
ストレージシステム。
【請求項５】
請求項４に記載の制御装置がアクセラレータノードである、ストレージシステム。
【請求項６】
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御方法であって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、
前記他のストレージノードのうち１つのストレージノードに、前記再生成されたフラグメントを書込む、
制御方法。
【請求項７】
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムを制御するプログラムであって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、
前記他のストレージノードのうち１つのストレージノードに、前記再生成されたフラグメントを書込む、
ことをコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置等に関し、特に、データを分散して複数のストレージノードに格納するストレージ制御に関する。
【背景技術】
【０００２】
コンピュータの発達及び普及に伴い、種々の情報がデジタルデータ化される中で大容量、かつ、高信頼のストレージシステムが必要とされている。
【０００３】
特許文献１には、ストレージ障害によるデータ損失を防ぐためにデータブロックを複数のストレージに分散配置するＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙｓ  ｏｆ  Ｉｎｅｘｐｅｎｓｉｖｅ  Ｄｉｓｋｓ）ストレージが記載されている。
【０００４】
また、特許文献２には、ＲＡＩＤストレージより強固な信頼性を実現する技術として、データブロックを分割し、冗長コードを付加したフラグメントを複数のストレージノードへ分散して格納するストレージシステムが記載されている。
【０００５】
図９は、フラグメントの生成と、ストレージノードへの分散を説明する説明図である。図９に示すように、データブロック３０が分割された分割データ３１に、データブロック３０を復元するためのパリティデータ３２が加えられた複数のフラグメント３３が生成される。生成されたフラグメント３３は、複数のストレージノード２０に分散して格納される。データブロックをｎ個に分割した分割データとｐ個のパリティデータを含む（ｎ＋ｐ）個のフラグメントが、複数のストレージノードに分散して書込まれる冗長性が確保される。
【０００６】
ストレージシステムは、複数のストレージノード２０のフラグメント３３を読込み、分割前のデータブロック３０を復元する。このとき（ｎ＋ｐ）個のフラグメントではなく、ｎ個のフラグメントによってデータブロックが復元できる。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２０１０−５０３９４１号公報
【特許文献２】特開２０１３−１７４９８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
図１０は、ストレージシステムの障害時におけるフラグメントの書込みを示す説明図である。フラグメントＦ１〜Ｆ１２が格納された複数のストレージノード２０のうち、あるストレージノードに障害が発生し、フラグメントＦ４、Ｆ５、Ｆ６が使用できないとする。障害が発生したストレージノード（以下、障害ストレージノードという）に格納されていたフラグメントＦ４、Ｆ５、Ｆ６は、障害ストレージノード２１以外の複数のストレージノード２０からフラグメントを読込んで再生成される。そして再生成されたフラグメントＦ４、Ｆ５、Ｆ６は、障害ストレージノード２１以外の複数のストレージノード２０に分散して格納される。これによりストレージノード２０のデータの冗長性が回復する。
【０００９】
図１０に示す例では、データの冗長性を回復させる際、再生成したフラグメントが複数のストレージノード２０に分散して書込まれる。このため、再生成されたフラグメントを格納するストレージノードの負荷が大きくなり、ストレージシステムの性能が低下する。
【００１０】
また、障害ストレージノード２１が復旧した後に、復旧したストレージノードに再生成されたフラグメントをコピーバックする際も、複数のストレージノード２０に格納された再生成されたフラグメントへの読込みが発生し、ストレージノードの負荷が大きくなる。
【００１１】
本発明の目的は、複数のストレージノードに格納されたデータの冗長性の回復に伴うストレージノードの負荷を低減することが可能な制御装置等を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の制御装置の一態様は、データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御装置であって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込むデータ処理部を備える。
【００１３】
本発明の制御方法の一態様は、データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御方法であって、前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込む。
【００１４】
本発明のプログラムの一態様は、データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムを制御するプログラムであって、前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込む、ことをコンピュータに実行させる。
【００１５】
本発明のストレージシステムの一態様は、複数のストレージノードと、
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを前記複数のストレージノードに分散して格納させる制御装置を備えるストレージシステムであって、前記制御装置は、前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込むデータ処理部を備える。
【発明の効果】
【００１６】
本発明は、複数のストレージノードに格納されたデータの冗長性の回復に伴うストレージノードの負荷を低減する。
【図面の簡単な説明】
【００１７】
【図１】第１の実施形態の制御装置と当該制御装置を用いたストレージシステムの構成を示すブロック図である。
【図２】第１の実施形態の制御装置の動作を示すフローチャートである。
【図３】第１の実施形態の制御装置によるストレージノードの障害時におけるフラグメントの書込みを示す説明図である。
【図４】第２の実施形態の制御装置の構成を示すブロック図である。
【図５】第２の実施形態の制御装置の動作を示すフローチャートである。
【図６】リカバリ部によるリカバリ処理の一例を示すフローチャートである。
【図７】リードライト制御部によるデータブロックの復元処理の一例を示すフローチャートである。
【図８】第１、第２の実施形態の制御装置をコンピュータ装置で実現したハードウエア構成を示す図である。
【図９】フラグメントの生成と、ストレージノードへの分散を説明する説明図である。
【図１０】関連技術のストレージノードの障害時におけるフラグメントの書込みを示す説明図である。
【発明を実施するための形態】
【００１８】
（第１の実施形態）
第１の実施形態の制御装置と、当該制御装置を用いたストレージシステムについて、図面を用いて説明する。図１は、第１の実施形態の制御装置と当該制御装置を用いたストレージシステムの構成を示すブロック図である。図１に示すように、ストレージシステムは、制御装置１０と、制御装置１０に接続された複数のストレージノード２０を備える。
【００１９】
制御装置１０は、データブロックが分割された分割データ及びデータブロックを復元するためのパリティデータを含む複数のフラグメントを複数のストレージノード２０に分散して格納する格納機能を有する。例えば、制御装置１０は、ｎ個の分割データとｐ個のパリティデータを含む（ｎ＋ｐ）個のフラグメントを複数のストレージノード２０に分散して、格納する。制御装置１０は、複数のストレージノード２０に格納された各フラグメントのうちｎ個のフラグメントを読込むことで分割前のデータブロックを復元する復元機能を有する。なお、上記の格納機能および復元機能は、以下に説明するデータ処理部１１が実行してもよい。
【００２０】
制御装置１０は、データ処理部１１を備える。データ処理部１１は、ストレージシステムのストレージノード２０に障害が発生した際に、ストレージノードに格納されたデータの冗長性を回復させる機能を有する。
【００２１】
データ処理部１１は、複数のストレージノード２０のうち障害が発生した障害ストレージノードに格納されたフラグメントを、残りのストレージノード２０に格納されたフラグメントを用いて再生成する。さらに、データ処理部１１は、残りのストレージノード２０の中の特定のストレージノードに、再生成されたフラグメントを書込む。特定のストレージノードは、残りのストレージノード２０の中から任意で選択された１つのストレージノードである。
【００２２】
データ処理部１１が、再生成されたフラグメントの書込みを特定のストレージノードに集中させることで、再生成されたフラグメントが書込まれるストレージノード２０の数が減ることなる。結果、特定のストレージノード以外の複数のストレージノード２０に対する、書込みの負荷が低減される。
【００２３】
また、障害が発生したストレージノードが復旧した後、特定のストレージノードから復旧したストレージノードに再生成されたフラグメントを移動させる。このとき、第１の実施形態によれば、特定のストレージノードと復旧したストレージノード間で再生成されたフラグメントを移動させればよく、再生成されたフラグメントの移動によって使用されるストレージノード２０の数も減ることになる。この結果、特定のストレージノード以外の複数のストレージノード２０の負荷がより低減される。
【００２４】
第１の実施形態の制御装置の動作について図面を用いて説明する。図２は、第１の実施形態の制御装置の動作を示すフローチャートである。制御装置１０のデータ処理部１１は、複数のストレージノード２０のうち障害が発生した障害ストレージノードに格納されていたフラグメントを、残りのストレージノード２０に格納されたフラグメントを用いて再生成する（ステップＳ１）。データ処理部１１は、残りのストレージノード２０のうち特定のストレージノードに、再生成されたフラグメントを書込む（ストレージＳ２）。
【００２５】
図３は、第１の実施形態による障害時におけるストレージノードへのフラグメントの書込みを示す説明図である。図３に示すように、フラグメントＦ１〜Ｆ１２が格納された複数のストレージノード２０のうち、あるストレージノードに障害が発生し、フラグメントＦ４、Ｆ５、Ｆ６が使用できないとする。第１の実施形態の制御装置１０において、障害が発生したストレージノード（以下、障害ストレージノードともいう）に格納されていたフラグメントＦ４、Ｆ５、Ｆ６は、障害ストレージノード２１以外の残りのストレージノード２０のうち、特定のストレージノード２２に集中して書込まれる。これにより、複数のストレージノードに分散されたデータの冗長性が回復する。
【００２６】
データの冗長性を回復させるリカバリ処理の際、再生成したフラグメントがストレージノード２０に分散して書込まれる。
【００２７】
（第１の実施形態の効果）
第１の実施形態の制御装置によれば、複数のストレージノードに格納されたデータの冗長性の回復に伴うストレージノードの負荷を低減することができる。その理由は、制御装置のデータ処理部が、複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、他のストレージノードのうち特定のストレージノードに、再生成されたフラグメントを書込むからである。
【００２８】
第１の実施形態の制御装置を用いるストレージシステムは、ストレージノードの負荷を低減されることで、ストレージシステムの性能の低下を防ぐことができる。
【００２９】
（第２の実施形態）
第２の実施形態は、第１の実施形態の制御装置の構成を具体化した一例である。第２の実施形態の制御装置１０は、第１の実施形態と同様に複数のストレージノード２０と接続されてストレージシステムを構成する。
【００３０】
図４は、第２の実施形態の制御装置の構成を示すブロック図である。図４に示すように、第２の実施形態の制御装置１０のデータ処理部１１は、リードライト制御部１２と、障害検出部１３と、リカバリ部１４と、再編成部１５を備える。
【００３１】
制御装置１０のリードライト制御部１２は、データブロックが分割された分割データ及びデータブロックを復元するためのパリティデータを含む複数のフラグメントを複数のストレージノード２０に分散して格納する。さらに、リードライト制御部１２は、ストレージノード２０に格納されたフラグメントを読込み、データブロックを復元する。
【００３２】
また、リードライト制御部１２は、リカバリ処理中の特定のストレージノードがある場合、特定のストレージノード以外のストレージノード２０からフラグメントを読込む。
【００３３】
障害検出部１３は、障害ストレージノード２１を検出する。障害検出部１３は、障害ストレージノードを検出した場合、リカバリ部１４にリカバリ処理を指示する。あるいは、障害ストレージノード２１の復旧を検知して再編成部１５に通知する。
【００３４】
制御装置１０のリカバリ部１４は、障害ストレージノード２１以外の複数のストレージノード２０からフラグメントを読込み、障害ストレージノード２１に格納されていたフラグメントを再生成し、再生成されたフラグメントを特定のストレージノードに集中させて書込む。
【００３５】
制御装置１０の再編成部１５は、特定のストレージノードに格納された再生成されたフラグメントを、復旧したストレージノードに移動する。
【００３６】
次に、第２の実施形態の制御装置の動作について、図面を用いて説明する。図５は、第２の実施形態の制御装置の動作を示すフローチャートである。以下に説明する第２の実施形態の制御装置の動作は、ストレージノード２０の障害の発生から正常化までを示している。
【００３７】
制御装置１０の障害検出部１３は、複数のストレージノード２０の状態を確認し（ステップＳ２１）し、新たな障害ストレージノード２１を検出すると（ステップＳ２２のＹｅｓ）、リカバリ部１４にリカバリ処理を指示する。また、障害検出部１３は、検出した障害ストレージノード２１のノード識別子と、複数のストレージノード２０から選択されたリカバリ処理の用いる特定のストレージノードのノード識別子を取得してリカバリ部１４に通知する。ノード識別子は、例えば、複数のストレージノードに付与されたノード番号である。
【００３８】
図６にリカバリ部１４におけるリカバリ処理の一例を示すフローチャートである。図６に示すように、制御装置１０のリカバリ部１４は、受付けたノード識別子で障害ストレージノードを認識し、複数のストレージノード２０のうち障害ストレージノード２１以外の複数のストレージノード２０からフラグメントを読込む（ステップＳ３１）。
【００３９】
リカバリ部１４は、読込んだフラグメントに基づいて、障害ストレージノード２１に格納されたフラグメントを再生成する（ステップＳ３２）。例えば、リカバリ部１４は、読込んだフラグメントを用いてデータブロックを復元し、復元したデータブロックとパリティデータを用いて複数のフラグメントを再生成する。そして、リカバリ部１４は、リードライト制御部１２が複数のストレージノード２０に分散したフラグメントの配置情報に基づいて、再生成した複数のフラグメントの中から障害ストレージノード２１に格納されたフラグメントを特定する。
【００４０】
リカバリ部１４は、受付けたノード識別子で特定のストレージノードを認識し、障害ストレージノードの再生成されたフラグメントを特定のストレージノードに書込む（ステップＳ３３）。
【００４１】
障害検出部１３は、障害ストレージノードの復旧を検出すると（ステップＳ２４のＹｅｓ）、再編成部１５に特定のストレージノードに格納された再生成されたフラグメントを復旧したストレージノードへ移動させる、フラグメント再編成を指示する。このとき、障害検出部１３は、復旧したストレージノードのノード識別子および特定のストレージノードのノード識別子を、再編成部１５に通知する。
【００４２】
再編成部１５は、受付けたノード識別子に基づいて、特定のストレージノードに格納された再生成されたフラグメントを復旧したストレージノードに移動する（ステップＳ２５）。再編成部１５のフラグメント再編成により、障害が発生したストレージノードは、障害発生前のフラグメント状態となり正常化される。移動が完了した後、再編成部１５は、リードライト制御部１２に障害が発生したストレージノードの正常化を通知する（ステップＳ２６）。
【００４３】
このように、データの冗長性を回復させるリカバリ処理時に、再生成されたフラグメントを特定のストレージノードに集中して書込むことにより、特定のストレージノード以外の複数のストレージノードの負荷を低減することができる。
【００４４】
（変形例）
なお、制御装置１０が複数のストレージノード２０に格納されたフラグメントを読込んでデータブロックを復元する際、リードレスポンスの観点から、負荷が高くなっているストレージノードのフラグメントを読込むことは好ましくない。
【００４５】
このため、第２の実施形態の制御装置では、データブロックの復元処理において、リカバリ処理中の特定のストレージノード以外のストレージノードからフラグメントを読込む。
【００４６】
図７は、リードライト制御部によるデータブロックの復元処理の一例を示すフローチャートである。制御装置１０のリードライト制御部１２は、複数のストレージノード２０の中に特定のストレージノードがあるか確認する。特定のストレージノードが無ければ（ステップＳ４１のＮｏ）、ストレージノード２０からデータブロックの復元に必要な数のフラグメントを読込む（ステップＳ４２）。リードライト制御部１２は、読込んだフラグメントからデータブロックを復元する（ステップＳ４３）。
【００４７】
一方、特定のストレージノードがある場合（ステップＳ４１のＹｅｓ）リードライト制御部１２は、特定のストレージノード以外のストレージノード２０からデータブロックの復元に必要な数のフラグメントを優先的に読込み（ステップＳ４４）。リードライト制御部１２は、読込んだフラグメントからデータブロックを復元する（ステップＳ４３）。
【００４８】
（第２の実施形態の効果）
第２の実施形態の制御装置によれば、複数のストレージノードに格納されたデータの冗長性の回復に伴うストレージノードの負荷を低減することができる。その理由は、制御装置のデータ処理部が、複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、他のストレージノードのうち特定のストレージノードに、再生成されたフラグメントを書込むからである。
【００４９】
上記制御装置を用いるストレージシステムは、ストレージノードの負荷が低減され、システム性能の低下を防ぐことができる。
【００５０】
また、フラグメントを読込んでデータブロックを復元する際、リードレスポンス性能が低下するのを防ぐことができる。その理由は、リードライト制御部１２が、データブロックの復元の際に、特定のストレージノード以外のストレージノードからフラグメントを読込むからである。
【００５１】
（その他）
上記の第１、第２の実施形態において、再生成されたフラグメントを書込む特定のストレージノードが１つの例で説明したが、これに限られない。すなわち、複数のストレージノードから障害ストレージノードを除いた残りのストレージノードのうち、再生成されたフラグメントを書込まないストレージノードが少なくとも１つあれば、フラグメントの書込みによるストレージノードの負荷を低減することができる。
このように、再生成されたフラグメントを書込むストレージノードの所定数は、１つ以上、複数のストレージノードから障害ストレージノードを除いた残りのストレージノードのうち、再生成されたフラグメントを書込まないストレージノードが１つとなる数以下であればよい。
【００５２】
上記の第１、第２の実施形態の制御装置１０は、ストレージシステムにおけるアクセラレータノードとも呼ばれる。第１、第２の実施形態の制御装置１０は、放送又は動画配信のように再生のリアルタイム性が重要となるストレージシステムに適用可能である。
（ハードウエア構成）
図８は、第１、第２の実施形態の制御装置をコンピュータ装置で実現したハードウエア構成を示す図である。第１、第２の実施形態において、制御装置１０の各構成要素は、機能単位のブロックを示している。制御装置の各構成要素の一部又は全部は、例えば、図８に示すような情報処理装置６０とプログラムとの任意の組み合わせにより実現される。情報処理装置６０は、一例として、以下のような構成を含む。
ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６１、
ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）６２、
ＲＡＭ（Ｒａｍｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）６３、
ＲＡＭ６３にロードされるプログラム６４、
プログラム６４を格納する記憶装置６５、
記録媒体６６の読み書きを行うドライブ装置６７、
通信ネットワーク６９と接続する通信インターフェース６８、
データの入出力を行う入出力インターフェース７０、
各構成要素を接続するバス７１
制御装置１０の各構成要素は、これらの機能を実現するプログラム６４をＣＰＵ６１が取得して実行することで実現される。各構成要素の機能を実現するプログラム６４は、例えば、予め記憶装置６５又はＲＡＭ６３に格納されており、必要に応じてＣＰＵ６１が読み出す。なお、プログラム６４は、通信ネットワーク６９を介してＣＰＵ６１に供給されてもよいし、予め記録媒体６６に格納されており、ドライブ装置６７が当該プログラムを読み出してＣＰＵ６１に供給してもよい。
【００５３】
制御装置１０の実現方法には、様々な変形例がある。例えば、制御装置１０は、各構成要素にそれぞれ別個の情報処理装置６０とプログラムとの任意の組み合わせにより実現されてもよい。また、制御装置１０が備える複数の構成要素が、一つの情報処理装置６０とプログラムとの任意の組み合わせにより実現されてもよい。
【００５４】
また、制御装置１０の各構成要素の一部又は全部は、その他の汎用または専用の回路、プロセッサ等やこれらの組み合わせによって実現される。これらは、単一のチップによって構成されてもよいし、バスを介して接続される複数のチップによって構成されてもよい。また、情報処理装置６０の代わりにＦＰＧＡ（Ｆｉｅｌｄ−Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）のようなプログラマブルロジックデバイスを用いてもよい。
【００５５】
さらに、制御装置１０の各構成要素の一部又は全部は、上述した回路等とプログラムとの組み合わせによって実現されてもよい。
【００５６】
また、制御装置１０の各構成要素の一部又は全部が複数の情報処理装置や回路等により実現される場合には、複数の情報処理装置や回路等は、集中配置されてもよいし、分散配置されてもよい。例えば、情報処理装置や回路等は、クライアントアンドサーバシステム、クラウドコンピューティングシステム等、各々が通信ネットワークを介して接続される形態として実現されてもよい。
【００５７】
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
【００５８】
上記の実施形態の一部又は全部は、以下の付記のように記載されうるが、以下には限られない。
【００５９】
（付記１）
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御装置であって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込むデータ処理部を備える、
制御装置。
【００６０】
（付記２）
前記データ処理部は、前記一のストレージノードの復旧後、前記所定数のストレージノードに格納された前記再生成されたフラグメントを前記一のストレージノードに移動させる、
付記１に記載の制御装置。
【００６１】
（付記３）
前記データ処理部は、前記複数のストレージノードの中に前記所定数のストレージノードがある場合、前記所定数のストレージノード以外の前記他のストレージノードから前記データブロックを復元するためのフラグメントを優先的に読込み、前記読込んだフラグメントから前記データブロックを復元する、
付記１又は２に記載の制御装置。
【００６２】
（付記４）
前記所定数は、１つ以上、前記複数のストレージノードから前記障害ストレージノードを除いた残りのストレージノードのうち、前記再生成されたフラグメントを書込まないストレージノードが１つとなる数以下である、
付記１から３のいずれか１つに記載の制御装置。
【００６３】
（付記５）
複数のストレージノードと、
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを前記複数のストレージノードに分散して格納させる制御装置を備えるストレージシステムであって、
制御装置は、前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納された前記フラグメントを用いて再生成し、前記他のストレージノードのうち所定数のストレージノードに、再生成された前記フラグメントを書込むデータ処理部を備える、
ストレージシステム。
【００６４】
（付記６）
付記５に記載の制御装置がアクセラレータノードである、ストレージシステム。
【００６５】
（付記７）
前記データ処理部は、前記一のストレージノードの復旧後、前記所定数のストレージノードに格納された前記再生成されたフラグメントを前記一のストレージノードに移動させる、
付記５又は６に記載のストレージシステム。
【００６６】
（付記８）
前記データ処理部は、前記複数のストレージノードの中に前記所定数のストレージノードがある場合、前記所定数のストレージノード以外の前記他のストレージノードから前記データブロックを復元するためのフラグメントを優先的に読込み、前記読込んだフラグメントから前記データブロックを復元する、
付記５、６又は７に記載のストレージシステム。
【００６７】
（付記９）
付記５、６又は７に記載のストレージシステム。
【００６８】
（付記１０）
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムの制御方法であって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、
前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込む、
制御方法。
【００６９】
（付記１１）
前記一のストレージノードの復旧後、前記所定数のストレージノードに格納された前記再生成されたフラグメントを前記一のストレージノードに移動させる、
付記１０に記載の制御方法。
【００７０】
（付記１２）
前記複数のストレージノードの中に前記所定数のストレージノードがある場合、前記所定数のストレージノード以外の前記他のストレージノードから前記データブロックを復元するためのフラグメントを優先的に読込み、前記読込んだフラグメントから前記データブロックを復元する、
付記１０又は１１に記載の制御方法。
【００７１】
（付記１３）
前記所定数は、１つ以上、前記複数のストレージノードから前記障害ストレージノードを除いた残りのストレージノードのうち、前記再生成されたフラグメントを書込まないストレージノードが１つとなる数以下である、
付記１０から１２のいずれか１つに記載の制御方法。
【００７２】
（付記１４）
データブロックが分割された分割データ及び前記データブロックを復元するためのパリティデータを含む複数のフラグメントを、複数のストレージノードに分散して格納するストレージシステムを制御するプログラムであって、
前記複数のストレージノードのうち障害が発生した一のストレージノードに格納されたフラグメントを、他のストレージノードに格納されたフラグメントを用いて再生成し、
前記他のストレージノードのうち所定数のストレージノードに、前記再生成されたフラグメントを書込む、
ことをコンピュータに実行させるプログラム。
【００７３】
（付記１５）
前記一のストレージノードの復旧後、前記所定数のストレージノードに格納された前記再生成されたフラグメントを前記一のストレージノードに移動させる、
付記１４に記載のプログラム。
【００７４】
（付記１６）
前記複数のストレージノードの中に前記所定数のストレージノードがある場合、前記所定数のストレージノード以外の前記他のストレージノードから前記データブロックを復元するためのフラグメントを優先的に読込み、前記読込んだフラグメントから前記データブロックを復元する、
付記１４又は１５に記載のプログラム。
【００７５】
（付記１７）
前記所定数は、１つ以上、前記複数のストレージノードから前記障害ストレージノードを除いた残りのストレージノードのうち、前記再生成されたフラグメントを書込まないストレージノードが１つとなる数以下である、
付記１４から１６のいずれか１つに記載のプログラム。
【符号の説明】
【００７６】
１０  制御装置
１１  データ処理部
１２  リードライト制御部
１３  障害検出部
１４  リカバリ部
１５  再編成部
２０  ストレージノード
２１  障害ストレージノード
２２  特定のストレージノード
３０  データブロック
３１  分割データ
３２  パリティデータ
３３  フラグメント
６０  情報処理装置
６１  ＣＰＵ
６２  ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）
６３  ＲＡＭ
６４  プログラム
６５  記憶装置
６６  記録媒体
６７  ドライブ装置
６８  通信インターフェース
６９  通信ネットワーク
７０  入出力インターフェース
７１  バス
【図１】
0006705255.tif 000002
【図２】
0006705255.tif 000003
【図３】
0006705255.tif 000004
【図４】
0006705255.tif 000005
【図５】
0006705255.tif 000006
【図６】
0006705255.tif 000007
【図７】
0006705255.tif 000008
【図８】
0006705255.tif 000009
【図９】
0006705255.tif 000010
【図１０】
0006705255.tif 000011