JPH11503260A - 複数のユーザーに対しデータを読み出すための方法及びシステム - Google Patents

複数のユーザーに対しデータを読み出すための方法及びシステム

Info

Publication number
JPH11503260A
JPH11503260A JP9521108A JP52110897A JPH11503260A JP H11503260 A JPH11503260 A JP H11503260A JP 9521108 A JP9521108 A JP 9521108A JP 52110897 A JP52110897 A JP 52110897A JP H11503260 A JPH11503260 A JP H11503260A
Authority
JP
Japan
Prior art keywords
data
user
block
buffer
sweep
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
JP9521108A
Other languages
English (en)
Inventor
ヨハネス ヘンリクス マリア コースト
セルフェリウス ペトルス ポーラス プロンク
Original Assignee
フィリップス エレクトロニクス ネムローゼ フェンノートシャップ
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 フィリップス エレクトロニクス ネムローゼ フェンノートシャップ filed Critical フィリップス エレクトロニクス ネムローゼ フェンノートシャップ
Publication of JPH11503260A publication Critical patent/JPH11503260A/ja
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/102Programmed access in sequence to addressed parts of tracks of operating record carriers
    • G11B27/105Programmed access in sequence to addressed parts of tracks of operating record carriers of operating discs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Television Signal Processing For Recording (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

(57)【要約】 例えばマルチメディアシステムにおけるビデオサーバーのようなシステムが、その各々は消費速度が可変であるところの多数のユーザーにデータを届ける。システムは引き続く掃引中に記憶媒体からデータブロックを読み出し、該データをユーザーのバッファ内に配置する。本発明によるシステムは、或る所与のユーザーに対して、1つ置きの掃引より頻繁には記憶媒体からデータの1ブロックを読み出さないので、1掃引の経過時間は短くなる。従ってユーザーがデータを必要とするか否かが更に頻繁にチェックされ、ユーザーのバッファには更に僅かのデータしか記憶される必要がないので、バッファのサイズを小さくすることができる。

Description

【発明の詳細な説明】 複数のユーザーに対しデータを読み出すための方法及びシステム 本発明は、記憶媒体から、2又はそれより多い数のユーザーによって消費され るためにデータを提示する方法であって、ユーザーに対するデータのブロックが 上記記憶媒体から読み出されて、引き続く掃引(successive sweeps)中にユーザ ーのバッファに記憶されるところの方法に関する。 本発明はまた、記憶媒体から、2又はそれより多い数のユーザーによって消費 されるためにデータを提示するシステムであって、該システムはそれらのユーザ ーのために引き続く掃引の間に上記記憶媒体からデータのブロックを読み出すた め、及びこれらのブロックをユーザーのバッファ中に配置するための読み出しモ ジュールを有するところのシステムにも関する。 この種の方法及びシステムは、ビデオサーバーとの関連で既知であり、例えば IEEEのComputer誌1994年3月号pp.69-74所載の A.L.N.Reddy及びJ.C.Wyllieによ る“I/O Issues in a Multimedia System”という文献に記載されている。この 既知のシステムは、多数のフィルムが記憶されているディスクを含む。このシス テムは多数のユーザーに同時にサービスを行い、各ユーザーに対して1つのバッ ファを含み、該バッファはディスクから読み出されたデータを記憶し、そのデー タをユーザーに提示するのに使われる。フィルムの連続的再生を保証するために 、ユーザーはビデオサーバーからデータの連続的な流れを受け取らなければなら ない。いわゆる掃引(so-called sweeps)を行っている間に、システムは周期的に 所要のデータをディスクから読み出し、その周期の長さは、その期間中に各ユー ザーに対して1ブロックのデータを読み出し、関連のバッファ内にそれを配置す ることのできる長さである。データのブロックのサイズは、1周期の経過時間に 対する適切な量のデータを関連のユーザーのために収納するようなサイズである 。上記既知のシステムではそうなっていないが、ユーザーがそのバッファから固 定した消費速度(consumption rate)でデータを消費するシステムでは、データを ディスクから読み出すための周期は、バッファからユーザーへのデータの提示と 同 期している。1つの周期の終わりに各ユーザーに対し最近に満たされたバッファ からデータの提示が始まる。従って固定した消費速度のユーザーに係わるそのよ うなシステムは、1ユーザー当たり2ブロックのデータを記憶できる1つのバッ ファ以上のものを必要としない。ところが既知のシステムでは、各ユーザーの消 費速度は、所定の個別最大消費速度以内では可変である。その結果ユーザー達は 、供給されたデータブロックが終わって新しいデータブロックを始めるのが、相 互に異なる瞬間になることがある。そうするとディスクからデータを読み出す周 期はユーザーがバッファからデータを読み出すのと最早や同期できない。その場 合には或る特定の瞬間に存在する(instantaneous)掃引が完了するや否や新しい 掃引が始まる。その結果、データの読み出しの厳密な周期性は失われる。このよ うな環境の下においてもユーザーへの連続的なデータの流れを保証するために、 既知のシステムでは各ユーザーに対し3ブロックのデータをその中に記憶できる バッファが必要になる。ユーザーのバッファとして比較的大きな量の記憶スペー スを必要とするのは既知の方法及び既知のシステムの欠点である。 本発明の目的としてはとりわけ、上述の方法で、既知の方法に比して僅かな記 憶スペースしか必要としないものを提供することである。これを達成するために 本発明の方法は、kを予め定められた数とするとき、直接先行する(k−1)個の掃 引の間には、データのブロックがそのユーザーに対しては読み出されなかったと ころの複数のユーザーから、或る特定の瞬間に存在する掃引中に、1ブロックの データが読み出されなければならないところの1群のユーザーが、関連するバッ ファの充填の程度に基づいて定められ、また、該或る特定の瞬間に存在する掃引 の間に、この群のユーザーの各々に対してそれぞれのデータのブロックが読み出 され、該それぞれのブロックには、上記予め定められた数であるk個の引き続く 掃引の最大経過時間中に、上記各ユーザーにとって予め定められた最大消費速度 で該ユーザーが消費するのに十分なだけのデータが入っているものであることを 特徴とする。 本発明のもう1つの目的は、上述のシステムで、既知のシステムに比して僅か な記憶スペースしか必要としないものを提供することである。これを達成するた めに本発明のシステムは、上記読み出しモジュールが、kを予め定められた数と するとき、直接先行する(k−1)個の掃引の間には、データのブロックがそのユー ザーに対しては読み出されなかったところの複数のユーザーから、或る特定の瞬 間に存在する掃引中に、1ブロックのデータが読み出されなければならないとこ ろの1群のユーザーを、関連するバッファの充填の程度に基づいて定めるように 配置され、また、上記読み出しモジュールは、上記或る特定の瞬間に存在する掃 引の間に、この群のユーザーの各々に対してそれぞれのデータのブロックを読み 出すように配置され、該それぞれのブロックには、上記予め定められた数である k個の引き続く掃引の最大経過時間中に、上記各ユーザーにとって予め定められ た最大消費速度で該ユーザーが消費するのに十分なだけのデータが入っているも のであることを特徴とする。 本発明による方法では、1ユーザーにとってk掃引ごとに1データブロックよ り多くが記憶媒体から読み出されることはない。このことは、k個の引き続く掃 引の最大経過時間を合計したものは、その長さが、k個の引き続く掃引の間に分 布して、すべてのユーザーに対し1データブロックが読み出され関連バッファ内 に配置できることを意味する。しかしこの最大経過時間は、既知のシステムにお ける1掃引の1周期の経過時間にほぼ等しい。その結果、以上2つのシステムに おけるブロックは対応するユーザーに対してほぼ同じサイズである。本発明は掃 引時間が平均的にかなり短いという利点があり、従って所与のユーザーのバッフ ァが余りにも激しく使い果たされていないか否かが更に頻繁にチェックされ、1 データブロックがもし必要があればこのユーザーに対して読み出されることがで きるという利点がある。結果的に本発明によれば更に僅かなデータしかユーザー のバッファに記憶されるに及ばない。その結果としてこのバッファは小さいもの を選定でき、従ってより僅かな記憶スペースしか使われない。 本発明の更にもう1つの利点は対話型の応答時間が改善されることである。ビ デオフィルムの通常の再生ではそうなっていないが、ユーザーは所定のデータブ ロックを供給するようシステムに明確に要請することができるのである。例えば ユーザーのスタートすること又はユーザーによりビデオフィルム中でジャンプす ることがそれである。そのような要請は所与の掃引の時点にシステムに到達し、 その次の掃引又はそれより後の掃引のときにのみ許容されることができる。平均 的には 1.5掃引より僅かに後で所望のブロックの消費を開始できる。本発明では 単一の掃引の経過時間は平均的に既知のシステムよりかなり短いのだから、本発 明によるシステムのユーザーは平均的に要請後かなり早くブロックの消費を開始 できる。 本発明の方法の一実施例は、予め定められた数kが2に等しいような方法に関 する。この実施例では、ユーザーにとって記憶媒体から2個の掃引当たり1デー タブロックより多くを読み出すことはない。1個の原始掃引を2個の引き続く掃 引に分割することは簡単な方法であって、この方法の利点は、ユーザーのバッフ ァが、既知の方法によれば3個のデータブロックを収容するところを、僅かに2 個のデータブロックを収容できることを要するのみである。上述の通り本発明の 方法におけるブロックは既知の方法によるブロックとほぼ同じサイズである。 本発明によるシステムの一実施例は、読み出しモジュールが各関連バッファに 対してそれぞれのデータブロックを受け取るのに十分なスペースを使用できるか 否かを判断するように配置されているシステムに関する。本発明を用いることに よりユーザーのバッファは2個のデータブロックを収容できれば十分である。 本発明によるシステムの一実施例では、データはデジタルビデオ情報を含む。 デジタルビデオ情報は大量のデータを必要とし、該デジタルビデオ情報はユーザ ーには比較的高速で提示される。その結果、比較的大きいバッファがユーザーご とに必要とされ、本発明を用いることにより記憶スペースについてかなりの節約 が提供される。更にまたビデオ情報は、例えばMPEG-1及びMPEG-2のような種々の 符号化された形態で記憶媒体に記憶されることができ、それらは相互に異なる最 大速度をユーザーに提供する。 一般的な感覚では本発明は本出願の出願人の名義による米国特許出願第…号及 びそれに対応するヨーロッパ特許出願第…号(PHN 15.480)に記載のビデオサーバ ーに関連がある。このシステムでは再生されるべき情報に関する所与の相互の時 間差を持つデータブロックは1個のセグメントに記憶される。 一般的な感覚では本発明はIB96/00655(PHN 15.381)としてWIPOにファイルされ た本出願の出願人の名義による米国特許出願第 08/678217号及びそれに対応する ヨーロッパ特許出願第…号に記載のビデオサーバーで使用するためのマルチメデ ィアシステムにも関連がある。このシステムでは、クラスター(clusters)中にデ ータが記憶され、1つのクラスターの終わりに在るデータの部分は更に短いユー ザーの応答時間を達成するためにその次のクラスターの始めに繰り返される。 一般的な感覚では本発明はIB96/00532(PHN 15.370)としてWIPOにファイルされ た本出願の出願人の名義による米国特許出願第…号及びそれに対応するヨーロッ パ特許出願第…号に記載のユーザーにフィルム及び対話型サービスを届けるため のシステムにも関連がある。茲に引用した特許出願で開示されているシステムは ユーザーに提供されるフィルム及びサービスのスケジュールが簡単な首尾一貫し たやり方で維持されることを可能にする。 本発明による方法及びシステムの上記以外の魅力的な実施例が従属請求項に開 示される。次に本発明は例示により、また図面を引用して、詳細に説明され;茲 で: 図1は、その中に本発明が使用できるところの既知のシステムを図式的に示す 図であり、 図2は、消費速度が可変のユーザーを持つ既知のシステム中のバッファを示す 図であり、 図3は、消費速度が可変のユーザーを持つ本発明によるシステム中のバッファ を示す図であり、 図4は、本発明の一般的な応用におけるバッファを示す図である。 図1は、本発明を使用することのできる既知のシステムの概略図である。これ は、ビデオサーバー102 を持つビデオ・オン・ディマンド(video-on-demand)シ ステムであって、要請に応じてユーザーの指定したビデオ情報を、多数のユーザ ーに同時に届けるものである。ビデオサーバー102 は記憶媒体104 を含み、それ には多数のビデオフィルムがデジタル形式で記憶されている。フィルムの規模と 数量、及びサービスを同時に提供するユーザーの数に適するように、上記記憶媒 体は、大型コンピュータシステムでも用いられているような、磁気ディスクのア レイで構築されるのが普通である。上記サーバーは、ネットワーク接続106 を経 由してユーザー端末108 にビデオデータを送付し、それを表示スクリーン110 上 で再生する。例えば108 のようなさまざまの端末が、同じネットワーク接続に接 続されて、同じ情報を受け取っている。その上、例えば110 のようなさまざまの 表示スクリーンを、1つの同じ端末に接続することもでき、当該端末の受け取っ た同じ画像をそれらが再生する。ユーザー端末108 と表示スクリーン110 とは1 つの装置に集積することもできる。或る所定のユーザーの要請で所与のビデオフ ィルムの再生が開始されたときには、上記サーバーは連続的なビデオデータの流 れを当該端末に送り出さなければならない。このサーバーは読み出しモジュール 112 を含み、このモジュール112 は、記憶媒体からデータブロックを周期的に読 み出して、それらのブロックをバッファモジュール114 に入れて置く。該ビデオ データはバッファモジュール114 から当該ユーザーに適した速度で提示される。 それを提示している間に、ユーザーのために次のブロックが、読み出しモジュー ルの次の周期中に読み出される。1つのブロックには、読み出しモジュールの1 周期中にユーザーにデータを供給するのに十分な量のビデオデータが入っている 。 ユーザーのデータ消費速度(consumption rate)が固定している場合には、バッ ファモジュール中に各ユーザーがそれぞれのバッファを持ち、該バッファは2つ の部分を含み、その各部分が1ブロックのデータを収納する。そうすれば、読み 出しモジュールの所与の周期の間に、バッファの一方の部分からはビデオデータ がユーザーに提示されるが、バッファのもう一方の部分は、記憶媒体から読み出 したデータのブロックを該周期の間に受け取る用意がある。バッファの一方の部 分が空きのときは、提示するのはもう一方の部分の側に切り替えられ、上記空き の方の部分には次の周期が始まると1ブロックが読み出されよう。ビデオサーバ ーの周期は固定であって、周期の始めに当たりデータのどのブロックを呼んで来 なければならないかが定められる;引き続いていわゆる掃引(sweep)の間にそれ らのデータブロックが記憶媒体から読み出されて当該のバッファ内に記憶される 。次の周期は、ユーザーのバッファの一方の部分が空きになる正確にその瞬間に 始まり、それまでの間に満たされていたもう一方の部分への切替えが行われる。 図2は、消費速度が変動するユーザーの関与する既知のシステム内のバッファ を示す図である。消費速度が変動するのであるから、データの提示はさまざまの ユーザーに対して最早や同期していない、そして掃引の始めに当たり各ユーザー が正確にそのバッファの満たされている部分でスタートする、ということも最早 や維持されない。従って掃引の始めに当たりユーザーの消費はユーザーのバッフ ァの1つの部分の任意の点に到達していることがある。その結果、そのようなシ ステム内のバッファにとって2つのデータブロックを含んでいることは最早や十 分ではない;バッファは寧ろ3つのブロックを収容する余地がなければならない 。バッファ202 は、部分204,部分206,及び部分208 を含み、その各々が1データ ブロックを収納する容量を持たなければならない。1つのブロックは、各ユーザ ーに対してディスクから1ブロックをその中に読み出さなければならない掃引の 最大時間に十分なだけのデータの量を含んでいる。データはバッファ202 から、 所望のスピードで該バッファを通り抜けることにより且つ該データを当該ネット ワーク接続上に置くことにより、ユーザーに提示される。この過程中の瞬間的な 位置は指示子を用いて更新される、図2では簡単のために、バッファの指示子よ り右に在る部分はその間に空けられ、指示子より左に在る部分は依然として完全 に満たされているものと仮定する。掃引の始めには、データの1ブロックがバッ ファ202 のユーザーに対するディスクから読み出されなければならないか否かが チェックされる。もし指示子が部分208 に在るならば、すなわち例えば 210とい う位置に在るならば、次のブロックが収納されることはできないので、それ故に このユーザーにとって、この掃引の間にはディスクからブロックが読み出される ことはないであろう。この掃引の間に或る所定の量のデータ、すなわち例えば 2 12という量のデータがバッファから消費される。ところが、1ブロックには掃引 の最大経過時間に対して十分なだけのデータが入っているから、この消費は1ブ ロックの長さより大きくなることはあり得ない。その次の掃引の始めに当たり指 示子は 214という位置にあり、該その次の掃引の間に1ブロックがディスクから 読み出されなければならないと推論される。この掃引の間に、新しいブロックの 到着の瞬間に至るまで 216という量がバッファから消費されるであろう。ところ が、その消費もまた、1ブロックより大きくはならないであろう。そのとき指示 子は 218という位置に達し、バッファはそれまでに満たされている。バッファの 実際の構成は図2に示したものよりもっと複雑であるが、そのことは本発明の説 明に対して重要ではない。その理由は、図2の左側と右側とはリンクしており、 バッファが循環的に通過されるからである。そればかりでなく、消費が何処まで 進行 しているかを示す消費指示子が設けられ、更にディスクから読み出されたブロッ クがバッファ中に記憶されることのできる位置を示す充填指示子も設けられてい る。消費指示子が充填指示子に追いつかない限りバッファは空にはならず、充填 指示子が消費指示子に追いつかない限りバッファは一杯にはならない。 図3は、消費速度が変動するユーザーの関与する本発明によるシステム内のバ ッファを示す図である。バッファ302 は部分304,及び部分306 を含み、その各々 がデータの1ブロックを収納することができる。本発明によるシステムでは、或 る所与のユーザーに対して、1つ置きの掃引に1回より多く1つのブロックがデ ィスクから読み出されることはない。このことは、2つの引き続く掃引の経過中 に各ユーザーに対して高々1ブロックのデータがディスクから読み出されなけれ ばならないことを意味する。2つの引き続く掃引の間で読み出されようとするブ ロックの分布は固定されていない。或る1つの掃引中には、1つのブロックを多 数のユーザーに対して読み出す必要があるかも知れない、そうすれば、その次の 掃引中には、少数のユーザーに対してのみ1つのブロックが読み出されることを 要する。本発明によるシステム中のブロックのサイズは、2つの引き続く掃引の 最大経過時間に対して必要なデータの量を含めば十分である。この最大経過時間 とは、ブロックが2つの引き続く掃引の間に等しく分布しているとして、各ユー ザーに対して1ブロックのデータを読み出すために経過する時間である。本発明 による2つの引き続く掃引の最大経過時間は、既知のシステムにおける1つの掃 引の最大経過時間にほぼ等しい、その理由は既知のシステムの場合にはすべての ユーザーに対してディスクから1ブロックを読み出さなければならないからであ る。本発明によれば2つの掃引が実行され、従ってディスクに対して読み出しヘ ッドの余分な切替えオーバーヘッドが必要であるという点に相違が生じる。既知 のシステムにおけるブロックのサイズ、及び本発明によるシステムにおけるブロ ックのサイズに関してなされた計算が、付録に掲げられる。或る所与の掃引の始 めに当たり、消費の瞬間的レベルを示す指示子がバッファ302 の部分306 内の何 処かに、例えば 308という位置に在るとき、この所与の掃引中にはこのバッファ に対してディスクからデータのブロックを読み出すことはできない。その後、も し該所与の掃引中にバッファから 310という量のデータが消費されるならば、そ の次の掃引の始めには指示子は 312という位置に在るであろう。バッファ302 は 1ブロックのデータを読み出すために満足すべき両方の条件を共に満足させる、 その両方の条件とは:先行する掃引中にディスクから読み出されたブロックは無 い;バッファ中に今や1ブロックのデータのための余地がある;の2つである。 ディスクから1ブロックを読み出している間に、バッファから 314という量が消 費され、該ブロックがバッファ中に記憶されることのできるその瞬間において、 指示子は 316という位置に在る。図3に示す例では、ユーザーは最初の掃引中に おいて、2番目の掃引中におけるよりも多くのデータを消費してしまっている、 それは例えば、最初の掃引中には更に他のユーザーに対しても1ブロックが読み 出さなければならず、従って掃引の経過時間が更に長かったからである。しかし 310という量と 314という量との総和は1ブロックより大きくなることはあり得 ない、それは本発明によるシステムでは1ブロックが2つの掃引の最大経過時間 に対し十分なデータを収容できるからである。平均的には2つの引き続く掃引は 最大経過時間より短いであろう、それは、最大経過時間がブロックを読み出すた めの最悪の状況の場合に基づくものだからである。 本発明の結果として、消費速度が可変のシステムにおける各ユーザーのバッフ ァの容量は、2ブロックに限定したままとすることができるのであって、それに 対し既知のシステムは3ブロックの容量を必要とするのである。本発明によるブ ロックのサイズは既知のシステムにおけるブロックのサイズにほぼ等しい。その 結果、本発明はユーザーのバッファが必要とする記憶スペースに関して相当な節 約を提供する。本発明がこの利点を達成できるのは、同じ時間の経過中に既知の システムに比してかなり多数の掃引が実行されるからである。それ故に或るユー ザーに対しディスクから1ブロックが読み出されなければならないか否かを更に 頻繁にチェックし、その結果としてバッファ中には更に僅かのデータしか記憶す るに及ばないのである。1ユーザーに対し2つの引き続く掃引中にはブロックを 読み出すことができないという本発明の条件は、サーバーの正常な動作に制約を 与えない。それは、或るユーザーに対し1ブロックが持って来られたときに、そ の次の掃引中には他のブロックを収容する余地が一般的にはないであろうからで ある。この条件はユーザーが或るセッションを開始するとき又はそのユーザーが フィルムの他の部分にジャンプするときにのみ実効を持つ。これらの場合にはユ ーザーは続けて2回データブロックを受け取るのに十分な余地を持っている;し かしこれは2つの引き続く掃引の最大経過時間を十分短く維持するためには許さ れないのである。しかしながらそれらの場合には、最初のブロックを受け取った 掃引の終わりにユーザーは直ちに消費を開始することができ、その最初のブロッ クが処理され終わる前に別の掃引中に新しいブロックが受け取られているであろ う、ということに留意すべきである。 図4は、本発明の一般化された適用におけるバッファを示す。本発明の上述の 実施例では既知のシステムの1掃引が2つの短い掃引に分割されており、其処で は各ユーザーに対し高々1ブロックがこれらの短い掃引中に持って来られる。と ころが本発明によれば、1掃引は3個或いは更に多くの個数の掃引にさえ分割さ れることができ、それによって最高では3個又はそれ以上の数の短い掃引中に各 ユーザーに対する1ブロックを持って来る。一般的に云えば、その1掃引はk個 の短い掃引に分割でき、其処では或る特定のユーザーに対し最高ではk個の掃引 ごとに1回の割合で1ブロックが持って来られる。図4ではバッファ302 が部分 304 及び部分306 を含み、それらの各部分はそれぞれ1ブロックのデータを保持 する容量を持つ。この一般的なシステムにおけるデータの1ブロックのサイズは k個の引き続く掃引の最大経過時間に対し必要なデータの量を含むのに十分なも のである。この最大経過時間とは、ブロックがk個の引き続く掃引の間に等しく 分布しているとして、各ユーザーに対して1ブロックのデータを読み出すために 経過する時間である。この時間の中の或る瞬間に、ユーザーがそれに先行する掃 引で1ブロックを受け取っており、消費の瞬間的レベルを示す指示子は 402とい う位置に所在する。そのとき当該ユーザーに対する一連のk個の掃引のうちの最 初の掃引が始まり、この最初の掃引中にユーザーは 404という量のデータを消費 し、またこの最初の掃引中にはこのユーザーに対してブロックを持って来ない。 第2の掃引が始まるときに、指示子は 406という位置に在り、この掃引中にもこ のユーザーに対してブロックを持って来ない。(k−1)個の掃引の後で、指示子は 適正な位置に所在し、そこでその次の掃引kにおいて該ユーザーに対し1ブロッ クのデータを持って来るべきか否かを判断する。1ブロックのデータが持って来 られる前に満足されなければならない2つの条件がある、それらは:茲でユーザ ーのバッファ中に1ブロックのデータを収容する余地がなければならない;また 先行する(k−1)個の掃引中にデータのブロックを持って来たことがあってはなら ない;という2つの条件である。ところで図4に示す例では、指示子が 408とい う位置に在る瞬間にはこれらの条件をいずれも満足しており、それ故に掃引kに おいて1ブロックのデータが該ユーザーに対して持って来られる。しかるに、指 示子が 402という位置に在る状態から始めて、各掃引には僅かの時間しか掛から ず、(k−1)個の掃引後にも指示子は依然としてバッファの 306という部分内に在 る、という可能性は極めて高い。そうすると、使用できる余地がないから掃引k においては該ユーザーに対しブロックが持って来られない、そして掃引kの後に ブロックを持って来るべきか否かを再度判断する。1掃引は計算上の最悪の場合 の経過時間より平均的には短いであろうから、1ブロックのデータを消費するの にk個を超える掃引が要るということは十分あり得る。上述のように、データの 1ブロックはk個の掃引の最大経過時間に対するデータの量を含むのに十分な大 きさである。 1つの掃引を2個より多くの掃引に分割することの利点は、個々の掃引が更に 短くなることである。このことは、新しい掃引が更に頻繁に開始され、或るブロ ックに対する対話型の明示要請が更に速やかに許容されることを意味する。従っ て掃引を更に分割したこの実施例の対話型応答時間は、2分割した掃引の実施例 に比べて更に改良される。付録:ブロックのサイズ及び掃引の時間の数値例 下記の数値例では、プレフィクス“k”は 1024 とし、またプレフィクス“M” は 1048576(=1024×1024)とする。この数値例は、ユーザーが最高でも1つ置 きの掃引ごとに一塊のデータ(a lock of data)を受け取るような本発明の適用に 関する。それ故、一般の場合の数値kは2に等しい。 ディスク・パラメタ(Disc parameters) T個のトラックを通過する間の実際の探索時間t5は: ts=ts,min+(ts.max−ts,min)×nT/NT によって与えられる。 この関係式は、過少ではないnTに対してほぼ正しいところの、最悪の場合のア プローチを表す。ディスクから1ブロックのデータを読み出すには、読み出しヘ ッドを正しい位置に移動するための高々上記時間tsプラス正しい点をデータが 通過するのを待ち合わせるための高々呼び出し(latency)時間t1プラス実際にデ ータを読み出すための所定の転送時間Trの合計時間が必要である。サイズBの ブロックに対する転送時間は: Tr=B/Dr という関係式に従う。 その他のシステム・パラメタ(Other system parameters) 既知のシステムに対する計算(Calculation for the known system) 各ユーザーに対して1ブロックがB0というサイズを持つ既知のシステムにおい て、1つの掃引中に16ブロックを持って来るのに要する最悪の場合の時間をTs とする。そのとき最悪の場合とは、ブロックがトラックの最大数の1/16だけ離れ て位置し、呼び出し時間は各ブロックの読み出しに先立って最大になる、という 状況である。従ってこの状況下ではnT/NTは1/16に等しい。そうすると16個の ブロックを読み出すのに要する時間Tsは: Ts=16×(ts,min+(ts,max−ts,min)/16+t1+B/Dr) (1) という関係式に従う。 更にこのシステムでは、1ブロックが1つの掃引の経過時間に対するデータを収 容するに十分の大きさを有しており、従って上記関係式に合致して: B0=Ts×cmax (2) となる。 関係式(1),(2)から計算すると、その結果は: Ts=0.915 s(秒) B0=187 kbyte(キロバイト) となる。 ユーザーに対するバッファは、このようなブロック3個を必要とするので、従っ て 562 kbyteを要する。故に16人のユーザーに対し全システムで 8991 kbyte の バッファスペースを要することになる。 本発明によるシステムに対する計算(Calculation for the system in accordanc e with the invention) 本発明によるシステムにおいては、時間T2sの中の2つの掃引で16ブロックを持 って来ることができなければならず、1ブロックはBnというサイズを持ち、ま た、16個の読み出し動作に対しては上記掃引の間にどのように分布していること も可能でなければならない。ディスクにおけるオーバーヘッドがあるので、最も 好ましくない分布とは、トラックの最大数の1/8 だけ離れた距離に位置する8個 のブロックを各掃引中に読み出さなければならないときである。従ってこの最も 好ましくない分布では、nT/NTは 1/8 に等しい。そうすると、16ブロック を読み出すために必要な時間T2sは: T2s=16×(ts,min+(ts,max−ts,min)/8+t1+Bn/Dr) (3) という関係式に従う。 このシステムでも、1ブロックが2つの引き続く掃引の経過時間に対するデータ を収容するに十分の大きさを有しており、従って上記関係式に合致して: Bn=T2s×cmax (4) となる。 関係式(3),(4)から計算すると、その結果は: T2s=0.975 s(秒) Bn=200 kbyte(キロバイト) となる。 ユーザーのバッファは、2個のブロックを記憶する容量が必要であって、それ故 に 399 kbyteを要する。すると16人のユーザーに対し全システムで 8991 kbyte のバッファスペースを要することになる。 まとめ(summary) 既知のシステムで必要とするバッファスペースと、本発明によるシステムで必要 とするバッファスペースとが上記のように計算された。どちらの場合にも、ディ スクからデータブロックを読み出すために最悪の状態を仮定している。それはこ のようなシステムを設計するときに必要なことであって、一旦スタートしたら如 何なる場合にもユーザーは、ビデオデータの連続的な流れを受け取らなければな らない、という要求条件はそれにより満足させられる。この数値例を簡単化する ために、このシステムは小さいシステムであって、16人より多くのユーザーは関 与しないものと仮定してある。しかしもっと大きいシステムにおいてもデータブ ロックは同じやり方で読み出され、従って同様の利点が達成されよう。上に計算 された通り1ユーザーバッファ当たり 162.5 kbyte,すなわち29%の節約という 利益が達成できる。従って16人のユーザーが関与するシステムで節約されるバッ ファ記憶スペースは 2601 kbyte に達する。もっと多くのユーザーが関与するシ ステムでは、ブロックサイズBnは原始の値B0に等しい限界値まで減少する。 そうするとそのようなシステムでの記憶スペースの節約は33 1/3 %の節約、すな わち各ユーザーにとって、3ブロックを収容できるバッファから2ブロックを収 容できるバッファに減少させることになる。

Claims (1)

  1. 【特許請求の範囲】 1.記憶媒体から、2又はそれより多い数のユーザーによって消費されるために データを提示する方法であって、該方法ではユーザーに対するデータのブロック が上記記憶媒体から読み出されて、引き続く掃引中にユーザーのバッファに記憶 されるところの方法において、 kを予め定められた数とするとき、直接先行する(k−1)個の掃引の間には、 データのブロックがそのユーザーに対しては読み出されなかったところの複数の ユーザーから、或る特定の瞬間に存在する掃引中に、1ブロックのデータが読み 出されなければならないところの1群のユーザーが、関連するバッファの充填の 程度に基づいて定められ、 該或る特定の瞬間に存在する掃引の間に、この群のユーザーの各々に対して それぞれのデータのブロックが読み出され、該それぞれのブロックには、上記予 め定められた数であるk個の引き続く掃引の最大経過時間中に、上記各ユーザー にとって予め定められた最大消費速度で該ユーザーが消費するのに十分なだけの データが入っているものであることを特徴とするデータの提示方法。 2.請求項1に記載の方法において、予め定められた数kは、2に等しいことを 特徴とするデータの提示方法。 3.請求項1又は2に記載の方法において、関連するバッファの充填の程度に基 づく上記1群のユーザーの決定のために、上記関連するバッファの各々に対し、 上記それぞれのデータのブロックを受け取ることのできる十分な余地をそれが持 っているか否か、が判定されることを特徴とするデータの提示方法。 4.請求項1ないし3のうちのいずれか1項に記載の方法において、ユーザーの うちの少なくとも1人のバッファは、このユーザーに対する2つのデータのブロ ックを合わせたサイズにほぼ等しく且つそれより小さくはないところのサイズを 持つことを特徴とするデータの提示方法。 5.請求項1ないし4のうちのいずれか1項に記載の方法において、上記データ はデジタルビデオ情報を含むことを特徴とするデータの提示方法。 6.請求項1ないし5のうちのいずれか1項に記載の方法において、上記記憶媒 体はディスクを含むことを特徴とするデータの提示方法。 7.記憶媒体から、2又はそれより多い数のユーザーによって消費されるために データを提示するシステムであって、該システムはそれらのユーザーのために引 き続く掃引の間に上記記憶媒体からデータのブロックを読み出すため、及びそれ らのユーザーのバッファ中にデータのブロックを記憶するための読み出しモジュ ールを有するシステムにおいて、 該読み出しモジュールは、kを予め定められた数とするとき、直接先行する (k−1)個の掃引の間には、データのブロックがそのユーザーに対しては読み出さ れなかったところの複数のユーザーから、或る特定の瞬間に存在する掃引中に、 1ブロックのデータが読み出されなければならないところの1群のユーザーを、 関連するバッファの充填の程度に基づいて定めるように配置され、 また上記読み出しモジュールは、上記或る特定の瞬間に存在する掃引の間に 、この群のユーザーの各々に対してそれぞれのデータのブロックを読み出すよう に配置され、該それぞれのブロックには、上記予め定められた数であるk個の引 き続く掃引の最大経過時間中に、上記各ユーザーにとって予め定められた最大消 費速度で該ユーザーが消費するのに十分なだけのデータが入っているものである ことを特徴とするデータを提示するシステム。 8.請求項7に記載のシステムにおいて、予め定められた数kは、2に等しいこ とを特徴とするデータを提示するシステム。 9.請求項7又は8に記載のシステムにおいて、上記読み出しモジュールは、上 記関連するバッファの各々に対し、上記それぞれのデータのブロックを受け取る ことのできる十分な余地をそれが持っているか否か、を判定するように配置され ていることを特徴とするデータを提示するシステム。 10.請求項7ないし9のうちのいずれか1項に記載のシステムにおいて、ユーザ ーのうちの少なくとも1人のバッファは、このユーザーに対する2つのデータの ブロックを合わせたサイズにほぼ等しく且つそれより小さくはないところのサイ ズを持つことを特徴とするデータを提示するシステム。 11.請求項7ないし10のうちのいずれか1項に記載のシステムにおいて、上記デ ータはデジタルビデオ情報を含むことを特徴とするデータを提示するシステム。 12.請求項7ないし11のうちのいずれか1項に記載のシステムにおいて、上記記 憶媒体はディスクを含むことを特徴とするデータを提示するシステム。
JP9521108A 1995-12-01 1996-11-21 複数のユーザーに対しデータを読み出すための方法及びシステム Ceased JPH11503260A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP95203313 1995-12-01
NL95203313.2 1995-12-01
PCT/IB1996/001275 WO1997021173A2 (en) 1995-12-01 1996-11-21 Method and system for reading data for a number of users

Publications (1)

Publication Number Publication Date
JPH11503260A true JPH11503260A (ja) 1999-03-23

Family

ID=8220898

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9521108A Ceased JPH11503260A (ja) 1995-12-01 1996-11-21 複数のユーザーに対しデータを読み出すための方法及びシステム

Country Status (5)

Country Link
US (1) US5950015A (ja)
EP (1) EP0812513B1 (ja)
JP (1) JPH11503260A (ja)
DE (1) DE69610552T2 (ja)
WO (1) WO1997021173A2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000505983A (ja) * 1996-12-23 2000-05-16 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ データ流を供給するための方法および系
JP2000515706A (ja) * 1997-05-26 2000-11-21 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ストリームサーバにおいてデータを取り出すシステム
WO1999001808A2 (en) * 1997-07-02 1999-01-14 Koninklijke Philips Electronics N.V. System for supplying data streams
US6415373B1 (en) 1997-12-24 2002-07-02 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6374336B1 (en) * 1997-12-24 2002-04-16 Avid Technology, Inc. Computer system and process for transferring multiple high bandwidth streams of data between multiple storage units and multiple applications in a scalable and reliable manner
US6456340B1 (en) * 1998-08-12 2002-09-24 Pixonics, Llc Apparatus and method for performing image transforms in a digital display system
US6385706B1 (en) * 1998-12-31 2002-05-07 Emx Corporation Apparatus and methods for copying a logical object to a primary storage device using a map of storage locations
US7107395B1 (en) 1998-12-31 2006-09-12 Emc Corporation Apparatus and methods for operating a computer storage system
US6487561B1 (en) 1998-12-31 2002-11-26 Emc Corporation Apparatus and methods for copying, backing up, and restoring data using a backup segment size larger than the storage block size
US6397308B1 (en) 1998-12-31 2002-05-28 Emc Corporation Apparatus and method for differential backup and restoration of data in a computer storage system
WO2000057635A1 (en) * 1999-03-23 2000-09-28 Koninklijke Philips Electronics N.V. Multimedia server
US7096327B2 (en) * 2000-03-24 2006-08-22 Koninklijke Philips Electronics N.V. System for and method of accessing blocks on a storage medium
US8001297B2 (en) * 2005-04-25 2011-08-16 Microsoft Corporation Dynamic adjusting send rate of buffered data
US8510370B2 (en) * 2008-02-26 2013-08-13 Avid Technology, Inc. Array-based distributed storage system with parity

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5701582A (en) * 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
EP0458304B1 (en) * 1990-05-22 1997-10-08 Nec Corporation Direct memory access transfer controller and use
JPH05173932A (ja) * 1991-12-24 1993-07-13 Toshiba Corp データ転送装置
US5724539A (en) * 1992-03-19 1998-03-03 Digital Equipment Corporation System for selectively storing stripes of data in tracks of disks so that sum of transfer rates of stripes match communication bandwidth to host
DE69319329T2 (de) * 1993-05-19 1998-10-29 Alsthom Cge Alcatel Verfahren zur Speicherverwaltung eines Videoservers
CA2127347A1 (en) * 1993-07-07 1995-01-08 Donald F. Hooper Segmented video on-demand system
US5610841A (en) * 1993-09-30 1997-03-11 Matsushita Electric Industrial Co., Ltd. Video server
US5631693A (en) * 1993-10-25 1997-05-20 Antec Corporation Method and apparatus for providing on demand services in a subscriber system
US5606359A (en) * 1994-06-30 1997-02-25 Hewlett-Packard Company Video on demand system with multiple data sources configured to provide vcr-like services
US5712976A (en) * 1994-09-08 1998-01-27 International Business Machines Corporation Video data streamer for simultaneously conveying same one or different ones of data blocks stored in storage node to each of plurality of communication nodes
JPH08292842A (ja) * 1995-04-24 1996-11-05 Matsushita Electric Ind Co Ltd ビデオサーバ装置
US5592612A (en) * 1995-04-28 1997-01-07 Birk; Yitzhak Method and apparatus for supplying data streams
US5640519A (en) * 1995-09-15 1997-06-17 Intel Corporation Method and apparatus to improve latency experienced by an agent under a round robin arbitration scheme

Also Published As

Publication number Publication date
DE69610552D1 (de) 2000-11-09
DE69610552T2 (de) 2001-05-31
WO1997021173A2 (en) 1997-06-12
EP0812513A2 (en) 1997-12-17
EP0812513B1 (en) 2000-10-04
US5950015A (en) 1999-09-07
WO1997021173A3 (en) 1997-07-31

Similar Documents

Publication Publication Date Title
JP3560211B2 (ja) ディジタルデータをオンデマンドで分配するシステム及び方法
JP3110988B2 (ja) ビデオ用に最適化された媒体ストリーマ・データ・フロー・アーキテクチャ
JP3048897B2 (ja) ビデオ最適化ストリーム・サーバ・システム
JP4195725B2 (ja) マルチユーザデータ記憶、検索及び配布システム
US5440336A (en) System and method for storing and forwarding audio and/or visual information on demand
JP3110989B2 (ja) ビデオ用に最適化された媒体ストリーマ・ユーザ・インタフェース
JP2000505983A (ja) データ流を供給するための方法および系
EP0764381B1 (en) Multi-cast digital video data server using synchronization groups
JP3110987B2 (ja) 等時性データ・ストリームを生成するビデオ用に最適化された媒体ストリーマ
JP3604724B2 (ja) ビデオサーバメモリ管理方法
JPH11503260A (ja) 複数のユーザーに対しデータを読み出すための方法及びシステム
JP3523217B2 (ja) メディアデータプロセッサ
JPH10261075A (ja) 画像バッファ制御装置
AU707822B2 (en) Method and system for data repetition between logically successive clusters
CN1574052B (zh) 将可交换存储装置用于存储节目数据的系统和方法
EP0795254B1 (en) Method and system for reading data blocks for a number of user groups
JPH09102924A (ja) 映像データファイル装置
KR20060122883A (ko) 적어도 하나의 데이터 객체 그룹을 핸들링하기 위한 방법및 장치
JPH09149377A (ja) ビデオサーバ装置
Kwon et al. PRR: prime round-robin placement for implementing VCR operations
JPH1169310A (ja) データ再生制御方式
JPH10108159A (ja) マルチメディア情報提供装置
JPWO1996027984A1 (ja) 動画像情報記録再生装置
JPH1079155A (ja) ビデオサーバ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20031119

A72 Notification of change in name of applicant

Free format text: JAPANESE INTERMEDIATE CODE: A721

Effective date: 20031119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20051011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051025

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051114

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20051114

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20051111

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060125

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060313

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060425

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060711

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061101

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20070118

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20070215

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081210

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20081210

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081219

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

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20091222