(57)【要約】【課題】コンテンツの多重度を最適化する。【解決手段】情報提供サーバ１０は、端末３０からの要求に応答して、サーバＩＤを端末３０に送信する。また、情報提供サーバ１０は、管理サーバ２０からの要求に応答して、分割ファイルごとの取得要求回数を管理サーバ２０に送信する。管理サーバ２０は、情報提供サーバ１０から取得した分割ファイルごとの取得要求回数に基づいて、データサーバ４０に分割ファイルを配置する。端末３０は、情報提供サーバ１０からサーバＩＤを取得し、このサーバＩＤに対応するデータサーバ４０から分割ファイルを取得して再生する。【選択図】図１
2011215928.tif 000002
【特許請求の範囲】
【請求項１】
情報管理サーバと、端末と、コンテンツを記憶する複数のデータサーバと、を備えたコンテンツ配信システムであって、
前記情報管理サーバは、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、を備え、
前記端末は、
コンテンツを記憶するデータサーバのサーバＩＤの取得を前記情報管理サーバに要求し、該要求に係るサーバＩＤを該情報管理サーバから受信するサーバＩＤ受信手段と、
前記サーバＩＤ受信手段が受信したサーバＩＤに対応するデータサーバに、前記要求に係るコンテンツの取得を要求し、該要求に係るコンテンツを該データサーバから受信するコンテンツ受信手段と、
前記コンテンツ受信手段が受信したコンテンツを再生する再生手段と、を備え、
前記各データサーバは、
コンテンツを記憶するコンテンツ記憶手段と、
前記端末からの要求に応答して、該要求に係るコンテンツを、要求した端末に送信するコンテンツ送信手段と、を備える、
ことを特徴とするコンテンツ配信システム。
【請求項２】
コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバであって、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、
を備えることを特徴とする情報管理サーバ。
【請求項３】
前記情報管理サーバが、さらに、前記コンテンツを分割するコンテンツ分割手段を備え、
前記コンテンツは、前記コンテンツ分割手段が該コンテンツを分割して得られる分割ファイルである、ことを特徴とする請求項２に記載の情報管理サーバ。
【請求項４】
前記コンテンツ分割手段が、前記コンテンツをチャプター開始位置で分割する、ことを特徴とする請求項３に記載の情報管理サーバ。
【請求項５】
前記コンテンツ多重化手段は、複数のコンテンツをそれぞれ分割して得られる分割ファイルの取得要求回数の総和に対する各分割ファイルの取得要求回数の比に基づいて、該分割ファイルを前記各データサーバに記憶する、ことを特徴とする請求項３又は４に記載の情報管理サーバ。
【請求項６】
コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバを制御するコンピュータに、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信ステップと、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数ステップと、
前記計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化ステップと、
を実行させることを特徴とするプログラム。
【請求項７】
前記プログラムが、さらに、前記コンテンツを分割するコンテンツ分割ステップを備え、
前記コンテンツは、前記分割して得られる分割ファイルである、ことを特徴とする請求項６に記載のプログラム。
【請求項８】
前記コンテンツ分割ステップが、前記コンテンツをチャプター開始位置で分割するステップである、ことを特徴とする請求項７に記載のプログラム。
【請求項９】
前記コンテンツ多重化ステップが、複数のコンテンツをそれぞれ分割して得られる分割ファイルの取得要求回数の総和に対する各分割ファイルの取得要求回数の比に基づいて、該分割ファイルを前記各データサーバに記憶するステップである、ことを特徴とする請求項７又は８に記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツを配信するコンテンツ配信システム、情報管理サーバ及びプログラムに関する。
【背景技術】
【０００２】
動画ファイルを配信する配信サーバの負荷を分散するため、動画ファイルを複数の配信サーバに記憶し、多重化することが知られている。
【０００３】
しかし、動画ファイル単位で多重化を行うため、配信サーバのハードウェア資源を有効に活用することができないという問題があった。
【０００４】
このような不都合を解消するため、１つのファイルを複数のファイルに分割し、分割したファイルを、複数のサーバに記憶し、多重化する技術が提案されている（例えば、特許文献１）。これによると、分割されたファイル単位で多重化をすることができる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０００−２０７３７０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示されている技術を動画ファイルに適用しても、人気のない動画ファイルを人気のある動画ファイルと同様に多重化した場合には、配信サーバのハードウェア資源を有効に活用することができない。
【０００７】
本発明は、上記実情に鑑みてなされたものであり、動画ファイルの多重化を自動的に最適化することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明の第一の観点に係るコンテンツ配信システムは、
情報管理サーバと、端末と、コンテンツを記憶する複数のデータサーバと、を備えたコンテンツ配信システムであって、
前記情報管理サーバは、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、を備え、
前記端末は、
コンテンツを記憶するデータサーバのサーバＩＤの取得を前記情報管理サーバに要求し、該要求に係るサーバＩＤを該情報管理サーバから受信するサーバＩＤ受信手段と、
前記サーバＩＤ受信手段が受信したサーバＩＤに対応するデータサーバに、前記要求に係るコンテンツの取得を要求し、該要求に係るコンテンツを該データサーバから受信するコンテンツ受信手段と、
前記コンテンツ受信手段が受信したコンテンツを再生する再生手段と、を備え、
前記各データサーバは、
コンテンツを記憶するコンテンツ記憶手段と、
前記端末からの要求に応答して、該要求に係るコンテンツを、要求した端末に送信するコンテンツ送信手段と、を備える、
ことを特徴とする。
【０００９】
上記目的を達成するため、本発明の第二の観点に係る情報管理サーバは、
コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバであって、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、
を備えることを特徴とする。
【００１０】
上記目的を達成するため、本発明の第三の観点に係るプログラムは、
コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバを制御するコンピュータに、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信ステップと、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数ステップと、
前記計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化ステップと、
を実行させることを特徴とする。
【発明の効果】
【００１１】
本発明によれば、情報管理サーバが、コンテンツごとの取得要求回数に基づいて、コンテンツをデータサーバに記憶する。このため、コンテンツの多重度を最適化することができる。
【図面の簡単な説明】
【００１２】
【図１】実施形態１に係る動画配信システムのブロック図である。
【図２】図１に示す情報提供サーバのブロック図である。
【図３】（ａ）は、分割ファイル管理データベースの構成を示す図であり、（ｂ）は、取得要求管理データベースの構成を示す図であり、（ｃ）は、負荷データベースの構成を示す図である。
【図４】図１に示す管理サーバのブロック図である。
【図５】図１に示す端末のブロック図である。
【図６】図１に示すデータサーバのブロック図である。
【図７】管理サーバの動画ファイル登録処理を説明するためのフローチャートである。
【図８】動画ファイル登録画面の例を説明するための図である。
【図９】管理サーバの多重化処理を説明するためのフローチャートである。
【図１０】図９に示すフローチャートに続くフローチャートである。
【図１１】多重度＝３で多重化した直後の、分割ファイルの配置状態を示す図である。
【図１２】データサーバの負荷情報更新処理を説明するためのフローチャートである。
【図１３】（ａ）、（ｂ）、（ｃ）は、端末が動画を再生する場合において、情報提供サーバ、端末及びデータサーバの動作を説明するためのシーケンス図である。
【図１４】（ａ）、（ｂ）、（ｃ）は、図１３（ａ）、（ｂ）、（ｃ）に示すシーケンス図に続く図である。
【図１５】管理サーバの最適化処理を説明するためのフローチャートである。
【図１６】図１５に示すフローチャートに続くフローチャートである。
【図１７】図３（ｃ）に示す取得要求管理データベースのデータに基づいて、多重度を最適化した直後の、分割ファイルの配置状態を示す図である。
【図１８】実施形態２に係る管理サーバの最適化処理を説明するためのフローチャートである。
【図１９】図１８に示すフローチャートに続くフローチャートである。
【図２０】図１９に示すフローチャートに続くフローチャートである。
【発明を実施するための形態】
【００１３】
（実施形態１）
本発明の実施形態に係るコンテンツ配信システムとしての動画配信システム５１を、以下図面を参照して説明する。
【００１４】
動画配信システム５１は、図１に示すように、情報提供サーバ１０と、管理サーバ２０と、複数の端末３０（３０１、３０２、・・・、３０ｎ）と、複数のデータサーバ４０（４０１、４０２、・・・、４０ｎ）と、を備える。これらの機器は、有線通信又は無線通信により通信ネットワーク５０を介して相互に接続されている。また、使用する通信規格は任意である。
【００１５】
情報提供サーバ１０は、コンテンツとしての動画ファイルの分割ファイルを記憶するデータサーバ４０のサーバＩＤ（Identifier）、分割ファイルごとの取得要求回数（端末３０から取得要求のあった回数）、データサーバ４０の負荷状態（例えば、実行待ちの待ち行列に入れられたジョブの数など）を示す負荷情報などを管理（記憶・更新）するコンピュータ装置である。そして、情報提供サーバ１０は、端末３０からの要求に応答して、当該要求に係る分割ファイルを記憶するデータサーバ４０のサーバＩＤを当該端末３０に送信する。また、情報提供サーバ１０は、管理サーバ２０からの要求に応答して、分割ファイルごとの取得要求回数を当該管理サーバ２０に送信する。
【００１６】
情報提供サーバ１０は、図２に示すように、通信部１１０と、記憶部１２０と、制御部１３０と、を備える。
【００１７】
通信部１１０は、例えば、MODEMなどから構成され、制御部１３０の制御に従って、通信ネットワーク５０を介して、他の装置と通信する。
【００１８】
記憶部１２０は、例えば、磁気ディスクなどから構成され、制御部１３０が実行するプログラムなどを記憶するプログラム記憶部１２１、分割ファイルを記憶するデータサーバ４０のサーバＩＤなどを記憶する分割ファイル管理ＤＢ（データベース）１２２、分割ファイルごとの取得要求回数などを記憶する取得要求管理ＤＢ１２３、データサーバ４０の負荷などを記憶する負荷ＤＢ１２４などを備えている。分割ファイル管理ＤＢ１２２は、具体的には、図３（ａ）に示すように、分割ファイルを識別するファイルＩＤと、この分割ファイルを記憶するデータサーバ４０のサーバＩＤとを対応付けて記憶する。また、取得要求管理ＤＢ１２３は、具体的には、図３（ｂ）に示すように、分割ファイルのファイルＩＤと、当該ファイルＩＤに対応する分割ファイルの取得要求回数とを対応付けて記憶する。さらに、負荷ＤＢ１２４は、具体的には、図３（ｃ）に示すように、サーバＩＤと、当該サーバＩＤに対応するデータサーバ４０の負荷情報（実行待ちの待ち行列に入れられたジョブの数）とを対応付けて記憶する。
【００１９】
制御部１３０は、例えば、ＣＰＵ（Central Processing Unit）などから構成され、プログラム記憶部１２１に記憶されたプログラムに従って、情報提供サーバ１０の各部を制御する。
【００２０】
図１に示す管理サーバ２０は、分割ファイルごとの取得要求回数に基づいて、分割ファイルの多重度を最適化するコンピュータ装置である。管理サーバ２０は、情報提供サーバ１０に分割ファイルごとの取得要求回数の取得を要求し、分割ファイルごとの取得要求回数をこの情報提供サーバ１０から受信する。また、管理サーバ２０は、分割ファイルごとの取得要求回数に基づいて、各データサーバ４０に分割ファイルを記憶する。
【００２１】
続いて、この管理サーバ２０の構成を、図４を参照して説明する。管理サーバ２０は、図４に示すように、通信部２１０と、操作部２２０と、表示部２３０と、記憶部２４０と、制御部２５０と、を備える。
【００２２】
通信部２１０は、例えば、MODEMなどから構成され、制御部２５０の制御に従って、通信ネットワーク５０を介して、他の装置と通信する。
【００２３】
操作部２２０は、例えば、キーボード、マウスなどから構成され、ユーザからの指示に応じた信号を制御部２５０に送信する。
【００２４】
表示部２３０は、例えば、液晶ディスプレイ装置などから構成され、制御部２５０の制御に従って、後述する動画ファイル登録画面などを表示する。
【００２５】
記憶部２４０は、例えば、磁気ディスクなどから構成され、制御部２５０が実行するプログラムなどを記憶するプログラム記憶部２４１、分割ファイルを記憶する分割ファイル記憶部２４２などを備えている。
【００２６】
制御部２５０は、例えば、ＣＰＵ（Central Processing Unit）などから構成され、プログラム記憶部２４１に記憶されたプログラムに従って、管理サーバ２０の各部を制御する。また、制御部２５０は、所定のプログラムに従って、タイマ２５１としても機能する。
【００２７】
図１に示す端末３０は、データサーバ４０から分割ファイルを取得して再生するコンピュータ装置である。端末３０は、分割ファイルを記憶するデータサーバ４０のサーバＩＤを情報提供サーバ１０から取得する。また、端末３０は、データサーバ４０に分割ファイルの取得を要求し、分割ファイルをこのデータサーバ４０から受信し、再生する。
【００２８】
続いて、この端末３０の構成を、図５を参照して説明する。端末３０は、図５に示すように、通信部３１０と、操作部３２０と、表示部３３０と、記憶部３４０と、制御部３５０と、を備える。ここで、通信部３１０、操作部３２０、表示部３３０及び制御部３５０の構成は管理サーバ２０と同じであるが、記憶部３４０に分割ファイル記憶部を備えていない点が異なる。
【００２９】
図１に示すデータサーバ４０は、分割ファイルを記憶するコンピュータ装置である。データサーバ４０は、端末３０からの要求に応答して、分割ファイルを端末３０に送信する。また、データサーバ４０は、定期的に自身の負荷情報を情報提供サーバ１０の負荷ＤＢ１２４に記憶し、更新する。
【００３０】
データサーバ４０は、図６に示すように、通信部４１０と、記憶部４２０と、制御部４３０と、を備える。ここで、通信部４１０、操作部４２０、表示部４３０及び制御部４５０の構成は管理サーバ２０と同じである。
【００３１】
次に、動画配信システム５１の各構成要素の動作を個別に説明する。但し、理解を容易にするため、以下、データサーバ４０が５台の場合を例にして説明する。
【００３２】
（動画ファイル登録処理）
動画ファイルを配信するにあたり、動画ファイルを管理サーバ２０に登録する必要がある。ここでは、理解を容易にするため、管理サーバ２０が、各動画ファイルを５つに分割して登録する動作を説明する。
【００３３】
ユーザは、操作部２２０を操作して動画ファイルの登録を指示する。この指示に応答して、操作部２２０は当該指示を示す信号を制御部２５０に送信する。制御部２５０は、この信号に応答して、図７に示す動画ファイル登録処理を開始し、まず、図８に示す動画ファイル登録画面を表示する（ステップＳ１）。制御部２５０は、動画ファイル登録画面においてフォルダが指定され、ＯＫボタンが押下されたか否かを判別する（ステップＳ２）。
【００３４】
制御部２５０は、フォルダが指定され、ＯＫボタンが押下されたと判別した場合に（ステップＳ２；Ｙｅｓ）、インデックスｋの値を０にリセットする（ステップＳ３）。制御部２５０は、指定されたフォルダから第ｋ番目の動画ファイルを読み出す（ステップＳ４）。制御部２５０は、読み出した動画ファイルを、５つに等分割する（ステップＳ５）。制御部２５０は、分割ファイルのファイルＩＤを動画ファイルの先頭に近いものから順に、即ち、再生順に、ｋ＿ｄ０、ｋ＿ｄ１、・・・、ｋ＿ｄ４のように生成する（ステップＳ６）。
【００３５】
制御部２５０は、分割して得られた分割ファイルを、ステップＳ６で生成されたファイルＩＤで分割ファイル記憶部２４２に記憶する（ステップＳ７）。制御部２５０は、インデックスｋを＋１カウントアップする（ステップＳ８）。その後、制御は、ステップＳ４にリターンし、ｋ＝Ｎ−１（Ｎ：指定されたフォルダに格納された動画ファイルの数）まで制御部２５０は同様の処理を繰り返す。
【００３６】
（多重化処理）
次に、分割ファイルを多重化するため、分割ファイルを各データサーバ４０に記憶する必要がある。このため、分割ファイルを各データサーバ４０に記憶する処理について、管理サーバ２０の動作を説明する。
【００３７】
ユーザは、操作部２２０を操作して、分割ファイルを、例えば、多重度＝３でデータサーバ４０に記憶する旨を指示する。ここで、多重度とは、分割ファイルを記憶したデータサーバ４０の数をいい、例えば、ある分割ファイルを３台のデータサーバ４０に記憶した場合、この分割ファイルの多重度は３である。
【００３８】
ユーザからの指示に応答して、操作部２２０は当該指示を示す信号を制御部２５０に送信する。制御部２５０は、この信号に応答して、図９〜図１０に示す多重化処理を開始し、まず、各データサーバ４０の分割ファイル記憶部４２２に記憶された分割ファイルをすべて削除する（ステップＳ１１）。制御部２５０は、インデックスｉの値を０にリセットする（ステップＳ１２）。制御部２５０は、インデックスｋの値を０にリセットする（ステップＳ１３）。制御部２５０は、ファイルＩＤ＝ｉ＿ｄｋに対応する分割ファイルを、分割ファイル記憶部２４２から読み出す（ステップＳ１４）。制御部２５０は、読み出した分割ファイルを、サーバＩＤ＝Ｓ（ｋ）、Ｓ（ｋ＋１）、Ｓ（ｋ＋２）に対応するデータサーバ４０の分割ファイル記憶部４２２にコピーする（ステップＳ１５）。ただし、Ｓ（ｋ）は、Ｓ０、Ｓ１、Ｓ２、Ｓ３、Ｓ４の値を順次繰り返す周期関数である。従って、Ｓ（ｋ＋５）＝Ｓ（ｋ）の関係が成立する。
【００３９】
制御部２５０は、ファイルＩＤと、このファイルＩＤに対応する分割ファイルをコピーしたデータサーバ４０のサーバＩＤとを対応付けて分割ファイル管理ＤＢ１２２に記憶する（ステップＳ１６）。制御部２５０は、インデックスｋの値を＋１カウントアップする（ステップＳ１７）。その後、制御は、ステップＳ１４にリターンし、ｋ＝４まで制御部２５０は同様の処理を繰り返す（ステップＳ１８）。制御部２５０は、ｋ＝４を満たすと判別した場合（ステップＳ１８；Ｙｅｓ）、図１０に示すように、インデックスｉの値を＋１カウントアップする（ステップＳ１９）。その後、制御は、ステップＳ１３にリターンし、ｉ＝Ｎ−１まで制御部２５０は同様の処理を繰り返す（ステップＳ２０）。
【００４０】
一方、制御部２５０は、ｉ＝Ｎ−１を満たすと判別した場合に（ステップＳ２０；Ｙｅｓ）、処理を終了する。これにより、各動画ファイルの分割ファイルが多重度＝３で多重化され、また、図３（ａ）に示すように、分割ファイル管理ＤＢ１２２にデータが記憶される。多重化処理を行った直後の分割ファイルは、図１１に示すように、ｉ＿ｄ０：ｉ＿ｄ１：ｉ＿ｄ２：ｉ＿ｄ３：ｉ＿ｄ４＝１：１：１：１：１（ｉ＝０，１，・・・，Ｎ−１）の存在比率でデータサーバ４０に記憶される。
【００４１】
（負荷情報更新処理）
データサーバ４０の負荷を分散させるため、情報提供サーバ１０は、負荷ＤＢ１２４を参照して、端末３０からの分割ファイルの取得要求を負荷の低いデータサーバ４０に振り分ける必要がある。このため、データサーバ４０が負荷情報を定期的に情報提供サーバ１０の負荷ＤＢ１２４に記憶する処理について、データサーバ４０の動作を説明する。
【００４２】
制御部４３０は、図１２に示す負荷情報更新処理を順次繰り返して実行する。制御部４３０は、まず、タイマ４３１の計測時間（ｔ）を０にリセットして、計時を再開させる（ステップＳ２１）。制御部４３０は、タイマ４３１の計測時間（ｔ）が所定の時間（Ｔ１）以上であるか否かを判別する（ステップＳ２２）。この時間（Ｔ１）は、データサーバ４０が情報提供サーバ１０に負荷情報を送信する周期に相当する。
【００４３】
制御部４３０は、計測時間（ｔ）が所定の時間（Ｔ１）未満であると判別した場合に（ステップＳ２２；Ｎｏ）、ステップＳ２２を繰り返す。一方、制御部４３０は、計測時間（ｔ）が所定の時間（Ｔ１）以上であると判別した場合に（ステップＳ２２；Ｙｅｓ）、自身の負荷状態を測定する（ステップＳ２３）。制御部４３０は、記憶部４２０から自データサーバ４０のサーバＩＤを読み出す（ステップＳ２４）。制御部４３０は、読み出したサーバＩＤを含むレコードを情報提供サーバ１０の負荷ＤＢ１２４から検索し、発見されたレコードの負荷情報を測定して得られた負荷情報に更新する（ステップＳ２５）。その後、制御は、ステップＳ２１にリターンし、制御部４３０は同様の処理を繰り返す。これにより、定期的に情報提供サーバ１０の負荷ＤＢ１２４が更新される。
【００４４】
（サーバＩＤの要求処理）
次に、端末３０が動画ファイルを再生する場合について、情報提供サーバ１０、端末３０及びデータサーバ４０の動作をそれぞれ説明する。ここでは、理解を容易にするため、前述した動画ファイル登録処理で１番目に登録され、分割ファイル（ファイルＩＤ＝０＿ｄ０〜０＿ｄ４）から構成される動画ファイルを再生する場合を例にして説明する。
【００４５】
端末３０のユーザは、操作部３２０を操作して動画ファイルを再生する旨を指示する。この指示に応答して、操作部３２０は当該指示を示す信号を制御部３５０に送信する。制御部３５０は、この信号に応答して、図１３（ｃ）〜図１４（ｃ）に示す処理を開始し、まず、インデックスｋの値を０にリセットする（ステップＳ３１）。制御部３５０は、指定された動画ファイルを構成するファイルＩＤ＝０＿ｄｋに対応する分割ファイルを記憶するデータサーバ４０について、サーバＩＤの取得を情報提供サーバ１０に要求する（ステップＳ３２）。
【００４６】
（サーバＩＤの特定処理）
情報提供サーバ１０の制御部１３０は、端末３０からの要求に応答して、図１３（ａ）〜図１４（ａ）に示す処理を開始し、まず、取得要求管理ＤＢ１２３からファイルＩＤ＝０＿ｄｋを含むレコードを検索し、発見されたレコードの取得要求回数を＋１カウントアップし更新する（ステップＳ３３）。制御部１３０は、端末３０からの要求に係るファイルＩＤ＝０＿ｄｋに対応付けられたサーバＩＤを分割ファイル管理ＤＢ１２２から読み出す（ステップＳ３４）。制御部１３０は、読み出したサーバＩＤが２以上あるか否かを判別する（ステップＳ３５）。制御部１３０は、サーバＩＤが２以上あると判別した場合に、各サーバＩＤに対応付けられた負荷情報を負荷ＤＢ１２４から読み出す（ステップＳ３６）。制御部１３０は、読み出した負荷情報に基づいて、負荷が最も少ないデータサーバ４０のサーバＩＤを特定する（ステップＳ３７）。制御部１３０は、特定したサーバＩＤを、サーバＩＤの取得を要求した端末３０に送信する（ステップＳ３８）。
【００４７】
端末３０の制御部３５０は、図１４（ｃ）に示すように、サーバＩＤを情報提供サーバ１０から受信する（ステップＳ３９）。制御部３５０は、受信したサーバＩＤに対応するデータサーバ４０にファイルＩＤ＝０＿ｄｋに対応する分割ファイルの取得を要求する（ステップＳ４０）。
【００４８】
データサーバ４０の制御部４３０は、端末３０からの要求に応答して、図１３（ｂ）〜図１４（ｂ）に示す処理を開始し、まず、要求に係るファイルＩＤ＝０＿ｄｋに対応する分割ファイルを分割ファイル記憶部４２２から読み出す（ステップＳ４１）。制御部４３０は、読み出した分割ファイルを、分割ファイルの取得を要求した端末３０に送信する（ステップＳ４２）。
【００４９】
（分割ファイル再生処理）
端末３０の制御部３５０は、図１４（ｃ）に示すように、ウェブブラウザのプラグインなどにより、ファイルＩＤ＝０＿ｄｋに対応する分割ファイルをデータサーバ４０からダウンロードしながら再生する（ステップＳ４３）。制御部３５０は、ユーザから再生の停止が指示されたか否かを判別する（ステップＳ４４）。制御部３５０は、再生の停止が指示されたと判別した場合に（ステップＳ４４；Ｎｏ）、処理を終了する。
【００５０】
一方、制御部３５０は、再生の停止が指示されないと判別した場合に（ステップＳ４４；Ｙｅｓ）、インデックスｋの値を＋１カウントアップする（ステップＳ４５）。その後、制御は、ステップＳ３２にリターンし、ｋ＝４まで同様の処理を繰り返す（ステップＳ４５）。これにより、端末３０は負荷の低いデータサーバ４０から動画ファイルの分割ファイルを順次ダウンロードして再生する。また、各端末３０において動画ファイルの分割ファイルが再生されることにより、情報提供サーバ１０の取得要求管理ＤＢ１２３において、分割ファイルの取得要求回数がカウントアップされる。但し、例えば、分割ファイル（ファイルＩＤ＝０＿ｄ０）の再生の途中で、ユーザから再生の停止が指示された場合には、図３（ｂ）に示す取得要求管理ＤＢ１２３において、ファイルＩＤ＝０＿ｄ０に対応付けられた取得要求回数のみが＋１カウントアップされる。
【００５１】
（最適化処理）
動画ファイルの配信を開始してから所定の時間が経過すると、リクエストの頻度が高い分割ファイルとリクエストの頻度が低い分割ファイルが出現する。以下、分割ファイルの多重度を最適化する処理について、管理サーバ２０の動作を説明する。
【００５２】
管理サーバ２０の制御部２５０は、図１５〜図１６に示す最適化処理を順次繰り返して実行する。制御部２５０は、まず、タイマ２５１の計測時間（ｔ）を０にリセットして、計時を再開させる（ステップＳ５１）。制御部２５０は、タイマ２５１の計測時間（ｔ）が所定の時間（Ｔ２）以上であるか否かを判別する（ステップＳ５２）。この時間（Ｔ２）は、管理サーバ２０が最適化処理を実行する周期に相当する。
【００５３】
制御部２５０は、計測時間（ｔ）が所定の時間（Ｔ２）未満であると判別した場合に（ステップＳ５２；Ｎｏ）、ステップＳ５２を繰り返す。一方、制御部４３０は、計測時間（ｔ）が所定の時間（Ｔ２）以上であると判別した場合に（ステップＳ５２；Ｙｅｓ）、各データサーバ４０の分割ファイル記憶部４２２に記憶された分割ファイルをすべて削除する（ステップＳ５３）。制御部２５０は、インデックスｉの値を０にリセットする（ステップＳ５４）。制御部２５０は、インデックスｋの値を０にリセットする（ステップＳ５５）。制御部２５０は、ファイルＩＤ＝ｉ＿ｄｋに対応付けられた取得要求回数を取得要求管理ＤＢ１２３から読み出す（ステップＳ５６）。制御部２５０は、読み出した取得要求回数を配列ｒ（ｋ）に代入する（ステップＳ５７）。制御部２５０は、インデックスｋの値を＋１カウントアップする（ステップＳ５８）。その後、制御は、ステップＳ５６にリターンし、ｋ＝４まで制御部２５０は同様の処理を繰り返す（ステップＳ５９）。
【００５４】
制御部２５０は、取得要求回数を配列ｒ（ｋ）に代入する処理が完了した場合に（ステップＳ５９；Ｙｅｓ）、取得要求回数ｒ（ｋ）が最大となるｋの値（ｋ１）を求める（ステップＳ６０）。制御部２５０は、図１６に示すように、インデックスｋの値を０にリセットする（ステップＳ６１）。制御部２５０は、ファイルＩＤ＝ｉ＿ｄｋに対応する分割ファイルを、分割ファイル記憶部から読み出す（ステップＳ６２）。制御部２５０は、読み出した分割ファイルを、多重度＝ＩＮＴ（ｎ＊ｒ（ｋ）／ｒ（ｋ１））（ＩＮＴ：小数点以下を切り捨てて整数を返す関数、ｎ：データサーバ４０の数＝５）でデータサーバ４０の分割ファイル記憶部４２２にコピーする（ステップＳ６３）。ここで、制御部２５０は、記憶している分割ファイルの数が少ないデータサーバ４０から順に分割ファイルをコピーする。
【００５５】
続いて、制御部２５０は、ファイルＩＤと、このファイルＩＤに対応する分割ファイルをコピーしたデータサーバ４０のサーバＩＤとを対応付けて分割ファイル管理ＤＢ１２２に記憶する（ステップＳ６４）。制御部２５０は、インデックスｋの値を＋１カウントアップする（ステップＳ６５）。その後、制御は、ステップＳ６２にリターンし、ｋ＝４まで制御部２５０は同様の処理を繰り返す（ステップＳ６６）。
【００５６】
制御部２５０は、ｋ＝４を満たすと判別した場合に（ステップＳ６６；Ｙｅｓ）、インデックスｉの値を＋１カウントアップする（ステップＳ６７）。その後、制御は、ステップＳ５５にリターンし、ｉ＝Ｎ−１まで制御部２５０は同様の処理を繰り返す（ステップＳ６８）。
【００５７】
一方、制御部２５０は、ｉ＝Ｎ−１を満たすと判別した場合に（ステップＳ６８；Ｙｅｓ）、ステップ５１にリターンする。これにより、各動画ファイルの分割ファイルの多重度が最適化される。例えば、図３（ｃ）に示す取得要求管理ＤＢ１２３のデータに基づいて、最適化処理を行った場合、分割ファイル（ファイルＩＤ＝０＿ｄｋ；ｋ＝０，１，・・・，４）は、図１７に示すように、０＿ｄ０：０＿ｄ１：０＿ｄ２：０＿ｄ３：０＿ｄ４＝１０：８：６：４：２（即ち、５：４：３：２：１）の存在比率でデータサーバ４０に記憶される。
【００５８】
この場合、分割ファイルの配置状態は図１１に示す状態から図１７に示す状態へと遷移する。これに伴い、分割ファイルの存在比率は、０＿ｄ０：０＿ｄ１：０＿ｄ２：０＿ｄ３：０＿ｄ４＝１：１：１：１：１から、０＿ｄ０：０＿ｄ１：０＿ｄ２：０＿ｄ３：０＿ｄ４＝５：４：３：２：１に遷移する。
【００５９】
以上、説明したように、本実施形態によれば、取得要求回数に基づいて、動画ファイルの分割ファイルの多重度を最適化する。このため、取得要求回数の多い分割ファイルを記憶するデータサーバ４０の負荷を分散することができる。
【００６０】
また、取得要求回数の少ない分割ファイルの多重度は小さくなるので、各データサーバ４０のストレージ資源を無駄に消費することがない。
【００６１】
（実施形態２）
実施形態１では、動画ファイル毎に、その分割ファイルの取得要求回数の総和に対する比に基づいて、分割ファイルの多重化を最適化している。本実施形態では、複数の動画ファイルについて、すべての分割ファイルの取得要求回数の総和に対する比に基づいて、分割ファイルの多重度を最適化することができる動画配信システム５１を説明する。ここで、実施形態２に係る動画配信システム５１の構成は実施形態１に係る動画配信システム５１と同一である。
【００６２】
（最適化処理）
動画ファイルの配信を開始してから所定の時間が経過すると、リクエストの頻度が高い分割ファイルとリクエストの頻度が低い分割ファイルが出現する。以下、分割ファイルの多重度を最適化する処理について、管理サーバ２０の動作を説明する。
【００６３】
管理サーバ２０の制御部２５０は、図１８〜図２０に示す最適化処理を順次繰り返して実行する。制御部２５０は、まず、タイマ２５１の計測時間（ｔ）を０にリセットして、計時を再開させる（ステップＳ７１）。制御部２５０は、タイマ２５１の計測時間（ｔ）が所定の時間（Ｔ２）以上であるか否かを判別する（ステップＳ７２）。この時間（Ｔ２）は、管理サーバ２０が最適化処理を実行する周期に相当する。
【００６４】
制御部２５０は、計測時間（ｔ）が所定の時間（Ｔ２）未満であると判別した場合に（ステップＳ７２；Ｎｏ）、ステップＳ７２を繰り返す。一方、制御部４３０は、計測時間（ｔ）が所定の時間（Ｔ２）以上であると判別した場合に（ステップＳ７２；Ｙｅｓ）、各データサーバ４０の分割ファイル記憶部４２２に記憶された分割ファイルをすべて削除する（ステップＳ７３）。制御部２５０は、インデックスｉの値を０にリセットする（ステップＳ７４）。制御部２５０は、インデックスｋの値を０にリセットする（ステップＳ７５）。制御部２５０は、ファイルＩＤ＝ｉ＿ｄｋに対応付けられた取得要求回数を取得要求管理ＤＢ１２３から読み出す（ステップＳ７６）。制御部２５０は、読み出した取得要求回数を配列ｒ（ｉ，ｋ）に代入する（ステップＳ７７）。制御部２５０は、インデックスｋの値を＋１カウントアップする（ステップＳ７８）。その後、制御は、ステップＳ７６にリターンし、ｋ＝４まで制御部２５０は同様の処理を繰り返す（ステップＳ７９）。
【００６５】
制御部２５０は、図１９に示すように、ｋ＝４を満たすと判別した場合に（ステップＳ７９；Ｙｅｓ）、インデックスｉの値を＋１カウントアップする（ステップＳ８０）。その後、制御は、ステップＳ７５にリターンし、ｉ＝Ｎ−１まで制御部２５０は同様の処理を繰り返す（ステップＳ８１）。
【００６６】
制御部２５０は、ｉ＝Ｎ−１を満たすと判別した場合に（ステップＳ８１；Ｙｅｓ）、取得要求回数ｒ（ｉ，ｋ）が最大となるｉ，ｋの組（ｉ２，ｋ２）を求める（ステップＳ８２）。制御部２５０は、インデックスｉの値を０にリセットする（ステップＳ８３）。制御部２５０は、インデックスｋの値を０にリセットする（ステップＳ８４）。制御部２５０は、ファイルＩＤ＝ｉ＿ｄｋに対応する分割ファイルを、分割ファイル記憶部から読み出す（ステップＳ８５）。制御部２５０は、読み出した分割ファイルを、多重度＝ＩＮＴ（ｎ＊ｒ（ｉ，ｋ）／ｒ（ｉ２，ｋ２））でデータサーバ４０の分割ファイル記憶部４２２にコピーする（ステップＳ８６）。ここで、制御部２５０は、記憶している分割ファイルの数が少ないデータサーバ４０から順に分割ファイルをコピーする。
【００６７】
続いて、制御部２５０は、ファイルＩＤと、このファイルＩＤに対応する分割ファイルをコピーしたデータサーバ４０のサーバＩＤとを対応付けて分割ファイル管理ＤＢ１２２に記憶する（ステップＳ８７）。制御部２５０は、インデックスｋの値を＋１カウントアップする（ステップＳ８８）。その後、制御は、ステップＳ８５にリターンし、ｋ＝４まで制御部２５０は同様の処理を繰り返す（ステップＳ８９）。
【００６８】
制御部２５０は、ｋ＝４を満たすと判別した場合に（ステップＳ８９；Ｙｅｓ）、インデックスｉの値を＋１カウントアップする（ステップＳ９０）。その後、制御は、ステップＳ８４にリターンし、ｉ＝Ｎ−１まで制御部２５０は同様の処理を繰り返す（ステップＳ９１）。
【００６９】
一方、制御部２５０は、ｉ＝Ｎ−１を満たすと判別した場合に（ステップＳ９１；Ｙｅｓ）、ステップ７１にリターンする。これにより、各動画ファイルの分割ファイルの多重度が最適化される。
【００７０】
以上、説明したように、本実施形態によれば、複数の動画ファイルをそれぞれ分割して得られる分割ファイルの取得要求回数の総和に対する各分割ファイルの取得要求回数の比に基づいて、分割ファイルの多重度を最適化する。このため、１つの動画ファイル内における分割ファイルの人気度ではなく、複数の動画ファイルにおける分割ファイルの人気度に応じて、分割ファイルの多重度を最適化することができる。
【００７１】
この発明は上記実施の形態に限定されず、種々の変形及び応用が可能である。例えば、上記説明において、示したハードウェア構成及び動作シーケンスは一例でありこれらに限定されるものではなく、適宜変更及び応用が可能である。
【００７２】
例えば、本実施形態では、各動画ファイルを等分割しているが、動画ファイルのチャプターの開始位置で分割してもよい。これによると、チャプターに対応する分割ファイルの取得要求回数に基づいて、分割ファイルの多重度を最適化できる。このため、例えば、人気タレントのインタービューに対応するチャプターの分割ファイルの多重度を、他のチャプターの多重度より高く自動で設定することが可能となる。
【００７３】
また、本実施形態では、多重度を整数化するためＩＮＴ関数を採用しているが、整数を返す任意の関数を採用してもよい。
【００７４】
さらに、本実施形態では、情報提供サーバ１０、管理サーバ２０を別々の装置構成としたが、これらを１台の装置で置き換えることも可能である。
【００７５】
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
【００７６】
（付記１）情報管理サーバと、端末と、コンテンツを記憶する複数のデータサーバと、を備えたコンテンツ配信システムであって、
前記情報管理サーバは、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、を備え、
前記端末は、
コンテンツを記憶するデータサーバのサーバＩＤの取得を前記情報管理サーバに要求し、該要求に係るサーバＩＤを該情報管理サーバから受信するサーバＩＤ受信手段と、
前記サーバＩＤ受信手段が受信したサーバＩＤに対応するデータサーバに、前記要求に係るコンテンツの取得を要求し、該要求に係るコンテンツを該データサーバから受信するコンテンツ受信手段と、
前記コンテンツ受信手段が受信したコンテンツを再生する再生手段と、を備え、
前記各データサーバは、
コンテンツを記憶するコンテンツ記憶手段と、
前記端末からの要求に応答して、該要求に係るコンテンツを、要求した端末に送信するコンテンツ送信手段と、を備える、
ことを特徴とするコンテンツ配信システム。
【００７７】
（付記２）コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバであって、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信手段と、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数手段と、
前記取得要求計数手段が計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化手段と、
を備えることを特徴とする情報管理サーバ。
【００７８】
（付記３）前記情報管理サーバが、さらに、前記コンテンツを分割するコンテンツ分割手段を備え、
前記コンテンツは、前記コンテンツ分割手段が該コンテンツを分割して得られる分割ファイルである、ことを特徴とする付記２に記載の情報管理サーバ。
【００７９】
（付記４）前記コンテンツ分割手段が、前記コンテンツをチャプター開始位置で分割する、ことを特徴とする付記３に記載の情報管理サーバ。
【００８０】
（付記５）前記コンテンツ多重化手段は、複数のコンテンツをそれぞれ分割して得られる分割ファイルの取得要求回数の総和に対する各分割ファイルの取得要求回数の比に基づいて、該分割ファイルを前記各データサーバに記憶する、ことを特徴とする付記３又は４に記載の情報管理サーバ。
【００８１】
（付記６）コンテンツを記憶する複数のデータサーバ及びコンテンツを再生する端末と通信可能な情報管理サーバを制御するコンピュータに、
前記端末からの要求に応答して、該要求に係るコンテンツを記憶する前記データサーバを識別するサーバＩＤを、要求した端末に送信するサーバＩＤ送信ステップと、
コンテンツごとに前記端末から該コンテンツを取得する要求があった回数を示す取得要求回数を計数する取得要求計数ステップと、
前記計数したコンテンツごとの取得要求回数に基づいて、該コンテンツを前記各データサーバに記憶するコンテンツ多重化ステップと、
を実行させることを特徴とするプログラム。
【００８２】
（付記７）前記プログラムが、さらに、前記コンテンツを分割するコンテンツ分割ステップを備え、
前記コンテンツは、前記分割して得られる分割ファイルである、ことを特徴とする付記６に記載のプログラム。
【００８３】
（付記８）前記コンテンツ分割ステップが、前記コンテンツをチャプター開始位置で分割するステップである、ことを特徴とする付記７に記載のプログラム。
【００８４】
（付記９）前記コンテンツ多重化ステップが、複数のコンテンツをそれぞれ分割して得られる分割ファイルの取得要求回数の総和に対する各分割ファイルの取得要求回数の比に基づいて、該分割ファイルを前記各データサーバに記憶するステップである、ことを特徴とする付記７又は８に記載のプログラム。
【産業上の利用可能性】
【００８５】
この発明は、ＷＷＷサーバ、ＦＴＰサーバなどへ利用が可能である。
【符号の説明】
【００８６】
１０  情報提供サーバ
２０  管理サーバ
３０  端末
４０  データサーバ
５０  通信ネットワーク
５１  動画配信システム
１１０  通信部
１２０  記憶部
１２１  プログラム記憶部
１２２  分割ファイル管理データベース
１２３  取得要求管理データベース
１２４  負荷データベース
１３０  制御部
２１０  通信部
２２０  操作部
２３０  表示部
２４０  記憶部
２４１  プログラム記憶部
２４２  分割ファイル記憶部
２５０  制御部
２５１  タイマ
３１０  通信部
３２０  操作部
３３０  表示部
３４０  記憶部
３４１  プログラム記憶部
３５０  制御部
４１０  通信部
４２０  記憶部
４２１  プログラム記憶部
４２２  分割ファイル記憶部
４３０  制御部
４３１  タイマ
【図１】
2011215928.tif 000003
【図２】
2011215928.tif 000004
【図３】
2011215928.tif 000005
【図４】
2011215928.tif 000006
【図５】
2011215928.tif 000007
【図６】
2011215928.tif 000008
【図７】
2011215928.tif 000009
【図８】
2011215928.tif 000010
【図９】
2011215928.tif 000011
【図１０】
2011215928.tif 000012
【図１１】
2011215928.tif 000013
【図１２】
2011215928.tif 000014
【図１３】
2011215928.tif 000015
【図１４】
2011215928.tif 000016
【図１５】
2011215928.tif 000017
【図１６】
2011215928.tif 000018
【図１７】
2011215928.tif 000019
【図１８】
2011215928.tif 000020
【図１９】
2011215928.tif 000021
【図２０】
2011215928.tif 000022