データ提供装置、データ提供方法、データ提供プログラム、及びデータ提供システム
【課題】ローカルディスクの記憶容量が不足することを防止し、かつ、ネットワークに負荷をかけずにデータを提供する。
【解決手段】ブロック削除処理部b14は、連続したデータを分割したデータブロックであって記憶部b11が記憶するデータブロックを、データブロック各々の提供頻度を示す情報に基づいて選択して削除する。データ提供処理部b15は、記憶部b11が記憶するデータブロックを連続したデータ中での順序に従って提供するとともに、提供するデータブロックが記憶部b11から削除されている場合、ネットワークを介して接続されたストレージサーバD1にバックアップされた当該データブロックをダウンロードして提供する。
【解決手段】ブロック削除処理部b14は、連続したデータを分割したデータブロックであって記憶部b11が記憶するデータブロックを、データブロック各々の提供頻度を示す情報に基づいて選択して削除する。データ提供処理部b15は、記憶部b11が記憶するデータブロックを連続したデータ中での順序に従って提供するとともに、提供するデータブロックが記憶部b11から削除されている場合、ネットワークを介して接続されたストレージサーバD1にバックアップされた当該データブロックをダウンロードして提供する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、データ提供装置、データ提供方法、データ提供プログラム、及びデータ提供システムに関する。
【背景技術】
【0002】
近年、動画、音声、静止画等のコンテンツデータを提供する装置が普及してきている。
ハードディスクレコーダは、テレビ放送信号等を受信して内蔵の大容量ハードディスクに動画のデジタルデータ(コンテンツデータ)として録画し、録画したコンテンツデータの提供を受けた再生部が再生を行う装置である。
また、非特許文献1には、DLNA(Digital Living Network Alliance;登録商標)で策定しているDMS(Digital Media Server)が記載されている。DMSは、動画、音声、静止画等のコンテンツデータをハードディスク等の内蔵の大容量ストレージ(以下、ローカルディスク)に保存し、DMP(Digital Media Player)の要求に応じて提供する装置である。
【0003】
また、インターネットを経由して、動画像をストリーミング映像として配信するストリーミング映像配信方式を適用したシステムが知られている。このシステムでは、サーバが動画等のコンテンツデータをパケットデータに分割して送信し、クライアント装置(例えば、パーソナルコンピュータ)が受信したパケットデータをコンテンツデータとして再生する。また、クライアント装置は、再生したパケットデータを消去する。これにより、クライアント装置は、少ない空き容量で動画データを再生することができる。
また、ストリーミング映像配信方式のように、ネットワークを介してコンテンツデータを受信して提供する技術として、特許文献1、2の技術が知られている。
【0004】
特許文献1には、コンテンツダウンロードにおいて、音楽、映像等のコンテンツデータを時間軸方向に沿って分割し、視聴者の要求に応じて転送順序の動的な変更を行うコンテンツデータ転送システムが記載されている。
【0005】
また、特許文献2には、PDAや携帯電話等のメモリ容量が比較的小さい情報端末であり、情報端末からサーバへコンテンツをアップロードし、情報端末がダウンロードする際に空き容量が不足した場合にアップロード済みのコンテンツ一覧を表示して選択されたコンテンツをメモリから削除し、ゲーム等の連続性のあるコンテンツについての進捗状況を管理する情報端末が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2003−22232号公報
【特許文献2】特開2004−178353号公報
【非特許文献】
【0007】
【非特許文献1】“DLNA Overview and Vision Whitepaper 2007”、[online]、Digital Living Network Alliance(登録商標)、[2009年5月15日検索]、インターネット<http://www。dlna.org/news/DLNA_white_paper.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、従来のハードディスクレコーダやDMSでは、コンテンツデータ単位で記録及び提供を行うので、新規にコンテンツデータを登録する際、ローカルディスクに登録するコンテンツデータと同等の空き容量を必要とする。よって、これらの装置では、ローカルディスクの空き容量が足りなくなった場合、新規のコンテンツデータを登録して提供することができないという欠点があった。
一方、従来のストリーミング映像配信方式では、クライアント装置が再生したコンテンツデータをすべて消去するので、コンテンツデータの提供要求があるたびに、コンテンツデータをダウンロードしなければならない。よって、この方式では、同じコンテンツデータを再度提供するときに、ネットワークに負荷をかけ、また、コンテンツデータの提供開始までに、時間がかかるという欠点があった。
【0009】
また、特許文献1記載の技術では、受信側にダウンロードした後のコンテンツデータを削除しておらず、受信側のローカルディスクの空き容量が足りなくなるという欠点があった。また、仮に、受信側で提供したコンテンツデータを消去している場合、ストリーミング映像配信方式と同様に、ネットワークに負荷をかけ、また、コンテンツデータの提供開始までに、時間がかかるという欠点があった。
また、特許文献2記載の技術では、アップロードしたコンテンツデータをダウンロードする時に、ハードディスクレコーダやDMSと同様に、ローカルディスクの空き容量が足りなくなるという欠点があった。例えば、特許文献2記載の技術では、利用者が情報端末のローカルディスクのデータをアップロードしてデータを削除する操作を行い、ダウンロードするコンテンツデータの容量の空き容量を確保することが考えられる。しかし、利用者が常にコンテンツの所在やディスクの空き容量を意識し、空き容量の計算等をして操作をしなければならないという煩わしさがあった。
このように、上記の従来技術では、コンテンツデータを提供する場合に、ローカルディスクの記憶容量が不足するという欠点、又は、ネットワークに負荷がかかるという欠点があった。
【0010】
本発明は上記の点に鑑みてなされたものであり、その目的は、ローカルディスクの記憶容量が不足することを防止し、かつ、ネットワークに負荷をかけずにデータを提供することができるデータ提供装置、データ提供方法、データ提供プログラム、及びデータ提供システムを提供することにある。
【課題を解決するための手段】
【0011】
(1)本発明は上記の課題を解決するためになされたものであり、本発明は、連続したデータを提供するデータ提供装置において、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理部と、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理部と、を備えることを特徴とするデータ提供装置である。
上記構成によると、データ提供装置は、前記データブロックをデータブロック各々の提供頻度を示す情報に基づいて選択して削除し、提供するデータブロックが削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するので、例えば、提供頻度が低いデータブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、データ提供装置は、提供頻度が高いデータブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。また、ネットワーク障害等によって記憶装置と通信ができない場合であっても、例えば、記憶部が記憶する提供頻度が高いデータブロックを提供することができる。また、データ提供装置は、連続したデータを分割したデータブロックをダウンロードするので、連続したデータをダウンロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0012】
(2)また、本発明は、上記のデータ提供装置において、前記連続したデータを分割してデータブロックを生成するブロック分割部と、前記ブロック分割部が生成したデータブロックを前記記憶装置にバックアップするバックアップ部と、を備えることを特徴とする。
上記構成によると、データ提供装置は、前記連続したデータを分割してデータブロックを生成し、生成したデータブロックを前記記憶装置にバックアップするので、連続したデータをアップロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0013】
(3)また、本発明は、上記のデータ提供装置において、前記データ提供処理部が提供したデータを再生するデータ再生部を備えることを特徴とする。
【0014】
(4)また、本発明は、上記のデータ提供装置において、前記ブロック削除処理部は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除することを特徴とする。
上記構成によると、データ提供装置は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除するので、利用者が常にコンテンツの所在やディスクの空き容量を意識して空き容量の計算等をして操作をすることなく、ローカルディスクの記憶容量が不足することを防止することができる。
【0015】
(5)また、本発明は、上記のデータ提供装置において、前記データブロック各々の提供頻度を示す情報は、前記連続したデータ中でのデータブロックの順序を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、一般的に連続したデータは先頭から順に提供されるため、順序が遅く提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の記憶領域の空き容量を確保することができる。逆に、データ提供装置は、順序が早く提供頻度が高いデータブロックの連続したデータを、記憶部から提供することができ、迅速に連続したデータを提供することができる。
【0016】
(6)また、本発明は、上記のデータ提供装置において、マークを付与することを示す情報が入力されると、提供中のデータの位置を示すマーク情報をマークテーブルに記憶するマーク付与部を備え、前記データブロック各々の提供頻度を示す情報は、前記データブロックに含まれるデータ区間における前記マークテーブルが記憶するマーク情報の数を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、マークを付された数が少なく提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の記憶領域の空き容量を確保することができる。逆に、データ提供装置は、マークを付された数が多く提供頻度が高いデータブロックの連続したデータを、データ提供装置の記憶部b11から提供することができ、迅速に連続したデータを提供することができる。
【0017】
(7)また、本発明は、上記のデータ提供装置において、前記データブロックの提供頻度を示す情報は、前記データブロック各々の提供回数を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、提供回数の実績が少なく提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の空き容量を確保することができる。逆に、データ提供装置は、提供回数の実績が多く提供頻度が高いデータブロックの連続したデータを、データ提供装置の記憶部から提供することができ、迅速にデータブロックを提供することができる。
【0018】
(8)また、本発明は、連続したデータを提供するデータ提供装置におけるデータ提供方法において、前記データ提供装置が、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除する第1の過程と、前記データ提供装置が、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供する第2の過程と、を有することを特徴とするデータ提供方法である。
【0019】
(9)また、本発明は、連続したデータを提供するデータ提供装置のコンピュータを
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理手段、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理手段、として機能させるデータ提供プログラムである。
【0020】
(10)また、本発明は、連続したデータを提供するデータ提供装置と、前記データ提供装置から提供されたデータを再生するデータ再生装置と、を具備するデータ提供システムにおいて、前記データ提供装置は、前記連続したデータを分割したデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択し、記憶部から削除するブロック削除処理部と、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックを、ダウンロードして提供するデータ提供処理部と、を備え、前記再生装置は、前記データ提供装置が提供したデータを再生するデータ再生部を備えることを特徴とするデータ提供システムである。
【発明の効果】
【0021】
本発明によれば、データ提供装置は、提供頻度が低いデータブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、データ提供装置は、提供頻度が高いデータブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施形態に係るデータ提供システムの概念図である。
【図2】本実施形態に係るNWメディアサーバが記憶するコンテンツブロックの一例を示す概念図である。
【図3】本実施形態に係るNWメディアサーバが行うブロック登録処理を示す概略図である。
【図4】本実施形態に係るNWメディアサーバが行うマーク付与処理を示す概略図である。
【図5】本実施形態に係るNWメディアサーバが行うブロック削除処理を示す概略図である。
【図6】本実施形態に係るNWメディアサーバが行うコンテンツ再生処理を示す概略図である。
【図7】本実施形態に係るデータ提供システムが具備する装置の構成を示す概略ブロック図である。
【図8】本実施形態に係る別のデータ提供システムが具備する装置の構成を示す概略ブロック図である。
【図9】本実施形態に係るコンテンツ登録処理部の構成を示す概略ブロック図である。
【図10】本実施形態に係るブロック削除処理部の構成を示す概略ブロック図である。
【図11】本実施形態に係るコンテンツ提供処理部の構成を示す概略ブロック図である。
【図12】本実施形態に係るコンテンツ管理情報記憶部が記憶するテーブルとそれらの関係を示す概念図である。
【図13】本実施形態に係るマークポイントテーブルの一例を示す概略図である。
【図14】本実施形態に係るコンテンツデータ登録処理の動作の一例を示すフロー図である。
【図15】本実施形態に係るコンテンツブロック生成処理の動作の一例を示すフロー図である。
【図16】本実施形態に係るバックアップ処理の動作の一例を示すフロー図である。
【図17】本実施形態に係るマーク付与処理の動作の一例を示すシークエンス図である。
【図18】本実施形態に係るタグ情報の入力処理の動作の一例を示すシークエンス図である。
【図19】本実施形態に係るバイト位置と提供位置との関係を示す概念図である。
【図20】本実施形態に係るブロック削除処理の動作の一例を示すフロー図である。
【図21】本実施形態に係る視聴ポイント計算処理の動作の一例を示すフロー図である。
【図22】本実施形態に係るブロック取得処理の動作の一例を示すフロー図である。
【図23】本実施形態の変形例1に係るコンテンツ管理情報記憶部が記憶するテーブルとそれらの関係を示す概念図である。
【図24】本実施形態の変形例2に係るコンテンツブロックの管理方法を示す概念図である。
【発明を実施するための形態】
【0023】
(実施形態)
以下、図面を参照しながら本発明の実施形態について詳しく説明する。図1は、本発明の実施形態に係るデータ提供システムの概念図である。なお、この図は、DMS(Digital Media Server)B1を用いたデータ提供システム1と、ハードディスクレコーダB2を用いたデータ提供システム2と、の2つのデータ提供システムを示す。なお、本発明は、データ提供システム1、2のどちらの構成であってもよい。
【0024】
データ提供システム1は、テレビA11、PC(Personal Computer)A12、DMP(Digital Media Player)A13、DMS B1(データ提供装置)、及びストレージサーバD1(記憶装置)を具備する。DMS B1は、ダウンロード等によって取得したコンテンツデータ(連続したデータ)をコンテンツブロック(データブロック)に分割して記憶する。なお、コンテンツブロックのデータ量(データ長という)は、固定(例えば、4194304バイトのデータ)であってもよいし可変であってもよい。本実施形態では、可変の場合の構成について説明をする。
また、DMS B1は、記憶したコンテンツブロックをコンテンツデータ中での順序に従ってDMP A13に提供する。DMP A13は、提供されたデータを再生してテレビA11に表示し、また、音声出力する。また、DMS B1は、記憶したコンテンツブロックを、ネットワークC1を介して接続されたストレージサーバD1にアップロードしてバックアップする。また、PC A12は、DMP A13及びDMS B1にLAN等のネットワークを介して接続され、利用者は、PC A12の操作によってDMP A13及びDMS B1を制御する。
【0025】
データ提供システム2は、テレビA21、リモコンA22、ハードディスクレコーダB2(データ提供装置)、及びストレージサーバD1を具備する。ハードディスクレコーダB2は、録画等によって取得したコンテンツデータをコンテンツブロックに分割して記憶する。また、ハードディスクレコーダB2は、記憶したコンテンツブロックをコンテンツデータ中での順序に従って再生部に提供する。ハードディスクレコーダB2の再生部は、提供されたデータを再生してテレビA21に表示する。また、ハードディスクレコーダB2は、記憶したコンテンツブロックを、ネットワークC1を介して接続されたストレージサーバD1にアップロードしてバックアップする。また、リモコンA22は赤外線通信を行い、利用者は、リモコンA22の操作によってハードディスクレコーダB2を制御する。
【0026】
本実施形態では、DMS B1及びハードディスクレコーダB2は、コンテンツブロックを視聴ポイントP(データブロック各々の提供頻度を示す情報)に基づいて削除する。また、DMS B1及びハードディスクレコーダB2は、DMP A13又は自装置のコンテンツ再生部に提供するコンテンツブロックが削除されている場合、ストレージサーバD1からコンテンツブロックをダウンロードして提供する。
以下、DMS B1及びハードディスクレコーダB2を、それぞれ、NW(ネットワーク)メディアサーバb1、b2という。
【0027】
図2は、本実施形態に係るNWメディアサーバb1が記憶するコンテンツブロックの一例を示す概念図である。この図において、コンテンツブロックI1〜I6は、動画、音声等のコンテンツIのコンテンツデータ(コンテンツデータIという)を分割したコンテンツブロックを示す。以下、コンテンツIでの再生時間が早い順に、コンテンツブロックI1、I2、・・・、I6とする。また、コンテンツブロックJ1〜J5、K1〜K7は、それぞれ、コンテンツJ、Kのコンテンツブロックを示す。なお、全てのコンテンツブロック1〜I6、J1〜J5、K1〜K7は、ストレージサーバD1に送信され、バックアップされている。
また、図2において、実線で示したコンテンツブロック(ハッチングしたコンテンツブロック、例えば、コンテンツブロックI1)は、NWメディアサーバb1に記憶されていることを示す。一方、点線で示したコンテンツブロック(例えば、コンテンツブロックI3)は、NWメディアサーバb1から削除されていることを示す。
【0028】
<メディアサーバb1が行う処理について>
以下、図3〜6を用いて、NWメディアサーバb1が行う処理の概略を説明する。
図3は、本実施形態に係るNWメディアサーバb1が行うブロック登録処理を示す概略図である。この図において、NWメディアサーバb1には、ダウンロード等によってコンテンツデータIが記憶される。NWメディアサーバb1は、コンテンツデータIを検知すると、検知したコンテンツデータIを分割してコンテンツブロックI1〜I6を生成し、記憶部b11に記憶する。なお、このときコンテンツデータIは削除される。
NWメディアサーバb1は、記憶部b11に記憶したコンテンツブロックI1〜I6をストレージサーバD1に送信する。ストレージサーバD1は、受信したコンテンツブロックI1〜I6をバックアップ記憶部d11に記憶する。
【0029】
図4は、本実施形態に係るNWメディアサーバb1が行うマーク付与処理を示す概略図である。ここで、マークとは、利用者等によって特定の再生箇所(提供位置)に付される指標である。NWメディアサーバb1は、マークが付されたデータの位置を示すマーク情報を記憶する。NWメディアサーバb1は、マーク情報が利用者等によって選択されると、マーク情報が示すデータの位置からコンテンツデータの提供を開始する。なお、NWメディアサーバb1は、マーク情報が示すデータの位置から予め設定されたサイズ(または秒数)分を遡った位置からコンテンツデータの提供を開始してもよい。
図4において、NWメディアサーバb1は、コンテンツブロックI1〜I6をコンテンツブロックIでの順序に従って提供し、DMP A13は、NWメディアサーバb1から提供されたデータを再生してテレビA11に表示させる。利用者は、PC A12を操作してマークを付する再生箇所を選択する。NWメディアサーバb1は、選択された再生箇所に対応するデータの位置を示すマーク情報を記憶する。なお、NWメディアサーバb2の場合、利用者は、リモコンA22を操作してマークを付する。
【0030】
図5は、本実施形態に係るNWメディアサーバb1が行うブロック削除処理を示す概略図である。この図において、NWメディアサーバb1は、後述する視聴ポイントPを計算し、視聴ポイントPが低いコンテンツブロックを削除する。例えば、この図において、NWメディアサーバb1は、付されたマークの数が少ないコンテンツブロックI3、I5、I6を削除する。
【0031】
図6は、本実施形態に係るNWメディアサーバb1が行うコンテンツ再生処理を示す概略図である。この図において、NWメディアサーバb1は、コンテンツブロックI1〜I6をコンテンツデータI中での順序(I1、I2、I3・・・)に従ってDMP A13に提供する。DMP A13は、提供されたデータを再生し、再生したデータの動画をテレビA11に表示させる。NWメディアサーバb1は、提供中のコンテンツブロックからn個後までのコンテンツブロック(提供準備ブロックという)が削除されている場合、提供準備ブロックをストレージサーバD1からダウンロードする。例えば、図6は、n=3の場合の図である。この図は、NWメディアサーバb1が、コンテンツブロックI1を提供しているとき、提供準備ブロック(コンテンツブロックI2〜I4)が記憶部b11に記憶されているか否かを判定し、記憶部b11に記憶されていないと判定したコンテンツブロックI3を、ストレージサーバD1からダウンロードしていることを示す。
【0032】
<データ提供システム1、2の構成について>
図7は、本実施形態に係るデータ提供システム1が具備する装置の構成を示す概略ブロック図である。この図において、テレビA11は表示部a11を、DMP A13はコンテンツ再生部a12と入力受付部a13とを、PC A12は入力部a14を、含んで備える。また、NWメディアサーバは、記憶部b11、コンテンツ登録部b12、ブロック登録処理部b13、及びブロック削除処理部b14を含んで備える。また、ストレージサーバD1は、バックアップ記憶部d11を含んで備える。
【0033】
テレビA11の表示部a11は、DMP A13のコンテンツ再生部a12が再生したコンテンツを表示する。DMP A13のコンテンツ再生部a12は、NWメディアサーバb1から提供されたデータを再生する。入力受付部a13は、PC A12の入力部a14でマークを付与することを示すキーが押下されたことを受け付け、マークを付することを示すマーク付与情報をNWメディアサーバb1に出力する。
【0034】
NWメディアサーバb1のコンテンツ登録部b12は、録画やダウンロード等によって取得したコンテンツデータを記憶部b11に記憶する。
ブロック登録処理部b13は、記憶部b11から読み出したコンテンツデータを分割してコンテンツブロックを生成する。ブロック登録処理部b13は、生成したコンテンツブロックを記憶部b11に記憶し、また、ストレージサーバD1のバックアップ記憶部d11にバックアップする。ブロック登録処理部b13の詳細については、後述する。
ブロック削除処理部b14は、後術する視聴ポイントPに基づいて、記憶部b11が記憶するコンテンツブロックを選択して削除する。ブロック削除処理部b14の詳細については、後述する。
コンテンツ提供処理部b15は、記憶部b11が記憶するコンテンツブロックをコンテンツデータ中での順序に従ってDMP A13に提供する。ここで、コンテンツ提供処理部b15は、提供するコンテンツブロックが記憶部b11から削除されている場合、ストレージサーバD1のバックアップ記憶部d11にバックアップされた当該コンテンツブロックを、ダウンロードして提供する。コンテンツ提供処理部b15の詳細については、後述する。
【0035】
図8は、本実施形態に係る別のデータ提供システム2が具備する装置の構成を示す概略ブロック図である。データ提供システム2(図8)とデータ提供システム1(図7)とを比較すると、図8には図7中のDMP A13がなく、NWメディアサーバb2が、図7中のDMP A13が備えるコンテンツ再生部a12及び入力受付部a13を備える。しかし、各部が持つ機能は、データ提供システム1と同じであるので、説明は省略する。
なお、図8において、コンテンツ提供処理部b15は、記憶部b11が記憶するコンテンツブロックをコンテンツデータ中での順序に従ってコンテンツ再生部a12に提供する。
【0036】
<NWメディアサーバb1、2の各部の構成について>
以下、NWメディアサーバb1のブロック登録処理部b13、ブロック削除処理部b14、及びコンテンツ提供処理部b15の詳細について説明をする。
【0037】
図9は、本実施形態に係るコンテンツ登録処理部b13の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツデータ記憶部b111、コンテンツ管理情報記憶部b112、及びコンテンツブロック記憶部b113を含んで備える。また、コンテンツ登録処理部b13は、コンテンツデータ検知部b131、ブロック分割部b132、及びバックアップ部b133を含んで備える。
【0038】
コンテンツデータ記憶部b111は、コンテンツ登録部b12から入力されたコンテンツデータを記憶する。また、コンテンツ管理情報記憶部b112は、コンテンツブロック等の情報を管理する各種テーブル(図12参照)を記憶する。
コンテンツデータ検知部b131は、定期的に、コンテンツデータ記憶部b111内を検索し、コンテンツデータが記憶されているか否かを判定する。判定の結果、新たなコンテンツデータが記憶されている場合、コンテンツデータ検知部b131は、コンテンツデータを抽出してブロック分割部b132に出力する。
ブロック分割部b132は、コンテンツデータ検知部b131から入力されたコンテンツデータを分割してコンテンツブロックを生成し、生成したコンテンツブロックをコンテンツブロック記憶部b113に記憶する。また、ブロック分割部b132は、コンテンツブロックに分割したコンテンツデータをコンテンツデータ記憶部b111から削除する。また、ブロック分割部b132は、生成したコンテンツブロックの情報を生成し、コンテンツ管理情報記憶部b112が記憶するテーブルを更新する。
【0039】
バックアップ部b133は、定期的に、コンテンツ管理情報記憶部b112のテーブルを検索し、ストレージサーバD1にアップロードしていないコンテンツブロック、つまり、バックアップをしていないコンテンツブロックがあるか否かを判定する。バックアップをしていないコンテンツブロックがある場合、バックアップ部b133は、そのコンテンツブロックをコンテンツブロック記憶部b113から読み出してストレージサーバD1に送信する。ストレージサーバD1に送信されたコンテンツブロックは、バックアップ記憶部d11に記憶される。また、バックアップ部b133は、コンテンツブロックのバックアップが完了すると、バックアップ済みであることを示す情報をコンテンツ管理情報記憶部b112のテーブルに登録する。
【0040】
図10は、本実施形態に係るブロック削除処理部b14の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツ管理情報記憶部b112及びコンテンツブロック記憶部b113を含んで備える。また、ブロック削除処理部b14は、空き容量検出部b141、視聴ポイント計算部b142、及びブロック削除部b143を含んで備える。
【0041】
空き容量検出部b141は、記憶部b11の記憶領域の空き容量を検出する。検出した空き容量が予め定めた閾値以下になった場合、空き容量検出部b141は、空き容量が不足していることを示す情報を視聴ポイント計算部b142に出力する。
視聴ポイント計算部b142は、コンテンツ管理情報記憶部b112が記憶するテーブルを読み出し、コンテンツデータの登録日、コンテンツデータ中でのコンテンツブロックの順序、コンテンツブロックの提供頻度、マーク情報のポイント合算値、及びお気に入りランクの合算値のいずれか又はその組み合わせに基づいて、コンテンツブロック毎に視聴ポイントPを計算する。なお、視聴ポイント計算部b142が行う視聴ポイントPの計算処理の詳細については、後述する。視聴ポイント計算部b142は計算した視聴ポイントPをブロック削除部b143に出力する。
ブロック削除部b143は、視聴ポイント計算部b142から入力された視聴ポイントPの値が低いブロックコンテンツを削除する。ブロック削除部b143は、コンテンツブロックを削除した場合、記憶部b11にそのコンテンツブロックがないことを示す情報を、コンテンツブロック記憶部b113に登録する。
【0042】
図11は、本実施形態に係るコンテンツ提供処理部b15の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツ管理情報記憶部b112及びコンテンツブロック記憶部b113を含んで備える。また、コンテンツ提供処理部b15は、コンテンツ提供部b151、ブロック取得部b152、及びマーク付与部b153を含んで備える。
【0043】
コンテンツ提供部b151は、コンテンツデータの提供要求がDMP A13から入力されると、コンテンツ管理情報記憶部b112が記憶するテーブルに基づいて、提供要求があったコンテンツデータのコンテンツブロックを提供順に、コンテンツブロック記憶部b113から読み出す。コンテンツ提供部b151は、読み出したコンテンツブロックをDMP A13のコンテンツ再生部a12(図7参照)に提供する。また、コンテンツ提供部b151は、コンテンツブロックの提供をしているとき、データを提供中であることを示す情報をコンテンツ管理情報記憶部b112に登録する。
【0044】
ブロック取得部b152は、定期的に、コンテンツ管理情報記憶部b112のテーブルを検索し、コンテンツ提供部b151がデータを提供中であるか否かを判定する。データを提供中であると判定した場合、ブロック取得部b152は、提供準備ブロックが削除されているか否かを判定し、削除されている場合、提供準備ブロックをストレージサーバD1のバックアップ記憶部d11(図7参照)からダウンロードする。ブロック取得部b152は、ダウンロードした提供準備ブロックをコンテンツブロック記憶部b113に記憶し、記憶部b11にそのコンテンツブロックがあることを示す情報を、コンテンツブロック記憶部b113に登録する。
マーク付与部b153は、入力受付部a13からマーク付与情報が入力されると、コンテンツ提供部b151がそのとき提供中のデータの位置を示すマーク情報をコンテンツ管理情報記憶部b112に記憶する。また、マーク付与部b153は、入力受付部a13からタグ情報が入力されると、タグ情報をコンテンツ管理情報記憶部b112に記憶する。
【0045】
<コンテンツ管理情報について>
以下、コンテンツ管理情報記憶部b112が記憶するテーブルについて説明をする。
図12は、本実施形態に係るコンテンツ管理情報記憶部b112が記憶するテーブルとそれらの関係を示す概念図である。
コンテンツ管理情報記憶部b112は、コンテンツブロックテーブルT1、提供ログテーブルT2、コンテンツテーブルT3、提供コンテンツテーブルT4、マークテーブルT4、タグ情報テーブルT5、及びマークポイントテーブルT6を記憶する。これらのテーブルT1〜T6は、リレーショナル形式のデータベースにより管理されている。なお、E1を付した鎖線で囲まれた記号はテーブル間の関係を示し、コンテンツブロックテーブルT1と提供ログテーブルT2とが、1対多であることを示す。同様に、図12は、コンテンツテーブルT3とコンテンツブロックテーブルT1、コンテンツテーブルT3と提供コンテンツテーブルT4、コンテンツテーブルT3とマークテーブルT4、コンテンツテーブルT3とタグ情報テーブルT5、はそれぞれ1対多であることを示す。
【0046】
コンテンツブロックテーブルT1は、コンテンツID、ブロック番号、アップロード済状態、ローカル有無、コンテンツデータ位置、コンテンツブロック長、及び視聴ポイントの各項目を有している。
ここで、コンテンツIDはコンテンツデータの識別情報である。例えば、この項目の値は、「I」、「J」、又は「K」である。また、ブロック番号はコンテンツブロックの識別情報であり、コンテンツデータ中でのコンテンツブロックの順序を示す情報である。例えば、この項目の値は、「1」、「2」、・・・、「6」であり、コンテンツデータ中でのコンテンツブロックの順序を示す。
アップロード済状態は、アップロード済みか否か、つまり、コンテンツブロックのバックアップが完了したか否かを示す情報である。例えば、この項目の値は、バックアップが完了していないことを示す「未アップロード」、又はバックアップが完了したことを示す「アップロード済み」のいずれかである。ローカル有無は、コンテンツブロックが記憶部b11のコンテンツブロック記憶部b113にあるか否かを示す情報である。例えば、この項目の値は、コンテンツブロックがコンテンツブロック記憶部b113にあることを示す「あり」、又はコンテンツブロックがコンテンツブロック記憶部b113にないことを示す「なし」である。
【0047】
コンテンツデータ位置は、コンテンツデータ中でのコンテンツブロックの位置を示す情報である。この項目の値は、コンテンツブロックの先頭バイトについてのコンテンツデータ中での位置情報(バイト数)である。コンテンツブロック長は、コンテンツブロックのデータ長を示す情報である。視聴ポイントは、視聴ポイント計算部b142が計算した視聴ポイントPである。なお、このコンテンツブロックテーブルT1の主キーは、コンテンツID及びブロック番号である。また、コンテンツID及びブロック番号とコンテンツブロックの記憶場所を示す情報(パス、ファイル名)とは対応付けて記憶されている。NWメディアサーバb1の各部は、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号と、パス及びファイル名との変換を行う。
【0048】
提供ログテーブルT2は、コンテンツID、ブロック番号、及び年月日の各項目を有している。コンテンツID、ブロック番号は、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
年月日は、コンテンツブロックを提供した年月日を示す情報である。なお、この提供ログテーブルT2の主キーは、コンテンツID、ブロック番号である。なお、年月日は時刻を含んでもよい。
【0049】
コンテンツテーブルT3は、コンテンツID、リソースパス、ファイル名、コンテンツ名、ファイルサイズ、コンテンツブロック数、コンテンツタイプ、登録日、及びバックアップ可否の各項目を有している。コンテンツIDは、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
リソースパスは、コンテンツデータを記憶するフォルダ名である。ファイル名は、コンテンツデータのファイル名である。コンテンツ名は、コンテンツデータのコンテンツ名である。ファイルサイズは、コンテンツデータのファイルのデータ量を示す情報である。コンテンツブロック数は、コンテンツデータから分割したコンテンツブロックの総数を示す情報である。コンテンツタイプは、コンテンツデータの種類を示す情報である。例えば、この項目の値は、「写真」、「動画」、「音声」である。登録日は、コンテンツデータを記憶部b11に記憶した日を示す情報である。バックアップ可否は、コンテンツブロックのバックアップを許可するか否かを示す情報であり、例えば、コンテンツデータの登録時に利用者等が選択する情報である。この項目の値は、バックアップを許可することを示す「可」、又はバックアップを許可しないことを示す「否」である。
【0050】
提供コンテンツテーブルT4は、IPアドレス、コンテンツID、ブロック番号、バイト位置、及び提供位置の各項目を有している。コンテンツID及びブロック番号は、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
IPアドレスは、コンテンツデータの提供を受けている装置の識別情報であり、その装置のIPアドレスである。例えば、図1中のデータ提供システム1の場合はDMP A13のIPアドレスである。本実施形態では、IPアドレスを装置の識別情報としているが、本発明はこれに限らず、装置に予め登録された識別情報(例えば、MAC(Media Access Control address)アドレス、又はホスト名)であってもよく、提供コンテンツテーブルT4のIPアドレスに代えてこの識別情報を用いてもよい。
バイト位置は、提供中のデータの位置であってコンテンツブロックの先頭データからの位置を示す情報であり、バイト数で表わされる。提供位置は、提供中のデータ位置であってコンテンツデータの先頭からの位置を示す情報であり、バイト数で表わされる。つまり、バイト位置はコンテンツブロック内の相対値であり、提供位置はコンテンツデータ中の絶対位置を示す情報である。なお、バイト位置と提供位置との関係については、後述する。
【0051】
マークテーブルT4は、マークID、コンテンツID、ブロック番号、バイト位置、及びマーク名の各項目を有している。コンテンツID、ブロック番号、及びバイト位置は、上記のコンテンツブロックテーブルT4のものと同じであるので、説明は省略する。
マークIDは、マークの識別情報である。マーク名は、マークを付した箇所のコンテンツに対して利用者が選択した評価を示す情報である。例えば、この項目の値は、「とても面白い」、「面白い」、「面白くない」である。
【0052】
タグ情報テーブルT5は、コンテンツID、タグ名、及びタグ値の各項目を有している。コンテンツIDは、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。タグ名は、コンテンツに対する付加情報であるタグの種類の識別情報である。例えば、この項目の値は、「お気に入りランク」である。タグ値は、タグ名が示す情報の値である。例えば、タグ名が「お気に入りランク」の場合、タグ値は、「1ランク」、「2ランク」・・・「5ランク」の5段階の値である。
マークポイントテーブルT6は、マーク名及びマークポイントの各項目を有している。マーク名は、上記のコンテンツブロックテーブルT4のものと同じであるので、説明は省略する。マークポイントは、マーク名に対する評価の数値を示す。
【0053】
図13は、本実施形態に係るマークポイントテーブルT6の一例を示す概略図である。この図において、マークポイントテーブルT6は、マーク名及びマークポイントの各項目を有している。例えば、図13では、マーク名「とても面白い」はポイント「+3」であり、「面白い」はポイント「+2」であり、「面白くない」はポイント「−1」である。
【0054】
<データ提供システム1の動作について>
以下、データ提供システム1の動作について、図14〜図21を用いて説明をする。
【0055】
図14は、本実施形態に係るコンテンツデータ登録処理の動作の一例を示すフロー図である。
(ステップS101)コンテンツ登録部b12は、コンテンツデータをコンテンツ記憶部b111に記憶する。その後、ステップS102に進む。
(ステップS102)コンテンツ登録部b12は、コンテンツ管理情報記憶部b112のコンテンツテーブルT3にレコードを追加する。具体的には、コンテンツ登録部b12は、コンテンツIDが払い出したコンテンツID、リソースパスがステップS101にてコンテンツデータを記憶したフォルダ名、ファイル名がコンテンツデータのファイル名のレコードを生成する。コンテンツ登録部b12は、生成したレコードに、ファイルサイズ、コンテンツタイプ、登録日、バックアップ可否を追加し、情報を追加したレコードをコンテンツテーブルT3に追加する。
【0056】
図15は、本実施形態に係るコンテンツブロック生成処理の動作の一例を示すフロー図である。
(ステップS201)コンテンツデータ検知部b131は、時間Tsが経過したか否かを判定する。時間Tsが経過したと判定した場合(Yes)、ステップS202に進む。一方、時間Tsが経過していないと判定した場合(No)、ステップS201をくり返す。
(ステップS202)コンテンツデータ検知部b131は、コンテンツデータ記憶部b111内を検索してコンテンツデータが記憶されているか否かを判定することで、コンテンツブロックに分割されていないコンテンツデータ(新規コンテンツデータという)が記憶されているか否かを判定する。新規コンテンツデータが記憶されている場合(Yes)、ステップS203に進む。一方、新規コンテンツデータが記憶されていなかった場合(No)、ステップS201に戻る。
(ステップS203)ブロック分割部b132は、ステップS202で記憶されていると判定した新規コンテンツデータをコンテンツブロックに分割し、コンテンツブロック記憶部b113に記憶する。その後、ステップS204に進む。
【0057】
(ステップS204)ブロック分割部b132は、コンテンツ管理情報記憶部b112のコンテンツブロックテーブルT1及びコンテンツテーブルT3を更新する。具体的には、ブロック分割部b132は、新規コンテンツデータのリソースパス及びファイル名を検索キーにして、コンテンツテーブルT3から新規コンテンツデータのコンテンツIDを読み出す。ブロック分割部b132は、ステップS203にて分割したコンテンツブロックに対して、新規コンテンツデータ中でのコンテンツブロックの順(再生される時間順)に通番を払出す。ブロック分割部b132は、コンテンツブロック各々に対応するレコードをコンテンツブロックテーブルT1に追加する。ブロック分割部b132は、コンテンツIDが読み出したコンテンツID、ブロック番号が払い出したブロック番号、アップロード済状態がバックアップが完了していないことを示す「未アップロード」、ローカル有無がコンテンツブロックがコンテンツブロック記憶部b113にあることを示す「あり」のレコードを生成する。ブロック分割部b132は、生成したレコードにコンテンツデータ位置及びコンテンツブロック長を追加する。ブロック分割部b132は、情報を追加したレコードをコンテンツブロックテーブルT1に追加する。また、ブロック分割部b132は、コンテンツテーブルT3のコンテンツブロック数にコンテンツデータから分割したコンテンツブロックの総数を書き込む。その後、ステップS205に進む。
【0058】
(ステップS205)ブロック分割部b132は、ステップS203にてコンテンツブロックに分割した新規コンテンツデータをコンテンツデータ記憶部b111から削除する。その後、ステップS206に進む。
(ステップ206)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS201に戻る。
【0059】
図16は、本実施形態に係るバックアップ処理の動作の一例を示すフロー図である。
(ステップS301)バックアップ部b133は、時間Tuが経過したか否かを判定する。時間Tuが経過したと判定した場合(Yes)、ステップS302に進む。一方、時間Tuが経過していないと判定した場合(No)、ステップS301をくり返す。
(ステップS302)バックアップ部b133は、コンテンツ管理情報記憶部b112のコンテンツブロックテーブルT1でアップロード済状態が「未アップロード」のレコードがあるか否かを判定する。「未アップロード」のレコードがある場合(Yes)、ステップS303に進む。一方、「未アップロード」のレコードがない場合(No)、ステップS307に進む。
【0060】
(ステップS303)バックアップ部b133は、ステップS302で未アップロードと判定したコンテンツブロックがバックアップを許可されているか否かを判定する。具体的には、バックアップ部b133は、ステップS302で判定した「未アップロード」のレコードのコンテンツIDを読み出し、読み出したコンテンツIDを検索キーとして、コンテンツテーブルT3のバックアップ可否を読み出す。読み出したバックアップ可否の値が「可」である場合(Yes)、ステップS304に進む。一方、バックアップ可否の値が「否」である場合(No)、ステップS307に進む。
(ステップS304)バックアップ部b133は、提供コンテンツテーブルT4にレコードが存在するか否か、つまり、コンテンツデータをコンテンツ提供処理部b15が提供中であるか否かを判定する。コンテンツデータを提供中であると判定した場合(Yes)、ステップS307に進む。これにより、コンテンツデータを提供中に、CPUやネットワークに負荷をかけてデータの提供を阻害することを防止することができる。一方、コンテンツデータを提供中でないと判定した場合(No)、ステップS305に進む。
【0061】
(ステップS305)バックアップ部b133は、ステップS304でコンテンツデータを提供中でないと判定したレコードのコンテンツブロックを、ストレージサーバD1のバックアップ記憶部b11にバックアップする。その後、ステップS306に進む。
(ステップS306)バックアップ部b133は、ステップS305でバックアップしたコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを抽出し、抽出したレコードのアップロード済状態を「アップロード済み」に更新する。その後、ステップS307に進む。
(ステップS307)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS301に戻る。
なお、図16の動作において、ステップS304の処理を省略し、ステップS303で読み出したバックアップ可否の値が「可」である場合(Yes)にステップS305に進んでもよい。このような構成は、CPUが高性能である場合やネットワークがブロードバンドネットワークである場合など、負荷よりもコンテンツブロックのアップロードを優先する場合に好適である。
【0062】
図17は、本実施形態に係るマーク付与処理の動作の一例を示すシークエンス図である。
(ステップS401)DMP A13のコンテンツ再生部a12は、NWメディアサーバb1のコンテンツ提供部b151へ、コンテンツデータの提供を要求する提供要求を送信する。この提供要求には、コンテンツID及びDMP A13のIPアドレスが含まれる。その後、ステップS402に進む。
(ステップS402)コンテンツ提供部b151は、コンテンツ管理情報記憶部b112のコンテンツテーブルT3に、ステップS401で取得したコンテンツIDがある場合、そのコンテンツIDに対応する情報を取得する。その後、ステップS403に進む。
なお、ステップS401で取得したコンテンツIDがない場合、コンテンツ提供部b151はコンテンツ再生部a12に対して、コンテンツを提供することができないことを示す情報を送信し、動作を終了する。
【0063】
(ステップS403)コンテンツ提供部b151は、提供コンテンツレコードを生成する。具体的には、コンテンツ提供部b151は、提供コンテンツテーブルT4のIPアドレス及びコンテンツIDが、ステップS401の提供要求に含まれるコンテンツID及びIPアドレスのレコードを生成する。また、コンテンツ提供部b151は、ブロック番号が提供を開始するコンテンツブロックのブロック番号、バイト位置、及び提供位置(例えば、コンテンツデータを先頭から提供する場合、ブロック番号が「1」、バイト位置が「0」、及び、提供位置「0」)を、生成したレコードに追加する(このレコードを提供コンテンツレコードという)。その後、ステップS403に進む。
(ステップS404)コンテンツ提供部b151は、コンテンツ管理情報記憶部b112の提供コンテンツテーブルT4に、ステップS403で生成した提供コンテンツレコードを追加して書き込む。その後、ステップS405に進む。
【0064】
(ステップS405)コンテンツ提供部b151は、コンテンツ再生部a12にコンテンツブロックを提供する。ここで、コンテンツ提供部b151は、コンテンツブロックテーブルT1のブロック番号の順序に従ってコンテンツブロックを読み出し、読み出したコンテンツブロックをコンテンツ再生部a12に提供する。その後、ステップS406に進む。
(ステップS406)コンテンツ提供部b151は、提供中のコンテンツブロックのコンテンツIDと同じコンテンツIDのレコードをコンテンツブロックテーブルT1から読み出し、読み出したレコードのコンテンツデータ位置とバイト位置から提供位置を計算する。この計算方法については後述する。また、コンテンツ提供部b151は、提供中のコンテンツブロックのレコードを提供コンテンツテーブルT4から読み出し、読み出したレコードのブロック番号、バイト位置、及び提供位置を更新する。
その後、コンテンツ提供部b151は、ステップS405,S406の処理をくり返す。なお、コンテンツデータの提供が終了した場合、コンテンツ提供部b151は、終了したコンテンツデータに対応する提供コンテンツテーブルのレコードを削除する。
【0065】
(ステップS410)DMP A13の入力受付部a13は、マーク付与を行うホームページ(HP)へのアクセス要求を受け付ける。その後、ステップS411に進む。
(ステップS411)NWメディアサーバb1のマーク付与部b153は、コンテンツ管理情報記憶部b112の提供コンテンツテーブルのレコードを読み出す。その後、ステップS412に進む。
(ステップS412)マーク付与部b153は、ステップS411にて読み出したレコードの情報を表示する。その後、マーク付与部b153は、ステップS411、S412の処理をくり返す。その後、ステップS413に進む。
【0066】
(ステップS413)マーク付与部b153は、入力部a14にてマークを付与することを示すキーが押下されると、マーク付与情報をマーク付与部b153に出力する。このマーク付与情報には、ステップS412で表示したレコードの情報のうち利用者が選択した情報が示すレコードのコンテンツID、IPアドレス、及び、利用者が選択したマーク名の情報が含まれる。その後、ステップS414に進む。
(ステップS414)マーク付与部b153は、ステップS413で入力されたマーク付与情報のコンテンツID及びIPアドレスのレコードを、提供コンテンツテーブルT4から読み出す。その後、ステップS415に進む。
(ステップS415)マーク付与部b153は、マークレコードを生成する。具体的には、マーク付与部b153は、マークIDが払い出したマークID、マーク名がステップS413で入力されたマーク名のレコードを生成する。また、マーク付与部b153は、ステップS414にて読み出したレコードのIPアドレス、ブロック番号、バイト位置を生成したレコードに追加する(このレコードをマークレコードという)。その後、ステップS416に進む。
(ステップS416)マーク付与部b153は、ステップS415で生成したマークレコードをマークテーブルT4に追加する。その後、ステップS417に進む。
(ステップS417)マーク付与部b153は、処理結果をPC A13に出力する。その後、動作を終了する。
【0067】
図20は、本実施形態に係るタグ情報の入力処理の動作の一例を示すシークエンス図である。
(ステップS420)DMP A13の入力受付部a13は、タグ入力を行うホームページ(HP)へのアクセス要求を受け付ける。その後、ステップS421に進む。
(ステップS421)NWメディアサーバb1のマーク付与部b153は、コンテンツ管理情報記憶部b112のコンテンツテーブルのレコードを読み出す。その後、ステップS412に進む。
(ステップS422)マーク付与部b153は、ステップS411にて読み出したレコードの情報(例えば、コンテンツ名やコンテンツの静止画像)を表示する。その後、ステップS413に進む。
【0068】
(ステップS423)マーク付与部b153は、入力部a14にて表示したコンテンツ名の選択と、選択したコンテンツのタグ値(例えば、お気に入りランクの5段階の値)の入力を受け付ける。その後、ステップS424に進む。
(ステップS424)マーク付与部b153は、ステップS423で受け付けた情報からタグ情報レコードを生成する。その後、ステップS425に進む。
(ステップS425)マーク付与部b153は、ステップS424で生成したタグ情報レコードをタグ情報テーブルT5に追加する。その後、ステップS426に進む。
(ステップS426)マーク付与部b153は、処理結果をPC A13に出力する。その後、動作を終了する。
【0069】
図19は、本実施形態に係るバイト位置と提供位置との関係を示す概念図である。図19(A)(上図)は、コンテンツブロックI1〜I6を示す。また、図19(B)(下図)は、コンテンツブロックI1〜I6の分割前のコンテンツデータIを示す。
図19(A)は、コンテンツブロックIj(j=1、2、3)のコンテンツブロック長がLjバイトであることを示す。また、この図は、バイト位置がLr1バイトであることを示し、コンテンツブロックI4の先頭からLr1バイトのデータr1が提供されていることを示す。
図19(B)は、データt1が、図19(A)中のデータr1に対応することを示す。また、図19(B)は、提供位置がLt1バイトであることを示し、データt1がコンテンツデータIの先頭からLt1バイトのデータであることを示す。つまり、バイト位置Lr1と提供位置Lt1との関係は、Lt1=ΣLj+Lr1である。ここで、jは整数であり、Σは提供コンテンツテーブルT4が記憶するブロック番号Nb、つまり、提供中のコンテンツブロックのブロック番号Nbより小さい番号のブロック番号jについて和をとることを示す。コンテンツ提供部b151は、この式で提供位置Lt1を計算する。また、逆にこの式を用いてLt1からLr1を計算する。
【0070】
図20は、本実施形態に係るブロック削除処理の動作の一例を示すフロー図である。
(ステップS501)空き容量検出部b141は、時間Tdが経過したか否かを判定する。時間Tdが経過したと判定した場合(Yes)、ステップS502に進む。一方、時間Tdが経過していないと判定した場合(No)、ステップS501をくり返す。
(ステップS502)空き容量検出部b141は、記憶部b11の空き容量を検出し、検出した空き容量が予め定めた閾値以下であるか否かを判定する。空き容量が閾値以下であると判定した場合(Yes)、ステップS51に進む。一方、空き容量が閾値より大きいと判定した場合(No)、ステップS506に進む。
(ステップS51)視聴ポイント計算部b142は、コンテンツブロック毎に視聴ポイントPを計算する。なお、視聴ポイント計算部b142が行う視聴ポイント計算処理の詳細は、図21を用いて後述する。視聴ポイント計算部b142は、コンテンツブロックT1の視聴ポイントの値を、計算した視聴ポイントPで更新する。その後、ステップS503に進む。
【0071】
(ステップS503)ブロック削除部b143は、ステップS51にて計算した視聴ポイントPが一番低いブロックコンテンツを、コンテンツブロック記憶部b113から削除する。具体的には、ブロック削除部b143は、コンテンツブロックテーブルT1のレコードのうちローカル有無の値が「あり」のレコードを読み出し、読み出したレコードのうち視聴ポイントの値が一番低いレコードのコンテンツブロックを削除する。その後、ステップS504に進む。
(ステップS504)ブロック削除部b143は、ステップS503で削除したコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック削除部b143は、読み出したレコードのローカル有無の値を「なし」に更新する。その後、ステップS505に進む
(ステップS505)ブロック削除部b143は、記憶部b11の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下であるか否かを判定する。空き容量が閾値以下であると判定した場合(Yes)、ステップS503に戻る。一方、空き容量が閾値より大きいと判定した場合(No)、ステップS506に進む。
(ステップS506)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS501に戻る。
【0072】
図21は、本実施形態に係る視聴ポイント計算処理の動作の一例を示すフロー図である。なお、以下の計算処理において、定数w1〜w5は、各ポイントP1〜P5間のポイントの重み付けの大きさを示す定数である。なお、この計算処理は、コンテンツブロック毎に行われる。
(ステップS511)視聴ポイント計算部b142は、登録日時が遅いコンテンツのコンテンツブロックほどポイントが高くなるように、登録日ポイントP1を計算する。具体的には、視聴ポイント計算部b142は、定数w1、当日の日付Dt、及びコンテンツテーブルT3の登録日Drを用いて、登録日ポイントP1を、P1=w1−(Dt−Dr)として計算する。例えば、w1=100、コンテンツ登録が2日前とした場合、P1=100−2=98ポイントとなる。なお、登録日ポイントP1の計算には、日に加えて時刻を含めてもよい。
これにより、NWメディアサーバb1は、登録した日時が古く利用者の記憶も古いため提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、登録した日時が新しく利用者の記憶も新しいため提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、ストレージサーバD1からNWメディアサーバb1を介して提供する場合と比較して、迅速にコンテンツデータを提供することができる。
【0073】
(ステップS512)視聴ポイント計算部b142は、コンテンツデータ中での順序が早いコンテンツブロックほどポイントが高くなるように、ブロック番号ポイントP2を計算する。具体的には、視聴ポイント計算部b142は、定数w2、変更可能な重み付け定数X、コンテンツブロック番号Mbを用いて、ブロック番号ポイントP2を、P2=w2×(X−Mb)として計算する。ここで、P2が0以下になる場合には、P2=0としてもよい。例えば、w2=10、X=10、Mb=2とした場合、P2=10×(10−2)=80ポイントとなる。
これにより、NWメディアサーバb1は、一般的にコンテンツデータは先頭から順に提供されるため、順序が遅く提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、順序が早く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0074】
(ステップS513)視聴ポイント計算部b142は、提供回数の実績が多いコンテンツブロックほどポイントが高くなるように、提供頻度ポイントP3を計算する。具体的には、視聴ポイント計算部b142は、変更可能な定数Yとして、コンテンツブロックのコンテンツID、コンテンツ番号、及び、Y日前から当日までの期間を検索キーとして、提供ログテーブルT2のレコードを抽出して、抽出したレコードの個数をYで除算した値、つまり、直近Y日以内についての当該コンテンツブロックの一日あたりの平均視聴回数Mcを算出する。また、視聴ポイント計算部b142は、Y日前から当日までの期間を検索キーとして、提供ログテーブルT2の全コンテンツブロックのレコードを抽出して、全コンテンツブロックの一日あたりの平均視聴回数Maを算出する。視聴ポイント計算部b142は、定数w3、コンテンツブロックの平均視聴回数Mc、及び全コンテンツブロックの平均視聴回数Maを用いて、提供頻度ポイントP3を、P3=w3×(Mc−Ma)として計算する。例えば、w3=50、Y=10、Mc=5、Ma=2とした場合、P3=50×(5−2)=150ポイントとなる。
これにより、NWメディアサーバb1は、提供回数の実績が少なく提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、提供回数の実績が多く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0075】
(ステップS514)視聴ポイント計算部b142は、マークを付された数が多いコンテンツブロックほどポイントが高くなるように、マークポイントP4を計算する。ここで、視聴ポイント計算部b142は、利用者の嗜好の高さを示す重みをつけてマークを付された数を計算する。具体的には、視聴ポイント計算部b142は、コンテンツブロックのコンテンツID及びコンテンツ番号を検索キーとして、マークテーブルT4のレコードを読み出す。視聴ポイント計算部b142は、読み出したレコードのマーク名を検索キーとしてマークポイントテーブルT6のマークポイントを参照する。視聴ポイント計算部b142は、読み出したレコードのマークポイントを合算する(合算値をPtとする)。視聴ポイント計算部b142は、定数w4、マークポイントの合算値Ptを用いて、マークポイントP4を、P4=MIN(w4、Pt)として計算する。ここで、MIN(w4、Pt)は、w4、Ptの最小値を示す。つまり、この計算では、P4に上限値w4を設けている。例えば、w4=100のときに、あるコンテンツブロックのレコードが、マーク名「とても面白い」(+3ポイント)が1個、「面白い」(+2ポイント)が4個、「面白くない」(−1ポイント)が1個である場合、Pt=10となり、P4=10ポイントとなる。
これにより、NWメディアサーバb1は、マークを付された数が少なく利用者の嗜好も低くて、提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、マークを付された数が多く利用者の嗜好も高くて、提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0076】
(ステップS515)視聴ポイント計算部b142は、利用者の嗜好や関心が高いコンテンツのコンテンツブロックほどポイントが高くなるように、お気に入りポイントP5を計算する。具体的には、視聴ポイント計算部b142は、コンテンツブロックのコンテンツID、及びタグ名「お気に入りランク」を検索キーとして、タグ情報テーブルのタグ値の値(Mf)を参照する。視聴ポイント計算部b142は、定数w5及びタグ値(Mf)を用いて、お気に入りポイントP5を、P5=w5×Mfとしてとして計算する。例えば、w5=20、Mf=5とした場合、P5=20×5=100ポイントとなる。
これにより、NWメディアサーバb1は、利用者の嗜好や関心が低く提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、利用者の嗜好や関心が高く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0077】
(ステップS516)視聴ポイント計算部b142は、ステップS511〜S515にて算出した登録日ポイントP1、ブロック番号ポイントP2、提供頻度ポイントP3、マークポイントP4、及びお気に入りポイントP5を合算する。視聴ポイント計算部b142は、合算した値を視聴ポイントPとしてコンテンツブロックテーブルT1の視聴ポイントに書き込む。その後、動作を終了する。
なお、本実施形態において、ステップS516にてポイントP1〜P5の全てを合算して視聴ポイントPを計算しているが、本発明はこれに限らず、ポイントP1〜P5のいずれか又はいずれかの組み合わせの和を、視聴ポイントPとして計算してもよい。
【0078】
図22は、本実施形態に係るブロック取得処理の動作の一例を示すフロー図である。
(ステップS601)ブロック取得部b152は、時間Tgが経過したか否かを判定する。時間Tgが経過したと判定した場合(Yes)、ステップS602に進む。一方、時間Tgが経過していないと判定した場合(No)、ステップS601をくり返す。
(ステップS602)ブロック取得部b152は、提供コンテンツテーブルT4のレコードがあるか否かを判定することで、提供中のコンテンツデータがあるか否かを判定する。提供中のコンテンツデータがあると判定した場合(Yes)、ステップS603に進む。一方、提供中のコンテンツデータがないと判定した場合(No)、ステップS607に進む。
【0079】
(ステップS603)ブロック取得部b152は、提供コンテンツテーブルT4のコンテンツIDを検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック取得部b152は、読み出したレコードのローカル有無の値が「なし」のレコードがあるか否かを判定することで、提供中のコンテンツのコンテンツブロックに削除されたコンテンツブロックがあるか否かを判定する。削除されたコンテンツブロックがあると判定した場合(Yes)、ブロック取得部b152はストレージサーバD1とセッションを確立して、ステップS604に進む。削除されたコンテンツブロックがないと判定した場合(No)、ステップS607に進む。
【0080】
(ステップS604)ブロック取得部b152は、提供コンテンツテーブルT4のコンテンツID及びブロック番号Mpを読み出す。ブロック取得部b152は、読み出したコンテンツID、及びブロック番号「Mp」から「Mp+n」の範囲を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。なお、ブロック番号「Mp」から「Mp+n」のコンテンツブロックが提供準備ブロックである。ブロック取得部b152は、読み出したレコードにローカル有無の値が「なし」のレコードがあるか否かを判定することで、コンテンツブロック記憶部b113に提供準備ブロックがすべてあるか否かを判定する。提供準備ブロックがすべてあると判定した場合(Yes)、ステップS607に進む。一方、提供準備ブロックが一つでもないと判定した場合(No)、ステップS605に進む。
【0081】
(ステップS605)ブロック取得部b152は、ステップS604でコンテンツブロック記憶部b113にないと判定した提供準備ブロックを、ストレージサーバD1からダウンロードし、コンテンツブロック記憶部b113に記憶する。その後、ステップS606に進む。
(ステップS606)ブロック取得部b152は、ステップS605でダウンロードしたコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック取得部b152は、読み出したレコードのローカル有無の値を「あり」に更新する。その後、ステップS607に進む。
(ステップS607)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS601に戻る。
【0082】
このように、本実施形態では、NWメディアサーバb1、b2は、コンテンツデータを分割したコンテンツブロックを、視聴ポイントPに基づいて選択して削除し、提供するコンテンツブロックが削除されている場合、ネットワークを介して接続されたストレージサーバD1にバックアップされた当該コンテンツブロックをダウンロードして提供する。これにより、NWメディアサーバb1、b2は、例えば、視聴ポイントPが低い、つまり、提供頻度が低いコンテンツブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、NWメディアサーバb1、b2は、視聴ポイントPが高い、つまり、提供頻度が高いコンテンツブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。また、ネットワーク障害等によって記憶装置と通信ができない場合であっても、例えば、コンテンツブロック記憶部b113が記憶する提供頻度が高いコンテンツブロックを提供することができる。また、NWメディアサーバb1、b2は、コンテンツデータを分割したコンテンツブロックをダウンロードするので、コンテンツデータをダウンロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0083】
また、本実施形態では、NWメディアサーバb1、b2は、コンテンツデータを分割してコンテンツブロックを生成し、生成したコンテンツブロックをストレージサーバD1にバックアップするので、コンテンツデータをアップロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
また、本実施形態では、NWメディアサーバb1、b2は、コンテンツブロック記憶部b113の空き容量が予め定めた閾値以下になった場合に、視聴ポイントPに基づいて、コンテンツブロック記憶部b113が記憶するコンテンツブロックを削除するので、利用者が常にコンテンツの所在やディスクの空き容量を意識して空き容量の計算等をして操作をすることなく、ローカルディスクの記憶容量が不足することを防止することができる。
【0084】
(変形例1)
以下、本実施形態の変形例1について説明をする。
上記実施形態では、コンテンツブロック長が可変長である場合について説明をした。本変形例では、コンテンツブロック長が固定長である場合について説明をする。
【0085】
図23は、本実施形態の変形例1に係るコンテンツ管理情報記憶部b112が記憶するテーブルとそれらの関係を示す概念図である。本変形例1に係るテーブル(図23)と上記実施形態に係るテーブル(図12)とを比較すると、図12のコンテンツブロックテーブルT1に代えてコンテンツブロックテーブルT7が記憶されている点、及び、定義表T8が記憶されている点が異なる。しかし、他のテーブルT2〜T6については上記実施形態と同じであるので、説明は省略する。
【0086】
コンテンツブロックテーブルT7は、コンテンツID、ブロック番号、アップロード済状態、ローカル有無、及び視聴ポイントの各項目を有している。また、定義表T8はブロック長を記憶する。
本変形例1では、ブロック分割部b132は、定義表T8が記憶するブロック長の長さでコンテンツデータを分割してコンテンツブロックを生成する。また、コンテンツ提供部b151は、提供位置Lt1を、Lt1=(Nb−1)L+Lr1で計算する。ここで、Nbは提供コンテンツテーブルT4が記憶するブロック番号Nb、つまり、提供中のコンテンツブロックのブロック番号Nbを示す。
【0087】
<コンテンツブロック長について>
コンテンツブロック長の一例としては、「(4096×1024=)4194304」バイトである。例えば、httpプロトコルのような通信プロトコルの場合、プロトコル上のオーバヘッドは200バイト程度であり、上記の値であれば、プロトコルのオーバヘッドも十分小さくすることができる。また、上記の値は、ハードディスクドライブのセクタサイズの整数倍であり、整数倍でない場合と比較して、ハードディスクドライブの利用効率がよい。
【0088】
しかし、コンテンツブロック長は、この長さより小さくてもよい。この場合、より細かい粒度でコンテンツブロックを管理でき、真に必要なコンテンツブロックのみコンテンツブロック記憶部b113に残すことができる。また、この場合、必要なコンテンツブロックがコンテンツブロック記憶部b113にあるので、ストレージサーバD1からNWメディアサーバb1を介して提供する場合と比較して、迅速にコンテンツデータを提供することができる。
また、逆に、コンテンツブロック長は、この長さより大きくてもよい。この場合、プロトコルのオーバヘッドを小さくすることができる。
【0089】
このように、本変形例1によれば、コンテンツブロック長が固定長であるので、可変長の場合と比較して、提供位置の計算処理による処理負荷を軽減することができる。
【0090】
(変形例2)
以下、本実施形態の変形例2について説明をする。
上記実施形態では、コンテンツブロックがファイルとして管理する場合について説明をした。本実施形態では、ハードディスクドライブの物理記憶領域の単位(セクタ単位)で管理する場合について説明をする。
【0091】
図24は、本実施形態の変形例2に係るコンテンツブロックの管理方法を示す概念図である。この図において、行は階層を示し、列は分割単位を示す。この図は、階層が、利用者が扱う単位のユーザレベル、OS(Operating System)等が扱う単位のファイルシステムレベル、及びハードディスクドライブの物理記憶領域の単位(セクタ単位)に分類されていることを示す。また、この図において、鎖線で囲んだ記憶領域は、コンテンツブロックを記憶する記憶単位を示す。
【0092】
分割単位がファイル分割パターン(1番左の列)では、上記実施形態の場合である。この場合、ユーザレベルがコンテンツデータであり、ファイルシステムレベルではコンテンツデータを小さいサイズのファイルに分割している。ここで、コンテンツデータとコンテンツブロックとの関係は、コンテンツ管理情報記憶部b112が記憶するテーブルの情報(コンテンツ管理情報という)として記憶される。なお、ファイルシステムレベルのファイルと物理レベルのセクタは、既存のファイルシステムで管理されている。
【0093】
これに対し、変形例2に係るコンテンツ管理情報記憶部b112では、セクタ単位でコンテンツブロックを記憶して管理する。
まず、一例として、分割単位がセクタ分割パターン(左から2番目の列)では、ユーザレベル及びファイルシステムレベルがコンテンツデータである。この場合、物理レベルでは、セクタ単位のデータを、コンテンツブロックとして記憶する。この場合、セクタを管理するファイルシステムでコンテンツ管理情報を管理する。例えば、コンテンツID及びブロック番号とセクタの識別情報とが対応付けられ、ファイルシステムは、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号とセクタの識別情報との変換を行う。
【0094】
また、別の一例として、分割単位が連続する複数セクタ(連続複数セクタという)を1単位として分割する分割パターン(左から3番目の列)では、セクタ分割パターンと同様に、ユーザレベル及びファイルシステムレベルがコンテンツデータである。この場合、物理レベルでは、連続複数セクタのデータを1単位として、コンテンツブロックとして記憶する。この場合、セクタを管理するファイルシステムでコンテンツ管理情報を管理する。例えば、コンテンツID及びブロック番号と連続複数セクタの識別情報(例えば、連続する複数セクタの先頭のセクタ)とが対応付けられ、ファイルシステムは、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号と連続複数セクタのとの変換を行う。
【0095】
このように、本変形例2では、NWメディアサーバb1、b2は、セクタ単位でコンテンツブロックを記憶して管理する。これにより、NWメディアサーバb1は、OSの処理負荷を軽減することができる。
【0096】
なお、上記実施形態において、連続ドラマやアニメーションのように、連続したストーリー等が回に分けられるコンテンツ場合、以下のように、回を示す情報に基づいて視聴ポイントを算出してもよい。
例えば、視聴ポイント計算部b142は、再生済みの回より小さい回のコンテンツのコンテンツブロックのポイントを、再生中の回より大きい回のコンテンツのコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。再生済みの回より小さい回のコンテンツは、一度再生されると再び再生される可能性が低く、提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。なお、回を示す情報として、録画日時とタイトルを用いてもよい。
また、視聴ポイント計算部b142は、再生済みの回の次の次の回以降のコンテンツコンテンツのコンテンツブロックのポイントを、再生済みの回の次の回のコンテンツのコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。再生済みの回の次の次の回以降のコンテンツコンテンツは、再生済みの回の次の回のコンテンツが再生されるまで視聴される可能性が極端に低く、すぐに提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。
【0097】
また、回を示す情報に代えて、又は加えて、スキップ操作や早送り操作の情報に基づいて視聴ポイントを算出してもよい。
例えば、視聴ポイント計算部b142は、連続したストーリー等が回に分けられるコンテンツ毎に、スキップ操作をされたコンテンツの開始からのバイト位置を記憶部から読み出す。視聴ポイント計算部b142は、同じバイト位置が予め定められた回数以上、スキップ操作がされている場合、そのスキップ開始からスキップ終了位置に含まれるコンテンツブロックのポイントを、これ以外のコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。連続したストーリー等が回に分けられるコンテンツでは、コマーシャルや同じシーンが、毎回、同じ時間帯に行われる場合がある。利用者がこの時間帯をスキップ操作でスキップ(又は早送り操作で早送り)した場合、次の回以降でも、同じ時間帯をスキップ(又は早送り)する可能性が高く、提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。
【0098】
また、上記実施形態では、NWメディアサーバb1、b2が、記憶部b11の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下になった場合にコンテンツブロックを削除する場合について説明をした。しかし、本発明はこれに限らず、NWメディアサーバb1、b2は、コンテンツブロック記憶部b113の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下になった場合にコンテンツブロックを削除してもよい。また、NWメディアサーバb1、b2は、記憶部b11又はコンテンツブロック記憶部b113の記憶領域の使用量を検出し、使用量が予め定めた閾値以上になった場合にコンテンツブロックを削除してもよい。
【0099】
また、上記実施形態において、複数のNWメディアサーバb1、b2がストレージサーバD1にバックアップしたコンテンツブロックを共有してもよい。例えば、DMS B1がコンテンツブロックと、当該コンテンツブロックについてのコンテンツブロックテーブルT1及びコンテンツテーブルT2のレコードと、をストレージサーバD1にアップロードする。次に、ハードディスクレコーダB2は、DMS B1がアップロードしたレコードをダウンロードする。ハードディスクレコーダB2は、ダウンロードしたレコードのコンテンツデータの提供要求を受け付けた場合、ストレージサーバD1にバックアップしたコンテンツブロックをダウンロードして提供してもよい。
【0100】
また、上記実施形態において、コンテンツブロック長は、記憶部b11の記憶容量に基づいて決定されてもよい。また、コンテンツブロック長は、コンテンツデータのデータ量に基づいて決定されてもよい。また、コンテンツブロック長は、通信パケットのデータ量に基づいて決定されてもよい。
また、上記実施形態において、記憶部b11は、NWメディアサーバb1、b2以外の装置に備えられてもよい。
【0101】
なお、上述した実施形態におけるNWメディアサーバb1の一部、例えば、コンテンツ登録部b12、ブロック登録処理部b13、ブロック削除処理部b14、コンテンツデータ検知部b131、ブロック分割部b132、バックアップ部b133、空き容量検出部b141、視聴ポイント計算部b142、ブロック削除部b143、コンテンツ提供部b151、ブロック取得部b152、及びマーク付与部b153をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、NWメディアサーバb1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0102】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0103】
A11・・・テレビ、A12・・・PC、A13・・・DMP、B1・・・DMS、B2・・・ハードディスクレコーダ、b1・・・NWメディアサーバ(データ提供装置)、D1・・・ストレージサーバ(記憶装置)、a11・・・表示部、a12・・・コンテンツ再生部、a13・・・入力受付部、a14・・・入力部、b11・・・記憶部、b12・・・コンテンツ登録部、b13・・・ブロック登録処理部、b14・・・ブロック削除処理部、d11・・・バックアップ記憶部、b111・・・コンテンツデータ記憶部、b112・・・コンテンツ管理情報記憶部、b113・・・コンテンツブロック記憶部、b131・・・コンテンツデータ検知部、b132・・・ブロック分割部、b133・・・バックアップ部、b141・・・空き容量検出部、b142・・・視聴ポイント計算部、b143・・・ブロック削除部、b151・・・コンテンツ提供部、b152・・・ブロック取得部、b153・・・マーク付与部
【技術分野】
【0001】
本発明は、データ提供装置、データ提供方法、データ提供プログラム、及びデータ提供システムに関する。
【背景技術】
【0002】
近年、動画、音声、静止画等のコンテンツデータを提供する装置が普及してきている。
ハードディスクレコーダは、テレビ放送信号等を受信して内蔵の大容量ハードディスクに動画のデジタルデータ(コンテンツデータ)として録画し、録画したコンテンツデータの提供を受けた再生部が再生を行う装置である。
また、非特許文献1には、DLNA(Digital Living Network Alliance;登録商標)で策定しているDMS(Digital Media Server)が記載されている。DMSは、動画、音声、静止画等のコンテンツデータをハードディスク等の内蔵の大容量ストレージ(以下、ローカルディスク)に保存し、DMP(Digital Media Player)の要求に応じて提供する装置である。
【0003】
また、インターネットを経由して、動画像をストリーミング映像として配信するストリーミング映像配信方式を適用したシステムが知られている。このシステムでは、サーバが動画等のコンテンツデータをパケットデータに分割して送信し、クライアント装置(例えば、パーソナルコンピュータ)が受信したパケットデータをコンテンツデータとして再生する。また、クライアント装置は、再生したパケットデータを消去する。これにより、クライアント装置は、少ない空き容量で動画データを再生することができる。
また、ストリーミング映像配信方式のように、ネットワークを介してコンテンツデータを受信して提供する技術として、特許文献1、2の技術が知られている。
【0004】
特許文献1には、コンテンツダウンロードにおいて、音楽、映像等のコンテンツデータを時間軸方向に沿って分割し、視聴者の要求に応じて転送順序の動的な変更を行うコンテンツデータ転送システムが記載されている。
【0005】
また、特許文献2には、PDAや携帯電話等のメモリ容量が比較的小さい情報端末であり、情報端末からサーバへコンテンツをアップロードし、情報端末がダウンロードする際に空き容量が不足した場合にアップロード済みのコンテンツ一覧を表示して選択されたコンテンツをメモリから削除し、ゲーム等の連続性のあるコンテンツについての進捗状況を管理する情報端末が記載されている。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2003−22232号公報
【特許文献2】特開2004−178353号公報
【非特許文献】
【0007】
【非特許文献1】“DLNA Overview and Vision Whitepaper 2007”、[online]、Digital Living Network Alliance(登録商標)、[2009年5月15日検索]、インターネット<http://www。dlna.org/news/DLNA_white_paper.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、従来のハードディスクレコーダやDMSでは、コンテンツデータ単位で記録及び提供を行うので、新規にコンテンツデータを登録する際、ローカルディスクに登録するコンテンツデータと同等の空き容量を必要とする。よって、これらの装置では、ローカルディスクの空き容量が足りなくなった場合、新規のコンテンツデータを登録して提供することができないという欠点があった。
一方、従来のストリーミング映像配信方式では、クライアント装置が再生したコンテンツデータをすべて消去するので、コンテンツデータの提供要求があるたびに、コンテンツデータをダウンロードしなければならない。よって、この方式では、同じコンテンツデータを再度提供するときに、ネットワークに負荷をかけ、また、コンテンツデータの提供開始までに、時間がかかるという欠点があった。
【0009】
また、特許文献1記載の技術では、受信側にダウンロードした後のコンテンツデータを削除しておらず、受信側のローカルディスクの空き容量が足りなくなるという欠点があった。また、仮に、受信側で提供したコンテンツデータを消去している場合、ストリーミング映像配信方式と同様に、ネットワークに負荷をかけ、また、コンテンツデータの提供開始までに、時間がかかるという欠点があった。
また、特許文献2記載の技術では、アップロードしたコンテンツデータをダウンロードする時に、ハードディスクレコーダやDMSと同様に、ローカルディスクの空き容量が足りなくなるという欠点があった。例えば、特許文献2記載の技術では、利用者が情報端末のローカルディスクのデータをアップロードしてデータを削除する操作を行い、ダウンロードするコンテンツデータの容量の空き容量を確保することが考えられる。しかし、利用者が常にコンテンツの所在やディスクの空き容量を意識し、空き容量の計算等をして操作をしなければならないという煩わしさがあった。
このように、上記の従来技術では、コンテンツデータを提供する場合に、ローカルディスクの記憶容量が不足するという欠点、又は、ネットワークに負荷がかかるという欠点があった。
【0010】
本発明は上記の点に鑑みてなされたものであり、その目的は、ローカルディスクの記憶容量が不足することを防止し、かつ、ネットワークに負荷をかけずにデータを提供することができるデータ提供装置、データ提供方法、データ提供プログラム、及びデータ提供システムを提供することにある。
【課題を解決するための手段】
【0011】
(1)本発明は上記の課題を解決するためになされたものであり、本発明は、連続したデータを提供するデータ提供装置において、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理部と、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理部と、を備えることを特徴とするデータ提供装置である。
上記構成によると、データ提供装置は、前記データブロックをデータブロック各々の提供頻度を示す情報に基づいて選択して削除し、提供するデータブロックが削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するので、例えば、提供頻度が低いデータブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、データ提供装置は、提供頻度が高いデータブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。また、ネットワーク障害等によって記憶装置と通信ができない場合であっても、例えば、記憶部が記憶する提供頻度が高いデータブロックを提供することができる。また、データ提供装置は、連続したデータを分割したデータブロックをダウンロードするので、連続したデータをダウンロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0012】
(2)また、本発明は、上記のデータ提供装置において、前記連続したデータを分割してデータブロックを生成するブロック分割部と、前記ブロック分割部が生成したデータブロックを前記記憶装置にバックアップするバックアップ部と、を備えることを特徴とする。
上記構成によると、データ提供装置は、前記連続したデータを分割してデータブロックを生成し、生成したデータブロックを前記記憶装置にバックアップするので、連続したデータをアップロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0013】
(3)また、本発明は、上記のデータ提供装置において、前記データ提供処理部が提供したデータを再生するデータ再生部を備えることを特徴とする。
【0014】
(4)また、本発明は、上記のデータ提供装置において、前記ブロック削除処理部は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除することを特徴とする。
上記構成によると、データ提供装置は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除するので、利用者が常にコンテンツの所在やディスクの空き容量を意識して空き容量の計算等をして操作をすることなく、ローカルディスクの記憶容量が不足することを防止することができる。
【0015】
(5)また、本発明は、上記のデータ提供装置において、前記データブロック各々の提供頻度を示す情報は、前記連続したデータ中でのデータブロックの順序を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、一般的に連続したデータは先頭から順に提供されるため、順序が遅く提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の記憶領域の空き容量を確保することができる。逆に、データ提供装置は、順序が早く提供頻度が高いデータブロックの連続したデータを、記憶部から提供することができ、迅速に連続したデータを提供することができる。
【0016】
(6)また、本発明は、上記のデータ提供装置において、マークを付与することを示す情報が入力されると、提供中のデータの位置を示すマーク情報をマークテーブルに記憶するマーク付与部を備え、前記データブロック各々の提供頻度を示す情報は、前記データブロックに含まれるデータ区間における前記マークテーブルが記憶するマーク情報の数を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、マークを付された数が少なく提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の記憶領域の空き容量を確保することができる。逆に、データ提供装置は、マークを付された数が多く提供頻度が高いデータブロックの連続したデータを、データ提供装置の記憶部b11から提供することができ、迅速に連続したデータを提供することができる。
【0017】
(7)また、本発明は、上記のデータ提供装置において、前記データブロックの提供頻度を示す情報は、前記データブロック各々の提供回数を示す情報であることを特徴とする。
上記構成によると、データ提供装置は、提供回数の実績が少なく提供頻度が低いデータブロックを優先して削除し、記憶部又はデータ提供装置の空き容量を確保することができる。逆に、データ提供装置は、提供回数の実績が多く提供頻度が高いデータブロックの連続したデータを、データ提供装置の記憶部から提供することができ、迅速にデータブロックを提供することができる。
【0018】
(8)また、本発明は、連続したデータを提供するデータ提供装置におけるデータ提供方法において、前記データ提供装置が、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除する第1の過程と、前記データ提供装置が、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供する第2の過程と、を有することを特徴とするデータ提供方法である。
【0019】
(9)また、本発明は、連続したデータを提供するデータ提供装置のコンピュータを
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理手段、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理手段、として機能させるデータ提供プログラムである。
【0020】
(10)また、本発明は、連続したデータを提供するデータ提供装置と、前記データ提供装置から提供されたデータを再生するデータ再生装置と、を具備するデータ提供システムにおいて、前記データ提供装置は、前記連続したデータを分割したデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択し、記憶部から削除するブロック削除処理部と、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックを、ダウンロードして提供するデータ提供処理部と、を備え、前記再生装置は、前記データ提供装置が提供したデータを再生するデータ再生部を備えることを特徴とするデータ提供システムである。
【発明の効果】
【0021】
本発明によれば、データ提供装置は、提供頻度が低いデータブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、データ提供装置は、提供頻度が高いデータブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。
【図面の簡単な説明】
【0022】
【図1】本発明の実施形態に係るデータ提供システムの概念図である。
【図2】本実施形態に係るNWメディアサーバが記憶するコンテンツブロックの一例を示す概念図である。
【図3】本実施形態に係るNWメディアサーバが行うブロック登録処理を示す概略図である。
【図4】本実施形態に係るNWメディアサーバが行うマーク付与処理を示す概略図である。
【図5】本実施形態に係るNWメディアサーバが行うブロック削除処理を示す概略図である。
【図6】本実施形態に係るNWメディアサーバが行うコンテンツ再生処理を示す概略図である。
【図7】本実施形態に係るデータ提供システムが具備する装置の構成を示す概略ブロック図である。
【図8】本実施形態に係る別のデータ提供システムが具備する装置の構成を示す概略ブロック図である。
【図9】本実施形態に係るコンテンツ登録処理部の構成を示す概略ブロック図である。
【図10】本実施形態に係るブロック削除処理部の構成を示す概略ブロック図である。
【図11】本実施形態に係るコンテンツ提供処理部の構成を示す概略ブロック図である。
【図12】本実施形態に係るコンテンツ管理情報記憶部が記憶するテーブルとそれらの関係を示す概念図である。
【図13】本実施形態に係るマークポイントテーブルの一例を示す概略図である。
【図14】本実施形態に係るコンテンツデータ登録処理の動作の一例を示すフロー図である。
【図15】本実施形態に係るコンテンツブロック生成処理の動作の一例を示すフロー図である。
【図16】本実施形態に係るバックアップ処理の動作の一例を示すフロー図である。
【図17】本実施形態に係るマーク付与処理の動作の一例を示すシークエンス図である。
【図18】本実施形態に係るタグ情報の入力処理の動作の一例を示すシークエンス図である。
【図19】本実施形態に係るバイト位置と提供位置との関係を示す概念図である。
【図20】本実施形態に係るブロック削除処理の動作の一例を示すフロー図である。
【図21】本実施形態に係る視聴ポイント計算処理の動作の一例を示すフロー図である。
【図22】本実施形態に係るブロック取得処理の動作の一例を示すフロー図である。
【図23】本実施形態の変形例1に係るコンテンツ管理情報記憶部が記憶するテーブルとそれらの関係を示す概念図である。
【図24】本実施形態の変形例2に係るコンテンツブロックの管理方法を示す概念図である。
【発明を実施するための形態】
【0023】
(実施形態)
以下、図面を参照しながら本発明の実施形態について詳しく説明する。図1は、本発明の実施形態に係るデータ提供システムの概念図である。なお、この図は、DMS(Digital Media Server)B1を用いたデータ提供システム1と、ハードディスクレコーダB2を用いたデータ提供システム2と、の2つのデータ提供システムを示す。なお、本発明は、データ提供システム1、2のどちらの構成であってもよい。
【0024】
データ提供システム1は、テレビA11、PC(Personal Computer)A12、DMP(Digital Media Player)A13、DMS B1(データ提供装置)、及びストレージサーバD1(記憶装置)を具備する。DMS B1は、ダウンロード等によって取得したコンテンツデータ(連続したデータ)をコンテンツブロック(データブロック)に分割して記憶する。なお、コンテンツブロックのデータ量(データ長という)は、固定(例えば、4194304バイトのデータ)であってもよいし可変であってもよい。本実施形態では、可変の場合の構成について説明をする。
また、DMS B1は、記憶したコンテンツブロックをコンテンツデータ中での順序に従ってDMP A13に提供する。DMP A13は、提供されたデータを再生してテレビA11に表示し、また、音声出力する。また、DMS B1は、記憶したコンテンツブロックを、ネットワークC1を介して接続されたストレージサーバD1にアップロードしてバックアップする。また、PC A12は、DMP A13及びDMS B1にLAN等のネットワークを介して接続され、利用者は、PC A12の操作によってDMP A13及びDMS B1を制御する。
【0025】
データ提供システム2は、テレビA21、リモコンA22、ハードディスクレコーダB2(データ提供装置)、及びストレージサーバD1を具備する。ハードディスクレコーダB2は、録画等によって取得したコンテンツデータをコンテンツブロックに分割して記憶する。また、ハードディスクレコーダB2は、記憶したコンテンツブロックをコンテンツデータ中での順序に従って再生部に提供する。ハードディスクレコーダB2の再生部は、提供されたデータを再生してテレビA21に表示する。また、ハードディスクレコーダB2は、記憶したコンテンツブロックを、ネットワークC1を介して接続されたストレージサーバD1にアップロードしてバックアップする。また、リモコンA22は赤外線通信を行い、利用者は、リモコンA22の操作によってハードディスクレコーダB2を制御する。
【0026】
本実施形態では、DMS B1及びハードディスクレコーダB2は、コンテンツブロックを視聴ポイントP(データブロック各々の提供頻度を示す情報)に基づいて削除する。また、DMS B1及びハードディスクレコーダB2は、DMP A13又は自装置のコンテンツ再生部に提供するコンテンツブロックが削除されている場合、ストレージサーバD1からコンテンツブロックをダウンロードして提供する。
以下、DMS B1及びハードディスクレコーダB2を、それぞれ、NW(ネットワーク)メディアサーバb1、b2という。
【0027】
図2は、本実施形態に係るNWメディアサーバb1が記憶するコンテンツブロックの一例を示す概念図である。この図において、コンテンツブロックI1〜I6は、動画、音声等のコンテンツIのコンテンツデータ(コンテンツデータIという)を分割したコンテンツブロックを示す。以下、コンテンツIでの再生時間が早い順に、コンテンツブロックI1、I2、・・・、I6とする。また、コンテンツブロックJ1〜J5、K1〜K7は、それぞれ、コンテンツJ、Kのコンテンツブロックを示す。なお、全てのコンテンツブロック1〜I6、J1〜J5、K1〜K7は、ストレージサーバD1に送信され、バックアップされている。
また、図2において、実線で示したコンテンツブロック(ハッチングしたコンテンツブロック、例えば、コンテンツブロックI1)は、NWメディアサーバb1に記憶されていることを示す。一方、点線で示したコンテンツブロック(例えば、コンテンツブロックI3)は、NWメディアサーバb1から削除されていることを示す。
【0028】
<メディアサーバb1が行う処理について>
以下、図3〜6を用いて、NWメディアサーバb1が行う処理の概略を説明する。
図3は、本実施形態に係るNWメディアサーバb1が行うブロック登録処理を示す概略図である。この図において、NWメディアサーバb1には、ダウンロード等によってコンテンツデータIが記憶される。NWメディアサーバb1は、コンテンツデータIを検知すると、検知したコンテンツデータIを分割してコンテンツブロックI1〜I6を生成し、記憶部b11に記憶する。なお、このときコンテンツデータIは削除される。
NWメディアサーバb1は、記憶部b11に記憶したコンテンツブロックI1〜I6をストレージサーバD1に送信する。ストレージサーバD1は、受信したコンテンツブロックI1〜I6をバックアップ記憶部d11に記憶する。
【0029】
図4は、本実施形態に係るNWメディアサーバb1が行うマーク付与処理を示す概略図である。ここで、マークとは、利用者等によって特定の再生箇所(提供位置)に付される指標である。NWメディアサーバb1は、マークが付されたデータの位置を示すマーク情報を記憶する。NWメディアサーバb1は、マーク情報が利用者等によって選択されると、マーク情報が示すデータの位置からコンテンツデータの提供を開始する。なお、NWメディアサーバb1は、マーク情報が示すデータの位置から予め設定されたサイズ(または秒数)分を遡った位置からコンテンツデータの提供を開始してもよい。
図4において、NWメディアサーバb1は、コンテンツブロックI1〜I6をコンテンツブロックIでの順序に従って提供し、DMP A13は、NWメディアサーバb1から提供されたデータを再生してテレビA11に表示させる。利用者は、PC A12を操作してマークを付する再生箇所を選択する。NWメディアサーバb1は、選択された再生箇所に対応するデータの位置を示すマーク情報を記憶する。なお、NWメディアサーバb2の場合、利用者は、リモコンA22を操作してマークを付する。
【0030】
図5は、本実施形態に係るNWメディアサーバb1が行うブロック削除処理を示す概略図である。この図において、NWメディアサーバb1は、後述する視聴ポイントPを計算し、視聴ポイントPが低いコンテンツブロックを削除する。例えば、この図において、NWメディアサーバb1は、付されたマークの数が少ないコンテンツブロックI3、I5、I6を削除する。
【0031】
図6は、本実施形態に係るNWメディアサーバb1が行うコンテンツ再生処理を示す概略図である。この図において、NWメディアサーバb1は、コンテンツブロックI1〜I6をコンテンツデータI中での順序(I1、I2、I3・・・)に従ってDMP A13に提供する。DMP A13は、提供されたデータを再生し、再生したデータの動画をテレビA11に表示させる。NWメディアサーバb1は、提供中のコンテンツブロックからn個後までのコンテンツブロック(提供準備ブロックという)が削除されている場合、提供準備ブロックをストレージサーバD1からダウンロードする。例えば、図6は、n=3の場合の図である。この図は、NWメディアサーバb1が、コンテンツブロックI1を提供しているとき、提供準備ブロック(コンテンツブロックI2〜I4)が記憶部b11に記憶されているか否かを判定し、記憶部b11に記憶されていないと判定したコンテンツブロックI3を、ストレージサーバD1からダウンロードしていることを示す。
【0032】
<データ提供システム1、2の構成について>
図7は、本実施形態に係るデータ提供システム1が具備する装置の構成を示す概略ブロック図である。この図において、テレビA11は表示部a11を、DMP A13はコンテンツ再生部a12と入力受付部a13とを、PC A12は入力部a14を、含んで備える。また、NWメディアサーバは、記憶部b11、コンテンツ登録部b12、ブロック登録処理部b13、及びブロック削除処理部b14を含んで備える。また、ストレージサーバD1は、バックアップ記憶部d11を含んで備える。
【0033】
テレビA11の表示部a11は、DMP A13のコンテンツ再生部a12が再生したコンテンツを表示する。DMP A13のコンテンツ再生部a12は、NWメディアサーバb1から提供されたデータを再生する。入力受付部a13は、PC A12の入力部a14でマークを付与することを示すキーが押下されたことを受け付け、マークを付することを示すマーク付与情報をNWメディアサーバb1に出力する。
【0034】
NWメディアサーバb1のコンテンツ登録部b12は、録画やダウンロード等によって取得したコンテンツデータを記憶部b11に記憶する。
ブロック登録処理部b13は、記憶部b11から読み出したコンテンツデータを分割してコンテンツブロックを生成する。ブロック登録処理部b13は、生成したコンテンツブロックを記憶部b11に記憶し、また、ストレージサーバD1のバックアップ記憶部d11にバックアップする。ブロック登録処理部b13の詳細については、後述する。
ブロック削除処理部b14は、後術する視聴ポイントPに基づいて、記憶部b11が記憶するコンテンツブロックを選択して削除する。ブロック削除処理部b14の詳細については、後述する。
コンテンツ提供処理部b15は、記憶部b11が記憶するコンテンツブロックをコンテンツデータ中での順序に従ってDMP A13に提供する。ここで、コンテンツ提供処理部b15は、提供するコンテンツブロックが記憶部b11から削除されている場合、ストレージサーバD1のバックアップ記憶部d11にバックアップされた当該コンテンツブロックを、ダウンロードして提供する。コンテンツ提供処理部b15の詳細については、後述する。
【0035】
図8は、本実施形態に係る別のデータ提供システム2が具備する装置の構成を示す概略ブロック図である。データ提供システム2(図8)とデータ提供システム1(図7)とを比較すると、図8には図7中のDMP A13がなく、NWメディアサーバb2が、図7中のDMP A13が備えるコンテンツ再生部a12及び入力受付部a13を備える。しかし、各部が持つ機能は、データ提供システム1と同じであるので、説明は省略する。
なお、図8において、コンテンツ提供処理部b15は、記憶部b11が記憶するコンテンツブロックをコンテンツデータ中での順序に従ってコンテンツ再生部a12に提供する。
【0036】
<NWメディアサーバb1、2の各部の構成について>
以下、NWメディアサーバb1のブロック登録処理部b13、ブロック削除処理部b14、及びコンテンツ提供処理部b15の詳細について説明をする。
【0037】
図9は、本実施形態に係るコンテンツ登録処理部b13の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツデータ記憶部b111、コンテンツ管理情報記憶部b112、及びコンテンツブロック記憶部b113を含んで備える。また、コンテンツ登録処理部b13は、コンテンツデータ検知部b131、ブロック分割部b132、及びバックアップ部b133を含んで備える。
【0038】
コンテンツデータ記憶部b111は、コンテンツ登録部b12から入力されたコンテンツデータを記憶する。また、コンテンツ管理情報記憶部b112は、コンテンツブロック等の情報を管理する各種テーブル(図12参照)を記憶する。
コンテンツデータ検知部b131は、定期的に、コンテンツデータ記憶部b111内を検索し、コンテンツデータが記憶されているか否かを判定する。判定の結果、新たなコンテンツデータが記憶されている場合、コンテンツデータ検知部b131は、コンテンツデータを抽出してブロック分割部b132に出力する。
ブロック分割部b132は、コンテンツデータ検知部b131から入力されたコンテンツデータを分割してコンテンツブロックを生成し、生成したコンテンツブロックをコンテンツブロック記憶部b113に記憶する。また、ブロック分割部b132は、コンテンツブロックに分割したコンテンツデータをコンテンツデータ記憶部b111から削除する。また、ブロック分割部b132は、生成したコンテンツブロックの情報を生成し、コンテンツ管理情報記憶部b112が記憶するテーブルを更新する。
【0039】
バックアップ部b133は、定期的に、コンテンツ管理情報記憶部b112のテーブルを検索し、ストレージサーバD1にアップロードしていないコンテンツブロック、つまり、バックアップをしていないコンテンツブロックがあるか否かを判定する。バックアップをしていないコンテンツブロックがある場合、バックアップ部b133は、そのコンテンツブロックをコンテンツブロック記憶部b113から読み出してストレージサーバD1に送信する。ストレージサーバD1に送信されたコンテンツブロックは、バックアップ記憶部d11に記憶される。また、バックアップ部b133は、コンテンツブロックのバックアップが完了すると、バックアップ済みであることを示す情報をコンテンツ管理情報記憶部b112のテーブルに登録する。
【0040】
図10は、本実施形態に係るブロック削除処理部b14の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツ管理情報記憶部b112及びコンテンツブロック記憶部b113を含んで備える。また、ブロック削除処理部b14は、空き容量検出部b141、視聴ポイント計算部b142、及びブロック削除部b143を含んで備える。
【0041】
空き容量検出部b141は、記憶部b11の記憶領域の空き容量を検出する。検出した空き容量が予め定めた閾値以下になった場合、空き容量検出部b141は、空き容量が不足していることを示す情報を視聴ポイント計算部b142に出力する。
視聴ポイント計算部b142は、コンテンツ管理情報記憶部b112が記憶するテーブルを読み出し、コンテンツデータの登録日、コンテンツデータ中でのコンテンツブロックの順序、コンテンツブロックの提供頻度、マーク情報のポイント合算値、及びお気に入りランクの合算値のいずれか又はその組み合わせに基づいて、コンテンツブロック毎に視聴ポイントPを計算する。なお、視聴ポイント計算部b142が行う視聴ポイントPの計算処理の詳細については、後述する。視聴ポイント計算部b142は計算した視聴ポイントPをブロック削除部b143に出力する。
ブロック削除部b143は、視聴ポイント計算部b142から入力された視聴ポイントPの値が低いブロックコンテンツを削除する。ブロック削除部b143は、コンテンツブロックを削除した場合、記憶部b11にそのコンテンツブロックがないことを示す情報を、コンテンツブロック記憶部b113に登録する。
【0042】
図11は、本実施形態に係るコンテンツ提供処理部b15の構成を示す概略ブロック図である。この図において、記憶部b11は、コンテンツ管理情報記憶部b112及びコンテンツブロック記憶部b113を含んで備える。また、コンテンツ提供処理部b15は、コンテンツ提供部b151、ブロック取得部b152、及びマーク付与部b153を含んで備える。
【0043】
コンテンツ提供部b151は、コンテンツデータの提供要求がDMP A13から入力されると、コンテンツ管理情報記憶部b112が記憶するテーブルに基づいて、提供要求があったコンテンツデータのコンテンツブロックを提供順に、コンテンツブロック記憶部b113から読み出す。コンテンツ提供部b151は、読み出したコンテンツブロックをDMP A13のコンテンツ再生部a12(図7参照)に提供する。また、コンテンツ提供部b151は、コンテンツブロックの提供をしているとき、データを提供中であることを示す情報をコンテンツ管理情報記憶部b112に登録する。
【0044】
ブロック取得部b152は、定期的に、コンテンツ管理情報記憶部b112のテーブルを検索し、コンテンツ提供部b151がデータを提供中であるか否かを判定する。データを提供中であると判定した場合、ブロック取得部b152は、提供準備ブロックが削除されているか否かを判定し、削除されている場合、提供準備ブロックをストレージサーバD1のバックアップ記憶部d11(図7参照)からダウンロードする。ブロック取得部b152は、ダウンロードした提供準備ブロックをコンテンツブロック記憶部b113に記憶し、記憶部b11にそのコンテンツブロックがあることを示す情報を、コンテンツブロック記憶部b113に登録する。
マーク付与部b153は、入力受付部a13からマーク付与情報が入力されると、コンテンツ提供部b151がそのとき提供中のデータの位置を示すマーク情報をコンテンツ管理情報記憶部b112に記憶する。また、マーク付与部b153は、入力受付部a13からタグ情報が入力されると、タグ情報をコンテンツ管理情報記憶部b112に記憶する。
【0045】
<コンテンツ管理情報について>
以下、コンテンツ管理情報記憶部b112が記憶するテーブルについて説明をする。
図12は、本実施形態に係るコンテンツ管理情報記憶部b112が記憶するテーブルとそれらの関係を示す概念図である。
コンテンツ管理情報記憶部b112は、コンテンツブロックテーブルT1、提供ログテーブルT2、コンテンツテーブルT3、提供コンテンツテーブルT4、マークテーブルT4、タグ情報テーブルT5、及びマークポイントテーブルT6を記憶する。これらのテーブルT1〜T6は、リレーショナル形式のデータベースにより管理されている。なお、E1を付した鎖線で囲まれた記号はテーブル間の関係を示し、コンテンツブロックテーブルT1と提供ログテーブルT2とが、1対多であることを示す。同様に、図12は、コンテンツテーブルT3とコンテンツブロックテーブルT1、コンテンツテーブルT3と提供コンテンツテーブルT4、コンテンツテーブルT3とマークテーブルT4、コンテンツテーブルT3とタグ情報テーブルT5、はそれぞれ1対多であることを示す。
【0046】
コンテンツブロックテーブルT1は、コンテンツID、ブロック番号、アップロード済状態、ローカル有無、コンテンツデータ位置、コンテンツブロック長、及び視聴ポイントの各項目を有している。
ここで、コンテンツIDはコンテンツデータの識別情報である。例えば、この項目の値は、「I」、「J」、又は「K」である。また、ブロック番号はコンテンツブロックの識別情報であり、コンテンツデータ中でのコンテンツブロックの順序を示す情報である。例えば、この項目の値は、「1」、「2」、・・・、「6」であり、コンテンツデータ中でのコンテンツブロックの順序を示す。
アップロード済状態は、アップロード済みか否か、つまり、コンテンツブロックのバックアップが完了したか否かを示す情報である。例えば、この項目の値は、バックアップが完了していないことを示す「未アップロード」、又はバックアップが完了したことを示す「アップロード済み」のいずれかである。ローカル有無は、コンテンツブロックが記憶部b11のコンテンツブロック記憶部b113にあるか否かを示す情報である。例えば、この項目の値は、コンテンツブロックがコンテンツブロック記憶部b113にあることを示す「あり」、又はコンテンツブロックがコンテンツブロック記憶部b113にないことを示す「なし」である。
【0047】
コンテンツデータ位置は、コンテンツデータ中でのコンテンツブロックの位置を示す情報である。この項目の値は、コンテンツブロックの先頭バイトについてのコンテンツデータ中での位置情報(バイト数)である。コンテンツブロック長は、コンテンツブロックのデータ長を示す情報である。視聴ポイントは、視聴ポイント計算部b142が計算した視聴ポイントPである。なお、このコンテンツブロックテーブルT1の主キーは、コンテンツID及びブロック番号である。また、コンテンツID及びブロック番号とコンテンツブロックの記憶場所を示す情報(パス、ファイル名)とは対応付けて記憶されている。NWメディアサーバb1の各部は、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号と、パス及びファイル名との変換を行う。
【0048】
提供ログテーブルT2は、コンテンツID、ブロック番号、及び年月日の各項目を有している。コンテンツID、ブロック番号は、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
年月日は、コンテンツブロックを提供した年月日を示す情報である。なお、この提供ログテーブルT2の主キーは、コンテンツID、ブロック番号である。なお、年月日は時刻を含んでもよい。
【0049】
コンテンツテーブルT3は、コンテンツID、リソースパス、ファイル名、コンテンツ名、ファイルサイズ、コンテンツブロック数、コンテンツタイプ、登録日、及びバックアップ可否の各項目を有している。コンテンツIDは、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
リソースパスは、コンテンツデータを記憶するフォルダ名である。ファイル名は、コンテンツデータのファイル名である。コンテンツ名は、コンテンツデータのコンテンツ名である。ファイルサイズは、コンテンツデータのファイルのデータ量を示す情報である。コンテンツブロック数は、コンテンツデータから分割したコンテンツブロックの総数を示す情報である。コンテンツタイプは、コンテンツデータの種類を示す情報である。例えば、この項目の値は、「写真」、「動画」、「音声」である。登録日は、コンテンツデータを記憶部b11に記憶した日を示す情報である。バックアップ可否は、コンテンツブロックのバックアップを許可するか否かを示す情報であり、例えば、コンテンツデータの登録時に利用者等が選択する情報である。この項目の値は、バックアップを許可することを示す「可」、又はバックアップを許可しないことを示す「否」である。
【0050】
提供コンテンツテーブルT4は、IPアドレス、コンテンツID、ブロック番号、バイト位置、及び提供位置の各項目を有している。コンテンツID及びブロック番号は、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。
IPアドレスは、コンテンツデータの提供を受けている装置の識別情報であり、その装置のIPアドレスである。例えば、図1中のデータ提供システム1の場合はDMP A13のIPアドレスである。本実施形態では、IPアドレスを装置の識別情報としているが、本発明はこれに限らず、装置に予め登録された識別情報(例えば、MAC(Media Access Control address)アドレス、又はホスト名)であってもよく、提供コンテンツテーブルT4のIPアドレスに代えてこの識別情報を用いてもよい。
バイト位置は、提供中のデータの位置であってコンテンツブロックの先頭データからの位置を示す情報であり、バイト数で表わされる。提供位置は、提供中のデータ位置であってコンテンツデータの先頭からの位置を示す情報であり、バイト数で表わされる。つまり、バイト位置はコンテンツブロック内の相対値であり、提供位置はコンテンツデータ中の絶対位置を示す情報である。なお、バイト位置と提供位置との関係については、後述する。
【0051】
マークテーブルT4は、マークID、コンテンツID、ブロック番号、バイト位置、及びマーク名の各項目を有している。コンテンツID、ブロック番号、及びバイト位置は、上記のコンテンツブロックテーブルT4のものと同じであるので、説明は省略する。
マークIDは、マークの識別情報である。マーク名は、マークを付した箇所のコンテンツに対して利用者が選択した評価を示す情報である。例えば、この項目の値は、「とても面白い」、「面白い」、「面白くない」である。
【0052】
タグ情報テーブルT5は、コンテンツID、タグ名、及びタグ値の各項目を有している。コンテンツIDは、上記のコンテンツブロックテーブルT1のものと同じであるので、説明は省略する。タグ名は、コンテンツに対する付加情報であるタグの種類の識別情報である。例えば、この項目の値は、「お気に入りランク」である。タグ値は、タグ名が示す情報の値である。例えば、タグ名が「お気に入りランク」の場合、タグ値は、「1ランク」、「2ランク」・・・「5ランク」の5段階の値である。
マークポイントテーブルT6は、マーク名及びマークポイントの各項目を有している。マーク名は、上記のコンテンツブロックテーブルT4のものと同じであるので、説明は省略する。マークポイントは、マーク名に対する評価の数値を示す。
【0053】
図13は、本実施形態に係るマークポイントテーブルT6の一例を示す概略図である。この図において、マークポイントテーブルT6は、マーク名及びマークポイントの各項目を有している。例えば、図13では、マーク名「とても面白い」はポイント「+3」であり、「面白い」はポイント「+2」であり、「面白くない」はポイント「−1」である。
【0054】
<データ提供システム1の動作について>
以下、データ提供システム1の動作について、図14〜図21を用いて説明をする。
【0055】
図14は、本実施形態に係るコンテンツデータ登録処理の動作の一例を示すフロー図である。
(ステップS101)コンテンツ登録部b12は、コンテンツデータをコンテンツ記憶部b111に記憶する。その後、ステップS102に進む。
(ステップS102)コンテンツ登録部b12は、コンテンツ管理情報記憶部b112のコンテンツテーブルT3にレコードを追加する。具体的には、コンテンツ登録部b12は、コンテンツIDが払い出したコンテンツID、リソースパスがステップS101にてコンテンツデータを記憶したフォルダ名、ファイル名がコンテンツデータのファイル名のレコードを生成する。コンテンツ登録部b12は、生成したレコードに、ファイルサイズ、コンテンツタイプ、登録日、バックアップ可否を追加し、情報を追加したレコードをコンテンツテーブルT3に追加する。
【0056】
図15は、本実施形態に係るコンテンツブロック生成処理の動作の一例を示すフロー図である。
(ステップS201)コンテンツデータ検知部b131は、時間Tsが経過したか否かを判定する。時間Tsが経過したと判定した場合(Yes)、ステップS202に進む。一方、時間Tsが経過していないと判定した場合(No)、ステップS201をくり返す。
(ステップS202)コンテンツデータ検知部b131は、コンテンツデータ記憶部b111内を検索してコンテンツデータが記憶されているか否かを判定することで、コンテンツブロックに分割されていないコンテンツデータ(新規コンテンツデータという)が記憶されているか否かを判定する。新規コンテンツデータが記憶されている場合(Yes)、ステップS203に進む。一方、新規コンテンツデータが記憶されていなかった場合(No)、ステップS201に戻る。
(ステップS203)ブロック分割部b132は、ステップS202で記憶されていると判定した新規コンテンツデータをコンテンツブロックに分割し、コンテンツブロック記憶部b113に記憶する。その後、ステップS204に進む。
【0057】
(ステップS204)ブロック分割部b132は、コンテンツ管理情報記憶部b112のコンテンツブロックテーブルT1及びコンテンツテーブルT3を更新する。具体的には、ブロック分割部b132は、新規コンテンツデータのリソースパス及びファイル名を検索キーにして、コンテンツテーブルT3から新規コンテンツデータのコンテンツIDを読み出す。ブロック分割部b132は、ステップS203にて分割したコンテンツブロックに対して、新規コンテンツデータ中でのコンテンツブロックの順(再生される時間順)に通番を払出す。ブロック分割部b132は、コンテンツブロック各々に対応するレコードをコンテンツブロックテーブルT1に追加する。ブロック分割部b132は、コンテンツIDが読み出したコンテンツID、ブロック番号が払い出したブロック番号、アップロード済状態がバックアップが完了していないことを示す「未アップロード」、ローカル有無がコンテンツブロックがコンテンツブロック記憶部b113にあることを示す「あり」のレコードを生成する。ブロック分割部b132は、生成したレコードにコンテンツデータ位置及びコンテンツブロック長を追加する。ブロック分割部b132は、情報を追加したレコードをコンテンツブロックテーブルT1に追加する。また、ブロック分割部b132は、コンテンツテーブルT3のコンテンツブロック数にコンテンツデータから分割したコンテンツブロックの総数を書き込む。その後、ステップS205に進む。
【0058】
(ステップS205)ブロック分割部b132は、ステップS203にてコンテンツブロックに分割した新規コンテンツデータをコンテンツデータ記憶部b111から削除する。その後、ステップS206に進む。
(ステップ206)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS201に戻る。
【0059】
図16は、本実施形態に係るバックアップ処理の動作の一例を示すフロー図である。
(ステップS301)バックアップ部b133は、時間Tuが経過したか否かを判定する。時間Tuが経過したと判定した場合(Yes)、ステップS302に進む。一方、時間Tuが経過していないと判定した場合(No)、ステップS301をくり返す。
(ステップS302)バックアップ部b133は、コンテンツ管理情報記憶部b112のコンテンツブロックテーブルT1でアップロード済状態が「未アップロード」のレコードがあるか否かを判定する。「未アップロード」のレコードがある場合(Yes)、ステップS303に進む。一方、「未アップロード」のレコードがない場合(No)、ステップS307に進む。
【0060】
(ステップS303)バックアップ部b133は、ステップS302で未アップロードと判定したコンテンツブロックがバックアップを許可されているか否かを判定する。具体的には、バックアップ部b133は、ステップS302で判定した「未アップロード」のレコードのコンテンツIDを読み出し、読み出したコンテンツIDを検索キーとして、コンテンツテーブルT3のバックアップ可否を読み出す。読み出したバックアップ可否の値が「可」である場合(Yes)、ステップS304に進む。一方、バックアップ可否の値が「否」である場合(No)、ステップS307に進む。
(ステップS304)バックアップ部b133は、提供コンテンツテーブルT4にレコードが存在するか否か、つまり、コンテンツデータをコンテンツ提供処理部b15が提供中であるか否かを判定する。コンテンツデータを提供中であると判定した場合(Yes)、ステップS307に進む。これにより、コンテンツデータを提供中に、CPUやネットワークに負荷をかけてデータの提供を阻害することを防止することができる。一方、コンテンツデータを提供中でないと判定した場合(No)、ステップS305に進む。
【0061】
(ステップS305)バックアップ部b133は、ステップS304でコンテンツデータを提供中でないと判定したレコードのコンテンツブロックを、ストレージサーバD1のバックアップ記憶部b11にバックアップする。その後、ステップS306に進む。
(ステップS306)バックアップ部b133は、ステップS305でバックアップしたコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを抽出し、抽出したレコードのアップロード済状態を「アップロード済み」に更新する。その後、ステップS307に進む。
(ステップS307)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS301に戻る。
なお、図16の動作において、ステップS304の処理を省略し、ステップS303で読み出したバックアップ可否の値が「可」である場合(Yes)にステップS305に進んでもよい。このような構成は、CPUが高性能である場合やネットワークがブロードバンドネットワークである場合など、負荷よりもコンテンツブロックのアップロードを優先する場合に好適である。
【0062】
図17は、本実施形態に係るマーク付与処理の動作の一例を示すシークエンス図である。
(ステップS401)DMP A13のコンテンツ再生部a12は、NWメディアサーバb1のコンテンツ提供部b151へ、コンテンツデータの提供を要求する提供要求を送信する。この提供要求には、コンテンツID及びDMP A13のIPアドレスが含まれる。その後、ステップS402に進む。
(ステップS402)コンテンツ提供部b151は、コンテンツ管理情報記憶部b112のコンテンツテーブルT3に、ステップS401で取得したコンテンツIDがある場合、そのコンテンツIDに対応する情報を取得する。その後、ステップS403に進む。
なお、ステップS401で取得したコンテンツIDがない場合、コンテンツ提供部b151はコンテンツ再生部a12に対して、コンテンツを提供することができないことを示す情報を送信し、動作を終了する。
【0063】
(ステップS403)コンテンツ提供部b151は、提供コンテンツレコードを生成する。具体的には、コンテンツ提供部b151は、提供コンテンツテーブルT4のIPアドレス及びコンテンツIDが、ステップS401の提供要求に含まれるコンテンツID及びIPアドレスのレコードを生成する。また、コンテンツ提供部b151は、ブロック番号が提供を開始するコンテンツブロックのブロック番号、バイト位置、及び提供位置(例えば、コンテンツデータを先頭から提供する場合、ブロック番号が「1」、バイト位置が「0」、及び、提供位置「0」)を、生成したレコードに追加する(このレコードを提供コンテンツレコードという)。その後、ステップS403に進む。
(ステップS404)コンテンツ提供部b151は、コンテンツ管理情報記憶部b112の提供コンテンツテーブルT4に、ステップS403で生成した提供コンテンツレコードを追加して書き込む。その後、ステップS405に進む。
【0064】
(ステップS405)コンテンツ提供部b151は、コンテンツ再生部a12にコンテンツブロックを提供する。ここで、コンテンツ提供部b151は、コンテンツブロックテーブルT1のブロック番号の順序に従ってコンテンツブロックを読み出し、読み出したコンテンツブロックをコンテンツ再生部a12に提供する。その後、ステップS406に進む。
(ステップS406)コンテンツ提供部b151は、提供中のコンテンツブロックのコンテンツIDと同じコンテンツIDのレコードをコンテンツブロックテーブルT1から読み出し、読み出したレコードのコンテンツデータ位置とバイト位置から提供位置を計算する。この計算方法については後述する。また、コンテンツ提供部b151は、提供中のコンテンツブロックのレコードを提供コンテンツテーブルT4から読み出し、読み出したレコードのブロック番号、バイト位置、及び提供位置を更新する。
その後、コンテンツ提供部b151は、ステップS405,S406の処理をくり返す。なお、コンテンツデータの提供が終了した場合、コンテンツ提供部b151は、終了したコンテンツデータに対応する提供コンテンツテーブルのレコードを削除する。
【0065】
(ステップS410)DMP A13の入力受付部a13は、マーク付与を行うホームページ(HP)へのアクセス要求を受け付ける。その後、ステップS411に進む。
(ステップS411)NWメディアサーバb1のマーク付与部b153は、コンテンツ管理情報記憶部b112の提供コンテンツテーブルのレコードを読み出す。その後、ステップS412に進む。
(ステップS412)マーク付与部b153は、ステップS411にて読み出したレコードの情報を表示する。その後、マーク付与部b153は、ステップS411、S412の処理をくり返す。その後、ステップS413に進む。
【0066】
(ステップS413)マーク付与部b153は、入力部a14にてマークを付与することを示すキーが押下されると、マーク付与情報をマーク付与部b153に出力する。このマーク付与情報には、ステップS412で表示したレコードの情報のうち利用者が選択した情報が示すレコードのコンテンツID、IPアドレス、及び、利用者が選択したマーク名の情報が含まれる。その後、ステップS414に進む。
(ステップS414)マーク付与部b153は、ステップS413で入力されたマーク付与情報のコンテンツID及びIPアドレスのレコードを、提供コンテンツテーブルT4から読み出す。その後、ステップS415に進む。
(ステップS415)マーク付与部b153は、マークレコードを生成する。具体的には、マーク付与部b153は、マークIDが払い出したマークID、マーク名がステップS413で入力されたマーク名のレコードを生成する。また、マーク付与部b153は、ステップS414にて読み出したレコードのIPアドレス、ブロック番号、バイト位置を生成したレコードに追加する(このレコードをマークレコードという)。その後、ステップS416に進む。
(ステップS416)マーク付与部b153は、ステップS415で生成したマークレコードをマークテーブルT4に追加する。その後、ステップS417に進む。
(ステップS417)マーク付与部b153は、処理結果をPC A13に出力する。その後、動作を終了する。
【0067】
図20は、本実施形態に係るタグ情報の入力処理の動作の一例を示すシークエンス図である。
(ステップS420)DMP A13の入力受付部a13は、タグ入力を行うホームページ(HP)へのアクセス要求を受け付ける。その後、ステップS421に進む。
(ステップS421)NWメディアサーバb1のマーク付与部b153は、コンテンツ管理情報記憶部b112のコンテンツテーブルのレコードを読み出す。その後、ステップS412に進む。
(ステップS422)マーク付与部b153は、ステップS411にて読み出したレコードの情報(例えば、コンテンツ名やコンテンツの静止画像)を表示する。その後、ステップS413に進む。
【0068】
(ステップS423)マーク付与部b153は、入力部a14にて表示したコンテンツ名の選択と、選択したコンテンツのタグ値(例えば、お気に入りランクの5段階の値)の入力を受け付ける。その後、ステップS424に進む。
(ステップS424)マーク付与部b153は、ステップS423で受け付けた情報からタグ情報レコードを生成する。その後、ステップS425に進む。
(ステップS425)マーク付与部b153は、ステップS424で生成したタグ情報レコードをタグ情報テーブルT5に追加する。その後、ステップS426に進む。
(ステップS426)マーク付与部b153は、処理結果をPC A13に出力する。その後、動作を終了する。
【0069】
図19は、本実施形態に係るバイト位置と提供位置との関係を示す概念図である。図19(A)(上図)は、コンテンツブロックI1〜I6を示す。また、図19(B)(下図)は、コンテンツブロックI1〜I6の分割前のコンテンツデータIを示す。
図19(A)は、コンテンツブロックIj(j=1、2、3)のコンテンツブロック長がLjバイトであることを示す。また、この図は、バイト位置がLr1バイトであることを示し、コンテンツブロックI4の先頭からLr1バイトのデータr1が提供されていることを示す。
図19(B)は、データt1が、図19(A)中のデータr1に対応することを示す。また、図19(B)は、提供位置がLt1バイトであることを示し、データt1がコンテンツデータIの先頭からLt1バイトのデータであることを示す。つまり、バイト位置Lr1と提供位置Lt1との関係は、Lt1=ΣLj+Lr1である。ここで、jは整数であり、Σは提供コンテンツテーブルT4が記憶するブロック番号Nb、つまり、提供中のコンテンツブロックのブロック番号Nbより小さい番号のブロック番号jについて和をとることを示す。コンテンツ提供部b151は、この式で提供位置Lt1を計算する。また、逆にこの式を用いてLt1からLr1を計算する。
【0070】
図20は、本実施形態に係るブロック削除処理の動作の一例を示すフロー図である。
(ステップS501)空き容量検出部b141は、時間Tdが経過したか否かを判定する。時間Tdが経過したと判定した場合(Yes)、ステップS502に進む。一方、時間Tdが経過していないと判定した場合(No)、ステップS501をくり返す。
(ステップS502)空き容量検出部b141は、記憶部b11の空き容量を検出し、検出した空き容量が予め定めた閾値以下であるか否かを判定する。空き容量が閾値以下であると判定した場合(Yes)、ステップS51に進む。一方、空き容量が閾値より大きいと判定した場合(No)、ステップS506に進む。
(ステップS51)視聴ポイント計算部b142は、コンテンツブロック毎に視聴ポイントPを計算する。なお、視聴ポイント計算部b142が行う視聴ポイント計算処理の詳細は、図21を用いて後述する。視聴ポイント計算部b142は、コンテンツブロックT1の視聴ポイントの値を、計算した視聴ポイントPで更新する。その後、ステップS503に進む。
【0071】
(ステップS503)ブロック削除部b143は、ステップS51にて計算した視聴ポイントPが一番低いブロックコンテンツを、コンテンツブロック記憶部b113から削除する。具体的には、ブロック削除部b143は、コンテンツブロックテーブルT1のレコードのうちローカル有無の値が「あり」のレコードを読み出し、読み出したレコードのうち視聴ポイントの値が一番低いレコードのコンテンツブロックを削除する。その後、ステップS504に進む。
(ステップS504)ブロック削除部b143は、ステップS503で削除したコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック削除部b143は、読み出したレコードのローカル有無の値を「なし」に更新する。その後、ステップS505に進む
(ステップS505)ブロック削除部b143は、記憶部b11の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下であるか否かを判定する。空き容量が閾値以下であると判定した場合(Yes)、ステップS503に戻る。一方、空き容量が閾値より大きいと判定した場合(No)、ステップS506に進む。
(ステップS506)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS501に戻る。
【0072】
図21は、本実施形態に係る視聴ポイント計算処理の動作の一例を示すフロー図である。なお、以下の計算処理において、定数w1〜w5は、各ポイントP1〜P5間のポイントの重み付けの大きさを示す定数である。なお、この計算処理は、コンテンツブロック毎に行われる。
(ステップS511)視聴ポイント計算部b142は、登録日時が遅いコンテンツのコンテンツブロックほどポイントが高くなるように、登録日ポイントP1を計算する。具体的には、視聴ポイント計算部b142は、定数w1、当日の日付Dt、及びコンテンツテーブルT3の登録日Drを用いて、登録日ポイントP1を、P1=w1−(Dt−Dr)として計算する。例えば、w1=100、コンテンツ登録が2日前とした場合、P1=100−2=98ポイントとなる。なお、登録日ポイントP1の計算には、日に加えて時刻を含めてもよい。
これにより、NWメディアサーバb1は、登録した日時が古く利用者の記憶も古いため提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、登録した日時が新しく利用者の記憶も新しいため提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、ストレージサーバD1からNWメディアサーバb1を介して提供する場合と比較して、迅速にコンテンツデータを提供することができる。
【0073】
(ステップS512)視聴ポイント計算部b142は、コンテンツデータ中での順序が早いコンテンツブロックほどポイントが高くなるように、ブロック番号ポイントP2を計算する。具体的には、視聴ポイント計算部b142は、定数w2、変更可能な重み付け定数X、コンテンツブロック番号Mbを用いて、ブロック番号ポイントP2を、P2=w2×(X−Mb)として計算する。ここで、P2が0以下になる場合には、P2=0としてもよい。例えば、w2=10、X=10、Mb=2とした場合、P2=10×(10−2)=80ポイントとなる。
これにより、NWメディアサーバb1は、一般的にコンテンツデータは先頭から順に提供されるため、順序が遅く提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、順序が早く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0074】
(ステップS513)視聴ポイント計算部b142は、提供回数の実績が多いコンテンツブロックほどポイントが高くなるように、提供頻度ポイントP3を計算する。具体的には、視聴ポイント計算部b142は、変更可能な定数Yとして、コンテンツブロックのコンテンツID、コンテンツ番号、及び、Y日前から当日までの期間を検索キーとして、提供ログテーブルT2のレコードを抽出して、抽出したレコードの個数をYで除算した値、つまり、直近Y日以内についての当該コンテンツブロックの一日あたりの平均視聴回数Mcを算出する。また、視聴ポイント計算部b142は、Y日前から当日までの期間を検索キーとして、提供ログテーブルT2の全コンテンツブロックのレコードを抽出して、全コンテンツブロックの一日あたりの平均視聴回数Maを算出する。視聴ポイント計算部b142は、定数w3、コンテンツブロックの平均視聴回数Mc、及び全コンテンツブロックの平均視聴回数Maを用いて、提供頻度ポイントP3を、P3=w3×(Mc−Ma)として計算する。例えば、w3=50、Y=10、Mc=5、Ma=2とした場合、P3=50×(5−2)=150ポイントとなる。
これにより、NWメディアサーバb1は、提供回数の実績が少なく提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、提供回数の実績が多く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0075】
(ステップS514)視聴ポイント計算部b142は、マークを付された数が多いコンテンツブロックほどポイントが高くなるように、マークポイントP4を計算する。ここで、視聴ポイント計算部b142は、利用者の嗜好の高さを示す重みをつけてマークを付された数を計算する。具体的には、視聴ポイント計算部b142は、コンテンツブロックのコンテンツID及びコンテンツ番号を検索キーとして、マークテーブルT4のレコードを読み出す。視聴ポイント計算部b142は、読み出したレコードのマーク名を検索キーとしてマークポイントテーブルT6のマークポイントを参照する。視聴ポイント計算部b142は、読み出したレコードのマークポイントを合算する(合算値をPtとする)。視聴ポイント計算部b142は、定数w4、マークポイントの合算値Ptを用いて、マークポイントP4を、P4=MIN(w4、Pt)として計算する。ここで、MIN(w4、Pt)は、w4、Ptの最小値を示す。つまり、この計算では、P4に上限値w4を設けている。例えば、w4=100のときに、あるコンテンツブロックのレコードが、マーク名「とても面白い」(+3ポイント)が1個、「面白い」(+2ポイント)が4個、「面白くない」(−1ポイント)が1個である場合、Pt=10となり、P4=10ポイントとなる。
これにより、NWメディアサーバb1は、マークを付された数が少なく利用者の嗜好も低くて、提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、マークを付された数が多く利用者の嗜好も高くて、提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0076】
(ステップS515)視聴ポイント計算部b142は、利用者の嗜好や関心が高いコンテンツのコンテンツブロックほどポイントが高くなるように、お気に入りポイントP5を計算する。具体的には、視聴ポイント計算部b142は、コンテンツブロックのコンテンツID、及びタグ名「お気に入りランク」を検索キーとして、タグ情報テーブルのタグ値の値(Mf)を参照する。視聴ポイント計算部b142は、定数w5及びタグ値(Mf)を用いて、お気に入りポイントP5を、P5=w5×Mfとしてとして計算する。例えば、w5=20、Mf=5とした場合、P5=20×5=100ポイントとなる。
これにより、NWメディアサーバb1は、利用者の嗜好や関心が低く提供頻度が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。逆に、NWメディアサーバb1は、利用者の嗜好や関心が高く提供頻度が高いコンテンツブロックのコンテンツデータを、NWメディアサーバb1の記憶部b11から提供することができ、迅速にコンテンツデータを提供することができる。
【0077】
(ステップS516)視聴ポイント計算部b142は、ステップS511〜S515にて算出した登録日ポイントP1、ブロック番号ポイントP2、提供頻度ポイントP3、マークポイントP4、及びお気に入りポイントP5を合算する。視聴ポイント計算部b142は、合算した値を視聴ポイントPとしてコンテンツブロックテーブルT1の視聴ポイントに書き込む。その後、動作を終了する。
なお、本実施形態において、ステップS516にてポイントP1〜P5の全てを合算して視聴ポイントPを計算しているが、本発明はこれに限らず、ポイントP1〜P5のいずれか又はいずれかの組み合わせの和を、視聴ポイントPとして計算してもよい。
【0078】
図22は、本実施形態に係るブロック取得処理の動作の一例を示すフロー図である。
(ステップS601)ブロック取得部b152は、時間Tgが経過したか否かを判定する。時間Tgが経過したと判定した場合(Yes)、ステップS602に進む。一方、時間Tgが経過していないと判定した場合(No)、ステップS601をくり返す。
(ステップS602)ブロック取得部b152は、提供コンテンツテーブルT4のレコードがあるか否かを判定することで、提供中のコンテンツデータがあるか否かを判定する。提供中のコンテンツデータがあると判定した場合(Yes)、ステップS603に進む。一方、提供中のコンテンツデータがないと判定した場合(No)、ステップS607に進む。
【0079】
(ステップS603)ブロック取得部b152は、提供コンテンツテーブルT4のコンテンツIDを検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック取得部b152は、読み出したレコードのローカル有無の値が「なし」のレコードがあるか否かを判定することで、提供中のコンテンツのコンテンツブロックに削除されたコンテンツブロックがあるか否かを判定する。削除されたコンテンツブロックがあると判定した場合(Yes)、ブロック取得部b152はストレージサーバD1とセッションを確立して、ステップS604に進む。削除されたコンテンツブロックがないと判定した場合(No)、ステップS607に進む。
【0080】
(ステップS604)ブロック取得部b152は、提供コンテンツテーブルT4のコンテンツID及びブロック番号Mpを読み出す。ブロック取得部b152は、読み出したコンテンツID、及びブロック番号「Mp」から「Mp+n」の範囲を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。なお、ブロック番号「Mp」から「Mp+n」のコンテンツブロックが提供準備ブロックである。ブロック取得部b152は、読み出したレコードにローカル有無の値が「なし」のレコードがあるか否かを判定することで、コンテンツブロック記憶部b113に提供準備ブロックがすべてあるか否かを判定する。提供準備ブロックがすべてあると判定した場合(Yes)、ステップS607に進む。一方、提供準備ブロックが一つでもないと判定した場合(No)、ステップS605に進む。
【0081】
(ステップS605)ブロック取得部b152は、ステップS604でコンテンツブロック記憶部b113にないと判定した提供準備ブロックを、ストレージサーバD1からダウンロードし、コンテンツブロック記憶部b113に記憶する。その後、ステップS606に進む。
(ステップS606)ブロック取得部b152は、ステップS605でダウンロードしたコンテンツブロックのコンテンツID及びブロック番号を検索キーとして、コンテンツブロックテーブルT1のレコードを読み出す。ブロック取得部b152は、読み出したレコードのローカル有無の値を「あり」に更新する。その後、ステップS607に進む。
(ステップS607)NWメディアサーバb1の電源がオフになっている場合(Yes)、動作を終了する。一方、電源がオフになっていない場合(No)、ステップS601に戻る。
【0082】
このように、本実施形態では、NWメディアサーバb1、b2は、コンテンツデータを分割したコンテンツブロックを、視聴ポイントPに基づいて選択して削除し、提供するコンテンツブロックが削除されている場合、ネットワークを介して接続されたストレージサーバD1にバックアップされた当該コンテンツブロックをダウンロードして提供する。これにより、NWメディアサーバb1、b2は、例えば、視聴ポイントPが低い、つまり、提供頻度が低いコンテンツブロックを削除し、ローカルディスクの記憶容量が不足することを防止することができる。また、NWメディアサーバb1、b2は、視聴ポイントPが高い、つまり、提供頻度が高いコンテンツブロックをローカルディスクに記憶して提供することができ、ネットワークに負荷をかけずにデータを提供することができる。また、ネットワーク障害等によって記憶装置と通信ができない場合であっても、例えば、コンテンツブロック記憶部b113が記憶する提供頻度が高いコンテンツブロックを提供することができる。また、NWメディアサーバb1、b2は、コンテンツデータを分割したコンテンツブロックをダウンロードするので、コンテンツデータをダウンロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
【0083】
また、本実施形態では、NWメディアサーバb1、b2は、コンテンツデータを分割してコンテンツブロックを生成し、生成したコンテンツブロックをストレージサーバD1にバックアップするので、コンテンツデータをアップロードする場合と比較して、通信の中断や再開の制御を容易にすることができる。
また、本実施形態では、NWメディアサーバb1、b2は、コンテンツブロック記憶部b113の空き容量が予め定めた閾値以下になった場合に、視聴ポイントPに基づいて、コンテンツブロック記憶部b113が記憶するコンテンツブロックを削除するので、利用者が常にコンテンツの所在やディスクの空き容量を意識して空き容量の計算等をして操作をすることなく、ローカルディスクの記憶容量が不足することを防止することができる。
【0084】
(変形例1)
以下、本実施形態の変形例1について説明をする。
上記実施形態では、コンテンツブロック長が可変長である場合について説明をした。本変形例では、コンテンツブロック長が固定長である場合について説明をする。
【0085】
図23は、本実施形態の変形例1に係るコンテンツ管理情報記憶部b112が記憶するテーブルとそれらの関係を示す概念図である。本変形例1に係るテーブル(図23)と上記実施形態に係るテーブル(図12)とを比較すると、図12のコンテンツブロックテーブルT1に代えてコンテンツブロックテーブルT7が記憶されている点、及び、定義表T8が記憶されている点が異なる。しかし、他のテーブルT2〜T6については上記実施形態と同じであるので、説明は省略する。
【0086】
コンテンツブロックテーブルT7は、コンテンツID、ブロック番号、アップロード済状態、ローカル有無、及び視聴ポイントの各項目を有している。また、定義表T8はブロック長を記憶する。
本変形例1では、ブロック分割部b132は、定義表T8が記憶するブロック長の長さでコンテンツデータを分割してコンテンツブロックを生成する。また、コンテンツ提供部b151は、提供位置Lt1を、Lt1=(Nb−1)L+Lr1で計算する。ここで、Nbは提供コンテンツテーブルT4が記憶するブロック番号Nb、つまり、提供中のコンテンツブロックのブロック番号Nbを示す。
【0087】
<コンテンツブロック長について>
コンテンツブロック長の一例としては、「(4096×1024=)4194304」バイトである。例えば、httpプロトコルのような通信プロトコルの場合、プロトコル上のオーバヘッドは200バイト程度であり、上記の値であれば、プロトコルのオーバヘッドも十分小さくすることができる。また、上記の値は、ハードディスクドライブのセクタサイズの整数倍であり、整数倍でない場合と比較して、ハードディスクドライブの利用効率がよい。
【0088】
しかし、コンテンツブロック長は、この長さより小さくてもよい。この場合、より細かい粒度でコンテンツブロックを管理でき、真に必要なコンテンツブロックのみコンテンツブロック記憶部b113に残すことができる。また、この場合、必要なコンテンツブロックがコンテンツブロック記憶部b113にあるので、ストレージサーバD1からNWメディアサーバb1を介して提供する場合と比較して、迅速にコンテンツデータを提供することができる。
また、逆に、コンテンツブロック長は、この長さより大きくてもよい。この場合、プロトコルのオーバヘッドを小さくすることができる。
【0089】
このように、本変形例1によれば、コンテンツブロック長が固定長であるので、可変長の場合と比較して、提供位置の計算処理による処理負荷を軽減することができる。
【0090】
(変形例2)
以下、本実施形態の変形例2について説明をする。
上記実施形態では、コンテンツブロックがファイルとして管理する場合について説明をした。本実施形態では、ハードディスクドライブの物理記憶領域の単位(セクタ単位)で管理する場合について説明をする。
【0091】
図24は、本実施形態の変形例2に係るコンテンツブロックの管理方法を示す概念図である。この図において、行は階層を示し、列は分割単位を示す。この図は、階層が、利用者が扱う単位のユーザレベル、OS(Operating System)等が扱う単位のファイルシステムレベル、及びハードディスクドライブの物理記憶領域の単位(セクタ単位)に分類されていることを示す。また、この図において、鎖線で囲んだ記憶領域は、コンテンツブロックを記憶する記憶単位を示す。
【0092】
分割単位がファイル分割パターン(1番左の列)では、上記実施形態の場合である。この場合、ユーザレベルがコンテンツデータであり、ファイルシステムレベルではコンテンツデータを小さいサイズのファイルに分割している。ここで、コンテンツデータとコンテンツブロックとの関係は、コンテンツ管理情報記憶部b112が記憶するテーブルの情報(コンテンツ管理情報という)として記憶される。なお、ファイルシステムレベルのファイルと物理レベルのセクタは、既存のファイルシステムで管理されている。
【0093】
これに対し、変形例2に係るコンテンツ管理情報記憶部b112では、セクタ単位でコンテンツブロックを記憶して管理する。
まず、一例として、分割単位がセクタ分割パターン(左から2番目の列)では、ユーザレベル及びファイルシステムレベルがコンテンツデータである。この場合、物理レベルでは、セクタ単位のデータを、コンテンツブロックとして記憶する。この場合、セクタを管理するファイルシステムでコンテンツ管理情報を管理する。例えば、コンテンツID及びブロック番号とセクタの識別情報とが対応付けられ、ファイルシステムは、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号とセクタの識別情報との変換を行う。
【0094】
また、別の一例として、分割単位が連続する複数セクタ(連続複数セクタという)を1単位として分割する分割パターン(左から3番目の列)では、セクタ分割パターンと同様に、ユーザレベル及びファイルシステムレベルがコンテンツデータである。この場合、物理レベルでは、連続複数セクタのデータを1単位として、コンテンツブロックとして記憶する。この場合、セクタを管理するファイルシステムでコンテンツ管理情報を管理する。例えば、コンテンツID及びブロック番号と連続複数セクタの識別情報(例えば、連続する複数セクタの先頭のセクタ)とが対応付けられ、ファイルシステムは、記憶されたその対応情報に基づいて、コンテンツID及びブロック番号と連続複数セクタのとの変換を行う。
【0095】
このように、本変形例2では、NWメディアサーバb1、b2は、セクタ単位でコンテンツブロックを記憶して管理する。これにより、NWメディアサーバb1は、OSの処理負荷を軽減することができる。
【0096】
なお、上記実施形態において、連続ドラマやアニメーションのように、連続したストーリー等が回に分けられるコンテンツ場合、以下のように、回を示す情報に基づいて視聴ポイントを算出してもよい。
例えば、視聴ポイント計算部b142は、再生済みの回より小さい回のコンテンツのコンテンツブロックのポイントを、再生中の回より大きい回のコンテンツのコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。再生済みの回より小さい回のコンテンツは、一度再生されると再び再生される可能性が低く、提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。なお、回を示す情報として、録画日時とタイトルを用いてもよい。
また、視聴ポイント計算部b142は、再生済みの回の次の次の回以降のコンテンツコンテンツのコンテンツブロックのポイントを、再生済みの回の次の回のコンテンツのコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。再生済みの回の次の次の回以降のコンテンツコンテンツは、再生済みの回の次の回のコンテンツが再生されるまで視聴される可能性が極端に低く、すぐに提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。
【0097】
また、回を示す情報に代えて、又は加えて、スキップ操作や早送り操作の情報に基づいて視聴ポイントを算出してもよい。
例えば、視聴ポイント計算部b142は、連続したストーリー等が回に分けられるコンテンツ毎に、スキップ操作をされたコンテンツの開始からのバイト位置を記憶部から読み出す。視聴ポイント計算部b142は、同じバイト位置が予め定められた回数以上、スキップ操作がされている場合、そのスキップ開始からスキップ終了位置に含まれるコンテンツブロックのポイントを、これ以外のコンテンツブロックのポイントより低いポイントとして、視聴ポイントPに加算してもよい。連続したストーリー等が回に分けられるコンテンツでは、コマーシャルや同じシーンが、毎回、同じ時間帯に行われる場合がある。利用者がこの時間帯をスキップ操作でスキップ(又は早送り操作で早送り)した場合、次の回以降でも、同じ時間帯をスキップ(又は早送り)する可能性が高く、提供する可能性が低いコンテンツブロックを優先して削除し、NWメディアサーバb1の記憶領域の空き容量を確保することができる。
【0098】
また、上記実施形態では、NWメディアサーバb1、b2が、記憶部b11の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下になった場合にコンテンツブロックを削除する場合について説明をした。しかし、本発明はこれに限らず、NWメディアサーバb1、b2は、コンテンツブロック記憶部b113の記憶領域の空き容量を検出し、検出した空き容量が予め定めた閾値以下になった場合にコンテンツブロックを削除してもよい。また、NWメディアサーバb1、b2は、記憶部b11又はコンテンツブロック記憶部b113の記憶領域の使用量を検出し、使用量が予め定めた閾値以上になった場合にコンテンツブロックを削除してもよい。
【0099】
また、上記実施形態において、複数のNWメディアサーバb1、b2がストレージサーバD1にバックアップしたコンテンツブロックを共有してもよい。例えば、DMS B1がコンテンツブロックと、当該コンテンツブロックについてのコンテンツブロックテーブルT1及びコンテンツテーブルT2のレコードと、をストレージサーバD1にアップロードする。次に、ハードディスクレコーダB2は、DMS B1がアップロードしたレコードをダウンロードする。ハードディスクレコーダB2は、ダウンロードしたレコードのコンテンツデータの提供要求を受け付けた場合、ストレージサーバD1にバックアップしたコンテンツブロックをダウンロードして提供してもよい。
【0100】
また、上記実施形態において、コンテンツブロック長は、記憶部b11の記憶容量に基づいて決定されてもよい。また、コンテンツブロック長は、コンテンツデータのデータ量に基づいて決定されてもよい。また、コンテンツブロック長は、通信パケットのデータ量に基づいて決定されてもよい。
また、上記実施形態において、記憶部b11は、NWメディアサーバb1、b2以外の装置に備えられてもよい。
【0101】
なお、上述した実施形態におけるNWメディアサーバb1の一部、例えば、コンテンツ登録部b12、ブロック登録処理部b13、ブロック削除処理部b14、コンテンツデータ検知部b131、ブロック分割部b132、バックアップ部b133、空き容量検出部b141、視聴ポイント計算部b142、ブロック削除部b143、コンテンツ提供部b151、ブロック取得部b152、及びマーク付与部b153をコンピュータで実現するようにしても良い。その場合、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、NWメディアサーバb1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【0102】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。
【符号の説明】
【0103】
A11・・・テレビ、A12・・・PC、A13・・・DMP、B1・・・DMS、B2・・・ハードディスクレコーダ、b1・・・NWメディアサーバ(データ提供装置)、D1・・・ストレージサーバ(記憶装置)、a11・・・表示部、a12・・・コンテンツ再生部、a13・・・入力受付部、a14・・・入力部、b11・・・記憶部、b12・・・コンテンツ登録部、b13・・・ブロック登録処理部、b14・・・ブロック削除処理部、d11・・・バックアップ記憶部、b111・・・コンテンツデータ記憶部、b112・・・コンテンツ管理情報記憶部、b113・・・コンテンツブロック記憶部、b131・・・コンテンツデータ検知部、b132・・・ブロック分割部、b133・・・バックアップ部、b141・・・空き容量検出部、b142・・・視聴ポイント計算部、b143・・・ブロック削除部、b151・・・コンテンツ提供部、b152・・・ブロック取得部、b153・・・マーク付与部
【特許請求の範囲】
【請求項1】
連続したデータを提供するデータ提供装置において、
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理部と、
前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理部と、
を備えることを特徴とするデータ提供装置。
【請求項2】
前記連続したデータを分割してデータブロックを生成するブロック分割部と、
前記ブロック分割部が生成したデータブロックを前記記憶装置にバックアップするバックアップ部と、
を備えることを特徴とする請求項1に記載のデータ提供装置。
【請求項3】
前記データ提供処理部が提供したデータを再生するデータ再生部を備えることを特徴とする請求項1又は2に記載のデータ提供装置。
【請求項4】
前記ブロック削除処理部は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除することを特徴とする請求項1乃至3のいずれかの項に記載のデータ提供装置。
【請求項5】
前記データブロック各々の提供頻度を示す情報は、前記連続したデータ中でのデータブロックの順序を示す情報であることを特徴とする請求項1乃至4のいずれかの項に記載のデータ提供装置。
【請求項6】
マークを付与することを示す情報が入力されると、提供中のデータの位置を示すマーク情報をマークテーブルに記憶するマーク付与部を備え、
前記データブロック各々の提供頻度を示す情報は、前記データブロックに含まれるデータ区間における前記マークテーブルが記憶するマーク情報の数を示す情報であることを特徴とする請求項1乃至5のいずれかの項に記載のデータ提供装置。
【請求項7】
前記データブロックの提供頻度を示す情報は、前記データブロック各々の提供回数を示す情報であることを特徴とする請求項1乃至6のいずれかの項に記載のデータ提供装置。
【請求項8】
連続したデータを提供するデータ提供装置におけるデータ提供方法において、
前記データ提供装置が、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除する第1の過程と、
前記データ提供装置が、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供する第2の過程と、
を有することを特徴とするデータ提供方法。
【請求項9】
連続したデータを提供するデータ提供装置のコンピュータを
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理手段、
前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理手段、
として機能させるデータ提供プログラム。
【請求項10】
連続したデータを提供するデータ提供装置と、前記データ提供装置から提供されたデータを再生するデータ再生装置と、を具備するデータ提供システムにおいて、
前記データ提供装置は、
前記連続したデータを分割したデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択し、記憶部から削除するブロック削除処理部と、
提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックを、ダウンロードして提供するデータ提供処理部と、
を備え、
前記再生装置は、前記データ提供装置が提供したデータを再生するデータ再生部を備えることを特徴とするデータ提供システム。
【請求項1】
連続したデータを提供するデータ提供装置において、
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理部と、
前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理部と、
を備えることを特徴とするデータ提供装置。
【請求項2】
前記連続したデータを分割してデータブロックを生成するブロック分割部と、
前記ブロック分割部が生成したデータブロックを前記記憶装置にバックアップするバックアップ部と、
を備えることを特徴とする請求項1に記載のデータ提供装置。
【請求項3】
前記データ提供処理部が提供したデータを再生するデータ再生部を備えることを特徴とする請求項1又は2に記載のデータ提供装置。
【請求項4】
前記ブロック削除処理部は、前記記憶部の空き容量が予め定めた閾値以下になった場合に、前記データブロック各々の提供頻度を示す情報に基づいて、前記記憶部が記憶するデータブロックを削除することを特徴とする請求項1乃至3のいずれかの項に記載のデータ提供装置。
【請求項5】
前記データブロック各々の提供頻度を示す情報は、前記連続したデータ中でのデータブロックの順序を示す情報であることを特徴とする請求項1乃至4のいずれかの項に記載のデータ提供装置。
【請求項6】
マークを付与することを示す情報が入力されると、提供中のデータの位置を示すマーク情報をマークテーブルに記憶するマーク付与部を備え、
前記データブロック各々の提供頻度を示す情報は、前記データブロックに含まれるデータ区間における前記マークテーブルが記憶するマーク情報の数を示す情報であることを特徴とする請求項1乃至5のいずれかの項に記載のデータ提供装置。
【請求項7】
前記データブロックの提供頻度を示す情報は、前記データブロック各々の提供回数を示す情報であることを特徴とする請求項1乃至6のいずれかの項に記載のデータ提供装置。
【請求項8】
連続したデータを提供するデータ提供装置におけるデータ提供方法において、
前記データ提供装置が、前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除する第1の過程と、
前記データ提供装置が、前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供する第2の過程と、
を有することを特徴とするデータ提供方法。
【請求項9】
連続したデータを提供するデータ提供装置のコンピュータを
前記連続したデータを分割したデータブロックであって記憶部が記憶するデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択して削除するブロック削除処理手段、
前記記憶部が記憶するデータブロックを前記連続したデータ中での順序に従って提供するとともに、提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックをダウンロードして提供するデータ提供処理手段、
として機能させるデータ提供プログラム。
【請求項10】
連続したデータを提供するデータ提供装置と、前記データ提供装置から提供されたデータを再生するデータ再生装置と、を具備するデータ提供システムにおいて、
前記データ提供装置は、
前記連続したデータを分割したデータブロックを、前記データブロック各々の提供頻度を示す情報に基づいて選択し、記憶部から削除するブロック削除処理部と、
提供するデータブロックが前記記憶部から削除されている場合、ネットワークを介して接続された記憶装置にバックアップされた当該データブロックを、ダウンロードして提供するデータ提供処理部と、
を備え、
前記再生装置は、前記データ提供装置が提供したデータを再生するデータ再生部を備えることを特徴とするデータ提供システム。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図23】
【図24】
【公開番号】特開2011−28792(P2011−28792A)
【公開日】平成23年2月10日(2011.2.10)
【国際特許分類】
【出願番号】特願2009−171318(P2009−171318)
【出願日】平成21年7月22日(2009.7.22)
【出願人】(397065480)エヌ・ティ・ティ・コムウェア株式会社 (187)
【Fターム(参考)】
【公開日】平成23年2月10日(2011.2.10)
【国際特許分類】
【出願日】平成21年7月22日(2009.7.22)
【出願人】(397065480)エヌ・ティ・ティ・コムウェア株式会社 (187)
【Fターム(参考)】
[ Back to top ]