JP4343669B2 - ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム - Google Patents

ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム Download PDF

Info

Publication number
JP4343669B2
JP4343669B2 JP2003414508A JP2003414508A JP4343669B2 JP 4343669 B2 JP4343669 B2 JP 4343669B2 JP 2003414508 A JP2003414508 A JP 2003414508A JP 2003414508 A JP2003414508 A JP 2003414508A JP 4343669 B2 JP4343669 B2 JP 4343669B2
Authority
JP
Japan
Prior art keywords
file
metadata
name
directory
search
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
JP2003414508A
Other languages
English (en)
Other versions
JP2005174063A (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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP2003414508A priority Critical patent/JP4343669B2/ja
Publication of JP2005174063A publication Critical patent/JP2005174063A/ja
Application granted granted Critical
Publication of JP4343669B2 publication Critical patent/JP4343669B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

本発明は,コンピュータシステムに格納されたファイルへのアクセス技術に関し,特に,利用者の利用状況に応じて動的にディレクトリとファイルの階層構造を構成するファイル管理装置および動的名前空間生成方法に関する。
ファイルシステムとは,コンピュータシステムにおける記憶装置に記録されているデータファイルを管理するソフトウェアであり,その管理対象には,ファイルの他,記憶媒体に設けられた管理領域,管理情報も含まれる。現在広く利用されているMicrosoft Windows のファイルシステムであるNTFS(NT File System)に代表される多くの既存ファイルシステムでは,ファイルは木構造で管理される。
木構造のファイルシステムでは,ルートと呼ばれる“根”をはじまりとして,ディレクトリと呼ばれる“節”と,ファイルである“葉”による階層構造が構成される。ルートには,ディレクトリとファイルが一つ,または複数配置される。ディレクトリは,ファイルや別のディレクトリを含むことができる箱のような役割を持ち,ディレクトリには,ディレクトリとファイルが一つ,または複数配置される。あるディレクトリから見て,自身を含むディレクトリ,つまり,ルートに近い側のディレクトリを以降では“上位ディレクトリ”と表現する。あるディレクトリから見て,自身が含んでいるディレクトリを以降では“下位ディレクトリ”と表現する。
ファイルは,ファイル名という個別の名称を持ち,そのファイルを含むディレクトリ内では一意の名称となる。ディレクトリも同様に,ディレクトリ名という個別の名称を持ち,そのディレクトリを含む上位ディレクトリ内では一意の名称となる。一般にディレクトリ名は,“時間”,“場所”,“分野”など,自身が含んでいるディレクトリやファイルの意味や説明にあたる語が用いられる。
あるファイルの,ルートから順に木構造を辿ったディレクトリの列をパスと呼び,パスを構成するディレクトリ名の列をパス名と呼ぶ。各ファイルは,パス名とファイル名とを組み合わせることで,ファイルシステムの中で一意の名称となる。
なお,下記のRFC1813で規定される特許文献1に記述されているNFTSは,利用者自身の計算機から通信路経由で異なる計算機のファイルシステムを利用することができるものであるが,静的な木構造のファイルシステムである。
NFS Version 3 Protocol Specification (RFC1813)
既存のファイルシステムでは,以下に挙げる課題がある。第一の課題は,“時間”,“場所”,“分野”などのディレクトリの名称として用いるものの上下間係が,利用者が木構造を構成する時点で静的に決定されることにある。利用者は,複数のディレクトリの上下関係を自由に決定することができるが,このことは,木構造を構成する方針をあらかじめ決めておかなければ不統一な階層構造になってしまう可能性があることを意味する。一方,目的のファイルを取得するためにファイル名とパス名が必要になるため,利用者は,そのファイル名やパスに含まれるディレクトリ名だけでなく,ディレクトリ名の木構造における順序を正確に知っていなければならない。
第二の課題は,ファイル名が単独では意味をなさない可能性である。ディレクトリ名は前述の通り,自身が含んでいるディレクトリやファイルの意味や説明にあたる語が用いられる。例えば,“旅行”という名称のディレクトリ内に10個の画像ファイルが含まれる場合,一般に10個の画像ファイルにとって“旅行”という説明は共通である。
この際,利用者は10個の画像ファイルのファイル名を“1”から“10”までの連番にすることが可能である。この連番からなるファイル名は,“旅行”というディレクトリに含まれる限り,順番という意味をなしているといえる。しかし,この中の“5”という名称のファイルを,別の“写真”というディレクトリに複製した場合,“5”という名称は順番という意味を失うとともに,ディレクトリ名によって与えられていた“旅行”という意味も失うことになる。
第三の課題は,パス名やファイル名における意味の重複である。第二の課題で例に挙げた,ファイルの複製によって意味が喪失する問題を解決する一つの手段としては,ファイル名に“旅行”という語を含ませ,“旅行5”をファイル名とすることが考えられる。しかし,この場合,“旅行”というディレクトリの中に“旅行5”というファイルが含まれることになり,パス名とファイル名とで意味が重複してしまう。同様の問題は,パスに含まれる複数のディレクトリの間でも起こり得る。このような冗長な名称による管理は,意味の一貫性を失う可能性が高くなる。
第四の課題は,木構造の再構成の必要性である。ファイルシステムは,特殊な目的の利用でない限り,管理するディレクトリとファイルとが計算機の使用とともに増加する。この際,事前に厳密な設計を行った木構造でない限り,ディレクトリの統合や分割,ディレクトリ名の変更が発生する。例として,“旅行”というディレクトリを,“国内旅行”と“海外旅行”の二つのディレクトリに分割することが挙げられる。第一の課題と同様,利用者は,目的のファイルを取得するために,新しい木構造を正確に知っていなければならない。
第五の課題は,ファイル名の重複の問題である。“風景”というディレクトリに含まれていた“5”というファイルを,第二の課題の例で挙げた“5”という名称のファイルが既に複製されている“写真”というディレクトリに複製することは,複製先の“写真”というディレクトリに“5”というファイル名が重複することになり,同一ディレクトリ内でのファイル名の一意性が保てないため,行うことができない。これは,第二の課題と同様,本来パスを含めて異なる意味を与えられていた二つのファイルが,別のディレクトリへの複製によってファイル名以外の意味が失われたためである。
本発明の目的は,利用者が木構造の正確な構成や,その変更に関する知識を有していなくても目的のファイルを取得できるようにして,前述の第一,第四の課題を解決し,ファイルの移動や複製による,意味や説明の欠落を回避することで前述の第二,第五の課題を解決し,ファイルの意味や説明の冗長性の排除によって一貫性を向上することで前述の第三の課題を解決するファイルシステムを実現することにある。
上記課題を解決するため,本発明は,従来の静的な木構造のファイルシステムではなく,利用者がファイルシステムを利用する際に動的に木構造が構成されるファイルシステムを実現するものである。ファイルの意味について記述したデータのことを,以降では“メタデータ”と表現する。メタデータは,具体的にはファイルの意味を表す「値」または「属性と値の組」からなる1または複数のメタデータ要素のデータ列である。本発明では,ディレクトリやファイルは固定的な名称を持たず,利用者の操作によってファイルに関連するメタデータを,ディレクトリ名またはファイル名として用いる。
すなわち,本発明は,コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するファイル管理装置において,各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,前記メタデータ定義情報記憶手段へのファイルIDとメタデータの登録,前記メタデータ定義情報記憶手段に登録されたファイルIDとメタデータの変更および削除を行う登録手段と,ファイルの検索要求における前記ディレクトリの名称の指定が,前記メタデータ要素のいくつかの指定により行われた場合に,前記メタデータ定義情報記憶手段に記憶されたメタデータの中で,前記ディレクトリの名称として指定されたメタデータ要素をすべて含むメタデータを検索し,検索された各メタデータ中から前記ディレクトリの名称として指定されたメタデータ要素を除いたメタデータ要素の組を検索結果のファイルの名称として定義し,前記ディレクトリの名称と前記検索結果のファイルの名称の一覧を利用者に提示する手段とを備えることを特徴とする。
また,前記ファイル管理装置において,前記メタデータ定義情報記憶手段に登録されるメタデータを構成するメタデータ要素は,ファイルの意味を表す値または属性と値の組であることを特徴とする。
また,前記検索手段は,前記メタデータ定義情報記憶手段を検索した結果のメタデータとそのメタデータに対応するファイルを識別するファイルIDのリストとの組の情報を記憶する検索結果キャッシュ機構を持ち,指定されたメタデータに該当するファイルを前記検索結果キャッシュ機構により特定し,前記検索結果キャッシュ機構により特定できなかった場合に前記メタデータ定義情報記憶手段を検索することを特徴とする。
また,本発明は,コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するとともに,各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,前記ファイルシステムへのファイルの登録手段と,ファイルを操作するファイル操作手段とを備えるコンピュータが,ファイルシステムにおけるディレクトリとファイルとの階層構造を,利用者の利用状況に応じて動的に構成する動的名前空間生成方法であって,前記ファイルの登録手段が,登録対象のファイルのファイルIDと,そのファイルに対して定義される1または複数のメタデータ要素の集合であるメタデータとの組を,前記メタデータ定義情報記憶手段に登録するステップと,前記ファイル操作手段が,前記メタデータ定義情報記憶手段に登録された各ファイルごとのメタデータの中の,利用者から指定されたメタデータ要素の組をディレクトリの名称とし,該メタデータから前記ディレクトリの名称として用いられたメタデータ要素を除いた残りのメタデータ要素の組をファイルの名称として利用者に提示し,前記メタデータ要素の組から構成される,前記ディレクトリの名称と前記ファイルの名称との組によってファイルを特定する処理を行うステップとを有することを特徴とする。
また,本発明は,コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するとともに,各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,前記ファイルシステムへのファイルの登録手段と,ファイルを操作するファイル操作手段とを備えるコンピュータが,ファイルシステムにおけるディレクトリとファイルとの階層構造を,利用者の利用状況に応じて動的に構成する動的名前空間生成方法であって,前記ファイルの登録手段が,登録対象のファイルのファイルIDと,そのファイルに対して定義される1または複数のメタデータ要素の集合であるメタデータとの組を,前記メタデータ定義情報記憶手段に登録するステップと,前記ファイル操作手段が,前記ファイルシステムにおけるファイル操作インタフェースから受け付けたファイル操作要求の種類に応じたファイル操作を行うステップとを有し,前記ファイル操作手段が前記ファイル操作を行うステップでは,前記ファイル操作インタフェースから受け付けたファイル操作要求の種類がディレクトリ内容の取得である場合に,前記ファイル操作要求に含まれるメタデータをメタデータ要素に分割し,分割したメタデータ要素をすべて含むメタデータに対応するファイルIDを前記メタデータ定義情報記憶手段から検索し,検索したファイルIDのリスト,または検索したファイルIDに対応するメタデータ,または検索したファイルIDに対応するメタデータから前記ファイル操作要求に含まれるメタデータ中のメタデータ要素を除いた残りのメタデータを,前記ファイル操作要求の要求元へ返却することを特徴とする。
また,前記ファイル操作インタフェースとして,固定的なディレクトリと固定的なファイル名とを扱う既存のインタフェースを用い,該ファイル操作インタフェースを用いたファイル操作を,ディレクトリとファイル名とが利用者の利用状況に応じて動的に変化するメタデータ操作に変換するステップを有することを特徴とする。
本発明の作用は以下のとおりである。本発明の動的名前空間生成方法は,ファイルシステムにおける木構造を利用者の利用状況に応じて動的に構成する。この動的名前空間生成方法を用いるファイルシステムでは,利用者が,木構造の構成に関する知識を持つ必要がない。また,このファイルシステムは,固定的なデイレクトリ名とファイル名を持たないことを特徴としている。また,このファイルシステムは,ファイルに対するメタデータを利用して,名前空間を生成することを特徴としている。また,このファイルシステムは,単独でも意味を持った名称によって,ディレクトリ内のファイルを識別することを特徴としている。
さらに,本発明を用いたファイルシステムは,同一のファイルに対する重複したメタデータ定義の必要性をなくしたことによる,意味の一貫性確保が容易であることを特徴としている。また,本発明を用いたファイルシステムは,利用者による,従来のインタフェースを用いたファイル操作を,ファイルに対するメタデータ操作へ変換することを特徴としている。
本発明では,利用者が自身の利用目的に合わせて,メタデータ要素を指定する,すなわちディレクトリ内容の取得操作を行うことで,従来のファイルシステムにおける木構造を動的に構成する。これにより,利用者は木構造の正確な構成や,その変更に関する知識を持っていなくてもファイルシステムを利用すること,および,メタデータの更新を行うことが可能であり,前述の第一,第四の課題を解決することができる。
また,本発明では,ファイルの名前は,ディレクトリの名前として利用されていないメタデータ,すなわち利用者によってまだ指定されていないメタデータを用いて決定される。これにより,ファイルは常にディレクトリ内で識別するための適切なファイル名を持つことができ,前述の第二,第五の課題を解決することが可能となる。
本発明では,あるファイルに対する一つのメタデータを,ディレクトリ名としても,ファイル名としても利用することが可能であり,メタデータを重複して定義する必要がない。これにより,意味の一貫性を保つことが容易になり,前述の第三の課題を解決することが可能となる。
下記の実施の形態でも示すように,利用者は従来のファイルシステムと同一のインタフェースを利用して,本発明のファイルサーバからファイルを取得することが可能である。さらに,利用者は,従来のインタフェースによる,従来のファイル操作で,本発明のシステムのメタデータ操作を行うことが可能である。
これらにより,本発明は,利用者に負担をかけることなく,意味や説明の欠落,冗長性を排除した,一貫性の高いファイルシステムを提供することが可能である。
以下,本発明の実施の形態について図面を参照して説明する。図1は,本発明の概要を説明する図である。図1において,ファイル実体管理部10は,ディスク装置111等に格納されたデータの集合であるファイルに対するアクセス機能を提供する手段であり,既存の一般的なオペレーティング・システム(OS)が持つファイル管理機能と同様な機能を持つものである。各ファイルには,ファイルを一意に識別するファイルID(f1,f2,…)が付与され,管理される。
メタデータ定義情報記憶部120は,各ファイルに対して定義された1または複数のメタデータ要素からなるメタデータを,各ファイルを識別するファイルIDとともに記憶する手段である。登録部12は,メタデータ定義情報記憶部120にファイルIDと対応するメタデータの組を登録する処理を行う。
検索部13は,ファイルの操作要求においてメタデータ要素のいくつかが指定されると,その指定されたメタデータ要素を含むメタデータに対応するファイルを,メタデータ定義情報記憶部120から検索し,検索結果のファイルを操作対象として決定する手段である。検索部13は,メタデータ定義情報記憶部120を検索した結果のメタデータとそのメタデータに対応するファイルを識別するファイルIDのリストとの組の情報を記憶する検索結果キャッシュ機構133を持ち,指定されたメタデータに該当するファイルを検索する場合に,まず検索結果キャッシュ機構133を検索することにより,メタデータ検索の高速化を可能としている。
登録部12および検索部13によって,このファイルシステムにおけるディレクトリとファイルとの階層構造が,利用者の利用状況に応じて動的に構成されるようになっている。具体的には,以下のとおりである。
この例では,メタデータ定義情報記憶部120には,ファイルIDがf1のファイルに対して,a1,a2,a3,a4の値を持つ4個のメタデータ要素からなるメタデータが登録されている。ファイルIDがf2のファイルには,a1,a5,a3,a4の値を持つ4個のメタデータ要素からなるメタデータが登録されている。メタデータ要素の内容および個数は,ファイルの登録者がファイルごとに任意に定義することができる。ここでは,メタデータ要素の並びの順番は意味を持たず,利用者は必要に応じてメタデータ要素を並べ替えることができる。
また,メタデータ要素は,属性と値の組として定義することができる。ファイルIDがf3のファイルのメタデータ要素3,4およびf4のファイルのメタデータ要素4が,属性と値の組の例である。ここでは,“属性→値”として表記されており,ファイルIDがf3のファイルのメタデータ要素3の場合,“x1”が属性,“a6”がその属性の値である。
本システムでは,ディレクトリ名とファイル名とがあらかじめ固定的に決まっているのではなく,利用者の利用状況に応じてメタデータ中のメタデータ要素の組から動的に生成される。例えば,ディレクトリとして“a1”のメタデータ要素が指定されると,“a1”のメタデータ要素を含むファイルが,a1のディレクトリ配下にあるファイルとしてすべて抽出される。
図1(B)は,その例を示している。図1(B)においてディレクトリ名として示している“Z:¥a1”における“Z:”は,ディスク装置111の装置名を指定するものであるが,本発明にとっては本質的なものではないため,以下の説明では省略する。検索部13が,“¥a1”のディレクトリ名によってメタデータ定義情報記憶部120を検索すると,“a1”のメタデータ要素を含むf1,f2,f4のファイルが検索結果として得られる。これらの各ファイルをファイル操作インタフェースを介して利用者に提示する場合には,各ファイルのメタデータから“a1”のメタデータ要素を除いたメタデータ要素を“_”で連結したものを,ファイル名とする。すなわち,f1のファイルのファイル名は“a2_a3_a4”となる。また,f2のファイルのファイル名は“a5_a3_a4”となる。また,f4のファイルのファイル名は“a2_a4_a8(x1)”となる。ここでは,メタデータ要素が属性と値の組である場合には,そのメタデータ要素は,“値(属性)”の形式で表示される。
また,例えばディレクトリとして“¥a1¥a2”というように,“a1”と“a2”のメタデータ要素が指定されると,“a1”と“a2”のメタデータ要素を含むメタデータに対応するファイルIDが,“¥a1¥a2”のディレクトリ配下にあるファイルとしてすべて抽出される。この例では,f1とf4のファイルが該当し,これらのファイルの一覧が,それぞれ図1(C)のように“a3_a4”および“a4_a8(x1)”のファイル名で表示されることになる。
同様に,図1(D)のように,ディレクトリとして“¥a3¥a4¥a5”という指定が行われると,f2のファイルのメタデータだけが,“a3,a4,a5”のメタデータ要素を含むので,検索結果はf2のファイルとなり,f3のファイルのメタデータから,ディレクトリで指定された“a3,a4,a5”のメタデータ要素を除いた“a1”のメタデータ要素がファイル名として表示される。
図2は,本発明のシステム構成例を示す図である。図2において,1は利用者が利用するファイルを管理するファイルサーバ,2は利用者が操作を行う利用者端末,300はファイルサーバ1と利用者端末2を結ぶ通信路である。ファイルサーバ1は,ディスク管理部11,登録部12,検索部13を有する。100は後述するファイルサーバにファイルを登録する登録者,200は本発明によるシステムを利用する利用者である。
ディスク管理部11は,図1に示すファイル実体管理部10に相当し,これには,ディスク装置111,ディスクアクセス機構112が含まれる。ディスク装置111は,ファイルを格納し,各ファイルにはディスク装置111上で一意な識別子(以下,ファイルIDという)が付与されている。
登録部12には,メタデータ定義表121,メタデータ登録受付機構122,メタデータ生成機構123が含まれる。メタデータ定義表121は,図1に示すメタデータ定義情報記憶部120に相当し,ファイルIDごとのエントリからなる表(テーブル)である。一つのエントリは,ファイルIDとメタデータで構成される。ファイルIDは,前述のディスク装置111のファイルIDと対応しており,メタデータ定義表121内においても一意な識別子となる。
メタデータは,一つ以上のメタデータ要素からなるデータの列であり,メタデータ要素は「値」または「属性と値の組」のいずれかである。値は,任意の文字列や数値であり,例として“鈴木太郎”や“2003/1/1”などが挙げられる。属性は,値の意味する内容を説明する任意の文字列であり,例として“作成者”や“更新日”などが挙げられる。
検索部13には,メタデータ検索機構131,ファイル操作要求受付機構132,検索結果キャッシュ機構133が含まれる。検索結果キャッシュ機構133には,複数のキャッシュ内容が保持される。一つのキャッシュ内容は,ある“メタデータ”と,そのメタデータがメタデータ定義表121に含まれているファイルの“ファイルIDリスト”の組で構成される。前記“ファイルIDリスト”を,以降では“検索結果列”と表記する。
利用者端末2は,利用者200との間のファイル操作情報に関する入出力を行うファイル操作インタフェース21と,通信路300を介してファイル操作情報に関するファイルサーバ1との通信を行うファイル操作要求部22とを有する。
次に,本システムの動作について説明する。図3は,登録部12の処理フローの一例を示す図である。登録者100は,ファイルサーバ1へ登録するファイルを,登録部12のメタデータ登録受付機構122から登録する。メタデータ登録受付機構122はその命令を受け付ける(ステップS1)。登録者100からの命令を受け付けた登録部12は,命令(登録者の要求)の種類を判定する(ステップS2)。
登録者100からの命令が「登録」の場合には,ステップS3へ進む。ステップS3では,登録を要求されたファイル(実体)のコピーを作成して,そのコピーをディスク管理部11へ渡す(ステップS3)。ディスク管理部11は,ファイルをディスク装置111へ格納し,ディスク装置111上で一意なファイルIDを登録部12へ返す。登録部12は,そのファイルIDを取得する(ステップS4)。
登録部12は,メタデータ登録受付機構122から登録されたファイル情報をメタデータ生成機構123へ移し,メタデータの生成を行う(ステップS5)。登録部12は,ディスク管理部11から渡されたファイルIDと,生成したメタデータの組でメタデータ定義表121のエントリを新規作成し(ステップS6),作成したエントリをメタデータ定義表121に登録する(ステップS7)。
登録者100は,登録部12のメタデータ登録受付機構122から,メタデータ定義表121に登録したメタデータの変更,削除を行うことができる。登録者100が,メタデータ定義表121に登録したメタデータを変更する命令を出した場合,メタデータ登録受付機構122はその命令を受け付ける(ステップS1)。登録部12は,登録者100から受け付けた命令が「変更」であると判断すると(ステップS2),メタデータ定義表121のメタデータを変更し(ステップS8),検索部13へ検索結果キャッシュのクリアを要求する(ステップS9)。これによって,検索部13は,検索結果キャッシュ機構133のキャッシュ内容をクリアする。
また,登録部12は,登録者100から受け付けた命令が「削除」であると判断すると(ステップS2),メタデータ定義表121の指定されたメタデータ(要素)を削除し(ステップS10),該当ファイルIDのメタデータ要素が一つもなくなったかどうかを判定する(ステップS11)。該当ファイルIDのメタデータ要素が1以上残っている場合には,ステップS14へ進み,検索部13へ検索結果キャッシュのクリアを要求する。これによって,検索結果キャッシュ機構133のキャッシュ内容が削除される。
該当ファイルIDに対するメタデータ要素がすべてなくなった場合,登録部12は,そのファイルIDで識別されるファイルの削除要求をディスク管理部11へ送る(ステップS12)。ディスク管理部11は,ディスクアクセス機構112を用いて,ディスク装置111からファイルを削除する。次に,登録部12は,メタデータ定義表121からそのファイルIDのエントリを削除する(ステップS13)。登録部12は,検索部13へ検索結果キャッシュの削除を要求する(ステップS14)。これによって,検索結果キャッシュ機構133のキャッシュ内容が削除される。
図4および図5は,検索部13の処理フローの一例を示す図である。利用者200は,利用者端末2のファイル操作インタフェース21から,従来の階層構造のファイルシステムに対する操作と同様の,ディレクトリ内容の取得,ファイルの取得,ファイルのコピー,ファイルの削除,ファイルの移動,ファイルの新規作成の操作を行うことができる。
前記の各操作の要求には,要求の種別のほか,現在のディレクトリを表すメタデータも含まれる。ファイルの取得,ファイルの削除については,対象となるファイルIDも操作要求に含まれる。
ファイルのコピーについては,対象となるファイルIDに加え,ファイルのコピー先ディレクトリを表すメタデータ,コピー先のファイル名も操作要求に含まれる。ファイルの移動については,対象となるファイルIDに加え,ファイルの移動先ディレクトリを表すメタデータ,移動先のファイル名も操作要求に含まれる。ファイルの新規作成については,作成するファイル名も操作要求に含まれる。
前記の操作は,ファイル操作要求部22から,通信路300を介してファイルサーバ1の検索部13へ渡され,ファイルサーバ1内部で処理が行われる。操作の処理結果は,検索部13から通信路300を介してファイル操作要求部22に返され,ファイル操作インタフェース21に表示される。
利用者端末2のファイル操作要求部22から,ファイルサーバ1へ渡されたファイル操作要求は,検索部13のファイル操作要求受付機構132で受け付けられ(ステップS21),メタデータ検索機構131へ渡される。メタデータ検索機構131では,ファイル操作要求の種類が判断され(ステップS22),ファイル操作要求の種類に応じて,それぞれ以下に説明する処理が行われる。
〔ディレクトリ内容の取得〕
ファイル操作要求が「ディレクトリ内容の取得」のとき(ステップS22),メタデータ検索機構131は,ファイル操作要求に含まれるメタデータを先頭からメタデータ要素単位に分割し,検索メタデータ列を生成する(ステップS23)。次に,メタデータ検索機構131は,検索処理を行う(ステップS24)。この検索処理の詳細ついては図5に従って後述する。
メタデータ検索機構131は,ステップS24の検索処理の後,検索結果が空であるかどうかを調べる(ステップS25)。検索結果が空でなければ,メタデータ検索機構131は,検索結果のファイルIDのリスト,および,各ファイルIDのメタデータ定義表121で定義されているメタデータのうち,ファイル操作要求に含まれるメタデータを除いたものを,検索結果としてファイル操作要求受付機構132へ返す。ファイル操作要求受付機構132は,検索結果を利用者端末2のファイル操作要求部22へ返す(ステップS26)。検索結果が空であるとき,メタデータ検索機構131は,空の検索結果をファイル操作要求受付機構132へ返す。ファイル操作要求受付機構132は,空の検索結果を利用者端末2のファイル操作要求部22へ返す(ステップS27)。
図5を用いて上記ステップS24に示した検索部13の検索処理の詳細を説明する前に,その説明に用いるメタデータ定義表121の例と,検索結果キャッシュ機構133に保持されるキャッシュの例を説明する。図6は,メタデータ定義表の一例を示す図であり,図7は,検索結果キャッシュ機構133のキャッシュの一例を示す図である。
メタデータ定義表121には,例えば図6に示すように,各ファイルIDごとにメタデータ要素のデータ列からなるメタデータが登録されているものとする。図中のA,B,C,…,Eは,各ファイルに対して定義された「値」(「属性と値の組」でもよい)からなるメタデータ要素である。
検索結果キャッシュ機構133は,例えば図7に示すようなメタデータと検索結果列とを記憶する。検索結果キャッシュ機構133は,メタデータ定義表121の検索処理を高速化するために設けられており,一度,メタデータでメタデータ定義表121を検索した結果を記憶している。メタデータ定義表121が更新された場合には,メタデータ定義表121の内容とキャッシュ内容との一貫性維持のために,検索結果キャッシュ機構133におけるキャッシュ内容がクリアされる。
図7の例では,キャッシュaは,メタデータ“A,B,C,D”の検索結果であり,メタデータ“A,B,C,D”と,図6のメタデータ定義表121のメタデータに“A,B,C,D”を含むファイルのファイルIDリストである「2」という検索結果列の対応情報が記憶されている。また,キャッシュbは,メタデータ“A,E”の検索結果であり,メタデータ“A,E”と,図6のメタデータ定義表121のメタデータに“A,E”を含むファイルのファイルIDリストである「1,3,4」という検索結果列の対応情報が記憶されている。また,キャッシュcは,メタデータ“A,C”の検索結果であり,メタデータ“A,C”と,図6のメタデータ定義表121のメタデータに“A,C”を含むファイルのファイルIDリストである「1,2」という検索結果列の対応情報が記憶されている。
図4に示すステップS24の検索処理は,図5に示すように行われる。以下,メタデータ定義表121が図6に示す状態,検索結果キャッシュ機構133のキャッシュが図7に示す状態の場合を例に挙げて,検索部13による処理内容を説明する。
メタデータ検索機構131は,検索結果キャッシュ機構133に,検索メタデータ列の一部,または全部がキャッシュのメタデータと一致するキャッシュ内容があるかを調べる(ステップS241)。
検索メタデータ列の全部がキャッシュのメタデータと一致するキャッシュ内容がある場合,メタデータ検索機構131は,キャッシュに含まれる検索結果列を,検索結果とする(ステップS256)。図8は,検索処理の例を説明するための図である。図8に示す検索メタデータ列が“C,A”の例では,検索メタデータ列と図7に示すキャッシュcのメタデータが一致するため,キャッシュaの検索結果列“1,2”が検索結果となる。
検索メタデータ列の一部だけがキャッシュのメタデータと一致するキャッシュ内容がある場合,メタデータ検索機構131は,キャッシュに含まれる検索結果列(ファイルIDリスト)を,現在の仮検索結果列とする。複数のキャッシュが該当する場合には,検索結果列の要素数が最も小さいキャッシュ内容を採用する。検索結果列の要素数が最も小さいキャッシュ内容も複数存在する場合には,先に検索されたものを採用する。
メタデータ検索機構131は,キャッシュのメタデータを,仮ディレクトリ列とする。さらにメタデータ検索機構131は,検索メタデータ列から,キャッシュのメタデータ(仮ディレクトリ列)と一致したメタデータ要素を取り除き(ステップS242),検索メタデータ列が空になるか,仮検索結果列が空になるまで,後述するキャッシュ確認後の処理を繰り返す(ステップS244〜S254)。
例えば,図8に示す初期の検索メタデータ列が“C,A,E”の例では,検索メタデータ列の一部が,図7に示すキャッシュbおよびキャッシュcと一致する。メタデータ検索機構131は,この二つのキャッシュ内容のうち,検索結果列の要素数が最も小さいキャッシュcのメタデータ“A,C”を仮ディレクトリ列,同じくキャッシュcの検索結果列“1,2”を現在の仮検索結果列とする。次に,検索メタデータ列“C,A,E”から“A,C”を取り除いた“E”を新しい検索メタデータ列(キャッシュ確認後の検索メタデータ列)とする。
検索メタデータ列の一部とも,キャッシュのメタデータと一致するキャッシュ内容がない場合,メタデータ検索機構131は,新規の要求として処理を行う。メタデータ検索機構131は,空の仮ディレクトリ列と,メタデータ定義表121のファイルIDのリストからなる仮検索結果列を生成し(ステップS243),検索メタデータ列が空になるか,仮検索結果列が空になるまで,後述するキャッシュ確認後の処理を繰り返す(ステップS244〜S254)。
例えば,図8に示す初期の検索メタデータ列が“C,A,B”の例では,検索メタデータ列の一部に,キャッシュのメタデータが含まれるキャッシュ内容が図7に示すキャッシュに存在しない。メタデータ検索機構131は,空の仮ディレクトリ列と,図6に示すメタデータ定義表121のファイルIDのリスト“1,2,3,4,5”を仮検索結果列とする。
次に,キャッシュ確認後の処理動作(ステップS244〜S254)を説明する。まず,検索メタデータ列の先頭を検索メタデータ要素とし(ステップS245),その検索メタデータ要素の種類を判定する(ステップS246)。前述の通り,メタデータ定義表121のメタデータ要素には「属性と値の組」,「値」の二通りがある。これに対し,検索メタデータ要素は「属性」,「属性と値の組」,「値」の三通りとする。ここでは,「属性と値の組」を“属性→値”の書式で表記して説明する。
検索メタデータ要素が「属性」の場合,仮検索結果列にファイルIDが含まれ,かつ,そのファイルIDに対応するメタデータ定義表121のメタデータに,検索メタデータ要素で指定された「属性」と同じ属性を用いたメタデータ要素が含まれるファイルIDを抽出する(ステップS247)。例えば,検索メタデータ要素が“作成者→”の場合,“作成者→鈴木太郎”や“作成者→佐藤次郎”などのメタデータ要素が含まれたファイルIDが抽出される。
検索メタデータ要素が「属性と値の組」の場合,仮検索結果列にファイルIDが含まれ,かつ,そのファイルIDに対応するメタデータ定義表121のメタデータに,検索メタデータ要素で指定された「属性と値の組」と同じ組のメタデータ要素が含まれるファイルIDを抽出する(ステップS248)。例えば,検索メタデータ要素が“作成者→鈴木太郎”の場合,“作成者→鈴木太郎”のメタデータ要素が含まれたファイルIDが抽出される。
検索メタデータ要素が「値」の場合,仮検索結果列にファイルIDが含まれ,かつ,そのファイルIDに対応するメタデータ定義表121のメタデータに,検索メタデータ要素で指定された「値」と同じ値を用いたメタデータ要素が含まれるファイルIDを抽出する(ステップS249)。例えば,検索メタデータ要素が“鈴木太郎”の場合,“鈴木太郎”のほか,“作成者→鈴木太郎”や“管理者→鈴木太郎”などの属性が定義されたメタデータ要素が含まれたファイルIDも抽出される。
前記の検索結果によって得られたファイルIDのリストを,新しい仮検索結果列として置き換える(ステップS250)。検索メタデータ要素を,仮ディレクトリ列の最後尾に加え,新しい仮ディレクトリ列として置き換える(ステップS251)。
新しい仮ディレクトリ列と,新しい仮検索結果列の組を,検索結果キャッシュ機構133に登録する(ステップS252)。前記の処理で用いた先頭のメタデータ要素を取り除いたリストを,新しい検索メタデータ列として置き換え(ステップS253),メタデータ検索機構131は,ステップS244からS254までの処理を,検索メタデータ列か仮検索結果列が空になるまで繰り返す。検索メタデータ列が空になった時点の仮検索結果列を,検索結果とする(ステップS255)。仮検索結果列が空であれば,検索結果を空とする。
〔ファイルの取得〕
図4のステップS22において,ファイル操作要求が「ファイルの取得」のとき,メタデータ検索機構131は,ファイル操作要求に含まれるファイルIDのファイル取得要求をディスク管理部11へ送る。ディスク管理部11は,ディスクアクセス機構112を用いて,ディスク装置111からファイルを取得し(ステップS28),検索部13へ返す。検索部13は,取得したファイルの内容を,ファイル操作要求受付機構132から利用者端末2のファイル操作要求部22へ返す(ステップS29)。
〔ファイルのコピー〕
図4のステップS22において,ファイル操作要求が「ファイルのコピー」のとき,メタデータ検索機構131は,ファイル操作要求に含まれるコピー先ディレクトリを表すメタデータを,先頭からメタデータ要素単位に分割する(ステップS30)。次に,メタデータ検索機構131は,ファイル操作要求に含まれるファイルIDのメタデータ定義表121で定義されているメタデータに,前記の分割したコピー先のメタデータ要素,および,ファイル操作要求に含まれるコピー先ファイル名を加える(ステップS31)。そして,検索部13は,検索結果キャッシュ機構133のキャッシュ内容を削除する(ステップS32)。
〔ファイルの削除〕
図4のステップS22において,ファイル操作要求が「ファイルの削除」のとき,メタデータ検索機構131は,ファイル操作要求に含まれる現在のディレクトリを表すメタデータを,先頭からメタデータ要素単位に分割する。次に,メタデータ検索機構131は,ファイル操作要求に含まれるファイルIDのメタデータ定義表121で定義されているメタデータから,前記の分割したメタデータ要素と同一のメタデータ要素を削除する(ステップS34)。
該当ファイルIDのメタデータ要素が一つもなくなった場合には,ステップS35へ進み,一つ以上残っている場合には,ステップS37へ進む(ステップS34)。該当ファイルIDに対するメタデータ要素が0になったならば,検索部13は,そのファイルIDで識別されるファイルの削除要求をディスク管理部11へ送り(ステップS35),ディスク管理部11は,ディスクアクセス機構112を用いて,ディスク装置111からファイルを削除する。検索部13は,メタデータ定義表121から,そのファイルIDのエントリを削除する(ステップS36)。最後に検索部13は,検索結果キャッシュ機構133のキャッシュ内容を削除する(ステップS37)。
〔ファイルの移動〕
図4のステップS22において,ファイル操作要求が「ファイルの移動」のとき,メタデータ検索機構131は,ファイル操作要求に含まれる現在のディレクトリを表すメタデータ,および,ファイル操作要求に含まれる移動先のディレクトリを表すメタデータを,各々先頭からメタデータ要素単位に分割する(ステップS38)。
次に,メタデータ検索機構131は,ファイル操作要求に含まれるファイルIDのメタデータ定義表121で定義されているメタデータから,前記の現在のディレクトリを表すメタデータを分割したメタデータ要素と同一のメタデータ要素を削除する(ステップS39)。また,メタデータ検索機構131は,同じくメタデータ定義表121で定義されているメタデータに,前記の移動先のディレクトリを表すメタデータを分割したメタデータ要素と同一のメタデータ要素,および,ファイル操作要求に含まれる移動先ファイル名を加える(ステップS40)。その後,検索結果キャッシュ機構133のキャッシュ内容を削除する(ステップS41)。
〔ファイルの新規作成〕
図4のステップS22において,ファイル操作要求が「ファイルの新規作成」のとき,メタデータ検索機構131は,ファイル操作要求に含まれる現在のディレクトリを表すメタデータを,先頭からメタデータ要素単位に分割する(ステップS42)。次に,メタデータ検索機構131は,ディスク管理部11へファイルIDの作成を要求し,登録部12へディスク管理部11から取得したファイルIDと,前記のメタデータ要素にファイル操作要求に含まれる新規ファイル名を加えたものを渡し,メタデータ定義表121への登録を要求する(ステップS43,S44)。その後,検索結果キャッシュ機構133のキャッシュ内容を削除する(ステップS45)。
〔本発明の実施例の構成の説明〕
図2に示したファイルサーバ1として,Windows(登録商標)OSがインストールされたパソコン,また,利用者端末2としてWindows OSがインストールされたパソコンとする。ディスクアクセス機構112としてWindows OSのNTFS(NT File System),また,登録部12と検索部13として,本発明を実現するためのアプリケーションソフトウェア,メタデータ定義表121におけるファイルIDとしてNTFSのファイルパス名およびファイル名の組を用いるものとする。
ファイル操作要求受付機構132の外部インタフェースは,WebDAV(RFC2518)に準拠するものとする。前記インタフェースにWebDAVを利用するため,本実施例では,検索部13にWebDAVで渡されるパス名を,ディレクトリを表すメタデータとみなし,ファイル名をファイルIDを特定するための情報として用いる。検索結果キャッシュ機構133としてファイルサーバ1のメモリを用いるものとする。検索結果キャッシュ機構133の容量は有限であるため,LRU(Last Recently Used)方式で領域を管理するものとする。
ファイル操作インタフェース21としてWindows OS付属ソフトウェアのエクスプローラ,ファイル操作要求部22としてWindows OS付属のWebDAV(Web Distributed Authoring and Versioning)クライアント機能のWebフォルダ・ソフトウェア,通信路300はIP(Internet Protocol )による通信網とする。
利用者200がファイル操作インタフェース21(エクスプローラ)を用いて,フォルダを開く,ファイルをダブルクリックする,ファイルのコピーを行う,ファイルの削除を行う,ファイルの移動を行う,の各動作を実行した際,本発明におけるファイル操作要求,すなわちディレクトリ内容の取得,ファイルの取得,ファイルのコピー,ファイルの削除,ファイルの移動の各要求が発生したとみなす。
〔本発明の実施例の動作の説明〕
ここでは,登録者100がファイルの登録を行った際の動作,および,利用者200がファイル操作インタフェース21(エクスプローラ)からファイル操作要求を行った際の動作を説明する。
登録者100がディスクアクセス機構112(NTFS)上の“#1”〜“#10”というファイルを登録部12へ渡す。登録部12は,この10個のファイルをメタデータ定義表121へ登録する。本実施例では,ファイルIDはディスクアクセス機構112上のパス名とファイル名の組とする。登録者100は,各ファイルに対して,例えば図9に示す内容でメタデータ定義を行う。図9のメタデータ定義表121では,最大4個のメタデータ要素(1〜4)を持つ例を示しているが,メタデータ要素の個数はファイルごとに任意に定義することができる。各ファイルに対して定義されるメタデータ要素の順番は階層構造的な意味はなく,必要に応じて並べ換えることができる。
また,図9のメタデータ定義表121では,各メタデータ要素は“写真”,“旅行”,“河口湖”,…というような「値」で定義されているが,例えば“旅行先→河口湖”というような属性(旅行先)と値(河口湖)の組で定義することもできる。
メタデータ要素は,ファイルの形式や他の属性などから自動的に定義することもでき,例えば,ファイルがExif(Exchangeable Image File Format;JEIDA-49)形式の画像ファイルであれば,Exifのタグである画素数,圧縮モード,カメラの機種名,絞り値,シャッター速度,撮影日時などをメタデータの「属性」,その値をメタデータの「値」として,メタデータ要素を追加するような実施も可能である。同様に,ファイルがMP3(MPEG Audio Layer-3)形式の音楽ファイルであれば,ID3v2(RFC3003 )タグである曲名,アルバム名,演奏者名などをメタデータの「属性」,その値をメタデータの「値」として,メタデータ要素を追加することも可能である。
利用者200がファイル操作インタフェース21(エクスプローラ)でフォルダを開くと,WebDAVクライアントは,ディレクトリを引数としたGETコマンドを,ファイル操作要求受付機構132へ送信する。検索部13のメタデータ検索機構131は,GETコマンドの引数であるディレクトリをファイル操作要求に含まれるメタデータとして前述の処理を行う。
検索部13のファイル操作要求受付機構132は,検索結果に含まれる全てのファイルIDについて,ファイルIDに対応する各メタデータ要素を“_”文字で連結したものを,そのファイルIDに対応するファイルのファイル名とし,一覧をWebDAVクライアントへGETコマンドの応答として返す。
例えば,「湖畔の写真を探したい」という目的で,“/湖畔/写真/”というディレクトリに対するGETコマンドが送信された場合,検索部13の検索結果は,「#1」と「#5」の二つのファイルIDとなり,GETコマンドの応答として返されるファイル名は,“旅行_河口湖”と“旅行_十和田湖”の二つとなる。
利用者200がファイル操作インタフェース21でファイルをダブルクリックすると,WebDAVクライアントは,ファイル名を引数としたGETコマンドを,ファイル操作要求受付機構132へ送信する。検索部13のメタデータ検索機構131は,GETコマンドの引数であるファイル名をファイル操作要求に含まれるメタデータとして前述の処理を行う。この際,ファイル名に“_”文字が含まれている場合には,“_”文字を区切り文字としてさらにメタデータ要素へ分割する。
検索部13のファイル操作要求受付機構132は,検索結果のファイルIDに対応するファイルの内容を,ディスクアクセス機構112から読み出し,WebDAVクライアントへGETコマンドの応答として返す。また,検索結果のファイルIDが複数になった場合には,最も値の小さいファイルIDに対して前述の処理を行うものとする。
例えば,「湖畔の写真を探して出てきた一つを見たい」という目的で,“/湖畔/写真/旅行_河口湖”というファイルに対するGETコマンドが送信された場合,検索部13の検索結果は「#1」のファイルIDとなり,このファイルの内容がGETコマンドの応答として返される。
利用者200がファイル操作インタフェース21でファイルをコピーすると,WebDAVクライアントは,コピー元とコピー先を引数としたCOPYコマンドを,ファイル操作要求受付機構132へ送信する。検索部13のメタデータ検索機構131は,COPYコマンドの引数であるコピー先を,コピー先ディレクトリを表すメタデータ,およびコピー先ファイル名を表すメタデータの組として前述の処理を行う。
例えば「河口湖へ旅行に行ったときの愛車の写真に,車とドライブというメタデータを追加したい」という目的で,“/河口湖/旅行/愛車/写真”というファイルを“/車/ドライブ”というファイルとしてコピーするCOPYコマンドが送信された場合,検索部13の検索結果は,「#3」のファイルIDとなり,メタデータ定義表121における前述のファイルIDが示すエントリに対して,“車”,“ドライブ”のメタデータ要素が追加される。
利用者200がファイル操作インタフェース21でファイルを削除すると,WebDAVクライアントは,ファイル名を引数としたDELETEコマンドを,ファイル操作要求受付機構132へ送信する。検索部13のメタデータ検索機構131は,DELETEコマンドの引数であるファイル名をファイル操作要求に含まれるメタデータとして前述の処理を行う。当該ファイルIDに対するメタデータ要素が一つもなくなった場合,検索部13は,そのファイルIDで識別されるファイルの削除要求をディスクアクセス機構112へ送り,ディスク装置111からファイルを削除する。
例えば,“/旅行/河口湖/湖上祭/写真”というファイルを削除するDELETEコマンドが送信された場合,検索部13の検索結果は「#2」というファイルIDとなり,メタデータ定義表121における前述のファイルIDが示すエントリから,“写真”,“旅行”,“河口湖”,“湖上祭”のメタデータ要素が削除される。この際,前述のファイルIDが示すエントリのメタデータ要素がなくなり,該当のファイル,および,メタデータ定義表121におけるエントリも削除される。
利用者200がファイル操作インタフェース21でファイルを移動すると,WebDAVクライアントは,移動元と移動先を引数としたMOVEコマンドを,ファイル操作要求受付機構132へ送信する。検索部13のメタデータ検索機構131は,MOVEコマンドの引数である移動先を,移動先ディレクトリを表すメタデータ,および移動先ファイル名を表すメタデータの組として前述の処理を行う。
例えば,“/写真/旅行/河口湖/愛車”というファイルを“/写真/車/ドライブ”というファイルへ移動するMOVEコマンドが送信された場合,検索部13の検索結果は「#3」のファイルIDとなり,メタデータ定義表121における前述のファイルIDが示すエントリから,“写真”,“旅行”,“河口湖”,“愛車”のメタデータ要素が削除される。次に,同じエントリへ“写真”,“車”,“ドライブ”のメタデータ要素が追加される。
図10および図11は,ファイル操作インタフェース21の表示画面の例を示す図である。利用者端末2においてエクスプローラを起動し,Webフォルダを開くと,図10(A)に示すような,あらかじめ定義されたファイルサーバ1を示すアイコンが表示される。“FS1000”は,ファイルサーバ1のホスト名である。ここで,利用者200が“FS1000”のアイコンをマウスなどによりダブルクリックすると,ファイルサーバ1から,図9に示すメタデータ定義表121の検索結果をもとに,ファイルごとに全てのメタデータ要素を“_”で連結したファイル名の一覧が返却され,ファイル操作インタフェース21の表示画面には,図10(B)に示すようなファイル名一覧が表示される。
ここで,利用者200が,例えばエクスプローラの表示画面のアドレス欄に,“/湖畔/写真”というディレクトリを指定する文字列を追加し,ディレクトリ内容の取得要求を行うと,図11(A)に示すような“旅行_河口湖”と“旅行_十和田湖”の2つのファイル名の一覧が表示画面に表示されることになる。
同様に,図10(B)に示す表示画面のアドレス欄に,“/河口湖”というディレクトリを指定する文字列を追加し,ディレクトリ内容の取得要求を行うと,図11(B)に示すような“写真_旅行_愛車”と“写真_旅行_湖上祭”と“写真_旅行_湖畔”と“写真_旅行_富士山”の4つのファイル名の一覧が表示画面に表示されることになる。
利用者200は,これらの表示画面において,ファイルを選択しダブルクリックすることにより,そのファイルを取得することができる。また,ファイルを選択した後,「コピー」ボタン,「削除」ボタン,「移動」ボタン等をクリックすることにより,ファイルのコピー操作,ファイルの削除操作,ファイルの移動操作等を実行することができる。
上記本発明の実施例で挙げたネットワークファイルシステムとしての構成のほか,登録部12と検索部13をUNIX(登録商標)OSのローカルファイルシステムとして実現し,ファイル操作要求部22にUNIX OSのファイルシステム・マウント機能,ファイル操作インタフェース21としてUNIX OSのシェル,メタデータ定義表121におけるファイルIDとしてローカルファイルシステムのvnodeを利用することも可能である。
実施例によっては,ファイル操作要求部22の機能をファイルサーバ1側に備える構成,検索部13の機能を利用者端末2側に備える構成,ファイルサーバ1と利用者端末2の機能を同一の装置に備える構成も可能である。また,一つのファイル操作要求部22から複数ファイルサーバの検索部13を利用する構成,一つの検索部13が複数のファイル操作要求部22から要求を受け付ける構成をとることも可能である。
以上の登録部12,検索部13等が行う処理は,コンピュータとソフトウェアプログラムとによって実現することができ,そのプログラムをコンピュータ読み取り可能な記録媒体に記録して提供することも,ネットワークを通して提供することも可能である。
本発明の概要を説明する図である。 本発明のシステム構成例を示す図である。 登録部の処理フローの一例を示す図である。 検索部の処理フローの一例を示す図である。 検索部の処理フローの一例を示す図である。 メタデータ定義表の一例を示す図である。 キャッシュの一例を示す図である。 検索処理の例を説明するための図である。 メタデータ定義表の具体例を示す図である。 ファイル操作インタフェースの表示画面の例を示す図である。 ファイル操作インタフェースの表示画面の例を示す図である。
符号の説明
1 ファイルサーバ
2 利用者端末
11 ディスク管理部
12 登録部
13 検索部
21 ファイル操作インタフェース
22 ファイル操作要求部
100 登録者
111 ディスク装置
112 ディスクアクセス機構
121 メタデータ定義表
122 メタデータ登録受付機構
123 メタデータ生成機構
131 メタデータ検索機構
132 ファイル操作要求受付機構
133 検索結果キャッシュ機構
200 利用者

Claims (7)

  1. コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するファイル管理装置において,
    各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,
    前記メタデータ定義情報記憶手段へのファイルIDとメタデータの登録,前記メタデータ定義情報記憶手段に登録されたファイルIDとメタデータの変更および削除を行う登録手段と,
    ファイルの検索要求における前記ディレクトリの名称の指定が,前記メタデータ要素のいくつかの指定により行われた場合に,前記メタデータ定義情報記憶手段に記憶されたメタデータの中で,前記ディレクトリの名称として指定されたメタデータ要素をすべて含むメタデータを検索し,検索された各メタデータ中から前記ディレクトリの名称として指定されたメタデータ要素を除いたメタデータ要素の組を検索結果のファイルの名称として定義し,前記ディレクトリの名称と前記検索結果のファイルの名称の一覧を利用者に提示する手段とを備える
    ことを特徴とするファイル管理装置。
  2. 請求項1記載のファイル管理装置において,
    前記メタデータ定義情報記憶手段に登録されるメタデータを構成するメタデータ要素は,ファイルの意味を表す値または属性と値の組である
    ことを特徴とするファイル管理装置。
  3. 請求項1または請求項2記載のファイル管理装置において,
    前記検索手段は,前記メタデータ定義情報記憶手段を検索した結果のメタデータとそのメタデータに対応するファイルを識別するファイルIDのリストとの組の情報を記憶する検索結果キャッシュ機構を持ち,指定されたメタデータに該当するファイルを前記検索結果キャッシュ機構により特定し,前記検索結果キャッシュ機構により特定できなかった場合に前記メタデータ定義情報記憶手段を検索する
    ことを特徴とするファイル管理装置。
  4. コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するとともに,各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,前記ファイルシステムへのファイルの登録手段と,ファイルを操作するファイル操作手段とを備えるコンピュータが,ファイルシステムにおけるディレクトリとファイルとの階層構造を,利用者の利用状況に応じて動的に構成する動的名前空間生成方法であって,
    前記ファイルの登録手段が,登録対象のファイルのファイルIDと,そのファイルに対して定義される1または複数のメタデータ要素の集合であるメタデータとの組を,前記メタデータ定義情報記憶手段に登録するステップと,
    前記ファイル操作手段が,前記メタデータ定義情報記憶手段に登録された各ファイルごとのメタデータの中の,利用者から指定されたメタデータ要素の組をディレクトリの名称とし,該メタデータから前記ディレクトリの名称として用いられたメタデータ要素を除いた残りのメタデータ要素の組をファイルの名称として利用者に提示し,前記メタデータ要素の組から構成される,前記ディレクトリの名称と前記ファイルの名称との組によってファイルを特定する処理を行うステップとを有する
    ことを特徴とする動的名前空間生成方法。
  5. コンピュータで扱うデータの集合であるファイルを,ディレクトリとファイルとの階層構造により管理し,ディレクトリの名称とファイルの名称との組み合わせから各ファイルを識別するファイルIDを特定するファイルシステムを有するとともに,各ファイルに対して定義された1または複数のメタデータ要素の集合であるメタデータを,前記ファイルIDに対応づけて記憶するメタデータ定義情報記憶手段と,前記ファイルシステムへのファイルの登録手段と,ファイルを操作するファイル操作手段とを備えるコンピュータが,ファイルシステムにおけるディレクトリとファイルとの階層構造を,利用者の利用状況に応じて動的に構成する動的名前空間生成方法であって,
    前記ファイルの登録手段が,登録対象のファイルのファイルIDと,そのファイルに対して定義される1または複数のメタデータ要素の集合であるメタデータとの組を,前記メタデータ定義情報記憶手段に登録するステップと,
    前記ファイル操作手段が,前記ファイルシステムにおけるファイル操作インタフェースから受け付けたファイル操作要求の種類に応じたファイル操作を行うステップとを有し,
    前記ファイル操作手段が前記ファイル操作を行うステップでは,前記ファイル操作インタフェースから受け付けたファイル操作要求の種類がディレクトリ内容の取得である場合に,前記ファイル操作要求に含まれるメタデータをメタデータ要素に分割し,分割したメタデータ要素をすべて含むメタデータに対応するファイルIDを前記メタデータ定義情報記憶手段から検索し,検索したファイルIDのリスト,または検索したファイルIDに対応するメタデータ,または検索したファイルIDに対応するメタデータから前記ファイル操作要求に含まれるメタデータ中のメタデータ要素を除いた残りのメタデータを,前記ファイル操作要求の要求元へ返却する
    ことを特徴とする動的名前空間生成方法。
  6. 請求項記載の動的名前空間生成方法において,
    前記ファイル操作インタフェースとして,固定的なディレクトリと固定的なファイル名とを扱う既存のインタフェースを用い,該ファイル操作インタフェースを用いたファイル操作を,ディレクトリとファイル名とが利用者の利用状況に応じて動的に変化するメタデータ操作に変換するステップを有する
    ことを特徴とする動的名前空間生成方法。
  7. 請求項から請求項までのいずれか1項に記載の動的名前空間生成方法を,コンピュータに実行させるための動的名前空間生成プログラム。
JP2003414508A 2003-12-12 2003-12-12 ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム Expired - Fee Related JP4343669B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003414508A JP4343669B2 (ja) 2003-12-12 2003-12-12 ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003414508A JP4343669B2 (ja) 2003-12-12 2003-12-12 ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム

Publications (2)

Publication Number Publication Date
JP2005174063A JP2005174063A (ja) 2005-06-30
JP4343669B2 true JP4343669B2 (ja) 2009-10-14

Family

ID=34734286

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003414508A Expired - Fee Related JP4343669B2 (ja) 2003-12-12 2003-12-12 ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム

Country Status (1)

Country Link
JP (1) JP4343669B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4665575B2 (ja) * 2005-03-24 2011-04-06 ブラザー工業株式会社 付帯情報書込プログラム、付帯情報書込装置及び付帯情報書込方法
JP4899389B2 (ja) 2005-09-08 2012-03-21 ソニー株式会社 表示制御装置および方法、並びにプログラム
JP4905989B2 (ja) * 2005-12-22 2012-03-28 独立行政法人海洋研究開発機構 メタデータ検索装置
JP4952119B2 (ja) * 2006-08-02 2012-06-13 日本電気株式会社 ファイルサーバを用いたコンテンツ管理システムと方法およびプログラム
JP5216365B2 (ja) * 2008-02-25 2013-06-19 アズビル株式会社 設定装置、パラメータ設定作業支援方法およびプログラム
JP5718953B2 (ja) * 2013-01-08 2015-05-13 アプリックスIpホールディングス株式会社 情報処理装置およびキュー記憶方法

Also Published As

Publication number Publication date
JP2005174063A (ja) 2005-06-30

Similar Documents

Publication Publication Date Title
JP4816281B2 (ja) 文書利用管理システム、文書管理サーバ及びそのプログラム
US7962449B2 (en) Trusted index structure in a network environment
KR101120755B1 (ko) 정적 및 동적 리스트의 사용을 포함하는 가상 폴더 및 항목 공유 시스템 및 방법
JP6448555B2 (ja) オブジェクトストレージインデキシングシステムのためのコンテンツクラス
US8255430B2 (en) Shared namespace for storage clusters
US8190566B2 (en) Trusted index structure in a network environment
US8983929B2 (en) Methods and systems for managing data
JP3938594B2 (ja) ファイル名生成装置
JP5589205B2 (ja) 計算機システム及びデータ管理方法
JP4315876B2 (ja) ファイル管理プログラム、ファイル管理方法、及びファイル管理装置
US20050289127A1 (en) Methods and systems for managing data
US9449007B1 (en) Controlling access to XAM metadata
WO2014101583A1 (zh) 键值存储系统中构建文件系统的方法、装置及电子设备
CN104778192B9 (zh) 表示可内容寻址存储系统的目录结构
KR101689782B1 (ko) 메타 데이터에 따라 파일 시스템의 파일들을 액세스하는 방법 및 상기 방법을 구현하는 디바이스
JP2007272874A (ja) クラスタ化ファイルシステムにおいてデータのバックアップを取る方法
JP4713257B2 (ja) データ記憶装置及びバージョン管理プログラム
JP4167359B2 (ja) データ管理システム及びデータ管理方法
TWI334091B (en) Data file management and search method and system based on file attributes
CN106484820A (zh) 一种重命名方法、访问方法及装置
JP5241298B2 (ja) 履歴上のファイル名およびロケーションをインデックス付きにすることによりファイル・サーチおよびファイル操作を支援するためのシステムおよび方法
US9727588B1 (en) Applying XAM processes
JP4343669B2 (ja) ファイル管理装置,動的名前空間生成方法および動的名前空間生成プログラム
KR20060063653A (ko) 모호한 네임을 허용하는 컴퓨터 파일 시스템
JP5367470B2 (ja) ストレージサーバー装置及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060410

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090310

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090428

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090428

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

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

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

Free format text: PAYMENT UNTIL: 20120717

Year of fee payment: 3

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

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees