JP2006134149A - ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム - Google Patents

ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム Download PDF

Info

Publication number
JP2006134149A
JP2006134149A JP2004323719A JP2004323719A JP2006134149A JP 2006134149 A JP2006134149 A JP 2006134149A JP 2004323719 A JP2004323719 A JP 2004323719A JP 2004323719 A JP2004323719 A JP 2004323719A JP 2006134149 A JP2006134149 A JP 2006134149A
Authority
JP
Japan
Prior art keywords
data
magnetic disk
unit
cache
disk array
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.)
Granted
Application number
JP2004323719A
Other languages
English (en)
Other versions
JP4491330B2 (ja
Inventor
Akito Kobayashi
明人 小林
Katsuhiko Nagashima
克彦 長嶋
Koji Uchida
幸治 内田
Fumiaki Kobayashi
史明 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2004323719A priority Critical patent/JP4491330B2/ja
Priority to US11/067,329 priority patent/US20060101216A1/en
Priority to KR1020050018628A priority patent/KR100697761B1/ko
Priority to CNB2005100589549A priority patent/CN100377060C/zh
Publication of JP2006134149A publication Critical patent/JP2006134149A/ja
Application granted granted Critical
Publication of JP4491330B2 publication Critical patent/JP4491330B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24CDOMESTIC STOVES OR RANGES ; DETAILS OF DOMESTIC STOVES OR RANGES, OF GENERAL APPLICATION
    • F24C3/00Stoves or ranges for gaseous fuels
    • F24C3/008Ranges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F24HEATING; RANGES; VENTILATING
    • F24CDOMESTIC STOVES OR RANGES ; DETAILS OF DOMESTIC STOVES OR RANGES, OF GENERAL APPLICATION
    • F24C15/00Details
    • F24C15/10Tops, e.g. hot plates; Rings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2082Data synchronisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error 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/2053Error 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/2056Error 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/2087Error 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 with a common controller
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • Quality & Reliability (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

【課題】ミラーディスク構成を有するディスクアレイ装置において異常なデータの復元を行うことができるディスクアレイ装置を提供すること。
【解決手段】データを二重化して記憶するディスクアレイ部20と、アクセスされたデータを書き込むキャッシュメモリと受け取ったコマンドに基づいて処理を行うコマンド処理実行部とを有する複数の中央処理部32a〜32dと、を備え、中央処理部32aは、エラーチェックによってプライマリディスク21a上のデータが異常でセカンダリディスク21e上のデータが正常である場合にリカバリ処理が必要と判定し、ホストコンピュータ40との入出力処理の終了後にキャッシュメモリ上のデータを他の中央処理部32bのキャッシュメモリに二重化して、プライマリディスク21aとセカンダリディスク21eに書き戻す処理を実行する。
【選択図】 図1

Description

この発明は、複数の磁気ディスク装置と、該磁気ディスク装置を並列的に動作させてデータの読出し/書き込み制御を行うディスクアレイ制御装置を備えるディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラムに関するものである。
従来、ホストコンピュータに接続された外部記憶装置において、高速に大量のデータへアクセスするとともに、データに冗長性を持たせて故障時における信頼性を向上させたディスクアレイ装置(RAID(Redundant Arrays of Inexpensive Disks)装置ともいう)が提案されている(たとえば、特許文献1参照)。ディスクアレイ装置は、一般的にRAID0〜RAID5の6段階のレベルに分類される。このうち、RAID1として規定される冗長構成の場合、2台の磁気ディスク装置にデータを重複して書込むようにしており、2台の内の一方の磁気ディスク装置が故障しても、もう一方の正常な磁気ディスク装置に同一のデータが記録されているので、データの読出しが可能であり、データの信頼性を向上させている。
このような2台の磁気ディスク装置を1組として同一のデータを書き込むミラーディスク構造を有するディスクアレイ装置として、信頼性を高めるために従来種々の構成のものが提案されている。図7は、従来のミラーディスク構造を有するディスクアレイ装置の構成を模式的に示す図である。このディスクアレイ装置110は、データを格納するとともに格納したデータをミラーリングすることができるように複数のハードディスク装置からなる磁気ディスク装置121a〜121hと、上位装置であるホストコンピュータ140に接続される複数のチャンネルアダプタ131と、ホストコンピュータ140からのコマンドを実行する複数の中央処理部132と、磁気ディスク装置121に接続される複数のデバイスアダプタ133と、を備えて構成される。なお、この図7の磁気ディスク装置121e〜121hは、それぞれ磁気ディスク装置121a〜121dのデータを二重化するためのミラーリング用磁気ディスク装置として機能するものとする。
中央処理部132は、1つのディスクアレイ装置110に複数設けられており、個々の中央処理部132は制御する磁気ディスク装置121が予め定められている。また、中央処理部132は、コマンドの処理などを実行するコマンド処理実行部151と、データを格納するキャッシュメモリ152を有している。キャッシュメモリ152には、リード時に磁気ディスク装置121から読み出したデータや、ライト時に磁気ディスクに書き込むデータを格納するローカルキャッシュ領域153と、磁気ディスク装置121に書き込むデータを二重化するためのミラーキャッシュ領域154が設けられている。ここで、全ての中央処理部132のローカルキャッシュ領域153はミラーキャッシュ領域154とサイクリックに二重化されている。たとえば中央処理部132aのローカルキャッシュ領域153aと隣接する中央処理部132bのミラーキャッシュ領域154bとは二重化されている。
このような構成を有するディスクアレイ装置110におけるキャッシュメモリ152上のデータを磁気ディスク装置121a〜121hに書き込むライトバック処理について説明する。ここでは、たとえば、ホストコンピュータ140から磁気ディスク装置121aにデータを書き込む場合を説明する。ホストコンピュータ140からのデータの書き込みを指示するライト命令を受信したチャンネルアダプタ131は、その命令に含まれるアクセス先の磁気ディスク装置121aを管理する中央処理部132aのキャッシュメモリ152aのローカルキャッシュ領域153aにそのデータの正当性を示す検査情報を付加したデータを書き込む。また同時に、このローカルキャッシュ領域153aを二重化する別のキャッシュメモリ152bのミラーキャッシュ領域154bにもチャンネルアダプタ131によって同じデータが書き込まれる。そして、ローカルキャッシュ領域153aとミラーキャッシュ領域154bのそれぞれからデバイスアダプタ133を介して磁気ディスク装置121aとこの磁気ディスク装置121aを二重化する磁気ディスク装置(以下、ミラーリング用磁気ディスク装置という)121eに書き込まれる。このようにして、ホストコンピュータ140からライト命令のあったデータを2つの磁気ディスク装置121a,121eに書き込み、格納することができる。
特開2004−164675号公報
ところで、上述したディスクアレイ装置110のライトバック処理時において、たとえばキャッシュメモリ152aのローカルキャッシュ領域153aに格納されたデータが化けていた場合に、該キャッシュメモリ152aを保持する中央処理部132aが管理する磁気ディスク装置121aにも化けたデータすなわち異常なデータが書き込まれて格納されることになる。なお、ミラーキャッシュ領域154bには、正常なデータが格納されるものとする。
このような状態にあるディスクアレイ装置110において、上記で書き込まれたそのデータを読み込む処理であるリード命令がホストコンピュータ140によって実行されると、チャンネルアダプタ131はそのアクセス先であるデータを格納している磁気ディスク装置121aを管理する中央処理部132aに命令を渡してリード処理が実行される。この時、キャッシュメモリ152aのローカルキャッシュ領域153a上に対象となるデータがあればキャッシュメモリ152aから読み込み、キャッシュメモリ152aのローカルキャッシュ領域153a上に対象となるデータがなければ磁気ディスク装置121aからローカルキャッシュ領域153a上に該当するデータを展開する。チャンネルアダプタ131はそのデータのエラーチェックを行い、そのデータに付加されている検査情報と比較してデータの異常の有無を判定する。ここでは、これらのキャッシュメモリ152a上に格納される対象となるデータは化けているので、チャンネルアダプタ131で行われるエラーチェック処理で異常と判定される。そこで、再びホストコンピュータ140からリード命令のリトライによって、ミラーリング用磁気ディスク装置121eから同じデータの読み込み処理を行う。つまり、チャンネルアダプタ131は中央処理部132aに命令を渡してローカルキャッシュ領域153に展開する。そして、チャンネルアダプタ131は、ローカルキャッシュ領域153aに展開されたデータについてエラーチェックを行う。ここでは、ミラーリング用磁気ディスク装置121e内のデータは正常であるので、チャンネルアダプタ131はキャッシュメモリ152aのローカルキャッシュ領域153a上のデータをホストコンピュータ140に返す。その後、磁気ディスク装置121aの異常なデータは、たとえばホストコンピュータ140の使用者やディスクアレイ装置110の管理者などによる指示によって正常なデータへ書き換えられる。
このように従来のディスクアレイ装置110では、ライトバック処理時になんらかの原因によってデータに異常が生じた場合に、そのまま磁気ディスク装置121に書き込まれ、ディスクアレイ装置110の使用者や管理者などによってエラー(異常)が認識されたときに、異常なデータが格納される磁気ディスク装置121の正常なデータへの書き換え処理が行われていた。そのため、使用者がデータの異常を気づかなければずっとそのままの状態となってしまうという問題点があった。
本発明は、上述した従来技術による問題点を解消するためになされたものであり、ミラーディスク構成を有するディスクアレイ装置へのアクセス時に異常なデータを認識し、その後に正常なデータを二重化された別の磁気ディスク装置から読み出した際に、異常なデータの復元を同時に行うことができるディスクアレイ装置を提供することを目的とする。また、このディスクアレイ装置における異常なデータのリカバリ方法とデータリカバリプログラムを提供することも目的とする。
上述した課題を解決し、目的を達成するため、請求項1の発明にかかるディスクアレイ装置は、データを記憶する第1の磁気ディスク装置(図1に示すプライマリディスクとしての磁気ディスク装置21a〜21dに対応する)と、該第1の磁気ディスク装置に記憶されるデータを二重化する第2の磁気ディスク装置(図1に示すセカンダリディスクとしての磁気ディスク装置21e〜21hに対応する)と、を有するディスクアレイ部と、データ読み込み時に前記ディスクアレイ部の前記第1または前記第2の磁気ディスク装置から読み出したデータとデータ書き込み時に外部装置(図1に示すホストコンピュータ40に対応する)からのデータを書き込むローカルキャッシュ領域と、データ書き込み時に前記ローカルキャッシュ領域に書き込まれたデータを二重化するためのミラーキャッシュ領域とを有するキャッシュメモリと、前記外部装置からの最初のデータ読み込み命令の受け取り時に前記第1の磁気ディスク装置内の第1のデータを前記ローカルキャッシュ領域に展開し、再度のデータ読み込み命令の受け取り時に前記第2の磁気ディスク装置内の第2のデータを前記ローカルキャッシュ領域に展開するコマンド処理実行手段と、を有する複数の中央処理部と、前記外部装置から書き込まれるデータに、エラーチェックを行うための検査情報を付加する検査情報付加手段と、前記ローカルキャッシュ領域に展開されたデータのエラーチェックを前記検査情報を用いて行うエラーチェック手段と、前記エラーチェック手段によって前記第1のデータが異常で前記第2のデータが正常であると判定された場合に、前記外部装置との入出力処理の終了後に前記第2のデータの書き戻し処理を行うように前記コマンド処理実行手段に指示するリカバリ処理実行判定手段と、を備え、前記コマンド処理手段は、前記リカバリ処理実行判定手段からの指示により、前記ローカルキャッシュ領域の前記第2のデータを他の中央処理部のキャッシュメモリのミラーキャッシュ領域に二重化して、前記第1と前記第2の磁気ディスク装置に書き戻す処理を実行することを特徴とする。
また、請求項2の発明にかかるデータのリカバリ方法は、データを二重化して記憶する第1と第2の磁気ディスク装置(図1に示す磁気ディスク装置21a〜21hに対応する)と、前記第1または前記第2の磁気ディスク装置へのアクセス時にデータを格納する第1のキャッシュ部(図4に示すローカルキャッシュ領域324に対応する)と、前記第1のキャッシュ部に書き込まれた外部からのデータを二重化する第2のキャッシュ部(図4に示すミラーキャッシュ領域325に対応する)と、を備えるディスクアレイ装置におけるデータのリカバリ方法であって、ディスクアレイ装置に接続される外部装置(図1におけるホストコンピュータに対応する)からのデータ読込命令に基づいて前記第1の磁気ディスク装置(図1に示すプライマリディスクとしての磁気ディスク装置21a〜21dに対応する)から前記第1のキャッシュ部に書き込んだ第1のデータが異常である場合に、再度の前記外部装置からのデータ読み込み命令を受けて前記第2の磁気ディスク装置(図1におけるセカンダリディスクとしての磁気ディスク装置21e〜21hに対応する)から前記第1のキャッシュ部に第2のデータを書き込む第1の工程と、前記第2のデータのエラーチェックを行う第2の工程と、エラーチェックによって正常なデータであると判定された場合に、前記第2のデータを前記外部装置に送信するとともに、前記第1のキャッシュ部に書き込まれた前記第1のデータを第2のキャッシュ部に二重化する第3の工程と、前記第1と前記第2のキャッシュ部に書き込まれた前記第2のデータをそれぞれ前記第1と前記第2の磁気ディスク装置に書き戻す第4の工程と、を含むことを特徴とする。
さらに、請求項3の発明にかかるデータリカバリプログラムは、データを二重化して記憶する第1と第2の磁気ディスク装置(図1に示す磁気ディスク装置21a〜21hに対応する)と、前記第1または前記第2の磁気ディスク装置へのアクセス時にデータを格納する第1のキャッシュ部(図4に示すローカルキャッシュ領域324に対応する)と、前記第1のキャッシュ部に書き込まれた外部からのデータを二重化する第2のキャッシュ部(図4に示すミラーキャッシュ領域325に対応する)と、データの読み出しまたは書き込みの処理を制御するディスクアレイ制御部と、を備えるディスクアレイ装置に用いられるデータリカバリプログラムであって、前記ディスクアレイ制御部に、ディスクアレイ装置に接続される外部装置(図1におけるホストコンピュータに対応する)からのデータの読込命令を受け取り、第1の磁気ディスク装置(図1に示すプライマリディスクとしての磁気ディスク装置21a〜21dに対応する)から第1のキャッシュ部に書き込んだ前記読み込み命令に対応するデータが異常である場合に、第2の磁気ディスク装置(図1におけるセカンダリディスクとしての磁気ディスク装置21e〜21hに対応する)から前記第1のキャッシュ部に前記読み込み命令に対応するデータを書き込む第1の工程と、前記第1のキャッシュ部に書き込まれたデータのエラーチェックを行う第2の工程と、エラーチェックの結果、正常なデータであると判定された場合に、前記第1のキャッシュ部に書込まれたデータを前記外部装置に送信するとともに、前記第1のキャッシュ部に書き込まれたデータを第2のキャッシュ部に二重化する第3の工程と、前記第1と前記第2のキャッシュ部に書き込まれたデータをそれぞれ前記第1と前記第2の磁気ディスク装置に書き戻す第4の工程と、を実行させることを特徴とする。
これらの請求項1〜3の発明によれば、外部装置からのディスクアレイ装置内のデータへのアクセス時に行われるエラーチェックの結果を利用して、異常なデータがある場合にはそのアクセスの終了後に異常なデータを修復するための書き戻し処理が実行される。このとき、第2の磁気ディスク装置からローカルキャッシュ部に展開された正常なデータを用いて、第1と第2の磁気ディスク装置への書き戻し処理が行われる。
請求項1〜3の発明によれば、ディスクアレイ装置の使用者や管理者などが異常データの存在を認識して書き戻し処理を行うのではなく、外部装置からのディスクアレイ装置内のデータへのアクセスの際に異常なデータを検出した場合に、そのアクセスの終了を契機としてその異常なデータを正常なデータにリカバリするようにしているので、使用者や管理者などによる異常なデータの存在の確認とその後のリカバリ処理の実行の手間を低減することができるという効果を有する。また、データへのアクセス時に異常なデータの存在を発見するので、発見とほぼ同時にそのデータの修復を行うことができる。このとき、アクセス時にローカルキャッシュ領域に展開された正常なデータを使用するので、データの修復における資源を有効に利用することができる。たとえば、使用者や管理者によって後でリカバリ処理を行う場合には、再びそのデータをキャッシュメモリ上に展開する必要があるが、本発明によれば、アクセス時にキャッシュメモリ上に展開されたデータを利用するので、リカバリ処理を行う際の工程数を最小限にとどめることができるという。さらに、異常なデータを長期間そのままの状態としておくことを防ぐこともできる。
以下に添付図面を参照して、本発明にかかるディスクアレイ装置およびそのデータのリカバリ方法の好適な実施の形態を詳細に説明する。
図1は、本発明にかかるディスクアレイ装置の本実施例における概略構成を模式的に示す図である。このディスクアレイ装置10は、ホストコンピュータ40の外部記憶装置として機能する装置であり、データを二重化して格納するディスクアレイ部20と、ディスクアレイ部20の制御を行うディスクアレイ制御部30と、を備えて構成される。なお、この図にはディスクアレイ装置10に接続されるホストコンピュータ40は1台しか示されていないが、ネットワークを介して複数台のホストコンピュータ40に接続される構成でもよい。
ディスクアレイ部20は、複数の磁気ディスク装置(ハードディスク装置)21a〜21hからなり、RAID1またはRAID0+1の構成を有している。RAID1の構成とは、たとえばm台(mは自然数)の磁気ディスク装置21に格納されるデータに冗長性を持たせるために、ミラーリング用にさらにm台の磁気ディスク装置21を備える構成を基本とするものである。また、RAID0+1の構成とは、n台(nは2以上の自然数)の磁気ディスク装置21にデータを分散させて格納するRAID0の構成に、冗長性を持たせるためにさらにミラーリング用の磁気ディスク装置21をn台設ける構成を基本とするものである。いずれの構成にしても、データを格納する磁気ディスク装置と、この格納されるデータを二重化するための磁気ディスク装置とを少なくとも有する構成となっている。本実施例では、データを二重化して格納する磁気ディスク装置21a〜21hをプライマリディスク、セカンダリディスクと呼ぶ。ここで、中央処理部32から最初にアクセスされる方をプライマリディスクといい、プライマリディスクのデータを二重化している方をセカンダリディスクというものとする。また、セカンダリディスクは、プライマリディスクを二重化しているという意味でミラーリング用磁気ディスク装置とも表記するものとする。この図1の説明においては、磁気ディスク装置21a〜21dがプライマリディスクであり、磁気ディスク装置21e〜21hが磁気ディスク装置21a〜21dのそれぞれを二重化しているセカンダリディスクとなる。なお、この磁気ディスク装置21a〜21hに論理ユニットが構成され、ホストコンピュータ40からは論理ユニットが識別されるようになっている。また、この図1に示される例では、8個の磁気ディスク装置21a〜21hが設けられる場合を示しているが、ディスクアレイ部20がこのような構成に限られるものではない。
ディスクアレイ制御部30は、ホストコンピュータ40に対するインタフェース制御を行うチャンネルアダプタ31と、ディスクアレイ部20の制御を行う中央処理部32と、ディスクアレイ部20を構成する個々の磁気ディスク装置21a〜21hを制御するデバイスアダプタ33と、を備えて構成される。なお、この図1に示される例では、2つのチャンネルアダプタ31と、4つの中央処理部32a〜32dと、4つのデバイスアダプタ33が設置される場合が示されているが、ディスクアレイ制御部30がこのような構成に限られるものではない。
チャンネルアダプタ31は、ホストコンピュータ40などの外部装置とのインタフェースである。図2は、チャンネルアダプタの機能構成を示すブロック図である。この図に示されるように、チャンネルアダプタ31は、ホストコンピュータ40からのコマンドを処理するコマンド処理部311と、ホストコンピュータ40からディスクアレイ装置10に書き込まれるデータについてエラーチェックを行うための検査情報を生成してデータに付加する検査情報付加部312と、アクセスされたデータのエラーチェックを行うエラーチェック部313と、これらの各処理部を制御する制御部314と、を有して構成される。
コマンド処理部311は、ホストコンピュータ40から送信されるコマンドを所定の中央処理部32に渡したり、中央処理部32からのコマンドの実行結果をホストコンピュータ40に送信したり、中央処理部32にコマンドの実行結果やエラーチェックの結果を通知したりする機能を有する。たとえば、図1に示されるように複数の中央処理部32a〜32dが設けられる場合には、それぞれの中央処理部32a〜32dの管理する磁気ディスク装置21a〜21hが定められているので、ホストコンピュータ40からのコマンドのアクセス先(たとえば論理ユニットまたはこれと論理ブロックアドレスの組合せ)に応じてコマンドを渡す中央処理部32a〜32dを識別して、その中央処理部32に受信したコマンドを渡す。また、本実施例において、コマンド処理部311が中央処理部32に通知する主要な情報としては、異常通知情報と処理完了通知情報がある。異常通知情報は、エラーチェック部313によって異常なデータと判定された場合に中央処理部32に通知する情報であり、処理完了通知情報は、コマンドを実行した結果をホストコンピュータ40に返した直後にホストコンピュータに対する処理が終了したことを中央処理部32に通知する情報である。
検査情報付加部312は、ホストコンピュータ40から受信した磁気ディスク装置21に書き込まれるデータについて、後で読み込まれた際にそのデータにエラーが存在するか否かを判定するエラーチェックに使用される検査情報を作成し、そのデータに付加する機能を有する。エラーチェックには、たとえばCRC(Cyclic Redundancy Check;巡回冗長検査)などを用いることができる。図3は、検査情報を付加したデータの一例を模式的に示す図である。検査情報71は、ブロックID72と検査用コード73を含んで構成され、ディスクアレイ装置10に書き込まれるデータ70に付加される。ブロックID72は、データの論理的な位置・属性情報であり、検査用コード73は、データの正当性をチェックするための誤り検出符号である。たとえば、所定のデータサイズのブロックごとに検査用コード73を生成し、検査情報71としてデータ70に付加される。なお、CRCを用いた場合の検査用コード73は、データを1つの多項式とみなし、その多項式を生成多項式で割った剰余となる。
エラーチェック部313は、ディスクアレイ部20またはキャッシュメモリ323に格納されるデータをホストコンピュータ40に送信する際に、送信するデータ70が正常か否かのエラーチェックを、該データ70に付加された検査情報71を用いて行う機能を有する。ここで行われるエラーチェックの方法は、検査情報付加部312での検査情報71の作成と同じように対象となるデータ70についてコードの作成を行い、実際に計算したコードと該データ70に付加されている検査情報71中の検査用コード73とを比較することでデータの誤りを検出することができる。
図4は、中央処理部の機能構成を示すブロック図である。この図に示されるように、中央処理部32は、リソースの管理を行うリソース制御部321と、各RAIDレベルで磁気ディスク装置21のI/O(入出力)を制御するRAID制御部322と、データを一時的に格納するキャッシュメモリ323と、受け取ったコマンドの処理とともにキャッシュメモリ323の制御を行うコマンド処理実行部326と、磁気ディスク装置21に異常なデータが存在するためにリカバリ処理が必要か否かを判定するリカバリ処理実行判定部327と、これらの各処理部を制御する制御部328と、を備えて構成される。なお、図1に示されるように複数の中央処理部32a〜32dが設けられる場合には、それぞれの中央処理部32a〜32dが制御する磁気ディスク装置21a〜21hによって構成される論理ユニットの範囲が予め定められている。
リソース制御部321は、たとえば複数のホストコンピュータ40に接続される場合に、別々のホストコンピュータ40が同じデータにアクセスした際におけるデータの変更を行うことが可能なホストコンピュータ40を制限する領域排他機能や、各処理部におけるI/O関連の処理を制御するリソース制御機能を有する。
RAID制御部322は、物理的な磁気ディスク装置21a〜21hを論理ユニットのレベルに変換し、各RAIDレベルでの磁気ディスク装置2121a〜21hのI/Oの制御、たとえばRAIDレベルごとのミラーリングやストライプの制御や管理を行う機能を有する。
キャッシュメモリ323は、ホストコンピュータ40からアクセスのあったデータを格納したり、磁気ディスク装置21に書き込むデータを格納したりする一時記憶手段であり、ホストコンピュータ40からのディスクアレイ部20に書き込むデータや、ディスクアレイ部20から読み出されたデータを一時的に格納するローカルキャッシュ領域324と、ディスクアレイ部20にデータを書き込む場合に書き込むデータを二重化(ミラーリング)するためにデータを一時的に格納するミラーキャッシュ領域325とを有する。なお、ある中央処理部32のミラーキャッシュ領域325は、同じキャッシュメモリ323上のローカルキャッシュ領域324に格納されるデータを二重化するのではなく、隣接する他の中央処理部32のキャッシュメモリ323のローカルキャッシュ領域324と二重化されており、全ての中央処理部32a〜32dのローカルキャッシュ領域324とミラーキャッシュ領域325とはサイクリックに二重化されている。たとえば、図1の場合には、中央処理部32aのキャッシュメモリ323にホストコンピュータ40から書き込まれたデータは、中央処理部32bのキャッシュメモリ323のミラーキャッシュ領域325に二重化される。同様に、中央処理部32bのローカルキャッシュ領域324は、中央処理部32cのミラーキャッシュ領域325に二重化され、中央処理部32cのローカルキャッシュ領域324は、中央処理部32dのミラーキャッシュ領域325に二重化され、中央処理部32dのローカルキャッシュ領域324は、中央処理部32aのミラーキャッシュ領域325に二重化される。
コマンド処理実行部326は、I/Oに使用するキャッシュメモリ323の管理や制御を行うとともに、受け取ったコマンドの処理を行う機能を有する。たとえば、チャンネルアダプタ31のコマンド処理部311から読込み要求を受け取った場合には、I/Oに対するキャッシュメモリ323のキャッシュヒット/キャッシュミス判定を行い、ヒットした場合にはキャッシュメモリ323のローカルキャッシュ領域324内のデータを用意し、キャッシュミスした場合には磁気ディスク装置21からキャッシュメモリ323のローカルキャッシュ領域324へと対象となるデータを展開するステージング(Staging)動作を行ってデータを用意する。また、同様に書き込み要求を受け取った場合には、キャッシュメモリ323のローカルキャッシュ領域324に書き込まれたデータをミラーキャッシュ領域325に二重化してそれぞれプライマリディスクとセカンダリディスクに書き込む処理を行う。さらに、キャッシュメモリ323が枯渇した場合には、キャッシュメモリ323のローカルキャッシュ領域324上のダーティ(Dirty)データを磁気ディスク装置21に書き戻すライトバック(Write Back)処理やキャッシュメモリ323からデータを追い出す処理などのスケジュールを行う。
リカバリ処理実行判定部327は、ホストコンピュータ40からアクセスのあったあるデータに対して、キャッシュメモリ323のローカルキャッシュ領域324上のデータとプライマリディスク上のデータとが不一致なダーティデータであるか否かを判定して、ダーティデータである場合に、コマンド処理実行部326に対してローカルキャッシュ領域324上のデータをディスクアレイ部20に書き戻すライトバック処理を実行するように指示する機能を有する。より具体的には、ホストコンピュータ40からアクセスのあったあるデータに対して、最初にプライマリディスクである磁気ディスク装置21a〜21dから読み込んだデータが異常で、かつセカンダリディスクであるミラーリング用磁気ディスク装置21e〜21hから読み込んだデータが正常である場合に、リカバリ処理の実行が必要であると判定し、ホストコンピュータとのI/Oの終了後にその正常なデータをディスクアレイ部20に書き戻す処理をコマンド処理実行部326に実行させる。
これは、最初にプライマリディスクから読み込んだデータが異常である場合のチャンネルアダプタ31のコマンド処理部311からの異常通知情報と、その後のセカンダリディスクから読み込んだデータが正常である場合のチャンネルアダプタ31のコマンド処理部311からの処理完了通知情報とを受け取ることを利用して判定するものである。つまり、あるデータについて異常通知情報を受け取った後でかつ処理完了通知情報を受け取った場合にのみ、リカバリ処理実行判定部327は、磁気ディスク装置21a〜21hのリカバリ処理の実行を指示する。このリカバリ処理によって、キャッシュメモリ323上のデータとそのデータと同じ位置に格納されるプライマリディスク上のデータとの不一致が解消され、ノンダーティな状態となる。
デバイスアダプタ33は、中央処理部32の指示により各磁気ディスク装置21a〜21hを制御するために、磁気ディスク装置21a〜21hとの間でコマンドやデータのやり取りを行う機能を有する。
ディスクアレイ装置10はホストコンピュータ40の外部記憶装置であり、ホストコンピュータ40からのライトコマンドによって必要なデータが書き込まれる。なお、ディスクアレイ装置10では、ホストコンピュータ40からのライトコマンドによってデータをキャッシュメモリ323のローカルキャッシュ領域324とミラーキャッシュ領域325に書き込んだ後に、ディスクアレイ装置10内部でキャッシュメモリ323上のデータをそれぞれ対応する磁気ディスク装置21a〜21hに書き戻し処理(ライトバック処理)を行う。その後、ホストコンピュータ40からのリードコマンドなどの各種コマンドが実行される。そこで、このような構成のディスクアレイ装置10における(1)データのライトバック処理、および(2)最初にアクセスしたプライマリディスクに格納されるデータが異常であり、セカンダリディスクに格納されるデータが正常であった場合のディスクアレイ装置10のリカバリ処理について順に説明する。
まず、ディスクアレイ装置におけるデータのライトバック処理について図5のフローチャートを参照しながら説明する。なお、ここでは、データは図1の磁気ディスク装置21a,21eに書き戻されるものとし、中央処理部32aが磁気ディスク装置21a,21eを管理するものとする。また、上述したように、中央処理部32aのローカルキャッシュ領域324は、中央処理部32bのミラーキャッシュ領域325と二重化されているものとする。最初に、チャンネルアダプタ31が、ホストコンピュータ40からデータを書き込むコマンドを受信すると(ステップS11)、チャンネルアダプタ31の検査情報付加部312は、受信したデータについて検査情報を作成するとともに作成した検査情報をデータに付加する(ステップS12)。その後、チャンネルアダプタ31のコマンド処理部311は、そのデータのアクセス先(たとえば、論理ユニット番号と論理アドレスブロック)を取得し(ステップS13)、そのアクセス先の磁気ディスク装置21aを担当する中央処理部32aを選択する。
そして、チャンネルアダプタ31のコマンド処理部311は、選択した中央処理部32aのキャッシュメモリ323のローカルキャッシュ領域324と、書き込むデータを二重化するための別の中央処理部32のキャッシュメモリ323のミラーキャッシュ領域325に、検査情報を付加した書き込むデータを格納する(ステップS14)。ついで、チャンネルアダプタ31のコマンド処理部311は、データの書き込み完了をホストコンピュータ40に通知した後(ステップS15)、中央処理部32aのコマンド処理実行部326は、自処理部内のキャッシュメモリ323のローカルキャッシュ領域324に格納されたデータをプライマリディスク(磁気ディスク装置21a)に書き戻し、別の中央処理部32bのコマンド処理実行部326は、自処理部内のキャッシュメモリ323のミラーキャッシュ領域325に格納されたデータをセカンダリディスク(磁気ディスク装置21e)に書き戻す処理を行う(ステップS16)。以上のようにして、データのライトバック処理が終了する。
つぎに、最初にアクセスしたプライマリディスクに格納されるデータが異常であり、セカンダリディスクに格納されるデータが正常であった場合のディスクアレイ装置のリカバリ処理について図6−1〜図6−2のフローチャートを参照しながら説明する。なお、ここでは、図5の手順によって磁気ディスク装置21a,21eに格納されたデータを読み出す処理を行うものとする。ただし、プライマリディスクである磁気ディスク装置21aのデータは異常であり、セカンダリディスクである磁気ディスク装置21eのデータは正常であるものとする。最初に、チャンネルアダプタ31が、ホストコンピュータ40からたとえばリードコマンドを受信すると(ステップS31)、そのアクセス先を判定する(ステップS32)。つまり、コマンドに含まれる論理ユニットや論理アドレスブロックなどのアクセス先の位置を示すアクセス先情報に基づいて、そのアクセス先の磁気ディスク装置21を管理する中央処理部32aを選択し、この中央処理部32aに受信したコマンドを通知する。
中央処理部32aのコマンド処理実行部326は、アクセス先のデータがキャッシュメモリ323のローカルキャッシュ領域324内にあるか否かを判定する(ステップS33)。ローカルャッシュ領域内にない場合(ステップS33でNoの場合)には、コマンド処理実行部326はプライマリディスク(磁気ディスク装置21a)から対応するデータをキャッシュメモリ323のローカルキャッシュ領域324に展開するステージング処理を行うようにデバイスアダプタ33に依頼する。これにより、デバイスアダプタ33は、プライマリディスクから対象となるデータを読み出してキャッシュメモリ323のローカルキャッシュ領域324に展開する(ステップS34)。その後またはステップS33でアクセス先のデータがローカルキャッシュ領域324内にある場合(ステップS33でYesの場合)、チャンネルアダプタ31のコマンド処理部311は、ローカルキャッシュ領域324内のアクセス先に該当するデータを読み出す(ステップS35)。
チャンネルアダプタ31のエラーチェック部313は、読み出したデータについて所定の方法でエラーチェックを行う(ステップS36)。エラーチェックの結果、エラーがない場合(ステップS37でNoの場合)には、チャンネルアダプタ31のコマンド処理部311は、ローカルキャッシュ領域324上のデータをホストコンピュータ40に送信して(ステップS38)、リードコマンドに対応する処理が終了する。一方、エラーチェックの結果、エラーがある場合(ステップS37でYesの場合)には、チャンネルアダプタ31のコマンド処理部311は、ホストコンピュータ40に対してエラーを報告するとともに(ステップS39)、中央処理部32に対しても異常通知情報を通知する(ステップS40)。ホストコンピュータ40は、エラーの報告を受けると、リードコマンドをリトライする。また、中央処理部32のリカバリ処理実行判定部327は受信した異常通知情報をその元となるコマンドに対応付けて保持する。
ディスクアレイ装置10のチャンネルアダプタ31はリトライされたリードコマンドを受信すると(ステップS41)、ステップS32と同様にアクセス先を判定する(ステップS42)。つまり、コマンドに含まれる論理ユニットや論理アドレスブロックなどのアクセス先情報に基づいて、そのアクセス先の磁気ディスク装置21eを管理する中央処理部32aを選択し、この中央処理部32aに受信したコマンドを渡す。このとき、中央処理部32のコマンド処理実行部326は、前回と同じコマンドのリトライなので、セカンダリディスク(ミラーリング用磁気ディスク装置21e)から要求されたデータをキャッシュメモリ323のローカルキャッシュ領域324に展開する(ステップS43)。
その後、チャンネルアダプタ31のコマンド処理部311は、キャッシュメモリ323内のローカルキャッシュ領域324内のアクセス先に該当するデータを読み出し(ステップS44)、エラーチェック部313は、読み出したデータについてエラーチェックを行う(ステップS45)。エラーチェックの結果、エラーがある場合(ステップS46でYesの場合)には、コマンド処理部311は、ホストコンピュータ40に対してエラーを報告し(ステップS47)、この場合にはリカバリ処理を行うことができないので、そのままリカバリ処理を終了する。一方、エラーチェックの結果、エラーがない場合(ステップS46でNoの場合)には、ローカルキャッシュ領域324上のデータをホストコンピュータ40に送信するとともに(ステップS48)、コマンド処理部311はホストコンピュータ40に対する処理が終了したことを示す処理完了通知情報を中央処理部32に対して通知する(ステップS49)。
処理完了通知情報を受信した中央処理部32のリカバリ処理実行判定部327は、ステップS40で異常通知情報を受け取り、かつステップS49で処理完了通知情報を受け取ったので、キャッシュメモリ323のローカルキャッシュ領域324に格納されているデータと、このデータに対応するプライマリディスク(磁気ディスク装置21a)に格納されているデータとの間で内容にずれがある、すなわちダーティデータであることを認識し、ライトバック処理の実行をコマンド処理実行部326に通知する。つまり、コマンド処理実行部326は、自中央処理部32aのキャッシュメモリ323のローカルキャッシュ領域324に格納されているデータを、二重化される中央処理部32bのキャッシュメモリ323のミラーキャッシュ領域325に二重化し(ステップS50)、ローカルキャッシュ領域324に格納されているデータを異常なデータを格納していたプライマリディスク(磁気ディスク装置21a)に書き戻す処理を行い、また、中央処理部32bのコマンド処理実行部326は、自処理部内のキャッシュメモリ323のミラーキャッシュ領域325に格納されているデータをセカンダリディスク(ミラーリング用磁気ディスク装置21)に書き戻す処理を行う(ステップS51)。以上により、異常なデータが格納されたキャッシュメモリ323またはこのキャッシュメモリ323に対応する磁気ディスク装置21内に、正常なデータを書き戻す処理が終了する。
なお、本実施例では、キャッシュメモリと磁気ディスク装置を二重化する場合を例に挙げて説明したが、これに限定されるものではなく、キャッシュメモリと磁気ディスク装置を3個以上備えて多重化した場合について同様に適用することが可能である。
また、以上のデータのリカバリ方法は、その処理手順を格納したプログラムをコンピュータに読み取り可能な記憶媒体に記憶しておくことができ、ディスクアレイ装置内のプログラムの処理機能を有する演算処理部がそのプログラムを読み出して実行することによっても実現することができる。たとえば、このデータリカバリプログラムは、フレキシブルディスク、CD−ROM(Compact Disk - Read Only Memory)、光磁気ディスク、DVD(Digital Versatile Disk)、IC(Integrated Circuit)カードなどの可搬型記憶媒体の他に、コンピュータの内外に備えられるハードディスクドライブや、RAM(Random Access Memory)、ROMなどの固定型記憶媒体、さらにモデムを介して接続される公衆回線や、LAN(Local Area Network)/WAN(Wide Area Network)などのように、プログラムの送信に際して短期にプログラムを保持する通信媒体などを含むものである。
上述してきたように、本実施例では、ホストコンピュータ40から要求されたデータを返す前にチャンネルアダプタ31でエラーチェックを行い、その結果、プライマリディスク上のデータがエラーである場合に中央処理部32に異常通知情報を伝え、セカンダリディスク上の対応するデータが正常だった場合に中央処理部32にホストコンピュータ40からのコマンドに対する処理が終了した処理完了通知情報を中央処理部32に伝えるようにしている。中央処理部32では、異常通知情報と処理完了通知情報を用いて、ディスクアレイ部20の異常なデータのリカバリ処理の必要の有無を判定し、異常通知情報の受信後に処理完了通知を受信した場合に、リトライ時にキャッシュメモリ323上に読み込まれたデータを用いてリカバリ処理を実行する。
これによって、ディスクアレイ装置10へのI/Oの延長で、ディスクアレイ装置10に異常なデータが存在する場合のそのデータのリカバリ処理を自動的に行うことができるという効果を有する。また、リカバリ処理にあたって、セカンダリディスクであるミラーリング用磁気ディスク装置21e〜21hからキャッシュメモリ323上に読み出されたデータを用いるようにしているので、後でリカバリ処理を行う場合に比してリカバリ処理に要する工程や資源を有効に利用することが可能になるという効果も有する。さらに、異常なデータが存在するとディスクアレイ装置10が認識した場合に、すぐにリカバリ処理が実行されるので、ディスクアレイ装置10では常に正常なデータを格納している状態を保つことができるという効果も有する。また、異常なデータがディスクアレイ部20に格納されていることをディスクアレイ装置10の使用者や管理者などが気付かずにそのまま長時間放置されてしまうという状態を防ぐこともできる。
以上のように、本発明にかかるディスクアレイ装置は、複数のハードディスクにデータを二重化して格納する構成を有する外部記憶装置における異常データのリカバリ処理に有用である。
ディスクアレイ装置の概略構成を示すブロック図である。 チャンネルアダプタの機能構成を示すブロック図である。 検査情報を付加したデータの一例を模式的に示す図である。 中央処理部の機能構成を示すブロック図である。 データのライトバック処理を示すフローチャートである。 リカバリ処理を示すフローチャートである(その1)。 リカバリ処理を示すフローチャートである(その2)。 従来のディスクアレイ装置の構成を模式的に示す図である。
符号の説明
10 ディスクアレイ装置
20 ディスクアレイ部
21a〜21h 磁気ディスク装置
30 ディスクアレイ制御部
31 チャンネルアダプタ
32a〜32c 中央処理部
33 デバイスアダプタ
40 ホストコンピュータ
311 コマンド処理部
312 検査情報付加部
313 エラーチェック部
314,328 制御部
321 リソース制御部
322 RAID制御部
323 キャッシュメモリ
324 ローカルキャッシュ領域
325 ミラーキャッシュ領域
326 コマンド処理実行部
327 リカバリ処理実行判定部

Claims (3)

  1. データを記憶する第1の磁気ディスク装置と、該第1の磁気ディスク装置に記憶されるデータを二重化する第2の磁気ディスク装置と、を有するディスクアレイ部と、
    データ読み込み時に前記ディスクアレイ部の前記第1または前記第2の磁気ディスク装置から読み出したデータとデータ書き込み時に外部装置からのデータを書き込むローカルキャッシュ領域と、データ書き込み時に前記ローカルキャッシュ領域に書き込まれたデータを二重化するためのミラーキャッシュ領域とを有するキャッシュメモリと、前記外部装置からの最初のデータ読み込み命令の受け取り時に前記第1の磁気ディスク装置内の第1のデータを前記ローカルキャッシュ領域に展開し、再度のデータ読み込み命令の受け取り時に前記第2の磁気ディスク装置内の第2のデータを前記ローカルキャッシュ領域に展開するコマンド処理実行手段と、を有する複数の中央処理部と、
    前記外部装置から書き込まれるデータに、エラーチェックを行うための検査情報を付加する検査情報付加手段と、
    前記ローカルキャッシュ領域に展開されたデータのエラーチェックを前記検査情報を用いて行うエラーチェック手段と、
    前記エラーチェック手段によって前記第1のデータが異常で前記第2のデータが正常であると判定された場合に、前記外部装置との入出力処理の終了後に前記第2のデータの書き戻し処理を行うように前記コマンド処理実行手段に指示するリカバリ処理実行判定手段と、
    を備え、前記コマンド処理手段は、前記リカバリ処理実行判定手段からの指示により、前記ローカルキャッシュ領域の前記第2のデータを他の中央処理部のキャッシュメモリのミラーキャッシュ領域に二重化して、前記第1と前記第2の磁気ディスク装置に書き戻す処理を実行することを特徴とするディスクアレイ装置。
  2. データを二重化して記憶する第1と第2の磁気ディスク装置と、前記第1または前記第2の磁気ディスク装置へのアクセス時にデータを格納する第1のキャッシュ部と、前記第1のキャッシュ部に書き込まれた外部からのデータを二重化する第2のキャッシュ部と、を備えるディスクアレイ装置におけるデータのリカバリ方法であって、
    ディスクアレイ装置に接続される外部装置からのデータ読込命令に基づいて前記第1の磁気ディスク装置から前記第1のキャッシュ部に書き込んだ第1のデータが異常である場合に、再度の前記外部装置からのデータ読み込み命令を受けて前記第2の磁気ディスク装置から前記第1のキャッシュ部に第2のデータを書き込む第1の工程と、
    前記第2のデータのエラーチェックを行う第2の工程と、
    エラーチェックによって正常なデータであると判定された場合に、前記第2のデータを前記外部装置に送信するとともに、前記第1のキャッシュ部に書き込まれた前記第1のデータを第2のキャッシュ部に二重化する第3の工程と、
    前記第1と前記第2のキャッシュ部に書き込まれた前記第2のデータをそれぞれ前記第1と前記第2の磁気ディスク装置に書き戻す第4の工程と、
    を含むことを特徴とするデータのリカバリ方法。
  3. データを二重化して記憶する第1と第2の磁気ディスク装置と、前記第1または前記第2の磁気ディスク装置へのアクセス時にデータを格納する第1のキャッシュ部と、前記第1のキャッシュ部に書き込まれた外部からのデータを二重化する第2のキャッシュ部と、データの読み出しまたは書き込みの処理を制御するディスクアレイ制御部と、を備えるディスクアレイ装置に用いられるデータリカバリプログラムであって、
    前記ディスクアレイ制御部に、
    ディスクアレイ装置に接続される外部装置からのデータの読込命令を受け取り、第1の磁気ディスク装置から第1のキャッシュ部に書き込んだ前記読み込み命令に対応するデータが異常である場合に、第2の磁気ディスク装置から前記第1のキャッシュ部に前記読み込み命令に対応するデータを書き込む第1の工程と、
    前記第1のキャッシュ部に書き込まれたデータのエラーチェックを行う第2の工程と、
    エラーチェックの結果、正常なデータであると判定された場合に、前記第1のキャッシュ部に書込まれたデータを前記外部装置に送信するとともに、前記第1のキャッシュ部に書き込まれたデータを第2のキャッシュ部に二重化する第3の工程と、
    前記第1と前記第2のキャッシュ部に書き込まれたデータをそれぞれ前記第1と前記第2の磁気ディスク装置に書き戻す第4の工程と、
    を実行させることを特徴とするデータリカバリプログラム。
JP2004323719A 2004-11-08 2004-11-08 ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム Expired - Fee Related JP4491330B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2004323719A JP4491330B2 (ja) 2004-11-08 2004-11-08 ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム
US11/067,329 US20060101216A1 (en) 2004-11-08 2005-02-28 Disk array apparatus, method of data recovery, and computer product
KR1020050018628A KR100697761B1 (ko) 2004-11-08 2005-03-07 디스크 어레이 장치와 그 데이터의 리커버리 방법 및 데이터 리커버리 프로그램을 기록한 기록 매체
CNB2005100589549A CN100377060C (zh) 2004-11-08 2005-03-25 盘阵列装置和数据恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004323719A JP4491330B2 (ja) 2004-11-08 2004-11-08 ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム

Publications (2)

Publication Number Publication Date
JP2006134149A true JP2006134149A (ja) 2006-05-25
JP4491330B2 JP4491330B2 (ja) 2010-06-30

Family

ID=36317694

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004323719A Expired - Fee Related JP4491330B2 (ja) 2004-11-08 2004-11-08 ディスクアレイ装置とそのデータのリカバリ方法およびデータリカバリプログラム

Country Status (4)

Country Link
US (1) US20060101216A1 (ja)
JP (1) JP4491330B2 (ja)
KR (1) KR100697761B1 (ja)
CN (1) CN100377060C (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012168674A (ja) * 2011-02-14 2012-09-06 Nec Computertechno Ltd ミラーリング復旧装置、および、ミラーリング復旧方法
CN102855163A (zh) * 2011-06-27 2013-01-02 华为软件技术有限公司 一种内存数据库双机热备方法及主机
US8612675B2 (en) 2007-08-29 2013-12-17 Fujitsu Limited Storage controller and firmware updating method
WO2015052798A1 (ja) * 2013-10-09 2015-04-16 株式会社日立製作所 ストレージシステム及び記憶制御方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252239A (ja) * 2005-03-11 2006-09-21 Fujitsu Ltd ファイル制御装置
US7725764B2 (en) * 2006-08-04 2010-05-25 Tsx Inc. Failover system and method
US20100131696A1 (en) * 2008-11-21 2010-05-27 Pratt Thomas L System and Method for Information Handling System Data Redundancy
JP2010128808A (ja) * 2008-11-27 2010-06-10 Hitachi Ltd ストレージ制御装置
US8667218B2 (en) * 2010-03-08 2014-03-04 Hitachi, Ltd. Storage apparatus comprising RAID groups of RAID 1 series and control method of writing to RAID group of RAID 1 series
US9798623B2 (en) * 2012-05-11 2017-10-24 Seagate Technology Llc Using cache to manage errors in primary storage
US9760293B2 (en) * 2013-03-07 2017-09-12 Seagate Technology Llc Mirrored data storage with improved data reliability
CN103226499B (zh) 2013-04-22 2016-02-24 华为技术有限公司 一种恢复内部存储器中的异常数据的方法及装置
CN104090729B (zh) * 2014-07-04 2017-08-15 浙江宇视科技有限公司 通过业务写操作修复镜像同步的方法及装置
CN106933707B (zh) * 2017-03-15 2020-11-06 李经纬 基于raid技术的数据存储设备数据恢复方法及系统
CN108255640B (zh) * 2017-12-15 2021-11-02 云南省科学技术情报研究院 分布式存储中冗余数据快速恢复方法及装置
CN109189712A (zh) * 2018-08-21 2019-01-11 宁波明科机电有限公司 Usb数据传输系统
DE102021103505A1 (de) * 2021-02-15 2022-08-18 Ebm-Papst Landshut Gmbh Heizvorrichtung und Verfahren zum Betreiben einer Heizvorrichtung

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241173A (ja) * 1995-01-06 1996-09-17 Hewlett Packard Co <Hp> ディスク記憶装置制御システム
JPH1093556A (ja) * 1996-09-12 1998-04-10 Mitsubishi Electric Corp 通信監視制御装置及び通信監視制御方法
JPH10161938A (ja) * 1996-11-29 1998-06-19 Toshiba Corp ディスク制御装置
JPH1153120A (ja) * 1997-08-08 1999-02-26 Fujitsu Ltd ディスク制御装置およびディスク制御プログラムを記録した媒体
JP2000330729A (ja) * 1999-05-18 2000-11-30 Toshiba Corp オンラインバックアップ機能を持つディスクアレイシステム
JP2001022532A (ja) * 1999-07-07 2001-01-26 Nec Software Kobe Ltd 記録装置および記録方法
JP2004164675A (ja) * 2004-01-26 2004-06-10 Fujitsu Ltd ディスクアレイ装置
JP2004206239A (ja) * 2002-12-24 2004-07-22 Pfu Ltd Raid装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5140592A (en) * 1990-03-02 1992-08-18 Sf2 Corporation Disk array system
US5499253A (en) * 1994-01-05 1996-03-12 Digital Equipment Corporation System and method for calculating RAID 6 check codes
JP2002123372A (ja) 2000-10-18 2002-04-26 Nec Corp キャッシュメモリ付きディスクアレイ装置及びそのエラー制御方法並びにその制御プログラムを記録した記録媒体
US6912669B2 (en) * 2002-02-21 2005-06-28 International Business Machines Corporation Method and apparatus for maintaining cache coherency in a storage system
JP4170056B2 (ja) * 2002-03-29 2008-10-22 株式会社日立製作所 複製ボリューム間でのバックアップ・リストア管理方法およびこの方法に用いる記憶制御装置
JP2003303055A (ja) * 2002-04-09 2003-10-24 Hitachi Ltd ディスクアダプタとディスクアレイをスイッチを介して接続したディスク装置
US6842825B2 (en) * 2002-08-07 2005-01-11 International Business Machines Corporation Adjusting timestamps to preserve update timing information for cached data objects
EP1597674B1 (en) * 2003-02-10 2008-04-09 Netezza Corporation Rapid regeneration of failed disk sector in a distributed database system
WO2004114116A1 (ja) * 2003-06-19 2004-12-29 Fujitsu Limited キャッシュ二重化方式におけるミラーキャッシュからの書き戻し方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241173A (ja) * 1995-01-06 1996-09-17 Hewlett Packard Co <Hp> ディスク記憶装置制御システム
JPH1093556A (ja) * 1996-09-12 1998-04-10 Mitsubishi Electric Corp 通信監視制御装置及び通信監視制御方法
JPH10161938A (ja) * 1996-11-29 1998-06-19 Toshiba Corp ディスク制御装置
JPH1153120A (ja) * 1997-08-08 1999-02-26 Fujitsu Ltd ディスク制御装置およびディスク制御プログラムを記録した媒体
JP2000330729A (ja) * 1999-05-18 2000-11-30 Toshiba Corp オンラインバックアップ機能を持つディスクアレイシステム
JP2001022532A (ja) * 1999-07-07 2001-01-26 Nec Software Kobe Ltd 記録装置および記録方法
JP2004206239A (ja) * 2002-12-24 2004-07-22 Pfu Ltd Raid装置
JP2004164675A (ja) * 2004-01-26 2004-06-10 Fujitsu Ltd ディスクアレイ装置

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8612675B2 (en) 2007-08-29 2013-12-17 Fujitsu Limited Storage controller and firmware updating method
JP2012168674A (ja) * 2011-02-14 2012-09-06 Nec Computertechno Ltd ミラーリング復旧装置、および、ミラーリング復旧方法
CN102855163A (zh) * 2011-06-27 2013-01-02 华为软件技术有限公司 一种内存数据库双机热备方法及主机
WO2015052798A1 (ja) * 2013-10-09 2015-04-16 株式会社日立製作所 ストレージシステム及び記憶制御方法
GB2534956A (en) * 2013-10-09 2016-08-10 Hitachi Ltd Storage system and storage control method
JP6009095B2 (ja) * 2013-10-09 2016-10-19 株式会社日立製作所 ストレージシステム及び記憶制御方法

Also Published As

Publication number Publication date
CN100377060C (zh) 2008-03-26
US20060101216A1 (en) 2006-05-11
KR20060043455A (ko) 2006-05-15
JP4491330B2 (ja) 2010-06-30
CN1773443A (zh) 2006-05-17
KR100697761B1 (ko) 2007-03-21

Similar Documents

Publication Publication Date Title
KR100697761B1 (ko) 디스크 어레이 장치와 그 데이터의 리커버리 방법 및 데이터 리커버리 프로그램을 기록한 기록 매체
JP4958739B2 (ja) 障害の発生した記憶装置に記憶されているデータを修復するストレージシステム
JP5768587B2 (ja) ストレージシステム、ストレージ制御装置およびストレージ制御方法
US7565573B2 (en) Data-duplication control apparatus
JP4815825B2 (ja) ディスクアレイ装置及びその再構築方法
US20050229033A1 (en) Disk array controller and information processing apparatus
CN106168920B (zh) 控制包括只读闪速数据存储设备的独立磁盘冗余阵列
US9081697B2 (en) Storage control apparatus and storage control method
JP2008204041A (ja) ストレージ装置及びデータ配置制御方法
JPWO2006123416A1 (ja) ディスク故障復旧方法及びディスクアレイ装置
JP2007334593A (ja) Raidコントローラおよびraid装置
JP4114877B2 (ja) 不正データを検出するための装置、方法、及びプログラム
TW200532449A (en) Efficient media scan operations for storage systems
JP4322870B2 (ja) Raid装置、raid制御方法、及びraid制御プログラム
JP2006139478A (ja) ディスクアレイシステム
JP2002175158A (ja) ディスクアレイ装置におけるデータ修復方法及びディスクアレイコントローラ
JP2005174178A (ja) ディスクアレイ装置及びディスクアレイ装置の保守方法
US20090177916A1 (en) Storage system, controller of storage system, control method of storage system
JP2006268502A (ja) アレイコントローラ、メディアエラー修復方法及びプログラム
JP2006285527A (ja) ストレージ装置およびプログラム。
JP2006079219A (ja) ディスクアレイ制御装置およびディスクアレイ制御方法
JP4143040B2 (ja) ディスクアレイ制御装置、同装置に適用されるデータ欠損検出時の処理方法及びプログラム
JP3944280B2 (ja) 障害回復方法および装置
JP2014041524A (ja) 半導体記憶装置、ストレージ装置、半導体記憶装置制御方法、ストレージ制御方法、および、コンピュータ・プログラム
JP6957845B2 (ja) ストレージ制御装置及びストレージ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060526

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090507

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091228

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20100112

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: 20100330

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100405

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130409

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140409

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees