JP2010026867A - コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 - Google Patents
コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 Download PDFInfo
- Publication number
- JP2010026867A JP2010026867A JP2008188827A JP2008188827A JP2010026867A JP 2010026867 A JP2010026867 A JP 2010026867A JP 2008188827 A JP2008188827 A JP 2008188827A JP 2008188827 A JP2008188827 A JP 2008188827A JP 2010026867 A JP2010026867 A JP 2010026867A
- Authority
- JP
- Japan
- Prior art keywords
- evaluation value
- content
- total evaluation
- node
- total
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000011156 evaluation Methods 0.000 title claims abstract description 696
- 238000007726 management method Methods 0.000 title claims abstract description 159
- 238000003860 storage Methods 0.000 title claims abstract description 85
- 238000009826 distribution Methods 0.000 title claims abstract description 9
- 238000012545 processing Methods 0.000 claims description 31
- 230000004044 response Effects 0.000 claims description 31
- 230000005540 biological transmission Effects 0.000 claims description 9
- 238000004321 preservation Methods 0.000 claims 1
- 238000011835 investigation Methods 0.000 abstract description 16
- 238000000034 method Methods 0.000 description 55
- 230000008569 process Effects 0.000 description 47
- 238000004364 calculation method Methods 0.000 description 26
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 10
- 230000001174 ascending effect Effects 0.000 description 5
- 238000012546 transfer Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
Images
Landscapes
- Information Transfer Between Computers (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
【課題】公開済コンテンツの総評価値を迅速かつ精度良く調査することを可能としたコンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード装置、及び総評価値管理方法を提供する。
【解決手段】総評価値管理装置は、選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して当該コンテンツの総評価値を要求し、ノード管理装置は、当該要求に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置に対してコンテンツの評価値を要求し、当該複数のノード装置からコンテンツの評価値を示す評価値情報を得て、各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出し、当該コンテンツの総評価値を示す総評価値情報を総評価値管理装置に対して送信するように構成した。
【選択図】図6
【解決手段】総評価値管理装置は、選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して当該コンテンツの総評価値を要求し、ノード管理装置は、当該要求に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置に対してコンテンツの評価値を要求し、当該複数のノード装置からコンテンツの評価値を示す評価値情報を得て、各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出し、当該コンテンツの総評価値を示す総評価値情報を総評価値管理装置に対して送信するように構成した。
【選択図】図6
Description
本発明は、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア(Peer to Peer(P2P))型の通信システムの技術分野に関する。
この種のピアツーピア型の通信システムにおいて、複数のコンテンツデータ(映画及び音楽等のコンテンツのデータ)の複製データ(以下、「レプリカ」という)を複数のノード装置に分散して保存(配置)させ、各ノード装置間でレプリカを利用可能としたコンテンツ分散保存システムが知られており、これにより、対故障性やアクセスの分散性が高められている。このように分散保存されたレプリカの所在は、例えば特許文献1に開示されるような分散ハッシュテーブル(以下、DHT(Distributed Hash Table)という)を利用して効率良く検索可能になっている。
このようなコンテンツ分散保存システムにおいて、コンテンツが利用可能となる前(公開前)に、当該システム内(各ノード装置)に分散保存させておいたレプリカの数が少なすぎる場合には、当該コンテンツの公開後にそのレプリカにアクセスが集中する結果となってしまうことが懸念される。逆に、当該レプリカの数が多すぎる場合には、各ノード装置におけるレプリカを保存するための記憶領域を無駄に消費してしまい、当該記憶領域を圧迫する結果となることが懸念される。従って、人気に応じた数のレプリカを、公開前に当該システム内に分散保存させておき、その後、他のノード装置にそのコンテンツを公開して利用可能とすることが望ましい。
特許文献1には、各ノード装置は、新たに該システムに投入されるコンテンツの公開前に、当該公開前のコンテンツの評価値(例えば、当該コンテンツの人気度を表す)と、既に保存済のコンテンツの評価値とを比較して、公開前コンテンツの評価値が大きいときは保存する一方、小さいときには保存しないようになっている。
特開2007−034630号公報
ところで、公開前コンテンツの初期総評価値を決定するためには、例えば、限定した数のノード装置に先行公開して人気度を予測したりする方法が考えられるが、この方法ではシステム管理者側にとって手間がかかるといった問題がある。
また、公開前コンテンツの総評価値が同様の公開済コンテンツの総評価値(各ノード装置で管理される各評価値の総和)と近い値になることを利用し、公開済コンテンツの総評価値を基にして公開前コンテンツの初期総評価値を予測することが考えられる。ここで、「同様の公開済コンテンツ」とは、例えば、映画におけるシリーズ物の前作であったり、音楽における同一アーティストの過去の作品を指す。
しかしながら、コンテンツのレプリカは複数のノード装置に分散され保存されているため、任意のコンテンツの総評価値を調べたい場合は、そのコンテンツのレプリカを保存する全てのノード装置について調査をしなければならず、ノード装置の数が多くなると、調査に多大な時間とコストがかかるという問題がある。
また、あるコンテンツのレプリカが複数のキャッシュに分割されて保存されるようなシステムにおいては、当該コンテンツの総評価値を求めるためには各キャッシュの総評価値を求めることが必要となり、分割キャッシュ数が増えることでシステムの負荷は増大するという問題もある。
また、コンテンツの総評価値を求めることができないというのは、言い換えればコンテンツの人気を知ることができないということであり、例えばコンテンツの人気順位を表す人気ランキングを作りたい場合にもこれができないという問題もある。
本発明は、以上の点等に鑑みてなされたものであり、公開済コンテンツの総評価値を迅速かつ精度良く調査することを可能としたコンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード装置、及び総評価値管理方法を提供することを課題とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データが複数のノード装置に分散して保存され、当該複製データを保存した各前記ノード装置によりそのコンテンツの評価を表す評価値が管理されるようにしたコンテンツ分散保存システムにおいて、各前記評価値の総和を表す総評価値をコンテンツ毎に管理する総評価値管理装置と、前記コンテンツの複製データを保存している複数のノード装置の情報を管理するノード管理装置と、を備え、前記総評価値管理装置は、前記複数のコンテンツのうちから何れかのコンテンツを選定するコンテンツ選定手段と、前記選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信する総評価値要求情報送信手段と、前記総評価値要求情報に応じて前記ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信する総評価値情報受信手段と、を備え、前記ノード管理装置は、前記総評価値管理装置からの前記総評価値要求情報を受信する総評価値要求情報受信手段と、前記受信された総評価値要求情報に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置を選定するノード装置選定手段と、前記選定された各ノード装置に対して、前記コンテンツの評価値の要求を示す評価値要求情報を送信する評価値要求情報送信手段と、前記評価値要求情報を受信した各ノード装置が保存している複製データに対応する前記総評価値要求情報に示されるコンテンツの評価値を示す評価値情報を、当該各ノード装置から受信する評価値情報受信手段と、前記受信された各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出する総評価値算出手段と、前記算出されたコンテンツの総評価値を示す総評価値情報を前記総評価値管理装置に対して送信する総評価値情報送信手段と、を備えることを特徴とする。
この発明によれば、ノード装置の数が多くなっても、調査に多大な時間とコストがかかることとなく、コンテンツの総評価値を迅速に調査することができる。
請求項2に記載の発明は、請求項1に記載のコンテンツ分散保存システムにおいて、前記総評価値算出手段は、前記受信された各評価値情報に示されるコンテンツの評価値の総和を、当該評価値情報を送信したノード装置の数で除算し、当該除算した値と、当該コンテンツの複製データを保存しているノード装置の数と、を乗算して当該コンテンツの総評価値を算出することを特徴とする。
この発明によれば、ノード装置の数が多くなっても、調査に多大な時間とコストがかかることとなく、コンテンツの総評価値を迅速、かつ精度良く調査することができる。
請求項3に記載の発明は、請求項1又は2に記載のコンテンツ分散保存システムにおいて、前記コンテンツ選定手段、前記総評価値要求情報送信手段、及び前記総評価値情報受信手段による一連の処理は、所定の時間間隔で繰り返し実行されることを特徴とする。
この発明によれば、所定の時間間隔で最新の総評価値を調査することができる。
請求項4に記載の発明は、請求項1乃至3の何れか一項に記載のコンテンツ分散保存システムにおいて、前記総評価値管理装置は、前記総評価値情報受信手段が前記ノード管理装置からの前記総評価値情報を受信した場合には、当該総評価値情報に示されるコンテンツの総評価値と、前回受信した総評価値情報に示される当該コンテンツの総評価値とを比較して大きい方を総評価値の最大値として求める総評価最大値算出手段を更に備えることを特徴とする。
この発明によれば、様々な観点からコンテンツを評価することができる。
請求項5に記載の発明は、請求項1乃至4の何れか一項に記載のコンテンツ分散保存システムにおいて、前記総評価値管理装置は、前記総評価値情報受信手段により前記総評価値情報が受信される度に、当該総評価値情報に示されるコンテンツの総評価値を別々に記憶しておき、所定期間内において前記受信された総評価値情報に示される当該コンテンツについての各前記総評価値の平均値を算出する総評価平均値算出手段を更に備えることを特徴とする。
この発明によれば、様々な観点からコンテンツを評価することができる。
請求項6に記載の発明は、請求項1乃至5の何れか一項に記載のコンテンツ分散保存システムにおいて、前記総評価値管理装置は、前記各コンテンツの総評価値、当該各コンテンツの総評価値の最大値、又は当該各コンテンツの総評価値の平均値に基づいて、コンテンツの人気順位を表わすランキングを決定するランキング決定手段を更に備えることを特徴とする。
この発明によれば、コンテンツの人気順位を表すランキングを効率良く決定することができる。
請求項7に記載の発明は、請求項1乃至6の何れか一項に記載のコンテンツ分散保存システムにおいて、前記総評価値管理装置は、前記総評価値が与えられていないコンテンツのキーワードを少なくとも一つ有し、且つ前記総評価値が与えられているコンテンツを特定するコンテンツ特定手段を更に備え、前記総評価値算出手段は、前記特定されたコンテンツの総評価値に基づいて、前記総評価値が与えられていないコンテンツの総評価値を算出することを特徴とする。
この発明によれば、システム管理者側に手間かけさせずに比較的簡単に公開前コンテンツの人気度を予測(推定)することができる。
請求項8に記載の発明は、請求項1乃至7の何れか一項に記載のコンテンツ分散保存システムにおいて、一つのコンテンツの複製データを複数に分割した分割複製データが、前記複数のノード装置に分散して保存され、当該分割複製データを保存した各前記ノード装置により当該分割複製データを有するコンテンツの評価を表す評価値が当該分割複製データに付与されて管理されており、前記総評価値管理装置は、前記選定されたコンテンツを構成する複数の分割複製データのうちから当該数より少ない何れか複数の分割複製データを選定する分割複製データ選定手段を更に備え、前記総評価値要求情報送信手段は、前記選定された各分割複製データを保存しているノード装置の情報を管理する各ノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信し、前記総評価値情報受信手段は、前記総評価値要求情報に応じて前記各ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信し、前記総評価値管理装置は、前記受信された各総評価値情報に示されるコンテンツの総評価値の平均値を当該コンテンツの総評価値として算出するコンテンツの総評価値算出手段を更に備えることを特徴とする。
この発明によれば、分割複製データの数が増えても、システムの負荷を増大させることなく、コンテンツの総評価値を迅速に調査することができる。
請求項9に記載の発明は、請求項1に記載のコンテンツ分散保存システムに含まれる前記総評価値管理装置であって、前記コンテンツ選定手段、前記総評価値要求情報送信手段、及び前記総評価値情報受信手段を備えることを特徴とする。
請求項10に記載の発明は、請求項1に記載のコンテンツ分散保存システムに含まれる前記ノード管理装置であって、前記総評価値要求情報受信手段、前記ノード装置選定手段、前記評価値要求情報送信手段、前記評価値情報受信手段、前記総評価値算出手段、及び前記総評価値情報送信手段を備えることを特徴とする。
請求項11に記載の管理処理プログラムの発明は、コンピュータを、請求項9に記載の総評価値管理装置として機能させることを特徴とする。
請求項12に記載の管理処理プログラムの発明は、コンピュータを、請求項10に記載のノード管理装置として機能させることを特徴とする。
請求項13に記載の発明は、ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データが複数のノード装置に分散して保存され、当該複製データを保存した各前記ノード装置によりそのコンテンツの評価を表す評価値が管理されるようにしたコンテンツ分散保存システムにおけるコンテンツの総評価値管理方法であって、各前記評価値の総和を表す総評価値をコンテンツ毎に管理する総評価値管理装置は、前記複数のコンテンツのうちから何れかのコンテンツを選定する工程と、前記選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信する工程と、前記総評価値要求情報に応じて前記ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信する工程と、を備え、前記ノード管理装置は、前記総評価値管理装置からの前記総評価値要求情報を受信する工程と、前記受信された総評価値要求情報に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置を選定する工程と、前記選定された各ノード装置に対して、前記コンテンツの評価値の要求を示す評価値要求情報を送信する工程と、前記評価値要求情報を受信した各ノード装置が保存している複製データに対応する前記総評価値要求情報に示されるコンテンツの評価値を示す評価値情報を、当該各ノード装置から受信する工程と、前記受信された各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出する工程と、前記算出されたコンテンツの総評価値を示す総評価値情報を前記総評価値管理装置に対して送信する工程と、を備えることを特徴とする。
本発明によれば、総評価値管理装置は、選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して当該コンテンツの総評価値を要求し、ノード管理装置は、当該要求に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置に対してコンテンツの評価値を要求し、当該複数のノード装置からコンテンツの評価値を示す評価値情報を得て、各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出し、当該コンテンツの総評価値を示す総評価値情報を総評価値管理装置に対して送信するように構成したので、ノード装置の数が多くなっても、調査に多大な時間とコストがかかることとなく、コンテンツの総評価値を迅速に調査することができる。
以下、本発明の最良の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
[1.コンテンツ分散保存システムの構成等]
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
始めに、図1等を参照して、本実施形態に係るコンテンツ分散保存システムの概要構成等について説明する。
図1は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
図1の下部枠101内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4a,4b、DSL(Digital Subscriber Line)回線事業者(の装置)5a,5b、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界の通信ネットワーク)8が構築されている。なお、図1の例におけるネットワーク8には、データ(パケット)を転送するためのルータが、適宜挿入されているが図示を省略している。
このようなネットワーク8には、複数のノード装置(以下、「ノード」という)Nn(n=1,2,3・・・の何れか)がルータを介して接続されている。また、各ノードNnには、固有の製造番号およびIP(Internet Protocol)アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムSは、これらのノードNnのうち、図1の上部枠100内に示すように、何れか複数のノードNnの参加により形成されるピアツーピア方式のネットワークシステムとなっている。
なお、図1の上部枠100内に示すネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク9(論理的なネットワーク)である。かかるオーバーレイネットワーク9は、特定のアルゴリズム、例えば、DHTを利用したアルゴリズムにより実現される。
そして、コンテンツ分散保存システムS(言い換えれば、オーバーレイネットワーク9)に参加している各ノードNnには、所定桁数からなる固有の識別情報であるノードIDが割り当てられている。また、当該ノードIDは、例えば、各ノードNnに個別に割り当てられたIPアドレス或いは製造番号を共通のハッシュ関数(例えば、SHA−1等)によりハッシュ化した値(例えば、bit長が160bit)であり、一つのID空間に偏りなく分散して配置されることになる。
なお、コンテンツ分散保存システムSへの参加は、参加していないノードNn(例えば、ノードN8)が、参加している任意のノードNn(例えば、当該システムSに常時参加しているコンタクトノード)に対して参加要求を示す参加メッセージを送信することによって行われる。
また、各ノードNnは、夫々、DHTを用いたルーティングテーブルを保持している。このルーティングテーブルは、コンテンツ分散保存システムS上における各種メッセージの転送先を規定しており、具体的には、ID空間内で適度に離れたノードNnのノードID、IPアドレス及びポート番号を含むノード情報が複数登録されている。
コンテンツ分散保存システムSに参加している1台のノードNnは、該システムSに参加している全てのノードNnのうち、必要最低限のノードNnのノード情報をルーティングテーブルに登録しておき、ノード情報を知らない(記憶していない)ノードNnについては、各ノードNn間で互いに各種メッセージを転送し合って届けてもらうようになっている。
このようなDHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
ところで、コンテンツ分散保存システムSにおいては、内容の異なる様々なコンテンツ(例えば、映画や音楽等)のレプリカが所定のファイル形式で複数のノードNnに分散して保存(格納)されており、各ノードNn間で当該レプリカを利用可能になっている。例えば、ノードN5には、タイトルがXXXの映画のコンテンツのレプリカが保存されており、一方、ノードN3には、タイトルがYYYの映画のコンテンツのレプリカが保存されるというように、複数のノードNn(以下、「コンテンツ保持ノード」という)に分散されて保存されている。
また、これらのコンテンツのレプリカには、夫々、コンテンツ名(タイトル)、コンテンツID(コンテンツ毎に固有の識別情報)、及びコンテンツの評価を表す評価値等の情報が付与されている。このコンテンツIDは、例えば、コンテンツ名+任意の数値(或いは、コンテンツデータの先頭数バイトでも良い)が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。或いは、システム管理者が、コンテンツ毎に一意のID値(ノードIDと同一ビット長)を付与しても良い。この場合は、コンテンツ名とそのコンテンツIDの対応が書かれたコンテンツカタログ情報が、全ノードNnに配布される。なお、上記評価値は、例えば、コンテンツの人気度や重要度を表すものであり、例えば人気が高いコンテンツは、その評価値も高く設定されている。また、当該評価値は、レプリカを保存した各ノードNnにより管理されることになる。
また、このように分散保存されているレプリカの所在、つまり、当該レプリカを保存したノードNnのノード情報と当該コンテンツのレプリカに対応するコンテンツID等の組が含まれるインデックス情報が、当該コンテンツのレプリカの所在を管理しているノードNn(以下、「ルートノード」(ノード管理装置の一例)、又は「コンテンツデータ(コンテンツID)のルートノード」という)等により記憶(インデックスキャッシュに記憶)、管理されるようになっている。
つまり、コンテンツのレプリカを保存しているコンテンツ保持ノードのノード情報は、他のノードNnからの問い合わせに応じて提供可能なようにルートノードにより管理されている。
例えば、タイトルがXXXの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN4により管理され、タイトルがYYYの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツ(コンテンツID)のルートノードであるノードN7により管理される。また、このようなルートノードは、例えば、コンテンツIDと最も近い(例えば、上位桁がより多く一致する)ノードIDを有するノードNnであるように定められる。
そして、あるノードNnのユーザが、所望するコンテンツのレプリカを取得したい場合、当該レプリカの取得を望むノードNn(以下、「ユーザノード」という)は、当該ユーザにより例えばコンテンツカタログ情報から選択されたコンテンツのコンテンツID及び自己のIPアドレス等を含むコンテンツ所在問合せ(検索)メッセージ(クエリ)を生成し、これを自己のDHTを用いたルーティングテーブルにしたがって他のノードNnに対して送出する。つまり、ユーザノードは、コンテンツ所在問合せ(検索)メッセージを、ルートノードに向けて(ルートノード宛に)送出する(つまり、ルートノードにコンテンツのレプリカの所在を問い合わせる)。これにより、コンテンツ所在問合せ(検索)メッセージは、コンテンツIDをキーとするDHTルーティングによって最終的にルートノードに到着することになる。
なお、各ノードNnにおいてユーザにより選択されるべきコンテンツのコンテンツ名、コンテンツID、公開日時等の属性情報は、例えばコンテンツ提供サーバから全てのノードNnに配信されるコンテンツカタログ情報に記述されている。ここで、公開日時は、各ノードNnにおいてコンテンツが利用可能となる日時を示している。例えば、この公開日時は、各ノードNnにおいて取得対象となるコンテンツをコンテンツカタログ情報上で選択可能となる日時である(公開日時までは、コンテンツカタログ情報上で選択できない)。
また、上記コンテンツ所在問合せ(検索)メッセージに含まれるコンテンツIDは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。なお、DHTルーティングについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。
上記コンテンツ所在問合せ(検索)メッセージを受信したルートノードは、これに含まれるコンテンツIDに対応するインデックス情報をインデックスキャッシュから取得して、当該インデックス情報を、該コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信する。こうしてインデックス情報を取得したユーザノードは、当該インデックス情報に含まれるあるコンテンツ保持ノードのIPアドレス等に基づいて当該コンテンツ保持ノードに接続して、コンテンツ送信要求メッセージを送信し、そこからコンテンツのレプリカを取得(ダウンロード)する。
なお、ルートノードは、当該インデックス情報に含まれるIPアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信し、これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカを取得することもできる。また、上記ユーザノードは、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、当該ルートノードと同じインデックス情報をキャッシュしているキャッシュノードから当該インデックス情報を取得することもできる。
また、以上のようにユーザノードからのコンテンツ要求に応じて自己が保存しているコンテンツのレプリカを提供したコンテンツ保持ノードは、自己が記憶、管理している当該コンテンツの評価値を所定値減算(例えば、当該評価値を半分に減少)することになる。そして更に、当該コンテンツ保持ノードは、減算した分の評価値をそのコンテンツのレプリカの提供を受けたユーザノードに対して与える(移譲する)ことになる。このようにするのは、コンテンツが1つ複製され2つになったため、その分、評価値を分割する趣旨である。また、評価値の低いコンテンツが新たなコンテンツのダウンロードのために削除される際には、当該削除するコンテンツ保持ノードが、同じコンテンツを持っている他のコンテンツ保持ノードに評価値を移譲するようになっている。更に、コンテンツ保持ノードが、ユーザノードに対してコンテンツのレプリカを提供する場合には、当該コンテンツの評価値を少し増やして(例えば1を加算)から、上述したように評価値を所定値減算(例えば、2分割)する。これにより、ダウンロードされればされるほど総評価値は高くなっていくことになる。ただし、評価値は時間が経過することで小さくなる仕組みであるので、どのコンテンツの総評価値も時間が経てば次第に低くなる。
こうして、新たなコンテンツのレプリカの提供を受けたユーザノードは、当該レプリカに係るコンテンツの評価値と、既に保存されているレプリカに係るコンテンツの評価値とを比較(複数保存されている場合、夫々のコンテンツの評価値と比較)し、例えば、最もコンテンツの評価値が低いレプリカを削除する。ここで当該レプリカに係るコンテンツの評価値が最も低くなければ、当該レプリカは新たに保存されることになる。従って、移譲を受けたコンテンツの評価値が高いほど、それだけ、そのレプリカが当該ユーザノードに保存される確率が高くなるので、当該システムSに保存されるレプリカの数も多くなる。
そして、コンテンツ保持ノードから取得したコンテンツのレプリカを保存(例えば、ハードディスクに記録)したユーザノードは、当該レプリカを保存したことをそのルートノードに知らせるために(言い換えれば、該システムSに参加している他のノードNnに対して公開するために)、当該レプリカのコンテンツID及び自己のノード情報が含まれるパブリッシュ(登録通知)メッセージを生成し、該パブリッシュメッセージを、そのルートノードに向けて(ルートノード宛に)送出する。
これにより、パブリッシュメッセージは、コンテンツ所在問合せ(検索)メッセージと同じように、コンテンツIDをキーとするDHTルーティングによってルートノードに到着することになる。そして、該ルートノードは、受信したパブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報を登録(インデックスキャッシュ領域に記憶)することになる。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。
なお、上記パブリッシュメッセージに含まれるノード情報及びコンテンツIDの組を含むインデックス情報は、ルートノードに至るまでの転送経路におけるキャッシュノードにおいても登録(キャッシュ)される。
以上説明したコンテンツ分散保存システムSにおいて、各コンテンツの総評価値が総評価値管理サーバMS(総評価値管理装置の一例)により管理される。ここで、コンテンツの総評価値とは、対象のコンテンツのレプリカを保存している各ノードNnにより管理されているコンテンツの評価値の総和を表すものである。かかる総評価値は、対象のコンテンツのレプリカを保存している全てのノードNnから各評価値を得れば正確に求められるが、この場合、ノードNnの数が多くなると多大な時間とコストがかかる。従って、本実施形態においては、総評価値管理サーバMSが、対象のコンテンツのルートノードに対して総評価値の調査させることにより当該総評価値を得る構成としている。
[2.総評価値管理サーバMSの構成及び機能等]
次に、図2を参照して、総評価値管理サーバMSの構成及び機能について説明する。
次に、図2を参照して、総評価値管理サーバMSの構成及び機能について説明する。
図2は、総評価値管理サーバMSの概要構成例を示す図である。
総評価値管理サーバMSは、図2に示すように、演算機能を有するCPU,作業用RAM,各種データおよびプログラム(本発明の管理処理プログラムを含む)を記憶するROM等から構成されたコンピュータとしての制御部11と、各種データ及び各種プログラム等を記憶保存するためのHD(ハードディスク)等から構成された記憶部12と、ネットワーク8を通じてノードNn等間の情報の通信制御を行うための通信部13と、を備えて構成され、これらは、バス14を介して相互に接続されている。なお、上記管理処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
記憶部12には、各コンテンツの総評価値を含む情報を登録する総評価値管理テーブルが記憶されている。図3は、総評価値管理テーブルに登録されている情報の一例を示す図である。図3に示すように、総評価値管理テーブルには、コンテンツID、最新の総評価値に関する情報、総評価値の最大値に関する情報、及び評価値算出履歴情報、がコンテンツ毎に対応付けられて登録されている。ここで、評価値算出履歴情報は、総評価値の平均を後述する演算式(1)により算出する場合に必要であり、演算式(2)により算出する場合は不要(代わりに、コンテンツ毎に評価値調査回数(t)が必要)となる。
また、最新の総評価値に関する情報には、及び最新の総評価値が含まれている。また、総評価値の最大値に関する情報には、総評価値の最大値、及びその算出時においてコンテンツ分散保存システムSに参加しているノードNnのノードNnの総数(以下、「総ノード数」という)が含まれている。また、評価値算出履歴情報には、過去に算出された総評価値、及びその算出時における総ノード数が含まれている。
なお、ノードNnがコンテンツ分散保存システムSに参加又は脱退する度に、これを示すメッセージが、例えば当該参加又は脱退したノードNnから総評価値管理サーバMSに送信されることにより、総評価値管理サーバMSは、上記総ノード数を把握可能になっている。
このような構成において、制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ選定手段、総評価値要求情報送信手段、総評価値情報受信手段、総評価最大値算出手段、総評価平均値算出手段、及びランキング決定手段等として機能する。
より具体的には、総評価値の集計(調査)において、先ず、制御部11は、コンテンツ分散保存システムSにおいて利用可能となっている公開済の複数のコンテンツのうちから何れかのコンテンツ(総評価値を調査したいコンテンツ)を、例えばランダムに一つ又は複数選定する。
次に、制御部11は、上記選定したコンテンツのルートノードのノード情報を当該コンテンツのコンテンツIDをキーとして検索メッセージを送出することにより取得し、当該ノード情報を用いて当該ルートノードに接続し、当該ルートノードに対してコンテンツの総評価値の要求を示す総評価値要求メッセージ(総評価値要求情報の一例)を送信する。
そして、制御部11は、上記総評価値要求メッセージに応じてルートノードから返信されたコンテンツの総評価値を示す総評価値応答メッセージ(総評価値情報の一例)受信することにより、コンテンツの総評価値を取得する。そして、制御部11は、当該取得したコンテンツの総評価値により、総評価値管理テーブルに登録されている当該コンテンツの前回の総評価値を更新する。
更に、制御部11は、上記取得したコンテンツの総評価値、及びその算出時における総ノード数を総評価値管理テーブルに新規登録(評価値算出履歴情報中に登録)する。
以上説明したコンテンツの選定から総評価値の更新までの一連の処理は、所定の時間間隔で(例えば、定期的に)繰り返し実行されることになる。
このような総評価値の集計例は、現時点での総評価値を求める手法である。しかし、公開時の総評価値が高くても、時間が経過するにつれて総評価値が低くなるようなコンテンツも考えられる。例えば、タイトルがXXXの映画のシリーズは、1作目を公開したときの総評価値は非常に高くても、2作目を公開するころには1作目の総評価値は低くなっていることが予想される。そのため、2作目に公開時点での1作目の総評価値を参考にすると十分な総評価値が付けられない可能性がある。この問題を解決するため、現時点での総評価値を求める他に、公開から現在までの総評価値の最大値と、公開後所定期間内の総評価値の平均値と、を求めることとした。
例えば、制御部11は、ルートノードからの上記総評価値応答メッセージを受信した場合、当該総評価値応答メッセージに示されるコンテンツの総評価値と、総評価値管理テーブルに登録されている当該コンテンツの前回の総評価値とを比較して大きい方を総評価値の最大値として求め、当該最大値、及び現在の総ノード数により、総評価値管理テーブルに登録されている総評価値の最大値、その算出時における総ノード数を更新する。つまり、時系列におけるコンテンツの総評価値の最大値を常に保持しておき、上述した総評価値の集計時に最大値を超えた場合に最大値を更新する。これにより、システム管理者等は、最も人気があったときのコンテンツの総評価値を把握することができる。なお、総評価値の最大値に対応付けてその算出時における総ノード数を登録しておくのは、公開済コンテンツの総評価値を算出した過去の時点と現時点とで総ノード数が異なると、総評価値が高いのか低いのかがわからなくなるので、算出時点の総ノード数を登録しておくことにより、総ノード数の変動による総評価値の違いを補うためのである。
また、上述したように、上記総評価値応答メッセージを受信される度に当該総評価値等は評価値算出履歴情報中に別々に登録されるが、制御部11は、所定期間(例えば、公開後一定期間)内において登録された、特定のコンテンツについての各総評価値の平均値を算出し、例えば総評価値管理テーブルに登録する。これにより、システム管理者等は、上記特定のコンテンツが、例えば公開後一定期間内にどれだけ人気があったかを把握することができる。
ここで、“vav”は総評価値の平均値を、“vi”はi(iは、1〜t)回目の調査で算出された総評価値を、“t”は総評価値の算出回数(調査回数)を、夫々表している。
ところで、実際にt回分の総評価値を評価値算出履歴情報として保持しておくのは記憶容量やコストの面において望ましくない場合があるため、制御部11は、対象のコンテンツの総評価値を取得する度に以下の演算式(2)により、総評価値の平均を再計算すると良い。
ここで、“vav-1”は、前回算出された総評価値の平均値を、“vt”は今回の総評価値を、夫々表している。この演算式(2)を用いることにより、t回分の総評価値viの代わりに、前回の調査において算出の総評価値vav-1を記憶しておけば足りることになる。
ただし、この演算式(2)では、例えば公開後一定期間内の総ノード数の平均も記憶しておく必要がある。これは、公開済コンテンツの総評価値を算出した時点と現時点とで総ノード数が異なると、総評価値が相対的に高いのか低いのかがわからないためである。算出時点の総ノード数を登録しておくことにより、総ノード数の変動による総評価値の違いを補うことができる。
以上のようにして算出された各コンテンツの総評価値、当該各コンテンツの総評価値の最大値、又は当該各コンテンツの総評価値の平均値は、コンテンツの人気順位を表すランキングの決定に用いられたり、総評価値が未だ与えられていない公開前コンテンツの初期総評価値の決定に用いられる(詳細は後述する)。
[3.ノードNnの構成及び機能等]
次に、図4を参照して、ノードNnの構成及び機能について説明する。
次に、図4を参照して、ノードNnの構成及び機能について説明する。
図4は、ノードNnの概要構成例を示す図である。
各ノードNnは、図4に示すように、演算機能を有するCPU,作業用RAM,各種データ及びプログラム(本発明の管理処理プログラムを含む)を記憶するROM等から構成されたコンピュータとしての制御部21と、各種データ(例えば、コンテンツデータのレプリカ、インデックス情報、DHT等)及び各種プログラム等を記憶保存するためのHD(ハードディスク)等から構成された記憶部22と、受信されたコンテンツデータのレプリカ等を一時蓄積するバッファメモリ23と、コンテンツデータのレプリカに含まれるエンコードされたビデオデータ(映像情報)およびオーディオデータ(音声情報)等をデコード(データ伸張や復号化等)するデコーダ部24と、当該デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する映像処理部25と、当該映像処理部25から出力されたビデオ信号に基づき映像表示するCRT,液晶ディスプレイ等の表示部26と、上記デコードされたオーディオデータをアナログオーディオ信号にD(Digital)/A(Analog)変換した後これをアンプにより増幅して出力する音声処理部27と、当該音声処理部27から出力されたオーディオ信号を音波として出力するスピーカ28と、ネットワーク8を通じて他のノードNn等間の情報の通信制御を行うための通信部29と、ユーザからの指示を受け付け当該指示に応じた指示信号を制御部21に対して与える入力部(例えば、キーボード、マウス、或いは、操作パネル等)30と、を備えて構成され、制御部21、記憶部22、バッファメモリ23、デコーダ部24、通信部29、及び入力部30はバス31を介して相互に接続されている。なお、ノードNnとしては、パーソナルコンピュータ、STB(Set Top Box)、或いは、TV受信機等を適用可能である。また、上記管理処理プログラムは、例えば、ネットワーク8上の所定のサーバからダウンロードされるようにしてもよいし、例えば、CD−ROM等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
また、記憶部22には、コンテンツ分散保存システムSに参加する際のアクセス先となるコンタクトノードのIPアドレス及びポート番号等が記憶されている。更に、記憶部22に保存されているレプリカに対応するコンテンツID、そのコンテンツの評価値、及び公開日時等の情報を登録する評価値管理テーブルが記憶部22に記憶されている。
このような構成において、制御部21は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、全体を統括制御し、コンテンツ分散保存システムSへの参加により上述したユーザノード、中継ノード、ルートノード、キャッシュノード、コンテンツ保持ノード、コンテンツ投入ノード、及びコンテンツ事前保持ノードの少なくとも何れか一つのノードとしての処理を行う。
また、ルートノードの制御部21は、総評価値要求情報受信手段、ノード装置選定手段、評価値要求情報送信手段、評価値情報受信手段、総評価値算出手段、及び前記総評価値情報送信手段等として機能する。
より具体的には、ルートノードの制御部21は、総評価値管理サーバMSからの総評価値要求メッセージを受信すると、受信した総評価値要求メッセージに示されるコンテンツのレプリカを保存している複数のコンテンツ保持ノードのうちから当該数より少ない何れか複数のコンテンツ保持ノードをインデックス情報から例えばランダムに選定する。ここで、選定されるコンテンツ保持ノードの数は、当該コンテンツのレプリカを保存している全コンテンツ保持ノード数(保存ノード数)の所定の割合(例えば10%)に固定設定されていても良いし、その都度算出されるようにしても良い。
そして、ルートノードの制御部21は、上記選定した各コンテンツ保持ノードのノード情報を取得し、当該ノード情報を用いて当該各コンテンツ保持ノードに接続し、当該各コンテンツ保持ノードに対してコンテンツ(例えば、コンテンツIDで指定)の評価値の要求を示す評価値要求メッセージ(評価値要求情報の一例)を送信する。
図5は、コンテンツXのルートノードから、選定された各コンテンツ保持ノードに対して評価値要求メッセージが送信される様子を示す概念図である。
一方、当該評価値要求メッセージを受信した各コンテンツ保持ノードの制御部21は、自ノードの記憶部22に保存されているレプリカに対応するコンテンツ(評価値要求メッセージに示されるコンテンツ)のコンテンツID及びその評価値を示す評価値応答メッセージ(評価値情報の一例)をルートノードに返信する。
そして、ルートノードの制御部21は、上記評価値要求メッセージを送信できた各コンテンツ保持ノードからの評価値応答メッセージを受信する。こうして、当該制御部21は、各コンテンツ保持ノードで管理されているコンテンツの評価値を取得し、当該取得した各評価値に基づいて当該コンテンツの総評価値を算出する。かかる総評価値vtは、例えば、以下の演算式(3)により算出することができる。
ここで、“xsum”は今回取得された評価値の総和を、“nt”は保存ノード数(現在、当該コンテンツのレプリカを保存しているノードNnの総数(自己のインデックス情報から取得))を、“mt”は今回評価値応答メッセージを送信したコンテンツ保持ノードの数を、夫々表わしている。
つまり、このような演算式(3)により、各評価値の総和xsumを、評価値応答メッセージを送信したコンテンツ保持ノードの数mtで除算し、当該除算した値(xsum/mt)と、当該保存ノード数ntと、が乗算されて当該コンテンツの総評価値vtが算出される。
そして、ルートノードの制御部21は、こうして算出したコンテンツの総評価値、及びそのコンテンツのコンテンツIDを含む総評価値応答メッセージを総評価値管理サーバMSに対して送信する。
なお、算出されたコンテンツの総評価値、及びその算出時における総ノード数は、そのコンテンツIDに対応付けられて当該ルートノードの記憶部22に記憶保存されるように構成しても良く、この場合、上述した総評価値の最大値、及び所定期間内の総評価値の平均値は、ルートノードの制御部21が算出し、総評価値管理サーバMSに送信することができる。
[4.コンテンツ分散保存システムSの動作]
次に、コンテンツ分散保存システムSの動作について説明する。
次に、コンテンツ分散保存システムSの動作について説明する。
(4−1.総評価値の算出)
先ず、図6を参照して、総評価値が算出される際の動作について説明する。
先ず、図6を参照して、総評価値が算出される際の動作について説明する。
図6(A)は、総評価値管理サーバMSにおける制御部11の処理を示すフローチャートであり、図6(B)は、ルートノードにおける制御部21の処理を示すフローチャートであり、図6(C)は、コンテンツ保持ノードにおける制御部21の処理を示すフローチャートである。
総評価値管理サーバMSにおいて、図6(A)に示す処理は、例えば一定時間毎に繰り返し実行されるものであり、当該時間(例えば、タイマのカウントアップ等)が到来した場合に開始される。当該処理が開始されると、制御部11は、先ず、コンテンツ分散保存システムSにおいて利用可能となっている公開済の複数のコンテンツのうちから何れかのコンテンツを、例えばランダムに一つ又は複数選定する(ステップS1)。
次いで、制御部11は、上記選定したコンテンツのルートノードのノード情報を取得し、当該ノード情報を用いて当該ルートノードに接続し、当該ルートノードに対してコンテンツの総評価値の要求を示す総評価値要求メッセージ(コンテンツIDを含む)を送信する(ステップS2)。
一方、ルートノードにおいて、図6(B)に示す処理は、総評価値要求メッセージが受信された場合に開始される。当該処理が開始されると、制御部21は、受信した総評価値要求メッセージに示されるコンテンツのレプリカを保存している複数のコンテンツ保持ノードのうちから当該数より少ない何れか複数のコンテンツ保持ノードをインデックス情報から例えばランダムに選定してリストアップする(ステップS11)。このリストアップでは、例えば、選定されたコンテンツ保持ノードのノード情報がRAMの所定領域に格納される。
次いで、ルートノードの制御部21は、上記リストアップしたコンテンツ保持ノードから1つ選択する(ステップS12)。
次いで、ルートノードの制御部21は、上記選択したコンテンツ保持ノードのノード情報を用いて当該コンテンツ保持ノードに接続し、当該コンテンツ保持ノードに対してコンテンツの評価値の要求を示す評価値要求メッセージ(コンテンツIDを含む)を送信する(ステップS13)。
一方、コンテンツ保持ノードにおいて、図6(C)に示す処理は、評価値要求メッセージが受信された場合に開始される。当該処理が開始されると、制御部21は、自ノードの記憶部22に保存されているレプリカに対応するコンテンツ(評価値要求メッセージに示されるコンテンツ)の評価値を評価値管理テーブルから取得する(ステップS14)。そして、コンテンツ保持ノードの制御部21は、取得したコンテンツの評価値及びそのコンテンツIDを含む評価値応答メッセージをルートノードに返信する(ステップS15)。
こうして、ルートノードの制御部21は、上記評価値応答メッセージを受信すると(ステップS16)、当該評価値応答メッセージに示されるコンテンツの評価値を例えばRAMに記憶する(ステップS17)。
次いで、ルートノードの制御部21は、上記評価値要求メッセージを送信できた全てのコンテンツ保持ノードから評価値応答メッセージを受信したか否かを判別する(ステップS18)。そして、上記全てのコンテンツ保持ノードから評価値応答メッセージを受信していない場合には(ステップS18:NO)、当該制御部21は、ステップS12に戻り未だ選択されていないコンテンツ保持ノードを選択して上記と同様の処理を行う。
一方、上記全てのコンテンツ保持ノードから評価値応答メッセージを受信した場合には(ステップS18:YES)、当該制御部21は、上記取得した各評価値に基づいて例えば上記演算式(3)により当該コンテンツの総評価値を算出する(ステップS19)。
次いで、ルートノードの制御部21は、上記算出したコンテンツの総評価値、及びそのコンテンツのコンテンツIDを含む総評価値応答メッセージを総評価値管理サーバMSに対して返信する(ステップS20)。
こうして、総評価値管理サーバMSの制御部11は、上記総評価値応答メッセージを受信すると(ステップS3)、当該総評価値応答メッセージに含まれるコンテンツの総評価値により、総評価値管理テーブルに登録されている最新の総評価値更新(上書き)する(ステップS4)。更に、当該制御部11は、当該総評価値応答メッセージに含まれるコンテンツの総評価値、その算出時における総ノード数を総評価値管理テーブルに新規登録(評価値算出履歴情報中に登録)する(総評価値の平均が上記演算式(2)により算出されるのであればこの処理は不要)。
次いで、制御部11は、上記総評価値応答メッセージに示されるコンテンツの総評価値の最大値を総評価値管理テーブルから取得する(ステップS5)。
次いで、制御部11は、上記総評価値応答メッセージに含まれるコンテンツの総評価値と、上記ステップS4で取得した、今までの総評価値の最大値とを比較し、大きい方を総評価値の最大値として決定する(ステップS6)。
次いで、制御部11は、上記決定した総評価値の最大値、及び現在の総ノード数により総評価値管理テーブルに登録されている総評価値の最大値、その算出時における総ノード数を更新(上書き)して(ステップS7)、当該処理を終了する。
なお、総評価値管理サーバMSの制御部11は、所定期間(例えば、公開後一定期間)内において登録された各総評価値の平均値を算出するように構成しても良い。この場合、制御部11は、当該コンテンツの所定期間(例えば、公開後一定期間)内において登録された各総評価値を総評価値管理テーブル(評価値算出履歴情報)から取得し、それらの総評価値の平均値を例えば上記演算式(1)又は演算式(2)により算出して、例えば総評価値管理テーブルに登録することになる。
以上説明した総評価値の算出方法によれば、ノードNnの数が多くなっても、調査に多大な時間とコストがかかることとなく、公開済コンテンツの総評価値を迅速(短時間で)、かつ精度良く(つまり、実際の総評価値に近い値として)求めることができる。また、各コンテンツの現時点での総評価値ばかりでなく、公開から現在までの総評価値の最大値や、公開後所定期間内の総評価値の平均値を求めるように構成したので、様々な観点からコンテンツを評価することができる。
(4−2.ランキングの決定)
次に、図7を参照して、コンテンツの人気順位を表すランキングが決定される際の動作について説明する。このランキングの決定では、各コンテンツの総評価値に基づいて、コンテンツの人気順位を表すランキングが決定される。
次に、図7を参照して、コンテンツの人気順位を表すランキングが決定される際の動作について説明する。このランキングの決定では、各コンテンツの総評価値に基づいて、コンテンツの人気順位を表すランキングが決定される。
図7は、総評価値管理サーバMSにおける制御部11のランキング決定処理を示すフローチャートである。
総評価値管理サーバMSにおいて、図7に示す処理は、例えばシステム管理者等によりより使用される端末からのランキング決定要求により開始される。当該処理が開始されると、制御部11は、先ず、過去に調査した結果を使用するか否かを例えばランキング決定要求に基づいて判別する(ステップS31)。そして、過去に調査した結果を使用する場合には(ステップS31:YES)、ステップS32に進み、過去に調査した結果を使用しない場合には(ステップS31:NO)、ステップS33に進む。
ステップS32では、制御部11は、対象とする全てのコンテンツの最新の総評価値を、総評価値管理テーブルにおける最新の総評価値に関する情報から取得する。一方、ステップS33では、制御部11は、上述した図6(A)の処理を、対象とする全てのコンテンツのルートノードについて実行し、上記ステップS2にて当該各コンテンツの最新の総評価値を取得する。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値が取得されるように構成しても良い。
次いで、制御部11は、取得した各コンテンツの最新の総評価値を昇順にソート、つまり、総評価値が高い順に並べてコンテンツの人気順位を表すランキングの決定し(ステップS34)、当該ランキングのデータを記憶する。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値の昇順にソートされるように構成しても良い。
次いで、制御部11は、上記記憶されたランキングを示すデータを、要求があった端末に対して返信し(ステップS35)、当該処理を終了する。
以上説明したランキング決定方法によれば、公開済コンテンツの最新の総評価値、総評価値の最大値、又は総評価値の平均値を利用することにより、コンテンツの人気順位を表すランキングを効率良く決定することができる。例えば、各コンテンツの最新の総評価値を昇順にソートした場合には、現時点での総評価値の高い順にコンテンツのランキングを得ることができ、各コンテンツの総評価値の最大値を昇順にソートした場合には、過去に最も評価値が高かった順にコンテンツのランキングを得ることができ、各コンテンツの総評価値の平均値を昇順にソートした場合には、所定期間内の総評価値の平均が最も評価値が高かった順にコンテンツのランキングを得ることができる。
(4−3.公開前コンテンツの初期総評価値の決定)
次に、公開前コンテンツの初期総評価値が決定される際の動作について、実施例1と実施例2に分けて説明する。この公開前コンテンツの初期総評価値の決定では、総評価値が与えられていない公開前コンテンツのキーワードを少なくとも一つ有し、且つ当該総評価値が与えられている公開済コンテンツの総評価値に基づいて、上記公開前コンテンツの初期総評価値が決定される。
次に、公開前コンテンツの初期総評価値が決定される際の動作について、実施例1と実施例2に分けて説明する。この公開前コンテンツの初期総評価値の決定では、総評価値が与えられていない公開前コンテンツのキーワードを少なくとも一つ有し、且つ当該総評価値が与えられている公開済コンテンツの総評価値に基づいて、上記公開前コンテンツの初期総評価値が決定される。
このような公開前コンテンツの初期総評価値の決定の前提として、本コンテンツ分散保存システムSで扱われる各コンテンツには、キーワードが付与されるようになっており、各コンテンツに付与されたキーワードは、コンテンツIDに対応付けられて、例えばキーワード管理データベースに登録され管理される。かかるキーワードとしては、例えば一般的にコンテンツを検索するために付与されるキーワードを用いることができ、当該キーワードの数は任意である。例えば、映画のコンテンツの場合、映画タイトル、ジャンル名、主演者名、及び監督者名等のキーワードが付与され、音楽のコンテンツの場合、音楽タイトル、ジャンル名、アーティスト名、作詞者名、及び作曲者名等のキーワードが付与される。なお、このキーワード管理データベースは、総評価値管理サーバMSに備えられても良いし、総評価値管理サーバMSが接続可能な別のサーバに備えられるようにしても良い。
(4−3−1.実施例1)
先ず、実施例1の動作を、図8及び図9を参照して説明する。
先ず、実施例1の動作を、図8及び図9を参照して説明する。
図8は、実施例1において、総評価値管理サーバMSにおける制御部11の初期総評価値決定処理を示すフローチャートである。図9は、実施例1において、公開前コンテンツの初期総評価値が決定されるまでの様子を示す図である。
総評価値管理サーバMSにおいて、図8に示す処理は、例えばシステム管理者等により使用される端末からの公開前コンテンツの初期総評価値決定要求により開始される。当該処理が開始されると、制御部11は、先ず、上記要求に係る公開前コンテンツ(総評価値が与えられていないコンテンツ)を特定する(ステップS41)。
次いで、制御部11は、特定した公開前コンテンツのキーワード(複数)をキーワード管理データベースから取得する(ステップS42)。例えば、公開前コンテンツのキーワードをAとDとする。
次いで、制御部11は、取得した複数のキーワードのうちからキーワードを一つ選択(例えば、ランダム又は登録順に選択)する(ステップS43)。
次いで、制御部11は、キーワード管理データベースを参照して、選択したキーワードを持つ公開済コンテンツを複数特定する(ステップS44)。
次いで、制御部11は、過去に調査した結果を使用するか否かを例えば初期総評価値決定要求に基づいて判別する(ステップS45)。そして、過去に調査した結果を使用する場合には(ステップS45:YES)、ステップS46に進み、過去に調査した結果を使用しない場合には(ステップS45:NO)、ステップS47に進む。
ステップS46では、制御部11は、特定した公開済の各コンテンツの最新の総評価値を、総評価値管理テーブルにおける最新の総評価値に関する情報から取得する。一方、ステップS47では、制御部11は、上述した図6(A)の処理を、特定した公開済の各コンテンツのルートノードについて実行し、上記ステップS2にて当該各コンテンツの最新の総評価値を取得する。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値が取得されるように構成しても良い。
次いで、制御部11は、特定した公開済の各コンテンツの全てのキーワードをキーワード管理データベースから取得する(ステップS48)。
次いで、制御部11は、特定した各コンテンツの総評価値に基づき当該コンテンツのキーワードの評価値を決定する(ステップS49)。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値に基づき当該コンテンツのキーワードの評価値が決定されるように構成しても良い。
例えば、図9の例では、上記選択されたキーワードAを持つコンテンツ1の総評価値は「90」であるので、当該総評価値がそのまま当該キーワードAの評価値として決定されている。一方、上記選択されたキーワードAを持つコンテンツ3の総評価値は「60」であるので、当該総評価値がそのまま当該キーワードAの評価値として決定されている。
次いで、制御部11は、複数のコンテンツに跨って、上記評価値が決定されたキーワードの評価値の平均値を算出する(ステップS50)。
例えば、図9の例では、コンテンツ1とコンテンツ3に跨って、キーワードAの評価値の平均値が決定されている。
次いで、制御部11は、上記ステップS42で取得した全てのキーワードについて処理したか否かを判別し(ステップS51)、処理していない場合には(ステップS51:NO)、ステップS43に戻り、未だ選定されていないキーワードを選択し、上記と同様の処理を行う。
例えば、図9の例では、選択されたキーワードDを持つコンテンツ2の総評価値は「40」であるので、当該総評価値がそのまま当該キーワードDの評価値として決定されている。一方、選択されたキーワードDを持つコンテンツ3の総評価値は「60」であるので、当該総評価値がそのまま当該キーワードDの評価値として決定されている。そして、コンテンツ2とコンテンツ3に跨って、キーワードDの評価値の平均値が決定されている。
そして、上記ステップS51で、全てのキーワードについて処理したと判別された場合には(ステップS51:YES)、公開前コンテンツの複数のキーワードの夫々について算出された評価値の平均値のうちの最大値を、公開前コンテンツの初期総評価値として決定する(ステップS52)。
例えば、図9の例では、キーワードAの評価値の平均値と、キーワードDの評価値の平均値のうちの、大きい方のキーワードAの評価値の平均値が、公開前コンテンツの初期総評価値として決定されている。
次いで、制御部11は、上記決定した公開前コンテンツの初期総評価値を、当該公開前コンテンツのコンテンツID等の情報に対応付けて総評価値管理テーブルに登録する(ステップS53)。
次いで、制御部11は、上記決定した公開前コンテンツの初期総評価値を示すデータを、要求があった端末に対して返信し(ステップS54)、当該処理を終了する。
なお、公開前コンテンツの複数のキーワードの夫々について算出された評価値の平均値をさらに平均した値を公開前コンテンツの初期総評価値として決定するように構成しても良い。
(4−3−2.実施例2)
次に、図10及び図11を参照して、実施例2における公開前のコンテンツの評価値算出処理について説明する。
次に、図10及び図11を参照して、実施例2における公開前のコンテンツの評価値算出処理について説明する。
図10は、実施例2において、総評価値管理サーバMSにおける制御部11の初期総評価値決定処理を示すフローチャートである。図11は、実施例2において、公開前コンテンツの初期総評価値が決定されるまでの様子を示す図である。
総評価値管理サーバMSにおいて、図10に示す処理は、例えばシステム管理者等により使用される端末からの公開前コンテンツの初期総評価値決定要求により開始される。当該処理が開始されると、制御部11は、先ず、上記要求に係る公開前コンテンツ(総評価値が与えられていないコンテンツ)を特定する(ステップS71)。
次いで、制御部11は、全てのキーワード(複数)をキーワード管理データベースから取得する(ステップS72)。
次いで、制御部11は、当該処理が初回実行か否かを判別し(ステップS73)、初回実行である場合には(ステップS73:YES)、全てのキーワードの評価値に「1」を設定する(ステップS74)。一方、初回実行でない場合には(ステップS73:NO)、制御部11は、全てのキーワードの評価値をキーワード管理データベースから取得する(ステップS75)。
次いで、制御部11は、公開済の全てのコンテンツを特定する(ステップS76)。
次いで、制御部11は、過去に調査した結果を使用するか否かを例えば初期総評価値決定要求に基づいて判別する(ステップS77)。そして、過去に調査した結果を使用する場合には(ステップS77:YES)、ステップS78に進み、過去に調査した結果を使用しない場合には(ステップS77:NO)、ステップS79に進む。
ステップS78では、制御部11は、特定した公開済の各コンテンツの最新の総評価値を、総評価値管理テーブルにおける最新の総評価値に関する情報から取得する。一方、ステップS79では、制御部11は、上述した図6(A)の処理を、特定した公開済の各コンテンツのルートノードについて実行し、上記ステップS2にて当該各コンテンツの最新の総評価値を取得する。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値が取得されるように構成しても良い。
次いで、制御部11は、当該特定した公開済コンテンツを一つ選択する(ステップS80)。
次いで、制御部11は、当該選択したコンテンツが有するキーワードを全て選択する(ステップS81)。
次いで、制御部11は、当該選択した各キーワードの評価値を重みとし、当該選択したコンテンツの総評価値を当該各キーワードに分配し(ステップS82)、当該各キーワードの評価値を決定する。なお、最新の総評価値の代わりに、総評価値の最大値又は平均値に基づき当該コンテンツのキーワードの評価値が決定されるように構成しても良い。
例えば、図11(A)の例では、コンテンツ1の総評価値は「90」であり、各キーワードの評価値には上記ステップS74で全て「1」に設定されているので、その重みに従って、当該コンテンツ1の総評価値「90」は3等分され、「30」ずつ、キーワードA,B,Cに分配されてその評価値が決定されている。
次いで、制御部11は、上記特定した全てのコンテンツについて処理したか否かを判別し(ステップS83)、処理していない場合には(ステップS83:NO)、ステップS80に戻り、未だ選定されていないコンテンツを選択し、上記と同様の処理を行う。このようにして、例えば、図11(A)に示すように、コンテンツ2及び3についても、キーワードの評価値が決定されることになる。
そして、上記ステップS83で、全てのコンテンツについて処理したと判別された場合には(ステップS83:YES)には、制御部11は、キーワードを一つ選択する(ステップS84)。
次いで、制御部11は、複数のコンテンツに跨って、上記選択したキーワードの評価値の平均値を算出する(ステップS85)。
例えば、図11(A)の例では、コンテンツ1とコンテンツ3に跨って、キーワードAの評価値の平均値が決定されている。
次いで、制御部11は、上記ステップS72で取得した全てのキーワードについて処理したか否かを判別し(ステップS86)、処理していない場合には(ステップS86:NO)、ステップS84に戻り、未だ選定されていないキーワードを選択し、上記と同様の処理を行う。このようにして、例えば、図11(A)に示すように、キーワードB,C,Dについても平均値が算出されることになる。
そして、上記ステップS86で、全てのキーワードについて処理したと判別された場合には(ステップS86:YES)、制御部11は、予め設定された終了判定基準を満たしているか否かを判別し(ステップS87)、終了判定基準を満たしていない場合には(ステップS87:NO)、ステップS80に戻り、上記と同様の処理を行う。
例えば、図11(B)に示すコンテンツ2を例にとると、直前のステップS85の処理で算出されたキーワードBとDの評価値の平均値「25」と「20」が重みとされ、コンテンツ2の総評価値「40」が、その重みに従って、キーワードB,Dに分配されてその評価値が決定されている。
こうして、終了判定基準が満たされるまでは、ステップS80〜ステップS87の処理が繰り返しループされる。かかる繰り返しループにおいて、制御部11は、直前のステップS85の処理で算出したキーワードの評価値の平均値を重みとして、当該コンテンツの総評価値を当該コンテンツのキーワードにさらに分配することにより当該コンテンツのキーワードの評価値を決定(つまり、前回の評価値から更新)し、且つさらに分配することにより決定された(つまり、更新された)当該コンテンツのキーワードの評価値を、キーワード毎に、複数のコンテンツに跨って、当該キーワードの評価値の平均値を算出するという処理を所定回数繰り返すことにより、最終的なキーワードの評価値の平均値を算出するのである。
ところで、終了判定基準の種類、閾値はユーザにより任意に選択可能である。例えば、更新前後のキーワードの評価値の差が当該キーワードの評価値の平均の数十〜数百(例えば、100)分の1以下か否かが判断され、これ以下ならば終了判定基準を満たすとされる。或いは、予め設定された回数(例えば、100回)、上記ステップS80〜ステップS87の処理がループしたか否かが判断され、当該回数ループしたならば終了判定基準を満たすとされる。或いは、予め設定された時間(例えば、3分)、上記ステップS80〜ステップS87の処理が繰り返し行われたか否かが判断され、当該時間繰り返し行われたならば終了判定基準を満たすとされる。
こうして、終了判定基準を満たした場合には(ステップS87:YES)、制御部11は、公開前コンテンツの複数のキーワードの夫々について上述したように算出された最終的な評価値の平均値を加算し、この加算値を公開前コンテンツの初期総評価値として決定する(ステップS88)。
次いで、制御部11は、上記決定した公開前コンテンツの初期総評価値を、当該公開前コンテンツのコンテンツID等の情報に対応付けて総評価値管理テーブルに登録し、且つ、全てのキーワードの評価値(上述した最終的なキーワードの評価値の平均値)をキーワード管理データベースに登録する(ステップS89)。こうして、登録された全てのキーワードの評価値は、上述したように、ステップS75で取得され、ステップS82で重みとして使用されることになる。
次いで、制御部11は、上記決定した公開前コンテンツの初期総評価値を示すデータを、要求があった端末に対して返信し(ステップS90)、当該処理を終了する。
以上説明した公開前コンテンツの初期総評価値の決定方法(実施例1又は実施例2)によれば、公開済コンテンツの最新の総評価値、総評価値の最大値、又は総評価値の平均値を利用することにより、システム管理者側に手間かけさせずに比較的簡単に公開前コンテンツの人気度を予測(推定)することが可能となり、ひいては、事前に適切な数のレプリカをシステム内に分散保存させることができる。
従って、事前に当該システムS内に分散保存させておくレプリカの数が少なすぎることを回避でき、当該コンテンツの公開後にそのレプリカにアクセスが集中することを防止することができる。よって、コンテンツ保持ノードへのレプリカのダウンロード要求が頻出しても、安定したコンテンツ配信が可能となる。また、当該レプリカの数が多すぎることを回避でき、各ノードNnにおけるレプリカを保存するための記憶領域を無駄に消費してしまうことで当該記憶領域を圧迫することを防止することができる。これにより、ネットワーク負荷の増大を防止することもできる。
(4−4.コンテンツのレプリカが分割され保存されている場合の総評価値の算出)
以上説明したコンテンツ分散保存システムSにおいては、一つのコンテンツのレプリカが複数に分割された各キャッシュ(分割複製データ)が、複数のノードNnに分散して保存される場合がある。かかる場合、あるノードNnが、あるレプリカを構成するキャッシュ全てを保存しているとは限らず、当該レプリカを構成するキャッシュの一部のみを保存していることもある。そして、各キャッシュには、夫々、当該キャッシュに対応するコンテンツ(つまり、当該キャッシュを構成要素とするコンテンツ)の評価を表す評価値が付与されており、当該評価値は、当該キャッシュを保存している各ノードNnにおける上述した評価値管理テーブルに登録され管理されている。なお、当該評価値には、各キャッシュのシリアル番号(例えば、キャッシュのレプリカにおけるデータ位置を示す)に対応つけられている。
以上説明したコンテンツ分散保存システムSにおいては、一つのコンテンツのレプリカが複数に分割された各キャッシュ(分割複製データ)が、複数のノードNnに分散して保存される場合がある。かかる場合、あるノードNnが、あるレプリカを構成するキャッシュ全てを保存しているとは限らず、当該レプリカを構成するキャッシュの一部のみを保存していることもある。そして、各キャッシュには、夫々、当該キャッシュに対応するコンテンツ(つまり、当該キャッシュを構成要素とするコンテンツ)の評価を表す評価値が付与されており、当該評価値は、当該キャッシュを保存している各ノードNnにおける上述した評価値管理テーブルに登録され管理されている。なお、当該評価値には、各キャッシュのシリアル番号(例えば、キャッシュのレプリカにおけるデータ位置を示す)に対応つけられている。
また、各キャッシュには、夫々、キャッシュID(キャッシュ毎に固有の識別情報)が付与されている。このキャッシュIDは、例えば、コンテンツ名+シリアル番号+任意の数値が、上記ノードIDを得るときと共通のハッシュ関数によりハッシュ化されて生成される(ノードIDと同一のID空間に配置)。また、このように分散保存されているキャッシュの所在、つまり、当該キャッシュを保存したノードNnのノード情報と当該キャッシュに対応するキャッシュID等の組が含まれるインデックス情報が、当該キャッシュの所在を管理しているルートノード(キャッシュIDと最も近いノードIDを有するノードNn)により記憶、管理されるようになっている。つまり、キャッシュを保存しているコンテンツ保持ノードのノード情報は、上述したレプリカと同じ要領で、他のノードNnからの問い合わせ(コンテンツ所在問合せメッセージによる)に応じて提供可能なようにルートノードにより管理されている。
このようなコンテンツ分散保存システムSにおいては、キャッシュ毎に総評価値を調査し、それらの平均をコンテンツの総評価値とするのが最も正確な手法である。しかし、この場合、当該キャッシュを保存している全てのコンテンツ保持ノードから評価値を取得しなければならないため、システムの負荷が高くなってしまう。
そこで、この場合、総評価値管理サーバMSが、総評価値を調査したいコンテンツを構成する複数のキャッシュのうちから当該数より少ない何れか複数のキャッシュを選定し、上述した図6に示す方法で各キャッシュのルートノードから当該コンテンツの総評価値を得てこれらを平均することで最新の総評価値を求めるように構成する。
以下、図12を参照して、分割されたキャッシュがノードNnに保存される場合の動作について説明する。
図12は、分割されたキャッシュが保存される場合を考慮した総評価値管理サーバMSにおける制御部11の処理を示すフローチャートであり、上述した図6(A)の処理に置き換わるものである。なお、この場合のルートノードの制御部11、コンテンツ保持ノードの制御部21の処理は、夫々、図6(B)、図6(C)の処理と同様である。
総評価値管理サーバMSにおいて、図12に示す処理は、例えば一定時間毎に繰り返し実行されるものであり、当該時間(例えば、タイマのカウントアップ等)が到来した場合に開始される。当該処理が開始されると、制御部11は、先ず、コンテンツ分散保存システムSにおいて利用可能となっている公開済の複数のコンテンツのうちから何れかのコンテンツを、例えばランダムに一つ又は複数選定する(ステップS201)。
次いで、総評価値管理サーバMSの制御部11は、上記選定したコンテンツが分割されているか否かを判別し(ステップS202)、分割されている場合には(ステップS202:YES)、ステップS203に進み、分割されていない場合には(ステップS202:NO)、ステップS205に進む。
ステップS203では、総評価値管理サーバMSの制御部11は、上記選定したコンテンツを構成する複数のキャッシュのうちから当該数より少ない何れか複数のキャッシュを選定してリストアップする。このリストアップでは、例えば、当該キャッシュのキャッシュID及びシリアル番号がRAMの所定領域に格納される。なお、ここで、選定されるキャッシュの数は、当該コンテンツを構成する全キャッシュの数の所定の割合(例えば10%)に固定設定されていても良いし、その都度算出されるようにしても良い。
次いで、総評価値管理サーバMSの制御部11は、上記リストアップしたキャッシュから1つ選択する(ステップS204)。
そして、ステップS205では、総評価値管理サーバMSの制御部11は、上記ステップS201で選定したコンテンツのルートノード、又は上記ステップS204で選択したキャッシュのルートノードのノード情報を取得し、当該ノード情報を用いて当該ルートノードに接続し、当該ルートノードに対してコンテンツの総評価値の要求を示す総評価値要求メッセージ(コンテンツID、又はキャッシュIDを含む)を送信する。
ここで、例えば、キャッシュのルートノードに対して総評価値要求メッセージが送信された場合、当該ルートノードの制御部21は、図6(B)に示す処理を開始し、当該総評価値要求メッセージに示されるキャッシュを保存している複数のコンテンツ保持ノードのうちから当該数より少ない何れか複数のコンテンツ保持ノードをインデックス情報から例えばランダムに選定してリストアップする。そして、当該ルートノードの制御部21は、当該リストアップした各コンテンツ保持ノードに対して評価値要求メッセージを送信する。これにより、当該ルートノードの制御部21は、各コンテンツ保持ノードから当該キャッシュに対応するコンテンツの評価値を得てこれを合計したコンテンツの総評価値、及びそのキャッシュのキャッシュID等を含む総評価値応答メッセージを総評価値管理サーバMSに対して返信する。
こうして、総評価値管理サーバMSの制御部11は、上記総評価値応答メッセージを受信すると(ステップS206)、当該総評価値応答メッセージに含まれるコンテンツの総評価値等の情報を例えばRAMに記憶する。そして、当該制御部11は、上記選定したコンテンツが分割されているか否かを判別し(ステップS207)、分割されている場合には(ステップS207:YES)、ステップS208に進み、分割されていない場合には(ステップS207:NO)、ステップS210に進む。
ステップS208では、総評価値管理サーバMSの制御部11は、上記リストアップした全てのキャッシュについての上記処理が終了したか否かを判別する。そして、上記リストアップした全てのキャッシュについての上記処理が終了していない場合には(ステップS208:NO)、制御部11は、ステップS204に戻り未だ選択されていないキャッシュを選択して上記と同様の処理を行う。
一方、上記リストアップした全てのキャッシュについての上記処理が終了した場合には(ステップS208:YES)、当該制御部21は、上記記憶されたコンテンツの各総評価値の平均値を算出し当該平均値を当該コンテンツの評価値として決定する(ステップS209)。
図13は、キャッシュ毎のコンテンツの総評価値の平均値をコンテンツの評価値として決定する様子を示す概念図である。図13の例では、コンテンツX(レプリカ)を構成する全キャッシュX1〜X6のうちの一部のキャッシュX1,X3,及びX5が総評価値を調査する対象(上記ステップS203で選定)とされており、かかるキャッシュX1,X3,及びX5に対応するコンテンツの総評価値の平均値(90=(90+85+95)/3)が当該コンテンツXの評価値として決定されている。
そして、ステップS210では、総評価値管理サーバMSの制御部11は、上記決定されたコンテンツの評価値(又は総評価値応答メッセージに含まれるコンテンツの総評価値)により、総評価値管理テーブルに登録されている最新の総評価値を更新(上書き)する。これ以降の処理は、図6(A)と同様である。
そして、総評価値管理サーバMSにおいては、図8、図10に示す処理についても上記と同様に実行されることになる。
以上説明したコンテンツのレプリカが分割され保存されている場合の総評価値の算出方法によれば、分割キャッシュ数が増えても、システムの負荷を増大させることなく、公開済コンテンツの総評価値を迅速、かつ精度良く求めることができる。
なお、上記実施形態におけるコンテンツ分散保存システムSは、DHTを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
8 ネットワーク
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 通信部
14 バス
21 制御部
22 記憶部
23 バッファメモリ
24 デコーダ部
25 映像処理部
26 表示部
27 音声処理部
28 スピーカ
29 通信部
30 入力部
31 バス
MS 総評価値管理サーバ
Nn ノード
S コンテンツ分散保存システム
9 オーバーレイネットワーク
11 制御部
12 記憶部
13 通信部
14 バス
21 制御部
22 記憶部
23 バッファメモリ
24 デコーダ部
25 映像処理部
26 表示部
27 音声処理部
28 スピーカ
29 通信部
30 入力部
31 バス
MS 総評価値管理サーバ
Nn ノード
S コンテンツ分散保存システム
Claims (13)
- ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データが複数のノード装置に分散して保存され、当該複製データを保存した各前記ノード装置によりそのコンテンツの評価を表す評価値が管理されるようにしたコンテンツ分散保存システムにおいて、
各前記評価値の総和を表す総評価値をコンテンツ毎に管理する総評価値管理装置と、
前記コンテンツの複製データを保存している複数のノード装置の情報を管理するノード管理装置と、を備え、
前記総評価値管理装置は、
前記複数のコンテンツのうちから何れかのコンテンツを選定するコンテンツ選定手段と、
前記選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信する総評価値要求情報送信手段と、
前記総評価値要求情報に応じて前記ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信する総評価値情報受信手段と、
を備え、
前記ノード管理装置は、
前記総評価値管理装置からの前記総評価値要求情報を受信する総評価値要求情報受信手段と、
前記受信された総評価値要求情報に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置を選定するノード装置選定手段と、
前記選定された各ノード装置に対して、前記コンテンツの評価値の要求を示す評価値要求情報を送信する評価値要求情報送信手段と、
前記評価値要求情報を受信した各ノード装置が保存している複製データに対応する前記総評価値要求情報に示されるコンテンツの評価値を示す評価値情報を、当該各ノード装置から受信する評価値情報受信手段と、
前記受信された各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出する総評価値算出手段と、
前記算出されたコンテンツの総評価値を示す総評価値情報を前記総評価値管理装置に対して送信する総評価値情報送信手段と、
を備えることを特徴とするコンテンツ分散保存システム。 - 請求項1に記載のコンテンツ分散保存システムにおいて、
前記総評価値算出手段は、
前記受信された各評価値情報に示されるコンテンツの評価値の総和を、当該評価値情報を送信したノード装置の数で除算し、
当該除算した値と、当該コンテンツの複製データを保存しているノード装置の数と、を乗算して当該コンテンツの総評価値を算出することを特徴とするコンテンツ分散保存システム。 - 請求項1又は2に記載のコンテンツ分散保存システムにおいて、
前記コンテンツ選定手段、前記総評価値要求情報送信手段、及び前記総評価値情報受信手段による一連の処理は、所定の時間間隔で繰り返し実行されることを特徴とするコンテンツ分散保存システム。 - 請求項1乃至3の何れか一項に記載のコンテンツ分散保存システムにおいて、
前記総評価値管理装置は、前記総評価値情報受信手段が前記ノード管理装置からの前記総評価値情報を受信した場合には、当該総評価値情報に示されるコンテンツの総評価値と、前回受信した総評価値情報に示される当該コンテンツの総評価値とを比較して大きい方を総評価値の最大値として求める総評価最大値算出手段を更に備えることを特徴とするコンテンツ分散保存システム。 - 請求項1乃至4の何れか一項に記載のコンテンツ分散保存システムにおいて、
前記総評価値管理装置は、前記総評価値情報受信手段により前記総評価値情報が受信される度に、当該総評価値情報に示されるコンテンツの総評価値を別々に記憶しておき、所定期間内において前記受信された総評価値情報に示される当該コンテンツについての各前記総評価値の平均値を算出する総評価平均値算出手段を更に備えることを特徴とするコンテンツ分散保存システム。 - 請求項1乃至5の何れか一項に記載のコンテンツ分散保存システムにおいて、
前記総評価値管理装置は、前記各コンテンツの総評価値、当該各コンテンツの総評価値の最大値、又は当該各コンテンツの総評価値の平均値に基づいて、コンテンツの人気順位を表わすランキングを決定するランキング決定手段を更に備えることを特徴とするコンテンツ分散保存システム。 - 請求項1乃至6の何れか一項に記載のコンテンツ分散保存システムにおいて、
前記総評価値管理装置は、前記総評価値が与えられていないコンテンツのキーワードを少なくとも一つ有し、且つ前記総評価値が与えられているコンテンツを特定するコンテンツ特定手段を更に備え、
前記総評価値算出手段は、前記特定されたコンテンツの総評価値に基づいて、前記総評価値が与えられていないコンテンツの総評価値を算出することを特徴とするコンテンツ分散保存システム。 - 請求項1乃至7の何れか一項に記載のコンテンツ分散保存システムにおいて、
一つのコンテンツの複製データを複数に分割した分割複製データが、前記複数のノード装置に分散して保存され、当該分割複製データを保存した各前記ノード装置により当該分割複製データを有するコンテンツの評価を表す評価値が当該分割複製データに付与されて管理されており、
前記総評価値管理装置は、前記選定されたコンテンツを構成する複数の分割複製データのうちから当該数より少ない何れか複数の分割複製データを選定する分割複製データ選定手段を更に備え、
前記総評価値要求情報送信手段は、前記選定された各分割複製データを保存しているノード装置の情報を管理する各ノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信し、
前記総評価値情報受信手段は、前記総評価値要求情報に応じて前記各ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信し、
前記総評価値管理装置は、前記受信された各総評価値情報に示されるコンテンツの総評価値の平均値を当該コンテンツの総評価値として算出するコンテンツの総評価値算出手段を更に備えることを特徴とするコンテンツ分散保存システム。 - 請求項1に記載のコンテンツ分散保存システムに含まれる前記総評価値管理装置であって、
前記コンテンツ選定手段、前記総評価値要求情報送信手段、及び前記総評価値情報受信手段を備えることを特徴とする総評価値管理装置。 - 請求項1に記載のコンテンツ分散保存システムに含まれる前記ノード管理装置であって、
前記総評価値要求情報受信手段、前記ノード装置選定手段、前記評価値要求情報送信手段、前記評価値情報受信手段、前記総評価値算出手段、及び前記総評価値情報送信手段を備えることを特徴とするノード管理装置。 - コンピュータを、請求項9に記載の総評価値管理装置として機能させることを特徴とする管理処理プログラム。
- コンピュータを、請求項10に記載のノード管理装置として機能させることを特徴とする管理処理プログラム。
- ネットワークに接続された複数のノード装置の参加により構成されるコンテンツ分散保存システムであり、複数のコンテンツの複製データが複数のノード装置に分散して保存され、当該複製データを保存した各前記ノード装置によりそのコンテンツの評価を表す評価値が管理されるようにしたコンテンツ分散保存システムにおけるコンテンツの総評価値管理方法であって、
各前記評価値の総和を表す総評価値をコンテンツ毎に管理する総評価値管理装置は、
前記複数のコンテンツのうちから何れかのコンテンツを選定する工程と、
前記選定されたコンテンツの複製データを保存しているノード装置の情報を管理するノード管理装置に対して、当該コンテンツの総評価値の要求を示す総評価値要求情報を送信する工程と、
前記総評価値要求情報に応じて前記ノード管理装置から送信されたコンテンツの総評価値を示す総評価値情報を受信する工程と、
を備え、
前記ノード管理装置は、
前記総評価値管理装置からの前記総評価値要求情報を受信する工程と、
前記受信された総評価値要求情報に示されるコンテンツの複製データを保存している複数のノード装置のうちから当該数より少ない何れか複数のノード装置を選定する工程と、
前記選定された各ノード装置に対して、前記コンテンツの評価値の要求を示す評価値要求情報を送信する工程と、
前記評価値要求情報を受信した各ノード装置が保存している複製データに対応する前記総評価値要求情報に示されるコンテンツの評価値を示す評価値情報を、当該各ノード装置から受信する工程と、
前記受信された各評価値情報に示されるコンテンツの評価値に基づいて当該コンテンツの総評価値を算出する工程と、
前記算出されたコンテンツの総評価値を示す総評価値情報を前記総評価値管理装置に対して送信する工程と、
を備えることを特徴とする総評価値管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008188827A JP2010026867A (ja) | 2008-07-22 | 2008-07-22 | コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008188827A JP2010026867A (ja) | 2008-07-22 | 2008-07-22 | コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010026867A true JP2010026867A (ja) | 2010-02-04 |
Family
ID=41732631
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008188827A Withdrawn JP2010026867A (ja) | 2008-07-22 | 2008-07-22 | コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010026867A (ja) |
-
2008
- 2008-07-22 JP JP2008188827A patent/JP2010026867A/ja not_active Withdrawn
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8775562B2 (en) | Mapping file fragments to file information and tagging in a segmented file sharing system | |
JP4830889B2 (ja) | 情報配信システム、情報配信方法及びノード装置等 | |
US20070195796A1 (en) | Node apparatus, shared information updating method, shared information storing method, and program | |
WO2007119413A1 (ja) | 情報通信システム、コンテンツカタログ情報配信方法、及びノード装置等 | |
WO2007119418A1 (ja) | 情報通信システム、コンテンツカタログ情報検索方法、及びノード装置等 | |
WO2006103800A1 (ja) | 情報処理装置及び蓄積装置、情報処理方法及び蓄積方法並びに情報処理用プログラム及び蓄積装置用プログラム | |
JP2006260430A (ja) | ノード装置、ノード情報複製プログラム、複製用ノード情報記憶プログラム及びノード情報複製方法 | |
JP4635904B2 (ja) | 登録装置、登録方法及び登録処理プログラム | |
JP5532649B2 (ja) | ノード装置、ノード処理プログラム及びコンテンツ保存方法 | |
JP2007213322A (ja) | 情報配信システム、情報配信方法、ノード装置、及びノード処理プログラム | |
JP5012712B2 (ja) | コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード装置、及び総評価値管理方法 | |
JP2010113573A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、サーバ装置、ノード装置、サーバ処理プログラム、及びノード処理プログラム | |
JP5136208B2 (ja) | コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム | |
JP2010267028A (ja) | 管理装置、管理処理プログラム、ノード装置、ノード処理プログラム、及び有効期限切れレコード判定方法 | |
JP2012073943A (ja) | 情報生成装置、情報生成方法及び情報生成プログラム | |
JP5458629B2 (ja) | ノード装置、ノード処理プログラム及び検索方法 | |
US20100250593A1 (en) | Node device, information communication system, method for managing content data, and computer readable medium | |
JP2010026867A (ja) | コンテンツ分散保存システム、総評価値管理装置、管理処理プログラム、ノード管理装置、及び総評価値管理方法 | |
JP2010066930A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム | |
JP2010108082A (ja) | コンテンツ分散保存システム、コンテンツ保存方法、ノード装置、及びノード処理プログラム | |
JP5423497B2 (ja) | 情報通信システム、ノード装置、情報通信方法、及びプログラム | |
JP2009129161A (ja) | コンテンツ分散保存システム、コンテンツ評価値決定方法、配信装置、及び配信処理プログラム | |
JP5157770B2 (ja) | ノード装置、プログラム及び保存指示方法 | |
JP2011076507A (ja) | 情報処理装置、情報通信システム、情報処理方法及び情報処理用プログラム | |
JP5412924B2 (ja) | ノード装置、ノード処理プログラム及びコンテンツデータ削除方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20111004 |