JP2014510982A - ファイルシステムに関する改善 - Google Patents

ファイルシステムに関する改善 Download PDF

Info

Publication number
JP2014510982A
JP2014510982A JP2014503210A JP2014503210A JP2014510982A JP 2014510982 A JP2014510982 A JP 2014510982A JP 2014503210 A JP2014503210 A JP 2014503210A JP 2014503210 A JP2014503210 A JP 2014503210A JP 2014510982 A JP2014510982 A JP 2014510982A
Authority
JP
Japan
Prior art keywords
file
data
file system
requested
request
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.)
Ceased
Application number
JP2014503210A
Other languages
English (en)
Other versions
JP2014510982A5 (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.)
Quantel Ltd
Original Assignee
Quantel 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 Quantel Ltd filed Critical Quantel Ltd
Publication of JP2014510982A publication Critical patent/JP2014510982A/ja
Publication of JP2014510982A5 publication Critical patent/JP2014510982A5/ja
Ceased legal-status Critical Current

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/11File system administration, e.g. details of archiving or snapshots
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • 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/188Virtual file systems
    • 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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • 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/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

データストアとファイルレコードデータベースとを含むファイルシステムからファイルデータを提供する方法。この方法は、ファイルシステム内のファイルを開きたいという要求を受信するステップと、その要求のシンタックスを使用してファイルの所望のプロパティを特定するステップとを含む。次いで、ファイルの特定されたプロパティに基づいてファイルレコードデータベース内にファイルレコードが作成され、そのファイルレコードに関するファイルハンドルが返される。ファイルの特定されたプロパティに基づいて、データストア内のデータから、要求されたファイルを構成するデータが生成され、ファイルからのデータの一部分を読み取りたいという要求に応答して、生成されたデータの対応する部分が返される。
【選択図】図2

Description

