JP2003058324A - ディスクアレイ装置 - Google Patents

ディスクアレイ装置

Info

Publication number
JP2003058324A
JP2003058324A JP2001246442A JP2001246442A JP2003058324A JP 2003058324 A JP2003058324 A JP 2003058324A JP 2001246442 A JP2001246442 A JP 2001246442A JP 2001246442 A JP2001246442 A JP 2001246442A JP 2003058324 A JP2003058324 A JP 2003058324A
Authority
JP
Japan
Prior art keywords
data
write
page
cache memory
cache
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
JP2001246442A
Other languages
English (en)
Other versions
JP3610574B2 (ja
Inventor
Takao Sogo
孝雄 相合
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 JP2001246442A priority Critical patent/JP3610574B2/ja
Priority to US10/216,564 priority patent/US6931485B2/en
Publication of JP2003058324A publication Critical patent/JP2003058324A/ja
Application granted granted Critical
Publication of JP3610574B2 publication Critical patent/JP3610574B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • 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
    • 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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine instruction level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/26Using a specific storage system architecture
    • G06F2212/261Storage comprising a plurality of storage devices

Landscapes

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

Abstract

(57)【要約】 【課題】 障害の復旧に要する時間を短縮でき、書き込
み性能の向上を図ることができる「データ保護機能を有
するディスクアレイ装置」を提供する。 【解決手段】 キャッシュメモリ22は、正規のデータ
領域であるキャッシュページ群とともに、キャッシュペ
ージ内のDIRTYデータを退避するためのワークペー
ジ群を備える。ホストインタフェース制御部21は、キ
ャッシュメモリ22にホストコンピュータ1から転送さ
れたデータを書き込む際に、書き込み範囲とDIRTY
範囲との重複した部分のデータをワークページに退避す
る処理を行い、書き込みデータ転送の中断が発生した場
合に、ワークページに退避されたデータをキャッシュペ
ージに復帰させる処理を行う。ディスクインタフェース
制御部23は、キャッシュメモリ22上のDIRTYデ
ータのライトバック処理を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、キャッシュメモリ
を搭載したディスクアレイ装置に関し、特に、ホストコ
ンピュータの障害やホストインタフェースケーブル(ホ
ストコンピュータとディスクアレイ装置との間のケーブ
ル)の障害等により書き込みデータ転送が中断した場合
でも書き込みデータ転送が中断する前のデータを保護す
ることができるディスクアレイ装置(データ保護機能を
有するディスクアレイ装置)に関する。
【0002】
【従来の技術】通常、キャッシュメモリを搭載したディ
スクアレイ装置は、ホストコンピュータからの書き込み
要求(データ書き込み要求)を受けた場合に、キャッシ
ュメモリ上に受信したデータ(書き込みデータ)を格納
した段階でホストコンピュータに応答を返し、ホストコ
ンピュータとの間のI/O(Input/Outpu
t)とは非同期にディスク装置(物理ディスク)へのデ
ータの書き込みを行うことにより、性能の向上を図って
いる。
【0003】このようなディスクアレイ装置において、
ホストコンピュータからの書き込みデータ転送中にホス
トコンピュータの障害やホストインタフェースケーブル
の障害等により書き込みデータ転送が中断した場合に
は、その書き込みデータ転送における書き込み範囲のデ
ータの内容は保証できなくなる。
【0004】このため、従来のディスクアレイ装置は、
その書き込み範囲のデータをそれ以降に読み込んだ時に
そのデータが訂正不能エラーデータであると分かるよう
な情報(訂正不能エラーを示す情報)を、そのデータに
埋め込んでいる場合があった。
【0005】図7は、従来のディスクアレイ装置におい
て、キャッシュメモリ上の書き込み先のキャッシュペー
ジ(書き込み要求によって指定された書き込み範囲を有
するキャッシュページ)内の当該書き込み範囲にすでに
DIRTYデータ(ディスク装置への書き込みが完了し
ていないデータ)が存在している状態で当該キャッシュ
メモリに対するデータ書き込み処理が行われ、当該書き
込みデータ転送が正常に完了した場合における当該キャ
ッシュページ中のデータの属性(データステート)の遷
移を示す図である。なお、データステートの「DIRT
Y」,「CLEAN」,および「NULL」の意味する
ところは、後述する本発明における各データステートと
同一である。
【0006】従来のディスクアレイ装置は、書き込み先
のキャッシュページ上の書き込み範囲にすでにDIRT
Yデータが存在している状態(図7の(a)参照)でホ
ストコンピュータから書き込み要求を受けた場合に、当
該書き込み要求に基づくホストコンピュータからの書き
込みデータを当該キャッシュページに格納し(書き込み
データ転送を完了させ)、データステートが「DIRT
Y」の範囲を当該書き込み範囲まで拡張する(図7の
(b)参照)。
【0007】さらに、当該ディスクアレイ装置内のディ
スクインタフェース制御部(図1に示すディスクインタ
フェース制御部23と同様のインタフェース制御部)が
当該DIRTYデータをディスク装置に書き込むこと
(ライトバック処理を行うこと)により、当該キャッシ
ュページ中の当該書き込み範囲のデータステートは「C
LEAN」(CLEANデータとは、ディスク装置への
書き込みが完了したデータを意味する)に変更される
(図7の(c)参照)。
【0008】図8は、従来のディスクアレイ装置におい
て、キャッシュメモリ上の書き込み先のキャッシュペー
ジ内の書き込み範囲にすでにDIRTYデータが存在し
ている状態で当該キャッシュメモリに対するデータ書き
込み処理が行われ、当該書き込みデータ転送が中断した
場合における当該キャッシュページ中のデータステート
の遷移を示す図である。
【0009】図7の場合と同様に、従来のディスクアレ
イ装置は、書き込み先のキャッシュページ上の書き込み
範囲にすでにDIRTYデータが存在している状態(図
8の(a)参照)でホストコンピュータから書き込み要
求を受けた場合に、書き込みデータ転送を開始する。
【0010】ここで、この書き込みデータ転送が中断し
た場合には、書き込み範囲のデータの内容は保証できな
くなる(図8の(b)における「×××××」参照)。
【0011】そこで、従来のディスクアレイ装置は、こ
の場合には、当該キャッシュページ中の書き込み範囲の
データをそれ以降に読み込んだ時にそのデータに訂正不
能エラーが生じていること(そのデータが訂正不能デー
タであること)を示す情報(訂正不能エラーを示す情
報)をそのデータに埋め込む(図8の(c)参照)。
【0012】そして、当該ディスクアレイ装置内のディ
スクインタフェース制御部が当該DIRTYデータ(訂
正不能データを含むDIRTYデータ)をディスク装置
に書き込むこと(ライトバック処理を行うこと)によ
り、当該キャッシュページ中の当該書き込み範囲のデー
タステートは「CLEAN」に変更される(図8の
(d)参照)。
【0013】
【発明が解決しようとする課題】上述した従来のディス
クアレイ装置においては、書き込み先のキャッシュペー
ジの書き込み範囲にすでにDIRTYデータが存在して
いる状態で、キャッシュメモリに対してデータ書き込み
処理が行われ、当該書き込みデータ転送が中断した場合
に、書き込みデータ転送の中断が発生する前のデータが
破壊されているため(訂正不能データとなっているた
め)、ホストコンピュータのアプリケーション(アプリ
ケーションプログラム)は磁気テープ装置等のバックア
ップ装置からデータを復旧しなければならず、障害の復
旧処理(障害発生時の復旧作業)に長時間を要する場合
があるという問題点があった。
【0014】また、この問題点を回避するために、新た
なバッファメモリを搭載し、ホストコンピュータからの
書き込みデータをバッファメモリに正常に格納してから
キャッシュメモリに転送するという方式が考えられる。
しかし、この方式の場合には、新たなハードウェア(バ
ッファメモリ)が必要となる上、バッファメモリからキ
ャッシュメモリへのデータ転送が毎回行われるため、書
き込み性能が大幅に低下するという問題点が生じること
になる。
【0015】本発明の目的は、上述の点に鑑み、新たな
ハードウェアを追加せず、また書き込み性能の低下をで
きるだけ発生させずに、書き込みデータ転送の中断発生
時でも以前の(書き込みデータ転送中断発生前の)デー
タを保護できる機能を有するディスクアレイ装置を提供
することにある。
【0016】すなわち、本発明の目的は、キャッシュメ
モリを搭載したディスクアレイ装置において、ホストコ
ンピュータの障害やホストインタフェースケーブルの障
害等により書き込みデータ転送が中断した場合でも書き
込みデータ転送が中断する前のデータを保護し(ホスト
コンピュータからの書き込みデータ転送が中断した場合
にキャッシュメモリ内のワークページに退避しておいた
データを復帰させることによって、書き込みデータ転送
が中断がする前のデータを保護し)、障害の復旧に要す
る時間を短縮することができ、書き込み性能の向上を図
ることができるディスクアレイ装置(データ保護機能を
有するディスクアレイ装置)を提供することにある。
【0017】
【課題を解決するための手段】本発明のディスクアレイ
装置は、キャッシュメモリを搭載したディスクアレイ装
置において、正規のデータ領域であるキャッシュページ
群と、キャッシュページ内のDIRTYデータ(ディス
ク装置への書き込みが完了していないデータ)を退避す
るためのワークページ群と、各キャッシュページにおけ
るデータステートを管理するための管理領域とを備える
前記キャッシュメモリと、ホストコンピュータから書き
込み要求を受けると、前記キャッシュメモリにホストコ
ンピュータから転送された書き込みデータを書き込み、
そのデータ書き込み時に前記キャッシュメモリの書き込
み範囲にDIRTYデータがあった場合に、書き込み範
囲とDIRTY範囲との重複した部分のデータを前記キ
ャッシュメモリ内のワークページにコピーし退避する処
理を行った上で書き込みデータ転送を開始させるホスト
インタフェース制御部内のデータ退避関連制御手段と、
書き込みデータ転送の中断(ホストコンピュータの障害
やホストインタフェースケーブルの障害等による中断)
が生じていないかどうかを監視し、書き込みデータ転送
の中断が発生し、かつ、「ワークページへのデータ退避
済み」である(前記データ退避関連制御手段によるワー
クページへのDIRTYデータの退避が行われている)
と判定した場合に、前記データ退避関連制御手段によっ
て前記キャッシュメモリのワークページに退避されたデ
ータを前記キャッシュメモリのキャッシュページにコピ
ーして復帰させる処理を行い、書き込みデータ転送の中
断が発生し、かつ、「ワークページへのデータ退避済
み」ではないと判定した場合に、書き込み範囲のデータ
を破棄して当該書き込み範囲のデータステートを「NU
LL」に変更するホストインタフェース制御部内のデー
タ復帰関連制御手段と、前記キャッシュメモリ内にDI
RTYデータがあるかどうかを定期的に監視し、DIR
TYデータを見つけた場合には、ホストI/O(ホスト
コンピュータとディスクアレイ装置との間のI/O)と
は非同期に、そのDIRTYデータをディスク装置に書
き込むライトバック処理を行うディスクインタフェース
制御部とを有する。
【0018】なお、本発明のディスクアレイ装置は、よ
り一般的には、キャッシュメモリを搭載したディスクア
レイ装置において、正規のデータ領域であるキャッシュ
ページ群とともに、キャッシュページ内のDIRTYデ
ータを退避するためのワークページ群を備える前記キャ
ッシュメモリと、前記キャッシュメモリにホストコンピ
ュータから転送された書き込みデータを書き込む際に、
前記キャッシュメモリの書き込み範囲にDIRTYデー
タがあった場合に、書き込み範囲とDIRTY範囲との
重複した部分のデータを前記キャッシュメモリ内のワー
クページに退避する処理を行い、書き込みデータ転送の
中断が発生した場合に、前記キャッシュメモリのワーク
ページに退避されたデータを前記キャッシュメモリのキ
ャッシュページに復帰させる処理を行うホストインタフ
ェース制御部と、前記キャッシュメモリ上のDIRTY
データのライトバック処理を行うディスクインタフェー
ス制御部とを有する構成であると表現することができ
る。
【0019】また、本発明は、正規のデータ領域である
キャッシュページ群とともに、キャッシュページ内のD
IRTYデータを退避するためのワークページ群を備え
るキャッシュメモリ,および複数のディスク装置を備え
るディスクアレイ装置を、前記キャッシュメモリにホス
トコンピュータから転送された書き込みデータを書き込
む際に、前記キャッシュメモリの書き込み範囲にDIR
TYデータがあった場合に、書き込み範囲とDIRTY
範囲との重複した部分のデータを前記キャッシュメモリ
内のワークページに退避する処理を行い、書き込みデー
タ転送の中断が発生した場合に、前記キャッシュメモリ
のワークページに退避されたデータを前記キャッシュメ
モリのキャッシュページに復帰させる処理を行うホスト
インタフェース制御部,および前記キャッシュメモリ上
のDIRTYデータのライトバック処理を行うディスク
インタフェース制御部として機能させるためのプログラ
ムとして実現することも可能である。
【0020】
【発明の実施の形態】次に、本発明について図面を参照
して詳細に説明する。
【0021】(1) 第1の実施の形態
【0022】図1は、本発明の第1の実施の形態に係る
ディスクアレイ装置(ディスクアレイ装置2)を含むコ
ンピュータシステムの構成を示すブロック図である。
【0023】図1を参照すると、本実施の形態に係るデ
ィスクアレイ装置(ディスクアレイ装置2)は、ホスト
インタフェースケーブル3によりホストコンピュータ1
に接続されている。
【0024】ディスクアレイ装置2は、ホストインタフ
ェース制御部21と、キャッシュメモリ22と、ディス
クインタフェース制御部23と、複数のディスク装置2
4とを含んで構成されている。
【0025】ホストインタフェース制御部21は、ホス
トコンピュータ1から書き込み要求(データ書き込み要
求)を受けると、キャッシュメモリ22内の書き込みア
ドレスに対応する範囲(書き込み範囲)を有するキャッ
シュページ(書き込み先のキャッシュページ)にホスト
コンピュータ1から転送されたデータ(書き込みデー
タ)を格納する。この時に、当該キャッシュページに格
納されたデータは、ディスク装置24への書き込みが完
了していないデータ(DIRTYデータ)として管理さ
れる。また、ホストインタフェース制御部21は、書き
込みデータ転送が完了した時点で、その旨を示す応答を
ホストコンピュータ1に返す。
【0026】このホストインタフェース制御部21は、
データ退避関連制御手段211と、データ復帰関連制御
手段212とを含んで構成されている。
【0027】キャッシュメモリ22は、キャッシュペー
ジ群(キャッシュページと呼ばれるあるまとまった単位
でデータを記憶する領域に分割されている正規のデータ
領域)と、当該キャッシュページ群の一部(全てのキャ
ッシュページに対応するワークページが存在するわけで
はない)の各キャッシュページ内のDIRTYデータを
退避するための各ワークページ(一時的にデータを記憶
するワーク領域)からなるワークページ群(キャッシュ
ページと1対1に対応するようにワークページが割り当
てられている)と、各キャッシュページにおけるデータ
ステートを管理するための管理領域とを備えている。な
お、管理領域は、具体的には、各キャッシュページにつ
いて、DIRTYデータの開始アドレスおよびデータ長
ならびにCLEANデータの開始アドレスおよびデータ
長(DIRTYデータ/CLEANデータが存在しない
場合にはその旨)を管理している。
【0028】ディスクインタフェース制御部23は、キ
ャッシュメモリ22内にDIRTYデータがあるかどう
かを定期的に監視し、DIRTYデータを見つけた場合
には、ホストI/O(ホストコンピュータ1とディスク
アレイ装置2との間のI/O)とは非同期に、そのDI
RTYデータをディスク装置24に書き込む(この書き
込み処理を「ライトバック処理」と呼ぶ)。これによ
り、キャッシュメモリ22内のDIRTYデータは、デ
ィスク装置24への書き込みが完了したデータ(CLE
ANデータ)になる(データステートが「DIRTY」
から「CLEAN」に変更される)。
【0029】図2は、ホストインタフェース制御部21
の処理を示す流れ図である。この処理は、書き込み先キ
ャッシュページDIRTYデータ有無判定ステップ20
1と、書き込み範囲・DIRTY範囲重複判定ステップ
202と、重複部分データ退避ステップ203と、書き
込みデータ転送開始ステップ204と、書き込みデータ
転送中断発生判定ステップ205と、データステート
「DIRTY」変更ステップ206と、データ退避済み
判定ステップ207と、退避済みDIRTYデータ復帰
ステップ208と、書き込み範囲データ破棄ステップ2
09とからなる。
【0030】図3〜図5は、本実施の形態に係るディス
クアレイ装置(ディスクアレイ装置2)の具体的な動作
を説明するための図(キャッシュメモリ22上の書き込
み先のキャッシュページ(ホストコンピュータ1からの
書き込み要求によって指定された書き込み範囲を有する
キャッシュページ)におけるデータステートの遷移を示
す図)である。
【0031】次に、図1〜図5を参照して、上記のよう
に構成された本実施の形態に係るディスクアレイ装置
(図1中のディスクアレイ装置2)の動作について詳細
に説明する。
【0032】第1に、図2を参照して、ディスクアレイ
装置2内のホストインタフェース制御部21の全体的な
動作について説明する。
【0033】ディスクアレイ装置2内のホストインタフ
ェース制御部21は、ホストインタフェースケーブル3
を介してホストコンピュータ1から書き込み要求を受け
ると、図2に示すような処理を行う。
【0034】初めに、ホストインタフェース制御部21
内のデータ退避関連制御手段211は、当該書き込み要
求に基づいて、以下に示すような処理を行う。
【0035】まず、当該書き込み要求で指定された書き
込み範囲(キャッシュメモリ22上の書き込みアドレス
と書き込みデータ長とによって特定される範囲)が存在
するキャッシュページ(書き込み先のキャッシュペー
ジ)にDIRTYデータが存在するか否かを判定する
(ステップ201)。
【0036】ステップ201で「書き込み先のキャッシ
ュページにDIRTYデータが存在する」と判定した場
合には、書き込み範囲とDIRTY範囲(DIRTYデ
ータの存在する範囲)とが重複しているか否かを判定す
る(ステップ202)。
【0037】ステップ202で「書き込み範囲とDIR
TY範囲とが重複している」と判定した場合には、書き
込み範囲とDIRTY範囲とが重複している部分のDI
RTYデータ(重複部分データ)を所定のワークページ
(当該キャッシュページに対応するワークページ)に退
避する(ステップ203)。
【0038】一方、ステップ201で「書き込み先のキ
ャッシュページにDIRTYデータが存在しない」と判
定した場合,ステップ202で「書き込み範囲とDIR
TY範囲とが重複していない」と判定した場合,または
ステップ203のデータ退避処理が終了した場合には、
当該書き込み要求に関する書き込みデータ転送を開始さ
せる(ステップ204)。
【0039】続いて、ホストインタフェース制御部21
内のデータ復帰関連制御手段212は、ステップ204
で開始された書き込みデータ転送の過程において、以下
に示すような処理を行う。
【0040】まず、当該書き込みデータ転送が完了する
まで、ホストコンピュータ1の障害やホストインタフェ
ースケーブル3の障害等による書き込みデータ転送の中
断が発生していないかどうかを監視(判定)する(ステ
ップ205)。
【0041】ステップ205で「書き込みデータ転送の
中断が発生しなかった」と判定した場合(書き込みデー
タ転送の中断が発生せずに当該書き込みデータ転送が完
了した場合)には、当該書き込み範囲のデータステート
を「DIRTY」に変更する(ステップ206)。
【0042】一方、ステップ205で「書き込みデータ
転送の中断が発生した」と判定した場合には、当該キャ
ッシュページ(書き込み先のキャッシュページ)に対応
するワークページへのDIRTYデータ(重複部分デー
タ)の退避が行われている(「データ退避済み」であ
る)か否かを判定する(ステップ207)。
【0043】ステップ207で「データ退避済みであ
る」と判定した場合には、退避済みのDIRTYデータ
を当該ワークページから当該キャッシュページに復帰さ
せ、当該書き込み範囲のデータステートを「DIRT
Y」および「NULL」(有効なデータがない状態を示
すデータステート)に変更する(ステップ208)。す
なわち、当該書き込み範囲中のデータを復帰した部分の
データステートを「DIRTY」とし、当該書き込み範
囲中のデータを復帰した部分以外の部分(データステー
トが「DIRTY」でなかった部分)のデータステート
を「NULL」とする。
【0044】一方、ステップ207で「データ退避済み
でない」と判定した場合には、当該書き込み範囲のデー
タを破棄して、当該書き込み範囲のデータステートを
「NULL」に変更する(ステップ209)。
【0045】第2に、ディスクアレイ装置2内のディス
クインタフェース制御部23の動作について説明する
(なお、ディスクインタフェース制御部23の動作は従
来技術と同様である)。
【0046】ディスクアレイ装置2内のディスクインタ
フェース制御部23は、キャッシュメモリ22内にDI
RTYデータがあるかどうかを定期的に監視し、DIR
TYデータを見つけた場合には、ホストI/Oとは非同
期に、そのDIRTYデータ(上記のようなホストイン
タフェース制御部21の処理によって書き込みデータ転
送の中断が発生したとしても保護されているDIRTY
データ)をディスク装置24に書き込む処理(ライトバ
ック処理)を行う。
【0047】なお、ディスクインタフェース制御部23
がディスク装置24にDIRTYデータを書き込む(ラ
イトバックする)ことにより、当該DIRTYデータが
存在していた範囲のデータステートは「CLEAN」に
変更される。
【0048】第3に、図3〜図5を参照して、本実施の
形態に係るディスクアレイ装置(ディスクアレイ装置
2)の具体的な動作について説明する。
【0049】ここでは、以下のa〜cの3つの場合につ
いて、キャッシュメモリ22上の書き込み先のキャッシ
ュページにおけるデータステート(データの属性)の遷
移に関する動作について説明する。
【0050】a.初めに、図3を参照して、書き込み先
のキャッシュページ上に有効なデータがない状態(当該
キャッシュページの全範囲のデータステートが「NUL
L」である状態。図3の(a)参照)での当該キャッシ
ュページへのデータ書き込み処理における動作について
説明する。
【0051】この場合には、ホストインタフェース制御
部21は、ホストコンピュータ1から書き込み要求を受
けると、図2のステップ201で「書き込み先のキャッ
シュページにDIRTYデータは存在しない」と判定
し、ホストコンピュータ1からの書き込みデータをデー
タ転送の中断なく当該キャッシュページ上の書き込み範
囲に格納し(図2のステップ204およびステップ20
5参照)、当該書き込み範囲のデータステートを「DI
RTY」に変更する(図2のステップ206および図3
の(b)参照)。
【0052】なお、上記の書き込み処理の後に、ディス
クインタフェース制御部23がディスク装置24にDI
RTYデータを書き込む(ライトバックする)ことによ
り、書き込み先のキャッシュページ上の書き込み範囲の
データステートは「CLEAN」に変更される(図3の
(c)参照)。
【0053】b.続いて、図4を参照して、書き込み先
のキャッシュページ上に有効なデータがない状態(当該
キャッシュページの全範囲のデータステートが「NUL
L」である状態。図4の(a)参照)での当該キャッシ
ュページへのデータ書き込み処理において、書き込みデ
ータ転送が中断した場合における動作について説明す
る。
【0054】従来の技術の説明でも述べたように、書き
込みデータ転送が中断すると、書き込み範囲のデータは
不定となる(図4の(b)における「×××××」参
照)。
【0055】本実施の形態、ひいては本発明では、この
場合に、ホストインタフェース制御部21が、書き込み
範囲を有するキャッシュページ(書き込み先のキャッシ
ュページ)中の当該書き込み範囲のデータを破棄する
(当該書き込み範囲のデータステートを「NULL」に
変更する)(図2のステップ209および図4の(c)
参照)。
【0056】これにより、ディスクインタフェース制御
部23による当該データに対するディスク装置24への
ライトバック処理が実施されないので、ディスク装置2
4に格納されている当該データの内容は保持される(従
来の技術では「ディスク装置24に訂正不能データが格
納されること」になっていたが、本発明ではそのような
ことがない)。
【0057】c.最後に、図5を参照して、書き込み先
のキャッシュページの書き込み範囲にすでにDIRTY
データが存在している状態での当該キャッシュページへ
のデータ書き込み処理において、書き込みデータ転送が
中断した場合における動作について説明する。
【0058】この場合(書き込み先のキャッシュページ
の書き込み範囲にすでにDIRTYデータが存在してい
た場合)には、ホストインタフェース制御部21は、ま
ず書き込み範囲とDIRTY範囲との重複する部分のデ
ータ(重複部分データ。図5中の「DIRTY(2)」
で示す範囲のDIRTYデータ)をキャッシュメモリ2
2内の所定のワークページ(当該キャッシュページに対
応するワークページ)にコピーして退避しておく(図2
のステップ203および図5の(a)参照)。
【0059】上記の退避コピーが完了すると、ホストコ
ンピュータ1からの書き込みデータの書き込み先のキャ
ッシュページへのデータ転送が開始される(図2のステ
ップ204参照)。
【0060】図5の場合には、この書き込みデータ転送
が中断することになるので、ホストインタフェース制御
部21は、上記のワークページに退避しておいたデータ
を当該キャッシュページにコピーして復帰させる(図2
のステップ208および図5の(b)参照)。
【0061】上記の復帰コピーが完了すると、データを
復帰した部分のデータステートは「DIRTY」に変更
され、書き込み範囲ではあるがDIRTY範囲ではなか
った部分のデータステートは「NULL」に変更される
(図5の(c)参照)。
【0062】これにより、書き込みデータ転送を行う以
前にキャッシュメモリ22上に存在したDIRTYデー
タ(ディスク装置24への書き込みが完了していなかっ
たデータ)の内容は、書き込みデータ転送が中断した場
合でも保持されることになる。
【0063】そして、ディスクインタフェース制御部2
3が当該DIRTYデータをディスク装置24に書き込
むこと(ライトバック処理を行うこと)により、当該キ
ャッシュページ中の当該書き込み範囲のデータステート
は「CLEAN」に変更される(図5の(d)参照)。
【0064】(2) 第2の実施の形態
【0065】図6は、本発明の第2の実施の形態の構成
を示すブロック図である。
【0066】図6を参照すると、本発明の第2の実施の
形態は、図1に示した第1の実施の形態に対して、デー
タ保護機能実現プログラム600を備える点が異なって
いる。
【0067】データ保護機能実現プログラム600は、
キャッシュメモリ22および複数のディスク装置24を
備えるディスクアレイ装置2に読み込まれ、当該ディス
クアレイ装置2の動作をホストインタフェース制御部2
1(データ退避関連制御手段211およびデータ復帰関
連制御手段212)およびディスクインタフェース制御
部23として制御する。データ保護機能実現プログラム
600の制御によるディスクアレイ装置2(ホストイン
タフェース制御部21およびディスクインタフェース制
御部23)の動作は、第1の実施の形態におけるディス
クアレイ装置2の動作と全く同様になるので、その詳し
い説明を割愛する。
【0068】(3) 上記の実施の形態の変形(拡張)
形態
【0069】上記の第1および第2の実施の形態に対し
ては、以下のa〜cに示すような変形(拡張)形態を考
えることができる(各変形形態を併有する形態も可能で
ある)。
【0070】a.上記の実施の形態では、ある書き込み
要求に対する書き込み先のキャッシュページは1つのキ
ャッシュページであるとして説明した。しかし、書き込
み範囲が複数のキャッシュページにまたがり、複数のキ
ャッシュページが「書き込み先のキャッシュページ」に
該当することになることも可能である。
【0071】b.上記の実施の形態では、キャッシュメ
モリ22内の管理領域の内容は、各キャッシュページに
ついて、DIRTYデータの開始アドレスおよびデータ
長ならびにCLEANデータの開始アドレスおよびデー
タ長(DIRTYデータ/CLEANデータが存在しな
い場合にはその旨)を管理するものであった。しかし、
管理領域の内容は、各キャッシュページにおけるデータ
ステートの「DIRTY」,「CLEAN」,および
「NULL」の範囲が分かるものであれば、上記の内容
に限定されるものではない。
【0072】c.上記の実施の形態では、キャッシュメ
モリ22内の各ワークページは、いずれかのキャッシュ
ページに1対1に対応していた。これは、DIRTYデ
ータの退避/復帰処理における制御の内容を複雑にしな
いためである。しかし、ワークページはキャッシュペー
ジ中の重複部分データ(書き込み範囲とDIRTY範囲
との重複する部分のDIRTYデータ)を退避できるも
のであればよく、必ずしもワークページの全領域とキャ
ッシュページの全領域とが1対1に対応している必要は
ない。
【0073】
【発明の効果】以上説明したように、本発明によれば、
ホストコンピュータからの書き込みデータ転送が中断し
た場合でも、キャッシュメモリ内の書き込み先のキャッ
シュページ中の書き込み範囲にDIRTYデータ(ディ
スク装置への書き込みが完了していないデータ)が存在
していたか否かにかかわらず、当該書き込みデータ転送
の中断が発生する以前のデータを保護することができ
る。
【0074】これにより、ホストコンピュータのアプリ
ケーションは磁気テープ装置等のバックアップ装置から
データを復旧する必要がなくなるので、障害発生時の復
旧作業に要する時間を短縮することができるという効果
が生じる。
【0075】また、本発明は、キャッシュメモリ上の一
部をワークページ群(データ退避用のワーク領域)とし
て使用するだけで実現できるので、新たなハードウェア
を追加することなく安価に上記の効果を実現することが
できる。
【0076】さらに、本発明によれば、キャッシュメモ
リ内の書き込み先のキャッシュページの書き込み範囲に
DIRTYデータが存在した場合のみデータを退避すれ
ば足りるので、書き込み要求がある度に毎回退避する方
式に比べて書き込み性能の低下を小さくすることができ
るという効果が生じる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るディスクアレ
イ装置を含むコンピュータシステムの構成を示すブロッ
ク図である。
【図2】図1中のディスクアレイ装置内のホストインタ
フェース制御部の処理を示す流れ図である。
【図3】本発明の第1の実施の形態に係るディスクアレ
イ装置の具体的な動作を説明するための図である。
【図4】本発明の第1の実施の形態に係るディスクアレ
イ装置の具体的な動作を説明するための図である。
【図5】本発明の第1の実施の形態に係るディスクアレ
イ装置の具体的な動作を説明するための図である。
【図6】本発明の第2の実施の形態の構成を示すブロッ
ク図である。
【図7】従来のディスクアレイ装置の動作を説明するた
めの図である。
【図8】従来のディスクアレイ装置の動作を説明するた
めの図である。
【符号の説明】
1 ホストコンピュータ 2 ディスクアレイ装置 3 ホストインタフェースケーブル 21 ホストインタフェース制御部 22 キャッシュメモリ 23 ディスクインタフェース制御部 24 ディスク装置 211 データ退避関連制御手段 212 データ復帰関連制御手段 600 データ保護機能実現プログラム

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 キャッシュメモリを搭載したディスクア
    レイ装置において、正規のデータ領域であるキャッシュ
    ページ群とともに、キャッシュページ内のDIRTYデ
    ータを退避するためのワークページ群を備える前記キャ
    ッシュメモリと、前記キャッシュメモリにホストコンピ
    ュータから転送された書き込みデータを書き込む際に、
    前記キャッシュメモリの書き込み範囲にDIRTYデー
    タがあった場合に、書き込み範囲とDIRTY範囲との
    重複した部分のデータを前記キャッシュメモリ内のワー
    クページに退避する処理を行い、書き込みデータ転送の
    中断が発生した場合に、前記キャッシュメモリのワーク
    ページに退避されたデータを前記キャッシュメモリのキ
    ャッシュページに復帰させる処理を行うホストインタフ
    ェース制御部と、前記キャッシュメモリ上のDIRTY
    データのライトバック処理を行うディスクインタフェー
    ス制御部とを有することを特徴とするディスクアレイ装
    置。
  2. 【請求項2】 キャッシュメモリを搭載したディスクア
    レイ装置において、正規のデータ領域であるキャッシュ
    ページ群と、キャッシュページ内のDIRTYデータを
    退避するためのワークページ群と、各キャッシュページ
    におけるデータステートを管理するための管理領域とを
    備える前記キャッシュメモリと、ホストコンピュータか
    ら書き込み要求を受けると、前記キャッシュメモリにホ
    ストコンピュータから転送された書き込みデータを書き
    込み、そのデータ書き込み時に前記キャッシュメモリの
    書き込み範囲にDIRTYデータがあった場合に、書き
    込み範囲とDIRTY範囲との重複した部分のデータを
    前記キャッシュメモリ内のワークページにコピーし退避
    する処理を行った上で書き込みデータ転送を開始させる
    ホストインタフェース制御部内のデータ退避関連制御手
    段と、書き込みデータ転送の中断が生じていないかどう
    かを監視し、書き込みデータ転送の中断が発生し、か
    つ、「ワークページへのデータ退避済み」であると判定
    した場合に、前記データ退避関連制御手段によって前記
    キャッシュメモリのワークページに退避されたデータを
    前記キャッシュメモリのキャッシュページにコピーして
    復帰させる処理を行い、書き込みデータ転送の中断が発
    生し、かつ、「ワークページへのデータ退避済み」では
    ないと判定した場合に、書き込み範囲のデータを破棄し
    て当該書き込み範囲のデータステートを「NULL」に
    変更するホストインタフェース制御部内のデータ復帰関
    連制御手段と、前記キャッシュメモリ内にDIRTYデ
    ータがあるかどうかを定期的に監視し、DIRTYデー
    タを見つけた場合には、ホストI/Oとは非同期に、そ
    のDIRTYデータをディスク装置に書き込むライトバ
    ック処理を行うディスクインタフェース制御部とを有す
    ることを特徴とするディスクアレイ装置。
  3. 【請求項3】 各キャッシュページについてDIRTY
    データの開始アドレスおよびデータ長ならびにCLEA
    Nデータの開始アドレスおよびデータ長を有する管理領
    域を備えることを特徴とする請求項2記載のディスクア
    レイ装置。
  4. 【請求項4】 あるキャッシュページの全領域と当該キ
    ャッシュページのDIRTYデータを退避するためのワ
    ークページの全領域とが1対1に対応していることを特
    徴とする請求項1,請求項2,または請求項3記載のデ
    ィスクアレイ装置。
  5. 【請求項5】 正規のデータ領域であるキャッシュペー
    ジ群とともに、キャッシュページ内のDIRTYデータ
    を退避するためのワークページ群を備えるキャッシュメ
    モリ,および複数のディスク装置を備えるディスクアレ
    イ装置を、前記キャッシュメモリにホストコンピュータ
    から転送された書き込みデータを書き込む際に、前記キ
    ャッシュメモリの書き込み範囲にDIRTYデータがあ
    った場合に、書き込み範囲とDIRTY範囲との重複し
    た部分のデータを前記キャッシュメモリ内のワークペー
    ジに退避する処理を行い、書き込みデータ転送の中断が
    発生した場合に、前記キャッシュメモリのワークページ
    に退避されたデータを前記キャッシュメモリのキャッシ
    ュページに復帰させる処理を行うホストインタフェース
    制御部,および前記キャッシュメモリ上のDIRTYデ
    ータのライトバック処理を行うディスクインタフェース
    制御部として機能させるためのプログラム。
  6. 【請求項6】 正規のデータ領域であるキャッシュペー
    ジ群と、キャッシュページ内のDIRTYデータを退避
    するためのワークページ群と、各キャッシュページにお
    けるデータステートを管理するための管理領域とを備え
    るキャッシュメモリ,および複数のディスク装置を備え
    るディスクアレイ装置を、ホストコンピュータから書き
    込み要求を受けると、前記キャッシュメモリにホストコ
    ンピュータから転送された書き込みデータを書き込み、
    そのデータ書き込み時に前記キャッシュメモリの書き込
    み範囲にDIRTYデータがあった場合に、書き込み範
    囲とDIRTY範囲との重複した部分のデータを前記キ
    ャッシュメモリ内のワークページにコピーし退避する処
    理を行った上で書き込みデータ転送を開始させるホスト
    インタフェース制御部内のデータ退避関連制御手段,書
    き込みデータ転送の中断が生じていないかどうかを監視
    し、書き込みデータ転送の中断が発生し、かつ、「ワー
    クページへのデータ退避済み」であると判定した場合
    に、前記データ退避関連制御手段によって前記キャッシ
    ュメモリのワークページに退避されたデータを前記キャ
    ッシュメモリのキャッシュページにコピーして復帰させ
    る処理を行い、書き込みデータ転送の中断が発生し、か
    つ、「ワークページへのデータ退避済み」ではないと判
    定した場合に、書き込み範囲のデータを破棄して当該書
    き込み範囲のデータステートを「NULL」に変更する
    ホストインタフェース制御部内のデータ復帰関連制御手
    段,および前記キャッシュメモリ内にDIRTYデータ
    があるかどうかを定期的に監視し、DIRTYデータを
    見つけた場合には、ホストI/Oとは非同期に、そのD
    IRTYデータをディスク装置に書き込むライトバック
    処理を行うディスクインタフェース制御部として機能さ
    せるためのプログラム。
JP2001246442A 2001-08-15 2001-08-15 ディスクアレイ装置 Expired - Fee Related JP3610574B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001246442A JP3610574B2 (ja) 2001-08-15 2001-08-15 ディスクアレイ装置
US10/216,564 US6931485B2 (en) 2001-08-15 2002-08-12 Disk array apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001246442A JP3610574B2 (ja) 2001-08-15 2001-08-15 ディスクアレイ装置

Publications (2)

Publication Number Publication Date
JP2003058324A true JP2003058324A (ja) 2003-02-28
JP3610574B2 JP3610574B2 (ja) 2005-01-12

Family

ID=19075990

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001246442A Expired - Fee Related JP3610574B2 (ja) 2001-08-15 2001-08-15 ディスクアレイ装置

Country Status (2)

Country Link
US (1) US6931485B2 (ja)
JP (1) JP3610574B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163310A (ja) * 2007-12-28 2009-07-23 Nec Corp ディスクアレイ装置、物理ディスク復帰方法、および物理ディスク復帰プログラム
JP2010165280A (ja) * 2009-01-19 2010-07-29 Nec Corp 補助記憶装置
JP2011008518A (ja) * 2009-06-25 2011-01-13 Nec Computertechno Ltd メモリ初期化回路、メモリ初期化方法、及び情報処理装置
WO2015052798A1 (ja) * 2013-10-09 2015-04-16 株式会社日立製作所 ストレージシステム及び記憶制御方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4219633B2 (ja) * 2002-07-25 2009-02-04 株式会社日立製作所 記憶装置システムのデステージ方法、ディスク制御装置、記憶装置システム、及びプログラム
US20090100290A1 (en) * 2005-08-22 2009-04-16 Matsushita Electric Industrial Co., Ltd. Memory controller, nonvolatile memory device, nonvolatile memory system, and data writing method
US9798623B2 (en) * 2012-05-11 2017-10-24 Seagate Technology Llc Using cache to manage errors in primary storage
US20170177276A1 (en) * 2015-12-21 2017-06-22 Ocz Storage Solutions, Inc. Dual buffer solid state drive
US9910619B2 (en) 2015-12-21 2018-03-06 Toshiba Memory Corporation Dual buffer solid state drive
US9933947B1 (en) * 2015-12-30 2018-04-03 EMC IP Holding Company LLC Maintaining write consistency on distributed multiple page writes
US10956318B2 (en) * 2018-06-19 2021-03-23 Macronix International Co., Ltd. Overlapping ranges of pages in memory systems

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5241669A (en) 1992-04-20 1993-08-31 International Business Machines Corporation Method and system for sidefile status polling in a time zero backup copy process
JPH07210439A (ja) 1993-12-03 1995-08-11 Hitachi Ltd 記憶装置
JP3457394B2 (ja) 1994-09-16 2003-10-14 株式会社東芝 情報記憶装置
JP3204143B2 (ja) * 1997-01-06 2001-09-04 日本電気株式会社 ディスクキャッシュの制御方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009163310A (ja) * 2007-12-28 2009-07-23 Nec Corp ディスクアレイ装置、物理ディスク復帰方法、および物理ディスク復帰プログラム
JP2010165280A (ja) * 2009-01-19 2010-07-29 Nec Corp 補助記憶装置
JP2011008518A (ja) * 2009-06-25 2011-01-13 Nec Computertechno Ltd メモリ初期化回路、メモリ初期化方法、及び情報処理装置
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
JP3610574B2 (ja) 2005-01-12
US20030037207A1 (en) 2003-02-20
US6931485B2 (en) 2005-08-16

Similar Documents

Publication Publication Date Title
CN102792276B (zh) 闪速复制级联中的缓冲磁盘
US7966463B2 (en) Asynchronous remote copy system and control method for the same
US7395378B1 (en) System and method for updating a copy-on-write snapshot based on a dirty region log
JP4041473B2 (ja) マルチクラスタ・ストレージ・サブシステムのための自律型パワー・ロス・リカバリ
JP4385215B2 (ja) スナップショットシミュレーション機能を有するディスクアレイ装置
JP5534024B2 (ja) ストレージ制御装置およびストレージ制御方法
KR19980024086A (ko) 컴퓨터 시스템 및 화일 관리 방법
JP2004086721A (ja) データ複製システム、中継装置、データ送受信方法およびストレージ内のデータを複製するためのプログラム
JP3610574B2 (ja) ディスクアレイ装置
JPH1195933A (ja) ディスクアレイ装置
JP2010536112A (ja) 中断された書込みの回復のためのデータ記憶方法、機器およびシステム
JP2023050384A (ja) ストレージシステム及びデータ復旧方法
JPH0981464A (ja) 計算機システムのメモリ障害回復方法および回復システム
JP3043662B2 (ja) データバックアップ方式
JPH07219802A (ja) 2重化制御方式
JPH07319637A (ja) ディスク装置の制御装置およびディスク装置の制御方 法
JP3602001B2 (ja) ディスク装置のデータファイル二重化制御システム
JP4565860B2 (ja) データバックアップシステム
JPH11154058A (ja) ディスクアレイ装置及びデータ保守方法
JPH06131123A (ja) 計算機の外部記憶装置
JPH10240620A (ja) コンピュータシステムおよび同システムにおけるチェックポイントイメージ保存方法
JP3463696B2 (ja) オンラインガーベッジコレクション処理方法
JP4161362B2 (ja) データリカバリ機能を備えたコンピュータシステム及びデータリカバリ方法
JPH0259837A (ja) データリカバリ処理方式
JPH05233466A (ja) 二重化補助記憶装置の障害回復方式

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040630

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041010

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20081029

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091029

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20101029

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20111029

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121029

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20131029

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees