JP6287353B2 - コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム - Google Patents

コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム Download PDF

Info

Publication number
JP6287353B2
JP6287353B2 JP2014042025A JP2014042025A JP6287353B2 JP 6287353 B2 JP6287353 B2 JP 6287353B2 JP 2014042025 A JP2014042025 A JP 2014042025A JP 2014042025 A JP2014042025 A JP 2014042025A JP 6287353 B2 JP6287353 B2 JP 6287353B2
Authority
JP
Japan
Prior art keywords
content
distribution
cache
storage means
cache storage
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.)
Active
Application number
JP2014042025A
Other languages
English (en)
Other versions
JP2015170866A (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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry Co 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP2014042025A priority Critical patent/JP6287353B2/ja
Publication of JP2015170866A publication Critical patent/JP2015170866A/ja
Application granted granted Critical
Publication of JP6287353B2 publication Critical patent/JP6287353B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラムに関し、例えば、ビデオオンデマンドシステムにおける動的に配置されるコンテンツを配信するコンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラムに適用し得るものである。
従来、ビデオオンデマンドシステムにおいて、効率の良いサ−ビスを行なうために、管理サーバは、ビデオサーバからクライアントに対して配信されるコンテンツの送出数または予測可能なアクセス数が閾値を超えたとき、予想されるリソ−スの不足が最も深刻となるコンテンツを複数のビデオサーバ間で動的に配置することで、効率の良いサ−ビスを提供している(特許文献1参照)。
管理サーバは、コンテンツを動的に配置する際、コンテンツ格納手段の格納残容量が不足した場合、サーバ内に格納されているコンテンツの内、現時点でサ−ビス中でなく、かつ稼動率の最も低いコンテンツを削除する。若しくは、管理サーバは、定期的にコンテンツを削除、移動しておくことになる。
また、管理サーバは、クライアントから配信要求を受信したときは、同時アクセス数が最小のビデオサーバを選択する。
特開平11−098446号公報
ところで、記憶装置には、大容量かつ低速アクセスのRAID装置と、小容量かつ高速アクセスのメモリ等のキャッシュ記憶装置があり、両者の特長を組み合わせることにより、RAID装置の負荷を下げつつ、配信数を向上するのが望ましい。
しかしながら、従来技術のコンテンツ格納手段では、以下のような問題が生じ得る。
第1に、記憶装置の特性の違いが考慮されていないので、両者の特長を組み合わせることにより、RAID装置の負荷を下げつつ、配信数を向上することができないという問題点がある。
第2に、動的に配置、すなわちキャッシュしたコンテンツをいつどのように削除するかが十分考慮されていないという問題点がある。
例えば、説明を簡単にするために、コンテンツがC1及びC2の2個のみとする。また、キャッシュ記憶装置は、C1とC2のいずれかのコンテンツを記憶する分の容量しかないものとする。この状態で、図2に例示するように、コンテンツに対するアクセスパタ−ンがあるものとする。なお、図2において、横軸は時間を示し、縦軸はコンテンツC1、C2のアクセス数を示す。
特許文献1の記載技術は、サ−ビス中のコンテンツについては削除しないというものである。そのため、図2に例示するように、コンテンツC1及びC2の両方がアクセスされている場合には、特許文献1の記載技術によれば、いずれのコンテンツを削除することができない。従って、キャッシュ記憶装置の容量が一杯になると、それ以上キャッシュを配置することができないことになる。
比較的簡単な解決策としてキャッシュが必要になるたびに、以前配置していたコンテンツを削除する方法が考えられる。
例えば、図2において、アクセス数が「150回」を超えるタイミングでキャッシュの作成と削除を行うものとする。しかし、この場合、キャッシュ作成と削除のタイミングは、図2の例の場合、図2に示す(1)〜(7)のタイミングのように、頻繁なキャッシュの作成と削除が発生してしまい、オーバーヘッドが大きく効率が悪い。すなわち、キャッシュ作成と削除はキャッシュ記憶装置に対するI/O負荷が高いため、その間の配信性能は低下し、しかも時間がかかるので頻繁なキャッシュ作成、削除は望ましくない。
第3に、従来技術は、クライアントからコンテンツに対する配信要求を受けたとき、配信要求を受けるたび、その時点での同時アクセス数が最小のサーバを選択する。そのため、負荷はほぼ均等に分散される。しかし、キャッシュを作成してもRAID装置の負荷低減効果はそれほど大きくならないという問題点がある。
例えば、サーバがN台あり、コンテンツC1の総配信数をMとする。この場合、各サーバは、ほぼ均等にC1を配信することになるので、RAID装置は、サーバ1台あたりに対してM/N本のコンテンツC1を配信する。このとき、図3に示すように、時刻t0でサーバ1にキャッシュを作ったとすると、サーバ1のみRAID装置の負荷が0になり、他のサーバの負荷は変わらない。したがって、RAID全体では、RAID装置からサーバに対する配信本数において、M/N本の負荷が軽減されるだけである。
そのため、大容量記憶装置及びキャッシュ記憶装置の特性に応じて、大容量記憶装置の負荷を下げながら配信数を向上させ、キャッシュ記憶装置からキャッシュを削除するタイミングを最適化させることができるコンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラムが求められている。
かかる課題を解決するために、第1の本発明は、1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、大容量記憶手段又はキャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信装置において、(1)少なくとも、1又は複数の上記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理する配信情報管理手段と、(2)大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、キャッシュ対象コンテンツをキャッシュ記憶手段にキャッシュし、第2の配信情報に係る1又は複数のコンテンツをキャッシュ記憶手段から削除するコンテンツ配置制御手段とを備え、(3)上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、(4)上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであることを特徴とするコンテンツ配信装置である。
第2の本発明は、1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、大容量記憶手段又はキャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信方法において、(1)配信情報管理手段が、少なくとも、1又は複数の上記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理し、(2)コンテンツ配置制御手段が、大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、キャッシュ対象コンテンツをキャッシュ記憶手段にキャッシュし、第2の配信情報に係る1又は複数のコンテンツを上記キャッシュ記憶手段から削除し、(3)上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、(4)上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであことを特徴とするコンテンツ配信方法である。
第3の本発明は、1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、大容量記憶手段又はキャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信プログラムにおいて、コンピュータを、(1)少なくとも、1又は複数の上記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理する配信情報管理手段、(2)大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、キャッシュ対象コンテンツをキャッシュ記憶手段にキャッシュし、第2の配信情報に係る1又は複数のコンテンツをキャッシュ記憶手段から削除するコンテンツ配置制御手段として機能させ、(3)上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、(4)上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであることを特徴とするコンテンツ配信プログラムである。
本発明によれば、大容量記憶装置及びキャッシュ記憶装置の特性に応じて、大容量記憶装置の負荷を下げながら配信数を向上させ、キャッシュ記憶装置からキャッシュを削除するタイミングを最適化させることができる。
実施形態に係るコンテンツ配信システムの全体構成及びビデオオンデマンドシステムの内部構成を示す構成図である。 従来のキャッシュ作成と削除のタイミングを説明する説明図である。 従来のRAID装置におけるコンテンツ配信の配信負荷を説明する説明図である。 実施形態に係るコンテンツ配信・配置制御サーバ5の機能的な構成を示す構成図である。 実施形態に係るマシン情報テ−ブルの構成を説明する説明図である。 実施形態に係るデバイス負荷情報テ−ブルの構成を説明する説明図である。 実施形態に係るビデオサーバ負荷情報テ−ブルの構成を説明する説明図である。 実施形態に係るサーバごとコンテンツごとデバイスごとの配信情報テ−ブルの構成を説明する説明図である。 実施形態に係るコンテンツ配置処理を示すフローチャートである。 実施形態に係るキャッシュ候補の選択方式を説明する説明図である。 コンテンツ配置制御部によるキャッシュ候補の選択処理を示すフローチャートである(その1)。 コンテンツ配置制御部によるキャッシュ候補の選択処理を示すフローチャートである(その2)。 コンテンツ配置制御部によるキャッシュ候補の選択処理を示すフローチャートである(その3)。 実施形態に係るコンテンツ配置制御部によるキャッシュ作成先候補リストの作成方法を示すフローチャートである。 実施形態に係るコンテンツ配置処理を説明する説明図である。 実施形態に係るキャッシュ削除候補の選択処理を示すフローチャートである。 実施形態に係るコンテンツ配信制御処理を示すフローチャートである(その1)。 実施形態に係るコンテンツ配信制御処理を示すフローチャートである(その2)。 実施形態に係るRAID装置におけるコンテンツ配信の配信負荷を説明する説明図である。 実施形態に係る方式1のキャッシュ作成候補選択処理を説明する説明図である(その1)。 実施形態に係る方式1のキャッシュ作成候補選択処理を説明する説明図である(その2)。 実施形態に係る方式1のキャッシュ作成候補選択処理を説明する説明図である(その3)。 実施形態に係る方式2のキャッシュ作成候補選択処理を説明する説明図である。 実施形態に係る方式3のキャッシュ作成候補選択処理を説明する説明図である。 実施形態に係る方式4のキャッシュ作成候補選択処理を説明する説明図である。 実施形態に係るキャッシュ作成候補選択方式の比較を説明する説明図である。 実施形態に係るキャッシュ作成候補選択方式の比較を説明する説明図である。 実施形態に係るキャッシュ作成先候補選択処理を説明する説明図である。 実施形態においてマシンM1及びM2におけるキャッシュ記憶装置の優先度及びビジー率を示すキャッシュ作成先候補選択処理を説明する説明図である。 実施形態において時刻t1における各ビデオサーバVS1、VS2の各RAID装置R1及びR2とキャッシュ記憶装置D1〜D5における各コンテンツの配信ビットレ−トの状態を説明する説明図である。 実施形態においてキャッシュ削除処理結果を示す説明図である。 実施形態に係る削除判定方法(1)の場合のキャッシュ作成と削除のタイミングを説明する説明図である。 実施形態に係る削除判定方法(2)の場合のキャッシュ作成と削除のタイミングを説明する説明図である。 実施形態に係る配信制御処理を説明する説明図である。 実施形態において時刻t1における各コンテンツ、各デバイスでの配信ビットレ−トの状態を示す図である。 実施形態において時刻t1における各コンテンツ、各デバイスでの配信本数の状態を示す図である。 実施形態において各ビデオサーバのCPU使用率、T14(CPU使用率の上限値)、T15(配信ビットレ−トの上限値)、T16(配信本数の上限値)を示す図である。 実施形態において各デバイスのPri、Busy(ビジー率)、T17(ビジー率の上限値)、T18(配信ビットレ−トの上限値)、T19(配信本数の上限値)を示す図である。 実施形態においてビデオサーバ毎の配信ビットレート及び配信本数の計算結果を説明する説明図である。 実施形態においてマシンごとの指定コンテンツの配信本数の計算結果を説明する説明図である。 実施形態においてデバイス毎の配信ビットレート及び配信本数の計算結果を説明する説明図である。 実施形態においてマシンM1の各ビデオサーバの指定コンテンツの配信数の計算結果を説明する説明図である。
(A)主たる実施形態
以下では、本発明のコンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラムの実施形態を、図面を参照しながら詳細に説明する。
(A−1)実施形態の構成
図1は、この実施形態に係るコンテンツ配信システムの全体構成及びビデオオンデマンドシステムの内部構成を示す構成図である。
図1において、コンテンツ配信システム100は、ビデオオンデマンドシステム10、ネットワ−クNT、複数の端末装置20−1〜20−k(kは整数)を有する。
複数の端末装置20−1〜20−kは、ネットワ−クNTを介してビデオオンデマンドシステム10に対してコンテンツ配信要求をしたり、ネットワ−クNTを介してビデオオンデマンドシステム10から配信されたコンテンツを受信して出力(表示、音出力等)したりするものである。
ビデオオンデマンドシステム10は、複数のRAID装置R1〜RL(Lは整数)、RAID装置管理サーバ3、複数のマシンM1〜MN(Nは整数)、コンテンツ配信・配置制御サーバ5を有する。
なお、以下では、複数のRAID装置、複数のマシンについて共通の機能構成を説明する場合には、「RAID装置RD」、「マシンM」と表記して説明し、各RAID装置、各マシンを区別して説明する場合には、「RAID装置R1」、「マシンM1」等のように表記して説明する。
複数のマシンM1〜MNのそれぞれには、1又は複数のビデオサーバVSとキャッシュ記憶装置管理サーバCSとが稼働できる状態となっており、1又は複数のキャッシュ記憶装置CDが搭載されている。
なお、以下では、ビデオサーバ、キャッシュ記憶装置について共通の機能構成を説明する場合には、「ビデオサーバVS」、「キャッシュ記憶装置CD」と表記して説明し、各ビデオサーバ、各キャッシュ記憶装置を区別して説明する場合には、「ビデオサーバVS1」、「キャッシュ記憶装置CD1」等のように表記して説明する。
各ビデオサーバVSは、コンテンツ配信・配置制御サーバ5からの指示により、指定のコンテンツを指定のキャッシュ記憶装置CD又はRAID装置RDから読み込み、指定された端末装置20に配信する。各ビデオサーバVSは、同じマシン上に搭載されているキャッシュ記憶装置CDと、全てのRAID装置RDに格納されているコンテンツにアクセス可能である。
コンテンツ配信・配置制御サーバ5は、端末装置20からの配信要求を受けて、要求されたコンテンツの配信をマシンM上で動作するビデオサーバVSに指示するものである。
図4は、この実施形態に係るコンテンツ配信・配置制御サーバ5の機能的な構成を示す構成図である。図4において、コンテンツ配信・配置制御サーバ5は、配信情報管理部51、コンテンツ配置制御部52、コンテンツ配信制御部53、通信部54を有する。
なお、コンテンツ配信・配置制御サーバ5は、CPU、ROM、RAM、EEPROM、入出力インタフェース等を有して構成されるサーバである。CPUが、ROMに格納される処理プログラムを実行することにより、コンテンツ配信・配置制御サーバ5の機能を実現する。なお、処理プログラムは、インストールにより搭載されるようにしても良く、その場合でも図4に示す機能部を示すことができる。
通信部54は、端末装置20からコンテンツ配信要求を受信すると、そのコンテンツ配信要求をコンテンツ配信制御部53に与えたり、ビデオサーバVSから負荷情報(例えば、CPU使用率等)を受信すると、その負荷情報を配信情報管理部51に与えたりするものである。
コンテンツ配信制御部53は、適当なビデオサーバVSを見つけ、ビデオサーバVSに対して、要求元の端末装置20にコンテンツの配信を行なわせるよう指示をするコンテンツ配信制御を行なう。また、コンテンツ配信制御部53は、コンテンツ配信要求の要求元である端末装置20に対して配信応答を行う。
配信情報管理部51は、通信部54から受け取ったビデオサーバVSの負荷情報を管理するものである。負荷情報には、デバイス負荷情報、ビデオサーバ負荷情報、サーバごとコンテンツごとデバイスごと配信情報がある。また、配信情報管理部51は、マシンMとビデオサーバVSとを対応付けたマシン情報も管理する。
図5は、実施形態に係るマシン情報テ−ブルの構成を説明する説明図である。図6は、実施形態に係るデバイス負荷情報テ−ブルの構成を説明する説明図である。図7は、実施形態に係るビデオサーバ負荷情報テ−ブルの構成を説明する説明図である。図8は、実施形態に係るサーバごとコンテンツごとデバイスごとの配信情報テ−ブルの構成を説明する説明図である。
配信情報格納部51は、例えば図5のようなマシンMとビデオサーバVSを対応付けるマシン情報テ−ブルも格納する。例えば、マシン情報テ−ブルは、「マシン名」と「所属するビデオサーバID」とを対応付けている。図5に示すように、マシンM1上には、ビデオサーバVS1、VS2が動作している等のように示す。
デバイス負荷情報については、図6のようなデバイス負荷情報テ−ブルを配信情報管理部51に格納して管理する。図6において、デバイス負荷情報テ−ブルは、例えば、「デバイスID」、コンテンツを格納しているデバイスがRAID装置RDか又はキャッシュ記憶装置CDかを示す「デバイス種類」、「I/Oビジー率(%)」、「ビジー率上限(%)」、「デバイス配信ビットレ−ト上限(Mbps)」、「デバイス配信数上限(本)」、「空き容量(GB)」、「容量(GB)」、コンテンツを格納先の優先度を示す「デバイス優先度」を項目としている。
ビデオサーバ負荷情報については図7のようなビデオサーバ負荷情報テ−ブルを配信情報管理部51に格納して管理する。ビデオサーバ負荷情報テ−ブルは、例えば、「ビデオサーバID」、「CPU使用率(%)」、「CPU使用率上限(%)」、「配信ビットレ−ト上限(Mbps)」、「配信数上限(本)」を項目として有する。
サーバごとコンテンツごとデバイスごと配信情報については図8のようなサーバごとコンテンツごとデバイスごと配信情報テ−ブル(以下、配信情報テ−ブルとも呼ぶ。)を配信情報管理部51に格納して管理する。配信情報テ−ブルは、例えば、「ビデオサーバID」、「コンテンツID」、「デバイスID」、「配信ビットレ−ト(Mbps)」、「配信数(本)」を項目として有する。
コンテンツ配置制御部52は、定期的に、図8に例示する配信情報テ−ブルを検査してRAID装置RDの負荷(例えばCPU使用率等)が高くなったことを検知し、適当なマシンのキャッシュ記憶装置管理サーバCSにキャッシュ作成と不要になったキャッシュの削除を指示することにより、コンテンツ配置制御を行なう。
RAID装置RDは、冗長化とストライピングにより優れた耐故障性と読み書き性能を有し、大量のコンテンツを格納する大容量の記憶装置である。
キャッシュ記憶装置CDは、高速なアクセス機能を持ち、少量のコンテンツを格納する。キャッシュ記憶装置CD上のコンテンツはRAID装置RDに格納されたコンテンツの複製であり、ビデオオンデマンドシステム10内ではコンテンツのキャッシュとして機能する。例えば、キャッシュ記憶装置CDは、SSDやメモリ等を適用することができる。
キャッシュ記憶装置管理サーバCSは、同じマシン上のキャッシュ記憶装置CDのコンテンツ(=キャッシュ)を管理し、コンテンツ配信・配置制御サーバ5のコンテンツ配置制御部52からのキャッシュ作成指示により、RAID装置管理サーバ3を通じてRAID装置RDからマシンM内に配置されるビデオサーバVSに送信されるコンテンツに関して、RAID装置RDのコンテンツの複製を作成し、キャッシュとして格納する。また、キャッシュ記憶装置管理サーバCSは、コンテンツ配信・配置制御サーバ5のコンテンツ配置制御部53からのキャッシュ削除指示により、キャッシュを削除する。
(A−2)実施形態の動作
次に、この実施形態のビデオオンデマンドシステム10におけるコンテンツ配置制御処理及びコンテンツ配信制御処理の動作を、図面を参照しながら詳細に説明する。
(A−2−1)コンテンツ配置制御処理
まず、この実施形態のビデオオンデマンドシステム10におけるコンテンツの配信制御処理について図面を参照しながら詳細に説明する。
図9は、実施形態に係るコンテンツ配置処理を示すフローチャートである。
コンテンツ配信・配置制御サーバ5のコンテンツ配置制御部52は、定期的に、図9に例示するフローチャート処理を行なう。なお、コンテンツ配信・配置制御サーバ5の定期的な実行の時間間隔をΔtとし、以下では時刻tで実行しているとする。
(S1)コンテンツ配置制御部52はキャッシュ作成候補を選択する。ここで、コンテンツ配置制御部52によるキャッシュ作成候補の選択方法は、4個の選択方式がある。そのため、管理者は4個の選択方式の優先度を決めておくようにしてもよい。また、4個の選択方式のうち、いずれの方式を使用するかを決定しておくようにしても良い。
(A−2−1−1)キャッシュ作成候補選択処理
図10は、実施形態に係るキャッシュ候補の選択方式を説明する説明図である。
図10に示すように、この実施形態に係るキャッシュ候補方式の「方式1」は、配信負荷の高いコンテンツを検出したときにキャッシュを開始する。「方式1」のキャッシュ対象のコンテンツは、総配信ビットレ−トが最大のコンテンツとする。
「方式2」は、配信負荷増分の高いコンテンツ(すなわち、単位時間当たりの配信負荷が高いコンテンツ)を検出したときにキャッシュを開始する。「方式2」のキャッシュ対象のコンテンツは、総配信ビットレ−トの増分が最大のコンテンツとする。
「方式3」は、配信負荷の高いRAID装置RDを検出したときにキャッシュを開始する。「方式3」のキャッシュ対象のコンテンツは、配信負荷の高いRAID装置RDの中で、総配信ビットレ−トが最大のコンテンツとする。
「方式4」は、配信負荷増分の高いRAID装置RDを検出したときにキャッシュを開始する。「方式4」のキャッシュ対象のコンテンツは、配信負荷増分の高いRAID装置RDの中で、総配信ビットレ−トが最大のコンテンツとする。
図11〜図13は、コンテンツ配置制御部52によるキャッシュ候補の選択処理を示すフローチャートである。
(S1−1)まず、管理者等により、コンテンツ配置制御部52がキャッシュ候補の選択方式として使用する方式の選択や、複数の方式を使用する場合にその方式の優先度の設定を選択方式リストに行う。
例えば、「方式4」、「方式1」、「方式3」の順に優先し、「方式2」は無効にしたい場合には、「方式1:2」,「方式2:0」、「方式3:3」、「方式4:1」等のように選択方式リストに設定するようにしても良い。コンテンツ配置制御部52は、このように決められた優先度の高い順に選択方式をソートし、選択方式リストを作成する。上の例では、選択方式リストは(方式4,方式1,方式3)のようにソートする。
(S1−2)コンテンツ配置制御部52は、選択方式リストの先頭を取り出す。例えば、上記例の場合、コンテンツ配置制御部52は、「方式4」を取り出し、選択方式リストは(方式1,方式3)のようになる。
(S1−3)取り出した方式が「方式1」であるかを判断する。
(S1−4)例えば、取り出した方式が「方式1」の場合、コンテンツ配置制御部52は、次式(1)、式(2)により、時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信される各コンテンツについての配信ビットレ−トの和fB(c,t)と配信数の和fN(c,t)を計算する。
Figure 0006287353
ここで、fB(c,t)は、時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツの配信ビットレ−トの和を示す。
また、fN(c,t)は、時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツの配信数の和を示す。
Br(v,r,c,t)は、時刻tにおけるサーバID=vのビデオサーバによりデバイスID=rのRAID装置RDのデバイスから端末装置20に配信されるコンテンツI=cのコンテンツの配信ビットレ−トを示す。Br(v,r,c,t)は、図8の配信情報テ−ブルから取得することができる。
Num(v,r,c,t)は、時刻tにおけるサーバID=vのビデオサーバVSによりデバイスID=rのRAID装置RDのデバイスから端末装置20に配信されるコンテンツID=cのコンテンツの配信数を示す。Num(v,r,c,t)は、図8の配信情報テ−ブルから取得することができる。
Vは、全ビデオサーバVSのIDの集合示し、また、Rは全RAID装置RDのデバイスIDの集合を示す。
また、式(1)及び式(2)の右辺の関数「Σ」は、全てのビデオサーバVS、全てのRAID装置RDについての和であることを表す。
(S1−5)コンテンツ配置制御部52は、式(3)が成立するか否かを判断する。式(3)が成立する場合にはS1−6に進み、不成立の場合にはS1−8に進む。
Figure 0006287353
(S1−6) 式(3)が成立する場合、コンテンツ配置制御部52は、「fB(c,t)は時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信ビットレ−トの和」が「管理者が設定するコンテンツの配信ビットレ−ト閾値T」以上であり、最も配信ビットレ−トの和fB(c,t)が大きくなるコンテンツID=cを選択する。
ここで、T1は管理者が設定するコンテンツの配信ビットレ−ト閾値を示す。
また、式(3)の関数「max」は、コンテンツID=cを変化させたときに最大となる値を表す。
(S1−7)S1−6でコンテンツIDを選択すると、処理を図9に戻す。
(S1−8)コンテンツ配置制御部52は、式(4)が成立するか否かを判断する。式(4)が成立する場合にはS1−9に進み、不成立の場合にはS1−11に進む。
Figure 0006287353
(S1−9)式(4)が成立する場合、コンテンツ配置制御部52は、「fN(c,t)が時刻tにおける全ビデオサーバにより全RAID装置から端末装置に配信されるコンテンツID=cのコンテンツについての配信数の和」が「管理者が設定するコンテンツの配信数閾値T」以上であり、最も配信数の和fN(c,t)が大きくなるコンテンツID=c」を選択する。ここで、式(4)において、Tは管理者が設定するコンテンツの配信数閾値を示す。
(S1−10)S1−9でコンテンツIDを選択すると、処理を図9に戻す。
(S1−11)式(3)、式(4)の両方とも成り立たず、かつ、選択方式リストが空であるかを判断する。式(3)、式(4)の両方とも成り立たず、かつ、選択方式リストが空でない場合、処理をS1−2へ戻す。
(S1−12)選択方式リストが空である場合、キャッシュ候補のコンテンツのコンテンツIDは「なし」として、図9に処理を戻す。
(S1−13)取り出した方式が「方式2」であるかを判断する。
(S1−14)取り出した方式が「方式2」の場合、コンテンツ配置制御部52は、式(5)及び式(6)により「時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信ビットレ−トの和」と「時刻t−Δtにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信ビットレ−トの和」との差分ΔfB(c,t)を計算する。
さらに、コンテンツ配置制御部52は、「時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信数の和」と「時刻t−Δtにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信数の和」との差分ΔfN(c,t)を計算する。
Figure 0006287353
ここで、
ΔfB(c,t)は、時刻tにおけるコンテンツID=cのコンテンツの配信ビットレ−トの和と時刻t−Δtのそれとの差分を示す。
ΔfN(c,t)は、時刻tにおけるコンテンツID=cのコンテンツの配信数の和と時刻t−Δtのそれとの差分を示す。
(S1−15)式(7)が成立か否かを判断する。式(7)が成立する場合、S1−16に進み、不成立の場合、S1−18に進む。
Figure 0006287353
(S1−16)式(7)が成立する場合、コンテンツ配置制御部52は、「fB(c,t):時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信ビットレ−トの和」と「fB(c,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信ビットレ−トの和」との差分ΔfB(c,t)」が「管理者が設定するコンテンツの配信ビットレ−トの差分閾値T」以上であり、最も差分ΔfB(c,t)が大きくなるコンテンツID=cを選択する。ここで、Tは管理者が設定するコンテンツの配信ビットレ−ト差分閾値を示す。
(S1−17)S1−16でコンテンツIDを選択すると、処理を図9に戻す。
(S1−18)式(8)が成立か否かを判断する。式(8)が成立する場合、S1−19に進み、不成立の場合、S1−21に進む。
Figure 0006287353
(S1−19)式(8)が成立する場合、コンテンツ配置制御部52は、「fN(c,t):「時刻tにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信数の和」と「fN(c,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより全RAID装置RDから端末装置20に配信されるコンテンツID=cのコンテンツについての配信数の和」との差分ΔfN(c,t)」が、「管理者が設定するコンテンツの配信数の差分閾値T」以上であり、最も差分ΔfN(c,t)が大きくなるコンテンツID=c」を選択する。ここで、Tは管理者が設定するコンテンツの配信数の差分閾値を示す。
(S1−20)S1−19でコンテンツIDを選択すると、処理を図9に戻す。
(S1−21)式(7)、式(8)の両方とも成り立たず、かつ、選択方式リストが空であるかを判断する。式(7)、式(8)の両方とも成り立たず、かつ、選択方式リストが空でない場合、処理をS1−2へ戻す。
(S1−22)選択方式リストが空である場合、キャッシュ候補のコンテンツのコンテンツIDは「なし」として、図9に処理を戻す。
(S1−23)取り出した方式が「方式3」であるかを判断する。
(S1−24)取り出した方式が「方式3」の場合、コンテンツ配信制御部52は、式(9)、式(10)により、時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和gB(r,t)と配信数の和のgN(r,t)を計算する。
Figure 0006287353
ここで、gB(r,t)は、時刻tにおけるデバイスID=rのRAID装置のデバイスの配信ビットレ−トの和を示す。
gN(r,t)は、時刻tにおけるデバイスID=rのRAID装置のデバイスの配信数の和を示す。
C:全コンテンツIDの集合を示す。
式(9)、式(10)において右辺の関数「Σ」は、全てのビデオサーバ、全てのコンテンツについての和であることを表す。
(S1−25)式(11)が成立か否かを判断する。式(11)が成立する場合、S1−26に進み、不成立の場合、S1−30に進む。
Figure 0006287353
ここでTは管理者が設定するRAID装置の配信ビットレ−トの閾値を示す。また関数「max」は、rを変化させたときに最大となる値を表す。
(S1−26)式(11)が成立する場合、コンテンツ配置制御部52は、「gB(r,t): 時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和」が「管理者が設定するRAID装置RDの配信ビットレ−トの閾値T」以上であり、最も配信ビットレ−トの和gB(r,t)が大きくなるRAID装置RDのデバイスID=rを選択する。ここではデバイスID=rが選択されたとする。
(S1−27)コンテンツ配置制御部52は、時刻tにおける全ビデオサーバVSによりデバイスID=rのRAID装置RDから端末装置20に配信される各コンテンツID=cの配信ビットレ−トの和hB(r,c,t)を次式から計算する。
Figure 0006287353
ここで、右辺の関数「Σ」は、全てのビデオサーバVSについての和であることを表す。
(S1−28)式(12−1)が成立するか否かを判断する。
Figure 0006287353
式(12−1)が成立する場合、コンテンツ配置制御部52は、時刻tにおける全ビデオサーバVSによりデバイスID=rのRAID装置RDから端末装置20に配信される各コンテンツID=cの配信ビットレ−トの和が最大配信ビットレ−トとなるコンテンツID=cを選択する。
(S1−29)処理を図9に戻す。
(S1−30)式(13)が成立するか否かを判断する。式(13)が成立する場合にはS1−31に進み、不成立の場合にはS1−35に進む。
Figure 0006287353
ここで、Tは管理者が設定するRAID装置の配信数の閾値を示す。
(S1−31)式(13)が成立する場合、コンテンツ配置制御部52は、「gN(r,t):時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信数の和」が「管理者が設定するRAID装置RDの配信数の閾値T」以上であり、最も配信数の和gB(r,t)が大きくなるRAID装置RDのデバイスID=rを選択する。ここではデバイスID=rが選択されたとする。
(S1−32)コンテンツ配置制御部52は、時刻tにおける全ビデオサーバによりデバイスID=rのRAID装置RDから端末装置20に配信される各コンテンツID=cの配信数の和hN(r,c,t)を計算する。
Figure 0006287353
(S1−33)式(14−1)によりコンテンツを選択する。
Figure 0006287353
つまり、コンテンツ配置制御部52は、時刻tにおける全ビデオサーバによりデバイスID=rのRAID装置から端末装置に配信される各コンテンツID=cの配信数の和が最大配信数となるコンテンツID=cを選択する。
(S1−34)処理を図9に戻す。
(S1−35)式(13)が成り立たず、かつ、選択方式リストが空であるかを判断する。式(11)が成り立たず、かつ、選択方式リストが空でない場合、処理をS1−2へ戻す。
(S1−36)選択方式リストが空である場合、キャッシュ候補のコンテンツのコンテンツIDは「なし」として、図9に処理を戻す。
(S1−37)取り出した方式が「方式4」であるかを判断する。
(S1−38)取り出した方式が「方式4」以外の場合、候補のコンテンツのコンテンツIDは「なし」とする。
(S1−39)取り出した方式が「方式4」の場合、コンテンツ配置制御部52は、式(15)により「gB(r,t):時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和」と「gB(r,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和」との差分ΔgB(r,t)を計算する。
さらに、コンテンツ配置制御部52は、式(16)により「gN(r,t):時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信数の和」と「gN(r,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより各RAID装置RDから端末装置に配信される全コンテンツについての配信数の和」との差分ΔgN(r,t)を計算する。
Figure 0006287353
ここで
ΔgB(r,t)は、時刻tにおけるデバイスID=rのRAID装置RDの配信ビットレ−トの和と時刻t−Δtのそれとの差分を示す。
ΔgN(r,t)は、時刻tにおけるデバイスID=rのRAID装置RDの配信数の和と時刻t−Δtのそれとの差分を示す。
(S1−40)式(17)が成立するか否かを判断する。
Figure 0006287353
ここで、Tは管理者が設定するRAID装置の配信ビットレ−トの差分の閾値を示す。
式(17)が成り立つ場合、コンテンツ配置制御部52は、「ΔgB(r,t):「gB(r,t):時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和」と「gB(r,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信ビットレ−トの和」との差分」が、「管理者が設定するRAID装置の配信ビットレ−トの差分の閾値T」以上であり、最も差分ΔgB(r,t)が大きくなるRAID装置ID=r」を選択する。ここでは、例えばRAID装置RDのデバイスID=rが選択されたとする。
(S1−42)コンテンツ配置制御部52は、式(12)より、時刻tにおけるデバイスID=rのRAID装置RDから全ビデオサーバVSに配信される各コンテンツID=cの配信ビットレ−トの和h(r,c,t)を計算する。
(S1−43)式(17−1)によりコンテンツを選択する。つまり、コンテンツ配置制御部52は、時刻tにおける全ビデオサーバVSによりデバイスID=rのRAID装置RDから端末装置20に配信される各コンテンツID=cの配信ビットレ−トの和が最大配信ビットレ−トとなるコンテンツID=cを選択する。
Figure 0006287353
(S1−44)処理を図9に戻す。
(S1−45)式(18)が成立するか否かを判断する。式(18)が成立する場合にはS1−46に進み、不成立の場合にはS1−50に進む。
Figure 0006287353
ここで、Tは管理者が設定するRAID装置の配信数の差分の閾値を示す。
(S1−46)式(18)が成立する場合、コンテンツ配置制御部52は、「ΔgN(r,t):「gN(r,t):時刻tにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信数の和」と「gN(r,t−Δt):時刻t−Δtにおける全ビデオサーバVSにより各RAID装置RDから端末装置20に配信される全コンテンツについての配信数の和」との差分」が、「管理者が設定するRAID装置RDの配信ビットレ−トの差分の閾値T」以上であり、「最も差分ΔgN(r,t)が大きくなるRAID装置ID=r」を選択する。ここではデバイスID=rが選択されたとする。
(S1−47)コンテンツ配置制御部52は、式(14)により、時刻tにおける全ビデオサーバVSによりデバイスID=rのRAID装置RDから端末装置20に配信される各コンテンツID=cの配信数の和hN(r,c,t)を計算する。
(S1−48)式(18−1)によりコンテンツを選択する。コンテンツ配置制御部52は、時刻tにおける全ビデオサーバによりデバイスID=rのRAID装置から端末装置に配信される各コンテンツID=cの配信数の和が最大配信数となるコンテンツID=cを選択する。
Figure 0006287353
(S1−49)処理を図9に戻す。
(S1−50)式(17)、式(18)が成り立たず、かつ、選択方式リストが空であるかを判断する。式(17)、式(18)が成り立たず、かつ、選択方式リストが空でない場合、処理をS1−2へ戻す。
(S1−51)選択方式リストが空である場合、キャッシュ候補のコンテンツのコンテンツIDは「なし」として、図9に処理を戻す。
以上のように、図11〜図13の処理により、コンテンツ配置制御部52は、キャッシュ作成の候補を選択する。
図9に戻る。(S2)では、コンテンツ配置制御部52が、S1の処理のよりキャッシュ作成の候補があるか否かを判断する。キャッシュ作成の候補が無い場合、単にキャッシュを作成せずに処理を終了する(S3)。
(S4)コンテンツ配置制御部52は、キャッシュ作成先候補リストを作成する。
図14は、この実施形態に係るコンテンツ配置制御部52によるキャッシュ作成先候補リストの作成方法を示すフローチャートである。ここでは、S1で、キャッシュ作成の候補がコンテンツID=cのコンテンツとして説明する。
(S4−1)コンテンツ配置制御部52は、時刻tにおける各マシンID=mの全ビデオサーバVSにより各RAID装置RDから端末装置20に配信されるコンテンツID=cの配信数の和の配信数QN(m,c,t)を計算する。
Figure 0006287353
ここで、Vmは、マシンID=mのマシンで稼動するビデオサーバのIDの集合を示す。また、式(19)の右辺の関数「Σ」は、マシンID=mのマシンMで稼動する全てのビデオサーバVS、全てのRAID装置RDについての和であることを表す。
(S4−2)コンテンツ配置制御部52は、以下の条件((条件1−1)かつ(条件1−2))を満たすマシンを候補マシンリストに抽出する。
(条件1−1)CPU(v)<T …(20)
ここで、CPU(v)は、ビデオサーバID=vのビデオサーバのCPU使用率を示す。Tは、管理者が設定するビデオサーバのCPU使用率の上限値を示す。CPU(v)とTとは、ビデオサーバ負荷情報テ−ブルを参照して得られる。
(条件1−2)
Figure 0006287353
(S4−3)候補マシンリストが空であるか否かを判断し、空である場合にはS4−4に進み、空でない場合にはS4−6に進む。
(S4−4)候補マシンリストが空の場合、コンテンツ配置制御部52はキャッシュ作成先候補リストを空とする。
(S4−5)処理を図9に戻す。
(S4−6)コンテンツ配置制御部52は、候補マシンリストの各マシンに対して、以下の条件((条件2−1)かつ(条件2−2))を満たすキャッシュ記憶装置CDを候補デバイスリストに抽出する。
(条件2−1)
Figure 0006287353
ここで、Kは、全てのキャッシュ記憶装置CDのデバイスIDの集合を示す。C(k)は、デバイスID=kに格納された全コンテンツIDの集合を示す。
(条件2−2)
Figure 0006287353
ここで、Busy(k)は、デバイスID=kのキャッシュ記憶装置CDのI/Oビジー率を示す。T10は、管理者が設定するキャッシュ記憶装置CDのI/Oビジー率の上限値を示す。Busy(k)とT10とは、図6に示すデバイス負荷情報テ−ブルを参照して得られる。
すなわち、コンテンツ配置制御部52は、マシンID=mにおけるキャッシュ記憶装置CDにおいて、コンテンツID=cのコンテンツが格納されておらず、ビジー率が閾値未満のキャッシュ記憶装置CDを抽出する。
(S4−7)コンテンツ配置制御部52は、式(24)の組からなるキャッシュ作成先候補リストを作成する
Figure 0006287353
ここで、mは、候補マシンリストに含まれるマシンIDを示す。kは、候補デバイスリストに含まれるキャッシュ記憶装置CDのデバイスIDを示す。ただしkは、マシンID=mのマシンに存在するキャッシュ記憶装置CDを示す。
MCPU(m)は、マシンID=mで稼動するビデオサーバVSのCPU使用率の最大値を示し、次式で与えられる。
Figure 0006287353
Pri(k)は、デバイスID=kのキャッシュ記憶装置CDのデバイス優先度を示す。Pri(k)は、図6に示すデバイス負荷情報テ−ブルから得られる。
(S4−8)(S4−9)コンテンツ配置制御部52は、作成したキャッシュ作成先候補リストを、第1キ−、第2キ−、第3キ−でソートして、図9に戻る。
ソートの第1キ−=Q(m,c,t)の降順
ソートの第2キ−=MCPU(m)の昇順
ソートの第3キ−=Pri(k)の降順
図9に戻る。(S5)では、コンテンツ配置制御部52が、キャッシュ作成先リストが空であるか否かを判断し、空である場合には、キャッシュを作成せず処理を終了する(S6)。
(S7)コンテンツ配置制御部52は、キャッシュ作成先候補リストの先頭要素のマシンMとキャッシュ記憶装置CDとを取り出す。
すなわち、コンテンツID=cのコンテンツの配信数が、最多のマシンMが選ばれる。これにより、キャッシュ作成後の配信切り替えのとき、RAID装置RDの負荷低減効果が大きくなる。ここでは、マシンID=m、デバイスID=kが選ばれたとする。
(S8)コンテンツ配置制御部52は、デバイスID=kのキャッシュ記憶装置CDの残り容量が、コンテンツID=cのコンテンツのサイズ以上あるかチェックする。そして、デバイスID=kのキャッシュ記憶装置CDの残り容量がある場合S9に進む、残り容量がない場合S12に進む。
(S9)コンテンツ配置制御部52は、デバイスID=kのキャッシュ記憶装置CD上でコンテンツID=cのコンテンツのキャッシュを作成する。
図15は、実施形態に係るコンテンツ配置処理を説明する説明図である。図15は、マシンID=mのマシンにおけるキャッシュ記憶装置kにコンテンID=cをキャッシュする場合を例示している。また、図5に記載の[1]の数字は図9の「ステップS1」に対応している。
図15に示すように、コンテンツ配置制御部52は、マシンID=mのマシンにあるキャッシュ記憶装置管理サーバCSmにコンテンツID=cのコンテンツのキャッシュをデバイスID=kのキャッシュ記憶装置k上に作成するよう指示を与える。
キャッシュ記憶装置管理サーバCSmはRAID装置管理サーバ3と通信してコンテンツID=cのコンテンツデ−タを取得して、コンテンツ配置制御部52は、デバイスID=kのキャッシュ記憶装置CD上でコンテンツID=cのコンテンツのキャッシュを作成する。
(S10)(S11)対象コンテンツが既にRAID装置RDから配信されていれば、キャッシュ記憶装置CDからのコンテンツ配信に切り替えて、処理を終了する。
例えば、図15において、マシンID=mのマシンで稼動しているビデオサーバVSのうち、コンテンツID=cのコンテンツを既にRAID装置から配信しているものがあれば、デバイスID=kのキャッシュ記憶装置CDからコンテンツ配信へ切り替える。
そのために、コンテンツ配置制御部52は、マシンID=mのマシンで稼動している全てのビデオサーバVSへデバイスID=kのキャッシュ記憶装置CDからのコンテンツ配信へ切り替えるよう指示を与える。
(S12)デバイスID=kのキャッシュ記憶装置CDの残り容量が充分でない場合、コンテンツ配置制御部52はキャッシュ削除候補を選択する。
図16は、実施形態に係るキャッシュ削除候補の選択処理を示すフローチャートである。
(S12−1)キャッシュ作成先でマシンID=mのマシンのデバイスID=kのキャッシュ記憶装置CDの各コンテンツの配信ビットレ−トの和H(m,k,c,t)と、マシンのマシンID=mにおけるコンテンツID=cのコンテンツの配信ビットレ−トの和Q(m,c,t)を次式から計算する。
Figure 0006287353
ここで、H(m,k,c,t)は、時刻tにおけるマシンID=mのマシンで稼動するビデオサーバVSがデバイスID=kのキャッシュ記憶装置CDのデバイスから端末装置20に配信するコンテンツID=cのコンテンツの配信ビットレ−トの和を示す。
(m,c,t)は、時刻tにおけるマシンID=mのマシンで稼動する全てのビデオサーバVSによるコンテンツID=cのコンテンツのRAID装置RDから端末装置20への配信ビットレ−トの和を示す。
Br(v,k,c,t)は、時刻tにおけるサーバID=vのビデオサーバVSによりデバイスID=kのキャッシュ記憶装置CDから端末装置20に配信されるコンテンツID=cのコンテンツの配信ビットレ−トを示す。このBr(v,k,c,t)は、図8に示す配信情報テ−ブルから取得することができる。
(S12−2)ここで、後述するように削除候補の判定方法として2種類の方法があるため、コンテンツ配置制御部52は、管理者により決定された方法で削除候補を選択する。削除候補の判定方法は、式(28)に従う方法と、式(29)に従う方法とがあり、コンテンツ配置制御部52は、管理者に設定された式(28)又は式(29)が成立するか否かを判断する。
(削除候補判定方法1)
Figure 0006287353
ここで、T11は、管理者が設定する削除用配信ビットレ−ト閾値を示す。また、式(28)の「min」は、cを変化させたときに最小となる値を表す。
コンテンツ配置制御部52は、式(28)が成立するか否かを判断する。つまり、「H(m,k,c,t):時刻tにおけるマシンID=mのマシンで稼動するビデオサーバVSがキャッシュ記憶装置CDのデバイスID=kのデバイスから端末装置20に配信するコンテンツID=cのコンテンツの配信ビットレ−トの和」が、「管理者が設定する削除用配信ビットレ−ト閾値T11」以下であり、H(m,k,c,t)が最小となるコンテンツID=cを選択する。すなわち、配信ビットレ−トが最小でかつ閾値以下のコンテンツを削除する。
(削除判定方法2)
Figure 0006287353
ここでT12は、管理者が設定する削除用配信ビットレ−ト差の閾値を示す。
コンテンツ配置制御部52は、式(29)が成立するか否かを判断する。つまり、「Q(m,c,t)時刻tにおけるマシンID=mのマシンで稼動する全てのビデオサーバVSがRAID装置RDから端末装置20に配信するコンテンツID=cのコンテンツの配信ビットレ−トの和」と「H(m,k,c,t):時刻tにおけるマシンID=mのマシンで稼動するビデオサーバVSがキャッシュ記憶装置CDのデバイスID=kのデバイスから端末装置20に配信するコンテンツID=cのコンテンツの配信ビットレ−トの和であり、H(m,k,c,t)」が最小となるコンテンツID=cとの差」が、「管理者が設定する削除用配信ビットレ−ト差閾値:T12」以上であるコンテンツID=cを選択する。
式(29)第1項はマシン(マシンID=m)におけるキャッシュ対象コンテンツの配信ビットレ−トの和、第2項は同じマシンのキャッシュ対象デバイスの削除対象コンテンツの配信ビットレ−トの和を表す。すなわち、配信ビットレ−トが最小でかつキャッシュ対象との差が閾値以上のコンテンツを削除する。
(S12−3)式(28)又は式(29)が成立するときは、コンテンツ配置制御部52は、式(28)又は式(29)が成立するコンテンツID=cを削除対象のコンテンツIDとして選択する。
(S12−4)式(28)又は式(29)が成立しないとき、コンテンツ配置制御部52は、削除候補がないと判断し、図9に戻る。
図9に戻る。(S13)において、コンテンツ配置制御部52は、削除候補があるか否かを判断する。削除候補がある場合S14に進み、削除候補が無い場合、S5に戻り処理を繰り返す。
(S14)削除候補がある場合(ここでは、例えばコンテンツID=cが削除候補のコンテンツのIDとする。)、コンテンツ配置制御部52は、さらにその削除候補が配信中か否かを調べる。配信中でなければS17に進み、配信中であればS15に進む。
(S15)コンテンツ配置制御部52は、式(30)、式(31)が成立するRAID装置RDがあるか否かを判断する。
すなわち、マシンID=mのマシンで稼動しているビデオサーバVSのうち、コンテンツID=cのコンテンツを既にデバイスID=kのキャッシュ記憶装置CDから配信されていれば、コンテンツ配置制御部52はRAID装置RDからの配信へ切り替える。
つまり、コンテンツ配置制御部52は、削除候補が配信中のときRAID装置RDへ配信を切り替えるため、式(30)、式(31)が成り立つRAID装置RDがあるか否かを判断する。配信元を切り替えることで、RAID装置RDの負荷が高くなるため、コンテンツ配置制御部52は負荷増加に耐えられるRAID装置RDを探す。式(30)、式(31)を満たすRAID装置RDがなければS5に戻って処理を行い、他のキャッシュ作成先候補を検索する。
Figure 0006287353
ここで、T13は、管理者が設定するRAID装置のI/Oビジー率の上限値を示す。なお、Busy(r)とT13は、図6に示すデバイス負荷情報テ−ブルを参照して得られる。
式(30)、式(31)は、コンテンツID=cのコンテンツが格納されており、I/Oビジー率が閾値未満のRAID装置を選択することを意図している。
また、式(30)、式(31)が成り立つRAID装置RDが複数あれば、デバイス優先度が最も高いRAID装置を選択するようにする。例えば、ここでは、RAID装置RDのデバイスID=rが選択されたとする。
(S16)コンテンツ配置制御部52は、式(30)、式(31)が成立するRAID装置RDからの配信に切り替える。
これにより、例えば、図15に示すように、コンテンツ配置・配信制御サーバ5のコンテンツ配置制御部52は、マシンID=mのマシンで稼動している全てのビデオサーバへデバイスID=rのRAID装置RDからの配信へ切り替えるよう指示を与える。
(S17)コンテンツ配置制御部52は、当該マシンのキャッシュ記憶装置管理サーバCSに削除指示を与えて、キャッシュ記憶装置CDからキャッシュを削除する。
例えば、図15に示すように、コンテンツ配置制御部52は、マシンID=mのマシンのキャッシュ記憶装置管理サーバCSへコンテンツID=cのコンテンツを削除するように指示を与える。その後、S8に処理を戻して空き容量を再度チェックする。
(A−2−2)コンテンツ配信制御処理
次に、実施形態に係るコンテンツ配信制御処理を、図面を参照しながら詳細に説明する。
図17及び図18は、実施形態に係るコンテンツ配信制御処理を示すフローチャートである。
(S100)コンテンツ配信制御部53は、クライアントよりコンテンツ配信要求を受信する。ここではコンテンツID=cのコンテンツの配信要求を受信するものとする。
(S101)〜(S103)コンテンツ配信制御部53は、指定コンテンツが記憶装置(RAID装置RD)に存在するかを確認し、指定コンテンツがいずれの記憶装置にも存在しない場合は、端末装置に該当コンテンツなしのエラーを返して処理を終了する。
(S104)コンテンツ配信制御部53は、時刻tにおける各ビデオサーバから各端末装置に配信される全コンテンツの配信ビットレ−トの和S(v,t)と配信数の和S(v,t)を次式から計算する。
Figure 0006287353
ここで、Dは、全てのキャッシュ記憶装置CDとRAID装置RDのデバイスIDの集合を示す。すなわちD=R∪Kである。
(v,t)は、時刻tにおけるビデオサーバID=vのビデオサーバVSが配信するコンテンツの配信ビットレ−トの和を示す。
(v,t)は、時刻tにおけるビデオサーバID=vのビデオサーバVSが配信するコンテンツの配信数の和を示す。
Br(v,d、c、t)は、時刻tにおけるサーバID=vのビデオサーバVSによりデバイスID=dのデバイス(キャッシュ記憶装置CD又はRAID装置RD)から端末装置20に配信されるコンテンツID=cのコンテンツの配信ビットレ−トを示す。Br(v,d、c、t)は、図8に示す配信情報テ−ブルから得られる。
Num(v,d,c,t)は、時刻tにおけるサーバID=vのビデオサーバVSによりデバイスID=dのデバイス(キャッシュ記憶装置CD又はRAID装置RD)から端末装置20に配信されるコンテンツID=cのコンテンツの配信数を示す。Num(v,d,c,t)は、図8に示す配信情報テ−ブルから得られる。
式(32)及び式(33)の右辺の関数「Σ」は、全てのデバイス(RAID装置RDとキャッシュ記憶装置CD)と全てのコンテンツについての和であることを表す。
(S105)コンテンツ配信制御部53は、以下を満足するビデオサーバVSのIDを候補ビデオサーバリストVLに抽出する。
Figure 0006287353
ここで、式(34)〜式(36)を説明する。
14は、管理者が設定するビデオサーバVSのCPU使用率の上限値を示す。
15は、管理者が設定するビデオサーバVSの配信ビットレ−トの上限値を示す。
16は、管理者が設定するビデオサーバVSの配信数の上限値を示す。
Br(c)は、ビデオサーバVSから端末装置20に配信されるコンテンツID=cのコンテンツのビットレ−トを示す。Br(c)は、端末装置20から1つの配信要求に対するコンテンツを配信するビットレ−トである。
14、T15、T16は、コンテンツ配信制御部53が、図7に例示するビデオサーバ負荷情報テ−ブルを参照して得られる。
式(34)〜式(36)は、実際にコンテンツ配信を行うビデオサーバVSの状態をチェックするためのものである。
すなわち、コンテンツ配信制御部53は、ビデオサーバVSのCPU使用率が閾値以下であることと、そのビデオサーバVSを配信元に選んだときそのビデオサーバVSの配信数とビットレ−トが予め決定した上限値を超えないこと(そのため、式(36)では、現在の配信数にマ−ジンとして例えば「1」を加算し、配信ビットレ−トにコンテンツのビットレ−トを加算している)を条件にしたとき、コンテンツ配信制御部53は、上記式(34)〜式(36)を条件とし、これら条件を満たすビデオサーバVSを候補として選択し、その選択したビデオサーバのIDを候補ビデオサーバリストVLに設定する。
(S106)〜(S108)コンテンツ配信制御部53は、候補ビデオサーバリストVLが空か否かを判断し、該当するビデオサーバがなければ、クライアントへ配信不可のエラーを返して処理を終了する。
(S109)候補ビデオサーバリストVLが空でない場合、コンテンツ配信制御部53は、少なくとも1個のビデオサーバが候補ビデオサーバリストVLに含まれるマシンをマシンリストに抽出する。
(S110)コンテンツ配信制御部53は、マシンリストの各マシン(マシンID=m)のコンテンツID=cのコンテンツの配信数の和P(m,c,t)を式(37)から計算する。
Figure 0006287353
ここで、P(m,c,t)は、時刻tにおけるマシンID=m上の全てのビデオサーバVSが各端末装置20に配信するコンテンツID=cのコンテンツの配信数の和を示す。
式(37)の右辺の関数「Σ」は、マシンM上の全てのビデオサーバVSと全てのデバイス(RAID装置RDとキャッシュ記憶装置CD)についての和であることを表す。
(m,c,t)は、式(37)でコンテンツIDについてc=cと置き換えて計算する。
(S111)コンテンツ配信制御部53は、(m,P(m,c,t))の組からなる候補マシンリストMLを作成して、P(m,c,t)の降順にソートする。
(S112)コンテンツ配信制御部53は、各デバイス(RAID装置RDとキャッシュ記憶装置CD)の配信ビットレ−トの和g(d,t)と配信数の和g(d,t)とを式(9)と式(10)から計算する。ただし、d∈D=R∪Kとする。
(S113)コンテンツ配信制御部53は、以下を満足するデバイス(RAID装置RDとキャッシュ記憶装置CD)のデバイスIDを候補デバイスリストDLに抽出する。
Figure 0006287353
ここで、式(38)は、コンテンツID=cのコンテンツが格納されたデバイス(RAID装置RDまたはキャッシュ記憶装置CD)であることを示す。
式(39)は、I/Oビジー率が閾値未満のデバイス(RAID装置RDまたはキャッシュ記憶装置CD)であることを示す。
式(40)は、もしコンテンツID=cのコンテンツを追加で配信したとしても、現在の配信ビットレ−トとコンテンツID=cのコンテンツの配信ビットレ−トの合計が配信ビットレ−ト上限値以下であることを示す。
式(41)は、もしコンテンツID=cのコンテンツを追加で配信したとしても、現在の配信本数との合計が配信本数上限値以下であること。ただし、d∈D=R∪Kとする。
ここで、T17は、管理者が設定する各デバイス(RAID装置RDとキャッシュ記憶装置CD)のI/Oビジー率の上限値を示す。
18は、管理者が設定する各デバイス(RAID装置RDとキャッシュ記憶装置CD)の配信ビットレ−トの上限値を示す。
19は、管理者が設定する各デバイス(RAID装置RDとキャッシュ記憶装置CD)の配信数の上限値を示す。
17、T18、T19は、図6に示すデバイス負荷情報テ−ブルを参照して得られる。
すなわち、コンテンツID=cのコンテンツが格納され、ビジー率が閾値以下で、配信先に選んだとき、そのデバイスの配信数とビットレ−トが予め決められた上限値を超えないこと(そのために、式(41)では、現在の配信数にマ−ジンとして「1」を加算し、配信ビットレ−トにコンテンツのビットレ−トを加算している)を条件にしたとき、式(38)〜式(41)を条件としてこれらの条件を満たすデバイスを候補として選択する。
(S114)〜(S116)コンテンツ配信制御部53は、候補デバイスリストDLが空であるか否かを判断する。そして、候補デバイスリストDLが空の場合、コンテンツ配信制御部53は、端末装置20に配信不可エラーを返して処理を終了する。
(S117)コンテンツ配信制御部53は、ソート後、候補マシンリストMLの先頭にあるマシンを取り出す。
(S118)コンテンツ配信制御部53は、候補マシンリストMLから抽出したマシン(ここでは、例えばマシンID=mとする。)に属する各ビデオサーバ(ここでは、例えば、ビデオサーバID=v,v∈Vm)について、指定コンテンツの配信数の和p(v,c,t)を式(42)に従って計算する。
Figure 0006287353
ここで、p(v,c,t)は、時刻tにおけるビデオサーバID=vのビデオサーバVSが各端末装置20に配信するコンテンツID=cのコンテンツの配信数の和を示す。ここでは、p(v,c,t)は、式(42)でc=cと置き換えて計算する。
(S119)コンテンツ配信制御部53は、v(v∈Vm)、d(d∈DL)、p(v,c,t)、Pri(d)に基づいて、式(43)の組を構成し、配信候補リストを作成する。
Figure 0006287353
ここで、vはマシンID=m上のビデオサーバVSのビデオサーバIDを示す。ただしv∈Vである。
DはビデオサーバID=vのビデオサーバVSが参照できる各デバイス(RAID装置RDとキャッシュ記憶装置CD)のデバイスIDを示す。ただし、d∈Dである。
(v,c,t)は、時刻tにおけるビデオサーバID=vのビデオサーバVSが各端末装置20に配信するコンテンツID=cのコンテンツの配信数の和である。なお、p(v,c,t)は式(42)に従って計算することができる。
Pri(d)は、デバイスID=dのデバイスのデバイス優先度。デバイス負荷情報テ−ブルから得られる。
(S120)コンテンツ配信制御部53は、配信候補リストが空か否かを判断する。配信候補リストが空の場合S121に進み、そうでない場合S124に進む。
(S121)コンテンツ配信制御部53は、候補マシンリストMLが空か否かを判断する。そして、配信候補リストが空であり、かつ、候補マシンリストMLが空でない場合、S117に進み、処理を繰り返す。
(S122)、(S123)一方、配信候補リストが空であり、かつ、候補マシンリストMLも空である場合、コンテンツ配信制御部53は、端末装置20に配信不可エラーを返して処理を終了する。
(S124)コンテンツ配信制御部53は、配信候補リストを、ソートの第1キ−=p(v,c,t)の降順、ソートの第2キ−=Pri(d)の降順によりソートする。
(S125)コンテンツ配信制御部53は、S124のソート後の配信候補リストの先頭要素のビデオサーバIDとデバイスIDを取り出す。これらを配信元として選択する。
ここでは、ビデオサーバID=v,デバイスID=dが選ばれたとする(d∈D)。
コンテンツID=cのコンテンツの配信数が最大のデバイスが選ばれる。
選ばれたデバイスがRAID装置の場合、将来キャッシュ記憶装置にキャッシュを作ったとき、キャッシュからへの配信に切り替えることにより、多くの配信がキャッシュへ移行するためRAID装置の負荷軽減効果を最大化することができる。
また、選択されたデバイスがキャッシュ記憶装置の場合、同じキャッシュ記憶装置に配信が集中する。その結果、あまり使われないキャッシュ記憶装置の配信数はより小さくなるので削除がされやすくなる。キャッシュが削除されると、空いた容量を別のキャッシュの作成に利用できるので、容量の効率がよくなる。
図19は、この実施形態に係るコンテンツ配信の配信負荷を説明する説明図である。図19は、例えば、サーバがN台あり、コンテンツC1の総配信数をMとしている。図19において、C1の総配信数をMの場合を考えると、いずれかのサーバ、例えばサーバ1が集中的にC1を配信する。
図19に示すように、時刻t0でサーバ1にキャッシュが作成されると、RAID装置全体ではM本の負荷が軽減され、従来の図3と場合と比べて、負荷低減効果が大きい。
(S126)コンテンツ配信制御部53は、ビデオサーバID=vのビデオサーバVSに要求のあった端末装置に対してコンテンツcをデバイスID=dのデバイスから配信するよう要求指示する。コンテンツ配信制御部53は、ビデオサーバVSに配信先クライアントアドレス、ポ−ト番号なども通知する。
(A−2−3)キャッシュ作成候補選択処理の具体的な実施形態
[方式1]
まず、図11で説明した方式1のキャッシュ作成候補選択処理について具体的に説明する。
図20〜図23は、方式1のキャッシュ作成候補選択処理を説明する説明図である。
ここでは、マシンは、マシンM1及びM2の2台とし、M1にはビデオサーバVS1が稼働し、M2にはビデオサーバVS2が稼働しているものとする。
また、RAID装置はRAID装置R1及びR2の2台とする。キャッシュ記憶装置は、キャッシュ記憶装置D1、D2、D3、D4の4台とする。コンテンツは、コンテンツC1、C2、C3、C4の4つが存在するとする。
図20は、時刻t1における各RAID装置の状態を示す図であり、図21は、時刻t2におけるRAID装置の状態を示す図である。
時刻t1と時刻t2での各ビデオサーバVS1及びVS2の各RAID装置R1及びR2における各コンテンツの配信ビットレ−トを計算する(単位Mbps)。
図20及び図21は、図8に示す配信情報テ−ブルからRAID装置R1及びR2のデバイスの配信ビットレートのデータのみ抽出したものに相当する。また、閾値Tは200Mbpsとし、キャッシュはどれも作られていないとする。
例えば、図20では、コンテンツC1について、ビデオサーバVS1のRAID装置R1からコンテンツC1が「10(Mbps)」配信されており、ビデオサーバVS1のRAID装置R2からコンテンツC1が「60(Mbps)」配信されており、ビデオサーバVS2のRAID装置R1からコンテンツC1が「30(Mbps)」配信されており、ビデオサーバVS3のRAID装置R2からコンテンツC1が「40(Mbps)」配信されている等のように示している。他のコンテンツC2〜C4についても同様である。
なお、ここでは説明を簡単にするために、コンテンツの配信ビットレ−トについて例示して説明するが、配信ビットレ−トだけでなく、コンテンツの配信本数について注目しても同様に適用することができる。
方式1の場合、コンテンツ配置制御部52は、図22に示すように、時刻t1におけるRAID装置の配信状態に基づいて、各コンテンツごとの配信ビットレ−ト和fを計算する。
C1:fB(C1,t1)=10+60+30+40=140
C2:fB(C2,t1)=50+20+70+75=215
C3:fB(C3,t1)=1+6+3+4=14
C4:fB(C4,t1)=5+2+7+8=22
そうすると、上記の各コンテンツの配信ビットレ−ト和fより、コンテンツC2が最も配信ビットレ−トが高いことが分かる。このことは、コンテンツC2が最も端末装置20への配信が多く(すなわち、人気が高く)、かつ、閾値200Mbpsを超えている。そのため、方式1によれば、コンテンツ配置制御部52は、コンテンツC2をキャッシュ対象のコンテンツとして選択する。
[方式2]
図24は、方式2のキャッシュ作成候補選択処理を説明する説明図である。図24においても、ビデオサーバVS1、VS2及びRAID装置R1、R2の構成及び配信状態は方式1の場合と同様とする。
また、閾値Tは200Mbpsとして、キャッシュはどれも作られていないものとする。ここでも、配信ビットレ−トのみを説明するが、配信本数に注目しても適用することができる。
図24(A)は時刻t1における配信状態であり、図24(B)は時刻t2における配信状態を示す。
コンテンツ配置制御部52は、時刻t2において、それぞれのコンテンツについて、各ビデオサーバVS1及びVS2の各RAID装置R1及びR2の時刻2における配信状態と時刻t1における配信状態との差分を計算する。
図24(C)は、時刻t2と時刻t1との差分結果を示している。コンテンツ配置制御部52は、各コンテンツ毎、各デバイス(ここでは、RAID装置を意図する。)毎に、時刻t2における差分Δfを計算する。
次に、以下のようにコンテンツごとの差分の和を計算する。
C1:ΔfB(C1,t2)=(9−10)+(61−60)+(29−30)+(39−40)=−2
C2:ΔfB(C2,t2)=(51−50)+(21−20)+(71−70)+(76−75)=4
C3:ΔfB(C3,t2)=(61−1)+(16−6)+(73−3)+(54−4)=190
C4:ΔfB(C4,t2)=(25−5)+(52−2)+(97−7)+(48−8)=200
そうすると、図24(D)に示すように、各コンテンツ毎、各デバイス毎の時刻t2における差分Δfより、コンテンツC2が(t2−t1)時間で、最も配信ビットレ−トが上昇したことがわかる。このことは、(t2−t1)時間の中で、コンテンツC2が最も端末装置20への配信が上昇し(すなわち、人気が高く)、かつ、閾値200Mbpsを超えている。そのため、方式2によれば、コンテンツ配置制御部52は、コンテンツC2をキャッシュ対象のコンテンツとして選択する。
[方式3]
図24は、方式3のキャッシュ作成候補選択処理を説明する説明図である。図24においても、ビデオサーバVS1、VS2及びRAID装置R1、R2の構成及び配信状態は方式1の場合と同様とする。
また、閾値Tは200Mbpsとし、キャッシュはどれも作られていないとする。ここでも、配信ビットレ−トのみを説明するが、配信本数に注目しても適用することができる。
まず、コンテンツ配置制御部52は、図24(A)に示すように、RAID装置R1、R2毎に配信ビットレ−ト和gを計算する。
R1:gB(R1,t1)=10+50+1+5+30+70+3+7=176
R2:gB(R1,t1)=60+20+6+2+40+75+4+8=215
そうすると、RAID装置R2に人気コンテンツが集中しており、かつ、閾値200Mbpsを超えているので、コンテンツ配置制御部52はRAID装置R2をキャッシュの対象のデバイスとして選択する。
次に、コンテンツ配置制御部52は、図24(B)に示すように、RAID装置R2が配信している各コンテンツについて、各コンテンツ毎の配信ビットレ−トhを計算する。
C1:hB(R2,C1,t1)=60+40=100
C2:hB(R2,C2,t1)=20+75=95
C3:hB(R2,C3,t1)=6+4=10
C4:hB(R2,C4,t1)=2+8=10
そうすると、キャッシュ対象のデバイスであるRAID装置R2が配信しているコンテンツの中で、コンテンツC1の配信ビットレ−トが最も高いため、コンテンツ配置制御部52は、コンテンツC1をキャッシュすればRAID装置R2の負荷を最大限低減できる。
したがって、コンテンツ配置制御部52は、配信ビットレ−トが最大のコンテンツC1をキャッシュの対象のコンテンツとして選択する。
[方式4]
図25は、方式4のキャッシュ作成候補選択処理を説明する説明図である。図25においても、ビデオサーバVS1、VS2及びRAID装置R1、R2の構成及び配信状態は方式1の場合と同様とする。
また、閾値Tは200Mbpsとし、キャッシュはどれも作られていないとする。ここでも、配信ビットレ−トのみを説明するが、配信本数に注目しても適用することができる。
コンテンツ配置制御部52は、時刻t2において、各コンテンツ毎、各デバイス(ここでは、RAID装置を意図する。)毎に、時刻t2における差分Δfを計算する。図25(A)は、図23(C)に相当するものである。
次に、コンテンツ配置制御部52は、図25(B)に示すように、時刻t2において、各コンテンツ毎、各RAID装置R1及びR2毎の時刻t1との差分Δgを計算する。
R1:ΔgB(R1,t2)=
(9−10)+(51−50)+(61−1)+(25−5)+(29−30)+(71−70)+(73−3)+(97−7)=240
R2:ΔgB(R2,t2)=
(61−60)+(21−20)+(16−6)+(52−2)+(39−40)+(76−75)+(54−4)+(48−8)=152
これにより、コンテンツ配置制御部52は、閾値200Mbpsを超えたRAID装置R1をキャッシュの対象のデバイスとして選択する。つまり、コンテンツ配置制御部52は、RAID装置R1のコンテンツが全体として急速に人気を上昇させており、かつ閾値200Mbpsを超えているため、RAID装置R1をキャッシュの対象のデバイスとして選択する。
次に、コンテンツ配置制御部52は、時刻t2においてRAID装置R1が配信している各コンテンツの配信ビットレ−トhを計算する。
C1:hN(R1,C1,t2)=9+29=38
C2:hN(R1,C2,t2)=51+71=122
C3:hN(R1,C3,t2)=61+73=134
C4:hN(R1,C4,t2)=25+97=122
そうすると、RAID装置R1の中ではコンテンツC3の配信ビットレ−トが最も高いので、コンテンツC3をキャッシュすれば、RAID装置R1の負荷を最大限低減できる。
したがって、コンテンツ配置制御部52は、配信ビットレ−トが最大のコンテンツC3をキャッシュの対象のコンテンツとして選択する。
[方式1〜方式4の比較]
キャッシュ作成候補の選択方法として、方式1〜方式4の4方式を例示した。ここで、各方式について比較する。
図26は、キャッシュ作成候補選択方式の比較を説明する説明図である。ここでは、ビデオサーバはビデオサーバVS1及びVS2の2台であり、RAID装置はRAID装置R1の1台のみとする。コンテンツは、コンテンツC1〜C10の10個が存在するものとする。また、キャッシュはどれも作られていないとする。ここでは、配信ビットレ−トだけを考えるが、配信本数の場合も同様である。
方式1の閾値T=20000(Mbps)、方式3の閾値T=30000(Mbps)とする。
(1)突出して人気の高いコンテンツがある場合
各ビデオサーバVS1、VS2のRAID装置R1における各コンテンツの配信ビットレ−トは、以下のものとする(図26参照、単位Mbps)。
C1:25000
C2:30
C3:30
C4:30
C5:30
C6:30
C7:30
C8:30
C9:30
C10:30
従って、RAID装置R1全体の配信ビットレ−トは25270Mbpsとなる。
図26に示すように、コンテンツC1は突出して配信ビットレ−トが高いので、コンテンツC1をキャッシュすることに意味があることがわかる。
実際、コンテンツC1の配信ビットレ−トはT1を超えるため、コンテンツ配置制御部52は、方式1及び方式3によれば、コンテンツC1をキャッシュ作成候補として選択する。
また、方式2は、所定時間(例えば、(t2−t1)時間)において、急速にアクセス数が上昇したコンテンツがある場合に、そのコンテンツを伸ばしたコンテンツをキャッシュ作成候補として選択する。
(2)中程度の人気コンテンツが多くある場合
図27は、キャッシュ作成候補選択方式の比較を説明する説明図である。ここでは、ビデオサーバはビデオサーバVS1及びVS2の2台であり、RAID装置はRAID装置R1の1台のみとする。コンテンツは、コンテンツC1〜C10の10個が存在するものとする。また、キャッシュはどれも作られていないとする。ここでは、配信ビットレ−トだけを考えるが、配信本数の場合も同様である。
各ビデオサーバVS1、VS2のRAID装置R1における各コンテンツの配信ビットレ−トは以下のようになる(図27参照、単位Mbps)。
C1:4000
C2:3400
C3:3000
C4:3000
C5:2600
C6:2600
C7:2600
C8:3400
C9:2200
C10:3700
従って、RAID装置R1全体の配信ビットレ−トでは30200Mbpsとなる。
このように、上述した(1)の例におけるコンテンツC1ほど突出した人気のコンテンツはなくても、どのコンテンツもそれなりに人気が高く、RAID装置R1全体では上述した(1)より負荷が高く、RAID装置R1の負荷を下げる必要がある。
このような例は、例えばシリーズもののコンテンツを同じデバイス(ここではRAID装置)に投入した場合に発生することがある(例えば、コンテンツC1が連続ドラマの第1話、コンテンツC2が同第2話等の場合に発生し得る)。
この中でコンテンツC1をキャッシュすれば、RAID装置R1の負荷を低減できる。
実際、コンテンツ配置制御部52は、方式1ではどのコンテンツもTより小さいので検出はできない。しかし、コンテンツ配置制御部52は、方式3によれば、RAID装置R1全体の配信ビットレ−トがTを超えるため、キャッシュを作成することができる。
また、コンテンツ配置制御部52は、方式4によればRAID装置R1全体で急速にアクセス数を伸ばした複数の人気コンテンツがある場合に検出できる。
(A−2−4)キャッシュ作成先候補選択処理の具体的な実施形態
ここでは、方式1のキャッシュ作成候補選択処理により、コンテンツC2を、キャッシュ対象のコンテンツとして選択した場合を例示する。なお、キャッシュ作成候補選択処理は、他の方式で選択した場合でも同様である。
図28は、実施形態に係るキャッシュ作成先候補選択処理を説明する説明図である。図28は、時刻t1における配信本数状態(単位は[本])を示している。
図28は、マシンM1上でビデオサーバVS1が稼働しており、マシンM2上でビデオサーバVS2が稼働しているものとする。RAID装置は、RAID装置R1及びR2の2台としており、コンテンツは、コンテンツC1、C2、C3、C4の4個とする。
図29は、マシンM1及びM2におけるキャッシュ記憶装置の優先度及びビジー率を示すキャッシュ作成先候補選択処理を説明する説明図である。
図29では、マシンM1にキャッシュ記憶装置D1及びD2が存在しており、マシンM2にキャッシュ記憶装置D3、D4及びD5が存在しているものとする。
また、図29において、「Pri」は、キャッシュ記憶装置CDを選択する優先度を例示しており、「Pri」の値が大きい方が優先度は高いとする。なお、「Pri」の値は、「1」〜「5」とする場合を例示しているが、Priの値の範囲は特に限定されるものではない。また、「Busy(%)」は、キャッシュ記憶装置のビジー率の上限値を示す。図29の「Pri」及び「Busy」の値は、図6の負荷情報テ−ブルに格納される値から取得することができる。
図28及び図29では、ビデオサーバV1のCPU使用率が「50%」、ビデオサーバVS2のCPU使用率が「60%」であると仮定する。また、閾値Tは「T=80」、閾値T10は「T10=70」と仮定する。
まず、コンテンツ配置制御部52は、時刻t1において、以下のようにマシンごとのコンテンツC2の配信本数の和Qを計算する。
M1:QN(M1,C2,t1)=10+4=14
M2:QN(M2,C2,t1)=14+15=29
ビデオサーバVS1とVS2のCPU使用率は、いずれも閾値Tより小さい。また、ビデオサーバVS1とVS2のコンテンツC2の配信本数の和Q(M1、C2、t1)、QN(M2、C2、t1)はいずれも「1(本)」以上であるため、マシンM1、マシンM2のいずれも候補マシンとなる。
また、コンテンツC2は、どのキャッシュ記憶装置にも存在しないため、キャッシュ記憶装置D1〜D5も、式(22)は成立する。
ビジー率については、Busy(D1)=Busy(D2)=Busy(D4)=60<T10,Busy(D5)=30<T10である。しかし、Busy(D3)=80>T10なので、キャッシュ記憶装置D3のみ候補デバイスに含まれない。
その結果、コンテンツ配置制御部52は、キャッシュ記憶装置D1、D2、D4、D5のキャッシュ作成先候補リストとして、((M1,D1,14,50,5), (M1,D2,14,50,4), (M2,D4,29,60,4), (M2,D5,29,60,3))を作成する。
コンテンツ配置制御部52は、キャッシュ作成先候補リストをソートして、以下の先頭要素であるマシンM2のキャッシュ記憶装置D4をキャッシュ作成先候補として選択する。
((M2,D4,29,60,4),(M2,D5,29,60,3),(M1,D1,14,50,5),(M1,D2,14,50,4))
(A−2−5)キャッシュ削除処理の具体的な実施形態
図30は、時刻t1における各ビデオサーバVS1、VS2の各RAID装置R1及びR2とキャッシュ記憶装置D1〜D5における各コンテンツの配信ビットレ−トの状態を説明する説明図である(単位Mbps)。
ここでは、コンテンツC2、C5、C6、C7のコンテンツのサイズはそれぞれ6GB、4GB、3GB、3GBとし、キャッシュ記憶装置D4の容量は10GBとする。また閾値T11はT11=30とし、閾値T12は、T12=120とする。
まず、コンテンツC2のキャッシュをキャッシュ記憶装置D4に作成する場合を例示する。ここで、キャッシュ記憶装置D4には、図30に示すように、既にコンテンツC5、C6、C7が格納されており、これらコンテンツのサイズ合計が10GBであり、キャッシュ記憶装置D4に空き容量がないとする。
そのため、コンテンツ配置制御部52は、キャッシュ記憶装置D4からコンテンツC5、C6、C7のいずれかを削除することを判断する。
コンテンツ配置制御部52は、キャッシュ記憶装置D4における各コンテンツの配信ビットレ−トの和Hを計算する。
C5:HB(M2,D4,C5,t1)=20
C6:HB(M2,D4,C6,t1)=30
C7:HB(M2,D4,C7,t1)=40
次に、コンテンツ配置制御部52は、キャッシュ記憶装置D4にコンテンツC2をキャッシュするための容量を確保するため、コンテンツ2の配信ビットレ−トの和Qを求める。このとき、図30の例の場合、ビデオサーバVS2は、RAID装置R1及びR2に格納されているコンテンツC2を配信している。従って、コンテンツ配置制御部52は、コンテンツC2の配信ビットレ−トの和Qを計算し、Q(M2,C2,t1)=70+75=145である。
そのため、コンテンツ配置制御部52は、各コンテンツの配信ビットレ−トの和Hのうち、最小値minHのコンテンツを選択する。すなわち、minH=20となり、対応するコンテンツはコンテンツC5となる。
ここで、コンテンツ配置制御部52は、削除判定方法(1)又は(2)の条件を満たすコンテンツを削除する。
例えば、削除判定方法(1)では、minH≦T11であり条件を満たすので、コンテンツC5を削除する。
また例えば、削除判定方法(2)でも、Q−minH=145−20=125>T12であり、条件を満たすのでコンテンツC5を削除する。
しかし、コンテンツC5のサイズは4GBなので、キャッシュ記憶装置D4の空き容量は4GBとなり、依然コンテンツC2をキャッシュ記憶装置D4にキャッシュするための空き容量が不足であり、この状態ではコンテンツC2のキャッシュを作成することができない。
そこで、コンテンツ配置制御部52は、再び各コンテンツのHを参照して、各コンテンツの配信ビットレ−トの和Hのうち、最小値minHのコンテンツを選択する。この場合、minH=30に対応するコンテンツC6を選択する。
また、上記と同様に、コンテンツ配置制御部52は、削除判定方法(1)又は(2)の条件を満たすコンテンツを削除する。
例えば、削除判定方法(1)では、minH≦T11であり条件を満たすので、コンテンツC6を削除する。ここで、コンテンツC6のサイズは3GBなので、キャッシュ記憶装置D4の空き容量は7GBとなり、コンテンツC2のキャッシュを作成することができる。
また例えば、削除判定方法(2)では、Q−minH=145−30=115>T12であり、条件を満たしておらず、コンテンツC6を削除しない。
この場合、キャッシュ記憶装置D4にキャッシュを作成するのは中止し、キャッシュ作成先候補リストの次の要素であるキャッシュ記憶装置D5に対して同様の処理を行なうことになる。
削除判定方法(1)により、キャッシュ記憶装置D4のコンテンツC5、C6を削除するときはC5,C6∈C(R1),Pri(R1)>Pri(R2)が成り立つとすると、削除前にRAID装置R1からの配信に切り替える。
さらに、コンテンツC2のキャッシュをキャッシュ記憶装置D4に作成した後、配信の切り替わりが発生する。
この結果、配信ビットレ−トの状態は、図31のようになる。図30と図31とを比較すると、図31に示すように、ビデオサーバVS2において、RAID装置R1とRAID装置R2の配信ビットレ−トが小さくなり、負荷が減少していることがわかる。
(A−2−6)キャッシュ作成と削除のパタ−ン例の説明
図32は、削除判定方法(1)の場合のキャッシュ作成と削除のタイミングを説明する説明図である。図33は、削除判定方法(2)の場合のキャッシュ作成と削除のタイミングを説明する説明図である。
ここでは、コンテンツは、コンテンツC1とC2の2個だけとする。キャッシュ記憶装置にはいずれか1個のコンテンツの容量しかない状態とする。
図32に示すように、削除判定方法(1)を採用した場合、閾値T11=10、すなわち配信ビットレ−トの和が10Mbps以下のコンテンツのみを削除の対象とする。
そうすると、図2に示すように従来技術による場合は、コンテンツのキャッシュ作成と削除とが頻繁に行われていたが、図32に示すように、この実施形態の削除判定方法(1)によれば、キャッシュ作成及び削除の回数は減り、ある程度の配信数があるコンテンツについては削除されない。
図33に示すように、削除判定方法(2)を採用した場合、閾値T12=140、すなわちキャッシュ作成対象コンテンツと削除対象コンテンツの配信ビットレ−トの差が140Mbps以上のコンテンツのみ削除の対象とする。
そうすると、図2に示すように従来技術による場合と比較すると、図33に示すように、この実施形態の削除判定方法(2)によれば、キャッシュ作成対象コンテンツとの配信ビットレ−トの差があまりないときは削除しない。その結果、キャッシュの作成及び削除の回数が減る。
上記のように、削除判定方法(1)は、キャッシュ作成時に容量が不足したときだけ行なうことになる。一方、削除判定方法(2)は、削除対象の配信ビットレ−トが十分多いか、キャッシュ作成対象との配信ビットレ−トの差があまりないときは削除しない。
そのため、従来技術より配信数が拮抗したコンテンツ間の頻繁なキャッシュ作成と削除は抑制される。
(A−2−7)配信制御処理の具体的な実施形態
図34は、実施形態に係る配信制御処理を説明する説明図である。
ここでは、マシンはマシンM1、M2、M3の3台である。マシンM1には、ビデオサーバVS1、VS2、VS3が稼働しているものとする。マシンM1は、キャッシュ記憶装置D1、D2、D3が搭載されているものとする。
マシンM2には、ビデオサーバVS4が稼働しており、キャッシュ記憶装置D4が搭載されているものとする。マシンM3にはビデオサーバVS5が稼動し、キャッシュ記憶装置D5が搭載されているものとする。
RAID装置R1は全てのマシンM1〜M3で共有するとする。
コンテンツはコンテンツC1、C2の2つが各デバイス(ここでは、RAID装置、キャッシュ記憶装置)に存在しているものとする。また、Br(C1)=8(Mbps)とし、Br(C2)=10(Mbps)とする。
図35は、時刻t1における各コンテンツ、各デバイスでの配信ビットレ−トの状態を示す図である。図36は、時刻t1における各コンテンツ、各デバイスでの配信本数の状態を示す図である。
図37は、各ビデオサーバのCPU使用率、T14(CPU使用率の上限値)、T15(配信ビットレ−トの上限値)、T16(配信本数の上限値)を示す図である。
図38は、各デバイスのPri、Busy(ビジー率)、T17(ビジー率の上限値)、T18(配信ビットレ−トの上限値)、T19(配信本数の上限値)を示す図である。
図35〜図36における値はそれぞれ、図8に示す配信情報テ−ブルからそれぞれ配信ビットレ−トと配信本数を抽出したものに相当する。
図34に示すように、ある端末装置20からコンテンツC2の配信要求を受信する(図34のS501)。以下、コンテンツ配信制御部53の処理手順を説明する。
(1)コンテンツ配信制御部53は、時刻t1の各ビデオサーバの配信ビットレ−トの和Sと配信数の和Sを計算する(図39参照)。
VS1:sB(VS1,t1)=80+0+8+8+0+500+20+10=626
VS1:sN(VS1,t1)=10+0+1+1+0+50+2+1=65
VS2:sB(VS2,t1)=80+8+8+8+0+10+500+10=624
VS2:sN(VS2,t1)=10+1+1+1+0+1+50+1=65
VS3:sB(VS3,t1)=80+8+8+8+100+10+10+10=234
VS3:sN(VS3,t1)=10+1+1+1+10+1+1+1=26
VS4:sB(VS4,t1)=80+0+100+0=180
VS4:sN(VS4,t1)=100+10+0 =20
VS5:sB(VS5,t1)=0+800+400+0=1200
VS5:sN(VS5,t1)=0+100+40+0=140
(2)次に、コンテンツ配信制御部53は、式(34)〜式(36)の条件をチェックする。この場合、いずれのビデオサーバも式(34)を満たしていることがわかる。
式(35)、式(36)については、以下のように、VS1〜VS4を満足する。
VS1:sB(VS1,t1)+Br(C2)=626+10=636<T15=1200
VS1:sN(VS1,t1)+1=65+1=66<T16=200
VS2:sB(VS2,t1)+Br(C2)=624+10=634<T15=1200
VS2:sN(VS2,t1)+1=65+1=66<T16=200
VS3:sB(VS3,t1)+Br(C2)=234+10=244<T15=1200
VS3:sN(VS3,t1)+1=26+1=27<T16=200
VS4:sB(VS4,t1)+Br(C2)=180+10=190<T15=1200
VS4:sN(VS4,t1)+1=20+1=21<T16=200
しかし、VS5については、以下の通り満足しない。
VS5:sB(VS5,t1)+Br(C2)=1200+10=1210>T15=1200
つまり、VS5のSは配信ビットレ−トの上限値を超過するので、対応するマシンのM3は候補からはずれる。そのため、候補マシンリストは(M1,M2)となる(マシンM3にはVS5しかないことに注意)。
(3)コンテンツ配信制御部53は、図36を参照して、各マシンのコンテンツC2の配信数の和Pを計算する(図40参照)。
M1:PN(M1,C2,t1)=0+50+2+1+0+1+50+1+10+1+1+1=118
M2:PN(M2,C2,t1)=10+0=10
候補マシンリストは((M1,118),(M2,10))となり、コンテンツ配信制御部53はPの降順にソートすると、((M1,118),(M2,10))となる。
(4)コンテンツ配信制御部53は、各デバイスの配信ビットレ−トの和gと配信数の和gを計算する(図41参照)。キャッシュD5については候補マシンリストに含まれないマシンに対応するので計算する必要はない。
R1:gB(R1,t1)=80+0+80+0+80+100+80+100+0+400=920
R2:gN(R1,t1)=10+0+10+0+10+10+10+10+0+40=100
D1:gB(D1,t1)=0+500+8+10+8+10=536
D1:gN(D1,t1)=0+50+1+1+1+1=54
D2:gB(D2,t1)=8+20+8+500+8+10=554
D2:gN(D2,t1)=1+2+1+50+1+1=56
D3:gB(D3,t1)=8+10+8+10+8+10=54
D3:gN(D3,t1)=1+1+1+1+1+1=6
D4:gB(D4,t1)=0,gN(D4,t1)=0
(5)コンテンツ配信制御部53は、式(38)〜式(41)の条件をチェックする。式(38)については、ここでの前提条件なので満足している。
図38において、「Busy」と「T17」とを比較すると、R1,D1,D2,D3,D4はいずれも式(39)を満たしていることがわかる。
式(40)、式(41)については、以下の通り満足する。
R1:gB(R1,t1)+Br(C2)=920+10=930<T18=10000
R1:gN(R1,t1)+1=100+1=101<T19=1500
D1:gB(D1,t1)+Br(C2)=536+10=546<T18=1000
D1:gN(D1,t1)+1=54+1=55<T19=150
D2:gB(D2,t1)+Br(C2)=554+10=564<T18=1000
D2:gN(D2,t1)+1=56+1=57<T19=150
D3:gB(D3,t1)+Br(C2)=54+10=64<T18=1000
D3:gN(D3,t1)+1=6+1=7<T19=150
D4:gB(D4,t1)+Br(C2)=0+10=10<T18=1000
D4:gN(D4,t1)+1=0+1=1<T19=150
従って、候補デバイスリストは(R1,D1,D2,D3,D4)となる。
(6)候補マシンリストの先頭はM1なのでマシンM1に属する各ビデオサーバVS1のコンテンツC2の配信数の和p(v,C,t)を計算する(図42参照)。
VS1:pN(VS1,C2,t1)=0+50+2+1=53
VS2:pN(VS2,C2,t1)=0+1+50+1=52
VS3:pN(VS3,C2,t1)=10+1+1+1=13
(7)コンテンツ配信制御部53は、配信候補リスト(v,d, p,Pri(d))を以下のように作成する。
((VS1,R1,53,1),(VS1,D1,53,30),(VS1,D2,53,20),(VS1,D3,53,10),(VS2,R1,52,1),(VS2,D1,52,30),(VS2,D2,52,20),(VS2,D3,52,10),(VS3,R1,13,1),(VS3,D1,13,30),(VS3,D2,13,20),(VS3,D3,13,10))
コンテンツ配信制御部53は、上記配信候補リストをpNの降順、Pri(d)の降順にソートすると、以下のようになる。
((VS1,D1,53,30),(VS1,D2,53,20),(VS1,D3,53,10),(VS1,R1,53,1),(VS2,D1,52,30),(VS2,D2,52,20),(VS2,D3,52,10),(VS2,R1,52,1),(VS3,D1,13,30),(VS3,D2,13,20),(VS3,D3,13,10),(VS3,R1,13,1))
この結果、コンテンツ配信制御部53は、配信元ビデオサーバとしてVS1、配信元記憶装置としてD1を選択する。
コンテンツ配信・配信制御サーバ5はビデオサーバVS1にコンテンツC2をキャッシュ記憶装置D1から読み込んで端末装置に配信するよう指示する(図34のS502)。
ビデオサーバVS1は、キャッシュ記憶装置D1からコンテンツC2のデ−タを読みこみ(図34のS503)、端末装置20に配信する(図34のS504)。
(A−3)実施形態の効果
以上のように、この実施形態によれば、以下の効果を奏する。
第1にRAID装置などの大容量、低速アクセスの記憶装置とメモリなどの小容量、高速アクセスの記憶装置という両者の特長を組み合わせ、サーバごとコンテンツごとデバイスごとに配信負荷を定期的に観測することにより(1)配信負荷の高いコンテンツを検出したとき、または(2)配信負荷増分の高いコンテンツを検出したときまたは(3)配信負荷の高いRAID装置を検出したとき、または(4)配信負荷増分の高いRAID装置を検出したときにキャッシュを作成する、しかもキャッシュ効果の高い記憶装置にキャッシュを作成することでRAID装置の負荷を下げ、全体の配信数を向上することができる。
第2に削除は(1)キャッシュ作成時に容量が不足したときだけ行ないかつ、(2)配信数が一定以上程度あるコンテンツ、またはキャッシュ作成対象コンテンツと削除対象コンテンツの配信ビットレ−トの差が一定以下のコンテンツは削除しないので、従来技術と比べ配信数が拮抗したコンテンツ間の頻繁なキャッシュ作成と削除を抑制することができ、それにより負荷と時間を要するキャッシュ作成と削除の間の配信性能低下を回避できる。
第3にクライアントから配信要求を受信したときは、同時アクセス数が最大のサーバから配信するよう制御するので、キャッシュ作成時、RAID装置の負荷軽減効果が最大化される。
(B)他の実施形態
上述した実施形態において、キャッシュ作成候補の選択、キャッシュ作成先候補の選択、キャッシュ削除候補の選択処理について、各デバイス(RAID装置)からのコンテンツの配信ビットレートに基づいて算出する場合を例示した。しかし、コンテンツの配信ビットレートに限定されるものではなく、各デバイスが配信しているコンテンツの配信数に基づいても同様に算出するようにしても良い。
100…コンテンツ配信システム、10…ビデオオンデマンドシステム、R1〜RL…RAID装置、3…RAID装置管理サーバ、M1〜MN…マシン、VS1〜VS6…ビデオサーバ、CS1〜CSN…キャッシュ記憶装置管理サーバ、CD1〜CD6…キャッシュ記憶装置、5…コンテンツ配信・配置制御サーバ、51…配信情報管理部、52…コンテンツ配置制御部、53…コンテンツ配信制御部、54…通信部、511…デバイス負荷テーブル、512…ビデオサーバ負荷情報テーブル、513…サーバごとコンテンツごとデバイスごと配信情報テーブル、514…マシン情報テーブル、20…端末装置。

Claims (5)

  1. 1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、上記大容量記憶手段又は上記キャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信装置において、
    少なくとも、1又は複数の記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理する配信情報管理手段と、
    上記大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、上記キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、上記キャッシュ対象コンテンツを上記キャッシュ記憶手段にキャッシュし、上記第2の配信情報に係る上記1又は複数のコンテンツを上記キャッシュ記憶手段から削除するコンテンツ配置制御手段とを備え、
    上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、
    上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものである
    ことを特徴とするコンテンツ配信装置。
  2. 上記大容量記憶手段又は上記キャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信手段と、
    少なくとも、上記コンテンツ配信手段の負荷の状況を示すコンテンツ配信手段負荷情報、又は、上記キャッシュ記憶手段及び上記大容量記憶手段を含む各デバイスの負荷の状況を示すデバイス負荷情報の一方の情報を保持する情報保持手段とをさらに備え、
    上記配信情報管理手段は、上記情報保持手段が保持した情報に基づいて、上記第1の配信情報及び上記第2の配信情報を保持して管理することを特徴とする請求項1に記載のコンテンツ配信装置。
  3. 上記コンテンツ配置制御手段は、上記第2の配信情報において、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レートが最小でかつ所定の閾値以下のコンテンツを、上記キャッシュ記憶手段から削除することを特徴とする請求項1又は2に記載のコンテンツ配信装置。
  4. 1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、上記大容量記憶手段又は上記キャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信方法において、
    配信情報管理手段が、少なくとも、1又は複数の記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理し、
    コンテンツ配置制御手段が、上記大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、上記キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、上記キャッシュ対象コンテンツを上記キャッシュ記憶手段にキャッシュし、上記第2の配信情報に係る上記1又は複数のコンテンツを上記キャッシュ記憶手段から削除し、
    上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、
    上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものである
    ことを特徴とするコンテンツ配信方法。
  5. 1又は複数の大容量記憶手段と、キャッシュ記憶手段とを備え、上記大容量記憶手段又は上記キャッシュ記憶手段から、配信要求されたコンテンツを読み出して配信要求元に配信するコンテンツ配信プログラムにおいて、
    コンピュータを、
    少なくとも、1又は複数の記大容量記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第1の配信情報と、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信情報量を示す第2の配信情報とを管理する配信情報管理手段、
    上記大容量記憶手段に記憶されるコンテンツのうちキャッシュ対象コンテンツの第1の配信情報と、上記キャッシュ記憶手段における1又は複数のコンテンツの第2の配信情報との比較結果が所定の情報量以上となる場合に、上記キャッシュ対象コンテンツを上記キャッシュ記憶手段にキャッシュし、上記第2の配信情報に係る上記1又は複数のコンテンツを上記キャッシュ記憶手段から削除するコンテンツ配置制御手段として機能させ、
    上記第1の配信情報が、上記大容量記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものであり、
    上記第2の配信情報が、上記キャッシュ記憶手段から読み出されて配信されるコンテンツの配信レート、所定時間における配信数の増分、又は、所定時間における配信レートの増分を含むものである
    ことを特徴とするコンテンツ配信プログラム。
JP2014042025A 2014-03-04 2014-03-04 コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム Active JP6287353B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014042025A JP6287353B2 (ja) 2014-03-04 2014-03-04 コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014042025A JP6287353B2 (ja) 2014-03-04 2014-03-04 コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム

Publications (2)

Publication Number Publication Date
JP2015170866A JP2015170866A (ja) 2015-09-28
JP6287353B2 true JP6287353B2 (ja) 2018-03-07

Family

ID=54203275

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014042025A Active JP6287353B2 (ja) 2014-03-04 2014-03-04 コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム

Country Status (1)

Country Link
JP (1) JP6287353B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018003081A1 (ja) * 2016-06-30 2018-01-04 株式会社オプティム 全天球カメラ撮像画像表示システム、方法及びプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1185604A (ja) * 1997-09-12 1999-03-30 Nippon Telegr & Teleph Corp <Ntt> コンテンツ配置変更方法及びシステム及びコンテンツ配置変更プログラムを格納した記憶媒体
JP2009122981A (ja) * 2007-11-15 2009-06-04 Nec Corp キャッシュ配置方法
JP2011172021A (ja) * 2010-02-18 2011-09-01 Nec Corp キャッシュサーバ制御装置、コンテンツ配信システム、コンテンツ配信方法、及びプログラム
JP5585330B2 (ja) * 2010-09-13 2014-09-10 日本電気株式会社 情報処理装置、情報処理方法およびコンピュータ・プログラム
JP2012147272A (ja) * 2011-01-12 2012-08-02 Nippon Telegr & Teleph Corp <Ntt> トラヒックキャッシュシステム及びキャッシュ置き換え方法及びキャッシュ装置及びキャッシュプログラム
JP5617712B2 (ja) * 2011-03-17 2014-11-05 沖電気工業株式会社 コンテンツ配信サーバ、コンテンツ配信システム、コンテンツ配信プログラム及びコンテンツ配信方法

Also Published As

Publication number Publication date
JP2015170866A (ja) 2015-09-28

Similar Documents

Publication Publication Date Title
US11983198B2 (en) Multi-cluster warehouse
KR101827369B1 (ko) 데이터 스트림 분산 병렬 처리 서비스 관리 장치 및 방법
CN110058932B (zh) 一种用于数据流驱动计算的存储方法和存储系统
JP5159884B2 (ja) 論理区分の間におけるネットワーク・アダプタ・リソース割振り
US9372751B2 (en) Free space collection in log structured storage systems
US20190163371A1 (en) Next generation storage controller in hybrid environments
US7979668B2 (en) Method and system for automatically distributing real memory between virtual memory page sizes
US7454420B2 (en) Data sorting method and system
Chatzistergiou et al. Fast heuristics for near-optimal task allocation in data stream processing over clusters
JP2004070403A (ja) ファイル格納先ボリューム制御方法
US10333859B2 (en) Multi-tenant resource coordination method
JP6172649B2 (ja) 情報処理装置、プログラム、及び、情報処理方法
JP6293683B2 (ja) 計算機システム及び計算機システムの性能障害の対処方法
CN101673271A (zh) 分布式文件系统及其文件分片方法
CN106227469A (zh) 用于分布式存储集群的数据删除方法及系统
JP5552343B2 (ja) 管理装置、管理方法およびプログラム
US20110154357A1 (en) Storage Management In A Data Processing System
JP6287353B2 (ja) コンテンツ配信装置、コンテンツ配信方法及びコンテンツ配信プログラム
Liu et al. Understanding the i/o performance gap between cori knl and haswell
JP6764175B2 (ja) データベース管理システム、及び、データベース管理方法
JP6210501B2 (ja) データベース管理システム、計算機、データベース管理方法
Hurley et al. Limited effects of finite storage on a beneficial file migration policy
KR102283364B1 (ko) 가상화 환경에서, 대역폭 조절 방법
US20230342222A1 (en) Intelligent load balancing in a distributed system
Cidon et al. Memshare: a dynamic multi-tenant memory key-value cache

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161115

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170831

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171127

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180122

R150 Certificate of patent or registration of utility model

Ref document number: 6287353

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150