本発明は、改善されたファイルシステムに関する。より詳細には、本発明は、明示的に求められた場合にのみファイルが作成されることを可能にする、ファイルシステムゲートウェイと、ファイルシステムからファイルデータを提供する方法とに関するが、それらだけに限定されない。本発明は、メディアファイルを構成するエッセンスデータを含むファイルシステムに特に適しているが、それだけに限定されない。
従来のファイルシステムが、図1において示されている。ファイルシステム1は、データストア2を含み、データストア2は、ファイルシステム1内に格納されるファイルを構成するデータを格納する。(データストア2内のデータの特定のセットは、グローバル一意識別子すなわち「GUID」などの識別タグを含むこともできる。)ファイルシステム1はさらに、ファイルレコードデータベース3を含み、ファイルレコードデータベース3は、ファイルレコードを含み、ファイルレコードは、ファイルシステム1内に格納されるファイルの詳細、とりわけ、それらのファイルを構成するデータストア2内のデータのロケーション、また、作成日付、ファイルの長さ、許可情報、およびその他の属性など、その他のメタデータを格納する。
ファイルシステム1へのアクセスは、ファイルシステムゲートウェイ4によって提供され、ファイルシステムゲートウェイ4は、たとえば、ファイルシステム1からのファイルの読取り/書込みを行いたいという要求を受け入れ、それに応じて、ファイルレコードデータベース3内のファイルレコードに基づいてデータストア2との間でデータの読取り/書込みを行い、同様に、ファイルシステムゲートウェイ4は、ファイルレコードデータベース3そのものの中のファイルレコードに対して読取り/書込みを行いたいという要求を受け入れる。ファイルシステムゲートウェイ3は、パーソナルコンピュータまたはサーバなどのデバイスに直接接続することができ、あるいはそのデバイスは、ファイルサーバまたはNAS(network−attached storage)デバイスとして、ネットワークを介してその他のデバイスと通信することができる。そのようなネットワークは、LAN(local area network)、またはインターネットなどの公的なネットワークとすることができる。
ファイルシステムゲートウェイ4は、ファイルプロトコル、たとえばSMB2プロトコル(Microsoftによって開発され、http://msdn.microsoft.com/en−us/library/cc246482(v=prot.13).aspxにおいて規定されている)を使用して通信する。SMB2プロトコルは、数ある中でも、下記のタイプの要求を含む(それぞれは、実際にはコマンドのグループ内に存在し、たとえばグループDIRは、コマンドQUERY_DIRECTORYおよびCHANGE_NOTIFYを含む):
DIR−特定のディレクトリ内のファイルおよびフォルダのリストを返す;
CREATE/OPEN−ファイルを開き、そのファイルを指すために使用される一時的な識別子であるファイルハンドル(またはファイル識別子、「FID」)を作成して返す;
READ−ファイルを構成しているデータを読み取る;
WRITE−ファイルにデータを書き込む;
CLOSE−ファイルを閉じて、FIDを取り下げる。
ファイルシステム1は、たとえばメディアファイルストアとすることができ、そのケースにおいては、データストア2は、メディアデータ、すなわちビデオおよびオーディオデータ(従来「エッセンス」データとして知られている)を格納する。ファイルシステム1内のファイルは、従来のケースと同様に、単一のGUIDを有するデータストア2からのデータの単一のセットから構成することができる。ファイルは、「クリップ」とすることもでき、このケースにおいては、ファイルは、データストア2内のデータの1つまたは複数のセットからのデータの複数の部分から構成され、どのようにしてクリップが構築されるかについての詳細は、ファイルレコードデータベース3の中のファイルレコード内に格納されるファイルについての詳細の一部となっている。クリップは一般に、ファイルシステム1内に既に存在するファイルを手作業で編集することによって作成される。
特定のクリップを、いくつかの異なるバージョン、たとえば別々のファイルフォーマット、サンプルレート、および/またはイメージサイズで利用可能にすることが望ましい場合がある。しかし、別々のバージョンファイルを格納するためには、大量のスペースが必要とされ、それらのバージョンファイルの作成は、オリジナルクリップを構成しているエッセンスデータの処理を必要とすることがあり、それには時間がかかる場合がある。これを緩和するために、「バーチャル」ファイルシステムが提案されている。
2008年8月28日に公開されたWO2008/8159A1(Quantel Limited)は、そのようなバーチャルファイルシステムについて記載している。そこに記載されているファイルシステムは、クエリーを受けた場合に、いくつかの異なるバージョンファイルが利用可能であることを示す。しかし、それらの異なるバージョンファイルは、実際にはファイルシステム内に明示的に格納されておらず、その代わりに、それらのバージョンファイルのコンテンツは、要求された場合にのみ作成される。
2000年3月16日に公開されたWO00/14632A1(Metaphorics,LLC)は、別のバーチャルファイルシステムについて記載しており、そのバーチャルファイルシステムにおいては、同様に、要求されるファイルのコンテンツは、要求された場合にのみ作成される。
したがって、そのようなバーチャルファイルシステムは、必要とされるストレージスペースの問題、および要求される可能性があるすべてのバージョンを前もって作成しておくために要する時間の問題を回避しつつ、いくつかの異なるバージョンファイルを提供することができる。しかし、どのバージョンが提供されることになるかは、前もって設定しなければならない。なぜなら、それによって、クエリーを受けたときに存在している旨をファイルシステムが示すバージョンファイルが決定されるためである。
WO2008/8159A1 WO00/14632A1
http://msdn.microsoft.com/en−us/library/cc246482(v=prot.13).aspx
本発明は、上述の問題を緩和することを目指す。代替として、および/または追加として、本発明は、改善された、よりフレキシブルなバーチャルファイルシステムを提供することを目指す。
本発明の第1の態様によれば、データストアとファイルレコードデータベースとを含むファイルシステムからファイルデータを提供する方法が提供され、この方法は、
ファイルシステム内のファイルを開きたいという要求を受け取るステップと、
その要求のシンタックスを使用してファイルの所望のプロパティを特定するステップと、
ファイルの特定されたプロパティに基づいてファイルレコードデータベース内にファイルレコードを作成するステップと、
そのファイルレコードに関するファイルハンドルを返すステップと、
ファイルの特定されたプロパティに基づいて、データストア内のデータから、要求されたファイルを構成するデータを生成するステップと、
ファイルからのデータの一部分を読み取りたいという要求に応答して、生成されたデータの対応する部分を返すステップとを含む。
この方法を用いれば、ファイルは、それらのファイルを開きたいという要求が受け取られた場合にのみ作成され、したがって、それらのファイルは、前もって作成しておく必要はなく(また、それらのファイルがまったく要求されないならば、作成する必要はまったくなく)、それでもなお、要求を行っているシステムにとっては、既に存在しているように見える。これが意味していることは、要求のシンタックスからファイルの所望のプロパティを特定するための適切なスキームを使用することによって、無限に近い範囲のファイルをオンデマンドで提供することができるということである。たとえば、ピクセルでのファイルの高さがファイル名の中の数字として提供され、それによって、任意の対応するサイズのイメージファイルを提供することが可能になるスキームを使用して、別々のサイズのイメージファイルを提供するためのファイルシステムを提供することができる。別の利点として、この方法は、要求を行っているシステムにとって気付かれないようにできる。なぜなら、そのシステムにとっては、ファイルが既に存在しているように見えることになるためであり、それによって、この方法を既存のシステムとともに使用することが可能となる(それらのシステムが要求するファイルの所望のプロパティを、それらのシステムが行う要求のシンタックスから特定することができる限り)。
好ましくは、ファイルを構成するデータの部分は、要求された場合にのみ生成される。これによって、まったく求められることのないデータが生成されること(それは非効率的である)が回避される。しかし、別法として、1つのファイルを構成するすべてのデータを、ファイルレコードがはじめに作成された時点で生成しておくこともできる。
好ましくは、要求されたファイルのファイル名は、そのファイルに生成されるデータの元となるデータを含むファイルシステム内の既存のファイルを特定する。やはり好ましくは、要求されたファイルの拡張子は、その要求されたファイルのファイルフォーマットを特定する。これらによって、要求されたファイルのコンテンツおよびファイルフォーマットがその要求内に表示されるようにするための便利な方法が提供される。有利には、要求されたファイルが配置されているディレクトリの階層は、その要求されたファイルのプロパティを特定する。さらに有利には、階層内のそれぞれのディレクトリは、ファイルのそれぞれのプロパティを特定する。これによって、要求されたファイルの複数の所望のプロパティがその要求内に表示されるようにするための便利な構造化された方法が提供される。
有利には、要求のシンタックスは、データベースにクエリーを行うためのデータベースクエリーを生成するために使用され、ファイルの所望のプロパティは、前記データベースクエリーの結果を使用して特定される。このクエリーは、たとえば、要求されたファイルが配置されているディレクトリの階層から生成することができる。このクエリーは、結果を返すことができ、次いでその結果は、要求されたファイルのファイル名および/または拡張子を使用してフォーマット設定される。
本発明の第2の態様によれば、データストアとファイルレコードデータベースとを含むファイルシステムのためのファイルシステムゲートウェイが提供され、このファイルシステムゲートウェイは、
ファイルシステム内のファイルを開きたいという要求に応答して、その要求のシンタックスを使用してファイルの所望のプロパティを特定し、ファイルの特定されたプロパティに基づいてファイルレコードデータベース内にファイルレコードを作成し、そのファイルレコードに関するファイルハンドルを返すように構成されており、
このファイルシステムゲートウェイは、ファイルの特定されたプロパティに基づいて、データストア内のデータから、ファイルを構成するデータを生成し、ファイルからのデータの一部分を読み取りたいという要求に応答して、生成されたデータの対応する部分を返すようにさらに構成されている。
好ましくは、ファイルを構成するデータの部分は、要求された場合にのみ生成される。
好ましくは、要求されたファイルのファイル名は、そのファイルに生成されるデータの元となるデータを含むファイルシステム内の既存のファイルを特定する。やはり好ましくは、要求されたファイルの拡張子は、その要求されたファイルのファイルフォーマットを特定する。有利には、要求されたファイルが配置されているディレクトリの階層は、その要求されたファイルのプロパティを特定する。さらに有利には、階層内のそれぞれのディレクトリは、ファイルのそれぞれのプロパティを特定する。
有利には、このファイルシステムゲートウェイは、データベースにクエリーを行うためのデータベースクエリーを要求のシンタックスから生成するように構成されており、ファイルの所望のプロパティは、そのデータベースクエリーの結果を使用して特定される。
このファイルシステムゲートウェイは、ファイルレコードデータベースを含むことができる。
本発明の第3の態様によれば、上述のデータストア、ファイルレコードデータベース、およびファイルシステムゲートウェイを含むファイルシステムが提供される。
本発明の第4の態様によれば、実行されたときに、上述の方法のうちのいずれかの方法のステップを実行するように構成されているコンピュータプログラム製品が提供される。
本発明の第5の態様によれば、コンピューティングデバイス上で実行されたときに、上述のファイルシステムゲートウェイを提供するように構成されているコンピュータプログラム製品が提供される。
本発明の一態様に関連して説明されている特徴を本発明のその他の態様へと組み込むことができるということは、もちろん理解されるであろう。たとえば、本発明の方法は、本発明の装置を参照して説明されている特徴のうちのいずれを組み込むこともでき、その逆もまた同様である。
次いで本発明の実施形態について、単なる例として、添付の概略図を参照しながら説明する。
従来のファイルシステムの概略図である。 本発明の第1の実施形態によるファイルシステムを含むネットワーク化されたコンピュータシステムの概略図である。 CREATE/OPEN要求に応答した第1の実施形態のファイルシステムのオペレーションを示すフローチャートである。 READ要求に応答した第1の実施形態のファイルシステムのオペレーションを示すフローチャートである。 本発明の第2の実施形態によるファイルシステムを含むネットワーク化されたコンピュータシステムの概略図である。 第2の実施形態のファイルシステムのオペレーションを示すフローチャートである。
次いで、本発明の第1の実施形態について、図2から図4を参照しながら説明する。図2は、この実施形態によるファイルシステム11を含むネットワーク化されたコンピュータシステムの概略図である。従来のファイルシステムの場合と同様に、ファイルシステム11は、ファイルデータを格納するデータストア12と、ファイルの詳細を格納するファイルレコードデータベース13とを含む。データストア12およびファイルレコードデータベース13は、完全に従来のものとすることができる。
ファイルシステム11はさらに、ファイルシステムゲートウェイ14を含み、ファイルシステムゲートウェイ14は、ネットワーク16を介して、以降で説明するようにファイルシステム11へのアクセスを提供する。ファイルシステムゲートウェイ14は、所定の構成スキーム15に従ってファイルを提供するように構成されている(構成スキーム15は、図1においては概略的に示されているが、実際には別個のエンティティではなく、ファイルシステムゲートウェイ14の特定のセットアップである)。
次いで、ファイルシステム11のオペレーションについて説明する。ファイルシステムゲートウェイ14は、SMB2プロトコルに従ってネットワーク16上のデバイスと通信する。言い換えれば、ファイルシステムゲートウェイ14は、SMB2プロトコルによって定義されている要求を受け入れ、SMB2プロトコルを使用して別のシステムによって予期されているタイプおよびフォームの応答を返す。しかしファイルシステム11は、構成スキーム15によって定義されている特定の状況に関して従来のSMB2ファイルサーバをシミュレートするだけであるという意味で、SMB2プロトコルを完全に実施するわけではない。そのシミュレーションは完全ではなく、とりわけ、ファイルシステム11の動作は、すべての状況においてSMB2プロトコルによって定義されている動作と一致するわけではない。
上で提供されたコアSMB2要求に応答したファイルシステムゲートウェイ14の動作は、下記のとおりである。
DIR−従来のSMB2ファイルシステムと同様に、これは、特定のディレクトリ内のファイルおよびフォルダのリストを返す。
CREATE/OPEN−CREATE/OPEN要求に応答したファイルシステムゲートウェイ14の動作について、図3のフローチャートを参照しながら説明する。はじめに、CREATE/OPEN要求が受け取られる(ステップ21)。CREATE/OPEN要求は、開かれるファイルのロケーションおよび名前を、ディレクトリの階層の後にファイル名が続く形式、たとえば「\dir1\dir2\dir3\file.ext」として定義するテキスト文字列を含み、このテキスト文字列のシンタックスが分析される(ステップ22)。たとえば、要求されているファイルが配置されている(と予想される)ディレクトリの階層、およびファイル拡張子によって提供されるそのファイルの予想されるフォーマットが抽出される。次いで、そのファイルの予想されるプロパティが、構成スキーム15によって提供される構成から特定される(ステップ23)。特定されたプロパティを使用して、そのファイルに関する適切なファイルレコードが、ファイルレコードデータベース13内に作成される(ステップ24)。次いで、そのファイルに関するファイルハンドルが作成され(ステップ25)、返される(ステップ26)。
READ−READ要求に応答したファイルシステムゲートウェイ14の動作について、図4のフローチャートを参照しながら説明する。はじめに、READ要求が受け取られる(ステップ31)。READ要求は、ファイルハンドルを含み、バイトレンジを使用して、ファイルからのデータの特定の部分を指定することができる。ファイルハンドルは、ファイルレコードデータベース13内に格納されているファイルレコードを指し、このファイルレコードから、ファイルの予想されるプロパティが得られる(ステップ32)。(それらの予想されるプロパティは、CREATE/OPEN要求の結果としてファイルレコードが作成された時点で特定される。その段階で、それらのプロパティの詳細をファイルレコード内に明示的に格納することができる。あるいは、それらのプロパティをファイルのロケーションおよび名前ならびに構成スキーム15から再作成することもできる。)次いで、要求されているデータが、それらの予想されるプロパティに基づいてデータストア12内のデータから生成され(ステップ33)、返される(ステップ34)。生成されたデータは、その後の時点で再び要求される場合に備えてデータストア12内に格納することができ、または別法として破棄することもできる。
WRITE−適切な場合には、データストア12内のデータは、WRITE要求によって指示された際に更新される。しかし、たとえば、要求に応じて別々のフォーマット/クォリティのファイルが作成される実施形態においては、第1のフォーマット/クォリティでデータストア12内に格納されているデータを、そのファイルの別のフォーマット/クォリティでのバーチャルバージョンに対して行われたWRITE要求に基づいて更新することは、適切でない場合がある。したがって、多くのケースにおいては、WRITE要求は影響を及ぼさない。いくつかの実施形態においては、新たに作成されたファイルへの書込みのみを可能にすることができる。
CLOSE−従来のSMB2ファイルシステムと同様に、ファイルが閉じられ、ファイルハンドルが取り下げられる。対応するファイルレコードは、削除することができ、またはその後の時点で再びファイルが要求される場合に備えて保存することもできる。
したがって、この実施形態においては、CREATE/OPEN要求は、従来は既存のファイルに関するファイルハンドルを作成するために使用されるが、このケースにおいては、ファイルシステム11によってそれまでにいかなるファイルも存在していない場合に、予想されるプロパティ(または少なくとも、そのファイルレコード)を有するファイルが作成されるようにする。これは、とりわけ、DIR要求およびCREATE/OPEN要求によって返される応答において見て取ることができ、DIR要求が、あるディレクトリが空であることをはじめに示す場合があるが、それにもかかわらず、同じディレクトリ内のあるファイルに関するCREATE/OPEN要求は、そのファイルに関するファイルハンドルをそれでもなお成功裏に返すことができる。次いで、そのファイルが現在はそのディレクトリ内に存在していることを後続のDIR要求が示すことになる。(代替実施形態においては、ファイルのプロパティにおける変化に起因して望ましくない問題(「競合状態」など)が生じる可能性を回避するために、ファイルをDIR要求から隠すことができる。)
具体例を提供するために、ファイルシステム11は、60FPS(frames per second)のフレームレートおよび4000×3000ピクセルのフレームサイズを有するAVIフォーマットの「リアル」ビデオファイルmovie1.aviおよびmovie2.aviを含むことができる。これらのファイルに関するファイルレコードは、これらのファイルが\movies\60\4000\というディレクトリ階層に配置されていることを示し、データストア12内におけるこれらのファイルに関する(実際に存在する)エッセンスデータのロケーションを提供する。これらのファイルに関するSMB2要求は、従来のファイルシステムの場合と同様に取り扱われ、言い換えれば、これらのファイルは、従来のSMB2ファイルシステム内のファイルと同じ方法で開くこと、読み取ること、書き込むこと、閉じることなどが可能である。
しかし、構成スキーム15は、ファイルシステム11内の既存ではないファイルの予想されるプロパティを特定するためのルールを提供する。たとえば、構成スキーム15は、下記のロケーションにおける下記のファイルが下記のようなプロパティを有することを特定することができる:
\movies\30\4000\movie1.avi−30FPSのフレームレートおよび4000×3000ピクセルのフレームサイズを有するAVIフォーマットのビデオファイルmovie1.aviの1つのバージョン。
\movies\30\200\movie2.mp4−30FPSのフレームレートおよび200×150ピクセルのフレームサイズを有するMPEG4フォーマットのビデオファイルmovie2.aviの1つのバージョン。
\stills\120.00\4000\movie1.bmp−120.00秒の間隔で、ビットマップフォーマットで、かつ4000×3000ピクセルのサイズでビデオファイルmovie1.aviから取り出したスチール。
\stills\37.43\200\movie2.jpg−37.43秒の間隔で、JPEGフォーマットで、かつ200×150ピクセルのサイズでビデオファイルmovie2.aviから取り出したスチール。
したがって、それぞれのケースにおいて、あるファイルに関するCREATE/OPEN要求は、そのファイルに関する適切なファイルレコードが作成されるようにし、そしてREAD要求は、オリジナル「リアル」ファイルのエッセンスデータから適切なデータが生成されるようにするということがわかる。このように、このファイルシステムは、オリジナルビデオファイルの別のフォーマット/クォリティでのバージョンであるファイルと、また同様に、それらのビデオファイルからの別のフォーマット/クォリティでのスチールとを、それらのファイルそのものを開きたいという要求に基づいて、あたかもそれらのファイルが既に存在していたかのように、提供することができる。
次いで、本発明の第2の実施形態について、図5および図6を参照しながら説明する。図5は、この実施形態によるファイルシステム41を含むネットワーク化されたコンピュータシステムの概略図である。前述の実施形態の場合と同様に、ファイルシステム41は、従来のデータストア42と、ファイルレコードデータベース43と、ファイルシステムゲートウェイ44とを含む。
ファイルシステムゲートウェイ44は、(Microsoftによって開発された)IIS(Internet Information Services)ウェブサーバ45と通信状態にあり、実際には、単一のサーバが、ファイルシステム41と、そのサーバがIISウェブサーバとして機能することを可能にするIISサーバアプリケーションの両方を組み込むことができる。IISウェブサーバ45は、ビデオストリーミングクライアントアプリケーション48、たとえばSilverlightアプリケーションを実行するパーソナルコンピュータ47と、インターネット46を介して通信する。
この実施形態においては、IISウェブサーバは、Smooth Streamingを使用して、ビデオをストリーミングする。Smooth Streamingとは、ビデオを、そのビデオがストリーミングされる帯域幅に適したクォリティレベルで提供するメディアサービスである。実質的には、ビデオは、クライアントによって、そのクライアントにとって利用可能な帯域幅がサポートできる最高のクォリティで要求される。帯域幅の不足に起因してビデオの断片がクライアントによって間に合うように受信されない場合には、クライアントは、自分が要求するビデオのクォリティを下げる。同様に、クライアントは、さらなる帯域幅が利用可能であることに気づいた場合には、自分が要求するビデオのクォリティを上げる。
ビデオの別々のクォリティを提供するために、IISウェブサーバ45は、自分が必要とする可能性があるすべてのクォリティレベルでストリーミングされるビデオの複数のバージョンを提供する複数のファイルが利用可能であることを必要とする。それらのファイルは、ISMVフォーマットであり、ISMVフォーマットとは、MPEG4フォーマットビデオの検索可能な断片、たとえば2秒間の断片を含むフォーマットである。これによって、IISサーバは、ストリーミングされているビデオの元となるファイルを変更すること、ひいては、ストリーミングされるビデオでのクォリティを変更することが可能になる。なぜなら、新たなファイル内のストリーミングすべき次なる断片を検索することができるためである。ファイルは、\streams\ID\などのディレクトリにおいて提供され、ファイルのファイル名は、そのファイル内のビデオデータのクォリティを示す。
次いで、このシステムの動作について、図6のフローチャートを参照しながら説明する。ファイルシステム41は、利用可能な最高のクォリティでのビデオの「リアル」ベースファイルを含む。はじめに、ビデオストリーミングクライアント48が、特定のクォリティでのビデオデータをIISウェブサーバ45に要求する(ステップ51)。そしてこれによって、IISウェブサーバ45は、ファイルシステム41内の対応するファイルを開くよう要求する(ステップ52)。ファイルシステムゲートウェイ44が、求められているプロパティを有するファイルに関する新たなファイルレコードをファイルレコードデータベース43内に作成する(ステップ53)。クライアント48が、ビデオデータをIISウェブサーバ45に要求すると(ステップ54)、IISウェブサーバ45は、ビデオデータをファイルシステム41に要求し(ステップ55)、このビデオデータは、ファイルシステム41によって、求められているプロパティを伴って、「リアル」ベースビデオファイルに関するデータから生成される。そして、その生成されたデータは、IISウェブサーバ45に返され、次いでクライアント48に返される。
ステップ54から56は、同じクォリティのビデオデータが求められる限り、繰り返される。しかし、クライアントが別のクォリティのビデオデータを要求した場合には、プロセスは、所望のプロパティを有する新たなファイルを作成するために、ステップ51へ戻る。
このように、この実施形態においては、ファイルシステム41は、ファイルを作成し、ファイルのファイル名に基づいてビデオデータを生成して返すように構成されており、言い換えれば、ファイルシステム41の構成スキームは、IISウェブサーバ45からの要求に応答したファイルシステム41の動作が、IISウェブサーバ45によって求められているとおりになるように定義されている。
本発明について、特定の実施形態を参照しながら説明してきたが、本発明は、本明細書に具体的に記載されていない多くの異なる変形形態にも適しているということが当業者によって理解されるであろう。たとえば、本明細書において提供されている実施形態は、SMB2ファイルシステムプロトコルを実施する(と思われる)ファイルシステムについて記載しているが、本発明は、その他のファイルシステムプロトコルとともに同様に使用することができる。さらに、本発明は、メディアファイルを格納するファイルシステムに特に適用可能であるが、さまざまなフォーマット/クォリティでのファイル(たとえば、Unicode、HTML、および独自仕様のワードプロセッサフォーマットなど、さまざまなフォーマットで提供することができるテキストファイル)を提供するために使用される任意のファイルシステムに適用可能である。本発明によるファイルシステムは、別々の要件を伴う複数のシステム(アプリケーション、分散型ソフトウェアシステム、またはハードウェアシステムなど)に関する複数のファイルを提供することを、いかなる特定のシステムに関しても、そのファイルシステムを、そのシステムの使用中に生じる状況の中で、その当該システムによって求められるとおりに動作させる適切な構成スキームを定義することによって、行うことができるということが特に理解されるであろう。

Claims (18)

  1. データストアとファイルレコードデータベースとを含むファイルシステムからファイルデータを提供する方法であって、
    前記ファイルシステム内のファイルを開きたいという要求を受け取るステップと、
    前記要求のシンタックスを使用して前記ファイルの所望のプロパティを特定するステップと、
    前記ファイルの前記特定されたプロパティに基づいて前記ファイルレコードデータベース内にファイルレコードを作成するステップと、
    前記ファイルレコードに関するファイルハンドルを返すステップと、
    前記ファイルの前記特定されたプロパティに基づいて、前記データストア内のデータから、前記要求されたファイルを構成するデータを生成するステップと、
    前記ファイルからのデータの一部分を読み取りたいという要求に応答して、前記生成されたデータの対応する部分を返すステップと
    を含む方法。
  2. 前記ファイルを構成するデータの前記部分が、要求された場合にのみ生成される、請求項1に記載の方法。
  3. 前記要求されたファイルのファイル名が、前記ファイルに生成される前記データの元となる前記データを含む前記ファイルシステム内の既存のファイルを特定する、請求項1または2に記載の方法。
  4. 前記要求されたファイルの拡張子が、前記要求されたファイルのファイルフォーマットを特定する、前記請求項1〜3のいずれかに記載の方法。
  5. 前記要求されたファイルが配置されているディレクトリの階層が、前記要求されたファイルのプロパティを特定する、請求項1から4のいずれかに記載の方法。
  6. 前記階層内のそれぞれのディレクトリが、前記ファイルのそれぞれのプロパティを特定する、請求項5に記載の方法。
  7. 前記要求の前記シンタックスが、データベースにクエリーを行うためのデータベースクエリーを生成するために使用され、前記ファイルの前記所望のプロパティが、前記データベースクエリーの結果を使用して特定される、請求項1から6のいずれかに記載の方法。
  8. データストアとファイルレコードデータベースとを含むファイルシステムのためのファイルシステムゲートウェイであって、
    前記ファイルシステム内のファイルを開きたいという要求に応答して、前記要求のシンタックスを使用して前記ファイルの所望のプロパティを特定し、前記ファイルの前記特定されたプロパティに基づいて前記ファイルレコードデータベース内にファイルレコードを作成し、前記ファイルレコードに関するファイルハンドルを返すように構成されており、
    前記ファイルの前記特定されたプロパティに基づいて、前記データストア内のデータから、前記ファイルを構成するデータを生成し、前記ファイルからのデータの一部分を読み取りたいという要求に応答して、前記生成されたデータの対応する部分を返すようにさらに構成されている、ファイルシステムゲートウェイ。
  9. 前記ファイルを構成するデータの前記部分を、要求された場合にのみ生成するように構成されている、請求項8に記載のファイルシステムゲートウェイ。
  10. 前記要求されたファイルのファイル名が、前記ファイルに生成される前記データの元となる前記データを含む前記ファイルシステム内の既存のファイルを特定する、請求項8または9に記載のファイルシステムゲートウェイ。
  11. 前記要求されたファイルの拡張子が、前記要求されたファイルのファイルフォーマットを特定する、請求項8から10のいずれかに記載のファイルシステムゲートウェイ。
  12. 前記要求されたファイルが配置されているディレクトリの階層が、前記要求されたファイルのプロパティを特定する、請求項8から11のいずれかに記載のファイルシステムゲートウェイ。
  13. 前記階層内のそれぞれのディレクトリが、前記ファイルのそれぞれのプロパティを特定する、請求項12に記載のファイルシステムゲートウェイ。
  14. データベースにクエリーを行うためのデータベースクエリーを前記要求の前記シンタックスから生成するように構成されており、前記ファイルの前記所望のプロパティが、前記データベースクエリーの結果を使用して特定される、請求項8から13のいずれかに記載のファイルシステムゲートウェイ。
  15. 前記ファイルレコードデータベースを含む、請求項8から14のいずれかに記載のファイルシステムゲートウェイ。
  16. 請求項8から15のいずれかに記載のデータストア、ファイルレコードデータベース、およびファイルシステムゲートウェイを含むファイルシステム。
  17. 実行されたときに、請求項1から7に記載の方法のいずれかの方法のステップを実行するように構成されているコンピュータプログラム製品。
  18. コンピューティングデバイス上で実行されたときに、請求項8から15のいずれかに記載のファイルシステムゲートウェイを提供するように構成されているコンピュータプログラム製品。
JP2014503210A 2011-04-07 2012-03-20 ファイルシステムに関する改善 Ceased JP2014510982A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1105976.3 2011-04-07
GB1105976.3A GB2489932B (en) 2011-04-07 2011-04-07 Improvements relating to file systems
PCT/GB2012/050602 WO2012136977A2 (en) 2011-04-07 2012-03-20 Improvements relating to file systems

Publications (2)

Publication Number Publication Date
JP2014510982A true JP2014510982A (ja) 2014-05-01
JP2014510982A5 JP2014510982A5 (ja) 2015-04-30

Family

ID=44072169

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014503210A Ceased JP2014510982A (ja) 2011-04-07 2012-03-20 ファイルシステムに関する改善

Country Status (7)

Country Link
US (1) US11714858B2 (ja)
EP (1) EP2695089A2 (ja)
JP (1) JP2014510982A (ja)
AU (1) AU2012238409A1 (ja)
CA (1) CA2832353A1 (ja)
GB (1) GB2489932B (ja)
WO (1) WO2012136977A2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2489932B (en) 2011-04-07 2020-04-08 Quantel Ltd Improvements relating to file systems
GB2495268B (en) 2011-08-05 2019-09-04 Quantel Ltd Methods and systems for providing file data for media files
US10089315B2 (en) * 2014-08-22 2018-10-02 AsterionDB, Inc. Systems, apparatus, and methods for accessing data from a database as a file
US12072850B2 (en) * 2021-07-28 2024-08-27 Grass Valley Limited Virtual file system for dynamically providing media content

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08110869A (ja) * 1994-10-12 1996-04-30 Fuji Xerox Co Ltd ファイルシステム
JP2004120180A (ja) * 2002-09-25 2004-04-15 Brother Ind Ltd 画像データ転送システム、画像読取装置、及びプログラム
JP2010211803A (ja) * 2010-03-23 2010-09-24 Seiko Epson Corp 閲覧者の表示要求に応じた画像表示

Family Cites Families (53)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5564445A (en) 1978-11-08 1980-05-15 Nec Corp Code converter circuit
US6029160A (en) * 1995-05-24 2000-02-22 International Business Machines Corporation Method and means for linking a database system with a system for filing data
US5864870A (en) * 1996-12-18 1999-01-26 Unisys Corp. Method for storing/retrieving files of various formats in an object database using a virtual multimedia file system
US6411970B1 (en) * 1998-05-21 2002-06-25 Intergraph Corporation Methods and apparatus for an automatic file indexer
US6356863B1 (en) * 1998-09-08 2002-03-12 Metaphorics Llc Virtual network file server
US6741608B1 (en) 1999-01-29 2004-05-25 Avaya Technology Corp. Dynamically configurable system and method for transcoding streaming data and telecommunications infrastructure the same
US6477544B1 (en) * 1999-07-16 2002-11-05 Microsoft Corporation Single instance store for file systems
US7194506B1 (en) * 2000-12-21 2007-03-20 Vignette Corporation Method and system for cache management of locale-sensitive content
US7197531B2 (en) * 2000-12-29 2007-03-27 Fotomedia Technologies, Llc Meta-application architecture for integrating photo-service websites for browser-enabled devices
US7109985B2 (en) * 2001-12-14 2006-09-19 Liquidpixels, Inc. System and method for dynamically generating on-demand digital images
US7640578B2 (en) * 2002-07-08 2009-12-29 Accellion Inc. System and method for providing secure communication between computer systems
JP2004079087A (ja) 2002-08-20 2004-03-11 Sony Corp 記録装置および方法、記録媒体、並びにプログラム
US7450612B2 (en) 2002-12-04 2008-11-11 Koninklijke Electronics N.V. Packetization of layered media bitstreams
JP4201590B2 (ja) 2002-12-24 2008-12-24 パナソニック株式会社 データ通信装置、データ通信方法、データ通信プログラム及びデータ通信プログラムを記録した記録媒体
US7913164B1 (en) * 2003-04-02 2011-03-22 Quiro Holdings, Inc. Serving an image in multiple formats from a photohosting website
US20040207657A1 (en) * 2003-04-02 2004-10-21 Svendsen Hugh B. Serving an image in multiple formats from a photohosting website
KR20060076770A (ko) * 2003-09-30 2006-07-04 소니 가부시끼 가이샤 콘텐츠 취득 방법
US7185030B2 (en) * 2004-03-18 2007-02-27 Hitachi, Ltd. Storage system storing a file with multiple different formats and method thereof
US20080205860A1 (en) 2005-02-18 2008-08-28 Koninklijke Philips Electronics, N.V. Method Of Live Submitting A Digital Signal
US20060224760A1 (en) 2005-03-15 2006-10-05 1000 Oaks Hu Lian Technology Development (Beijing) Co., Ltd. Method and system for providing streaming content in a peer-to-peer network with network coding
US8195646B2 (en) * 2005-04-22 2012-06-05 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US8121428B2 (en) 2005-05-31 2012-02-21 Microsoft Corporation Accelerated image rendering
US7965736B2 (en) 2005-08-24 2011-06-21 Qualcomm Incorporated Transmission of multiplex protocol data units in physical layer packets
US8234397B2 (en) 2006-01-06 2012-07-31 Google Inc. Media article adaptation to client device
US8214516B2 (en) * 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
US20090100496A1 (en) 2006-04-24 2009-04-16 Andreas Bechtolsheim Media server system
JP2007323544A (ja) * 2006-06-05 2007-12-13 Sony Corp 情報処理システム、情報処理装置、および方法、並びにコンピュータ・プログラム
US7807062B2 (en) 2006-07-10 2010-10-05 Micron Technology, Inc. Electron induced chemical etching and deposition for local circuit repair
JP5082310B2 (ja) * 2006-07-10 2012-11-28 日本電気株式会社 データ移行装置及びプログラム
US7962637B2 (en) 2006-11-03 2011-06-14 Apple Computer, Inc. Dynamic adjustments of video streams
US8010711B2 (en) * 2007-01-26 2011-08-30 Digital Video Chip, Llc Universal multimedia
GB2446832A (en) * 2007-02-23 2008-08-27 Quantel Ltd A file server system
US7870224B1 (en) * 2007-06-08 2011-01-11 Adobe Systems Incorporated Managing online composite image content
US20090006634A1 (en) * 2007-06-28 2009-01-01 Microsoft Corporation Run-once static content generation using a descriptive file path
US8639734B1 (en) * 2008-03-31 2014-01-28 Symantec Operating Corporation Use of external information about a file to determine virtualization
JP5135147B2 (ja) 2008-09-29 2013-01-30 富士フイルム株式会社 動画ファイル送信サーバおよびその動作制御方法
US8219711B2 (en) 2008-11-24 2012-07-10 Juniper Networks, Inc. Dynamic variable rate media delivery system
US9009337B2 (en) 2008-12-22 2015-04-14 Netflix, Inc. On-device multiplexing of streaming media content
EP2219321A1 (en) 2009-02-04 2010-08-18 Nokia Corporation Scheduling of dynamically multiplexed services in a wireless network
US8279926B2 (en) 2009-06-18 2012-10-02 Cisco Technology, Inc. Dynamic streaming with latticed representations of video
US20100325086A1 (en) * 2009-06-23 2010-12-23 James Skinner Systems and methods for updating a database for providing access to various files across a network
CA2711311C (en) 2009-08-10 2016-08-23 Seawell Networks Inc. Methods and systems for scalable video chunking
US8914835B2 (en) 2009-10-28 2014-12-16 Qualcomm Incorporated Streaming encoded video data
US20110126104A1 (en) * 2009-11-20 2011-05-26 Rovi Technologies Corporation User interface for managing different formats for media files and media playback devices
KR101211279B1 (ko) 2010-01-27 2012-12-11 에스케이플래닛 주식회사 미디어 스트리밍을 이용한 리치미디어 서비스 방법 및 시스템
US8769685B1 (en) * 2010-02-03 2014-07-01 Symantec Corporation Systems and methods for using file paths to identify potentially malicious computer files
JP4892074B2 (ja) * 2010-03-31 2012-03-07 株式会社東芝 電子機器、画像出力方法及びプログラム
US8190677B2 (en) 2010-07-23 2012-05-29 Seawell Networks Inc. Methods and systems for scalable video delivery
US9307025B1 (en) * 2011-03-29 2016-04-05 Riverbed Technology, Inc. Optimized file creation in WAN-optimized storage
US8489760B2 (en) 2011-03-31 2013-07-16 Juniper Networks, Inc. Media file storage format and adaptive delivery system
GB2489932B (en) 2011-04-07 2020-04-08 Quantel Ltd Improvements relating to file systems
WO2013021167A1 (en) 2011-08-05 2013-02-14 Quantel Limited Methods and systems for providing file data for video files
GB2495268B (en) 2011-08-05 2019-09-04 Quantel Ltd Methods and systems for providing file data for media files

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08110869A (ja) * 1994-10-12 1996-04-30 Fuji Xerox Co Ltd ファイルシステム
JP2004120180A (ja) * 2002-09-25 2004-04-15 Brother Ind Ltd 画像データ転送システム、画像読取装置、及びプログラム
JP2010211803A (ja) * 2010-03-23 2010-09-24 Seiko Epson Corp 閲覧者の表示要求に応じた画像表示

Also Published As

Publication number Publication date
WO2012136977A3 (en) 2013-06-20
EP2695089A2 (en) 2014-02-12
GB2489932B (en) 2020-04-08
WO2012136977A2 (en) 2012-10-11
US20140122545A1 (en) 2014-05-01
AU2012238409A1 (en) 2013-10-31
US11714858B2 (en) 2023-08-01
NZ616449A (en) 2015-08-28
CA2832353A1 (en) 2012-10-11
GB2489932A (en) 2012-10-17
GB201105976D0 (en) 2011-05-18

Similar Documents

Publication Publication Date Title
US20200374347A1 (en) System, method, and computer program for enabling a user to access and edit via a virtual drive objects synchronized to a plurality of synchronization clients
US6990497B2 (en) Dynamic streaming media management
US7181468B2 (en) Content management for rich media publishing system
US7092969B2 (en) Management of source and derivative image data
TWI450107B (zh) 用於網路資料使用平臺之方法及電腦可讀儲存媒體
US20100268694A1 (en) System and method for sharing web applications
US20070204115A1 (en) Systems and methods for storage shuffling techniques to download content to a file
US20060179080A1 (en) System for management of source and derivative data
US20020026521A1 (en) System and method for managing and distributing associated assets in various formats
JP2009277218A (ja) メタデータ注入を用いたメディアファイルの管理
KR101991537B1 (ko) 자율형 네트워크 스트리밍 기법
JP4806072B2 (ja) エンベデッドavコンテンツのプロトコルマッチング装置および方法
US20230325460A1 (en) Methods of website generation
JP2014510982A (ja) ファイルシステムに関する改善
EP2686791B1 (en) Variants of files in a file system
JP2012512486A (ja) 永続ドキュメントコレクションを管理するためのシステムおよび方法
EP3518120A1 (en) Indexing media asset aggregates in a multi-database environment
JP6262742B2 (ja) データuri増強を利用するプログレッシブ画像処理
KR100772516B1 (ko) UPnP AV 서버를 위한 컨텐츠 정보 자동 생성 및관리 장치 및 그 방법
US20110302241A1 (en) Reproducing a graphical user interface display
US8990265B1 (en) Context-aware durability of file variants
NZ616449B2 (en) Improvements relating to file systems
US20150088943A1 (en) Media-Aware File System and Method
JP2002149553A (ja) ウェブコンテンツ公開管理装置および方法、記録媒体
JP2005208781A (ja) コンテンツ管理システム及びコンテンツ管理方法、並びにコンピュータ・プログラム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150311

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150311

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160223

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160520

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20161025

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20170228