(57)【特許請求の範囲】
【請求項１】
データファイルシステムのファイルに、前記ファイルに関連するメタデータに従ってアクセスする方法であって、前記方法はファイル管理装置により実装され、前記方法は、前記メタデータが、メタデータファイルシステムに記憶されたものとして少なくとも１つのクライアント装置に提示され、前記メタデータファイルシステムは、前記データファイルシステムの構造に従って編成されており、
前記データファイルシステム内の少なくとも１つの第１のファイルを、前記少なくとも１つのクライアント装置に、前記メタデータファイルシステム内の少なくとも１つの第１のディレクトリとして提示し、
前記データファイルシステム内の前記少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性を、前記メタデータファイルシステム内の少なくとも１つの第２のファイルとして前記少なくとも１つのクライアント装置に提示し、
前記少なくとも１つのメタデータ属性の少なくとも１つの値を、前記少なくとも１つの第２のファイル内に記憶されたものとして前記少なくとも１つのクライアント装置に提示し、
ビューファイルシステムが、前記データファイルシステムのファイルを前記ファイルに関連するメタデータに従って少なくとも１つの第２のディレクトリに編成し、前記少なくとも１つの第２のディレクトリは、前記データファイルシステム内の前記第１のファイルのうちの少なくとも１つに対する少なくとも１つのポインタをコンテンツとして含み、前記コンテンツは、少なくとも１つのメタデータ選択基準に従って決定され、
前記方法は、前記メタデータファイルシステムおよび前記ビューファイルシステムを使用して前記少なくとも１つのクライアント装置により前記データファイルシステムの前記ファイルにアクセスするステップをさらに含み、前記メタデータファイルシステムおよび前記ビューファイルシステム、ならびに前記メタデータは、前記データファイルシステムにアクセスするのに使用されるファイルアクセス方法を用いて前記少なくとも１つのクライアント装置によりアクセスされ、前記データファイルシステム、前記メタデータファイルシステム、および前記ビューファイルシステムは、同じルートのファイルシステムレベルに組み込まれたものとして前記少なくとも１つのクライアント装置に提示される、前記方法。
【請求項２】
前記メタデータファイルシステムおよび前記ビューファイルシステムは、前記データファイルシステムにアクセスするのに必要なものと同じ１組のファイルシステムアクセス方法を使用して前記少なくとも１つのクライアント装置からアクセス可能である、請求項１に記載の方法。
【請求項３】
前記少なくとも１つのメタデータ選択基準は、前記少なくとも１つのクライアント装置からアクセス可能な前記ビューファイルシステム内のサブディレクトリ内の少なくとも１つの構成ファイルであって、前記少なくとも１つのメタデータ選択基準を識別する名称を有するサブディレクトリ内の少なくとも１つの構成ファイルに含まれる、請求項１または２に記載の方法。
【請求項４】
前記少なくとも１つの構成ファイルは、メタデータ属性およびメタデータ属性値として前記少なくとも１つのクライアント装置に提示されるメタデータ選択基準を含む、請求項３に記載の方法。
【請求項５】
前記少なくとも１つの構成ファイルは、メタデータ属性として前記少なくとも１つのクライアント装置に提示されるメタデータソート基準を含む、請求項３または４に記載の方法。
【請求項６】
データファイルシステムのファイルに、前記ファイルに関連するメタデータに従ってアクセスするための装置であって、前記装置は、前記メタデータを、メタデータファイルシステムに記憶されたものとして少なくとも１つのクライアント装置に提示し、前記メタデータファイルシステムは、前記データファイルシステムの構造に従って編成されており、前記装置は、
前記メタデータファイルシステムを介して前記メタデータへのアクセスを与える手段であって、
前記データファイルシステム内の少なくとも１つの第１のファイルを、前記メタデータファイルシステム内の少なくとも１つの第１のディレクトリとして前記少なくとも１つのクライアント装置に提示し、
前記データファイルシステム内の前記少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性を、前記メタデータファイルシステム内の少なくとも１つの第２のファイルとして前記少なくとも１つのクライアント装置に提示し、
前記少なくとも１つのメタデータ属性の少なくとも１つの値を、前記少なくとも１つの第２のファイル内に記憶されたものとして前記少なくとも１つのクライアント装置に提示する、手段と、
前記少なくとも１つのクライアント装置に、前記データファイルシステムの前記ファイルを前記ファイルに関連するメタデータに従って少なくとも１つの第２のディレクトリ内に編成するビューファイルシステムを介して、前記データファイルシステムの前記ファイルへのアクセスを与える手段であって、前記少なくとも１つの第２のディレクトリが、前記データファイルシステム内の前記第１のファイルのうちの少なくとも１つに対する少なくとも１つのポインタをコンテンツとして含み、前記コンテンツが、少なくとも１つのメタデータ選択基準に従って決定される、手段と、
を備え、
前記メタデータファイルシステムおよび前記ビューファイルシステム、ならびに前記メタデータは、前記データファイルシステムにアクセスするのに使用されるファイルアクセス方法を用いて前記少なくとも１つのクライアント装置によりアクセスされ、前記データファイルシステム、前記メタデータファイルシステム、および前記ビューファイルシステムは、同じルートのファイルシステムレベルに組み込まれたものとして前記少なくとも１つのクライアント装置に提示される、前記装置。
【請求項７】
前記メタデータへのアクセスを与える手段により使用され、かつ前記ビューファイルシステムの前記ファイルへのアクセスを与える手段により使用されるデータを含むデータベースをさらに備えた、請求項６に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルシステムに格納されたデータへのアクセスの分野に関し、特に、ファイルシステム内のデータへのアクセスの最適化に関する。
【背景技術】
【０００２】
従来の技術によると、データファイルは、オーディオ、ビデオ、オーディオおよびビデオ、静止画（still image）、テキスト、対話型プログラムなどを含む。これらのデータファイルは、階層的に編成されたデータファイルシステムに格納され、データファイルはディレクトリおよびサブディレクトリに編成されることとなる。数千のファイルを含む大きなデータファイルシステムには、大量のデータを含む膨大な数のファイルが存在し、大きなデータファイルシステムはすぐに管理が難しくなる。大きなデータファイルシステムにおける膨大な数のファイルおよびデータの管理の方法として、メタデータを用いるものがある。メタデータは、データに関するデータである。メタデータの例としては、ファイル名、ファイルタイプ、ファイルの長さ、作成日だけでなく、作成者、テキスト文書内のキーワード、画像のアルバム名なども含まれる。したがって、メタデータは、データファイルシステムに記憶された１つまたは複数のファイルに関する情報を与えるものである。このため、メタデータは、ユーザまたはアプリケーションが、データファイルシステムにおけるファイルの経路を見つけ、そしてファイルにアクセスするのを助けることができる。メタデータがデータファイルシステムのファイルへのアクセスに使用されるとき、メタデータを抽出し、抽出したメタデータをデータファイルシステムのファイルに関係付けるインデックスデータが作成される。このインデックスデータは、後の使用のために記憶される。インデックスデータは、メタデータに基づいてファイルのルックアップを素早く行うことを可能にする。インデックスデータの作成処理は、データファイルシステムのインデックス化（indexing）とも呼ばれる。したがって、インデックス化は、ユーザおよび／またはアプリケーションによる使用ために、メタデータ、およびメタデータとデータファイルシステムのファイルとの関係を抽出し、そのメタデータ、およびメタデータのデータファイルシステムのファイルとの関係を記憶するために、データファイルシステムを走査する処理である。大きなデータファイルシステムからは、かなりの量のメタデータおよびファイル関連データが抽出される。大きなデータファイルシステムの管理を容易にするのには、メタデータの抽出およびインデックスデータの作成は十分でない。現在の傾向は、装置をネットワーク内の個別のデータファイルシステムの各々と相互接続させるもので、これは、これらの装置上に記憶されたファイルの管理の複雑さを増大させる。共有のネットワーク記憶装置は、例えばＬＡＮ（ローカルエリアネットワーク）として編成されるネットワークに接続された装置間で共有されるコンテンツの集中型の記憶を可能にするという利点を提供する。
【０００３】
従来技術によると、そのようなネットワークの装置は、それぞれ独自のインデックス化システムを有する。このため、各クライアントが、各自のデータファイルシステムの走査、ならびに各自のメタデータおよびインデックスの記憶を行うことになる。したがって、インデックスデータおよびメタデータは、そのようなネットワークのクライアント間で共有されない可能性がある。これは、記憶および処理の必要性の観点から、リソースの無駄である。
【０００４】
従来技術によると、ユーザ定義および／またはアプリケーション定義されたメタデータの作成は、メタデータを管理するアプリケーションにより提示されるメタデータに限定されるので、ユーザおよび／またはアプリケーションにとって、データファイルシステムの管理の能力は限定されることとなる。
【０００５】
従来技術によると、メタデータは、専用のＡＰＩ（アプリケーションプログラミングインタフェース）を介してアクセスされるので、メタデータに対するアクセスが、専用のＡＰＩを実装するアプリケーションに制限され、このため、メタデータに従うデータファイルシステムのファイルへのアクセスも、専用のＡＰＩを実装するアプリケーションに制限される。
【０００６】
従来技術によると、関連するメタデータに従ってデータファイルシステムのレイアウトを編成する方法がない。
【０００７】
したがって、従来技術では、メタデータに従うファイルシステムのファイルへのアクセスを最適化することができない。
【発明の概要】
【発明が解決しようとする課題】
【０００８】
本発明は、従来技術の不都合を軽減することを目指す。
【課題を解決するための手段】
【０００９】
より正確には、本発明は、ファイルシステムのファイルに、これらのファイルに関連するメタデータに従ってアクセスすることを可能にする、いわゆるＭＶＦＳ（Metadata-View File System：メタデータビューファイルシステム）を通じて、メタデータに従うファイルシステム内のファイルへの最適化されたアクセスを可能にすることができる。
【００１０】
ファイルシステム（以下、「データファイルシステム」と称する）内のファイルへのアクセスを最適化するために、本発明では、ＭＶＦＳによる「非公開（private）」アクセスのためのインデックスデータおよびメタデータをデータベースに内部的に記憶し、内部的に記憶されたメタデータを、ユーザおよび／またはアプリケーションに、メタデータファイルシステム（以下、「メタデータファイルシステム」と称する）として「公開して（publicly）」提示する。ユーザおよび／またはアプリケーションが膨大な量のメタデータを介してそれぞれの経路（way）をブラウズするのを助けるために、メタデータファイルシステムの構造は、メタデータファイルシステムに関連するファイルシステムの構造を反映する。加えて、メタデータファイルシステムおよびメタデータそのものに、ユーザおよび／またはアプリケーションが通常のファイルシステムのアクセス方法を使用してアクセスすることができる。データファイルシステム内のファイルへのアクセスをさらに最適化するために、ユーザおよび／またはアプリケーションは、指定のメタデータによって、いわゆるビューを介して、データファイルシステム内のデータを編成することが可能である。ビューの一例として、メタデータ属性「ｔｙｐｅ  ｏｆ  ｆｉｌｅ（ファイルのタイプ）」に基づいて、そして、メタデータ属性値「ｔｙｐｅ  ｏｆ  ｆｉｌｅ＝ｍｕｓｉｃ  ｆｉｌｅ（ファイルのタイプ＝音楽ファイル）」でさらに詳述されるビューがある。したがって、この例示のビューは、ユーザまたはアプリケーションがデータファイルシステム内の全ての音楽ファイルをリストすることを可能にする。記憶領域を確保するため、および一貫性の理由のためにも、ビューは、そのビューに対応するファイルを直接含有せずに、単にこれらのファイルに対するポインタを含む。これらのポインタを、シンボリックリンクを用いて実装することができる。ファイルへのポインタを使用することで、ファイルのコピーは必要ではなくなり、加えて、ファイルを複製することなく、複数のビューにより同じファイルをポイントすることが可能となる。ビューのコンテンツ、すなわち、データファイルシステムのファイルに対するポインタのリストを、メタデータ選択基準に従ってユーザおよび／またはアプリケーションがビュー構成において指定することが可能である。メタデータの場合に、メタデータがユーザおよび／またはアプリケーションにメタデータファイルシステムの一部として提示されるのと同様に、ビューおよびビュー構成は、ユーザおよび／またはアプリケーションに対して、ビューファイルシステム（以下、「ビューファイルシステム」とも称する）において提示され、それにより、ユーザおよび／またはアプリケーションに、ビューおよびビュー構成への「通常の」ファイルシステムアクセス方法を通じたアクセスを与えることができる。メタデータについては、ビュー構成は、「非公開の」使用のためにＭＶＦＳによりデータベースに内部的に記憶され、かつ、内部的に記憶されたビュー構成それぞれに対して、ユーザおよび／またはアプリケーションにより修正可能な「公開の」バージョンが存在する。
【００１１】
メタデータに従ってファイルシステムのファイルへのアクセスを最適化するために、本発明では、データファイルシステムのファイルに、そのファイルに関連するメタデータに従ってアクセスする方法を提案し、本方法はファイル管理装置により実装され、本方法では、少なくとも１つのクライアント装置に対してメタデータを、メタデータファイルシステムに記憶されるように表し、このメタデータファイルシステムは、データファイルシステムの構造に従って編成されており、
データファイルシステム内の少なくとも１つの第１のファイルを、メタデータファイルシステム内の少なくとも１つの第１のディレクトリとして表し、
データファイルシステム内の少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性を、メタデータファイルシステム内の少なくとも１つの第２のファイルとして表し、
少なくとも１つのメタデータ属性の少なくとも１つの値を、少なくとも１つの第２のファイル内に記憶されるものとして表され、
ビューファイルシステムが、データファイルシステムのファイルを、そのファイルに関連するメタデータに従って、少なくとも１つの第２のディレクトリに編成し、該少なくとも１つの第２のディレクトリは、データファイルシステム内の第１のファイルのうちの少なくとも１つのファイルに対する少なくとも１つのポインタを、コンテンツとして含み、該コンテンツは、少なくとも１つのメタデータ選択基準に従って決定され、
本方法は、さらに、メタデータファイルシステムおよびビューファイルシステムを使用してデータファイルシステムのファイルにアクセスするステップを含み、メタデータファイルシステムおよびビューファイルシステム、ならびにメタデータは、データファイルシステムにアクセスするのに使用されるアクセス方法を用いてアクセスされ、データファイルシステム、メタデータファイルシステム、およびビューファイルシステムは、同じルートファイルシステムレベルに組み込まれる（mount）。
【００１２】
データファイルシステムのファイルに、これらのファイルに関連するメタデータに従ってアクセスする方法の一変形によると、メタデータファイルシステム（３２）およびビューファイルシステムは、少なくとも１つのクライアント装置に対して、データファイルシステムにアクセスするのに必要なものと同じの１組のファイルシステムアクセス方法を使用してアクセス可能となる。
【００１３】
データファイルシステムのファイルに、これらのファイルに関連するメタデータに従ってアクセスする方法の一変形によると、少なくとも１つのメタデータ選択基準は、ビューファイルシステム内において少なくとも１つのクライアント装置からアクセス可能な少なくとも１つの構成ファイルであって、その名称により少なくとも１つのメタデータ選択基準を識別するサブディレクトリ内の少なくとも１つの構成ファイルに含まれる。
【００１４】
データファイルシステムのファイルに、これらのファイルに関連するメタデータに従ってアクセスする方法の一変形によると、少なくとも１つの構成ファイルは、メタデータ属性およびメタデータ属性値により表されるメタデータ選択基準を含む。
【００１５】
データファイルシステムのファイルに、これらのファイルに関連するメタデータに従ってアクセスする方法の一変形によると、少なくとも１つの構成ファイルは、メタデータ属性により表されるメタデータソート基準を含む。
【００１６】
本発明はまた、データファイルシステムのファイルに、そのファイルに関連するメタデータに従ってアクセスするための装置も提案し、本装置は、メ少なくとも１つのクライアント装置に対してメタデータを、メタデータファイルシステムに記憶されるように表し、このメタデータファイルシステムが、データファイルシステムの構造に従って編成されることを特徴とし、本装置は、
メタデータファイルシステムを介したメタデータへのアクセスを与える手段を備え、
データファイルシステム内の少なくとも１つの第１のファイルが、メタデータファイルシステム内の少なくとも１つの第１のディレクトリとして表され、
データファイルシステム内の少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性が、メタデータファイルシステム内の少なくとも１つの第２のファイルとして表され、
少なくとも１つのメタデータ属性の少なくとも１つの値が、少なくとも１つの第２のファイル内に記憶されるものとして表され、
前記装置は、データファイルシステムのファイルへのアクセスを、データファイルシステムのファイルを該ファイルに関連するメタデータに従って少なくとも１つの第２のディレクトリ内に組織化する、ビューファイルシステムを介して与える手段であって、その少なくとも１つの第２のディレクトリは、データファイルシステム内の第１のファイルのうちの少なくとも１つに対する少なくとも１つのポインタをコンテンツとして含み、そのコンテンツは、少なくとも１つのメタデータ選択基準に従って決定される手段を備え、
メタデータファイルシステムおよびビューファイルシステム、ならびにメタデータは、データファイルシステムにアクセスするのに使用されるアクセス方法を用いてアクセスされ、データファイルシステム、メタデータファイルシステム、およびビューファイルシステムは、同じルートファイルシステムレベルに組み込まれる。
【００１７】
データファイルシステムのファイルに、そのファイルに関連するメタデータに従ってアクセスするための装置の一変形によると、本装置は、メタデータへのアクセスを与えるための手段により使用され、およびビューファイルシステムのファイルへのアクセスを与えるための手段により使用されるデータを含むデータベースをさらに備える。
【００１８】
本発明の更なる利点は、本発明の特定の非制限的な実施形態の説明を通じて明らかになるであろう。諸実施形態は、図面を参照して記載される。
【図面の簡単な説明】
【００１９】
【図１】従来技術において、ローカルネットワークに接続された装置により、関連メタデータに従ってデータファイルシステム内のファイルにアクセスするためのネットワークインフラストラクチャの一例を示す図である。
【図２】本発明に従って、ローカルネットワークに接続された複数の装置を含む、ネットワークインフラストラクチャの本発明の例示の実施形態を示す図である。
【図３】本発明の特定の実施形態に従って、メタデータがファイルシステムとしてどのように提示されるかを示す図である。
【図４】本発明の特定の実施形態に従って、ビューデータがファイルシステムとしてどのように提示されるか、およびビューデータがデータファイルシステムのデータにどのように関連するかを示す図である。
【図５】本発明の特定の実施形態に従って、図２の装置２０などの本発明を実装する装置を示す図である。
【図６】本発明の特定の実施形態に従って、例えば図２の装置２０によって実装される、関連するメタデータに従ってデータファイルシステムのファイルにアクセスするアルゴリズムを示す図である。
【発明を実施するための形態】
【００２０】
図１は、ローカルネットワークに接続された装置によって、関連するメタデータに従ってデータファイルシステム内のファイルにアクセスする、従来技術の方法のためのネットワークインフラストラクチャの一例を示す。  
【００２１】
このインフラストラクチャは、
・記憶サーバ１０、
・記憶装置１１、
・第１の装置１３、
・第２の装置１４、および
・ローカルエリアネットワーク１２
を備える。
【００２２】
装置１３、１４、および記憶サーバ１０は、それぞれ双方向接続１０２、１０３、および１０１を介してＬＡＮ１２に接続される。記憶サーバ１０は、双方向接続１００を介して記憶装置１１に接続される。記憶装置１１は、データファイルシステム内に編成されたデータ１１１と、メタデータ１１２および１１３上に抽出されたメタデータ＋インデックスデータとを含む。双方向の点線矢印１００１および１００２は、それぞれ、装置１３からメタデータ１１２上の抽出されたメタデータ＋インデックスデータへ、およびその逆のデータフローおよび制御フローと、装置１４からインデックスデータ１１３へ、およびその逆のデータフローおよび制御フローを示している。
【００２３】
装置１３および装置１４は各々、それぞれの抽出されたメタデータおよびインデックスデータを、記憶装置１１上の記憶領域に有する。装置１３によるメタデータの抽出およびインデックスデータの生成は、データ１１１にわたって行われ、記憶領域１１２に記憶される。装置１４によるメタデータの抽出およびインデックスデータの生成は、データ１１１にわたって行われ、記憶領域１１３に記憶される。装置１３および１４のいずれも、抽出されたメタデータおよびインデックスデータを共有せず、情報の大部分が複製されるので、これは記憶領域の観点からは特に非効率的であり、データ１１１のために利用可能な記憶領域を減少させることにもなる。また、処理の必要性の観点からも特に非効率的である。これは、各装置が自身のメタデータの抽出とインデックスデータの生成を行わなければならないからである。そして、データ１１１に対する変更が行われると、この変更は各々のメタデータ／インデックスデータに反映されることになる。この結果、変更をどのようにいかにして素早く各メタデータ／インデックスデータに反映させることができるかという同期の問題が加わる。加えて、単一の変更により、記憶装置１１へのいくつかの読み／書きのアクセスが生じ、メタデータ／インデックスデータのそれぞれを更新する。さらに、メタデータ／インデックスデータが装置１３と１４との間で共有されないため、装置１３および１４はそれぞれ、装置１３、１４のうち他方の装置によって既に行われたメタデータの抽出およびインデックスデータ作成の利益を得ることができない。
【００２４】
上記で検討した従来技術による実装は、従来技術による実装の一例である。他の従来技術による実装として、例えば、データファイルシステムとインデックスデータおよびメタデータとが記憶される記憶装置と一体化した単一の装置などがあり得る。
【００２５】
図２は、本発明に準拠したネットワークインフラストラクチャにおける、本発明の例示の実施形態を示す。
【００２６】
このインフラストラクチャは、
・ゲートウェイ２０、
・記憶装置２１、
・第１の装置２３、
・第２の装置２４、
・ローカルエリアネットワーク１２、および
・外部ネットワーク１５
を備える。
【００２７】
装置２３、２４、およびゲートウェイ２０は、それぞれ双方向接続２０２、２０３および２０１を介してＬＡＮ１２に接続される。装置２０は、双方向接続２００を介して記憶装置２１に接続される。記憶装置２１は、データ２１１、および「ＭＶＦＳデータ」２１３として示される、抽出されたメタデータ＋生成されたインデックスデータ＋生成されたビューを含む。双方向の点線矢印２００１、２００２は、それぞれ、クライアント装置２３から、抽出されたメタデータ＋インデックスデータ＋生成されたビュー２１３へ（およびその逆）のデータ／制御フロー、クライアント装置２４から、同じ抽出されたメタデータ＋生成されたインデックスデータ＋生成されたビュー２１３へ（およびその逆）のデータ／制御フローを示す。装置２０はさらに、双方向リンク１０４を介して外部ネットワーク１５にも接続され、これによりクライアント装置２３および２４に、外部ネットワーク１５に接続された装置（図示せず）によって提供される追加のサービスおよび／または記憶装置へのアクセスが与えられる。
【００２８】
図１の従来技術とは対照的に、図２のクライアント装置２３および２４は、記憶装置２１上の記憶領域２１３を共有する。
【００２９】
メタデータの抽出、データ２１１からのインデックスデータの生成、メタデータファイルシステム（Metadata File System）およびビューファイルシステム（View File System）の提示は、ファイル管理装置２０によって行われる。このファイル管理装置２０は、「常時オン」の装置であるという利点を有し、例えばクライアント装置２３および２４の動作がないか、ほとんどない夜間など、リソースが利用可能なときはいつでも、メタデータの抽出およびインデックスデータの生成を行うことができる。
【００３０】
本発明の一変形実施形態によると、メタデータの抽出およびインデックスデータの生成は、装置２０、２３、２４のリソースの利用可能性に応じて、これらの装置のいずれか１つによって公平に行われる。この変形実施形態は、各装置２０、２３、２４のリソースの利用可能性に応じて、メタデータの抽出およびインデックスデータの生成に必要なリソースを分配させるという点において有利であり、これにより、これらの装置のそれぞれの処理の必要性を減少させることができる。
【００３１】
クライアント装置２３および２４は、抽出されたメタデータおよび生成されたインデックスデータを共有し、これは、記憶領域の観点から特に効率的ある。すなわち、クライアント装置ごとに情報が複製されることがないため、従来技術に比べると、記憶装置２１のより多くの領域がデータ２１１に利用可能となり、これは、処理の必要性の観点からも効率的である。また、データ２１１に対して変更が行われると、この変更は１つのメタデータ／インデックスデータ記憶装置２１３のみに反映されることになるため、これにより、同期の問題を回避し、記憶装置２１に記憶されているメタデータ／インデックスデータを更新するのに必要な読み／書きのアクセスの回数も抑えることができる。加えて、メタデータ／インデックスデータがクライアント装置２３と２４との間で共有されるため、クライアント装置２３および２４は、ファイル管理装置２０によって、あるいは、本発明の一変形実施形態ではクライアント装置２３と２４のいずれか一方によって、メタデータの抽出／インデックスデータの生成が既になされているこという点においても有利である。
【００３２】
本発明の特定の実施形態によると、クライアント装置２３および２４は、デジタルのテレビ番組およびラジオ番組を受信するためのデジタルセットトップボックス受信機である。
【００３３】
本発明の特定の実施形態によると、クライアント装置２３および２４は、ＭＰ３オーディオプレイヤの機能またはＨ．２６４ビデオプレイヤの機能を有する装置など、デジタルのビデオおよび／またはオーディオのコンテンツをレンダリングする装置である。
【００３４】
本発明の特定の実施形態によると、クライアント装置２３および２４は、無線接続を介してファイル管理装置２０に接続される無線装置である。
【００３５】
図３は、本発明の特定の実施形態に従って、メタデータがファイルシステム３２においてどのように提示されるかを示す図である。
【００３６】
縦線３０は、データファイルシステム３１のルートを表す。メタデータファイルシステム３２は、内部的に記憶されたインデックスデータとメタデータから、ＭＶＦＳによって構築され、ルートに組み込まれるファイルシステムとしてユーザおよび／またはアプリケーションに対して提示される。データファイルシステム３１を、例えば、図２の記憶装置２１上に記憶し、図２の装置２０によって管理することができる。
【００３７】
データファイルシステム３１は、ファイルシステムのルート３０の直下のディレクトリ「ａ」３１１と、ディレクトリ「ａ」３１１のサブディレクトリ「ｂ」３１２と、サブディレクトリ「ｂ」３１２内のファイル「ｘ．ｔｘｔ」３１３とを有する、階層に編成される。ファイルｘ．ｔｘｔは、さらに、３１４によって図示されているように、テキストコンテンツ「ａｂｃｄ」を含む。
【００３８】
メタデータファイルシステム３２は、ファイルシステムのルート３０の直下にディレクトリ「ｍｅｔａ」３２１を有する。ディレクトリ「ｍｅｔａ」は、サブディレクトリ「ａ」３２２を有し、サブディレクトリ「ａ」は、サブディレクトリ「ｂ」３２３を有し、そして、このサブディレクトリ「ｂ」３２３は、サブディレクトリ「ｘ．ｔｘｔ」３２４を有する。
【００３９】
したがって、メタデータファイルシステム３２は、データファイルシステム３１の構造に従って編成され、これにより、データファイルシステム３１内の各ファイルは、メタデータファイルシステム３２内のディレクトリにより表され、そして、ディレクトリの名前が、そのファイルを識別する。
【００４０】
メタデータファイルシステム３２のディレクトリ「ａ」３２２は、データファイルシステム３１のディレクトリ「ａ」３１１に対応する。メタデータファイルシステム３２のサブディレクトリ「ｂ」は、データファイルシステム３１のサブディレクトリ「ｂ」３１２に対応する。メタデータファイルシステム３２のサブディレクトリ「ｘ．ｔｘｔ」３２４は、データファイルシステム３１のファイル「ｘ．ｔｘｔ」３１３に対応する。
【００４１】
このメタデータファイルシステム３２において、データファイルシステム内のファイルに関連するメタデータ属性は、メタデータファイルシステムのディレクトリ内の１つまたは複数のファイルとして表される。例えば、データファイルシステム３１のファイル「ｘ．ｔｘｔ」３１３は、関連メタデータ「ｆｉｌｅｔｙｐｅ」を有しており、このメタデータは、メタデータファイルシステム３２のディレクトリ「ｘ．ｔｘｔ」３２４内のファイル「ｆｉｌｅｔｙｐｅ」３２５によって表される。したがって、メタデータファイルシステム３２内のファイルは、メタデータ属性を表している。
【００４２】
このメタデータファイルシステム３２において、データファイルシステム３１内のファイルに関連するメタデータ属性値は、メタデータファイル内の値として表される。例えば、ファイル「ｘ．ｔｘｔ」３１３に対するメタデータ属性「ｆｉｌｅｔｙｐｅ」のメタデータ値は、「ｔｅｘｔｆｉｌｅ」である。したがって、メタデータ属性「ｆｉｌｅｔｙｐｅ」のメタデータ値は、図３の３２６によって図示される、メタデータファイルシステムのディレクトリ「ｘ．ｔｘｔ」の下のファイル「ｆｉｌｅｔｙｐｅ」３２５のテキストコンテンツ「ｔｅｘｔｆｉｌｅ」として表される。
【００４３】
このように、メタデータファイルシステム３２は、ユーザおよび／またはアプリケーションに対して標準の階層化ファイルシステムとして表され、ユーザおよび／またはアプリケーションがメタデータファイルシステム３２にアクセスする際に、データファイルシステム３１にアクセスするアクセス方法以外のアクセス方法、例えばディレクトリの変更、ディレクトリのコンテンツのリスト化、およびファイルのコンテントの読み込みなどは必要とされない。
【００４４】
本発明の特定の実施形態によると、ユーザおよび／またはアプリケーションに、メタデータファイルシステム３２への制限のない読み取り／書き込みアクセスが与えられる。これにより、ユーザおよび／またはアプリケーションは、メタデータファイルシステム３２に関して最高レベルの表現力が許容される。
【００４５】
さらに別の変形実施形態によると、ユーザおよび／またはアプリケーションの読み取り／書き込みアクセスを、ユーザおよび／またはアプリケーションごとに制限して、これにより、アクセス権の差別化を可能にする。例えば、メタデータファイルシステムの管理者は、制限のないアクセス権を有することができ、一方、一般のユーザは、自身が所有するデータファイルシステム３１内のデータに関連するメタデータの追加に関して、制限されたアクセスを有する。
【００４６】
図４は、本発明の特定の実施形態に従って、ＭＶＦＳのビューファイルシステム４０において、どのようにビューが作成され、提示され、保持されるか、およびビューがどのようにデータファイルシステム３１に関連するかを示す。
【００４７】
図３のデータファイルシステム３１が図４の上部に図示されている。ファイルシステムのルートには、内部的に記憶されたビューデータからＭＶＦＳによって構築されるビューファイルシステム４０が実装される。
【００４８】
このように、ビューファイルシステム４０は、ユーザおよび／またはアプリケーションに対して、標準の階層化ファイルシステムとして表されるため、ユーザおよび／またはアプリケーションは、ビューファイルシステム４０にアクセスする際に、データファイルシステム３１にアクセスするアクセス方法以外のアクセス方法、例えばディレクトリの変更、ディレクトリのコンテンツのリスト、およびファイルのコンテンツの読み込みなどは必要とされない。
【００４９】
ビューファイルシステム４０のベースディレクトリは、ディレクトリ「ｖｉｅｗ」４０１である。ディレクトリ「ｖｉｅｗ」４０１の下には、ディレクトリ「ｃｏｎｆｉｇ」があり、これは２つのサブディレクトリ、すなわち、ディレクトリ「ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０３とディレクトリ「ｔｅｘｔｆｉｌｅｓ」４０６を有する。これらのディレクトリは双方とも、ファイル「ｃｏｎｄ．ｉｎｉ」とファイル「ｇｒｏｕｐ．ｉｎｉ」とを有し、ディレクトリ「ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０３に対しては、それぞれ４０４と４０５、ディレクトリ「ｔｅｘｔｆｉｌｅｓ」４０６に対しては、それぞれ４０７と４０８として示されている。
【００５０】
ディレクトリ「ｖｉｅｗ」４０１の直下には、ディレクトリ「ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０９もあり、これはサブディレクトリ「ｔｅｘｔｆｉｌｅ」４１０を有する。サブディレクトリ「ｔｙｐｅ−ｔｅｘｔ」４１０は、データファイルシステム３１のファイル「ｘ．ｔｘｔ」３１３をポイントするシンボリックリンク「ａ／ｂ／ｘ．ｔｘｔ」４１１を含み、これは点線矢印４１で図示されている。
【００５１】
また、ディレクトリ「ｖｉｅｗ」４０１の直下にはさらに、ディレクトリ「ｔｅｘｔｆｉｌｅｓ」４１２があり、これは、やはりファイルシステム３１のファイル「ｘ．ｔｘｔ」３１３をポイントするリンク「ａ／ｂ／ｘ．ｔｘｔ」を含み、これは点線矢印４１により図示されている。
【００５２】
ビューファイルシステム４０は、構成部分（configuration part）とビュー部分（view part）を含む。構成部分は、ユーザおよび／またはアプリケーションがビューのコンテンツを指定するのを可能にし、構成部分は、ユーザおよび／またはアプリケーションによる読み取りおよび書き込みが可能である。ビュー部分は、ユーザおよび／またはアプリケーションに対して読み取り専用である。
【００５３】
この特定の実施形態において、構成部分は、ディレクトリ「．ｃｏｎｆｉｇ」４０２と、そのサブディレクトリ４０３および４０６と、これらのそれぞれのファイル４０４、４０５および４０７、４０８とによって図示されている。ビューファイルシステム４０はさらに、サブディレクトリ「ｔｅｘｔｆｉｌｅ」４１０およびリンク「ａ／ｂ／ｘ．ｔｘｔ」４１１を有するディレクトリ「ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０９と、リンク「ａ／ｂ／ｘ．ｔｘｔ」４１３を有するディレクトリ「ｔｅｘｔｆｉｌｅｓ」４１２とによって図示されるビュー部分を備える。
【００５４】
ユーザおよび／またはアプリケーションが、メタデータの選択基準「メタデータ属性＝ファイルタイプ」に従ってファイルを編成するデータファイルシステム３１内のファイルのビューを所望するとき、ユーザおよび／またはアプリケーションは、ビューファイルシステム４０内にディレクトリ「／ｖｉｅｗ／ｃｏｎｆｉｇ／ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０３を作成する。このディレクトリが作成されると、ＭＶＦＳは、「ｃｏｎｄ．ｉｎｉ」４０４および「ｇｒｏｕｐ．ｉｎｉ」４０５などのビュー構成ファイルを、このディレクトリ内に作成する。ビュー構成ファイル４０４および４０５のコンテンツは、ユーザおよび／またはアプリケーションに対して書き込み可能であるが、これらのファイルをユーザおよび／またはアプリケーションが削除することはできない。ファイル「ｃｏｎｄ．ｉｎｉ」４０４により、ユーザおよび／またはアプリケーションは、任意のファイルリンクがビューに現れるために満たすべきメタデータ選択基準を指定することができる。ファイル「ｃｏｎｄ．ｉｎｉ」４０４が空白のままの場合、ビューにはファイルリンクが何も現れない。ファイル「ｇｒｏｕｐ．ｉｎｉ」４０５により、ユーザおよび／またはアプリケーションは、ビューに現れるリンクのグループ化基準を指定することができ、リンクは、このグループ化基準に従ってビューのサブディレクトリに編成される。「ｇｒｏｕｐ．ｉｎｉ」が空白のままの場合、グループ化が行われない。ディレクトリ「／ｖｉｅｗ／ｃｏｎｆｉｇ／ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０３が作成されると、ユーザおよび／またはアプリケーションは、メタデータ選択基準「ｆｉｌｅ  ｔｙｐｅ＝*」をファイル「ｃｏｎｄ．ｉｎｉ」４０４に書き込むが、このメタデータ選択基準は、データファイルシステム３１の任意のタイプのファイルをビュー内に提示すべきことを意味する。加えて、ユーザおよび／またはアプリケーションが、ビュー内に提示されるファイルを、そのファイルタイプに従って組織化したい場合、ユーザおよび／またはアプリケーションは、テキスト値「ｔｙｐｅ」を、ファイル「ｇｒｏｕｐ．ｉｎｉ」４０５に書き込む。ユーザおよび／またはアプリケーションの動作の結果、ＭＶＦＳは、データファイルシステム３１に存在するファイルのタイプ毎にサブディレクトリを有する、ユーザおよび／またはアプリケーションが読み込み可能なディレクトリ「ｆｉｌｅｓ−ｂｙ−ｔｙｐｅ」４０９を作成する。ここに上げる例では、データファイルシステム３１には、１つのファイルのタイプ、すなわち、タイプ「ｔｅｘｔｆｉｌｅ」のみが存在する。したがって、ＭＶＦＳは、サブディレクトリ「ｔｅｘｔｆｉｌｅ」４１０を作成する。そして、ＭＶＦＳは、ファイルのタイプごとの各特定のサブディレクトリに、指定のファイルタイプに対応する全てのファイルに対するリンクを作成する。ここに上げる例では、データファイルシステムにおいて、ファイルタイプ「ｔｅｘｔｆｉｌｅ」に対応するファイルは１つのみ、すなわち、ファイル「ｘ．ｔｘｔ」３１３のみが存在する。したがって、ＭＶＦＳは、リンク「ａ／ｂ／ｘ．ｔｘｔ」４１１をサブディレクトリ「ｔｅｘｔｆｉｌｅ」４１０内に作成する。
【００５５】
ここで、ＭＶＦＳは、メタデータ検索基準に対応する、データファイルシステム３１内のファイルをどのように見つけるのであろうか。上記の例を使用すると、ＭＶＦＳは、メタデータ属性「ｆｉｌｅｔｙｐｅ」を有するデータファイルシステム３１内の全てのファイルを見つけ、それらをメタデータ属性値に従って編成する必要がある。そうするために、ＭＶＦＳは、内部的に記憶されたメタデータおよびインデックスデータを使用して、メタデータ検索基準に対応するデータファイルシステム内のファイルを見つける。したがって、ＭＶＦＳは、全てのメタデータ属性「ｆｉｌｅｔｙｐｅ」についてメタデータおよびインデックスデータを検索する。そして、見つかった異なるファイルタイプをそれぞれ、ビューファイルシステムのサブディレクトリによって表す。次いで、ＭＶＦＳは、見つかった全ての指定のファイルタイプついて、メタデータおよびインデックスデータを検索し、サブディレクトリ「ｔｅｘｔｆｉｌｅ」４１０など、ビューファイルシステム４０内の、指定のファイルタイプに対応するサブディレクトリ内のファイルへのポインタを作成する。そして、ＭＶＦＳは、指定のファイルタイプ（＝指定の値を有するメタデータ属性値）を有する、メタデータおよびインデックスデータのデータベース５０５内にインデックス化された各ファイルへのポインタを作成する。ポインタは、メタデータおよびインデックスデータに記憶された経路情報から作成される。
【００５６】
第２の例として、ユーザおよび／またはアプリケーションが、値「ｔｅｘｔｆｉｌｅ」のメタデータ属性「ｆｉｌｅｔｙｐｅ」を有するデータファイルシステム３１内の全てのファイルについて、データファイルシステム３１のビューを作成したい場合を考える。そのためには、ユーザおよび／またはアプリケーションは、ディレクトリ「／ｖｉｅｗ／ｃｏｎｆｉｇ／ｔｅｘｔｆｉｌｅｓ」４１２をビューファイルシステム４０内に作成し、このときＭＶＦＳは、ファイル「ｃｏｎｄ．ｉｎｉ」４０７およびファイル「ｇｒｏｕｐ．ｉｎｉ」４０８を自動的に作成する。次に、ユーザおよび／またはアプリケーションは、自動的に作成された「ｃｏｎｄ．ｉｎｉ」ファイル４０７に、メタデータ検索基準「ファイルタイプ＝ｔｅｘｔｆｉｌｅ」を書き込む。この結果、ＭＶＦＳによる、ファイル「ｘ．ｔｘｔ」３１３をポイントするリンク「ａ／ｂ／ｘ．ｔｘｔ」４１３を有するディレクトリ「ｔｅｘｔｆｉｌｅｓ」４１２の自動作成が行われる。
【００５７】
上述の実施形態は、本発明を説明する一例として与えられている。
【００５８】
本発明の特定の実施形態によると、ユーザおよび／またはアプリケーションによってビューが作成されると、ＭＶＦＳによって、昇順もしくは降順のアルファベットの順序や、メタデータ属性もしくはメタデータ属性値（例えば、ファイル作成日、ファイル作成日に対する指定の値、ファイル作成日に対する指定の範囲など）に基づく順序など、順序付けの基準（ordering criteria）を指定するビュー構成ファイルなどの追加のビュー構成ファイルが作成される。
【００５９】
ファイルシステム名、ファイルディレクトリ名、およびファイル名は、例示の目的のために選択したものであり、他のファイルシステム名、ファイルディレクトリ名、およびファイル名も本発明に適合することを理解されたい。
【００６０】
メタデータ選択基準の指定に関して、他のタイプのシンタックスも可能であり、本発明に適合する。特定の実施形態よると、あるバーションのＸＭＬ（Extended Markup language）を使用して、メタデータ検索基準が指定される。特定の実施形態によると、ＸＰａｔｈ（ＸＭＬ  Ｐａｔｈ）クエリ言語を使用してメタデータ選択基準が指定される。
【００６１】
特定の実施形態によると、中間ハードウェアモジュールまたは中間ソフトウェアモジュールが、ユーザおよび／またはアプリケーションに提供され、このモジュールは、ユーザおよび／またはアプリケーションがビューを作成する操作を簡単にする。そのようなモジュールはさらに、ビューファイルシステムの実装の特異性（specificity）を隠すという利点を有する。このモジュールは、ビューの作成および管理に関する全ての複雑性をユーザおよび／またはアプリケーションから隠しつつ、ユーザおよび／またはアプリケーションをビューファイルシステムとインターフェースさせ、標準のファイルシステムアクセス方法を使用してビューファイルシステムにアクセスする。
【００６２】
図３および４について、以下のことが当てはまる。
【００６３】
本発明の特定の実施形態によると、内部的に記憶されたメタデータおよび／またはビュー構成データは、リレーショナルデータベースに記憶される。
【００６４】
一変形実施形態によると、内部的に記憶されたメタデータ、インデックスデータ、および／またはビュー構成データは、ハッシュテーブルに記憶される。ハッシュテーブルは、いわゆるハッシュ関数を使用してデータ識別子（キー）をデータ値に効率的にマッピングするデータ構造である。ハッシュ関数を使用して、キーを、データ値が記憶される配列要素（array element）のインデックスに変換する。ハッシュテーブルは、データのルックアップが、テーブルに記憶された要素の数に左右されないという利点を提供する。
【００６５】
本発明の特定の実施形態によると、ＭＶＦＳは、ユーザおよび／またはアプリケーションにより行われた修正のトラックをデータファイルシステムに保持する。ＭＶＦＳは、内部的に記憶されたメタデータとインデックスデータ、メタデータファイルシステムおよびビューファイルシステムであるその外部表現（external representation）を更新し、したがって、メタデータファイルシステムおよびビューファイルシステムを介して提示されるデータの外部提示と、内部に記憶されたデータとの一貫性を保つ。同様に、ＭＶＦＳは、ユーザおよび／またはアプリケーションにより行われた修正のトラックをメタデータファイルシステムに保持し、必要に応じて、インデックスデータおよび／またはビューファイルシステムを更新するが、これは、例えば、ユーザおよび／またはアプリケーションが新しいメタデータを追加するときに必要である。
【００６６】
メタデータファイルシステムおよび／またはビューファイルシステムは、ユーザおよび／またはアプリケーションによってアクセスされるときにのみ、ファイルシステムとして提示される。したがって、メタデータファイルシステムおよび／またはビューファイルシステムは仮想的であると言われる。この仮想化は、データの複製を防ぐことを可能にするという利点を有し、したがって、データの一貫性が無くなること（incoherency）を防ぐ。したがって、メタデータファイルシステムおよび／またはビューファイルシステムは、内部的に記憶されたデータから作成される単なる仮想的な提示にすぎない。ユーザおよび／またはアプリケーションによって、メタデータファイルシステムおよび／またはビューファイルシステムに対して行われる前述の全ての操作は、その後、ＭＶＦＳによって、内部的に記憶されたインデックスデータおよびメタデータに対する読み取り／書き込みの操作に変換される。
【００６７】
図５は、図２の装置２０など、本発明の特定の実施形態に従って本発明を実装する装置を示す。
【００６８】
装置２０は、以下の要素を備える。  
・ルータ５１０
・装置２０を、図２のＬＡＮ１２などのローカルネットワークと接続するためのローカルエリアネットワークインターフェース５０４。データ、および説明した３つのファイルシステムへのアクセスなどの要求を、図２の装置２３および２４などの装置の間で送信および受信するのを可能にする。  
・装置２０を、図２のネットワーク１５などの外部ネットワークと接続するためのネットワークインターフェース５０９  
・データファイルシステム、メタデータファイルシステム、およびビューファイルシステム、ならびにデータベース５０５からのインデックスデータおよびメタデータを記憶する図２の記憶装置２１などの外部装置との直接接続のためのインターフェース５０８
・ファイルシステムに関連する装置からのアクセスを処理し、要素５０２〜５０８の機能に命令を出すＭＶＦＳマネージャ
・ビューファイルシステムを構築および保持するためのビューファイルシステムビルダ５０２
・メタデータファイルシステムを構築および保持するためのメタデータファイルシステムビルダ５０３
・インデックスデータ、メタデータ、およびビュー構成データを記憶するためのデータベース管理システム（ＤＢＭＳ：Data Base Management System）５０５
・データファイルシステムからインデックスデータを抽出するためのインデックスデータエクストラクタ５０６
・データファイルシステムからメタデータを抽出するためのメタデータエクストラクタ５０７
【００６９】
図５の要素は以下のように相互に接続される。
【００７０】
ＭＶＦＳマネージャ５０１は、双方向接続５００１を介してビューファイルシステムビルダ５０２に、双方向接続５００５を介してメタデータファイルシステムビルダ５０３に、双方向接続５００３を介してインデックスデータエクストラクタ５０６に、および双方向接続５００２を介してメタデータエクストラクタ５０７に接続され、これにより、データおよびコマンドを、上述の要素５０２、５０３、５０６、５０７に送信し、データおよびコマンドの確認応答を上述の要素５０２、５０３、５０６、５０７から受信することができる。ＭＶＦＳマネージャ５０１はさらに、双方向接続５００７を介してＤＢＭＳ５０５に接続され、これによりデータを記憶し、取り出すことができる。ＤＢＭＳは、双方向接続５０１４を介して外部装置インターフェース５０８に接続され、これにより、外部の記憶装置２１上のデータベースからのデータを記憶領域２１３に保存し、そのデータを取り出すことができる。ＭＶＦＳマネージャ５０１はまた、双方向接続５０１９を介してＬＡＮネットワークインターフェース５０４にも接続され、これにより、データ、コマンド、およびコマンドの確認応答を、ＬＡＮ１２に接続された装置２３および２４と交換することができる。
【００７１】
ビューファイルシステムビルダ５０２、メタデータファイルシステムビルダ５０３、インデックスデータエクストラクタ５０６、およびメタデータエクストラクタ５０７は全て、それぞれ双方向接続５００９、５００８、５０１０、および５０１１を介してＤＢＭＳ５０５に接続されており、これにより、これらの要素は、データを記憶し、取り出すことができる。
【００７２】
ビューファイルシステムビルダ５０２、およびメタデータファイルシステムビルダ５０３はさらに、それぞれ双方向接続５００６および５００４を介してＬＡＮネットワークインターフェース５０４に接続されており、これにより、これらの要素は、ＬＡＮ１２に接続された装置２３および２４とデータを交換することができる。
【００７３】
インデックスデータエクストラクタ５０６、およびメタデータエクストラクタ５０７は、それぞれ接続５０１５および５０１８を介して外部装置インターフェース５０８に接続されており、これにより、これらのエクストラクタは、外部の記憶装置２１上に記憶されるデータファイルシステム３１内に記憶されたデータに、アクセスすることができる。メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０６は、双方向接続５０１２を介して相互に接続されており、メタデータおよびインデックスデータを抽出する処理において通信することができる。
【００７４】
ユーザおよび／またはアプリケーションは、双方向接続５０２０を介して相互接続されるＬＡＮネットワークインターフェース５０４および外部装置インターフェース５０８を介した、外部の記憶装置２１上に記憶されたデータファイルシステムへの読み取り／書き込みアクセスを有する。
【００７５】
装置２０は、ＬＡＮ１２に接続された装置２３および／または２４との間、外部ネットワーク１５内の装置とＬＡＮ１２内の装置との間で、パケットをルーティングするためのルータでもあるため、装置２０は、ＬＡＮネットワークインターフェース５０４と外部ネットワークインターフェース５０９とをそれぞれ双方向接続５０１３および５０１７を介して相互接続する、ルータ要素５１０を備える。
【００７６】
最終的に、装置２０は、双方向接続２０１を介してＬＡＮ１２に、双方向接続１０４を介して外部ネットワーク１５に、および双方向接続２００を介して外部の記憶装置２１に接続される。
【００７７】
これらの要素は、次のように協働して本発明を実装する。メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０６は、外部装置インターフェース５０８およびそれぞれ接続５０１８、５０１５を介してアクセスする外部装置２１上に記憶されたデータファイルシステムから、メタデータおよびインデックスデータを抽出する。これらが抽出したデータはＤＢＭＳ５０５に記憶されるが、記憶されるデータは、メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０６から、それぞれ接続５０１１および５０１０を介して、ＤＢＭＳ５０５に転送される。ＤＢＭＳ５０５は、その内部のデータベースに、メタデータエクストラクタ５０１１およびインデックスデータエクストラクタ５０１０から受信したコマンドおよびデータに応じて、新しいデータを記憶するか、既存のデータを更新する。ＤＢＭＳは、記憶装置２１上のデータベースの記憶を管理し、したがって、データベース内のデータを、例えば電力サージによって起こる誤消去などから確実に保護する。メタデータおよびインデックスデータが、ＤＢＭＳによって記憶されると、メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０６は、それぞれ接続５００２および５００３を介して、ＭＶＦＳマネージャ５０１に完了を通知する。次いで、ＭＶＦＳマネージャ５０１は、接続５００５を介してメタデータファイルシステムビルダ５０３に、データベースに記憶された情報に基づいてメタデータファイルシステムを構築するよう指示する。このため、メタデータファイルシステムビルダは、ＤＢＭＳ５０５によってデータベースに記憶されたデータを、接続５００８を介して読み出す。ＤＢＭＳ５０５によって管理されるデータベース内にメタデータファイルシステムが構築されるようにメタデータファイルシステムのデータを記憶することを含め、メタデータファイルシステムビルダがメタデータファイルシステムの構築を終了すると、メタデータファイルシステムビルダ５０３は、メタデータファイルシステムが構築されて使用できる状態であることを、接続５００５を介してＭＶＦＳマネージャ５０１に伝達する。ここで、装置２０は、ＬＡＮ１２に接続された装置２３および／または２４から、関連するメタデータに応じて、データファイルシステム内のデータへのアクセスに関する指示および要求を受け取ることができる状態にある。装置２３および／または２４は、ＬＡＮネットワークインターフェース５０４を通って接続５００４を介してメタデータファイルシステムビルダ５０３を経由して、メタデータファイルシステムに直接アクセスする。
【００７８】
例えば、ＬＡＮ１２の装置２３および／または２４によって行われるメタデータおよびデータファイルシステム３１のデータに対する修正は、メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０８によってモニタリングされ、それに応じて、メタデータエクストラクタ５０７およびインデックスデータエクストラクタ５０８は、ＤＢＭＳ５０５と通信してそのデータベースを更新する。
【００７９】
装置２３および／または２４が、ビューの構成およびビューのアクセスに関連する指示を、ＭＶＦＳマネージャ５０１に送信すると、ＭＶＦＳマネージャ５０１は、受信した指示に従って、ビューを構成して提示するように、ビューファイルシステムビルダに指示する。ビューファイルシステムビルダ５０２は、接続５００９を介してＤＢＭＳにアクセスすることによって、ビュー構成をデータベースに記憶する。ビューが構成されると、ビューファイルシステムビルダは、ビューファイルシステムビルダ５０２をＬＡＮインターフェース５０４に接続する接続５００６を介して、装置２３および／または２４と直接インターフェースして、ビューに対する読み取り要求に応答する。
【００８０】
上述のように機能するのは、「最初から」の場合、すなわち、メタデータもインデックスデータもまだ抽出されておらず、データベースはまだ満たされておらず、メタデータファイルシステムがまだ構築されていない場合である。これらの動作は、一度実行されると、ＤＢＭＳが、外部の記憶装置２１上に保存された記憶済みのデータをデータベースに入れることによって、素早く起動するのに必要な情報を記憶しているため、上記動作を装置２０の電源を入れる度に繰り返す必要がないことは理解されよう。名目上の機能として、すなわち、ＤＢＭＳ５０５によって管理されるデータベースがすでに満たされているとき、ＭＶＦＳマネージャ５０１は、既存のデータを更新し、正しい指示を要素５０２から５０７に送信してタスクを実行させる必要があるだけである。メタデータおよびインデックスデータの抽出などの時間のかかる機能には、低い優先度を与えることで、これらの機能の実行により、装置２０の他の機能を混乱させることが無いようにすることができる。そして、これらの優先度の低いタスクを、例えば、アイドル時間の間にバックグラウンド処理で実行することができ、あるいは、夜間やスタンバイ状態のとき、またはメタデータおよびインデックスデータに関するデータが修正されるときにのみ、または特定の量のデータが修正されるときにのみに実行されるようにプログラムすることもできる。
【００８１】
当然に、図５の実施形態は、本発明の特定の実施形態を説明する例示の実施形態である。本発明を様々な異なる実施形態において実装することができることが理解されよう。例えば、装置２０は、必ずしも、ルータを実装し、装置２３および／または２４を外部ネットワークにインターフェースさせるゲートウェイとは限らず、本発明の方法を実装するＬＡＮ内の集中型サーバでもよい。同様に、本発明を、プロセッサ上で実行されるアルゴリズムとして本発明の方法を実装するのに必要な処理能力を有する任意のＬＡＮ装置、あるいは例えば図５に記載される要素の一部または全てなど、本発明を実装するのに必要な専用ハードウェアを備えた任意のＬＡＮ装置において実装することができる。本発明は、説明したようにＬＡＮ１２などの有線のネットワークに接続された装置によって実装することができるだけでなく、任意のタイプの無線ネットワークについても実装することができることが理解されよう。さらに、本発明を実装する装置は、必ずしも図２に示されるような外部のディスクを搭載している必要はなく、不揮発性タイプのメモリや、装置２０に一体化されたディスク記憶装置、またはネットワークＬＡＮ１２に直接接続された外部ネットワーク記憶ディスクを用いたディスクレスの実装など、他の変形実施形態も本発明に適合することを理解されたい。
【００８２】
特定の実施形態によると、本発明は、全体としてハードウェアに実装することができ、例えば、専用の構成要素（例えば、ＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）、またはＶＬＳＩ（Very Large Scale Integration））として、装置に統合される別個の電子的構成要素として、または、ハードウェアとソフトウェアの組合せの形式で実装することができる。
【００８３】
特定の実施形態によると、本発明の方法を実装する装置は、専用のハードウェアを搭載した、または搭載しないパーソナルコンピュータである。
【００８４】
特定の実施形態によると、図５の特定の実施形態の要素など、本発明に係る機能を実装するのに必要な要素は、複数のセットトップボックス、複数のゲートウェイ、またはそれらの組み合わせなど、ネットワーク内で接続されるいくつかの装置に分散させることができ、これらの装置のそれぞれが、本発明を実装するために１つの仮想装置としてネットワーク上で相互に通信する。本発明のこのような実施形態は、例えば、既存の機器の処理能力を使用することにより、集中型サーバまたはゲートウェイを使用することを回避するのに有用である。
【００８５】
図６は、本発明の特定の実施形態により、例えば図２の装置２０によって実装される、関連するメタデータに従ってデータファイルシステムのファイルにアクセスするアルゴリズムを示す。
【００８６】
このアルゴリズムは、ステップ６００で開始し、実行に必要な変数を初期化する。次に、ステップ６０１において、例えば図５のメタデータエクストラクタ５０７を使用して、データファイルシステム３１からメタデータが抽出され、データベース、例えばデータベース５０５に記憶される。ステップ６０２において、例えばインデックスデータエクストラクタ５０６を使用して、データファイルシステムからインデックスデータが抽出され、データベース、例えばデータベース５０５に記憶される。テストステップ６０３において、メタデータファイルシステム３２へのアクセスが、ユーザおよび／またはアプリケーションによって要求されているかどうかを検証する。アクセスが要求されているとき、ステップ６０４が実行され、ステップ６０４において、例えば、メタデータファイルシステムビルダ５０３を使用して、メタデータファイルシステム３２へのアクセスが与えられる。その後、アルゴリズムは、矢印６１０によって図示されているように、テストステップ６０３を繰り返す。メタデータファイルシステム３２へのアクセスが要求されていないとき、テストステップ６０６が実行され、ステップ６０６において、ビューファイルシステム４０へのアクセスが、ユーザおよび／またはアプリケーションにより要求されているかどうかが検証される。アクセスが要求されているとき、ステップ６０７が実行され、ステップ６０７において、例えば、ビューファイルシステムビルダ５０２を使用して、ビューファイルシステム４０へのアクセスが与えられる。その後、アルゴリズムは、矢印６０９によって図示されているように、テストステップ６０３を繰り返す。ビューファイルシステムへのアクセスが要求されていないとき、アルゴリズムは、矢印６０８によって図示されるように、再度、テストステップ６０３に戻る。
【００８７】
本発明の特定の実施形態によると、メタデータファイルシステムへのアクセスを検査してアクセスを与えるステップ６０３〜６０４と、ビューファイルシステムへのアクセスを検査してアクセスを与えるステップ６０６〜６０７とが並行して実行されて、これにより、メタデータファイルシステムとビューファイルシステムへの同時アクセスが与えられる。特定の実施形態によると、メタデータファイルシステムへのアクセスを与えるステップ６０４においてメタデータが修正されると、メタデータを抽出するステップ６０１が実行され、その結果、データベース５０５に記憶されたメタデータが更新されて保持される。
本発明は以下の態様を含む。
（付記１）
データファイルシステム（３１）のファイルに、前記ファイルに関連するメタデータに従ってアクセスする方法であって、前記方法はファイル管理装置（２０）により実装され、前記方法は、前記メタデータが、メタデータファイルシステム（３２）に記憶されているように少なくとも１つのクライアント装置（２３、２４）に対して表され、前記メタデータファイルシステム（３２）は、前記データファイルシステム（３１）の構造に従って編成されており、
前記データファイルシステム（３１）内の少なくとも１つの第１のファイル（３１３）を、前記メタデータファイルシステム（３２）内の少なくとも１つの第１のディレクトリ（３２４）として表し、
前記データファイルシステム内の前記少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性を、前記メタデータファイルシステム（３２）内の少なくとも１つの第２のファイル（３２５）として表し、
前記少なくとも１つのメタデータ属性の少なくとも１つの値（３２６）を、前記少なくとも１つの第２のファイル（３２５）内に記憶されているように表し、
ビューファイルシステム（４０）が、前記データファイルシステム（３１）のファイルを前記ファイルに関連するメタデータに従って少なくとも１つの第２のディレクトリに編成し、前記少なくとも１つの第２のディレクトリは、前記データファイルシステム（３１）内の前記第１のファイルのうちの少なくとも１つに対する少なくとも１つのポインタをコンテンツとして含み、前記コンテンツは、少なくとも１つのメタデータ選択基準に従って決定され、
前記方法は、前記メタデータファイルシステム（３２）および前記ビューファイルシステム（４０）を使用して前記データファイルシステム（３１）の前記ファイルにアクセスするステップをさらに含み、前記メタデータファイルシステムおよび前記ビューファイルシステム、ならびに前記メタデータは、前記データファイルシステムにアクセスするのに使用されるアクセス方法を用いてアクセスされ、前記データファイルシステム、前記メタデータファイルシステム、および前記ビューファイルシステムは、同じルートのファイルシステムレベルに組み込まれる、前記方法。
（付記２）
前記メタデータファイルシステム（３２）および前記ビューファイルシステム（４０）は、前記データファイルシステム（３１）にアクセスするのに必要なものと同じの１組のファイルシステムアクセス方法を使用して前記少なくとも１つのクライアント装置（２３、２４）からアクセス可能である、付記１に記載の方法。
（付記３）
前記少なくとも１つのメタデータ選択基準は、前記少なくとも１つのクライアント装置（２３、２４）に対してアクセス可能な前記ビューファイルシステム内のサブディレクトリであって、その名称が前記少なくとも１つのメタデータ選択基準を識別するサブディレクトリ内の少なくとも１つの構成ファイルに含まれる、付記１または２に記載の方法。
（付記４）
前記少なくとも１つの構成ファイルは、メタデータ属性およびメタデータ属性値により表されるメタデータ選択基準を含む、付記３に記載の方法。
（付記５）
前記少なくとも１つの構成ファイルは、メタデータ属性により表されるメタデータソート基準を含む、付記３または４に記載の方法。
（付記６）
データファイルシステム（３１）のファイルに、前記ファイルに関連するメタデータに従ってアクセスするための装置（２０）であって、前記装置は、前記メタデータを、メタデータファイルシステム（３２）に記憶されているように少なくとも１つのクライアント装置（２３、２４）に表し、前記メタデータファイルシステム（３２）は、前記データファイルシステム（３１）の構造に従って編成されており、前記装置は、
前記メタデータファイルシステム（３２）を介して前記メタデータへのアクセスを与える手段（５０３）であって、
前記データファイルシステム（３１）内の少なくとも１つの第１のファイル（３１３）を、前記メタデータファイルシステム（３２）内の少なくとも１つの第１のディレクトリ（３２４）として表し、
前記データファイルシステム内の前記少なくとも１つの第１のファイルに関連する少なくとも１つのメタデータ属性を、前記メタデータファイルシステム（３２）内の少なくとも１つの第２のファイル（３２５）として表し、
前記少なくとも１つのメタデータ属性の少なくとも１つの値（３２６）を、前記少なくとも１つの第２のファイル（３２５）内に記憶されているように表す、手段と、
前記データファイルシステム（３１）のファイルを前記ファイルに関連するメタデータに従って少なくとも１つの第２のディレクトリ内に編成するビューファイルシステム（４０）を介して、前記データファイルシステム（３１）の前記ファイルへのアクセスを与える手段（５０２）であって、前記少なくとも１つの第２のディレクトリが、前記データファイルシステム（３１）の前記第１のファイルのうちの少なくとも１つに対する少なくとも１つのポインタをコンテンツとして含み、前記コンテンツが、少なくとも１つのメタデータ選択基準に従って決定される手段と
を備え、
前記メタデータファイルシステムおよび前記ビューファイルシステム、ならびに前記メタデータは、前記データファイルシステムにアクセスするのに使用されるアクセス方法を用いてアクセスされ、前記データファイルシステム、前記メタデータファイルシステム、および前記ビューファイルシステムは、同じルートのファイルシステムレベルに組み込まれる、前記装置。
（付記７）
前記メタデータへのアクセスを与える手段（５０３）により使用され、かつ前記ビューファイルシステム（４０）の前記ファイルへのアクセスを与えるため手段（５０２）により使用されるデータを含むデータベース（５０５）をさらに備えた、付記６に記載の装置（２０）。
【図１】
0005638608.tif 000002
【図２】
0005638608.tif 000003
【図３】
0005638608.tif 000004
【図４】
0005638608.tif 000005
【図５】
0005638608.tif 000006
【図６】
0005638608.tif 000007