JP4842632B2 - ファイル管理装置及び記憶システム - Google Patents

ファイル管理装置及び記憶システム Download PDF

Info

Publication number
JP4842632B2
JP4842632B2 JP2005361977A JP2005361977A JP4842632B2 JP 4842632 B2 JP4842632 B2 JP 4842632B2 JP 2005361977 A JP2005361977 A JP 2005361977A JP 2005361977 A JP2005361977 A JP 2005361977A JP 4842632 B2 JP4842632 B2 JP 4842632B2
Authority
JP
Japan
Prior art keywords
file
search
keyword
virtual
hierarchy
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
JP2005361977A
Other languages
English (en)
Other versions
JP2007164597A (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 JP2005361977A priority Critical patent/JP4842632B2/ja
Priority to US11/399,376 priority patent/US7567969B2/en
Publication of JP2007164597A publication Critical patent/JP2007164597A/ja
Priority to US12/499,944 priority patent/US8224880B2/en
Application granted granted Critical
Publication of JP4842632B2 publication Critical patent/JP4842632B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems
    • G06F16/1824Distributed file systems implemented using Network-attached Storage [NAS] architecture
    • 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/99931Database or file accessing
    • Y10S707/99933Query processing, i.e. searching
    • Y10S707/99936Pattern matching access

Description

本発明は、ファイル管理装置及び記憶システムに関し、例えばNAS(Network Attached Storage)機能が搭載されたストレージ装置を含む記憶システムに適用して好適なものである。
近年、NASを使用したファイル共有サービスのニーズは年々高まっている。また、かかるファイル共有サービスを提供するネットワークシステムでは、共有されるファイルの容量の増大に伴ってNASへのアクセスも増加の傾向にある。
このような状況のもと、近年では、複数のNASインタフェースを備えるストレージシステムにおいて、これらNASインタフェースに、ディスクブロック単位のI/O要求を処理するブロックインタフェースと、ファイル単位のI/O要求を処理するファイルサーバを搭載したファイルインタフェースの少なくとも一方を搭載すると共に、ディスク上に複数のファイルサーバがアクセス可能なファイルシステムを構築し、共有メモリ上に、ファイルシステムの変更ログを保持するログ格納領域と、ファイルシステムの排他制御及びログ格納領域の管理を行なう管理用のファイルサーバに関連する情報を保持する管理ファイルサーバ情報格納領域とを構築することが提案されている(特許文献1参照)。
そして、この方法によれば、複数のNASインタフェースが同一のファイルシステムにアクセスでき、障害発生時にもデータが失われることない高い信頼性を得られるストレージシステムを得ることができる。
特開2003−162439号公報
ところで、かかるNASインタフェースを備える従来のストレージシステムでは、例えばユーザが頻繁に使用するファイルをコピーして別ディレクトリに格納するという用法により、ファイルが2重3重に維持され、この結果ストレージシステムに必要とされる容量が倍化する傾向がある。
これらを防ぐ手段としては、特定ファイルを関連付ける方法や、ショートカットと呼ばれるソフトリンクを利用する方法などが考えられるものの、いずれもユーザの手間を増加させる方法であり、有効に用いられているとは言えない。
本発明は以上の点を考慮したもので、ストレージ装置におけるファイルの多重化を防止し、ストレージ装置の記憶容量を効率的に利用可能とするファイル管理装置及び記憶システムを提案しようとするものである。
かかる課題を解決するため本発明においては、ストレージ装置に格納されたファイルを管理するファイル管理装置において、それぞれ1又は複数のキーワードを含む複数種類の分類リストを管理するための第1の管理情報と、仮想的なファイルツリーの各階層に対して各ユーザ毎にそれぞれ設定された前記分類リストの種類を管理するための第2の管理情報とを記憶する記憶部と、クライアント装置から与えられるディレクトリのリスト検索要求に応答し、前記第1及び第2の管理情報を参照して、対応するユーザについて、前記リスト検索要求に応じた前記階層に対して設定された前記分類リストを前記クライアント装置に送信する制御部とを設けるようにした。
この結果このファイル管理装置によれば、クライアント装置からのアクセス方式を変更することなく、ストレージ装置におけるディレクトリ構造をユーザに合わせて柔軟に設定することが可能となる。
さらに本発明においては、ファイルデータを記憶するストレージ装置と、前記ストレージ装置に対して前記ファイルデータを読み書きするクライアント装置とから構成される記憶システムにおいて、前記ストレージ装置は、それぞれ1又は複数のキーワードを含む複数種類の分類リストを管理するための第1の管理情報と、仮想的なファイルツリーの各階層に対して各ユーザ毎にそれぞれ設定された前記分類リストの種類を管理するための第2の管理情報とを記憶する記憶部と、前記クライアント装置から与えられるディレクトリのリスト検索要求に応答し、前記第1及び第2の管理情報を参照して、対応するユーザについて、前記リスト要求に応じた階層に対して設定された前記階層に対して設定した前記分類リストを前記クライアント装置に送信する制御部とを備え、前記クライアント装置は、前記ストレージ装置から送信される前記分類リストに含まれる各前記キーワードを、それぞれ仮想的なディレクトリとして表示するようにした。
この結果この記憶システムでは、クライアント装置からのアクセス方式を変更することなく、ストレージ装置におけるディレクトリ構造をユーザに合わせて柔軟に設定することが可能となる。
本発明によれば、ストレージ装置の記憶容量を効率的に利用可能とするファイル管理装置及び記憶システムを実現できる。
以下図面について、本発明の一実施の形態を詳述する。
(1)本実施の形態による記憶システムの構成
図1において、1は全体として本実施の形態による記憶システムを示す。この記憶システム1は、複数のクライアント装置2がネットワーク3を介してストレージ装置4と接続されることにより構成されている。
クライアント装置2は、ストレージ装置4が提供するファイル共有サービスを利用するためのものであり、CPU(Central Processing Unit)10やメモリ11等の情報処理資源を備えたコンピュータ装置により構成される。このクライアント装置2としては、UNIX(登録商標)OS(Operating System)上にNFS(Network File System,登録商標)を設けたNFSクライアント装置2Aや、Windows(登録商標)OS上にCIFS(Common Internet File System,登録商標)を設けたCIFSクライアント装置2Bが適用される。
ネットワーク3は、例えばLAN(Local Area Network)、インターネット、公衆回線又は専用回線などから構成される。このネットワーク3を介したクライアント装置2及ストレージ装置4間の通信は、TCP/IP(Transmission Control Protocol/Internet Protocol)プロトコルに従って行われる。
ストレージ装置4は、例えばNASとして構成されるもので、NFSやCIFS等の多種類のファイルアクセスプロトコルに対応可能なファイル共有サービスを提供する。ストレージ装置4は、NASヘッドなどとも呼ばれるコントロール部20と、複数の記憶デバイス31を備える記憶部31とから構成される。
コントロール部20は、例えばこのストレージ装置4全体の動作制御を司るCPU21と、各種プログラムが格納されたROM(Read Only Memory)22と、CPU21のワークメモリとして使用されるRAM(Random Access Memory)23と、第1及び第2の通信ネットワーク24,25とを備えている。第1の通信インタフェース24は、ネットワーク3を介してクライアント装置2との間でデータの送受信を行なう上位通信インタフェースとして機能し、第2の通信インタフェース25は、例えばSAN(Storage Area Network)等の通信ネットワーク26A,26Bを介して記憶部30との間でデータの送受信を行なう下位通信インタフェースとして機能する。
CPU21は、ROM22に格納された制御プログラムに基づいて、クライアント装置2から送信されるコマンドを解釈し、そのコマンドに応じた処理を実行する。
記憶部30の記憶デバイス31は、例えばSCSI(Small Computer System Interface)ディスク等の高価なディスク、又はSATA(Serial AT Attachment)ディスクや光ディスク等の安価なディスクから構成される。これら各記憶デバイス31は、コントロール部20によりRAID方式で運用される。1又は複数の記憶デバイス31により構成されるRAIDグループが提供する物理的な記憶領域上に、1又は複数の論理ボリュームが設定される。そして、これら論理ボリュームに、クライアント装置2から送信されたデータが所定大きさのブロックを単位として格納される。
各論理ボリュームには、それぞれ固有の識別子(LUN:Logical Unit Number)が割り当てられる。本実施の形態の場合、データの入出力は、この識別子と、各ブロックにそれぞれ割り当てられるそのブロックに固有の番号(LBA:Logical Block Address)との組み合わせたものをアドレスとして、当該アドレスを指定して行われる。
各記憶デバイス31は、冗長性をもたせて、例えば2系統の通信ネットワーク26A,26Bを介してコントロール部20と接続されている。これによりこのストレージ装置4の場合、一方の通信ネットワーク26A,26Bに障害が発生した場合においても、他方の通信ネットワーク26B,26Aを介してコントロール部20が各記憶デバイス31にアクセスできるようになされている。
なお、図1は、ストレージ装置4内に記憶部30を設けた場合について示しているが、記憶部30の全部又は一部をストレージ装置4の筐体外部に設けるようにしても良い。例えば、多数の記憶デバイス31をアレイ状に配設して構成するディスクアレイ装置を記憶部として利用することもできる。
次に、この記憶システム1におけるストレージ装置4へのデータの入出力の流れについて説明する。クライアント装置2のCPU10は、ユーザ操作によりファイルデータの書込み指令が入力されると、データ書込み要求及び書込み対象のデータをネットワーク3を介してストレージ装置4に送信する。
このデータ書込み要求及び書込み対象のデータを受信したストレージ装置4のCPU21は、このデータ書込み要求に基づいて記憶部30を制御することにより、書込み対象のデータを対応する記憶デバイス31内の指定されたアドレスに書き込ませる。
またクライアント装置2のCPU10は、ユーザ操作によりファイルデータの読出し指令が入力されると、データ読出し要求をネットワーク3を介してストレージ装置4に送信する。
このデータ読出し要求を受信したストレージ装置4のCPU21は、このデータ読出し要求に基づいて記憶部30を制御することにより、読出し対象のファイルデータを対応する記憶デバイス31の指定されたアドレスから読み出し、これをネットワーク3を介して対応するクライアント装置2に送信する。
(2)記憶システムにおけるファイル検索システム
(2−1)各種テーブルの構成
次に、記憶システム1におけるファイル検索システムについて説明する。この実施の形態の記憶システム1の場合、ストレージ装置4に対してユーザごとに仮想的なファイルツリー(以下、これを仮想ファイルツリーと呼ぶ)を設定することができ、各ユーザが、自己が設定したこの仮想ファイルツリーに従って所望のファイルを検索することができるようになされている。
そのための手段として、ストレージ装置4は、図2に示すように、分類リストテーブル40、ユーザ仮想ディレクトリテーブル50、iノード−キーワードテーブル60及びfd(ファイルディスクリプタ)−iノード変換テーブル70をRAM23内に保持すると共に、検索エンジン80をROM22内に保持している。
このうち分類リストテーブル40は、後述の分類リストを管理するためのテーブルであり、図3に示すように、「分類リスト番号」フィールド41、「分類リスト名称」フィールド42及び「分類キーワード」フィールド43から構成されている。そして、「分類キーワード」フィールド43には、ユーザのデータファイルの属性をいくつかカテゴリに分類した場合における、そのカテゴリに属する属性(以下、これをキーワードと呼ぶ)が格納され、「分類リスト名称」フィールド42には、そのカテゴリに属するキーワードを含むリスト(以下、これを分類リストと呼ぶ)のリスト名称が格納される。
例えば、この図3の例の場合、ファイルの属性は大きく「時期」、「製品系列」、「製品属性」、「業務系列」といった分類リストに分類されていることが示されている。そして「時期」の分類リストには「2004」、「2005」及び「2006」のキーワードが含まれ、「製品系列」の分類リストには、「P100」及び「P200」のキーワードが含まれ、「製品属性」の分類リストには、「性能」、「価格」及び「仕様」のキーワードが含まれ、「業務系列」の分類リストには、「発表」、「開発」及び「生産」のキーワードが含まれていることが示されている。
さらに分類リストテーブルの「分類リスト番号」フィールド41には、それぞれ対応する分類リストのエントリ番号(以下、これを分類リスト番号と呼ぶ)が格納されている。
一方、ユーザ仮想ディレクトリテーブル50は、ユーザにより設定された仮想ファイルツリーを管理するためのテーブルであり、図4に示すように、「ユーザ」フィールド51及び「分類リスト番号」フィールド52から構成される。
このうち「ユーザ」フィールド51には、その仮想ファイルツリーを設定したユーザのユーザ名が格納される。また「分類リスト番号」フィールド52は、「第1階層(1st)」フィールド53、「第2階層(2nd)」フィールド54及び「第3階層( rd)」フィールド55の3つのフィールドに分けられており、これらのフィールド53〜55に、それぞれそのユーザがかかる仮想ファイルツリーの第1〜第3階層にそれぞれ設定した各分類リストの種類(分類リスト番号)が格納される。
例えば、図4の例において、「Tanaka」は、仮想ファイルツリーとして、第1階層目に分類リスト番号が「♯003」である「製品属性」という分類リストを設定し、第2階層目に分類リスト番号が「♯002」である「製品系列」という分類リストを設定している。従って、「Tanaka」の仮想ファイルツリーでは、図2に示すように、「root」のサブディレクトリとして「性能」、「価格」及び「仕様」が存在し、これらのサブディレクトリとして「P100」及び「P200」が存在し、これら「P100」及び「P200」等のディレクトリ内にファイル(例えば「P100性能アナウンス.xls」)がそれぞれ格納されることとなる。
また図4の例において、「Satou」は、仮想ファイルツリーとして、第1階層目に分類リスト番号が「♯002」である「製品系列」という分類リストを設定し、第2階層目に分類リスト番号が「♯004」である「業務系列」という分類リストを設定し、第3階層目に分類リスト番号が「♯003」である「製品属性」という分類リストを設定している。従って、「Satou」の仮想ファイルツリーでは、図2に示すように、「root」のサブディレクトリとして「P100」及び「P200」が存在し、これらのサブディレクトリとして「発表」、「開発」及び「生産」が存在し、さらにこれらのサブディレクトリとして「性能」、「価格」及び「仕様」が存在し、これら「性能」、「価格」及び「仕様」のディレクトリ内にそれぞれファイル(例えば「P100性能アナウンス.xls」)が格納されることとなる。
他方、iノード−キーワードテーブル60は、各ファイルのiノード情報と、当該ファイルに対応付けられたキーワードとを管理するためのテーブルであり、ストレージ装置4に格納されたすべてのファイルが登録されている。
このiノード−キーワードテーブル60は、図5に示すように、「iノード番号」フィールド61、「iノード情報」フィールド62及び「ファイルキーワード」フィールド63から構成される。このうち「iノード情報」フィールド62には、対応するファイル(ファイルを含む)のファイル名、所有者、ファイルサイズ、ファイルアドレス及び最終更新時間などが格納され、「iノード番号」フィールド61には、そのファイルに割り当てられたiノード番号が格納される。
また「ファイルキーワード」フィールド63には、各ユーザがそれぞれ作成した仮想ファイルツリーにおいて、そのファイルの上位階層を構成するすべてのディレクトリのディレクトリ名(つまり図3について上述したキーワード)が格納される。例えば図2の例では、「Tanaka」によって設定された仮想ファイルツリーでは、「性能」というディレクトリに「P100」というディレクトリが格納され、この「P100」というディレクトリに「P100性能アナウンス.xls」というファイルが格納されている。従って、この「P100性能アナウンス.xls」というファイルの「ファイルキーワード」フィールド63には、「P100」及び「性能」というキーワードが格納される。
また、この「P100性能アナウンス.xls」というファイルは、「Satou」によって設定された仮想ファイルツリーでは、「性能」というディレクトリに格納され、このディレクトリは「発表」というディレクトリに格納され、さらにこのディレクトリは「P100」というディレクトリに格納されている。従って、このファイルの「ファイルキーワード」フィールド63には、「P100」及び「性能」というキーワードの他に、「発表」というキーワードも格納されこととなる。
さらに「ファイルキーワード」フィールド63には、ファイルが新規に作成されたときに付与される識別情報であるファイル系列番号も格納される。このファイル系列番号としては、新規ファイルごとに個別の番号が付与される。
fd−iノード変換テーブル70は、ファイルディスクリプタとiノードとを関連付けるテーブルであり、「ファイルディスクリプタ」フィールド71及び「iノード又はキーワードリスト」フィールド72から構成される。そして、「iノード又はキーワードリスト」フィールド72には、対応するディレクトリ又はファイルのiノード番号又はそのディレクトリ又はファイルに関連するキーワードが格納され、「ファイルディスクリプタ」フィールド72には、そのディレクトリ又はファイルに割り当てられたファイルディスクリプタが表示される。
例えば図6の例の場合には、「Tanaka」が設定した仮想ファイルツリーの「性能」というディレクトリには「10002」というファイルディスクリプタが割り当てられ、「性能」の下階層の「P100」というディレクトリ(「性能、P100」)には「10003」というファイルディスクリプタが割り当てられていることが分かる。
(2−2)記憶システムにおけるファイル読出し処理
次に、本実施の形態の記憶システム1におけるファイルの読出し処理について説明する。これに際して、まず、従来の記憶システムにおけるファイルの読出し処理について説明する。
図7は、従来構成の記憶システムにおいて、ユーザがクライアント装置90を用いて従来構成のストレージ装置91内に格納された所望するファイルにアクセスするまでの一連の手順を示したフローチャートである。この図7の例は、図8に示すように、ルートディレクトリ(「root」)のサブディレクトリとして「usr」、「bin」及び「etc」のディレクトリが存在し、「usr」のサブディレクトリとして「dir1」及び「dir2」が存在し、さらに「dir1」内に「file1.txt」等のファイルが格納されている場合を示している。
なお、従来構成のストレージ装置90は、各ディレクトリ又はファイルのiノード情報を管理するための図9に示すようなiノード管理テーブル92と、ファイルディスクリプタを管理するための図6に示すようなfd−iノード変換テーブルとを保持している。iノード管理テーブル92は、iノード番号とiノード情報とを対応付けたものであり、このiノード情報に含まれるアドレス位置に、図10に示すように、対応するディレクトリに格納された各サブディレクトリのディレクトリ名及びiノード番号や、当該ディレクトリに格納されたファイルのファイルデータが格納されている。
例えば図9及び図10の例では、iノード番号が「2」のディレクトリの内容は「aaa」というアドレス位置に格納されており、そこにはiノード番号が「2」のディレクトリのサブディレクトリとして「usr」、「bin」及び「etc」が存在し、これらのiノード番号がそれぞれ「10」、「20」及び「30」であるという情報が書き込まれている。また、このiノード番号を参照して、iノード管理テーブル92を検索すると、「usr」のディレクトリのアドレスが「bbb」であることが分かり、そのアドレス位置には「usr(/usr)」というディレクトリのサブディレクトリとして「dir1」及び「dir2」というディレクトリが存在し、これらのiノード番号がそれぞれ「100」及び「200」であるという情報が書き込まれている。
かかる従来の記憶システムにおいて、ユーザが「file1.txt」というファイルにアクセスする場合、まず「/(ルートディレクトリ)」の下階層のディレクトリ又はファイルを検索すべき旨の検索指示をクライアント装置90に入力する。この結果、クライアント装置90は、かかるディレクトリ又はファイルの検索要求をストレージ装置91に送信する(SP1)。そしてストレージ装置91は、この検索要求を受信すると、iノード管理テーブル92を参照して、対応するアドレス位置から「/」のディレクトリの内容を読み込み、そこに記載されていた「usr」、「bin」及び「etc」というディレクトリの各ディレクトリ名が搭載されたリストをクライアント装置90に送信する(SP2)。かくして、このリスト内容がクライアント装置90のディスプレイに表示される。
次いで、ユーザは、クライアント装置90を操作して、「usr」の下階層のディレクトリ又はファイルを検索すべき旨の指示を入力する。この結果、クライアント装置90は、「/usr」に対するファイルディスクリプタの転送要求を、「/」のファイルディスクリプタ及び「usr」のディレクトリ名と共にストレージ装置91に送信する(SP3)。ストレージ装置91は、この転送要求を受けると、「/usr」のディレクトリにファイルディスクリプタを割り当て、これを「/usr」というディレクトリと対応付けて、fd−iノード変換テーブルに登録する。またCPU12は、この「/usr」のディレクトリに割り当てたファイルディスクリプタをクライアント装置90に送信する(SP4)。
クライアント装置90は、このディスクリプタを受信すると、このファイルディスクリプタを用いて、「/usr」の下階層のディレクトリ又はファイルを検索すべき旨の検索要求をストレージ装置91に送信する(SP5)。そしてストレージ装置91は、この検索要求を受信すると、iノード管理テーブル92を参照して、対応するアドレス位置から「usr」のディレクトリの内容を読み込み、そこに記載されていた「dir1」及び「dir2」というディレクトリの各ディレクトリ名が搭載されたリストをクライアント装置90に送信する(SP6)。かくして、このリスト内容がクライアント装置のディスプレイに表示される。
次いで、ユーザは、クライアント装置90を操作して、「dir1」の下階層のディレクトリ又はファイルを検索すべき旨の指示を入力する。この結果、クライアント装置91は、「/usr/dir1」に対するファイルディスクリプタの転送要求を、「/usr」のファイルディスクリプタ及び「dir1」のディレクトリ名と共にストレージ装置91に送信する(SP7)。ストレージ装置91は、この転送要求を受けると、「/usr/dir1」のディレクトリにファイルディスクリプタを割り当て、これを「/usr/dir1」というディレクトリと対応付けて、fd−iノード変換テーブルに登録する。またCPU12は、この「/usr/dir1」のディレクトリに割り当てたファイルディスクリプタをクライアント装置90に送信する(SP8)。
クライアント装置90は、このディスクリプタを受信すると、このファイルディスクリプタを用いて、「/usr/dir1」の下階層のディレクトリ又はファイルを検索すべき旨の検索要求をストレージ装置に送信する(SP9)。そしてストレージ装置91は、この検索要求を受信すると、iノード管理テーブル92を参照して、対応するアドレス位置から「dir1」のディレクトリの内容を読み込み、そこに記載されていた各ファイル(「file1.txt」を含む)のファイル名が搭載されたリストをクライアント装置90に送信する(SP10)。かくして、このリスト内容がクライアント装置90のディスプレイに表示される。
そこで、ユーザは、クライアント装置90を操作して、「file1.txt」のデータを読み出すべき旨の指示を入力する。この結果、クライアント装置90は、「/usr/dir1/ file1.txt」に対するファイルディスクリプタの転送要求をストレージ装置91に送信する(SP11)。ストレージ装置91は、この転送要求を受けると、「/usr/dir1/ file1.txt」にファイルディスクリプタを割り当て、これを「/usr/dir1/ file1.txt」というファイルと対応付けて、fd−iノード変換テーブルに登録する。またCPU12は、この「/usr/dir1/ file1.txt」に割り当てたファイルディスクリプタをクライアント装置90に送信する(SP12)。
クライアント装置90は、このディスクリプタを受信すると、このファイルディスクリプタを用いて、「/usr/dir1/ file1.txt」の読出し要求をストレージ装置に送信する(SP13)。そしてストレージ装置91は、この読出し要求に基づいて「file1.txt」のファイルデータを対応するアドレス位置から読み出し、これをクライアント装置90に送信する(SP14)。かくして、このファイルデータに基づく「file1.txt」の内容がクライアント装置90のディスプレイに表示される。
一方、図11は、本実施の形態の記憶システム1において、ユーザがクライアント装置2を用いてストレージ装置4内に格納された所望するファイルにアクセスするまでの一連の手順を示したフローチャートである。この例は、ユーザが「Tanaka」であり、この「Tanaka」によって、図2に示した仮想ファイルツリーが設定されている場合を示している。従って、このときストレージ装置4が保持するiノード−キーワード変換テーブル60は図5と同じ内容である。
またこの記憶システム1では、例えば図10の「aaa」や「bbb」又は「ccc」のアドレス位置の記憶領域に該当するような各ディレクトリの内容を示す情報が格納された記憶領域がストレージ装置4内に存在せず、図12に示すように、各ファイルのファイルデータのみがストレージ装置4内に存在する。
かかる条件のもと、「Tanaka」というユーザが「P100性能アナウンス.xls」というファイルにアクセスする場合、ユーザは、「/(ルートディレクトリ)」の下階層のディレクトリ又はファイルを検索すべき旨の検索指示をクライアント装置2に入力する。この結果、クライアント装置2のCPU10(図1)は、かかるディレクトリ又はファイルの検索要求をストレージ装置4に送信する(SP20)。
ストレージ装置4のCPU21(図1)は、このときログイン時におけるユーザの操作等に基づき、そのユーザが「Tanaka」であることを既に認識しており、かかる検索要求を受信すると、分類リストテーブル40及びユーザ仮想ディレクトリテーブル50を参照して、「Tanaka」が第1階層のディレクトリとして設定している分類リスト番号が「♯003」の分類リスト、つまり「製品属性」に属するキーワードが搭載されたリストをクライアント装置2に送信する(SP21)。
この例の場合、「製品属性」内には「性能」、「価格」及び「仕様」等のキーワードが属するため、ストレージ装置4は、これら各キーワードのテキスト列をクライアント装置2に送信することとなる。かくして、クライアント装置2は、これら各キーワードのテキスト列を受信すると、これらを仮想ツリーファイルの第1階層目のディレクトリの各ディレクトリ名としてディスプレイに表示する。
続いて、ユーザは、クライアント装置2を操作して、「性能」の下階層のディレクトリ又はファイルを検索すべき旨の指示を入力する。この結果、クライアント装置2のCPU10は、「/性能」に対するファイルディスクリプタの転送要求を、「/」のファイルディスクリプタ及び「性能」のディレクトリ名と共にストレージ装置に送信する(SP22)。ストレージ装置4のCPU21は、この転送要求を受けると、「/性能」のディレクトリにファイルディスクリプタを割り当て、これを「性能」というキーワードと対応付けて、fd−iノード変換テーブル70(図6)に登録する(SP23)。またCPU12は、この「/性能」のディレクトリに割り当てたファイルディスクリプタをクライアント装置2に送信する(SP24)。
クライアント装置2のCPU10は、このディスクリプタを受信すると、このファイルディスクリプタを用いて、「/性能」の下階層のディレクトリ又はファイルを検索すべき旨の検索要求をストレージ装置4に送信する(SP25)。そしてストレージ装置4のCPU21は、この検索要求を受信すると、分類リストテーブル23及びユーザ仮想ディレクトリテーブル50を参照して、「Tanaka」が第2階層のディレクトリとして設定している分類リスト番号が「♯002」の分類リスト、つまり「製品系列」に属するキーワードが搭載されたリストをクライアント装置2に送信する(SP26)。
この例の場合、「製品系列」内には「P100」及び「P200」等のキーワードが属するため、クライアント装置2のCPU10は、これら各キーワードのテキスト列をクライアント装置2に送信することとなる。かくして、クライアント装置2は、これら各キーワードのテキスト列を受信すると、これらをツリーファイルの第2階層目のディレクトリの各ディレクトリ名としてディスプレイに表示する。
続いて、ユーザは、クライアント装置2を操作して、「P100」の下階層のディレクトリ又はファイルを検索すべき旨の指示を入力する。この結果、クライアント装置2のCPU10は、「/性能/P100」に対するファイルディスクリプタの転送要求を、「/性能」のファイルディスクリプタ及び「P100」のディレクトリ名と共にストレージ装置4に送信する(SP27)。
ストレージ装置4のCPU21は、この転送要求を受けると、「/性能/P100」にファイルディスクリプタを割り当て、このファイルディスクリプタを、現在のディレクトリからルートディレクトリまでのルート上に存在するすべてのディレクトリのディレクトリ名(すなわちキーワード)と対応付けて、fd−iノード変換テーブル70(図6)に登録する(SP28)。従って、この例の場合では、かかるファイルディスクリプタは、「性能」及び「P100」というキーワードと対応付けてfd−iノード変換テーブル70に登録される。またCPU21は、この「/性能/P100」にファイルディスクリプタを割り当てたファイルディスクリプタをクライアント装置2に送信する(SP29)。
クライアント装置2のCPU10は、かかるストレージ装置4からのディスクリプタを受信すると、このファイルディスクリプタを用いて、「/性能/P100」の下階層のディレクトリ又はファイルを検索すべき旨の検索要求をストレージ装置4に送信する(SP30)。
ここで、「Tanaka」が設定した仮想ファイルツリーにおいて、「/性能/P100」の下階層にはディレクトリが存在せず、かかる「/性能/P100」の下階層にはファイルのみが存在する。
そこで、このときストレージ装置4のCPU21は、検索エンジン80(図2)を起動して、そのときクライアント装置2から送信されてきたファイルディスクリプタと対応付けられたキーワード(この例では「性能」及び「P100」)をfd−iノード変換テーブル70から読み出すと共に、iノード−キーワードテーブル60上において、このキーワードと対応付けられた(すなわち、このキーワードが「ファイルキーワード」フィールド63に格納された)ファイルを検索する(SP31)。
またストレージ装置4のCPU21は、この検索により検出された該当するすべてのファイル(「P100性能アナウンス.xls」を含む)のファイル名のテキスト列が搭載されたリストをクライアント装置2に送信する(SP32)。かくして、このリスト内容がクライアント装置2のディスプレイに表示される。
続いて、ユーザは、クライアント装置2を操作して、「P100性能アナウンス.xls」のファイルデータを読み出すべき旨の指示を入力する。この結果、クライアント装置2のCPU10は、「/性能/P100/ P100性能アナウンス.xls」のファイルディスクリプタの転送要求を、「/性能/P100」のファイルディスクリプタと共にストレージ装置4に送信する(SP33)。
ストレージ装置4のCPU21は、この転送要求を受けると、「P100性能アナウンス.xls」にファイルディスクリプタを割り当て、このファイルディスクリプタを「P100性能アナウンス.xls」のiノード番号と対応付けて、fd−iノード変換テーブル70に登録する(SP34)。従って、この図11の例の場合には、かかるファイルディスクリプタは、「16」というiノード番号と対応付けてfd−iノード変換テーブル70に登録されることとなる(図6参照)。またCPU21は、この「P100性能アナウンス.xls」に割り当てたファイルディスクリプタをクライアント装置2に送信する(SP35)。
クライアント装置2のCPU10は、このディスクリプタを受信すると、このファイルディスクリプタを用いて、「P100性能アナウンス.xls」の読出し要求をストレージ装置4に送信する(SP36)。そしてストレージ装置4のCPU21は、この読出し要求に基づいて「P100性能アナウンス.xls」のファイルデータを読み出し、これをクライアント装置2に送信する(SP37)。かくして、このファイルデータに基づく「P100性能アナウンス.xls」の内容がクライアント装置2のディスプレイに表示される。
(2−3)仮想ファイルツリーのカスタマイズ機能
次に、この記憶システム1に搭載された、仮想ファイルツリーのカスタマイズ機能について説明する。この記憶システム1では、ディレクトリ構造を変更するための制御プログラム(以下、これをディレクトリ定義カスタマイズプログラムと呼ぶ)が各クライアント装置2にそれぞれ搭載されており、ユーザがクライアント装置2を用いて自己の仮想ファイルツリーの構造を自由に変更することができるようになされている。
図13は、かかるディレクトリ定義カスタマイズプログラムを起動したときに、クライアント装置2のディスプレイに表示されるGUI(Graphical User Interface)画面(以下、これをディレクトリ構造カスタマイズ画面と呼ぶ)100を示すものである。このディレクトリ構造カスタマイズ画面100では、この記憶システム1において設定可能な仮想ファイルツリーの第1〜第3階層にそれぞれ対応させて、第1〜第3の分類リスト表示ボックス101A〜101Cが表示される。
そして、クライアント装置2のCPU10は、ディレクトリ定義カスタマイズプログラムが起動されると、ストレージ装置4と通信して、そのクライアント装置2を用いているユーザ(図の例では「Tanaka」)について現在設定されている仮想ファイルツリーの第1〜第3階層の分類リストをユーザ仮想ディレクトリテーブル50(図2)から読み出させ、かくして得られたこれら第1〜第3階層の分類リストの名称(分類リスト名称)をそれぞれディレクトリ構造カスタマイズ画面100内の対応する第1〜第3の分類リスト表示ボックス101A〜101C内に表示させる。この際CPU10は、分類リストが設定されていない階層については、その階層と対応する第1〜第3の分類リスト表示ボックス101A〜101C内に「(指定なし)」の文字を表示させる。
またディレクトリ構造カスタマイズ画面100における各第1〜第3の分類リスト表示ボックス101A〜101Cの右横には、それぞれメニューボタン102A〜102Cが表示される。そしてディレクトリ構造カスタマイズ画面100では、このメニューボタン102A〜102Cをクリックすることにより、そのときストレージ装置4に登録されている選択可能な分類リスト(「(指定なし)」を含む)がプルダウンメニュー103として表示させることができる。
ユーザは、このプルダウンメニュー103に表示された分類リスト群の中から所望する分類リストをマウス操作により自由に1つ選択することができ、このとき選択された分類リストが対応する第1〜第3の分類リスト表示ボックス101A〜101C内に表示される。
そして、ユーザは、同様の操作により第1〜第3階層と対応付けられた各第1〜第3の分類リスト表示ボックス101A〜101C内にそれぞれ所望する分類リスト名称を表示させ、この後、ディレクトリ構造カスタマイズ画面100の右上に表示された「OK」ボタン104をクリックするようにする。
このときクライアント装置2のCPU10は、このディレクトリ構造カスタマイズ画面100を用いて設定された仮想ファイルツリーの第1〜第3階層の各分類リストを設定仮想ファイルツリー情報として、ユーザ仮想ディレクトリテーブル50の更新要求と共にストレージ装置4に送信する。またストレージ装置4のCPU21は、この更新要求を受信すると、当該更新要求と共に与えられる設定仮想ファイルツリー情報に従って、ユーザ仮想ディレクトリテーブル50におけるそのユーザのエントリを更新する。これによりそのユーザの仮想ファイルツリーが、そのときそのユーザによって設定された構造に更新されることとなる。
なお、クライアント装置2のCPU10は、ユーザ操作によりディレクトリ構造カスタマイズ画面100内の仮想ファイルツリーの第1〜第3階層の分類リストが設定された後、当該ディレクトリ構造カスタマイズ画面100内の右上に表示されたキャンセルボタン105がクリックされた場合には、このときディレクトリ構造カスタマイズ画面100において設定された設定内容を廃棄するようになされている。従って、この場合には、ストレージ装置4内に保持されたユーザ仮想ディレクトリテーブル50におけるそのユーザのエントリは更新されない。
(2−4)ファイルコピー機能
図14は、ユーザ操作に応じて、ストレージ装置4内のファイルをコピーする場合に、クライアント装置2及びストレージ装置4において行われる一連の処理手順を示したフローチャートである。この図14においては、「P100性能アナウンス.xls」というファイルをコピー元(以下、コピー元のファイルを単にコピー元ファイルと呼ぶ)とする場合を例に示している。
この場合、クライアント装置2のCPU10は、まず、コピー元ファイルのファイル属性の転送要求(以下、これをファイル属性転送要求と呼ぶ)をストレージ装置4に送信する(SP40)。またストレージ装置4のCPU21は、このファイル属性転送要求を受信すると、そのコピー元ファイルのファイル属性を表すファイル属性情報をクライアント装置2に送信する。ファイル属性としてどのような項目があるかは製品の実装に依るが、本実施の形態の場合には、このファイル属性情報として、iノード−キーワードテーブル60(図5)におけるコピー元ファイルのエントリの「iノード情報」フィールド62(図5)に格納されているiノード情報(ファイル名称及びアドレス等)と、「ファイルキーワード」フィールド63(図5)に格納されているファイル系列番号(「♯12345」)とをクライアント装置2に送信する。
クライアント装置2のCPU10は、かかるファイル属性情報を受信すると、コピー元ファイルのファイルデータの転送要求(以下、これをファイルデータ転送要求と呼ぶ)をストレージ装置4に送信する(SP42)。またストレージ装置4のCPU21は、このファイルデータ転送要求を受信すると、コピー元ファイルのファイルデータを対応する論理ボリュームから読み出し、これをクライアント装置2に送信する(SP43)。
クライアント装置2のCPU10は、かかるコピー元ファイルのファイルデータを受信すると、コピー元ファイルと同じディレクトリ内に新規ファイルを作成すべき旨の要求(以下、これを新規ファイル作成要求と呼ぶ)を、コピー元ファイルが格納されているディレクトリ(「/性能/P100」)のファイルディスクリプタ及び新規ファイルのファイル名称と共にストレージ装置4に送信する(SP44)。
なお、この実施の形態の場合、新規ファイルのファイル名称としては、コピー元ファイルのファイル名称に「update」という文字列が付加された名称が付与される。よって、この図14のようにコピー元ファイルのファイル名称が「P100性能アナウンス.xls」である場合、新規ファイルのファイル名称として、「P100性能アナウンスupdate.xls」というファイル名称が付与されることとなる。
ストレージ装置4のCPU21は、この新規ファイル作成要求を受信すると、新規ファイルを作成して、そのiノード情報をiノード−キーワードテーブル60に登録する(SP45)。具体的に、CPU21は、新規ファイルのiノード情報として、例えばステップSP44において取得した新規ファイルのファイル名称や、そのファイルの所有者などの情報をiノード−キーワードテーブル60(図5)の「iノード情報」フィールド62(図5)に書き込む。
またCPU21は、ステップSP44において取得したコピー元ファイルが格納されているディレクトリのファイルディスクリプタに基づきfd−iノード変換テーブル70を検索して、当該ファイルディスクリプタと対応付けられたキーワード(「性能」及び「P100」)を取得し、これをiノード−キーワードテーブル60における新規ファイルのエントリの「ファイルキーワード」フィールド63(図5)に格納する(SP46)。
さらにCPU21は、新規ファイルにファイルディスクリプタを割り当て、図15に示すように、これをiノード−キーワードテーブル60における新規ファイルのiノード番号(「17」)と対応付けてfd−iノード変換テーブル70に登録する(SP47)。そしてCPU21は、この後新規ファイルに割り当てたファイルディスクリプタをクライアント装置2に送信する(SP48)。
クライアント装置2のCPU10は、この新規ファイルのファイルディスクリプタを受信すると、当該ファイルディスクリプタを用いて、ステップSP43において取得したコピー元ファイルのファイルデータを、ステップSP45においてストレージ装置4が作成したファイルの更新要求と共にストレージ装置4に送信する(SP49)。かくして、ストレージ装置4のCPU21は、かかる更新要求を受信すると、当該更新要求と共に送信されるファイルデータをステップSP45において作成したファイルに上書きするようにして書き込む(SP50)。これによりコピー元ファイルのコピーが、ストレージ装置4内におけるコピー元ファイルと同じディレクトリ内に作成されたこととなる。
またクライアント装置2のCPU10は、かかるファイルデータの送信と並行して、ステップSP48において取得した新規ファイルのファイルディスクリプタを用いて、ステップSP41において取得したコピー元ファイルのファイル属性情報を新規ファイルのファイル属性情報の更新要求と共にストレージ装置4に送信する(SP51)。なお、このファイル属性情報は、上述のようにコピー元ファイルのiノード情報及びファイル系列番号(「♯12345」)から構成されるものである。
そしてストレージ装置4のCPU21は、かかるファイル属性情報を受信すると、このファイル属性情報に含まれるコピー元ファイルのファイル系列番号を抽出し、図16に示すように、このファイル系列番号をiノード−キーワード変換テーブル60(図5)における新規ファイルのエントリの「ファイルキーワード」フィールド63(図5)に格納する(SP52)。なお、iノード情報には、一般的にファイルの最終更新時刻が含まれているため、このような新規ファイルのファイル属性情報の更新の際には、新規ファイルのファイル属性情報に含まれる最終更新時刻も更新されることとなる。
(2−5)ファイル検索支援機能
上述のように、この記憶システム1では、ファイルのコピーを行なうと、そのコピーを行なったユーザの仮想ファイルツリーにおいてコピー元ファイルの上位に存在するすべてのディレクトリのディレクトリ名が新規ファイルのキーワードとして登録される。従って、かかるコピーを行なったユーザは、当該ユーザが設定した仮想ファイルツリーにおいて、コピー元ファイルと同じルートを辿って新規ファイルにアクセスすることができる。
しかしながら、上述のような方法によると、新規ファイルに対して、他のユーザが設定した仮想ファイルツリーにおいて上位階層に存在するディレクトリのディレクトリ名が必ずしもキーワードとして対応付けられるとは限らない。例えば図2及び図11の例の場合、「Tanaka」が作成した「P100性能アナウンスupdate.xls」という新規ファイルには、「Tanaka」が設定した仮想ファイルツリーにおいて上位階層に存在する「性能」及び「P100」というディレクトリの各ディレクトリ名がキーワードとして対応付けられているが、「Satou」が設定した仮想ファイルツリーにおいてコピー元ファイルである「P100性能アナウンス.xls」の上位階層として存在する「発表」というディレクトリのディレクトリ名は対応付けられていない。
このためこの記憶システム1では、あるユーザが作成した新規ファイルに対して、他のユーザがコピー元ファイルと同じルートを辿ってその新規ファイルにアクセスすることができない事態も生ずる。
そこで、この記憶システム1では、ファイルコピーを行なったユーザの仮想ファイルツリーと全く異なる構造の仮想ファイルツリーを設定した他のユーザであっても、かかる新規ファイルに容易にアクセスすることができるように、ユーザのファイル検索を支援するファイル検索支援機能が搭載されている。
この実施の形態の場合、かかるファイル検索支援機能の実行時におけるファイル検索モードとしては、同キーワード検索モード、オールドバージョン(Old Version)検索モード及びニューバージョン(New Version)検索モードの3つのモードが存在する。
このうち同キーワード検索モードは、検索キーワードとしてそのとき対象としているファイル(以下、これを対象ファイルと呼ぶ)のファイル系列番号以外のすべてのキーワードを利用して、これらのキーワードがすべて自己のキーワードとして対応付けられたファイルの検索を行うファイル検索モードである。
またオールドバージョン検索モードは、検索キーワードとして対象ファイルのファイル系列番号を利用して、このファイル系列番号が自己のキーワードとして対応付けられたファイルのうち、最後更新時間が対象ファイルの最終更新時間よりも前のファイルの検索を行なうファイル検索モードである。
さらにニューバージョン検索モードは、検索キーワードとして対象ファイルのファイル系列番号を利用して、このファイル系列番号が自己のキーワードとして対応付けられたファイルのうち、最後更新時間が対象ファイルの最終更新時間よりも後のファイルの検索を行なうファイル検索モードである。
そして、この記憶システム1では、図17に示すように、クライアント装置2のディスプレイにそのユーザの仮想ファイルツリーが表示されている状態において、マウス操作により1つのファイル(以下、これを対象ファイルと呼ぶ)を選択し、その後マウスを右クリックすることによって、図18に示すように、かかる3つのファイル検索モードのモード名が表示されたウインド(以下、これを検索モードメニューウインドと呼ぶ)110を表示させることができる。
これによりユーザは、検索モードメニューウインドウインド110内に表示されたこれら3つのファイル検索モードの中から所望の検索モードをマウス操作により選択することができる。この結果、このとき選択されたファイル検索モードによるファイル検索処理がストレージ装置4において実行され、その検索結果がクライアント装置2のディスプレイに表示される。
この場合において、例えばユーザがファイル検索モードとして、オールドバージョン検索モード又はニューバージョン検索モードを選択した場合には、検索キーワードとして対象ファイルのファイル系列番号以外のキーワードを検索キーワードとして追加するか否かをユーザに確認するための図19に示すようなウインド(以下、追加検索キーワードウインドと呼ぶ)111がクライアント装置2のディスプレイに表示される。
ここで図19は、「Tanaka」が「P100性能アナウンス.xls」というファイルを対象ファイルとしている場合のウインド111の表示例を示したものである。図2に示すように、「Tanaka」の仮想ファイルツリーにおいて、「P100性能アナウンス.xls」の上位階層には「性能」及び「P100」というディレクトリが存在する。その一方で、ステップSPにおいて取得したキーワードには、かかる「性能」及び「P100」以外に「発表」が存在する。
そこで、このような場合、かかる追加検索キーワードウインド111内には、そのユーザの仮想ファイルツリーにおいて対象ファイルの上位階層として存在するディレクトリのディレクトリ名を表すキーワード(「性能」及び「P100」)が既に選択された状態(対応するチェックボックス120内にチェックマーク121が表示された状態)で表示され、これとは別にステップSPにおいて取得したキーワードのうちの残りのキーワード(「発表」)が未選択の状態(対応するチェックボックス120内にチェックマーク121が表示されていない状態)で表示される。
そして追加検索キーワードウインド111では、対応するチェックボックス120内にチェックマーク121が表示されたキーワードについては、当該チェックボックス120をクリックすることによりチェックマーク121を消して、そのキーワードを未選択の状態にすることができ、また対応するチェックボックス120内にチェックマーク121が表示されていないキーワードについては、当該チェックボックス120をクリックすることによりチェックマーク121を表示させて、そのキーワードを選択した状態にすることができる。
かくしてユーザは、かかる追加検索キーワードウインド111内に表示された各キーワードの中から追加的な検索キーワードとして含めたいキーワードを選択した状態に設定した後、追加検索キーワードウインド111内に表示されたOKボタン122をクリックするようにする。これによりこのキーワードを検索キーワードとして含めたファイル検索をストレージ装置4に行わせることができる。また検索キーワードの追加を行なわないときには、追加検索キーワードウインド111内に表示されたすべてのキーワードオールドを未選択の状態に設定した後、OKボタン122をクリックするようにする。これにより対象ファイルのファイル系列番号のみを検索キーワードとするファイル検索をストレージ装置4に行わせることができる。
なお、バージョン検索モード又はニューバージョン検索モードによるファイル検索を中止したいときには、追加検索キーワードウインド111内に表示されたキャンセルボタン123をクリックすれば良く、これによりかかるファイル検索を中止させて、追加検索キーワードウインド111を閉じさせることができる。
図20は、このようなファイル検索支援機能に関するクライアント装置2及びストレージ装置4の一連の処理の処理手順を示すフローチャートである。この実施の形態の場合、クライアント装置2には、図11について上述したようなストレージ装置4とのやり取りの結果として得られた情報に基づいて、そのユーザの仮想ファイルツリーを図17のように表示するための制御プログラムである仮想ファイルツリー表示プログラム130と、かかるファイル検索支援機能を実行するための制御プログラムであるファイル検索支援プログラム131とがメモリ22(図1)内に格納されている。
そしてクライアント装置2のCPU10は、そのユーザが設定した仮想ファイルツリーを仮想ファイルツリー表示プログラム130に基づいてディスプレイに表示している状態において、その表示した仮想ファイルツリー内の1つのファイルが選択されてマウスの右クリックが行なわれると、ファイル検索支援プログラム131に基づいて、図18について上述した検索モードメニューウインド110を表示する。
またCPU10は、かかる表示処理と並行して、ファイル検索支援プログラムに基づいて、そのとき選択されたファイル(対象ファイル)を指定して、そのキーワードを転送すべき旨の転送要求をストレージ装置4に送信する(SP60)。ストレージ装置4のCPU21は、かかるキーワードの転送要求を受信すると、iノード−キーワード検索テーブル60を参照して、そのファイルと対応付けられたキーワードのリストをクライアント装置2に送信する(SP61)。
一方、クライアント装置2のCPU10は、この後検索モードメニューウインド110内に表示した3つのファイル検索モード(同キーワード検索モード、オールドバージョン検索モード及びニューバージョン検索モード)の中から同キーワード検索モードが選択された場合には、対象ファイルを指定する情報(以下、これを対象ファイル指定情報と呼ぶ)と、選択されたファイル検索モードの種類を表す情報(以下、これを選択ファイル検索モード情報と呼ぶ)とをストレージ装置4に送信する。
またCPU10は、このとき同キーワード検索モードではなく、オールドバージョン検索モード又はニューバージョン検索モードが選択された場合には、ステップSP61において取得した対象ファイルのキーワードの情報に基づいて、上述の追加検索キーワードウインド111をディスプレイに表示させる。そしてCPU10は、追加検索キーワードウインド111上において追加的な検索キーワードが選択されて設定された後にこの追加検索キーワードウインド111内のOKボタンがクリックされると、かかる対象ファイル指定情報及び選択ファイル検索モード情報をストレージ装置4に送信する。
この後クライアント装置2のCPU10及びストレージ装置4のCPU21は、対象ファイルのファイル系列番号や他の検索キーワードをそれぞれディレクトリに見立てて図11についてステップSP22〜ステップSP31までの処理と同様の処理を実行することにより、条件を満たすファイルを検索する。
この結果、例えばファイル検索モードとして同キーワード検索モードが指定されていた場合には、対象ファイルのファイル系列番号以外のすべてのキーワード対応付けられたファイルが検出され、ファイル検索モードとしてオールドバージョン検索モードが指定されていた場合には、対象ファイルのファイル系列番号と、図19について上述した追加検索キーワードウインド111を用いて設定されたすべてのキーワードとが対応付けられたファイルであって、最終更新時間が対象ファイルよりも前のファイルが検出される。さらにファイル検索モードとしてニューバージョン検索モードが指定されていた場合には、対象ファイルのファイル系列番号と、図19について上述した追加検索キーワードウインド111を用いて設定されたすべてのキーワードとが対応付けられたファイルであって、最終更新時間が対象ファイルよりも後のファイルが検出される。
その後ストレージ装置421のCPUは、このようなクライアント装置2と連携した検索処理により検出した条件を満たすファイルの一覧(以下、これを検索ファイル一覧と呼ぶ)にファイルディスクリプタを付与し、検索ファイル一覧を擬似的なディレクトリとしてfd−iノード変換テーブルに登録すると共に(SP63)、この検索ファイル一覧に付与したファイルディスクリプタをクライアント装置に送信する(SP64)。
これによりクライアント装置2では、このファイルディスクリプタを用いてストレージ装置4に検索ファイル一覧の転送要求を送信することにより、当該検索ファイル一覧を取得し、これをディスプレイに可視表示することが可能となる。
(3)本実施の形態の効果
以上の構成において、ストレージ装置4は、クライアント装置2から与えられるディレクトリのリスト検索要求に応答し、RAM23に保持した分類リストテーブル40及びユーザ仮想ディレクトリテーブル50を参照して、対応するユーザについて、リスト検索要求に応じた階層に対して設定された分類リストを当該クライアント装置に送信し、クライアント装置2は、ストレージ装置4から送信される分類リストに含まれる各キーワードを、それぞれ仮想的なディレクトリとして表示する。
従って、この記憶システム1では、クライアント装置2からのアクセス方式を変更することなく、ストレージ装置4におけるディレクトリ構造(ファイルツリーの構造)をユーザごとに柔軟に設定することが可能となる。よって、この記憶システム1では、ファイルを所望のディレクトリに保存することができるため、ユーザがファイルを多重化して自己の都合に合わせて複数のディレクトリに保持することを有効に防止することができ、かくしてストレージ装置の記憶容量を効率的に利用可能とする記憶システムを実現できる。
またこの記憶システム1では、図21に示すように、iノード−キーワードテーブル60及びファイルデータを別個の論理ボリュームに格納することができ、これらの論理ボリュームを拡張することでiノード−キーワードテーブルに登録するエントリ数や、ファイルデータ量をストレージが認識可能な最大容量まで拡張することができるため、従来問題となっていたiノード不足によるファイルの作成制限の発生を有効に防止することができる。この場合において、iノードキーワードテーブル60における各エントリの大きさを固定長(例えば128〔kbyte〕)に固定することによって、iノード−キーワードテーブル60内の各エントリに対するアクセス制御を容易化することができる。
(4)他の実施の形態
なお上述の実施の形態においては、仮想ファイルツリーのツリー構造を最大4階層とするようにした場合について述べたが、本発明はこれに限らず、5階層以上の仮想ファイルツリーを設定できるようにして良い。
また上述の実施の形態においては、それぞれ1又は複数のキーワードを含む複数種類の分類リストを管理するための第1の管理情報としてのiノード−キーワードテーブル60と、仮想ファイルツリーの各階層に対して各ユーザがそれぞれ設定した分類リストの種類を管理するための第2の管理情報としてのユーザ仮想ディレクトリテーブル50と、各ユーザがそれぞれ設定した仮想的なファイルツリーにおいて、ファイルの上位階層を構成するすべての仮想的なディレクトリのディレクトリ名であるキーワードを当該ファイルと対応付けて管理するための第3の管理情報としてのiノード−キーワードテーブル60とを記憶する記憶部として、RAM23を適用するようにした場合について述べたが、本発明はこれに限らず、この他種々の記憶デバイスを広く適用することができる。
さらに上述の実施の形態においては、クライアント装置2から与えられるディレクトリのリスト検索要求に応答し、iノード−キーワードテーブル60及びユーザ仮想ディレクトリテーブル50を参照して、対応するユーザが仮想ファイルツリーの対応する階層に対して設定した分類リストをクライアント装置2に送信する制御部として、ストレージ装置4全体の動作制御を司るCPU21を適用するようにした場合について述べたが、本発明はこれに限らず、CPU21とは別個にかかる制御部を設けるようにしても良い。
さらに上述の実施の形態においては、仮想ファイルツリーの各階層のキーワード定義をユーザごとに設定できるようにした場合について述べたが、本発明はこれに限らず、ユーザごとに加え又は代えて、仮想ファイルツリーの各階層のキーワード定義を複数のユーザからなるグループごとに設定できるようにしても良い。
さらに上述の実施の形態においては、仮想ファイルツリーの各階層のキーワード定義をユーザ自身が設定できるようにした場合について述べたが、本発明はこれに限らず、ユーザ自身に加え又は代えて、仮想ファイルツリーの各階層のキーワード定義をユーザを管理する管理者が設定できるようにしても良い。
本発明は、NAS機能が搭載されたストレージ装置を含む記憶システムに広く適用することができる。
本実施の形態による記憶システムを示すブロック図である。 ストレージ装置の内部構成及び仮想ファイルツリーの説明に供する概念図である。 分類リストテーブルを示す概念図である。 ユーザ仮想ディレクトリテーブルを示す概念図である。 iノード−キーワードテーブルテーブルを示す概念図である。 fd−iノード変換テーブルテーブルを示す概念図である。 従来構成の記憶システムにおけるファイル読出し処理の説明に供するフローチャートである。 従来構成の記憶システムにおけるファイル読出し処理の説明に供する概念図である。 従来構成の記憶システムにおけるiノード管理テーブルを示す概念図である。 従来構成の記憶システムにおけるファイル読出し処理の説明に供する概念図である。 本実施の形態の記憶システムにおけるファイル読出し処理の説明に供するフローチャートである。 本実施の形態の記憶システムにおけるファイル読出し処理の説明に供する概念図である。 ディレクトリ構造カスタマイズ画面の説明に供する平面図である。 記憶システムにおけるファイルコピー機能の説明に供するフローチャートである。 記憶システムにおけるファイルコピー機能の説明に供する概念図である。 記憶システムにおけるファイルコピー機能の説明に供する概念図である。 記憶システムにおけるファイル支援機能の説明に供する略線図である。 検索モードメニューウインドの説明に供する略線図である。 追加検索キーワードウインドを示す略線図である。 記憶システムにおけるファイル支援機能の説明に供するフローチャートである。 他の実施の形態の説明に供する概念図である。
符号の説明
1……記憶システム、2,2A,2B,90……クライアント装置、3……ネットワーク、4,91……ストレージ装置、10,21……CPU、11……メモリ、20……コントロール部、30……記憶部、31……記憶デバイス、40……分類リストテーブル、50……ユーザ仮想ディレクトリテーブル、60,140……iノード−キーワードテーブル、70……fd−iノード変換テーブル、100……ディレクトリ構造カスタマイズ画面、110……検索モードメニューウインド、111……追加検索キーワードウインド、130……仮想ファイルツリー表示プログラム、131……ファイル検索支援プログラム。

Claims (10)

  1. ストレージ装置に格納された複数の属性を有するファイルを管理し、
    ユーザごとに設定され、第1の階層と、前記第1の階層の下位の階層である第2の階層とを有する仮想的なファイルツリーを提示し、
    前記第1の階層に属する仮想的なディレクトリのリスト検索要求を送信し、当該検索要求により受信した前記仮想的なディレクトリのリストに含まれる第2の階層に属する仮想的なディレクトリのリスト検索要求または前記仮想的なディレクトリのリストに含まれるファイルの読出し要求を送信するクライアント装置と接続され、
    情報を記憶する記憶部と、前記クライアント装置からの要求を制御する制御部とを備えるファイル管理装置において、
    前記記憶部は、
    分類リストの識別子と、前記属性をカテゴリに分類したときのカテゴリの名称である分類リスト名称と、前記カテゴリに含まれる1又は複数の前記属性を表すキーワードを含む分類リストを管理するための第1の管理情報と、
    前記第1の階層に対応する前記分類リストの識別子と、前記第2の階層に対応する前記分類リストの識別子とユーザごとに管理するための第2の管理情報と、
    前記仮想的なファイルツリーに属するファイルと、当該ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードと、新規に記憶する前記ファイルに対してそれぞれ付与された識別情報とを対応付けて管理するための第3の管理情報と
    を記憶し、
    前記制御部は、
    前記仮想的なファイルツリーの各階層を各カテゴリと対応付け、前記階層に属する仮想的なディレクトリのディレクトリ名と各カテゴリに分類される属性を表す前記キーワードとを対応付けて管理し、
    前記クライアント装置から前記第1の階層に属する前記仮想的なディレクトリのリスト検索要求を受信した場合、
    前記第2の管理情報を参照し、前記リスト検索要求を送信したユーザについて設定された前記第2の階層に対応する前記分類リストの識別子を取得し、
    前記第1の管理情報を参照し、前記取得した分類リストの識別子に対応する前記分類リストを取得し、
    前記取得した分類リストを前記クライアント装置に送信し、
    前記記憶部は、
    第1のファイルのコピーである第2のファイルの書込み要求を受信した場合、
    前記第2のファイルと、前記第1のファイルと対応付けられたキーワードとを対応付けた管理情報と、
    前記第2のファイルと、前記第1のファイルの前記識別情報である第1の系列番号とを対応付けた管理情報と
    を含む前記第3の管理情報を記憶する
    ことを特徴とするファイル管理装置。
  2. 前記制御部は、
    前記クライアント装置から送信される、前記ユーザについて設定された新たな前記仮想的なファイルツリーの構成情報に基づいて、前記第2の管理情報を更新する
    ことを特徴とする請求項1に記載のファイル管理装置。
  3. 前記記憶部は、
    前記ユーザがそれぞれ設定した前記仮想的なファイルツリーにおいて、前記仮想的なファイルツリーに属するファイルと、当該ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードとを対応付けて管理するための第3の管理情報を記憶し、
    前記制御部は、
    前記クライアント装置からの前記ファイルの読出し要求に応じて、対応する前記ユーザについて設定された前記仮想的なファイルツリーにおいて前記ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードを検索キーワードとして、前記第3の管理情報を参照して、前記ファイルを検索する
    ことを特徴とする請求項1に記載のファイル管理装置。
  4. 前記第3の管理情報は、
    各前記ユーザがそれぞれ設定した前記仮想的なファイルツリーに属するファイルと、当該ファイルの最終更新時刻とを管理するための管理情報とを含み、
    前記制御部は、
    検索対象ファイルを指定して行われる前記検索対象ファイルとコピー関係にあるコピーファイルの検索要求に応じて、
    前記第3の管理情報を参照して、前記第1の識別情報と、前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとし、前記クライアント装置から送信されるユーザにより指定された前記検索対象ファイルの最終更新時間との関係を満たす最終更新時間の前記コピーファイルを検索する
    ことを特徴とする請求項1に記載のファイル管理装置。
  5. 前記検索対象ファイルを指定して行われる前記コピーファイルの検索要求に応じて、
    前記検索対象ファイルと対応付けられた前記キーワードを検索キーワードとして、前記第3の管理情報を参照して、前記コピーファイルを検索する第1のモード、
    前記第1の識別情報と前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとして、前記検索対象ファイルの最終更新時間より最終更新時間が前の前記コピーファイルを、前記第3の管理情報を参照して、検索する第2のモード、または、
    前記第1の識別情報と前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとし、前記検索対象ファイルの最終更新時間より最終更新時間が後の前記コピーファイルを、前記第3の管理情報を参照して、検索する第3のモード、
    のうち何れかのモードで前記コピーファイルを検索する
    ことを特徴とする請求項4に記載のファイル管理装置。
  6. ストレージ装置に格納された複数の属性を有するファイルを管理し、
    ユーザごとに設定され、第1の階層と、前記第1の階層の下位の階層である第2の階層とを有する仮想的なファイルツリーを提示し、
    前記第1の階層に属する仮想的なディレクトリのリスト検索要求を送信し、当該検索要求により受信した前記仮想的なディレクトリのリストに含まれる第2の階層に属する仮想的なディレクトリのリスト検索要求または前記仮想的なディレクトリのリストに含まれるファイルの読出し要求を送信するクライアント装置と、
    前記クライアント装置に接続され、
    情報を記憶する記憶部と、前記クライアント装置からの要求を制御する制御部とを備えるファイル管理装置と
    から構成される記憶システムにおいて、
    前記記憶部は、
    分類リストの識別子と、前記属性をカテゴリに分類したときのカテゴリの名称である分類リスト名称と、前記カテゴリに含まれる1又は複数の前記属性を表すキーワードを含む分類リストとを管理するための第1の管理情報と、
    前記第1の階層に対応する前記分類リストの識別子と、前記第2の階層に対応する前記分類リストの識別子とをユーザごとに管理するための第2の管理情報と、
    前記仮想的なファイルツリーに属するファイルと、当該ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードと、新規に記憶する前記ファイルに対してそれぞれ付与された識別情報とを対応付けて管理するための第3の管理情報と
    を記憶し、
    前記制御部は、
    前記仮想的なファイルツリーの各階層を各カテゴリと対応付け、前記階層に属する仮想的なディレクトリのディレクトリ名と各カテゴリに分類される属性を表す前記キーワードとを対応付けて管理し、
    前記クライアント装置から前記第1の階層に属する前記仮想的なディレクトリのリスト検索要求を受信した場合、
    前記第2の管理情報を参照し、前記リスト検索要求を送信したユーザについて設定された前記第2の階層に対応する前記分類リストの識別子を取得し、
    前記第1の管理情報を参照し、前記取得した分類リストの識別子に対応する前記分類リストを取得し、
    前記取得した分類リストを前記クライアント装置に送信し、
    前記記憶部は、
    第1のファイルのコピーである第2のファイルの書込み要求を受信した場合、
    前記第2のファイルと、前記第1のファイルと対応付けられたキーワードとを対応付けた管理情報と、
    前記第2のファイルと、前記第1のファイルの前記識別情報である第1の系列番号とを対応付けた管理情報と
    を含む前記第3の管理情報を記憶する
    ことを特徴とする記憶システム。
  7. 前記制御部は、
    前記クライアント装置から送信される、前記ユーザについて設定された新たな前記仮想的なファイルツリーの構成情報に基づいて、前記第2の管理情報を更新する
    ことを特徴とする請求項6に記載の記憶システム。
  8. 前記記憶部は、
    各前記ユーザがそれぞれ設定した前記仮想的なファイルツリーにおいて、前記仮想的なファイルツリーに属するファイルと、当該ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードとを対応付けて管理するための第3の管理情報を記憶し、
    前記制御部は、
    前記クライアント装置からの前記ファイルの読出し要求に応じて、対応する前記ユーザについて設定された前記仮想的なファイルツリーにおいて前記ファイルの上位階層を構成するすべての前記仮想的なディレクトリのディレクトリ名である前記キーワードを検索キーワードとして、前記第3の管理情報を参照して、前記ファイルを検索する
    ことを特徴とする請求項6に記載の記憶システム。
  9. 前記第3の管理情報は、
    各前記ユーザがそれぞれ設定した前記仮想的なファイルツリーに属するファイルと、当該ファイルの最終更新時刻とを管理するための管理情報とを含み、
    前記制御部は、
    検索対象ファイルを指定して行われる前記検索対象ファイルとコピー関係にあるコピーファイルの検索要求に応じて、
    前記第3の管理情報を参照して、前記第1の識別情報と、前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとし、前記クライアント装置から送信されるユーザにより指定された前記検索対象ファイルの最終更新時間との関係を満たす最終更新時間の前記コピーファイルを検索する
    ことを特徴とする請求項6に記載の記憶システム。
  10. 前記検索対象ファイルを指定して行われる前記コピーファイルの検索要求に応じて、
    前記検索対象ファイルと対応付けられた前記キーワードを検索キーワードとして、前記第3の管理情報を参照して、前記コピーファイルを検索する第1のモード、
    前記第1の識別情報と前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとして、前記検索対象ファイルの最終更新時間より最終更新時間が前の前記コピーファイルを、前記第3の管理情報を参照して、検索する第2のモード、または、
    前記第1の識別情報と前記クライアント装置から送信されるユーザにより指定されたキーワードとを検索キーワードとし、前記検索対象ファイルの最終更新時間より最終更新時間が後の前記コピーファイルを、前記第3の管理情報を参照して、検索する第3のモード、
    のうち何れかのモードで前記コピーファイルを検索する
    ことを特徴とする請求項9に記載の記憶システム。
JP2005361977A 2005-12-15 2005-12-15 ファイル管理装置及び記憶システム Expired - Fee Related JP4842632B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2005361977A JP4842632B2 (ja) 2005-12-15 2005-12-15 ファイル管理装置及び記憶システム
US11/399,376 US7567969B2 (en) 2005-12-15 2006-04-07 File management apparatus and method, and storage system
US12/499,944 US8224880B2 (en) 2005-12-15 2009-07-09 File management apparatus and method, and storage system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005361977A JP4842632B2 (ja) 2005-12-15 2005-12-15 ファイル管理装置及び記憶システム

Publications (2)

Publication Number Publication Date
JP2007164597A JP2007164597A (ja) 2007-06-28
JP4842632B2 true JP4842632B2 (ja) 2011-12-21

Family

ID=38225849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005361977A Expired - Fee Related JP4842632B2 (ja) 2005-12-15 2005-12-15 ファイル管理装置及び記憶システム

Country Status (2)

Country Link
US (2) US7567969B2 (ja)
JP (1) JP4842632B2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080059144A1 (en) * 2006-09-01 2008-03-06 Inphase Technologies Emulation of dissimilar removable medium storage device types assisted by information embedded in the logical format
JP2009237979A (ja) * 2008-03-27 2009-10-15 Hitachi Software Eng Co Ltd 情報処理装置及び方法、並びにプログラム
EP2180401A1 (en) 2008-10-24 2010-04-28 Thomson Telecom Belgium A method at a gateway for selecting and managing a default disk
JP5512489B2 (ja) * 2010-10-27 2014-06-04 株式会社日立ソリューションズ ファイル管理装置及びファイル管理方法
US8990174B2 (en) * 2010-12-09 2015-03-24 Sony Corporation System and method for identifying media assets
US9110917B2 (en) * 2013-01-11 2015-08-18 Red Hat, Inc. Creating a file descriptor independent of an open operation
KR102438329B1 (ko) * 2020-08-06 2022-08-31 주식회사 파수 가상 파일 관리 방법, 장치, 컴퓨터 프로그램 및 기록 매체
KR102617719B1 (ko) * 2023-02-07 2023-12-27 한국과학기술원 파일 정렬 시스템

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04362746A (ja) * 1991-06-10 1992-12-15 Nippon Telegr & Teleph Corp <Ntt> 仮想ディレクトリ装置
JPH05241930A (ja) * 1992-03-03 1993-09-21 Fujitsu Ltd ファイル管理方式
JP3053153B2 (ja) * 1993-09-20 2000-06-19 株式会社日立製作所 文書管理システムのアプリケーション起動方法
JPH1074154A (ja) * 1996-08-30 1998-03-17 Digital Vision Lab:Kk ファイル管理装置
JP2000090105A (ja) * 1998-09-10 2000-03-31 Toshiba Corp 文書管理方法、文書管理・検索システム
JP2000231505A (ja) * 1999-02-10 2000-08-22 Ricoh Co Ltd データオブジェクト群の自動命名方法およびその記憶媒体
JP2003162439A (ja) * 2001-11-22 2003-06-06 Hitachi Ltd ストレージシステム及びその制御方法
JPWO2005081112A1 (ja) * 2004-02-10 2007-10-25 恭治 岩崎 情報処理装置、並びにファイル管理方法及びファイル管理プログラム
JP4041080B2 (ja) * 2004-03-23 2008-01-30 東芝ソリューション株式会社 データ検索装置及びデータ検索プログラム
JP4186876B2 (ja) * 2004-06-02 2008-11-26 船井電機株式会社 チェンジャー型情報記録装置

Also Published As

Publication number Publication date
US20090276423A1 (en) 2009-11-05
US20070156703A1 (en) 2007-07-05
US7567969B2 (en) 2009-07-28
US8224880B2 (en) 2012-07-17
JP2007164597A (ja) 2007-06-28

Similar Documents

Publication Publication Date Title
JP4842632B2 (ja) ファイル管理装置及び記憶システム
US8650168B2 (en) Methods of processing files in a multiple quality of service system
JP4336129B2 (ja) 複数のスナップショットを管理するシステム及び方法
US7111021B1 (en) System and method for efficient space accounting in a file system with snapshots
JP4416821B2 (ja) ネットワーク上でクライアントからアクセス可能なファイルセットの名前空間を維持する分散ファイル・システム
US7966293B1 (en) System and method for indexing a backup using persistent consistency point images
US8316066B1 (en) Shadow directory structure in a distributed segmented file system
JP5068252B2 (ja) ストレージシステムクラスタの複数のボリュームにわたってデータコンテナをストライピングするためのデータ配置技術
JP5046863B2 (ja) 情報処理システム及びデータ管理方法
US7197490B1 (en) System and method for lazy-copy sub-volume load balancing in a network attached storage pool
US7685388B1 (en) Method and system for single pass volume scanning for multiple destination mirroring
US9565254B2 (en) Object location service for network-based content repository
US8984031B1 (en) Managing data storage for databases based on application awareness
JP4787315B2 (ja) データコンテナの中身をクラスタの複数のボリュームにわたってストライピングするためのストレージシステム・アーキテクチャ
JP2007272874A (ja) クラスタ化ファイルシステムにおいてデータのバックアップを取る方法
US7958101B1 (en) Methods and apparatus for mounting a file system
US7707165B1 (en) System and method for managing data versions in a file system
US7424497B1 (en) Technique for accelerating the creation of a point in time prepresentation of a virtual file system
US20070038697A1 (en) Multi-protocol namespace server
US20140136483A1 (en) Method and system for managing metadata in a storage environment
US20110137966A1 (en) Methods and systems for providing a unified namespace for multiple network protocols
JP2004133885A (ja) 複製ボリュームを管理するための方法と装置
JP2003173279A (ja) 記憶装置間のファイル移行方法
TW200303468A (en) Deferred copy-on-write of a snapshot
US20080109619A1 (en) Information provision system and information provision method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20081017

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090213

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110822

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20141014

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees