JP2003186628A - ディスクアレイ装置及びデータバックアップ方法 - Google Patents

ディスクアレイ装置及びデータバックアップ方法

Info

Publication number
JP2003186628A
JP2003186628A JP2001384821A JP2001384821A JP2003186628A JP 2003186628 A JP2003186628 A JP 2003186628A JP 2001384821 A JP2001384821 A JP 2001384821A JP 2001384821 A JP2001384821 A JP 2001384821A JP 2003186628 A JP2003186628 A JP 2003186628A
Authority
JP
Japan
Prior art keywords
data
disk array
storage device
mass storage
address
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
JP2001384821A
Other languages
English (en)
Other versions
JP3526452B2 (ja
Inventor
Haruo Tomita
治男 冨田
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001384821A priority Critical patent/JP3526452B2/ja
Priority to US10/231,349 priority patent/US6898669B2/en
Publication of JP2003186628A publication Critical patent/JP2003186628A/ja
Application granted granted Critical
Publication of JP3526452B2 publication Critical patent/JP3526452B2/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/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1469Backup restoration techniques
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • 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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1456Hardware arrangements for backup

Abstract

(57)【要約】 【課題】アドレス変換テーブルを利用して有効な論理ア
ドレスに対応するデータのみをバックアップ対象とする
ことで、高速バックアップを実現する。 【解決手段】ディスクアレイ装置1の制御装置11は、
バックアップ処理の開始時に、アドレス変換テーブル1
32のコピー221を生成する。制御装置11はアドレ
ス変換テーブルのコピー221に従って有効な論理アド
レスを検索して、その有効な論理アドレスに対応する物
理アドレスのデータブロックが含まれる物理ストライプ
をディスクアレイ12から読み込み、その物理ストライ
プ中の有効な論理アドレスに対応するデータブロックの
データを大容量記憶装置3に書き込む。制御装置11
は、書き込まれたデータブロックの論理アドレスと当該
記憶装置3上の物理アドレスとを含む制御情報を制御テ
ーブル223に登録し、データバックアップ後に当該テ
ーブル223の情報を大容量記憶装置3に書き込む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のディスク装
置から構成されるディスクアレイを備え、ログ構造化フ
ァイルシステム(Log-Structured File System)を適用
するディスクアレイ装置に係り、特にディスクアレイに
記録されたデータのバックアップに好適なディスクアレ
イ装置及びデータバックアップ方法に関する。
【0002】
【従来の技術】従来からログ構造化ファイルシステムと
呼ばれるディスク記憶管理方法が知られている。ログ構
造化ファイルシステムについては、例えば以下の文
献、"The Design and Implementation of a Log Struct
ured File System",Mendel Rosenblum and John K.Oust
erhout,ACM Transaction on Computer Systems,Februar
y 1992に詳細に記載されている。この文献に記載された
ログ構造化ファイルシステムを要約すると、更新後のデ
ータを、複数個まとめて有効なデータが格納されていな
い別の連続領域に書き込み、更新前に、当該データが格
納されていた領域を無効にする方法である。
【0003】また、米国特許第6,219,752号公
報及び米国特許第6,233,648号公報には、ログ
構造化ファイルシステムをディスクアレイ装置に適用し
た技術(以下、先行技術と称する)が開示されている。
この先行技術においては、ホストコンピュータからのア
クセス要求で指定された論理アドレス(ホストコンピュ
ータからみたディスクアレイ上のデータアドレス)を、
ディスクアレイにおける物理的なデータの位置を示す物
理アドレスに変換するにのにアドレス変換テーブルが用
いられる。
【0004】さて、この種のディスクアレイは、ディス
ク単体の障害に対しては、冗長化ディスク構成を適用す
ることで対処可能であるものの、オペレータの誤操作や
コンピュータウイルス感染等によるデータの喪失や改変
に対しては対処することが困難である。そこで、これら
の諸問題に対処するために、定期的にディスクアレイ上
のデータを、そのまま大容量記憶装置(磁気テープ装置
やディスク装置)にコピーする、いわゆるイメージバッ
クアップを行って、万が一の場合に備える必要がある。
もし、ディスクアレイ上のデータの喪失や改変に遭遇し
た場合、大容量記憶装置にバックアップされているデー
タ、つまりディスクアレイのイメージバックアップデー
タを当該ディスクアレイにリストアする。
【0005】
【発明が解決しようとする課題】上記したように従来
は、ディスクアレイのデータを大容量記憶装置にバック
アップするのに、ディスクアレイのデータをそのまま大
容量記憶装置にコピーするイメージバックアップ方法を
適用している。このため、バックアップ処理に要する時
間は、ディスクアレイのデータ容量に依存し、容量が大
きくなるほど長くなる。したがって、今後ディスクアレ
イの大容量化が一層進むことを考慮すると、上記従来方
法は問題である。
【0006】そこで、効率良くバックアップを実施する
ために、ファイルシステムやディスクアレイ装置用のデ
ィバイスドライバに変更を加え、ファイルシステムにと
って有効なデータのみをバックアップの対象とする方法
が考えられる。しかし、この方法は、ディスクアレイ装
置がOS(オペレーティングシステム)に依存するた
め、OSにディスクアレイ装置とOSとの間のインター
フェースを追加するか、OSやファイルシステムの内部
構造が公開されている必要がある。更に、各OS毎にデ
ィスクアレイ装置を用意する必要があり、OSが異なる
場合のディスクアレイ装置間での互換性にも問題があ
る。
【0007】一方、ログ構造化ファイルシステムでは、
書き込みを行う分だけ、ディスクアレイ上にデータの記
録されていない連続領域が必要である。そのため、無効
になった領域を移動して、連続した無効領域を作成す
る、セグメントクリーニングと呼ばれる処理を頻繁に行
う必要がある。そこで、ディスクアレイ装置のデータを
バックアップする際にセグメントクリーニング処理を実
施するには特別な配慮が必要とされている。
【0008】例えば、特開平11−120055号公報
には、ファイルシステムに対する変更を不要とする、シ
ステム稼動中のスナップショット作成方式が開示されて
いる。この公報記載の方式は、まとめ書き途中のストラ
イプでも空き領域への格納を行い、スナップショット作
成時のタイムスタンプをデータ領域とは別の領域に保存
し、データをリストアする場合に記録されたタイムスタ
ンプからアドレス変換テーブルを再構築することで高速
なスナップショット採取を実現している。
【0009】このように、特開平11−120055号
公報に記載された先行技術では、スナップショットを作
成する場合にはディスクアレイ装置に対する入出力が最
小限に制限されるので高速なスナップショットが作成で
きる。しかし、この先行技術では、データをリストアす
る場合には、記録されたタイムスタンプからアドレス変
換テーブルの再構築が必要となる。このアドレス変換テ
ーブルの再構築処理に必要な時間は、ディスクアレイの
データ容量に依存し、当該容量に比例して多く必要とな
るため問題である。
【0010】本発明は上記事情を考慮してなされたもの
でその目的は、アドレス変換テーブルを利用して有効な
論理アドレスに対応するデータのみをバックアップ対象
とすることでデータバックアップに要する時間を短縮
し、これによりファイルシステムやディスクアレイ装置
用のディバイスドライバに一切の変更を加えることなく
高速なバックアップが実現できるディスクアレイ装置及
びデータバックアップ方法を提供することにある。
【0011】
【課題を解決するための手段】本発明の第1の観点によ
れば、複数のディスク装置から構成されるディスクアレ
イを備え、ホストコンピュータからの書き込み要求の指
定するデータをブロック単位に分割して書き込みバッフ
ァに詰めて蓄積し、当該バッファに所定のブロック数の
データが蓄積された段階で、その所定のブロック数のデ
ータを含む1ストライプ分のデータが、上記ディスクア
レイ内の複数のディスク装置上の更新されるべきデータ
を保持している領域とは別の空き領域内の物理的に連続
する領域に書き込まれるディスクアレイ装置が提供され
る。このディスクアレイ装置は、ホストコンピュータか
らの論理アドレスをディスクアレイの物理アドレスに変
換するアドレス変換情報が記憶されたアドレス変換テー
ブルと、ディスクアレイのデータを大容量記憶装置にバ
ックアップするバックアップ処理の開始時に、その時点
における上記アドレス変換テーブルのコピーを生成する
手段と、上記コピーされたアドレス変換テーブルに従っ
て有効な論理アドレスを検索する手段と、この検索され
た前記有効な論理アドレスに対応する物理アドレスのデ
ータブロックが含まれる物理ストライプをディスクアレ
イから読み込む手段と、この読み込まれた物理ストライ
プ中の前記有効な論理アドレスに対応する前記データブ
ロックのデータを大容量記憶装置に書き込む手段と、こ
の大容量記憶装置に書き込まれた前記データブロックの
論理アドレスと当該大容量記憶装置上の物理アドレスと
を含む制御情報を記憶する制御情報記憶手段と、上記制
御情報記憶手段に記憶されている全ての制御情報を大容
量記憶装置に書き込む手段とを備えている。
【0012】このような構成のディスクアレイ装置にお
いては、アドレス変換テーブルを利用して、有効な論理
ブロックの論理アドレスが検索され、その有効な論理ア
ドレスに対応する物理アドレスの物理ブロックが含まれ
る物理ストライプのみがディスクアレイから読み込まれ
る。そしてディスクアレイから読み込まれた物理ストラ
イプ中の有効な論理アドレスに対応するデータブロック
のデータだけが大容量記憶装置にバックアップされる。
【0013】このように第1の観点に係るディスクアレ
イ装置によれば、アドレス変換テーブルを利用して有効
な論理アドレスに対応するデータのみをバックアップ対
象とすることにより、データバックアップに要する時間
を短縮することができる。しかも、アドレス変換テーブ
ルを利用して有効な論理アドレスを検索することから、
ファイルシステムやディスクアレイ装置用のディバイス
ドライバに一切の変更を加えることなく高速なバックア
ップが実現できる。
【0014】また、第1の観点に係るディスクアレイ装
置においては、大容量記憶装置に書き込まれたデータブ
ロックの論理アドレスと当該大容量記憶装置上の物理ア
ドレスとを含む制御情報が所定の制御情報記憶手段に登
録され、この制御情報記憶手段に登録されている全ての
制御情報が当該大容量記憶装置に書き込まれることか
ら、当該大容量記憶装置に書き込まれている制御情報を
用いることで、当該大容量記憶装置にバックアップされ
たデータをディスクアレイに容易にリストアすることが
可能となる。しかも、大容量記憶装置にバックアップさ
れたデータは、従来のイメージバックアップと異なって
有効な論理アドレスのデータだけであるため、高速なデ
ータリストアが可能となり、且つリストア処理の終了後
はセグメントクリーニングが完了した状態となる。つま
り、リストア処理だけでセグメントクリーニングも自動
で同時に実行できる。
【0015】本発明の第2の観点に係るディスクアレイ
装置は、第1の観点に係るディスクアレイ装置とは異な
って、コピーさらたアドレス変換テーブルの各アドレス
変換情報を物理アドレスの順番にソートする手段と、こ
のコピー&ソート後のアドレス変換テーブルに従って物
理アドレスの順番に対応する物理ストライプをディスク
アレイから順次読み込む手段と、この読み込み手段によ
る読み込みの対象となっている物理ストライプを、セグ
メントクリーニングの対象外とする物理的に連続する物
理ストライプ列の先頭の物理ストライプとして管理する
手段とを備え、上記読み込み手段により読み込まれた物
理ストライプ中の有効な論理アドレスに対応するデータ
ブロックのデータを大容量記憶装置に書き込む構成とし
たことを特徴とする。
【0016】第1の観点に係るディスクアレイ装置によ
れば、物理ストライプ番号の順番に対応する物理ストラ
イプが処理されて、当該物理ストライプ中の有効な論理
アドレスに対応するデータのみを対象とするバックアッ
プが行われる。このため、バックアップ処理済みの物理
ストライプはディスクアレイ上で物理的に連続してい
る。よって、現在読み込み手段による読み込みの対象と
なっている物理ストライプを、セグメントクリーニング
の対象外とする物理的に連続する物理ストライプ列の先
頭の物理ストライプとして管理するだけで、バックアッ
プ未実施の物理ストライプ列をセグメントクリーニング
から保護すると共に、バックアップ実施済みの物理スト
ライプ列をセグメントクリーニングの対象とすることが
でき、オンラインバックアップ処理が簡単に実現でき
る。
【0017】なお、以上のディスクアレイ装置に係る本
発明は、ディスクアレイを制御する制御装置(ディスク
アレイコントローラ)に係る発明としても、ディスクア
レイ装置を備えたコンピュータシステムに係る発明とし
ても、更にはディスクアレイに記録されたデータを大容
量記憶装置にバックアップするデータバックアップ方法
に係る発明としても、或いはディスクアレイに記録され
たデータを大容量記憶装置にバックアップすると共に、
大容量記憶装置にバックアップされたデータをディスク
アレイにリストアするデータバックアップ・リストア方
法に係る発明としても成立する。
【0018】また、本発明は、コンピュータに当該発明
に相当する手順を実行させるためのプログラムに係る発
明としても成立する。
【0019】
【発明の実施の形態】以下、本発明の実施の形態につき
図面を参照して説明する。図1は、本発明の一実施形態
に係るディスクアレイ装置を備えたコンピュータシステ
ムの構成を示すブロック図である。
【0020】図1に示すコンピュータシステムは、ディ
スクアレイ装置1と、当該ディスクアレイ装置1を利用
するホストコンピュータ2と、ディスクアレイ装置1の
バックアップデータを記録する磁気テープ等の大容量記
憶装置3とから構成される。
【0021】ディスクアレイ装置1は、制御装置11
と、当該制御装置11に接続されたディスクアレイ12
と、当該制御装置11に接続された不揮発性メモリ13
とから構成される。ディスクアレイ12は、複数のディ
スク装置、例えば、図では3台のディスク装置21,2
2,23から構成される。なお、不揮発性メモリ13に
代えて、揮発性メモリと、電源オフ時に当該揮発性メモ
リの記憶内容が消失するのを防止するための電池等のメ
モリバックアップ機構とから構成されるメモリ装置を用
いることも可能である。
【0022】ホストコンピュータ2は、当該ホストコン
ピュータ2の中枢をなすCPU21と、OS(オペレー
ティングシステム)及び各種アプリケーションプログラ
ム等が格納される主記憶装置22とから構成される。こ
のホストコンピュータ2からは、ディスクアレイ装置1
は1つの論理的なディスク装置としてみえる。
【0023】図2は、図1中のホストコンピュータ2に
おけるディスクアレイ装置1に関係するソフトウエア構
成を示すブロック図である。ディスクアレイ装置1を利
用するアプリケーションプログラム201-1〜201-
n、並びにディスクアレイ装置1のデータのバックアッ
プ、及びバックアップデータのディスクアレイ装置1へ
のリストアを司るバックアップ&リストアプログラム2
02からの要求は、ファイルシステム203及びディス
クアレイ装置1用のディバイスドライバ204を経由し
てディスクアレイ装置1に通知され、当該ディスクアレ
イ装置1がアクセスされる。
【0024】なお、本実施形態では、図1及び図2に示
す構成を中心として説明するが、当該技術分野に属する
熟練者にとって、それらの詳しい細部の説明がなくて
も、図1または図2に示す構成から派生する他のコンピ
ュータシステムの構成であっても、本発明を実施できる
ことは明らかである。
【0025】ここで、図1の構成の詳細な説明の前に、
本実施形態の説明で用いる用語について説明する。 a)論理ブロック 論理ブロックとは、ホストコンピュータ2からみたデー
タブロック、更に詳細に述べるならば、ホストコンピュ
ータ2からみたディスクアレイ12における論理的なデ
ィスク領域上のデータブロックを示す。 b)物理ブロック 物理ブロックとは、ディスクアレイ12上の物理的なブ
ロック、更に詳細に述べるならば、ディスクアレイ12
における物理的なディスク領域上のデータブロックを示
す。データブロック(論理ブロック、物理ブロック)の
サイズは予め定められており、一定である。
【0026】c)論理アドレス 論理アドレスとは、ホストコンピュータ2からみたディ
スクアレイ(ディスク装置)12上のデータアドレスを
示す。ここでは、論理アドレスは、ディスクアレイ12
における論理的なディスク領域上のデータブロックの位
置、つまり論理ブロックの位置を示す論理ブロックアド
レスとして用いられる。
【0027】d)物理アドレス 物理アドレスとは、ディスクアレイ12上のデータ(デ
ータブロック)の物理的位置を示すために使用する。こ
こでは、物理アドレスは、ディスクアレイ12(を構成
するディスク装置)上のデータブロックの物理的位置、
つまり物理ブロックの位置を示す物理ブロックアドレス
であり、後述する物理ストライプ番号と物理ブロック番
号とから構成される。
【0028】e)論理アドレスタグ 論理アドレスタグとは、各論理ブロックに対する論理ア
ドレスとタイムスタンプからなる情報群を示す。 f)パリティブロック パリティブロックとは、複数の論理ブロックに対応する
冗長データを格納するためのデータブロックを意味す
る。 g)論理アドレスタグブロック 論理アドレスタグブロックとは、論理アドレスタグから
ならデータブロックを意味する。
【0029】h)論理ブロック番号 論理ブロック番号とは、ホストコンピュータ2からみた
ディスクアレイ12上のデータブロックの番号を示す。 i)物理ブロック番号 物理ブロック番号とは、ディスクアレイ12上の後述す
る物理ストライプ内のデータブロックの相対位置を示す
番号であり、ディスクアレイ12を構成するディスク装
置に固有の番号である。
【0030】ディスクアレイ装置1内の不揮発性メモリ
13には、書き込みバッファ131、及びアドレス変換
テーブル132が配置される。書き込みバッファ131
は、ディスクアレイ12に書き込むデータをログ構造化
して保持するのに用いられる。アドレス変換テーブル1
32は、ホストコンピュータ2からみたディスクアレイ
(ディスク装置)12上のデータアドレス(データブロ
ックアドレス)、つまり論理アドレス(論理ブロックア
ドレス)を、ディスクアレイ12における物理的なデー
タ(データブロック)の位置を示すアドレス、つまり物
理アドレス(物理ブロックアドレス)に変換するのに用
いられる変換マップである。
【0031】制御装置11は、ディスクアレイ12を制
御するコントローラ(ディスクアレイコントローラ)で
ある。制御装置11は、ROM等の記憶装置(図示せ
ず)に予め格納されている制御プログラムに従ってディ
スクアレイ12へのアクセス等を制御すると共に、不揮
発性メモリ13上の書き込みバッファ131及びアドレ
ス変換テーブル132を管理する。制御装置11はホス
トコンピュータ2と接続されている。ホストコンピュー
タ2と制御装置11とのインターフェースには、例えば
SCSI(Small Computer System Interface)、或い
はPCIバス(Peripheral Component Interconnect Bu
s)等が適用可能である。
【0032】ディスクアレイ12を構成するディスク装
置121〜123は、それぞれデータブロックのサイズ
(ブロックサイズ)の整数倍(ここでは、K倍とする、
但しKは1以上の整数)である予め決められた単位、つ
まりKブロック単位(以下、ストライプユニットと称す
る)で書き込みを行う。このとき、ディスク装置121
〜123の物理的に同じ位置のストライプユニットは、
1つの物理ストライプを構成するストライプユニットと
して、同じタイミングで書き込みが行われる。明らかな
ように、ディスクアレイ12を構成するディスク装置が
3台である本実施形態では、1ストライプは3ストライ
プユニットから構成される。もし、ディスクアレイ12
を構成するディスク装置がN台(Nは3以上の整数であ
り、図1の例ではN=3)、1ストライプユニットのサ
イズがブロックサイズのK倍であるものとすると、1ス
トライプはN×K個のデータブロックから構成される。
また、1ストライプに含まれる論理ブロック(つまり1
ストライプ分の論理ブロック)の数は、ディスクアレイ
12を、パリティデータの生成が不要なRAID0,R
AID1,RAID10などのRAIDレベルで用いる
場合には、N×Kとなり、パリティデータの生成が必要
なRAID4,RAID5,RAID50などのRAI
Dレベルで用いる場合には、(N−1)×Kとなる。な
お、ストライプユニットのサイズ(ブロック数)は、デ
ィスク装置に対するアクセス効率を考慮すると、当該デ
ィスク装置の1トラック長に近いサイズがよい。
【0033】本実施形態では、説明を簡略化するため
に、ディスクアレイ12がRAID4の冗長化ディスク
構成を適用しており、ディスク装置121〜123のう
ちの特定の1台、例えばディスク装置123がパリティ
データを格納するパリティ用ディスク装置として割り当
てられているものとする。
【0034】制御装置11は、前記米国特許第6,21
9,752、及び米国特許第6,233,648に記載
されているのと同様の高速書き込み方法を適用してい
る。即ち制御装置11は、ホストコンピュータからの更
新(書き込み)要求に対してディスクアレイ12内の対
応する旧データの領域の内容を書き換えるのではなく、
更新データを書き込みバッファ131の空き領域にブロ
ック単位に分割して詰めて書き込んで蓄積しておく。こ
の書き込みバッファ131は、1ストライプ−1ストラ
イプユニット分、即ち(N−1)×Kデータブロック分
の記憶容量を有している。
【0035】制御装置11は、1ストライプ分に1スト
ライプユニット+1データブロック少ない数まで、書き
込みバッファ131にデータブロック(論理ブロック)
が蓄積された時点で、論理アドレスタグとタイムスタン
プから構成される論理アドレスタグブロックを生成して
当該書き込みバッファ131上に格納する。制御装置1
1は、生成した論理アドレスタグブロックが加えられ
た、書き込みバッファ131上の1ストライプ−1スト
ライプユニット分のデータ((N−1)×K個のデータ
ブロック)から、1ストライプユニット分のパリティデ
ータ(K個のパリティブロック)を生成する。そして制
御装置11は、1ストライプユニット分のパリティデー
タが1ストライプ−1ストライプユニット分のデータに
加えられた(N×K個のブロックからなる)1ストライ
プ分のデータを、ディスクアレイ12のRAIDレベル
を構成するディスク装置の台数Nに応じたストライピン
グルールに従って、その台数のディスク装置(N=3の
図1の例では、3台のディスク装置121〜123)上
の更新されるべきデータを保持している領域とは別の空
き領域の物理的に連続する位置に、一括して書き込む動
作を開始する。
【0036】この制御装置11により用意された1スト
ライプ分のデータの例(K=3の場合)と、当該1スト
ライプ分のデータがディスクアレイ12内のディスク装
置121〜123に書き込まれる様子を図3に示す。図
3の例では、論理アドレスL3,L7,L11の論理ブ
ロック(L3Data,L7Data,L11Dat
a)からなるストライプユニットと、論理アドレスL1
00,L1の論理ブロック(L100Data,L1D
ata)、及び論理アドレスタグブロック(LA−TA
G)からなるストライプユニットと、論理アドレスL
3,L100の論理ブロックに対するパリティブロック
P0、論理アドレスL7,L1の論理ブロックに対する
パリティブロックP1、及び論理アドレスL11の論理
ブロックと論理アドレスタグブロックLA−TAGに対
するパリティブロックP2からなるストライプユニット
とが、それぞれディスク装置121,122,123の
空き領域に、データD1,D2,Pとして一括して書き
込まれる様子が示されている。
【0037】この例では、パリティブロックP0は論理
アドレスL3,L100の論理ブロックの間の排他的論
理和(XOR)演算により生成され、パリティブロック
P1は論理アドレスL7,L1の論理ブロックの間の排
他的論理和演算により生成される。また、パリティブロ
ックP2は論理アドレスL1の論理ブロックと論理アド
レスタグブロックLA−TAGとの間の排他的論理和演
算により生成される。
【0038】図4は、アドレス変換テーブル132のデ
ータ構造例を示す。図4の例では、アドレス変換テーブ
ル132の各エントリは、それぞれ固有の論理アドレス
に対応している。ここでは、アドレス変換テーブル13
2を参照する場合の効率を考慮して、当該テーブル13
2のi番目のエントリを、論理アドレスi(論理ブロッ
クiの論理アドレス)に対応させている。アドレス変換
テーブル132のエントリ数は、ホストコンピュータ2
からみえる全論理アドレスの数に一致する。アドレス変
換テーブル132の各エントリの情報(アドレス変換情
報)は、「論理アドレス(論理ブロックアドレス)」
と、当該論理アドレスで示される論理ブロックが割り当
てられるディスクアレイ12における物理的なディスク
領域上の物理ブロックを含む物理ストライプを示す「物
理ストライプ番号」と、その物理ストライプ内の当該物
理ブロックの相対位置を示す「物理ブロック番号」と、
当該論理アドレスのデータブロックがディスクアレイ1
2に書き込まれた時間的順序を管理するための「タイム
スタンプ」とから構成される。
【0039】アドレス変換テーブル132が不揮発性メ
モリ13上に配置(生成)された初期状態では、当該ア
ドレス変換テーブル132の各エントリの論理アドレス
の項目にだけ有効なデータ(論理アドレス)が設定さ
れ、他の項目にはNULLが設定されている。この論理
アドレス以外の各項目にNULLが設定されている論理
アドレス(図4の例では論理アドレスLi)は、ホスト
コンピュータ2から使用されていない無効な論理ブロッ
クの論理アドレスを示す。また、論理アドレス以外の各
項目にNULL以外のデータが設定されている論理アド
レス(図4の例では論理アドレスL0,L1,L2)
は、ホストコンピュータ2から使用されている有効な論
理ブロックの論理アドレスを示す。なお以下では、説明
の簡略化のために、単に無効な論理アドレス、有効な論
理アドレス、或いは論理アドレスが有効、論理アドレス
が無効であると表現することもある。
【0040】制御装置11は、1ストライプ分のデータ
を、ディスクアレイ12を構成するディスク装置121
〜123上のデータ領域とは別の空き領域に書き込んだ
場合、当該ストライプ中の各論理ブロックについて、当
該論理ブロックに対する論理アドレスと、当該論理ブロ
ックが書き込まれたディスクアレイ12上の物理的なデ
ータ位置、つまり物理ストライプ番号と物理ブロック番
号とで示される物理アドレスとの関係を、アドレス変換
テーブル132に設定する。具体的には、アドレス変換
テーブル132内の各論理アドレスに対応する物理ブロ
ック番号と物理ストライプ番号とが、それぞれ当該論理
ブロックが実際に書き込まれた物理ストライプ内の物理
ブロック位置を示す番号と当該物理ストライプの番号と
に更新される。これにより制御装置11は、ホストコン
ピュータ2からの読み込み要求または書き込み要求を実
行する際に、当該要求で指定された論理アドレスLiで
対応するアドレス変換テーブル132内エントリを参照
することにより、論理アドレスLiを物理ストライプ番
号と物理ブロック番号とからなる物理アドレスに簡単に
変換することができる。
【0041】再び、図1を参照すると、主記憶装置22
には、アドレス変換テーブル132のコピー(コピーア
ドレス変換テーブル221)221と、入出力バッファ
222と、制御テーブル223とが配置される。コピー
アドレス変換テーブル221は、バックアップ&リスト
アプログラム202からのバックアップ開始要求を制御
装置11が受け付けた結果、その際に書き込みバッファ
131に蓄積されているデータが全てディスクアレイ1
2に書き込まれた場合に、主記憶装置22上に生成され
る、その書き込み直後のアドレス変換テーブル132の
コピーである。入出力バッファ222は、ディスクアレ
イ12のデータを大容量記憶装置3へ転送(バックアッ
プ)する際と、大容量記憶装置3にバックアップされて
いたデータをディスクアレイ12へ転送(リストア)す
る際とに用いられる。制御テーブル223は、ディスク
アレイ12から大容量記憶装置3にバックアップされた
データを管理するのに用いられる。
【0042】制御テーブル223の各エントリの情報
は、図5に示すように、大容量記憶装置3にバックアッ
プされたディスクアレイ12上の論理ブロックの「論理
アドレス」と、当該論理ブロックの大容量記憶装置3上
のバックアップ先を示す「物理アドレス(物理ブロック
アドレス)」とから構成される。制御テーブル223の
エントリ数はコピーアドレス変換テーブル221のエン
トリ数に一致する。図5には、制御テーブル223の情
報(制御テーブル情報)も、大容量記憶装置3にバック
アップされることが示されている。
【0043】制御テーブル223は、アドレス変換テー
ブルのコピー221のエントリ数で決まる当該制御テー
ブル223のサイズ分のオフセットを大容量記憶装置3
上での基点とし、バックアップするディスクアレイ12
の有効なストライプを入出力バッファ222に読み込む
毎に、大容量記憶装置3上のバックアップ先を示す物理
アドレス(物理ブロックアドレス)を順次割り当てるこ
とで構成される。バックアップが完了した時点では、大
容量記憶装置3の先頭領域(図5では物理ブロック0〜
70までの領域)に制御テーブル223の情報(制御テ
ーブル情報)が保存され、後続する領域(図5では物理
ブロック71以降の領域)にディスクアレイ12上の有
効なストライプのデータが保存される。
【0044】なお、本実施例では、説明を簡略化するた
めに、ディスクアレイ12のブロックサイズと大容量記
憶装置3のブロックサイズが等しいことを前提としてい
る。しかし、ブロックサイズが異なる場合にも容易に適
用可能である。また、大容量記憶装置3に正しくデータ
が記録されたか否かを確認する手段として、記録した全
情報のチェックサム情報を記録することも容易に適用可
能である。
【0045】さて、先に述べた高速書き込み手法を適用
した場合、ディスクアレイ12をアクセスする頻度が増
大すると、空き領域がなくなってしまう。そのため、デ
ータ更新後の物理ストライプ上の有効なデータのみを効
果的に再配置すると共に、無効になった領域同士を集め
て連続した空き領域(物理ストライプ)を確保する処理
が必要となる。この処理をセグメントクリーニングと呼
ぶ。セグメントクリーニング処理に関する詳細は、前記
文献に記載されている。
【0046】図6は、セグメントクリーニングの一例を
示す。ここでは、ストライプi中の無効なデータブロッ
クが格納されているディスク装置122上のブロック位
置に、ストライプj中のディスク装置122上の有効な
データブロックを再配置することで、当該ストライプj
が空き領域として確保されている。この場合、ストライ
プi中の新たなパリティブロックPi′が求められ、元
のパリティブロックPiが当該新たなパリティブロック
Pi′に更新される。
【0047】次に、本実施形態におけるディスクアレイ
装置のバックアップ処理について、図7乃至図9のフロ
ーチャートを参照して説明する。まず、ホストコンピュ
ータ2内のCPU21によりバックアップ&リストアプ
ログラム202が実行されることにより、当該プログラ
ム202からバックアップ開始要求が発行される。この
バックアップ&リストアプログラム202からのバック
アップ開始要求は、ディスクアレイ装置1を制御するデ
ィバイスドライバ204へのI/Oコントロール要求と
して容易に実装可能である。ディバイスドライバ204
はバックアップ&リストアプログラム202からのバッ
クアップ開始要求を受け取ると、対応するバックアップ
開始要求をディスクアレイ装置1に送信する。このディ
バイスドライバ204からディスクアレイ装置1へのバ
ックアップ開始要求の通知は、SCSI規格に準拠した
コマンド、例えばMode Selectとして、容易に実装可能
である。
【0048】ディスクアレイ装置1内の制御装置11
は、ディバイスドライバ204からのバックアップ開始
要求を受け取る(ステップS1)。制御装置11は、受
け取ったバックアップ要求に応じて、不揮発性メモリ1
3上の所定領域にセグメントクリーニング禁止状態を示
す情報を設定すると共に、その時点において不揮発性メ
モリ13上の書き込みバッファ131に蓄積されている
データを全てディスクアレイ12に書き込み、更に当該
書き込みに応じて不揮発性メモリ13上のアドレス変換
テーブル132を更新した後、その際のアドレス変換テ
ーブル132のコピー221をホストコンピュータ2内
の主記憶装置22上に生成する(ステップS2)。 次
に制御装置11は、バックアップするディスクアレイ1
2上のデータを示す論理アドレスiを初期値0に設定す
る(ステップS3)。次に制御装置11は、アドレス変
換テーブルのコピー221のサイズから制御テーブル2
23の情報のサイズ、即ち大容量記憶装置3の先頭領域
に記録される制御テーブル情報のサイズを計算し、その
サイズから、バックアップデータが記録される大容量記
憶装置3内の領域(データ領域)の開始位置の物理アド
レスnを決定して、その開始位置の物理アドレスnをバ
ックアップ先を示す物理アドレスjの初期値として設定
する(ステップS4)。
【0049】次に制御装置11は、論理アドレスiに対
応するアドレス変換テーブルのコピー221内のエント
リを参照することにより、当該論理アドレスiが有効か
否かを判定する(ステップS5)。
【0050】もし、論理アドレスiが有効な場合には
(ステップS5のYES)、制御装置11は当該論理ア
ドレスiのデータがバックアップ未実施であるか否か
を、当該論理アドレスiをキーにして主記憶装置22上
の制御テーブル223を参照することで判定する(ステ
ップS6)。
【0051】もし、論理アドレスiのデータがバックア
ップ未実施であった場合(ステップS6のYES)、制
御装置11はアドレス変換テーブルのコピー221を利
用して論理アドレスiを物理ストライプ番号と物理ブロ
ック番号とからなる物理アドレスに変換し、その物理ア
ドレスで指定される物理ストライプのデータをディスク
アレイ12から読み出して主記憶装置22上の入出力バ
ッファ222に転送するI/O処理を実行する(ステッ
プS7)。このように、バックアップのためにディスク
アレイ12から主記憶装置22に物理ストライプのデー
タを読み込むリード処理は、アドレス変換テーブルのコ
ピー221を使用したI/O処理により実行される。
【0052】制御装置11は、主記憶装置22への物理
ストライプのデータの読み込みが完了すると、その読み
込んだ物理ストライプに含まれている論理ブロックを示
す論理アドレスの中に、未処理の有効な論理アドレスが
存在するか否かを判定する(ステップS8)。この判定
のためには、読み込んだ物理ストライプの物理ストライ
プ番号をキーにしてアドレス変換テーブルのコピー22
1から対応する有効な論理アドレスを例えばエントリ順
に検索すればよい。また、アドレス変換テーブルのコピ
ー221の各エントリに、そのエントリに対応する論理
アドレスの処理が実施済みであるか未実施であるかを示
すフラグを付加し、有効な論理アドレスを検索した際に
当該フラグを参照することで、上述の判定を行うことも
可能である。
【0053】制御装置11は未処理の有効な論理アドレ
スが存在する場合(ステップS8のYES)、その論理
アドレスに対応する論理ブロックのデータを入出力バッ
ファ222から取り出して、物理アドレスjで指定され
る大容量記憶装置3内のブロック位置に書き込む(ステ
ップS9)。そして制御装置11は、大容量記憶装置3
への書き込みに成功したか否かを判定する(ステップS
10)。
【0054】もし、大容量記憶装置3への書き込みに成
功した場合には、制御装置11は、書き込み(バックア
ップ)に成功した論理ブロックの論理アドレスと、書き
込み先の物理アドレスjとの対を、制御テーブル223
内の空きエントリに登録する(ステップS11)。この
ステップS11での登録先を示す空きエントリのエント
リ番号(初期値は0)は、ステップS11が実行される
毎に1ずつインクリメントされる。
【0055】次に制御装置11は、jを1だけインクリ
メント加算する(ステップS12)。また制御装置11
は、ステップS7で読み込んだ物理ストライプに含まれ
ている全ての論理ブロックについて、対応する論理アド
レスの処理を実施済みであるか否かを判定する(ステッ
プS13)。
【0056】もし、ステップS7で読み込んだ物理スト
ライプに対応する全ての論理アドレスについて処理済み
であるならば(ステップS13のYES)、制御装置1
1は次に処理すべき論理アドレスを指定するためにiを
1だけインクリメントする(ステップS14)。制御装
置11は、このインクリメント後の論理アドレスiによ
りアドレス変換テーブルのコピー221を参照すること
で、全ての論理アドレスについて処理したか否かを判定
する(ステップS15)。
【0057】もし、アドレス変換テーブルのコピー22
1に登録されている全ての論理アドレスについて処理が
終了したならば(ステップS15のYES)、制御装置
11はバックアップ終了通知を発行する(ステップS1
6)。このバックアップ終了通知は、ディバイスドライ
バ204へのハードウェア割り込みとして容易に実装可
能である。
【0058】ディバイスドライバ204は、制御装置1
1からのバックアップ終了通知を受け取ると、対応する
バックアップ終了通知をバックアップ&リストアプログ
ラム202に送信する。このディバイスドライバ204
からバックアップ&リストアプログラム202への終了
通知は、先にディバイスドライバ204から受け取った
バックアップ開始のI/Oコントロール要求に対する完
了通知として容易に実装可能である。
【0059】ディスクアレイ装置1内の制御装置11
は、ディバイスドライバ204にバックアップ終了通知
を発行すると、不揮発性メモリ3に設定されているセグ
メントクリーニング禁止状態を示す情報をクリアする。
そして制御装置11は、バックアップに成功したか否か
を判定し(ステップS17)、バックアップに成功して
いた場合には、その時点において主記憶装置22上に格
納されている制御テーブル223の情報(制御テーブル
情報)を大容量記憶装置3の先頭位置から書き込む(ス
テップS18)。
【0060】一方、ステップS5またはS6の判定がN
Oの場合、制御装置11は次に処理すべき論理アドレス
を指定するためにステップS14に進む。また、ステッ
プS8の判定がNOの場合、現在処理対象となっている
物理ストライプに対応する全ての論理アドレスについて
処理済みであるか否かを調べるためにステップS13に
進む。また、ステップS10での判定がYESの場合、
制御装置11はバックアップを終了させるためにステッ
プS16に進む。また、ステップS13での判定がNO
の場合、制御装置11は残りの論理アドレスについて処
理をするためにステップS8に戻る。
【0061】このように本実施形態におけるバックアッ
プ処理によれば、アドレス変換テーブルを利用して有効
な論理アドレスを検索し、ディスクアレイのデータのう
ち、当該有効な論理アドレスに対応するデータのみをバ
ックアップ対象とするようにしたので、ディスクアレイ
のデータをそのままバックアップする従来技術に比べ
て、データコピー(データバックアップ)に要する時間
を短縮できる。したがって本実施形態においては、ファ
イルシステムやディスクアレイ装置用のディバイスドラ
イバに一切の変更を加えることなく高速なバックアップ
が実現できる。
【0062】以上に述べたバックアップ処理では、バッ
クアップが未実施の物理ストライプがセグメントクリー
ニングの対象とならないように、バックアップ処理の期
間中はセグメントクリーニングを全て禁止している。こ
の場合、バックアップ処理の期間中に新たな空き領域を
確保できなくなる。したがって、バックアップ処理の期
間中はホストコンピュータ2からの書き込み要求を実行
できなくなる可能性が高く、ホストコンピュータ2から
のI/O要求(特に書き込み要求)の処理と並行してバ
ックアップ処理を行うこと、即ちオンラインバックアッ
プ処理を行うことは難しい。
【0063】一方、バックアップ済みの物理ストライプ
を管理することで、バックアップ済みの物理ストライプ
についてはセグメントクリーニングの禁止状態を解除す
ることが考えられる。しかし、上記実施形態におけるバ
ックアップ処理では、有効な論理アドレスの順に対応す
る物理ストライプを処理して、当該物理ストライプ中の
有効な論理アドレスに対応するデータのみを対象とする
バックアップを行っているため、バックアップされる物
理ストライプの順番はランダムとなる。この場合、バッ
クアップ済みの物理ストライプを管理することは容易で
はない。
【0064】そこで、バックアップ処理の期間中にセグ
メントクリーニングを全て禁止しなくても済み、つまり
オンラインバックアップ処理を可能とし、しかもバック
アップ済みの物理ストライプとバックアップ未実施の物
理ストライプとが容易に管理できる本実施形態の変形例
について、図10及び図11のフローチャートを参照し
て説明する。
【0065】今、バックアップ&リストアプログラム2
02から発行されたバックアップ開始要求がディバイス
ドライバ204によりディスクアレイ装置1に送信され
たものとする。ディスクアレイ装置1内の制御装置11
は前記ステップS1,S2と同様に、ディバイスドライ
バ204からのバックアップ開始要求を受け取り(ステ
ップS21)、不揮発性メモリ13上のアドレス変換テ
ーブル132のコピーをホストコンピュータ2の主記憶
装置22上のアドレス変換テーブルのコピー221に生
成する(ステップS22)。このステップS22では、
制御装置11は、不揮発性メモリ13上の所定領域に、
セグメントクリーニング対象から除外すべき先頭の物理
ストライプを示す物理ストライプ番号(セグメントクリ
ーニング除外ストライプ番号)として、初期値0を設定
する。この場合、ディスクアレイ12は一時的にセグメ
ントクリーニング禁止状態になる。通常、セグメントク
リーニング処理では、前記文献に記載されているような
アルゴリズムを使用して、クリーニング対象のセグメン
トを選択するのが一般的である。本実施形態の変形例で
は、不揮発性メモリ13の所定領域に記録されたセグメ
ントクリーニング除外番号より小さな物理ストライプ番
号の物理ストライプだけをセグメント選択の対象とする
ことで、バックアップがされていないデータを保護する
ことが可能となる。
【0066】制御装置11は、アドレス変換テーブルの
コピー221を使用して、各エントリ情報が有効な論理
アドレスを持つ物理ストライプのストライプ番号の昇順
にソートされたアドレス変換テーブルを作成する(ステ
ップS23)。以下、このソート後のアドレス変換テー
ブルを、アドレス変換テーブル221’として説明す
る。なお、上記ソートには、良く知られたMergesort、Qu
icksort、Shellsort、Heapsort等の高速アルゴリズムを使
用するとよい。
【0067】次に制御装置11は、バックアップの対象
とする物理ストライプiを示す物理ストライプ番号iの
初期値として、アドレス変換テーブル221’の先頭の
エントリ情報中の物理ストライプ番号、即ち最初の物理
ストライプを示すストライプ番号に設定する(ステップ
S24)。
【0068】次に制御装置11は、アドレス変換テーブ
ル221’のサイズから、前記ステップS4と同様にし
て、制御テーブル223の情報のサイズを計算し、その
サイズから、バックアップデータが記録される大容量記
憶装置3内の領域の物理アドレスjの初期値nを設定す
る(ステップS25)。
【0069】次に制御装置11は、アドレス変換テーブ
ル221’を参照して、物理ストライプ番号i以降の空
でないストライプを、セグメントクリーニングの対象外
とする(ステップS26)。即ち制御装置11は、現在
の物理ストライプ番号iで、不揮発性メモリ3の所定領
域に設定されているセグメントクリーニング除外ストラ
イプ番号を更新する。
【0070】次に制御装置11は、物理ストライプiの
データをディスクアレイ12から入出力バッファ222
に読み込み(ステップS27)、読み込んだ物理ストラ
イプiのデータのうち、有効な論理アドレスに対応する
データブロックを1つ取り出して、物理アドレスjで指
定される大容量記憶装置3内のブロック位置に書き込む
(ステップS28)。有効な論理アドレスは、物理スト
ライプ番号iをキーにしてアドレス変換テーブル22
1’から検索可能である。
【0071】制御装置11は、大容量記憶装置3への書
き込みを実行すると、その書き込みに成功したか否かを
判定する(ステップS29)。もし、書き込みに成功し
た場合(ステップS29のYES)、制御装置11は、
書き込み(バックアップ)に成功した論理ブロックの論
理アドレスと物理アドレス(物理ブロック番号)jとの
対を制御テーブル223内の空きエントリに登録する
(ステップS30)。
【0072】次に制御装置11は、jを1だけインクリ
メントする(ステップS31)。また制御装置11は、
ステップS27で読み込んだ物理ストライプiに含まれ
ている全ての論理ブロックについて、対応する論理アド
レスの処理を実施済みであるか否かを判定する(ステッ
プS32)。
【0073】もし、物理ストライプiに対応する全ての
論理アドレスについて処理済みであるならば(ステップ
S32のYES)、制御装置11は次に処理すべき物理
ストライプを指定するために物理ストライプ番号iを1
だけインクリメントする(ステップS33)。制御装置
11は、このインクリメント後の物理ストライプ番号i
によりアドレス変換テーブル221’を参照すること
で、当該テーブル221’に登録されている全ての物理
ストライプについて処理が終了したか否かを判定する
(ステップS34)。
【0074】もし、処理すべき物理ストライプが残って
いるならば(ステップS34のNO)、制御装置11は
ステップS26以降の処理を、ステップS33でのイン
クリメント後の物理ストライプ番号iで指定される物理
ストライプiについて実行する。そして、処理すべき物
理ストライプがなくなった時点で(ステップS34のY
ES)、制御装置11はディバイスドライバ204に対
するバックアップ終了通知を、例えばハードウェア割り
込みにより発行する(ステップS35)。ディバイスド
ライバ204は、制御装置11からのバックアップ終了
通知を受け取ると、対応するバックアップ終了通知を、
例えば先にディバイスドライバ204から受け取ったバ
ックアップ開始のI/Oコントロール要求に対する完了
通知として、バックアップ&リストアプログラム202
に送信する。
【0075】またバックアップ終了通知を発行した制御
装置11は、不揮発性メモリ13上の所定領域に設定さ
れているセグメントクリーニング除外ストライプ番号を
クリアする。以降、上記実施形態におけるステップS1
7,S18と同様の処理(ステップS36,S37)が
行われ、バックアップに成功していた場合には、その時
点において主記憶装置22上に格納されている制御テー
ブル223の情報(制御テーブル情報)が大容量記憶装
置3の先頭位置から書き込まれる。このときの制御テー
ブル223の一例を図12に示す。
【0076】このように本実施形態の変形例によれば、
物理ストライプ番号の昇順に対応する物理ストライプを
処理して、当該物理ストライプ中の有効な論理アドレス
に対応するデータのみを対象とするバックアップを行っ
ている。このため、バックアップ処理済みの物理ストラ
イプはディスクアレイ12上で物理的に連続している。
よって、現在処理中の物理ストライプを基準に、セグメ
ントクリーニングの対象とすることができる物理ストラ
イプ列、つまりセグメントクリーニングの禁止の対象か
ら外すことができる物理ストライプ列と、セグメントク
リーニングの対象外とすべき物理ストライプ列、つまり
セグメントクリーニングの禁止の対象とすべき物理スト
ライプ列とに、簡単に分類することができる。これによ
り、ディスクアレイ12上で物理的に連続しているバッ
クアップ処理済みの物理ストライプ列については、バッ
クアップ処理の期間中もセグメントクリーニングの対象
とすることができ、オンラインバックアップ処理を実現
できる。なお本変形例においても、上記と実施形態と同
様に、ファイルシステムやディスクアレイ装置用のディ
バイスドライバに一切の変更を加えることなく高速なバ
ックアップが実現できることは勿論である。
【0077】次に本実施形態におけるディスクアレイ装
置のリストア処理について、図13のフローチャートを
参照して説明する。まず、ホストコンピュータ2内のC
PU21によってバックアップ&リストアプログラム2
02が実行されることにより、大容量記憶装置3から主
記憶装置22上に制御テーブル情報が読み込まれ、制御
テーブル223が復元される(ステップS41)。ここ
で、制御テーブル情報は、大容量記憶装置3の物理アド
レス0から物理アドレスn−1(図12の例では物理ア
ドレス70)の領域に格納されているため、当該大容量
記憶装置3の開始位置から順に高速に読み込むことがで
きる。
【0078】次にバックアップ&リストアプログラム2
02からリストア開始要求が発行される。このリストア
開始要求は、ディバイスドライバ204へのI/Oコン
トロール要求として容易に実装可能である。ディバイス
ドライバ204はバックアップ&リストアプログラム2
02からのリストア開始要求を受け取ると、対応するリ
ストア開始要求をディスクアレイ装置1に送信する。こ
のディバイスドライバ204からディスクアレイ装置1
へのリストア開始要求の通知は、SCSI規格に準拠し
たコマンド、例えばMode Selectとして、容易に実装可
能である。
【0079】ディスクアレイ装置1内の制御装置11
は、ディバイスドライバ204からのリストア開始要求
を受け取る(ステップS42)。制御装置11は受け取
ったリストア開始要求に応じて、不揮発性メモリ13上
に設定されているアドレス変換テーブル132の各エン
トリ中の論理アドレスに対応する物理ストライプ番号、
物理ブロック番号、タイムスタンプを全てNULLに設
定(NULLクリア)する(ステップS43)。これに
より、アドレス変換テーブル132は初期化された状態
となる。なお、ステップS41の制御テーブル情報の読
み込み処理を、ステップS42で受け取ったリストア開
始要求に応じて、制御装置11が制御テーブル情報の読
み込み処理を実行する構成であってもよい。
【0080】制御装置11はリストア開始要求を受け取
ると、大容量記憶装置3内の制御テーブル情報に後続す
る領域からバックアップデータを順次主記憶装置22上
の入出力バッファ222に読み込む(ステップS4
4)。すると制御装置11(内の書き込みプロセス)
は、主記憶装置22上の制御テーブル223に記録され
ている論理アドレス(論理ブロックアドレス)と、入出
力バッファ222に読み込まれたデータをもとに、不揮
発性メモリ13上の書き込みバッファ131を利用して
前述したディスクアレイ12への物理ストライプ単位の
まとめ書きを行う(ステップS45)。このステップS
45において、制御装置11はディスクアレイ12に書
き込まれたストライプ中の各論理ブロックについて、当
該論理ブロックに対する論理アドレスが設定されている
アドレス変換テーブル132のエントリ中の物理ブロッ
ク番号、物理ストライプ番号、タイムスタンプを、それ
ぞれ当該論理ブロックが実際に書き込まれた物理ストラ
イプ内の物理ブロック位置を示す番号、当該物理ストラ
イプを示す番号、現在のタイムスタンプの値とに更新す
る。
【0081】制御装置11は、以上のステップS44,
S45を、大容量記憶装置3にバックアップされた全て
のデータが処理されるまで(ステップS46)、繰り返
し実行する。
【0082】明らかなように、本実施形態のリストア処
理においては、リストア処理の終了後はセグメントクリ
ーニングが完了した状態となる。なお、ステップS41
で大容量記憶装置3から制御テーブル情報を読み込むこ
とで主記憶装置22上に復元された制御テーブル223
の各エントリの情報を、論理アドレスの例えば昇順にソ
ートするならば、バックアップデータのリストア処理
が、論理アドレスの順に行われるため、リストア処理だ
けで、セグメントのフラグメンテーションが同時に解決
できること、即ちセグメントのデフラグメンテーション
が同時に実現できることは明らかである。
【0083】また、リストア処理中に、バックアップ&
リストアプログラム202以外のアプリケーションプロ
グラム201-1〜201-nからリード要求がされた場
合、リストアが完了していればリストアされたデータが
返却され、リストアが完了していなければエラーが返却
される。一方、リストア処理中に、アプリケーションプ
ログラム201-1〜201-nからライト要求がされた場
合、リストアが完了していればリストアされたデータで
アドレス変換テーブル132は更新され、アプリケーシ
ョンプログラムからは上書きされたように見え(実際は
別の領域に格納されている)、リストアが完了していな
ければリストアデータでアドレス変換テーブル132は
更新され、アプリケーションプログラムからは上書きさ
れたように見える。このことからオンラインリストアが
可能であることは明らかである。
【0084】次に、本実施形態におけるデータ破棄処理
について、図14のフローチャートを参照して説明す
る。まず、バックアップ&リストアプログラム202か
らディスクアレイ装置1を対象とするデータ破棄要求が
発行される。このデータ破棄要求は、ディバイスドライ
バ204へのI/Oコントロール要求として容易に実装
可能である。ディバイスドライバ204は、バックアッ
プ&リストアプログラム202からのデータ破棄要求を
受け取ると、対応するデータ破棄要求をディスクアレイ
装置1に送信する。このディバイスドライバ204から
ディスクアレイ装置1へのデータ破棄要求の通知は、S
CSI規格に準拠したコマンド、例えばMode Selectと
して、容易に実装可能である。
【0085】ディスクアレイ装置1内の制御装置11
は、ディバイスドライバ204からのデータ破棄要求を
受け取ると(ステップS51)、不揮発性メモリ13上
に設定されているアドレス変換テーブル132の各エン
トリ中の論理アドレスに対応する物理ストライプ番号、
物理ブロック番号、タイムスタンプを全てNULLに設
定(NULLクリア)する(ステップS43)。これに
より、アドレス変換テーブル132は初期化された状態
となり、ディスクアレイ12のデータが破棄されたのと
等価となる。
【0086】以上のデータ破棄処理は、全て不揮発性メ
モリ13上での操作であり、従来から知られているフォ
ーマット等の方法に比べ、ディスクアレイ12を構成す
るディスク装置21〜23に対するI/O(入出力)処
理が必要でない。したがって、ディスクアレイ12のデ
ータを破棄する処理を、当該ディスクアレイ12の記憶
容量に関係なく、且つOSやファイルシステムの種類、
ディスク装置に依存することなく、高速に行える。
【0087】以上に述べた実施形態及び変形例では、バ
ックアップ処理とリストア処理とが、それぞれバックア
ップ&リストアプログラム202からのバックアップ開
始要求とリストア開始要求とに応じて、主としてディス
クアレイ装置1内の制御装置11により実行されるもの
として説明した。しかし、ディスクアレイ装置1内の不
揮発性メモリ13上の書き込みバッファ131またはア
ドレス変換テーブル132を必要としない処理、例えば
ホストコンピュータ2の主記憶装置22上のアドレス変
換テーブルのコピー221、入出力バッファ222また
は制御テーブル223を利用する処理、大容量記憶装置
3に対する入出力処理等は、バックアップ&リストアプ
ログラム202(に基づいてCPU21)が実行する構
成とすることも可能である。
【0088】なお、本発明は、上記実施形態または変形
例に限定されるものではなく、実施段階ではその要旨を
逸脱しない範囲で種々に変形することが可能である。更
に、上記実施形態または変形例には種々の段階の発明が
含まれており、開示される複数の構成要件における適宜
な組み合わせにより種々の発明が抽出され得る。例え
ば、実施形態に示される全構成要件から幾つかの構成要
件が削除されても、発明が解決しようとする課題の欄で
述べた課題が解決でき、発明の効果の欄で述べられてい
る効果が得られる場合には、この構成要件が削除された
構成が発明として抽出され得る。
【0089】
【発明の効果】以上詳述したように本発明によれば、ア
ドレス変換テーブルを利用して有効な論理アドレスに対
応するデータのみをバックアップ対象とするようにした
ので、ディスクアレイから大容量記憶装置へのデータバ
ックアップに要する時間を短縮することができる。しか
も、アドレス変換テーブルを利用して有効な論理アドレ
スを検索することから、ファイルシステムやディスクア
レイ装置用のディバイスドライバに一切の変更を加える
ことなく高速なバックアップが実現できる。また、有効
な論理アドレスに対応するデータのみ大容量記憶装置に
バックアップされることから、当該大容量記憶装置にバ
ックアップされたデータをディスクアレイにリストアす
るのに要する時間も短縮でき、しかもリストア処理だけ
でセグメントクリーニングが自動で同時に実行できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るディスクアレイ装置
を備えたコンピュータシステムの構成を示すブロック
図。
【図2】図1中のホストコンピュータ2におけるディス
クアレイ装置1に関係するソフトウエア構成を示すブロ
ック図
【図3】1ストライプ分のデータの例と、当該1ストラ
イプ分のデータがディスクアレイ12内のディスク装置
121〜123に書き込まれる様子を示す図。
【図4】図1中のアドレス変換テーブル132のデータ
構造例を示す図。
【図5】図1中の大容量記憶装置3に制御テーブル22
3の情報及びディスクアレイ12のデータがバックアッ
プされている様子を示す図。
【図6】セグメントクリーニングの一例を示す図。
【図7】同実施形態におけるディスクアレイ装置のバッ
クアップ処理を説明するためのフローチャートの一部を
示す図。
【図8】同実施形態におけるディスクアレイ装置のバッ
クアップ処理を説明するためのフローチャートの他の一
部を示す図。
【図9】同実施形態におけるディスクアレイ装置のバッ
クアップ処理を説明するためのフローチャートの残り示
す図。
【図10】同実施形態の変形例におけるディスクアレイ
装置のバックアップ処理を説明するためのフローチャー
トの一部を示す図。
【図11】同実施形態の変形例におけるディスクアレイ
装置のバックアップ処理を説明するためのフローチャー
トの残りを示す図。
【図12】バックアップ処理で大容量記憶装置3に書き
込まれる制御テーブル223の一例を示す図。
【図13】同実施形態におけるディスクアレイ装置のリ
ストア処理を説明するためのフローチャート。
【図14】同実施形態におけるディスクアレイ装置のデ
ータ破棄処理を説明するためのフローチャート。
【符号の説明】 1…ディスクアレイ装置 2…ホストコンピュータ 3…大容量記憶装置 11…制御装置 12…ディスクアレイ 13…不揮発性メモリ 21…CPU 22…主記憶装置 121〜123…ディスク装置 131…書き込みバッファ 132…アドレス変換テーブル 221…アドレス変換テーブルのコピー(コピーアドレ
ス変換テーブル) 222…入出力バッファ 223…制御テーブル

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 複数のディスク装置から構成されるディ
    スクアレイを備え、ホストコンピュータからの書き込み
    要求の指定するデータをブロック単位に分割して書き込
    みバッファに詰めて蓄積し、当該バッファに所定のブロ
    ック数のデータが蓄積された段階で、その所定のブロッ
    ク数のデータを含む1ストライプ分のデータが、前記デ
    ィスクアレイ内の前記複数のディスク装置上の更新され
    るべきデータを保持している領域とは別の空き領域内の
    物理的に連続する領域に書き込まれるディスクアレイ装
    置において、 前記ホストコンピュータからの論理アドレスを前記ディ
    スクアレイの物理アドレスに変換するアドレス変換情報
    が記憶されたアドレス変換テーブルと、 前記ディスクアレイのデータをバックアップ記憶する大
    容量記憶装置と、 前記大容量記憶装置へのバックアップ処理の開始時に、
    その時点における前記アドレス変換テーブルのコピーを
    生成する手段と、 前記コピーされたアドレス変換テーブル従って有効な論
    理アドレスを検索する手段と、 前記検索手段により検索された有効な論理アドレスに対
    応する物理アドレスのデータブロックが含まれる物理ス
    トライプを前記ディスクアレイから読み込む手段と、 前記読み込み手段により読み込まれた物理ストライプ中
    の有効な論理アドレスに対応するデータブロックのデー
    タを前記大容量記憶装置に書き込む手段と、 前記大容量記憶装置に書き込まれたデータブロックの論
    理アドレスと当該大容量記憶装置上の物理アドレスとを
    含む制御情報が記憶される制御情報記憶手段と、 前記制御情報記憶手段に記憶されている全ての制御情報
    を前記大容量記憶装置に書き込む手段とを具備すること
    を特徴とするディスクアレイ装置。
  2. 【請求項2】 前記バックアップ処理の期間中のセグメ
    ントクリーニングを禁止する手段を更に具備することを
    特徴とする請求項1記載のディスクアレイ装置。
  3. 【請求項3】 前記書き込み手段による前記大容量記憶
    装置への書き込みが未実施のデータブロックを含む物理
    ストライプのみをセグメントクリーニングの禁止対象と
    して管理する手段を更に具備することを特徴とする請求
    項1記載のディスクアレイ装置。
  4. 【請求項4】 複数のディスク装置から構成されるディ
    スクアレイを備え、ホストコンピュータからの書き込み
    要求の指定するデータをブロック単位に分割して書き込
    みバッファに詰めて蓄積し、当該バッファに所定のブロ
    ック数のデータが蓄積された段階で、その所定のブロッ
    ク数のデータを含む1ストライプ分のデータが、前記デ
    ィスクアレイ内の前記複数のディスク装置上の更新され
    るべきデータを保持している領域とは別の空き領域内の
    物理的に連続する領域に書き込まれるディスクアレイ装
    置において、 前記ホストコンピュータからの論理アドレスを前記ディ
    スクアレイの物理アドレスに変換するアドレス変換情報
    が記憶されたアドレス変換テーブルと、 前記ディスクアレイのデータをバックアップ記憶する大
    容量記憶装置と、 前記大容量記憶装置へのバックアップ処理の開始時に、
    その時点における前記アドレス変換テーブルのコピーを
    生成する手段と、 前記コピーされたアドレス変換テーブルの各アドレス変
    換情報を、物理アドレスの順番にソートする手段と、 前記コピーされ且つソートされた後のアドレス変換テー
    ブルに従って物理アドレスの順番に対応する物理ストラ
    イプを前記ディスクアレイから順次読み込む手段と、 前記読み込み手段による読み込みの対象となっている物
    理ストライプを、セグメントクリーニングの対象外とす
    る物理的に連続する物理ストライプ列の先頭の物理スト
    ライプとして管理する手段と、 前記読み込み手段により読み込まれた物理ストライプ中
    の有効な論理アドレスに対応するデータブロックのデー
    タを前記大容量記憶装置に書き込む手段と、 前記大容量記憶装置に書き込まれたデータブロックの論
    理アドレスと当該大容量記憶装置上の物理アドレスとを
    含む制御情報が記憶される制御情報記憶手段と、 前記制御情報記憶手段に記憶されている全ての制御情報
    を前記大容量記憶装置に書き込む手段とを具備すること
    を特徴とするディスクアレイ装置。
  5. 【請求項5】 前記バックアップ処理の開始時に、前記
    書き込みバッファに蓄積されているデータを前記ディス
    クアレイに書き込む手段を更に具備し、 前記コピー生成手段は、前記書き込みバッファに蓄積さ
    れているデータが前記ディスクアレイに書き込まれた後
    に、前記アドレス変換テーブルのコピーを生成すること
    を特徴とする請求項1または請求項4記載のディスクア
    レイ装置。
  6. 【請求項6】 前記データ書き込み手段は、前記制御情
    報の書き込みに必要となる前記大容量記憶装置の領域サ
    イズを前記アドレス変換テーブルのサイズから算出し、
    その算出された前記大容量記憶装置の開始位置に後続す
    る位置からデータの書き込みを行い、 前記制御情報書き込み手段は、前記大容量記憶装置の開
    始位置から前記制御情報の書き込み行うことを特徴とす
    る請求項1または請求項4記載のディスクアレイ装置。
  7. 【請求項7】 前記大容量記憶装置にバックアップされ
    たデータを前記ディスクアレイにリストアするリストア
    処理の開始時に、前記アドレス変換テーブルを初期化す
    る手段と、 前記大容量記憶装置に書き込まれている前記制御情報に
    基づいて、前記大容量記憶装置にバックアップされたデ
    ータを順次読み込む手段と、 前記大容量記憶装置から読み込まれたデータを前記書き
    込みバッファを介して1ストライプ単位で前記ディスク
    アレイ内の前記複数のディスク装置上の空き領域内の物
    理的に連続する領域に書き込む手段とを更に具備するこ
    とを特徴とする請求項1または請求項4記載のディスク
    アレイ装置。
  8. 【請求項8】 前記大容量記憶装置にバックアップされ
    たデータを前記ディスクアレイにリストアするリストア
    処理の開始時に、前記アドレス変換テーブルを初期化す
    る手段と、 前記大容量記憶装置から前記制御情報を読み込み、当該
    制御情報を当該制御情報中の論理アドレスの順番にソー
    トする手段と、 前記ソート後の制御情報に基づいて、前記大容量記憶装
    置にバックアップされたデータを対応する論理アドレス
    の順番に読み込む手段と、 前記大容量記憶装置から読み込まれたデータを前記書き
    込みバッファを介して1ストライプ単位で前記ディスク
    アレイ内の前記複数のディスク装置上の空き領域内の物
    理的に連続する領域に書き込む手段とを更に具備するこ
    とを特徴とする請求項1または請求項4記載のディスク
    アレイ装置。
  9. 【請求項9】 主記憶装置を備えたホストコンピュータ
    と、 複数のディスク装置から構成されるディスクアレイを備
    え、前記ホストコンピュータからの書き込み要求の指定
    するデータをブロック単位に分割して書き込みバッファ
    に詰めて蓄積し、当該バッファに所定のブロック数のデ
    ータが蓄積された段階で、その所定のブロック数のデー
    タを含む1ストライプ分のデータが、前記ディスクアレ
    イ内の前記複数のディスク装置上の更新されるべきデー
    タを保持している領域とは別の空き領域内の物理的に連
    続する領域に書き込まれるディスクアレイ装置と、 前記ディスクアレイのデータがバックアップされる大容
    量記憶装置とを具備し、 前記ディスクアレイ装置は、 前記ホストコンピュータからの論理アドレスを前記ディ
    スクアレイの物理アドレスに変換するアドレス変換情報
    が記憶されるアドレス変換テーブルと、 前記ホストコンピュータからのバックアップ開始要求に
    応じて、その時点における前記アドレス変換テーブルの
    コピーを前記主記憶装置上に生成する手段とを備え、 前記ホストコンピュータは、 前記コピーされたアドレス変換テーブルに従って有効な
    論理アドレスを検索する手段と、 検索された前記有効な論理アドレスに対応する物理アド
    レスのデータブロックが含まれる物理ストライプを前記
    ディスクアレイから読み込む手段と、 読み込まれた物理ストライプ中の前記有効な論理アドレ
    スに対応するデータブロックのデータを前記大容量記憶
    装置に書き込む手段と、 前記大容量記憶装置に書き込まれたデータブロックの論
    理アドレスと当該大容量記憶装置上の物理アドレスとを
    含む制御情報が記憶される前記主記憶装置上の制御テー
    ブルと、 前記制御テーブルに記憶されている全ての制御情報を前
    記大容量記憶装置に書き込む手段とを備えていることを
    特徴とするコンピュータシステム。
  10. 【請求項10】 前記ディスクアレイ装置は、 前記ホストコンピュータからのリストア開始要求に応じ
    て、前記アドレス変換テーブルを初期化する手段と、 前記大容量記憶装置にバックアップされたデータを前記
    ディスクアレイにリストアするために、前記大容量記憶
    装置から読み込まれたデータを前記書き込みバッファを
    介して1ストライプ単位で前記ディスクアレイ内の前記
    複数のディスク装置上の空き領域内の物理的に連続する
    領域に書き込む手段とを更に備え、 前記ホストコンピュータは、 前記大容量記憶装置にバックアップされたデータを前記
    ディスクアレイにリストアするために、前記大容量記憶
    装置にバックアップされたデータを前記大容量記憶装置
    に書き込まれている前記制御情報に基づいて順次読み込
    む手段を更に備えていることを特徴とする請求項7記載
    のコンピュータシステム。
  11. 【請求項11】 複数のディスク装置から構成されるデ
    ィスクアレイを備え、ホストコンピュータからの書き込
    み要求の指定するデータをブロック単位に分割して書き
    込みバッファに詰めて蓄積し、当該バッファに所定のブ
    ロック数のデータが蓄積された段階で、その所定のブロ
    ック数のデータを含む1ストライプ分のデータが、前記
    ディスクアレイ内の前記複数のディスク装置上の更新さ
    れるべきデータを保持している領域とは別の空き領域内
    の物理的に連続する領域に書き込まれるディスクアレイ
    装置において、 前記ディスクアレイに記録されたデータを大容量記憶装
    置にバックアップするデータバックアップ方法であっ
    て、 前記ディスクアレイのデータを前記大容量記憶装置にバ
    ックアップするバックアップ処理の開始時に、前記ホス
    トコンピュータからの論理アドレスを前記ディスクアレ
    イの物理アドレスに変換するアドレス変換情報が登録さ
    れたアドレス変換テーブルのコピーを生成するステップ
    と、 前記コピーされたアドレス変換テーブル従って有効な論
    理アドレスを検索するステップと、 検索された前記有効な論理アドレスに対応する物理アド
    レスのデータブロックが含まれる物理ストライプを前記
    ディスクアレイから読み込むステップと、 前記ディスクアレイから読み込まれた物理ストライプ中
    の前記有効な論理アドレスに対応する前記データブロッ
    クのデータを前記大容量記憶装置に書き込むステップ
    と、 前記大容量記憶装置に書き込まれた前記データブロック
    の論理アドレスと当該大容量記憶装置上の物理アドレス
    とを含む制御情報を所定の制御情報記憶手段に登録する
    ステップと、 前記コピーされたアドレス変換テーブルに従って検索さ
    れた全ての有効な論理アドレスについて処理が終了した
    際に、前記制御情報記憶手段に登録されている全ての制
    御情報を前記大容量記憶装置に書き込むステップとを具
    備することを特徴とするデータバックアップ方法。
  12. 【請求項12】 複数のディスク装置から構成されるデ
    ィスクアレイを備え、ホストコンピュータからの書き込
    み要求の指定するデータをブロック単位に分割して書き
    込みバッファに詰めて蓄積し、当該バッファに所定のブ
    ロック数のデータが蓄積された段階で、その所定のブロ
    ック数のデータを含む1ストライプ分のデータが、前記
    ディスクアレイ内の前記複数のディスク装置上の更新さ
    れるべきデータを保持している領域とは別の空き領域内
    の物理的に連続する領域に書き込まれるディスクアレイ
    装置において、 前記ディスクアレイに記録されたデータを大容量記憶装
    置にバックアップするデータバックアップ方法であっ
    て、 前記ディスクアレイのデータを前記大容量記憶装置にバ
    ックアップするバックアップ処理の開始時に、前記ホス
    トコンピュータからの論理アドレスを前記ディスクアレ
    イの物理アドレスに変換するアドレス変換情報が記憶さ
    れたアドレス変換テーブルのコピーを生成するステップ
    と、 前記コピーされたアドレス変換テーブルの各アドレス変
    換情報を、物理アドレスの順番にソートするステップ
    と、 前記コピーされ且つソートされた後のアドレス変換テー
    ブルに従って物理アドレスの順番に対応する物理ストラ
    イプを前記ディスクアレイから順次読み込むステップ
    と、 前記読み込みステップの実行対象となる物理ストライプ
    を、セグメントクリーニングの対象外とする物理的に連
    続する物理ストライプ列の先頭の物理ストライプとして
    設定するステップと、 前記読み込みステップで物理ストライプが読み込まれる
    毎に、当該読み込まれた物理ストライプ中の有効な論理
    アドレスに対応するデータブロックのデータを前記大容
    量記憶装置に書き込むステップと、 前記大容量記憶装置に書き込まれた前記データブロック
    の論理アドレスと当該大容量記憶装置上の物理アドレス
    とを含む制御情報を所定の制御情報記憶手段に登録する
    ステップと、 前記読み込みステップで読み込まれた全ての物理ストラ
    イプについて処理が終了した際に、前記制御情報記憶手
    段に登録されている全ての制御情報を前記大容量記憶装
    置に書き込むステップとを具備することを特徴とするデ
    ータバックアップ方法。
  13. 【請求項13】 複数のディスク装置から構成されるデ
    ィスクアレイを備え、ホストコンピュータからの書き込
    み要求の指定するデータをブロック単位に分割して書き
    込みバッファに詰めて蓄積し、当該バッファに所定のブ
    ロック数のデータが蓄積された段階で、その所定のブロ
    ック数のデータを含む1ストライプ分のデータが、前記
    ディスクアレイ内の前記複数のディスク装置上の更新さ
    れるべきデータを保持している領域とは別の空き領域内
    の物理的に連続する領域に書き込まれるディスクアレイ
    装置において、 前記ディスクアレイに記録されたデータを大容量記憶装
    置にバックアップすると共に、前記大容量記憶装置にバ
    ックアップされたデータを前記ディスクアレイにリスト
    アするデータバックアップ・リストア方法であって、 前記ディスクアレイのデータを前記大容量記憶装置にバ
    ックアップするバックアップ処理の開始時に、前記ホス
    トコンピュータからの論理アドレスを前記ディスクアレ
    イの物理アドレスに変換するアドレス変換情報が記憶さ
    れたアドレス変換テーブルのコピーを生成するステップ
    と、 前記コピーされたアドレス変換テーブルに従って有効な
    論理アドレスを検索するステップと、 検索された前記有効な論理アドレスに対応する物理アド
    レスのデータブロックが含まれる物理ストライプを前記
    ディスクアレイから読み込むステップと、 前記ディスクアレイから読み込まれた物理ストライプ中
    の前記有効な論理アドレスに対応する前記データブロッ
    クのデータを前記大容量記憶装置に書き込むステップ
    と、 前記大容量記憶装置に書き込まれた前記データブロック
    の論理アドレスと、当該大容量記憶装置上の物理アドレ
    スとを含む制御情報を所定の制御情報記憶手段に登録す
    るステップと、 前記制御情報記憶手段に登録されている全ての制御情報
    を前記大容量記憶装置に書き込むステップと、 前記大容量記憶装置にバックアップされたデータを前記
    ディスクアレイにリストアするリストア処理の開始時
    に、前記アドレス変換テーブルを初期化するステップ
    と、 前記コピーされたアドレス変換テーブルに従って検索さ
    れた全ての有効な論理アドレスについて処理が終了した
    際に、前記大容量記憶装置に書き込まれている前記制御
    情報に基づいて前記大容量記憶装置にバックアップされ
    たデータを順次読み込むステップと、 前記大容量記憶装置から読み込まれた前記データを前記
    書き込みバッファに順次蓄積するステップと、 前記書き込みバッファに前記所定ブロック数のデータが
    蓄積される毎に、その所定のブロック数のデータを含む
    1ストライプ分のデータを前記ディスクアレイ内の前記
    複数のディスク装置上の空き領域内の物理的に連続する
    領域に書き込むステップとを具備することを特徴とする
    データバックアップ・リストア方法。
  14. 【請求項14】 複数のディスク装置から構成されるデ
    ィスクアレイを備え、ホストコンピュータからの書き込
    み要求の指定するデータをブロック単位に分割して書き
    込みバッファに詰めて蓄積し、当該バッファに所定のブ
    ロック数のデータが蓄積された段階で、その所定のブロ
    ック数のデータを含む1ストライプ分のデータが、前記
    ディスクアレイ内の前記複数のディスク装置上の更新さ
    れるべきデータを保持している領域とは別の空き領域内
    の物理的に連続する領域に書き込まれるディスクアレイ
    装置において、 前記ディスクアレイに記録されたデータを大容量記憶装
    置にバックアップすると共に、前記大容量記憶装置にバ
    ックアップされたデータを前記ディスクアレイにリスト
    アするデータバックアップ・リストア方法であって、 前記ディスクアレイのデータを前記大容量記憶装置にバ
    ックアップするバックアップ処理の開始時に、前記ホス
    トコンピュータからの論理アドレスを前記ディスクアレ
    イの物理アドレスに変換するアドレス変換情報が記憶さ
    れたアドレス変換テーブルのコピーを生成するステップ
    と、 前記アドレス変換テーブルのコピーの各アドレス変換情
    報を、物理アドレスの順番にソートするステップと、 前記コピーされ且つソートされた後のアドレス変換テー
    ブル従って物理アドレスの順番に対応する物理ストライ
    プを前記ディスクアレイから順次読み込むステップと、 前記読み込みステップの実行対象となる物理ストライプ
    を、セグメントクリーニングの対象外とする物理的に連
    続する物理ストライプ列の先頭の物理ストライプとして
    設定するステップと、 前記読み込みステップで物理ストライプが読み込まれる
    毎に、当該読み込まれた物理ストライプ中の有効な論理
    アドレスに対応するデータブロックのデータを前記大容
    量記憶装置に書き込むステップと、 前記大容量記憶装置に書き込まれた前記データブロック
    の論理アドレスと、当該大容量記憶装置上の物理アドレ
    スとを含む制御情報を所定の制御情報記憶手段に登録す
    るステップと、 前記読み込みステップで読み込まれた全ての物理ストラ
    イプについて処理が終了した際に、前記制御情報記憶手
    段に登録されている全ての制御情報を前記大容量記憶装
    置に書き込むステップと、 前記大容量記憶装置にバックアップされたデータを前記
    ディスクアレイにリストアするリストア処理の開始時
    に、前記アドレス変換テーブルを初期化するステップ
    と、 前記大容量記憶装置に書き込まれている前記制御情報に
    基づいて前記大容量記憶装置にバックアップされたデー
    タを順次読み込むステップと、 前記大容量記憶装置から読み込まれたデータを前記書き
    込みバッファに順次蓄積するステップと、 前記書き込みバッファに前記所定ブロック数のデータが
    蓄積される毎に、その所定のブロック数のデータを含む
    1ストライプ分のデータを前記ディスクアレイ内の前記
    複数のディスク装置上の空き領域内の物理的に連続する
    領域に書き込むステップとを具備することを特徴とする
    データバックアップ・リストア方法。
JP2001384821A 2001-12-18 2001-12-18 ディスクアレイ装置及びデータバックアップ方法 Expired - Fee Related JP3526452B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2001384821A JP3526452B2 (ja) 2001-12-18 2001-12-18 ディスクアレイ装置及びデータバックアップ方法
US10/231,349 US6898669B2 (en) 2001-12-18 2002-08-30 Disk array apparatus and data backup method used therein

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001384821A JP3526452B2 (ja) 2001-12-18 2001-12-18 ディスクアレイ装置及びデータバックアップ方法

Publications (2)

Publication Number Publication Date
JP2003186628A true JP2003186628A (ja) 2003-07-04
JP3526452B2 JP3526452B2 (ja) 2004-05-17

Family

ID=19187759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001384821A Expired - Fee Related JP3526452B2 (ja) 2001-12-18 2001-12-18 ディスクアレイ装置及びデータバックアップ方法

Country Status (2)

Country Link
US (1) US6898669B2 (ja)
JP (1) JP3526452B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008130080A (ja) * 2006-11-22 2008-06-05 Hitachi Ltd 動的チャンク割付けストレージシステムにおけるバックアップおよび復元のための方法および装置
JP2008134720A (ja) * 2006-11-27 2008-06-12 Toshiba Corp 情報記憶装置
JP2008181204A (ja) * 2007-01-23 2008-08-07 Sony Corp 記憶装置およびコンピュータシステム、並びに記憶装置の管理方法
KR100909765B1 (ko) 2006-07-20 2009-07-29 후지쯔 가부시끼가이샤 데이터 기록 장치 및 데이터 기록 프로그램을 기록한 기록매체
JP2013109419A (ja) * 2011-11-17 2013-06-06 Toshiba Corp 情報処理装置
JP2014505297A (ja) * 2011-01-06 2014-02-27 マイクロン テクノロジー, インク. メモリアドレス変換
JP2014507028A (ja) * 2011-01-27 2014-03-20 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・システムにおけるアプリケーション処理の管理のための方法、システム、コンピュータ・プログラム

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4288037B2 (ja) * 2002-02-25 2009-07-01 インターナショナル・ビジネス・マシーンズ・コーポレーション 記録ディスクを用いた記録装置、記録システムおよびそのバックアップ方法
JP4080227B2 (ja) * 2002-03-28 2008-04-23 株式会社日立製作所 データ検証方法およびディスクアレイ装置
US20040003172A1 (en) * 2002-07-01 2004-01-01 Hui Su Fast disc write mechanism in hard disc drives
JP2004046435A (ja) * 2002-07-10 2004-02-12 Hitachi Ltd バックアップ方法、その方法に用いた記憶制御装置
US20050131965A1 (en) * 2003-12-11 2005-06-16 Lam Wai T. System and method for replicating data
US7302522B2 (en) * 2004-12-27 2007-11-27 Lsi Corporation Optimizing I/O performance in a RAID subsystem using an adaptive maximum request size for a logical drive
US7694088B1 (en) * 2005-03-31 2010-04-06 Symantec Operating Corporation System and method for efficient creation of aggregate backup images
JP4892225B2 (ja) * 2005-10-28 2012-03-07 株式会社日立ハイテクノロジーズ 真空処理方法、真空搬送装置および半導体処理装置
US7549021B2 (en) 2006-02-22 2009-06-16 Seagate Technology Llc Enhanced data integrity using parallel volatile and non-volatile transfer buffers
US8250316B2 (en) * 2006-06-06 2012-08-21 Seagate Technology Llc Write caching random data and sequential data simultaneously
US8209461B2 (en) * 2006-12-26 2012-06-26 Sandisk Technologies Inc. Configuration of host LBA interface with flash memory
US8166267B2 (en) * 2006-12-26 2012-04-24 Sandisk Technologies Inc. Managing a LBA interface in a direct data file memory system
US7917686B2 (en) * 2006-12-26 2011-03-29 Sandisk Corporation Host system with direct data file interface configurability
US7895501B2 (en) * 2007-02-06 2011-02-22 Vision Solutions, Inc. Method for auditing data integrity in a high availability database
US8688935B1 (en) * 2010-01-19 2014-04-01 Infinidat Ltd Storage system and method for snapshot space management
US9075733B1 (en) * 2010-05-20 2015-07-07 Seagate Technology Llc Selective storage of address mapping metadata in a system having multiple memories
US8856614B2 (en) * 2010-07-29 2014-10-07 Kabushiki Kaisha Toshiba Semiconductor memory device detecting error
US8972676B2 (en) * 2011-01-28 2015-03-03 International Business Machines Corporation Assigning device adaptors and background tasks to use to copy source extents to target extents in a copy relationship
TWI521343B (zh) 2011-08-01 2016-02-11 Toshiba Kk An information processing device, a semiconductor memory device, and a semiconductor memory device
US20130179634A1 (en) * 2012-01-05 2013-07-11 Lsi Corporation Systems and methods for idle time backup of storage system volumes
TWI498738B (zh) * 2012-05-18 2015-09-01 Phison Electronics Corp 檔案保護方法與系統及其記憶體控制器與記憶體儲存裝置
JP6102632B2 (ja) * 2013-08-14 2017-03-29 ソニー株式会社 記憶制御装置、ホストコンピュータ、情報処理システムおよび記憶制御装置の制御方法
US9781225B1 (en) * 2014-12-09 2017-10-03 Parallel Machines Ltd. Systems and methods for cache streams
US9588857B2 (en) * 2015-06-22 2017-03-07 Lenovo Enterprise Solutions (Singapore) Pte. Ltd. Raid logical stripe backup to non-volatile memory in response to raid storage device media errors
TWI570559B (zh) * 2015-12-28 2017-02-11 點序科技股份有限公司 快閃記憶體及其存取方法
JP2019008730A (ja) 2017-06-28 2019-01-17 東芝メモリ株式会社 メモリシステム
JP6818666B2 (ja) * 2017-09-20 2021-01-20 キオクシア株式会社 メモリシステム
US11132044B2 (en) 2018-05-08 2021-09-28 Micron Technology, Inc. Dynamic P2L asynchronous power loss mitigation
US10534575B1 (en) * 2018-12-14 2020-01-14 Sap Se Buffering of associative operations on random memory addresses

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62257649A (ja) 1986-05-01 1987-11-10 Seiko Epson Corp 光磁気記録媒体の製造方法
US5907672A (en) * 1995-10-04 1999-05-25 Stac, Inc. System for backing up computer disk volumes with error remapping of flawed memory addresses
JPH1153235A (ja) * 1997-08-08 1999-02-26 Toshiba Corp ディスク記憶装置のデータ更新方法、ならびにディスク記憶制御システム
JP4128641B2 (ja) 1997-10-13 2008-07-30 株式会社東芝 データ退避方法
JP4363676B2 (ja) 1997-10-31 2009-11-11 株式会社東芝 コンピュータシステム
JPH11194899A (ja) 1997-12-26 1999-07-21 Toshiba Corp ディスク記憶システム及び同システムに適用するデータ更新方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100909765B1 (ko) 2006-07-20 2009-07-29 후지쯔 가부시끼가이샤 데이터 기록 장치 및 데이터 기록 프로그램을 기록한 기록매체
JP2008130080A (ja) * 2006-11-22 2008-06-05 Hitachi Ltd 動的チャンク割付けストレージシステムにおけるバックアップおよび復元のための方法および装置
JP2008134720A (ja) * 2006-11-27 2008-06-12 Toshiba Corp 情報記憶装置
JP2008181204A (ja) * 2007-01-23 2008-08-07 Sony Corp 記憶装置およびコンピュータシステム、並びに記憶装置の管理方法
JP2014505297A (ja) * 2011-01-06 2014-02-27 マイクロン テクノロジー, インク. メモリアドレス変換
US8898424B2 (en) 2011-01-06 2014-11-25 Micron Technology, Inc. Memory address translation
US9274973B2 (en) 2011-01-06 2016-03-01 Micron Technology, Inc. Memory address translation
JP2014507028A (ja) * 2011-01-27 2014-03-20 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ・システムにおけるアプリケーション処理の管理のための方法、システム、コンピュータ・プログラム
JP2013109419A (ja) * 2011-11-17 2013-06-06 Toshiba Corp 情報処理装置

