JP4607981B2 - コピー制御装置、コピー制御方法およびコピー制御プログラム - Google Patents

コピー制御装置、コピー制御方法およびコピー制御プログラム Download PDF

Info

Publication number
JP4607981B2
JP4607981B2 JP2008084665A JP2008084665A JP4607981B2 JP 4607981 B2 JP4607981 B2 JP 4607981B2 JP 2008084665 A JP2008084665 A JP 2008084665A JP 2008084665 A JP2008084665 A JP 2008084665A JP 4607981 B2 JP4607981 B2 JP 4607981B2
Authority
JP
Japan
Prior art keywords
data
position information
copy
update
unit
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.)
Expired - Fee Related
Application number
JP2008084665A
Other languages
English (en)
Other versions
JP2009238015A (ja
Inventor
大 川田
宏朋 所
祥成 篠▲崎▼
幸治 内田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2008084665A priority Critical patent/JP4607981B2/ja
Priority to US12/372,889 priority patent/US8112598B2/en
Publication of JP2009238015A publication Critical patent/JP2009238015A/ja
Application granted granted Critical
Publication of JP4607981B2 publication Critical patent/JP4607981B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1435Saving, restoring, recovering or retrying at system level using file system or storage system metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/84Using snapshots, i.e. a logical point-in-time copy of the data

Description

この発明は、コピー制御装置、コピー制御方法およびコピー制御プログラムに関する。
従来より、ストレージ製品等において、バックアップ対象となるボリューム(バックアップ対象ボリューム)をバックアップする手法の一つとして、SnapOPC(Snap One Point Copy)という手法が知られている。SnapOPCとは、バックアップ対象ボリュームについての所定時点における(その後の更新等を含まない)データであるスナップショットを作成するものである。具体的には、SnapOPCとは、バックアップを作成する際に、バックアップ対象ボリュームのデータの内、更新が行われた箇所における更新前のデータのみをバックアップする手法である(例えば、特許文献1(特開2007−172082号公報)など)。
特開2007−172082号公報(第5−7頁、第1図)
ところで、上記した従来の技術は、バッドデータ(読み出し不能のデータ)となっている箇所についてバックアップがあるか否かを簡単に把握できないという課題があった。
具体的には、上記したSnapOPCは、所定時点におけるバックアップ対象ボリュームのデータすべてを記憶するのではなく、更新が行われた箇所における更新前のデータのみを、バックアップする手法である。このため、上記したSnapOPCでは、バッドデータとなっている箇所におけるデータが、バックアップされているとは限らず、例えば、バッドデータとなっている箇所についてバックアップがあるか否かを把握する際には、その都度、当該ストレージ製品等をサポートしている技術者に問い合わせなければならなかった。
そこで、この発明は、上述した従来技術の課題を解決するためになされたものであり、SnapOPCにおいて、バッドデータとなっている箇所についてバックアップがあるか否かを簡単に把握することができるコピー制御装置、コピー制御方法およびコピー制御プログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するため、このコピー制御装置は、第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータに更新があった場合に、当該データが更新される前のデータである更新前データを第2の記憶装置内にコピーするコピー制御装置であって、前記バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、前記更新前データを前記第2の記憶装置内にコピーするコピー部と、前記バックアップ対象ボリュームのデータ各々について、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報に対応付けて、当該位置情報で示されるデータの更新前データが前記コピー部によって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態を管理する管理テーブルと、読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを判定するデータ判定部と、を備えたことを要件とする。
開示のコピー制御装置によれば、バッドデータとなっている箇所についてバックアップがあるか否かを簡単に把握することが可能である。
以下に添付図面を参照して、この発明に係るコピー制御装置、コピー制御方法およびコピー制御プログラムの実施例を詳細に説明する。なお、以下では、コピー制御装置を説明する上で、記憶装置を備えるコピー制御装置である「ディスクアレイ装置」について説明を行う。なお、以下では、実施例1で用いる主要な用語、実施例1におけるディスクアレイ装置の概要および特徴、ディスクアレイ装置の構成および処理の流れを順に説明し、その後、その他の実施例について説明する。
[用語の説明]
まず最初に、実施例1で用いる主要な用語を説明する。実施例1で用いる「コピー元LU(Logical Unit)(特許請求の範囲に記載の「第1の記憶装置」に対応する。)」とは、バックアップ対象ボリュームのデータが記憶されている記憶装置のことである。また、実施例1で用いる「コピー先LU(特許請求の範囲に記載の「第2の記憶装置」に対応する。)」とは、バックアップしたデータが記憶されている記憶装置のことであり、具体的には、スナップショット各々(更新があった箇所の更新前データ)を記憶する。
また、実施例1で用いる「位置情報」とは、当該バックアップ対象ボリューム内にてデータの位置を示す情報である。以下に説明する実施例では、ビットマップテーブルにおいて用いられる「位置情報」とは、例えば、対象となるデータ領域を複数の領域に分割し、分割した領域それぞれにひとつずつ付与されるものである。例えば、実施例1では、ビットマップテーブルにおいて用いられる「位置情報」として、「No.1」や「No.2」などを用いる。なお、以下では、「位置情報「No.1」によって示される位置のデータ」を示す際には、「位置情報「No.1」で示されるデータ」とのみ記載するものとする。
また、バッドデータを示す位置情報として、実施例1では、バッドデータとなる開始アドレス(「バッドデータLBA(Logical Block Addressing)アドレス」)と、当該開始アドレスからバッドデータが連続するサイズ(「バッドデータLBAサイズ」)とを用いる。
なお、ビットマップテーブルにおいて用いられる「位置情報」と、バッドデータの位置を示す位置情報との関係について簡単に説明する。すなわち、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって示されるバッドデータは、ビットマップテーブル401において用いられている「位置情報」のいずれかが付与された領域に含まれることになる。
[ディスクアレイ装置の概要]
次に、図1−1と図1−2とを用いて、実施例1におけるディスクアレイ装置の概要を説明する。図1−1と図1−2とは、実施例1におけるディスクアレイ装置の概要を説明するための図である。
実施例1におけるディスクアレイ装置は、図1−1に示すように、コピー元LUと、コピー先LUと、バックアップ処理を実行するコピー制御装置とを有する。また、実施例1に係るコピー制御装置は、バックアップ状態(コピー状態)を管理するビットマップテーブル(特許請求の範囲に記載の「管理テーブル」に対応する)を有する。
このビットマップテーブルとは、バックアップ対象ボリュームのデータ各々について、位置情報とコピー状態との対応付けを管理する。なお、ここで、コピー状態とは、バックアップ対象ボリュームのデータに更新があった場合に、更新前データ(更新があった箇所の位置情報によって示される更新前のデータ)がコピーされているかを示す情報である。
例えば、図1−1の(1)に示す例では、ビットマップテーブルは、コピー状態を管理する上で、位置情報に対応付けて、更新前データがコピーされている場合には「0」を記憶し、更新前データがコピーされていない場合には「1」を記憶する。
そして、実施例1に係るコピー制御装置は、コピー元LU内に記憶されているバックアップ対象ボリュームのデータに更新があった場合に、更新前データをコピー先LU内にコピーするものである。具体的には、実施例1に係るコピー制御装置は、バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、更新前データをコピー先LU内にコピーする。
例えば、図1−1の(2)に示すように、コピー元LU内の位置情報「No.2」と「No.7」と「No.9」とのデータに、更新があったものとして説明する。例えば、実施例1に係るコピー制御装置は、図1−1の(3)に示すように、位置情報「No.2」と「No.7」と「No.9」とで示される更新前データ各々をコピーする。そして、実施例1に係るコピー制御装置は、図1−1の(4)に示すように、コピーした更新前データ各々(位置情報「No.2」と「No.7」と「No.9」と)を、コピー先LUに記憶させる。
そして、実施例1に係るコピー制御装置では、図1−1の(5)に示すように、ビットマップテーブルが、コピー状態を管理する。例えば、ビットマップテーブルは、図1−1の(5)に示す例では、更新があった位置を示す位置情報「No.2」と「No.7」と「No.9」とに対応付けて、「0」を記憶する。
そして、このような実施例1におけるディスクアレイ装置では、以下で説明するように、読み出し不能のデータであるバッドデータとなっている箇所についてバックアップがあるか否かを簡単に把握することが可能である。
すなわち、実施例1に係るコピー制御装置は、図1−2に示すように、ビットマップテーブルに基づいて、バッドデータの位置を示す位置情報に対応付けられたデータがバックアップされているかを判定する。
例えば、実施例1に係るコピー制御装置は、バッドデータがバックアップ対象ボリュームのデータに存在する場合に、当該バッドデータの位置を示す位置情報をビットマップテーブルから検索する。具体的に例をあげて説明すると、図1−2の(6)に示すように、位置情報「No.7」と「No.8」とで示されるデータにバッドデータが含まれる場合に、図1−2の(7)に示すように、実施例1に係るコピー制御装置は、位置情報「No.7」と「No.8」とをビットマップテーブルから検索する。
そして、例えば、実施例1に係るコピー制御装置は、位置情報に対応付けて管理されているコピー状態に基づいて、バッドデータの更新前データがコピー先LUに記憶されているか否かを判定する。具体的に例をあげて説明すると、図1−2の(8)に示すように、ビットマップテーブルには、位置情報「No.7」に対応付けて「0」を記憶し、位置情報「No.8」に対応付けて「1」を記憶する。このため、例えば、実施例1に係るコピー制御装置は、図1−2の(9−1)に示すように、位置情報「No.7」に対応付けられた更新前データがあると判定し、例えば、位置情報「No.7」のバッドデータを復旧可能であると判定する。また、例えば、実施例1に係るコピー制御装置は図1−2の(9−2)に示すように、位置情報「No.8」に対応付けられた更新前データがないと判定し、例えば、位置情報「No.8」のバッドデータを復旧不可であると判定する。
このようなことから、実施例1におけるディスクアレイ装置は、バッドデータとなっている箇所についてバックアップ(更新前データ)があるか否かを簡単に把握することが可能である。
[ディスクアレイ装置の構成]
次に、図2を用いて、図1−1と図1−2とに示したディスクアレイ装置300の構成を説明する。以下では、まず、保守PC100とホストサーバ200とについて簡単に説明し、その後、ディスクアレイ装置300の構成について説明する。
なお、図2は、実施例1におけるディスクアレイ装置300の構成を示すためのブロック図である。図3は、実施例1におけるビットマップテーブルを説明するための図である。図4は、実施例1におけるコピー制御セッション管理部を説明するための図である。図5は、実施例1における構成テーブルを説明するための図である。図6は、実施例1におけるコピー制御部を説明するための図である。図7は、実施例1における判定部を説明するための図である。図8は、実施例1におけるリストア制御部を説明するための図である。図9は、実施例1におけるリストア制御部を説明するための図である。図10は、実施例1におけるリストア制御部を説明するための図である。
保守PC100は、ディスクアレイ装置300を管理する管理者からの操作を受付け、ディスクアレイ装置300に伝達(通知)する。具体的には、以下に説明するように、保守PC100は、操作画面を要求する旨の指示やリストアの可否を判定する指示、データ復旧に関する指示を伝達する。
また、保守PC100は、ディスクアレイ装置300から情報を受付ける。具体的には、以下に説明するように、操作を受付ける操作画面(保守画面)や判定結果(後述)、実行結果(後述)を受付ける。なお、保守PC100は、ディスクアレイ装置300によって通知された情報(後述する判定部503による判定結果)を表示する表示部(図2には示していない。特許請求の範囲に記載の「表示部」に対応する)を有するものである。
例えば、保守PC100は、操作画面を要求する旨の指示をディスクアレイ装置300に伝達する。具体的な一例をあげて説明すると、保守PC100は、保守操作ログインアドレスを管理者から受付けると、操作画面についてのCGI(Common Gateway Interface)プログラムをディスクアレイ装置300(後述するリストア制御部506)に要求する(操作画面を要求する旨の指示を伝達する)。
また、例えば、保守PC100は、ディスクアレイ装置300(後述するリストア制御部506)によって伝達されたCGIプログラムを展開して、操作を受付ける操作画面(保守画面、例えば、図8参照)を表示部にて表示する。
なお、ここで、管理者(保守者)とは、例えば、ディスクアレイ装置300で障害が発生した場合、ディスクアレイ装置300に保守PC100を接続し,ディスクアレイ装置300から保守PC100に吸い出された保守操作用のCGIなどの利用プログラムを介して保守作業を行う者が該当する。具体的には、管理者は、CGIを介して保守メニューから対象となる障害保守情報を取得(採取)し、保守PC100の表示部に表示された障害保守情報に従って,対象となる障害に対応する。
また、例えば、保守PC100は、リストアの可否を判別する操作が管理者によって入力されると、リストアの可否を判定する指示をディスクアレイ装置300(後述するリストア制御部506)に伝達する。
具体的には、保守PC100は、バッドデータの位置を示す位置情報ごとに判定する指示と「コピー元LU番号(後述)」と「セッション番号(後述)」と「位置情報」とを、ディスクアレイ装置300(後述するリストア制御部506)に伝達する。また、保守PC100は、スナップショットごとに判定する指示と「コピー元LU番号」と「セッション番号」とを、ディスクアレイ装置300(後述するリストア制御部506)に伝達する。
また、例えば、保守PC100は、ディスクアレイ装置300(後述するリストア制御部506)からリストアの可否についての判定結果(例えば、後述するリストア可否テーブル)が伝達されると、伝達された判定結果を表示部にて表示する。
また、例えば、データ復旧に関する要求(指示)が管理者によって入力されると、保守PC100は、ディスクアレイ装置300(後述するリストア制御部506)にデータ復旧に関する指示を伝達する。
具体的には、保守PC100は、位置情報単位にデータ復旧を行う指示やスナップショット単位にデータ復旧を行う指示が管理者によって入力されると、当該指示をディスクアレイ装置300(後述するリストア制御部506)に伝達する。
例えば、保守PC100は、位置情報単位にデータ復旧を行う指示として、「コピー元LU番号」と「セッション番号」と「位置情報」とが管理者によって入力されて受付ける。そして、保守PC100は、受付けた「コピー元LU番号」と「セッション番号」と「位置情報」とを、ディスクアレイ装置300(後述するリストア制御部506)に伝達する。また、例えば、保守PC100は、スナップショット単位にデータ復旧を行う指示として、「コピー元LU番号」と「セッション番号」とが管理者によって入力されて受付ける。そして、保守PC100は、受付けた「コピー元LU番号」と「セッション番号」とを、ディスクアレイ装置300(後述するリストア制御部506)に伝達する。
また、例えば、保守PC100は、ディスクアレイ装置300(後述するリストア制御部506)からホストアダプタ301を介して伝達されたデータ復旧についての実行結果を表示する。なお、保守PC100は、ホストアダプタ301を介さずに、保守PC100専用の接続ポートを用いてディスクアレイ装置300に接続してもよい。
ホストサーバ200は、例えば、バックアップ対象ボリュームのデータやコピータイプを設定する情報や更新指示をディスクアレイ装置300(後述するコピー制御部501)に伝達する。
ディスクアレイ装置300は、保守PC100とホストサーバ200とに接続している。また、このディスクアレイ装置300は、ホストアダプタ301とディスク302と記憶部400と制御部500とを有する。
ホストアダプタ301は、ホストサーバ200などの外部装置と接続し、当該外部装置と情報の送受信を行う。例えば、ホストアダプタ301は、FC(Fibre Channel)などを経由してホストサーバ200と接続し、ホストサーバ200から受信した情報を制御部500に伝達する。また、制御部500から受信した情報を、ホストサーバ200に伝達する。
ディスク302は、以下に説明するように、コピー元LUと、コピー先LUとを有する(図2には示していない)。また、ディスク302が有するコピー元LUやコピー先LUに記憶されている情報は、制御部500(後述するコピー制御部501や、全リストア部504や、部分リストア部505)によって用いられるものである。
ディスク302は、コピー元LUを有する。具体的には、ディスク302は、バックアップ対象ボリュームのデータをコピー元LUに記憶する。なお、このバックアップ対象ボリュームのデータとは、例えば、ホストサーバ200からディスクアレイ装置300に伝達されるものであって、例えば、ディスク302は、ホストサーバ200から伝達されたバックアップ対象ボリュームのデータを、制御部500によって入力されてディスク302のコピー元LUに記憶する。
なお、以下では、ディスク302は、複数のコピー元LUを有し、コピー元LU各々が、それぞれ異なるバックアップ対象ボリュームのデータを記憶するものとして説明を行う。
また、ディスク302は、コピー先LUを有する。具体的には、ディスク302は、バックアップ対象ボリュームのデータについてのバックアップデータを、制御部500(後述するコピー制御部501)によって入力されてコピー先LUに記憶する。
なお、開示のディスクアレイ装置300においては、制御部500(後述するコピー制御部501)が、バックアップデータとして、バックアップを実行する時点における当該バックアップ対象ボリュームのデータを示すスナップショットを、バックアップを実行する時点各々ごとに作成する。このため、ディスク302は、バックアップデータとして、当該時点各々について作成されたスナップショットを、コピー先LUに記憶する。
記憶部400は、制御部500による各種処理に必要なデータを記憶する。特に本発明に密接に関連するものとして、ビットマップテーブル401と、コピー制御セッション管理テーブル402と、構成テーブル403と、を有する。
ビットマップテーブル401は、位置情報とコピー状態との対応付けを管理する。具体的には、ビットマップテーブル401は、バックアップが実行される時点を示す情報に対応付けて、バックアップ対象ボリュームのデータ各々について、位置情報とコピー状態との対応付けを管理する。
言い換えると、ビットマップテーブル401は、バックアップ対象ボリュームのデータ各々を示す位置情報それぞれについてコピー状態が対応付けられた情報を示す「ビットマップ」を管理する。また、ビットマップテーブル401は、バックアップが実行される時点それぞれについて、ビットマップを管理する。
例えば、ビットマップテーブル401は、コピー状態を管理する上で、位置情報に対応付けて、更新前データがコピーされている場合には「0」を記憶し、更新前データがコピーされていない場合には「1」を記憶する。
例えば、図3の(1)に示すように、スナップショット各々について、「No.1」から「No.9」までの9つの位置情報に対応付けてコピー状態を管理する場合を用いて、具体的に説明する。ビットマップテーブル401は、図3の(2)に示すように、バックアップ対象ボリュームを識別する情報である「コピー元LU番号」と、バックアップを実行する時点を識別する情報である「セッション番号」との組み合わせに対応付けて、ビットマップを記憶する。具体的な一例をあげて説明すると、ビットマップテーブル401は、コピー元LU番号「2」とセッション番号「10」との組み合わせに対応付けて、位置情報「1」とコピー状態「1」との対応付けを含むビットマップを記憶する。
また、ビットマップテーブル401は、制御部500(後述するコピー制御部501)によって行われるバックアップ処理に対応して、記憶している情報を管理する。例えば、ビットマップテーブル401は、制御部500(後述するコピー制御部501)によって更新前データがディスク302のコピー先LUに入力されると、当該更新前データの位置情報に対応付けられたコピー状態を「1」から「0」に変更する。
また、ビットマップテーブル401が記憶している情報は、後述する制御部500(例えば、後述する判定部503)によって用いられるものである。
コピー制御セッション管理テーブル402は、図4に示すように、コピー元LUそれぞれについて、コピータイプを管理する。ここで、コピータイプとは、バックアップを行う手法の種類を示す。例えば、更新前データのみをバックアップする手法を示す「SnapOPC」が該当する。例えば、コピー制御セッション管理テーブル402は、図4に示す例では、コピー元LU番号「0」に対応付けて、コピータイプ「SnapOPC」を記憶する。
また、コピー制御セッション管理テーブル402は、例えば、管理者によって予めコピータイプが入力されているものである。例えば、コピー制御セッション管理テーブル402は、管理者によって入力されたコピータイプを設定する情報が、制御部500(後述するコピー制御部501)によって伝達されると、伝達された情報を反映し、コピータイプを管理する。また、コピー制御セッション管理テーブル402に記憶されている情報は、後述する判定部503によって用いられるものである。
なお、実施例1においては、コピー制御セッション管理テーブル402が、「SnapOPC」以外のコピータイプと対応付けて「コピー元LU番号」を記憶する場合について、特に言及しないが、本発明はこれに限定されるものではない。例えば、その他のバックアップ手法(例えば、公知の手法である「OPC(One Point Copy)」など)に対応付けて「コピー元LU番号」を記憶してもよい。
構成テーブル403は、図5に示すように、バッドデータについての情報を記憶する。ここで、バッドデータとは、読み出し不能であるデータであって、具体的には、データが消失して読み出し不能であるデータ(不良ブロックデータ)であると制御部500(後述するRAID制御部502)によって判別されたデータが該当する。
例えば、構成テーブル403は、図5に示す例では、コピー元LU番号それぞれについて、「バッドデータLBA(Logical Block Addressing)アドレス」と、「バッドデータLBAサイズ」との対応付けを記憶する。ここで、「バッドデータLBAアドレス」とは、バッドデータの位置を示す位置情報であり、「バッドデータLBAサイズ」とは、バッドデータのサイズを示す情報である。
なお、実施例1では、図5に示すように、「コピー元LU番号」と「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とに加えて、構成テーブル403が、「構成テーブル番号」と「バッドデータ有無識別情報」とを対応付けて併せて記憶する手法について説明する。ここで、「構成テーブル番号」とは、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」との対応付けを構成テーブル403内にて識別する情報である。また、「バッドデータ有無識別情報」とは、バッドデータであるかを示す情報であり、例えば、バッドデータである場合には「1」となり、バッドデータでない場合(バッドデータが入力されていない場合)には「0」となる。
具体的な例をあげて説明すると、構成テーブル403は、コピー元LU番号「1」と構成テーブル番号「0」との組み合わせに対応付けて、バッドデータ有無識別情報「1」とバッドデータLBAアドレス「0x0000000000007000」とバッドデータLBAサイズ「0x0000000000000010」とを記憶する。
なお、ここで、ビットマップテーブル401において用いられている「位置情報」と、バッドデータの位置を示す位置情報とについて、簡単に説明する。実施例1では、ビットマップテーブル401では、位置情報として、例えば、「No.1」から「No.9」までの9つの位置情報を用いる例を用いて説明する。これらの位置情報は、例えば、コピー元LUそれぞれのデータ領域を9つの領域に分割し、分割した領域それぞれにひとつずつ付与されるものである。
これに対して、実施例1では、それぞれサイズを有するバッドデータを示す位置情報として、バッドデータとなる開始アドレス(「バッドデータLBAアドレス」)と、当該開始アドレスからバッドデータが連続するサイズ(「バッドデータLBAサイズ」)を用いている。ここでいう開始アドレスとは、コピー元LU上における物理アドレスを示す。
ここで、「位置情報」と、バッドデータの位置を示す位置情報との関係について簡単に説明する。すなわち、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって示されるバッドデータは、ビットマップテーブル401において用いられている「位置情報」のいずれかが付与された領域に含まれることになる。
また、構成テーブル403は、制御部500(後述するRAID制御部502)によって、バッドデータに関する情報を入力される。また、構成テーブル403が記憶する情報は、制御部500(後述する判定部503)によって用いられるものである。
制御部500は、各種のバックアップ処理などを実行する。特に本発明に密接に関連するものとして、コピー制御部501と、RAID制御部502と、判定部503と、全リストア部504と、部分リストア部505と、リストア制御部506と、を有する。
なお、コピー制御部501は、特許請求の範囲に記載の「コピー部」に対応する。判定部は、特許請求の範囲に記載の「データ判定部」と「時点毎判定部」とに対応する。リストア制御部506は、特許請求の範囲に記載の「通知部」に対応する。全リストア部504と部分リストア部505とは、特許請求の範囲に記載の「復旧部」に対応する。
コピー制御部501は、バックアップ処理を行う。具体的には、コピー制御部501は、スナップショットを作成する。さらに詳細には、コピー制御部501は、バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、更新前データをディスク302のコピー先LUにコピーする。
例えば、コピー制御部501は、ホストサーバ200から更新指示を受付ける。また、コピー制御部501は、受付けた更新指示により、バックアップを実行する時点より後にバックアップ対象ボリュームのデータに更新が行われる場合に、更新前データをコピーする。
具体的な一例をあげて説明する。例えば、図6の(1)に示すように、管理者からSnapOPCを行う旨のSnapOPC指示が行われたとする。ここで、コピー制御部501は、図6の(2)に示すように、SnapOPC指示後に行われた更新について、当該更新が行われた箇所における更新前のデータのみを複製して、ディスク302のコピー先LUに格納する。
さらに詳細には、コピー制御部501は、SnapOPC指示が行われた後に、図6の(3)に示すように、バックアップ対象ボリュームのデータに対して更新が行われると、図6の(4)に示すように、当該更新が行われた箇所における更新前のデータのみを複製する。そして、コピー制御部501は、図6の(1)に示すSnapOPC指示に対応するセッション情報に対応付けて、図6の(4)に示すように、複製した更新前データをディスク302のコピー先LUに入力する。また、図6の(5)に示すように、再度更新処理があった場合には、コピー制御部501は、同様に、更新が行われた箇所における更新前のデータをコピーして、ディスク302のコピー先LUに入力する。
なお、実施例1におけるコピー制御部501は、SnapOPC指示が行われ、その後、複数の更新処理が行われた場合に、当該更新処理が行われた箇所における更新前のデータがすでに格納されていない場合のみ、当該箇所における更新前のデータをディスク302のコピー先LUに入力する。言い換えると、コピー制御部501は、当該更新処理が行われた箇所における更新前のデータがすでに格納されている場合には、その後、同一の箇所に更新が行われたとしても、再度当該箇所における更新前のデータをディスク302のコピー先LUに入力することはない。
また、コピー制御部501は、コピータイプを設定する情報を、ホストアダプタ301を介してホストサーバ200から受付け、受付けた情報をコピー制御セッション管理テーブル402に伝達する。
RAID制御部502は、バッドデータを判別し、判別したバッドデータに関する情報を、構成テーブル403に入力する。例えば、RAID制御部502は、バックアップ対象ボリュームのデータそれぞれについて、バッドデータが存在するかを一定周期にて判別する。また、例えば、バックアップ対象ボリュームのデータを読み出すごとに、当該読み出したバックアップ対象ボリュームのデータ内にバッドデータがあるかを判別する。
判定部503は、リストア制御部506の指示によって、バッドデータに対応するデータがあるかどうかを判定し、復旧できるかどうかを判定する。例えば、判定部503は、リストアの可否を判定する指示がリストア制御部506から伝達されると、位置情報ごとの判定や、スナップショットごとの判定をおこなう。
判定部503について、具体的に説明する。判定部503は、バッドデータに対応するデータがあるかどうかを判定する。例えば、以下に説明するように、判定部503は、位置情報ごとに判定し、また、スナップショットごとに判定する。
なお、ここで、位置情報ごとに判定するとは、バッドデータの位置を示す位置情報によって示されるデータついて復旧可能であるか(部分リストアを実行できるか)を判定することを示す。また、スナップショットごとに判定するとは、スナップショットが運用上有効な状態であるか(全リストアを実行できるか)を判定することを示す。なお、ここで、運用上有効な状態とは、ある時点におけるスナップショットにおいて、バッドデータの位置を示す位置情報すべてについて、更新前データがバックアップされていることを示す。
まず、位置情報それぞれについて判定する点について説明する。具体的には、判定部503は、バッドデータの位置を示す位置情報ごとに、対応する更新前データがあるかどうかを判定する。さらに詳細には、判定部503は、バッドデータの位置を示す位置情報をビットマップテーブル401から検索する。そして、判定部503は、位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データをディスク302がコピー先LUに記憶しているか否かを判定する。
例えば、図7に示すように、スナップショット各々について、「No.1」から「No.9」までの9つの位置情報に対応付けてコピー状態を管理する場合を用いて、具体的に説明する。また、ここでは、図7の(1)に示すように、「No.2」と「No.7」と「No.9」とで示される更新前データをコピー制御部501がバックアップしたものとする。つまり、ビットマップテーブル401は、位置情報「No.2」と「No.7」と「No.9」とに対応付けて、コピー状態「0」を記憶し、その他の位置情報に対応付けて、コピー状態「1」を記憶する。また、図7の(2)に示すように、コピー制御部501がバックアップを行った後に、バッドデータが発生したものとして説明する。なお、このバッドデータは、構成テーブル403にて説明したように、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって特定される位置にあり、ここでは、当該位置は、「No.7」と「No.8」とによって示される位置内にあるものとして説明する。
例えば、判定部503は、図7に示す例を用いて説明すると、ビットマップテーブル401を検索し、位置情報「No.7」に対応付けてコピー状態「0」がビットマップテーブル401に記憶されていることを読み出す。そして、判定部503は、「No.7」によって示されるバッドデータについては、当該位置における更新前データをディスク302がコピー先LUに記憶していると判定する。また、判定部503は、位置情報「No.8」に対応付けてコピー状態「1」がビットマップテーブル401に記憶されていることを読み出す。そして、判定部503は、「No.8」によって示されるバッドデータについては、当該位置における更新前データをディスク302がコピー先LUに記憶していないと判定する。
その結果、例えば、判定部503は、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって特定されるバッドデータが含まれる位置情報に対応付けて、更新前データを記憶していると判定すると、当該バッドデータに対応するデータがあると判定する。また、判定部503は、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって特定されるバッドデータが含まれる位置情報に対応付けて、更新前データを記憶していないと判定すると、当該バッドデータに対応するデータがあると判定する。
次に、スナップショットごとに判定する点について説明する。具体的には、判定部503は、バッドデータの位置を示す位置情報すべてに対応する更新前データがあるかどうかをスナップショットごと(セッション番号ごと)に判定する。さらに詳細には、判定部503は、バッドデータがバックアップ対象ボリュームのデータに存在する場合に、バッドデータの位置を示す位置情報すべてについて、ビットマップテーブル401のコピー状態を検索する。そして、判定部503は、バッドデータを示す位置情報すべてについて、更新前データがディスク302のコピー先LUに記憶されているか否かを判定する。また、判定部503は、バッドデータを示す位置情報すべてについて更新前データを記憶されているかどうかの判定を、スナップショットごとに(セッション番号に対応付けられているビットマップごとに)行う。
「No.7」と「No.8」とによって示される位置内にバッドデータが含まれる場合を用いて、具体的に説明する。ここで、スナップショット「N」においては、位置情報「No.7」と「No.8」との両方について更新前データが記憶されているものとする(例えば、セッション番号「N」に対応付けられたビットマップにおいては、位置情報「No.7」と「No.8」との両方について、コピー状態「0」が対応付けられているとする)。また、スナップショット「M」においては、位置情報「No.8」のみについて更新前データが記憶されているものとする(例えば、セッション番号「M」に対応付けられたビットマップにおいては、位置情報「No.8」のみについて、コピー状態「0」が対応付けられているとする)。
例えば、判定部503は、ビットマップテーブル401を検索し、「No.7」と「No.8」との両方について更新前データが記憶されているかを、スナップショットごとに判定する。
具体的な例をあげて説明すると、判定部503は、ビットマップテーブル401を検索し、位置情報「No.7」と「No.8」との両方についてコピー状態「0」が記憶されているかを、スナップショットごとに(ビットマップごとに)読み出す。そして、例えば、判定部503は、スナップショット「N」については、バッドデータを示す位置情報すべてについて、更新前データが格納されていると判定する。また、判定部503は、スナップショット「M」については、バッドデータを示す位置情報すべてについて、更新前データが格納されていないと判定する(すなわち、「No.7」についてコピー状態「0」が記憶されておらず、および/または、「No.8」についてコピー状態「0」が記憶されていないと判定する)。
また、判定部503は、バッドデータに対応するデータがあるかどうかを判定した判定結果を用いて、当該バッドデータを復旧できるかを判定する。具体的には、判定部503は、更新前データを記憶していると判定すると、バッドデータを復旧できると判定する。また、判定部503は、更新前データを記憶していないと判定すると、バッドデータを復旧できないと判定する。
例えば、判定部503は、バッドデータを示す位置情報によって示される更新前データを記憶していると判定すると、当該位置情報について復旧可能と(部分リストアをリストア可と)判定する。また、例えば、判定部503は、あるスナップショットについて、バッドデータを示す位置情報すべてについて更新前データが格納されていると判定すると、当該スナップショットが運用上有効な状態にあると判定する(当該スナップショットを用いて全リストアを実行できる(リストア可)と判定する)。
さらに詳細には、判定部503は、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とによって特定されるバッドデータについて、当該バッドデータが含まれるビットマップにおける位置情報(例えば、「No.7」など)を判別する。そして、判別したビットマップにおける位置情報に対応付けて更新前データがあると判定すると、当該バッドデータを復旧できると判定する。また、判定部503は、判別したビットマップにおける位置情報に対応付けて更新前データがないと判定すると、当該バッドデータを復旧できないと判定する。
具体的な一例を挙げて説明すると、判定部503は、リストアの可否を判定する指示と、バッドデータを示す位置情報(例えば、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」と)をリストア制御部506から受付ける。そして、判定部503は、受付けたバッドデータを示す位置情報(例えば、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」と)について、当該バッドデータが含まれるビットマップにおける位置情報(例えば、「No.7」など)を判別し、判別したビットマップにおける位置情報に対応付けて更新前データがあるかを判定する。また、判定部503は、スナップショットそれぞれ(ビットマップそれぞれ)について、受付けたバッドデータを示す位置情報すべてについて更新前データがあるかを判定する。
また、判定部503は、判定結果をリストア制御部506に伝達する。例えば、判定部503は、バッドデータの位置を示す位置情報それぞれについて判定した判定結果やスナップショットそれぞれについての判定結果を、リストア制御部506に伝達する。具体的な一例をあげて説明すると、判定部503は、バッドデータを示す情報として、「コピー元LU番号」と「バッドデータLBAアドレス」と「バッドデータLBAサイズ」との組み合わせそれぞれについて、判定結果を伝達する。例えば、判定部503は、判定結果として、「セッション番号」と、部分リストアの可否を示す「部分リストア可否」と、全リストアの可否を示す「全リストア可否」と、を伝達する。
具体的な一例を挙げて説明すると、判定部503は、セッション番号「10」とコピー元LU番号「0」とバッドデータLBAアドレス「0x0000000000007000」とバッドデータLBAサイズ「0x0000000000000010」との組み合わせに対応付けて、部分リストア可否「リストア可」を伝達する。また、判定部503は、セッション番号「10」とコピー元LU番号「0」とに対応付けて、全リストア可否「不可」とを伝達する。
なお、判定部503による処理の詳細な一例については、後述するため、ここでは説明を省略する。
全リストア部504は、スナップショット単位にデータ復旧を行う指示がリストア制御部506から伝達されると、スナップショット単位にデータ復旧を実行する(全リストアを実行する)。例えば、全リストア部504は、「コピー元LU番号」と「セッション番号」とがリストア制御部506から伝達されると、対応するスナップショットをディスク302のコピー先LUから取得する。そして、全リストア部504は、取得したスナップショットを、伝達された「コピー元LU番号」に反映する。
また、全リストア部504は、スナップショット単位にデータ復旧を実行する(全リストアを実行する)と、実行結果をリストア制御部506に伝達する。例えば、全リストア部504は、データ復旧を成功した場合には、データ復旧を実行した旨をリストア制御部506に伝達する。
部分リストア部505は、位置情報単位にデータ復旧を行う指示がリストア制御部506から伝達されると、位置情報単位にデータ復旧を実行する(部分リストアを実行する)。例えば、部分リストア部505は、「コピー元LU番号」と「セッション番号」と「位置情報」とがリストア制御部506から伝達されると、伝達された「位置情報」によって示される更新前データを対応するスナップショット内から取得する。そして、部分リストア部505は、取得した更新前データを、「コピー元LU番号」内の位置であって伝達された「位置情報」によって示される位置に、取得した更新前データを反映する。
また、部分リストア部505は、位置情報単位にデータ復旧を実行する(部分リストアを実行する)と、実行結果をリストア制御部506に伝達する。例えば、部分リストア部505は、データ復旧を成功した場合には、データ復旧を実行した旨をリストア制御部506に伝達する。
リストア制御部506は、ホストアダプタ301を介して保守PC100から指示を受けつけると、当該指示に対応する処理を行う。例えば、以下に説明するように、リストア制御部506は、操作画面表示制御処理と、リストアの可否判定制御処理と、データ復旧制御処理とを行うものである。
まず、操作画面表示制御処理について説明する。リストア制御部506は、ホストアダプタ301を介して保守PC100から操作画面を要求する旨の指示が伝達されると、操作を受付ける操作画面(保守画面)をホストアダプタ301を介して保守PC100に伝達する。具体的な例をあげて説明すると、リストア制御部506は、操作画面についてのCGIプログラムを吸い出すコマンド(要求)を受付けると、図8に示すような操作画面を表示するCGIプログラムをホストアダプタ301を介して保守PC100に伝達する。
なお、図8に示した操作画面は、操作画面の一例であって、例えば、活性保守を選択する「活性保守」と、判定処理を選択する「バッドデータリストア可否判別」と、ファームの登録を選択する「ファーム登録」と、ファームの適用を選択する「ファーム適用」とを有する。また、図8に示した操作画面は、選択した操作を実行する「OK」と、選択した操作を取り消す「キャンセル」とを有するものである。
次に、リストアの可否判定制御処理について説明する。リストア制御部506は、ホストアダプタ301を介して保守PC100からリストアの可否を判定する指示を受付けると、受付けた指示を判定部503に伝達する。
例えば、リストア制御部506は、リストアの可否を判定する指示と、バッドデータを示す位置情報(例えば、「バッドデータLBAアドレス」と「バッドデータLBAサイズ」と)とがホストアダプタ301を介して保守PC100から伝達されて受付ける。そして、例えば、リストア制御部506は、リストアの可否を判定する指示と、バッドデータを示す位置情報とを、判定部503に伝達する。
また、リストア制御部506は、判定結果を判定部503から受付けると、受付けた判定結果をホストアダプタ301を介して保守PC100に伝達する。
具体的な一例をあげて説明すると、リストア制御部506は、バッドデータを示す位置の位置情報ごとやスナップショットごとに判定部503によって判定された判定結果を、図9に示すように、テーブル(リストア可否テーブル)として設定する。例えば、図9に示す例では、リストア制御部506は、判定部503から伝達された判定結果を、「コピー元LU番号」と「バッドデータLBAアドレス」と「バッドデータLBAサイズ」との組み合わせ各々について、「セッション番号」と「部分リストア可否」と「全リストア可否」とを対応付けたテーブル(リストア可否テーブル)として設定する。そして、リストア制御部506は、設定したテーブル(リストア可否テーブル)をホストアダプタ301を介して保守PC100に伝達する。
そして、データ復旧制御処理について説明する。リストア制御部506は、保守PC100から伝達されたデータ復旧に関する要求(指示)をホストアダプタ301を介して伝達されて受付けると、受付けた指示を部分リストア部505や全リストア部504に伝達する。
例えば、リストア制御部506は、位置情報単位にデータ復旧を行う指示がホストアダプタ301を介して保守PC100から伝達されると、その旨を部分リストア部505に伝達する。具体的な一例をあげて説明すると、リストア制御部506は、「コピー元LU番号」と「セッション番号」と「位置情報」とがホストアダプタ301を介して保守PC100から伝達されると、伝達された情報を部分リストア部505に伝達する。
また、例えば、リストア制御部506は、スナップショット単位にデータ復旧を行う指示が(全リストアを実行するコマンドを)ホストアダプタ301を介して保守PC100から伝達されると、その旨を全リストア部504に伝達する。具体的な一例をあげて説明すると、リストア制御部506は、「コピー元LU番号」と「セッション番号」とがホストアダプタ301を介して保守PC100から伝達されると、伝達された情報を全リストア部504に伝達する。
例えば、図10に示すように、保守PC100にて、管理者からデータ復旧を実行する操作が行われ、データ復旧を実行する指示が、ホストアダプタ301を介して保守PC100から伝達されると、全リストア部504や部分リストア部505にその旨を伝達する。
具体的な例をあげて説明すると、図10に示す例では、保守PC100は、データ復旧を行うバッドデータが一つ選択され、データ復旧を実行する操作を受付ける「OK」とデータ復旧を行わない「キャンセル」とを有する画面が表示されている。ここで、管理者より、「OK」が選択されると、バッドデータについてデータ復旧を行う旨の要求がホストアダプタ301を介して保守PC100からリストア制御部506に伝達される。そして、リストア制御部506は、部分リストア部505にその旨を伝達する。
また、同様に、保守PC100にて、管理者から全リストアを実行する操作が行われると、全リストアを行う旨の要求がホストアダプタ301を介して保守PC100からリストア制御部506に伝達される。そして、リストア制御部506は、全リストア部504にその旨を伝達する。
また、例えば、リストア制御部506は、全リストア部504や部分リストア部505から、実行結果を伝達されると、伝達された実行結果をホストアダプタ301を介して保守PC100に伝達する。例えば、リストア制御部506は、データ復旧を実行した旨を全リストア部504や部分リストア部505から伝達されると、その旨をホストアダプタ301を介して保守PC100に伝達する。
[ディスクアレイ装置300による処理]
次に、図11〜図16を用いて、ディスクアレイ装置300による処理を説明する。以下では、まず、図11〜図14を用いて、管理者と保守PC100とディスクアレイ装置300との間における処理の流れ(操作画面要求処理、判定要求処理、全リストア要求処理、部分リストア要求処理)を説明する。その後、図15と図16とを用いて、ディスクアレイ装置300における判定処理の流れについて説明する。
なお、図11は、実施例1における操作画面要求処理の流れを示すフローチャートである。図12は、実施例1における判定要求処理の流れを示すフローチャートである。図13は、実施例1における全リストア要求処理の流れを示すフローチャートである。図14は、実施例1における部分リストア要求処理の流れを示すフローチャートである。図15は、実施例1における判定処理の流れを示すフローチャートである。図16は、実施例1におけるスナップショットごとの判定処理の流れの一例を示すフローチャートである。
[操作画面要求処理]
まず、図11を用いて、操作画面要求処理について説明する。
図11に示すように、保守PC100に対して、操作画面(保守画面)を要求する操作が入力されると(ステップS101)、例えば、保守操作ログイン用アドレスがブラウザの管理者によってキーボードから打ち込まれると、保守PC100は、CGIプログラム吸出しコマンドを伝達する(ステップS102)。つまり、保守PC100は、操作画面についてのCGIプログラムをディスクアレイ装置300(リストア制御部506)に要求する。
そして、ディスクアレイ装置300(リストア制御部506)は、ホストアダプタ301を介して保守PC100から操作画面についてのCGIプログラムを要求する旨を受付けると、CGIプログラムを伝達する(ステップS103)、例えば、リストア制御部506は、CGIプログラムを、ホストアダプタ301を介して保守PC100に伝達する。
そして、保守PC100は、ディスクアレイ装置300(リストア制御部506)によって伝達されたCGIプログラムを展開して、操作画面を表示部にて表示する(ステップS104)。
[判定要求処理]
次に、図12を用いて、判定要求処理について説明する。
図12に示すように、保守PC100に対して、リストアの可否を判別する操作が管理者によって入力されると(ステップS201)、例えば、図8に示す例を用いて説明すると、「リストア可否判別」が(マウス等によって)選択されると、保守PC100は、リストアの可否を判定する指示をディスクアレイ装置300に伝達する(ステップS202)。なお、保守PC100に対して、リストア可否判別する操作が入力(選択)されなかった場合には、処理を終了する。例えば、保守PC100に対して、リストア可否判別する操作が入力(選択)されず、例えば、処理がキャンセルされた場合などが該当する。
そして、ディスクアレイ装置300は、ホストアダプタ301を介して保守PC100からリストアの可否を判定する指示を受付けると、リストア可否を判別する(ステップS203)。つまり、リストア制御部506は、ホストアダプタ301を介して保守PC100からリストアの可否を判定する指示を受付けると、受付けた指示を判定部503に伝達し、判定部503は、リストア可否を判定する。
そして、ディスクアレイ装置300(リストア制御部506)は、判定結果をリストア可否テーブルに設定する(ステップS204)。そして、リストア制御部506は、リストア可否テーブルをホストアダプタ301を介して保守PC100に伝達する(ステップS205)。
そして、保守PC100は、伝達されたリストア可否テーブルを表示部にて表示する(ステップS206)。
[全リストア要求処理]
図13に示すように、全リストアを選択されると(ステップS301)、つまり、保守PC100に対して、全リストアを実行する指示が管理者によって入力されると、保守PC100は、全リストアを実行するコマンドをディスクアレイ装置300に伝達する(ステップS302)。なお、保守PC100に対して、全リストアが選択されなかった場合には、処理を終了する。
そして、ディスクアレイ装置300(リストア制御部506)は、全リストアを実行するコマンドをホストアダプタ301を介して受付けると、全リストアプログラムを起動し(ステップS303)、全リストアを実行する(ステップS304)。つまり、リストア制御部506は、全リストアを実行するコマンドを全リストア部504に伝達し、全リストア部504が、全リストアを実行する。また、全リストア部504は、実行結果をリストア制御部506に伝達し、リストア制御部506が、実行結果をホストアダプタ301を介して保守PC100に伝達する。
そして、保守PC100は、実行結果を表示する(ステップS305)。つまり、保守PC100は、リストア制御部506からホストアダプタ301を介して伝達された実行結果を表示する。
[部分リストア要求処理]
図14に示すように、部分リストアを選択されると(ステップS401)、つまり、保守PC100に対して、部分リストアを実行する指示が管理者によって入力されると、保守PC100は、部分リストアを実行するコマンドをディスクアレイ装置300に伝達する(ステップS402)。なお、保守PC100に対して、部分リストアが選択されなかった場合には、処理を終了する。
そして、ディスクアレイ装置300(リストア制御部506)は、部分リストアを実行するコマンドをホストアダプタ301を介して受付けると、部分リストアプログラムを起動し(ステップS403)、部分リストアを実行する(ステップS404)。つまり、リストア制御部506は、部分リストアを実行するコマンドを部分リストア部505に伝達し、部分リストア部505が、部分リストアを実行する。また、部分リストア部505は、実行結果をリストア制御部506に伝達し、リストア制御部506が、実行結果をホストアダプタ301を介して保守PC100に伝達する。
そして、保守PC100は、実行結果を表示する(ステップS405)。つまり、保守PC100は、リストア制御部506からホストアダプタ301を介して伝達された実行結果を表示する。
[位置情報ごとの判定処理]
図15に示すように、ディスクアレイ装置300では、判定開始タイミングとなると(ステップS501肯定)、つまり、リストアの可否を判別する操作が行われた旨がリストア制御部506から判定部503に伝達されると、判定部503は、コピー制御セッション管理テーブル402を参照する(ステップS502)。例えば、判定部503は、参照変数(例えば、番号)を初期化(0クリア)し、番号を一つ選択する。具体的な一例をあげて説明すると、判定部503は、コピー制御セッション管理テーブル402に記憶されているコピー元LU番号の一番小さいものを選択する。
そして、判定部503は、コピー制御セッション管理テーブル402に記憶されているコピー元LU番号について、すべて参照したかを判別する(ステップS503)。例えば、判定部503は、選択した番号についてのコピー元LU番号があるか否かを判別する。ここで、判定部503は、すべて参照したと判別した場合には(ステップS503肯定)、処理を終了する。
一方、判定部503は、すべて参照していないと判別した場合には(ステップS503否定)、「コピータイプ」が「SnapOPC」であるかを判別する(ステップS504)。つまり、判定部503は、選択したコピー元LU番号に対応付けられた「コピータイプ」が、「SnapOPC」であるかを判別する。ここで、判定部503は、コピータイプ「SnapOPC」であると判別した場合には(ステップS504肯定)、選択したコピー元LU番号をコピー制御セッション管理テーブル402から取り出す(読出す)(ステップS505)。
そして、判定部503は、取り出した「コピー元LU番号」に対応する構成テーブル403を参照する(ステップS506)。例えば、判定部503は、参照変数(例えば、番号)を初期化(0クリア)し、構成テーブル403にて番号を一つ選択する。具体的な一例をあげて説明すると、判定部503は、取り出したコピー元LU番号に構成テーブル403にて対応付けられた「構成テーブル番号」の内、一番小さいものを選択する。
そして、判定部503は、バッドデータがあるかを判別する(ステップS507)。例えば、判定部503は、選択した「構成テーブル番号」に対応付けられた「バッドデータ番号」が、「0」か「1」かを判別する。ここで、判定部503は、バッドデータがあると判別した場合には(ステップS507肯定)、バッドデータ部分のビットマップにおいて、ビットが「0」になっているかを判別する(ステップS508)。つまり、判定部503は、バッドデータについて、更新前データが格納されているかを判別する。さらに詳細には、判定部503は、「構成テーブル番号」に対応付けられた「バッドデータLBAアドレス」と「バッドデータLBAサイズ」とに対応する位置情報に対応付けて、ビットマップテーブル401において「0」が記憶されているかを判別する。
なお、ここで、判別部503は、バッドデータについて更新前データが格納されているかを判別する際には、すべてのスナップショットについて(ビットマップについて)判別を行う。例えば、「コピー元LU番号」に対応付けて、セッション番号が「1」から「10」まである場合には(スナップショットが10個ある場合には)、当該セッション番号「1」〜「10」それぞれに作成されているビットマップについて、バッドデータについて更新前データが格納されているかを判別する。
ここで、判定部503が、ビットが「0」になっていると判別した場合には(ステップS508肯定)、判定部503は、当該バッドデータについて「部分リストア可」とリストア制御部506に伝達し、リストア制御部506が、リストア可否判別テーブルにその旨を設定する(ステップS509)。つまり、リストア制御部506は、バッドデータ部分可能結果を設定する。
一方、判定部503が、ビットが「0」になっていないと判別した場合には(ステップS508否定)、判定部503は、当該バッドデータについて「部分リストア不可」とリストア制御部506に伝達し、リストア制御部506が、リストア可否判別テーブルにその旨を設定する(ステップS510)。つまり、リストア制御部506は、バッドデータ部分不可能結果を設定する。
そして、判定部503は、取り出したコピー元LU番号に対応付けられた構成テーブル403にて、参照変数を1つインクリメントする(ステップS511)。そして、判定部503は、上記したステップS507において、判定部503が、バッドデータなしと判定するまで、上記した処理(ステップS507〜S511)を繰り返す。
また、一方、判定部503は、上記したステップS504において、「コピータイプ」が「SnapOPC」でないと判別し(ステップS504否定)、または、上記したステップS507において、バッドデータなしと判定すると(ステップS507否定)、判定部503は、コピー制御セッション管理テーブル402の参照変数を1つインクリメントする(ステップS512)。そして、判定部503は、上記したステップS503において、すべて参照したと判別するまで、上記した処理(ステップS504〜S512)を繰り返す。
そして、判定部503は、上記したステップS503において、すべて参照したと判別すると(ステップS503肯定)、処理を終了する。
[スナップショットごとの判定処理]
図16に示すように、判定部503は、位置情報ごとの判定が終了したかを判定する(ステップS601)。例えば、図15に示した処理が終了したかを判定する。ここで、判定部503は、位置情報ごとの判定が終了した場合には(ステップS601肯定)、セッション番号を一つ選択する(ステップS602)。つまり、判定部503は、判定を行うコピー元LU番号に対応付けられた「セッション番号」を一つ選択する。
そして、判定部503は、当該セッション番号についてのスナップショットについて、バッドデータを示す位置情報すべてについて更新前データが格納されているかを判別する(ステップS603)。ここで、判定部503は、バッドデータを示す位置情報すべてについて更新前データが格納されていると判定した場合には(ステップS603肯定)、全リストア可と判定する(ステップS604)。また、一方、判定部503は、バッドデータを示す位置情報すべてについて更新前データが格納されていないと判定した場合には(ステップS603否定)、全リストア不可と判定する(ステップS605)。
そして、判定部503は、セッション番号すべてについて選択したかを判定する(ステップS606)。ここで、判定部503は、セッション番号すべてについて選択していないと判定した場合には(ステップS606否定)、未選択のセッション番号を一つ選択する(ステップS607)。そして、セッション番号すべてについて選択したと判定するまで、上記したステップS603からS606の処理を繰り返す。
一方、判定部503は、セッション番号すべてについて選択したと判定した場合には(ステップS606肯定)、処理を終了する。
[実施例1の効果]
上記したように、実施例1によれば、バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、更新前データをディスク302にコピーし、バックアップ対象ボリュームのデータ各々について、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報に対応付けて、当該位置情報で示されるデータの更新前データがディスク302にコピーされているか否かの状態を示すコピー状態を管理し、バッドデータがバックアップ対象ボリュームのデータに存在する場合に、当該バッドデータの位置を示す位置情報をビットマップテーブル401から検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データがディスク302に記憶されているか否かを判定するので、バッドデータとなっている箇所についてバックアップがあるか否かを簡単に把握することが可能である。
また、実施例1によれば、判定結果を、コピー制御装置を管理する保守PC100に通知し、保守PC100の表示部が通知された判定結果を表示するので、ディスプレイにて判定結果を確認しながら、当該管理装置を利用する利用者は、作業を実行することが可能である。
また、実施例1によれば、更新前データがディスク302に記憶されているか否かを、バッドデータの位置を示す位置情報ごとに判定する。また、バッドデータがバックアップ対象ボリュームのデータに存在する場合に、当該バッドデータの位置を示す位置情報をビットマップテーブル401から検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該データ異常箇所を示す当該位置情報すべてについて、当該バッドデータの更新前データがディスク302に記憶されているか否かを時点単位ごとに判定する。これにより、実施例1によれば、部分リストアか、全リストアかが実行できるかを簡単に判定することが可能である。
また、実施例1によれば、位置情報単位にデータ復旧を行う指示もしくはスナップショット単位にデータ復旧を行う指示を受付け、位置情報単位にデータ復旧を行う指示が受付けられた場合に、当該位置情報単位にデータ復旧を実行し、受付部によってスナップショット単位にデータ復旧を行う指示が受付けられた場合に、当該スナップショット単位にデータ復旧を実行するので、部分リストアか、全リストアかを簡単に実行することが可能である。
さて、これまで本発明の実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、その他の実施例について説明する。
[判定]
実施例1では、ディスクアレイ装置300は、保守PC100から指示を受けると、判定する処理を行う場合について説明したが、本発明はこれに限定されるものではない。例えば、ディスクアレイ装置300は、一定周期にて、判定処理を行い、その結果を保守PC100に通知してもよい。例えば、ディスクアレイ装置300は、新たなバッドデータがRAID制御部502によって判別されると、当該バッドデータについて判定処理を行い、判定結果を保守PC100に伝達してもよい。
[バッドデータ検出]
また、実施例1では、バッドデータを、一定周期にて判別する手法について説明したが、本発明はこれに限定されるものではない。例えば、管理者の指示をホストPC100から伝達されるごとに判別してもよく、ホストサーバからアクセスがあるごとに判別してもよい。
[判定手法の処理手順について]
上記した実施例では、位置情報ごとに判定処理を実行し、その後、スナップショットごとに判定処理を実行する例について説明したが(図16など)、本発明はこれに限定されるものではなく、それぞれを別個独立の処理として実行してもよい。
[実施例の組み合わせについて]
上記した実施例1では、バッドデータに対応する更新前データをバックアップしているかを判定するとともに、(1)判定結果を通知する手法と、(2)通知された判定結果を表示する手法と、(3)部分リストアか、全リストアかを実行できるかを判定する手法と、(4)部分リストアを実行する指示や、全リストアを実行する指示を受付ける手法と、を併せて実施する手法について説明した。しかし、本発明はこれに限定されるものではなく、上記した(1)〜(4)の内、任意の手法のみを実施してもよい。
[システム構成]
また、この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については(例えば、図1〜15)、特記する場合を除いて任意に変更することができる。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、図2に示す例では、ディスク302を、コピー元LUとコピー先LUとに分割してもよい。
[プログラム]
ところで、上記実施例1では、ハードウェアロジックによって各種の処理を実現する場合を説明したが、本発明はこれに限定されるものではなく、予め用意されたプログラムをコンピュータで実行することによって実現するようにしてもよい。そこで、以下では、図17を用いて、上記の実施例1に示したディスクアレイ装置300と同様の機能を有するディスクアレイ装置300のプログラムを実行するコンピュータの一例を説明する。なお、図17は、実施例1におけるディスクアレイ装置300のプログラムを説明するための図である。
同図に示すように、実施例1におけるディスクアレイ装置3000は、操作部3001、マイク3002、スピーカ3003、ディスク3004、ディスプレイ3005、通信部3006、CPU3010、ROM3011、HDD3012、RAM3013をバス3009などで接続して構成されている。
ROM3011には、上記の実施例1で示したコピー制御部501と、RAID制御部502と、判定部503と、全リストア部504と、部分リストア部505と、リストア制御部506と同様の機能を発揮する制御プログラム、つまり、同図に示すように、コピー制御プログラム3011aと、RAID制御プログラム3011bと、判定プログラム3011cと、全リストアプログラム3011dと、部分リストアプログラム3011eと、リストア制御プログラム3011fとが予め記憶されている。なお、これらのプログラム3011a〜3011fについては、図2に示したディスクアレイ装置300の各構成要素と同様、適宜統合または分離してもよい。
そして、CPU3010が、これらのプログラム3011a〜3011fをROM3011から読み出して実行することにより、図17に示すように、各プログラム3011a〜3011fについては、コピー制御プロセス3010aと、RAID制御プロセス3010bと、判定プロセス3010cと、全リストアプロセス3010dと、部分リストアプロセス3010eと、リストア制御プロセス3010fとして機能するようになる。なお、各プロセス3010a〜3010fは、図2に示した、コピー制御部501と、RAID制御部502と、判定部503と、全リストア部504と、部分リストア部505と、リストア制御部506と、にそれぞれ対応する。
そして、HDD3012には、ビットマップテーブル3012aと、コピー制御セッション管理テーブル3012bと、構成テーブル3012cとが設けられている。なお、各テーブル3012a〜3012cは、図2に示した、ビットマップテーブル401と、コピー制御セッション管理テーブル402と、構成テーブル403とにそれぞれ対応する。
そして、CPU3010は、ビットマップテーブル3012aと、コピー制御セッション管理テーブル3012bと、構成テーブル3012cとを読み出してRAM3013に格納し、RAM3013に格納されたビットマップデータ3013aと、コピー制御セッション管理データ3013bと、構成データ3013cと、を用いて、ディスクアレイ装置プログラムを実行する。
[その他]
なお、本実施例で説明したディスクアレイ装置300は、あらかじめ用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。このプログラムは、インターネットなどのネットワークを介して配布することができる。また、このプログラムは、ハードディスク、フレキシブルディスク(FD)、CD−ROM、MO、DVDなどのコンピュータで読み取り可能な記録媒体に記録され、コンピュータによって記録媒体から読み出されることによって実行することもできる。
以上の実施例1と2とを含む実施形態に関し、更に以下の付記を開示する。
(付記1)第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータに更新があった場合に、当該データが更新される前のデータである更新前データを第2の記憶装置内にコピーするコピー制御装置であって、
前記バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、前記更新前データを前記第2の記憶装置内にコピーするコピー部と、
前記バックアップ対象ボリュームのデータ各々について、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報に対応付けて、当該位置情報で示されるデータの更新前データが前記コピー部によって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態を管理する管理テーブルと、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを判定するデータ判定部と、
を備えたことを特徴とするコピー制御装置。
(付記2)前記データ判定部による判定結果を、前記コピー制御装置を管理する管理端末に通知する通知部をさらに備えたことを特徴とする付記1に記載のコピー制御装置。
(付記3)前記管理端末は表示部を備えるものであって、
前記表示部は、前記通知部によって通知された前記データ判定部による判定結果を表示することを特徴とする付記2に記載のコピー制御装置。
(付記4)前記コピー制御装置は、前記バックアップ対象ボリュームについて、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点各々ごとに作成するものであって、
前記コピー部は、バックアップを実行する時点より後に前記バックアップ対象ボリュームのデータに更新があった場合に、前記更新前データをコピーし、
前記管理テーブルは、前記時点に対応付けて、前記位置情報と前記コピー状態との対応付けを管理し、
前記データ判定部は、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを、前記バッドデータの位置を示す位置情報ごとに判定し、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定部をさらに備えることを特徴とする付記1〜3のいずれか一つに記載のコピー制御装置。
(付記5)前記位置情報単位にデータ復旧を行う指示もしくは前記スナップショット単位にデータ復旧を行う指示を受付ける受付部と、
前記受付部によって前記位置情報単位にデータ復旧を行う指示が受付けられた場合に、当該位置情報単位にデータ復旧を実行し、前記受付部によって前記スナップショット単位にデータ復旧を行う指示が受付けられた場合に、当該スナップショット単位にデータ復旧を実行する復旧部と、
をさらに備えることを特徴とする付記1〜4のいずれか一つに記載のコピー制御装置。
(付記6)第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータに更新があった場合に、当該データが更新される前のデータである更新前データを第2の記憶装置内にコピーするコピー制御方法であって、
前記バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、前記更新前データを前記第2の記憶装置内にコピーするコピーステップと、
前記バックアップ対象ボリュームのデータ各々について、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報に対応付けて、当該位置情報で示されるデータの更新前データが前記コピーステップによって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態を管理テーブルにて管理する管理ステップと、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを判定するデータ判定ステップと、
を含んだことを特徴とするコピー制御方法。
(付記7)前記データ判定ステップによる判定結果を、前記コピー制御方法を実行するコピー制御装置を管理する管理端末に通知する通知ステップをさらに含んだことを特徴とする付記6に記載のコピー制御方法。
(付記8)前記管理端末は表示ステップを備えるものであって、
前記表示ステップは、前記通知ステップによって通知された前記データ判定ステップによる判定結果を表示することを特徴とする付記7に記載のコピー制御方法。
(付記9)前記コピー制御方法は、前記バックアップ対象ボリュームについて、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点各々ごとに作成するものであって、
前記コピーステップは、バックアップを実行する時点より後に前記バックアップ対象ボリュームのデータに更新があった場合に、前記更新前データをコピーし、
前記管理テーブルは、前記時点に対応付けて、前記位置情報と前記コピー状態との対応付けを管理し、
前記データ判定ステップは、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを、前記バッドデータの位置を示す位置情報ごとに判定し、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定ステップをさらに備えることを特徴とする付記6〜8のいずれか一つに記載のコピー制御方法。
(付記10)前記位置情報単位にデータ復旧を行う指示もしくは前記スナップショット単位にデータ復旧を行う指示を受付ける受付ステップと、
前記受付ステップによって前記位置情報単位にデータ復旧を行う指示が受付けられた場合に、当該位置情報単位にデータ復旧を実行し、前記受付ステップによって前記スナップショット単位にデータ復旧を行う指示が受付けられた場合に、当該スナップショット単位にデータ復旧を実行する復旧ステップと、
をさらに備えることを特徴とする付記6〜9のいずれか一つに記載のコピー制御方法。
(付記11)第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータに更新があった場合に、当該データが更新される前のデータである更新前データを第2の記憶装置内にコピーするコピー制御方法をコンピュータに実行させるコピー制御プログラムであって、
前記バックアップ対象ボリュームのデータを更新することを指示する更新指示に基づいて、前記更新前データを前記第2の記憶装置内にコピーするコピー手順と、
前記バックアップ対象ボリュームのデータ各々について、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報に対応付けて、当該位置情報で示されるデータの更新前データが前記コピー手順によって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態を管理テーブルにて管理する管理手順と、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを判定するデータ判定手順と、
をコンピュータに実行させることを特徴とするコピー制御プログラム。
(付記12)前記データ判定手順による判定結果を、前記コピー制御方法を実行するコピー制御装置を管理する管理端末に通知する通知手順をさらに含んだことを特徴とする付記11に記載のコピー制御プログラム。
(付記13)前記管理端末は表示手順を備えるものであって、
前記表示手順は、前記通知手順によって通知された前記データ判定手順による判定結果を表示することを特徴とする付記12に記載のコピー制御プログラム。
(付記14)前記コピー制御プログラムは、前記バックアップ対象ボリュームについて、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点各々ごとに作成する処理をコンピュータに実行させるコピー制御プログラムであって、
前記コピーステップは、バックアップを実行する時点より後に前記バックアップ対象ボリュームのデータに更新があった場合に、前記更新前データをコピーし、
前記管理テーブルは、前記時点に対応付けて、前記位置情報と前記コピー状態との対応付けを管理し、
前記データ判定手順は、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを、前記バッドデータの位置を示す位置情報ごとに判定し、
読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定手順をさらに備えることを特徴とする付記11〜13のいずれか一つに記載のコピー制御プログラム。
(付記15)前記位置情報単位にデータ復旧を行う指示もしくは前記スナップショット単位にデータ復旧を行う指示を受付ける受付手順と、
前記受付手順によって前記位置情報単位にデータ復旧を行う指示が受付けられた場合に、当該位置情報単位にデータ復旧を実行し、前記受付手順によって前記スナップショット単位にデータ復旧を行う指示が受付けられた場合に、当該スナップショット単位にデータ復旧を実行する復旧手順と、
をさらに備えることを特徴とする付記11〜14のいずれか一つに記載のコピー制御プログラム。
実施例1におけるディスクアレイ装置の概要および特徴を説明するための図である。 実施例1におけるディスクアレイ装置の概要および特徴を説明するための図である。 実施例1におけるディスクアレイ装置の構成を示すためのブロック図である。 実施例1におけるビットマップテーブルを説明するための図である。 実施例1におけるコピー制御セッション管理部を説明するための図である。 実施例1における構成テーブルを説明するための図である。 実施例1におけるコピー制御部を説明するための図である。 実施例1における判定部を説明するための図である。 実施例1におけるリストア制御部を説明するための図である。 実施例1におけるリストア制御部を説明するための図である。 実施例1におけるリストア制御部を説明するための図である。 実施例1における操作画面要求処理の流れを示すフローチャートである。 実施例1における判定要求処理の流れを示すフローチャートである。 実施例1における全リストア要求処理の流れを示すフローチャートである。 実施例1における部分リストア要求処理の流れを示すフローチャートである。 実施例1における判定処理の流れを示すフローチャートである。 実施例1におけるスナップショットごとの判定処理の流れの一例を示すフローチャートである。 実施例1におけるディスクアレイ装置のプログラムを説明するための図である。
符号の説明
100 保守PC
200 ホストサーバ
300 ディスクアレイ装置
301 ホストアダプタ
302 ディスク
400 記憶部
401 ビットマップテーブル
402 コピー制御セッション管理テーブル
403 構成テーブル
500 制御部
501 コピー制御部
502 RAID制御部
503 判定部
504 全リストア部
505 部分リストア部
506 リストア制御部

Claims (6)

  1. 第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータを第2の記憶装置内にコピーするとともに、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点ごとに作成するコピー制御装置であって、
    前記バックアップ対象ボリュームのデータを更新することを指示する更新指示が前記時点より後にあった場合に、該更新指示により更新される箇所における更新前のデータである更新前データを前記第2の記憶装置内にコピーするコピー部と、
    前記バックアップ対象ボリュームのデータ各々について、前記時点に対応付けて、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報と、当該位置情報で示されるデータの更新前データが前記コピー部によって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態との対応付けを管理する管理テーブルと、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを当該位置情報ごとに判定するデータ判定部と、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定部と、
    前記データ判定部によって前記更新前データが前記第2の記憶装置に記憶されていると判定された位置情報について、当該位置情報により示される位置についてデータ復旧可能であると判定し、前記時点毎判定部によって前記バッドデータを示す位置情報すべてについて前記更新前データが前記第2の記憶装置に記憶されていると判定された時点について、当該時点におけるスナップショットを用いてスナップショット単位でデータ復旧可能であると判定するリストア判定部と
    を備えたことを特徴とするコピー制御装置。
  2. 前記データ判定部による判定結果を、前記コピー制御装置を管理する管理端末に通知する通知部をさらに備えたことを特徴とする請求項1に記載のコピー制御装置。
  3. 前記管理端末は表示部を備えるものであって、
    前記表示部は、前記通知部によって通知された前記データ判定部による判定結果を表示することを特徴とする請求項2に記載のコピー制御装置。
  4. 前記位置情報単位にデータ復旧を行う指示もしくは前記スナップショット単位にデータ復旧を行う指示を受付ける受付部と、
    前記受付部によって前記位置情報単位にデータ復旧を行う指示が受付けられた場合に、当該位置情報単位にデータ復旧を実行し、前記受付部によって前記スナップショット単位にデータ復旧を行う指示が受付けられた場合に、当該スナップショット単位にデータ復旧を実行する復旧部と、
    をさらに備えることを特徴とする請求項1〜のいずれか一つに記載のコピー制御装置。
  5. 第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータを第2の記憶装置内にコピーするとともに、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点ごとに作成するコピー制御方法であって、
    前記バックアップ対象ボリュームのデータを更新することを指示する更新指示が前記時点より後にあった場合に、該更新指示により更新される箇所における更新前のデータである更新前データを前記第2の記憶装置内にコピーするコピーステップと、
    前記バックアップ対象ボリュームのデータ各々について、前記時点に対応付けて、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報と、当該位置情報で示されるデータの更新前データが前記コピーステップによって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態との対応付けを管理テーブルにて管理する管理ステップと、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを当該位置情報ごとに判定するデータ判定ステップと、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定ステップと、
    前記データ判定ステップによって前記更新前データが前記第2の記憶装置に記憶されていると判定された位置情報について、当該位置情報により示される位置についてデータ復旧可能であると判定し、前記時点毎判定ステップによって前記バッドデータを示す位置情報すべてについて前記更新前データが前記第2の記憶装置に記憶されていると判定された時点について、当該時点におけるスナップショットを用いてスナップショット単位でデータ復旧可能であると判定するリストア判定ステップと
    を含んだことを特徴とするコピー制御方法。
  6. 第1の記憶装置内に記憶されているバックアップ対象ボリュームのデータを第2の記憶装置内にコピーするとともに、バックアップを実行する時点における当該バックアップ対象ボリュームを示すスナップショットを、バックアップを実行する時点ごとに作成するコピー制御方法をコンピュータに実行させるコピー制御プログラムであって、
    前記バックアップ対象ボリュームのデータを更新することを指示する更新指示が前記時点より後にあった場合に、該更新指示により更新される箇所における更新前のデータである更新前データを前記第2の記憶装置内にコピーするコピー手順と、
    前記バックアップ対象ボリュームのデータ各々について、前記時点に対応付けて、当該バックアップ対象ボリューム内におけるデータの位置を示す位置情報と、当該位置情報で示されるデータの更新前データが前記コピー手順によって前記第2の記憶装置内にコピーされているか否かの状態を示すコピー状態との対応付けを管理テーブルにて管理する管理手順と、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを当該位置情報ごとに判定するデータ判定手順と、
    読み出し不能のデータであるバッドデータが前記バックアップ対象ボリュームに存在する場合に、当該バッドデータの位置を示す位置情報を前記管理テーブルから検索し、当該位置情報に対応付けて管理されているコピー状態に基づいて、当該バッドデータを示す当該位置情報すべてについて、当該バッドデータの更新前データが前記第2の記憶装置に記憶されているか否かを前記時点単位ごとに判定する時点毎判定手順と、
    前記データ判定手順によって前記更新前データが前記第2の記憶装置に記憶されていると判定された位置情報について、当該位置情報により示される位置についてデータ復旧可能であると判定し、前記時点毎判定手順によって前記バッドデータを示す位置情報すべてについて前記更新前データが前記第2の記憶装置に記憶されていると判定された時点について、当該時点におけるスナップショットを用いてスナップショット単位でデータ復旧可能であると判定するリストア判定手順と
    をコンピュータに実行させることを特徴とするコピー制御プログラム。
JP2008084665A 2008-03-27 2008-03-27 コピー制御装置、コピー制御方法およびコピー制御プログラム Expired - Fee Related JP4607981B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2008084665A JP4607981B2 (ja) 2008-03-27 2008-03-27 コピー制御装置、コピー制御方法およびコピー制御プログラム
US12/372,889 US8112598B2 (en) 2008-03-27 2009-02-18 Apparatus and method for controlling copying

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008084665A JP4607981B2 (ja) 2008-03-27 2008-03-27 コピー制御装置、コピー制御方法およびコピー制御プログラム

Publications (2)

Publication Number Publication Date
JP2009238015A JP2009238015A (ja) 2009-10-15
JP4607981B2 true JP4607981B2 (ja) 2011-01-05

Family

ID=41118894

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008084665A Expired - Fee Related JP4607981B2 (ja) 2008-03-27 2008-03-27 コピー制御装置、コピー制御方法およびコピー制御プログラム

Country Status (2)

Country Link
US (1) US8112598B2 (ja)
JP (1) JP4607981B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8230187B1 (en) * 2009-07-06 2012-07-24 Symantec Corporation Techniques for integrating backup modules with virtualized storage
JP5838810B2 (ja) * 2011-12-28 2016-01-06 富士通株式会社 バックアップ制御プログラム、バックアップ制御方法およびバックアップ制御装置
US9766985B1 (en) 2014-10-09 2017-09-19 EMC IP Holding Company LLC Deviceless brokerless backup
TWI579689B (zh) * 2015-09-25 2017-04-21 瑞昱半導體股份有限公司 資料備份系統
US11294807B2 (en) * 2019-06-25 2022-04-05 Western Digital Technologies, Inc. Delayed write failure logging
KR102477051B1 (ko) * 2022-07-01 2022-12-13 삼성전자주식회사 네트워크를 이용한 스토리지 장치의 데이터 복구 방법 및 이를 수행하는 스토리지 장치

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061124A (ja) * 1994-01-31 2001-03-06 Sony Corp データ記録再生装置及びデータ記録再生方法
JP2004252686A (ja) * 2003-02-20 2004-09-09 Hitachi Ltd 情報処理システム
JP2004287648A (ja) * 2003-03-20 2004-10-14 Hitachi Ltd 外部記憶装置及び外部記憶装置のデータ回復方法並びにプログラム
JP2005301628A (ja) * 2004-04-09 2005-10-27 Hitachi Ltd ディスクアレイ装置
JP2006023889A (ja) * 2004-07-07 2006-01-26 Hitachi Ltd リモートコピーシステム及び記憶装置システム
JP2006259962A (ja) * 2005-03-16 2006-09-28 Hitachi Ltd ストレージシステム
JP2007087036A (ja) * 2005-09-21 2007-04-05 Hitachi Ltd スナップショット維持装置及び方法
JP2007265441A (ja) * 2007-07-09 2007-10-11 Hitachi Ltd ストレージ装置
JP2007334709A (ja) * 2006-06-16 2007-12-27 Fujitsu Ltd ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07219829A (ja) * 1994-02-03 1995-08-18 Hitachi Ltd データ保全方法
JP4115060B2 (ja) * 2000-02-02 2008-07-09 株式会社日立製作所 情報処理システムのデータ復旧方法及びディスクサブシステム
JP4456909B2 (ja) * 2004-03-29 2010-04-28 株式会社日立製作所 バックアップ方法、ストレージシステム及びそのプログラム
JP2006164162A (ja) * 2004-12-10 2006-06-22 Fujitsu Ltd コピー制御装置および方法
JP2006260376A (ja) 2005-03-18 2006-09-28 Toshiba Corp ストレージ装置およびメディアエラー回復方法
JP4667225B2 (ja) 2005-12-19 2011-04-06 富士通株式会社 制御装置およびコピー制御方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001061124A (ja) * 1994-01-31 2001-03-06 Sony Corp データ記録再生装置及びデータ記録再生方法
JP2004252686A (ja) * 2003-02-20 2004-09-09 Hitachi Ltd 情報処理システム
JP2004287648A (ja) * 2003-03-20 2004-10-14 Hitachi Ltd 外部記憶装置及び外部記憶装置のデータ回復方法並びにプログラム
JP2005301628A (ja) * 2004-04-09 2005-10-27 Hitachi Ltd ディスクアレイ装置
JP2006023889A (ja) * 2004-07-07 2006-01-26 Hitachi Ltd リモートコピーシステム及び記憶装置システム
JP2006259962A (ja) * 2005-03-16 2006-09-28 Hitachi Ltd ストレージシステム
JP2007087036A (ja) * 2005-09-21 2007-04-05 Hitachi Ltd スナップショット維持装置及び方法
JP2007334709A (ja) * 2006-06-16 2007-12-27 Fujitsu Ltd ストレージ制御装置、ストレージ制御プログラム、ストレージ制御方法
JP2007265441A (ja) * 2007-07-09 2007-10-11 Hitachi Ltd ストレージ装置

Also Published As

Publication number Publication date
US8112598B2 (en) 2012-02-07
JP2009238015A (ja) 2009-10-15
US20090249010A1 (en) 2009-10-01

Similar Documents

Publication Publication Date Title
JP4827564B2 (ja) コピーペアのペア状態の表示方法
US7979905B2 (en) Storage system, virus infection spreading prevention method, and virus removal support method
US9442809B2 (en) Management computer used to construct backup configuration of application data
JP5244430B2 (ja) ストレージ装置及びその制御方法
US8448167B2 (en) Storage system, and remote copy control method therefor
JP4607981B2 (ja) コピー制御装置、コピー制御方法およびコピー制御プログラム
WO2016199232A1 (ja) ストレージ管理計算機、及びストレージ装置の管理方法
US20100138687A1 (en) Recording medium storing failure isolation processing program, failure node isolation method, and storage system
JP5444178B2 (ja) バックアップ・リストア処理装置とバックアップ・リストア処理方法およびプログラム
JP2010257096A (ja) ストレージシステムにおけるバックアップ方法
GB2478625A (en) Deleting snapshot backups for unstable virtual machine configurations
JP2007323218A (ja) バックアップシステム
JP2009211664A (ja) バックアップデータ管理システム及びバックアップデータ管理方法
JP2011048500A (ja) データバックアップ管理システム、計算機システム及びプログラム記録媒体
JP2009110319A (ja) バックアップシステム、サーバ装置及びそれらに用いるバックアップ方法並びにそのプログラム
US20090235126A1 (en) Batch processing apparatus and method
CN104182296A (zh) 数据处理系统、数据处理设备以及存储介质
JP5073348B2 (ja) アプリケーション管理支援システム、管理計算機、ホスト計算機、及びアプリケーション管理支援方法
JP2006072684A (ja) ストレージネットワークシステム及び管理サーバ、ホストとストレージ装置
JP2007334836A (ja) 情報処理装置、データ保持装置及びそれらの制御方法、コンピュータプログラム並びに記憶媒体
JP2008243123A (ja) バックアップ装置及び方法並びにプログラム
JP4600127B2 (ja) ストレージバックアップサービスシステム、およびストレージバックアップサービス方法
JP4842859B2 (ja) ストレージシステム及び管理計算機と記憶装置並びに記憶領域管理方法
JP6319214B2 (ja) 遠隔保守システムおよび遠隔保守方法
WO2016125294A1 (ja) 計算機システム、管理装置及び方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100217

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100608

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100806

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

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101007

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees