説明

ファイルサーバ及びクライアント端末及び検索インデックス生成装置及び連続スナップショット管理方法及びバックアップ方法及び検索インデックス構築方法及びそれらのプログラム

【課題】 スナップショットが連続的に生成され、削除される状況において、直近の誤操作によって喪失したデータは保全し、一定時間経った過去のスナップショットについては時間経過に応じて残すようなスナップショットを自動かつ効率的に保守する。
【解決手段】 本発明は、ファイルシステムからスナップショットを取得し、該スナップショットの生成時刻の情報に基づきスナップショットをグループ分けし、現在時刻より定められた時間遡った過去の時点より後に生成されたスナップショットは全て該ファイルシステムに保存し、過去の時点より以前のスナップショットについては、スナップショットの生成時刻の間隔が、グループ毎に定められた時間以上となるよう、ファイルシステムのテーブルから段階的にスナップショットを削除する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ファイルサーバ及びクライアント端末及び検索インデックス生成装置及び連続スナップショット管理方法及びバックアップ方法及び検索インデックス生成方法及びそれらのプログラムに係り、特に、連続的なスナップショットを作成するためのファイルサーバ、連続スナップショット管理方法及びプログラムと、連続スナップショットのバックアップを行うクライアント装置及びバックアップ方法及びプログラムと、インデックス型検索に用いるインデックスを構築するための検索インデックス生成装置及び検索インデックス構築方法及びプログラムに関する。
【背景技術】
【0002】
ファイルサーバは、自身が有する記憶装置を、ネットワーク上の他のコンピュータと共有して、他のコンピュータから利用できるようにする機能をもったコンピュータまたは装置である。記憶装置としてはハードディスクやフラッシュメモリなどの不揮発でランダムアクセスが可能なデバイスが用いられる。ファイルサーバは、ファイルシステムという基本ソフト(OS)の機能を通じて、データをファイルという資源として抽象化して扱い、その生成・削除やデータの読み書きといったアクセス手段を提供する。
【0003】
通常ファイルシステムは、データの管理を容易かつ効率的にするために、フォルダもしくはディレクトリと呼ばれるファイルもしくはディレクトリ自身の入れ物の抽象化である永続的な資源により、ファイルを階層的に管理し、パス名という名前によってそれらの所在を指定することが可能であるが、ファイルサーバはこういった名前空間を他のコンピュータから透過的にアクセスできるような機能も備える。これらのファイルや名前空間に対するアクセスや操作の機能は、所定のネットワークプロトコル(リモートファイル管理プロトコル)を通じて、クライアントとサーバ間で伝達される。代表的なリモートファイル管理プロトコルとしては、NFS(Network File System)やCIFS(Common Internet File system)、あるいはHTTPを拡張したWebDAV(Web-based Distributed Authoring and Versioning)が知られている。
【0004】
ファイルサーバは、ユーザのデータを保管する役割を担うため、高い信頼性やデータ保護機能が求められる。ハードウェア障害からデータを保護するため、ファイルサーバは複数の記憶装置を組み合わせ、ミラーリング、あるいはRAID(Redundant Arrays of Inexpensive Disks)などの技法を適用して冗長化する場合が多い。
【0005】
こういった冗長化手法は、記憶装置の故障からデータを保護するのに有効であるが、ユーザが誤って行った操作や、ソフトウェアのバグによるデータ破壊、あるいはウィルスによるデータ改ざんなどに対しては、冗長化されたデータが全て同時に影響を受けてしまうため有効でない。
【0006】
これらのハードウェア障害に起因しない問題によるデータ喪失を避ける一つ方法は、記憶装置のデータをテープや他の記憶装置に対し定期的にバックアップを行うことである。あるいはファイルサーバの中には、記憶装置(ブロックデバイス)もしくはファイルシステムのある時点の状態を凍結して残し、その凍結した状態(スナップショット)を後から参照できるようにすることで、前記の障害によるデータ喪失を防ぐために提供するものがある。ファイルシステムのスナップショットは、ファイルのデータと、ファイルを管理するために同一記憶装置上に保存されるメタデータと呼ばれるファイルシステムの内部データを、コピーして複製を作ったり、データやメタデータを上書きせずに、新たな場所に書き込むことで効率的に過去の状態を残す"Copy-on-Write"と呼ばれる書き込み手法を採ることにより実現される。
【0007】
しかし通常バックアップやスナップショットは、運用システムに対する負荷や、バックアップ、スナップショットの取得作成にかかる時間そのものの制約により、あまり頻度を高めることができず、結果として最後の取得時刻以降の誤操作、バグによるデータ破壊、改ざん、などよるデータ喪失を避けることは難しい。
【0008】
これを克服する技術として、連続的に他のマシンにバックアップを転送するCDP(Continuous Data Protection)やログ構造化ファイルシステム方式に基づき連続的にスナップショットが取得可能なファイルシステムNILFS(New Implementation of the Log-Structured Filesystem)がある(例えば、非特許文献1参照)。NILFSは、変更のあったデータとそれを管理するメタデータブロックをディスク上に追記するログ構造化ファイルシステムを応用し、ログ構造化ファイルシステムが定期的に生成するチェックポイント(ファイルシステムのある首尾一貫した状態を保つ点)をスナップショットとしてアクセス可能にする技術である。NILFSはローカルファイルシステム内に多数のスナップショット(もしくはチェックポイント)を自動的かつ暗黙的に生成し、変更データをディスクに書き戻す際や、同期保証つきの書き込みを実行する粒度で、細かくスナップショットを生成することができる。
【0009】
図18に、連続スナップショットファイルシステムの概念を示す。
【0010】
通常のファイルシステムではアプリケーションが編集して保存したファイルはディスク上でも上書き保存され、過去のバージョンのデータは残らない。バックアップを定期的に実施している場合は、バックアップを実施した時点の状態は復元可能であるが、バックアップ間の変更、特に、最後にバックアップを取得した以降に変更したデータは保護されない。これに対しNILFSでは、以前のデータも上書きされずにスナップショットとして記憶装置上に残っており、前述の人為的あるいはソフトウェア的な障害により失われたデータやディレクトリを復元することができる。
【0011】
NILFSの連続スナップショット手法は、こういったデータ保護のソリューションとしては、専用のハードを必要としない、運用システムに対するオーバヘッドがほぼ無視できる、ファイル単位ではなく、ファイルシステム全体の整合性を保証するようなリカバリが可能である、などの利点を有している。
【先行技術文献】
【非特許文献】
【0012】
【非特許文献1】佐藤孝治、小西隆介、木原誠司、天海良治、盛合敏「ログ構造化ファイルシステムNILFSの設計と実装」, 情報処理学会 論文誌コンピューティングシステム(ACS), Vol.2, No.1, pp.110-122, 2009.
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、NILFSのような連続的なスナップショット作成技術により、多数のスナップショットを追記的に生成すると、スナップショットが保持する過去のデータを維持するため、記憶装置の容量が逼迫することになる。このためスナップショットを必要に応じ削除してディスク領域を解放するなどの操作が必要になるが、前述のファイルサーバではこういった操作は自律的に行えないと、ユーザの利便性・保守性を著しく損なうことになる。
【0014】
ここで多数生成されるスナップショットの削除は、ファイルサーバにI/O負荷をかけるので、ユーザからのアクセスの応答性が低下しないよう調整することが望ましい。一つの方法は、夜間などの業務時間外にスナップショットの削除処理をずらすことであるが、NILFSのようにスナップショットが高い頻度で生成されるシステムにおいては、スケジュールされた削除処理を実施する間に多数のスナップショットが蓄積され、記憶装置の使用量の変動が大きくなる。過渡的に必要以上の容量を消費するため、容量不足が生じやすくなる。
【0015】
一方、ファイルサーバのクライアント側に視点を移すと、多数のスナップショットが提供されることにより、それを閲覧するユーザが混乱したり、クライアントシステムのスナップショット処理が多数のスナップショットを扱いきれなくなるなどの弊害が生じる。今日のコモディティPC向けのOSの中には、ファイルサーバのスナップショット機能を用いてファイルの変更履歴を抽出し、ユーザにファイル単位の履歴参照を可能にするものがあるが、こういった機能はバックグラウンド処理としてスナップショットを横断的に参照するため、スナップショット数に応じて処理時間とメモリ消費量が増え、クライアントPC(パーソナルコンピュータ)の応答性や安定性を低下させる。
【0016】
さらに、共有ファイルサーバの一つの利用法として、ユーザのPC上のデータのバックアップに使う場合があるが、こういった用途ではファイルサーバ上のユーザのデータは、バックアップの頻度でしか更新されないので、バックアップ間の更新データは保護されず、連続スナップショットのきめ細やかなスナップショット作成機能を活かすことができない。
【0017】
また、連続スナップショットによって多数のスナップショットをファイルサーバ上で提供することの他の問題として、所望のファイルを探し出すことが難しくなることが挙げられる。このため補助的な手段としてファイル検索が重要となる。
とりわけ、多数のスナップショットから効率的にファイルを探し出す手段としてインデックス検索方式に基づくファイル検索機能が有効である。NILFSの連続スナップショットは、ファイルシステムの名前空間の広がりに加えて、時間的な広がりも与えるが、過去のスナップショットのそれぞれをサブディレクトリとして割り付けることで、スナップショット上のファイルも検索対象に加えることができる。
【0018】
しかしながら、このように各スナップショットを単純に名前空間に割り付けて検索を行う場合には、ファイルがスナップショット単位で履歴が分かれ、ユーザの利便性の面でも、検索インデックスの効率の面でも無駄がある。特に、スナップショットが連続的に生成され、削除される状況に対して、検索インデックスを自動かつ効率的に保守することが求められる。
【0019】
本発明は、上記の点に鑑みなされたもので、スナップショットが連続的に生成され、削除される状況において、直近の誤操作によって喪失したデータは保全し、一定時間経った過去のスナップショットについては時間経過に応じて残すようなスナップショットを自動かつ効率的に保守することが可能なファイルサーバ及び連続スナップショット管理方法及びプログラムを提供することを目的とする。
【0020】
また、連続スナップショットファイルサーバ上のディレクトリに対するバックアップ操作が可能なクライアント端末及びバックアップ方法及びプログラムを提供することを目的とする。
【0021】
また、インデックス型検索のための検索インデックスのデータサイズを抑制し、検索時間を短縮可能な検索インデックス生成装置及び検索インデックス構築方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0022】
図1は、本発明の原理構成図である。
【0023】
本発明(請求項1)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段110の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステム151に対するスナップショットの管理を行うファイルサーバであって、
ファイルシステム151からスナップショットを取得し、該スナップショットの生成時刻の情報に基づきスナップショットをグループ分けし、現在時刻より定められた時間遡った過去の時点より後に生成されたスナップショットは全て該ファイルシステムに保存するスナップショット取得手段1611と、
過去の時点より以前のスナップショットについては、スナップショットの生成時刻の間隔が、グループ毎に定められた時間以上となるよう、ファイルシステム151のテーブルから段階的にスナップショットを削除するスナップショット削除手段1612と、を有する。
【0024】
また、本発明(請求項2)は、請求項1のファイルサーバにおいて、
ファイルシステム151のテーブル上でスナップショットを削除した場合でも、スナップショットが使用するディスク上のデータ及びメタデータ領域を直ちには解放せず、予め定められたスケジュールに従って動作するか、もしくはCPUの使用率やディスク入出力量などのシステム負荷が一定水準より低い期間に動作するバックグラウンドプログラムによって、領域をスナップショット削除時より遅らせて解放する解放手段を更に有する。
【0025】
また、本発明(請求項3)は、請求項1または2のファイルサーバにおいて、
ファイルサーバが、ファイルの内容や属性、及びそれらを保持する名前空間を含むファイルシステムの状態を最新のものに加えて、その任意のスナップショットを、NFS(Network File System)、CIFS (Common Internet File system)といったリモートファイル管理プロトコルを通じ、クライアント端末からネットワーク経由で公開する連続スナップショットを共有するサーバであるとき、
スナップショットを生成時刻からの現在時刻までの存続期間に応じて複数のグループに分け、ファイルシステムに格納するグループ化手段と、
ファイルシステムの各グループから一定個数のスナップショットを選んで公開することで、クライアント端末にアクセスさせるスナップショットの数を一定個数以内に抑える公開手段と、を有する。
【0026】
本発明(請求項4)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットファイルサーバのデータのバックアップを行うクライアント端末であって、
ローカルファイルシステム上の記憶手段のディレクトリを連続スナップショットファイルサーバのディレクトリと対応付け、該ローカルファイルシステム上のファイル作成または更新または削除、ディレクトリ作成または移動、名前変更を含む各種変更操作を監視し、該操作が発生した順序に従って、連続スナップショットファイルサーバに対応する該記憶手段のディレクトリに対して同じ操作を再現することによりバックアップを行うバックアップ手段を有する。
【0027】
本発明(請求項5)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットフィルサーバに対する、インデックス型検索に用いる検索インデックスを管理する検索インデックス生成装置であって、
検索対象のファイルの一意な状態を、該ファイルのパス名に加えてその同一状態の持続期間により識別するように、該ファイルのある状態が新規作成もしくは変更により開始された時点と、その状態が変更もしくは消去によって終了した時点を、該ファイルを含むスナップショットの識別番号ないしは取得時刻として検索インデックスを検索インデックス記憶手段に保持する検索インデックス生成手段を有する。
【0028】
また、本発明(請求項6)は、請求項5のインデックス生成装置において、
検索インデックス生成手段が、
インデックスの新規作成時には、ファイルシステム上に存在している最古のスナップショットに含まれる全てのファイルに対し、そのパス名に加えて、最古のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう項目を検索インデックスに追加する手段と、
続いてファイルシステム上で連続する二つのスナップショットを全て比較し、
各スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加する手段と、を有する。
【0029】
また、本発明(請求項7)は、請求項5の検索インデックス生成装置において、
ファイルシステム上でスナップショットされた場合に、その直前のスナップショットと新たに生成されたスナップショットを比較し、
両スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加する検索インデックス更新手段を有する。
【0030】
また、本発明(請求項8)は、請求項5の検索インデックス生成装置において、
検索インデックス記憶手段の検索インデックスから、識別番号ないしは取得時刻が、開始時点と終了時点で表される存続期間に含まれるスナップショットがファイルシステム上に存在しないファイル状態の項目を削除することで検索インデックスを最適化する最適化手段を有する。
【0031】
図2は、本発明の原理を説明するための図である。
【0032】
本発明(請求項9)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行うファイルサーバにおける連続スナップショット管理方法であって、
ファイルサーバのスナップショット取得手段が、
ファイルシステムからスナップショットを取得し(ステップ1)、該スナップショットの生成時刻の情報に基づきスナップショットをグループ分けし(ステップ2)、現在時刻より定められた時間遡った過去の時点より後に生成されたスナップショットは全て該ファイルシステムに保存し(ステップ3)、
ファイルサーバのスナップショット削除手段が、
過去の時点より以前のスナップショットについては、スナップショットの生成時刻の間隔が、グループごとに定められた時間以上となるよう、ファイルシステムのテーブルから段階的にスナップショットを削除する(ステップ4)。
【0033】
また、本発明(請求項10)は、請求項9の連続スナップショット管理方法において、
ファイルサーバの解放手段が、
ファイルシステムのテーブル上でスナップショットを削除した場合でも、スナップショットが使用するディスク上のデータ及びメタデータ領域を直ちには解放せず、予め定められたスケジュールに従って動作するか、もしくはCPUの使用率やディスク入出力量などのシステム負荷が一定水準より低い期間に動作するバックグラウンドプログラムによって、領域をスナップショット削除時より遅らせて解放する。
【0034】
また、本発明(請求項11)は、請求項9または10の連続スナップショット管理方法において、
ファイルサーバが、ファイルの内容や属性、およびそれらを保持する名前空間などのファイルシステムの状態を最新のものに加えて、その任意のスナップショットを、NFS(Network File System)、CIFS (Common Internet File system)といったリモートファイル管理プロトコルを通じ、クライアント端末からネットワーク経由で公開する連続スナップショットを共有するサーバであるとき、
ファイルサーバのグループ化手段が、
スナップショットを生成時刻からの現在時刻までの存続期間に応じて複数のグループに分け、ファイルシステムに格納し、
ファイルサーバの公開手段が、
ファイルシステムの各グループから一定個数のスナップショットを選んで公開することで、クライアント端末にアクセスさせるスナップショットの数を一定個数以内に抑える。
【0035】
本発明(請求項12)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットファイルサーバに対するデータのバックアップを行うクライアント端末におけるバックアップ方法であって、
クライアント端末のバックアップ手段が、
ローカルファイルシステム上の記憶手段のディレクトリを連続スナップショットファイルサーバのディレクトリと対応付け、該ローカルファイルシステム上のファイル作成または更新または削除、ディレクトリ作成または移動、名前変更を含む各種変更操作を監視し、該操作が発生した順序に従って、連続スナップショットファイルサーバに対応する該記憶手段のディレクトリに対して同じ操作を再現することによりバックアップを行う。
【0036】
本発明(請求項13)は、ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットフィルサーバに対する、インデックス型検索に用いる検索インデックスを管理する検索インデックス生成装置における検索インデックス構築方法であって、
検索インデックス生成装置の検索インデックス生成手段が、
検索対象のファイルの一意な状態を、該ファイルのパス名に加えてその同一状態の持続期間により識別するように、該ファイルのある状態が新規作成もしくは変更により開始された時点と、その状態が変更もしくは消去によって終了した時点を、該ファイルを含むスナップショットの識別番号ないしは取得時刻として検索インデックスを検索インデックス記憶手段に保持する。
【0037】
本発明(請求項14)は、請求項13の検索インデックス構築方法において、
検索インデックス生成手段が、
インデックスの新規作成時には、ファイルシステム上に存在している最古のスナップショットに含まれる全てのファイルに対し、そのパス名に加えて、最古のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう項目を追加し、
続いてファイルシステム上で連続する二つのスナップショットを全て比較し、
各スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスを検索インデックス記憶手段に追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加する。
【0038】
また、本発明(請求項15)は、請求項13の検索インデックス構築方法において、
インデックス生成装置の検索インデックス更新手段が、
ファイルシステム上でスナップショットされた場合に、その直前のスナップショットと新たに生成されたスナップショットを比較し、
両スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう検索インデックスに追加する。
【0039】
また、本発明(請求項16)は、請求項13の検索インデックス構築方法において、
インデックス生成装置の最適化手段が、
検索インデックス記憶手段の検索インデックスから、識別番号ないしは取得時刻が、開始時点と終了時点で表される存続期間に含まれるスナップショットがファイルシステム上に存在しないファイル状態の項目を削除することで検索インデックスを最適化する。
【0040】
本発明(請求項17)は、請求項1乃至3のいずれか1項に記載のファイルサーバを構成する各手段としてコンピュータを機能させるための連続スナップショット管理プログラムである。
【0041】
本発明(請求項18)は、請求項4記載のクライアント端末を構成する手段としてコンピュータを機能させるためのバックアッププログラムである。
【0042】
本発明(請求項19)は、請求項5乃至8のいずれか1項に記載の検索インデックス生成装置を構成する手段としてコンピュータを機能させるためのインデックス構築プログラムである。
【発明の効果】
【0043】
上記のように本発明によれば、以下のような効果を奏する。
【0044】
請求項1,9、17の発明(第1の発明)によれば,連続的に多数のスナップショットを自動作成するファイルサーバにおいて、直近の誤操作によって喪失したデータは保全し、また一定時間経った過去のスナップショットについては時間経過に応じてユーザが必要なスナップショットを代表として残すような、データ保護と履歴管理を両立する連続スナップショットの管理を機械的に行えるようになる。そして、連続スナップショットを蓄積しているボリュームが履歴(スナップショット)の増加によってディスクフルにならないよう長期間運用するファイルサーバが実現できる。
【0045】
請求項2,10,17の発明(第2の発明)によれば、第1の発明によるファイルサーバにおいてユーザからのファイルアクセスのない業務時間帯外や、業務時間帯内であってもユーザのアクセスが少ない空白時間にスナップショット削除が実施されるようになり、ユーザがファイルサーバ上のファイルにアクセスする際の応答性をなるべく低下させずに連続的に多数生成されるスナップショットを削除できるようになる。
【0046】
請求項3,11,17の発明(第3の発明)によれば、連続スナップショットをリモートファイル管理プロトコルを通じ、クライアントマシンからネットワーク経由で公開する場合で、スナップショットからファイル履歴を抽出するようなスナップショットを横断的にアクセスする処理をクライアントマシンが行う場合に、参照スナップショットの数が一定個数に抑えられることで、クライアントマシンとファイルサーバ双方の負荷を抑え、応答性と安定性を改善できる。また、ユーザがクライアントPC上のGUIを通じてスナップショットを閲覧する際に、所望の時刻・バージョンのスナップショットを探して選択する際の使い勝手が改善される。
【0047】
請求項4,12,18の発明(第4の発明)は、第一もしくは第2の発明による連続スナップショットのファイルサーバに対してクライアントPCのデータをバックアップして使用する場合に、共有ファイルサーバ上のデータと同様のレベルで、きめ細やかにデータを保護することができる。
【0048】
請求項5,13,19の発明(第5の発明)は、第1もしくは第2の発明による連続スナップショットのファイルサーバにインデックス型検索機能を付与する場合に、検索対象のファイルに対応する検索インデックス上のエントリの数を、多数生成されるスナップショットの数に比例するのではなく、各ファイルが同一状態にある数に削減でき、検索インデックスのデータサイズ抑制と検索時間の短縮が図れる。
【0049】
請求項6,14,19の発明(第6の発明)は、第5の発明による構成の検索インデックスを、既存のスナップショット集合から新規に作成したり、必要に応じて作成し直すことができるようになる。
【0050】
請求項7,15,19発明(第7の発明)は、第1もしくは第2の発明による連続スナップショットのファイルサーバ上でスナップショットが追加的に作成される場合に、第5の発明により構成され、第7の発明により作成された検索インデックスを、過去のスナップショットを一から参照することなく、効率的に更新することができる。
【0051】
そして、請求項8,16,19の発明(第8の発明)は、第5の発明により構成され、第6の発明により作成され、第7の発明により更新される検索インデックスに対して、第1もしくは第2の発明によってスナップショットが削除された場合に、検索インデックスから不必要となったエントリを削除し、検索インデックスのサイズを減らし、検索効率を改善するよう最適化することができる。
【0052】
請求項8,16,19の発明(第9の発明)は、第5〜第8の発明により、第1もしくは第2の発明による連続スナップショットのファイルサーバにインデックス型検索の機能を付与する場合に、多数でかつ部分的に削除されるスナップショットに対して、検索インデックスを効率的に作成・保守することが可能となる。
【図面の簡単な説明】
【0053】
【図1】本発明の原理構成図である。
【図2】本発明の原理を説明するための図である。
【図3】本発明の第1の実施の形態における連続スナップショットファイルサーバの構成図である。
【図4】本発明の第1の実施の形態におけるスナップショット管理デーモンの動作のフローチャートである。
【図5】本発明の第1の実施の形態におけるスナップショットの段階的な削除を説明するための図である。
【図6】本発明の第2の実施の形態における連続スナップショットファイルサーバの構成図である。
【図7】本発明の第2の実施の形態における解放デーモンの動作のフローチャートである。
【図8】スナップショットの共有方法を示す図である。
【図9】本発明の第3の実施の形態におけるスナップショットの選別処理のフローチャートである。
【図10】本発明の第4の実施の形態におけるバックアップシステムの構成図である。
【図11】本発明の第4の実施の形態における同期デーモンの動作のフローチャートである。
【図12】第1・第2の実施の形態による連続スナップショットファイルサーバにおけるファイルの存続期間とスナップショット番号の関係を示す図である。
【図13】本発明の第5の実施の形態における検索インデックスの構成例である。
【図14】本発明の第6〜第8の実施の形態における検索インデックス生成装置の構成図である。
【図15】本発明の第6の実施の形態における検索インデックス生成処理のフローチャートである。
【図16】本発明の第7の実施の形態における検索インデックスの更新処理のフローチャートである。
【図17】本発明の第8の実施の形態における検索インデックスの最適化処理のフローチャートである。
【図18】連続スナップショットファイルシステムの概念を示す図である。
【発明を実施するための形態】
【0054】
以下、図面と共に本発明の実施の形態を説明する。
【0055】
[第1の実施の形態]
図3は、本発明の第1の実施の形態における連続スナップショットファイルサーバの構成例を示す。
【0056】
同図に示す連続スナップショットファイルサーバ100は、記憶装置(ディスク)110とネットワークインタフェース120を搭載し、その基本ソフトOS(Operating System)150は、連続スナップショットファイルシステム151と、ネットワークインタフェース120のデバイスドライバやネットワークプロトコルスタックなどからなるネットワーク通信部152を有するものとする。また、クライアントPCに対するプログラムとしてファイル共有サービス165とスナップショット管理デーモン161を有する。ここで記憶装置110は、ハードウェア故障に対するデータ喪失を避けるよう一般性を失うことなくミラーリングやRAIDなどの冗長化技術を適用して可用性・信頼性を高めることができる。
【0057】
連続スナップショットファイルシステム151は、記憶装置110上のボリュームにブロックI/O(a1)を行い、通常のファイルシステムと同様ユーザ空間のアプリケーションにファイルやディレクトリなどシステム資源を提供し、それらを通じ記憶装置110へのデータの保存、及び、記憶装置110のデータの参照もしくは管理機能を提供する。なお、ここで「ブロックI/O」とは、本発明のファイルシステムはブロックデバイスを対象としているため、ブロック単位で入出力することを意味する。
【0058】
ファイル共有サービス165は、連続スナップショットファイルシステム151のこれら資源をネットワーク通信部152とネットワークインタフェース120を通じ、クライアントPCからアクセス可能とする(a2〜a5)。
【0059】
スナップショット管理デーモン161は、定期的に連続スナップショットファイルシステム151の状態を調べ(a6)、時間経過に応じてスナップショットを削除する(a7)。
【0060】
図4は、本発明の第1の実施の形態におけるスナップショット管理デーモンの動作のフローチャートを示す。
【0061】
ステップ101) スナップショット管理デーモン161はまず、設定ファイル(外部からアクセスできないようなシステムの記憶域を指す)などから、「最近」のスナップショットの保持期間Trecent、「時間毎」のスナップショットの保持期間Thourly、「日ごと」のスナップショットの保持期間Tdaily、「週毎」のスナップショットの保持期間Tweeklyを読み込み、メモリ(図示せず)上に設定する。
【0062】
ステップ102) 連続スナップショットファイルシステム151から存在するスナップショットのスナップショット番号とタイムスタンプを取得する。
【0063】
ステップ103) また、基本ソフト150から現在時刻を取得し基準時刻Tに設定する。
【0064】
ステップ104) そして、取得したスナップショットから、当該スナップショットの生成時刻tがt≧T - Trecentであるスナップショットを除外する。
【0065】
ステップ105) そして次に、生成時刻tがt≧T − Thourlyであるスナップショットを選択し、古いものもしくは新しいものから順にスナップショットの生成時刻の間隔を調べ、間隔が1時間に満たない中間スナップショットを削除し、選択された期間内の残りのスナップショットを処理対象から除外する。
【0066】
ステップ106) 以降同様に、生成時刻tがt≧T - Tdailyであるスナップショットを選択して間隔が一日以上になるよう中間スナップショットを削除して残りのスナップショットを処理対象から除外する。
【0067】
ステップ107) 生成時刻tがt≧T - Tweeklyであるスナップショットを選択して間隔が一週間以上になるよう中間スナップショットを削除して残りのスナップショットを処理対象から除外する。
【0068】
ステップ108) 残ったスナップショットの間隔が一ヶ月以上となるよう中間スナップショットを削除する。
【0069】
ステップ109) そして停止要求の有無を調べ、あれば終了し、なければステップ110に移行する。
【0070】
ステップ110) 一定時間スリープした後、ステップ102に移行し、スナップショット一覧の取得以降の処理を繰り返す。
【0071】
このようにして間引かれたスナップショットは、図5のように時間経過に応じてスナップショット数を抑えたものとなる。
【0072】
なお、本実施の形態では、スナップショット作成は連続スナップショットファイルシステム151が自動的に作成することを前提に、スナップショット管理デーモン161はスナップショット削除のみを行うこととしたが、スナップショット作成の指示をスナップショット管理デーモン161に行わせるようにすることで、スナップショット作成をサポートしているが、自動的には作成しないファイルシステムを対象として、連続スナップショットファイルサーバを構成することもできる。
【0073】
また、連続スナップショットファイルシステム151がスナップショット情報を一元的に管理する機能を有さない場合には、多数のスナップショットの横断的なアクセスによりファイルサーバの性能が低下する。その場合、スナップショットのタイムスタンプ情報を含む一覧の情報を、スナップショット管理デーモン161内の記憶手段に保持させ、新たに作成されたスナップショットの情報のみを連続スナップショットファイルシステム151から取得させることで、性能低下を抑えるように実施することができる。
【0074】
[第2の実施の形態]
本実施の形態では、ユーザからアクセスのない業務時間帯外や、ユーザからのアクセスが少ない時間にスナップショットを削除し、記憶装置110を解放する処理について説明する。
【0075】
図6は、本発明の第2の実施の形態における連続スナップショットファイルサーバの構成を示す。
【0076】
同図において、図3と同一構成部分には同一符号を付し、その説明を省略する。図6の構成は、図3の構成に解放デーモン162を付加した構成である。
【0077】
本実施の形態の連続スナップショットファイルサーバ100は、第1の実施の形態における連続スナップショットファイルサーバに基づいて構成されるが、スナップショット管理デーモン161は、スナップショットを削除する際、実際にスナップショットが利用している記憶装置110上のデータ領域は解放せず、指定されたスナップショットに削除要求のマークを付けるだけである(a6´)。
【0078】
本実施の形態において、スナップショットが利用している記憶装置110のデータ領域を解放するのは、解放デーモン162であり、これはユーザ空間のバックグラウンドプログラムとして実装されるか、あるいは基本ソフト150のプログラムとしてファイルシステムの一部に含めるかもしくは含めない形で実現することができる。
【0079】
図7は、本発明の第2の実施の形態における解放デーモンの処理のフローチャートである。
【0080】
ステップ201) 解放デーモン162は、まず、サーバ100内の設定ファイル(図示せず)などから、CPU使用率の閾値Rcpu、I/O負荷の閾値RI/O、一回の解放処理の割当時間Tsliceを読み込み、メモリ(図示せず)に設定する。
【0081】
ステップ202) 次に、CPU使用率Lcpuをシステムから取得する。
【0082】
ステップ203) CPU使用率LcpuとCPU使用率の閾値Rcpuを比較し、Lcpu<Rcpuでなければステップ211に移行し、Lcpu<Rcpuであればステップ204に移行する。
【0083】
ステップ204) Lcpu <Rcpuなら、I/O負荷LI/Oを計測するか、または、システムから取得する。
【0084】
ステップ205) LI/O < RI/Oであればステップ206に移行し、LI/O < RI/Oでなければステップ211に移行する。
【0085】
ステップ206) LI/O < RI/Oなら、連続スナップショットファイルシステム151から削除要求がマークされたスナップショットの一覧を取得する。
【0086】
ステップ207) 次に、基本ソフト150から解放処理の開始時刻を取得する。
【0087】
ステップ208) そして、取得されたスナップショットの中から、スナップショット管理デーモン161によって削除要求がマークされたスナップショットを一つ解放する。
【0088】
ステップ209) 開始時刻からの経過時刻tがt≦ Tsliceか確認し、経過時刻がまだ過ぎていなければステップ207に移行して、ステップ207,208の処理を繰り返す。経過時間が過ぎている場合はステップ210に移行する。
【0089】
ステップ210) 経過時間が過ぎた場合には停止要求の有無を調べ、あれば終了し、なければステップ211に移行する。
【0090】
ステップ211) 一定時間スリープした後、ステップ202以降の処理を繰り返す。
【0091】
上記の説明では、スナップショットの使用するディスク領域の解放をスナップショット単位としているが、一般性を失うことなくステップ208で削除されるスナップショットは複数個としたり、あるいはスナップショットを構成するデータの所定のサイズ単位とすることができる。
【0092】
また、ディスク領域の解放方法として、ディスク領域を複数の区間(セグメント)に分割し、セグメント毎にそこに含まれるディスクブロックが、削除要求対象でないスナップショットもしくはファイルシステムの現在の状態により使用されているかどうかを判定し、使用中の全てのブロックを空き領域にコピーし、セグメントを解放する方法がある。このような解放方法をとる場合でも、ステップ208の処理単位をディスク領域の単一もしくは複数のセグメント単位とすることで、一般性を損なうことなく、ディスク領域の解放の遅延処理が実現できる。
【0093】
[第3の実施の形態]
本実施の形態では、説明のために、図8に第1もしくは第2の実施の形態による連続スナップショットファイルサーバ100が、ネットワークで接続されたクライアントPCからスナップショットを閲覧、参照可能となるように、それらを共有フォルダとして公開する方法の例を示す。
【0094】
図8は、本発明の第3の実施の形態におけるスナップショットの共有方法の例を説明するための図である。同図の例では、ファイルシステムの現在のファイルとその名前空間を共有フォルダ「share」10に割り当てて公開する一方、一連のスナップショットにスナップショットの生成時刻に基づく名前を与え、共有フォルダ「share」10 に対応するスナップショットフォルダ「snapshots」20の中に公開している。スナップショットフォルダ20は、通常の共有フォルダと同様にユーザから直接アクセスできるように公開する場合もあれば、現在のファイルシステム上の特定のサブディレクトリ(例えば".snapshots")に割り当てて公開する場合もある。もしくは、専らクライアントPCのスナップショット機能が参照するためのユーザからは直接見えないディレクトリとしてクライアントPCに公開する場合もある。また、スナップショットを割り当てるサブディレクトリ名は、生成時刻ではなくスナップショットの識別番号に基づく名前を与える場合もある。
【0095】
こういったスナップショットフォルダ20の名前空間の生成と個々のスナップショットへの割り当ては、連続スナップショットファイルサーバ100のファイル共有サービス部165を通じて行われる。
【0096】
図9は、本発明の第3の実施の形態におけるスナップショットの選別処理のフローチャートであり、スナップショットフォルダをクライアントPCに公開するスナップショットの選別処理の例を示す。
【0097】
同図の例では、スナップショットを3つのグループ(新しいものから順に「ホット」グループ、「コールド」グループ、「残り」グループ)に分け選別している。
【0098】
ステップ301) まず、ファイル共有サービス部165は、スナップショットフォルダ20内のサブディレクトリ名の取得要求をクライアントPCから受けると、前記グループ毎のスナップショットの表示個数Nhot, Ncold, Nrestを取得する。
【0099】
ステップ302) 現在を基準としてスナップショットをグループ分けするための遡及時間Thot, Tcoldを取得する。
【0100】
ステップ303) 選別したスナップショット格納用のメモリ(図示せず)テーブルHを初期化する。
【0101】
ステップ304) 連続スナップショットファイルシステム151からスナップショットの一覧を取得する。
【0102】
ステップ305) 現在時刻を取得して基準時刻Tとして設定する。
【0103】
ステップ306) しかる後に、取得したスナップショットの中から、生成時刻tがt ≧ T−Thotとなるものを「ホット」グループに属するものとして選び、その内、新しいものから順に最大でNhot個を選択してテーブルHに登録する。
【0104】
ステップ307) 同様に、生成時刻tがT−Thot > t ≧ T−Tcoldとなるスナップショットを「コールド」グループに属するものとして選び、その内、新しいものから順に最大でNcold個を選択してテーブルHに追加する。
【0105】
ステップ308) また、生成時刻tがt < T−Tcoldとなるスナップショットを「残り」グループに属するものとして選び、新しいものから順に最大でNrest個を選択してテーブルHに追加する。
【0106】
ステップ309) 最後に、テーブルHに登録されたスナップショットを出力する。
【0107】
例えば、テーブルHから図8に示すスナップショット毎のサブディレクトリに対応させて出力することにより、クライアントPCに公開する。
【0108】
上記のスナップショット選別処理は、クライアントPCからスナップショットフォルダの閲覧要求があるたびに実施するのでなく、応答速度を改善するため短期間ファイル共有サービス165内にキャッシュして用いることもできる。またスナップショットグループ分け方(期間)は、第1の実施の形態による分け方(期間)と同一にする必要はない。第1の実施の形態はスナップショットを削除するので、ステップ304で取得するスナップショットは、その結果が反映されたものとなる。また、第2の実施の形態を適用する場合には、削除中のスナップショットはステップ304で取得するスナップショットからは除外する。
【0109】
[第4の実施の形態]
図10は、本発明の第4の実施の形態におけるバックアップシステムの構成を示す。
【0110】
同図に示すバックアップシステムは、第1もしくは第2の実施の形態による連続スナップショットファイルサーバ100とクライアントPC200を、ネットワークを介し接続して構成する。
【0111】
クライアントPC(PC)200は、記憶装置210とネットワークインタフェース220を搭載し、その基本ソフト(Operating System)250は、ローカルファイルシステム251、ネットワークインタフェース220のデバイスドライバやネットワークプロトコルスタックなどからなるネットワーク通信部252、ファイル共有クライアント部255、それにローカルファイルシステム上の変更操作をユーザランドのアプリケーションに通知する通知機能部254を有する。そしてユーザランドのプログラムとして同期デーモン261を有する。
【0112】
ファイルシステム251は通常のファイルシステムであり、記憶装置210上のボリュームにブロックI/O(b1)を行い、ファイルやディレクトリなどシステム資源を提供し、データの保存・参照もしくは管理機能を提供する。一方、ファイル共有クライアント部255は、ネットワーク通信部252とネットワークインタフェース220を通じ、連続スナップショットファイルサーバ100に接続し、当該サーバ100の共有フォルダの閲覧、参照、変更をアクセス権に応じてアクセスする機能を提供する(b2〜b4)。
【0113】
同期デーモン261は、通知機能部254を通じてローカルファイルシステム251の予め登録されたディレクトリの変更を調べ(b5,b6)、ファイル共有クライアント部250を通じて、変更内容を連続スナップショットファイルサーバ100の共有フォルダ内の予め登録されたディレクトリに反映させる。
【0114】
図11は、本発明の第4の実施の形態における同期デーモンの動作のフローチャートである。
【0115】
ステップ401) 同期デーモン261は、まず、設定ファイルなどから、ローカルファイルシステム251上の同期元ディレクトリDsrcと連続スナップショットファイルサーバ100の共有フォルダ上の同期先ディレクトリDdestの対を読み込み設定する。
【0116】
ステップ402) また、連続スナップショットファイルシステム151から存在するスナップショットのスナップショットDsrc内のファイル操作及びディレクトリ操作を監視するよう通知機能部254に設定する。
【0117】
ステップ403) 次に、同期先ディレクトリDdest で指定された共有フォルダを有する連続スナップショットファイルサーバ100との通信が可能かどうか確認し、そうでなければ通信可能になるまで一定時間待つ。
【0118】
ステップ404) 確認処理がタイムアウトした場合には、ステップ405に移行し、タイムアウトしていない場合は、ステップ410に移行する。
【0119】
ステップ405) 次に、停止要求の有無を調べ、停止要求がある場合は、ステップ406に移行し、ない場合はステップステップ403に移行する。
【0120】
ステップ406) 停止要求がある場合は、同期元ディレクトリDsrc監視を解除するよう通知機能部254に設定して終了する。
【0121】
ステップ410) ファイルサーバ100との通信可能な場合には、まず同期元ディレクトリDsrcと同期先ディレクトリDdestの状態を一致させるため、DsrcとDdestのトップから再帰的に同期処理を行う。ディレクトリの場合には、ディレクトリの構成を調べ、構成が一致するようDdestに対してディレクトリの作成または削除を行い、ファイルの場合には内容が一致しているか調べ、一致していなければ、Ddest上の対象ディレクトリにファイルをコピーする。
【0122】
ステップ411) 同期化処理が完了した後、同期デーモン261は、通知機能部254からファイル操作・ディレクトリ操作のイベントe=<d,f,o>を受理し、なければイベント到着まで一定時間待つ。ここでd、f、oはそれぞれ、Dsrcのトップディレクトリからの対象ファイル、ディレクトリの相対パス、操作の種別、操作のオプションパラメータである。操作の種別とは、ファイルやディレクトリの作成・削除や移動・リネーム、ファイルの内容の変更、ファイル・ディレクトリのアクセス権、タイムスタンプ、所有者情報、グループ情報などの各種属性の変更などである。またオプションパラメータは、各操作を実施するのに必要な付帯的な情報である。
【0123】
ステップ412) タイムアウトした場合はステップ415に移行し、タイムアウト以前であればステップ413に移行する。
【0124】
ステップ413) ステップ411でイベントを受理した場合には、共有フォルダ内のディレクトリDdest /d(dはDsrc内の対象ファイル・ディレクトリの相対パス)で変更操作f(o)を実行する。
【0125】
ステップ414) ステップ413の変更操作が失敗した場合には、ステップ405に移行し、成功した場合はステップ415に移行する。
【0126】
ステップ415) 変更操作が成功した場合、もしくは前述のイベント受理がタイムアウトした場合には、停止要求の有無を確かめ、あればステップ406に移行し、それ以降の処理を実施し、なければステップ411に移行する。
【0127】
以上の説明では、変更を監視して再現する操作はファイルとディレクトリのみに限定しているが、シンボリックリンクその他の特殊ファイルに対しても一般性を損なうことなく拡張できる。また、ステップ410〜415の処理を、ワーカスレッドを生成して実行させることで、プログラムが長時間無応答にならないように手順化することも可能である。また、本実施の形態の説明では、同期元と同期先のディレクトリが一対の場合を説明しているが、結び付けられたディレクトリの対が複数の場合についても一般性を損なうことなく拡張できる。
【0128】
[第5の実施の形態]
図12は、第1もしくは第2の実施の形態による連続スナップショットファイルサーバにおける、ファイルの存続期間とスナップショット番号の関係の一例を示す。また、図13は、本発明の第5の実施の形態における検索インデックスの例を示す。図13の検索インデックスの例は、図12の状態に対応する本実施の形態による検索インデックスの構成例である。
【0129】
図12の例では、「ファイルA」がスナップショット番号2500の時点で作成され、スナップショット番号2520の時点でその内容が変更され、スナップショット番号2540で削除されたものとしている。
【0130】
また「ファイルB」がスナップショット番号2510の時点で作成され、現在まで存続しているものとしている。スナップショット番号2500からスナップショット番号2520の直前まで「ファイルA」の内容は変わらないため、その検索キーワードも同一である。開始時点を基準にこれをKA,2500と表す。同様に、スナップショット番号[2520,2540]の「ファイルA」の検索キーワード集合をKA,2520、「ファイルB」のキーワード集合はKB,2510と表す。
【0131】
この例に対応する第5の実施の形態による検索インデックスの形式は、図13の例に示すように、各キーワード集合に対応するエントリを、"FilePath", "StartNum", "EndNum"で始まる3つのフィールドによって識別する。
"FilePath"のフィールドにはファイルのパス名を格納し、 "StartNum"フィールドにはファイルがある状態にあるスナップショットの最初の番号を、"EndNum"フィールドにはファイルの削除や変更により、その状態が解消されたスナップショットの番号をそれぞれ格納する。「ファイルB」は現在まで継続しているので、"EndNum"フィールドにはその状態を表現するためにnull値を格納している。現在まで継続していることを示す値は、勿論、有効なスナップショット番号から識別される値であれば何でも良い。また"EndNum"フィールドには、ある状態が解消されたスナップショット番号を使用しているが、一般性を損なうことなく、ある状態が継続する最後のスナップショット番号、すなわち、ここで使用している値から1を引いた番号を使用することもできる。また、ここでは、ファイルの同一状態が継続する期間をスナップショット番号により与えているが、スナップショット番号とスナップショットのタイムスタンプ(作成時刻)の値を使用することも可能である。また本実施の形態の表現は、検索インデックスの意味的な構成を示しており、実際のインデックスファイルのデータ構造やフィールドの識別名には、勿論様々な構造、名前を使用することができる。
[第6の実施の形態]
以下の第6〜第8の実施の形態では、NAS(Network Attached Storage)上のWebサーバに対し、Google(登録商標)検索のようなWebインタフェースを通じて、ユーザが入力したキーワードに対応するスナップショット上のファイルを過去のファイルも含め探し出せるようにする。
【0132】
以下の実施の形態では、連続スナップショットファイルサーバ100の多数のスナップショットから効率的にファイルを検索するために用いられる検索インデックを生成するための検索インデックス生成装置について説明する。
【0133】
図14は、本発明の第6〜第8の実施の形態におけるインデックス生成装置の構成を示す。当該インデックス生成装置300は、検索インデックス作成部310、検索インデックス更新部330、検索インデックス最適化部340、検索インデックス参照部350、から構成される。
【0134】
検索対象ファイル1100は、連続スナップショットファイルサーバ100の記憶装置110内に存在し、連続スナップショットファイルシステム151により管理されるファイルである。
【0135】
検索インデックス生成装置300の検索インデックス参照部350は、Webサーバ600にアクセスする。
【0136】
本実施の形態では、検索インデックス作成部310について説明するが、検索インデックス更新部330については第7の実施の形態で、検索インデックス最適化部340については第8の実施の形態でそれぞれ後述する。
【0137】
図15は、本発明の第6の実施の形態における検索インデックスの作成処理のフローチャートである。
【0138】
ステップ601) 検索インデックスの作成部310は、まず、既存の検索インデックスを初期化ないしは新規に空の検索インデックスを作成する。
【0139】
ステップ602) そして、連続スナップショットファイルサーバ100からスナップショットの一覧S={s1,s2,…,sN}を取得する。但し、ここでNはスナップショットの個数であり、s1<s2<…<sNの順序関係があるものとする。
【0140】
ステップ603) 次に、スナップショットs1 を対象として、連続スナップショットファイルシステム151の記憶装置110上のディレクトリツリーを探索し、検索対象ファイル1100の F1={f1,f2,…,fm1}を処理対象として抽出する。
【0141】
ステップ604) 検索対象ファイル1100のF1から未処理のファイルfを選択する。
【0142】
ステップ605) そして、検索対象の全てのファイルに対して、検索キーワードを抽出する。
【0143】
ステップ606) 各ファイルに対し、抽出した検索キーワードとそのエントリをFilePathフィールドが検索ファイルのパス名に、StartNumフィールドがスナップショット番号s1に、EndNumフィールドがnull値となる新規エントリを検索インデックス記憶装置500の検索インデックスに追加する。
【0144】
ステップ607) 検索対象のF1の全てのファイルを処理した場合は、ステップ608に移行し、全てのファイルを処理していない場合はステップ604に移行する。
【0145】
ステップ608) 続いて、一連のスナップショットに対して連続的に変更を追跡するために、インデックスiを1 に初期化する。
【0146】
ステップ609) i=Nであった場合には直ちに処理を終了する。そうでない場合には、ステップ610に移行する。
【0147】
ステップ610) スナップショットsi+1上の検索対象ファイルF i+1を抽出する。
【0148】
ステップ611) Fiに含まれるファイルfを選択する。
【0149】
ステップ612) ファイルfがスナップショットsi+1上に存在するかを判定し、存在する場合はステップ613に移行し、存在しない場合はステップ616に移行する。
【0150】
ステップ613) スナップショットsi上のファイルfとスナップショットsi+1上のfのデータは同一であるかを判定し、同一である場合はステップ617に移行し、同一でない場合はステップ614に移行する。
【0151】
ステップ614) fの検索キーワード(Ki+1,f)を抽出する。
【0152】
ステップ615) 検索インデックス記憶装置500の検索インデックスにキーワード集合k1+1,fを格納し、そのエントリを以下のフィールドで登録する。
【0153】
・File Path: f
・StartNum:si+1
・EndNum:null
ステップ616) 検索インデックス記憶装置500の検索インデックスから
・FilePath=f,
・StartNum< si+1
・EndNum=null
のエントリを探索し、EndNumをsi+1に変更する。
【0154】
ステップ617) Fiの全てのファイルを処理したかを判定し、処理した場合はステップ618に移行し、処理していない場合はステップ611に移行する。
【0155】
ステップ618) Fi+1に含まれ、Fiに含まれないファイルf´を選択する。
【0156】
ステップ619) ファイルf´の検索キーワード(Ki+1,f')を抽出する。
【0157】
ステップ620) 検索インデックス記憶装置500にキーワード集合(K1+1,f')を格納する。そのエントリを以下のフィールドで登録する。
【0158】
・File Path: f´
・StartNum: si+1
・EndNum:null
ステップ621) Fi+1の全てのファイルを処理したかを判定し、処理した場合はステップ622に移行し、処理していない場合はステップ618に移行する。
【0159】
上記のステップ610〜621では、先に処理したスナップショットsiとその次のスナップショットsi+1に対して、検索対象ファイル1100を調べ、内容を比較する。そしてsi+1で変更もしくは削除されたファイルに対しては、検索インデックス記憶装置500のファイルをFilePathに持つエントリで、StartNumフィールドが si+1 より小さく、EndNumフィールドが null 値であるエントリを見つけ、そのEndNumフィールドにsi+1を設定する。また、si+1で変更もしくは新規作成されたファイルに対して、検索キーワードを抽出し、各ファイルに対し、抽出した検索キーワードとそのエントリをFilePathフィールドが検索ファイルのパス名に、StartNumフィールドがスナップショット番号si+1に、EndNumフィールドがnull値となる新規エントリを検索インデックスに追加する。そして、インデックスiをインクリメントし、ステップ609からi=Nになるまで処理を繰り返す。
【0160】
[第7の実施の形態]
本実施の形態では検索インデックス更新部330による検索インデックス更新処理について説明する。
【0161】
図16は、本発明の第7の実施の形態における検索インデックスの更新処理のフローチャートである。
【0162】
本実施の形態の検索インデックスの更新処理は、検索インデックス更新部330の常駐プログラムにより実施される。
【0163】
ステップ701) まず、検索インデックス記憶装置500の検索インデックスに対し、用いた最終スナップショット番号を取得しSprevとして設定する。Sprev は、検索インデックス記憶装置500上のエントリを網羅的に調べて決定するか、もしくは前述の検索インデックス生成処理でSNを保存するようにしてその値を使う。
【0164】
ステップ702) そして、番号がs > sprevなるスナップショットs が存在するか確認する。存在しない場合には、ステップ703に移行し、存在する場合はステップ705に移行する。
【0165】
ステップ703) 存在しない場合は、終了要求の有無を確認し、あれば直ちに終了し、なければステップ704に移行する。
【0166】
ステップ704) 一定時間スリープした後、ステップ702に移行する。
【0167】
ステップ705) ステップ702において、番号がs>sprevなるスナップショットsが存在する場合は、s>sprevなるスナップショットを選び、snextとして設定する。
【0168】
ステップ706) そして、スナップショットsprevとスナップショットsnextに対して、検索対象ファイル1100を調べ、内容を比較し、変更または削除されたファイルを抽出する。
【0169】
ステップ707) 更新されたファイルFcmから未処理のファイルfを選択する。
【0170】
ステップ708) fの検索キーワード(Knext,f)を抽出する。
【0171】
ステップ709) 検索インデックス記憶装置500にキーワード集合(Knext,f)を格納する。そのエントリを以下のフィールドで登録する。
【0172】
・File Path: f
・StartNum: snext
・EndNum:null
ステップ710) Fcmの全てのファイルを処理した場合には、ステップ711に移行し、処理していない場合はステップ707に移行する。
【0173】
ステップ711) スナップショットsprev、snextの間で変更または削除されたファイルFmdを抽出する。
【0174】
ステップ712) ファイルFmdから未処理のファイルf´を選択する。
【0175】
ステップ713) 検索インデックス記憶装置500の検索インデックスから、
・File Path: f´
・StartNum<si+1
・EndNum:null
を探索し、EndNumをsnextに変更する。
【0176】
ステップ714) ファイルFmdの全てのファイルを処理したかを判定し、処理した場合はステップ715に移行し、処理していない場合はステップ712に移行する。
【0177】
上記のステップ705〜715では、新スナップショットsが存在する場合には、s>sprevなるスナップショットを選び、snextとして設定する。そして、スナップショットsprevとスナップショットsnextに対して、検索対象ファイル1100を調べ、内容を比較する(ステップ705)。その結果、snextで変更もしくは削除されたファイルに対しては、検索インデックスの当該ファイルを FilePath に持つエントリで、StartNumフィールドが snext より小さく、EndNumフィールドがnull値であるエントリを見つけ、そのEndNumフィールドにsnextを設定する。また、snextで変更もしくは新規作成されたファイルに対して、検索キーワードを抽出し、各ファイルに対し、抽出した検索キーワードとそのエントリをFilePathフィールドが検索ファイルのパス名に、StartNumフィールドがスナップショット番号snextに、EndNumフィールドが null 値となる新規エントリを検索インデックスに追加する(ステップ706〜ステップ715)。そして、最終スナップショット番号にsnextを設定し、ステップ701から処理を繰り返す。
【0178】
[第8の実施の形態]
本実施の形態では、検索インデックス最適化部340による検索インデックスの最適化処理について説明する。
【0179】
図17は、本発明の第8の実施の形態における検索インデックスの最適化処理のフローチャートである。
【0180】
ステップ801) 検索インデックス最適化部340では、まず、連続スナップショットファイルサーバ100より、スナップショット(番号)の一覧(S={s1,s2,…,sn})を取得する。
【0181】
ステップ802) 次に、検索インデックス記憶装置500の検索インデックスの各エントリを調べて、未処理のエントリeを1個抽出する。
【0182】
ステップ803) EndNum=nullであるかを調べ、nullである場合はステップ806に移行し、nullでない場合はステップ804に移行する。
【0183】
ステップ804) StartNumフィールド≦s<EndNumフィールドなるスナップショット番号sがSに存在するかを判定し、存在する場合はステップ806に移行し、存在しない場合はステップ805に移行する。
【0184】
ステップ805) エントリeを検索インデックスから削除する。
【0185】
ステップ806) 検索インデックスの全てのエントリを処理した場合は、処理を終了し、処理していないエントリがある場合はステップ802に移行する。
【0186】
上記のステップ802〜ステップ806では、EndNumフィールドにnull値以外が設定され、かつ StartNumフィールド≦s<EndNumフィールなるスナップショット番号s が取得スナップショット一覧に含まれないエントリを削除する。検索インデックスの全てのエントリに対しこの処理を適用することで、不要エントリを削除し、検索インデックスを削減する。この検索インデックスの最適化処理は、常駐プログラムで実施してもよいし、定められたスケジュールで実行しても良い。
【0187】
なお、上記の第1〜第3の実施の形態における連続スナップショットファイルサーバの構成要素の動作をプログラムとして構築し、連続スナップショットファイルサーバとして利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【0188】
また、第4の実施の形態におけるクライアント端末の構成要素の動作をプログラムとして構築し、クライアント端末として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【0189】
また、第5〜第8の実施の形態におけるインデックス生成装置の動作をプログラムとして構築し、インデックス生成装置として利用されるコンピュータにインストールして実行させる、または、ネットワークを介して流通させることが可能である。
【0190】
また、上記の構築されたプログラムをハードディスクや、フレキシブルディスク・CD−ROM等の可搬記憶媒体に格納し、コンピュータにインストールする、または、配布することが可能である。
【0191】
なお、本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において種々変更・応用が可能である。
【符号の説明】
【0192】
100 連続スナップショットファイルサーバ
110 記憶手段、記憶装置
120 ネットワークインタフェース
150 基本ソフト(OS)
151 ファイルシステム、連続スナップショットファイルシステム
152 ネットワーク通信部
161 スナップショット管理デーモン
162 解放デーモン
165 ファイル共有サービス部
200 クライアントPC
210 記憶装置
220 ネットワークインタフェース
250 基本ソフト(OS)
251 ローカルファイルシステム
252 ネットワーク通信部
254 通知機能部
255 ファイル共有クライアント部
261 同期デーモン
300 検索インデックス生成装置
310 検索インデックス作成部
330 検索インデックス更新部
340 検索インデックス最適化部
350 検索インデックス参照部
500 検索インデックス記憶装置
600 Webサーバ
1100 検索対象ファイル
1611 スナップショット取得手段
1612 スナップショット削除手段

