JP3920238B2 - データ管理システム及びデータ管理方法 - Google Patents
データ管理システム及びデータ管理方法 Download PDFInfo
- Publication number
- JP3920238B2 JP3920238B2 JP2003102157A JP2003102157A JP3920238B2 JP 3920238 B2 JP3920238 B2 JP 3920238B2 JP 2003102157 A JP2003102157 A JP 2003102157A JP 2003102157 A JP2003102157 A JP 2003102157A JP 3920238 B2 JP3920238 B2 JP 3920238B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- storage
- identifier
- user
- content
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【発明の属する技術分野】
本発明は、利用者から通信により指定されたデータを蓄積し利用者毎に管理する技術に関する。
【0002】
【従来の技術】
サーバ装置の記憶領域を利用者に割り当てて利用させるサービスが行われている。この種のサービスの利用者がクライアント装置を操作し、蓄積させたいデータをサーバ装置へ送信すると、サーバ装置はその利用者に割り当てられた記憶領域に受信したデータを書き込む。こうしてサーバ装置に蓄積されたデータは記憶領域毎に分離して管理される。例えば、サーバ装置は、ある利用者に割り当てられた記憶領域に書き込まれたデータが他の利用者に参照されることがないよう、クライアント装置から記憶領域へのアクセスを制限する。このような管理を行うことにより、利用者の秘密が他の利用者に漏れないことが担保されている。
【0003】
しかし、上述のサービスでは、蓄積および管理が記憶領域毎に独立して行われるから、多数の記憶領域に同一のデータが書き込まれるような事態を避けることはできない。記憶領域は有限だから、この事態はサービス提供事業者にとって望ましくない。
【0004】
一方、データの同報配信の分野では、サーバ装置の複数の記憶領域に同一のデータが書き込まれることを避けるための技術が提案されている(例えば、特許文献1)。特許文献1に記載の文書蓄積サーバは、複数の宛先コードが付加された文書を受け取ると、この文書を共有記憶領域に書き込む一方、宛先コードに対応する利用者に割り当てられた記憶領域に、上記共有記憶領域内の当該文書へのアクセスに必要なリンク情報を書き込む。利用者は、自身に割り当てられた記憶領域内のリンク情報を用いることにより、共有記憶領域内の文書にアクセスすることができる。即ち、この文書蓄積サーバにおいては1つしか記憶していない文書を複数の利用者によって共有することができる。
【0005】
【特許文献1】
特開2002−334088号公報
【0006】
【発明が解決しようとする課題】
特許文献1では、文書を共有する利用者を、その文書に付加された宛先コードによって指定していた。このように共有者となり得る利用者の指定があるからこそ、文書蓄積サーバは1つの文書のみを記憶し、その文書に対するリンク情報を設定することが可能となっていた。
【0007】
しかしながら、このような宛先コードの類による共有者の指定は、ある利用者から別の利用者へ文書を送信するような技術分野では容易に実現できることであるが、そのほかの技術分野でこれを実現するのは容易ではない。例えば、冒頭に説明したサービスにおいては、各々の利用者は自身が所望するデータを全く自由にサーバ装置に送信して記憶させるから、そのときにデータの共有者となり得る者を指定することはない。利用者の立場から視れば、自らが利用するデータを他人と共有しようという発想が生まれてくるはずがないからである。
【0008】
本発明は上述した課題に鑑みてなされ、その目的は、利用者(契約者)から通信により指定されたデータを蓄積し利用者毎に管理するサービスに用いられる技術であって、そのデータを共有する者を示す情報が付加されていないデータを蓄積する場合にも記憶領域の利用効率を向上させることができる技術を提供することにある。
【0009】
【課題を解決するための手段】
上記課題を解決するため、本発明は、受信したデータを蓄積する複数の蓄積装置と、登録が要求されたデータを前記蓄積装置に蓄積させる制御装置とを有し、前記制御装置は、データに固有のデータ識別子と、当該データの蓄積位置を示す蓄積位置情報とを記憶する記憶手段と、ユーザに固有のユーザ識別子及び前記データ識別子を含む登録要求を受信すると、該登録要求に含まれているデータ識別子によって特定されるデータが前記蓄積装置に蓄積されているか否かを判定する判定手段と、前記判定手段により蓄積されていると判定された場合に、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む第1の制御手段と、前記判定手段により蓄積されていないと判定された場合に、該データ識別子によって特定されるデータを取得し前記蓄積装置へ送信する処理と、前記蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行う第2の制御手段と、前記判定手段により蓄積されていると判定されたデータのデータ識別子に対応付けられて前記第1の制御手段により前記記憶手段に書き込まれた前記ユーザ識別子の数を検出するユーザ識別子数検出手段と、前記判定手段により蓄積されていると判定されたデータを蓄積している前記蓄積装置の数を検出する装置数検出手段とを有し、前記第1の制御手段は、前記判定されたデータについて前記ユーザ識別子数検出手段により検出されたユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、受信された前記登録要求に含まれているデータ識別子を該登録要求に含まれているユーザ識別子に対応付けて前記記憶手段に書き込み、前記判定されたデータについて前記ユーザ識別子数検出手段により検出されたユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、前記閾値を超えている場合には、該データ識別子により識別されるデータを該データ識別子に対応付けられた蓄積位置情報により特定される前記蓄積装置とは異なる蓄積装置へ送信する処理と、該異なる蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行うことを特徴とするデータ管理システムを提供する。
前記制御装置は、前記ユーザ識別子及び前記データ識別子を含む削除要求を受信すると、該ユーザ識別子に対応付けて前記記憶手段に書き込まれたデータ識別子のうち、該削除要求に含まれているデータ識別子を前記記憶手段から削除する削除手段と、複数の蓄積位置情報に対応付けられて前記記憶手段に記憶されているデータ識別子が前記削除手段により前記記憶手段から削除されて、該データ識別子に対応付けられているユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、該データ識別子により識別されるデータを該複数の蓄積位置情報のうちの少なくとも1つにより特定される蓄積装置から削除する一方、該蓄積装置におけるデータの蓄積位置を示す蓄積位置情報を前記記憶手段から削除する調整手段とを有するようにしてもよい。
また、本発明は、制御装置が、ユーザに固有のユーザ識別子及びデータに固有のデータ識別子を含む登録要求を受信すると、該登録要求に含まれているデータ識別子によって特定されるデータが蓄積装置に蓄積されているか否かを判定する判定ステップと、前記判定ステップにおいて蓄積されていると判定された場合に、前記制御装置が、該データ識別子を、受信した前記ユーザ識別子に対応付けて記憶手段に書き込むとともに、蓄積されていると判定されたデータのデータ識別子に対応付けられているユーザ識別子の数と、蓄積されていると判定されたデータを蓄積している蓄積装置の数とを検出する第1の制御ステップと、前記判定ステップにおいて蓄積されていないと判定された場合には、前記制御装置が、該データ識別子によって特定されるデータを取得し前記蓄積装置へ送信し、前記蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込み、該データ識別子を、受信した前記ユーザ識別子に対応付けて前記 記憶手段に書き込む第2の制御ステップとを備え、前記第1の制御ステップにおいて、前記制御装置は、さらに、前記判定されたデータについて検出されたユーザ識別子の数を検出された蓄積装置の数で除した数が、閾値を超えていない場合には、受信された前記登録要求に含まれているデータ識別子を該登録要求に含まれているユーザ識別子に対応付けて前記記憶手段に書き込み、前記判定されたデータについて検出されたユーザ識別子の数を検出された蓄積装置の数で除した数が、前記閾値を超えている場合には、該データ識別子により識別されるデータを該データ識別子に対応付けられた蓄積位置情報により特定される前記蓄積装置とは異なる蓄積装置へ送信する処理と、該異なる蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行うことを特徴とするデータ管理方法を提供する。
この方法において、前記ユーザ識別子及び前記データ識別子を含む削除要求を受信すると、該ユーザ識別子に対応付けて書き込まれたデータ識別子のうち、該削除要求に含まれているデータ識別子を前記記憶手段から削除するステップと、複数の蓄積位置情報に対応付けられて前記記憶手段に記憶されているデータ識別子が前記削除手段により前記記憶手段から削除されて、該データ識別子に対応付けられているユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、該データ識別子により識別されるデータを該複数の蓄積位置情報のうちの少なくとも1つにより特定される蓄積装置から削除する一方、該蓄積装置におけるデータの蓄積位置を示す蓄積位置情報を前記記憶手段から削除するステップとを有するようにしてもよい。
【0017】
【発明の実施の形態】
以下、図面を用いて、本発明の実施の形態についてを詳細に説明する。
(1)構成
まず、図1を用いてシステム全体の構成について説明する。
図1に示すように、このシステムは、蓄積管理システム100と、蓄積管理システム100にインターネット等のネットワーク110を介して接続された複数の端末装置121〜124と、蓄積管理システム100に接続された複数のコンテンツサーバ装置131〜133とを備えている。図1においては、説明の便宜のため、端末装置及びコンテンツサーバ装置を数台ずつしか示していないが、これらはもっと多く存在していてもよい。
【0018】
ネットワーク110と端末装置121〜124との接続形態は、有線接続であってもよいし、無線接続であってもよいし、これらが混在していてもよい。有線接続の形態を採る場合には、端末装置121〜124はパーソナルコンピュータ等の固定端末装置であるし、無線接続の形態を採る場合には、端末装置121〜124はデータ通信が可能な携帯電話機等の移動端末装置である。
【0019】
コンテンツサーバ装置131〜133は、端末装置121〜124によって利用することが可能な各種コンテンツを示すコンテンツデータを記憶している。端末装置121〜124のいずれか(例えば端末装置121)がネットワーク110及び蓄積管理システム100を介してコンテンツサーバ装置131〜133のいずれか(例えばコンテンツサーバ装置131)にアクセスすると、このコンテンツサーバ装置131によって提供可能なコンテンツのリストを示すデータが端末装置121に送信され、そのリストが端末装置121によって表示されるようになっている。
【0020】
蓄積管理システム100は、サービスの利用契約を締結している契約ユーザに対してコンテンツ蓄積管理サービスを提供する。このコンテンツ蓄積管理サービスとは、上記リストの中から契約ユーザによって選択されたコンテンツデータをその契約ユーザの端末装置121に代わって記憶しておき、記憶しているコンテンツデータを必要に応じて端末装置121に送信する、といったことを主なサービス内容としている。以下では、蓄積管理システム100が端末装置121〜124の要求に基づいてコンテンツデータを記憶することを「コンテンツの登録」と呼び、蓄積管理システム100が記憶しているコンテンツデータを端末装置121〜124からの要求に基づいてその端末装置に送信することを「コンテンツの利用」と呼び、蓄積管理システム100が既に記憶しているコンテンツデータを端末装置121〜124の要求に基づいて削除することを「コンテンツの削除」と呼ぶことにする。
【0021】
蓄積管理システム100がコンテンツ蓄積管理サービスを提供するにあたっては、記憶すべき複数のコンテンツデータの総容量をできる限り少なくするための工夫や、コンテンツデータに対する利用要求が集中することによる不都合をできる限り解消するための工夫がなされている。次に、この蓄積管理システム100の構成について詳細に説明する。
【0022】
この蓄積管理システム100は、制御サーバ装置101と、回線制御装置102と、複数の蓄積装置104〜107とを備えている。
蓄積装置104〜107は、磁気記憶媒体や光記憶媒体等の大容量記憶媒体を有したデータベース装置である。具体的には、蓄積装置104〜107は、制御サーバ装置101からの指示に従って上記記憶媒体にコンテンツデータを書き込んだり、制御サーバ装置101からの指示に従ってこれらの記憶媒体に記憶されているコンテンツデータを検索する機能を備えている。
【0023】
回線制御装置102は、制御サーバ装置101及び複数の蓄積装置104〜107の各々に接続されているとともに、ネットワーク110やコンテンツサーバ装置131〜133にも接続されており、これらの各装置間で回線の接続制御を行う。また、端末装置121〜124から送信されてくるコンテンツの利用要求はこの回線制御装置102を介して処理されるようになっているが、このとき、回線制御装置は102は、どの蓄積装置104〜107が記憶しているどのコンテンツデータに対してどのくらいの数の利用要求がなされているかという、利用要求の状況を監視する機能を備えている。
【0024】
制御サーバ装置101は、図2に示すように、CPU(Central Processing Unit)101a、ROM(Read Only Memory)101bと、RAM(Random Access Memory)101c、ハードディスク101d、通信インタフェース101e等の一般的なサーバ装置と同等のハードウェアを備えている。ハードディスク101dには、このコンテンツ蓄積管理サービスを提供するためのコンピュータプログラムのほか、各々の契約ユーザにおけるコンテンツの登録状況を示すユーザ登録テーブルUTや、各々のコンテンツデータの登録状況を示すコンテンツ登録テーブルCTが記憶されている。
【0025】
図3は、ユーザ登録テーブルUTに記述されている内容の一例を示す図である。
図3に示すように、このユーザ登録テーブルUTには、各々の契約ユーザに割り当てられたユーザ識別子と、各々の契約ユーザによって登録されているコンテンツデータに割り当てられたコンテンツ識別子とが対応付けられて記述されている。図3に示す例では、ユーザ識別子「UID001」の契約ユーザはコンテンツ識別子「CID001」のコンテンツデータを蓄積管理システム100に登録していることを意味している。また、図3を見てわかるように、例えばコンテンツ識別子「CID001」が示すコンテンツデータは、ユーザ識別子「UID001」の契約ユーザのほかにも、ユーザ識別子「UID003」及び「UID004」が割り当てられた2人の契約ユーザによって登録されていることが示されている。
【0026】
次に、図4はコンテンツ登録テーブルCTに記述されている内容の一例を示す図である。図4に示すように、このコンテンツ登録テーブルCTには、コンテンツ識別子と、そのコンテンツ識別子が示すコンテンツデータを登録している契約ユーザの人数と、そのコンテンツ識別子が示すコンテンツデータを蓄積している蓄積装置104〜107に割り当てられた装置識別子とが対応付けられて記述されている。図4に示す例ではコンテンツ識別子「CID001」のコンテンツデータは、3人の契約ユーザによって登録されており、かつ、装置識別子「DSID01」によって示される蓄積装置(本実施形態では蓄積装置104とする)に記憶されていることが示されている。
【0027】
上記例示内容のように、コンテンツデータが単一の蓄積装置に記憶されている場合もあれば、次のように、同一のコンテンツデータが複数の蓄積装置によってそれぞれ記憶されている場合もある。例えば図4に示すコンテンツ識別子「CID003」が示すコンテンツデータは、18人の契約ユーザによってコンテンツの登録がなされており、かつ、装置識別子「DSID01、DSID03、DSID04」によって示される3つの蓄積装置(ここでは蓄積装置104、106及び107とする)によって記憶されていることが示されている。これは、蓄積装置104、106及び107によってそれぞれ記憶されている同一のコンテンツデータが18人の契約ユーザによって共有されていることを意味している。つまり、このコンテンツ登録テーブルCTにおいては、コンテンツデータの蓄積位置を示す装置識別子によってそのコンテンツデータへのリンクが形成された状態になっており、これによってコンテンツ識別子とユーザ識別子と装置識別子とが関連づけられているから、同一のコンテンツデータを複数の契約ユーザで共有することができるようになっている。
【0028】
このように18人の契約ユーザが共有するコンテンツデータを複数の蓄積装置104、105,107に分散して記憶している理由は次の通りである。仮に契約ユーザ数が比較的多いコンテンツデータを単一の蓄積装置にのみ記憶していると、そのコンテンツデータに対する利用要求が多数集中した場合には、蓄積装置が有する回線数は有限であることから、その利用要求に対する処理に多大な時間を費やしてしまういった事態が発生する。そこで、本実施形態では、1つのコンテンツデータに対する契約ユーザ数が6人を超えるたびにそのコンテンツデータのコピーを作成して別の蓄積装置に記憶させるという処理を行う。図3に示す例では、コンテンツ識別子「CID003」によって示されるコンテンツデータは、6(人)×2<18(人)≦6人×3であるから、コピーが2回作成されることにより3つの蓄積装置に記憶されているのである。
以上が本実施形態の構成である。
【0029】
(2)動作
次に、上記構成からなる実施形態の動作について説明する。
以下では、まず、ユーザが選択したコンテンツを蓄積管理システム100に登録する際の動作を説明し、次いで、登録したコンテンツを利用する際の動作の後に、登録したコンテンツを削除する際の動作を説明し、最後に、コンテンツデータがシステム障害等の原因によって予期せず消失した場合にそれを復元する際の動作について説明する。
【0030】
(2−1)コンテンツの登録
図5は、制御サーバ装置101のCPU101aが行う動作フローを示した図である。この図5を用いて、端末装置121のユーザ(ユーザ識別子「UID001」)がコンテンツ識別子「CID003」によって示されるコンテンツデータを登録する場合を例に挙げて説明する。
まず、契約ユーザは、端末装置121を用いて例えばコンテンツサーバ131から提示されたコンテンツのリストの中から所望のコンテンツを選択し、蓄積管理システム100に登録する旨の操作を行う。端末装置121は、この操作を受け付け、選択されたコンテンツのコンテンツ識別子「CID003」と、自装置に予め記憶されている(或いは契約ユーザによってその都度入力される、以下の動作説明において同様)ユーザ識別子「UID001」とを含む登録要求を蓄積管理システム100に送信する。
【0031】
この登録要求は、ネットワーク110を介して回線制御装置102によって受信され、さらに、この回線制御装置102を経由して制御サーバ装置101に伝送されてくる。制御サーバ装置101のCPU101aは、ハードディスク101dに記憶されているコンピュータプログラム常時実行しており(以下の動作説明において同様)、上記登録要求を受信すると、図5に示すフローを開始する。まず、CPU101aは、受信した登録要求に含まれているコンテンツ識別子「CID003」によって示されるコンテンツデータが蓄積管理システム100に既に登録されているか否かを判断する(ステップS11)。具体的には、CPU101aは、上記コンテンツ識別子「CID003」がハードディスク101d内のコンテンツ登録テーブルCTに記述されているか否かによって上記判断を行う。
【0032】
仮にコンテンツがまだ登録されていなければ(ステップS11;No)、CPU101aは回線制御装置102を介してコンテンツサーバ131からコンテンツデータを取得する(ステップS12)という処理を経る必要がある。ただし、ここでは、コンテンツ識別子「CID003」は図4に示すように既にコンテンツ登録テーブルCTに記述されているので(ステップS11;Yes)、CPU101aはステップS13の処理を経なくてよい。
【0033】
次に、CPU101aは、ユーザ登録テーブルUT及びコンテンツ登録テーブルCTに記述されている内容を更新する(ステップS13)。即ち、CPU101aは、ユーザ登録テーブルUTにおいてユーザID「UID001」に対応付けてコンテンツ識別子「CID003」を記述する。これによってユーザ登録テーブルUTは図3に示す内容から図6に示す内容に更新される。さらに、CPU101は、コンテンツ登録テーブルCTにおいてコンテンツ識別子「CID003」に対応する契約ユーザ数を1人増やして18人から19人に更新する。
【0034】
次いで、CPU101aは、蓄積装置1台あたりのコンテンツデータの契約ユーザ数が予め定められた閾値(6人)を越えているか否かを判断する(ステップS14)。19人という契約ユーザ数の場合には、19(人)÷3(台)=6.33・・・>6であり閾値を超えていると判断される(ステップS14;Yes)。次いで、CPU101aは、コンテンツデータを現在蓄積している蓄積装置104、106及び107のいずれかから取得し、取得したコンテンツデータを蓄積装置104、106及び107以外の蓄積装置(ここでは装置識別子「DSID02」が示す蓄積装置105)にこのコンテンツデータを送信する(ステップS15)。蓄積装置はこのコンテンツデータを受信し記憶する。
【0035】
次いで、CPU101aは、コンテンツ登録テーブルCTの更新を行う(ステップS16)。即ち、CPU101aは、コンテンツ識別子「CID003」に対応する装置識別子「DSID01,DSID03,DSID04」に加えて「DSID02」をコンテンツ登録テーブルCTに記述する。これによって、コンテンツ登録テーブルCTは図4に示す内容から図7に示す内容に更新される。
なお、蓄積装置1台あたりの契約ユーザ数が予め定められた閾値を越えていなければ(ステップS14;No)、CPU101aの処理は上記のステップS15及びS16をスキップして処理を終了する。
以上の処理を経てコンテンツの登録が終了する。
【0036】
(2−2)コンテンツの利用
次に、蓄積管理システム100に既に登録されているコンテンツを利用する場合の動作について説明する。
図8は、制御サーバ装置101のCPU101aが行う動作フローを示した図である。この図8を用いて、端末装置121の契約ユーザが蓄積管理システム100に登録しているコンテンツ識別子「CID003」が示すコンテンツデータを利用する場合を例に挙げて説明する。
【0037】
まず、契約ユーザは、端末装置121を用いて蓄積管理システム100にアクセスさせた後、自身が既に登録してあるコンテンツの中から所望のコンテンツを利用するための操作を行う。端末装置121はこの操作に従ってコンテンツデータのコンテンツ識別子「CID003」及び自装置に記憶されているユーザ識別子「UID001」を含む利用要求を蓄積管理システム100に送信する。
【0038】
制御サーバ装置101のCPU101aが回線制御装置102を介して上記利用要求を受信すると、図8に示すフローを開始する。CPU101aは、まず、コンテンツ登録テーブルCTを参照して、この利用要求に含まれているコンテンツ識別子「CID003」が示すコンテンツデータを記憶している蓄積装置の装置識別子を取得する(ステップS21)。図7を用いて既に説明しているように、コンテンツ登録テーブルCTにおいては、コンテンツ識別子「CID003」に対応して装置識別子「DSID01,DSID02,DSID03,DSID04」が記述されている状態であるから、CPU101aはこれら装置識別子を全て取得する。
【0039】
次いで、CPU101aは、取得した装置識別子が単数か否かを判断する(ステップS22)。ここでは複数であるので(ステップS22;No)、次いで、CPU101aは、コンテンツ識別子「CID003」と、装置識別子「DSID01,DSID02,DSID03,DSID04」とを回線制御装置102に通知し、利用要求の状況を通知するように指示する。回線制御装置102は、前述したようにコンテンツに対する利用要求の状況を常時監視しているから、上記の指示に応じてその監視状況の結果を制御サーバ装置101に通知する。具体的には、回線制御装置102は、
上記の装置識別子「DSID01,DSID02,DSID03,DSID04」が示す蓄積装置104〜107に記憶されたコンテンツデータのうち、利用要求が最も少ないコンテンツデータを記憶している蓄積装置の装置識別子(ここでは「DSID01」によって示される蓄積装置104とする)を制御サーバ装置101に通知する。
【0040】
制御サーバ装置101のCPU101aはこの通知を受信すると(ステップS23)、通知された装置識別子によって示される蓄積装置104と、端末装置121とを接続するように回線制御装置121に指示する(ステップS24)。回線制御装置121はこの指示に従い、端末装置121と蓄積装置104とを通信可能に接続する。以降、端末装置121は蓄積装置104からコンテンツデータをダウンロードし、そのコンテンツデータのを解釈して画像表示或いは楽音出力などの処理を行えばよい。これによって契約ユーザはコンテンツを利用することができる。
【0041】
(2−3)コンテンツデータの削除処理
次に、蓄積管理システム100に登録されているコンテンツデータを削除する場合の動作について説明する。
図9は、制御サーバ装置101のCPU101aが行う動作フローを示す図である。この図9を用いて、端末装置121の契約ユーザが蓄積管理システム100に既に登録されているコンテンツ識別子「CID003」が示すコンテンツデータを削除する場合を例に挙げて説明する。
【0042】
契約ユーザは、端末装置121を操作して蓄積管理システム100にアクセスさせた後、コンテンツ識別子「CID003」が示すコンテンツデータを削除するための操作を行う。端末装置121はこの操作を受け付けるとユーザID「UID001」とコンテンツ識別子「CID003」を含む削除要求を蓄積管理システム100に送信する。制御サーバ装置101のCPU101aは、回線制御装置102を介して上記削除要求を受信すると、図9に示すフローを開始する。まず、CPU101aは、受信した削除要求に含まれている契約ユーザIDとコンテンツ識別子とに基づいて、図6に示すようなユーザ登録テーブルUTにおいてユーザID「UID001」に対応するコンテンツ識別子「CID003」を削除する(ステップS31)。これによってユーザ登録テーブルUTは図3に示した内容に戻る。
【0043】
次いで、CPU101aはコンテンツ登録テーブルCTにおける契約ユーザ数を更新する(ステップS32)。即ち、CPU101aは、図7に示したコンテンツ登録テーブルCTに記述されている契約ユーザ数「19」から1を減じた数である「18」を記述する。これによってコンテンツ登録テーブルCTは図4に示した内容に戻る。
【0044】
次に、CPU101aは、コンテンツ登録テーブルCTを参照し、コンテンツ識別子「CID003」に対応する契約ユーザ数が0となったか否かを判断する(ステップS33)。ここではユーザ数が「18人」であるので(ステップS33;No)、次にCPU101aは、仮に蓄積装置の数を1減じた場合に、契約ユーザ数をその蓄積装置の数で除した値が閾値を超えているか否かを判断する(ステップ34)。ここでは、蓄積装置の数を1減じると4−1=3(台)であり、かつ、18(人)÷3(台)=6(人/台)であるから閾値(6人)を超えていないと判断される(ステップS34;No)。即ち、4台のうちの1台の蓄積装置からコンテンツデータを削除してもよいということになる。
【0045】
そこで、CPU101aは、4台の蓄積装置104〜107の中から、例えば記憶媒体の空き容量に一番余裕がない蓄積装置(ここでは装置識別子「DSID02」の蓄積装置105とする)からコンテンツデータを削除するとともに、コンテンツ登録テーブルCTに記述されている装置識別子「DSID02」を削除する(ステップS35)。
【0046】
また、ステップS33において、契約ユーザ数が0となった場合には(ステップS33;Yes)、この蓄積管理システム100においてコンテンツを管理する必要がないので、CPU101aは、蓄積装置105に対しコンテンツデータを削除することを指示し(ステップS36)、さらに、コンテンツ登録テーブルCTに記述されているコンテンツ識別子と装置識別子を削除する(ステップS37)。
【0047】
(2−4)コンテンツの復元
次に、システム障害等の理由によってコンテンツデータが消失した場合に、制御サーバ装置101がそのコンテンツデータを復元する際の動作説明を行う。
図10は、制御サーバ装置101のCPU101aが行う動作フローを示す図である。この図10を用いて、蓄積装置104(装置識別子「DSID01」)に蓄積されているコンテンツデータ(コンテンツ識別子「CID001」)が消失した場合を例に挙げて説明する。
システム障害等から復旧すると、制御サーバ装置101のCPU101aは、まず、各々の蓄積装置104〜107に記憶されている内容と、コンテンツ登録テーブルCTに記述されている内容を照合し、各蓄積装置104〜107において消失したコンテンツデータがあるか否かを判断する(ステップS41)。
【0048】
ここで蓄積装置104において消失しているコンテンツデータがあることがわかると(ステップS41;Yes)、CPU101aは、消失したコンテンツデータが他の蓄積装置105〜107に蓄積されているか否かを判断する(ステップS42)。ここで、他の蓄積装置(例えば蓄積装置105)に蓄積されていれば(ステップS42;Yes)、CPU101aは、蓄積装置105から取得したコンテンツデータを蓄積装置104に送信する(ステップS43)。蓄積装置104はこのコンテンツデータを受信し記憶する。これによって消失したコンテンツデータを復元することができる。
なお、消失したコンテンツデータがいずれの蓄積装置104〜107にも蓄積されていない場合には(ステップS42;No)、CPU101aは、消失したコンテンツデータのコンテンツ識別子を回線制御装置102を介して各々のコンテンツサーバ131〜133に通知する。これらコンテンツサーバ131〜133は、通知されてきたコンテンツ識別子に対応するコンテンツデータを記憶している場合には、このコンテンツデータを制御サーバ装置101に送信する。制御サーバ装置101は回線制御装置102を介して上記コンテンツデータを受信する(ステップS44)。この後、制御サーバ装置101のCPU101aは、受信したコンテンツデータを記憶するべき蓄積装置に当該コンテンツデータを送信し、記憶させるという処理を行えばよい(ステップS43)。
【0049】
以上述べた実施形態によれば、複数の契約ユーザの間で同一コンテンツを共有させることで、蓄積装置の記憶容量を効率的に用いることができる。特に、音楽や映像などのコンテンツはそのデータ容量が数十〜数百メガバイトにまで達するものもあるから、このような場合においては非常に有効である。
【0050】
また、契約ユーザがコンテンツを登録しようとしたときに、蓄積管理システム100にそのコンテンツと同一のものが既に登録されている場合には、そのコンテンツと契約ユーザとを対応付けて記憶するだけでその契約ユーザはコンテンツを利用可能になる。よって、蓄積管理システム100は外部からあらためてコンテンツを取得する必要がない。
【0051】
また、上述した実施形態では、コンテンツデータを契約ユーザ数に応じて複数の蓄積装置に分散させて記憶させておき、これら複数の蓄積装置間で端末からの利用要求が分散されるように1つの蓄積装置を選択し、その蓄積装置に利用要求の送信元の端末装置を通信可能に接続することができる。このようにすれば、次のような利点がある。
例えば、蓄積管理システム側がコンテンツデータのコピーを予め定められた数だけ事前に用意しておき、これによって、コンテンツの利用要求に対して分散処理を図ろうとすることが考えられる。ただし、コンテンツデータの利用頻度は、各々のコンテンツデータによって異なっているのが普通である。よって、利用頻度の多いコンテンツデータであっても利用頻度の少ないコンテンツデータであっても同じような数のコピーを用意しておいた場合には、利用頻度の多いコンテンツデータに関しては思うように分散処理が図れず、一方、利用頻度の少ないコンテンツデータに関しては予め用意しておいたコピーのうち利用されないものが出てきてしまうなどの不都合が生じてくる。そこで、本実施形態は、各々のコンテンツがどのくらいの利用頻度で利用され得るかということを、そのコンテンツを登録した契約ユーザの数に応じて推測し、その推測結果に基づいてコピーの数を定めたものである。これによって、同一のコンテンツへの利用要求の集中を予防することができるとともに、無駄なコンテンツのコピーを記憶することも防止できる。
【0052】
(3)変形例
本発明は、上述した実施形態に限定されず、その技術思想の範囲内で種々の変更が可能である。
(3−1)蓄積管理システム100の内部構成は実施形態に例示したものに限らない。例えば、ユーザ登録テーブルUTやコンテンツ登録テールCTについては制御サーバ装置101とは別体のデータベース装置に記憶させるようにしてもよい。また、制御サーバ装置101が回線制御装置102の機能を兼ね備えていてもよい。
また、上述した実施形態では、コンテンツサーバ131〜133と蓄積管理システム100が直接接続されていたが、これに限らず、インターネット等のネットワークを介して接続されていても良い。
【0053】
(3−2)また、実施形態では、コンテンツサーバ131〜133が記憶しているコンテンツデータを蓄積管理システム100に蓄積していたが、コンテンツの一次リソースはコンテンツサーバ131〜133に限定されない。例えば、端末装置121〜124が記憶しているコンテンツデータを蓄積管理システム100にアップロードしてコンテンツの登録を行うようにしてもよい。
【0054】
(3−3)実施形態では、契約者の数と蓄積装置の数との大小関係に基づいて新たにコンテンツデータをコピーすべきか否かを判定していたが、これに限らず、契約者数と予め定められた閾値との比較結果に基づいて判定しても良い。例えば制御サーバ装置101のCPU101aは、契約者の数が予め定められた閾値より少ないか否かを判定し、少ない場合には、登録要求に含まれているコンテンツ識別子を契約ユーザのユーザ識別子に対応付けてユーザ登録テーブルUTに書き込み、少なくない場合には、登録要求に含まれているコンテンツ識別子を契約ユーザのユーザ識別子に対応付けてユーザ登録テーブルUTに書き込んだうえで、コンテンツ識別子により識別されるコンテンツを別の蓄積装置へ記憶させ、コンテンツ登録テーブルCTに蓄積装置の装置識別子とコンテンツ識別子とを対応付けて記述すればよい。このときの閾値としては、あるコンテンツデータを登録した契約ユーザ数が100を超えれば2つの蓄積装置に同一のコンテンツデータを記憶させるといった具合である。このような閾値についてはどの程度の分散化処理を図るかということを勘案しつつ適宜定めることができる。
【0055】
(3−4)図10に示すコンテンツの復元処理において、制御サーバ装置101は、消失したコンテンツデータがいずれの蓄積装置104〜107にも蓄積されていない場合には、コンテンツサーバ131〜133からコンテンツデータを取得するようになっていた。しかし、これに限らず、図10のステップS42において「No」という判断結果となった場合には、制御サーバ装置101は、この蓄積管理システム100のみによってはコンテンツデータを復元することはできないとして、そのまま処理を終了してもよい。
【0056】
(3−5)上述した制御サーバ装置101のCPU101aが実行するコンピュータプログラムは、CPU101aによって読み取り可能な磁気記録媒体、光記録媒体あるいはROM等の記録媒体に記録して提供することが可能である。また、これらプログラムを、インターネットのようなネットワーク経由で制御サーバ装置101にダウンロードさせることももちろん可能である。
【0057】
【発明の効果】
以上説明したように、本発明によれば、データ識別子によってデータの同一性を判断し、登録が要求されたデータが蓄積装置に既に蓄積されている場合には、そのデータ識別子を契約者に対応付けて前記記憶手段に書き込むことによって、複数の契約者でデータを共有できる。一方、まだ蓄積されていない場合には、そのデータを新たに取得して蓄積し、さらに、このデータの蓄積位置を示すリンク情報とデータ識別子とを対応付けて記憶手段に書き込むとともに、データ識別子を契約者に対応付けて記憶手段に書き込むことによって、複数の契約者でデータを共有することができる。
【図面の簡単な説明】
【図1】 本発明の実施の一形態に係るシステムの全体構成を示すブロック図である。
【図2】 同システムにおける制御サーバ装置の構成を示すブロック図である。
【図3】 同システムにおける制御サーバ装置が記憶しているユーザ登録テーブルの内容の一例を示す図である。
【図4】 同システムにおける制御サーバ装置が記憶しているコンテンツ登録テーブルの内容の一例を示す図である。
【図5】 同システムにおける制御サーバ装置のCPUが行う動作フローを示す図である。
【図6】 同システムにおける制御サーバ装置が記憶しているユーザ登録テーブルの内容の一例を示す図である。
【図7】 同システムにおける制御サーバ装置が記憶しているコンテンツ登録テーブルの内容の一例を示す図である。
【図8】 同システムにおける制御サーバ装置のCPUが行う動作フローを示す図である。
【図9】 同システムにおける制御サーバ装置のCPUが行う動作フローを示す図である。
【図10】 同システムにおける制御サーバ装置のCPUが行う動作フローを示す図である。
【符号の説明】
100・・・蓄積管理システム、101・・・制御サーバ装置、
102・・・回線制御装置、103〜107・・・蓄積装置、
110・・・ネットワーク、121〜124・・・端末装置、
131〜133・・・コンテンツサーバ、101a・・・CPU、
101b・・・ROM、101c・・・RAM、101d・・・ハードディスク、CT・・・コンテンツ登録テーブル、UT・・・ユーザ登録テーブル。
Claims (4)
- 受信したデータを蓄積する複数の蓄積装置と、登録が要求されたデータを前記蓄積装置に蓄積させる制御装置とを有し、
前記制御装置は、
データに固有のデータ識別子と、当該データの蓄積位置を示す蓄積位置情報とを記憶する記憶手段と、
ユーザに固有のユーザ識別子及び前記データ識別子を含む登録要求を受信すると、該登録要求に含まれているデータ識別子によって特定されるデータが前記蓄積装置に蓄積されているか否かを判定する判定手段と、
前記判定手段により蓄積されていると判定された場合に、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む第1の制御手段と、
前記判定手段により蓄積されていないと判定された場合に、該データ識別子によって特定されるデータを取得し前記蓄積装置へ送信する処理と、前記蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行う第2の制御手段と、
前記判定手段により蓄積されていると判定されたデータのデータ識別子に対応付けられて前記第1の制御手段により前記記憶手段に書き込まれた前記ユーザ識別子の数を検出するユーザ識別子数検出手段と、
前記判定手段により蓄積されていると判定されたデータを蓄積している前記蓄積装置の数を検出する装置数検出手段とを有し、
前記第1の制御手段は、
前記判定されたデータについて前記ユーザ識別子数検出手段により検出されたユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、受信された前記登録要求に含まれているデータ識別子を該登録要求に含まれているユーザ識別子に対応付けて前記記憶手段に書き込み、
前記判定されたデータについて前記ユーザ識別子数検出手段により検出されたユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、前記閾値を超えている場合には、該データ識別子により識別されるデータを該データ識別子に対応付けられた蓄積位置情報により特定される前記蓄積装置とは異なる蓄積装置へ送信する処理と、該異なる蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行う
ことを特徴とするデータ管理システム。 - 前記制御装置は、
前記ユーザ識別子及び前記データ識別子を含む削除要求を受信すると、該ユーザ識別子に対応付けて前記記憶手段に書き込まれたデータ識別子のうち、該削除要求に含まれているデータ識別子を前記記憶手段から削除する削除手段と、
複数の蓄積位置情報に対応付けられて前記記憶手段に記憶されているデータ識別子が前記削除手段により前記記憶手段から削除されて、該データ識別子に対応付けられているユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、該データ識別子により識別されるデータを該複数の蓄積位置情報のうちの少なくとも1つにより特定される蓄積装置から削除する一方、該蓄積装置におけるデータの蓄積位置を示す蓄積位置情報を前記記憶手段から削除する調整手段と
を有することを特徴とする請求項1に記載のデータ管理システム。 - 制御装置が、ユーザに固有のユーザ識別子及びデータに固有のデータ識別子を含む登録要求を受信すると、該登録要求に含まれているデータ識別子によって特定されるデータが蓄積装置に蓄積されているか否かを判定する判定ステップと、
前記判定ステップにおいて蓄積されていると判定された場合に、前記制御装置が、該データ識別子を、受信した前記ユーザ識別子に対応付けて記憶手段に書き込むとともに、蓄 積されていると判定されたデータのデータ識別子に対応付けられているユーザ識別子の数と、蓄積されていると判定されたデータを蓄積している蓄積装置の数とを検出する第1の制御ステップと、
前記判定ステップにおいて蓄積されていないと判定された場合には、前記制御装置が、該データ識別子によって特定されるデータを取得し前記蓄積装置へ送信し、前記蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込み、該データ識別子を、受信した前記ユーザ識別子に対応付けて前記記憶手段に書き込む第2の制御ステップとを備え、
前記第1の制御ステップにおいて、前記制御装置は、さらに、前記判定されたデータについて検出されたユーザ識別子の数を検出された蓄積装置の数で除した数が、閾値を超えていない場合には、受信された前記登録要求に含まれているデータ識別子を該登録要求に含まれているユーザ識別子に対応付けて前記記憶手段に書き込み、前記判定されたデータについて検出されたユーザ識別子の数を検出された蓄積装置の数で除した数が、前記閾値を超えている場合には、該データ識別子により識別されるデータを該データ識別子に対応付けられた蓄積位置情報により特定される前記蓄積装置とは異なる蓄積装置へ送信する処理と、該異なる蓄積装置における該データの蓄積位置を示す蓄積位置情報と該データ識別子とを対応付けて前記記憶手段に書き込む処理と、該データ識別子を該ユーザ識別子に対応付けて前記記憶手段に書き込む処理とを行う
ことを特徴とするデータ管理方法。 - 前記ユーザ識別子及び前記データ識別子を含む削除要求を受信すると、該ユーザ識別子に対応付けて書き込まれたデータ識別子のうち、該削除要求に含まれているデータ識別子を前記記憶手段から削除するステップと、
複数の蓄積位置情報に対応付けられて前記記憶手段に記憶されているデータ識別子が前記削除手段により前記記憶手段から削除されて、該データ識別子に対応付けられているユーザ識別子の数を前記装置数検出手段により検出された蓄積装置の数で除した数が、閾値を超えていない場合には、該データ識別子により識別されるデータを該複数の蓄積位置情報のうちの少なくとも1つにより特定される蓄積装置から削除する一方、該蓄積装置におけるデータの蓄積位置を示す蓄積位置情報を前記記憶手段から削除するステップと
を有することを特徴とする請求項3記載のデータ管理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003102157A JP3920238B2 (ja) | 2003-04-04 | 2003-04-04 | データ管理システム及びデータ管理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003102157A JP3920238B2 (ja) | 2003-04-04 | 2003-04-04 | データ管理システム及びデータ管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004310380A JP2004310380A (ja) | 2004-11-04 |
JP3920238B2 true JP3920238B2 (ja) | 2007-05-30 |
Family
ID=33465728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003102157A Expired - Fee Related JP3920238B2 (ja) | 2003-04-04 | 2003-04-04 | データ管理システム及びデータ管理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3920238B2 (ja) |
-
2003
- 2003-04-04 JP JP2003102157A patent/JP3920238B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2004310380A (ja) | 2004-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9575847B2 (en) | Transfer of user data between logical data sites | |
US8281376B2 (en) | Authentication system and authentication method | |
CN101156407A (zh) | 用于计划的下载服务的系统结构和方法 | |
US9075805B2 (en) | Methods and apparatuses for synchronizing and tracking content | |
US9286008B2 (en) | Job management apparatus connected to an external storage via a network, including a storage management unit that determines whether to store job data in the external storage based on predetermined transfer condition | |
JP2004005315A (ja) | コンテンツ配信システム及び、それに関する、装置または方法または記録媒体またはプログラム | |
JP6582445B2 (ja) | シンクライアントシステム、接続管理装置、仮想マシン稼働装置、方法、および、プログラム | |
US20040003076A1 (en) | Network management program, network management system and network management apparatus | |
US20120265831A1 (en) | System and Method for Transmitting and Filtering Instant Messaging Information | |
US20090271849A1 (en) | Content transfer system and method, and home server | |
WO2010057377A1 (zh) | 前端设备、录像文件备份方法及其控制方法、装置及系统 | |
JP2009157761A (ja) | ストレージシステム及びストレージシステムにおけるデータ管理方法 | |
JP2020087323A (ja) | デバイス管理サーバー、方法及びプログラム | |
JP2008546092A (ja) | パーソナルインターネットコミュニケータのセキュリティシステム | |
JP3920238B2 (ja) | データ管理システム及びデータ管理方法 | |
KR101671388B1 (ko) | 네트워크를 통한 데이터 백업 방법 및 장치, 백업 데이터 제공 장치 및 백업 시스템 | |
US8284414B2 (en) | Image forming system and managing method thereof | |
JP2003186727A (ja) | ファイル保存システム | |
JP7287026B2 (ja) | 情報処理装置、ファイル管理装置、ファイル管理システム及びプログラム | |
JP2008250864A (ja) | データ保存方法、データ保存システム及び情報処理装置 | |
JP5413599B2 (ja) | データ配信システム,負荷分散方法及び蓄積サーバ | |
JP4046562B2 (ja) | 負荷分散方法 | |
JP2003015925A (ja) | 情報端末管理装置及びプログラム | |
KR101304393B1 (ko) | 사용자 데이터 관리서버 및 운용방법, 사용자 단말기 및 이를 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록매체 | |
JP6622654B2 (ja) | 画像管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061114 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070110 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070206 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070214 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100223 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110223 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120223 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120223 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130223 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |