(57)【要約】      （修正有）【課題】管理対象となる全ての属性情報等のレコードを調べなくとも、有効期限が到来しているレコードの有無を効率良く判定し、有効期限切れレコードを迅速に検索する。【解決手段】検索手段が有効期限切れのレコードを検索する際、判定手段は、ページ情報に含まれる有効期限有効期限が到来したか否かの判定を行う。第１制御手段は、検索手段により、有効期限切れのレコードが検索される際、木構造として記憶される所定のページ情報に含まれる有効期限を判定手段に判定させる。そして、所定のページ情報に含まれる有効期限が到来したと判定されなかった場合、第２制御手段は、検索手段に有効期限切れのレコードの検索を終了させる。一方、所定のページ情報に含まれる有効期限が到来したと判定された場合、第２制御手段は、所定のページ情報の子ページ情報に含まれる有効期限が到来したかを判定手段に判定させる。【選択図】図８
2010267028.tif 000002
【特許請求の範囲】
【請求項１】
木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶手段と、
有効期限切れのレコードを検索する検索手段と、
前記検索手段が前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定手段と、
前記検索手段により、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御手段と、
前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、
前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させる第２制御手段と、
を備えることを特徴とする管理装置。
【請求項２】
前記第１制御手段は、前記検索手段により、前記有効期限切れのレコードが検索される際、前記根に位置するページ情報に含まれる前記有効期限を前記判定手段に判定させ、
前記第１制御手段により前記判定手段が、前記根に位置するページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、
前記第２制御手段は、前記第１制御手段により前記判定手段が、前記根に位置するページ情報に含まれる前記有効期限が到来したと判定した場合、前記根に位置するページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させ、
前記第２制御手段により前記判定手段が、前記子に位置するページ情報に含まれる前記有効期限が到来したと判定した場合、前記第２制御手段は、前記判定手段が判定したページ情報の子の位置のページ情報に含まれる前記有効期限を前記判定手段に判定させ、
前記第２制御手段により前記判定手段が、前記子に位置するページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記第２制御手段は、前記検索手段に前記判定手段が判定したページ情報の子の位置から葉の位置までの前記有効期限切れのレコードの検索を終了させることを特徴とする請求項１に記載の管理装置。
【請求項３】
前記記憶手段は、前記ページ情報に含まれる前記有効期限として、当該ページ情報から葉に位置するページ情報の何れかに含まれる複数のレコードの有効期限の中で最初に到来する有効期限を記憶し、
前記第２制御手段は、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させることを特徴とする請求項１または２に記載の管理装置。
【請求項４】
有効期限を有する新たなレコードを前記複数のページ情報の何れかに追加する追加手段と、
前記追加手段により新たに追加されたレコードの有効期限が、当該レコードが追加されたページ情報に含まれる有効期限より早いか否かを判別する期限判別手段と、
前記期限判別手段により前記ページ情報に含まれる有効期限より早いと判別された場合、前記レコードが追加されたページ情報に含まれる有効期限を、前記追加されたレコードの有効期限に更新する更新手段と、
前記期限判別手段により前記ページ情報に含まれる有効期限より早いと判別された場合、前記新たに追加されたレコードの有効期限が、前記期限判別手段により判別されたページ情報の親に位置するページ情報に含まれる有効期限より早いか否かを前記期限判別手段に判別させる第３制御手段と、
前記第３制御手段により前記期限判別手段が，前記親に位置するページ情報に含まれる有効期限より早いと判別した場合、前記更新手段に前記親に位置するページ情報に含まれる有効期限を前記追加されたレコードの有効期限に更新させる第４制御手段と、
を備えることを特徴とする請求項３に記載の管理装置。
【請求項５】
有効期限を有する新たなレコードを含む新たなページ情報を追加する追加手段と、
前記新たなレコードの有効期限が、前記追加された新たなページ情報の親に位置するページ情報に含まれる有効期限より早いか否かを判別する期限判別手段と、
前記期限判別手段により前記親に位置するページ情報に含まれる有効期限より早いと判別された場合、前記追加された新たなページ情報の親に位置するページ情報に含まれる有効期限を、前記新たなレコードの有効期限に更新する更新手段と、
を備えることを特徴とする請求項３に記載の管理装置。
【請求項６】
前記記憶手段は、前記ページ情報に含まれる前記有効期限として、当該ページ情報から葉に位置するページ情報の何れかに含まれる複数のレコードの有効期限の中で最後に到来する最終有効期限を記憶し、
前記判定手段は、前記ページ情報に含まれる前記最終有効期限が到来したか否かの判定を行い、
前記判定手段により最終有効期限が到来していると判定された場合、当該判定されたページ情報から葉に位置するページ情報までの全てのページ情報を削除するページ情報削除手段
を備えることを特徴とする請求項１または２に記載の管理装置。
【請求項７】
有効期限を有する新たなレコードを前記複数のページ情報の何れかに追加する追加手段と、
前記追加手段により新たに追加されたレコードの有効期限が、当該レコードが追加されたページ情報に含まれる最終有効期限より遅いか否かを判別する期限判別手段と、
前記期限判別手段により前記最終有効期限より遅いと判別された場合、前記レコードが追加されたページ情報に含まれる最終有効期限を、前記追加されたレコードの有効期限に更新する更新手段と、
前記期限判別手段により前記ページ情報に含まれる最終有効期限より遅いと判別された場合、前記新たに追加されたレコードの有効期限が、前記期限判別手段により判別されたページ情報の親に位置するページ情報に含まれる最終有効期限より遅いか否かを前記期限判別手段に判別させる第３制御手段と、
前記第３制御手段により前記期限判別手段が、前記親に位置するページ情報に含まれる最終有効期限より遅いと判別した場合、前記更新手段に前記親に位置するページ情報に含まれる最終有効期限を前記追加されたレコードの有効期限に更新させる第４制御手段と、
を備えることを特徴とする請求項６に記載の管理装置。
【請求項８】
有効期限を有する新たなレコードを含む新たなページ情報を追加する追加手段と、
前記新たなレコードの有効期限が、前記追加された新たなページ情報の親に位置するページ情報に含まれる最終有効期限より遅いか否かを判別する期限判別手段と、
前記期限判別手段により前記親に位置するページ情報に含まれる最終有効期限より遅いと判別された場合、前記追加された新たなページ情報の親に位置するページ情報に含まれる最終有効期限を、前記新たなレコードの有効期限に更新する更新手段と、
を備えることを特徴とする請求項６に記載の管理装置。
【請求項９】
ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータが分散して保存されたコンテンツ分散保存システムにおける前記ノード装置であって、
木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶手段と、
有効期限切れのレコードを検索する検索手段と、
前記検索手段が前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定手段と、
前記検索手段により、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御手段と、
前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、
前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させる第２制御手段と、
を備えることを特徴とするノード装置。
【請求項１０】
木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶させる記憶ステップと、
有効期限切れのレコードを検索する検索ステップと、
前記検索ステップが前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定ステップと、
前記検索ステップにより、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御ステップと、
前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、
前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、
をコンピュータに実現させるための管理処理プログラム。
【請求項１１】
木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶ステップと、
有効期限切れのレコードを検索する検索ステップと、
前記検索ステップが前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限有効期限が到来したか否かの判定を行う判定ステップと、
前記検索ステップにより、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定ステップに判定させる第１制御ステップと、
前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索ステップに前記有効期限切れのレコードの検索を終了させ、
前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、
を、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータが分散して保存されたコンテンツ分散保存システムにおけるノード装置のコンピュータに実現させるためのノード処理プログラム。
【請求項１２】
木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶ステップと、
有効期限切れのレコードを検索する検索ステップと、
前記検索ステップにおいて前記有効期限切れのレコードが検索される際、前記ページ情報に含まれる前記有効期限有効期限が到来したか否かの判定を行う判定ステップと、
前記検索ステップにおいて前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定ステップに判定させる第１制御ステップと、
前記第１制御ステップにより前記判定ステップにおいて前記所定のページ情報に含まれる前記有効期限が到来したと判定されなかった場合、前記検索ステップに前記有効期限切れのレコードの検索を終了させ、
前記第１制御ステップにより前記判定ステップにおいて前記所定のページ情報に含まれる前記有効期限が到来したと判定された場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、
を含むことを特徴とする有効期限切れレコード判定方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータが分散して保存されたコンテンツ分散保存システム等の技術分野に関する。
【背景技術】
【０００２】
この種のコンテンツ分散保存システムにおいて、各ノード装置は、コンテンツデータの属性情報が記述されたコンテンツカタログ情報を用いて、所望のコンテンツデータを検索し、他のノード装置又はコンテンツ管理サーバから取得可能になっている。この属性情報には、コンテンツ名、公開開始日時、公開終了日時、及びコンテンツデータの検索キーワード等の情報が含まれている。そして、コンテンツカタログ情報は、例えばコンテンツ管理サーバにより生成され、各ノード装置に配信される。また、コンテンツ分散保存システムにおいて、新たなコンテンツデータが追加された場合、又はコンテンツデータの利用が終了した場合には、コンテンツカタログ情報はコンテンツ管理サーバにより更新され、各ノード装置に配信される。
【０００３】
特許文献１には、１台のノード装置に記憶するコンテンツカタログ情報のデータ量を減らすため、複数に分割されたコンテンツカタログ情報を複数のノード装置が分散して記憶する構成が提案されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２８０３０３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、公開終了日時に達し、有効期限切れとなったコンテンツデータは、ノード装置のプログラム上でアクセスできないように処理される。しかし、そのような有効期限切れとなったコンテンツデータの属性情報のレコードがコンテンツカタログ情報中に放置されると、当該コンテンツカタログ情報のデータ量の肥大化を招く。このため、有効期限が到来したコンテンツデータの属性情報のレコードをコンテンツカタログ情報から定期的に削除する必要がある。
【０００６】
しかしながら、従来のコンテンツカタログ情報では、有効期限が到来したコンテンツデータの属性情報のレコードをコンテンツカタログ情報から削除するために、毎回、コンテンツカタログ情報における全てのレコードを調べる必要があり、非効率的であった。仮に、有効期限が到来したことがわかっても、全てのレコードを調べなければ、コンテンツカタログ情報中、何行目のコンテンツデータの有効期限が到来したかまではわからなかった。
【０００７】
本発明は、以上の問題等に鑑みてなされたものである。管理対象となる全ての属性情報等のレコードを調べなくとも、有効期限が到来しているレコードの有無を効率良く判定し、有効期限切れレコードを迅速に検索することが可能な管理装置、管理処理プログラム、ノード装置、ノード処理プログラム及び有効期限切れレコード判定方法を提供することを課題とする。また、レコードの検索時において無駄な検索を無くすことが可能な管理装置、管理処理プログラム、ノード装置、ノード処理プログラム及び有効期限切れレコード判定方法を提供することを課題とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、請求項１に記載の管理装置の発明は、木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶手段と、有効期限切れのレコードを検索する検索手段と、前記検索手段が前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定手段と、前記検索手段により、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御手段と、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させる第２制御手段と、を備えることを特徴とする。
【０００９】
請求項２に記載の発明は、請求項１に記載の管理装置において、前記第１制御手段は、前記検索手段により、前記有効期限切れのレコードが検索される際、前記根に位置するページ情報に含まれる前記有効期限を前記判定手段に判定させ、前記第１制御手段により前記判定手段が、前記根に位置するページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、前記第２制御手段は、前記第１制御手段により前記判定手段が、前記根に位置するページ情報に含まれる前記有効期限が到来したと判定した場合、前記根に位置するページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させ、前記第２制御手段により前記判定手段が、前記子に位置するページ情報に含まれる前記有効期限が到来したと判定した場合、前記第２制御手段は、前記判定手段が判定したページ情報の子の位置のページ情報に含まれる前記有効期限を前記判定手段に判定させ、前記第２制御手段により前記判定手段が、前記子に位置するページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記第２制御手段は、前記検索手段に前記判定手段が判定したページ情報の子の位置から葉の位置までの前記有効期限切れのレコードの検索を終了させることを特徴とする。
【００１０】
請求項３に記載の発明は、請求項１または２に記載の管理装置において、前記記憶手段は、前記ページ情報に含まれる前記有効期限として、当該ページ情報から葉に位置するページ情報の何れかに含まれる複数のレコードの有効期限の中で最初に到来する有効期限を記憶し、前記第２制御手段は、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させることを特徴とする。
【００１１】
請求項４に記載の発明は、請求項３に記載の管理装置において、有効期限を有する新たなレコードを前記複数のページ情報の何れかに追加する追加手段と、前記追加手段により新たに追加されたレコードの有効期限が、当該レコードが追加されたページ情報に含まれる有効期限より早いか否かを判別する期限判別手段と、前記期限判別手段により前記ページ情報に含まれる有効期限より早いと判別された場合、前記レコードが追加されたページ情報に含まれる有効期限を、前記追加されたレコードの有効期限に更新する更新手段と、前記期限判別手段により前記ページ情報に含まれる有効期限より早いと判別された場合、前記新たに追加されたレコードの有効期限が、前記期限判別手段により判別されたページ情報の親に位置するページ情報に含まれる有効期限より早いか否かを前記期限判別手段に判別させる第３制御手段と、前記第３制御手段により前記期限判別手段が、前記親に位置するページ情報に含まれる有効期限より早いと判別した場合、前記更新手段に前記親に位置するページ情報に含まれる有効期限を前記追加されたレコードの有効期限に更新させる第４制御手段と、を備えることを特徴とする。
【００１２】
請求項５に記載の発明は、請求項３に記載の管理装置において、有効期限を有する新たなレコードを含む新たなページ情報を追加する追加手段と、前記新たなレコードの有効期限が、前記追加された新たなページ情報の親に位置するページ情報に含まれる有効期限より早いか否かを判別する期限判別手段と、前記期限判別手段により前記親に位置するページ情報に含まれる有効期限より早いと判別された場合、前記追加された新たなページ情報の親に位置するページ情報に含まれる有効期限を、前記新たなレコードの有効期限に更新する更新手段と、を備えることを特徴とする。
【００１３】
請求項６に記載の発明は、請求項１または２に記載の管理装置において、前記記憶手段は、前記ページ情報に含まれる前記有効期限として、当該ページ情報から葉に位置するページ情報の何れかに含まれる複数のレコードの有効期限の中で最後に到来する最終有効期限を記憶し、前記判定手段は、前記ページ情報に含まれる前記最終有効期限が到来したか否かの判定を行い、前記判定手段により最終有効期限が到来していると判定された場合、当該判定されたページ情報から葉に位置するページ情報までの全てのページ情報を削除するページ情報削除手段を備えることを特徴とする。
【００１４】
請求項７に記載の発明は、請求項６に記載の管理装置において、有効期限を有する新たなレコードを前記複数のページ情報の何れかに追加する追加手段と、前記追加手段により新たに追加されたレコードの有効期限が、当該レコードが追加されたページ情報に含まれる最終有効期限より遅いか否かを判別する期限判別手段と、前記期限判別手段により前記最終有効期限より遅いと判別された場合、前記レコードが追加されたページ情報に含まれる最終有効期限を、前記追加されたレコードの有効期限に更新する更新手段と、前記期限判別手段により前記ページ情報に含まれる最終有効期限より遅いと判別された場合、前記新たに追加されたレコードの有効期限が、前記期限判別手段により判別されたページ情報の親に位置するページ情報に含まれる最終有効期限より遅いか否かを前記期限判別手段に判別させる第３制御手段と、前記第３制御手段により前記期限判別手段が、前記親に位置するページ情報に含まれる最終有効期限より遅いと判別した場合、前記更新手段に前記親に位置するページ情報に含まれる最終有効期限を前記追加されたレコードの有効期限に更新させる第４制御手段と、を備えることを特徴とする。
【００１５】
請求項８に記載の発明は、請求項６に記載の管理装置において、有効期限を有する新たなレコードを含む新たなページ情報を追加する追加手段と、前記新たなレコードの有効期限が、前記追加された新たなページ情報の親に位置するページ情報に含まれる最終有効期限より遅いか否かを判別する期限判別手段と、前記期限判別手段により前記親に位置するページ情報に含まれる最終有効期限より遅いと判別された場合、前記追加された新たなページ情報の親に位置するページ情報に含まれる最終有効期限を、前記新たなレコードの有効期限に更新する更新手段と、を備えることを特徴とする。
【００１６】
請求項９に記載の発明は、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータが分散して保存されたコンテンツ分散保存システムにおける前記ノード装置であって、木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶手段と、有効期限切れのレコードを検索する検索手段と、前記検索手段が前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定手段と、前記検索手段により、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御手段と、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、前記第１制御手段により前記判定手段が、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定手段に判定させる第２制御手段と、を備えることを特徴とする。
【００１７】
請求項１０に記載の管理処理プログラムの発明は、木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶させる記憶ステップと、有効期限切れのレコードを検索する検索ステップと、前記検索ステップが前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限が到来したか否かの判定を行う判定ステップと、前記検索ステップにより、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定手段に判定させる第１制御ステップと、前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索手段に前記有効期限切れのレコードの検索を終了させ、前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、をコンピュータに実現させる。
【００１８】
請求項１１に記載のノード処理プログラムの発明は、木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶ステップと、有効期限切れのレコードを検索する検索ステップと、前記検索ステップが前記有効期限切れのレコードを検索する際、前記ページ情報に含まれる前記有効期限有効期限が到来したか否かの判定を行う判定ステップと、前記検索ステップにより、前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定ステップに判定させる第１制御ステップと、前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定しなかった場合、前記検索ステップに前記有効期限切れのレコードの検索を終了させ、前記第１制御ステップにより前記判定ステップが、前記所定のページ情報に含まれる前記有効期限が到来したと判定した場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、を、ネットワークを介して互いに通信可能な複数のノード装置に複数のコンテンツデータが分散して保存されたコンテンツ分散保存システムにおけるノード装置のコンピュータに実現させる。
【００１９】
請求項１２に記載の有効期限切れレコード判定方法の発明は、木構造における根、節、および葉に位置するページ情報を記憶し、且つ、前記木構造におけるページ情報の位置から葉に位置するページ情報の何れかに含まれるレコードの有効期限を含む複数の前記ページ情報を記憶する記憶ステップと、有効期限切れのレコードを検索する検索ステップと、前記検索ステップにおいて前記有効期限切れのレコードが検索される際、前記ページ情報に含まれる前記有効期限有効期限が到来したか否かの判定を行う判定ステップと、前記検索ステップにおいて前記有効期限切れのレコードが検索される際、前記木構造として記憶される所定のページ情報に含まれる前記有効期限を前記判定ステップに判定させる第１制御ステップと、前記第１制御ステップにより前記判定ステップにおいて前記所定のページ情報に含まれる前記有効期限が到来したと判定されなかった場合、前記検索ステップに前記有効期限切れのレコードの検索を終了させ、前記第１制御ステップにより前記判定ステップにおいて前記所定のページ情報に含まれる前記有効期限が到来したと判定された場合、前記所定のページ情報の子に位置するページ情報に含まれる前記有効期限が到来したかを前記判定ステップに判定させる第２制御ステップと、を含むことを特徴とする。
【発明の効果】
【００２０】
請求項１、２、９乃至１２に記載の発明によれば、管理対象となる全てのレコードを調べなくとも、有効期限が到来しているレコードの有無を効率良く判定することができる。また、有効期限切れレコードを迅速に検索することができる。また、レコードの検索時において無駄な検索を無くすことができる。
【００２１】
請求項３に記載の発明によれば、管理対象となる全てのレコードを調べなくとも、有効期限が到来しているレコードの有無を、より迅速に判定することができる。また、有効期限が到来しているレコードをより迅速に検索することがきできる。
【００２２】
請求項４に記載の発明によれば、新たなレコードがページ情報に追加されるときに、レコードが追加されたページ情報及びこのページ情報の親に位置するページ情報に含まれる有効期限を効率良く更新することができる。
【００２３】
請求項５に記載の発明によれば、新たなレコードを含む新たなページ情報が追加されるときに、新たなレコードを含むページ情報及びこのページ情報の親に位置するページ情報に含まれる有効期限を効率良く更新することができる。
【００２４】
請求項６に記載の発明によれば、木構造のある節に位置するページ情報に含まれる最終有効期限が到来したと判定された場合、このページ情報から葉に位置するページ情報までの全てのページ情報を一括して削除することができる。
【００２５】
請求項７に記載の発明によれば、新たなレコードがページ情報に追加されるときに、レコードが追加されたページ情報及びこのページ情報の親に位置するページ情報に含まれる最終有効期限を効率良く更新することができる。
【００２６】
請求項８に記載の発明によれば、新たなレコードを含む新たなページ情報が追加されるときに、新たなレコードを含むページ情報及びこのページ情報の親に位置するページ情報に含まれる最終有効期限を効率良く更新することができる。
【図面の簡単な説明】
【００２７】
【図１】本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【図２】本実施形態におけるコンテンツカタログ情報のデータ構造の一例を示す図である。
【図３】コンテンツ管理サーバＭＳの概要構成例を示す図である。
【図４】ノードＮｎの概要構成例を示す図である。
【図５】コンテンツ管理サーバＭＳの処理部１１におけるレコード追加時の処理の一例を示すフローチャートである。
【図６】図５に示すステップＳ３における有効期限更新処理１の詳細を示すフローチャートである。
【図７】図５に示すステップＳ４における有効期限更新処理２の詳細を示すフローチャートである。
【図８】コンテンツ管理サーバＭＳの処理部１１における有効期限切れのレコードの検索処理の一例を示すフローチャートである。
【図９】有効期限切れのレコードの削除手順のイメージ図である。
【図１０】ノードＮｎの制御部２１におけるレコードの検索処理の一例を示すフローチャートである。
【発明を実施するための形態】
【００２８】
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、コンテンツ分散保存システムに本発明を適用した場合の実施形態である。
【００２９】
［１．コンテンツ分散保存システムの構成及び動作概要］
始めに、図１を参照して、本実施形態に係るコンテンツ分散保存システムの構成及び動作概要について説明する。
【００３０】
図１は、本実施形態に係るコンテンツ分散保存システムにおける各ノード装置の接続態様の一例を示す図である。
【００３１】
図１の下部枠１０１内に示すように、分散保存システムＳは、複数のノード装置Ｎｎがインターネットを介して接続されることで構成される。また、図１の下部枠１０１内に示すように、ＩＸ（Internet eＸchange）３、ＩＳＰ（Internet Service Provider）４ａ,４ｂ、ＤＳＬ（Digital Subscriber Line）回線事業者の装置５ａ,５ｂ、ＦＴＴＨ（Fiber To The Home）回線事業者の装置６、及び通信回線７等によって、インターネット等のネットワーク８が構築されている。なお、通信回線７としては、例えば、電話回線や光ケーブル等が用いられる。
【００３２】
ネットワーク８には、複数のノード装置Ｎｎ（ｎ＝１，２，３・・・の何れか）が接続されている。なお、以下の説明において、ノード装置を「ノード」と称する。
【００３３】
また、各ノードＮｎには、固有の製造番号およびＩＰ（Internet Protocol）アドレスが割り当てられている。そして、本実施形態に係るコンテンツ分散保存システムＳは、これらのノードＮｎのうち、図１の上部枠１００内に示すように、何れか複数のノードＮｎの接続により形成されるピアツーピア方式のネットワークシステムとなっている。
【００３４】
なお、図１の上部枠１００内に示すネットワーク９は、既存のネットワーク８を用いて形成された仮想的なリンクを構成するオーバーレイネットワーク９である。オーバーレイネットワーク９は、特定のアルゴリズム、例えば、ＤＨＴを利用したアルゴリズムにより実現される。そして、コンテンツ分散保存システムＳに接続している各ノードＮｎには、所定桁数からなる固有の識別データであるノードＩＤが割り当てられている。また、当該ノードＩＤは、例えば、各ノードＮｎに個別に割り当てられたＩＰアドレス或いは製造番号を共通のハッシュ関数によりハッシュ化した値である。ノードＩＤは、ＩＤ空間に偏りなく分散して配置されることになる。本実施形態では、ハッシュ関数として、ＳＨＡ−１を用いる。また、ハッシュ化した値は、例えば、ｂｉｔ長が１６０ｂｉｔになる。
【００３５】
また、各ノードＮｎは、夫々、ＤＨＴを用いたルーティングテーブルを保持している。ＤＨＴを用いたルーティングテーブルは、コンテンツ分散保存システムＳ上における各種メッセージの転送先を規定している。具体的には、ルーティングテーブルには、ＩＤ空間内で適度に離れたノードＮｎのノードＩＤ、ＩＰアドレス及びポート番号を含むノード情報が複数登録されている。なお、ＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００３６】
また、コンテンツ分散保存システムＳにおいては、内容の異なる様々なコンテンツデータが所定のファイル形式で複数のノードＮｎに分散して保存されている。コンテンツデータは、例えば、映画や音楽等のデータである。なお、以下の説明において、コンテンツデータを「コンテンツ」と称する。
【００３７】
また、各コンテンツには、夫々、コンテンツ名及びコンテンツＩＤ等の情報が付与されている。コンテンツＩＤは、コンテンツ毎に固有の識別データである。例えば、コンテンツ名＋任意の数値が、ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成される。また、コンテンツの先頭数バイトが、ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成されても良い。或いは、システム管理者が、コンテンツ毎に一意のＩＤ値を付与しても良い。ＩＤ値はノードＩＤと同一ビット長である。
【００３８】
このように分散保存されているコンテンツの所在は、所在を管理しているノードＮｎにより管理される。なお、以下の説明において、所在を管理しているノードＮｎを、「ルートノード」と称する。また、コンテンツを保存したノードＮｎを、「コンテンツ保持ノード」と称する。
【００３９】
ルートノードは、コンテンツ保持ノードのノード情報と、コンテンツのコンテンツＩＤ等の組を含む所在情報を記憶している。これにより、コンテンツ保持ノードの所在が管理されるようになっている。ルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤを有するノードＮｎであるように定められる。「コンテンツＩＤと最も近いノードＩＤ」とは、例えば、コンテンツＩＤと上位桁がより多く一致するノードＩＤを意味する。
【００４０】
そして、あるノードＮｎのユーザが、所望するコンテンツを取得したい場合、当該ノードＮｎは、コンテンツ所在問合せメッセージを生成する。コンテンツ所在問合せメッセージは、検索クエリの一種である。なお、以下の説明において、ユーザからの指示にしたがってコンテンツ所在問合せメッセージを生成するノードＮｎを、「ユーザノード」と称する。
【００４１】
コンテンツ所在問合せメッセージは、ユーザにより選択されたコンテンツのコンテンツＩＤ及びコンテンツ所在問合せメッセージを生成したユーザノードのＩＰアドレス等を含む。そして、コンテンツ所在問合せメッセージは、ユーザノードに記憶されたＤＨＴを用いたルーティングテーブルにしたがって他のノードＮｎへ送出される。つまり、ユーザノードは、コンテンツ所在問合せメッセージを、ルートノード宛てに送出する。これにより、コンテンツ所在問合せメッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。なお、ＤＨＴルーティングについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００４２】
ルートノードは、コンテンツ所在問合せメッセージを受信すると、これに含まれるコンテンツＩＤに対応する所在情報を取得する。そして、ルートノードは、取得した所在情報を、受信したコンテンツ所在問合せメッセージの送信元であるユーザノードへ返信する。ユーザノードは、所在情報を取得すると、これに含まれるコンテンツ保持ノードのＩＰアドレス等に基づいてコンテンツ保持ノードにアクセスする。従って、ユーザノードは、コンテンツ保持ノードからコンテンツをダウンロードして再生することが可能になる。なお、ルートノードは、所在情報に含まれるＩＰアドレス等により示されたコンテンツ保持ノードへコンテンツ送信要求メッセージを送信してもよい。この場合、コンテンツ保持ノードがユーザノードへアクセスしてコンテンツを提供することになる。
【００４３】
また、コンテンツ分散保存システムＳに保存される全てのコンテンツは、コンテンツ管理サーバＭＳにより管理される。コンテンツ管理サーバＭＳは、コンテンツ分散保存システムＳに保存される全てのコンテンツの属性情報を記憶している。そして、コンテンツ管理サーバＭＳは、コンテンツの属性情報を含むコンテンツカタログ情報を、全てのノードＮｎに対して、ＤＨＴマルチキャストで配信する。ＤＨＴマルチキャストでは、コンテンツ管理サーバＭＳからあるノードＮｎに配信されたメッセージが、ＤＨＴを用いたルーティングテーブルにしたがって、コンテンツ分散保存システムＳに接続しているノードＮｎを順次転送される。これにより、最終的には全てのノードＮｎに行き渡る。なお、ＤＨＴマルチキャストは、例えば特開２００７−０５３６６２号公報等で公知であるので、詳しい説明を省略する。
【００４４】
［２．コンテンツカタログ情報のデータ構造及び内容］
次に、図２を参照して、コンテンツカタログ情報のデータ構造及び内容等について説明する。
【００４５】
図２は、本実施形態におけるコンテンツカタログ情報のデータ構造の一例を示す図である。
【００４６】
本実施形態において用いられるコンテンツカタログ情報は、コンテンツの属性情報のレコードの検索を効率的に行うため、図２に示す探索木の構造を有している。より具体的には、コンテンツカタログ情報は、図２に示すように、木構造における根、節、および葉に位置するページ情報から構成される。そして、上位階層の根に位置するページ情報から、下位階層の葉に位置するページ情報にかけて、各ページ情報が関連付けられている。なお、以下の説明において、根に位置するページ情報を、「根ページ情報」と称する。また、節に位置するページ情報を、「節ページ情報」と称する。また、葉に位置するページ情報を、「葉ページ情報」と称する。また、コンテンツの属性情報のレコードを、「レコード」と称する。
【００４７】
また、直接関連付けられているページ情報同士は、親子関係を形成している。直接関連付けられた例えば２つのページ情報のうち、上位階層側のページ情報が親のページ情報となり、下位階層側のページ情報が子のページ情報となる。なお、以下の説明において、親の位置のページ情報を、「親ページ情報」と称する。また、子の位置のページ情報を、「子ページ情報」と称する。
【００４８】
また、木構造におけるページ情報の位置から葉ページ情報の何れかのページ情報にはレコードが含まれる。ここで、木構造におけるページ情報の位置とは、根ページ情報が該当する。図２の例では、葉ページ情報ＬＰ１に、２つのレコードＲ１及びＲ２が含まれている。また、葉ページ情報ＬＰ２に、１つのレコードＲ３が含まれている。なお、本実施形態においては、１つのページ情報に含まれる最大レコード数は、所定数、例えば２つに予め設定される。また、１つのレコードには、１つのコンテンツの属性情報が格納される。なお、図２では、レコードが各葉ページ情報のみに含まれる例を示しているが、このレコードは、根ページ情報や節ページ情報に含まれるように構成してもよい。
【００４９】
ここで、コンテンツの属性情報には、コンテンツＩＤ、コンテンツ名、公開開始日時、公開終了日時、及びキーワード等の情報が含まれる。キーワードは、ユーザがコンテンツカタログ情報から所望のコンテンツのコンテンツＩＤを検索するために用いられるものである。例えば、キーワードは、コンテンツのジャンル等である。ユーザが所望のキーワードを入力することにより、所望のコンテンツのコンテンツＩＤがコンテンツカタログ情報から検索される。また、公開終了日時は、コンテンツデータの有効期限である。言い換えれば、公開終了日時は、レコードの有効期限である。この有効期限が到来すると、コンテンツＩＤは、コンテンツカタログ情報から検索できない。したがって、有効期限が到来すると、コンテンツ分散保存システムＳにおいて、コンテンツＩＤを用いてコンテンツの所在は検索できないようになっている。
【００５０】
また、各ページ情報には、コンテンツカタログ情報で固有のページＩＤが付与されている。ページＩＤは、シリアル番号であってもよいし、ページＩＤが付与されるページ情報をハッシュ関数によりハッシュ化したハッシュ値であってもよい。或いは、ページＩＤは、シリアル番号とハッシュ化したハッシュ値との組であってもよい。このハッシュ値を用いればページ情報の改竄チェックを行うことができる。
【００５１】
また、各ページ情報には、リンク情報、及びインデックス情報が含まれている。リンク情報は、親ページ情報と子ページ情報との関連付けを示す情報である。図２の例では、根ページ情報ＲＰ１に、節ページ情報ＮＰ１〜ＮＰ１０のページＩＤがリンク情報として含まれることで、節ページ情報ＮＰ１〜ＮＰ１０が根ページ情報ＲＰ１の子ページ情報として関連付けられている。また、節ページ情報ＮＰ１に、葉ページ情報ＬＰ１〜ＬＰ９のページＩＤがリンク情報として含まれることで、葉ページ情報ＬＰ１〜ＬＰ９が節ページ情報ＮＰ１の子ページ情報として関連付けられている。なお、一つあたりの根ページ情報または節ページ情報に格納可能なリンク情報の最大数は、例えば、コンテンツカタログ情報の木構造としての次数に一致する。この次数は、ｎ分探索木のｎの値に該当する。また、図２の例では、コンテンツカタログ情報は、３階層から構成されるが、レコード数や、ｎ分探索木のｎの値によって階層数は変動する。
【００５２】
また、インデックス情報は、根ページ情報から葉ページ情報までの何れかのページ情報、または根ページ情報から葉ページ情報の何れかに含まれるレコードを検索するための情報である。コンテンツカタログ情報の木構造は、順序性を有している。従って、根ページ情報及び節ページ情報に含まれるインデックス情報は、その値の小さい順に配列されている。
【００５３】
例えば、図２では、根ページ情報ＲＰ１に含まれるインデックス情報は、１００、２００、・・・９００の値となっている。また、節ページ情報ＮＰ１に含まれるインデックス情報は、１０、２０、・・・８０の値となっている。なお、図２に示すインデックス情報は、便宜上十進数で示されているが、これに限定されるものではない。
【００５４】
そして、リンク情報は、インデックス情報に対応した順序で配列されている。図２の例では、節ページ情報ＮＰ１に含まれる左から１番目のリンク情報“13id”は、左から１番目のインデックス情報に係る値“１０”以下のインデックス情報の値が含まれる葉ページ情報ＬＰ１への関連付けを示す。また、節ページ情報ＮＰ１に含まれる左から２番目のリンク情報“23id”は、左から１番目のインデックス情報に係る値“１０”より大きく且つ左から２番目のインデックス情報に係る値“２０”以下のインデックス情報に係る値が含まれる葉ページ情報ＬＰ２への関連付けを示す。なお、ある節ページ情報に現在ｋ個のリンク情報が含まれている場合、この節ページ情報にはｋ−１個のインデックス情報が含まれることになる。
【００５５】
また、図２に示すように、葉ページ情報に含まれるインデック情報と、レコードとは、一対一に対応付けられている。従って、インデックス情報により、対応するレコードを一意に特定することができる。
【００５６】
更に、各ページ情報には、根ページ情報から葉ページ情報の何れかに含まれるレコードの有効期限が含まれている。図２の例では、各ページ情報には、最初有効期限と、最終有効期限との２種類の有効期限が含まれている。最初有効期限は、これを含むページ情報から下位階層の葉ページ情報の何れかに含まれるレコードの有効期限の中で最初に到来する有効期限である。一方、最終有効期限は、これを含むページ情報から下位階層の葉ページ情報の何れかに含まれるレコードの有効期限の中で最後に到来する有効期限である。
【００５７】
例えば、図２において、葉ページ情報ＬＰ１に含まれるレコードＲ１の有効期限とレコードＲ２の有効期限のうち最初に到来する有効期限が、葉ページ情報ＬＰ１に含まれる最初有効期限“2010/5/8 10:00”となる。また、葉ページ情報ＬＰ１に含まれるレコードＲ１の有効期限とレコードＲ２の有効期限のうち最後に到来する有効期限が、葉ページ情報ＬＰに含まれる最終有効期限“2010/7/8 10:00”となる。また、葉ページ情報ＬＰ２のように、一つのレコードのみが含まれる場合、このレコードの有効期限が、葉ページ情報ＬＰ１に含まれる最初有効期限及び最終有効期限になる。
【００５８】
また、節ページ情報ＮＰ１中に示される最初有効期限“2010/4/8 10:00”は、節ページ情報ＮＰ１の子ページ情報である葉ページ情報ＬＰ１〜ＬＰ９に含まれる最初有効期限の中で最初に到来する最初有効期限である。また、節ページ情報ＮＰ１中に示される最終有効期限“2010/8/8 10:00”は、節ページ情報ＮＰ１の各子ページ情報である葉ページ情報ＬＰ１〜ＬＰ９に含まれる最終有効期限の中で最後に到来する最終有効期限である。
【００５９】
また、根ページ情報ＲＰ１中に示される最初有効期限“2010/4/8 10:00”は、根ページ情報ＲＰ１の各子ページ情報である節ページ情報ＮＰ１〜ＮＰ１０に含まれる最初有効期限の中で最初に到来する最初有効期限である。また、根ページ情報ＲＰ１中に示される最終有効期限“2010/9/1 10:00”は、根ページ情報ＲＰ１の各子ページ情報である節ページ情報ＮＰ１〜ＮＰ１０に含まれる最終有効期限の中で最後に到来する最終有効期限である。
【００６０】
なお、葉ページ情報には、有効期限である公開終了日時を有するレコードが含まれるので、必ずしも最初有効期限及び最終有効期限を含めなくともよい。つまり、検索により葉ページ情報まで辿りつけば、葉ページ情報に含まれる全てのレコードの有効期限を一つ一つ調べればよい。
【００６１】
以上説明したコンテンツカタログ情報を用いることで、管理対象となる全てのレコードを調べなくとも、有効期限が到来しているレコードの有無を効率良く判定することができる。
【００６２】
なお、各ページ情報に、最初有効期限と最終有効期限との双方が格納されるのが最も効果的であるが、この２つが必ずしも同時に必要なわけではない。このため、各ページ情報には最初有効期限と最終有効期限の何れか一方だけが格納される構成であっても有効である。
【００６３】
また、最初有効期限は、必ずしも、最初に到来する有効期限でなくともよく、あるページ情報から下位階層の葉ページ情報の何れかに含まれるレコードの有効期限の中でｎ番目（ｎは２以上の整数）に到来する有効期限であってもよい。ただし、最初有効期限は、最初に到来する有効期限であることが最も効果的である。
【００６４】
［３．コンテンツ管理サーバＭＳの構成及び機能］
次に、図３を参照して、コンテンツ管理サーバＭＳの構成及び機能について説明する。なお、コンテンツ管理サーバＭＳは、本発明の管理装置の一例である。
【００６５】
図３は、コンテンツ管理サーバＭＳの概要構成例を示す図である。
【００６６】
コンテンツ管理サーバＭＳは、図３に示すように、処理部１１、記憶部１２、通信部１３、及び入力部１４を備えて構成される。処理部１１、記憶手段としての記憶部１２、通信部１３、及び入力部１４は、バス１５を介して相互に接続されている。
【００６７】
処理部１１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データ及びプログラムを記憶するＲＯＭ等から構成される。そして、処理部１１は、ＣＰＵが記憶部１２等に記憶されたプログラムを読み出して実行することにより、コンテンツ管理サーバＭＳ全体を統括制御する。また、処理部１１は、レコード検索部１１０、有効期限判定部１１１、第１制御部１１２、第２制御部１１３、ページ情報削除部１１４、レコード追加部１１５、有効期限比較部１１６、有効期限更新部１１７、第３制御部１１８、及び第４制御部１１９を備える。
【００６８】
ここで、レコード検索部１１０は、有効期限切れのレコードを検索する。有効期限判定部１１１は、レコード検索部１１０が有効期限切れのレコードを検索する際、ページ情報に含まれる有効期限が到来したか否かの判定を行う。
【００６９】
第１制御部１１２は、レコード検索部１１０により有効期限切れのレコードが検索される際、木構造として記憶される所定のページ情報に含まれる有効期限を有効期限判定部１１１に判定させる。ここで、所定のページ情報とは、例えば根ページ情報が該当する。
【００７０】
第２制御部１１３は、第１制御部１１２により有効期限判定部１１１が、根ページ情報に含まれる有効期限が到来したと判定しなかった場合、レコード検索部１１０に有効期限切れのレコードの検索を終了させる。
【００７１】
また、第２制御部１１３は、第１制御部１１２により有効期限判定部１１１が、根ページ情報に含まれる有効期限が到来したと判定した場合、根ページ情報の子ページ情報に含まれる有効期限が到来したかを有効期限判定部１１１に判定させる。そして、第２制御部１１３により有効期限判定部１１１が、子ページ情報に含まれる有効期限が到来したと判定した場合、第２制御部１１３は、有効期限判定部１１１が判定したページ情報の子ページ情報に含まれる有効期限を有効期限判定部１１１に判定させる。一方、第２制御部１１３により有効期限判定部１１１が、子ページ情報に含まれる有効期限が到来したと判定しなかった場合、第２制御部１１３は、レコード検索部１１０に、有効期限判定部１１１が判定したページ情報の子の位置から葉の位置までの有効期限切れのレコードの検索を終了させる。
【００７２】
なお、処理部１１における構成部分に実行される、より詳しい処理については後述する。また、図３の例では、処理部１１において特に特徴的な構成部分を示しており、その他の構成部分についての図示を省略している。また、処理部１１における構成部分は、１又は複数のＣＰＵにより本発明の管理処理プログラムが実行されることにより実現される。
【００７３】
なお、レコード検索部１１０は本発明における検索手段の一例である。有効期限判定部１１１は本発明における判定手段の一例である。第１制御部１１２は本発明における第１制御手段の一例である。第２制御部１１３は本発明における第２制御手段の一例である。ページ情報削除部１１４は本発明におけるページ情報削除手段の一例である。レコード追加部１１５は本発明における追加手段の一例である。有効期限比較部１１６は本発明における期限判別手段の一例である。有効期限更新部１１７は本発明における更新手段の一例である。第３制御部１１８は本発明における第３制御手段の一例である。第４制御部１１９は本発明における第４制御手段の一例である。
【００７４】
また、処理部１１は、時計機能を有しており、現在の年月日時を参照可能になっている。
【００７５】
記憶部１２は、各種データ及び各種プログラム等を記憶保存するためのハードディスク等から構成される。そして、記憶部１２には、本発明の管理処理プログラム、コンテンツのファイル、ＤＨＴを用いたルーティングテーブル等が記憶されている。また、記憶部１２には、木構造における根、節、および葉に位置するページ情報を含んで構成されるコンテンツカタログ情報を記憶している。
【００７６】
通信部１３は、ネットワーク８を通じてノードＮｎとの間の情報の通信制御を行う。
【００７７】
入力部１４は、例えば管理者からの指示を受け付けこの指示に応じた指示信号を処理部１１に対して与える。入力部１４は、例えばオペレータが使用するキーボード、マウス、操作パネル、或いは端末等である。
【００７８】
［４．ノードＮｎの構成及び機能］
次に、図４を参照して、ノードＮｎの構成及び機能について説明する。
【００７９】
図４は、ノードＮｎの概要構成例を示す図である。
【００８０】
各ノードＮｎは、図４に示すように、処理部２１、記憶手段としての記憶部２２、バッファメモリ２３、デコーダ部２４、映像処理部２５、表示部２６、音声処理部２７、スピーカ２８、通信部２９、及び入力部３０等を備えて構成される。処理部２１、記憶部２２、バッファメモリ２３、デコーダ部２４、通信部２９、及び入力部３０はバス３１を介して相互に接続されている。
【００８１】
処理部２１は、演算機能を有するＣＰＵ，作業用ＲＡＭ，各種データ及びプログラムを記憶するＲＯＭ等から構成される。そして、処理部２１は、ＣＰＵが記憶部２２等に記憶されたプログラムを読み出して実行することにより、ノードＮｎ全体を統括制御する。また、処理部２１は、時計機能を有しており、現在の年月日時を参照可能になっている。
【００８２】
記憶部２２は、各種データ及び各種プログラム等を記憶保存するためのハードディスク等から構成される。記憶部２２には、本発明のノード処理プログラム、コンテンツのファイル、コンテンツカタログ情報、所在情報、ＤＨＴを用いたルーティングテーブル等が記憶されている。なお、上記ノード処理プログラムは、例えば、ネットワーク８上の所定のサーバからダウンロードされるようにしてもよい。また、例えば、ＣＤ−ＲＯＭ等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【００８３】
バッファメモリ２３は、受信されたコンテンツ等を一時蓄積する。デコーダ部２４は、コンテンツに含まれるエンコードされたビデオデータおよびオーディオデータ等をデコードする。映像処理部２５は、デコードされたビデオデータ等に対して所定の描画処理を施しビデオ信号として出力する。表示部２６は、映像処理部２５から出力されたビデオ信号に基づき映像表示するＣＲＴ，液晶ディスプレイ等である。音声処理部２７は、デコードされたオーディオデータをアナログオーディオ信号にＤ（Digital）／Ａ（Analog）変換した後これをアンプにより増幅して出力する。スピーカ２８は、音声処理部２７から出力されたオーディオ信号を音波として出力する。通信部２９は、ネットワーク８を通じて他のノードＮｎやコンテンツ管理サーバＭＳとの間の情報の通信制御を行う。入力部３０は、ユーザからの指示を受け付け当該指示に応じた指示信号を処理部２１に対して与える。入力部３０は、例えば、キーボード、マウス、或いは、操作パネル等である。
【００８４】
なお、ノードＮｎとしては、パーソナルコンピュータ、ＳＴＢ（Set Top Box）、或いは、ＴＶ受信機等が適用可能である。
【００８５】
以上のノードＮｎの構成において、処理部２１は、ＣＰＵが記憶部２２等に記憶された本発明のノード処理プログラム等のプログラムを読み出して実行することにより、ノードＮｎ全体を統括制御する。また、プログラムが実行されることで、ノードＮｎは、コンテンツ分散保存システムＳへ接続して、上述したユーザノード、ルートノード、及びコンテンツ保持ノード等の少なくとも何れか一つのノードとしての処理を行う。
【００８６】
更に、処理部２１は、レコード検索部２１０、有効期限判定部２１１、第１制御部２１２、第２制御部２１３、及びページ情報削除部２１４を備える。また、図４の例では、処理部２１において特に特徴的な構成部分を示しており、その他の構成部分についての図示を省略している。また、処理部２１における構成部分は、１又は複数のＣＰＵにより本発明のノード処理プログラムが実行されることにより実現される。なお、レコード検索部２１０はコンテンツ管理サーバＭＳにおけるレコード検索部１１０と同様の機能を有する。有効期限判定部２１１はコンテンツ管理サーバＭＳにおける有効期限判定部１１１と同様の機能を有する。第１制御部２１２はコンテンツ管理サーバＭＳにおける第１制御部１１２と同様の機能を有する。第２制御部２１３はコンテンツ管理サーバＭＳにおける第２制御部１１３と同様の機能を有する。ページ情報削除部２１４はコンテンツ管理サーバＭＳにおけるページ情報削除部１１４と同様の機能を有する。
【００８７】
［５．コンテンツ分散保存システムＳの動作］
（第１の実施形態）
次に、コンテンツ分散保存システムＳの動作について説明する。
【００８８】
（レコード追加時の動作）
先ず、図２、図５乃至図７を参照して、レコード追加時の動作について説明する。
【００８９】
図５は、コンテンツ管理サーバＭＳの処理部１１におけるレコード追加時の処理の一例を示すフローチャートである。また、図６は、図５に示すステップＳ３における有効期限更新処理１の詳細を示すフローチャートである。また、図７は、図５に示すステップＳ４における有効期限更新処理２の詳細を示すフローチャートである。
【００９０】
図５に示す処理は、新たなコンテンツの投入があった場合に開始される。ここで、コンテンツの投入とは、例えば、任意に選定したノードＮｎに、新たなコンテンツを送信し、保存させることをいう。なお、新たなコンテンツには、上述した属性情報が付与されている。また、新たなレコードは有効期限を有し、且つ固有のインデックス情報が対応付けられている。
【００９１】
図５に示す処理が開始されると、処理部１１は、新たなレコードを、例えば入力部１４を介して取得する。そして、処理部１１は、新たなレコードに対応付けられたインデックス情報に基づいて、このレコードを追加すべき葉ページ情報を特定する（ステップＳ１）。例えば、新たなレコードに対応付けられたインデックス情報の値が“１１”であるとする。この場合、図２の例では、根ページ情報ＲＰ１に含まれるインデックス情報の値“１００”以下のインデックス情報を持つ節ページ情報ＮＰ１が特定される。続いて、節ページ情報ＮＰ１に含まれるインデックス情報の値“１０”より大きく且つ“２０”以下のインデックス情報を持つ葉ページ情報ＬＰ２が特定される。なお、レコードを追加すべきページ情報は、節ページ情報であってもよい。
【００９２】
次いで、処理部１１は、特定した葉ページ情報にレコードを追加可能であるか否かを判別する（ステップＳ２）。例えば、予め設定された最大レコード数以下の場合、処理部１１は、追加可能であると判別する。そして、処理部１１は、特定した葉ページ情報にレコードを追加可能であると判別した場合（ステップＳ２：ＹＥＳ）、ステップＳ３に進む。一方、処理部１１は、特定した葉ページ情報にレコードを追加可能でないと判別した場合（ステップＳ２：ＮＯ）、ステップＳ４に進む。
【００９３】
ステップＳ３における有効期限更新処理１では、図６に示すように、処理部１１のレコード追加部１１５は、ステップＳ１で特定した葉ページ情報にレコード及びこれに対応付けられたインデックス情報を追加する（ステップＳ３０１）。
【００９４】
次いで、処理部１１の有効期限比較部１１６は、葉ページ情報に追加されたレコードの有効期限が、この葉ページ情報に含まれる最初有効期限より早いか否かを判別する（ステップＳ３０２）。そして、処理部１１の有効期限比較部１１６は、追加されたレコードの有効期限が葉ページ情報に含まれる最初有効期限より早いと判別した場合（ステップＳ３０２：ＹＥＳ）、ステップＳ３０３に進む。一方、処理部１１の有効期限比較部１１６は、追加されたレコードの有効期限が葉ページ情報に含まれる最初有効期限より早くないと判別した場合（ステップＳ３０２：ＮＯ）、ステップＳ３１１に進む。
【００９５】
ステップＳ３０３では、処理部１１の有効期限更新部１１７は、レコードが追加された葉ページ情報に含まれる最初有効期限を、追加されたレコードの有効期限に更新する。
【００９６】
次いで、処理部１１は、最初有効期限が更新された葉ページ情報を子ページ情報としてセットする（ステップＳ３０４）。
【００９７】
次いで、処理部１１は、セットされた子ページ情報の親ページ情報を特定する（ステップＳ３０５）。例えば、子ページ情報が、図２に示す葉ページ情報ＬＰ１であるとすると、その親ページ情報は節ページ情報ＮＰ１となる。
【００９８】
次いで、処理部１１は、セットされた子ページ情報に含まれる最初有効期限が、特定された親ページ情報に含まれる最初有効期限より早いか否かを判別する（ステップＳ３０６）。つまり、処理部１１において、第３制御部１１８は、新たに追加されたレコードの有効期限が、ステップＳ３０２で判別されたページ情報の親ページ情報に含まれる最初有効期限より早いか否かを有効期限比較部１１６に判別させる。
【００９９】
そして、処理部１１の有効期限比較部１１６は、子ページ情報に含まれる最初有効期限が親ページ情報に含まれる最初有効期限より早いと判別した場合（ステップＳ３０６：ＹＥＳ）、ステップＳ３０７に進む。一方、処理部１１の有効期限比較部１１６は、子ページ情報に含まれる最初有効期限が親ページ情報に含まれる最初有効期限より早くないと判別した場合（ステップＳ３０６：ＮＯ）、ステップＳ３１１に進む。
【０１００】
ステップＳ３０７では、処理部１１は、親ページ情報に含まれる最初有効期限を、子ページ情報に含まれる最初有効期限に更新する。つまり、処理部１１において、第４制御部１１９は、有効期限更新部１１７に、親ページ情報に含まれる有効期限を、新たに追加されたレコードの有効期限に更新させる。
【０１０１】
次いで、処理部１１は、最初有効期限が更新された親ページ情報が、根ページ情報であるか否かを判別する（ステップＳ３０８）。そして、処理部１１は、親ページ情報が根ページ情報でないと判別した場合（ステップＳ３０８：ＮＯ）、ステップＳ３０９に進む。一方、処理部１１は、親ページ情報が根ページ情報であると判別した場合（ステップＳ３０８：ＹＥＳ）、ステップＳ３１１に進む。
【０１０２】
ステップＳ３０９では、処理部１１は、最初有効期限が更新された親ページ情報を子ページ情報として新たにセットする。
【０１０３】
次いで、処理部１１は、新たにセットされた子ページ情報の親ページ情報を特定し（ステップＳ３１０）、ステップＳ３０６に戻る。こうして、ステップＳ３０６で最初有効期限より早くないと判別されるか、或いは、ステップＳ３０８で根ページ情報であると判別されるまで、最初有効期限の更新が根ページ情報に向かって繰り返し行われる。これにより、新たなレコードが葉ページ情報に追加されるときに、レコードが追加された葉ページ情報から根ページ情報までのページ情報に含まれる最初有効期限を効率良く更新することができる。
【０１０４】
次に、ステップＳ３１１では、処理部１１の有効期限比較部１１６は、葉ページ情報に追加されたレコードの有効期限が、この葉ページ情報に含まれる最終有効期限より遅いか否かを判別する。そして、処理部１１の有効期限比較部１１６は、追加されたレコードの有効期限が葉ページ情報に含まれる最終有効期限より遅いと判別した場合（ステップＳ３１１：ＹＥＳ）、ステップＳ３１２に進む。一方、処理部１１の有効期限比較部１１６は、追加されたレコードの有効期限が葉ページ情報に含まれる最終有効期限より遅くないと判別した場合（ステップＳ３１１：ＮＯ）、コンテンツカタログ情報の更新を終了し、図５に示すステップＳ５に進む。
【０１０５】
ステップＳ３１２では、処理部１１の有効期限更新部１１７は、レコードが追加された葉ページ情報に含まれる最終有効期限を、追加されたレコードの有効期限に更新する。
【０１０６】
次いで、処理部１１は、最終有効期限が更新された葉ページ情報を子ページ情報としてセットする（ステップＳ３１３）。
【０１０７】
次いで、処理部１１は、セットされた子ページ情報の親ページ情報を特定する（ステップＳ３１４）。
【０１０８】
次いで、処理部１１は、セットされた子ページ情報に含まれる最終有効期限が、特定された親ページ情報に含まれる最終有効期限より遅いか否かを判別する（ステップＳ３１５）。つまり、処理部１１において、第３制御部１１８は、新たに追加されたレコードの有効期限が、ステップＳ３１１で判別されたページ情報の親ページ情報に含まれる最終有効期限より遅いか否かを有効期限比較部１１６に判別させる。そして、処理部１１の有効期限比較部１１６は、子ページ情報に含まれる最終有効期限が親ページ情報に含まれる最終有効期限より遅いと判別した場合（ステップＳ３１５：ＹＥＳ）、ステップＳ３１６に進む。一方、処理部１１の有効期限比較部１１６は、子ページ情報に含まれる最終有効期限が親ページ情報に含まれる最終有効期限より遅くないと判別した場合（ステップＳ３１５：ＮＯ）、コンテンツカタログ情報の更新を終了し、図５に示すステップＳ５に進む。
【０１０９】
ステップＳ３１６では、処理部１１は、親ページ情報に含まれる最終有効期限を、子ページ情報に含まれる最終有効期限に更新する。つまり、処理部１１において、第４制御部１１９は、有効期限更新部１１７に、親ページ情報に含まれる有効期限を、新たに追加されたレコードの有効期限に更新させる。
【０１１０】
次いで、処理部１１は、最終有効期限が更新された親ページ情報が、根ページ情報であるか否かを判別する（ステップＳ３１７）。そして、処理部１１は、親ページ情報が根ページ情報でないと判別した場合（ステップＳ３１７：ＮＯ）、ステップＳ３１８に進む。一方、処理部１１は、親ページ情報が根ページ情報であると判別した場合（ステップＳ３１７：ＹＥＳ）、コンテンツカタログ情報の更新を終了し、図５に示すステップＳ５に進む。
【０１１１】
ステップＳ３１８では、処理部１１は、最終有効期限が更新された親ページ情報を子ページ情報として新たにセットする。
【０１１２】
次いで、処理部１１は、新たにセットされた子ページ情報の親ページ情報を特定し（ステップＳ３１９）、ステップＳ３１５に戻る。こうして、ステップＳ３１５で最終有効期限より遅くないと判別されるか、或いは、ステップＳ３１７で根ページ情報であると判別されるまで、最終有効期限の更新が根ページ情報に向かって繰り返し行われる。これにより、新たなレコードを含む葉ページ情報に追加されるときに、追加された葉ページ情報の親ページ情報から根ページ情報までのページ情報に含まれる最終有効期限を効率良く更新することができる。
【０１１３】
一方、ステップＳ４における有効期限更新処理２では、先ず、処理部１１は、有効期限を有する新たなレコード及びこれに対応付けられたインデックス情報を含む新たな葉ページ情報を生成する。葉ページ情報の生成において、葉ページ情報に固有のページＩＤが付与され、且つ、新たなレコードの有効期限が最初有効期限及び最終有効期限として葉ページ情報中に格納される。そして、処理部１１は、生成した葉ページ情報に含まれるレコードに対応付けられたインデックス情報に基づき、この葉ページ情報が関連付けられるべき節ページ情報を特定する。そして、処理部１１は、特定した節ページ情報中に、生成した葉ページ情報に付与されたページＩＤを格納する。これにより、生成した葉ページ情報を、親ページ情報としての節ページ情報に関連付ける。こうして、処理部１１のレコード追加部１１５は、コンテンツカタログ情報中に、新たなレコードを含む新たな葉ページ情報を追加する（ステップＳ４０１）。
【０１１４】
次いで、処理部１１は、追加された葉ページ情報を子ページ情報としてセットする（ステップＳ４０２）。なお、図７に示すステップＳ４０３からＳ４０８までの処理は、図６に示すステップＳ３０５からＳ３１０までの処理と同様であるので、重複する説明を省略する。
【０１１５】
図７に示すステップＳ４０９では、処理部１１は、追加された葉ページ情報を子ページ情報としてセットする。図７に示すステップＳ４１０からＳ４１５までの処理は、図６に示すステップＳ３１４からＳ３１９までの処理と同様であるので、重複する説明を省略する。
【０１１６】
そして、図５に示すステップＳ５では、処理部１１は、ＤＨＴを用いたルーティングテーブルにノード情報が登録されたノードＮｎに、更新されたコンテンツカタログ情報の全部または更新差分をＤＨＴマルチキャストで配信する。なお、ここでの更新差分とは、新たなレコードの追加により生成又は更新されたページ情報をいう。
【０１１７】
ノードＮｎの制御部２１は、コンテンツ管理サーバＭＳまたは他のノードＮｎから送信されてきた更新されたコンテンツカタログ情報の全部または更新差分を通信部２９を通じて受信すると、これを記憶部２２に記憶する。
【０１１８】
（有効期限切れのレコードの検索時の動作）
次に、図２、図８乃至図９を参照して、有効期限切れのレコードの検索時の動作について説明する。
【０１１９】
図８は、コンテンツ管理サーバＭＳの処理部１１における有効期限切れのレコードの検索処理の一例を示すフローチャートである。また、図９は、有効期限切れのレコードの削除手順のイメージ図である。なお、図９に示す図は、図２に示す図を簡易化した図である。また、図９において、“＊”は、最初有効期限が到来したことを示す有効期限切れマークである。
【０１２０】
図８に示す処理は、例えば、予め設定された削除タイミングで定期的に行われる。
【０１２１】
図８に示す処理が開始されると、処理部１１のレコード検索部１１０は、有効期限切れのレコードの検索を開始する。このレコード検索部１１０が有効期限切れのレコードを検索する際、処理部１１は、現在の年月日時を参照して、根ページ情報に含まれる最初有効期限が到来したか否かを判定する（ステップＳ１１）。つまり、処理部１１において、第１制御部１１２は、レコード検索部１１０により有効期限切れのレコードが検索される際、根ページ情報に含まれる最初有効期限を有効期限判定部１１１に判定させる。そして、処理部１１は、根ページ情報に含まれる最初有効期限が到来したと判定しなかった場合（ステップＳ１１：ＮＯ）、有効期限切れのレコードの検索処理を終了する。つまり、処理部１１において、第２制御部１１３は、第１制御部１１２により有効期限判定部１１１が、根ページ情報に含まれる最初有効期限が到来したと判定しなかった場合、レコード検索部１１０に有効期限切れのレコードの検索を終了させる。一方、処理部１１の有効期限判定部１１１は、根ページ情報に含まれる最初有効期限が到来したと判定した場合（ステップＳ１１：ＹＥＳ）、根ページ情報の子ページ情報を特定する（ステップＳ１２）。例えば、図９（Ａ）の例において、根ページ情報の子ページ情報として、節ページ情報ＮＰ１〜ＮＰ３が特定される。
【０１２２】
次いで、処理部１１は、特定した子ページ情報に含まれる最初有効期限が到来したか否かを判定する。つまり、処理部１１において、第２制御部１１３は、第１制御部１１２により有効期限判定部１１１が、根ページ情報に含まれる最初有効期限が到来したと判定した場合、根ページ情報の子ページ情報に含まれる有効期限が到来したかを有効期限判定部１１１に判定させる。そして、処理部１１は、特定した子ページ情報から、最初有効期限が到来した子ページ情報を抽出する（ステップＳ１３）。例えば、現在の年月日時が“2010/8/9 0:00”であるとする。この場合、図２の例では、根ページ情報ＲＰ１に含まれる最初有効期限は“2010/4/8 10:00”であるので、最初有効期限が到来したと判定される。従って、根ページ情報ＲＰ１の子ページ情報である節ページ情報ＮＰ１〜ＮＰ１０について、夫々、最初有効期限が到来したか否かの判定が行われる。その結果、例えば、最初有効期限が到来したと判定された節ページ情報ＮＰ１及びＮＰ１０が抽出される。また、図９（Ａ）の例で言えば、最初有効期限が到来した子ページ情報として、節ページ情報ＮＰ１及びＮＰ２が抽出される。
【０１２３】
次いで、処理部１１は、抽出された子ページ情報で、ステップＳ１５以降の処理を経ていないものがあるか否かを判別する（ステップＳ１４）。そして、処理部１１は、ステップＳ１５以降の処理を経ていない子ページ情報がないと判別した場合には（ステップＳ１４：ＮＯ）、コンテンツカタログ情報の更新を終了し、ステップＳ２２に進む。一方、処理部１１は、ステップＳ１５以降の処理を経ていない子ページ情報があると判別した場合には（ステップＳ１４：ＹＥＳ）、子ページ情報を一つ選択し、ステップＳ１５に進む。
【０１２４】
ステップＳ１５では、処理部１１は、一つ選択した子ページ情報が節ページ情報であるか、或いは葉ページ情報であるかを判別する。そして、処理部１１は、子ページ情報が節ページ情報であると判別した場合には（ステップＳ１５：節ページ情報）、ステップＳ１６に進む。一方、処理部１１は、子ページ情報が葉ページ情報であると判別した場合には（ステップＳ１５：葉ページ情報）、ステップＳ１９に進む。
【０１２５】
ステップＳ１６では、処理部１１の有効期限判定部１１１は、一つ選択した子ページ情報である節ページ情報に含まれる最終有効期限が到来したか否かを判定する。そして、処理部１１の有効期限判定部１１１は、節ページ情報に含まれる最終有効期限が到来したと判定しなかった場合（ステップＳ１６：ＮＯ）、ステップＳ１７に進む。一方、処理部１１の有効期限判定部１１１は、節ページ情報に含まれる最終有効期限が到来したと判定した場合（ステップＳ１６：ＹＥＳ）、ステップＳ１８に進む。
【０１２６】
ステップＳ１７では、処理部１１は、節ページ情報の子ページ情報を特定する。そして、処理部１１は、ステップＳ１３に戻り、特定した子ページ情報について上記と同様の処理を行う。つまり、処理部１１において、第２制御部１１３は、有効期限判定部１１１が前回のステップＳ１３の処理で最初有効期限が到来したと判定した節ページ情報の子ページ情報に含まれる最初有効期限を有効期限判定部１１１に判定させる。
【０１２７】
なお、第２制御部１１３により有効期限判定部１１１が、ステップＳ１３の処理で、ある子ページ情報に含まれる最初有効期限が到来したと判定しなかった場合、第２制御部１１３は、レコード検索部１１０に、有効期限判定部１１１が判定したページ情報の子の位置から葉の位置までの有効期限切れのレコードの検索を終了させる。
【０１２８】
ステップＳ１８では、処理部１１のページ情報削除部１１４は、一つ選択した節ページ情報から葉ページ情報までの全てのページ情報を削除する。例えば、現在の年月日時が“2010/8/9 0:00”であるとする。この場合、図２の例では、節ページ情報ＮＰ１に含まれる最終有効期限は“2010/8/8 10:00”であるので、最終有効期限が到来したと判定される。従って、節ページ情報ＮＰ１と葉ページ情報ＬＰ１〜ＬＰ９が削除される。
【０１２９】
そして、処理部１１は、有効期限の更新処理を行う（ステップＳ２０）。この更新処理においては、削除された節ページ情報の親の位置から根の位置までの親ページ情報に含まれる最初有効期限及び最終有効期限が更新される。なお、最初有効期限及び最終有効期限の更新は、図７のステップＳ４０４〜Ｓ４０８のループ処理、またはＳ４１１〜Ｓ４１５のループ処理に示すように、下位階層のページ情報から上位階層のページ情報に向かって進む。図２の例では、根ページ情報ＲＰ１に含まれる最初有効期限が、削除した節ページ情報ＮＰ１を除く節ページ情報ＮＰ２〜ＮＰ１０に含まれる最初有効期限の中で最初に到来する最初有効期限に更新される。また、根ページ情報ＲＰ１に含まれる最終有効期限が、上記削除した節ページ情報ＮＰ１を除く節ページ情報ＮＰ２〜ＮＰ１０に含まれる最終有効期限の中で最後に到来する最終有効期限に更新される。
【０１３０】
ステップＳ１９では、処理部１１は、一つ選択した子ページ情報である葉ページ情報に含まれるレコードのうち、有効期限が到来したレコード及びこれに対応付けられたインデックス情報を削除する。例えば、現在の年月日時が“2010/5/9 0:00”であり、葉ページ情報ＬＰ１に含まれるレコードＲ１の有効期限が“2010/5/8 10:00”であるとする。この場合、図２の例では、レコードＲ１及びＲ２のうち、有効期限が到来したレコードＲ１及びこれに対応付けられたインデックス情報が削除される。このように削除されるレコードは、探索木の深さ優先探索によって順に発見される。なお、一つ選択した子ページ情報である葉ページ情報に含まれる全てのレコードが有効期限切れである場合、この葉ページ情報が削除される。例えば、現在の年月日時が“2010/5/9 0:00”であるとする。この場合、図２の例では、葉ページ情報ＬＰ１に含まれる最終有効期限は“2010/7/8 10:00”であり未だ到来していないので、葉ページ情報ＬＰ１は削除されない。一方、葉ページ情報ＬＰ２に含まれる最終有効期限は“2010/4/8 10:00”であり到来したので葉ページ情報ＬＰ２は削除される。
【０１３１】
そして、処理部１１は、有効期限の更新処理を行う（ステップＳ２０）。この更新処理においては、削除されたレコードが含まれていた葉ページ情報または削除された葉ページ情報の親の位置から根の位置までの親ページ情報に含まれる最初有効期限及び最終有効期限が更新される。例えば、図９（Ｂ）の例においては、葉ページ情報ＬＰ２及びＬＰ３が削除されることより、節ページ情報ＮＰ１及び根ページ情報ＲＰ１の最初有効期限及び最終有効期限が更新される。ただし、図９（Ｂ）の例において、この時点では、未だ葉ページ情報ＬＰ５は削除されていないため、根ページ情報ＲＰ１の有効期限切れマークが未だ示されている。
【０１３２】
次いで、処理部１１は、規定数以上のレコードを削除したか否かを判別する（ステップＳ２１）。そして、処理部１１は、規定数以上のレコードを削除した場合には（ステップＳ２１：ＹＥＳ）、コンテンツカタログ情報の更新を終了し、ステップＳ２２に進む。このように、削除するレコード数を規定し、規定数以上削除しないようにすることで、大量のレコードの削除による処理部１１の負荷が大きくならないようにすることができる。上記処理で削除し残したレコードは、次回以降の削除タイミングで削除される。有効期限切れレコードが放置されるとコンテンツカタログ情報のデータ量の肥大化を招くため、このようなレコードの削除処理が行われるが、有効期限切れのコンテンツはプログラム上でアクセスできないように処理されるため、一度にコンテンツカタログ情報の全てを更新しなくても問題ない。
【０１３３】
一方、規定数以上のレコードを削除していない場合には（ステップＳ２１：ＮＯ）、ステップＳ１４に戻る。そして、処理部１１は、ステップＳ１３で抽出された子ページ情報で、ステップＳ１５以降の処理を経ていないものがあれば、処理部１１は、その子ページ情報についてステップＳ１５以降の処理を行う。図９（Ｃ）の例では、規定数以上のレコードが削除されていないので、節ページ情報ＮＰ２側の分岐における葉ページ情報ＬＰ５についても削除されている。これにより、図９（Ｃ）の例において、根ページ情報ＲＰ１の有効期限切れマークが消えている。
【０１３４】
そして、ステップＳ２２では、処理部１１は、ＤＨＴを用いたルーティングテーブルにノード情報が登録されたノードＮｎに、更新されたコンテンツカタログ情報の全部または更新差分をＤＨＴマルチキャストで配信する。なお、ここでの更新差分とは、レコードの削除または葉ページ情報の削除により更新されたページ情報をいう。
【０１３５】
ノードＮｎの制御部２１は、コンテンツ管理サーバＭＳまたは他のノードＮｎから送信されてきた更新されたコンテンツカタログ情報の全部または更新差分を通信部２９を通じて受信すると、これを記憶部２２に記憶する。
【０１３６】
なお、図８に示す有効期限切れのレコードの検索処理は、各ノードＮｎにおいても実行するように構成してもよい。
【０１３７】
以上説明したように、上記実施形態によれば、コンテンツカタログ情報に含まれる全てのレコードを調べなくとも、有効期限が到来しているレコードの有無を効率良く判定することができる。また、有効期限が到来しているレコードを迅速に検索することができる。つまり、木構造の上位階層のページ情報に、このページ情報の下位階層に存在するレコードの有効期限が集約されるため、木構造のあるページ情報から葉ページ情報までの間で有効期限が到来しているレコードの有無を判定でき、有効期限が到来していないのであればその分岐先以降のページ情報は調べる必要が無い。
【０１３８】
また、木構造におけるある節ページ情報に含まれる最終有効期限が到来したと判定された場合、このページ情報から葉ページ情報までの全てのページ情報を一括して削除することができる。よって、有効期限切れレコードの検索時において無駄な検索を無くすことができる。
【０１３９】
（第２の実施形態）
なお、本実施形態におけるコンテンツカタログ情報は、ノードＮｎにおいて実行される通常のレコード検索時にも有効である。以下、図１０を参照して、ノードＮｎにおいて実行されるレコードの検索時の動作について説明する。
【０１４０】
図１０は、ノードＮｎの処理部２１におけるレコードの検索処理の一例を示すフローチャートである。
【０１４１】
図１０の処理は、例えば、ユーザから入力部３０を介して検索指示があった場合に開始される。なお、このとき、例えばユーザから入力部３０を介して入力されたキーワード等の検索条件が設定される。或いは、検索条件は、予めプラグラムで設定されている。検索条件の一例としては、コンテンツ名、コンテンツＩＤ、公開開始日時、公開終了日時等が挙げられる。
【０１４２】
検索指示によりレコードの検索が開始されると、処理部２１は、現在の年月日時を参照して、根ページ情報に含まれる最終有効期限が到来したか否かを判定する（ステップＳ３１）。そして、処理部２１は、根ページ情報に含まれる最終有効期限が到来したと判定した場合（ステップＳ３１：ＹＥＳ）、検索条件に該当するレコードが無いことを示す情報を表示部２６またはスピーカ２８から出力する（ステップＳ３２）。これにより、検索条件に合致するレコードが無いことを示す情報がユーザに迅速に通知される。また、レコードの検索は終了する。つまり、根ページ情報に含まれる最終有効期限が到来していれば、その下位階層にある全てのレコードは有効期限切れであるので、これ以降のレコード検索を行う必要がない。
【０１４３】
一方、処理部２１は、根ページ情報に含まれる最終有効期限が到来したと判定しなかった場合（ステップＳ３１：ＮＯ）、根ページ情報の子ページ情報を全て抽出する（ステップＳ３３）。こうして抽出された子ページ情報は抽出リストに登録される。
【０１４４】
次いで、処理部２１は、抽出リストに登録された子ページ情報の中から未だ特定されていないページ情報を一つ特定する（ステップＳ３４）。
【０１４５】
次いで、処理部２１は、抽出リストから特定した子ページ情報が節ページ情報であるか、或いは葉ページ情報であるかを判別する（ステップＳ３５）。そして、処理部２１は、子ページ情報が節ページ情報であると判別した場合には（ステップＳ３５：節ページ情報）、ステップＳ３６に進む。一方、処理部２１は、子ページ情報が葉ページ情報であると判別した場合には（ステップＳ３５：葉ページ情報）、ステップＳ３７に進む。
【０１４６】
ステップＳ３６では、処理部２１は、抽出リストから特定した節ページ情報に含まれる最終有効期限が到来したか否かを判定する。そして、処理部２１は、節ページ情報に含まれる最終有効期限が到来したと判定しなかった場合（ステップＳ３６：ＮＯ）、ステップＳ３３に戻る。このステップＳ３３では、処理部２１は、抽出リストから特定した節ページ情報の子ページ情報を全て抽出する。こうして抽出された子ページ情報は抽出リストに追加登録される。
【０１４７】
一方、処理部２１は、節ページ情報に含まれる最終有効期限が到来したと判定した場合（ステップＳ３６：ＹＥＳ）、ステップＳ３９に進む。
【０１４８】
ステップＳ３７では、処理部２１は、抽出リストから特定された葉ページ情報中のレコードに対して、上記設定された検索条件に合致するレコードがあるか否かを判定する。そして、処理部２１は、検索条件に合致するレコードがあると判定した場合（ステップＳ３７：ＹＥＳ）、そのレコードを検索結果リストに追加し（ステップＳ３８）、ステップＳ３９に進む。一方、処理部２１は、検索条件に合致するレコードがないと判定した場合（ステップＳ３７：ＮＯ）、そのままステップＳ３９に進む。
【０１４９】
ステップＳ３９では、処理部２１は、抽出リストに登録されているページ情報のうち、ステップＳ３５以降の処理を経ていないページ情報があるか否かを判別する。そして、処理部２１は、処理を経ていないページ情報があると判別した場合（ステップＳ３９：ＹＥＳ）、ステップＳ３４に戻る。そして、処理部２１は、抽出リストから未だ特定されていないページ情報を一つ特定し、上記と同様、ステップＳ３５以降の処理を行う。
【０１５０】
一方、処理部２１は、処理を経ていないページ情報がないと判別した場合（ステップＳ３９：ＮＯ）、検索結果リストに追加したレコードを表示部２６またはスピーカ２８から出力する（ステップＳ４０）。これにより、検索条件に合致するレコードがユーザに迅速に通知される。
【０１５１】
以上説明したように、第２の実施形態によれば、根ページ情報及び節ページ情報に含まれる最終有効期限から、これらのページ情報の分岐先の下位階層に存在するレコードの全てが有効期限切れであるかどうかを調べることができるので、その分岐先のレコードの検索を行うことを削減することができる。よって、レコードの検索時において無駄な検索を無くすことができる。  
【０１５２】
なお、図１０に示すレコードの検索処理は、コンテンツ管理サーバＭＳにおいても実行するように構成してもよい。
【０１５３】
また、上記実施形態におけるコンテンツ分散保存システムＳは、ＤＨＴを利用したアルゴリズムによって形成されることを前提として説明したが、本発明はこれに限定されるものではない。
【０１５４】
また、本発明は、コンテンツカタログ情報の検索に限定されるものではない。汎用的なデータベースのレコードとインデックスとしても適用可能である。
【０１５５】
本発明の根ページ情報として、第１の実施形態及び第２の実施形態では、木構造の根に位置するページ情報が用いられている。本発明の根ページ情報は、木構造の根に位置するページ情報に限定されるものではない。本実施形態において、木構造として記憶される節ページ情報または葉ページ情報のいずれかが、所定のページ情報として決定され、サブツリーの頂点と設定されても良い。サブツリーの頂点となるページ情報の設定は、ユーザにより任意に選択されても良いし、プログラムにより所定の条件に基づいて自動で設定されてもよい。この場合、サブツリーの頂点に位置するページ情報が、本発明の根ページ情報と設定される。本発明の根ページ情報として設定されたサブツリーの頂点に位置するページ情報に対して、上述した有効期限の検索処理が実行されても良い。
【符号の説明】
【０１５６】
８  ネットワーク
９  オーバーレイネットワーク
１１  処理部
１２  記憶部
１３  通信部
１４  入力部
１５  バス
２１  処理部
２２  記憶部
２３  バッファメモリ
２４  デコーダ部
２５  映像処理部
２６  表示部
２７  音声処理部
２８  スピーカ
２９  通信部
３０  入力部
３１  バス
ＭＳ  コンテンツ管理サーバ
Ｎｎ  ノード
Ｓ  コンテンツ分散保存システム
【図１】
2010267028.tif 000003
【図２】
2010267028.tif 000004
【図３】
2010267028.tif 000005
【図４】
2010267028.tif 000006
【図５】
2010267028.tif 000007
【図６】
2010267028.tif 000008
【図７】
2010267028.tif 000009
【図８】
2010267028.tif 000010
【図９】
2010267028.tif 000011
【図１０】
2010267028.tif 000012