Also Published As

Publication number Publication date
US6898669B2 (en) 2005-05-24
JP3526452B2 (ja) 2004-05-17
US20030115414A1 (en) 2003-06-19

Similar Documents

Publication Publication Date Title
JP3526452B2 (ja) ディスクアレイ装置及びデータバックアップ方法
JP3682256B2 (ja) ディスクアレイ装置及び同装置におけるパリティ処理方法
US6901479B2 (en) Disk array apparatus for and method of expanding storage capacity dynamically
US6738863B2 (en) Method for rebuilding meta-data in a data storage system and a data storage system
JP3579389B2 (ja) ディスクアレイ装置及び同装置におけるデータ復旧方法
US6523087B2 (en) Utilizing parity caching and parity logging while closing the RAID5 write hole
US7111137B2 (en) Data storage systems and processes, such as one-way data mirror using write mirroring
US20160077746A1 (en) Optimized segment cleaning technique
US6070254A (en) Advanced method for checking the integrity of node-based file systems
US7219169B2 (en) Composite DMA disk controller for efficient hardware-assisted data transfer operations
US20050149683A1 (en) Methods and systems for data backups
US20030131253A1 (en) Data management appliance
US7152147B2 (en) Storage control system and storage control method
EP2979191B1 (en) Coordinating replication of data stored in a non-volatile memory-based system
JPH0773090A (ja) 計算機システムおよび二次記憶装置
JP2004094429A (ja) ディスクアレイ装置及び同装置におけるレイドレベル変更方法
US20070106867A1 (en) Method and system for dirty time log directed resilvering
US20050149548A1 (en) One-way data mirror using copy-on-write
US20050149554A1 (en) One-way data mirror using write logging
JP6579149B2 (ja) ストレージ制御装置、及びストレージ制御プログラム
JP3798767B2 (ja) ディスク制御システム及びディスク制御プログラム
US11928497B2 (en) Implementing erasure coding with persistent memory
US11531474B1 (en) Storage system and data replication method in storage system
US20070106869A1 (en) Method and system for dirty time logging
JP2004227594A (ja) 計算機システムおよび二次記憶装置

Legal Events

Date Code Title Description
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: 20040210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040213

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

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090227

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100227

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100227

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110227

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120227

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20130227

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees