説明

ミラー化データ・ストレージ・システムにおけるエラーを検出するための方法、コンピュータ・プログラム及びシステム

【課題】ミラー化データ・ストレージ・システムにおいてエラーを検出するための方法及びシステムを提供する。
【解決手段】ミラー化データ・ストレージ・システムは、第1のエラー検出及び訂正コード(ECC)アルゴリズムを適用する第1のミラー化システム及び第2のECCアルゴリズムを適用する第2のミラー化システムを備える。本方法は、第1及び第2のミラー化システムの各々における回復済みデータを読み取り、4つの計算済みECC値を生成するように第1及び第2のECCアルゴリズムの両方を適用することにより、第1及び第2のミラー化システムの各々における回復済みデータを処理する。本方法は、計算済みECC値を使用して、第1及び第2のミラー化システムの正しい回復済みデータを決定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ミラー化データ・ストレージ・システムに係り、さらに詳細に説明すれば、ミラー化データ・ストレージ・システムにおけるエラーを検出することに係る。
【背景技術】
【0002】
ストレージ・システム(例えば、ディスク・システム又はコンピュータのメモリ・サブシステム)では、障害後に動作を継続するようにストレージを複製又はミラーすることが一般的である。メモリ・サブシステムでは、これをメモリ・ミラーリングと称し、ディスク・ストレージ・システムでは、これをRAID 1と称する。
【0003】
ディスクは、コンピュータ・システムの本質的に信頼性の低いコンポーネントである。ミラーリングとは、ディスク・ハードウェア障害の場合にシステムがデータを継続して処理するか又は速やかにデータを回復することができるように、システムが自動的にデータの複数のコピーを維持することを可能にする技術である。ミラーリングは、ディスクの非信頼性に対処する場合には、これを局所的に行うことができ、より精巧な災害時回復スキームの一部を形成する場合には、これを遠隔的に行うことができ、高可用性システムについては、これを局所的及び遠隔的の両方で行うことができる。通常、データは物理的に同一のドライブ上にミラー化される。但し、基礎をなす物理フォーマットがミラーリング・プロセスから隠される場合、このプロセスは、論理ドライブに適用することができる。一般に、ミラーリングは、ディスク・アレイのようなハードウェア形式の解決策として提供されるか、又はオペレーティング・システムにおけるソフトウェア形式の解決策として提供される。
【0004】
作業ストレージ・システムでは、ストレージから読み戻された値における少数のエラーを見出すことは珍しくない。ランダム・アクセス・メモリ(RAM)の場合、不良セル及び一時的な障害に起因してエラーが生じる。一時的な障害は、アルファ粒子又は宇宙線がRAM内で相互作用することに起因する。これらの希なエラーに対処するために、システムはエラー検出及び訂正コード(ECC)を含む。
【0005】
ECCは、ストレージのブロックの要約としてデータの幾つかの余分なビットを格納する。データを再びロードする場合、ECC(Ec)は、ロードされたデータ(Dr)から再計算され、ストレージから読み取られたECC要約(E)と比較される。それらが異なっていれば、ECCは、(幾つかのエラーについて)元の値を回復するためにどのビットをトグルすべきかを示すことができる。
【0006】
任意の特定のECCシステムは、ストレージの所与のブロックにおいて、当該システムが検出可能なエラーの数及び当該システムが訂正可能なエラーの数に制限を有する。例えば、或るECCシステムは、単一ビット・エラーを訂正するか又はエラーのペアを検出するのに十分な情報を保持することを保証する。かかるシステムにおいて、当該ブロック内の3ビットが破損していれば、当該ECCシステムは、そのエラーを検出することもあるし、検出しないこともある。そのエラーが検出されなければ、当該ECCシステムは、そのエラーと正しい値を区別することができない。
【0007】
ミラーリング及びECCの両方を備えたシステムでは、これらの2つは、次のような意味で独立しているのが普通である。すなわち、ミラー化システムの各側がECCを有し、そしてECCが訂正不能エラーを検出すれば、唯1つのオプションは、他のミラー化システムからのデータを使用することである。
【0008】
図1は、第1のミラー化システム110及び第2のミラー化システム120を備えた、ミラー化データ・ストレージ・システム100を示す。
【0009】
第1のミラー化システム110は、ストレージ媒体に格納されたデータセットD1(参照番号111)を有する。データセットD1に対しECCアルゴリズム130を適用することにより、ECC値E1(参照番号112)が生成される。
【0010】
同様に、第2のミラー化システム120は、ストレージ媒体に格納されたデータセットD2(参照番号121)を有する。データセットD2に対し同じECCアルゴリズム130を適用することにより、ECC値E2(参照番号122)が生成される。
【0011】
第1のミラー化システム110における回復済みデータ151は、点線によって示されるように、ストレージ媒体から読み取られ且つデータセットD1と同じであるべき回復済みデータセットDr1(参照番号113)を含む。回復済みデータセットDr1に対しECCアルゴリズム130を適用することにより、予期されたECC値Ec1(参照番号114)が生成される。点線によって示されるように、ストレージ媒体から読み取られた回復済みECC値Er1(参照番号115)は、ECC値E1と同じであるべきである。
【0012】
第2のミラー化システム120における回復済みデータ152は、ストレージ媒体から読み取られ且つデータセットD2と同じであるべき回復済みデータセットDr2(参照番号123)を含む。回復済みデータセットDr2に対しECCアルゴリズム130を適用することにより、予期されたECC値Ec2(参照番号124)が生成される。点線によって示されるように、ストレージ媒体から読み取られた回復済みECC値Er2(参照番号125)は、ECC値E2と同じであるべきである。
【0013】
各ミラー化システムは、1セットのデータ(D1、D2)及び1セットのECC値(E1、E2)を有する。E1=ECC(D1)及びE2=ECC(D2)となるように、両方のミラー化システムについて同じアルゴリズムが使用される。読み取り時には、回復済みデータ(Dr1、Dr2)を使用することにより、予期されたECC値Ec1=ECC(Dr1)、Ec2=ECC(Dr2)が計算される。Ec1=E1であれば、D1が有効であり、Ec2=E2であれば、D2が有効である。不一致は、データ又はECC値のどれが破損していることを示す。何れか1つが一致すれば、そのデータは正しいと仮定される。両方が一致すれば、選択は任意である。ECCが検出しないエラーは、破損データの読み取りを可能にするであろう。
【0014】
また、エラーを検出するために、Dr1及びDr2を比較することも可能であろう。(エラー訂正をパスしたとしても)Dr1及びDr2が一致しなければ、ECCが検出しないエラーが検出されることになるが、そのエラーを訂正することはできない。というのは、Dr1及びDr2のうちどれが正しいかを知ることができないからである。
【発明の概要】
【発明が解決しようとする課題】
【0015】
コンピュータ・クラスタのサイズが増大し且つストレージ・サイズが増大するにつれて、システム全体におけるエラーの数が増加する。
【課題を解決するための手段】
【0016】
本発明の第1の側面に従って、第1のエラー検出及び訂正コード(ECC)アルゴリズムを適用する第1のミラー化システム及び第2のECCアルゴリズムを適用する第2のミラー化システムを備えたミラー化データ・ストレージ・システムにおけるエラーを検出するための方法が提供される。この方法は、
前記第1及び第2のミラー化システムの各々における回復済みデータを読み取るステップと、
4つの計算済みECC値を生成するように前記第1及び第2のECCアルゴリズムの両方を適用することにより、前記第1及び第2のミラー化システムの各々における前記回復済みデータを処理するステップと、
前記計算済みECC値を使用して、前記第1及び第2のミラー化システムの正しい回復済みデータを決定するステップを有する。
【0017】
本発明の第2の側面に従って、前記第1の側面に従った方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラムが提供される。
【0018】
本発明の第3の側面に従って、ミラー化データ・ストレージ・システムにおけるエラーを検出するためのシステムであって、
第1のエラー検出及び訂正コード(ECC)アルゴリズムを適用する第1のミラー化システムと、
第2のECCアルゴリズムを適用する第2のミラー化システムと、
前記;第1及び第2のミラー化システムの各々における回復済みデータを読み取るためのデータ回復コンポーネントと、
4つの計算済みECC値を生成するように前記第1及び第2のECCアルゴリズムの両方を適用することにより、前記第1及び第2のミラー化システムの各々における回復済みデータを処理するためのエラー訂正コード適用コンポーネントと、
前記計算済みECC値を使用して、前記第1及び第2のミラー化システムの正確な回復済みデータを決定するための比較コンポーネントを備えるシステムが提供される。
【0019】
発明と見なされる主題は、特許請求の範囲において特定され且つ明確に記載されている。本発明の目的、特徴及び効果に加えて、その構成及び動作の方法は、添付の図面とともに以下の詳細な説明を参照することによって最も良く理解されるであろう。
【発明の効果】
【0020】
本発明は、各ミラー化システムが異なるECCを有するミラー化データ・ストレージ・システムにおいて、両方のミラー化システムからの読み取りを行うとともに、ECCによって検出されない破損を検出するために比較を行うことが可能であるという効果を奏する。
【図面の簡単な説明】
【0021】
【図1】従来技術に従った公知のミラー化データ・ストレージ・システムの概略図である。
【図2】本発明に従ったミラー化データ・ストレージ・システムの概略図である。
【図3】本発明に従ったシステムのブロック図である。
【図4】本発明を実装することができるコンピュータ・システムのブロック図である。
【図5】本発明に従った方法のフローチャートである。
【発明を実施するための形態】
【0022】
説明を簡単にし且つ明瞭にするため、図面中の要素は、必ずしも正確な尺度で描かれていないことに留意されたい。例えば、明瞭さのために、或る要素の次元は、他の要素に対し誇張されていることがある。さらに、適切であると考えられる場合には、複数の図面中の対応するか又は類似した特徴を示すために、同一の参照番号が複数の図面中で使用されることがある。
【0023】
本発明を十分に理解することができるように、以下の詳細な説明では、多くの特定の詳細事項が開示される。しかし、本発明は、これらの特定の詳細事項なしで実施できることを理解されたい。また、本発明を不明瞭にしないように、周知の方法、手順及びコンポーネントは、詳細には開示されていない。
【0024】
本発明に従った方法及びシステムが実装されるミラー化データ・ストレージ・システムでは、2つのミラー化データ・コピーについて、異なるエラー検出及び訂正コード(ECC)アルゴリズムが使用される。エラーは、他方のECCアルゴリズムではなく、一方のECCアルゴリズムによって検出されることがある。読み取り回復済みのデータは、4つの計算済みECC値を生成するように両方のECCアルゴリズムによって処理され、その各々は互いに他の1つと比較される。正しいミラー化システムは、2つのECCセットの相互比較(cross-comparison)によって決定することができる。さらに、或るミラー化システムにおけるECC値のペアは、破損データ及び破損ECC値を識別するために使用することができる。
【0025】
図2は、第1のミラー化システム210及び第2のミラー化システム220を備えた、ミラー化データ・ストレージ・システム200を示す。
【0026】
第1のミラー化システム210は、ストレージ媒体に格納されたデータセットD1(参照番号211)を有する。データセットD1に対し第1のECCアルゴリズムであるECCa(参照番号231)を適用することにより、ECC値E1(参照番号212)が生成される。ECC値E1は格納される。
【0027】
第2のミラー化システム220は、ストレージ媒体に格納されたデータセットD2(参照番号221)を有する。データセットD2に対し第2の異なるECCアルゴリズムであるECCb(参照番号232)を適用することにより、ECC値E2(参照番号222)が生成される。ECC値E2は格納される。
【0028】
第1のミラー化システム210における回復済みデータ251は、回復済みデータセットDr1(参照番号213)を含む。回復済みデータセットDr1に対し第1のECCアルゴリズムであるECCa(参照番号231)及び第2のECCアルゴリズムであるECCb(参照番号232)を適用することにより、ECC値E1a(参照番号214)及びE1b(参照番号215)がそれぞれ生成される。
【0029】
第2のミラー化システム220における回復済みデータ252は、回復済みデータセットDr2(参照番号223)を含む。回復済みデータセットDr2に対し第1のECCアルゴリズムであるECCa(参照番号231)及び第2のECCアルゴリズムであるECCb(参照番号232)を適用することにより、ECC値E2a(参照番号224)及びE2b(参照番号225)がそれぞれ生成される。
【0030】
さらに、回復済みデータ251及び252は、各ミラー化システムにおける回復済みECC値として、Er1(参照番号216)及びEr2(参照番号226)を含む。
【0031】
異なるECCアルゴリズムは、E1=ECCa(D1)及びE2=ECCb(D2)となるように、2つのミラー化システムについて使用される。これが機能する仮定とは、2つのECCアルゴリズムを使用すると、一方のアルゴリズムによって検出されるが他方のアルゴリズムによって検出されないエラーが存在するだろうというものである。その結果、検出されないエラーの場合は、システムをより弾力的にすることができる。
【0032】
読み取り時には、回復済みデータ(Dr1、Dr2)を両方のECCアルゴリズムによって処理することにより、4つの計算済みECC値として、E1a、E1b、E2a、E2b(但し、Enxはデータnに適用されるECCアルゴリズムxである)が生成される。この段階で、回復済みECC値(Er1、Er2)に対して行うことができる比較は、次の通りである。
Er1=E1a
Er1=E2a
Er2=E2b
Er2=E1b。
各比較が生成することができる3つの結果は、次の通りである。
(x)一致
(y)不一致(ECCは訂正可能)
(z)不一致(ECCは訂正不能)
【0033】
かかる比較の任意の結果は、必ずしも実際の結果ではない。例えば、Er又はDrの多数の破損が生じ且つこれが他の有効な結果のように見える場合にも、一致が生じることがあるからである。不一致は、Er及びDrの一方又は両方の破損から生じることがある。
【0034】
このように、各ミラー化システムが異なるECCを有するミラー化データ・ストレージ・システムは、両方のミラー化システムからの読み取りを行うとともに、ECCによって検出されない破損を検出するために比較を行うことが可能である。
【0035】
第1のデータ比較は、2つのミラー化システムの回復済みデータDr1及びDr2の間で行うことができる。このデータ比較が不一致(Dr1≠Dr2)の結果を生成する場合、2つのECCセットの相互比較によって、正しいミラー化システムが決定される。
【0036】
もし、E1b≠Er2であるがE2a=Er1であれば、Dr1は破損しており、Dr2は正常である。Dr1が破損しているのは、Dr1がE1bを生成するために使用され、そしてE1bが回復済みEr2と一致しないからである。Dr2が正常であるのは、Dr2がE2aを生成するために使用され、そしてE2aが回復済みEr1と一致するからである。
【0037】
また、Dr1及びDr2のデータ比較を行うことなく、利益を得ることも可能である。各ミラー化システムが異なるECCを有するミラー化データ・ストレージ・システムでは、ECC値のペアを使用することにより、破損データ(Dr1、Dr2)及び破損ECC値(Er1、Er2)を区別することが可能である。
【0038】
もし、Er1≠E1aであり且つEr2≠E1bであれば、Dr1が破損している蓋然性が最も高い。というのは、その両方のECC値が不一致となっているからである。Er1≠E1aであり且つEr1≠E2bである場合は、データではなくEr1が破損している蓋然性がある。というのは、Er1を使用する両方のECC値が不一致となっているからである。
【0039】
図3は、本発明に従ったシステム300の実施形態を示す。ミラー化システム310、320の各々は、格納済みデータ312、322を保持するとともに、ECCコンポーネント314、324によって計算されるような格納済みECC値313、323を保持する、データ・ストレージ311、321を有する。2つのミラー化システム310、320の各々は、それらのECCコンポーネント314、324において、異なるECCアルゴリズム、すなわちアルゴリズム1(参照番号315)及びアルゴリズム2(参照番号325)をそれぞれ使用する。
【0040】
各ミラー化システム310、320は、回復コンポーネント330、340を有する。回復コンポーネント330、340は、データ332、342及びECC値333、343を回復するためのデータ回復コンポーネント331、341を有する。ECC適用(applier)コンポーネント334、344は、回復済みデータに対しアルゴリズム1及びアルゴリズム2(それ自体のミラー化システムのECCアルゴリズム及び他方のミラー化システムのECCアルゴリズム)を適用するために設けられる。
【0041】
回復コンポーネント330、340に設けられた比較コンポーネント335、345は、回復済みデータを他方のミラー化システムと比較するとともに、回復済みECC値をECC適用コンポーネント334、344の結果と比較する。エラー検出コンポーネント336、346は、正しいデータ値を決定する。
【0042】
図4は、本発明の諸側面を実装するための典型的なコンピュータ・システムを示す。当該コンピュータ・システムに設けられるデータ処理システム400は、プログラム・コードを格納及び/又は実行するのに適しており、バス・システム403を通してメモリ要素に対し直接的に又は間接的に結合された少なくとも1つのプロセッサ401を含む。これらのメモリ要素は、プログラム・コードの実行中に使用されるローカル・メモリ、バルク・ストレージ、プログラム・コードの実行中にバルク・ストレージからの取り出し回数を減少させるために少なくとも或るプログラム・コードの一時的記憶領域を提供するキャッシュ・メモリを含むことができる。
【0043】
これらのメモリ要素は、読み取り専用メモリ(ROM)404及びランダム・アクセス・メモリ(RAM)405の形式を有するシステム・メモリ402を含むことができる。基本入出力システム(BIOS)406は、ROM 404内に格納することができる。オペレーティング・システム408を含むシステム・ソフトウェア407は、RAM 405内に格納することができる。ソフトウェア・アプリケーション410も、RAM 405内に格納することができる。
【0044】
また、システム400は、磁気ディスク・ドライブのような1次ストレージ手段411と、磁気ディスク・ドライブ及び光ディスク・ドライブのような2次ストレージ手段412を含むことができる。これらのドライブ及びそれらに関連するコンピュータ可読媒体は、システム400のためのコンピュータ実行可能命令、データ構造、プログラム・モジュール及び他のデータの不揮発性ストレージを提供する。ソフトウェア・アプリケーションは、1次及び2次ストレージ手段411、412及びシステム・メモリ402上に格納することができる。
【0045】
システム400は、ネットワーク・アダプタ416を介する1つ以上の遠隔コンピュータへの論理接続を使用して、ネットワーク化環境内で動作することができる。
【0046】
入出力装置413は、直接的に又は介在するI/Oコントローラを通してシステム400に結合することができる。ユーザは、キーボードのような入力装置、ポインティング・デバイス又は他の入力装置(例えば、マイクロホン、ジョイ・スティック、ゲーム・パッド、衛星放送アンテナ、スキャナ等)を通して、コマンド及び情報をシステム400に入力することができる。出力装置は、スピーカ、プリンタ等を含むことができる。また、ディスプレイ装置414は、ビデオ・アダプタ415のようなインタフェースを介してシステム・バス403に接続される。
【0047】
図5は、本発明に従った方法のフローチャート500を示す。フローチャート500の左側510は、第1のミラー化システムにおけるプロセスを示し、フローチャート500の右側520は、第2のミラー化システムにおけるプロセスを示す。
【0048】
第1のミラー化システムでは、データセットD1が格納される(ステップ511)。第1のECCアルゴリズムであるECCaを適用することにより(ステップ512)、ECC値E1が生成され且つ格納される(ステップ513)。読み取り回復時には、データDr1及びECC値Er1が回復される(ステップ514)。回復済みデータDr1に対し第1のECCアルゴリズムであるECCaを適用することにより、ECC値E1aが生成される(ステップ515)。回復済みデータDr1に対し他方のミラー化システムにおいて使用されるような第2のECCアルゴリズムであるECCbを適用することにより、ECC値E1bが生成される(ステップ516)。
【0049】
第2のミラー化システムでは、データセットD2が格納される(ステップ521)。第2のECCアルゴリズムであるECCbを適用することにより(ステップ522)、ECC値E2が生成され且つ格納される(ステップ523)。読み取り回復時には、データDr2及びECC値Er2が回復される(ステップ524)。回復済みデータDr2に対し他方のミラー化システムにおいて使用されるような第1のECCアルゴリズムであるECCaを適用することにより、ECC値E2aが生成される(ステップ525)。回復済みデータDr2に対し第2のECCアルゴリズムであるECCbを適用することにより、ECC値E2bが生成される(ステップ526)。
【0050】
次に、これらの結果が2つのミラー化システムの間で比較される。第1のミラー化システムの回復済みデータDr1が、第2のミラー化システムの回復済みデータDr2と比較される(ステップ530)。第1のミラー化システムの回復済みECC値Er1が、第1のECCアルゴリズムを使用してDr1及びDr2から決定された計算済みECC値E1a及びE2aと比較される(ステップ531)。第2のミラー化システムの回復済みECC値Er2が、第2のECCアルゴリズムを使用してDr1及びDr2から決定された計算済みECC値E1b及びE2bと比較される(ステップ532)。
【0051】
相互比較によって、Dr1又はDr2の正しい値が決定される(ステップ533)。当該相互比較によって、正しいのが回復済みデータDr1/Dr2又は回復済みECC値Er1/Er2のどれであるかということも決定される(ステップ534)。その後、正しいデータが戻される(ステップ535)。
【0052】
本発明は、完全にハードウェアの実施形態、完全にソフトウェアの実施形態又はハードウェア及びソフトウェア要素の両方を含む実施形態の形式を取ることができる。物理メモリの場合には、ハードウェアの実施形態が使用される蓋然性が高い。ディスク・ストレージの場合には、ハードウェアの実施形態又はソフトウェアの実施形態の何れかを使用することができる。
【0053】
本発明は、コンピュータ又は任意の命令実行システムに関連して又はこれらによって使用するためのプログラム・コードを提供する、コンピュータ使用可能媒体又はコンピュータ可読媒体からアクセス可能なコンピュータ・プログラムの形式を取ることができる。この記載の目的上、コンピュータ使用可能媒体又はコンピュータ可読媒体は、命令実行システム、装置等に関連して又はこれらによって使用するためのプログラムを保持し、格納し、通信し、伝送し、移送する、任意の装置とすることができる。
【0054】
媒体は、電子、磁気、光学、電磁気、赤外線又は半導体式のシステム(若しくは装置)又は伝送媒体とすることができる。コンピュータ可読媒体の例には、半導体又は固体メモリ、磁気テープ、取り外し可能なフレキシブル・ディスク、ランダム・アクセス・メモリ(RAM)、読み取り専用メモリ(ROM)、剛体磁気ディスク及び光ディスクがある。光ディスクの例には、読み取り専用のCD−ROM、読み書き可能なCD−R/W及びDVDがある。
【0055】
本発明の範囲から逸脱することなく、前述の実施形態に対し種々の改良及び修正を行うことができる。
【符号の説明】
【0056】
200・・・ミラー化データ・ストレージ・システム
210・・・第1のミラー化システム
211・・・データセットD1
212・・・ECC値E1
213・・・回復済みデータセットDr1
214・・・計算済みECC値E1a
215・・・計算済みECC値E1b
216・・・回復済みECC値Er1
220・・・第2のミラー化システム
221・・・データセットD2
222・・・ECC値E2
223・・・回復済みデータセットDr2
224・・・計算済みECC値E2a
225・・・計算済みECC値E2b
226・・・回復済みECC値Er2
231・・・第1のECCアルゴリズムECCa
232・・・第1のECCアルゴリズムECCb
251・・・回復済みデータ
252・・・回復済みデータ
310、320・・・ミラー化システム
311、321・・・データ・ストレージ
312、322・・・格納済みデータ
313、323・・・格納済みECC値
314、324・・・ECCコンポーネント
315・・・ECCアルゴリズム1
325・・・ECCアルゴリズム2
330、340・・・回復コンポーネント
331、341・・・データ回復コンポーネント
332、342・・・回復済みデータ
333、343・・・回復済みECC値
334、344・・・ECC適用コンポーネント
335、345・・・比較コンポーネント
336、346・・・エラー検出コンポーネント

