JP2003271442A - キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム - Google Patents

キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム

Info

Publication number
JP2003271442A
JP2003271442A JP2002070303A JP2002070303A JP2003271442A JP 2003271442 A JP2003271442 A JP 2003271442A JP 2002070303 A JP2002070303 A JP 2002070303A JP 2002070303 A JP2002070303 A JP 2002070303A JP 2003271442 A JP2003271442 A JP 2003271442A
Authority
JP
Japan
Prior art keywords
content
cache
database
cache memory
contents
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.)
Pending
Application number
JP2002070303A
Other languages
English (en)
Inventor
Shinji Utsu
真治 宇津
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.)
NTT Comware Corp
Original Assignee
NTT Comware Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NTT Comware Corp filed Critical NTT Comware Corp
Priority to JP2002070303A priority Critical patent/JP2003271442A/ja
Publication of JP2003271442A publication Critical patent/JP2003271442A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 巨大コンテンツを含む大サイズコンテンツの
使用効率の向上を図ったキャッシュアウト方法を提供す
る。 【解決手段】 キャッシュメモリ7には複数の配信用コ
ンテンツが記憶されている。コンテンツ情報ストア装置
6には、メモリ7内のコンテンツに関する各種データに
よるデータベースが記憶されている。メモリ7にキャッ
シュインする時にメモリ7がFullであった場合、キ
ャッシュアウト判定装置12が、まず、有効期限が既に
経過しているコンテンツをメモリ7およびストア装置6
から削除する。次に、ストア装置6内のデータベースを
コンテンツの時間情報(キャッシュイン情報等)に基づ
いてソートする。次に、ソート後のデータベースをブロ
ック化する。次に、分割された各データブロック内のコ
ンテンツをコンテンツサイズをキーとしてソートし、ソ
ート後のデータベースに基づいてキャッシュアウト処理
を行う。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、クライアントか
らの要求を受け、動画等の種々のコンテンツを配信する
キャッシュサーバおよびそのキャッシュアウト方法並び
にプログラムに関する。
【0002】
【従来の技術】近年、インターネットによって動画等を
配信するコンテンツ配信サービスが行われており、今後
数年の間に急速に拡大する可能性が高い。このサービス
においては、例えば、コンテンツを東京のオリジンサー
バに用意し、各地方にコンテンツの一部をキャッシュす
るキャッシュメモリを有するキャッシュサーバを配置す
る。そして、クライアントからコンテンツ配信の要求が
あった場合に、キャッシュサーバがキャッシュメモリか
らコンテンツを読み出し、クライアントに配信する。こ
の場合、キャッシュメモリは許容領域サイズ一杯で運用
される場合が多く、また、その方が効率的である。
【0003】ところで、クライアントから要求があった
コンテンツがキャッシュサーバになかった時は、キャッ
シュサーバがオリジンサーバからそのコンテンツをダウ
ンロードし、ダウンロードしたコンテンツをクライアン
トへ配信すると共に、新たにキャッシュメモリに書き込
む(キャッシュイン)。ここで、キャッシュメモリに余
裕がない場合は、キャッシュメモリ内のコンテンツ一部
を削除(キャッシュアウト)して新たにダウンロードし
たコンテンツを書き込むことになる。
【0004】
【発明が解決しようとする課題】従来、上述したキャッ
シュアウトの方式としては、FIFO(ファーストイン
・ファーストアウト)方式が一般的であった。しかし、
このFIFO方式には次の問題がある。すなわち、コン
テンツのサイズは大から小まで種々のものがあり、特
に、近年の動画等のコンテンツには極めて大きなサイズ
のものがある。そして、この巨大サイズのコンテンツを
ダウンロードすることは、コンピュータやネットワーク
の負荷が極めて大きく、ダウンロード回数が多くなる
と、ネットワークの輻輳、ランニングコストの増加を招
き、結果として、キャッシュサーバの性能低下、配信コ
ストの上昇の要因となる。したがって、この巨大サイズ
のコンテンツのダウンロード回数は少ない方が望まし
い。
【0005】しかしながら、従来のFIFO方式は単に
キャッシュインの時間のみでキャッシュアウトの順序を
決めていたので、巨大コンテンツでも時間がくれば削除
されてしまう。このため、クライアントからその巨大コ
ンテンツについて再度の要求があった時に再びダウンロ
ードが必要となり、巨大コンテンツの使用効率が悪い問
題があった。この発明は、このような事情を考慮してな
されたもので、その目的は、巨大コンテンツを含む大サ
イズコンテンツの使用効率の向上を図ったキャッシュサ
ーバおよびそのキャッシュアウト方法並びにプログラム
を提供することにある。
【0006】
【課題を解決するための手段】この発明は、後期の課題
を解決するためになされたもので、請求項1に記載の発
明は、コンテンツが記憶されたキャッシュメモリと、前
記キャッシュメモリ内のコンテンツに関するデータが記
憶されたデータベースとを具備するキャッシュサーバに
おける前記コンテンツのキャッシュアウト方法におい
て、有効期限が既に経過しているコンテンツを前記キャ
ッシュメモリから削除すると共に、該コンテンツに関す
るデータを前記データベースから削除する第1の処理
と、前記データベースの各データをコンテンツの時間情
報に基づいてソートする第2の処理と、前記第2の処理
によって得られたデータベースをブロック化する第3の
処理とと、前記第3の処理によって分割された各データ
ブロック内のコンテンツをコンテンツサイズをキーとし
てソートする第4の処理とを有し、前記第4の処理が終
了後のデータベースに基づいてキャッシュアウト処理を
行うことを特徴とするキャッシュアウト方法である。
【0007】請求項2に記載の発明は、請求項1に記載
のキャッシュアウト方法において、前記時間情報は、当
該コンテンツが前記キャッシュメモリに書き込まれたキ
ャッシュインタイムおよび当該コンテンツが最後にアク
セスされた最終アクセスタイムであることを特徴とす
る。
【0008】請求項3に記載の発明は、コンテンツが記
憶されたキャッシュメモリと、前記キャッシュメモリ内
のコンテンツに関するデータが記憶されたデータベース
とを具備し、クライアントの要求に応じて前記キャッシ
ュメモリ内のコンテンツを配信するキャッシュサーバに
おいて、クライアントからのコンテンツ要求を受ける受
信手段と、前記受信手段を介してクライアントから要求
されたコンテンツが前記キャッシュメモリにあるかない
かを前記データベース内のデータに基づいて判断し、な
かった場合に外部のサーバへ該コンテンツのダウンロー
ドを要求する手段と、前記サーバからダウンロードされ
たコンテンツを前記クライアントへ送信する手段と、前
記サーバからダウンロードされたコンテンツが前記キャ
ッシュメモリに書き込めるか否かを判断し、書き込めな
い場合にキャッシュメモリのキャッシュアウトを行った
後、該コンテンツをキャッシュメモリに書き込むキャッ
シュアウト手段とを具備し、前記キャッシュアウト手段
は、有効期限が既に経過しているコンテンツを前記キャ
ッシュメモリから削除すると共に、該コンテンツに関す
るデータを前記データベースから削除する第1の処理
と、前記データベースの各データをコンテンツの時間情
報に基づいてソートする第2の処理と、前記第2の処理
によって得られたデータベースをブロック化する第3の
処理と、前記第3の処理によって分割された各データブ
ロック内のコンテンツをコンテンツサイズをキーとして
ソートする第4の処理とを実行し、前記第4の処理が終
了後のデータベースに基づいてキャッシュアウト処理を
行うことを特徴とするキャッシュサーバである。
【0009】請求項4に記載の発明は、請求項3に記載
のキャッシュサーバにおいて、前記時間情報は、当該コ
ンテンツが前記キャッシュメモリに書き込まれたキャッ
シュインタイムおよび当該コンテンツが最後にアクセス
された最終アクセスタイムであることを特徴とする。
【0010】請求項5に記載の発明は、コンテンツが記
憶されたキャッシュメモリと、前記キャッシュメモリ内
のコンテンツに関するデータが記憶されたデータベース
とを具備するキャッシュサーバにおける前記コンテンツ
のキャッシュアウト処理プログラムにおいて、有効期限
が既に経過しているコンテンツを前記キャッシュメモリ
から削除すると共に、該コンテンツに関するデータを前
記データベースから削除する第1の処理と、前記データ
ベースの各データをコンテンツの時間情報に基づいてソ
ートする第2の処理と、前記第2の処理によって得られ
たデータベースをブロック化する第3の処理と、前記第
3の処理によって分割された各データブロック内のコン
テンツをコンテンツサイズをキーとしてソートする第4
の処理と、前記第4の処理が終了後のデータベースに基
づいてコンテンツのキャッシュアウトを行う第5の処理
とをキャッシュサーバコンピュータに実行させるための
プログラムである。
【0011】
【発明の実施の形態】以下、図面を参照し、この発明の
一実施の形態について説明する。図1は同実施の形態に
よるキャッシュサーバ1の構成を示すブロック図であ
る。この図において、2は受信回路であり、クライアン
トのコンピュータ3からインターネットを介して供給さ
れるコンテンツ依頼を受信し、アクセス情報ストア装置
4へ出力する。アクセス情報ストア装置4は、クライア
ントからのコンテンツ依頼を一時記憶し、次いで、コン
テンツ情報ストア装置6からストア情報D1を読み出
し、コンテンツ依頼に含まれるコンテンツ名がストア情
報D1にあるか否かを調べる。ここで、ストア情報D1
は、図2に示すように、キャッシュメモリ7に現在記憶
されている各コンテンツについてのデータベースであ
り、各コンテンツの名前、クライアントによる最終アク
セスタイム(年月日時分秒)、キャッシュインタイム
(年月日時分秒)、コンテンツサイズ、有効期限が各々
書き込まれている。
【0012】アクセス情報ストア装置4は、ストア情報
D1をチェックし、もし、クライアントから依頼があっ
たコンテンツ名があった場合は、キャッシュメモリ7か
らそのコンテンツを読み出し、送信回路8を介してクラ
イアントへ配信する。一方、そのコンテンツ名がなかっ
た場合は、そのコンテンツ名をインターネットを介して
外部のオリジンサーバ10へ送信する。オリジンサーバ
10は、多数のコンテンツを有しており、キャッシュサ
ーバ1からの依頼があったコンテンツをインターネット
を介してキャッシュサーバ1のプロセス生成装置11へ
ダウンロードする。
【0013】プロセス生成装置11はダウンロードされ
たコンテンツを送信回路8を介してクライアントのコン
ピュータ3へ送信すると共に、キャッシュアウト判定装
置12を介してそのコンテンツをキャッシュメモリ7に
書き込む。キャッシュアウト判定装置12は後述するキ
ャッシュアウト方法に従ってキャッシュメモリ7内のコ
ンテンツの一部をキャッシュアウトし、それによってで
きた空白エリアにオリジンサーバ10から送信された新
たなコンテンツを書き込む。またこの時、コンテンツ情
報ストア装置6を介してストア情報D1の書き替えを行
う。図2は上述した処理の流れ、特に、クライアントか
ら依頼があったコンテンツがキャッシュメモリ7内にな
かった場合の処理の流れを示す図である。
【0014】次に、上述したキャッシュアウト判定装置
12において行われるキャッシュアウト方法について図
3に示すフローチャートを参照して説明する。キャッシ
ュアウト判定装置12(図1)は、プロセス生成装置1
1から新規コンテンツのキャッシュイン指示を受ける
と、まず、新規コンテンツのサイズを抽出する。なお、
新規コンテンツのサイズは、HTTPレスポンスメッセージ
EntryヘッダのContrent-Length値にから得ることができ
る。
【0015】次に、コンテンツ情報ストア装置6内のス
トア情報D1の全コンテンツについて有効期限を調べ
る。そして、有効期限が切れているコンテンツをキャッ
シュメモリ7から削除すると共に、そのコンテンツに関
するデータをストア情報D1から削除する(ステップS
1)。次に、削除後のキャッシュメモリ7の空白エリア
の容量を計算し、次いで、その計算結果に基づいて使用
領域判定を行う(ステップS2)。この使用領域判定
は、図5に示すように、キャッシュメモリ7の許容領域
内に削除後の現使用サイズとキャッシュインコンテンツ
サイズの合計容量が入るか否かを判定することによって
行われ、言い換えれば、次式を満足するか否かを判定す
ることによって行われる。 現使用サイズ+キャッシュインコンテンツサイズ−削除
コンテンツサイズ≦許容領域サイズ そして、この式を満足していた場合は、キャッシュメモ
リ7に新規コンテンツのキャッシュインを行う(ステッ
プS3)。
【0016】一方、満足していなかった場合は、次に述
べるコンテンツのソートおよびブロック化を行う(ステ
ップS4〜S6)。すなわち、まず、コンテンツ情報ス
トア装置6内の各データ(ストア情報D1)を、 FK(ファーストキー)→キャッシュインタイム SK(セカンドキー) →最終アクセスタイム をキーとして昇順ソートする(ステップS4)。
【0017】次に、ソート結果を、ブロック化する(ス
テップS5)。このブロック化は、例えば、年月日時分
を年月日でブロック化することにより行われる。図4は
ブロック化の状態を示す図であり、太線が処理後のブロ
ックの例を示している。次に、各ブロックのコンテンツ
を、 FK→コンテンツサイズ をキーをして昇順ソートを行う(ステップS6)。
【0018】次に、ソート後の最上位ブロックからコン
テンツをキャッシュメモリ7から削除すると共に、その
コンテンツに関するデータをコンテンツ情報ストア装置
6から削除する。(ステップS7)。次に、削除後のキ
ャッシュメモリ7の空白エリアの容量を計算し、次い
で、その計算結果に基づいて、前述したステップS2の
処理と同様の使用領域判定を行う(ステップS8)。
【0019】そして、判定の結果、前述した式を満足し
ていなかった場合は、再度ステップS7へ戻り、次のコ
ンテンツをキャッシュメモリ7から削除し、次いで、再
び空白エリアの容量を計算する。次に、再び前記式を満
足しているか否かをチェックし、満足していた場合は、
コンテンツのキャッシュインを行う(ステップS3)。
また、満足していなかった場合は、再度、上記の過程を
繰り返す。
【0020】なお、上記実施形態においては、有効期限
他3項目によってキャッシュアウトをするコンテンツを
決めているが、さらに、クライアントのアクセス頻度や
課金の額等を参照して決めてもよい。この場合、アクセ
ス頻度の高いもの、課金の額の高いものをなるべく残す
ようにする。
【0021】
【発明の効果】以上説明したように、この発明によれ
ば、キャッシュアウトするコンテンツの判定を複合的に
行うことができ、大サイズコンテンツの使用効率の向上
を図ることができる。これにより、コンピュータやネッ
トワークを効率的に使用することができる効果が得られ
る。
【図面の簡単な説明】
【図1】 この発明の一実施形態によるキャッシュサー
バの構成を示すブロック図である。
【図2】 同実施形態におけるデータ処理の流れを示す
図である。
【図3】 同実施形態におけるキャッシュアウト判定装
置12において行われるキャッシュアウト処理のフロー
チャートである。
【図4】 同キャッシュアウト処理におけるブロック化
を説明するための図である。
【図5】 同キャッシュアウト処理における使用領域判
定処理を説明するための図である。
【符号の説明】
1…キャッシュサーバ 3…クライアントのコンピュータ 4…アクセス情報ストア装置 6…コンテンツ情報ストア装置 7…キャッシュメモリ 10…オリジンサーバ 11…プロセス生成装置 12…キャッシュアウト判定装置 D1…ストア情報(データベース)

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 コンテンツが記憶されたキャッシュメモ
    リと、前記キャッシュメモリ内のコンテンツに関するデ
    ータが記憶されたデータベースとを具備するキャッシュ
    サーバにおける前記コンテンツのキャッシュアウト方法
    において、 有効期限が既に経過しているコンテンツを前記キャッシ
    ュメモリから削除すると共に、該コンテンツに関するデ
    ータを前記データベースから削除する第1の処理と、 前記データベースの各データをコンテンツの時間情報に
    基づいてソートする第2の処理と、 前記第2の処理によって得られたデータベースをブロッ
    ク化する第3の処理とと、 前記第3の処理によって分割された各データブロック内
    のコンテンツをコンテンツサイズをキーとしてソートす
    る第4の処理と、 を有し、前記第4の処理が終了後のデータベースに基づ
    いてキャッシュアウト処理を行うことを特徴とするキャ
    ッシュアウト方法。
  2. 【請求項2】 前記時間情報は、当該コンテンツが前記
    キャッシュメモリに書き込まれたキャッシュインタイム
    および当該コンテンツが最後にアクセスされた最終アク
    セスタイムであることを特徴とする請求項1に記載のキ
    ャッシュアウト方法。
  3. 【請求項3】 コンテンツが記憶されたキャッシュメモ
    リと、前記キャッシュメモリ内のコンテンツに関するデ
    ータが記憶されたデータベースとを具備し、クライアン
    トの要求に応じて前記キャッシュメモリ内のコンテンツ
    を配信するキャッシュサーバにおいて、 クライアントからのコンテンツ要求を受ける受信手段
    と、 前記受信手段を介してクライアントから要求されたコン
    テンツが前記キャッシュメモリにあるかないかを前記デ
    ータベース内のデータに基づいて判断し、なかった場合
    に外部のサーバへ該コンテンツのダウンロードを要求す
    る手段と、 前記サーバからダウンロードされたコンテンツを前記ク
    ライアントへ送信する手段と、 前記サーバからダウンロードされたコンテンツが前記キ
    ャッシュメモリに書き込めるか否かを判断し、書き込め
    ない場合にキャッシュメモリのキャッシュアウトを行っ
    た後、該コンテンツをキャッシュメモリに書き込むキャ
    ッシュアウト手段と、 を具備し、前記キャッシュアウト手段は、 有効期限が既に経過しているコンテンツを前記キャッシ
    ュメモリから削除すると共に、該コンテンツに関するデ
    ータを前記データベースから削除する第1の処理と、 前記データベースの各データをコンテンツの時間情報に
    基づいてソートする第2の処理と、 前記第2の処理によって得られたデータベースをブロッ
    ク化する第3の処理と、 前記第3の処理によって分割された各データブロック内
    のコンテンツをコンテンツサイズをキーとしてソートす
    る第4の処理とを実行し、 前記第4の処理が終了後のデータベースに基づいてキャ
    ッシュアウト処理を行うことを特徴とするキャッシュサ
    ーバ。
  4. 【請求項4】 前記時間情報は、当該コンテンツが前記
    キャッシュメモリに書き込まれたキャッシュインタイム
    および当該コンテンツが最後にアクセスされた最終アク
    セスタイムであることを特徴とする請求項3に記載のキ
    ャッシュサーバ。
  5. 【請求項5】 コンテンツが記憶されたキャッシュメモ
    リと、前記キャッシュメモリ内のコンテンツに関するデ
    ータが記憶されたデータベースとを具備するキャッシュ
    サーバにおける前記コンテンツのキャッシュアウト処理
    プログラムにおいて、 有効期限が既に経過しているコンテンツを前記キャッシ
    ュメモリから削除すると共に、該コンテンツに関するデ
    ータを前記データベースから削除する第1の処理と、 前記データベースの各データをコンテンツの時間情報に
    基づいてソートする第2の処理と、 前記第2の処理によって得られたデータベースをブロッ
    ク化する第3の処理と、 前記第3の処理によって分割された各データブロック内
    のコンテンツをコンテンツサイズをキーとしてソートす
    る第4の処理と、 前記第4の処理が終了後のデータベースに基づいてコン
    テンツのキャッシュアウトを行う第5の処理と、 をキャッシュサーバコンピュータに実行させるためのプ
    ログラム。
