(57)【要約】【課題】ストレージ装置において、バックアップに要する処理時間を短縮すること。【解決手段】第１の記憶領域と、第２の記憶領域と、書込要求に基づき前記第１の領域にデータを書き込み、前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する制御部と、を備えるストレージ装置。【選択図】図２
2014059760.tif 000002
【特許請求の範囲】
【請求項１】
第１の記憶領域と、
第２の記憶領域と、
書込要求に基づき前記第１の領域にデータを書き込み、前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する制御部と、
を備えるストレージ装置。
【請求項２】
請求項１記載のストレージ装置であって、
前記制御部は、前記第２の記憶領域に書き込まれたデータを出力したときに、該出力したデータを前記第２の記憶領域から消去する、
ストレージ装置。
【請求項３】
請求項１又は２記載のストレージ装置であって、
前記制御部は、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する際に、前記バックアップ装置における格納位置を特定可能な情報を第３の記憶領域に記憶させると共に前記バックアップ装置に出力するデータに前記第３の記憶領域に記憶された情報と照合可能な情報を付与し、
前記バックアップ装置からのリストア時に、前記第３の記憶領域に記憶された情報を用いて前記バックアップ装置におけるリストア対照データの格納位置を認識する、
ストレージ装置。
【請求項４】
ストレージ装置を制御するコンピュータが、
書込要求に基づき、第１の記憶領域にデータを書き込み、
前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する、
ストレージ装置の制御方法。
【請求項５】
ストレージ装置を制御するコンピュータに、
書込要求に基づき、第１の記憶領域にデータを書き込ませ、
前記第１の記憶領域にデータを書き込ませる際に、該書き込ませるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込ませ、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力させる、
ストレージ装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラムに関する。
【背景技術】
【０００２】
バックアップ機能を有するストレージ装置が知られている。これに関連し、複数のファイルサーバから移されたデータファイルを蓄積する第２次蓄積手段と、複数のファイルサーバと第２次蓄積手段との間のデータファイルの転送を自動的に管理する手段とを有するデータ蓄積管理システムが知られている。このデータ蓄積管理システムでは、データファイルが蓄積サーバから保存のために移されるとき、データファイルは転送ユニットと呼ばれる大きなデータ・ブロックに固められる。この転送ユニットは、バックアップ駆動装置を介して高密度磁気テープ媒体などの別のバックアップ媒体にバックアップされる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表平０９−５１０８０６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、ストレージ装置において、運用開始直後の状態に対して書き込みをするときにはシーケンシャルな書き込みが行われるが、書き込みや消去の作業が繰り返されるうちに、領域が分断化されてランダムアクセスが主となる。
【０００５】
また、ストレージ装置におけるメインの記憶装置としては、ＨＤＤ（Hard  Disk  Drive）等が用いられる。特にＨＤＤ等の記憶装置を用いたストレージ装置においてバックアップを行おうとすると、記憶装置でのポジショニング、及びＬＴＯ（Linear  Tape  Open）等のバックアップ装置でのポジショニングを行う必要が生じ、処理速度が低下する場合がある。特に、数十〜数百ＫＢの比較的小さなサイズのデータを扱う場合、Ｉ／Ｏ要求が発生するとディスクに対する頻繁なメタ情報へのアクセスおよび小さいＩ／Ｏ長でのデータの読み出しが発生し、読み出しのスループット性能が低下する。このような環境で、ＬＴＯ等のシーケンシャル・アクセス・デバイスにファイルをバックアップしようとしても、バックアップデバイズの性能を引き出すことができない。この結果、ストレージ装置がＲＡＩＤ（Redundant  Arrays  of  Inexpensive  Disks）機構やＬＴＯ等を備え、それぞれが十分な性能を備えていても、全体として十分な性能を発揮することができない場合がある。
【０００６】
この点、上記したバックアップ駆動装置では、ディレクトリ構造を保持しながらデータファイルの各階層間での再配置を実施しているため、ポジショニングに起因する処理速度の低下を十分に抑制することができない。
【０００７】
一つの側面では、ストレージ装置において、バックアップに要する処理時間を短縮することを目的とする。
【課題を解決するための手段】
【０００８】
一態様のストレージ装置は、第１の記憶領域と、第２の記憶領域と、書込要求に基づき前記第１の領域にデータを書き込み、前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する制御部と、を備える
【発明の効果】
【０００９】
一態様によれば、ストレージ装置において、バックアップに要する処理時間を短縮するができる。
【図面の簡単な説明】
【００１０】
【図１】ストレージ装置１０を含むストレージシステム１の構成例である。
【図２】ストレージ装置１０の機能及び処理内容を概念的に示す図である。
【図３】図２における（１）〜（１０）の処理を連続して行う場合に、ストレージシステム１により実行される処理の流れを示すシーケンス図の一例である。
【図４】ホスト５０が所望のタイミングでバックアップ要求をストレージ装置１０に送信する場合の、ストレージ装置１０の処理内容を概念的に示す図である。
【図５】バックアップ領域１４Ｂに格納されるデータ構造の一例である。
【図６】ストレージ装置１０におけるファイルシステム１２Ｂの階層構造の一例である。
【図７】ストレージ装置１０におけるwrite処理フローの概略を例示した図である。
【図８】ストレージ装置Ｘにおいて行われ得る処理の流れを示すシーケンス図である。
【図９】バックアップ管理テーブル１４Ｃのデータ構造例である。
【図１０】ヘッダ情報の一例である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための形態について、添付図面を参照しながら実施例を挙げて説明する。
【実施例】
【００１２】
以下、図面を参照し、ストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラムの実施例について説明する。
【００１３】
［構成］
図１は、ストレージ装置１０を含むストレージシステム１の構成例である。ストレージ装置１０は、例えばＮＡＳ（Network  Attached  Storage）装置であり、ホスト５０を介してバックアップ装置６０に接続される。ＮＡＳ装置とは、ネットワークに直接接続して使用するファイルサーバ専用機であり、例えばＴＣＰ／ＩＰ（Transmission  Control  Protocol／Internet  Protocol）ネットワークに直接接続して使用することができる。バックアップ装置６０は、例えばテープ装置であるが、ＨＤＤその他の記憶装置であってもよい。
【００１４】
ストレージ装置１０は、例えば、ＣＰＵ（Central  Processing  Unit）１２と、ディスク装置１４と、ＲＡＭ（Random  Access  Memory）１６と、プログラムメモリ１８と、ＮＩＣ（Network  Interface  Card）２０とを備える。
【００１５】
ＣＰＵ１２は、プログラムメモリ１８に格納されたプログラムを実行する。プログラムメモリ１８は、例えばディスク装置１４とは別体のディスク装置である。プログラムメモリ１８は、ディスク装置１４の専用領域であってもよいし、ＲＯＭ（Read  Only  Memory）、ＥＥＰＲＯＭ（Electrically  Erasable  and  Programmable  Read  Only  Memory）、ＳＳＤ（Solid  State  Drive）等であってもよい。
【００１６】
ディスク装置１４は、例えばＨＤＤ、ＤＶＤ（Digital  Versatile  Disc）、Ｂｌｕ−ｒａｙ（登録商標）ディスク等である。ディスク装置１４には、ホスト５０からの書込要求に応じてデータが書き込まれるメイン記憶領域１４Ａと、バックアップ装置６０へのデータ転送の際に中間領域として用いられるバックアップ領域１４Ｂが設定されている。バックアップ領域１４Ｂは、ディスク装置１４上ではなくＲＡＭ１６上に設定されてもよく、ＳＳＤ、ＥＥＰＲＯＭ等、他の記憶装置上に設定されてもよい。
【００１７】
ＲＡＭ１６は、プログラムメモリ１８に格納されたプログラムが展開されたり、ディスク装置１４に対してキャッシュとして用いられたりする。
【００１８】
ＮＩＣ２０は、ホスト５０との間の通信を行う。
【００１９】
［処理内容］
図２は、ストレージ装置１０の機能及び処理内容を概念的に示す図である。ホスト５０は、ＬＩＮＵＸ（登録商標）系クライアント用のＮＦＳＤ（Network  File  System  Daemon）やＷｉｎｄｏｗｓ（登録商標）系クライアント用のＣＩＦＳを介してメイン記憶領域１４Ａにアクセスする。ＮＦＳＤやＣＩＦＳは、ＬＩＮＵＸやＷｉｎｄｏｗｓにおけるファイルアクセス法に基づくプロトコル解析・ファイルアクセス用のソフトウェアである。図２では、ＮＦＳＤやＣＩＦＳがＣＰＵ１２により実行されることにより実現される機能部を、ＮＦＳＤ／ＣＩＦＳ部１２Ａと表記した。
【００２０】
ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ホスト５０から受信した書込要求に基づき、メイン記憶領域１４Ａにデータを書き込む。また、ホスト５０から受信した読出要求に基づき、メイン記憶領域１４Ａからデータを読み出しホスト５０に出力する。
【００２１】
また、ＮＦＳＤ／ＣＩＦＳ部１２Ａは、バックアップ領域１４Ｂにデータを書き込む際に、データをバックアップ領域１４Ｂの物理アドレスの先頭から順に書き込んで行く。そして、ホスト５０からバックアップ要求があったときに、バックアップ領域１４Ｂに書き込まれたデータを物理アドレスの先頭からシーケンシャルに読み出し、ホスト５０を介してバックアップ装置６０に出力する。従って、バックアップ領域１４ＢはＦＩＦＯ（First  In,  First  Out）で制御される。
【００２２】
図２における（）内の数字は、ストレージシステム１における各段階の処理を示すものである。また、図３は、図２における（１）〜（１０）の処理を連続して行う場合に、ストレージシステム１により実行される処理の流れを示すシーケンス図の一例である。以下、各段階の処理について説明する。
【００２３】
（１）まず、ホスト５０が、ストレージ装置１０に対してバックアップ対象となるファイルの書込要求を送信する。ここでは、ファイル＃１、＃１１、＃１３について書込要求があったものとする。
【００２４】
（２）ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ホスト５０からの書込要求を受付け、ファイルシステム１２Ｂを制御することにより、メイン記憶領域１４Ａにおける指定されたファイルの位置（＃１）までディスクのポジショニングを行い、該当ファイルの書き込みを行う。具体的には、ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ファイル＃１を格納するディスク装置１４に対するwriteコマンドをファイルシステム１２Ｂに発行する。そして、ファイルシステム１２Ｂによるwriteコマンドの処理の中で、ディスク装置１４のヘッドのポジショニング動作と実際のデータ書き込みが行われる。ファイルシステム１２Ｂの詳細については後述する。
【００２５】
（３）ホスト５０からの要求による１つのファイルの書き込みが完了すると（或いは書込に並行して）、ＮＦＳＤ／ＣＩＦＳ部１２Ａは、バックアップ領域１４Ｂの物理アドレスの先頭から順に、同じファイルを書き込む。この書込には、ファイルシステム１２Ｂが用意するコマンドが使用される。
【００２６】
（４）ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ホスト５０から書込要求があった各ファイル（＃１、＃１１、＃１３）について、上記（２）、（３）の処理を繰り返し行う。図２においてメイン記憶領域１４Ａ内の斜線で塗られた領域は、ホスト５０からの書込要求に応じて更新された領域を示している。このように、メイン記憶領域１４Ａでは、ファイルの書き込みが繰り返し行われることで、書込要求に応じて更新される領域は離散することが想定される。これに対し、バックアップ領域１４Ｂでは、書込要求に応じて更新されたメイン記憶領域１４Ａのファイルが、メイン記憶領域１４Ａにおける格納領域に拘わらず、バックアップ領域１４Ｂの物理アドレスの先頭から書込順に格納される。図２では、バックアップ領域１４Ｂの下端部が物理アドレスの先頭に相当する。
【００２７】
（５）その後、ホスト５０がストレージ装置１０に対してバックアップ要求を送信する。
【００２８】
（６）また、ホスト５０は、バックアップ装置６０に対してバックアップ要求を送信する。バックアップ装置６０は、ファイル＃１を格納する位置までのポジショニングを実施し、該当ファイルの書込準備を行う。
【００２９】
（７）ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ホスト５０からのバックアップ要求を受付け、バックアップ領域１４Ｂに対して読み出し指示を出力する。
【００３０】
（８）そして、ＮＦＳＤ／ＣＩＦＳ部１２Ａは、ＮＩＣ２０を制御してファイル＃１をホスト５０に送信する。
【００３１】
（９）ホスト５０は、バックアップするファイル＃１を受信すると、バックアップ装置６０にファイル＃１を転送して書込を要求する。
【００３２】
（１０）ホスト５０は、バックアップ領域１４Ｂの終端まで上記（７）〜（９）の処理を繰り返し行い、バックアップ処理を完了する。ストレージ装置１０は、１回のバックアップ処理が完了すると、バックアップ領域１４Ｂの内容を消去し、次のメイン記憶領域１４Ａへの書き込みが発生すると、バックアップ領域１４Ｂの物理アドレスの先頭からファイルを書き込む。
【００３３】
ここで、ホスト５０は、必ずしも、書込要求とバックアップ要求を一連の処理として行う必要は無く、所望のタイミングでバックアップ要求をストレージ装置１０に送信してもよい。例えば、ホスト５０は、バックアップ領域１４Ｂの空き容量が閾値（例えば領域全体の数十［％］程度）を下回ったときに、バックアップ要求をストレージ装置１０に送信する。この場合、ストレージ装置１０が、バックアップ領域１４Ｂの空き容量を定期的にホスト５０に送信してもよいし、ホスト５０側でバックアップ領域１４Ｂに蓄積されたファイルの量をカウントしてもよい。なお、係る制御はホスト５０に対するユーザの入力操作に応じて行われてもよいし、ストレージ装置１０が自発的に行ってもよい。図４は、ホスト５０が所望のタイミングでバックアップ要求をストレージ装置１０に送信する場合の、ストレージ装置１０の処理内容を概念的に示す図である。図４の例では、まずファイル＃１、＃１１、＃１３に対する書込要求がなされ、次にファイル＃３、＃９に対する書込要求がなされ、次にファイル＃１１を＃１１ｂに更新する書込要求がなされた。この場合、バックアップ領域１４Ｂには、ファイル＃１、＃１１、＃１３、＃３、＃９、＃１１ｂの順にファイルが書き込まれる。そして、ファイル＃１１ｂがバックアップ領域１４Ｂに書き込まれた時点でバックアップ領域１４Ｂの空き容量が閾値を下回ると、ホスト５０がバックアップ要求をストレージ装置１０に送信する。ストレージ装置１０は、ファイル＃１、＃１１、＃１３、＃３、＃９、＃１１ｂの順にファイルを読み出してホスト５０に送信し、バックアップ装置６０に当該ファイルが転送される。
【００３４】
図５は、バックアップ領域１４Ｂに格納されるデータ構造の一例である。バックアップ領域１４Ｂに格納されるデータは、例えばＴＡＲ（Tape  Archival  and  Retrieval  format）に従う。バックアップ領域１４Ｂには、例えば、一定のブロックサイズの整数倍の領域に、１つのファイルが格納される。１つのファイルが格納される領域は、ヘッダ、ファイル本体、そして残余領域（Zero  padding）を含む。ヘッダは、例えばブロックサイズに丁度収まるサイズのデータとして生成される。そして、残余領域は、ブロックサイズから（ファイル本体のサイズをブロックサイズで除算した余り）を差し引いたサイズとなる。ブロックサイズは、例えばバックアップ装置６０へのwrite長と一致させる。ブロックサイズは、バックアップ装置６０のシーケンシャルアクセス性能を十分引き出せるサイズとする。また、バックアップ領域１４Ｂの全体の長さも、形式の制約やバックアップ媒体の制約により、チューニング可能とする。
【００３５】
図６は、ストレージ装置１０におけるファイルシステム１２Ｂの階層構造の一例である。ファイルシステム１２Ｂは、Ｌｉｎｕｘを基本として構成される場合、ｖｆｓ１２Ｂａ、ｅｘｔ２、ｅｘｔ３、ｅｆｓ等の個々のファイルシステム１２Ｂｂ、ｎｆｓ１２Ｂｃ、ｒｐｃ（Remote  Procedure  Call）１２Ｂｄ、等のソフトウェアを含む。ｖｆｓ１２Ｂａは、種々のファイルシステムの差異を吸収する仮想ファイルシステムである。ファイルシステム１２Ｂｂは、ＲＡＭ１６上のキャッシュ１２Ｂｅにアクセスし、更にデバイスドライバ１２Ｂｆを介してディスク装置１４にアクセスする。キャッシュ１２Ｂｅは、ＯＳで備えるページキャッシュ及びバッファキャッシュを含む。デバイスドライバ１２Ｂｆは、ディスク装置１４を制御するためのソフトウェアである。
【００３６】
また、ｖｆｓ１２Ｂａは、ｎｆｓ１２Ｂｃ、共有ネットワーク上の異なるマシン間での手続きを規定するｒｐｃ１２Ｂｄ、ネットワーク層であるｔｃｐ／ｉｐ１２Ｂｇ、及びＮＩＣドライバ１２Ｂｈを介してホスト５０と通信する。ｎｆｓ１２Ｂｃは、ファイルシステム１２Ｂｂに対応する階層である。
【００３７】
このような階層構造を有するファイルシステム１２Ｂでは、ホスト５０からディスク装置１４に対するＩ／Ｏ要求（書込要求及び読出要求）は、以下のルートで制御される。
・ＮＩＣドライバ１２Ｂｈ→ｔｃｐ／ｉｐ１２Ｂｇ→ｒｐｃ１２Ｂｄ→ｎｆｓ１２Ｂｃ→ｖｆｓ１２Ｂａ→ファイルシステム１２Ｂｂ→キャッシュ１２Ｂｅ→デバイスドライバ１２Ｂｆ→ディスク装置１４。
【００３８】
図７は、ストレージ装置１０におけるwrite処理フローの概略を例示した図である。メイン記憶領域１４Ａへの書き込みは、例えば以下の手順で実行される。
【００３９】
（ａ）generic_file_write（１）（図では丸内数字で表した）
generic_file_write（１）は、ファイルシステム上のファイルにwriteするための汎用procedureであり、ファイルの書き込みの際にｖｆｓ１２Ｂａから呼び出される。generic_file_writeが実行されると、ｖｆｓ１２Ｂａから渡されたwrite  dataが指定ファイルのページキャッシュに書き込まれ、Dirty状態にされる。generic_file_writeの実行過程では、ページキャッシュへの書き込みのみが行われ、ディスク装置１４への書き込みは遅延して行われる。
【００４０】
（ｂ）block_prepare_writ（１）
block_prepare_write（１）は、ファイルシステム固有のprepare_write処理を行う。block_prepare_writeは、書き込み対象のページキャッシュに対してbufferの割り当て、ディスクブロックの割り当てを行う。
【００４１】
（ｃ）generic_commit_write（１）
generic_commit_write（１）は、writeした領域に対応するバッファキャッシュをDirty状態にし、また対応するページキャッシュもDirty状態にして、ページキャッシュ上の更新されたデータが後でディスクに書き込まれるようにする。
【００４２】
（ｄ）bdflush（１）
bdflush（１）は、キャッシュ内のdirty  dataをディスク装置１４に書き出す。これによって、ファイルが実際にメイン記憶領域１４Ａに書き込まれる。
【００４３】
ここで、ページキャッシュ上には、書き込み対象のデータが残されている。バックアップ領域１４ｂへの書き込みは、例えば以下の手順で実行される。
【００４４】
（ａ）block_prepare_write（２）
block_prepare_write（２）は、ページにキャッシュされているデータを一時的にバッファ形式（ディスク書き込みに向けたデータ形式）に変換する。また、block_prepare_write（２）は、バックアップ領域１４Ｂ上の書き込み開始アドレスを指定する。
【００４５】
（ｂ）generic_commit_write（２）
generic_commit_write（２）は、generic_commit_write（１）と同様の処理を行う。
【００４６】
（ｃ）bdflush（２）
bdflush（２）は、キャッシュ内のdirty  dataをディスク装置１４に書き出す。これによって、ファイルが実際にバックアップ領域１４Ｂに書き込まれる。
【００４７】
［他のストレージ装置との比較］
ここで、本実施例の如きバックアップ領域１４Ｂを備えない、他のストレージ装置（ストレージ装置Ｘと称する）との比較について説明する。図８は、ストレージ装置Ｘにおいて行われ得る処理の流れを示すシーケンス図である。図８は、ストレージ装置Ｘに対してホストからファイル＃１、＃１１、＃１３のバックアップ要求がなされた場合の処理を示している。この場合、ホストは、例えば以下の順に、ストレージ装置Ｘ及びバックアップ装置に要求を送信する。
（ａ）ストレージ装置Ｘにファイル＃１の読み出し要求→バックアップ装置にファイル＃１の書込要求
（ｂ）ストレージ装置Ｘにファイル＃１１の読み出し要求→バックアップ装置にファイル＃１１の書込要求
（ｃ）ストレージ装置Ｘにファイル＃１３の読み出し要求→バックアップ装置にファイル＃１３の書込要求。
【００４８】
係る処理を行う中で、ディスク装置におけるポジショニングと、バックアップ装置におけるポジショニングが３回ずつ発生してしまう。前述のように、ディスク装置においては、ファイルの書き込みが繰り返し行われることで、書込要求に応じて更新される領域は離散することが想定されるからである。
【００４９】
これに対し、本実施例のストレージ装置１０では、図３に示したように、バックアップ要求時のポジショニングはディスク装置１４とバックアップ装置６０で、それぞれ１回ずつで済む。この結果、ストレージ装置Ｘに比して、バックアップに要する処理時間を短縮することができる。なお、図３に示すように、ディスク装置１４へのファイルの書き込み時には、各ファイルに対してポジショニングが発生するが、この点はストレージ装置Ｘも同様である。
【００５０】
［その他］
本実施例のストレージ装置１０は、上記のようにバックアップに要する処理速度を短縮することができるが、メイン記憶領域１４Ａとバックアップ装置６０におけるファイル配置が異なるものとなる。このため、バックアップ装置６０に時系列で格納されたデータに対して、必要な時点の必要なファイルをリストアしたい場合、バックアップ装置６０の媒体（以下、単にテープとする）の最初から該当ファイルをサーチし、読み出す必要性が生じる。従って、対象ファイルの位置が事前に判明していない場合、ファイルの探索に比較的長い時間を要する可能性がある。
【００５１】
これに対し、以下のような機能を備えることにより、テープ内のファイル探索を効率的に行うことができる。
【００５２】
ストレージ装置１０は、ファイルをテープに格納する時、テープの先頭から何個目の格納位置に格納しているのかを保存するバックアップ管理テーブル１４Ｃを備える。図９は、バックアップ管理テーブル１４Ｃのデータ構造例である。バックアップ管理テーブル１４Ｃは、例えば、ボリューム名、テープ内の格納位置、ファイル名、ファイル長、作成日時、最終更新日時等を含む。バックアップ管理テーブル１４Ｃでは、同一ファイルが更新された場合には、リストの末尾に追記される。
【００５３】
一方、テープにファイルを格納する際には、各ファイルの先頭にヘッダ情報を付与する。ヘッダ情報は、例えば、ファイル名、ファイル長、作成日時、最終更新日時を含む。図１０は、ヘッダ情報の一例である。
【００５４】
そして、リストアを行う際には、リストア対象ファイルのヘッダ情報を検索条件としてバックアップ管理テーブル１４Ｃを検索し、一致したテーブル情報からテープ内の対象ファイルの位置を決定し、テープからのリストアを実施する。これによって、テープからのリストア時にテープ内のファイル本体の情報を読み出す必要性がなくなり、リストア対象ファイルの格納位置を早期に検索しテープをその位置までポジショニングするだけで読み出しが可能となる。従って、必要なファイルを高速に読み出すことができる。
【００５５】
また、ストレージ装置１０の異常時においては、例えば以下のような処理が行われる。
【００５６】
（１）バックアップ領域１４Ｂへの書き込み動作時に何等かの原因により処理が中断された場合には、既にメイン記憶領域１４Ａへの書き込みが完了しているオリジナルデータを用いて再書き込み処理を実施する。特に停電に対しては、装置内にバッテリ等を保持し、データ書き込み時間を保障するような対策を講じることが望ましい。
【００５７】
（２）バックアップ領域１４Ｂ自体の異常時には、バックアップ領域１４Ｂ自体の複製をミラーリング等により作成して保持することにより、回避することができる。
【００５８】
（３）バックアップ領域１４Ｂからバックアップ装置６０へのファイル送信時に、バックアップ装置６０側で何等かの異常を検出した場合、一般的なテープバックアップの仕組みと同様に、異常検出時のファイルをバックアップ装置６０側に再送する。
【００５９】
（４）バックアップ装置６０からバックアップデータをリストアする時に、バックアップ装置６０側で何等かの異常を検出した場合、一般的なテープからのリストア処理と同様に、異常検出時のファイルをバックアップ装置６０から再読出しする。
【００６０】
［まとめ］
以上説明した一実施例のストレージ装置、ストレージ装置の制御方法、及びストレージ装置の制御プログラムによれば、バックアップに要する処理時間を短縮することができる。
【００６１】
なお、メイン記憶領域１４Ａは、例えば「第１の記憶領域」の一例であり、バックアップ領域１４Ｂは、例えば「第２の記憶領域」の一例であり、バックアップ管理テーブル１４Ｃは、例えば「第３の記憶領域」の一例である。また、ＮＦＳＤ／ＣＩＦＳ部１２Ａは、例えば「制御部」の一例である。
【００６２】
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【００６３】
以上の実施例を含む実施形態に関し、さらに以下の項を開示する。
（付記１）
第１の記憶領域と、
第２の記憶領域と、
書込要求に基づき前記第１の領域にデータを書き込み、前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する制御部と、
を備えるストレージ装置。
（付記２）
付記１記載のストレージ装置であって、
前記制御部は、前記第２の記憶領域に書き込まれたデータを出力したときに、該出力したデータを前記第２の記憶領域から消去する、
ストレージ装置。
（付記３）
付記１又は２記載のストレージ装置であって、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する際に、前記バックアップ装置における格納位置を特定可能な情報を第３の記憶領域に記憶させると共に前記バックアップ装置に出力するデータに前記第３の記憶領域に記憶された情報と照合可能な情報を付与し、
前記バックアップ装置からのリストア時に、前記第３の記憶領域に記憶された情報を用いて前記バックアップ装置におけるリストア対照データの格納位置を認識する、
ストレージ装置。
（付記４）
ストレージ装置を制御するコンピュータが、
書込要求に基づき、第１の記憶領域にデータを書き込み、
前記第１の記憶領域にデータを書き込む際に、該書き込まれるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込み、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する、
ストレージ装置の制御方法。
（付記５）
付記４記載のストレージ装置の制御方法であって、
前記コンピュータが、前記第２の記憶領域に書き込まれたデータを出力したときに、該出力したデータを前記第２の記憶領域から消去する、
ストレージ装置の制御方法。
（付記６）
付記４又は５記載のストレージ装置の制御方法であって、
前記コンピュータが、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力する際に、前記バックアップ装置における格納位置を特定可能な情報を第３の記憶領域に記憶させると共に前記バックアップ装置に出力するデータに前記第３の記憶領域に記憶された情報と照合可能な情報を付与し、前記バックアップ装置からのリストア時に、前記第３の記憶領域に記憶された情報を用いて前記バックアップ装置におけるリストア対照データの格納位置を認識する、
ストレージ装置の制御方法。
（付記７）
ストレージ装置を制御するコンピュータに、
書込要求に基づき、第１の記憶領域にデータを書き込ませ、
前記第１の記憶領域にデータを書き込ませる際に、該書き込ませるデータを前記第２の記憶領域における物理アドレスの先頭から順に書き込ませ、
前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力させる、
ストレージ装置の制御プログラム。
（付記８）
付記７記載のストレージ装置の制御プログラムであって、
前記コンピュータに、前記第２の記憶領域に書き込まれたデータを出力したときに、該出力したデータを前記第２の記憶領域から消去させる、
ストレージ装置の制御プログラム。
（付記９）
付記７又は８記載のストレージ装置の制御プログラムであって、
前記コンピュータに、前記第２の記憶領域に書き込まれたデータを前記物理アドレスの先頭から順次読み出してバックアップ装置に出力させる際に、前記バックアップ装置における格納位置を特定可能な情報を第３の記憶領域に記憶させると共に前記バックアップ装置に出力するデータに前記第３の記憶領域に記憶された情報と照合可能な情報を付与させ、前記バックアップ装置からのリストア時に、前記第３の記憶領域に記憶された情報を用いて前記バックアップ装置におけるリストア対照データの格納位置を認識させる、
ストレージ装置の制御プログラム。
（付記１０）
付記１ないし３のいずれか１項記載のストレージ装置であって、
前記第１の記憶領域は、ディスク装置上の記憶領域である、
ストレージ装置。
（付記１１）
付記１ないし３のいずれか１項記載のストレージ装置であって、
前記第１の記憶領域は、ディスク装置に対するキャッシュ上の記憶領域である、
ストレージ装置。
【符号の説明】
【００６４】
１      ストレージシステム
１０    ストレージ装置
１２    ＣＰＵ
１２Ａ  ＮＦＳＤ／ＣＩＦＳ部
１２Ｂ  ファイルシステム１２Ｂ
１４    ディスク装置
１４Ａ  メイン記憶領域
１４Ｂ  バックアップ領域
１４Ｃ  バックアップ管理テーブル
１６    ＲＡＭ
１８    プログラムメモリ
２０    ＮＩＣ
５０    ホスト
６０    バックアップ装置
【図１】
2014059760.tif 000003
【図２】
2014059760.tif 000004
【図３】
2014059760.tif 000005
【図４】
2014059760.tif 000006
【図５】
2014059760.tif 000007
【図６】
2014059760.tif 000008
【図７】
2014059760.tif 000009
【図８】
2014059760.tif 000010
【図９】
2014059760.tif 000011
【図１０】
2014059760.tif 000012