【特許請求の範囲】
【請求項1】
第1のエラー検出及び訂正コード(ECC)アルゴリズムを適用する第1のミラー化システム及び第2のECCアルゴリズムを適用する第2のミラー化システムを備えたミラー化データ・ストレージ・システムにおけるエラーを検出するための方法であって、
前記第1及び第2のミラー化システムの各々における回復済みデータを読み取るステップと、
4つの計算済みECC値を生成するように前記第1及び第2のECCアルゴリズムの両方を適用することにより、前記第1及び第2のミラー化システムの各々における前記回復済みデータを処理するステップと、
前記計算済みECC値を使用して、前記第1及び第2のミラー化システムの正しい前記回復済みデータを決定するステップを有する、方法。
【請求項2】
前記第1及び第2のミラー化システムの各々における回復済みECC値を読み取るステップをさらに有する、請求項1に記載の方法。
【請求項3】
前記第1のミラー化システムの前記回復済みECC値を、前記4つの計算済みECC値のうち前記第1及び第2のミラー化システム内で前記第1のECCアルゴリズムを使用して生成された2つの計算済みECC値と比較するステップをさらに有する、請求項2に記載の方法。
【請求項4】
前記第2のミラー化システムの前記回復済みECC値を、前記4つの計算済みECC値のうち前記第1及び第2のミラー化システム内で前記第2のECCアルゴリズムを使用して生成された2つの計算済みECC値と比較するステップをさらに有する、請求項2に記載の方法。
【請求項5】
前記第1及び第2のミラー化システムの前記回復済みデータのうちどれが正しいかを決定するステップをさらに有する、請求項1に記載の方法。
【請求項6】
前記第1及び第2のミラー化システムの前記回復済みデータ及び前記回復済みECC値のうちどれが正しいかを決定するステップをさらに有する、請求項1に記載の方法。
【請求項7】
前記ミラー化データ・ストレージ・システムが、メモリ・ミラーリングを使用するメモリ・サブシステム又は新磁気ディスク制御機構(RAID)システムを使用するディスク・ストレージ・システムである、請求項1に記載の方法。
【請求項8】
請求項1ないし請求項7の何れか1項に記載の方法の各ステップをコンピュータに実行させるためのコンピュータ・プログラム。
【請求項9】
ミラー化データ・ストレージ・システムにおけるエラーを検出するためのシステムであって、
第1のエラー検出及び訂正コード(ECC)アルゴリズムを適用する第1のミラー化システムと、
第2のECCアルゴリズムを適用する第2のミラー化システムと、
前記第1及び第2のミラー化システムの各々における回復済みデータを読み取るためのデータ回復コンポーネントと、
4つの計算済みECC値を生成するように前記第1及び第2のECCアルゴリズムの両方を適用することにより、前記第1及び第2のミラー化システムの各々における回復済みデータを処理するためのエラー訂正コード適用コンポーネントと、
前記計算済みECC値を使用して、前記第1及び第2のミラー化システムの正しい回復済みデータを決定するための比較コンポーネントを備える、システム。
【請求項10】
前記データ回復コンポーネントは、前記第1及び第2のミラー化システムの各々における回復済みECC値を読み取る、請求項9に記載のシステム。
【請求項11】
前記比較コンポーネントは、前記第1のミラー化システムの回復済みECC値を、前記4つの計算済みECC値のうち前記第1及び第2のミラー化システム内で前記第1のECCアルゴリズムを使用して生成された2つの計算済みECC値と比較する、請求項10に記載のシステム。
【請求項12】
前記比較コンポーネントは、前記第2のミラー化システムの回復済みECC値を、前記4つの計算済みECC値のうち前記第1及び第2のミラー化システム内で前記第2のECCアルゴリズムを使用して生成された2つの計算済みECC値と比較する、請求項10に記載のシステム。
【請求項13】
前記第1及び第2のミラー化システムの前記回復済みデータのうちどれが正しいかを決定するためのエラー検出コンポーネントをさらに備える、請求項9に記載のシステム。
【請求項14】
前記第1及び第2のミラー化システムの前記回復済みデータ及び前記回復済みECC値のうちどれが正しいかを決定するためのエラー検出コンポーネントをさらに備える、請求項9に記載のシステム。
【請求項15】
前記ミラー化データ・ストレージ・システムが、メモリ・ミラーリングを使用するメモリ・サブシステム又は新磁気ディスク制御機構(RAID)システムを使用するディスク・ストレージ・システムである、請求項9に記載のシステム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate


【公開番号】特開2012−104112(P2012−104112A)
【公開日】平成24年5月31日(2012.5.31)
【国際特許分類】
【出願番号】特願2011−242664(P2011−242664)
【出願日】平成23年11月4日(2011.11.4)
【出願人】(390009531)インターナショナル・ビジネス・マシーンズ・コーポレーション (4,084)
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MASCHINES CORPORATION
【Fターム(参考)】