JP2002070303A 2002-03-14 2002-03-14 キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム Pending JP2003271442A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002070303A JP2003271442A (ja) 2002-03-14 2002-03-14 キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002070303A JP2003271442A (ja) 2002-03-14 2002-03-14 キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム

Publications (1)

Publication Number Publication Date
JP2003271442A true JP2003271442A (ja) 2003-09-26

Family

ID=29200915

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002070303A Pending JP2003271442A (ja) 2002-03-14 2002-03-14 キャッシュサーバおよびそのキャッシュアウト方法並びにプログラム

Country Status (1)

Country Link
JP (1) JP2003271442A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011525278A (ja) * 2008-06-19 2011-09-15 マイクロソフト コーポレーション ローカル・ホスト・キャッシュおよび暗号ハッシュ機能を用いてネットワーク・トラフィックを低減する方法およびシステム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011525278A (ja) * 2008-06-19 2011-09-15 マイクロソフト コーポレーション ローカル・ホスト・キャッシュおよび暗号ハッシュ機能を用いてネットワーク・トラフィックを低減する方法およびシステム
US9747340B2 (en) 2008-06-19 2017-08-29 Microsoft Technology Licensing, Llc Method and system of using a local hosted cache and cryptographic hash functions to reduce network traffic

Similar Documents

Publication Publication Date Title
US7912949B2 (en) Systems and methods for recording changes to a data store and propagating changes to a client application
US7979509B1 (en) Clustered network acceleration devices having shared cache
US7676554B1 (en) Network acceleration device having persistent in-memory cache
US9594752B2 (en) Network service system and method with off-heap caching
US20080275949A1 (en) Efficient handling of mostly read data in a computer server
US8078574B1 (en) Network acceleration device cache supporting multiple historical versions of content
US20080271130A1 (en) Minimizing client-side inconsistencies in a distributed virtual file system
US8504736B2 (en) File input/output scheduler
JP3481054B2 (ja) ゲートウェイ装置、クライアント計算機およびそれらを接続した分散ファイルシステム
CN107395665A (zh) 一种区块链业务受理及业务共识方法及装置
US5878429A (en) System and method of governing delivery of files from object databases
CN107450979A (zh) 一种区块链共识方法及装置
CN105701156B (zh) 一种分布式文件系统管理方法及装置
US20140067990A1 (en) Method for accessing a content item in a cloud storage system, and a corresponding cloud broker, cloud cache agent and client application
US20020178176A1 (en) File prefetch contorol method for computer system
CN107483631A (zh) 一种采用配置文件控制缓存实现移动互联网络服务访问的系统及方法
CN104104645B (zh) 一种跨平台资源管理方法和系统
CN109471843A (zh) 一种元数据缓存方法、系统及相关装置
JP2007025843A (ja) データ記憶装置及びバージョン管理プログラム
CN107018170A (zh) 一种数据同步方法和设备
CN108319634A (zh) 分布式文件系统的目录访问方法和装置
CN107395708A (zh) 一种处理下载请求的方法和装置
CN117130792B (zh) 缓存对象的处理方法、装置、设备及存储介质
CN105144099B (zh) 通信系统
US9164922B2 (en) Technique for passive cache compaction using a least recently used cache algorithm

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20051025

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20051222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20060124