【特許請求の範囲】
【請求項1】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行うファイルサーバであって、
前記ファイルシステムからスナップショットを取得し、該スナップショットの生成時刻の情報に基づきスナップショットをグループ分けし、現在時刻より定められた時間遡った過去の時点より後に生成されたスナップショットは全て該ファイルシステムに保存するスナップショット取得手段と、
前記過去の時点より以前のスナップショットについては、スナップショットの生成時刻の間隔が、グループごとに定められた時間以上となるよう、前記ファイルシステムのテーブルから段階的にスナップショットを削除するスナップショット削除手段と、
を有することを特徴とするファイルサーバ。
【請求項2】
前記ファイルシステムのテーブル上でスナップショットを削除した場合でも、スナップショットが使用するディスク上のデータ及びメタデータ領域を直ちには解放せず、予め定められたスケジュールに従って動作するか、もしくはCPUの使用率やディスク入出力量などのシステム負荷が一定水準より低い期間に動作するバックグラウンドプログラムによって、前記領域をスナップショット削除時より遅らせて解放する解放手段を更に有する
請求項1記載のファイルサーバ。
【請求項3】
前記ファイルサーバが、ファイルの内容や属性、およびそれらを保持する名前空間などの前記ファイルシステムの状態を最新のものに加えて、その任意のスナップショットを、NFS(Network File System)、CIFS (Common Internet File system)といったリモートファイル管理プロトコルを通じ、クライアント端末からネットワーク経由で公開する連続スナップショットを共有するサーバであるとき、
スナップショットを生成時刻からの現在時刻までの存続期間に応じて複数のグループに分け、前記ファイルシステムに格納するグループ化手段と、
前記ファイルシステムの各グループから一定個数のスナップショットを選んで公開することで、前記クライアント端末にアクセスさせるスナップショットの数を一定個数以内に抑える公開手段と、
を有する請求項1または2記載のファイルサーバ。
【請求項4】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットファイルサーバのデータのバックアップを行うクライアント端末であって、
ローカルファイルシステム上の記憶手段のディレクトリを前記連続スナップショットファイルサーバのディレクトリと対応付け、該ローカルファイルシステム上のファイル作成または更新または削除、ディレクトリ作成または移動、名前変更を含む各種変更操作を監視し、該操作が発生した順序に従って、前記連続スナップショットファイルサーバに対応する該記憶手段のディレクトリに対して同じ操作を再現することによりバックアップを行うバックアップ手段を有する
ことを特徴とするクライアント端末。
【請求項5】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットフィルサーバに対する、インデックス型検索に用いる検索インデックスを管理する検索インデックス生成装置であって、
検索対象のファイルの一意な状態を、該ファイルのパス名に加えてその同一状態の持続期間により識別するように、該ファイルのある状態が新規作成もしくは変更により開始された時点と、その状態が変更もしくは消去によって終了した時点を、該ファイルを含むスナップショットの識別番号乃至は取得時刻として検索インデックスを検索インデックス記憶手段に保持する検索インデックス生成手段を有する
ことを特徴とする検索インデックス生成装置。
【請求項6】
前記検索インデックス生成手段は、
前記インデックスの新規作成時には、前記ファイルシステム上に存在している最古のスナップショットに含まれる全てのファイルに対し、そのパス名に加えて、前記最古のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう項目を前記検索インデックスに追加する手段と、
続いて前記ファイルシステム上で連続する二つのスナップショットを全て比較し、
各スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加する手段と、
を有する請求項5記載の検索インデックス生成装置。
【請求項7】
前記ファイルシステム上でスナップショットされた場合に、その直前のスナップショットと新たに生成されたスナップショットを比較し、
両スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加する検索インデックス更新手段を
有する請求項5記載の検索インデックス生成装置。
【請求項8】
前記検索インデックス記憶手段の前記検索インデックスから、識別番号ないしは取得時刻が、前記開始時点と前記終了時点で表される存続期間に含まれるスナップショットが前記ファイルシステム上に存在しないファイル状態の項目を削除することで検索インデックスを最適化する最適化手段を
有する請求項5記載の検索インデックス生成装置。
【請求項9】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行うファイルサーバにおける連続スナップショット管理方法であって、
前記ファイルサーバのスナップショット取得手段が、
前記ファイルシステムからスナップショットを取得し、該スナップショットの生成時刻の情報に基づきスナップショットをグループ分けし、現在時刻より定められた時間遡った過去の時点より後に生成されたスナップショットは全て該ファイルシステムに保存し、
前記ファイルサーバのスナップショット削除手段が、
前記過去の時点より以前のスナップショットについては、スナップショットの生成時刻の間隔が、グループごとに定められた時間以上となるよう、前記ファイルシステムのテーブルから段階的にスナップショットを削除する、
ことを特徴とする連続スナップショット管理方法。
【請求項10】
前記ファイルサーバの解放手段が、
前記ファイルシステムのテーブル上でスナップショットを削除した場合でも、スナップショットが使用するディスク上のデータ及びメタデータ領域を直ちには解放せず、予め定められたスケジュールに従って動作するか、もしくはCPUの使用率やディスク入出力量などのシステム負荷が一定水準より低い期間に動作するバックグラウンドプログラムによって、前記領域をスナップショット削除時より遅らせて解放する
請求項9記載の連続スナップショット管理方法。
【請求項11】
前記ファイルサーバが、ファイルの内容や属性、およびそれらを保持する名前空間などの前記ファイルシステムの状態を最新のものに加えて、その任意のスナップショットを、NFS(Network File System)、CIFS (Common Internet File system)といったリモートファイル管理プロトコルを通じ、クライアント端末からネットワーク経由で公開する連続スナップショットを共有するサーバであるとき、
前記ファイルサーバのグループ化手段が、
スナップショットを生成時刻からの現在時刻までの存続期間に応じて複数のグループに分け、前記ファイルシステムに格納し、
前記ファイルサーバの公開手段が、
前記ファイルシステムの各グループから一定個数のスナップショットを選んで公開することで、前記クライアント端末にアクセスさせるスナップショットの数を一定個数以内に抑える、
請求項9または10記載の連続スナップショット管理方法。
【請求項12】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットファイルサーバに対するデータのバックアップを行うクライアント端末におけるバックアップ方法であって、
前記クライアント端末のバックアップ手段が、
ローカルファイルシステム上の記憶手段のディレクトリを前記連続スナップショットファイルサーバのディレクトリと対応付け、該ローカルファイルシステム上のファイル作成または更新または削除、ディレクトリ作成または移動、名前変更を含む各種変更操作を監視し、該操作が発生した順序に従って、前記連続スナップショットファイルサーバに対応する該記憶手段のディレクトリに対して同じ操作を再現することによりバックアップを行うことを特徴とするバックアップ方法。
【請求項13】
ファイルの内容や属性、ディレクトリツリーの構成などの状態の変更を検知し、記憶手段の同一ボリューム内にスナップショットを自動的かつ追加的に作成するファイルシステムに対するスナップショットの管理を行う連続スナップショットフィルサーバに対する、インデックス型検索に用いる検索インデックスを管理する検索インデックス生成装置における検索インデックス構築方法であって、
前記検索インデックス生成装置の検索インデックス生成手段が、
検索対象のファイルの一意な状態を、該ファイルのパス名に加えてその同一状態の持続期間により識別するように、該ファイルのある状態が新規作成もしくは変更により開始された時点と、その状態が変更もしくは消去によって終了した時点を、該ファイルを含むスナップショットの識別番号ないしは取得時刻として検索インデックスを検索インデックス記憶手段に保持する
ことを特徴とする検索インデックス構築方法。
【請求項14】
前記検索インデックス生成手段が、
前記インデックスの新規作成時には、前記ファイルシステム上に存在している最古のスナップショットに含まれる全てのファイルに対し、そのパス名に加えて、前記最古のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう項目を追加し、
続いて前記ファイルシステム上で連続する二つのスナップショットを全て比較し、
各スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスを前記検索インデックス記憶手段に追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加する
を有する請求項13記載の検索インデックス構築方法。
【請求項15】
前記インデックス生成装置の検索インデックス更新手段が、
前記ファイルシステム上でスナップショットされた場合に、その直前のスナップショットと新たに生成されたスナップショットを比較し、
両スナップショット間で作成されたファイルに対しては、その状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加し、
削除されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、
変更されたファイルに対しては、既存のファイルの状態に対応する項目を直後のスナップショットの識別番号ないしは取得時刻を終了時点として前記検索インデックスに設定してクローズし、また新たな状態に対応する項目を該ファイルのパス名と直後のスナップショットの識別番号ないしは取得時刻を開始時点として持つよう前記検索インデックスに追加する
請求項13記載の検索インデックス構築方法。
【請求項16】
前記インデックス生成装置の最適化手段が、
前記検索インデックス記憶手段の前記検索インデックスから、識別番号ないしは取得時刻が、前記開始時点と前記終了時点で表される存続期間に含まれるスナップショットが前記ファイルシステム上に存在しないファイル状態の項目を削除することで検索インデックスを最適化する
請求項13記載の検索インデックス構築方法。
【請求項17】
請求項1乃至3のいずれか1項に記載のファイルサーバを構成する各手段としてコンピュータを機能させるための連続スナップショット管理プログラム。
【請求項18】
請求項4記載のクライアント端末を構成する手段としてコンピュータを機能させるためのバックアッププログラム。
【請求項19】
請求項5乃至8のいずれか1項に記載の検索インデックス生成装置を構成する手段としてコンピュータを機能させるためのインデックス構築プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate


【公開番号】特開2011−204008(P2011−204008A)
【公開日】平成23年10月13日(2011.10.13)
【国際特許分類】
【出願番号】特願2010−70622(P2010−70622)
【出願日】平成22年3月25日(2010.3.25)
【出願人】(000004226)日本電信電話株式会社 (13,992)
【Fターム(参考)】