JP4456909B2 - バックアップ方法、ストレージシステム及びそのプログラム - Google Patents

バックアップ方法、ストレージシステム及びそのプログラム Download PDF

Info

Publication number
JP4456909B2
JP4456909B2 JP2004096277A JP2004096277A JP4456909B2 JP 4456909 B2 JP4456909 B2 JP 4456909B2 JP 2004096277 A JP2004096277 A JP 2004096277A JP 2004096277 A JP2004096277 A JP 2004096277A JP 4456909 B2 JP4456909 B2 JP 4456909B2
Authority
JP
Japan
Prior art keywords
data
volume
differential
generation
stored
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
JP2004096277A
Other languages
English (en)
Other versions
JP2005284609A (ja
JP2005284609A5 (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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2004096277A priority Critical patent/JP4456909B2/ja
Priority to US10/898,225 priority patent/US7287045B2/en
Publication of JP2005284609A publication Critical patent/JP2005284609A/ja
Publication of JP2005284609A5 publication Critical patent/JP2005284609A5/ja
Application granted granted Critical
Publication of JP4456909B2 publication Critical patent/JP4456909B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1448Management of the data involved in backup or backup restore
    • G06F11/1451Management of the data involved in backup or backup restore by selection of backup contents
    • 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
    • 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99953Recoverability
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99951File or database maintenance
    • Y10S707/99952Coherency, e.g. same view to multiple users
    • Y10S707/99954Version management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、ストレージ装置のデータバックアップ方法に関し、特に、差分スナップショットのデータを効率的に保存する方法に関する。
ストレージ装置のデータを保護する機能の一つとして、スナップショット機能が知られている。スナップショット機能とは、ユーザの操作に応じて、指定された時点のストレージ装置のデータ(スナップショット)を保持し、その保持されたデータをユーザに提供する機能である。このスナップショット機能を実現する方法として、ストレージ装置の記録領域(主ボリューム)全体を別の領域(副ボリューム)に複写するボリュームミラーがある(例えば、特許文献1参照。)。
また、主ボリュームに記録されたデータが更新されるときに、更新される部分のデータのみを、別のボリューム(差分ボリューム)に複写して保存する差分スナップショット提案されている。この差分スナップショットは、更新されるデータのみを複写するため、ボリューム全体を複写するボリュームミラーと比較して、消費されるディスク容量が少ない。また、スナップショットにユーザがアクセスしているときにデータの書き込み要求がある場合にユーザへのレスポンスを改善する方法が提案されている(例えば、特許文献2参照。)。その結果、ユーザは、多数のスナップショットを容易に取得することができるようになった。
特開2002−373093号公報 特開2003−280825号公報
多数の差分スナップショットを含むストレージ装置に記録されているデータを、他のストレージ装置(例えば、磁気テープ装置)にバックアップする場合、ストレージ装置に記録されている主ボリュームと差分ボリュームの全体が複写され、特定のスナップショットのデータのみをバックアップすることは考慮されていなかった。
本発明は、ユーザが使用するクライアントにファイル共有サービスを提供するネットワークストレージ装置と、前記ネットワークストレージ装置に記録されたデータをバックアップするバックアップ装置と、前記ネットワークストレージ装置に前記バックアップを要求する管理クライアントと、を備え、前記ネットワークストレージ装置は、制御プログラムを記憶するメモリと、前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの世代毎の差分データを格納する差分ボリュームと、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとの関係を世代毎に管理するマッピング情報とが設けられるディスク装置と、前記ディスク装置へのデータの読み書きを制御する制御プロセッサと、を有するストレージシステムにおいて用いられるバックアップ方法であって、前記管理クライアントが、前記差分ボリュームに格納される世代毎の差分データのうちバックアップ可能な前記世代の情報を前記制御プロセッサに要求する第1手順と、前記制御プロセッサが、前記マッピング情報を参照して、前記バックアップ可能な世代の情報を取得し、前記管理クライアントに送信する第2手順と、前記管理クライアントが、当該取得した情報から選択した世代のスナップショットのデータのバックアップを前記制御プロセッサに要求する第3手順と、前記制御プロセッサが、前記マッピング情報を参照して、前記バックアップ要求において指定された世代について、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとを合成する第4手順と、前記制御プロセッサが、当該合成されたデータを前記バックアップ装置に送信する第5手順と、を含むことを特徴とする。
本発明によれば、ストレージ装置の特定のスナップショットのデータのみをバックアップすることができる。
図1は、本発明の実施の形態のストレージシステムのブロック図である。
このストレージシステムは、ネットワーク151によって相互に通信可能に接続されたクライアント131、管理クライアント132、メディアサーバ133及びネットワークストレージ装置(NAS)100からなる。
ネットワーク151は、例えば、TCP/IP等のプロトコルで通信を行い、ネットワーク151に接続された装置間で制御信号やデータを転送する。
クライアント131は、ユーザが操作するコンピュータ装置であり、NAS100にアクセスし、データの読み出し及び書き込みを行う。このクライアント131は、ネットワーク151に複数接続されていてもよい。
管理クライアント132は、当該コンピュータシステムの管理者が操作するコンピュータ装置であり、NAS100の管理に使用する。この管理クライアント132は、少なくとも、CPU(図示省略)、メモリ(図示省略)及びインターフェース(図示省略)を備える。このメモリには、少なくとも、CPUによって実行されるバックアップ要求プログラム126が格納される。このバックアップ要求プログラム126は、NAS100に記録されたデータをメディアサーバ133にバックアップする際に実行される。このバックアップ要求プログラム126については、後に図5で詳述する。
メディアサーバ133は、NAS100に記録されたデータをテープ等の記録媒体にバックアップする装置であり、例えば、磁気テープ装置であっても、大容量の磁気ディスク装置であってもよい。
NAS100は、クライアント131にファイル共有サービスを提供する。このNAS100は、コントローラ101及びディスク装置115によって構成される。
ディスク装置115は、単独のディスクドライブであってもよいし、複数のディスクドライブによって構成されるRAID等のディスクアレイであってもよい。ディスク装置115には、クライアント131から書き込みを要求されたファイルがブロック単位に分割されて記録される。
ディスク装置115には、プライマリボリューム(P−VOL)141及び差分ボリューム(D−VOL)142が設定されている。これらのボリュームは、オペレーティングシステム(図示省略)が一つのディスクとして認識できる単位であり、論理的には、それぞれが独立したディスクであるが、物理的には、一つのディスクの一部でもよいし、複数のディスクの一部の集合でもよい。
プライマリボリューム141は、通常の運用に供されるボリュームであり、クライアント131からの書き込み要求を受けて、ブロック単位にデータが書き込まれる。また、クライアント131からの通常の読み出し要求を受けて、ブロック単位にデータが読み出される。
差分ボリューム142は、差分スナップショットのコピーオンライト(copy on write)時にプライマリボリューム141に記録されていたブロックが複写される。すなわち、クライアント131又は管理クライアント132から差分スナップショットの作成要求を受けると、以後、プライマリボリューム141のブロックが上書きされるとき、上書きされる前のデータが差分ボリューム142に複写される。プライマリボリューム141に記録されたブロックと差分ボリューム142に記録されたブロックとを組み合わせることによって、差分スナップショットの作成要求を受けた時点のプライマリボリューム141を復元することができる。
仮想ボリューム(V−VOL)143は、クライアント131又は管理クライアント132から差分スナップショットの合成要求を受けたときに、当該差分スナップショットの作成要求を受けた時点のプライマリボリューム141を復元して当該要求元に提供するために生成される仮想的なボリュームであり、プライマリボリューム141の一部のブロックと差分ボリューム142の一部のブロックとからなる。これらのボリュームについては、後で詳細に説明する。
マッピングテーブル144は、ディスク装置115に記録される。このマッピングテーブル144は、作成されたスナップショットごとに、プライマリボリューム141のブロックアドレスと、そのアドレスのブロックがコピーされた差分ボリューム142のブロックアドレスとの対応が記録されるテーブルであり、仮想ボリューム143を生成する際に参照される。マッピングテーブル144については、後で詳細に説明する。
コントローラ101は、CPU111、ネットワークインターフェース(I/F)112、ストレージインターフェース(I/F)113及びメモリ114によって構成される。
CPU111は、メモリ114に格納された各種のプログラムを実行し、ネットワークストレージ装置を制御する。
メモリ114には、NAS_OS(図示省略)の管理下で稼動するファイルサーバプログラム121、ファイルシステム処理プログラム123、差分スナップショット管理プログラム124及びバックアップ処理プログラム125が格納されている。
ファイルサーバプログラム121は、クライアント131からのデータアクセス要求に応じて、ファイルシステム処理プログラム123に対して、ファイルやディレクトリの読み出し処理又は書き込み処理の実行を要求し、その実行結果を要求元のクライアント131に返送する。また、ファイルサーバプログラム121は、ユーザ認証を行い、ユーザに対してアクセス権限を付与することによって、複数のユーザが存在する場合のファイル共有を管理する。
図2は、本発明の実施の形態のファイルシステム処理プログラム123の構成の説明図である。
ファイルシステム処理プログラム123は、少なくとも、ファイル読み出し要求処理サブプログラム201及びファイル書き込み要求処理サブプログラム202を含む。ファイルシステム処理プログラム123は、ファイルサーバプログラム121や差分スナップショット管理プログラム124が発行するファイルやディレクトリの読み出し要求及び書き込み要求に応じて、ファイルやディレクトリを格納しているボリューム、アクセスするブロックの位置及びサイズを指定し、データの読み出し処理や書き込み処理をスナップショット管理プログラム124に発行する。ファイル読み出し要求処理サブプログラム201については、図11で詳細に説明する。
図3は、本発明の実施の形態の差分スナップショット管理プログラム124の構成の説明図である。
差分スナップショット管理プログラム124は、少なくとも、差分スナップショット作成処理サブプログラム301、コピーオンライト処理サブプログラム302及び差分スナップショット合成処理サブプログラム303を含む。
差分スナップショット作成処理サブプログラム301は、プライマリボリューム141に対するスナップショットを生成する。このスナップショットは、コピーオンライト処理サブプログラム302が、後述するマッピングテーブル144を用いて、スナップショットの生成時にプライマリボリューム141に格納されていたデータにアクセス可能となるように、プライマリボリューム141及び差分ボリューム142に記憶されたデータを管理し、生成されたプライマリボリューム141のスナップショットを提供するための仮想ボリューム143をアクセス可能にする。このため、差分スナップショット作成処理サブプログラム301は、クライアント131からのスナップショット取得要求に対して、マッピングテーブル144の領域を設定する。
コピーオンライト処理サブプログラム302は、スナップショットの維持に必要な差分データを格納する差分ボリューム142を管理し、ファイルシステム処理プログラム123の要求に応じたデータ書き込み処理に伴うスナップショットを維持する処理を行う。具体的には、マッピングテーブル144を用いて、プライマリボリューム141にデータを書き込む際に、プライマリボリューム141に記憶されていた更新前データを差分ボリューム142にコピーした後、プライマリボリューム141の記憶内容を更新する。
差分スナップショット合成処理サブプログラム303は、プライマリボリューム141及び差分ボリューム142を使用して、ファイルシステム処理プログラム123やバックアップ処理プログラム125の要求に応じた仮想ボリューム143の読み出し処理(すなわち、スナップショットを利用可能にする処理)を行う。具体的には、差分スナップショット合成処理サブプログラム303は、マッピングテーブル144を参照して、プライマリボリューム141又は差分ボリューム142のいずれからデータを読み出すかを決定し、決定されたボリュームのアドレスから、スナップショットの作成要求時にプライマリボリューム141に記憶されていたデータを提供する仮想ボリューム143を合成する。
なお、差分スナップショット管理プログラム124によって生成及び管理されるスナップショットについては、図6及び図7で詳細に説明する。また、差分スナップショット合成処理サブプログラム303の動作については、図12で詳細に説明する。
図4は、本発明の実施の形態のバックアップ処理プログラム125の構成の説明図である。
バックアップ処理プログラム125は、管理クライアント132から、特定のスナップショットを指定したバックアップ要求を受けると、ディスク装置115に記録されているデータのうち、当該スナップショットのデータをメディアサーバ133に転送してバックアップする。バックアップ処理プログラム125は、少なくとも、バックアップ要求等を処理する要求受付処理サブプログラム401を含む。この要求受付処理サブプログラム401の動作については、図10で詳細に説明する。
図5は、本発明の実施の形態のバックアップ要求プログラム126の構成の説明図である。
バックアップ要求プログラム126は、管理クライアント132がディスク装置115に記録されているデータのバックアップをバックアップ処理プログラム125に要求する際に実行され、少なくとも、バックアップ対象一覧取得要求処理サブプログラム501及びバックアップ要求処理サブプログラム502を含む。これらのサブプログラムの動作については、図8及び図9で詳細に説明する。
図6及び図7は、本発明の実施の形態のスナップショットの管理の説明図である。
図6及び図7において、<P−VOL>及び<D−VOL>は、それぞれ、プライマリボリューム141及び差分ボリューム142の内容を表示する。ここで、「格納位置」欄は、それぞれのボリュームに格納されているブロックのアドレスを表示し、「データ」欄は、格納されているブロックの内容を表示する。また、<マッピングテーブル>は、マッピングテーブル144の内容を表示する。ここで、「プライマリボリューム格納位置」欄は、プライマリボリューム141に格納されているブロックのアドレスを表示し、「変更有無ビットマップ」欄は、プライマリボリューム141に格納されているブロックがどのスナップショットを作成した後に変更されたかを表示し、「スナップショット1差分ボリューム格納位置」欄及び「スナップショット2差分ボリューム格納位置」欄は、プライマリボリューム141に格納されていたブロックが複写された差分ボリューム142のアドレスが格納される。
差分スナップショット作成処理サブプログラム301は、スナップショットの生成要求を受信すると、マッピングテーブル144に新しい仮想ボリューム143の識別情報(図6の<マッピングテーブル>の「スナップショット1差分ボリューム格納位置」欄)を登録する。スナップショット作成時点では、マッピングテーブル144の差分ボリューム格納位置欄にデータの格納位置(ブロックアドレス)が登録されていないので、仮想ボリューム143のブロックはプライマリボリューム141のブロックと一対一で対応付けられている。
その後、プライマリボリューム141内のデータが更新される際に、コピーオンライト処理サブプログラム302は、プライマリボリューム141内の更新前のデータを差分ボリューム142に複写し、この複写後にプライマリボリューム141の記憶内容を更新する。更に、コピーオンライト処理サブプログラム302は、データが更新されたプライマリボリューム141内のブロックに対応する仮想ボリューム143内のブロックを、スナップショット作成時点でプライマリボリューム141に格納されていたデータ(すなわち更新前のデータ)が格納されている差分ボリューム142のブロックと対応付けるようマッピングテーブル144を更新する。
例えば、図7において、スナップショット1の作成からスナップショット2作成までの間に、プライマリボリューム141の格納位置(アドレス)P1のブロックの内容(データ)が”AAAAA”から”aaaaa”に書き換えられる際に、書き換えられる前のデータ”AAAAA”が差分ボリューム142の格納位置D1に複写された後、プライマリボリューム141の格納位置P1にデータ”aaaaa”が格納される。このとき、マッピングテーブル144のプライマリボリューム格納位置P1に対応するスナップショット1差分ボリューム格納位置欄には、更新前データの格納位置D1が記憶される。さらに、マッピングテーブル144の変更有無ビットマップの上位第1ビットには、スナップショット1に対して差分データが記憶されていることを示す”1”が記憶される。
また、スナップショット2の作成から現時点までの間に、プライマリボリューム141の格納位置P2のブロックのデータが”BBBBB”から”bbbbb”に書き換えられる際に、書き換えられる前のデータ”BBBBB”が差分ボリューム142の格納位置D2に複写された後、プライマリボリューム141の格納位置P2にデータ”bbbbb”が格納される。このとき、マッピングテーブル144のプライマリボリューム格納位置P2に対応するスナップショット2差分ボリューム格納位置欄には更新前データの格納位置D2が記憶される。このとき、スナップショット2の差分ボリューム格納位置欄だけでなく、この更新前データを必要とするスナップショット1の差分ボリューム格納位置欄にもD2が記憶される。
さらに、マッピングテーブル144のプライマリボリューム格納位置P2に対応する変更有無ビットマップ欄には、スナップショット1及び2に対して差分データが記憶されていることを示す”11”が記憶される(すなわち、マッピングテーブルの変更有無ビットマップの第1ビット及び第2ビットの各々には、”1”が記憶される)。一方、マッピングテーブル144のプライマリボリューム格納位置P1に対応する変更有無ビットマップ欄には、スナップショット1のみに対して差分データが記憶されていることを示す”10”が記憶される。すなわち、変更有無ビットマップ欄に表示されているビットのうち、最上位ビット(左側に表示されているビット)が”1”のとき、スナップショット1に対して差分データが記憶されており、最下位ビット(右側に表示されているビット)が”1”のとき、スナップショット2に対して差分データが記憶されている。
ファイルシステム処理プログラム123が仮想ボリューム143に対するアクセス要求を差分スナップショット合成処理サブプログラム303に発行すると、差分スナップショット合成処理サブプログラム303は、マッピングテーブル144を参照して、仮想ボリューム143のブロックと対応付けられているプライマリボリューム141のブロック又は差分ボリューム142のブロックにアクセスして、データを読み出す。従って、ファイルシステム処理プログラム123は、仮想ボリューム143にアクセスすることによって、スナップショット生成要求が発行された時点においてプライマリボリューム141に記憶されていた情報を利用できるので、クライアント131又は管理クライアント132にファイルシステムのスナップショットイメージを提供することができる。
すなわち、仮想ボリューム143は、一又は複数のディスク装置内の記憶領域からなる仮想的なボリュームであって、実際にはプライマリボリューム141のブロックの一部と差分ボリューム142のブロックの一部とから構成されている。
例えば、図7において、スナップショット1作成時のプライマリボリューム141に対応する仮想ボリューム143は、P1に対応する差分データであるD1の”AAAAA”、P2に対応する差分データであるD2の”BBBBB”、P3に対応する差分データはないのでプライマリボリューム141に記憶された”CCCCC”が合成されたものとなる。
図8は、本発明の実施の形態のバックアップ対象一覧取得要求処理サブプログラム501のフローチャートである。
バックアップ対象一覧取得要求処理サブプログラム501は、ディスク装置115に記録されたデータのうち、バックアップ可能なファイルシステム(ファイルシステムとしてマウントされたスナップショットを含む)の検索をバックアップ処理プログラム125に要求するものであり、管理クライアント132によって実行される。
バックアップ対象一覧取得要求処理が開始すると、バックアップ処理プログラム125の要求受付処理サブプログラム401に対して、バックアップ対象一覧取得を要求する(801)。次に、要求受付処理サブプログラム401からの応答を出力し(802)、処理を終了する(803)。
管理クライアント132を操作する管理者は、バックアップ対象一覧取得要求処理サブプログラム501を実行することによって、ディスク装置115に記録されたデータのうち、どのファイルシステムがバックアップ可能であるかを知ることができる。
図9は、本発明の実施の形態のバックアップ要求処理サブプログラム502のフローチャートである。
バックアップ要求処理サブプログラム502は、ディスク装置115に記録されたファイルシステムのバックアップをバックアップ処理プログラム125に要求するものであり、管理クライアント132によって実行される。
管理クライアント132を操作する管理者は、バックアップ対象一覧取得要求処理サブプログラム501を実行して得られたバックアップ可能なファイルシステム名(スナップショット名)又はファイルサーバプログラム121によってアクセス権限が与えられたファイルシステム名(スナップショット名)を指定して、バックアップ要求処理サブプログラム502を実行する。バックアップ要求処理が開始すると、バックアップ処理プログラム125の要求受付処理サブプログラム401に対して、バックアップを要求し(901)、処理を終了する(902)。
管理クライアント132を操作する管理者は、バックアップ要求処理サブプログラム502を実行することによって、ディスク装置115に記録されたファイルシステムをメディアサーバ133にバックアップすることができる。このとき、スナップショット名を指定することによって、任意のスナップショットのみをメディアサーバ133にバックアップすることができる。
図10は、本発明の実施の形態の要求受付処理サブプログラム401のフローチャートである。
要求受付処理サブプログラム401は、CPU111によって実行され、管理クライアント132からの要求を処理する。
要求受付処理サブプログラム401は、管理クライアント132からの要求が到着すると(1001)、その要求がバックアップ対象一覧取得要求であるか否かを判定する(1002)。その要求がバックアップ対象一覧取得要求であるときは、ディスク装置115から、バックアップ可能なファイルシステム(ファイルシステムとしてマウントされたスナップショットを含む)を検索する(1003)。具体的には、スナップショットを検索する際には、マッピングテーブル144を参照し、格納されているスナップショット名を検索する。例えば、図7のマッピングテーブルを参照した場合、スナップショット1とスナップショット2がバックアップ可能である。
次に、この検索の結果得られたファイルシステム名(スナップショット名)を要求元の管理クライアント132に返送し(1004)、ステップ1001に戻る。
一方、その要求がバックアップ対象一覧取得要求でないときは、その要求がバックアップ要求であるか否かを判定する(1005)。その要求がバックアップ要求であるときは、バックアップを実行する。すなわち、ファイルシステム処理プログラム123のファイル読み出し要求処理サブプログラム201(図11)を呼び出し、バックアップ要求において指定されたファイルシステムに含まれるブロックを特定し、ファイルシステムに含まれるファイルのデータを取得する(1006)。次に、得られたファイルのデータをメディアサーバ133に送信する(1007)。
次に、当該ファイルシステムに含まれる全てのファイルのデータを送信したか否かを判定し(1008)、送信していない場合は、当該ファイルシステムに含まれる他のファイルのデータを送信するために、ステップ1006に戻る。一方、当該ファイルシステムに含まれる全てのファイルのデータを送信した場合は、メディアサーバ133に完了通知を送信し(1009)、ステップ1001に戻る。
図11は、本発明の実施の形態のファイル読み出し要求処理サブプログラム201のフローチャートである。
ファイル読み出し要求処理サブプログラム201は、要求受付処理サブプログラム401から呼び出され、指定されたファイルのデータを取得し、そのデータを要求元に返送する。
ファイル読み出し要求処理サブプログラム201は、要求受付処理サブプログラム401からファイルパス名を指定して呼び出されると、そのファイルパス名から、読み出しを要求されたファイルのデータが格納されたプライマリボリューム141のブロックアドレスを取得する(1101)。このブロックアドレスの取得については、図13で詳細に説明する。
次に、差分スナップショット合成処理サブプログラム303を呼び出し、取得したプライマリボリューム141のブロックアドレスに対応する仮想ボリューム143のブロックアドレスの取得を要求する(1102)。
次に、取得した仮想ボリューム143のブロックアドレスに格納されているデータを読み出す(1103)。
次に、要求されたファイルの全てのブロックアドレスについてデータを取得したか否かを判定し(1104)、取得していない場合は、要求されたファイルの全てのブロックアドレスについてデータを取得するために、ステップ1102に戻る。
一方、要求されたファイルの全てのブロックアドレスについてデータを取得した場合は、取得したデータを呼び出し元に返送して(1105)、処理を終了する(1106)。
図10及び図11に示すように、バックアップ処理プログラム125は、管理クライアント132からのバックアップ要求を受けると、ファイルシステム処理プログラム123と連携して、ファイルごとに、そのファイルを構成するデータ(ブロック)を取得し、バックアップする。従って、管理クライアント132が、バックアップする対象のスナップショットを指定すれば、そのスナップショットについて生成された仮想ボリューム143を構成するファイルのデータ(ブロック)のみをバックアップすることができる。
図12は、本発明の実施の形態の差分スナップショット合成処理サブプログラム303のフローチャートである。
差分スナップショット合成処理サブプログラム303は、ファイル読み出し要求処理サブプログラム201によって呼び出され、指定されたファイルシステム(ファイルシステムとしてマウントされたスナップショットを含む)のを構成するブロックアドレスを要求元に返送する。スナップショットが指定された場合は、そのスナップショットの仮想ボリュームを構成するブロックアドレスを返送する。
差分スナップショット合成処理サブプログラム303は、ファイル読み出し要求処理サブプログラム201からブロックアドレスを指定して呼び出されると、そのブロックアドレスでマッピングテーブル144を検索する(1201)。
次に、そのブロックアドレスに対応するブロックの内容(データ)が変更されているか否かを判定するため、マッピングテーブル144の変更有無ビットマップ欄の、指定されたスナップショットに対応するビットを参照する(1202)。その結果、対応するビットが「1」である場合は、ブロックのデータが変更されていると判定し、指定されたスナップショットの差分ボリューム格納位置欄に表示されたアドレスを取得する(1203)。
一方、対応するビットが「0」であるか、又は、変更有無ビットマップ欄の表示が「なし」である場合は、ブロックのデータが変更されていないと判定し、指定されたアドレスを取得する(1204)。
次に、取得したアドレスを呼び出し元に返送して(1205)、処理を終了する(1206)。
図13は、本発明の実施の形態のファイルパス名とそのファイルのブロックアドレスとの対応関係の説明図である。
この図13を用いて、図11のステップ1101における、ファイルパス名からブロックアドレスを取得する手順を説明する。
図13の例では、ファイルシステム処理プログラム123が運用するファイルシステムにおいて、ルートディレクトリ(図13の「/」)の下に、ディレクトリ「etc」、「home」及び「usr」が存在する。このファイルシステムは、ディスク装置115のプライマリボリューム141に格納されている。なお、ファイルシステム処理プログラム123がスナップショットをマウントするまでは、ディレクトリ「mnt」以下のディレクトリは存在しない。
ディレクトリ「usr」の下には、NAS100を共有するユーザごとに割り当てられたユーザディレクトリがある。このうち、ユーザ「001」に割り当てられたディレクトリ「user001」の下には、ユーザ「001」が所有するファイル「a.txt」が格納されている。このファイル「a.txt」は、ファイルシステム処理プログラム123によって、プライマリボリューム141のブロックアドレス「P1」、「P2」及び「P3」と対応付けられており、これらのアドレスのブロックにファイル「a.txt」を構成するデータが格納されている。
この例では、図7に示すように、二つのスナップショットが作成され、ファイル「a.txt」を構成するブロックアドレス「P1」、「P2」及び「P3」のデータは、図7のマッピングテーブルに示すように更新されているものとする。
図11のステップ1101において、ファイルパス名からブロックアドレスを取得する前に、ファイルシステム処理プログラム123は、指定されたスナップショットを、マウントポイントを指定して、ファイルシステムにマウントする。例えば、スナップショット1をマウントポイント「/mnt/ss01」にマウントするように指定する。
その後、例えば、スナップショット1のファイル「a.txt」のブロックアドレスを取得するとき、クライアント131又は管理クライアント132は、ファイルパス名「/mnt/ss01/usr/user001/a.txt」を指定する。
ファイルシステム処理プログラム123は、ファイルパス名に「/mnt/ss01」が含まれていることから、クライアント131又は管理クライアント132がスナップショット1のファイルを取得しようとしていると判断し、図7のマッピングテーブルの「変更有無ビットマップ」及び「スナップショット1差分ボリューム格納位置」の列を参照して、「/usr/user001/a.txt」を検索する。その結果、スナップショット1のディレクトリ構造が、図13の「/mnt/ss01」の下に示すように、仮想的に再現される。
ここで、図7のマッピングテーブルを参照すると、スナップショット1において、ファイル「a.txt」を構成するブロックのうち、「P1」と「P2」の差分データが存在するため、「P1」と「P2」を、それぞれ、差分ボリューム142のブロック「D1」と「D2」で置き換える。その結果、スナップショット1のファイル「a.txt」を構成するブロックのアドレス「D1」、「D2」及び「P3」を取得する。
このようにして、マッピングテーブル144によってスナップショット1と関連付けられたブロックの集合が、スナップショット1の仮想ボリューム143である。
同様にして、スナップショット2を指定してファイルパス名からブロックアドレスを取得する場合は、スナップショット2をマウントポイント「/mnt/ss02」にマウントする。
その後、スナップショット2のファイル「a.txt」のブロックアドレスを取得するとき、クライアント131又は管理クライアント132は、ファイルパス名「/mnt/ss02/usr/user001/a.txt」を指定する。
ファイルシステム処理プログラム123は、ファイルパス名に「/mnt/ss02」が含まれていることから、クライアント131又は管理クライアント132がスナップショット2のファイルを取得しようとしていると判断し、図7のマッピングテーブルの「変更有無ビットマップ」及び「スナップショット2差分ボリューム格納位置」の列を参照して、「/usr/user002/a.txt」を検索する。その結果、スナップショット2のディレクトリ構造が、図13の「/mnt/ss02」の下に示すように、仮想的に再現される。
ここで、図7のマッピングテーブルを参照すると、スナップショット2において、ファイル「a.txt」を構成するブロックのうち、「P2」の差分データが存在するため、「P2」を差分ボリューム142のブロック「D2」で置き換える。その結果、スナップショット2のファイル「a.txt」を構成するブロックのアドレス「P1」、「D2」及び「P3」を取得する。
このようにして、マッピングテーブル144によってスナップショット2と関連付けられたブロックの集合が、スナップショット2の仮想ボリューム143である。
以上説明した本発明の実施の形態では、スナップショットの世代を指定して、当該スナップショットのデータのみをバックアップするが、ファイル名を指定することによって、同一ファイルの複数世代のデータをバックアップすることもできる。
以上説明した本発明の実施の形態によれば、管理クライアント132からのスナップショットを指定したバックアップ要求に対して、NAS100のコントローラ101は、ファイルシステム処理プログラム123とバックアップ処理プログラム125とを連携させることによって、指定されたスナップショットのデータのみをバックアップすることができる。その結果、不要なデータをバックアップしないため、バックアップ時間を短縮することができ、バックアップ装置の記憶容量を効率的に利用することができる。
本発明の実施の形態の差分スナップショットのバックアップ方法を適用したコンピュータシステムのブロック図である。 本発明の実施の形態のファイルシステム処理プログラムの構成の説明図である。 本発明の実施の形態の差分スナップショット管理プログラムの構成の説明図である。 本発明の実施の形態のバックアップ処理プログラムの構成の説明図である。 本発明の実施の形態のバックアップ要求プログラムの構成の説明図である。 本発明の実施の形態のスナップショットの管理の説明図である。 本発明の実施の形態のスナップショットの管理の説明図である。 本発明の実施の形態のバックアップ対象一覧取得要求処理サブプログラムのフローチャートである。 本発明の実施の形態のバックアップ要求処理サブプログラムのフローチャートである。 本発明の実施の形態の要求受付処理サブプログラムのフローチャートである。 本発明の実施の形態のファイル読み出し要求処理サブプログラムのフローチャートである。 本発明の実施の形態の差分スナップショット合成処理サブプログラムのフローチャートである。 本発明の実施の形態のファイルパス名とそのファイルのブロックアドレスとの対応関係の説明図である。
符号の説明
100 ネットワークストレージ装置(NAS)
101 コントローラ
111 CPU
112 ネットワークインターフェース(I/F)
113 ストレージインターフェース(I/F)
114 メモリ
115 ディスク装置
121 ファイルサーバプログラム
123 ファイルシステム管理プログラム
124 差分スナップショット管理プログラム
125 バックアップ処理プログラム
126 バックアップ要求プログラム
131 クライアント
132 管理クライアント
133 メディアサーバ
141 プライマリボリューム(P−VOL)
142 差分ボリューム(D−VOL)
143 仮想ボリューム(V−VOL)
144 マッピングテーブル
151 ネットワーク

Claims (7)

  1. ユーザが使用するクライアントと、
    前記クライアントにファイル共有サービスを提供するネットワークストレージ装置と、
    前記ネットワークストレージ装置に記録されたデータをバックアップするメディアサーバと、
    前記ネットワークストレージ装置に前記バックアップを要求する管理クライアントと、
    前記クライアント、前記ネットワークストレージ装置、前記メディアサーバ及び前記管理クライアントを接続するネットワークと、を備え、
    前記ネットワークストレージ装置は、
    前記ネットワークに接続されるネットワークインターフェースと、
    制御プログラムを記憶するメモリと、
    前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの差分データを格納する差分ボリュームと、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとの関係を管理するマッピングテーブルとが設けられるディスク装置と、
    前記ディスク装置に接続され、前記クライアントから送られたデータ入出力要求に基づいて前記ディスク装置との間のデータ転送を制御するディスクインターフェースと、
    前記ディスク装置の記憶領域を用いて生成される運用ボリュームへのデータの読み書きを制御し、前記運用ボリュームに過去に格納されていたデータを世代毎の差分データとして差分ボリュームに書き込むように制御し、前記マッピングテーブルによって前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとのアドレスの関係を前記世代毎に管理し、前記マッピングテーブルを参照して前記運用ボリュームのデータと前記差分データとを合成して前記世代毎の仮想ボリュームを生成する制御プロセッサと、を有するストレージシステムにおいて用いられるバックアップ方法であって、
    前記管理クライアントが、前記差分ボリュームに格納される世代毎の差分データのうちバックアップ可能な世代の一覧を前記制御プロセッサに要求する手順と、
    前記制御プロセッサが、前記マッピングテーブルを参照して、前記バックアップ可能な世代の一覧を取得し、当該取得した一覧を前記管理クライアントに送信する手順と、
    前記管理クライアントが、当該取得した一覧から選択した世代のバックアップを前記制御プロセッサに要求する手順と、
    前記制御プロセッサが、当該選択された世代について前記マッピングテーブルを参照して前記仮想ボリュームを構成するデータのアドレスを取得する手順と、
    前記制御プロセッサが、当該取得したアドレスに格納されているデータを読み出す手順と、
    前記制御プロセッサが、当該取得した仮想ボリュームのデータを前記メディアサーバに送信する手順と、を備えることを特徴とするバックアップ方法。
  2. ユーザが使用するクライアントにファイル共有サービスを提供するネットワークストレージ装置と、
    前記ネットワークストレージ装置に記録されたデータをバックアップするバックアップ装置と、
    前記ネットワークストレージ装置に前記バックアップを要求する管理クライアントと、を備え、
    前記ネットワークストレージ装置は、
    制御プログラムを記憶するメモリと、
    前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの世代毎の差分データを格納する差分ボリュームと、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとの関係を世代毎に管理するマッピング情報とが設けられるディスク装置と、
    前記ディスク装置へのデータの読み書きを制御する制御プロセッサと、を有するストレージシステムにおいて用いられるバックアップ方法であって、
    前記管理クライアントが、前記差分ボリュームに格納される世代毎の差分データのうちバックアップ可能な前記世代の情報を前記制御プロセッサに要求する第1手順と、
    前記制御プロセッサが、前記マッピング情報を参照して、前記バックアップ可能な世代の情報を取得し、前記管理クライアントに送信する第2手順と、
    前記管理クライアントが、当該取得した情報から選択した世代のスナップショットのデータのバックアップを前記制御プロセッサに要求する第3手順と、
    前記制御プロセッサが、前記マッピング情報を参照して、前記バックアップ要求において指定された世代について、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとを合成する第4手順と、
    前記制御プロセッサが、当該合成されたデータを前記バックアップ装置に送信する第5手順と、を含むことを特徴とするバックアップ方法。
  3. 前記マッピング情報は、前記運用ボリュームにデータが格納されているアドレスと該アドレスに対応する差分データが格納されている前記差分ボリュームのアドレスとの関係を管理しており、
    前記第4手順は、
    前記マッピング情報を参照して、前記運用ボリュームにデータが格納されているアドレスに対応する差分データが格納されている前記差分ボリュームのアドレスを取得し、
    当該取得した差分ボリュームのアドレスに格納されているデータを差分ボリュームから読み出す手順と、
    前記運用ボリュームに格納されているデータと、前記差分ボリュームに格納されている差分データとを合成する手順と、を含むことを特徴とする請求項2に記載のバックアップ方法。
  4. 前記第4手順は、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとを合成して、前記世代毎に仮想ボリュームを構成し、
    前記第5手順は、前記世代毎の仮想ボリュームのデータを送信することを特徴とする請求項2に記載のバックアップ方法。
  5. ユーザが使用するクライアントにファイル共有サービスを提供するネットワークストレージ装置と、
    前記ネットワークストレージ装置に記録されたデータをバックアップするバックアップ装置と、
    前記ネットワークストレージ装置に前記バックアップを要求する管理クライアントと、
    前記クライアント、前記ネットワークストレージ装置及び前記バックアップ装置を接続するネットワークと、を備え、
    前記ネットワークストレージ装置は、
    制御プログラムを記憶するメモリと、
    前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの世代毎の差分データを格納する差分ボリュームと、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとの関係を前記世代毎に管理するマッピング情報とが設けられるディスク装置と、
    前記ディスク装置へのデータの読み書きを制御する制御プロセッサと、を有するストレージシステムにおいて、
    前記管理クライアントは、バックアップ可能な前記世代の情報を前記制御プロセッサに要求し、
    前記制御プロセッサは、前記マッピング情報を参照して前記バックアップ可能な世代の情報を取得し、当該取得した情報を前記クライアントに送信し、
    前記管理クライアントは、当該取得した情報から選択した世代のスナップショットのデータのバックアップを前記制御プロセッサに要求し、
    前記制御プロセッサは、
    前記マッピング情報を参照して前記バックアップ要求において指定された世代について、前記運用ボリュームにデータが格納されているアドレスに対応する差分データが格納されている前記差分ボリュームのアドレスを取得し、
    当該取得した差分ボリュームのアドレスに格納されているデータを差分ボリュームから読み出し、
    前記運用ボリュームに格納されているデータと、前記差分ボリュームに格納されている差分データとを合成して、前記世代毎に仮想ボリュームを構成し、
    前記世代毎の仮想ボリュームのデータを前記バックアップ装置に送信することを特徴とするストレージシステム。
  6. ユーザが使用するクライアントとネットワークで通信可能に接続され、
    制御プログラムを記憶するメモリと、
    前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの世代毎の差分データを格納する差分ボリュームと、前記運用ボリュームにデータが格納されているアドレスと該アドレスに対応する差分データが格納されている前記差分ボリュームのアドレスとの関係を前記世代毎に管理するマッピング情報とが設けられるディスク装置と、
    前記ディスク装置へのデータの読み書きを制御する制御プロセッサと、を有するストレージ装置において、
    前記ストレージ装置は、
    前記マッピング情報を参照して、前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されているデータとを合成して生成される仮想ボリュームを構成するデータのアドレスを取得する差分スナップショット管理部と、
    当該取得した差分ボリュームのアドレスに格納されている差分データを読み出すファイルシステム処理部と、
    当該読み出した仮想ボリュームのデータを前記バックアップ装置に送信するバックアップ処理部と、を備え、
    前記バックアップ処理部は、前記管理クライアントから前記差分ボリュームに格納される差分データのうちバックアップ可能な前記世代の情報の要求があると、前記マッピング情報を参照して、前記バックアップ可能な世代の情報を取得し、前記管理クライアントに送信し、
    前記差分スナップショット管理部は、前記管理クライアントからスナップショットのデータのバックアップ要求があると、前記マッピング情報を参照して前記バックアップ要求において指定された世代について、前記運用ボリュームにデータが格納されているアドレスに対応する差分データが格納されている前記差分ボリュームのアドレスを取得し、
    前記ファイルシステム処理部は、処理部当該取得した差分ボリュームのアドレスに格納されているデータを差分ボリュームから読み出すと共に、前記運用ボリュームに格納されているデータと前記差分データとを合成して、前記世代毎に仮想ボリュームを構成し、
    前記バックアップ処理部は、前記世代毎の仮想ボリュームのデータを送信することを特徴とするストレージ装置。
  7. ユーザが使用するクライアントとネットワークで通信可能に接続され、
    制御プログラムを記憶するメモリと、
    前記クライアントから送られたデータが格納される運用ボリュームと、前記運用ボリュームのスナップショットの世代毎の差分データを格納する差分ボリュームと、前記運用ボリュームに格納されているデータが格納されているアドレスと該アドレスに対応する差分データが格納されている前記差分ボリュームのアドレスとの関係を前記世代毎に管理するマッピング情報とが設けられるディスク装置と、
    前記ディスク装置へのデータの読み書きを制御する制御プロセッサと、を有するストレージ装置を制御するプログラムにおいて、
    前記クライアントから送信され、前記差分ボリュームに格納される世代毎の差分データのうちバックアップ可能な前記世代の情報の要求を受信した場合、前記マッピング情報を参照して、前記バックアップ可能な世代の情報を取得し、前記管理クライアントに送信する第1手順と、
    前記クライアントから送信され、前記取得された情報から選択された世代のスナップショットのデータのバックアップの要求を受信した場合、前記マッピング情報を参照して前記バックアップ要求において指定された世代について、前記運用ボリュームにデータが格納されているアドレスに対応する差分データが格納されている前記差分ボリュームのアドレスを取得し、当該取得した差分ボリュームのアドレスに格納されているデータを差分ボリュームから読み出す第2手順と、
    前記運用ボリュームに格納されているデータと前記差分ボリュームに格納されている差分データとを合成して、前記世代毎に仮想ボリュームを構成する第3手順と、
    前記世代毎の仮想ボリュームのデータをバックアップ装置に送信する第4手順と、を前記制御プロセッサに実行させることを特徴とするプログラム。
JP2004096277A 2004-03-29 2004-03-29 バックアップ方法、ストレージシステム及びそのプログラム Expired - Fee Related JP4456909B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2004096277A JP4456909B2 (ja) 2004-03-29 2004-03-29 バックアップ方法、ストレージシステム及びそのプログラム
US10/898,225 US7287045B2 (en) 2004-03-29 2004-07-26 Backup method, storage system, and program for backup

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004096277A JP4456909B2 (ja) 2004-03-29 2004-03-29 バックアップ方法、ストレージシステム及びそのプログラム

Publications (3)

Publication Number Publication Date
JP2005284609A JP2005284609A (ja) 2005-10-13
JP2005284609A5 JP2005284609A5 (ja) 2007-04-05
JP4456909B2 true JP4456909B2 (ja) 2010-04-28

Family

ID=34991421

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004096277A Expired - Fee Related JP4456909B2 (ja) 2004-03-29 2004-03-29 バックアップ方法、ストレージシステム及びそのプログラム

Country Status (2)

Country Link
US (1) US7287045B2 (ja)
JP (1) JP4456909B2 (ja)

Families Citing this family (166)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7739381B2 (en) 1998-03-11 2010-06-15 Commvault Systems, Inc. System and method for providing encryption in storage operations in a storage network, such as for use by application service providers that provide data storage services
US7225210B2 (en) * 2003-11-20 2007-05-29 Overland Storage, Inc. Block level data snapshot system and method
JP4550541B2 (ja) 2004-10-06 2010-09-22 株式会社日立製作所 ストレージシステム
US7404051B2 (en) * 2005-04-18 2008-07-22 Hitachi, Ltd. Method for replicating snapshot volumes between storage systems
US8615482B1 (en) * 2005-06-20 2013-12-24 Symantec Operating Corporation Method and apparatus for improving the utilization of snapshots of server data storage volumes
US7574460B2 (en) * 2005-12-01 2009-08-11 International Business Machines Corporation Journaling database changes using minimized journal entries that may be output in human-readable form
JP4741371B2 (ja) * 2006-01-05 2011-08-03 株式会社日立製作所 システム、サーバ装置及びスナップショットの形式変換方法
US8533409B2 (en) * 2006-01-26 2013-09-10 Infortrend Technology, Inc. Method of managing data snapshot images in a storage system
US20070214384A1 (en) * 2006-03-07 2007-09-13 Manabu Kitamura Method for backing up data in a clustered file system
JP4903461B2 (ja) * 2006-03-15 2012-03-28 株式会社日立製作所 記憶システム及びデータ移行方法並びにサーバ装置
JP2007264814A (ja) * 2006-03-27 2007-10-11 Fujitsu Ltd レプリケーションデータ作成プログラム、レプリケーションデータ反映プログラムおよびデータベース装置
US8949312B2 (en) * 2006-05-25 2015-02-03 Red Hat, Inc. Updating clients from a server
US8655914B2 (en) * 2006-10-17 2014-02-18 Commvault Systems, Inc. System and method for storage operation access security
US20080109804A1 (en) * 2006-11-06 2008-05-08 Richard Welcher Bloomstein Additional uses of virtualization for disaster recovery and prevention
US8510524B1 (en) 2007-03-29 2013-08-13 Netapp, Inc. File system capable of generating snapshots and providing fast sequential read access
US8533410B1 (en) * 2007-03-29 2013-09-10 Netapp, Inc. Maintaining snapshot and active file system metadata in an on-disk structure of a file system
US7849057B1 (en) 2007-03-30 2010-12-07 Netapp, Inc. Identifying snapshot membership for blocks based on snapid
CN101399696B (zh) 2007-09-24 2011-09-21 国际商业机器公司 通过网络为客户机安装软件的方法、系统及相应的客户机
US20090210461A1 (en) * 2008-02-14 2009-08-20 Mcchord Austin Network Attached Storage System and Method
US20090214044A1 (en) * 2008-02-21 2009-08-27 Hitachi, Ltd. Data archiving technique for encrypted data
JP2009237763A (ja) * 2008-03-26 2009-10-15 Hitachi Ltd サーバシステム及びその制御方法
JP4607981B2 (ja) 2008-03-27 2011-01-05 富士通株式会社 コピー制御装置、コピー制御方法およびコピー制御プログラム
CN100570575C (zh) * 2008-04-18 2009-12-16 成都市华为赛门铁克科技有限公司 一种数据备份的方法和装置
US7937548B2 (en) * 2008-05-21 2011-05-03 Hewlett-Packard Development Company, L.P. System and method for improved snapclone performance in a virtualized storage system
US8676809B1 (en) * 2008-06-30 2014-03-18 Symantec Corporation Method and apparatus for mapping virtual machine incremental images
WO2010049314A1 (en) * 2008-10-30 2010-05-06 International Business Machines Corporation Flashcopy handling
US8291261B2 (en) * 2008-11-05 2012-10-16 Vulcan Technologies Llc Lightweight application-level runtime state save-and-restore utility
US8434131B2 (en) 2009-03-20 2013-04-30 Commvault Systems, Inc. Managing connections in a data storage system
JP5317807B2 (ja) * 2009-04-13 2013-10-16 株式会社日立製作所 ファイル制御システムおよびそれに用いるファイル制御計算機
US8370302B2 (en) * 2009-06-02 2013-02-05 Hitachi, Ltd. Method and apparatus for block based volume backup
JP2011048723A (ja) * 2009-08-28 2011-03-10 Fuji Xerox Co Ltd 情報処理プログラム及び情報処理装置
JP2013011919A (ja) 2009-09-17 2013-01-17 Hitachi Ltd ストレージ装置及びそのスナップショット制御方法
US8352501B2 (en) * 2010-01-28 2013-01-08 Cleversafe, Inc. Dispersed storage network utilizing revision snapshots
US8468318B2 (en) 2010-09-15 2013-06-18 Pure Storage Inc. Scheduling of I/O writes in a storage environment
US8589625B2 (en) 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of reconstructive I/O read operations in a storage environment
US8589655B2 (en) 2010-09-15 2013-11-19 Pure Storage, Inc. Scheduling of I/O in an SSD environment
US11275509B1 (en) 2010-09-15 2022-03-15 Pure Storage, Inc. Intelligently sizing high latency I/O requests in a storage environment
US11614893B2 (en) 2010-09-15 2023-03-28 Pure Storage, Inc. Optimizing storage device access based on latency
US8732426B2 (en) 2010-09-15 2014-05-20 Pure Storage, Inc. Scheduling of reactive I/O operations in a storage environment
US9244769B2 (en) 2010-09-28 2016-01-26 Pure Storage, Inc. Offset protection data in a RAID array
US8775868B2 (en) 2010-09-28 2014-07-08 Pure Storage, Inc. Adaptive RAID for an SSD environment
CN102088490B (zh) * 2011-01-19 2013-06-12 华为技术有限公司 数据存储方法、设备和系统
US11636031B2 (en) 2011-08-11 2023-04-25 Pure Storage, Inc. Optimized inline deduplication
US8589640B2 (en) 2011-10-14 2013-11-19 Pure Storage, Inc. Method for maintaining multiple fingerprint tables in a deduplicating storage system
US9098452B2 (en) 2011-12-19 2015-08-04 International Business Machines Corporation Selecting files to backup in a block level backup
US8719540B1 (en) 2012-03-15 2014-05-06 Pure Storage, Inc. Fractal layout of data blocks across multiple devices
US8745415B2 (en) 2012-09-26 2014-06-03 Pure Storage, Inc. Multi-drive cooperation to generate an encryption key
US11032259B1 (en) 2012-09-26 2021-06-08 Pure Storage, Inc. Data protection in a storage system
US10623386B1 (en) 2012-09-26 2020-04-14 Pure Storage, Inc. Secret sharing data protection in a storage system
US10635128B1 (en) * 2012-10-29 2020-04-28 Veritas Technologies Llc Storing backup data using snapshots
US11733908B2 (en) 2013-01-10 2023-08-22 Pure Storage, Inc. Delaying deletion of a dataset
US11768623B2 (en) 2013-01-10 2023-09-26 Pure Storage, Inc. Optimizing generalized transfers between storage systems
US10908835B1 (en) 2013-01-10 2021-02-02 Pure Storage, Inc. Reversing deletion of a virtual machine
US9436720B2 (en) 2013-01-10 2016-09-06 Pure Storage, Inc. Safety for volume operations
US10365858B2 (en) 2013-11-06 2019-07-30 Pure Storage, Inc. Thin provisioning in a storage device
US11128448B1 (en) 2013-11-06 2021-09-21 Pure Storage, Inc. Quorum-aware secret sharing
US10263770B2 (en) 2013-11-06 2019-04-16 Pure Storage, Inc. Data protection in a storage system using external secrets
US9208086B1 (en) 2014-01-09 2015-12-08 Pure Storage, Inc. Using frequency domain to prioritize storage of metadata in a cache
US10656864B2 (en) 2014-03-20 2020-05-19 Pure Storage, Inc. Data replication within a flash storage array
US9779268B1 (en) 2014-06-03 2017-10-03 Pure Storage, Inc. Utilizing a non-repeating identifier to encrypt data
US9218244B1 (en) 2014-06-04 2015-12-22 Pure Storage, Inc. Rebuilding data across storage nodes
US11399063B2 (en) 2014-06-04 2022-07-26 Pure Storage, Inc. Network authentication for a storage system
US9218407B1 (en) 2014-06-25 2015-12-22 Pure Storage, Inc. Replication and intermediate read-write state for mediums
US10496556B1 (en) 2014-06-25 2019-12-03 Pure Storage, Inc. Dynamic data protection within a flash storage system
US10296469B1 (en) 2014-07-24 2019-05-21 Pure Storage, Inc. Access control in a flash storage system
US9558069B2 (en) 2014-08-07 2017-01-31 Pure Storage, Inc. Failure mapping in a storage array
US9495255B2 (en) 2014-08-07 2016-11-15 Pure Storage, Inc. Error recovery in a storage cluster
US9864761B1 (en) 2014-08-08 2018-01-09 Pure Storage, Inc. Read optimization operations in a storage system
US9612913B2 (en) * 2014-09-02 2017-04-04 Infinidat Ltd. System, method and a non-transitory computer readable medium for protecting snapshots
US10430079B2 (en) 2014-09-08 2019-10-01 Pure Storage, Inc. Adjusting storage capacity in a computing system
US10164841B2 (en) 2014-10-02 2018-12-25 Pure Storage, Inc. Cloud assist for storage systems
US10430282B2 (en) 2014-10-07 2019-10-01 Pure Storage, Inc. Optimizing replication by distinguishing user and system write activity
US9489132B2 (en) 2014-10-07 2016-11-08 Pure Storage, Inc. Utilizing unmapped and unknown states in a replicated storage system
US9727485B1 (en) 2014-11-24 2017-08-08 Pure Storage, Inc. Metadata rewrite and flatten optimization
US9773007B1 (en) 2014-12-01 2017-09-26 Pure Storage, Inc. Performance improvements in a storage system
US9588842B1 (en) 2014-12-11 2017-03-07 Pure Storage, Inc. Drive rebuild
US9552248B2 (en) 2014-12-11 2017-01-24 Pure Storage, Inc. Cloud alert to replica
US9864769B2 (en) 2014-12-12 2018-01-09 Pure Storage, Inc. Storing data utilizing repeating pattern detection
US10545987B2 (en) 2014-12-19 2020-01-28 Pure Storage, Inc. Replication to the cloud
US11947968B2 (en) 2015-01-21 2024-04-02 Pure Storage, Inc. Efficient use of zone in a storage device
US10296354B1 (en) 2015-01-21 2019-05-21 Pure Storage, Inc. Optimized boot operations within a flash storage array
US9710165B1 (en) 2015-02-18 2017-07-18 Pure Storage, Inc. Identifying volume candidates for space reclamation
US10082985B2 (en) 2015-03-27 2018-09-25 Pure Storage, Inc. Data striping across storage nodes that are assigned to multiple logical arrays
US10178169B2 (en) 2015-04-09 2019-01-08 Pure Storage, Inc. Point to point based backend communication layer for storage processing
US10140149B1 (en) 2015-05-19 2018-11-27 Pure Storage, Inc. Transactional commits with hardware assists in remote memory
US10310740B2 (en) 2015-06-23 2019-06-04 Pure Storage, Inc. Aligning memory access operations to a geometry of a storage device
US9547441B1 (en) 2015-06-23 2017-01-17 Pure Storage, Inc. Exposing a geometry of a storage device
CN105094707B (zh) * 2015-08-18 2018-03-13 华为技术有限公司 一种数据存储、读取方法及装置
US11341136B2 (en) 2015-09-04 2022-05-24 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
US11269884B2 (en) 2015-09-04 2022-03-08 Pure Storage, Inc. Dynamically resizable structures for approximate membership queries
KR20170028825A (ko) 2015-09-04 2017-03-14 퓨어 스토리지, 아이앤씨. 압축된 인덱스들을 사용한 해시 테이블들에서의 메모리 효율적인 스토리지 및 탐색
US9843453B2 (en) 2015-10-23 2017-12-12 Pure Storage, Inc. Authorizing I/O commands with I/O tokens
WO2017132790A1 (zh) * 2016-02-01 2017-08-10 华为技术有限公司 数据恢复方法及存储设备
US10133503B1 (en) 2016-05-02 2018-11-20 Pure Storage, Inc. Selecting a deduplication process based on a difference between performance metrics
US10452297B1 (en) 2016-05-02 2019-10-22 Pure Storage, Inc. Generating and optimizing summary index levels in a deduplication storage system
US10203903B2 (en) 2016-07-26 2019-02-12 Pure Storage, Inc. Geometry based, space aware shelf/writegroup evacuation
JP6708929B2 (ja) 2016-08-15 2020-06-10 富士通株式会社 ストレージ制御装置、ストレージシステムおよびストレージ制御プログラム
US10191662B2 (en) 2016-10-04 2019-01-29 Pure Storage, Inc. Dynamic allocation of segments in a flash storage system
US10545861B2 (en) 2016-10-04 2020-01-28 Pure Storage, Inc. Distributed integrated high-speed solid-state non-volatile random-access memory
US10162523B2 (en) 2016-10-04 2018-12-25 Pure Storage, Inc. Migrating data between volumes using virtual copy operation
US10756816B1 (en) 2016-10-04 2020-08-25 Pure Storage, Inc. Optimized fibre channel and non-volatile memory express access
US10481798B2 (en) 2016-10-28 2019-11-19 Pure Storage, Inc. Efficient flash management for multiple controllers
US10185505B1 (en) 2016-10-28 2019-01-22 Pure Storage, Inc. Reading a portion of data to replicate a volume based on sequence numbers
US10359942B2 (en) 2016-10-31 2019-07-23 Pure Storage, Inc. Deduplication aware scalable content placement
US10346062B2 (en) 2016-11-16 2019-07-09 International Business Machines Corporation Point-in-time backups via a storage controller to an object storage cloud
US11550481B2 (en) 2016-12-19 2023-01-10 Pure Storage, Inc. Efficiently writing data in a zoned drive storage system
US10452290B2 (en) 2016-12-19 2019-10-22 Pure Storage, Inc. Block consolidation in a direct-mapped flash storage system
US11093146B2 (en) 2017-01-12 2021-08-17 Pure Storage, Inc. Automatic load rebalancing of a write group
US10528488B1 (en) 2017-03-30 2020-01-07 Pure Storage, Inc. Efficient name coding
US11403019B2 (en) 2017-04-21 2022-08-02 Pure Storage, Inc. Deduplication-aware per-tenant encryption
US10944671B2 (en) 2017-04-27 2021-03-09 Pure Storage, Inc. Efficient data forwarding in a networked device
US10402266B1 (en) 2017-07-31 2019-09-03 Pure Storage, Inc. Redundant array of independent disks in a direct-mapped flash storage system
US10831935B2 (en) 2017-08-31 2020-11-10 Pure Storage, Inc. Encryption management with host-side data reduction
US10776202B1 (en) 2017-09-22 2020-09-15 Pure Storage, Inc. Drive, blade, or data shard decommission via RAID geometry shrinkage
US10789211B1 (en) 2017-10-04 2020-09-29 Pure Storage, Inc. Feature-based deduplication
US10884919B2 (en) 2017-10-31 2021-01-05 Pure Storage, Inc. Memory management in a storage system
US10860475B1 (en) 2017-11-17 2020-12-08 Pure Storage, Inc. Hybrid flash translation layer
US11010233B1 (en) 2018-01-18 2021-05-18 Pure Storage, Inc Hardware-based system monitoring
US10970395B1 (en) 2018-01-18 2021-04-06 Pure Storage, Inc Security threat monitoring for a storage system
US11144638B1 (en) 2018-01-18 2021-10-12 Pure Storage, Inc. Method for storage system detection and alerting on potential malicious action
US10467527B1 (en) 2018-01-31 2019-11-05 Pure Storage, Inc. Method and apparatus for artificial intelligence acceleration
US11036596B1 (en) 2018-02-18 2021-06-15 Pure Storage, Inc. System for delaying acknowledgements on open NAND locations until durability has been confirmed
US11494109B1 (en) 2018-02-22 2022-11-08 Pure Storage, Inc. Erase block trimming for heterogenous flash memory storage devices
US11934322B1 (en) 2018-04-05 2024-03-19 Pure Storage, Inc. Multiple encryption keys on storage drives
US10678433B1 (en) 2018-04-27 2020-06-09 Pure Storage, Inc. Resource-preserving system upgrade
US11385792B2 (en) 2018-04-27 2022-07-12 Pure Storage, Inc. High availability controller pair transitioning
US10678436B1 (en) 2018-05-29 2020-06-09 Pure Storage, Inc. Using a PID controller to opportunistically compress more data during garbage collection
US11003372B2 (en) 2018-05-31 2021-05-11 Portworx, Inc. Protecting volume namespaces from corruption in a distributed container orchestrator
US11436023B2 (en) 2018-05-31 2022-09-06 Pure Storage, Inc. Mechanism for updating host file system and flash translation layer based on underlying NAND technology
US10776046B1 (en) 2018-06-08 2020-09-15 Pure Storage, Inc. Optimized non-uniform memory access
US11281577B1 (en) 2018-06-19 2022-03-22 Pure Storage, Inc. Garbage collection tuning for low drive wear
US11869586B2 (en) 2018-07-11 2024-01-09 Pure Storage, Inc. Increased data protection by recovering data from partially-failed solid-state devices
US11126505B1 (en) * 2018-08-10 2021-09-21 Amazon Technologies, Inc. Past-state backup generator and interface for database systems
US11133076B2 (en) 2018-09-06 2021-09-28 Pure Storage, Inc. Efficient relocation of data between storage devices of a storage system
US11194759B2 (en) 2018-09-06 2021-12-07 Pure Storage, Inc. Optimizing local data relocation operations of a storage device of a storage system
US10846216B2 (en) 2018-10-25 2020-11-24 Pure Storage, Inc. Scalable garbage collection
US11113409B2 (en) 2018-10-26 2021-09-07 Pure Storage, Inc. Efficient rekey in a transparent decrypting storage array
US11194473B1 (en) 2019-01-23 2021-12-07 Pure Storage, Inc. Programming frequently read data to low latency portions of a solid-state storage array
US11588633B1 (en) 2019-03-15 2023-02-21 Pure Storage, Inc. Decommissioning keys in a decryption storage system
US11334254B2 (en) 2019-03-29 2022-05-17 Pure Storage, Inc. Reliability based flash page sizing
US11397674B1 (en) 2019-04-03 2022-07-26 Pure Storage, Inc. Optimizing garbage collection across heterogeneous flash devices
US11775189B2 (en) 2019-04-03 2023-10-03 Pure Storage, Inc. Segment level heterogeneity
US10990480B1 (en) 2019-04-05 2021-04-27 Pure Storage, Inc. Performance of RAID rebuild operations by a storage group controller of a storage system
US11099986B2 (en) 2019-04-12 2021-08-24 Pure Storage, Inc. Efficient transfer of memory contents
US11487665B2 (en) 2019-06-05 2022-11-01 Pure Storage, Inc. Tiered caching of data in a storage system
US11281394B2 (en) 2019-06-24 2022-03-22 Pure Storage, Inc. Replication across partitioning schemes in a distributed storage system
US10929046B2 (en) 2019-07-09 2021-02-23 Pure Storage, Inc. Identifying and relocating hot data to a cache determined with read velocity based on a threshold stored at a storage device
US11422751B2 (en) 2019-07-18 2022-08-23 Pure Storage, Inc. Creating a virtual storage system
US11086713B1 (en) 2019-07-23 2021-08-10 Pure Storage, Inc. Optimized end-to-end integrity storage system
US11963321B2 (en) 2019-09-11 2024-04-16 Pure Storage, Inc. Low profile latching mechanism
US11403043B2 (en) 2019-10-15 2022-08-02 Pure Storage, Inc. Efficient data compression by grouping similar data within a data segment
US11687418B2 (en) 2019-11-22 2023-06-27 Pure Storage, Inc. Automatic generation of recovery plans specific to individual storage elements
US11615185B2 (en) 2019-11-22 2023-03-28 Pure Storage, Inc. Multi-layer security threat detection for a storage system
US11500788B2 (en) 2019-11-22 2022-11-15 Pure Storage, Inc. Logical address based authorization of operations with respect to a storage system
US11755751B2 (en) 2019-11-22 2023-09-12 Pure Storage, Inc. Modify access restrictions in response to a possible attack against data stored by a storage system
US11645162B2 (en) 2019-11-22 2023-05-09 Pure Storage, Inc. Recovery point determination for data restoration in a storage system
US11675898B2 (en) 2019-11-22 2023-06-13 Pure Storage, Inc. Recovery dataset management for security threat monitoring
US11520907B1 (en) 2019-11-22 2022-12-06 Pure Storage, Inc. Storage system snapshot retention based on encrypted data
US11657155B2 (en) 2019-11-22 2023-05-23 Pure Storage, Inc Snapshot delta metric based determination of a possible ransomware attack against data maintained by a storage system
US11625481B2 (en) 2019-11-22 2023-04-11 Pure Storage, Inc. Selective throttling of operations potentially related to a security threat to a storage system
US11720692B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Hardware token based management of recovery datasets for a storage system
US11341236B2 (en) 2019-11-22 2022-05-24 Pure Storage, Inc. Traffic-based detection of a security threat to a storage system
US11941116B2 (en) 2019-11-22 2024-03-26 Pure Storage, Inc. Ransomware-based data protection parameter modification
US11720714B2 (en) 2019-11-22 2023-08-08 Pure Storage, Inc. Inter-I/O relationship based detection of a security threat to a storage system
US11651075B2 (en) 2019-11-22 2023-05-16 Pure Storage, Inc. Extensible attack monitoring by a storage system
US11640371B2 (en) * 2020-03-12 2023-05-02 Western Digital Technologies, Inc. Snapshot management in partitioned storage

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6366986B1 (en) * 1998-06-30 2002-04-02 Emc Corporation Method and apparatus for differential backup in a computer storage system
US7107395B1 (en) * 1998-12-31 2006-09-12 Emc Corporation Apparatus and methods for operating a computer storage system
US6385706B1 (en) 1998-12-31 2002-05-07 Emx Corporation Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations
EP1247215A4 (en) 2000-01-10 2009-04-29 Iron Mountain Inc LAYER ARCHITECTURE AS AN INTERFACE BETWEEN APPLIANCES AND APPLICATIONS
US6651075B1 (en) * 2000-02-16 2003-11-18 Microsoft Corporation Support for multiple temporal snapshots of same volume
JP4108944B2 (ja) 2001-06-14 2008-06-25 株式会社東芝 スナップショット機能を有するディスク記憶装置、スナップショット差分情報管理方法及びスナップショット管理プログラム
US20030220948A1 (en) * 2002-01-22 2003-11-27 Columbia Data Products, Inc. Managing snapshot/backup collections in finite data storage
US6748504B2 (en) * 2002-02-15 2004-06-08 International Business Machines Corporation Deferred copy-on-write of a snapshot
JP2003280825A (ja) 2002-03-22 2003-10-02 Fujitsu Ltd ストレージシステム
JP4170056B2 (ja) 2002-03-29 2008-10-22 株式会社日立製作所 複製ボリューム間でのバックアップ・リストア管理方法およびこの方法に用いる記憶制御装置
US7664771B2 (en) * 2002-10-16 2010-02-16 Microsoft Corporation Optimizing defragmentation operations in a differential snapshotter
US7284016B2 (en) * 2002-12-03 2007-10-16 Emc Corporation Client-server protocol for directory access of snapshot file systems in a storage system
US7231544B2 (en) * 2003-02-27 2007-06-12 Hewlett-Packard Development Company, L.P. Restoring data from point-in-time representations of the data

Also Published As

Publication number Publication date
JP2005284609A (ja) 2005-10-13
US20050216535A1 (en) 2005-09-29
US7287045B2 (en) 2007-10-23

Similar Documents

Publication Publication Date Title
JP4456909B2 (ja) バックアップ方法、ストレージシステム及びそのプログラム
US7024527B1 (en) Data restore mechanism
JP4776342B2 (ja) ストレージシステムでオブジェクトレベルのスナップショットを生成するシステムと方法
US6341341B1 (en) System and method for disk control with snapshot feature including read-write snapshot half
US7752492B1 (en) Responding to a failure of a storage system
US6061770A (en) System and method for real-time data backup using snapshot copying with selective compaction of backup data
JP4741371B2 (ja) システム、サーバ装置及びスナップショットの形式変換方法
JP4398463B2 (ja) インクリメンタル仮想コピーのための方法、システム、及びプログラム
US7890720B2 (en) Snapshot system
JP5706966B2 (ja) 情報処理システム、及び、それを用いたファイル復元方法
US7870353B2 (en) Copying storage units and related metadata to storage
US7885930B2 (en) Storage system, NAS server and snapshot acquisition method
US7386598B2 (en) Computer system with virtualization function
US8204858B2 (en) Snapshot reset method and apparatus
JP3641183B2 (ja) Raidデータ記憶システムにおける瞬時バックアップを提供する方法及びシステム
US6938136B2 (en) Method, system, and program for performing an input/output operation with respect to a logical storage device
US8205049B1 (en) Transmitting file system access requests to multiple file systems
US20040078641A1 (en) Operating system-independent file restore from disk image
JP2005031716A (ja) データバックアップの方法及び装置
JP2008033912A (ja) Nas向けのcdpの方法および装置
US8010543B1 (en) Protecting a file system on an object addressable storage system
JP6604115B2 (ja) ストレージ装置およびストレージ制御プログラム
JP4278452B2 (ja) 計算機システム
JP2007272874A (ja) クラスタ化ファイルシステムにおいてデータのバックアップを取る方法
US9075755B1 (en) Optimizing data less writes for restore operations

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070219

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20091117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100112

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

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

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

Free format text: PAYMENT UNTIL: 20130212

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees