JP2001184266A - 情報記録装置およびその制御方法 - Google Patents

情報記録装置およびその制御方法

Info

Publication number
JP2001184266A
JP2001184266A JP37011699A JP37011699A JP2001184266A JP 2001184266 A JP2001184266 A JP 2001184266A JP 37011699 A JP37011699 A JP 37011699A JP 37011699 A JP37011699 A JP 37011699A JP 2001184266 A JP2001184266 A JP 2001184266A
Authority
JP
Japan
Prior art keywords
data
parity
control means
recording
information recording
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
JP37011699A
Other languages
English (en)
Other versions
JP3458804B2 (ja
Inventor
Yoshiaki Mori
善昭 森
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP37011699A priority Critical patent/JP3458804B2/ja
Priority to US09/745,732 priority patent/US6606683B2/en
Publication of JP2001184266A publication Critical patent/JP2001184266A/ja
Application granted granted Critical
Publication of JP3458804B2 publication Critical patent/JP3458804B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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/2097Error 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 maintaining the standby controller/processing unit updated
    • 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/2089Redundant storage control functionality
    • 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/2089Redundant storage control functionality
    • G06F11/2092Techniques of failing over between control units

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

(57)【要約】 【課題】 電源障害、メモリの故障などによって一方の
処理装置でデータ更新処理が中断された場合に、他方の
処理装置で2重化しておいた未更新データを用いて継続
して更新処理を好適に行い得るようにした情報記録装置
を提供する。 【解決手段】 上位装置から受け取ったデータを情報記
録媒体に記録する制御手段を複数台具え、各々の制御手
段がメモリを有し、前記データを一の制御手段のメモリ
に一時的に格納すると共に、他の制御手段のメモリに2
重化して格納しておき、一の制御手段で行われるデータ
の記録処理が中断した場合に、他の制御手段において前
記2重化したデータを用いてその記録処理を継続するよ
うに構成した情報記録装置において、前記一の制御装置
におけるデータの更新処理が不可逆な状態になるポイン
トを当該制御装置から、前記2重化したデータを有する
制御装置へ通知するように構成した。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は情報記録装置及びそ
の装置を用いた情報記録方法に関するものであり、特
に、2つ以上の物理的に独立したメモリに未更新データ
を2重化して格納しておくことによって、電源障害、メ
モリの故障などによって一方の処理装置でデータ更新処
理が中断された場合に、他方の処理装置に2重化してお
いた未更新データを用いて更新処理を継続して行い得る
ようにした情報記録装置およびその装置を用いた情報記
録方法に関する。
【0002】
【従来の技術】ディスクアレイ装置では、複数のディス
クにデータを分散して書き込み、これらのデータを基に
して冗長データを生成してこれを独立したディスクに書
き込むことによって、ディスクの故障によるデータの消
失を防止するようにしている。このようなディスクアレ
イ装置では、冗長度の許す範囲であれば、例えディスク
が故障してもデータを再生することができ、冗長度を超
える数のディスクが故障しない限り、データを消失する
ことはないが、後述するようにディスク上にデータが適
切に書き込まれていない場合は、データが失われる可能
性がある。
【0003】ディスクアレイ装置では、単体ディスクと
異なり、データの書き込みを1回のアクセスで行うこと
ができない。すなわち、データを書き込むべき領域に元
から書き込まれている旧データと、この旧データについ
ての旧パリティを読み出して、これらのデータと新しく
書き込むデータを用いて新たにパリティデータを生成し
て、これをディスクに書き込むという複数段階の処理が
求められる。従って、ディスクへのアクセス回数が多く
なり性能の低下が生じるため、一般にディスクアレイ装
置内にキャッシュメモリを搭載して、上位装置からキャ
ッシュメモリへのデータ転送が完了した時点で、上位装
置に対して書き込み終了の報告を行う方法が採用されて
いる。
【0004】この方法では、上位装置からキャッシュメ
モリへデータ転送が完了した時点で書き込み終了が報告
されるので、書き込み処理中のデータ保護が絶対条件と
なる。しかし、未更新データを長時間キャッシュメモリ
上に保持しておく必要があるため、メモリの故障、電源
障害などによるデータ消失の危険性が高い。このため、
制御装置を2台設けて、この装置間で処理するべきデー
タをコピーして、2重化した状態でデータを管理するこ
とが行われている。
【0005】
【発明が解決しようとする課題】このように、データを
2重化することによって、メモリの故障、電源障害など
によってデータが消失する可能性は低くなってはいる
が、ディスクアレイ装置では、ディスク上に記録された
データとこのデータに関連するパリティなどの冗長デー
タとの間に一貫性を保つことが重要な要素であり、この
一貫性が失われると、誤ったデータを上位装置に送出す
ることになる。
【0006】RAID(Redundant Array of Inexpensi
ve Disks)には、データの分散方法にいくつかのレベル
が存在する。例えば、レベル3(RAID3)と呼ば
れ、常に上位装置から受け取ったデータを複数のディス
クに分割すると同時に、これと同時に冗長データを平行
して生成して、これらを一貫性を維持すべきデータ群と
して同時に書き込む方式や、レベル5(RAID5)と
呼ばれ、データをセクタに分割して書き込み、パリティ
情報は普通のデータと同様に別のセクタとして追加する
方法がある。
【0007】図10は、RAID5を構成するディスク
上のデータの配置の例を示す図である。このように配置
されたディスクアレイ装置におけるデータ更新方法とし
て(1)一貫性を維持すべきデータ群を全て読み出して
パリティデータを生成する方法と(2)旧データを使用
してパリティデータを生成する方法の二つがある。い
ま、上位装置からブロック(Data#01)への書き込み
が実行された場合を例に取ると、(1)の方法では、ま
ず、ハードディスク#2、#3、#4からそれぞれブロ
ックデータ(Data#09)、(Data#11)、(Data#1
9)を読み出して、これらのブロックデータと上位装置
から受け取った新(Date#01)の内容とから新しいパ
リティデータを生成し、新(Date#01)と新パリティ
データをそれぞれハードディスク#1、#5に書き込
む。また、(2)の方法では、ハードディスク#1、#
5からそれぞれ旧データ(Data#01)と旧パリティデ
ータを読み出して、この旧データ、旧パリティデータ
と、上位装置から受け取った新データ(Date#01)の
内容の排他的論理和から新パリティデータを生成し、新
(Date#01)と新パリティデータをそれぞれハードデ
ィスク#1、#5に書き込む。
【0008】どちらの方法でも、同じ結果を得ることが
できるが、(1)の方法では、一貫性を維持すべきデー
タ群の中に上位装置から送られてきた新データが多い場
合は、ディスクへのアクセス回数が少なくて済むが、小
ブロックへのアクセスでは、RAIDを構成するディス
クの台数が多いほど1ブロックの更新に必要なディスク
へのアクセス回数が増えることになる。これに対して
(2)の方法では、小ブロックへアクセスがなされる場
合でも、ディスクへのアクセス回数は少なくてすむ。
【0009】(2)の方法を採用した場合、新パリティ
データを生成するためには、最終的に新しいデータで上
書きされる旧(Date#01)と旧パリティデータを読み
出す必要がある。この場合、2台の制御装置のキャッシ
ュメモリで未更新データを2重化しても、片側の制御装
置が旧(Date#01)あるいは旧パリティデータの書き
換えを実行中に電源障害などによって処理が中断された
場合には、他系の制御装置が2重化されている未更新デ
ータを使用してディスクのデータ更新処理を引き継ぐ際
に、誤った新パリティデータを生成する可能性がある。
すなわち、未更新データ、あるいは新パリティをディス
クに書き込んでいる間に処理が中断されて、他方の制御
装置で2重化したデータを使って処理を継続しようとす
るときに、新パリティを生成するために必要な旧データ
や旧パリティがすでに上書きされている可能性があるた
めである。これらの旧データや旧パリティが上書きされ
てしまうと、上述の方法による新パリティの生成が行え
なくなる。
【0010】このように、(2)の方法では未更新デー
タ、または新パリティのディスクへの書き込み開始を契
機にしてディスクへのデータの更新処理は不可逆な状態
となり、この不可逆状態になるポイントを経過したこと
を意識することなく、バックアップ用の制御装置で2重
化したデータを用いて更新処理を継続しようとすると、
データの一貫性が失われることになる。
【0011】本発明は、独立した不揮発性メモリを複数
設けて、このメモリ上で未更新データを2重化して保護
するようにしたディスクアレイ装置において、一方の制
御装置がデータを交信中に電源障害などで処理を中断し
て、他方の制御装置がこの処理を適切に引き継いだ場合
でも、データ化けを生じることのないようにデータ更新
を行うことのできる装置を提供することを目的とする。
また、処理が中断した時点でディスクアレイ装置が冗長
性を失っている状態であっても、ディスクアレイ内で論
理的に一貫性のあるパリティデータを使用できるように
して、誤ったデータを復元して上位装置に転送するよう
なことのないディスクアレイ装置を提供することを目的
とする。
【0012】
【課題を解決するための手段】本発明の情報記録装置
は、上位装置から受け取ったデータを情報記録媒体に記
録する制御手段を複数台具え、各々の制御手段がメモリ
を有し、前記データを一の制御手段のメモリに一時的に
格納すると共に、他の制御手段のメモリに2重化して格
納しておき、前記一の制御手段で行われるデータの記録
処理が中断した場合に、前記他の制御手段において前記
2重化したデータを用いてその記録処理を継続するよう
に構成した情報記録装置において、前記他の制御装置に
よって前記2重化したデータを用いて当該データの更新
処理を継続するように構成した情報記録装置において、
前記一の制御装置におけるデータの更新処理が不可逆な
状態になるポイントを当該制御装置から、前記2重化し
たデータを有する制御装置へ通知するように構成したこ
とを特徴とする情報記録装置。
【0013】このように、本発明のディスクアレイ装置
では、データの更新処理を行っている制御装置におい
て、そのデータの更新処理が不可逆な状態になるポイン
トを、2重化したデータを格納しているバックアップ用
制御装置(他の制御装置)に通知するようにしているた
め、バックアップ用制御装置で、データ更新処理を引き
継ぐ際に、更新処理が不可逆状態にあるか否かを認識し
て、その状態に応じた処理を行うことが可能となる。
【0014】より具体的には、本発明の装置は、前記各
制御手段が、前記記録媒体との通信を行うインターフェ
ース手段と、前記データについてのパリティデータを生
成するパリティ生成手段と、各々の制御手段間で情報の
やりとりを行う制御手段間情報通信手段と、パリティ生
成禁止フラグとを具え、前記一の記録手段においてデー
タの記録処理が中断された場合に、データの記録処理が
不可逆な状態になる通知を、前記2重化したデータを格
納している他の記録手段における前記パリティ生成禁止
フラグをパリティ生成禁止状態に設定することをで行
う。
【0015】また、本発明の装置は、前記各制御手段
が、前記記録媒体との通信を行うインターフェース手段
と、前記データについてのパリティデータを生成するパ
リティ生成手段と、各々の制御手段間で情報のやりとり
を行う制御手段間情報通信手段とを具え、前記一の記録
手段においてデータの記録処理が中断された場合に、デ
ータの記録処理が不可逆な状態になる通知を、前記一の
制御手段で生成した前記記録処理を行うべきデータにつ
いてのパリティデータを前記2重化したデータを格納し
ている他の記録手段のメモリに格納することで行う。
【0016】ここで、前記データの記録処理が不可逆な
状態になるポイントは、具体的には前記記録すべきデー
タあるいは当該データについてのパリティデータを記録
媒体に書き込む時点であり、好適な実施形態において
は、この書き込みを行う際に前記2重化したデータを格
納している他の制御手段におけるパリティ生成禁止フラ
グをパリティ生成禁止状態に設定することで、あるいは
前記2重化したデータを格納している他の記録手段にお
いて前記データについてのパリティデータを格納するこ
とで前記不可逆ポイントを通知するようにしている。な
お、これらの通知は、制御手段間で情報のやりとりを行
う制御手段間情報通信手段を介して、バックアップ用の
制御手段(他の制御手段)に通知することが可能であ
る。
【0017】本発明の情報記録方法は、上位装置から受
け取ったデータを記録媒体に記録すると共に、このデー
タについてパリティデータを生成して所定の記録媒体に
記録する情報記録装置の制御方法において、各々がメモ
リを有する複数台の記録媒体制御手段のうちの一の制御
手段のメモリに前記上位装置から送られてくる未更新デ
ータを一時的に格納し、他の制御手段のメモリに当該未
更新データを2重化して格納し、前記一の制御手段にお
いて上位装置から送られてくる未更新データと、前記記
録媒体中の当該未更新データを記録するべき領域に記録
されている旧データと、当該旧データのパリティデータ
とから、前記未更新データに関する新パリティデータを
生成して、前記記録媒体の所定の領域に前記未更新デー
タと前記新パリティデータを書き込むように構成し、前
記一の制御手段において前記未更新データあるいは前記
新パリティデータを前記ディスクに書き込む際に前記2
重化したデータを格納している他の制御手段に、前記未
更新データの記録処理が不可逆な状態になるポイントを
通知することを特徴とする。
【0018】上述したとおり、データ更新処理の不可逆
ポイントは、未更新データあるいはこのデータについて
の新パリティを所定のディスクに書き込む時点である。
したがって、新パリティをディスクに書き込む際に、バ
ックアップ用制御手段にこのデータ更新処理が不可逆に
なった旨を通知することで、バックアップ用制御手段で
は書き込み処理の中断発生時期が当該ポイント通過前で
あるか通過後であるかを認識して、必要に応じたデータ
更新処理の引継処理を行うことができる。
【0019】なお、データ更新処理の不可逆ポイントの
通知は、バックアップ用制御手段のパリティデータ再生
成禁止フラグをパリティデータ再生禁止状態に設定する
こと、あるいはバックアップ用制御手段のメモリに新パ
リティデータをコピーして格納することで実現できる。
【0020】この場合、前記2重化したデータを格納し
ている他の制御手段にパリティデータの再生成禁止を通
知した後に、前記一の制御手段において記録媒体へのデ
ータの書き込みが中断された場合に、前記情報記録装置
に冗長性があるか否かを判断して、冗長性がない場合
に、前記他の制御手段に格納されている2重化されたデ
ータを所定の記録媒体に書き込むと共に、前記2重化し
たデータを格納している他の制御手段のメモリに当該デ
ータについてのパリティデータが無効である旨を記憶さ
せることが好ましい。
【0021】このように構成することによって、一貫性
を失ったデータに基づいて改めてパリティデータを生成
せいて書き込みを行うことを防ぐことができる。なお、
新パリティーデータが無効である旨の記憶は、具体的に
はこのパリティデータのECCを破壊することによって
行う。
【0022】さらに、前記2重化したデータを格納して
いる他の制御手段にパリティデータの再生成禁止を通知
した後に、前記一の制御手段において記録媒体へのデー
タの書き込みが中断された場合に、前記情報記録装置に
冗長性があるか否かを判断して、冗長性がない場合に、
前記他の制御手段に格納されている2重化されたデータ
を読み出して、当該データを記録すべき領域以外のデー
タ記録領域に記録されているデータから新しいパリティ
を生成して、これをパリティデータ書き込み領域に上書
きするとともに、前記他の制御手段のメモリのパリティ
データが無効である旨の記憶を消去することが好まし
い。
【0023】このようにすることによって、書き込みの
中断が生じた時点でディスクアレイ装置に冗長性がない
場合であっても、条件が合う場合に、一貫性を有する正
しいデータの書き込みを行うことが可能となる。
【0024】なお、データ更新処理の不可逆ポイントの
通知を、バックアップ用制御手段のメモリに新パリティ
データをコピーして格納することによって行った場合
は、書き込み処理の中断がデータ更新処理の不可逆ポイ
ント通過後に生じた場合でも、2重化した新パリティを
用いて書き込み処理を継続することができる。したがっ
て、ディスクアレイが冗長性を失っている場合でも、デ
ータを消失することがなく正しいデータを上位装置に送
り出すことが可能となる。
【0025】
【発明の実施の形態】次いで、図面を参照して本発明の
実施形態を説明する。図1は、本発明に係るディスクア
レイ装置の第1の実施形態の構成を示すブロック図であ
る。本ディスクアレイ装置は、複数のハードディスク1
00と、これらハードディスク100を制御する2台の
アレイディスク制御装置1、1’とで構成されている。
ハードディスク100は並列に使用され、RAIDを構
成している。アレイディスク制御装置1、1’はそれぞ
れインターフェース(図示せず)を介して上位装置(図
示せず)に接続されており、上位装置から送られてくる
データをハードディスク100に書き込むための制御を
行う。制御装置1、1’は同じ構成を具えており、双方
の装置間で通信可能として上位装置から送られてくるデ
ータを2重化して管理できるように構成されている。
【0026】アレイディスク装置1は、上位装置とハー
ドディスク100との間で受け渡されるデータを一時的
に格納するためのキャッシュメモリ11と、ハードディ
スク100とキャッシュメモリ11間のインターフェー
ス制御を行うハードディスクインターフェース制御部1
2と、ハードディスク100に新たにデータを格納する
際にパリティデータを生成するパリティ生成回路13
と、パリティ生成禁止フラグ14と、クロスコール制御
手段15とを具える。
【0027】パリティ生成禁止フラグ14は、上位装置
からの指令に従って未更新データをディスク100に書
き込む場合に、一方のアレイディスク制御装置が該当す
るハードディスクから旧データと旧パリティを読み出し
て新パリティを計算し、未更新データと新パリティをハ
ードディスク100に書き込む際に、他方のアレイディ
スク制御装置において以後のパリティの生成を禁止する
ためのものである。例えばアレイディスク制御装置1が
未更新データの書き込みを行う場合は、新パリティの書
き込みを行う時点においてアレイディスク制御装置1’
のパリティ生成禁止フラグ14’は禁止状態にセットさ
れることになる。
【0028】クロスコール制御手段15は、2台のアレ
イディスク制御装置1、1’間でデータの2重化のため
の通信や、パリティ生成禁止フラグ11の操作などのア
レイディスク制御装置間の情報の受け渡し制御をを行う
ためのものである。
【0029】図2は、本発明のディスクアレイ装置にお
けるデータ更新のための基本的な動作を説明するための
図である。ここでは、複数ディスクの同一アドレスのデ
ータから求められるパリティデータを冗長データとして
使用し、レベル5のRAIDを構成しているものとす
る。
【0030】上位装置から送られてきた書き込みデータ
が、アレイディスク制御装置1のキャッシュメモリ11
に格納されると、クロスコール制御手段15を介してこ
のデータを他方のアレイディスク制御装置1’のキャッ
シュメモリ11’に転送して、データの2重化を行う。
2重化のための転送が正常に完了した時点で、上位装置
に対して書き込み命令の終了報告を行い、未更新データ
のキャッシュメモリへの格納が完了する。
【0031】ついで、アレイディスク装置1では、未更
新データが書き込まれるべきディスク番号とブロックア
ドレスを算出し、当該ブロックに書き込まれている旧デ
ータを読み出して、ハードディスクインターフェース制
御部12を介してこれをパリティ生成回路13に送る。
更に、このブロックに対応するパリティデータが書き込
まれているディスク番号と、ブロックアドレスを算出し
て旧パリティを読み出して、同様にパリティ生成回路1
3に送る。この二つのデータに加えて、キャッシュメモ
リ11から未更新データをパリティ生成回路13に送
り、回路13でこれらの三つのデータの排他的論理和か
ら新パリティを生成する。(図2中の処理に対応す
る。3つのデータの順番はここでは問題にならない)
【0032】次いで、未更新データと新しく生成したパ
リティデータを、事前に算出しておいた所定のブロック
に書き込んで、複数ディスク100間でデータの一貫性
を維持するようにしている。(図2中の処理に対応す
る。2つのデータの順番はここでは問題にならない)
【0033】このようにして冗長データを作成している
ため、未更新データや新パリティデータをディスク10
0に書き込んでいる間、すなわち、図2の処理を行っ
ている期間中に、電源障害などが生じて処理が中断され
た場合に、他方のアレイディスク装置1’において2重
化された未更新データを用いて処理を継続しようとして
も、新しいパリティを生成するために必要な旧データ
や、旧パリティがすでに上書きされてしまっており、上
述の方法によって新パリティを生成することができなく
なる可能性がある。すなわち、未更新データ、あるいは
新パリティのディスクへの書き込み開始時点を境に、デ
ィスク100への更新処理が不可逆な状態になるため、
一方の制御装置1で書き込み処理が中断した後、他方の
制御装置1’でその処理を継続する際にデータの一貫性
を保つためには、この不可逆になるポイントの経過時点
を意識して書き込み処理を行う必要がある。
【0034】図3は、図1に示すディスクアレイ装置に
おけるデータの書き込み処理の動作を説明するためのフ
ローチャートである。まず、一方のアレイディスク制御
装置1が上位装置からの書き込み命令によってデータを
受信し、これをキャッシュメモリ11に未更新データ1
21として格納する。このデータを他方のアレイディス
ク装置1’のキャッシュメモリ11’にコピーして、2
重化した未更新データ121’を作成する(ステップ3
01)。
【0035】次いで、未更新データ121を書き込むべ
きディスクのアドレスと、これに対応するパリティデー
タのアドレスを算出し、それぞれの記録領域から旧デー
タと旧パリティを読み出す(ステップ302)。次い
で、パリティ生成回路13にて、このようにして読み出
した旧データ、旧パリティ、および未更新データ121
の排他的論理和を算出して新パリティデータを生成する
(ステップ303)。この時点で、クロスコール制御手
段15を介して他方のアレイディスク制御装置1’に、
ハードディスク100へのデータの書き込み開始を通知
する。具体的にはアレイディスク装置1’内のパリティ
生成禁止フラグ14’をパリティ生成禁止状態にセット
する(ステップ304)。
【0036】次いで、未更新データ121と新パリティ
を予め算出しておいた領域に書き込み(ステップ30
5)、この書き込みが完了したら、未更新データ121
を無効にしてキャッシュメモリ11内から消去する(ス
テップ306)。更に、クロスコール制御手段15を介
して、他方のアレイディスク制御装置1’にハードディ
スク100への書き込みが完了した旨を通知すると共
に、2重化したデータの消去を指示する。具体的には、
他方のアレイディスク制御装置1’のキャッシュメモリ
11’に2重化しておいた未更新データ121’を削除
するとともに、制御装置1’内のパリティ生成禁止フラ
グ14’のパリティ生成禁止状態を解除する(ステップ
307)。
【0037】アレイディスク制御装置1における書き込
み処理が正常に終了すれば、他方のアレイディスク制御
装置1’では、未更新データ121の2重化、2重化し
た未更新データ121’の消去、およびパリティ生成禁
止フラグ14のセット、リセットを行うのみで、ブロッ
クへの書き込み処理はなんら行わないが、書き込みを行
うアレイディスク制御装置1に電源障害などが生じて書
き込み処理が中断された場合には、他方のアレイディス
ク制御装置1’はこの処理の中断を検出して2重化され
ている未更新データ121’を用いて書き込み処理を引
き継ぐ。
【0038】図4は、アレイディスク制御装置1におい
てデータの書き込みが中断された場合の、他方のアレイ
ディスク制御装置1’における処理を示すフローチャー
トである。図4に示すように、アレイディスク制御装置
1における電源切断等の障害を検出すると、他方のアレ
イディスク制御装置1’においてこれを引き継ぐ処理が
開始される。まず、未更新データのバックアップである
2重化された未更新データ121’がアレイディスク制
御装置1’のキャッシュメモリ11’内に存在するかど
うかを調べる(ステップ401)。キャッシュメモリ1
1’内に未更新データのバックアップデータ121’が
存在していなければ(ステップ402、NO)、中断さ
れた書き込み処理は存在しないものと判断して処理を終
了する。一方、未更新データのバックアップデータ12
1’が存在している場合は(ステップ402、YE
S)、アレイディスク制御装置1における書き込み処理
が中断されたと判断して、その処理の引継を開始する
(ステップ402)。
【0039】ステップ402がYESである場合は、書
き込み処理が中断された時点でアレイディスク制御装置
1においてハードディスク100へのデータ書き込みが
開始されているかいないか、すなわち、不可逆ポイント
を経過前に処理が中断されたか、経過後に中断されたか
を判断する(ステップ403)。この判断は、具体的に
は、アレイディスク制御装置1’のパリティ生成禁止フ
ラグ14’の状態が禁止状態にあるか、禁止状態が解除
されているかで判断することができる。
【0040】パリティ生成禁止フラグ14’の禁止状態
が解除されている場合は(ステップ402、NO)、ア
レイディスク制御装置1でハードディスク100へのデ
ータの書き込みが開始されていないと判断され、通常の
書き込み処理と同様の処理がアレイディスク制御装置
1’で行われる。すなわち、キャッシュメモリ11’内
に格納されているバックアップ用の未更新データ12
1’を書き込むアドレスと、これに対応するパリティの
アドレスを算出して、これらのアドレスのある記録領域
から旧データと、旧パリティを読み出す(ステップ40
4)。このように読み出した旧データ、旧パリティ、お
よびバックアップ用の未更新データ121’の排他的論
理和を算出して新しいパリティを生成する(ステップ4
05)。ここで、クロスコール制御手段15’を介し
て、一方のアレイディスク制御装置1内のパリティ生成
禁止フラグ14をパリティ生成禁止状態にセットする
(ステップ406)。次いで、バックアップ用の未更新
データ121’と新しく生成したパリティを予め算出さ
れた記録領域に書き込んで(ステップ407)、ディス
ク100へのこの書き込みが終了したら、未更新データ
121’を無効としてキャッシュメモリ11’から消去
する(ステップ408)。また、クロスコール制御手段
15’を介して、一方のアレイディスク装置のキャッシ
ュメモリ11内に格納されている元の未更新データ12
1を消去すると共に、パリティ生成禁止フラグ14のパ
リティ生成禁止状態を解除する(ステップ409)。
【0041】なお、上述のステップ406およびステッ
プ409の処理は、障害により書き込み処理を中断した
アレイディスク制御装置1に対する指示であるため、必
ずしも実行する必要はないが、ここでは、通常処理と全
く同じ処理を実行して、クロスコール制御手段15’に
おいてこれらの処理を無効にするようにしている。
【0042】一方、ステップ403にてパリティ生成禁
止フラグ14’が解除されていない場合は(ステップ4
03、YES)、アレイディスク制御装置1でハードデ
ィスク100へのデータの書き込みが開始されていると
判断され、不可逆ポイントを通過した後に書き込みが中
断されているため、通常の書き込み処理とは異なる処理
が必要になる。すなわち、ディスク100に書かれてい
る旧データと旧パリティが破壊されている可能性がある
ため、これらのデータを使用して新しいパリティを生成
することができない。
【0043】この場合、まずバックアップデータである
未更新データ121’をディスクへ書き込むようにする
(ステップ410)。この書き込みによって、書き換え
を行っていないディスクも含めて、パリティ以外のデー
タが書き込み完了の状態になる。次いで、ディスクアレ
イ装置の冗長性の有無を調べ、(ステップ411)、冗
長性がある場合は(ステップ411、YES)、他のデ
ィスクのデータを使用して新しいパリティを生成して、
当該新パリティのブロックに書き込む(ステップ41
2)。一方、ディスクの故障などによってディスクアレ
イ装置に冗長性がない状態であれば(ステップ411、
NO)、他のディスクアレイを使用して新パリティを生
成することができないため、新パリティを書き込むべき
ブロックの誤り訂正符号(ECC)を破壊して当該ブロ
ックから読み出しエラーが出るようにする(ステップ4
13)。
【0044】ステップ412の処理、あるいはステップ
413の処理が終了したら、不要となったパリティ生成
禁止フラグ14’のパリティ生成禁止状態を解除し(ス
テップ414)、更にバックアップ用の未更新データ1
21’を無効にしてキャッシュメモリ11’内から消去
して(ステップ415)、引き継いだ書き込み処理を終
了する。
【0045】なお、本実施形態では、説明を簡単にする
ために、未更新データ121あるいはパリティ生成禁止
フラグ14は1つだけ存在するものとして説明したが、
複数のデータを同時に処理する場合には、その処理する
数だけパリティ生成禁止フラグ14を設けることによっ
て、同じ処理を行うことが可能である。
【0046】図5及び図6は、旧データおよび旧パリテ
ィが破壊されている場合のデータの書き込みをより詳し
く説明するための図である。上述したとおり、ステップ
411でディスクアレイ装置に冗長性があると判断され
た場合、ステップ412において、書き込むべきデータ
と一貫性を有する他のディスクに格納されているデータ
を使用することで新パリティを生成することができる。
例えば図5(a)に示すように、パリティデータの破壊
時に全ハードディスク100が使用可能であって、2つ
のデータ(DATA#1)と(DATA#2)とが有効
であり、これらのパリティが(Parity#1−2)
である場合は、2つのデータから単純に新パリティを求
めることができる。
【0047】一方、例えば、データ(DATA#2)が
書き込まれるべきハードディスクが故障しているような
場合には(ステップ411、NO)、(DATA#1)
と、パリティ(Parity#1−2)が有効であって
初めてデータ(DATA#2)の内容を復旧することが
可能である。ここで、ディスクの障害によりパリティ
(Parity#1−2)と一貫性のあるデータが書き
込めなかった場合にはそのデータのECCを破壊して
(ステップ413)、パリティ(Parity#1−
2)の読み出しがエラーになるようにして、上位装置か
らデータ(DATA#2)の読み出し命令があった場合
に、データ(DATA#2)を誤ったパリティデータ
(Parity#1−2)で復旧することを避けるよう
にする。
【0048】この状態は、上位装置からのデータ(DA
TA#2)の書き込み命令を実行することによって回復
する。すなわち、図5(b)に示すように、データ(D
ATA#1)に対する書き込み命令を実行しようとする
と、データ(DATA#1)のパリティのECCは破壊
されているので、旧パリティを読み出すことができず、
従ってデータ(DATA#1)の上書きのみを実行する
ことになる。この状態では、データ(DATA#1)の
内容は正しいものの、データ(DATA#1)とパリテ
ィ(Parity#1−2)の一貫性は維持されないこ
とになる。
【0049】一方、図5(c)に示すように、データ
(DATA#2)に対する書き込み命令を実行する場合
は、上位装置から送られてきたデータ(DATA#2)
を書き込むべきハードディスクが故障しており、書き込
みができないので、このデータと、正常に読み出すこと
のできるデータ(DATA#1)の内容とから新しくパ
リティを生成して、正常なECCとともに新パリティを
上書きすることができる。この処理によって、すでに上
書きされているデータ(DATA#1)と、パリティ
(Parity#1−2)が一貫性を維持した有効なデ
ータとなって、データ(DATA#2)の内容として復
旧される。
【0050】上記動作を、図6に示すフローチャートを
用いて説明する。まず、ディスクアレイ装置に冗長性が
あるか否かを判断し(ステップ601)、冗長性ありと
判断された場合は(ステップ601、YES)干渉する
全ディスクのデータを利用して新しいパリティを生成し
て、当該パリティのブロックに書き込みを行う(ステッ
プ602)。これらステップ601、602の動作は、
上述した図5(a)の動作に対応する。
【0051】一方、ディスクアレイ装置に冗長性なしと
判断された場合は(ステップ601、NO)、未更新デ
ータの書き込み対象となるハードディスクが故障してい
ないかどうかを調査する(ステップ603)。当該ハー
ドディスクに故障がない場合は(ステップ604、YE
S)、未更新データのみをこのハードディスクに書き込
んでパリティデータの書き込みは行わず処理を終了する
(ステップ609)。これらステップ603、604、
609の動作は、上述した図5(b)の動作に対応す
る。
【0052】一方、未更新データの書き込み対象となる
当該ハードディスクに故障があり、未更新データをこの
ディスクに書き込むことができない場合は(ステップ6
04、NO)、パリティデータと、当該故障ディスク以
外のディスクに格納されている全データを読み出して
(ステップ605)、読み出したデータと、未更新デー
タとから新しくパリティデータを生成する(ステップ6
06)。次いで、新パリティデータを書き込んで、未更
新データは破棄し処理を終了する(ステップ607)。
なお、この新パリティデータとステップ410で書き込
んだ未更新データは一貫性が維持されており、有効デー
タとして復旧される。これらステップ605、606、
607の動作は、上述した図5(c)の動作に対応す
る。尚、アレイディスク制御装置1’のパリティ生成禁
止フラグ14’は、旧パリティ、旧データ、未更新デー
タの排他的論理和からパリティデータを生成することを
禁止するものであるため、ここにいうパリティデータの
生成には影響しない。
【0053】このように構成することによって、少なく
とも誤ったデータを書き込んで上位装置に報告すること
を防止することができる。また、条件がそろう場合は、
旧データが破壊されているような場合でも、データを好
適に復旧して書き込みを行うことが可能となる。
【0054】図7は、本発明のディスクアレイ装置の第
2実施形態の構成を示すブロック図である。第2実施形
態も、複数のハードディスク100と、これらハードデ
ィスク100を制御する2台のアレイディスク制御装置
1、1’とを具え、ハードディスク100を並列に使用
してRAIDを構成している。また、制御装置1、1’
は同じ構成を具えており、上位装置から送られてくるデ
ータを2重化して管理できるように構成されている。以
下に述べる点を除いて、第2実施形態は図1に示す第1
実施形態と同様であるので、同じ構成要素については同
じ符号を付して、その説明は省略する。
【0055】図7に示すように、第2の実施形態では、
第1実施形態にあるパリティ生成禁止フラグ14が設け
られておらず、これに代えて、新パリティデータ122
をキャッシュメモリ11に格納して、クロスコール制御
手段14を介してこの新パリティデータを他方のアレイ
ディスク制御装置1’内のキャッシュメモリ11’に転
送して2重化するようにしている(新パリティデータ1
22’)。本例では、この2重化された新パリティ12
2’の有無によって、ディスクへの書き込み処理が不可
逆となるポイント以前の状態であるか、あるいは以降の
状態であるかを判断するようにしている。
【0056】上述した第1実施形態では、ディスクへの
書き込み処理が不可逆となるポイント以降に、例えば電
源障害などで書き込みが中断された場合に、新しいパリ
ティを生成するための旧データの有効性を保証すること
ができない。このためディスクアレイ装置が冗長性を失
っている状態では、新しいパリティを生成することがで
きず、後にデータの読み出しを行う際に当該データが失
われているか否かを認識できるだけである。
【0057】これに対して、第2実施形態では、2重化
した新パリティデータ122’の存在によって、中断が
生じた時点がディスクへの書き込み処理が不可逆となる
ポイント以前であるか、以降であるかを判断し、書き込
み処理が不可逆となるポイント以降の状態にある場合に
は、2重化した新パリティデータ122’を用いて書き
込み処理を継続することができる。従って、ディスクア
レイが冗長性を失っており、かつ書き込み処理が不可逆
となるポイント以降に処理が中断された場合でも、デー
タを消失することがなく、データ読み出し時にエラーを
発生させずに正しいデータを書き込むことが可能にな
る。
【0058】図8は、本発明にかかるディスクアレイ装
置の第2実施形態における書き込み処理動作を示すフロ
ーチャートである。上位装置からの書き込み命令により
データを受信して、これを一方のアレイディスク制御装
置のキャッシュメモリ11に未更新データ121として
格納すると共に、クロスコール制御手段14を介してこ
のデータを他方のアレイディスク制御装置1’のキャッ
シュメモリ11’にコピーして、未更新データ121を
2重化する(ステップ801)。次いで、未更新データ
を書き込むべきアドレスと、これに対応するパリティの
アドレスを算出し、このアドレスの記録領域から旧デー
タと旧パリティとを読み出す(ステップ802)。ここ
で、読み出した旧データ、旧パリティ、および未更新デ
ータ121から新しくパリティを生成して、新パリティ
データ122としてキャッシュメモリ11に格納する
(ステップ803)。更に、この新パリティデータをク
ロスコール制御手段14を介して他方のアレイディスク
制御装置1’内のキャッシュメモリ11’に転送して新
パリティを2重化する(ステップ804)。ついで、未
更新データ121および新パリティ122を予め算出さ
れている書き込み領域に書き込んで(ステップ80
5)、この書き込みが完了したら、未更新データ121
と新パリティ122を無効にして、キャッシュメモリ1
1から消去する(ステップ806)。更に、クロスコー
ル制御手段14を介して他方のアレイディスク装置’内
のキャッシュメモリ11’から2重化した未更新データ
121’と、新パリティ122’とを削除する(ステッ
プ807)。
【0059】これらの一連の書き込み処理が正常に終了
した場合は、他方のアレイディスク制御装置1’は、未
更新データ121および新パリティ122の2重化と、
消去の操作を行うだけで、ブロックへの書き込み処理は
なんら行わないが、書き込み処理実行中に、アレイディ
スク制御装置1に例えば電源障害などが発生して書き込
み処理が中断された場合は、この処理の中断を検出し
て、2重化されている未更新データ121’と新パリテ
ィ122’を用いて書き込み処理を引き継ぐことにな
る。
【0060】図9は、アレイディスク制御装置1が書き
込み処理を中断した場合に、他方のアレイディスク制御
装置1’でこれを引き継ぐ処理に関するフローチャート
である。書き込み処理を実行中のアレイディスク制御装
置1に電源障害などの異常が検出されると、他方のアレ
イディスク制御装置1’では、まず、未更新データ12
1のバックアップデータ、すなわち2重化した未更新デ
ータ121’が当該制御装置1’のキャッシュメモリ1
1’内に存在するか否かを調べる(ステップ901)。
キャッシュメモリ11’内に未更新データのバックアッ
プデータ121’が存在していなければ(ステップ90
2、NO)、中断された書き込み処理は存在しないもの
と判断して処理を終了する。
【0061】一方、キャッシュメモリ11’内に未更新
データのバックアップデータ121’が存在している場
合は(ステップ902、YES)、書き込み処理が中断
されたものと判断して、その処理を引き継ぐ(ステップ
902)。まず、書き込み処理の中断が不可逆ポイント
以前になされたか、不可逆ポイントを経過してからなさ
れたかを、アレイディスク制御装置1’のキャッシュメ
モリ11’内に2重化された新パリティデータ122’
が存在するかどうかによって判断する(ステップ90
3)。
【0062】キャッシュメモリ11’内に新パリティデ
ータ122’が格納されていない場合には、アレイディ
スク制御装置1における書き込み処理が不可逆ポイント
以前に中断されていることになるため、2重化された未
更新データ121’を用いて通常の書き込み処理を行
う。
【0063】すなわち、バックアップ用未更新データ1
21’を書き込むべきアドレスと、これに対応するパリ
ティのアドレスを算出して、それぞれの記録領域から旧
データと、旧パリティを読み出す(ステップ904)。
ついで、読み出した旧データ、旧パリティおよびバック
アップ未更新データ121’の排他的論理和を算出して
新パリティ122’を生成してキャッシュメモリ11’
に格納する(ステップ905)。ついで、クロスコール
制御手段15’を介して、一方のアレイディスク制御装
置1内のキャッシュメモリ11に新パリティ122を転
送して、2重化する(ステップ906)。バックアップ
データである未更新データ121’と新たに生成したパ
リティ122’を予め算出されている領域に書き込ん
で、(ステップ907)、この書き込みが終了したら、
未更新データ121’と新パリティ122’を無効にし
てキャッシュメモリ11’から削除する(ステップ90
8)と共に、クロスコール手段15を介して元の未更新
データ121をアレイディスク制御装置1内のキャッシ
ュメモリ11から削除する(ステップ909)。
【0064】なお、ステップ906と、ステップ909
の動作は、障害が生じているアレイディスク制御装置1
に対する指示であるため、実行しなくとも良いが、ここ
では、通常処理と同じ処理を実行して、クロスコール制
御手段15’において無効にするものとする。
【0065】一方、アレイディスク装置1’のキャッシ
ュメモリ11’内に新パリティ122’が格納されてい
る場合には(ステップ903、YES)、アレイディス
ク制御装置1における書き込み処理が、不可逆ポイント
経過後に中断されていることになるため、通常の書き込
み処理と異なる処理を行う必要がある。
【0066】ここでは、ディスク100に書かれている
旧データと旧パリティとは破壊されている可能性がある
が、これら旧データと旧パリティとを用いて生成された
新パリティ122のバックアップ用パリティデータ12
2’がキャッシュメモリ11’に保存されているため、
あらためてパリティを生成する必要がない。したがっ
て、未更新データ121のバックアップデータ121’
を所定のディスクへ書き込んで(ステップ910)、更
に2重化された新パリティ122’を所定のディスクへ
書き込む(ステップ911)。これらバックアップ未更
新データ121’とバックアップ用新パリティ122’
の書き込みが完了したら、バックアップ用未更新データ
121’とバックアップ新パリティ122’を無効にし
てキャッシュメモリ11’から消去して書き込み処理を
終える(ステップ912)。
【0067】上述の実施形態では、説明を容易にするた
めに未更新データ121や新パリティ122が1つだけ
存在する場合を説明したが、同時に複数のブロックを処
理する場合には、処理する数だけ新パリティ122を2
重化することによって、同じ効果を得ることができる。
【0068】このように、第2実施形態においては、1
のアレイディスク制御装置で書き込み処理が中断された
場合、生成された新パリティを2重化することによっ
て、書き込み処理の中断が処理の不可逆ポイント以前に
生じたか、以降に生じたかを判断するようにしている。
従って、不可逆ポイント経過後に処理が中断された場合
でも、2重化してある新パリティ122’を用いること
ができ、あらためて新パリティを生成する必要がないの
で、ディスクアレイが冗長性を失っている状態で書き込
みが中断してもデータを消失することがない。
【0069】
【発明の効果】上記に詳述したとおり、本発明によれば
2台のアレイディスク制御装置間で、書き込み処理が不
可逆となるポイントを通知することによって、電源障害
などによってディスクへの書き込み処理が中断されたよ
うな場合でも、中断が不可逆ポイント以前に発生した
か、以降に発生したかを明確に知ることが可能となり、
中断の発生時点に応じて書き込み処理を適切に引き継ぐ
ことができる。したがって、誤ったパリティデータを生
成してデータを書き込むといった問題が発生しなくな
り、どのタイミングで書き込みが中断されても、データ
化けを生じさせることなくデータを書き込むことができ
る信頼性の高いディスクアレイ処理装置を提供できる。
【0070】さらに、ディスクアレイ装置に冗長性のあ
る状態で中断が発生した場合には、データを消失するこ
となく修復することが可能であり、また、冗長性のない
状態で中断が発生した場合でも、少なくとも、誤ったデ
ータを上位装置に送るといった問題は発生しない。
【図面の簡単な説明】
【図1】 本発明のディスクアレイ制御装置の第1の実
施形態の構成を示すブロック図である。
【図2】 本発明のディスクアレイ制御装置におけるデ
ータ更新の基本動作を示すブロック図である。
【図3】 図1に示すディスクアレイ制御装置における
データ書き込み処理を示すフローチャートである。
【図4】 図1に示すディスクアレイ制御装置におい
て、データ書き込み処理が中断した場合のデータ復旧処
理を示すフローチャートである。
【図5】 図1に示すディスクアレイ制御装置におい
て、データ復旧処理中にECCを破壊したデータについ
ての復旧処理を説明するためのブロック図である。
【図6】 図1に示すディスクアレイ制御装置におい
て、データ復旧処理中にECCを破壊したデータについ
ての復旧処理を示すフローチャートである。
【図7】 本発明のディスクアレイ制御装置の第2の実
施形態の構成を示すブロック図である。
【図8】 図7に示すディスクアレイ制御装置における
データ書き込み処理を示すフローチャートである。
【図9】 図7に示すディスクアレイ制御装置におい
て、データ書き込み処理が中断した場合のデータ復旧処
理を示すフローチャートである。
【図10】 レベル5のRAID構成を有するディスク
上のデータの配置例を示す図である。
【符号の説明】
1、1’ アレイディスク制御装置 11、11’ キャッシュメモリ 12、12’ ハードディスクインターフェース制御
部 13、13’ パリティ生成回路 14、14’ パリティ生成禁止フラグ 15、15’ クロスコール制御手段 100 ハードディスク 121、121’ 未更新データ 122、122’ 新パリティデータ
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G06F 12/08 G06F 12/08 J 320 320 13/00 301 13/00 301P

Claims (8)

    【特許請求の範囲】
  1. 【請求項1】 上位装置から受け取ったデータを情報記
    録媒体に記録する制御手段を複数台具え、各々の制御手
    段がメモリを有し、前記データを一の制御手段のメモリ
    に一時的に格納すると共に、他の制御手段のメモリに2
    重化して格納しておき、前記一の制御手段で行われるデ
    ータの記録処理が中断した場合に、前記他の制御手段に
    おいて前記2重化したデータを用いてその記録処理を継
    続するように構成した情報記録装置において、前記他の
    制御装置によって前記2重化したデータを用いて当該デ
    ータの更新処理を継続するように構成した情報記録装置
    において、前記一の制御装置におけるデータの更新処理
    が不可逆な状態になるポイントを当該制御装置から、前
    記2重化したデータを有する制御装置へ通知するように
    構成したことを特徴とする情報記録装置。
  2. 【請求項2】 請求項1に記載の情報記録装置におい
    て、前記各制御手段が、前記記録媒体との通信を行うイ
    ンターフェース手段と、前記データについてのパリティ
    データを生成するパリティ生成手段と、各々の制御手段
    間で情報のやりとりを行う制御手段間情報通信手段と、
    パリティ生成禁止フラグとを具え、前記一の記録手段に
    おいてデータの記録処理が中断された場合に、データの
    記録処理が不可逆な状態になる通知を、前記2重化した
    データを格納している他の記録手段における前記パリテ
    ィ生成禁止フラグをパリティ生成禁止状態に設定するこ
    とで行うことを特徴とする情報記録装置。
  3. 【請求項3】 請求項1に記載の情報記録装置におい
    て、前記各制御手段が、前記記録媒体との通信を行うイ
    ンターフェース手段と、前記データについてのパリティ
    データを生成するパリティ生成手段と、各々の制御手段
    間で情報のやりとりを行う制御手段間情報通信手段とを
    具え、前記一の記録手段においてデータの記録処理が中
    断された場合に、データの記録処理が不可逆な状態にな
    る通知を、前記一の制御手段で生成した前記記録処理を
    行うべきデータについてのパリティデータを前記2重化
    したデータを格納している他の記録手段のメモリに格納
    することで行うことを特徴とする情報記録装置。
  4. 【請求項4】 請求項1に記載の情報記録装置を用いた
    情報記録方法において、上位装置から受け取ったデータ
    を記録媒体に記録すると共に、このデータについてパリ
    ティデータを生成して所定の記録媒体に記録する情報記
    録装置の制御方法において、各々がメモリを有する複数
    台の記録媒体制御手段のうちの一の制御手段のメモリに
    前記上位装置から送られてくる未更新データを一時的に
    格納し、他の制御手段のメモリに当該未更新データを2
    重化して格納し、前記一の制御手段において上位装置か
    ら送られてくる未更新データと、前記記録媒体中の当該
    未更新データを記録するべき領域に記録されている旧デ
    ータと、当該旧データのパリティデータとから、前記未
    更新データに関する新パリティデータを生成して、前記
    記録媒体の所定の領域に前記未更新データと前記新パリ
    ティデータを書き込むように構成し、前記一の制御手段
    において前記未更新データあるいは前記新パリティデー
    タを前記ディスクに書き込む際に前記2重化したデータ
    を格納している他の制御手段に、前記未更新データの記
    録処理が不可逆な状態になるポイントを通知することを
    特徴とする情報記録方法。
  5. 【請求項5】 請求項2に記載の情報記録装置を用いた
    情報記録方法において、前記一の制御手段において上位
    装置から送られてくる未更新データと、前記記録媒体中
    の当該未更新データを記録するべき領域に記録されてい
    る旧データと、当該旧データのパリティデータとから、
    前記未更新データに関する新パリティデータを生成し
    て、前記記録媒体の所定の領域に前記未更新データと前
    記新パリティデータを書き込むように構成し、前記一の
    制御手段において前記未更新データあるいは前記新パリ
    ティデータを前記ディスクに書き込む際に前記2重化し
    たデータを格納している他の制御手段の前記パリティ生
    成禁止フラグをパリティ生成禁止状態に設定することを
    特徴とする情報記録方法。
  6. 【請求項6】 請求項5に記載の情報記録方法におい
    て、前記2重化したデータを格納している他の制御手段
    にパリティデータの再生成禁止を通知した後に、前記一
    の制御手段において記録媒体へのデータの書き込みが中
    断された場合に、前記情報記録装置に冗長性があるか否
    かを判断して、冗長性がない場合に、前記他の制御手段
    に格納されている2重化されたデータを所定の記録媒体
    に書き込むと共に、前記2重化したデータを格納してい
    る他の制御手段のメモリに当該データについてのパリテ
    ィデータが無効である旨を記憶させることを特徴とする
    情報記録装置の制御方法。
  7. 【請求項7】 請求項6に記載の情報記録方法におい
    て、前記2重化したデータを格納している他の制御手段
    にパリティデータの再生成禁止を通知した後に、前記一
    の制御手段において記録媒体へのデータの書き込みが中
    断された場合に、前記情報記録装置に冗長性があるか否
    かを判断して、冗長性がない場合に、前記他の制御手段
    に格納されている2重化されたデータを読み出して、当
    該データを記録すべき領域以外のデータ記録領域に記録
    されているデータから新しいパリティを生成して、これ
    をパリティデータ書き込み領域に上書きするとともに、
    前記他の制御手段のメモリのパリティデータが無効であ
    る旨の記憶を消去することを特徴とする情報記録装置の
    制御方法。
  8. 【請求項8】 請求項3に記載の情報記録装置を用いた
    情報記録方法において、前記一の制御手段において上位
    装置から送られてくる未更新データと、前記記録媒体中
    の当該未更新データを記録するべき領域に記録されてい
    る旧データと、当該旧データのパリティデータとから、
    前記未更新データに関する新パリティデータを生成し
    て、前記記録媒体の所定の領域に前記未更新データと前
    記新パリティデータを書き込むように構成し、前記一の
    制御手段において前記未更新データあるいは前記新パリ
    ティデータを前記ディスクに書き込む際に前記2重化し
    たデータを格納している他の制御手段に、前記新パリテ
    ィデータをコピーして格納することを特徴とする情報記
    録装置の制御方法。
JP37011699A 1999-12-27 1999-12-27 情報記録装置およびその制御方法 Expired - Fee Related JP3458804B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP37011699A JP3458804B2 (ja) 1999-12-27 1999-12-27 情報記録装置およびその制御方法
US09/745,732 US6606683B2 (en) 1999-12-27 2000-12-26 Information recording apparatus and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP37011699A JP3458804B2 (ja) 1999-12-27 1999-12-27 情報記録装置およびその制御方法

Publications (2)

Publication Number Publication Date
JP2001184266A true JP2001184266A (ja) 2001-07-06
JP3458804B2 JP3458804B2 (ja) 2003-10-20

Family

ID=18496115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP37011699A Expired - Fee Related JP3458804B2 (ja) 1999-12-27 1999-12-27 情報記録装置およびその制御方法

Country Status (2)

Country Link
US (1) US6606683B2 (ja)
JP (1) JP3458804B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008245018A (ja) * 2007-03-28 2008-10-09 Seiko Epson Corp 画像表示装置、印刷装置および画像キャッシュ方法
JP2012018624A (ja) * 2010-07-09 2012-01-26 Nec Corp データ記録再生装置、データ記録方法、及び、データ記録プログラム
JP2012516477A (ja) * 2009-05-27 2012-07-19 株式会社日立製作所 ストレージ装置、及びその制御方法、並びにプログラム

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6792505B2 (en) * 2001-04-16 2004-09-14 International Business Machines Corporation System apparatus and method for storage device controller-based message passing having effective data channel bandwidth and controller cache memory increase
US6766491B2 (en) * 2001-05-09 2004-07-20 Dot Hill Systems Corp. Parity mirroring between controllers in an active-active controller pair
US6874100B2 (en) * 2001-07-12 2005-03-29 Digi-Data Corporation Raid system with multiple controllers and proof against any single point of failure
US7093043B2 (en) * 2001-12-27 2006-08-15 Hewlett-Packard Development Company, L.P. Data array having redundancy messaging between array controllers over the host bus
US7111084B2 (en) * 2001-12-28 2006-09-19 Hewlett-Packard Development Company, L.P. Data storage network with host transparent failover controlled by host bus adapter
JP2004005066A (ja) * 2002-05-30 2004-01-08 Internatl Business Mach Corp <Ibm> 複数の記録装置に記録されたデータのバックアップ技術
US6959413B2 (en) * 2002-06-18 2005-10-25 Lsi Logic Corporation Method of handling unreadable blocks during rebuilding of a RAID device
US7028154B2 (en) * 2002-06-18 2006-04-11 Hewlett-Packard Development Company, L.P. Procedure to reduce copy time for data backup from short-term to long-term memory
US6944791B2 (en) * 2002-07-18 2005-09-13 Lsi Logic Corporation Method of handling unreadable blocks during write of a RAID device
JP4319017B2 (ja) * 2003-12-02 2009-08-26 株式会社日立製作所 ストレージシステムの制御方法、ストレージシステム、及び記憶装置
US7188303B2 (en) * 2003-12-29 2007-03-06 Intel Corporation Method, system, and program for generating parity data
CN100373318C (zh) * 2004-12-30 2008-03-05 英业达股份有限公司 资料存储单元失效状况响应处理方法及系统
JP4419884B2 (ja) * 2005-03-22 2010-02-24 日本電気株式会社 データ複製装置、方法及びプログラム並びに記憶システム
US8667379B2 (en) * 2006-12-20 2014-03-04 International Business Machines Corporation Apparatus and method to generate, store, and read, a plurality of error correction coded data sets
KR101431296B1 (ko) * 2007-01-11 2014-08-20 레드 밴드 리미티드 저장 장치에 저장된 컨텐츠의 인-플레이스 업데이트 방법 및 시스템
US20100153740A1 (en) * 2008-12-17 2010-06-17 David Dodgson Data recovery using error strip identifiers
JP5971509B2 (ja) * 2011-08-30 2016-08-17 ソニー株式会社 情報処理装置および方法、並びに記録媒体
US9330007B2 (en) 2012-11-30 2016-05-03 Dell Products, Lp Systems and methods for dynamic optimization of flash cache in storage devices
WO2014118822A1 (en) * 2013-01-31 2014-08-07 Hitachi, Ltd. Storage system and cache control method
KR20180051703A (ko) * 2016-11-07 2018-05-17 삼성전자주식회사 Raid 방식으로 데이터를 저장하는 스토리지 장치
CN110764697B (zh) * 2019-09-29 2023-08-29 望海康信(北京)科技股份公司 一种数据管理方法及装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5455934A (en) * 1993-03-23 1995-10-03 Eclipse Technologies, Inc. Fault tolerant hard disk array controller
DE69523124T2 (de) * 1994-12-15 2002-05-29 Hewlett Packard Co Fehlererkennungssystem für einen gespiegelten Speicher in einer duplizierten Steuerung eines Plattenspeicherungssystems
US6073218A (en) * 1996-12-23 2000-06-06 Lsi Logic Corp. Methods and apparatus for coordinating shared multiple raid controller access to common storage devices
US6085333A (en) * 1997-12-19 2000-07-04 Lsi Logic Corporation Method and apparatus for synchronization of code in redundant controllers in a swappable environment
US6230240B1 (en) * 1998-06-23 2001-05-08 Hewlett-Packard Company Storage management system and auto-RAID transaction manager for coherent memory map across hot plug interface

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008245018A (ja) * 2007-03-28 2008-10-09 Seiko Epson Corp 画像表示装置、印刷装置および画像キャッシュ方法
JP2012516477A (ja) * 2009-05-27 2012-07-19 株式会社日立製作所 ストレージ装置、及びその制御方法、並びにプログラム
JP2012018624A (ja) * 2010-07-09 2012-01-26 Nec Corp データ記録再生装置、データ記録方法、及び、データ記録プログラム

Also Published As

Publication number Publication date
JP3458804B2 (ja) 2003-10-20
US20010008008A1 (en) 2001-07-12
US6606683B2 (en) 2003-08-12

Similar Documents

Publication Publication Date Title
JP3458804B2 (ja) 情報記録装置およびその制御方法
JP5768587B2 (ja) ストレージシステム、ストレージ制御装置およびストレージ制御方法
US6523087B2 (en) Utilizing parity caching and parity logging while closing the RAID5 write hole
US6766491B2 (en) Parity mirroring between controllers in an active-active controller pair
JP3129732B2 (ja) コピーバックキャッシュを有する記憶装置アレイ
JP3316500B2 (ja) 移動されたデータの完全性を維持しながらraidセットにおけるドライブ数の拡張
JP2603757B2 (ja) アレ−ディスク装置の制御方法
US7464322B2 (en) System and method for detecting write errors in a storage device
JPH08263227A (ja) ディスクアレイにおけるパリティデータの無矛盾性保持方法
JPH0612192A (ja) 高可用度ディスク配列に関する改善
JP2010015197A (ja) ストレージ制御装置、データ復元装置およびストレージシステム
JP2008204041A (ja) ストレージ装置及びデータ配置制御方法
JP2001344076A (ja) ディスクアレイ装置
US7577804B2 (en) Detecting data integrity
JP2004213470A (ja) ディスクアレイ装置及びディスクアレイ装置におけるデータ書き込み方法
JP2010026812A (ja) 磁気ディスク装置
JP2001142650A (ja) アレイディスク制御方法及び装置
JP2002373059A (ja) ディスクアレイのエラー回復方法、ディスクアレイ制御装置及びディスクアレイ装置
JPH09218754A (ja) データ記憶システム
JP2002169660A (ja) データ記憶アレイ装置、その制御方法、プログラム記録媒体及びプログラム
US20050081088A1 (en) Array controller for disk array, and method for rebuilding disk array
JP5598124B2 (ja) データ記録再生装置、データ記録方法、及び、データ記録プログラム
JPS6326407B2 (ja)
JP2005004733A (ja) ストレージ・システムにおいて書込みエラーを検出するための配置構成および方法
JP3798773B2 (ja) ディスク制御装置及び冗長化論理ディスクドライブの一貫性回復方法

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
R150 Certificate of patent or registration of utility model

Ref document number: 3458804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20070808

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20080808

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20080808

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090808

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090808

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100808

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110808

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120808

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20130808

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees