JPH10105346A - ディスク記憶システム - Google Patents
ディスク記憶システムInfo
- Publication number
- JPH10105346A JPH10105346A JP8260801A JP26080196A JPH10105346A JP H10105346 A JPH10105346 A JP H10105346A JP 8260801 A JP8260801 A JP 8260801A JP 26080196 A JP26080196 A JP 26080196A JP H10105346 A JPH10105346 A JP H10105346A
- Authority
- JP
- Japan
- Prior art keywords
- parity
- disk
- storage
- mapping memory
- data
- 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.)
- Pending
Links
Abstract
(57)【要約】
【課題】本発明の目的は、パリティ配置を動的に変更す
るパリティディスク方式のディスク記憶システムにおい
て、マッピングテーブルに障害が発生した際に、オンラ
インでパリティを復旧し、通常の動作を継続できるディ
スク記憶システムを提供することにある。 【解決手段】記憶装置2は、データ及び誤り訂正データ
を格納する複数のディスク装置21によりディスクアレ
イを構成している。記憶制御装置1は、記憶装置1とホ
スト3との間のデータ転送を制御するとともに、パリテ
ィの記憶装置2上における配置情報を記憶するパリティ
マッピングメモリ18を有している。記憶制御装置1
は、再生成処理において、記憶装置2内のデータからパ
リティを計算し直して記憶装置2に書き込み、記憶装置
2に書き込んだパリティの配置に従ってパリティマッピ
ングメモリ18内の配置情報を書き直す処理を行う。
るパリティディスク方式のディスク記憶システムにおい
て、マッピングテーブルに障害が発生した際に、オンラ
インでパリティを復旧し、通常の動作を継続できるディ
スク記憶システムを提供することにある。 【解決手段】記憶装置2は、データ及び誤り訂正データ
を格納する複数のディスク装置21によりディスクアレ
イを構成している。記憶制御装置1は、記憶装置1とホ
スト3との間のデータ転送を制御するとともに、パリテ
ィの記憶装置2上における配置情報を記憶するパリティ
マッピングメモリ18を有している。記憶制御装置1
は、再生成処理において、記憶装置2内のデータからパ
リティを計算し直して記憶装置2に書き込み、記憶装置
2に書き込んだパリティの配置に従ってパリティマッピ
ングメモリ18内の配置情報を書き直す処理を行う。
Description
【0001】
【発明の属する技術分野】本発明は、ディスク記憶シス
テムに係り、特に、パリティディスクを用いるディスク
アレイシステムに使用するに好適なディスク記憶システ
ムに関する。
テムに係り、特に、パリティディスクを用いるディスク
アレイシステムに使用するに好適なディスク記憶システ
ムに関する。
【0002】
【従来の技術】ディスクアレイシステムにおいては、デ
ィスク装置の性能を向上させるために、ライトデータを
複数のディスクに並列に書き込むようにしている。ディ
スクアレイシステムについては、例えば、デビット・A
・パターソン,「低価格ディスクの冗長アレイ(RAI
D) の一事例(A Case for Redund
ant Arrays ofInexpensive
Disks(RAID))」,1988.6.1〜3,
ACM SIGMOD(シカゴ)に記載されている。こ
のディスクアレイ装置は、RAID(Redundan
t Arraysof Inexpensive Di
sks)と略称され、ディスクアレイ装置の信頼性向上
のため、ディスク故障時におけるデータの冗長性を実現
するようにしている。
ィスク装置の性能を向上させるために、ライトデータを
複数のディスクに並列に書き込むようにしている。ディ
スクアレイシステムについては、例えば、デビット・A
・パターソン,「低価格ディスクの冗長アレイ(RAI
D) の一事例(A Case for Redund
ant Arrays ofInexpensive
Disks(RAID))」,1988.6.1〜3,
ACM SIGMOD(シカゴ)に記載されている。こ
のディスクアレイ装置は、RAID(Redundan
t Arraysof Inexpensive Di
sks)と略称され、ディスクアレイ装置の信頼性向上
のため、ディスク故障時におけるデータの冗長性を実現
するようにしている。
【0003】RAIDシステムは、データ回復を可能に
する方法として、”パリティディスク”を採用してい
る。パリティディスクシステムは、ライトするデータを
ビット,バイト,若しくはブロック単位にn分割し、こ
の分割した複数のデータをそれぞれ別のディスクに書き
込む。そして、分割した複数のデータの排他的論理和を
計算することによってパリティを作成し、データとは別
のディスクに書き込む。ライトデータをn個に分割した
場合、それらのデータをd1,d2,…,dnとする
と、この分割したデータからパリティpを生成するに
は、以下の式に従って行い、パリティpの作成後に、デ
ータd1,d2,…,dnとパリティpは、それぞれ別
のディスクに書き込まれる。 p=d1(+)d2(+)…(+)dn データd1,d2,…,dnとパリティpのデータの集
合をパリティグループといい、パリティpは、常に上式
に従った値になっていなければならない。そのため、例
えば既に書き込みの行われた領域d1のみに、別のデー
タDが上書きされた場合でも、パリティpについて新規
パリティPを算出して、別のデータDとともに新規パリ
ティPもディスクに書き込む必要性が出てくる。その場
合は、以下の式によりパリティを算出して、別のデータ
Dと新規パリティPをディスクに書き込む操作をする。 P=D(+)d1(+)p この時の、d1上の内容を「旧データ」、p上の内容を
「旧パリティ」、新規に書き込むデータDを「新デー
タ」、新規に書き込むパリティPを「新パリティ」と呼
ぶ。
する方法として、”パリティディスク”を採用してい
る。パリティディスクシステムは、ライトするデータを
ビット,バイト,若しくはブロック単位にn分割し、こ
の分割した複数のデータをそれぞれ別のディスクに書き
込む。そして、分割した複数のデータの排他的論理和を
計算することによってパリティを作成し、データとは別
のディスクに書き込む。ライトデータをn個に分割した
場合、それらのデータをd1,d2,…,dnとする
と、この分割したデータからパリティpを生成するに
は、以下の式に従って行い、パリティpの作成後に、デ
ータd1,d2,…,dnとパリティpは、それぞれ別
のディスクに書き込まれる。 p=d1(+)d2(+)…(+)dn データd1,d2,…,dnとパリティpのデータの集
合をパリティグループといい、パリティpは、常に上式
に従った値になっていなければならない。そのため、例
えば既に書き込みの行われた領域d1のみに、別のデー
タDが上書きされた場合でも、パリティpについて新規
パリティPを算出して、別のデータDとともに新規パリ
ティPもディスクに書き込む必要性が出てくる。その場
合は、以下の式によりパリティを算出して、別のデータ
Dと新規パリティPをディスクに書き込む操作をする。 P=D(+)d1(+)p この時の、d1上の内容を「旧データ」、p上の内容を
「旧パリティ」、新規に書き込むデータDを「新デー
タ」、新規に書き込むパリティPを「新パリティ」と呼
ぶ。
【0004】パリティディスクシステムでは、1つのブ
ロックのみを上書きする場合では、旧データと旧パリテ
ィを読み出してパリティを計算し、新データと新パリテ
ィを書き込むという合計4回のディスクアクセスが発生
するため、ディスクアクセス時間が増加し、性能が上が
らないという問題があった。
ロックのみを上書きする場合では、旧データと旧パリテ
ィを読み出してパリティを計算し、新データと新パリテ
ィを書き込むという合計4回のディスクアクセスが発生
するため、ディスクアクセス時間が増加し、性能が上が
らないという問題があった。
【0005】そこで、ディスクアクセス時間を短縮する
ための技術として、ディスク上のパリティの配置を、本
来の位置から動的に変更する方式が知られている。この
方式は、例えば、「Journal of Paral
lel and Distributed Compu
ting 17, pp.129−139, 199
3」に、メノンらによって「Floating Par
ity and Data Disk Arrays」
として記載されている。
ための技術として、ディスク上のパリティの配置を、本
来の位置から動的に変更する方式が知られている。この
方式は、例えば、「Journal of Paral
lel and Distributed Compu
ting 17, pp.129−139, 199
3」に、メノンらによって「Floating Par
ity and Data Disk Arrays」
として記載されている。
【0006】このメノンによる方式では、パリティを書
き込むトラック上の領域内にいくらかの空き領域を用意
しておく。そして、旧データと旧パリティの読み出しが
終了した直後に、旧データ,旧パリティ,新データとの
排他的論理和を計算し、新パリティは、今まで旧パリテ
ィのおかれていた領域ではなく、現在のディスクのヘッ
ド位置にもっとも近接した空き領域に書き込むようにす
る。この方式では、パリティをライトする毎にそのパリ
ティの配置が変更されるため、各パリティについて、現
在どの位置に配置されているかを記すテーブル(以下、
「マッピングテーブル」と称する)を装置内に保有し
て、新パリティの読み書きのたびにこれを参照、変更す
る。
き込むトラック上の領域内にいくらかの空き領域を用意
しておく。そして、旧データと旧パリティの読み出しが
終了した直後に、旧データ,旧パリティ,新データとの
排他的論理和を計算し、新パリティは、今まで旧パリテ
ィのおかれていた領域ではなく、現在のディスクのヘッ
ド位置にもっとも近接した空き領域に書き込むようにす
る。この方式では、パリティをライトする毎にそのパリ
ティの配置が変更されるため、各パリティについて、現
在どの位置に配置されているかを記すテーブル(以下、
「マッピングテーブル」と称する)を装置内に保有し
て、新パリティの読み書きのたびにこれを参照、変更す
る。
【0007】これにより、従来であれば、旧パリティの
読み出しと新パリティの書き込みの2回のディスクアク
セスが必要であったが、パリティの計算を旧パリティの
読み出し直後のディスク回転中に済ませて書き込むこと
でディスクアクセスを1回にすることができ、かつ、空
き領域に書き込むことを許可することによりディスクの
回転待ち時間を削減でき、ほぼ1回のディスクアクセス
と等価な時間で新パリティのライトを完了できる。
読み出しと新パリティの書き込みの2回のディスクアク
セスが必要であったが、パリティの計算を旧パリティの
読み出し直後のディスク回転中に済ませて書き込むこと
でディスクアクセスを1回にすることができ、かつ、空
き領域に書き込むことを許可することによりディスクの
回転待ち時間を削減でき、ほぼ1回のディスクアクセス
と等価な時間で新パリティのライトを完了できる。
【0008】
【発明が解決しようとする課題】しかしながら、上記の
従来の方式では、データやパリティのディスクドライブ
上における配置が従来の配置とは異なり、常に変化する
ため、各データ、パリティがディスクドライブ上のどこ
に位置しているかを記録するマッピングテーブルが必要
で、そのマッピングテーブルの果たす役割は重要であ
る。例えば、マッピングテーブルが停電障害などの要因
によって内容が揮発して読めなくなった場合、データ・
パリティの配置が変更されたディスクについて、データ
・パリティの内容が読めなくなる問題がある。すなわ
ち、マッピングテーブルが読めなくなることは、ディス
クドライブが壊れることと等価である。
従来の方式では、データやパリティのディスクドライブ
上における配置が従来の配置とは異なり、常に変化する
ため、各データ、パリティがディスクドライブ上のどこ
に位置しているかを記録するマッピングテーブルが必要
で、そのマッピングテーブルの果たす役割は重要であ
る。例えば、マッピングテーブルが停電障害などの要因
によって内容が揮発して読めなくなった場合、データ・
パリティの配置が変更されたディスクについて、データ
・パリティの内容が読めなくなる問題がある。すなわ
ち、マッピングテーブルが読めなくなることは、ディス
クドライブが壊れることと等価である。
【0009】本発明の目的は、パリティ配置を動的に変
更するパリティディスク方式のディスク記憶システムに
おいて、マッピングテーブルに障害が発生した際に、オ
ンラインでパリティを復旧し、通常の動作を継続できる
ディスク記憶システムを提供することにある。
更するパリティディスク方式のディスク記憶システムに
おいて、マッピングテーブルに障害が発生した際に、オ
ンラインでパリティを復旧し、通常の動作を継続できる
ディスク記憶システムを提供することにある。
【0010】
【課題を解決するための手段】上記目的を達成するため
に、本発明は、データ及び誤り訂正データを格納する複
数のディスク装置によりディスクアレイを構成する記憶
装置と、この記憶装置とホスト処理装置との間のデータ
転送を制御するとともに、誤り訂正データの上記記憶装
置上における配置情報を記憶するパリティマッピングメ
モリを有する記憶制御装置とから構成されるディスク記
憶システムにおいて、上記記憶制御装置は、上記記憶装
置内のデータから誤り訂正データを計算し直して上記記
憶装置に書き込み、上記記憶装置に書き込んだ誤り訂正
データの配置に従って上記パリティマッピングメモリ内
の上記配置情報を書き直す再生成処理を行うようにした
ものであり、かかる構成により、オンラインでパリティ
を復旧し、通常の動作を継続し得るものとなる。
に、本発明は、データ及び誤り訂正データを格納する複
数のディスク装置によりディスクアレイを構成する記憶
装置と、この記憶装置とホスト処理装置との間のデータ
転送を制御するとともに、誤り訂正データの上記記憶装
置上における配置情報を記憶するパリティマッピングメ
モリを有する記憶制御装置とから構成されるディスク記
憶システムにおいて、上記記憶制御装置は、上記記憶装
置内のデータから誤り訂正データを計算し直して上記記
憶装置に書き込み、上記記憶装置に書き込んだ誤り訂正
データの配置に従って上記パリティマッピングメモリ内
の上記配置情報を書き直す再生成処理を行うようにした
ものであり、かかる構成により、オンラインでパリティ
を復旧し、通常の動作を継続し得るものとなる。
【0011】上記ディスク記憶システムにおいて、好ま
しくは、上記パリティマッピングメモリは、上記記憶装
置内の誤り訂正データを格納する複数の領域ごとに誤り
訂正データの読み込み可否を示す識別子を有し、上記記
憶制御装置は、誤り訂正データの読み出しの際に上記識
別子を参照し、読出し不可の際には、上記再生成処理を
行うものである。
しくは、上記パリティマッピングメモリは、上記記憶装
置内の誤り訂正データを格納する複数の領域ごとに誤り
訂正データの読み込み可否を示す識別子を有し、上記記
憶制御装置は、誤り訂正データの読み出しの際に上記識
別子を参照し、読出し不可の際には、上記再生成処理を
行うものである。
【0012】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶装置は、上記パリティマッピングメモ
リの内容を格納する退避領域を有し、上記記憶制御装置
は、システム停止時には、上記記憶装置の上記退避領域
に、上記パリティマッピングメモリの内容を格納する退
避処理を行うようにしたものである。
しくは、上記記憶装置は、上記パリティマッピングメモ
リの内容を格納する退避領域を有し、上記記憶制御装置
は、システム停止時には、上記記憶装置の上記退避領域
に、上記パリティマッピングメモリの内容を格納する退
避処理を行うようにしたものである。
【0013】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶制御装置は、システム起動時には、上
記パリティマッピングメモリの上記退避領域に格納され
た上記パリティマッピングメモリの内容を読み出して、
上記パリティマッピングメモリの内容を回復する回復処
理を行うおうにしたものであり、かかる構成により、パ
リティマッピングメモリの内容の回復を短時間で行い得
るものとなる。
しくは、上記記憶制御装置は、システム起動時には、上
記パリティマッピングメモリの上記退避領域に格納され
た上記パリティマッピングメモリの内容を読み出して、
上記パリティマッピングメモリの内容を回復する回復処
理を行うおうにしたものであり、かかる構成により、パ
リティマッピングメモリの内容の回復を短時間で行い得
るものとなる。
【0014】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶制御装置は、システム停止時には、上
記記憶装置の上記退避領域に、上記パリティマッピング
メモリの内容及びこの内容に対する誤り訂正データを格
納する退避処理を行とともに、上記記憶制御装置は、上
記回復処理において、上記記憶装置の1つに障害があっ
て上記退避領域の内容を読み出せない場合には、障害の
ない上記記憶装置の退避領域に格納された上記パリティ
マッピングメモリの内容及び上記パリティマッピングメ
モリの内容に対する誤り訂正データを用いて、障害のあ
る記憶装置の退避領域に格納されている内容を算出する
回復処理を行うようにしたものであり、パリティマッピ
ングメモリの内容の一部を読み出せない場合にも、容易
にパリティマッピングメモリの内容の回復を行い得るも
のとなる。
しくは、上記記憶制御装置は、システム停止時には、上
記記憶装置の上記退避領域に、上記パリティマッピング
メモリの内容及びこの内容に対する誤り訂正データを格
納する退避処理を行とともに、上記記憶制御装置は、上
記回復処理において、上記記憶装置の1つに障害があっ
て上記退避領域の内容を読み出せない場合には、障害の
ない上記記憶装置の退避領域に格納された上記パリティ
マッピングメモリの内容及び上記パリティマッピングメ
モリの内容に対する誤り訂正データを用いて、障害のあ
る記憶装置の退避領域に格納されている内容を算出する
回復処理を行うようにしたものであり、パリティマッピ
ングメモリの内容の一部を読み出せない場合にも、容易
にパリティマッピングメモリの内容の回復を行い得るも
のとなる。
【0015】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムの停止要求があると、上記再生成処理によ
り回復された内容の退避処理を実行するようにしたもの
である。
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムの停止要求があると、上記再生成処理によ
り回復された内容の退避処理を実行するようにしたもの
である。
【0016】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムが停止した場合には、再起動後に、上記パ
リティマッピングメモリの内容の回復が済んでいない領
域について、上記退避処理を実行するようにしたもので
ある。
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムが停止した場合には、再起動後に、上記パ
リティマッピングメモリの内容の回復が済んでいない領
域について、上記退避処理を実行するようにしたもので
ある。
【0017】上記ディスク記憶システムにおいて、好ま
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムの停止要求により停止した場合には、再起
動時に、上記退避処理により退避された領域について
は、退避された上記パリティマッピングメモリの内容を
読み出し、未退避の領域については、上記再生成処理に
より上記パリティマッピングメモリの内容を読み出すよ
うにしたものである。
しくは、上記記憶制御装置は、上記再生成処理の実行中
に、システムの停止要求により停止した場合には、再起
動時に、上記退避処理により退避された領域について
は、退避された上記パリティマッピングメモリの内容を
読み出し、未退避の領域については、上記再生成処理に
より上記パリティマッピングメモリの内容を読み出すよ
うにしたものである。
【0018】
【発明の実施の形態】以下、図1〜図11を用いて、本
発明の一実施形態によるディスク記憶システムについて
説明する。最初に、図1を用いて、本発明の一実施形態
によるディスク記憶システムの全体構成について説明す
る。図1は、本発明の一実施形態によるディスク記憶シ
ステムの全体構成を示すブロック図である。
発明の一実施形態によるディスク記憶システムについて
説明する。最初に、図1を用いて、本発明の一実施形態
によるディスク記憶システムの全体構成について説明す
る。図1は、本発明の一実施形態によるディスク記憶シ
ステムの全体構成を示すブロック図である。
【0019】ディスク記憶システムは、記憶制御装置1
と、データを格納する記憶装置2とから構成される。記
憶制御装置1は、チャネル制御部11と、ドライブ制御
部12と、制御プログラムを実行するプロセッサ13
と、制御プログラムを格納するROM14と、キャッシ
ュメモリなどを制御するための制御用情報を記憶するR
AM15と、誤り訂正データ,即ち、パリティを計算す
る専用のパリティ生成部16と、キャッシュメモリ17
と、パリティマッピングメモリ18を含んでいる。記憶
制御装置1は、チャネル制御部11を介してホスト3と
接続されている。また、記憶制御装置1は、ドライブ制
御部12を介して記憶装置2と接続されている。記憶制
御装置1は、ホスト3と記憶装置2との間のデータ転送
を制御する。
と、データを格納する記憶装置2とから構成される。記
憶制御装置1は、チャネル制御部11と、ドライブ制御
部12と、制御プログラムを実行するプロセッサ13
と、制御プログラムを格納するROM14と、キャッシ
ュメモリなどを制御するための制御用情報を記憶するR
AM15と、誤り訂正データ,即ち、パリティを計算す
る専用のパリティ生成部16と、キャッシュメモリ17
と、パリティマッピングメモリ18を含んでいる。記憶
制御装置1は、チャネル制御部11を介してホスト3と
接続されている。また、記憶制御装置1は、ドライブ制
御部12を介して記憶装置2と接続されている。記憶制
御装置1は、ホスト3と記憶装置2との間のデータ転送
を制御する。
【0020】ここで、キャッシュメモリ17は、バッテ
リにより不揮発化されており、またパリティマッピング
メモリ18は、本実施形態では不揮発化されていない
が、不揮発化されたものであっても良い。
リにより不揮発化されており、またパリティマッピング
メモリ18は、本実施形態では不揮発化されていない
が、不揮発化されたものであっても良い。
【0021】記憶装置2は、複数のディスク装置21に
よって、ディスクアレイを構成している。
よって、ディスクアレイを構成している。
【0022】次に、図2及び図3を用いて、記憶装置2
のデータ配置について説明する。最初に、図2を用い
て、ホスト3から見た記憶装置2のデータ配置について
説明する。図2は、本発明の一実施形態によるディスク
記憶システムにおけるホストから見た記憶装置のデータ
配置の説明図である。
のデータ配置について説明する。最初に、図2を用い
て、ホスト3から見た記憶装置2のデータ配置について
説明する。図2は、本発明の一実施形態によるディスク
記憶システムにおけるホストから見た記憶装置のデータ
配置の説明図である。
【0023】図2に示すように、ホスト3からは、記憶
装置2内の複数のディスク装置21やパリティは見え
ず、論理的な1台のディスク装置がつながれており、連
続的にデータd1,d2,…だけが配置されているよう
に見える。データd1,d2などの個々のデータは、ホ
スト3からの書き込み最小単位であり、ブロック22と
称する。
装置2内の複数のディスク装置21やパリティは見え
ず、論理的な1台のディスク装置がつながれており、連
続的にデータd1,d2,…だけが配置されているよう
に見える。データd1,d2などの個々のデータは、ホ
スト3からの書き込み最小単位であり、ブロック22と
称する。
【0024】次に、図3を用いて、実際の記憶装置2の
データ配置について説明する。図3は、本発明の一実施
形態によるディスク記憶システムにおける実際の記憶装
置のデータ配置の説明図である。
データ配置について説明する。図3は、本発明の一実施
形態によるディスク記憶システムにおける実際の記憶装
置のデータ配置の説明図である。
【0025】実際の記憶装置2の中には、複数のディス
ク装置21から構成されており、例えば、図3に示すよ
うに、ディスク1,ディスク2,ディスク3,及びディ
スク4の4台のディスク装置21に、データd1,d
2,d3,… と、パリティp1,p2,p3,…が、
各ディスクに分割されて、配置されている。
ク装置21から構成されており、例えば、図3に示すよ
うに、ディスク1,ディスク2,ディスク3,及びディ
スク4の4台のディスク装置21に、データd1,d
2,d3,… と、パリティp1,p2,p3,…が、
各ディスクに分割されて、配置されている。
【0026】ホスト3が、記憶制御装置1及び記憶装置
2から構成されるディスク記憶システムに対して要求を
出す際は、論理的なディスク上のデータに対して、リー
ド若しくはライトするブロックの位置,すなわち、アド
レスを指定する。一方、記憶制御装置1は、ホスト3か
ら指定された論理的なディスクのアドレスを、実際のデ
ィスクのアドレスへと変換する。このアドレス変換は、
通常は固定的であり、変換制御プログラムは、ROM1
4に書き込まれている。
2から構成されるディスク記憶システムに対して要求を
出す際は、論理的なディスク上のデータに対して、リー
ド若しくはライトするブロックの位置,すなわち、アド
レスを指定する。一方、記憶制御装置1は、ホスト3か
ら指定された論理的なディスクのアドレスを、実際のデ
ィスクのアドレスへと変換する。このアドレス変換は、
通常は固定的であり、変換制御プログラムは、ROM1
4に書き込まれている。
【0027】図3において、p1は、データd1,d
2,d3の排他的論理和から計算され、作成されるパリ
ティである。また、パリティp2は、データd4,d
5,d6から作成され、パリティp3は、データd7,
d8,d9から作成されるものである。即ち、パリティ
は、それぞれ3つのデータのブロックから作成される。
パリティp1,p2,p3,… は、それぞれデータの
ブロックと同じ大きさである。
2,d3の排他的論理和から計算され、作成されるパリ
ティである。また、パリティp2は、データd4,d
5,d6から作成され、パリティp3は、データd7,
d8,d9から作成されるものである。即ち、パリティ
は、それぞれ3つのデータのブロックから作成される。
パリティp1,p2,p3,… は、それぞれデータの
ブロックと同じ大きさである。
【0028】以下、データのブロックをデータブロック
と称し、パリティのブロックをパリティブロックと称す
ることとする。また、1つのパリティブロックを作成す
るために必要なデータとパリティの集合のことをパリテ
ィグループ23と称する。即ち、データd1,d2,d
3とパリティp1の集合を、パリティグループと称す
る。
と称し、パリティのブロックをパリティブロックと称す
ることとする。また、1つのパリティブロックを作成す
るために必要なデータとパリティの集合のことをパリテ
ィグループ23と称する。即ち、データd1,d2,d
3とパリティp1の集合を、パリティグループと称す
る。
【0029】また、図3において、Eは、データとパリ
ティのいずれも入っていない空きブロックを示してい
る。空きブロックEは、ディスク上のパリティpに隣接
した連続領域,例えば、ディスク装置21のトラックに
相当する同一円周上の領域に置かれる。このパリティブ
ロックpと空きブロックEの存在する連続領域をパリテ
ィトラック24と称する。パリティトラックの概念につ
いては、図4を用いて再述する。パリティトラックは、
上から順に通し番号が付けられており、例えば、トラッ
ク1は、パリティブロックp1,p2,p3と2つの空
きブロックEから構成され、トラック2は、パリティブ
ロックp4,p5,p6と2つの空きブロックEから構
成されている。
ティのいずれも入っていない空きブロックを示してい
る。空きブロックEは、ディスク上のパリティpに隣接
した連続領域,例えば、ディスク装置21のトラックに
相当する同一円周上の領域に置かれる。このパリティブ
ロックpと空きブロックEの存在する連続領域をパリテ
ィトラック24と称する。パリティトラックの概念につ
いては、図4を用いて再述する。パリティトラックは、
上から順に通し番号が付けられており、例えば、トラッ
ク1は、パリティブロックp1,p2,p3と2つの空
きブロックEから構成され、トラック2は、パリティブ
ロックp4,p5,p6と2つの空きブロックEから構
成されている。
【0030】各データブロックdは、常にディスク上の
固定的な位置に書き込む必要があるが、各パリティブロ
ックpは、パリティトラック24内であれば、位置を任
意に移動できる。例えば、図3のディスク4内のパリテ
ィトラック24には、パリティp1,p2,p3と2つ
の空きブロックEがあるが、パリティp1の更新パリテ
ィP1を書き込む場合、空きブロックEか、パリティブ
ロックp1のいずれかに書き込むことが許される。
固定的な位置に書き込む必要があるが、各パリティブロ
ックpは、パリティトラック24内であれば、位置を任
意に移動できる。例えば、図3のディスク4内のパリテ
ィトラック24には、パリティp1,p2,p3と2つ
の空きブロックEがあるが、パリティp1の更新パリテ
ィP1を書き込む場合、空きブロックEか、パリティブ
ロックp1のいずれかに書き込むことが許される。
【0031】なお、以下の説明においては、図3に示す
ように、パリティトラック24内に、パリティブロック
pが、前詰めで昇順に配置されている状態を、初期状態
と称する。
ように、パリティトラック24内に、パリティブロック
pが、前詰めで昇順に配置されている状態を、初期状態
と称する。
【0032】さらに、各ディスク装置21の最後尾に
は、パリティマッピングメモリ18の内容を書き込むた
めの領域M1,M2,M3と、領域M1,M2,M3に
書き込まれた内容に基づいて作成されるパリティPmを
格納する領域が設けられている。
は、パリティマッピングメモリ18の内容を書き込むた
めの領域M1,M2,M3と、領域M1,M2,M3に
書き込まれた内容に基づいて作成されるパリティPmを
格納する領域が設けられている。
【0033】次に、図4を用いて、パリティマッピング
メモリ18の内容と、ディスク装置21におけるパリテ
ィトラック上のパリティ配置との関係について説明す
る。図4は、本発明の一実施形態によるディスク記憶シ
ステムにおけるパリティマッピングメモリの内容とディ
スク装置におけるパリティトラック上のパリティ配置と
の関係の説明図である。
メモリ18の内容と、ディスク装置21におけるパリテ
ィトラック上のパリティ配置との関係について説明す
る。図4は、本発明の一実施形態によるディスク記憶シ
ステムにおけるパリティマッピングメモリの内容とディ
スク装置におけるパリティトラック上のパリティ配置と
の関係の説明図である。
【0034】図4(A),(C)は、パリティマッピン
グメモリ18に記録されている要素を示しており、図4
(B),(D)は、トラック番号1のパリティトラック
内のパリティpと空きブロックEの配置を示している。
また、図4(A),(B)は、初期状態を示しており、
図4(C),(D)は、パリティ更新時の状態を示して
いる。
グメモリ18に記録されている要素を示しており、図4
(B),(D)は、トラック番号1のパリティトラック
内のパリティpと空きブロックEの配置を示している。
また、図4(A),(B)は、初期状態を示しており、
図4(C),(D)は、パリティ更新時の状態を示して
いる。
【0035】図4(A)に示すように、パリティマッピ
ングメモリ18は、パリティトラック毎にパリティブロ
ックの配置を記録した変換表で、現在のパリティトラッ
ク内のパリティブロックの配置順を記録している。パリ
ティブロックを格納するディスク上の各領域は、1トラ
ック毎に、トラックの先頭から順に1,2,3,4,5
の相対番号を付けて管理している。
ングメモリ18は、パリティトラック毎にパリティブロ
ックの配置を記録した変換表で、現在のパリティトラッ
ク内のパリティブロックの配置順を記録している。パリ
ティブロックを格納するディスク上の各領域は、1トラ
ック毎に、トラックの先頭から順に1,2,3,4,5
の相対番号を付けて管理している。
【0036】図4(B)は、トラックNo.1のパリテ
ィトラックにパリティブロックpが記録された状態を示
している。即ち、領域1にパリティブロックp1が入
り、以下領域2,3にパリティブロックp2,p3が入
り、領域4,5は空きブロックEである。パリティトラ
ックにおけるパリティブロックpの配置順は、パリティ
マッピングメモリ18に記録されており、その領域が空
きブロックである場合、パリティマッピングメモリ18
には、0を入れ、パリティブロックが収まる場合には、
パリティマッピングメモリ18には、そのトラック内で
のパリティブロックの相対番号を入れる。即ち、トラッ
クNo.1のパリティトラックにおけるパリティブロッ
クpの配置順は、図4(A)のトラックNo.1の欄に
示すように、パリティブロックp1,p2,p3は、そ
れぞれ1,2,3と番号付けされてパリティマッピング
メモリ18に記録される。領域4,5には、0が記録さ
れ、これらの領域は、空きブロックEであることが示さ
れている。トラックNo.2及びトラックNo.3のそ
れぞれについても、領域1〜3には、パリティブロック
p1,p2,p3が記録され、領域4,5は、空きブロ
ックEであることが示されている。
ィトラックにパリティブロックpが記録された状態を示
している。即ち、領域1にパリティブロックp1が入
り、以下領域2,3にパリティブロックp2,p3が入
り、領域4,5は空きブロックEである。パリティトラ
ックにおけるパリティブロックpの配置順は、パリティ
マッピングメモリ18に記録されており、その領域が空
きブロックである場合、パリティマッピングメモリ18
には、0を入れ、パリティブロックが収まる場合には、
パリティマッピングメモリ18には、そのトラック内で
のパリティブロックの相対番号を入れる。即ち、トラッ
クNo.1のパリティトラックにおけるパリティブロッ
クpの配置順は、図4(A)のトラックNo.1の欄に
示すように、パリティブロックp1,p2,p3は、そ
れぞれ1,2,3と番号付けされてパリティマッピング
メモリ18に記録される。領域4,5には、0が記録さ
れ、これらの領域は、空きブロックEであることが示さ
れている。トラックNo.2及びトラックNo.3のそ
れぞれについても、領域1〜3には、パリティブロック
p1,p2,p3が記録され、領域4,5は、空きブロ
ックEであることが示されている。
【0037】そして、パリティブロックp1に更新がか
かった場合、更新後パリティは空き領域に書き込むこと
ができる。ここで、更新後のパリティp1を、図4
(B)の空きブロックE1の位置(領域4)に書き込ん
だとすると、今までパリティブロックp1の置かれてい
た領域(領域1)が空きブロックE1に変更され、図4
(D)に示すようになる。その結果、パリティマッピン
グメモリ18のトラック番号1の内容は、図4(C)に
示すのように、領域1〜5に対して、それぞれ、0,
2,3,1,0と変更される。
かった場合、更新後パリティは空き領域に書き込むこと
ができる。ここで、更新後のパリティp1を、図4
(B)の空きブロックE1の位置(領域4)に書き込ん
だとすると、今までパリティブロックp1の置かれてい
た領域(領域1)が空きブロックE1に変更され、図4
(D)に示すようになる。その結果、パリティマッピン
グメモリ18のトラック番号1の内容は、図4(C)に
示すのように、領域1〜5に対して、それぞれ、0,
2,3,1,0と変更される。
【0038】さらに、パリティマッピングメモリ18の
各トラックには、フラグ25が用意されており、「リー
ド可」ないし「リード不可」の状態が入る。パリティを
リード・ライトする場合、このフラグ25を参照する。
フラグ25が、「リード可」の場合には、そのパリティ
トラックについてパリティマッピングメモリ18に記さ
れている配置は正しいが、「リード不可」の場合には、
そのパリティトラックのパリティ配置は正しくない恐れ
があり、パリティのリードは禁止されるものである。フ
ラグ25の使用方法については、図8を用いて後述す
る。
各トラックには、フラグ25が用意されており、「リー
ド可」ないし「リード不可」の状態が入る。パリティを
リード・ライトする場合、このフラグ25を参照する。
フラグ25が、「リード可」の場合には、そのパリティ
トラックについてパリティマッピングメモリ18に記さ
れている配置は正しいが、「リード不可」の場合には、
そのパリティトラックのパリティ配置は正しくない恐れ
があり、パリティのリードは禁止されるものである。フ
ラグ25の使用方法については、図8を用いて後述す
る。
【0039】次に、図5及び図6を用いて、通常のライ
ト処理の流れについて説明する。ここでは、図3に示し
たディスク1のデータd1に対して更新データD1を書
き込む場合を例にとり説明する。また、この時、初めの
パリティブロックの配置は、図4(B)に示すとおりで
あるとする。
ト処理の流れについて説明する。ここでは、図3に示し
たディスク1のデータd1に対して更新データD1を書
き込む場合を例にとり説明する。また、この時、初めの
パリティブロックの配置は、図4(B)に示すとおりで
あるとする。
【0040】パリティpの計算は、各ディスク装置21
内で行うものである。従って、プロセッサ13は、ライ
トデータD1とその旧データd1を、ドライブ制御部1
2を介して、旧データd1に対するパリティp1の置か
れているディスク装置21へと送る処理のみを行うもの
となる。
内で行うものである。従って、プロセッサ13は、ライ
トデータD1とその旧データd1を、ドライブ制御部1
2を介して、旧データd1に対するパリティp1の置か
れているディスク装置21へと送る処理のみを行うもの
となる。
【0041】プロセッサ13がパリティライトを要求す
る時は、パリティ書き込みに必要なデータブロックd1
とデータブロックD1とともに、「パリティ計算&書き
込み」の要求を送る。この要求には、旧パリティp1の
読み出しアドレスと、ディスク装置21内で計算される
新パリティP1の書き込みアドレスが付随する。
る時は、パリティ書き込みに必要なデータブロックd1
とデータブロックD1とともに、「パリティ計算&書き
込み」の要求を送る。この要求には、旧パリティp1の
読み出しアドレスと、ディスク装置21内で計算される
新パリティP1の書き込みアドレスが付随する。
【0042】ここで、図5を用いて、ディスク装置21
内の構成について説明する。図5は、本発明の一実施形
態によるディスク記憶システムのディスク装置21内の
構成を説明するブロック図である。
内の構成について説明する。図5は、本発明の一実施形
態によるディスク記憶システムのディスク装置21内の
構成を説明するブロック図である。
【0043】各ディスク装置21は、記憶制御装置1か
ら送られてきたデータやパリティを記録する記録媒体2
001と、ディスクの読み書きを制御するディスク制御
プロセッサ2002と、バッファ2003と、パリティ
生成器2004とを有している。
ら送られてきたデータやパリティを記録する記録媒体2
001と、ディスクの読み書きを制御するディスク制御
プロセッサ2002と、バッファ2003と、パリティ
生成器2004とを有している。
【0044】ディスク制御プロセッサ2002は、「パ
リティ計算&書き込み」要求が来ると、まずバッファ2
003に旧データd1とライトデータD1を格納し、そ
れからパリティp1を読み出してバッファ2003に格
納する。さらに、ディスク制御プロセッサ2002は、
パリティ生成器2004を用いて、パリティp1とライ
トデータD1と旧データd1との排他的論理和を計算し
て、新パリティP1を求める。ディスク制御プロセッサ
2002は、求められた新パリティを、記録媒体200
1の指定された書き込みアドレスに書き込む処理を行
う。
リティ計算&書き込み」要求が来ると、まずバッファ2
003に旧データd1とライトデータD1を格納し、そ
れからパリティp1を読み出してバッファ2003に格
納する。さらに、ディスク制御プロセッサ2002は、
パリティ生成器2004を用いて、パリティp1とライ
トデータD1と旧データd1との排他的論理和を計算し
て、新パリティP1を求める。ディスク制御プロセッサ
2002は、求められた新パリティを、記録媒体200
1の指定された書き込みアドレスに書き込む処理を行
う。
【0045】次に、図6を用いて、通常のライト処理に
ついて説明する。図6は、本発明の一実施形態によるデ
ィスク記憶システムにおける通常のライト処理を説明す
るフローチャートである。
ついて説明する。図6は、本発明の一実施形態によるデ
ィスク記憶システムにおける通常のライト処理を説明す
るフローチャートである。
【0046】ステップ101において、ホスト3からデ
ータd1に対するライトデータD1のライト要求がくる
と、記憶制御装置2のチャネル制御部11は、キャッシ
ュメモリ17にライトデータD1を格納する。
ータd1に対するライトデータD1のライト要求がくる
と、記憶制御装置2のチャネル制御部11は、キャッシ
ュメモリ17にライトデータD1を格納する。
【0047】次に、ステップ102において、プロセッ
サ13は、ROM14の記憶内容を用いて、論理的なデ
ィスクに対してきた要求アドレスから実際のディスク2
1を特定し、そのディスク21に対するアドレスへと変
換する。
サ13は、ROM14の記憶内容を用いて、論理的なデ
ィスクに対してきた要求アドレスから実際のディスク2
1を特定し、そのディスク21に対するアドレスへと変
換する。
【0048】ステップ103において、プロセッサ13
は、ドライブ制御部12を介して、この変換したアドレ
スを用いて、ライトデータに対するパリティを作成する
ために、ライトデータの旧データd1をディスク21か
ら読み出し、キャッシュメモリ17に格納する。
は、ドライブ制御部12を介して、この変換したアドレ
スを用いて、ライトデータに対するパリティを作成する
ために、ライトデータの旧データd1をディスク21か
ら読み出し、キャッシュメモリ17に格納する。
【0049】次に、ステップ104において、プロセッ
サ13は、ライトデータD1の属するパリティグループ
のパリティp1の置かれているディスクとパリティトラ
ックを特定する。
サ13は、ライトデータD1の属するパリティグループ
のパリティp1の置かれているディスクとパリティトラ
ックを特定する。
【0050】ステップ105において、プロセッサ13
は、当該パリティトラックのパリティマッピングメモリ
18の内容を参照して、現在のパリティトラック内の配
置を調べ、現在パリティp1のある位置から最もディス
クの回転待ちが少なくて済む空きブロックEを検索し、
該当する空き領域を新パリティP1の書き込み位置と決
定する。図4(A)に示す例では、領域4,即ち、空き
領域E1がそれに相当するものである。
は、当該パリティトラックのパリティマッピングメモリ
18の内容を参照して、現在のパリティトラック内の配
置を調べ、現在パリティp1のある位置から最もディス
クの回転待ちが少なくて済む空きブロックEを検索し、
該当する空き領域を新パリティP1の書き込み位置と決
定する。図4(A)に示す例では、領域4,即ち、空き
領域E1がそれに相当するものである。
【0051】ステップ106において、プロセッサ13
は、書き込み位置が決定すると、データブロックd1と
D1に加えて、旧パリティp1の読み出しアドレスと新
パリティP1の書き込みアドレスを指定してディスク装
置21に送る。
は、書き込み位置が決定すると、データブロックd1と
D1に加えて、旧パリティp1の読み出しアドレスと新
パリティP1の書き込みアドレスを指定してディスク装
置21に送る。
【0052】ステップ107において、ディスク装置2
1は、その指示通りに空きブロックEに新パリティP1
を書き込む。
1は、その指示通りに空きブロックEに新パリティP1
を書き込む。
【0053】ステップ108において、ディスク装置2
1でのP1の書き込みの終了後、記憶制御装置1は、パ
リティマッピングメモリ18内のパリティp1の位置と
空きブロックE1の位置情報を入れ換える。
1でのP1の書き込みの終了後、記憶制御装置1は、パ
リティマッピングメモリ18内のパリティp1の位置と
空きブロックE1の位置情報を入れ換える。
【0054】最後に、ステップ109において、プロッ
セサ13は、ライトデータD1をディスク装置21のデ
ィスク1の旧データd1の一に書き込む。以上により、
通常のライト処理が終了する。
セサ13は、ライトデータD1をディスク装置21のデ
ィスク1の旧データd1の一に書き込む。以上により、
通常のライト処理が終了する。
【0055】次に、図7を用いて、ディスク記憶システ
ムの電源を停止する前に、パリティマッピングメモリ1
8の内容をディスクに退避する処理について説明する。
図7は、本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の退避処理
を説明するフローチャートである。
ムの電源を停止する前に、パリティマッピングメモリ1
8の内容をディスクに退避する処理について説明する。
図7は、本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の退避処理
を説明するフローチャートである。
【0056】本実施形態においては、ディスク記憶シス
テムの電源停止後の再起動時に、キャッシュメモリ17
若しくはパリティマッピングメモリ18の内容が消失し
て読めない場合を考慮し、電源停止前に必ずキャッシュ
メモリ17とパリティマッピングメモリ18の内容をデ
ィスク装置21に書き出す処理を行う。ディスク記憶シ
ステムの電源停止の要求がプロセッサ13に来ると、プ
ロセッサ13は、退避処理を開始する。
テムの電源停止後の再起動時に、キャッシュメモリ17
若しくはパリティマッピングメモリ18の内容が消失し
て読めない場合を考慮し、電源停止前に必ずキャッシュ
メモリ17とパリティマッピングメモリ18の内容をデ
ィスク装置21に書き出す処理を行う。ディスク記憶シ
ステムの電源停止の要求がプロセッサ13に来ると、プ
ロセッサ13は、退避処理を開始する。
【0057】ステップ201において、チャンネル制御
部11及びプロセッサ13は、図5において説明したラ
イト処理により、キャッシュメモリ17内のデータで、
ディスク装置21に未反映のものを全て、ディスク装置
21に書き込む。
部11及びプロセッサ13は、図5において説明したラ
イト処理により、キャッシュメモリ17内のデータで、
ディスク装置21に未反映のものを全て、ディスク装置
21に書き込む。
【0058】次に、ステップ202において、プロセッ
サ13は、パリティマッピングメモリ18内の内容を、
(ディスクの台数−1)個に等分割して、キャッシュメ
モリ17に格納する。この分割したテーブルの内容を、
M1,M2,M3とする。このときの退避内容として、
ブロック位置だけでなく、トラック番号とフラグ25に
ついても格納する。
サ13は、パリティマッピングメモリ18内の内容を、
(ディスクの台数−1)個に等分割して、キャッシュメ
モリ17に格納する。この分割したテーブルの内容を、
M1,M2,M3とする。このときの退避内容として、
ブロック位置だけでなく、トラック番号とフラグ25に
ついても格納する。
【0059】次に、ステップ203において、プロセッ
サ13は、パリティ生成部16を用いて、パリティマッ
ピングメモリ18内の内容M1,M2,M3のパリティ
Pmを以下の式に基づいて計算し、結果をキャッシュメ
モリ17に格納する。 Pm=M1(+)M2(+)M3 ここで、(+)は、排他論理和を示している。
サ13は、パリティ生成部16を用いて、パリティマッ
ピングメモリ18内の内容M1,M2,M3のパリティ
Pmを以下の式に基づいて計算し、結果をキャッシュメ
モリ17に格納する。 Pm=M1(+)M2(+)M3 ここで、(+)は、排他論理和を示している。
【0060】最後に、ステップ204において、プロセ
ッサ13は、パリティの計算が終了した後、パリティマ
ッピングメモリ18内の内容M1,M2,M3及びパリ
ティPmを、それぞれ図3に示したディスク装置21の
最後尾の領域に格納し、退避を終了する。
ッサ13は、パリティの計算が終了した後、パリティマ
ッピングメモリ18内の内容M1,M2,M3及びパリ
ティPmを、それぞれ図3に示したディスク装置21の
最後尾の領域に格納し、退避を終了する。
【0061】次に、図8を用いて、ディスク記憶システ
ムの電源投入時のパリティマッピングメモリ18の内容
の回復処理について説明する。図8は、本発明の一実施
形態によるディスク記憶システムにおけるパリティマッ
ピングメモリの内容の回復処理を説明するフローチャー
トである。
ムの電源投入時のパリティマッピングメモリ18の内容
の回復処理について説明する。図8は、本発明の一実施
形態によるディスク記憶システムにおけるパリティマッ
ピングメモリの内容の回復処理を説明するフローチャー
トである。
【0062】電源投入時においては、本実施形態のよう
に、パリティマッピングメモリ18が不揮発化されてい
ないと、電源投入時には、パリティマッピングメモリ1
8の内容は揮発している。そこで、図7に示した退避処
理により、ディスク装置21内に退避したパリティマッ
ピングメモリの内容を、パリティマッピングメモリ18
に回復する必要がある。
に、パリティマッピングメモリ18が不揮発化されてい
ないと、電源投入時には、パリティマッピングメモリ1
8の内容は揮発している。そこで、図7に示した退避処
理により、ディスク装置21内に退避したパリティマッ
ピングメモリの内容を、パリティマッピングメモリ18
に回復する必要がある。
【0063】電源投入時に、パリティマッピングメモリ
18が揮発したことをプロセッサ13が検知すると、プ
ロセッサ13はパリティ回復処理に入る。
18が揮発したことをプロセッサ13が検知すると、プ
ロセッサ13はパリティ回復処理に入る。
【0064】ステップ301において、プロセッサ13
は、退避されているパリティマッピングメモリの内容M
1,M2,M3をディスク装置21から読み出す際に、
どれか1つのディスク装置21が障害状態にあって読み
出せないか否かを判断する。
は、退避されているパリティマッピングメモリの内容M
1,M2,M3をディスク装置21から読み出す際に、
どれか1つのディスク装置21が障害状態にあって読み
出せないか否かを判断する。
【0065】読み出しが可能である場合には、ステップ
302に進んで通常の回復処理を行う。読み出しが不可
能な場合には、ステップ312に進んで、特別な回復処
理を行う。最初は、通常の回復処理について説明する。
302に進んで通常の回復処理を行う。読み出しが不可
能な場合には、ステップ312に進んで、特別な回復処
理を行う。最初は、通常の回復処理について説明する。
【0066】ステップ302において、プロセッサ13
は、図7において説明した退避処理で退避したパリティ
マッピングメモリ18の内容M1,M2,M3を、各デ
ィスク装置21からキャッシュメモリ17上に読み出
す。
は、図7において説明した退避処理で退避したパリティ
マッピングメモリ18の内容M1,M2,M3を、各デ
ィスク装置21からキャッシュメモリ17上に読み出
す。
【0067】ステップ303において、プロセッサ13
は、キャッシュメモリ17上に置かれた内容をパリティ
マッピングメモリ18へ移して、回復処理は終了とな
る。
は、キャッシュメモリ17上に置かれた内容をパリティ
マッピングメモリ18へ移して、回復処理は終了とな
る。
【0068】また、ステップ301において読み出しが
不可能な場合には、ステップ312において、プロセッ
サ13は、読み出せない内容の代わりにパリティPmを
ディスク装置21から読み出す。
不可能な場合には、ステップ312において、プロセッ
サ13は、読み出せない内容の代わりにパリティPmを
ディスク装置21から読み出す。
【0069】例えば、パリティマッピングメモリの内容
M2が読み出せなかった場合には、パリティマッピング
メモリの内容M1,M3及びパリティPmを読み出すこ
とになる。
M2が読み出せなかった場合には、パリティマッピング
メモリの内容M1,M3及びパリティPmを読み出すこ
とになる。
【0070】次に、ステップ313において、プロセッ
サ13は、読み出せなかった内容を、パリティ生成部1
6を用いて以下の式に従って算出する。例えば、M2が
読み出せなかった場合には、 M2=M1(+)M3(+)Pm を行うことによって、読み出せなかったパリティマッピ
ングメモリの内容M2を計算できる。その後は、ステッ
プ303を実行して、パリティマッピングメモリ18に
内容を格納して、回復処理は終了する。
サ13は、読み出せなかった内容を、パリティ生成部1
6を用いて以下の式に従って算出する。例えば、M2が
読み出せなかった場合には、 M2=M1(+)M3(+)Pm を行うことによって、読み出せなかったパリティマッピ
ングメモリの内容M2を計算できる。その後は、ステッ
プ303を実行して、パリティマッピングメモリ18に
内容を格納して、回復処理は終了する。
【0071】なお、この回復処理では電源投入直後に行
い、パリティマッピングメモリ18の内容を読み出すだ
けの処理であるため、短時間で終了し、その間ホスト3
からのリード・ライト要求を止めても差し支えないもの
である。
い、パリティマッピングメモリ18の内容を読み出すだ
けの処理であるため、短時間で終了し、その間ホスト3
からのリード・ライト要求を止めても差し支えないもの
である。
【0072】次に、図9を用いて、ディスク記憶システ
ムのパリティマッピングメモリ18の内容の退避処理が
行われていない場合におけるパリティマッピングメモリ
18の内容の再生成処理について説明する。図9は、本
発明の一実施形態によるディスク記憶システムにおける
パリティマッピングメモリの内容の再生成処理を説明す
るフローチャートである。
ムのパリティマッピングメモリ18の内容の退避処理が
行われていない場合におけるパリティマッピングメモリ
18の内容の再生成処理について説明する。図9は、本
発明の一実施形態によるディスク記憶システムにおける
パリティマッピングメモリの内容の再生成処理を説明す
るフローチャートである。
【0073】図8に示した例においては、通常の電源停
止を行い、パリティマッピングメモリ18の内容の退避
処理を行い、その後、電源投入した際にパリティマッピ
ングメモリ18の内容の回復処理を行っている。しかし
ながら、実際には、障害や停電などの要因でディスク記
憶システムが突然停止し、その後、ディスク記憶システ
ムが再起動する場合もある。この場合には、図7に示し
た退避処理が行われないため、図8に示した回復処理で
ディスク装置21からパリティマッピングメモリ18の
内容を読み込むことはできない。このような場合には、
ディスク装置に記憶されたデータからパリティを再生成
し、パリティマッピングメモリ18の内容を再度作り直
す必要がある。このときの再生成処理について、以下
に、説明する。
止を行い、パリティマッピングメモリ18の内容の退避
処理を行い、その後、電源投入した際にパリティマッピ
ングメモリ18の内容の回復処理を行っている。しかし
ながら、実際には、障害や停電などの要因でディスク記
憶システムが突然停止し、その後、ディスク記憶システ
ムが再起動する場合もある。この場合には、図7に示し
た退避処理が行われないため、図8に示した回復処理で
ディスク装置21からパリティマッピングメモリ18の
内容を読み込むことはできない。このような場合には、
ディスク装置に記憶されたデータからパリティを再生成
し、パリティマッピングメモリ18の内容を再度作り直
す必要がある。このときの再生成処理について、以下
に、説明する。
【0074】プロセッサ13が、パリティマッピングメ
モリ18が揮発したことを検知すると、プロセッサ13
は、図4に示したパリティマッピングメモリ18内のフ
ラグ25を、全て「リード不可」に変更する。それから
パリティトラック24ごとに再生成処理に入る。再生成
処理は、トラック1から最終トラックまで順に行うもの
である。
モリ18が揮発したことを検知すると、プロセッサ13
は、図4に示したパリティマッピングメモリ18内のフ
ラグ25を、全て「リード不可」に変更する。それから
パリティトラック24ごとに再生成処理に入る。再生成
処理は、トラック1から最終トラックまで順に行うもの
である。
【0075】ステップ401において、プロセッサ13
は、現在どのパリティトラックについて回復処理を行っ
ているかを示すポインタnを用意し、ポインタnを0に
初期化する。
は、現在どのパリティトラックについて回復処理を行っ
ているかを示すポインタnを用意し、ポインタnを0に
初期化する。
【0076】ステップ402において、プロセッサ13
は、パリティトラック1の再生成処理に入る前に、ポイ
ンタnに1を加えて、トラック1を指すようにする。
は、パリティトラック1の再生成処理に入る前に、ポイ
ンタnに1を加えて、トラック1を指すようにする。
【0077】次に、ステップ403において、プロセッ
サ13は、パリティマッピングメモリ18のパリティト
ラックnのフラグ25を参照する。
サ13は、パリティマッピングメモリ18のパリティト
ラックnのフラグ25を参照する。
【0078】ステップ404において、プロセッサ13
は、読み出したフラグ25がリード不可であるか否かの
判断を行い、「リード不可」であれば、そのトラックの
再生成を行うため、ステップ405へ進む。「リード不
可」でない場合には、ステップ402に戻り、次のトラ
ックの再生成へと進む。
は、読み出したフラグ25がリード不可であるか否かの
判断を行い、「リード不可」であれば、そのトラックの
再生成を行うため、ステップ405へ進む。「リード不
可」でない場合には、ステップ402に戻り、次のトラ
ックの再生成へと進む。
【0079】ステップ405において、プロセッサ13
は、パリティトラックnのパリティを計算するために必
要になるデータブロックをキャッシュメモリ17上に読
み出す。例えば、パリティトラック1のパリティp1,
p2,p3を計算する場合には、データブロックd1,
d2,…,d9を読み出す。
は、パリティトラックnのパリティを計算するために必
要になるデータブロックをキャッシュメモリ17上に読
み出す。例えば、パリティトラック1のパリティp1,
p2,p3を計算する場合には、データブロックd1,
d2,…,d9を読み出す。
【0080】ステップ406において、プロセッサ13
は、パリティ生成部16を用いて、読み出したデータブ
ロックのパリティを計算する。例えば、パリティトラッ
ク1であれば、パリティp1,p2,p3を以下の式に
従い計算し、キャッシュメモリ17に一旦格納する。 p1= d1(+)d2(+)d3 p2= d4(+)d5(+)d6 p3= d7(+)d8(+)d9 ステップ407において、プロセッサ13によるパリテ
ィの計算が終了すると、ドライブ制御部12は、計算に
より求められたパリティを、ディスク装置21に書き込
む。パリティの書き込みは、初期状態にして行われる。
は、パリティ生成部16を用いて、読み出したデータブ
ロックのパリティを計算する。例えば、パリティトラッ
ク1であれば、パリティp1,p2,p3を以下の式に
従い計算し、キャッシュメモリ17に一旦格納する。 p1= d1(+)d2(+)d3 p2= d4(+)d5(+)d6 p3= d7(+)d8(+)d9 ステップ407において、プロセッサ13によるパリテ
ィの計算が終了すると、ドライブ制御部12は、計算に
より求められたパリティを、ディスク装置21に書き込
む。パリティの書き込みは、初期状態にして行われる。
【0081】ステップ408において、プロセッサ13
は、パリティマッピングメモリ18内のブロック配置を
初期状態に修正する。
は、パリティマッピングメモリ18内のブロック配置を
初期状態に修正する。
【0082】そして、最後に、ステップ409におい
て、プロセッサ13は、フラグ25を「リード可」に設
定する。
て、プロセッサ13は、フラグ25を「リード可」に設
定する。
【0083】なお、この間の再生成処理は、時間がかか
るため、処理の途中でシステムの停止要求が来る可能性
も考慮しておく必要がある。
るため、処理の途中でシステムの停止要求が来る可能性
も考慮しておく必要がある。
【0084】そこで、ステップ410において、プロセ
ッサ13は、停止要求の有無を判断し、停止要求が来た
場合には、再生成処理はその時点で終了し、退避処理を
開始する。
ッサ13は、停止要求の有無を判断し、停止要求が来た
場合には、再生成処理はその時点で終了し、退避処理を
開始する。
【0085】再生成処理は、トラック1から最終トラッ
クまで順に行うものであるため、ステップ411におい
て、プロセッサ13は、再生成処理を行ったトラックn
が最終トラックかどうか判定し、最終トラックでない場
合には、ステップ202に戻り、次のトラックの再生成
を行う。最終トラックであれば、すなわち全てのトラッ
クについてフラグ25が「リード可」になった時点で、
再生成処理は終了する。
クまで順に行うものであるため、ステップ411におい
て、プロセッサ13は、再生成処理を行ったトラックn
が最終トラックかどうか判定し、最終トラックでない場
合には、ステップ202に戻り、次のトラックの再生成
を行う。最終トラックであれば、すなわち全てのトラッ
クについてフラグ25が「リード可」になった時点で、
再生成処理は終了する。
【0086】次に、図10を用いて、ディスク記憶シス
テムのパリティマッピングメモリ18の内容の再生成処
理中のライト処理について説明する。図10は、本発明
の一実施形態によるディスク記憶システムにおけるパリ
ティマッピングメモリの内容の再生成処理中のライト処
理を説明するフローチャートである。
テムのパリティマッピングメモリ18の内容の再生成処
理中のライト処理について説明する。図10は、本発明
の一実施形態によるディスク記憶システムにおけるパリ
ティマッピングメモリの内容の再生成処理中のライト処
理を説明するフローチャートである。
【0087】図9において説明した再生成処理は、トラ
ック内のデータを読み出し、パリティを計算し、再びデ
ィスクにパリティを書き込む処理を全てのパリティにつ
いて行うため、処理は長時間かかる。そのため、これら
の処理と並行して通常のリード・ライト処理ができるよ
う考慮する。再生成処理が動いている間、リード処理で
はパリティを読み出すことはないため競合することはな
いが、ライト処理の場合、図5に示したような処理を行
うと、間違ったパリティを作ることになるため、再生成
処理が動いている間は、ライト処理を変更する。
ック内のデータを読み出し、パリティを計算し、再びデ
ィスクにパリティを書き込む処理を全てのパリティにつ
いて行うため、処理は長時間かかる。そのため、これら
の処理と並行して通常のリード・ライト処理ができるよ
う考慮する。再生成処理が動いている間、リード処理で
はパリティを読み出すことはないため競合することはな
いが、ライト処理の場合、図5に示したような処理を行
うと、間違ったパリティを作ることになるため、再生成
処理が動いている間は、ライト処理を変更する。
【0088】なお、以下の説明では、ディスク装置21
上のデータ配置は、図3に示した通りとし、データd1
2の更新を行うものとする。
上のデータ配置は、図3に示した通りとし、データd1
2の更新を行うものとする。
【0089】ステップ101において、ホスト3からデ
ータd12に対する更新データD12のライト要求がく
ると、記憶制御装置2のチャネル制御部11は、キャッ
シュメモリ17にライトデータD1を格納する。
ータd12に対する更新データD12のライト要求がく
ると、記憶制御装置2のチャネル制御部11は、キャッ
シュメモリ17にライトデータD1を格納する。
【0090】次に、ステップ102において、プロセッ
サ13は、ROM14の記憶内容を用いて、論理的なデ
ィスクに対してきた要求アドレスから実際のディスク2
1を特定し、そのディスク21に対するアドレスへと変
換する。
サ13は、ROM14の記憶内容を用いて、論理的なデ
ィスクに対してきた要求アドレスから実際のディスク2
1を特定し、そのディスク21に対するアドレスへと変
換する。
【0091】ステップ503において、プロセッサ13
は、そのトラック番号についてパリティマッピングメモ
リ18のフラグ25を参照する。
は、そのトラック番号についてパリティマッピングメモ
リ18のフラグ25を参照する。
【0092】ステップ504において、プロセッサ13
は、リード不可か否かを判断し、「リード可」であれ
ば、通常のライト処理が可能になり、図4のステップ1
03に進む。「リード不可」の場合には、パリティのリ
ードはせず、ステップ405以下のパリティの回復へと
進む。
は、リード不可か否かを判断し、「リード可」であれ
ば、通常のライト処理が可能になり、図4のステップ1
03に進む。「リード不可」の場合には、パリティのリ
ードはせず、ステップ405以下のパリティの回復へと
進む。
【0093】ステップ405において、プロセッサ13
は、更新データD12に対するパリティトラックは、パ
リティトラック2であるので、トラック2のパリティを
作成するために必要なデータのうち、d12以外の全て
のデータを読み出す。即ち、パリティトラック2は、図
3に示したように、ディスク3に格納されており、パリ
ティp4,p5,p6から構成されている。まだ、これ
らのパリティp4,p5,p6は、データd10,d1
1,…d18から求められている。従って、ステップ4
05において、データd10,d11,d13,…d1
8が読み出される。
は、更新データD12に対するパリティトラックは、パ
リティトラック2であるので、トラック2のパリティを
作成するために必要なデータのうち、d12以外の全て
のデータを読み出す。即ち、パリティトラック2は、図
3に示したように、ディスク3に格納されており、パリ
ティp4,p5,p6から構成されている。まだ、これ
らのパリティp4,p5,p6は、データd10,d1
1,…d18から求められている。従って、ステップ4
05において、データd10,d11,d13,…d1
8が読み出される。
【0094】次に、ステップ406において、プロセッ
サ13は、パリティ生成部16を用いて、読み出したデ
ータブロックのパリティp4、p5、p6を次式に従い
計算し、キャッシュメモリ17に一旦格納する。 p4= d10(+)d11(+)D12 p5= d13(+)d14(+)d15 p6= d16(+)d17(+)d18 ステップ407において、プロセッサ13によるパリテ
ィの計算が終了すると、ドライブ制御部12は、パリテ
ィをディスク装置21に書き込む。この際、初期状態に
して書き込む。
サ13は、パリティ生成部16を用いて、読み出したデ
ータブロックのパリティp4、p5、p6を次式に従い
計算し、キャッシュメモリ17に一旦格納する。 p4= d10(+)d11(+)D12 p5= d13(+)d14(+)d15 p6= d16(+)d17(+)d18 ステップ407において、プロセッサ13によるパリテ
ィの計算が終了すると、ドライブ制御部12は、パリテ
ィをディスク装置21に書き込む。この際、初期状態に
して書き込む。
【0095】さらに、ステップ508において、ドライ
ブ制御部12は、更新データであるD12をディスク装
置21に書き込む。
ブ制御部12は、更新データであるD12をディスク装
置21に書き込む。
【0096】ステップ509において、プロセッサ13
は、ディスク装置21への書き込みが完了したら、パリ
ティマッピングメモリ18内のブロック配置を修正しす
る。
は、ディスク装置21への書き込みが完了したら、パリ
ティマッピングメモリ18内のブロック配置を修正しす
る。
【0097】最後に、ステップ510において、プロセ
ッサ13は、トラック2のフラグ25を「リード可」に
して、ライト処理が終了する。
ッサ13は、トラック2のフラグ25を「リード可」に
して、ライト処理が終了する。
【0098】次に、図11を用いて、ディスク記憶シス
テムのパリティマッピングメモリ18の内容の再生成処
理中にディスク記憶システムの停止要求が来て停止した
場合、その後の電源投入時の処理について説明する。図
11は、本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の再生成処
理中停止要求後の電源投入時の処理を説明するフローチ
ャートである。
テムのパリティマッピングメモリ18の内容の再生成処
理中にディスク記憶システムの停止要求が来て停止した
場合、その後の電源投入時の処理について説明する。図
11は、本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の再生成処
理中停止要求後の電源投入時の処理を説明するフローチ
ャートである。
【0099】本実施形態においては、パリティマッピン
グメモリ18は不揮発化されていないので、一旦電源遮
断を行うと、再起動時にはパリティマッピングメモリ1
8の内容が揮発している。
グメモリ18は不揮発化されていないので、一旦電源遮
断を行うと、再起動時にはパリティマッピングメモリ1
8の内容が揮発している。
【0100】そこで、ステップ601において、プロセ
ッサ13が、電源投入時にパリティマッピングメモリ1
8が揮発していることを検知すると、図8に示した回復
処理を行い、パリティマッピングメモリ18の内容をデ
ィスク装置21から読み込む。読込処理中は、ホスト3
からのリード・ライト要求は受け付けないようにしてお
く。
ッサ13が、電源投入時にパリティマッピングメモリ1
8が揮発していることを検知すると、図8に示した回復
処理を行い、パリティマッピングメモリ18の内容をデ
ィスク装置21から読み込む。読込処理中は、ホスト3
からのリード・ライト要求は受け付けないようにしてお
く。
【0101】ステップ602において、プロセッサ13
は、図8に示した回復処理が完了した時点で、ホスト3
からのI/Oを受け付け開始する。
は、図8に示した回復処理が完了した時点で、ホスト3
からのI/Oを受け付け開始する。
【0102】また、ステップ603において、プロセッ
サ13は、I/O受付け開始と同時に、図9に示した再
生成処理を行って、回復の済んでいないトラックのパリ
ティとパリティマッピングメモリ18の内容を復旧させ
る。全てのトラックが復旧した時点で、再生成処理は完
了する。
サ13は、I/O受付け開始と同時に、図9に示した再
生成処理を行って、回復の済んでいないトラックのパリ
ティとパリティマッピングメモリ18の内容を復旧させ
る。全てのトラックが復旧した時点で、再生成処理は完
了する。
【0103】なお、前述まで説明では、パリティマッピ
ングメモリ18が不揮発化されていないものとして説明
したが、パリティマッピングメモリ18が不揮発化され
ている場合には、図9に示した再生成処理のみを行えば
良い。再生成処理では、すでに再生成されたパリティト
ラックのパリティマッピングメモリ18には「リード
可」のフラグ25が立っているため、そのトラックに対
して再生成をまた行うことはないので、「リード不可」
フラグ25の立っている未復旧トラックの再生成のみを
行うようにする。このようにすることにより、全トラッ
クを再生成するよりも短時間で再生成を完了できる。
ングメモリ18が不揮発化されていないものとして説明
したが、パリティマッピングメモリ18が不揮発化され
ている場合には、図9に示した再生成処理のみを行えば
良い。再生成処理では、すでに再生成されたパリティト
ラックのパリティマッピングメモリ18には「リード
可」のフラグ25が立っているため、そのトラックに対
して再生成をまた行うことはないので、「リード不可」
フラグ25の立っている未復旧トラックの再生成のみを
行うようにする。このようにすることにより、全トラッ
クを再生成するよりも短時間で再生成を完了できる。
【0104】以上説明したように、本実施形態によれ
ば、パリティ配置を動的に変更するパリティディスク方
式のディスク記憶システムにおいて、マッピングテーブ
ルに障害が発生した際に、記憶装置に格納されたデータ
を用いて、パリティを回復することにより、オンライン
でパリティを復旧し、通常の動作を継続できるものとな
る。
ば、パリティ配置を動的に変更するパリティディスク方
式のディスク記憶システムにおいて、マッピングテーブ
ルに障害が発生した際に、記憶装置に格納されたデータ
を用いて、パリティを回復することにより、オンライン
でパリティを復旧し、通常の動作を継続できるものとな
る。
【0105】また、システムの電源停止直前に、パリテ
ィマッピングテーブルの内容をディスク装置に退避させ
るため、システムの正常停止後に、再起動した際に、パ
リティマッピングテーブルの内容をディスク装置から読
み出す短い時間で回復が可能である。
ィマッピングテーブルの内容をディスク装置に退避させ
るため、システムの正常停止後に、再起動した際に、パ
リティマッピングテーブルの内容をディスク装置から読
み出す短い時間で回復が可能である。
【0106】また、パリティマッピングテーブルの障害
が発生した場合に、パリティの復旧処理を行い、通常処
理についても変換テーブルの障害が発生した場合に、障
害を考慮した処理方式に変更されるため、通常の処理を
妨げることなくパリティを復旧できる。
が発生した場合に、パリティの復旧処理を行い、通常処
理についても変換テーブルの障害が発生した場合に、障
害を考慮した処理方式に変更されるため、通常の処理を
妨げることなくパリティを復旧できる。
【0107】
【発明の効果】本発明によれば、パリティ配置を動的に
変更するパリティディスク方式のディスク記憶システム
において、マッピングテーブルに障害が発生した際に、
オンラインでパリティを復旧し、通常の動作を継続でき
るものとなる。
変更するパリティディスク方式のディスク記憶システム
において、マッピングテーブルに障害が発生した際に、
オンラインでパリティを復旧し、通常の動作を継続でき
るものとなる。
【図1】本発明の一実施形態によるディスク記憶システ
ムの全体構成を示すブロック図である。
ムの全体構成を示すブロック図である。
【図2】本発明の一実施形態によるディスク記憶システ
ムにおけるホストから見た記憶装置のデータ配置の説明
図である。
ムにおけるホストから見た記憶装置のデータ配置の説明
図である。
【図3】本発明の一実施形態によるディスク記憶システ
ムにおける実際の記憶装置のデータ配置の説明図であ
る。
ムにおける実際の記憶装置のデータ配置の説明図であ
る。
【図4】本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容とディスク
装置におけるパリティトラック上のパリティ配置との関
係の説明図である。
ムにおけるパリティマッピングメモリの内容とディスク
装置におけるパリティトラック上のパリティ配置との関
係の説明図である。
【図5】本発明の一実施形態によるディスク記憶システ
ムのディスク装置21内の構成を説明するブロック図で
ある。
ムのディスク装置21内の構成を説明するブロック図で
ある。
【図6】本発明の一実施形態によるディスク記憶システ
ムにおける通常のライト処理を説明するフローチャート
である。
ムにおける通常のライト処理を説明するフローチャート
である。
【図7】本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の退避処理
を説明するフローチャートである。
ムにおけるパリティマッピングメモリの内容の退避処理
を説明するフローチャートである。
【図8】本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の回復処理
を説明するフローチャートである。
ムにおけるパリティマッピングメモリの内容の回復処理
を説明するフローチャートである。
【図9】本発明の一実施形態によるディスク記憶システ
ムにおけるパリティマッピングメモリの内容の再生成処
理を説明するフローチャートである。
ムにおけるパリティマッピングメモリの内容の再生成処
理を説明するフローチャートである。
【図10】本発明の一実施形態によるディスク記憶シス
テムにおけるパリティマッピングメモリの内容の再生成
処理中のライト処理を説明するフローチャートである。
テムにおけるパリティマッピングメモリの内容の再生成
処理中のライト処理を説明するフローチャートである。
【図11】本発明の一実施形態によるディスク記憶シス
テムにおけるパリティマッピングメモリの内容の再生成
処理中停止要求後の電源投入時の処理を説明するフロー
チャートである。
テムにおけるパリティマッピングメモリの内容の再生成
処理中停止要求後の電源投入時の処理を説明するフロー
チャートである。
1…記憶制御装置 2…記憶装置 3…ホストコンピュータ 11…チャネル制御部 12…ドライブ制御部 13…プロセッサ 14…ROM 15…RAM 16…パリティ生成部 17…キャッシュメモリ 18…パリティマッピングメモリ 21…ディスク装置 2001…記憶媒体 2002…ディスク制御プロセッサ 2003…バッファ 2004…パリティ生成器
───────────────────────────────────────────────────── フロントページの続き (72)発明者 佐藤 孝夫 神奈川県小田原市国府津2880番地 株式会 社日立製作所ストレージシステム事業部内
Claims (8)
- 【請求項1】 データ及び誤り訂正データを格納する複
数のディスク装置によりディスクアレイを構成する記憶
装置と、 この記憶装置とホスト処理装置との間のデータ転送を制
御するとともに、 誤り訂正データの上記記憶装置上における配置情報を記
憶するパリティマッピングメモリを有する記憶制御装置
とから構成されるディスク記憶システムにおいて、 上記記憶制御装置は、上記記憶装置内のデータから誤り
訂正データを計算し直して上記記憶装置に書き込み、上
記記憶装置に書き込んだ誤り訂正データの配置に従って
上記パリティマッピングメモリ内の上記配置情報を書き
直す再生成処理を行うことを特徴とするディスク記憶シ
ステム。 - 【請求項2】 請求項1記載のディスク記憶システムに
おいて、 上記パリティマッピングメモリは、上記記憶装置内の誤
り訂正データを格納する複数の領域ごとに誤り訂正デー
タの読み込み可否を示す識別子を有し、 上記記憶制御装置は、誤り訂正データの読み出しの際に
上記識別子を参照し、読出し不可の際には、上記再生成
処理を行うことを特徴とするディスク記憶システム。 - 【請求項3】 請求項1記載のディスク記憶システムに
おいて、 上記記憶装置は、上記パリティマッピングメモリの内容
を格納する退避領域を有し、 上記記憶制御装置は、システム停止時には、上記記憶装
置の上記退避領域に、上記パリティマッピングメモリの
内容を格納する退避処理を行うことを特徴とするディス
ク記憶システム。 - 【請求項4】 請求項3記載のディスク記憶システムに
おいて、 上記記憶制御装置は、システム起動時には、上記パリテ
ィマッピングメモリの上記退避領域に格納された上記パ
リティマッピングメモリの内容を読み出して、上記パリ
ティマッピングメモリの内容を回復する回復処理を行う
ことを特徴とするディスク記憶システム。 - 【請求項5】 請求項3記載のディスク記憶システムに
おいて、 上記記憶制御装置は、システム停止時には、上記記憶装
置の上記退避領域に、上記パリティマッピングメモリの
内容及びこの内容に対する誤り訂正データを格納する退
避処理を行とともに、 上記記憶制御装置は、上記回復処理において、上記記憶
装置の1つに障害があって上記退避領域の内容を読み出
せない場合には、障害のない上記記憶装置の退避領域に
格納された上記パリティマッピングメモリの内容及び上
記パリティマッピングメモリの内容に対する誤り訂正デ
ータを用いて、障害のある記憶装置の退避領域に格納さ
れている内容を算出する回復処理を行うことを特徴とす
るディスク記憶システム。 - 【請求項6】 請求項3記載のディスク記憶システムに
おいて、 上記記憶制御装置は、上記再生成処理の実行中に、シス
テムの停止要求があると、上記再生成処理により回復さ
れた内容の退避処理を実行することを特徴とするディス
ク記憶システム。 - 【請求項7】 請求項3記載のディスク記憶システムに
おいて、 上記記憶制御装置は、上記再生成処理の実行中に、シス
テムが停止した場合には、再起動後に、上記パリティマ
ッピングメモリの内容の回復が済んでいない領域につい
て、上記退避処理を実行することを特徴とするディスク
記憶システム。 - 【請求項8】 請求項6記載のディスク記憶システムに
おいて、 上記記憶制御装置は、上記再生成処理の実行中に、シス
テムの停止要求により停止した場合には、再起動時に、
上記退避処理により退避された領域については、退避さ
れた上記パリティマッピングメモリの内容を読み出し、
未退避の領域については、上記再生成処理により上記パ
リティマッピングメモリの内容を読み出すことを特徴と
するディスク記憶システム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8260801A JPH10105346A (ja) | 1996-10-01 | 1996-10-01 | ディスク記憶システム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8260801A JPH10105346A (ja) | 1996-10-01 | 1996-10-01 | ディスク記憶システム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10105346A true JPH10105346A (ja) | 1998-04-24 |
Family
ID=17352941
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8260801A Pending JPH10105346A (ja) | 1996-10-01 | 1996-10-01 | ディスク記憶システム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10105346A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2003083678A1 (en) * | 2002-03-29 | 2003-10-09 | I-O Data Device, Inc. | Access control apparatus and data management apparatus |
| JPWO2008126169A1 (ja) * | 2007-03-12 | 2010-07-15 | 富士通株式会社 | ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置 |
| EP2645250A2 (en) | 2012-03-26 | 2013-10-02 | Fujitsu Limited | Storage system, storage apparatus, and data restoration method |
-
1996
- 1996-10-01 JP JP8260801A patent/JPH10105346A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2003083678A1 (en) * | 2002-03-29 | 2003-10-09 | I-O Data Device, Inc. | Access control apparatus and data management apparatus |
| JPWO2008126169A1 (ja) * | 2007-03-12 | 2010-07-15 | 富士通株式会社 | ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置 |
| EP2645250A2 (en) | 2012-03-26 | 2013-10-02 | Fujitsu Limited | Storage system, storage apparatus, and data restoration method |
| US9329944B2 (en) | 2012-03-26 | 2016-05-03 | Fujitsu Limited | Storage system, storage apparatus, and data restoration method |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5579474A (en) | Disk array system and its control method | |
| JP3129732B2 (ja) | コピーバックキャッシュを有する記憶装置アレイ | |
| US5758054A (en) | Non-volatile memory storage of write operation identifier in data storage device | |
| US5488701A (en) | In log sparing for log structured arrays | |
| US6766491B2 (en) | Parity mirroring between controllers in an active-active controller pair | |
| JP3164499B2 (ja) | ディスクアレイにおけるパリティデータの無矛盾性保持方法 | |
| US5469453A (en) | Data corrections applicable to redundant arrays of independent disks | |
| US7055058B2 (en) | Self-healing log-structured RAID | |
| US7533298B2 (en) | Write journaling using battery backed cache | |
| US7152184B2 (en) | Storage device, backup method and computer program code of this storage device | |
| JP2913917B2 (ja) | 記憶装置および記憶装置システム | |
| JPH05143471A (ja) | 記憶装置の冗長アレイ内の故障記憶装置のオンライン再構成方法 | |
| JPH06332623A (ja) | アレイ型記録装置及び記録装置 | |
| JPH06202817A (ja) | ディスクアレイ装置及びそのデータ更新方法 | |
| JPH1049308A (ja) | ホスト・ベースraid−5及びnv−ram統合システム | |
| JP2002259062A (ja) | 記憶装置システム及び記憶装置システムにおけるデータの複写方法 | |
| JP2010026812A (ja) | 磁気ディスク装置 | |
| JPH06230903A (ja) | ディスクアレイ装置の障害回復方法、およびディスクアレイ装置 | |
| JPH06119126A (ja) | ディスクアレイ装置 | |
| JPH10105346A (ja) | ディスク記憶システム | |
| JPH08286844A (ja) | パリティ生成制御方法およびディスク制御装置 | |
| JPH07306758A (ja) | ディスクアレイ装置及びその制御方法 | |
| JP3615274B2 (ja) | ファイル制御装置 | |
| GB2293912A (en) | Disk storage device for disk array | |
| JPH1124849A (ja) | 障害回復方法および装置 |