"複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含む複数の記憶装置を有するストレージアレイに関係する故障からの復元を容易にするための方法であって、前記複数のデータ記憶装置に関する第1の行パリティを決定することであり、前記第1の行パリティが前記複数のデータ記憶装置にわたりかつ前記第1の行パリティ記憶装置上に記憶される、第1の行パリティを決定すること、第1の対角パリティ集合に沿った第1の対角パリティを決定することであり、前記第1の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第1の対角パリティが前記第1の対角パリティ記憶装置上に記憶される、第1の対角パリティを決定すること、第2の対角パリティ集合に沿った第2の対角パリティを決定することであり、前記第2の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第2の対角パリティが前記第2の対角パリティ記憶装置上に記憶される、第2の対角パリティを決定すること、ならびに前記複数のデータ記憶装置に関する第2の行パリティを決定することであり、前記第2の行パリティが前記複数のデータ記憶装置にわたりかつ前記第2の行パリティ記憶装置上に記憶され、前記第2の行パリティの1つまたは複数の行のうちの少なくとも一部が、前記複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含む、第2の行パリティを決定することを含む方法。前記複数の記憶装置がn個のデータ記憶装置を備え、ここで、n=p-1であり、pは3よりも大きな素数である、請求項1に記載の方法。前記複数の記憶装置の各々をチャンクに分割すること、および前記複数の記憶装置の各々を各記憶装置内に同数のチャンクを含むストライプに編成することであって、前記複数の記憶装置の各々がp-12個のチャンクにストライプ化される、ストライプに編成することをさらに含む、請求項2に記載の方法。前記第1の行パリティおよび前記第2の行パリティを決定することが、p-12個の行を別々に含む決定した第1の行パリティおよび決定した第2の行パリティに少なくとも一部は基づいて別々に規定される前記第1の行パリティおよび前記第2の行パリティを含む、請求項3に記載の方法。前記第1の対角パリティ集合に沿った前記第1の対角パリティを決定することは、所定のストライプのそれぞれの第1の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、p-12個の行内でラップアラウンドする前記第1の対角パリティ集合に少なくとも一部は基づいて規定される前記第1の対角パリティを含む、請求項4に記載の方法。前記第2の対角パリティ集合に沿った前記第2の対角パリティを決定することは、所定のストライプのそれぞれの第2の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、前記p-12個の行内で部分的にラップアラウンドする前記第2の対角パリティ集合に少なくとも一部は基づいて規定される前記第2の対角パリティを含む、請求項5に記載の方法。前記ストレージアレイに関係する故障からの復元を容易にすることが、前記第2の行パリティに関係する1つまたは複数の行パリティ値および前記第2の対角パリティに関係する1つまたは複数の対角パリティ値を利用する第1の行-対角パリティRDPスキームの実装を可能にすること、ならびに次に、前記第1の対角パリティに関係する1つまたは複数の対角パリティ値および前記第1の行パリティに関係する1つまたは複数の行パリティ値を利用する第2のRDPスキームの実装を可能にすることを含む、請求項6に記載の方法。前記複数の記憶装置の各々が、独立ディスクの冗長アレイRAIDスキームにしたがってストライプ化される、請求項3に記載の方法。前記複数の記憶装置が、ハードディスクドライブ、ソリッドステートディスクドライブ、ダイレクトアクセス記憶装置、磁気テープ、バブルメモリ、光記憶媒体、電子ランダムアクセスまたはデジタル多用途ディスクのうちの少なくとも1つを含む、請求項1に記載の方法。前記ストレージアレイに関係する故障が、前記複数の記憶装置のうちの1つもしくは複数における故障または前記複数の記憶装置のうちの1つもしくは複数に関係するチェックサムエラーの組み合わせを含む前記ストレージアレイに関係する3つの同時発生故障を含む、請求項1に記載の方法。複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含む複数の記憶装置を有するストレージアレイに関係する故障からの復元を容易にするための装置であって、論理回路を有するリカバリマネージャであり、前記論理回路が、前記複数のデータ記憶装置に関する第1の行パリティを決定し、前記第1の行パリティが前記複数のデータ記憶装置にわたりかつ前記第1の行パリティ記憶装置上に記憶され、第1の対角パリティ集合に沿った第1の対角パリティを決定し、前記第1の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第1の対角パリティが前記第1の対角パリティ記憶装置上に記憶され、第2の対角パリティ集合に沿った第2の対角パリティを決定し、前記第2の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第2の対角パリティが前記第2の対角パリティ記憶装置上に記憶され、ならびに前記複数のデータ記憶装置に関する第2の行パリティを決定し、前記第2の行パリティが前記複数のデータ記憶装置にわたりかつ前記第2の行パリティ記憶装置上に記憶され、前記第2の行パリティの1つまたは複数の行のうちの少なくとも一部が、前記複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むように構成される、リカバリマネージャを備える装置。前記複数の記憶装置がn個のデータ記憶装置を備え、ここで、n=p-1であり、pは3よりも大きな素数である、請求項11に記載の装置。前記複数の記憶装置の各々をチャンクに分割し、および前記複数の記憶装置の各々を各記憶装置内に同数のチャンクを含むストライプに編成し、前記複数の記憶装置の各々がp-12個のチャンクにストライプ化されるように構成された前記論理回路をさらに備える、請求項12に記載の装置。前記第1の行パリティおよび前記第2の行パリティを決定することが、p-12個の行を別々に含む決定した第1の行パリティおよび決定した第2の行パリティに少なくとも一部は基づいて別々に規定される前記第1の行パリティおよび前記第2の行パリティを含む、請求項13に記載の装置。前記第1の対角パリティ集合に沿った前記第1の対角パリティを決定することは、所定のストライプのそれぞれの第1の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、p-12個の行内でラップアラウンドする前記第1の対角パリティ集合に少なくとも一部は基づいて規定される前記第1の対角パリティを含む、請求項14に記載の装置。前記第2の対角パリティ集合に沿った前記第2の対角パリティを決定することは、所定のストライプのそれぞれの第2の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、前記p-12個の行内で部分的にラップアラウンドする前記第2の対角パリティ集合に少なくとも一部は基づいて規定される前記第2の対角パリティを含む、請求項15に記載の装置。前記ストレージアレイに関係する故障からの復元を容易にすることが、前記第2の行パリティに関係する1つまたは複数の行パリティ値および前記第2の対角パリティに関係する1つまたは複数の対角パリティ値を利用する第1の行-対角パリティRDPスキームの実装を可能にすること、ならびに次に、前記第1の対角パリティに関係する1つまたは複数の対角パリティ値および前記第1の行パリティに関係する1つまたは複数の行パリティ値を利用する第2のRDPスキームの実装を可能にすることを含む、請求項16に記載の装置。前記複数の記憶装置の各々が、独立ディスクの冗長アレイRAIDスキームにしたがってストライプ化される、請求項13に記載の装置。前記ストレージアレイに関係する故障が、前記複数の記憶装置のうちの1つもしくは複数における故障または前記複数の記憶装置のうちの1つもしくは複数に関係するチェックサムエラーの組み合わせを含む前記ストレージアレイに関係する3つの同時発生故障を含む、請求項11に記載の装置。ストレージアレイに関係する故障からの復元を容易にするためのシステムであって、複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含む複数の記憶装置、ならびに論理回路を有するリカバリマネージャであり、前記論理回路が、前記複数のデータ記憶装置に関する第1の行パリティを決定し、前記第1の行パリティが前記複数のデータ記憶装置にわたりかつ前記第1の行パリティ記憶装置上に記憶され、第1の対角パリティ集合に沿った第1の対角パリティを決定し、前記第1の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第1の対角パリティが前記第1の対角パリティ記憶装置上に記憶され、第2の対角パリティ集合に沿った第2の対角パリティを決定し、前記第2の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第2の対角パリティが前記第2の対角パリティ記憶装置上に記憶され、ならびに、前記複数のデータ記憶装置に関する第2の行パリティを決定し、前記第2の行パリティが前記複数のデータ記憶装置にわたりかつ前記第2の行パリティ記憶装置上に記憶され、前記第2の行パリティの1つまたは複数の行のうちの少なくとも一部が、前記複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むように構成される、リカバリマネージャを備えるシステム。前記複数の記憶装置がn個のデータ記憶装置を備え、ここで、n=p-1であり、pは3よりも大きな素数である、請求項20に記載のシステム。前記複数の記憶装置の各々をチャンクに分割し、および前記複数の記憶装置の各々を各記憶装置内に同数のチャンクを含むストライプに編成し、前記複数の記憶装置の各々がp-12個のチャンクにストライプ化されるように構成された前記論理回路をさらに備える、請求項21に記載のシステム。前記第1の行パリティおよび前記第2の行パリティを決定することが、p-12個の行を別々に含む決定した第1の行パリティおよび決定した第2の行パリティに少なくとも一部は基づいて別々に規定される前記第1の行パリティおよび前記第2の行パリティを含む、請求項22に記載のシステム。前記第1の対角パリティ集合に沿った前記第1の対角パリティを決定することは、所定のストライプのそれぞれの第1の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、p-12個の行内でラップアラウンドする前記第1の対角パリティ集合に少なくとも一部は基づいて規定される前記第1の対角パリティを含む、請求項23に記載のシステム。前記第2の対角パリティ集合に沿った前記第2の対角パリティを決定することは、所定のストライプのそれぞれの第2の対角パリティ集合に属するすべてのチャンクが前記所定のストライプ内に記憶されるように、前記p-12個の行内で部分的にラップアラウンドする前記第2の対角パリティ集合に少なくとも一部は基づいて規定される前記第2の対角パリティを含む、請求項24に記載のシステム。前記ストレージアレイに関係する故障からの復元を容易にすることが、前記第2の行パリティに関係する1つまたは複数の行パリティ値および前記第2の対角パリティに関係する1つまたは複数の対角パリティ値を利用する第1の行-対角パリティRDPスキームの実装を可能にすること、ならびに次に、前記第1の対角パリティに関係する1つまたは複数の対角パリティ値および前記第1の行パリティに関係する1つまたは複数の行パリティ値を利用する第2のRDPスキームの実装を可能にすることを含む、請求項25に記載のシステム。前記複数の記憶装置の各々が、独立ディスクの冗長アレイRAIDスキームにしたがってストライプ化される、請求項20に記載のシステム。前記複数の記憶装置が、ハードディスクドライブ、ソリッドステートディスクドライブ、ダイレクトアクセス記憶装置、磁気テープ、バブルメモリ、光記憶媒体、電子ランダムアクセスまたはデジタル多用途ディスクのうちの少なくとも1つを含む、請求項20に記載のシステム。複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含む複数の記憶装置を有するストレージアレイに関係する故障からの復元を容易にするための命令を有する非一時的な媒体を含むコンピュータプログラム製品であって、前記命令が、論理回路によって実行されたときに、前記論理回路に、前記複数のデータ記憶装置に関する第1の行パリティを決定させ、前記第1の行パリティが前記複数のデータ記憶装置にわたりかつ前記第1の行パリティ記憶装置上に記憶され、第1の対角パリティ集合に沿った第1の対角パリティを決定させ、前記第1の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第1の対角パリティが前記第1の対角パリティ記憶装置上に記憶され、第2の対角パリティ集合に沿った第2の対角パリティを決定させ、前記第2の対角パリティが前記複数のデータ記憶装置のうちの1つを除くすべておよび前記第1の行パリティ記憶装置にわたり、前記決定した第2の対角パリティが前記第2の対角パリティ記憶装置上に記憶され、ならびに前記複数のデータ記憶装置に関する第2の行パリティを決定させ、前記第2の行パリティが前記複数のデータ記憶装置にわたりかつ前記第2の行パリティ記憶装置上に記憶され、前記第2の行パリティの1つまたは複数の行のうちの少なくとも一部が、前記複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むように構成される、コンピュータプログラム製品。前記複数の記憶装置がn個のデータ記憶装置を備え、ここで、n=p-1であり、pは3よりも大きな素数である、請求項29に記載のコンピュータプログラム製品。前記複数の記憶装置の各々をチャンクに分割し、および前記複数の記憶装置の各々を各記憶装置内に同数のチャンクを含むストライプに編成し、前記複数の記憶装置の各々がp-12個のチャンクにストライプ化されるように構成された前記論理回路をさらに含む、請求項30に記載のコンピュータプログラム製品。前記ストレージアレイに関係する故障からの復元を容易にするための前記命令が、前記論理回路に、前記第2の行パリティに関係する1つまたは複数の行パリティ値および前記第2の対角パリティに関係する1つまたは複数の対角パリティ値を利用する第1の行-対角パリティRDPスキームの実装をさらに可能にさせ、ならびに次に、前記第1の対角パリティに関係する1つまたは複数の対角パリティ値および前記第1の行パリティに関係する1つまたは複数の行パリティ値を利用する第2のRDPスキームの実装をさらに可能にさせる命令を含む、請求項31に記載のコンピュータプログラム製品。前記複数の記憶装置の各々が、独立ディスクの冗長アレイRAIDスキームにしたがってストライプ化される、請求項31に記載のコンピュータプログラム製品。本開示は、ストレージアレイに関係する故障からの復元を容易にするためのいくつかの例の方法について記載する。ストレージアレイは、複数の記憶装置を有することができる。複数の記憶装置は、複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含むことができる。これらの例の方法は、複数のデータ記憶装置に関する第1の行パリティを決定することを含むことができる。第1の行パリティは、複数のデータ記憶装置にわたることができ、かつ第1の行パリティ記憶装置上に記憶されてもよい。第1の対角パリティ集合に沿った第1の対角パリティが、次に決定されてもよい。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第1の対角パリティ記憶装置上に記憶されてもよい。例の方法は、第2の対角パリティ集合に沿った第2の対角パリティを決定することをやはり含むことができる。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第2の対角パリティ記憶装置上に記憶されてもよい。複数のデータ記憶装置に関する第2の行パリティが、次に決定されてもよい。第2の行パリティは、複数のデータ記憶装置にわたることができ、かつ第2の行パリティ記憶装置上に記憶されてもよい。いくつかの例では、第2の行パリティの1つまたは複数の行のうちの少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。本開示は、ストレージアレイに関係する故障からの復元を容易にするための例の装置をやはり記述する。ストレージアレイは、複数の記憶装置を有することができる。複数の記憶装置は、複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含むことができる。これらの例の装置は、論理回路を有するリカバリマネージャを含むことができる。論理回路は、複数のデータ記憶装置に関する第1の行パリティを決定するように構成されてもよい。第1の行パリティは、複数のデータ記憶装置にわたることができ、かつ第1の行パリティ記憶装置上に記憶されてもよい。論理回路は、第1の対角パリティ集合に沿った第1の対角パリティを決定するようにやはり構成されてもよい。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第1の対角パリティ記憶装置上に記憶されてもよい。論理回路は、第2の対角パリティ集合に沿った第2の対角パリティを決定するようにやはり構成されてもよい。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第2の対角パリティ記憶装置上に記憶されてもよい。論理回路は、複数のデータ記憶装置に関する第2の行パリティを決定するようにやはり構成されてもよい。第2の行パリティは、複数のデータ記憶装置にわたることができ、かつ第2の行パリティ記憶装置上に記憶されてもよい。いくつかの例では、第2の行パリティの1つまたは複数の行のうちの少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。本開示は、ストレージアレイに関係する故障からの復元を容易にするための例のシステムをやはり記述する。これらの例のシステムは、複数の記憶装置を有することができる。複数の記憶装置は、複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含むことができる。例のシステムは、論理回路を有するリカバリマネージャをやはり含むことができる。論理回路は、複数のデータ記憶装置に関する第1の行パリティを決定するように構成されてもよい。第1の行パリティは、複数のデータ記憶装置にわたることができ、かつ第1の行パリティ記憶装置上に記憶されてもよい。論理回路は、第1の対角パリティ集合に沿った第1の対角パリティを決定するようにやはり構成されてもよい。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第1の対角パリティ記憶装置上に記憶されてもよい。論理回路は、第2の対角パリティ集合に沿った第2の対角パリティを決定するようにやはり構成されてもよい。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第2の対角パリティ記憶装置上に記憶されてもよい。論理回路は、複数のデータ記憶装置に関する第2の行パリティを決定するようにやはり構成されてもよい。第2の行パリティは、複数のデータ記憶装置にわたることができ、かつ第2の行パリティ記憶装置上に記憶されてもよい。いくつかの例では、第2の行パリティの1つまたは複数の行のうちの少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。本開示は、例のコンピュータプログラム製品をやはり記述する。いくつかの例では、コンピュータプログラム製品は、複数の記憶装置を有するストレージアレイに関係する故障からの復元を容易にするための命令を有する非一時的な媒体を含むことができる。複数の記憶装置は、複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含むことができる。命令は、論理回路によって実行されたときに、論理回路に、複数のデータ記憶装置に関する第1の行パリティを決定させることができる。第1の行パリティは、複数のデータ記憶装置にわたることができ、かつ第1の行パリティ記憶装置上に記憶されてもよい。命令は、論理回路に、第1の対角パリティ集合に沿った第1の対角パリティをやはり決定させることができる。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第1の対角パリティ記憶装置上に記憶されてもよい。命令は、論理回路に、第2の対角パリティ集合に沿った第2の対角パリティをやはり決定させることができる。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第2の対角パリティ記憶装置上に記憶されてもよい。命令は、論理回路に、複数のデータ記憶装置に関する第2の行パリティをやはり決定させることができる。第2の行パリティは、複数のデータ記憶装置にわたることができ、かつ第2の行パリティ記憶装置上に記憶されてもよい。いくつかの例では、第2の行パリティの1つまたは複数の行のうちの少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。前述の要約は、例示的なものにすぎず、決して限定しないものとする。上に記述した例示のための態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図面および下記の発明を実施するための形態を参照することによって明らかになるであろう。本開示の前述および他の特徴は、添付の図面と併用すると、下記の説明および別記の特許請求の範囲からより完全に明らかになるであろう。これらの図面が本開示によるいくつかの実施形態だけを示し、したがって、本開示の範囲を限定するようには見なされないことを理解して、本開示について、添付の図面の使用を介して追加の特異性および詳細を述べる。下記の詳細な説明では、本明細書の一部を形成する添付の図面を参照する。図面では、別段文脈によって規定されない限り、類似の記号は、一般に類似の構成要素を識別する。発明を実施するための形態、図面、および特許請求の範囲に記載する説明のための例または実施形態は、限定するものではない。ここに提示した主題の精神および範囲から逸脱することなく、他の例または実施形態を利用することができ、他の変更を行うことができる。本明細書に全体的に記述され、図に示されたような本開示の態様を、多種多様な異なる構成に配置し、置き換え、組み合わせ、設計することが可能であり、そのすべてが明示的に企図されかつ本開示の一部を形成することが、容易に理解されるであろう。本開示は、特に、複数の記憶装置を有するストレージアレイに関係する故障からの復元を容易にすることに関する方法、装置、システムおよびコンピュータプログラム製品を対象とする。本開示において企図されるように、1つまたは複数のスキームを記憶システム内に実装し、記憶装置が故障した、または1つもしくは複数の記憶装置上に記憶したデータもしくは情報の一部が破壊された場合、データの喪失を防止することができる。また、本開示において企図されるように、これらの1つまたは複数のスキームは、ミラーリング、バックアップまたはパリティ保護を含むことができる。ミラーリングは、データを写すために必要なリソースの観点で費用が掛かる解決策であることがあり、バックアップは、複数のバックアップの間に修正されたデータを保護できないことがある。いくつかの例では、パリティ保護を、ミラーリングまたはバックアップに対する好ましい代替形態とすることができる。シングルパリティと典型的に呼ばれる1つのタイプのパリティ保護は、1つの記憶装置故障によって失われたデータの復元または1つの記憶装置上の破壊データの復元を可能にするデータの冗長エンコーディングを提供することができる。ダブルパリティと典型的に呼ばれるもう1つのタイプのパリティ保護は、2つの記憶装置故障を有する記憶システム内の失われたデータの復元、2つの記憶装置上の破壊データの復元、または記憶装置故障および記憶装置上の破壊データの組み合わせの復元を可能にするデータの冗長エンコーディングを提供することができる。しかしながら、いくつかの記憶装置は、多数の記憶装置を含むことができ、システムが大きいほど、3つの記憶装置故障または3つの記憶装置上の破壊データのより大きな発生確率を含むことがある。したがって、3つの記憶装置故障、3つの記憶装置上の破壊データ、または記憶装置故障および記憶装置上の破壊データの組み合わせを有する記憶システム内の喪失データの復元を可能にするパリティ保護が求められている。いくつかの例では、ストレージアレイに関係する故障からの復元を、トリプルパリティエンコーディングスキームによって容易にすることができる。これらの例に関して、ストレージアレイは、複数の記憶装置を有することができる。複数の記憶装置は、複数のデータ記憶装置および複数のパリティ記憶装置を含むことができる。これらのパリティ記憶装置は、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含むことができる。これらの例に関して、複数のデータ記憶装置に関する第1の行パリティを決定することができる。第1の行パリティは、複数のデータ記憶装置にわたることがあり、かつ第1の行パリティ記憶装置上に記憶されてもよい。第1の対角パリティ集合に沿った第1の対角パリティを、次に決定することができる。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第1の対角パリティ記憶装置上に記憶されてもよい。第2の対角パリティ集合に沿った第2の対角パリティを、やはり決定することができる。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、かつ第2の対角パリティ記憶装置上に記憶されてもよい。複数のデータ記憶装置に関する第2の行パリティを、次に決定することができる。第2の行パリティは、複数のデータ記憶装置にわたることができ、かつ第2の行パリティ記憶装置上に記憶されてもよい。これらの例に関して、第2の行パリティの1つまたは複数の行のうちの少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。図1は、ストレージアレイに関係する故障からの復元を容易にする一例のシステムを図示する。図1に示したように、システム100は、通信チャネル130を介してストレージアレイ120に結合されたコンピューティングプラットフォーム110を含む。やはり、図1に示したように、コンピューティングプラットフォーム110は、1つまたは複数の要素プロセッサ112、メモリ114およびストレージアレイコントローラ116を含む。いくつかの例では、図1に示されたように、1つまたは複数の要素プロセッサ112、システムメモリ114およびストレージアレイコントローラ116を、通信リンク118を介して通信可能に結合することができる。いくつかの例では、図1に示したように、ストレージアレイコントローラ116は、リカバリマネージャ117およびストレージマネージャ119を含むことができる。システムメモリ114は、オペレーティングシステム115を含むように図1にやはり示される。いくつかの例に関して、オペレーティングシステム115を、メモリ114内に維持することができ、1つまたは複数の要素プロセッサ112によって実行されるように構成することができる。また、オペレーティングシステム115は、ストレージマネージャ119と協働して機能することができ、ストレージアレイ120から読み出し、そこに書き込むことができる。やはり図1に示したように、ストレージアレイ120は、データ記憶装置122-1から122-mを含むことができ、ここで、mは1よりも大きな任意の正の整数を表す。ストレージアレイ120は、行パリティ記憶装置123、対角パリティ記憶装置124、対角パリティ記憶装置125および行パリティ記憶装置126として図1に示した4つのパリティ記憶装置をやはり含むことができる。ストレージアレイ120の複数の記憶装置を、図1に示したように、通信チャネル130を介してストレージアレイコントローラ116に相互接続し、通信可能に結合することができる。いくつかの例によれば、ストレージアレイコントローラ116は、ユーザまたはクライアントによって要求される情報またはデータにアクセスするためにストレージアレイ120と協働することができる。ビデオテープ、光ディスク、デジタル多用途ディスクDVD、磁気テープ、バブルメモリ、電子式ランダムアクセスメモリ、マイクロエレクトロメカニカル記憶媒体またはデータもしくはパリティ情報を記憶するように構成された任意の他の類似の記憶媒体などのいずれかのタイプの取り付けられた記憶装置上に、データを記憶することができる。図1には示さないが、ストレージアレイコントローラ116およびストレージアレイ120は、通信チャネル130を介してストレージアレイ120にコンピューティングプラットフォーム110を通信可能に結合するためのインターフェース回路を別々に含むことができる。これらの例に関して、通信チャネル130は、限定しないが、ユニバーサルシリアルバスUSB、PCI-エクスプレス、シリアルアドバンストテクノロジーアタッチメントSATA、パラレルアドバンストテクノロジーアタッチメントPATAまたはスモールコンピュータシステムインターフェースSCSIを含むようにさまざまな通信プロトコルにしたがって動作することができる。いくつかの例では、さらに下記に説明するように、リカバリマネージャ117は、ストレージアレイ120に関係する故障からの復元を容易にするための論理回路および/またはフィーチャを含むことができる。故障は、ストレージアレイ120の中の1つまたは複数の記憶装置の完全な故障および/またはストレージアレイ120の中の1つまたは複数の記憶装置上の破壊データまたは情報例えば、チェックサムエラーを含むことがある。これらの例に関して、リカバリマネージャ117は、ストレージアレイ120の4つのパリティ記憶装置を使用するトリプルパリティエンコーディングスキームを実装することができる。いくつかの例によれば、トリプルパリティエンコーディングスキームを実装するときには、ストレージアレイ120は、n個のデータ記憶装置および4つのパリティ記憶装置を含むことができ、ここで、n=p-1であり、pは3よりも大きな素数である。これらの例に関して、ストレージアレイ120の複数の記憶装置の各々を、リカバリマネージャ117によってチャンクに分割することができる。複数の記憶装置の各々を、次に、リカバリマネージャ117によって、各記憶装置内に同数のチャンクを含むストライプにさらに編成することができる。また、複数の記憶装置の各々を、p-12個のチャンクにストライプ化することができる。いくつかの例では、複数の記憶装置を、独立ディスクの冗長アレイRAIDスキーム例えば、RAID6にしたがってストライプ化することができるが、本開示は、RAIDストライピングスキームだけに限定されない。図2は、リカバリマネージャに関する一例のアーキテクチャのブロック図を図示する。図1中のシステム100に関して上に記述したように、ストレージアレイコントローラ116は、リカバリマネージャ117を含む。いくつかの例では、リカバリマネージャ117は、ストレージアレイ120などのストレージアレイに関係する故障からの復元を容易にするように構成されたかまたは配置されたフィーチャおよび/または論理回路を含む。図2の例のリカバリマネージャ117は、復元論理回路210、制御論理回路220、メモリ230および入力/出力I/Oインターフェース240を含む。図2に図示したように、復元論理回路210を、制御論理回路220、メモリ230およびI/Oインターフェース240に結合する。復元論理回路210は、ストライプフィーチャ212、行フィーチャ214、対角フィーチャ216、もしくはリカバリフィーチャ218のうちの1つまたは複数か、またはこれらの任意の妥当な組み合わせをさらに含むことができる。いくつかの例では、図2のブロック図に示された要素は、本開示において説明するようなリカバリマネージャ117を支援するまたは使用可能にするように構成される。所定のリカバリマネージャ117は、図2に示された要素の一部の要素、すべての要素またはより多くの要素を含むことができる。例えば、復元論理回路210および制御論理回路220は、リカバリマネージャ117のフィーチャを実装するための多種多様な1つまたは複数の論理デバイスを別々にまたは包括的に表すことができる。一例の論理デバイスは、コンピュータ、マイクロプロセッサ、マイクロコントローラ、フィールドプログラマブルゲートアレイFPGA、特定用途向け集積回路ASIC、マルチコア/マルチスレッドマイクロプロセッサの隔絶したスレッドもしくはコア、またはこれらの組み合わせのうちの1つまたは複数を含むことができる。いくつかの例では、図2に示したように、復元論理回路210は、ストライプフィーチャ212、行フィーチャ214、対角フィーチャ216、またはリカバリフィーチャ218を含む。復元論理回路210を、動作を実行するためにこれらのフィーチャのうちの1つまたは複数を使用するように構成することができる。より詳細に下記に説明するように、例の動作は、ストライピングスキームにしたがってストライプへと記憶装置を編成すること含むことができる。例の動作は、ストライピングスキームにしたがって記憶すべき行パリティおよび対角パリティの集合を決定すること、および決定した行パリティおよび対角パリティの集合を使用してストレージアレイ例えば、ストレージアレイ120に関係する故障からの復元を容易にすることをやはり含むことができる。いくつかの例では、制御論理回路220を、リカバリマネージャ117の全体の動作を制御するように構成することができる。上に述べたように、制御論理回路220は、リカバリマネージャ117の制御を実装するために実行可能なコンテンツまたは命令と協働して動作するように構成された任意の多種多様な1つまたは複数の論理デバイスを表すことができる。いくつかの代替例では、制御論理回路220のフィーチャおよび機能性を、復元論理回路210内に実装することができる。いくつかの例によれば、メモリ230を、実行可能なコンテンツまたは命令を記憶するように配置する。実行可能なコンテンツまたは命令を、制御論理回路220および/または復元論理回路210によって使用することができ、リカバリマネージャ117のフィーチャまたは要素を実装させるまたは起動させる。メモリ230を、行パリティまたは対角パリティを決定すること例えば、構築アルゴリズムおよびストライピングスキームにしたがって行パリティまたは対角パリティを記憶することに関係する情報を少なくとも一時的に維持するようにやはり配置することができる。メモリ230は、限定しないが、揮発性メモリ、不揮発性メモリ、フラッシュメモリ、プログラマブル変数もしくは状態、ランダムアクセスメモリRAM、読出し専用メモリROM、または他のスタティックもしくはダイナミック記憶媒体のうちの1つまたは複数を含む多種多様なメモリ媒体を含むことができる。いくつかの例では、I/Oインターフェース240は、リカバリマネージャ117と、ストレージアレイコントローラ116に通信可能に結合することができる要素または装置との間のインターフェースを提供することができる。例えば、図1に関して上に述べたように、ストレージアレイコントローラ116を、通信リンク118を介して1つもしくは複数の要素プロセッサ112もしくはメモリ114に通信可能に結合するように構成することができるか、または通信チャネル130を介してストレージアレイ120に通信可能に結合するように構成することができる。I/Oインターフェース240は、例えば、リカバリマネージャ117が通信リンク118または通信チャネル130例えば、インター集積回路I2C、システム管理バスSMBus、シリアルペリフェラルインターフェースバスSPIUSB、SATA、PATA、SCSI、eSATA、PCI-Express、IEEE802.1、IEEE802.11、IEEE802.16、GSM、GPRS、EDGE、W-CDMA、HSPA、LTE、CDMA-2000、EV-DO、等によって通信することを可能にするためにさまざまな無線通信および/または有線通信プロトコルにしたがって動作するように構成されたインターフェースを含むことができる。図3A~図3Dは、ストレージアレイに関するトリプルパリティエンコーディングに関係する例のパリティテーブルを図示する。いくつかの例では、ストレージアレイは、図1に示したようなストレージアレイ120と同様であってもよい。図3A~図3Dに示したように、テーブル310、テーブル320、テーブル330およびテーブル340を、4つのパリティ記憶装置の使用に少なくとも一部は基づいて構築することができる。これらのパリティテーブルは、トリプルパリティエンコーディングスキームの一例を提供する。このトリプルパリティエンコーディングスキームは、ストレージアレイ120の3つまでの故障完全な1つもしくは複数の装置故障または1つもしくは複数のデータ破壊に関係する故障からの復元を容易にすることができる。これらの例に関して、図1に示された4つのパリティ記憶装置に加えて、ストレージアレイは、4つのデータ記憶装置をやはり含む。図3A~図3Dに示したように、4つのデータ記憶装置に関係するパリティを、列ヘッダ122-1から122-4として示し、4つのパリティ記憶装置に関係するパリティを、列ヘッダ123~126として示す。いくつかの例によれば、上に説明したように、ストレージアレイ120の記憶装置をp-12個のチャンクに分割することができ、ここで、pは3よりも大きな素数である。そこで、図3A~図3Dに関して上に述べた例のストレージアレイに関しては、p=5である。したがって、これらの例に関して、ストレージアレイ120の記憶装置を5-12=16個のチャンクに分割することができる。16個のチャンクに分割することの結果として、図3A~図3Dに示したパリティテーブルの各々は、16行を含む。いくつかの例では、図3A~図3Dに示したトリプルパリティエンコーディングスキームは、下記に示すような1つまたは複数の例の方程式またはアルゴリズムを実装することに少なくとも一部は基づくことができる。例の方程式は、データ記憶装置122-1から122-4の各々について下記の仮定に少なくとも一部は基づくことができる:pは3よりも大きな素数であり、データ記憶装置は、Dとして表され、Dk,jおよびk=0、1、...p-2およびj=0、1、...、p-12-1、ここで、jはデータ記憶装置kについてのj番目のチャンクである。例の方程式は、パリティ記憶装置123~126の各々について下記の仮定に少なくとも一部はやはり基づくことができる:pは3よりも大きな素数であり、パリティ記憶装置は、DPとして表され、DPi,jおよびi=1、2、3、4およびj=0、1、...、p-12-1、ここで、jはパリティ記憶装置iについてのj番目のチャンクである。いくつかの例では、データ記憶装置122-1から122-4にわたる第1の行パリティを、例の方程式1にしたがって決定することができる。これらの例に関して、第1の行パリティは、図3Aのテーブル310の右端列内に識別され、行パリティ記憶装置123内に記憶されてもよい。いくつかの例では、第1の対角パリティ集合に沿った第1の対角パリティを、例の方程式2にしたがって決定することができる。さらに下記に説明するように、第1の対角パリティは、データ記憶装置122-1から122-4のうちの1つを除くすべておよび行パリティ記憶装置123にわたることができる。これらの例に関して、第1の対角パリティは、図3Bのテーブル320の右端列内に識別され、対角パリティ記憶装置124内に記憶されてもよい。2もしp-1=p-2であれば、そうでなければ、いくつかの例によれば、テーブル320に示したように、第1の対角パリティ集合に沿った第1の対角パリティを、p-12個の行内でラップアラウンドする第1の対角パリティ集合に少なくとも一部は基づいて規定することができ、その結果、所定のストライプのそれぞれの第1の対角パリティ集合に属するすべてのチャンクが、所定のストライプ内に記憶される。例えば、テーブル320の右端列において0と識別された第1の対角パリティ集合は、行1のところにデータ記憶装置122-1、行4のところにデータ記憶装置122-3、行3のところにデータ記憶装置122-4および行2のところに行パリティ記憶装置123からのチャンクを含む。また、0と認識された第1の対角パリティ集合が、データ記憶装置122-1から122-4のうちの1つを除くすべておよび行パリティ記憶装置123にわたることに留意すること。除外された1つの記憶装置は、データ記憶装置122-2である。さらに、他の第1の対角パリティ集合もやはり、データ記憶装置122-1から122-4のうちの1つを除くすべておよび行パリティ記憶装置123にわたることに留意すること。いくつかの例では、第2の対角パリティ集合に沿った第2の対角パリティを、例の方程式3にしたがって決定することができる。さらに下記に説明するように、第2の対角パリティは、データ記憶装置122-1から122-4のうちの1つを除くすべておよび行パリティ記憶装置123にわたることができる。これらの例に関して、第2の対角パリティは、図3Cのテーブル330の右端列内に識別され、対角パリティ記憶装置125内に記憶されてもよい。3もしj/p-1==p-2であれば、そうでなければ、いくつかの例によれば、テーブル330に示したように、第2の対角パリティ集合に沿った第2の対角パリティを、p-12個の行内でラップアラウンドする第2の対角パリティ集合に少なくとも一部は基づいて規定することができ、その結果、所定のストライプのそれぞれの第2の対角パリティ集合に属するすべてのチャンクが、所定のストライプ内に記憶される。また、テーブル320に関して上に説明したものと同様に、第1の対角パリティ集合が、データ記憶装置122-1から122-4のうちの1つを除くすべておよび行パリティ記憶装置123にわたる。いくつかの例では、データ記憶装置122-1から122-4にわたる第2の行パリティを、例の方程式4にしたがって決定することができる。これらの例に関して、第2の行パリティは、図3Dのテーブル340の右端列内に識別され、行パリティ記憶装置126内に記憶されてもよい。4もしjp-11>j/p-11であれば、そうでなければ、いくつかの例によれば、テーブル340に示したように、第2の行パリティは、データ記憶装置122-1から122-4にわたることができる。また、これらの例に関して、決定した第2の行パリティの少なくとも一部は、データ記憶装置の4つすべてというよりはむしろデータ記憶装置の一部に基づくことがある。例えば、テーブル340の行2のところの行パリティは、4つのデータ記憶装置のうちの3つに基づいて決定された行パリティを示し、行12のところの行パリティは、4つのデータ記憶装置のうちの2つに基づいて決定された行パリティを示す。いくつかの例によれば、リカバリマネージャ117は、例えば、リカバリフィーチャ218を介してストレージアレイ120に関係するさまざまな異なるタイプの故障を復元するように構成された論理回路および/またはフィーチャを含むことができる。例えば、3つのデータ記憶装置が故障する場合には、リカバリマネージャ117は、行パリティ記憶装置126内に記憶された第2の行パリティに関係する1つまたは複数の行パリティ値および対角パリティ記憶装置125内に記憶された第2の対角パリティに関係する1つまたは複数の対角パリティ値を利用することができる第1の行-対角パリティRDPスキームを実装することができる。リカバリマネージャ117は、対角パリティ記憶装置124内に記憶された第1の対角パリティに関係する1つまたは複数の対角パリティ値および行パリティ記憶装置123内に記憶された第1の行パリティに関係する1つまたは複数の行パリティ値を利用第2のRDPスキームをやはり実装することができる。これらの例に関して、第1および第2のRDPスキームを実装することによって、3つの故障した記憶装置内に維持されたデータを復元することができる。いくつかの例では、データ記憶装置およびパリティ記憶装置の組み合わせが、故障することがあるか、またはデータ破壊を有することがある。例えば、データ記憶装置のうちの1つならびに行パリティ記憶装置123および対角パリティ記憶装置124の両者が、故障することがあるか、またはデータ破壊を有することがある。リカバリマネージャ117は、対角パリティ記憶装置124内に記憶された第1の対角パリティに関係する1つまたは複数の対角パリティ値および行パリティ記憶装置126内に記憶された第2の行パリティに関係する1つまたは複数の行パリティ値を利用する1つのRDPスキームを実装することができる。これらの例に関して、1つのRDPスキームを実装することの結果として、故障したデータ記憶装置内に維持されたデータを、行パリティ記憶装置123および対角パリティ記憶装置124内に記憶されたパリティ値と同様に復元することができる。上に記述した例の故障は、ストレージアレイ120の故障したまたはデータ破壊した記憶装置内に記憶したデータまたはパリティ値を復元するために、リカバリマネージャ117が1つまたは複数のRDPスキームをどのように実装することができるかのほんの2つの例である。データまたはパリティ値を復元するために行パリティ記憶装置123、126または対角パリティ記憶装置124、125内に記憶された行パリティ値および対角パリティ値を使用することによって、さまざまな他のRDPスキームを実装することができる。図4は、ストレージアレイに関係する故障からの復元を容易にするための例の方法の流れ図を図示する。いくつかの例では、図1に示したようなシステム100を、図4に示された流れ図に関する例の方法を図説するために使用する。図2に示したようなリカバリマネージャ117を、例の方法を図説するためにやはり使用することができる。しかし、説明する方法は、図1または図2に関して示したかまたは説明した実装形態に限定されない。例の方法を、図1または図2に示された要素のうちの1つまたは複数を有する別のシステムまたはマネージャ上に実装することができる。ブロック410記憶装置をストライプ化するにおいて始めて、リカバリマネージャ117は、例えば、ストライプフィーチャ212を介してストレージアレイ120の記憶装置をストライプ化するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、記憶装置を、チャンクに分割することができ、次に各記憶装置内に同数のチャンクを含むストライプへと編成することができる。前に記述したように、ストレージアレイ120の記憶装置を、p-12個に、この式のpについては5の値を有し5-12個すなわち16個のチャンクに分割することができる。ブロック410からブロック420第1の行パリティを決定するへと続けると、リカバリマネージャ117は、例えば、行フィーチャ214を介して第1の行パリティを決定するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、行フィーチャ214は、第1の行パリティを決定するために例の方程式1を実装することができる。これらの例に関して、第1の行パリティを、行パリティ記憶装置123内に記憶することができる。ブロック420からブロック430第1の対角パリティを決定するへと続けると、リカバリマネージャ117は、例えば、対角フィーチャ216を介して第1の対角パリティを決定するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、対角フィーチャ216は、第1の対角パリティを決定するために例の方程式2を実装することができる。これらの例に関して、第1の対角パリティを、対角パリティ記憶装置124内に記憶することができる。ブロック430からブロック440第2の対角パリティを決定するへと続けると、リカバリマネージャ117は、例えば、対角フィーチャ216を介して第2の対角パリティを決定するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、対角フィーチャ216は、第2の対角パリティを決定するために例の方程式3を実装することができる。これらの例に関して、第2の対角パリティを、対角パリティ記憶装置125内に記憶することができる。ブロック440からブロック450第2の行パリティを決定するへと続けると、リカバリマネージャ117は、例えば、行フィーチャ214を介して第2の行パリティを決定するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、行フィーチャ214は、第2の行パリティを決定するために例の方程式4を実装することができる。これらの例に関して、第2の行パリティを、行パリティ記憶装置126内に記憶することができる。ブロック450から判断ブロック460故障またはデータ破壊へと続けると、リカバリマネージャ117は、故障またはデータ破壊が例えば、リカバリフィーチャ218を介してストレージアレイ120の記憶装置のうちの1つまたは複数の上に生じたかどうかを決定するように構成された論理回路および/またはフィーチャを含むことができる。故障またはデータ破壊が生じている場合には、プロセスはブロック470へと移動する。そうでなければ、プロセスはブロック480へと移動する。判断ブロック460からブロック470データ/パリティ復元を実装するへと移動すると、リカバリマネージャ117は、例えば、リカバリフィーチャ218を介して1つまたは複数のリカバリスキームを実装するように構成された論理回路および/またはフィーチャを含むことができる。いくつかの例では、1つまたは複数のリカバリスキームは、ストレージアレイ120の記憶装置に関係する装置故障および/またはデータ破壊によって失われたデータまたはパリティ情報を復元させるためのRDPスキームを含むことができる。ブロック470から判断ブロック480ストライプ化すべき新たな情報かへと続けると、リカバリマネージャ117は、新たな情報またはデータが例えば、ストライプフィーチャ212を介してストレージアレイ120の記憶装置についてストライプ化する必要があるかどうかを決定するように構成された論理回路および/またはフィーチャを含むことができる。新たな情報またはデータをストライプ化する場合には、プロセスは、ブロック420へと移動し、行/対角パリティを決定することができる。そうでなければ、プロセスは判断ブロック460へと移動する。図5は、一例のコンピュータプログラム製品500のブロック図を図示する。いくつかの例では、図5に示したように、コンピュータプログラム製品500は、信号担持媒体502を含み、これは、ストレージアレイ例えば、ストレージアレイ120に関係する故障からの復元を容易にするための命令504をやはり含むことができる。ストレージアレイは、複数の記憶装置を有することができ、これは複数のデータ記憶装置、第1の行パリティ記憶装置、第2の行パリティ記憶装置、第1の対角パリティ記憶装置および第2の対角パリティ記憶装置を含む。命令504は、論理回路例えば、復元論理回路210によって実行されると、論理回路に複数のデータ記憶装置に関する第1の行パリティを決定させることができる。第1の行パリティは、複数のデータ記憶装置にわたることができ、第1の行パリティ記憶装置上に記憶されてもよい。命令504は、論理回路に第1の対角パリティ集合に沿った第1の対角パリティをやはり決定させることができる。第1の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、第1の対角パリティ記憶装置上に記憶されてもよい。命令504は、論理回路に第2の対角パリティ集合に沿った第2の対角パリティをやはり決定させることができる。第2の対角パリティは、複数のデータ記憶装置のうちの1つを除くすべておよび第1の行パリティ記憶装置にわたることができ、第2の対角パリティ記憶装置上に記憶されてもよい。命令504は、論理回路に複数のデータ記憶装置に関する第2の行パリティをやはり決定させることができる。第2の行パリティは、複数のデータ記憶装置にわたることができ、第2の行パリティ記憶装置上に記憶されてもよい。いくつかの例では、第2の行パリティの1つまたは複数の行の少なくとも一部は、複数のデータ記憶装置の一部に基づいて決定された第2の行パリティを含むことができる。また、図5に示されたように、いくつかの例では、コンピュータ製品500は、コンピュータ可読媒体506、記録可能媒体508および通信媒体510のうちの1つまたは複数を含むことができる。これらの要素のまわりの点線のボックスは、限定しないが信号担持媒体502内に含まれる異なるタイプの媒体を示す。これらのタイプの媒体は、論理回路例えば、復元論理回路210によって実行される命令504を配送することができる。コンピュータ可読媒体506および記録可能媒体508は、フレキシブルディスク、ハードディスクドライブHDD、コンパクトディスクCD、デジタル多用途ディスクDVD、デジタルテープ、コンピュータメモリ、等を含むことができるが、これらに限定されない。通信媒体510は、デジタルおよび/またはアナログ通信媒体例えば、光ファイバケーブル、導波路、有線通信リンク、無線通信リンク、等を含むことができるが、これらに限定されない。図6は、一例のコンピューティングデバイス600を図示する。いくつかの例では、図1~図2に示されたリカバリマネージャ117を、コンピューティングデバイス600上に実装することができる。これらの例では、コンピューティングデバイス600の要素を、持続性ストレージのブロックを割り当てるように、またはファイルシステムもしくはアプリケーションが持続性ストレージのブロックにアクセスするように配置するまたは構成することができる。ごく基本的な構成601では、コンピューティングデバイス600は、典型的には1つまたは複数のプロセッサ610およびシステムメモリ620を含む。メモリバス630を、プロセッサ610とシステムメモリ620との間の通信のために使用することができる。所望の構成に応じて、プロセッサ610を、限定しないが、マイクロプロセッサμP、マイクロコントローラμC、デジタル信号プロセッサDSP、またはこれらの任意の組み合わせ含む任意のタイプのものとすることができる。プロセッサ610は、レベル1キャッシュ611およびレベル2キャッシュ612などのキャシングの1つまたは複数のレベル、プロセッサコア613、ならびにレジスタ614を含むことができる。プロセッサコア613は、演算論理ユニットALU、浮動小数点ユニットFPU、デジタル信号処理コアDSPコア、またはこれらの任意の組み合わせを含むことができる。メモリコントローラ615を、プロセッサ610とともにやはり使用することができるか、またはいくつかの実装形態では、メモリコントローラ615を、プロセッサ610の内部部分とすることができる。所望の構成に応じて、システムメモリ620を、限定しないが、揮発性メモリRAMなど、不揮発性メモリROM、フラッシュメモリ、等など、またはこれらの任意の組み合わせを含む任意のタイプのものとすることができる。システムメモリ620は、典型的には、オペレーティングシステム621、1つまたは複数のアプリケーション622、およびプログラムデータ624を含む。アプリケーション622は、図2に示したリカバリマネージャ117アーキテクチャに関して記述したアクションを含む本明細書に記載したような機能を実行するように配置された命令623を含む。プログラムデータ624は、命令623例えば、行/対角パリティを決定することを実装するために有用であるリカバリデータ625を含む。いくつかの例では、アプリケーション622を、オペレーティングシステム621上でプログラムデータ624とともに動作するように配置することが可能であり、その結果、ストレージアレイに関係する故障からの復元を容易にするための実装形態を、本明細書において説明したように提供することができる。この記述した基本構成は、破線601内のこれらの構成要素によって図6中に図示される。コンピューティングデバイス600は、追加の特徴または機能ならびに基本構成601と任意の必要な装置およびインターフェースとの間の通信を容易にするための追加のインターフェースを有することができる。例えば、ストレージインターフェースバス641を介して、基本構成601と1つまたは複数のデータ記憶装置650との間の通信を容易にするために、バス/インターフェースコントローラ640使用することができる。データ記憶装置650を、取り外し式記憶装置651、非取り外し式記憶装置652、またはこれらの組み合わせとすることができる。取り外し式記憶装置および非取り外し式記憶装置の例は、いくつかの例を挙げると、フレキシブルディスクドライブおよびハードディスクドライブHDDなどの磁気ディスク装置、コンパクトディスクCDドライブまたはデジタル多用途ディスクDVDドライブなどの光ディスクドライブ、ソリッドステートドライブSSD、ならびにテープドライブを含む。例のコンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報の記憶のための任意の方法または技術において実装される揮発性および不揮発性媒体、取り外し式および非取り外し式媒体を含むことができる。システムメモリ620、取り外し式ストレージ651、および非取り外し式ストレージ652は、すべてコンピュータ記憶媒体の例である。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリもしくは他のメモリ技術、CD-ROM、デジタル多用途ディスクDVDもしくは他の光ストレージ、磁気カセット、磁気テープ、磁気ディスクストレージもしくは他の磁気記憶装置、または所望の情報を記憶するために使用することが可能でありかつコンピューティングデバイス600によってアクセスされることが可能な任意の他の媒体を含むが、これらに限定されない。任意のそのようなコンピュータ記憶媒体を、デバイス600の一部とすることができる。コンピューティングデバイス600は、バス/インターフェースコントローラ640を介して、さまざまなインターフェース装置例えば、出力インターフェース、周辺インターフェース、および通信インターフェースから基本構成601への通信を容易にするためのインターフェースバス642をやはり含むことができる。例の出力インターフェース660は、グラフィック処理ユニット661およびオーディオ処理ユニット662を含み、これらを、1つまたは複数のA/Vポート663を介してディスプレイまたはスピーカなどのさまざまな外部装置と通信するように構成することができる。例の周辺インターフェース670は、シリアルインターフェースコントローラ671またはパラレルインターフェースコントローラ672を含み、これらを、1つまたは複数のI/Oポート673を介して、入力装置例えば、キーボード、マウス、ペン、音声入力装置、タッチ入力装置、等または他の周辺装置例えば、プリンタ、スキャナ、等などの外部装置と通信するように構成することができる。一例の通信インターフェース680は、ネットワークコントローラ681を含み、これを、1つまたは複数の通信ポート682を介してネットワーク通信による1つまたは複数の他のコンピューティングデバイス690との通信を容易にするように配置することができる。ネットワーク通信接続は、通信媒体の一例である。通信媒体を、典型的には、コンピュータ可読命令、データ構造、プログラムモジュール、または搬送波もしくは他の移送機構などの変調したデータ信号中の他のデータによって具体化することができ、任意の情報配信媒体を含む。変調したデータ信号は、その特性の1つもしくは複数が、信号または信号中の情報を符号化するように設定または変更された信号とすることができる。例として、限定ではなく、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、無線周波数RF、赤外線IRおよび他のワイヤレス媒体などのワイヤレス媒体を含むことができる。本明細書において使用されるときコンピュータ可読媒体という用語は、記憶媒体および通信媒体の両方を含むことができる。コンピューティングデバイス600を、セルフォン、スマートフォン、パーソナルデータアシスタントPDA、パーソナルメディアプレーヤ装置、ワイヤレスウェブウォッチ装置、パーソナルハンドセット装置、特定用途向け装置、または上記の機能のいずれかを含むハイブリッド装置などのスモールフォームファクタ携帯型もしくはモバイル電子装置の一部として実装することができる。コンピューティングデバイス600を、ラップトップコンピュータおよび非ラップトップコンピュータ構成の両方を含むパーソナルコンピュータとしてやはり実装することができるか、またはワークステーションもしくはサーバ構成中にやはり実装することができる。本開示において用語に応じてresponsivetoまたはに応答してinresponsetoに言及することは、特定の特徴および/または構造に対する応答性に限定されない。特徴は、もう1つの特徴および/または構造にやはり応じることができ、その特徴および/または構造内にやはり設置されることが可能である。その上、結合されたcoupledまたは応じてresponsiveまたはに応答してまたはと通信してincommunicationwith、等などの用語または語句が本明細書においてまたは別記の特許請求の範囲において使用されるときには、これらの用語を、広く解釈すべきである。例えば、句に結合されるcoupledtoは、この句が使用される文脈に関して適切であるように通信可能に、電気的におよび/または動作可能に結合されることを指すことができる。本明細書で説明したやり方で装置および/またはプロセスを記載し、その後そのように記載された装置例えば、送信機、受信機、ワイヤレス装置、コンピューティングプラットフォーム、コンピューティングデバイス、等および/または方法を、データ処理システムに統合するためにエンジニアリング方式を使用することは、当技術分野で一般的であることを当業者は認識するであろう。すなわち、本明細書に記載された装置および/または方法の少なくとも一部を、妥当な数の実験によってデータ処理システムに統合することができる。通常のデータ処理システムは、一般に、システムユニットハウジング、ビデオディスプレイ装置、揮発性メモリおよび不揮発性メモリなどのメモリ、マイクロプロセッサおよびデジタル信号プロセッサなどのプロセッサ、オペレーティングシステムなどの計算実体、ドライバ、グラフィカルユーザインタフェース、およびアプリケーションプログラムのうちの1つもしくは複数、タッチパッドもしくはスクリーンなどの1つもしくは複数の相互作用装置、ならびに/またはフィードバックループおよびコントロールモータを含むコントロールシステム例えば、位置検知用および/もしくは速度検知用フィードバック、コンポーネントの移動用および/もしくは数量の調整用コントロールモータを含むことを、当業者は理解するであろう。通常のデータ処理システムは、データコンピューティング/通信システムおよび/またはネットワークコンピューティング/通信システムの中に通常見られるコンポーネントなどの、市販の適切なコンポーネントを利用して実装することができる。本明細書に記載された主題は、さまざまなコンポーネントまたは要素をしばしば例示しており、これらのコンポーネントまたは要素は、他のさまざまなコンポーネントまたは要素に包含されるか、または他のさまざまなコンポーネントまたは要素に接続される。そのように図示されたアーキテクチャは、単に例にすぎず、実際には、同じ機能を実現する多くの他のアーキテクチャが実装可能であることが理解されよう。概念的な意味で、同じ機能を実現するコンポーネントの任意の構成は、所望の機能が実現されるように効果的に関連付けされる。したがって、特定の機能を実現するために組み合わされた、本明細書における任意の2つのコンポーネントは、アーキテクチャまたは中間のコンポーネントにかかわらず、所望の機能が実現されるように、お互いに関連付けされていると見ることができる。同様に、そのように関連付けされた任意の2つのコンポーネントは、所望の機能を実現するために、互いに動作可能に接続または動作可能に結合されていると見なすこともでき、そのように関連付け可能な任意の2つのコンポーネントは、所望の機能を実現するために、互いに動作可能に結合できると見なすこともできる。動作可能に結合できる場合の具体例には、物理的にかみ合わせ可能な、および/もしくは物理的に相互作用するコンポーネント、ならびに/またはワイヤレスに相互作用可能な、および/もしくはワイヤレスに相互作用するコンポーネント、ならびに/または論理的に相互作用する、および/もしくは論理的に相互作用可能なコンポーネントが含まれるが、それらに限定されない。本明細書における実質的にすべての複数形および/または単数形の用語の使用に対して、当業者は、状況および/または用途に適切なように、複数形から単数形に、および/または単数形から複数形に変換することができる。さまざまな単数形/複数形の置き換えは、理解しやすいように、本明細書で明確に説明することができる。通常、本明細書において、特に添付の特許請求の範囲例えば、添付の特許請求の範囲の本体部において使用される用語は、全体を通じてオープンなopen用語として意図されていることが、当業者には理解されよう例えば、用語含むincludingは、含むがそれに限定されないincludingbutnotlimitedtoと解釈されるべきであり、用語有するhavingは、少なくとも有するhavingatleastと解釈されるべきであり、用語含むincludesは、含むがそれに限定されないincludesbutisnotlimitedtoと解釈されるべきである、など。導入される請求項で具体的な数の記載が意図される場合、そのような意図は、当該請求項において明示的に記載されることになり、そのような記載がない場合、そのような意図は存在しないことが、当業者にはさらに理解されよう。例えば、理解の一助として、添付の特許請求の範囲は、導入句少なくとも1つのatleastoneおよび1つまたは複数のoneormoreを使用して請求項の記載を導くことを含む場合がある。しかし、そのような句の使用は、同一の請求項が、導入句1つまたは複数のまたは少なくとも1つのおよびaまたはanなどの不定冠詞を含む場合であっても、不定冠詞aまたはanによる請求項の記載の導入が、そのように導入される請求項の記載を含む任意の特定の請求項を、単に1つのそのような記載を含む発明に限定する、ということを示唆していると解釈されるべきではない例えば、aおよび/またはanは、通常、少なくとも1つのまたは1つまたは複数のを意味すると解釈されるべきである。同じことが、請求項の記載を導入するのに使用される定冠詞の使用にも当てはまる。また、導入される請求項の記載で具体的な数が明示的に記載されている場合でも、そのような記載は、通常、少なくとも記載された数を意味すると解釈されるべきであることが、当業者には理解されよう例えば、他の修飾語なしでの2つの記載tworecitationsの単なる記載は、通常、少なくとも2つの記載、または2つ以上の記載を意味する。さらに、A、BおよびC、などの少なくとも1つに類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている例えば、A、B、およびCの少なくとも1つを有するシステムは、Aのみ、Bのみ、Cのみ、AおよびBを共に、AおよびCを共に、BおよびCを共に、ならびに/またはA、B、およびCを共に、などを有するシステムを含むが、それに限定されない。A、B、またはC、などの少なくとも1つに類似の慣例表現が使用されている事例では、通常、そのような構文は、当業者がその慣例表現を理解するであろう意味で意図されている例えば、A、B、またはCの少なくとも1つを有するシステムは、Aのみ、Bのみ、Cのみ、AおよびBを共に、AおよびCを共に、BおよびCを共に、ならびに/またはA、B、およびCを共に、などを有するシステムを含むが、それに限定されない。2つ以上の代替用語を提示する事実上いかなる離接する語および/または句も、明細書、特許請求の範囲、または図面のどこにあっても、当該用語の一方oneoftheterms、当該用語のいずれかeitheroftheterms、または両方の用語bothtermsを含む可能性を企図すると理解されるべきであることが、当業者にはさらに理解されよう。例えば、句AまたはBは、AまたはBあるいはAおよびBの可能性を含むことが理解されよう。さまざまな態様および実施形態を本明細書において開示してきたが、他の態様および実施形態は、当業者には明白であろう。本明細書において開示したさまざまな態様および実施形態は、例示の目的のためであり、限定するようには意図されず、真の範囲および精神は別記の特許請求の範囲によって示される。"