JP5966744B2 - ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 - Google Patents
ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 Download PDFInfo
- Publication number
- JP5966744B2 JP5966744B2 JP2012173522A JP2012173522A JP5966744B2 JP 5966744 B2 JP5966744 B2 JP 5966744B2 JP 2012173522 A JP2012173522 A JP 2012173522A JP 2012173522 A JP2012173522 A JP 2012173522A JP 5966744 B2 JP5966744 B2 JP 5966744B2
- Authority
- JP
- Japan
- Prior art keywords
- control
- data
- mirror
- check information
- control devices
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error 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/0766—Error or fault reporting or storing
- G06F11/0787—Storage of error reports, e.g. persistent data storage, storage using memory protection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error 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/2053—Error 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/2056—Error 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/2071—Error 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 using a plurality of controllers
- G06F11/2076—Synchronous techniques
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
ここで、BCCとは、所定サイズのデータブロックごとに、データ整合性のチェックのため追加される領域である。
例えば、図8に示す構造のデータが追加される。
図8は、データブロックのデータ構造100を示す模式図である。
図8において、データ構造100は、512バイトのデータ部103と、8バイトのBCC部105とを有する。
BCC部105は、データ部103のデータの整合性をチェックするために用いられるBCCであり、データ形式は、BCC形式である。
図8に示す例では、例えば、16ビットのブロックCRC107、1ビットのバッドフラグ111、1ビットのパリティビット113、6ビットのSLU(Secondary Logical Unit)番号115、8ビットのID部117、及び32ビットのカウンタ119を有する。
次に、図9を参照して、ホスト装置からストレージ装置にデータが送信された場合の処理を説明する。
図9のステップS101において、CAがホスト装置からデータを含む書き込み(ライト)コマンドを受信する。
ステップS103において、CAは、ホスト装置から受信したデータを512バイト毎のブロックに分割し、8バイトのBCCを作成して520バイトのデータブロックを作成し、自CM(以降、ミラー元CMとも呼ぶ)に送信する。
ステップS107において、ミラー元CMはCAから520バイトのデータブロックを受信する。ミラー元CMに渡されるデータブロックには、CAが計算したブロックのCRC(以下に、単にCRCと呼ぶ)107を含むBCCが付与されている。
ステップS111において、ミラー元CMは、ミラー先CMでデータが正常に処理されたかどうかを判定する。
データカウンタがブロック数と等しい場合(ステップS115のYESルート参照)、ステップS117において、CAがホスト装置にデータ受信完了を応答する。
また、ステップS111において、ミラー先でデータが正常に処理されていない場合(ステップS111のNOルート参照)、ステップS119において、CAがホスト装置にデータ受信失敗を応答する。
なお、前記目的に限らず、後述する発明を実施するための形態に示す各構成により導かれる作用効果であって、従来の技術によっては得られない作用効果を奏することも本発明の他の目的の1つとして位置付けることができる。
データを送受信するインタフェース部と、前記複数の制御装置のそれぞれの負荷に基づいて、前記1または複数のストレージへの各書き込みデータブロックに対応する第2のチェック用情報の計算を自制御装置で行なうか、或いは前記複数の制御装置のうちの他の制御装置に行なわせるかを判定する振り分け部と、前記振り分け部によって前記第2のチェック用情報の計算を自制御装置で行なうと判定された場合に、該第2のチェック用情報を計算する計算部と、前記書き込みデータブロックに付与された第1のチェック用情報と、前記計算部によって得られたか或いは前記他の制御装置に計算させた前記第2のチェック用情報とを比較し、比較結果が不一致の場合に前記インタフェース部を介してエラーを報告する制御部と、をそなえることを特徴とするストレージ装置が提供される。
図1は、第1実施形態の一例としてのストレージシステム1のハードウェア構成を示す模式図である。
ストレージシステム1は、ストレージ装置3とホスト装置21とを備える。
ストレージ装置3は、ホスト装置21に対して記憶領域を提供するものであり、通信ネットワーク25を介して相互に通信可能に接続されている。
CM5−1,CM5−2は、ストレージ装置3内の動作を制御するコントローラであり、ホスト装置21からのリード/ライト等のコマンドを受け取り、種々の制御を行なう。
CM5−1は、CA(インタフェース部)7−1、Central Processing Unit(CPU;制御部)9−1、メモリ11−1、アダプタ13−1、FC15−1,15−2を有する。
ドライブエンクロージャ17−1,17−2は、複数台のHard Disk Drive(HDD;ストレージ)19a−1〜n,19b−1〜n(nは1以上の整数)をそなえる。
CM5−1はCA7−1を介して、又、CM5−2はCA7−2を介して、それぞれネットワーク経由でホスト装置21に接続されている。そして、これらのCM5−1,5−2は、ホスト装置21から送信されるリード/ライト等のコマンドを受信し、不図示のエキスパンダ等を介してHDD19a−1〜n,19b−1〜nの制御を行なう。又、CM5−1,5−2は互いにほぼ同様の構成を有している。
更に、以下、CAを示す符号としては、複数のCAのうち1つを特定する必要があるときには符号7−1,7−2を用いるが、任意のCAを指すときには符号7を用いる。
更に、以下、CPUを示す符号としては、複数のCPUのうち1つを特定する必要があるときには符号9−1,9−2を用いるが、任意のCPUを指すときには符号9を用いる。
更に、以下、アダプタを示す符号としては、複数のアダプタのうち1つを特定する必要があるときには符号13−1,13−2を用いるが、任意のアダプタを指すときには符号15を用いる。
更に、以下、ドライブエンクロージャを示す符号としては、複数のドライブエンクロージャのうち1つを特定する必要があるときには符号17−1,17−2を用いるが、任意のドライブエンクロージャを指すときには符号17を用いる。
CA7は、ホスト装置21等と通信可能に接続するインタフェースコントローラ(通信アダプタ)である。CA7は、ホスト装置21等から送信されたデータを受信したり、CM5から出力するデータをホスト装置21等に送信する。すなわち、CA7は、ホスト装置21等の外部装置との間でのデータの入出力(Input/Output;I/O)を制御する。
メモリ11は、CPU9が実行するプログラムや種々のデータを格納する記憶装置であり、ROMやRAMである。
FC15は、CM5とドライブエンクロージャ等とを通信可能に接続するためのインタフェースであり、デバイスアダプタ等をそなえる。CM5は、このFC15を介して、HDD19に対するデータの書き込みや読み出しを行なう。
CPU9は、種々の制御や演算を行なう処理装置であり、メモリ11に格納されたプログラムを実行することにより、種々の機能を実現する。例えば、CPU9は、RAIDの実現やホスト装置21からのホストI/Oに応じたHDD19へのアクセス制御等、既知のディスクコントローラとしての種々の機能を実現する。
ここで、ストレージ装置3内でのデータ化けを検出するためには、ストレージ装置3がホスト装置21からデータを受信してから、できる限り早いタイミングでCRC107を付与することが望ましい。このため、前述のようにデータの受信直後にCA5でCRC107を付与している。
前述のように、従来、ホスト装置21へのデータ受信完了応答は、ミラーデータの保持が完了した後にストレージ装置3によって報告される。
データとエラーCRCとがミラー先CM5−2に引き渡されて、ミラー先CM5−2がミラーデータを保持してしまうと、ホスト装置21に対してはデータ受信完了応答が報告されているが、ストレージ装置3ではエラーデータを保持することになる。ストレージ装置3がCRCを検査してエラーを検出した場合、このデータは異常として扱われるが、既にホスト装置21にデータ受信完了を応答してしまっているため、データロスが発生してしまう。
図2は、第1実施形態の一例としてのCM5の機能構成を示すブロック図である。
図2に示すように、CM5は、処理部31を有する。
CPU9(図1参照)は、図2に示すように、処理部31の受信部33、コピー部35、再計算部(計算部)37、比較部39、及び消去部41として機能する。
受信部33は、自CM5のCA7から、ホスト装置21から送信されたデータを受信する。
コピー部35は、受信部33が受信したデータブロックのコピーを、他のCM5に転送して他CM5にミラーデータとして保持させる。
比較部39は、CA7が付加したBCC105内のCRC(第1のチェック用情報)107と、再計算部37が計算したCRC(第2のチェック用情報)107とを比較する。
詳細には、ミラー元CM5の消去部41は、CRCが不一致(CRCエラー)の場合にミラー先CM5に対し、ミラー無効処理を通知し、ミラー先CM5にミラーデータを削除させる。また、ミラー先CM5の消去部41は、コピー元CM5からミラー無効処理を通知された場合、ミラーデータを消去する。
総ブロック数保持部45は、ホスト装置21から送信されるデータブロックの総数を示す数値を保持する。
CRC再計算フラグ47は、自CM5の再計算部37によるCRC107の再計算を行なうかどうかを示すフラグである。例えば、CRC再計算フラグ47の値がオフ(例えば“0”)の場合、再計算部37はCRC107の再計算を行なわず、CRC再計算フラグ47の値がオン(例えば“1”)の場合、再計算部37はCRC107の再計算を行なう。
上述の如く構成された、第1実施形態の一例としてのストレージ装置3における処理を、図3を参照しながら説明する。
図3は、第1実施形態の一例としてのストレージ装置3におけるミラー元CM5−1の処理を示すフローチャートである。
ステップS3において、CA7−1は、ホスト装置21から受信したデータを512バイト毎のブロックに分割し、8バイトのBCCを作成して520バイトのデータブロックを作成する。
ステップS7において、ミラー元CM5−1の受信部33は、CA7−1から520バイトのデータブロックを受信する。ミラー元CMに渡されるデータブロックには、CA7−1が計算したCRC107を含むBCC105が付与されている。
ステップS9において、ミラー元CM5−1の受信部33は、CRC再計算フラグ47をオフに設定する。
データカウンタ43が奇数の場合(ステップS11のYESルート参照)、後述するステップS15に移行する。
一方、データカウンタ43が偶数の場合(ステップS11のNOルート参照)、ステップS13において、ミラー元CM5−1のコピー部35はCRC再計算フラグ47をオンに設定し、ステップS15に移行する。
ミラー先CM5−2が正常である場合(ステップS15のYESルート参照)、後述するステップS19に移行する。
一方、ミラー先CM5−2で異常が検出された場合(ステップS15のNOルート参照)、ステップS17において、ミラー元CM5−1のコピー部35はCRC再計算フラグ47をオンに設定し、ステップS19に移行する。
ステップS21において、ミラー元CM5−1の再計算部35は、CRC再計算フラグ47がオンかどうかを判定する。
ステップS25において、ミラー元CM5−1の比較部39は、ステップS23で再計算したCRC107と、CA7−1から受信したデータに含まれるCRC107とを比較し、両者が一致するかどうかを判定する。
一方、CRC107が一致しない場合(ステップS25のNOルート参照)、後述するステップS35に移行する。
データカウンタ43の値が総ブロック数保持部45の値と等しくない場合(ステップS29のNOルート参照)、未受信のデータブロックが存在するため、前述したステップS7に戻り、残りのデータブロックの受信を続行する。
なお、ステップS21においてCRC再計算フラグ47がオフの場合(ステップS21のNOルート参照)、CRC107の再計算をミラー先CM5−2の再計算部37が行なう。
ミラー先CM5−2において再計算されたCRC107が、CA7−1が付加したCRC107と一致した場合(ステップS33のYESルート参照)、処理が前述のステップS27に移行する。
また、ステップS25においてCRC107が一致しない場合(ステップS25のNOルート参照)、ステップS35において、ミラー元CM5−1の消去部41は、ミラー先CM5−2にミラー無効処理を通知する。
ミラー先CM5−2の処理が終了していない場合(ステップS37のNOルート参照)、ステップS37に戻る。
一方、ミラー先CM5−2の処理が終了している場合(ステップS37のYESルート参照)、ステップS39において、CA7は、ホスト装置21にデータ受信失敗を応答する。
図4は、第1実施形態の一例としてのストレージ装置3におけるミラー先CM5−2の処理を示すフローチャートである。
ステップS51において、ミラー先CM5−3の受信部33は、ミラー元CM5−1から520バイトのデータブロックを受信する。ミラー先CMに渡されるデータブロックには、ミラー元CM5−1のCA7−1が計算したCRC107を含むBCC105が付与されている。
ミラー先CM5−1のCRC再計算フラグ47がオフの場合(ステップS53のNOルート参照)、処理が後述するステップS61に移行する。
ステップS57において、ミラー元CM5−1の比較部39は、ステップS55で再計算したCRC107と、ミラー元CM5−1から受信したデータに含まれるCRC107とを比較し、両者が一致するかどうかを判定する。
次に、ステップS61において、ミラー先CM5−2は、データミラーを作成する。
次に、ステップS63において、ミラー先CM5−2はミラー元CM5−1に対し、データ受信完了を応答する。
次に、図3のストレージ装置3のミラー先CM5−2におけるミラーデータの削除処理を、図5を参照しながら説明する。
ステップS67において、ミラー先CM5−2は、ミラー元CM5−1からミラーデータ消去指示を受信する。
ステップS69において、ミラー先CM5−2の消去部41は、ミラーデータを消去する。
第1実施形態の一例によれば、CRCの再計算を複数のCM5間で分散して行なうので、ストレージ装置3からホスト装置21への応答時間を短縮することができる。
ここで、比較のために、図10を参照して、CRCの再計算を、ミラー元CM5−1のCPU9−1で一元的に行なう場合を考える。
図10のステップS101において、CA7−1がホスト装置21からデータを含む書き込みコマンドを受信する。
ステップS103において、CA7−1は、ホスト装置21から受信したデータを512バイト毎のブロックに分割し、8バイトのBCCを作成して520バイトのデータブロックを作成する。
ステップS107において、ミラー元CM5−1のCPU9−1はCA7−1から520バイトのデータブロックを受信する。ミラー元CM5−1のCPU9−1に渡されるデータブロックには、CA7−1が計算したCRC107を含むBCC105が付与されている。
ステップS123において、ミラー元CM5−1のCPU9−1は、ステップS121で再計算したCRC107と、CA7−1から受信したデータに含まれるCRC107とを比較する。
一方、CRC107が一致する場合(ステップS123のYESルート参照)、ステップS109において、ミラー元CM5−1のCPU9−1は、ミラー元CM5−2にデータブロックを送信し、データブロックをミラー元CM5−2にコピーさせる。
また、ステップS111において、ミラー先でデータが正常に処理されていない場合(ステップS111のNOルート参照)、ステップS119において、CA7−1がホスト装置21にデータ受信失敗を応答する。
データカウンタがブロック数と等しい場合(ステップS115のYESルート参照)、ステップS117において、CA7−1がホスト装置21にデータ受信完了を応答する。
また、ステップS111において、ミラー先でデータが正常に処理されていない場合(ステップS111のNOルート参照)、ステップS119において、CA7−1がホスト装置21にデータ受信失敗を応答する。
更に、CA7から受信したデータブロックのCRCの計算をCM5で再度行なうので、データの信頼性を向上させるという効果も奏する。
(B)第2実施形態
前述した第1実施形態の一例としてのストレージ装置3においては、CRCの再計算を複数のCM5間で順番に行なっていたが、第2実施形態の一例においては、CM5の負荷に応じて、負荷の低いCM5がCRCを再計算してもよい。
なお、図6中、図2と同一の符号は同一もしくは略同一の部分を示しているので、その詳細な説明は省略する。
図6に示すように、図6に示すCM5は、図2に示した構成要素に加えて、負荷比較部49、ミラー元負荷カウンタ51、及びミラー先負荷カウンタ53を有する。
ミラー元負荷カウンタ51は、ミラー元CM5−1の負荷を示すカウンタであり、メモリ11(図1参照)によって実現される。
ミラー先負荷カウンタ53は、ミラー先CM5−2の負荷を示すカウンタであり、メモリ11(図1参照)によって実現される。
また、ミラー先負荷カウンタ53も同様に、ミラー先CM5−2の起動時にゼロにリセットされる。
上述の如く構成された、第2実施形態の一例としてのストレージ装置3における処理を、図7を参照しながら説明する。
図7は、第2実施形態の一例としてのストレージ装置3におけるミラー元CM5−1の処理を示すフローチャートである。
ステップS3において、CA7−1は、ホスト装置21から受信したデータを512バイト毎のブロックに分割し、8バイトのBCCを作成して520バイトのデータブロックを作成する。
ステップS7において、ミラー元CM5−1の受信部33は、CA7−1から520バイトのデータブロックを受信する。ミラー元CMに渡されるデータブロックには、CA7−1が計算したCRC107を含むBCC105が付与されている。
ステップS9において、ミラー元CM5−1の受信部33は、CRC再計算フラグ47をオフに設定する。
ミラー先負荷カウンタ53の値が、ミラー元負荷カウンタ51の値未満の場合(ステップS41のNOルート参照)、後述するステップS19に移行する。
一方、ミラー先負荷カウンタ53の値が。ミラー元負荷カウンタ51の値以上である場合(ステップS41のYESルート参照)、ステップS13において、ミラー元CM5−1のコピー部35はCRC再計算フラグ47をオンに設定し、ステップS19に移行する。
ステップS21において、ミラー元CM5−1の再計算部35は、CRC再計算フラグ47がオンかどうかを判定する。
次に、ステップS47において、ミラー元CM5−1の再計算部37は、CA7−1から受信したデータブロックのCRC107を再計算する。
ステップS25において、ミラー元CM5−1の比較部39は、ステップS23で再計算したCRC107と、CA7−1から受信したデータに含まれるCRC107とを比較し、両者が一致するかどうかを判定する。
一方、CRC107が一致しない場合(ステップS25のNOルート参照)、処理が後述するステップS35に移行する。
データカウンタ43の値が総ブロック数保持部45の値と等しくない場合(ステップS29のNOルート参照)、未受信のデータブロックが存在するため、前述したステップS7に戻り、残りのデータブロックの受信を続行する。
なお、ステップS21においてCRC再計算フラグ47がオフの場合(ステップS21のNOルート参照)、CRC107の再計算をミラー先CM5−2の再計算部37が行なう。
ミラー先CM5−2において再計算されたCRC107が、CA7−1が付加したCRC107と一致した場合(ステップS33のYESルート参照)、処理が前述のステップS25に移行する。
また、ステップS25においてCRC107が一致しない場合(ステップS25のNOルート参照)、ステップS35において、ミラー元CM5−1の消去部41は、ミラー先CM5−2にミラー無効処理を通知する。
第2実施形態の一例としてのストレージ装置3におけるミラー先CM5−2の処理は、ミラー先CM5−2におけるCRC再計算時の前後にミラー先負荷カウンタ53を増減させる点を除き、図4,5に示した第1実施形態の一例の処理と同様である。このため、ミラー先CM5−2の処理の図示並びに説明を省略する。
これにより、ストレージ装置3からホスト装置21への応答時間を更に短縮することができる。
なお、上述した実施形態に関わらず、本実施形態の趣旨を逸脱しない範囲で種々変形して実施することができる。
上記の第1及び第2実施形態では、2つのCM5でCRCの再計算を行なっているが、ミラー元CM5−1の負荷を軽減させるため、3以上のCM5が搭載されている場合には、3以上のCM5でCRCの再計算を実行させてもよい。
また、上記の第2実施形態では、CM5のCPU9によって実行中のプロセス数によりCM5によるCRC再計算処理を振り分けているが、これに限定されない。例えば、ミラー元CM5−1のCPU9−1の使用率が負荷分散開始のしきい値を超えた場合に、ミラー先CM5−2にCRC再計算処理を振り分け、ミラー元CM5−1のCPU9−1の使用率が負荷分散開始のしきい値を下回った場合に、ミラー元CM5−1でCRC再計算処理を行なってもよい。
なお、上記の処理部31、受信部33、コピー部35、再計算部37、比較部39、消去部41、及び負荷比較部49としての機能を実現するためのプログラム(管理プログラム)は、例えばフレキシブルディスク、CD(CD−ROM,CD−R,CD−RW等),DVD(DVD−ROM,DVD−RAM,DVD−R,DVD+R,DVD−RW,DVD+RW,HD DVD等),ブルーレイディスク,磁気ディスク,光ディスク,光磁気ディスク等の、コンピュータ読取可能な記録媒体に記録された形態で提供される。そして、コンピュータはその記録媒体からプログラムを読み取って内部記憶装置又は外部記憶装置に転送し格納して用いる。又、そのプログラムを、例えば磁気ディスク,光ディスク,光磁気ディスク等の記憶装置(記録媒体)に記録しておき、その記憶装置から通信経路を介してコンピュータに提供するようにしてもよい。
なお、本実施形態において、コンピュータとは、ハードウェアとオペレーティングシステムとを含む概念であり、オペレーティングシステムの制御の下で動作するハードウェアを意味している。又、オペレーティングシステムが不要でアプリケーションプログラム単独でハードウェアを動作させるような場合には、そのハードウェア自体がコンピュータに相当する。ハードウェアは、少なくとも、CPU等のマイクロプロセッサと、記録媒体に記録されたコンピュータプログラムを読み取るための手段とをそなえており、本実施形態においては、CM5がコンピュータとしての機能を有しているのである。
上記第1及び第2実施形態に関して、下記の付記を記載する。
(付記1)
1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置であって、
前記複数の制御装置はそれぞれ、
データを送受信するインタフェース部と、
前記1または複数のストレージへの書き込みデータに付与された第1のチェック用情報と、計算によって得られた前記書き込みデータに対応する第2のチェック用情報とを比較し、比較結果が不一致の場合に前記インタフェース部を介してエラーを報告する制御部と、
をそなえることを特徴とするストレージ装置。
前記制御部は、
前記書き込みデータのコピーを他の制御装置に転送し、
前記比較結果が不一致の場合に、前記書き込みデータと、転送先の制御装置の前記書き込みデータのコピーを消去することを特徴とする付記1記載のストレージ装置。
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて分散して行なわれることを特徴とする付記1又は2記載のストレージ装置。
(付記4)
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて順番に行なわれることを特徴とする付記1〜3のいずれか1項に記載のストレージ装置。
前記第2のチェック用情報の前記計算は、前記複数の制御装置の前記少なくとも2つを用いてそれぞれの制御装置の負荷に応じて振り分けられることを特徴とする付記1〜3のいずれか1項に記載のストレージ装置。
(付記6)
前記第1のチェック用情報の前記計算は前記インタフェース部によって行なわれ、前記第2のチェック用情報の前記計算は前記制御部によって行なわれることを特徴とする付記1〜5のいずれか1項に記載のストレージ装置。
1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理方法であって、
前記複数の制御装置のそれぞれにおいて、
前記1または複数のストレージへの書き込みデータに付与された第1のチェック用情報と、計算によって得られた前記書き込みデータに対応する第2のチェック用情報とを比較し、
比較結果が不一致の場合に前記インタフェース部を介してエラーを報告する
ことを特徴とするストレージ装置の管理方法。
前記制御部は、
前記書き込みデータのコピーを他の制御装置に転送し、
前記比較結果が不一致の場合に、前記書き込みデータと、転送先の制御装置の前記書き込みデータのコピーを消去することを特徴とする付記7記載のストレージ装置の管理方法。
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて分散して行なわれることを特徴とする付記7又は8記載のストレージ装置の管理方法。
(付記10)
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて順番に行なわれることを特徴とする付記7〜9のいずれか1項に記載のストレージ装置の管理方法。
前記第2のチェック用情報の前記計算は、前記複数の制御装置の前記少なくとも2つを用いてそれぞれの制御装置の負荷に応じて振り分けられることを特徴とする付記7〜9のいずれか1項に記載のストレージ装置の管理方法。
(付記12)
1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理プログラムであって、
前記複数の制御装置のいずれかによって実行された場合に、当該制御装置に、
前記1または複数のストレージへの書き込みデータに付与された第1のチェック用情報と、計算によって得られた前記書き込みデータに対応する第2のチェック用情報とを比較させ、
比較結果が不一致の場合にエラーを報告させる
ことを特徴とするストレージ装置の管理プログラム。
前記管理プログラムは、前記制御部に、
前記書き込みデータのコピーを他の制御装置に転送させ、
前記比較結果が不一致の場合に、前記書き込みデータと、転送先の制御装置の前記書き込みデータのコピーを消去させることを特徴とする付記12記載のストレージ装置の管理プログラム。
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて分散して行なわれることを特徴とする付記12又は13記載のストレージ装置の管理プログラム。
(付記15)
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて順番に行なわれることを特徴とする付記12〜14のいずれか1項に記載のストレージ装置の管理プログラム。
前記第2のチェック用情報の前記計算は、前記複数の制御装置の前記少なくとも2つを用いてそれぞれの制御装置の負荷に応じて振り分けられることを特徴とする付記12〜14のいずれか1項に記載のストレージ装置の管理プログラム。
(付記17)
1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理プログラムを記憶する記憶媒体であって、前記管理プログラムは、
前記複数の制御装置のいずれかによって実行された場合に、当該制御装置に、
前記1または複数のストレージへの書き込みデータに付与された第1のチェック用情報と、計算によって得られた前記書き込みデータに対応する第2のチェック用情報とを比較させ、
比較結果が不一致の場合にエラーを報告させる
ことを特徴とする記憶媒体。
前記管理プログラムは、前記制御部に、
前記書き込みデータのコピーを他の制御装置に転送させ、
前記比較結果が不一致の場合に、前記書き込みデータと、転送先の制御装置の前記書き込みデータのコピーを消去させることを特徴とする付記17記載の記憶媒体。
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて分散して行なわれることを特徴とする付記17又は18記載の記憶媒体。
(付記20)
前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて順番に行なわれることを特徴とする付記17〜19のいずれか1項に記載の記憶媒体。
前記第2のチェック用情報の前記計算は、前記複数の制御装置の前記少なくとも2つを用いてそれぞれの制御装置の負荷に応じて振り分けられることを特徴とする付記17〜19のいずれか1項に記載の記憶媒体。
11 メモリ
21 ホスト装置
3 ストレージ装置
35 コピー部
37 再計算部(計算部)
39 比較部
41 消去部
5,5−1,5−2 CM(制御装置)
7,7−1,7−2 CA(インタフェース部)
9 CPU(制御部)
Claims (8)
- 1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置であって、
前記複数の制御装置はそれぞれ、
データを送受信するインタフェース部と、
前記複数の制御装置のそれぞれの負荷に基づいて、前記1または複数のストレージへの各書き込みデータブロックに対応する第2のチェック用情報の計算を自制御装置で行なうか、或いは前記複数の制御装置のうちの他の制御装置に行なわせるかを判定する振り分け部と、
前記振り分け部によって前記第2のチェック用情報の計算を自制御装置で行なうと判定された場合に、該第2のチェック用情報を計算する計算部と、
前記書き込みデータブロックに付与された第1のチェック用情報と、前記計算部によって得られたか或いは前記他の制御装置に計算させた前記第2のチェック用情報とを比較し、比較結果が不一致の場合に前記インタフェース部を介してエラーを報告する制御部と、
をそなえることを特徴とするストレージ装置。 - 前記制御部は、
前記書き込みデータのコピーを他の制御装置に転送し、
前記比較結果が不一致の場合に、前記書き込みデータと、転送先の制御装置の前記書き込みデータのコピーを消去することを特徴とする請求項1記載のストレージ装置。 - 前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて分散して行なわれることを特徴とする請求項1又は2記載のストレージ装置。
- 前記第2のチェック用情報の計算は、前記複数の制御装置の少なくとも2つを用いて順番に行なわれることを特徴とする請求項1〜3のいずれか1項に記載のストレージ装置。
- 前記第2のチェック用情報の前記計算は、前記複数の制御装置の少なくとも2つを用いてそれぞれの制御装置の負荷に応じて振り分けられることを特徴とする請求項1〜3のいずれか1項に記載のストレージ装置。
- 1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理方法であって、
前記複数の制御装置のそれぞれにおいて、
前記複数の制御装置のそれぞれの負荷に基づいて、前記1または複数のストレージへの各書き込みデータブロックに対応する第2のチェック用情報の計算を自制御装置で行なうか、或いは前記複数の制御装置のうちの他の制御装置に行なわせるかを判定し、
前記第2のチェック用情報の計算を自制御装置で行なうと判定された場合に、該第2のチェック用情報を計算し、
前記書き込みデータブロックに付与された第1のチェック用情報と、前記計算によって得られたか或いは前記他の制御装置に計算させた前記第2のチェック用情報とを比較し、
比較結果が不一致の場合にエラーを報告する
ことを特徴とするストレージ装置の管理方法。 - 1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理プログラムであって、
前記複数の制御装置のいずれかによって実行された場合に、当該制御装置に、
前記複数の制御装置のそれぞれの負荷に基づいて、前記1または複数のストレージへの各書き込みデータブロックに対応する第2のチェック用情報の計算を自制御装置で行なうか、或いは前記複数の制御装置のうちの他の制御装置に行なわせるかを判定させ、
前記第2のチェック用情報の計算を自制御装置で行なうと判定された場合に、該第2のチェック用情報を計算させ、
前記書き込みデータブロックに付与された第1のチェック用情報と、前記計算によって得られたか或いは前記他の制御装置に計算させた前記第2のチェック用情報とを比較させ、
比較結果が不一致の場合にエラーを報告させる
ことを特徴とするストレージ装置の管理プログラム。 - 1または複数のストレージに対するデータ書き込み制御を少なくとも行う複数の制御装置を有するストレージ装置の管理プログラムを記憶する記憶媒体であって、前記管理プログラムは、
前記複数の制御装置のいずれかによって実行された場合に、当該制御装置に、
前記複数の制御装置のそれぞれの負荷に基づいて、前記1または複数のストレージへの各書き込みデータブロックに対応する第2のチェック用情報の計算を自制御装置で行なうか、或いは前記複数の制御装置のうちの他の制御装置に行なわせるかを判定させ、
前記第2のチェック用情報の計算を自制御装置で行なうと判定された場合に、該第2のチェック用情報を計算させ、
前記書き込みデータブロックに付与された第1のチェック用情報と、前記計算によって得られたか或いは前記他の制御装置に計算させた前記第2のチェック用情報とを比較させ、
比較結果が不一致の場合にエラーを報告させる
ことを特徴とする記憶媒体。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012173522A JP5966744B2 (ja) | 2012-08-06 | 2012-08-06 | ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 |
US13/955,696 US20140040678A1 (en) | 2012-08-06 | 2013-07-31 | Storage device and method for managing storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012173522A JP5966744B2 (ja) | 2012-08-06 | 2012-08-06 | ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2014032573A JP2014032573A (ja) | 2014-02-20 |
JP5966744B2 true JP5966744B2 (ja) | 2016-08-10 |
Family
ID=50026727
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012173522A Expired - Fee Related JP5966744B2 (ja) | 2012-08-06 | 2012-08-06 | ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20140040678A1 (ja) |
JP (1) | JP5966744B2 (ja) |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002023966A (ja) * | 2000-06-30 | 2002-01-25 | Toshiba Corp | 転送データを冗長化したディスクシステム |
US7117323B1 (en) * | 2001-10-23 | 2006-10-03 | Lsi Logic Corporation | Cyclic redundancy checking for managing the coherency of mirrored storage volumes |
US7434150B1 (en) * | 2004-03-03 | 2008-10-07 | Marvell Israel (M.I.S.L.) Ltd. | Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations |
EP1738273A4 (en) * | 2004-04-12 | 2012-12-26 | Univ Arizona | INFORMATION PROCESSING AND TRANSPORT ARCHITECTURE FOR DATA STORAGE |
JP4383321B2 (ja) * | 2004-11-09 | 2009-12-16 | 富士通株式会社 | 記憶制御装置および外部記憶装置 |
JP5125722B2 (ja) * | 2008-04-18 | 2013-01-23 | 日本電気株式会社 | ディスクアレイシステム、ディスク装置、筐体間ミラーリング方法およびプログラム |
WO2010116538A1 (en) * | 2009-04-06 | 2010-10-14 | Hitachi, Ltd. | Storage apparatus and data transfer method |
US8627065B2 (en) * | 2010-11-09 | 2014-01-07 | Cleversafe, Inc. | Validating a certificate chain in a dispersed storage network |
-
2012
- 2012-08-06 JP JP2012173522A patent/JP5966744B2/ja not_active Expired - Fee Related
-
2013
- 2013-07-31 US US13/955,696 patent/US20140040678A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20140040678A1 (en) | 2014-02-06 |
JP2014032573A (ja) | 2014-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5247887B2 (ja) | ストレージ装置、及びその制御方法、並びにプログラム | |
JP5655344B2 (ja) | ストレージ装置、ストレージ装置制御プログラムおよびストレージ装置制御方法 | |
JP5147824B2 (ja) | Raidストレージ・システム、これを動作させる方法及びプログラム | |
US7827351B2 (en) | Storage system having RAID level changing function | |
US7900013B2 (en) | Method and computer for determining storage device | |
JP4852315B2 (ja) | データ信頼性向上方法及びその方法を用いた情報処理装置 | |
US8078809B2 (en) | System for accessing an offline storage unit through an online storage unit | |
JP4884721B2 (ja) | 記憶装置のフォーマットを不要としたストレージシステム及び記憶制御方法 | |
JP2006139478A (ja) | ディスクアレイシステム | |
JP4491330B2 (ja) | ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム | |
JP2009199266A (ja) | データ転送制御装置、データ整合性判定方法及び記憶制御装置 | |
JP2006072435A (ja) | ストレージシステムおよびデータ記録方法 | |
JP2007199934A (ja) | データ蓄積装置及びデータ読出し方法 | |
WO2014010077A1 (ja) | ディスクアレイ制御装置、ディスクアレイ制御方法及びディスクアレイ制御プログラム | |
US20120011317A1 (en) | Disk array apparatus and disk array control method | |
JP5966744B2 (ja) | ストレージ装置、ストレージ装置の管理方法、ストレージ装置の管理プログラム及び記憶媒体 | |
US20100325373A1 (en) | Duplexing Apparatus and Duplexing Control Method | |
US10014983B2 (en) | System, receiving device, and method | |
US20130227217A1 (en) | Archive system and processing method | |
US10310954B2 (en) | Control device and method for controlling storage devices | |
JP2004185477A (ja) | 光記憶媒体アレイ装置およびデータ転送方法 | |
JP6838299B2 (ja) | ストレージ装置、ストレージ制御装置、及びストレージ制御プログラム | |
JP5729043B2 (ja) | ストレージ装置および制御装置 | |
JP2008041080A (ja) | 記憶制御システム、記憶制御システムの制御方法、ポートセレクタ、及びコントローラ | |
JP5585930B2 (ja) | ディスクアレイ装置、及びデータ制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150406 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160322 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20160519 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20160607 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160620 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5966744 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |