JP2008544372A - ポピュラリティによる情報のキャッシュ処理 - Google Patents

ポピュラリティによる情報のキャッシュ処理 Download PDF

Info

Publication number
JP2008544372A
JP2008544372A JP2008516993A JP2008516993A JP2008544372A JP 2008544372 A JP2008544372 A JP 2008544372A JP 2008516993 A JP2008516993 A JP 2008516993A JP 2008516993 A JP2008516993 A JP 2008516993A JP 2008544372 A JP2008544372 A JP 2008544372A
Authority
JP
Japan
Prior art keywords
block
popularity
cache
caching
read
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.)
Granted
Application number
JP2008516993A
Other languages
English (en)
Other versions
JP5238497B2 (ja
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 JP2008544372A publication Critical patent/JP2008544372A/ja
Application granted granted Critical
Publication of JP5238497B2 publication Critical patent/JP5238497B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/12Replacement control
    • G06F12/121Replacement control using replacement algorithms
    • G06F12/122Replacement control using replacement algorithms of the least frequently used [LFU] type, e.g. with individual count value
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

少なくとも1つのキャッシュ(216)に少なくとも1つのブロック(214)を、該ブロックが前記キャッシュの各ブロックのポピュラリティ(215)より高いポピュラリティを有する場合、キャッシュ処理する方法及びシステムであって、前記ブロックのポピュラリティは、永久ストレージからの前記ブロックの読み出し及び前記キャッシュからの前記ブロックの読み出しによって決定される方法及びシステム。

Description

発明の詳細な説明
[優先権の主張]
本出願は、2005年6月14日に出願された出願番号60/690695を有する仮特許出願“MULTIMEDIA STREAM SERVER”の主題に対応するユーティリティ出願としての優先権を主張する。
[技術分野]
本開示は、データ処理システムにおけるキャッシュ処理技術に関する。
[背景技術]
データキャッシュ処理は、データ処理システムのパフォーマンスを向上させるかもしれない。キャッシュリプレースメント技術は、LRU(Least−Recently−Used)及びLFU(Least−Frequently−Used)を含む。しかしながら、これらの技術は、データブロックがマスストレージから読み出されるときは常に、当該ブロックをキャッシュ処理し、キャッシュから他のブロックを取り除くかもしれない。しかしながら、これらの技術は、大量のオーディオ及び/又はビジュアル(すなわち、A/V)情報をストリーミング又は操作するデータ処理システムにおいては全く適していないかもしれない。
[発明の開示]
一方法は、少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するステップを有し、前記ブロックのポピュラリティは、永久ストレージからの前記ブロックの読み出し及び前記キャッシュからの前記ブロックの読み出しによって決定されることを含む及び/又は伴うかもしれない。前記キャッシュ処理するステップは、前記ブロックがキャッシュの少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、前記ブロックをキャッシュ処理するステップ、前記ブロックがキャッシュ処理されるノードが前記ブロックが格納されている大容量ストレージを含むマルチノードストリームサーバのノードに前記ブロックをキャッシュ処理するステップ、及び/又は前記ブロックのポピュラリティが1以上の期間において大容量ストレージ又はキャッシュから前記ブロックの読み出しが何回実行されたかに少なくとも部分的によって決定されるステップを含む及び/又は伴うかもしれない。前記ブロックがキャッシュの少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、前記ブロックをキャッシュ処理するステップは、前記ブロックがキャッシュにおける少なくとも1つの他のブロックと同程度のポピュラリティを有し、さらに該ブロックより最近に読み出されている場合、前記ブロックをキャッシュ処理するステップを含む及び/又は伴うかもしれない。
本方法は、前記ブロックのポピュラリティが前記キャッシュにおける他のブロックより高いポピュラリティを有しない場合、前記ブロックが前記キャッシュにおける他のブロックの少なくとも一部より最近に読み出されているとしても、前記ブロックをキャッシュ処理しないステップを含む及び/又は伴うかもしれない。
本方法は、前記ブロックのポピュラリティがリプレースメントブロックより高いポピュラリティを有しない場合、前記リプレースメントブロックが永久ストレージより読み出されるより頻繁に前記ブロックが読み出されていても、前記ブロックをリプレースするステップを含む及び/又は伴うかもしれない。
本方法は、マルチノードメディアサーバの各ノードが、該ノードにより永久に格納される各ブロックのポピュラリティを維持するステップを含む及び/又は伴うかもしれない。
本方法は、少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップを含む及び/又は伴うかもしれない。前記少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップは、ある時間の経過後に前記ブロックポピュラリティの少なくとも一部を減少させるステップ、ポピュラリティ順序を保存するように前記ブロックポピュラリティを減少させるステップ、及び/又は少なくとも1つのブロックがポピュラリティリミットに到達した結果として、前記減衰ファンクションを適用するステップを含む及び/又は伴うかもしれない。前記ある時間の経過後に前記ブロックポピュラリティの少なくとも一部を減少させるステップはさらに、前記時間の経過後に前記ブロックポピュラリティの少なくとも一部をある数量により除するステップを含む及び/又は伴うかもしれない。
スタートアップ及び/又はリセット状況の結果として、少なくとも一部のブロックポピュラリティを初期化するステップはさらに、前記ブロックのポピュラリティ履歴に少なくとも部分的に従って、ブロックポピュラリティを初期化するステップ、前記ブロックを有するプログラムのメディアストリーミング及び/又は視聴履歴に少なくとも部分的に従って、ブロックポピュラリティを初期化するステップ、及び/又は隣接するストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む及び/又は伴うかもしれない。前記隣接するストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップはさらに、メディアサーバハイパーキューブの各ノードの隣接するRAIDストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む及び/又は伴うかもしれない。
他のシステム、方法、装置の各特徴が、本出願を構成するテキスト(詳細な説明及び請求項など)及び図面に記載される。
[産業上の利用可能性及び発明を実行するためのモード]
“一実施例”又は“ある実施例”という用語は、必ずしも同一の実施例を参照しているとは限らない。
文脈が明確に要求する場合を除き、本記載及び請求項を通じて、“有する”などという用語は、排他的又は包括的な意味とは対照的に、内包的な意味に解釈されるべきである。すなわち、“含むが、それに限定されない”という意味である。単数形又は複数形を利用した用語はまた、それぞれ複数形又は単数形を含むかもしれない。さらに、“ここでは”、“以上”、“以下”や同様の単語は、本出願に使用されるときには、本出願の全体を参照するものであり、本出願の特定の部分を参照するものでない。請求項において、2以上のアイテムのリストを参照して“又は”という単語が使用されるとき、当該単語は、リストの何れかのアイテム、リストのすべてのアイテム及びリストのアイテムの何れかの組み合わせのすべてをカバーしている。
“ロジック”とは、装置の動作に影響を及ぼすのに適用される信号及び/又は情報を表す。ソフトウェア、ハードウェア及びファームウェアは、ロジックの具体例である。ハードウェアロジックは、回路により実現されるかもしれない。一般に、ロジックは、ソフトウェア、ハードウェア及び/又はファームウェアの組み合わせを有するかもしれない。
ハイパーキューブメディアサーバ
図1は、ハイパーキューブメディアサーバの実施例のブロック図である。ハイパーキューブは、ノード102〜105を有する。ハイパーキューブは、より多く又はより少ないノードを有してもよい。
各ノード102〜105はそれぞれ、ローカルマスストレージ117〜120を有するかもしれない。マスストレージ117〜120(永久ストレージ又はデータストレージとも呼ばれる)は、メディアコンテンツのブロックを有するかもしれない。メディアコンテンツは、デジタルプログラムエピソード及び/又は映画などのコンテンツを有するかもしれない。コンテンツは、メディア配信システムを介しハイパーキューブによりストリーミングされるかもしれない。ビデオ・オン・デマンドアプリケーションでは、加入者リクエストの結果として、メディアは特定の位置にストリーミングされるかもしれない。
ノード102〜105はそれぞれ、ローカルI/Oインタフェース107〜110を有するかもしれない。I/O107〜110は、加入者への最終的な配信のため、メディアストリームをメディア配信プラントに配信するのに利用されるかもしれない。
あるプログラムは、複数のノードのマスストレージにあるそれのコンテンツのブロックを有するかもしれない。これは、シーケンシャルなコンテンツのブロックについて、すなわち、同一のストリームの一部として互いに視聴されるコンテンツのブロックについて成り立つ。例えば、ブロック10〜25が映画のオープニングシーンを有し、ブロック10がまず視聴され、次にブロック11が視聴されるなどの場合、ブロック10はマスストレージ117に設けられ、ブロック11はマスストレージ120に設けられ、ブロック12はデータストレージ118などに設けられる。図1に示されるようなメディアストリーミングシステムは、ブロックストレージについて特定の構成を仮定するものでない。
ノード102〜105はそれぞれ、ローカルキャッシュ112〜115を有してもよい。ノードのキャッシュは、何れかの時点において他のブロックと共に1以上のプログラムのためのブロックを有するかもしれない。これらのノードは、ブロックに関する他の情報を各自のキャッシュ又は何れかに(他の付属のメモリなど)格納するかもしれない。例えば、ポピュラリティ(popularity)情報が、現在キャッシュされていないブロックと共にキャッシュされているブロックに対して格納されるかもしれない。
メディアストリームが生成されると、それに係るブロックがマスストレージ又はキャッシュから読み出される。マスストレージ又はキャッシュからのブロックの読み出しは、それのポピュラリティを増大させるかもしれない。ストリームのシーケンシャルブロック又はほぼシーケンシャルブロックのポピュラリティは、各時点において類似する値を有することが予想されるかもしれない。各ブロックのポピュラリティは、これらのブロックがストリームにおいて広範に分離しているとき、又は異なるストリームに分離しているとき、実質的に異なるかもしれない。例えば、一部の実施例では、一部のブロックが“リセット”、ノミナル又はミニマムポピュラリティを有し、それと同時に同一の又は他のコンテンツのブロックが最大ポピュラリティを意味するポピュラリティリミットに接近するか又は当該リミットにある可能性がある。
メディアサーバにおけるブロックキャッシュ処理
ブロックは、それがマスストレージ又はキャッシュから読み出される場合、ブロックのポピュラリティが増加するかもしれない。
方法は、少なくとも1つのブロックがキャッシュの各ブロックのポピュラリティより相対的に高いポピュラリティを有する場合、当該ブロックをキャッシュ処理することを含む及び/又は伴うかもしれない。各ブロックは、これらのブロックがマスストレージ及び/又は他のノードに格納される場合、ノードによりキャッシュ処理されるかもしれない。一部の実施例では、マルチノードメディアサーバの各ノードは、ノードにより永久的に格納される(例えば、ノードのローカルマスストレージに格納される)ブロックのポピュラリティを維持するかもしれない。
少なくとも1つのブロックがキャッシュの他のブロックのポピュラリティより相対的に高いポピュラリティを有する場合、マスストレージから少なくとも1つのキャッシュに読み出された当該ブロックのキャッシュ処理は、それがキャッシュの他の少なくとも1つのブロックと同程度のポピュラリティを有するか、又はより高いポピュラリティを有する場合、当該ブロックをキャッシュ処理することを含む及び/又は伴うかもしれない。このブロックは、ブロックが格納されているマスストレージを含む当該ブロックがキャッシュ処理されているマルチノードストリームサーバのノードにキャッシュ処理されてもよい。
当該ブロックがキャッシュの他の少なくとも1つのブロックと同程度の又はより高いポピュラリティを有する場合、ブロックをキャッシュ処理することは、キャッシュの少なくとも1つの他のブロックと同程度のポピュラリティを有し、当該他のブロックより最近に読み出されたものである場合、当該ブロックをキャッシュ処理することを含む及び/又は伴うかもしれない。
本方法は、ブロックのポピュラリティがキャッシュの他のブロックより相対的に高いポピュラリティを有していない場合、当該ブロックがたとえキャッシュの他のブロックの少なくとも一部より最近に読み出されていたとしても、当該ブロックをキャッシュ処理しないことを含む及び/又は伴うかもしれない。
本方法は、マルチノードメディアサーバの各ノードがノードにより永久に格納されているブロックのポピュラリティを維持することを含む及び/又は伴うかもしれない。
ブロックのポピュラリティは、マスストレージ又はキャッシュからのブロックの読み出しがある期間に何回発生したかによって少なくとも部分的に決定されるかもしれない。読み出し処理に、異なる期間からの読み出しがポピュラリティの決定において異なる重み付けが与えられるようなものであってもよい。本方法は、少なくとも1つの減衰ファンクションをポピュラリティに適用することを含む及び/又は伴うかもしれない。少なくとも1つの減衰ファンクションをポピュラリティに適用することは、ある時間の経過後にポピュラリティの少なくとも一部を減少させ、ポピュラリティの順序を保存する方法によりポピュラリティを減少させ、及び/又は少なくとも1つのブロックがポピュラリティリミットに到達した結果として減衰ファンクションを適用することを含む及び/又は伴うかもしれない。ある時間の経過後にポピュラリティの少なくとも一部を低減することは、ある時間の経過後にある数量によりポピュラリティの少なくとも一部を除することを含む及び/又は伴うかもしれない。
ブロックポピュラリティは、各種ファクタに従ってスタートアップ及び/又はリセット状況の結果として初期化されるかもしれない。スタートアップ及び/又はリセット状況の結果として少なくとも一部のブロックポピュラリティを初期化することは、隣接するブロック(ストリームにおいて隣接する)のポピュラリティに従ってブロックのポピュラリティ履歴に少なくとも部分的に応じてブロックポピュラリティを初期化し、及び/又は隣接するストレージ位置のポピュラリティに少なくとも部分的に従ってブロックポピュラリティを初期化することを含む及び/又は伴うかもしれない。隣接するストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従うブロックポピュラリティの初期化は、メディアサーバハイパーキューブの各ノードの隣接するRAIDストレージ位置のブロックのポピュラリティに少なくとも部分的に従ってブロックポピュラリティを初期化することを含む及び/又は伴うかもしれない。
ブロックポピュラリティは、システムのすべてのブロックについて維持されてもよい。すべてのブロックは、現在キャッシュされているブロック、現在キャッシュされていない非パリティ(データとしても知られる)ブロック、及び現在キャッシュされていないパリティブロックを含む。パリティブロックは、当該データブロックがエラーの結果として再構成を必要とする場合、データブロックを構成するのに利用されるように情報を有する。
パリティブロックのポピュラリティは、マスストレージ又はキャッシュからの実際の読み出し又は付随的な(非明示的(implied)としても知られる)読み出しが実行されるときは常に増加される。付随的な読み出しは、パリティブロックに係るデータブロックが読み出されるときに行われるかもしれない。しかしながら、読み出しエラーが発生しないため、データブロックに係るパリティブロックは読み出される必要がなかった。パリティブロックのポピュラリティの増加は、当該増加がそれのポピュラリティ値をキャッシュに現在ある最もポピュラリティの低いブロックと同程度又はそれより高いものにする場合、付随的な読み出しの結果としては行われないかもしれない。このため、付随的な読み出しの結果として、何れのパリティブロックもキャッシュの現在のブロックをリプレースしない。
パリティブロックは、マスストレージからの実際の読み出しの結果として、それらのポピュラリティの増加を確認するかもしれない。このような読み出しは、パリティブロックにキャッシュの現在のブロックをリプレースさせるかもしれない。これは、現在キャッシュされている1以上のブロックのポピュラリティより大きく又は一部のケースでは同程度に大きくなるように、パリティブロックのポピュラリティが増加するときに行われるかもしれない。
すべてのブロックに関して、それがキャッシュから読み出される場合、パリティブロックのポピュラリティが増加されるかもしれない。
パリティブロックのポピュラリティは、減衰ファンクションを受けるかもしれない。減衰ファンクションは、上述したように機能するかもしれない。
ブロックポピュラリティキャッシュマネージメント技術を適用する際のキャッシュコンフィギュレーション
図2は、ブロックポピュラリティキャッシュマネージメント技術を適用する際のキャッシュコンフィギュレーションの実施例のブロック図である。メディアストリームA、B、C及びD並びにブロック213が示される。ストリームAは、ブロック1、11、2及び12を有する。ストリームBは、ブロック3、13、4及び14を有する。ストリームCは、ブロック5、15、6及び16を有する。ストリームDは、ブロック7、17、8及び18を有する。
ブロック識別子214は、ポピュラリティ215に関連付けされる。ブロック識別子1〜20が示される。ブロック1は対応するポピュラリティ9を有し、ブロック2は対応するポピュラリティ2を有し、ブロック3は対応するポピュラリティ1を有するなどである。
キャッシュ216は、ブロック1、4、6、10、11、14、16及び20を有する。これらは、図示されたメディアストリームA〜Dを有するブロックの読み出しの結果としてブロックポピュラリティが増加される直前である図示された時点において最も高いポピュラリティを有するブロックである。これらのストリームを有するブロック213が読み出された後、これらのブロック213のポピュラリティが増加されてもよい。これは、現在キャッシュされていないブロック(ブロック2など)と現在キャッシュされているブロック(ブロック1など)の両方について行われてもよい。本例では、各ポピュラリティは1ずつ増加される。このため、ブロック2は3のポピュラリティを有することになり、ブロック1は10のポピュラリティを有することとなる。本例では、キャッシュのすべてのブロックがキャッシュされていないものより高いポピュラリティを有するとき、キャッシュは依然としてブロック1、4、6、10、11、14、16及び20を有することとなる。
ポピュラリティキャッシュ処理
一実施例では、ブロックがキャッシュの他のブロックより高いポピュラリティを有する場合、当該ブロックはキャッシュ処理される。例えば、ブロックがキャッシュの少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、当該ブロックはキャッシュ処理されてもよい。ブロックがキャッシュの他のブロックと同程度のポピュラリティを有し、さらに他のブロックより最近に及び/又は頻繁に読み出される場合、当該ブロックがキャッシュ処理されるかもしれない。
ブロックのポピュラリティがキャッシュの他のブロックより高いポピュラリティを有しない場合、当該ブロックがキャッシュの他のブロックより最近に読み出されたとしても、及び/又は当該ブロックがキャッシュの他のブロックより頻繁に読み出されていたとしても、当該ブロックはキャッシュ処理されなくてもよい。
ブロックポピュラリティキャッシュマネージメント技術
図3は、ブロックポピュラリティキャッシュマネージメント技術の実施例のフローチャートである。図示された技術は、パリティブロックでないブロックに対するものである。
302において、例えば、1以上のノードのリセット又はブートアップ時に、ポピュラリティが初期化される。初期化は、オペレーティングシステムロジック、特定のノードのロジック又はシステムの他のロジックにより提供されるかもしれない。ある期間において各プログラムに対応するメディアストリームがリクエストされるとき、初期化が行われるようにしてもよい。
304において、ブロックが永久データストレージ又はキャッシュから読み出される。306において、ブロックポピュラリティが更新される。ブロックがストリーム生成の結果として読み出されるとき、ブロックを有するストリームが当該ブロックが読み出されたものと同一のノードによって、又は異なるノードによって出力されてもよい。
308において、ブロックポピュラリティは、それがキャッシュに現在ある他のブロックより高いポピュラリティを有しているか判断するためチェックされる。ブロックがすでにキャッシュされている場合、当該ステップは省略され、本プロセスは312に移行してもよい。キャッシュがフルでない場合、当該比較ステップは省略され、本プロセスは310に移行してもよい。
310において、ブロックポピュラリティは、少なくとも1つの現在キャッシュされているブロックより高いポピュラリティを有していたため(又はキャッシュがフルでなかったため)、当該ブロックがキャッシュされる。キャッシュがフルであった場合、ブロックのキャッシュ処理は、より低いポピュラリティを有する他のブロックをキャッシュから排除することを伴うかもしれない。一部の実施例では、他のブロックのポピュラリティと等しく、さらにそれのブロックがより最近に読み出されていた場合、ポピュラリティは他のブロックのポピュラリティより高いと考えられるかもしれない。
312において、更新されるポピュラリティが減衰状態を充足するか判断するため、更新されるポピュラリティの値がチェックされる。更新されるポピュラリティは、それがポピュラリティリミットなどに等しいか若しくは超過する場合、又はある期間が経過した場合若しくは他の条件によって、減衰条件を充足することになるかもしれない。
314において、減衰条件が充足されており、これにより、ポピュラリティ値が調整される。この調整は、ノードにより制御されているポピュラリティの一部若しくはすべてに対して、又はメディアサーバの複数のノードに対して行われるかもしれない。当該調整は、例えば、影響を受けるすべてのポピュラリティを1より大きな値により除算することにより影響を受けるすべてのポピュラリティを減少させることなどによって、各種方法により行われてもよい。
304において、他のブロックが読み出され、本プロセスが繰り返される。
ポピュラリティ減衰
ブロックポピュラリティを調整するため、1以上の減衰ファンクションが適用されるかもしれない。減衰ファンクションは、ある時間の経過後に、ブロックポピュラリティの少なくとも一部を低減するよう動作するかもしれない。例えば、減衰ファンクションは、ある時間の経過後にブロックポピュラリティの少なくとも一部をある数量だけ除するよう適用されるかもしれない。一般に、減衰ファンクションは、ポピュラリティの順序を保存する方法により、ブロックポピュラリティを低減するよう動作してもよい。
一部の実施例では、減衰ファンクションの適用は、イベントによりトリガーされるようにしてもよい。例えば、減衰ファンクションは、少なくとも1つのブロックがポピュラリティリミットに到達した結果として、適用されるようにしてもよい。
一部の実施例では、直近の減衰ファンクションが適用されてから、システム全体において又はシステムの何れかの部分においてある動作量が行われた後に、減衰が適用されてもよい。例えば、1以上のノード、1以上のディスク、ノードとディスクの組み合わせなど、各種サブシステムにグループ化されたブロックに対するいくつかの組み合わされたブロック読み出しの後に、減衰が適用されてもよい。
パリティブロックポピュラリティキャッシュマネージメント技術
図4は、パリティブロックを伴うブロックポピュラリティキャッシュマネージメント技術の実施例のフローチャートである。
402において、例えば、1以上のノードのリセット又はブートアップ持などに、ポピュラリティが初期化される。初期化は、オペレーティングシステムロジック、特定のノードのロジック又はシステムの他のロジックにより提供されてもよい。ある期間において各プログラムに対応するメディアストリームがリクエストされると、初期化が実行されてもよい。一実施例では、パリティブロックのポピュラリティは、キャッシュにおいて最も低いポピュラリティを有するブロックのポピュラリティに等しいか又はわずかに低い値に初期化される。
404において、パリティブロックは、永久データストレージ又はキャッシュから読み出される。この読み出しは、永久データストレージ若しくはキャッシュからの実際の読み出しであってもよく、又は当該読み出しは付随的な読み出しであってもよい。
406において、読み出しがパリティブロックの実際の読み出しか又は付随的な読み出しか判断される。
408において、読み出しが付随的であった場合、ブロックの潜在的に新しいポピュラリティが計算される。すなわち、更新されるポピュラリティが有する値が計算される。
410において、潜在的に新たなポピュラリティは、それがキャッシュに現在ある少なくとも1つの他のブロックより高いポピュラリティを有しているか判断するためチェックされる。そうでない場合、412において、ポピュラリティが増加される。そうである場合、ポピュラリティは増加されず、このため、キャッシュされていないブロックの付随的な読み出しは、ブロックのキャッシュ処理を実行しない。
414において、パリティブロックの読み出しが付随的なものでなかった場合、ブロックポピュラリティは増加される。416において、ブロックがすでにキャッシュされていた場合、本プロセスは422において終了する。そうでない場合、418において、ブロックがより高い新規なポピュラリティを有するか、又はキャッシュがフルでないか判断される。何れのケースでも、420において、ブロックはキャッシュに追加される。
一部の実施例では、パリティブロックがすでにキャッシュされている場合、付随的な読み出しは、キャッシュされたパリティブロックのポピュラリティを更新されるかもしれない。
当業者は、ここに記載された方法及び/又はシステムを実現可能な各種手段(ハードウェア、ソフトウェア及び/又はファームウェアなど)が存在し、及び/又は好適な手段が本方法が展開されるコンテクストに応じて変更可能であるということを認識するであろう。例えば、ある実施者がスピードと精度が優先されていると判断した場合、実施者はハードウェア及び/又はファームウェア手段を選択し、あるいは、フレキシビリティが優先されている場合、実施者はソフトウェアのみによる実現形態を選択するかもしれない。あるいは、実施者は、ハードウェア、ソフトウェア及び/又はファームウェアの組み合わせを選択するかもしれない。このため、ここに記載された方法が実現される可能性のある手段は複数存在し、その何れも利用される手段が可変的な展開されるコンテクスト及び実施者の固有の関心事(スピード、フレキシビリティ、予測可能性など)に応じて選択される。当業者は、実現形態の光学的特徴が光学的ハードウェア、ソフトウェア及び/又はファームウェアに関するものであるかもしれないことを認識するであろう。
上記詳細な説明は、ブロック図、フローチャート及び/又は具体例を利用することを介して装置及び/又は方法の各種実施例を提供した。このようなブロック図、フローチャート及び/又は具体例が1以上の機能及び/又は処理を含む限り、当該ブロック図、フローチャート又は具体例の範囲内の各機能及び/又は処理が、広範なハードウェア、ソフトウェア、ファームウェア又は実質的に任意のこれらの組み合わせによって、個別に及び/又は一体的に実現可能であるということ理解するであろう。ここに記載される主題のいくつかの部分は、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、DSP(Digital Signal Processor)又は他の統合されたフォーマットを介し実現されてもよい。しかしながら、ここに開示された実施例のいくつかの特徴が、1以上のコンピュータ上で実行される1以上のコンピュータプログラムとして(1以上のコンピュータシステム上で実行される1以上のプログラムとして)、1以上のプロセッサ上で実行される1以上のプログラムとして(1以上のマイクロプロセッサ上で実行される1以上のプログラムとしてなど)、ファームウェアとして、又は実質的に任意のこれらの組み合わせとして、標準的な集積回路において等しく実現可能であり、ソフトウェア及び/又はファームウェアのためのコードを書き込み及び/又は回路を設計することが、本開示に基づき当該分野の技術範囲内にあるということを当業者は認識するであろう。さらに、当業者は、ここに記載された主題のメカニズムが各種形式によるプログラムプロダクトとして配布可能であり、ここに記載された主題の例示的な実施例が実際に配布を実行するのに利用される信号搬送媒体の特定タイプに関係なく等しく適用されることを認識するであろう。信号搬送媒体の具体例として、以下に限定するものでないが、フロッピー(登録商標)ディスク、ハードディスクドライブ、CD ROM デジタルテープ、コンピュータメモリなどの記録可能媒体と、TDM又はIPベース通信リンク(パケットリンクなど)を利用したデジタル及びアナログ通信などの伝送タイプ媒体があげられる。
一般的には、当業者は、広範なハードウェア、ソフトウェア、ファームウェア又はこれらの何れかの組み合わせにより個別に及び/又は一体的に実現可能なここに記載された各種特徴が、各種タイプの“電気回路”から構成されるとみなすことができることを認識するであろう。このため、ここに使用される“電気回路”は、以下に限定するものでないが、少なくとも1つの離散的な電気回路を有する電気回路、少なくとも1つの集積回路を有する電気回路、少なくとも1つのASICを有する電気回路、コンピュータプログラムにより設定される汎用計算装置を構成する電気回路(ここに記載された方法及び/又は装置を少なくとも部分的に実行するコンピュータプログラムにより設定される汎用コンピュータ又はマイクロプロセッサなど)、メモリ装置を構成する電気回路(ランダムアクセスメモリなど)及び/又は通信装置を構成する電気回路(モデム、通信スイッチ、光電装置など)を含む。
当業者は、ここに与えられた形式により装置及び/又は方法を記載し、以降において、標準的な技術を利用してこのように記載された装置及び/又は方法をより大きなシステムに一体化することが、当該分野において一般的なことであると認識するであろう。すなわち、ここに記載された装置及び/又は方法の少なくとも一部は、妥当な程度の実験を介してネットワーク処理システムに統合することが可能である。
上述した特徴は、他の各種コンポーネントに含まれる又は接続される各コンポーネントを示す。このように示されたアーキテクチャは単なる一例であり、実際に同一の機能を実現する他の多くのアーキテクチャが実現可能であるということは理解されるべきである。概念的な意味では、同一の機能を実現するための任意のコンポーネントの構成が、所望の機能を実現するよう効果的に関連付けされる。このため、特定に機能を実現するため組み合わせされた任意の2つのコンポーネントは、アーキテクチャ又は中間的なコンポーネントに関係なく実現されるように、互いに関連付けされているとみなすことができる。同様に、そのように関連付けされた何れか2つのコンポーネントは、所望の機能を実現するため互いに動作可能に接続されているとみなすことができる。
図1は、ハイパーキューブメディアサーバの実施例のブロック図である。 図2は、ブロックポピュラリティキャッシュマネージメント技術を適用する際のキャッシュコンフィギュレーションの実施例のブロック図である。 図3は、ブロックポピュラリティキャッシュマネージメント技術の実施例のフローチャートである。 図4は、パリティブロックを伴うブロックポピュラリティキャッシュマネージメント技術の実施例のフローチャートである。

Claims (22)

  1. 少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するステップを有する方法であって、
    前記ブロックのポピュラリティは、永久ストレージからの前記ブロックの読み出し及び前記キャッシュからの前記ブロックの読み出しによって決定される方法。
  2. 前記ブロックがパリティブロックであるとき、前記ブロックのポピュラリティは、実際的又は付随的であるかに関係なく、永久ストレージからの前記ブロックの読み出し及び前記キャッシュからの前記ブロックの読み出しによって決定される、請求項1記載の方法。
  3. 前記ブロックがキャッシュされていないパリティブロックであるとき、前記ブロックのポピュラリティは、実際的又は付随的であるかに関係なく、永久ストレージからの前記ブロックの読み出しにより決定されるが、前記付随的な読み出しは、前記ブロックのポピュラリティを何れのキャッシュされているブロックのポピュラリティより高いものにするものでない、請求項2記載の方法。
  4. 前記少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するステップは、前記ブロックが前記キャッシュの少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、前記ブロックをキャッシュ処理するステップを含む、請求項1記載の方法。
  5. 前記ブロックが前記キャッシュの少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、前記ブロックをキャッシュ処理するステップはさらに、前記ブロックが前記キャッシュにおける少なくとも1つの他のブロックと同程度のポピュラリティを有し、さらに該少なくとも1つの他のブロックより最近に読み出されたものである場合、前記ブロックをキャッシュ処理するステップを含む、請求項4記載の方法。
  6. 前記少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するステップはさらに、マルチノードストリームサーバのノードに前記ブロックをキャッシュ処理するステップを含み、
    前記ブロックがキャッシュされる前記ノードは、前記ブロックが格納される大容量ストレージを有する、請求項1記載の方法。
  7. 前記少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するステップはさらに、前記ブロックのポピュラリティが、1以上の期間において大容量ストレージ又はキャッシュから前記ブロックの読み出しが何回行われたかによって少なくとも部分的に決定されるステップを含む、請求項1記載の方法。
  8. 前記ブロックのポピュラリティが前記キャッシュにおける他のブロックより高いポピュラリティを有しない場合、前記ブロックが前記キャッシュにおける他のブロックの少なくとも一部より最近に読み出されているとしても、前記ブロックをキャッシュ処理しないステップをさらに有する、請求項1記載の方法。
  9. 前記ブロックのポピュラリティがリプレースメントブロックより高いポピュラリティを有しない場合、前記リプレースメントブロックが永久ストレージより読み出されるより頻繁に前記ブロックが読み出されていても、前記ブロックをリプレースするステップをさらに有する、請求項1記載の方法。
  10. マルチノードメディアサーバの各ノードが、該ノードにより永久に格納される各ブロックのポピュラリティを維持するステップをさらに有する、請求項1記載の方法。
  11. 少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップをさらに有する、請求項1記載の方法。
  12. 前記少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップはさらに、ある時間の経過後に前記ブロックポピュラリティの少なくとも一部を減少させるステップを含む、請求項11記載の方法。
  13. 前記ある時間の経過後に前記ブロックポピュラリティの少なくとも一部を減少させるステップはさらに、前記時間の経過後に前記ブロックポピュラリティの少なくとも一部をある数量により除するステップを含む、請求項12記載の方法。
  14. 前記少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップはさらに、ポピュラリティ順序を保存するように前記ブロックポピュラリティを減少させるステップを含む、請求項11記載の方法。
  15. 前記少なくとも1つの減衰ファンクションをブロックポピュラリティに適用するステップはさらに、少なくとも1つのブロックがポピュラリティリミットに到達した結果として、前記減衰ファンクションを適用するステップを含む、請求項11記載の方法。
  16. スタートアップ及び/又はリセット状況の結果として、少なくとも一部のブロックポピュラリティを初期化するステップをさらに有する、請求項1記載の方法。
  17. 前記スタートアップ及び/又はリセット状況の結果として、少なくとも一部のブロックポピュラリティを初期化するステップはさらに、前記ブロックのポピュラリティ履歴に少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む、請求項16記載の方法。
  18. 前記スタートアップ及び/又はリセット状況の結果として、少なくとも一部のブロックポピュラリティを初期化するステップはさらに、前記ブロックを有するプログラムのメディアストリーミング及び/又は視聴履歴に少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む、請求項16記載の方法。
  19. 前記スタートアップ及び/又はリセット状況の結果として、少なくとも一部のブロックポピュラリティを初期化するステップはさらに、隣接するストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む、請求項16記載の方法。
  20. 前記隣接するストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップはさらに、メディアサーバハイパーキューブの各ノードの隣接するRAIDストレージ位置の各ブロックのポピュラリティに少なくとも部分的に従って、ブロックポピュラリティを初期化するステップを含む、請求項19記載の方法。
  21. 少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するロジックを有するシステムであって、
    前記ブロックのポピュラリティは、永久ストレージからの前記ブロックの読み出し及び前記キャッシュからの前記ブロックの読み出しによって決定されるシステム。
  22. 前記少なくとも1つのキャッシュに少なくとも1つのブロックを、該ブロックが前記キャッシュの各ブロックのポピュラリティより高いポピュラリティを有する場合、キャッシュ処理するロジックはさらに、前記ブロックが前記キャッシュにおける少なくとも1つの他のブロックと同程度、より高い又は同程度以上のポピュラリティを有する場合、前記ブロックをキャッシュ処理するロジックを有する、請求項21記載のシステム。
JP2008516993A 2005-06-14 2006-06-12 ポピュラリティによる情報のキャッシュ処理 Active JP5238497B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US69069505P 2005-06-14 2005-06-14
US60/690,695 2005-06-14
PCT/US2006/022880 WO2006138249A2 (en) 2005-06-14 2006-06-12 Caching of information according to popularity

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2013014187A Division JP5608765B2 (ja) 2005-06-14 2013-01-29 ポピュラリティによる情報のキャッシュ処理

Publications (2)

Publication Number Publication Date
JP2008544372A true JP2008544372A (ja) 2008-12-04
JP5238497B2 JP5238497B2 (ja) 2013-07-17

Family

ID=37571028

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2008516993A Active JP5238497B2 (ja) 2005-06-14 2006-06-12 ポピュラリティによる情報のキャッシュ処理
JP2013014187A Active JP5608765B2 (ja) 2005-06-14 2013-01-29 ポピュラリティによる情報のキャッシュ処理

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2013014187A Active JP5608765B2 (ja) 2005-06-14 2013-01-29 ポピュラリティによる情報のキャッシュ処理

Country Status (5)

Country Link
EP (1) EP1896954B1 (ja)
JP (2) JP5238497B2 (ja)
AU (1) AU2006259557A1 (ja)
CA (1) CA2611894C (ja)
WO (3) WO2007001518A1 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502641A (ja) * 2009-08-21 2013-01-24 グーグル インコーポレイテッド キャッシング情報のシステム及び方法
WO2023162219A1 (ja) * 2022-02-28 2023-08-31 三菱電機株式会社 キャッシュメモリ制御装置およびキャッシュメモリ制御方法

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8676920B2 (en) * 2010-12-08 2014-03-18 GM Global Technology Operations LLC Intelligent cache management protocol for vehicular networks
CN102244900B (zh) 2011-07-15 2014-01-22 上海华为技术有限公司 缓存数据热度值的同步方法、分布缓存方法、装置及系统
CN104794064B (zh) * 2015-04-21 2017-09-29 华中科技大学 一种基于区域热度的缓存管理方法
US10838805B2 (en) * 2018-02-23 2020-11-17 Micron Technology, Inc. Generating parity data based on a characteristic of a stream of data

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05314005A (ja) * 1992-05-11 1993-11-26 Fuji Xerox Co Ltd キャッシュメモリ
JPH09237225A (ja) * 1996-03-01 1997-09-09 Toshiba Corp キャッシュ機能を有するコンピュータ及びキャッシュメモリ制御方法
US5778430A (en) * 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
JPH11328031A (ja) * 1998-03-12 1999-11-30 Hewlett Packard Co <Hp> 動的変換システムにおけるトレ―スのランク付け方法
JP2002073416A (ja) * 2000-08-25 2002-03-12 Tokyo Denshi Sekkei Kk キャッシュメモリおよび画像出力装置
US20020103975A1 (en) * 2001-01-26 2002-08-01 Dawkins William Price System and method for time weighted access frequency based caching for memory controllers
JP2004110419A (ja) * 2002-09-18 2004-04-08 Fuji Electric Retail Systems Co Ltd メモリアクセス制御装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63236150A (ja) * 1987-03-24 1988-10-03 Toshiba Corp デイスクキヤツシユシステム
US5155809A (en) * 1989-05-17 1992-10-13 International Business Machines Corp. Uncoupling a central processing unit from its associated hardware for interaction with data handling apparatus alien to the operating system controlling said unit and hardware
US5634109A (en) * 1994-06-20 1997-05-27 International Business Machines Corporation Method and system for enhanced data management efficiency in memory subsystems utilizing redundant arrays of disk memory devices and a nonvolatile cache
JP2914181B2 (ja) * 1994-07-06 1999-06-28 三菱電機株式会社 ディスクアレイ装置
US5590320A (en) * 1994-09-14 1996-12-31 Smart Storage, Inc. Computer file directory system
US6035105A (en) * 1996-01-02 2000-03-07 Cisco Technology, Inc. Multiple VLAN architecture system
US7142503B1 (en) * 2000-02-11 2006-11-28 Nortel Networks Limited Communication system architecture and operating methodology providing a virtual neighborhood network
US6625753B1 (en) * 2000-05-09 2003-09-23 International Business Machines Corporation Recovery facility for an SNA communication network
US6651141B2 (en) * 2000-12-29 2003-11-18 Intel Corporation System and method for populating cache servers with popular media contents
US7133971B2 (en) * 2003-11-21 2006-11-07 International Business Machines Corporation Cache with selective least frequently used or most frequently used cache line replacement
US7444662B2 (en) * 2001-06-28 2008-10-28 Emc Corporation Video file server cache management using movie ratings for reservation of memory and bandwidth resources
JP4116470B2 (ja) * 2002-03-06 2008-07-09 ヒューレット・パッカード・カンパニー メディア・ストリーミング配信システム
US6934802B2 (en) * 2002-04-19 2005-08-23 Seagate Technology Llc Band detection and performance optimization for a data storage device
WO2004006579A1 (en) * 2002-07-09 2004-01-15 Kaleidescape, Inc. Content and key distribution system for digital content representing media streams
US20040202329A1 (en) * 2003-04-11 2004-10-14 Samsung Electronics Co., Ltd. Method and system for providing broadcast service using encryption in a mobile communication system
KR100592072B1 (ko) * 2003-10-02 2006-06-21 (주)디디오넷 전송 제어 프로토콜 기반의 다중경로 방식을 이용한스트림 데이터 전파 방법

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05314005A (ja) * 1992-05-11 1993-11-26 Fuji Xerox Co Ltd キャッシュメモリ
JPH09237225A (ja) * 1996-03-01 1997-09-09 Toshiba Corp キャッシュ機能を有するコンピュータ及びキャッシュメモリ制御方法
US5778430A (en) * 1996-04-19 1998-07-07 Eccs, Inc. Method and apparatus for computer disk cache management
JPH11328031A (ja) * 1998-03-12 1999-11-30 Hewlett Packard Co <Hp> 動的変換システムにおけるトレ―スのランク付け方法
JP2002073416A (ja) * 2000-08-25 2002-03-12 Tokyo Denshi Sekkei Kk キャッシュメモリおよび画像出力装置
US20020103975A1 (en) * 2001-01-26 2002-08-01 Dawkins William Price System and method for time weighted access frequency based caching for memory controllers
JP2004110419A (ja) * 2002-09-18 2004-04-08 Fuji Electric Retail Systems Co Ltd メモリアクセス制御装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JPN6012002994; Haijin Yan: 'Popularity-Aware Cache Replacement in Streaming Environments' in Proc. International Conference on Parallel and Distributed Computing Systems , 2003, 1-18ページ *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013502641A (ja) * 2009-08-21 2013-01-24 グーグル インコーポレイテッド キャッシング情報のシステム及び方法
US8812791B2 (en) 2009-08-21 2014-08-19 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
US8825961B2 (en) 2009-08-21 2014-09-02 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
US8825960B2 (en) 2009-08-21 2014-09-02 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
JP2014211909A (ja) * 2009-08-21 2014-11-13 グーグル インコーポレイテッド キャッシング情報のシステム及び方法
US8904116B2 (en) 2009-08-21 2014-12-02 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
US9104605B1 (en) 2009-08-21 2015-08-11 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
WO2023162219A1 (ja) * 2022-02-28 2023-08-31 三菱電機株式会社 キャッシュメモリ制御装置およびキャッシュメモリ制御方法

Also Published As

Publication number Publication date
EP1896954B1 (en) 2018-05-02
JP2013149258A (ja) 2013-08-01
AU2006259557A1 (en) 2006-12-28
WO2007001518A1 (en) 2007-01-04
WO2006138250A2 (en) 2006-12-28
EP1896954A4 (en) 2009-05-06
CA2611894C (en) 2017-11-28
WO2006138249A3 (en) 2007-04-26
JP5608765B2 (ja) 2014-10-15
EP1896954A2 (en) 2008-03-12
JP5238497B2 (ja) 2013-07-17
WO2006138249A2 (en) 2006-12-28
WO2006138250A3 (en) 2007-04-26
CA2611894A1 (en) 2006-12-28

Similar Documents

Publication Publication Date Title
JP5608765B2 (ja) ポピュラリティによる情報のキャッシュ処理
JP4328207B2 (ja) 対話型ブロードバンドサーバシステム
Chae et al. Silo, rainbow, and caching token: Schemes for scalable, fault tolerant stream caching
Acharya et al. Middleman: A video caching proxy server
US7596664B2 (en) Collapsed distributed cooperative memory for interactive and scalable media-on-demand systems
US9582355B2 (en) Systems and methods for reliably storing data using liquid distributed storage
US6721850B2 (en) Method of cache replacement for streaming media
US20110191447A1 (en) Content distribution system
US20110191446A1 (en) Storing and streaming media content
US8166248B2 (en) Caching of information according to popularity
CA2771599A1 (en) System and method of caching information
US20210409801A1 (en) System and method for storing multimedia files using an archive file format
US11316794B1 (en) Method and system for improving adaptive bit rate content and data delivery
Chang et al. Reducing initial latency in a multimedia storage system
Lamsub et al. A dynamic popularity caching policy for dynamic adaptive streaming over HTTP
Wujuan et al. A client-assisted interval caching strategy for video-on-demand systems
US11729256B2 (en) Predetermining network route for content steering
Shenoy et al. Multimedia storage servers
Gafsi et al. Design and implementation of a scalable, reliable, and distributed VOD-server
Park et al. Efficient segment based streaming media transcoding proxy for various types of mobile devices
US10187488B2 (en) Methods for managing replacement in a distributed cache environment and devices thereof
CN101534288A (zh) 一种缓存管理的方法和系统以及媒体网关
Shastri et al. DVDs: Much Needed “Shot in the Arm” for Video Servers
EP3062210B1 (en) Method and server for the storage of multimedia content and its delivery in adaptive streaming systems
Li et al. Flexible-segmentation-jumping strategy to reduce user-perceived latency for video on demand

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090306

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20120117

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120124

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120420

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120427

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120523

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130129

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130401

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5238497

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250