JP5952631B2 - 情報処理装置、スナップショット作成プログラム、及び該方法 - Google Patents

情報処理装置、スナップショット作成プログラム、及び該方法 Download PDF

Info

Publication number
JP5952631B2
JP5952631B2 JP2012103530A JP2012103530A JP5952631B2 JP 5952631 B2 JP5952631 B2 JP 5952631B2 JP 2012103530 A JP2012103530 A JP 2012103530A JP 2012103530 A JP2012103530 A JP 2012103530A JP 5952631 B2 JP5952631 B2 JP 5952631B2
Authority
JP
Japan
Prior art keywords
snapshot
information
storage unit
created
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
JP2012103530A
Other languages
English (en)
Other versions
JP2013232089A (ja
JP2013232089A5 (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
Fujitsu Broad Solution and Consulting Inc
Original Assignee
Fujitsu Ltd
Fujitsu Broad Solution and Consulting Inc
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, Fujitsu Broad Solution and Consulting Inc filed Critical Fujitsu Ltd
Priority to JP2012103530A priority Critical patent/JP5952631B2/ja
Priority to US13/871,238 priority patent/US20130290262A1/en
Publication of JP2013232089A publication Critical patent/JP2013232089A/ja
Publication of JP2013232089A5 publication Critical patent/JP2013232089A5/ja
Application granted granted Critical
Publication of JP5952631B2 publication Critical patent/JP5952631B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/128Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本明細書は、スナップショット技術に関する。
定期的に記憶装置のバックアップを取る技術として、ある時点のデータイメージのコピーを瞬時に作成するスナップショットがある。スナップショット技術には、ファイルシステムについてのスナップショット技術(ファイルシステムスナップショット)、アプリケーションソフトウェアプログラムについてのスナップショット技術(例えば、データベーススナップショット)等がある。
ファイルシステムスナップショットは、ファイルシステムのPPI(persistent_point-in-time)を記録する技術である。ファイルシステムスナップショットの一例として、Windows(登録商標)に実装されるボリュームシャドウコピーサービスがある。Windowsは、OS(Operating System)の一つである。なお、以下では、アプリケーションソフトウェアプログラムを「アプリケーション」と称する。
ファイルシステムスナップショットを実行すると、ファイルシステム上のファイルおよびディレクトリを瞬間的に記録(保存)することができる。ファイルシステムとは、記憶装置に記録されているデータを管理するための仕組みである。スナップショットを用いた技術として、次のものがある。
第1の技術として、単一スナップショットを利用して、ある時点でのクライアントデータを単一の時点において保護する技術がある。第2の技術として、1つまたは複数のアプリケーションライタを(例えば、ボリュームシャドウコピーサービスを介して)使用して、スナップショットを、作成する技術がある。そのスナップショットは、1つまたは複数の物理マシンボリュームとアプリケーション(および/またはファイルシステム)との一貫性を有する。
特開2008−545198号公報 特開2009−536762号公報
スナップショット作成時にファイルが書込み中である場合、そのスナップショットにより作成されたバックアップデータは、壊れている可能性がある。
そこで、本実施形態の1つの側面では、スナップショットで取得したデータの保全性を向上させる技術を提供する。
本実施形態の1つの側面にかかる情報処理装置は、格納部、第1のスナップショット作成部、監視部、第2のスナップショット作成部、置換部を含む。格納部は、情報を格納する。第1のスナップショット作成部は、情報の第1のスナップショットを作成するとともに、第1のスナップショットに関連づけられた情報の格納位置を示す第1のポインタ情報を格納部に格納する。監視部は、情報に対する書込み処理が行われている途中で、第1のスナップショットの作成を行った場合に、書込みの終了を監視する。第2のスナップショット作成部は、監視部により書込みの終了が検出された場合、情報の第2のスナップショットを作成するとともに、第2のスナップショットに関連づけられた情報の格納位置を示す第2のポインタ情報を前記格納部に格納する。置換部は、作成された第2のスナップショットと、格納部に格納された情報とに差異がない場合、格納部に格納された第1のポインタ情報を第2のポインタ情報に置き換える。
本実施形態の1つの側面によれば、スナップショットで取得したデータの保全性を向上させることができる。
スナップショットの実行フローの一例を示す。 APIを用いたスナップショットの実行フローの一例を示す。 本実施形態における情報処理装置の一例を示す。 第1の実施形態における情報処理装置の一例を示す。 第1の実施形態におけるスナップショットの作成を説明するための図(その1)である。 第1の実施形態におけるスナップショットの作成を説明するための図(その2)である。 第1の実施形態におけるスナップショットの作成を説明するための図(その3)である。 第1の実施形態におけるスナップショット実行フロー(その1)の一例を示す。 第1の実施形態におけるスナップショット実行フロー(その2)の一例を示す。 第2の実施形態における情報処理装置の一例を示す。 第2の実施形態におけるスナップショット実行フロー(その1)の一例を示す。 第2の実施形態におけるスナップショット実行フロー(その2)の一例を示す。 第2の実施形態におけるスナップショット実行フロー(その3)の一例を示す。
図1は、スナップショットの実行フローの一例を示す。情報処理装置において、ファイルシステムスナップショットの実行が指示されると(S1)、情報処理装置の制御部は、スナップショットの作成を行う(S2、S3)。
しかしながら、ファイルに対する書込み処理とスナップショットの取得のタイミングが一致した場合、ファイルシステムによっては書き込み途中の状態で スナップショットが記録(保存)されることがある。このようなファイルへの書き込み途中の状態を、以下では、クラッシュ・インコンシステント(crash-inconsistent)状態という。なお、このようなクラッシュ・インコンシステント状態は、例えば、UNIX(登録商標)系システムのファイルシステムにおいては、ファイルシステムの仕様で回避される。
例えば、Windows(登録商標)ファイルシステムでは、ボリュームシャドウコピーサービス(VSS)を用いて、バックアップ運用を行っている情報処理システムが多数存在する。VSSは、いったんスナップショット(シャドウ・コピー)を作成して、そのスナップショットをバックアップする技術である。しかし、そのような情報処理システムでは、クラッシュ・インコンシステントが発生する可能性がある。
ところが、VSSでクラッシュ・インコンシステントが発生することは仕様動作であり、VSSおよびこれを使用するバックアップソフトウェアは クラッシュ・インコンシステントを検出することはできない。
したがって、この様なシステムではクラッシュ・インコンシステント状態のバックアップファイルが内在している可能性がある。そのため、バックアップデータをリストアした際に初めてファイルが壊れていることに気づく。システム単位のリストアは滅多なことでは実施されないため、問題を内在したままバックアップを運用するシステムが多いと考えられる。この様な事態がシステムクラッシュ後のリストアや、ディザスタリカバリシーンで検出される事は、システムの大きなリスクとなる。
そこで、例えば、Windows(登録商標)のファイルシステムでは、書込みを行うアプリケーションがAPI(Application Program Interface)をコールして書き込み処理の実行を待ち合わせることで回避することが考えられる。
図2は、APIを用いたスナップショットの実行フローの一例を示す。情報処理装置において、ファイルシステムスナップショットの実行が指示される(S11)。すると、情報処理装置の制御部は、APIをコールし、アプリケーションに対して、入力(input)処理/出力(output)処理の待ち合わせ(I/O待ち合わせ)を指示する(S12)。制御部は、アプリケーションのI/Oの待ち合わせを確認すると(S13,S14)、スナップショットの作成を行う(S15)。
スナップショットの作成後、制御部は、I/Oを待ち合わせしたアプリケーションに対して、スナップショットの作成が完了した旨の通知を行う(S16)。これにより、スナップショットの作成が完了する。
ところが、ユーザが使用する全てのアプリケーションに、APIコールが実装されたものを選定することは現実的ではない。そのため、クラッシュ・インコンシステント状態の発生は、Windows(登録商標)ファイルシステム上では起こりうる事象である。また全てのアプリケーションがAPIコールを実装したとしても、スナップショットを記録する瞬間に大量のAPIがコールされ、システムが過負荷になる可能性がある。
そこで、本実施形態では、スナップショットにおいて、APIを用いずに、バックアップデータの保全性を向上させた技術について説明する。
図3は、本実施形態における情報処理装置の一例を示す。情報処理装置1は、第1のスナップショット作成部2、監視部3、第2のスナップショット作成部4、置換部5、格納部6を含む。
格納部6は、情報を格納する。格納部6の一例としては、HDD21またはボリューム22が挙げられる。
第1のスナップショット作成部2は、その情報の第1のスナップショットを作成するとともに、第1のスナップショットに関連づけられたその情報の格納位置を示す第1のポインタ情報を格納部6に格納する。第1のスナップショット作成部2の一例としては、作成部16が挙げられる。
監視部3は、その情報に対する書込み処理が行われている途中で、第1のスナップショットの作成を行った場合に、書込みの終了を監視する。すなわち、監視部3は、その情報に対する書込み処理が行われていることを示す書込状態情報を継続して取得し、書込状態情報が取得できない場合、その情報に対応する書込状態情報が解放されたと判定する。監視部3の一例としては、監視部17が挙げられる。書込状態情報の一例としては、ファイルハンドルが挙げられる。
第2のスナップショット作成部4は、監視部により書込みの終了が検出された場合、その情報の第2のスナップショットを作成するとともに、第2のスナップショットに関連づけられたその情報の格納位置を示す第2のポインタ情報を格納部6に格納する。第2のスナップショット作成部4の一例としては、作成部16が挙げられる。
置換部5は、格納部6に格納された第1のポインタ情報を第2のポインタ情報に置き換える。置換部5の一例としては、置換部19が挙げられる。
このように構成することにより、スナップショットで取得したデータの保全性を向上させることができる。
情報処理装置1は、さらに、判定部7を含んでもよい。判定部7は、作成した第2のスナップショットと、格納部6に格納された情報とに差異があるかを判定する。判定部7の一例としては、照合部18が挙げられる。これにより、第2のスナップショットにクラッシュ・インコンシステントが発生していないことを確認することができる。
作成された第2のスナップショットと、格納部6に格納された情報とに差異がないと判定された場合、置換部5は、次の処理を行う。すなわち、置換部5は、格納部6に格納された第1のポインタ情報を第2のポインタ情報に置き換え、第2のスナップショットを削除する。
以下には、本実施形態をさらに詳述する。
<第1の実施形態>
図4は、第1の実施形態における情報処理装置の一例を示す。情報処理装置11は、中央処理演算装置(CPU)12、メモリ13、OS15,ハードディスクドライブ(HDD)21を含む。
HDD21は、OS及びアプリケーション等のプログラム、データ等を格納する。HDD21は、1以上のボリュームを含む。ボリュームとは、記憶装置の管理単位を示す。
CPU12は、HDD21に格納されたOS15のプログラムを読み出して、OS15のプログラムを実行する。メモリ13は、情報を一時的に格納する。
OS15は、作成部16、監視部17、照合部18、置換部19を含む。CPU12は、OS15のプログラムを実行すると、作成部16、監視部17、照合部18、置換部19として機能することができる。
ファイルシステム24は、OS15とHDD21(ボリューム22)により表される。ファイルシステム24は、ファイル/ディレクトリの管理をしている。例えば、ファイルシステム24は、ファイル/ディレクトリの生成、変更、削除に伴ってポインタの管理をしている。ポインタとは、ファイルシステム24、HDD21またはボリューム22におけるファイルの格納位置を示す情報であり、HDD21に格納されている。
作成部16は、HDD21のボリューム22のスナップショット23を作成する。作成部16は、ある時点でのスナップショット(基本スナップショット)23を作成後、後述する監視部17の監視結果に応じて、再び、スナップショット(再記録スナップショット)を作成する。本実施形態では、作成したスナップショット23は、HDD21(例えば、ボリューム22)に格納される。
監視部17は、基本スナップショットの作成時に、基本スナップショットに含まれるファイルに書込みが発生している場合、その書き込みが発生しているファイルに対応するファイルハンドル14をメモリ13に記憶して監視する。ファイルハンドル14は、ファイルが書込み/読み込み等の操作をされていることを示す情報である。これにより、監視部17は、基本スナップショット作成時に存在していたファイルハンドル14が解放されたか及び再記録スナップショットがクラッシュ・インコンシステント状態であることが疑われるか等を監視することができる。監視部17は、ファイルハンドル14によってファイルが書込み/読み込み等の操作されていることを検知した場合、そのファイルを監視対象として、後述するファイルハンドルリストに登録する。ファイルハンドルリストは、基本スナップショット作成時において、書き込み等の操作がされていたファイルを管理対象ファイルとして管理するリストである。
ここで、監視部17は、一定の間隔でファイルハンドルの監視を行ってもよいし、任意のタイミングでファイルハンドルの監視を行ってもよい。なお、実装においては監視対象ファイルのファイルハンドル14が解放されない場合を考慮し、監視についてタイムアウト値(n回)が設定されていてもよい。なお、nは任意の整数である。
監視部17により監視対象ファイルのファイルハンドル14が存在しないと判定された場合、作成部16は、上述したように、再記録スナップショットを作成する。
置換部19は、基本スナップショットにおける監視対象ファイルのファイル/ディレクトリポインタを、再記録スナップショットにおける監視対象ファイルのファイル/ディレクトリポインタに置換する。その後、置換部19は、再記録スナップショットを削除する。
これにより、ある時点のスナップショットを取得した場合、その時点で書き込み中のファイルについてはその書込みが終わった時点のファイルの情報に置換することができる。その結果、スナップショットで取得されたデータの保全性を向上させることができる。
さらに、スナップショットで取得されたデータの保全性を向上させるために、再記録スナップショット自体にクラッシュ・インコンシステントが発生していないかを判定した後に、置換部19により置換を行ってもよい。これについて、以下に説明する。
照合部18は、監視部17により監視対象ファイルのファイルハンドル14が存在しないと判定された場合、再記録スナップショットと、その再記録スナップショットに対応する実ファイル/ディレクトリのデータと照合を行う。照合したデータに差異があれば、照合部18は、再記録スナップショットにクラッシュ・インコンシステント状態が発生していると判定する。照合したデータに差異がなければ、照合部18は、再記録スナップショットにクラッシュ・インコンシステント状態が発生していないと判定する。
置換部19は、再記録スナップショットにクラッシュ・インコンシステントが発生していない場合には、次の処理を行う。すなわち、置換部19は、基本スナップショットにおける監視対象ファイルのファイル/ディレクトリポインタを、再記録スナップショット中の監視対象ファイルのファイル/ディレクトリポインタに置換する。その後、置換部19は、再記録スナップショットを削除する。
これにより、さらに、スナップショットで取得されたデータの保全性を向上させることができる。
なお、作成部16、監視部17、照合部18、置換部19として機能するプログラムは、CD−ROM、DVD,Blu−ray,ICメモリ、フレキシブルディスク等の可搬記録媒体に記録されていてもよい。この場合には、可搬記録媒体からCPU12がそのプログラムを読み込んで実行する。
図5は、第1の実施形態における基本スナップショットの作成を説明するための図である。図6は、第1の実施形態における再記録スナップショットの作成を説明するための図である。図7は、第1の実施形態におけるスナップショットの作成完了を説明するための図である。図5(A)、図6(A)、及び図7(A)は、ファイルシステム24のボリューム22において、スナップショットの対象となる対象領域のブロックの一例を示す。図5(B)、図6(B)、及び図7(B)は、ファイルハンドルリストの一例を示す。図5(C)、図6(C)、及び図7(C)は、基本スナップショットに含まれるファイルのポインタ情報の一例を示す。図6(D)は、再記録スナップショットに含まれるファイルのポインタ情報の一例を示す。
図5(A)において、例えば、ファイルシステム24の、あるボリューム22には、ブロック1〜90で示される格納領域が存在する。ファイルAは、ブロック1−40に格納されているファイルデータである。ファイルBは、ブロック41−80に格納されているファイルデータである。
図5(A)において、ファイルAのブロック39−40は、書き込み中の状態である。この場合、ファイルAは、ファイルハンドルAによって、書き込み中であることが認識されている。
作成部16は、図5(A)に示すように、対象領域のスナップショット(基本スナップショット)を作成する。図5(C)は、基本スナップショットに含まれるファイルAのファイルポインタ情報(ブロック1−40)と、ファイルBのファイルポインタ情報(ブロック41−80)を示す。このとき、作成部16は、ファイルが格納されているブロックを書込み不可状態にする。したがって、ファイルAについてのブロック1−40及びファイルBについてのブロック41−80への書込みは制限される。
スナップショット作成時に書込み中であったブロック39−40は、クラッシュ・インコンシステント状態である。このとき、監視部17は、図5(B)に示すように、基本スナップショット作成時に、ファイルAが書込みされていたことを示す情報を、ファイルハンドルリスト31に登録する。
上述したように、ファイルAについてのブロック1−40及びファイルBについてのブロック41−80への書込みは制限される。したがって、書込み中であったブロック39−40に書き込むべき情報は、ファイルシステム24の制御により、図6(A)に示すように、書込み制限のないブロック、例えば、ブロック81−82に書き込まれる。
監視部17は、ファイルハンドルリスト31に登録された監視対象ファイルのファイルハンドルが解放されたかを監視する。監視の結果、ファイルAに対する書込み処理が終了すると(すなわち、監視対象ファイルのファイルハンドルが解放される)と、監視部17は、作成部16にファイルハンドルが解放された旨を通知する。このとき、監視部17は、図6(B)に示すように、ファイルAが書込みされていたことを示す情報をファイルハンドルリスト31から削除する。
作成部16は、監視対象ファイルのファイルハンドルが解放された旨の通知を受信した場合、図6(A)に示すように、対象領域のスナップショット(再記録スナップショット)を再作成する。図6(D)に、再記録スナップショットに含まれるファイルAのファイルポインタと、ファイルBのファイルポインタの情報を示す。
再記録スナップショットの作成後、後述する置換部19による処理の前に、再び監視部17によるファイルハンドルの確認を行い、ファイルハンドルが存在しないと判定された場合、照合部18は、次の処理を行ってもよい。すなわち、照合部18は、再記録スナップショットと、その再記録スナップショットに対応する、ファイルシステム24上の実ファイル/ディレクトリのデータとの照合を行う。照合の結果、再記録スナップショットと、ファイルシステム24上の実ファイル/ディレクトリとのデータについて差異がない場合、照合部18は、再記録スナップショットが、クラッシュ・インコンシステント状態でないと判定する。
置換部19は、作成部16による再記録スナップショットの作成後、または照合部18による照合後、次の処理を行う。すなわち、置換部19は、基本スナップショットの監視対象ファイルのファイル/ディレクトリポインタ(図6(C))を、再記録スナップショット中の監視対象ファイルのファイル/ディレクトリポインタ(図6(D))で置換する。その結果、基本スナップショットの監視対象ファイルのファイル/ディレクトリ(ファイルA)を示すポインタは、図7(C)に示すようになる。
図8A及び図8Bは、第1の実施形態におけるスナップショット実行フローの一例を示す。OS15を実行しているCPU12は、ユーザからの指示により、またはアプリケーションより、スナップショットの作成指示を受け取る(S21)。すると、CPU12は、以下に示すように、作成部16、監視部17、照合部18、置換部19として機能する。
作成部16は、ボリューム22中のスナップショットの対象となる領域(例えば、ボリューム)のスナップショット(基本スナップショット)を作成し、HDD21のボリューム22に格納する。このとき、監視部17は、ファイルシステム24で管理されているファイルハンドルを検出し、検出されたファイルハンドルをメモリ13に記録する(S22)。
S22において、基本スナップショット作成時に、基本スナップショットに含まれるファイルが書き込み中でない場合、すなわち、ファイルハンドルが記録されていない場合(S23で「No」)、スナップショットの作成が完了する(S38)。
S22において、基本スナップショット作成時に、基本スナップショットに含まれるファイルが書き込み中である場合(ファイルハンドルがメモリ13に記録されている場合)(S23で「Yes」)、監視部17は、次の処理を行う。すなわち、監視部17は、ファイルハンドルリスト31を作成する(S24)。ファイルハンドルリスト31には、基本スナップショットに含まれるファイルのうち、基本スナップショット作成時において書き込み中の状態にあるファイル(監視対象ファイル)を識別する情報が登録されている。
監視部17は、t(tは任意の実数)秒後に、ファイルシステム24からファイルハンドルを検出する。そして、監視部17は、その検出したファイルハンドルが示すファイルが、ファイルハンドルリスト31にあるかを判定する(S25)。すなわち、監視部17は、監視対象ファイルのファイルハンドルが解放されたかを判定する。
S25のファイルハンドル確認処理がn(n:任意の整数)回を超える場合(S26で「Yes」)、タイムアウトになる(S27)。タイムアウトになった場合、監視部17は、監視対象ファイルのファイルハンドルが解放されていなかった旨の情報(クラッシュ・インコンシステント状態の可能性を示す情報)を、その監視対象ファイルのヘッダに記録する。
S25のファイルハンドル確認処理がn(n:任意の整数)回を超えない場合(S26で「No」)において、監視対象ファイルのファイルハンドルが解放されていない場合(S28で「Yes」)、処理がS25へ戻る。
監視対象ファイルのファイルハンドルが解放された場合(S28で「No」)、作成部16は、再度スナップショット(再記録スナップショット)を作成し、HDD21に格納する(S29)。
監視部17は、再度、ファイルシステム24中に、監視対象ファイルのファイルハンドルが存在するかを判定する(S30)。S30においてファイルハンドルが存在する場合(S31で「Yes」)、処理がS25へ戻る。
S30においてファイルハンドルが存在しない場合(S31で「No」)、照合部18は、再記録スナップショットと、その再記録スナップショットに対応するファイルシステム24上のデータとを照合する(S32)。照合の結果、再記録スナップショットと、ファイルシステム上のデータとの間に差異がある場合(S33で「Yes」)、処理がS25へ戻る。
照合の結果、再記録スナップショットと、ファイルシステム上のデータとの間に差異がない場合(S33で「No」)、置換部19は、次の処理を行う。すなわち、置換部19は、基本スナップショットにおける監視対象ファイルのファイル/ディレクトリポインタを、再記録スナップショットにおける監視対象ファイルのファイル/ディレクトリポインタに置換する(S34)。
置換部19は、ファイルハンドルリスト31から、その監視対象ファイルを特定する情報を削除する(S35)。置換部19は、HDD21から、再記録スナップショットを削除する(S36)。
監視部17は、ファイルハンドルリスト31に、他の監視対象ファイルが残っているかを判定する(S37)。ファイルハンドルリスト31に、他の監視対象ファイルが残っている場合(S37で「Yes」)、処理がS25へ戻る。ファイルハンドルリスト31に、監視対象ファイルが残っていない場合(S37で「No」)、スナップショットの作成が完了する(S38)。
なお、図8A及び図8Bでは、再記録スナップショットの作成後に照合部18による照合処理を行う場合のスナップショット実行フローの一例について説明した。しかしながら、仕様によっては、S31で「No」の場合に、S34へ進むようにしてもよい。
本実施形態によれば、スナップショットを記録した場合、スナップショット中のデータ静止点が一定とならない可能性がある。しかし、クラッシュ・インコンシステント状態の発生はデータの破壊を示すため、上記実施形態により、スナップショットで取得したデータの保全性を向上させることができる。したがって、ファイルシステムスナップショットの記録とデータへの書き込みとのタイミングが重なった場合にでも、データ不整合を起こさずにスナップショットの作成が可能となる。また、本実施形態によれば、各アプリケーションに対してAPIを作り込まなくてもよい。
<第2の実施形態>
第2の実施形態では、第1の実施形態とAPIによるI/O待ち合わせ処理とを併用することについて説明する。
図9は、第2の実施形態における情報処理装置の一例を示す。図9の情報処理装置11は、図4の情報処理装置11に、待ち合わせ処理部41を追加したものである。
待ち合わせ処理部41は、アプリケーションにAPIが組み込まれている場合に、スナップショット作成の間、アプリケーションのI/Oを待ち状態にする。
図10A、図10B及び図10Cは、第2の実施形態におけるスナップショット実行フローの一例を示す。OS15を実行しているCPU12は、ユーザからの指示により、またはアプリケーションより、スナップショットの作成指示を受け取る(S41)。すると、CPU12は、以下に示すように、作成部16、監視部17、照合部18、置換部19、待ち合わせ処理部41として機能する。APIコールが実装されているアプリケーションがない場合(S42で「No」)、処理がS46へ進む。
APIコールが実装されているアプリケーションがある場合(S42で「Yes」)、待ち合わせ処理部41は、APIをコールし、アプリケーションに対して、入力(input)処理/出力(output)処理の待ち合わせ(I/O)を指示する(S43)。待ち合わせ処理部41は、アプリケーションのI/Oの待ち合わせが完了する(S44,S45)。
すると、作成部16は、ファイルシステム24中の対象のボリュームのスナップショット(基本スナップショット)を作成し、HDD21のボリューム22に格納する。このとき、監視部17は、ファイルシステム24のボリューム22に存在するファイルハンドルをメモリ13に記録する(S46)。S46の処理は、図8AのS22と同じである。SS46以降は、図8A及び図8BのS22以降の処理と同じなので、その説明を省略する。
なお、本実施形態は、以上に述べた実施の形態に限定されるものではなく、本実施形態の要旨を逸脱しない範囲内で種々の構成または実施形態を取ることができる。
1 情報処理装置
2 第1のスナップショット作成部
3 監視部
4 第2のスナップショット作成部
5 置換部
6 格納部
7 判定部
11 情報処理装置
12 CPU
13 メモリ
14 ファイルハンドル
15 OS
16 作成部
17 監視部
18 照合部
19 置換部
21 HDD
22 ボリューム
23 スナップショット
24 ファイルシステム
31 ファイルハンドルリスト
41 待ち合わせ処理部

Claims (9)

  1. 情報を格納する格納部と、
    前記情報の第1のスナップショットを作成するとともに、前記第1のスナップショットに関連づけられた前記情報の格納位置を示す第1のポインタ情報を前記格納部に格納する第1のスナップショット作成部と、
    前記情報に対する書込み処理が行われている途中で、前記第1のスナップショットの作成を行った場合に、前記書込みの終了を監視する監視部と、
    前記監視部により前記書込みの終了が検出された場合、前記情報の第2のスナップショットを作成するとともに、前記第2のスナップショットに関連づけられた前記情報の格納位置を示す第2のポインタ情報を前記格納部に格納する第2のスナップショット作成部と、
    前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える置換部と、
    を備えることを特徴とする情報処理装置。
  2. 前記置換部は、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がある場合、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がなくなるまで、所定回数以内で、前記情報の第2のスナップショットの作成及び前記第2のポインタ情報を前記格納部に格納することを繰り返し、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記情報処理装置は、さらに、
    作成した前記第2のスナップショットと、前記格納部に格納された前記情報とに差異があるかを判定する判定部
    を備え、
    前記置換部は、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がないと判定された場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換え、該第2のスナップショットを削除する
    ことを特徴とする請求項1または2に記載の情報処理装置。
  4. コンピュータに、
    情報を格納する格納部に格納された前記情報の第1のスナップショットを作成するとともに、前記第1のスナップショットに関連づけられた前記情報の格納位置を示す第1のポインタ情報を前記格納部に格納し、
    前記情報に対する書込み処理が行われている途中で、前記第1のスナップショットの作成を行った場合に、前記書込みの終了を監視し、
    前記監視により前記書込みの終了が検出された場合、前記情報の第2のスナップショットを作成するとともに、前記第2のスナップショットに関連づけられた前記情報の格納位置を示す第2のポインタ情報を前記格納部に格納し、
    前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える
    処理を実行させることを特徴とするスナップショット作成プログラム。
  5. 前記置き換える処理では、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がある場合、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がなくなるまで、所定回数以内で、前記情報の第2のスナップショットの作成及び前記第2のポインタ情報を前記格納部に格納することを繰り返し、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える
    ことを特徴とする請求項4に記載のスナップショット作成プログラム。
  6. 前記コンピュータに、さらに、
    作成した前記第2のスナップショットと、前記格納部に格納された前記情報とに差異があるかを判定し、
    前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がないと判定された場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換え、該第2のスナップショットを削除する
    処理を実行させることを特徴とする請求項4または5に記載のスナップショット作成プログラム。
  7. コンピュータが、
    情報を格納する格納部に格納された前記情報の第1のスナップショットを作成するとともに、前記第1のスナップショットに関連づけられた前記情報の格納位置を示す第1のポインタ情報を前記格納部に格納し、
    前記情報に対する書込み処理が行われている途中で、前記第1のスナップショットの作成を行った場合に、前記書込みの終了を監視し、
    前記監視により前記書込みの終了が検出された場合、前記情報の第2のスナップショットを作成するとともに、前記第2のスナップショットに関連づけられた前記情報の格納位置を示す第2のポインタ情報を前記格納部に格納し、
    前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える
    処理を実行することを特徴とするスナップショット作成方法。
  8. 前記置き換える処理では、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がある場合、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がなくなるまで、所定回数以内で、前記情報の第2のスナップショットの作成及び前記第2のポインタ情報を前記格納部に格納することを繰り返し、前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がない場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換える
    ことを特徴とする請求項7に記載のスナップショット作成方法。
  9. 前記コンピュータは、さらに、
    作成した前記第2のスナップショットと、前記格納部に格納された前記情報とに差異があるかを判定し、
    前記作成された第2のスナップショットと、前記格納部に格納された前記情報とに差異がないと判定された場合、前記格納部に格納された前記第1のポインタ情報を前記第2のポインタ情報に置き換え、該第2のスナップショットを削除する
    処理を実行することを特徴とする請求項7または8に記載のスナップショット作成方法。
JP2012103530A 2012-04-27 2012-04-27 情報処理装置、スナップショット作成プログラム、及び該方法 Expired - Fee Related JP5952631B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012103530A JP5952631B2 (ja) 2012-04-27 2012-04-27 情報処理装置、スナップショット作成プログラム、及び該方法
US13/871,238 US20130290262A1 (en) 2012-04-27 2013-04-26 Information processing device, computer-readable recording medium storing program for generating snapshot, and method therefore

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012103530A JP5952631B2 (ja) 2012-04-27 2012-04-27 情報処理装置、スナップショット作成プログラム、及び該方法

Publications (3)

Publication Number Publication Date
JP2013232089A JP2013232089A (ja) 2013-11-14
JP2013232089A5 JP2013232089A5 (ja) 2015-02-26
JP5952631B2 true JP5952631B2 (ja) 2016-07-13

Family

ID=49478224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012103530A Expired - Fee Related JP5952631B2 (ja) 2012-04-27 2012-04-27 情報処理装置、スナップショット作成プログラム、及び該方法

Country Status (2)

Country Link
US (1) US20130290262A1 (ja)
JP (1) JP5952631B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106569819B (zh) * 2016-11-04 2023-04-28 国网浙江省电力公司丽水供电公司 一种用于视频监控平台的自动抓图方法

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7233886B2 (en) * 2001-01-19 2007-06-19 Smartsignal Corporation Adaptive modeling of changed states in predictive condition monitoring
US7475098B2 (en) * 2002-03-19 2009-01-06 Network Appliance, Inc. System and method for managing a plurality of snapshots
JP4515132B2 (ja) * 2004-03-31 2010-07-28 株式会社日立製作所 ストレージシステム、ストレージ装置及びリモートコピー方法
US20060230243A1 (en) * 2005-04-06 2006-10-12 Robert Cochran Cascaded snapshots
US7743028B1 (en) * 2005-07-13 2010-06-22 Symantec Corporation Incremental backup of partial volumes
WO2008126297A1 (ja) * 2007-03-30 2008-10-23 Fujitsu Limited バックアップ制御装置
JP5793712B2 (ja) * 2010-03-01 2015-10-14 パナソニックIpマネジメント株式会社 不揮発性記憶装置、アクセス装置、及び不揮発性記憶システム
US8495019B2 (en) * 2011-03-08 2013-07-23 Ca, Inc. System and method for providing assured recovery and replication
US8856078B2 (en) * 2012-02-21 2014-10-07 Citrix Systems, Inc. Dynamic time reversal of a tree of images of a virtual hard disk

Also Published As

Publication number Publication date
US20130290262A1 (en) 2013-10-31
JP2013232089A (ja) 2013-11-14

Similar Documents

Publication Publication Date Title
US7237080B2 (en) Persistent snapshot management system
US7237075B2 (en) Persistent snapshot methods
US7523149B1 (en) System and method for continuous protection of working set data using a local independent staging device
JP5705309B2 (ja) バックアップ・プロセスを処理する方法、システム、及びコンピュータ・プログラム
JP5021929B2 (ja) 計算機システム及びストレージシステムと管理計算機並びにバックアップ管理方法
US7412460B2 (en) DBMS backup without suspending updates and corresponding recovery using separately stored log and data files
US8566282B2 (en) Creating a buffer point-in-time copy relationship for a point-in-time copy function executed to create a point-in-time copy relationship
US8327183B2 (en) Storage system creating a recovery request enabling execution of a recovery and comprising a switch that detects recovery request point events
US7809688B2 (en) Managing backup of content
JP5422298B2 (ja) 階層管理ストレージシステムおよびストレージシステムの運用方法
US20060294421A1 (en) Isolating and storing configuration data for disaster recovery
US10331619B2 (en) Automatic file capture, preservation, and management method and apparatus
US20060294420A1 (en) Isolating and storing configuration data for disaster recovery
US8732128B2 (en) Shadow copy bookmark generation
US20070043973A1 (en) Isolating and storing configuration data for disaster recovery for operating systems providing physical storage recovery
JP5984151B2 (ja) データの復旧方法、プログラムおよびデータ処理システム
EP2425344B1 (en) Method and system for system recovery using change tracking
US7739464B1 (en) Consistent backups of data using a roll-back log
JP2014142852A (ja) ストレージシステムおよび制御装置
US20070043969A1 (en) Isolating and storing configuration data for disaster recovery for operating systems providing physical storage recovery
US7685460B1 (en) Multiple concurrent restore using same user interface
JP2006011811A (ja) 記憶制御システム及び記憶制御方法
US8131958B2 (en) Storage system, storage device, and data updating method using a journal volume
JP5952631B2 (ja) 情報処理装置、スナップショット作成プログラム、及び該方法
US20240020206A1 (en) Data control apparatus and data control method

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150105

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150105

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150911

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151027

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160610

R150 Certificate of patent or registration of utility model

Ref document number: 5952631

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees