(57)【特許請求の範囲】
【請求項１】
第１記録媒体を有する第１ストレージ装置と、
第２記録媒体を有する第２ストレージ装置と、
前記第１ストレージ装置と通信可能に接続され、第１フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第１アプリケーションプログラムを実行する第１サーバと、
前記第１ストレージ装置と通信可能に接続され、前記第１フォーマットとは異なる第２フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第２アプリケーションプログラムを実行する第２サーバと、
前記第１サーバ、前記第２サーバ及び前記第２ストレージ装置と通信可能に接続され、前記第１記録媒体に記憶されている各ファイル内のコンテンツの複製を取得し、前記第２記録媒体に記憶する情報処理装置と、
前記情報処理装置と通信可能に接続され、前記情報処理装置に対してコンテンツの読み出し要求を送信し、前記情報処理装置から前記読み出し要求の対象であるコンテンツを受信するクライアントと、
を備えて構成される情報処理システムにおける前記情報処理装置であって、
前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信する第１要求送信部と、
前記送信要求に応じて、前記第１サーバの前記第１アプリケーションプログラムが前記第１記録媒体から読み出し共通フォーマットに変換したコンテンツを、前記第１サーバから受信する第１コンテンツ受信部と、
前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを、前記第２記録媒体に記憶する第１コンテンツ複製部と、
前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信する第２要求送信部と、
前記送信要求に応じて、前記第２サーバの前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信する第２コンテンツ受信部と、
前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを、前記第２記録媒体に記憶する第２コンテンツ複製部と、
前記第２記録媒体に記憶されている前記共通フォーマットに変換された各コンテンツを一意に識別するためのグローバル識別子を生成するグローバル識別子生成部と、
前記共通フォーマットに変換された各コンテンツについて、前記第２記録媒体における記憶位置を示す記憶位置情報と、前記生成したグローバル識別子と、前記共通フォーマットに変換された該コンテンツが記憶された回数の序数を示す世代情報と、をそれぞれ対応付けてグローバル識別子管理テーブルに記憶するグローバル識別子記憶部と、
前記クライアントからグローバル識別子と世代情報とを指定したコンテンツの前記読み出し要求を受信した場合、前記グローバル識別子管理テーブルを参照して、前記グローバル識別子と前記世代情報とに対応付けられた記憶位置情報により特定される記憶位置から、前記共通フォーマットに変換されたコンテンツを読み出して前記クライアントに送信する読み出し処理部と、
を備えることを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置であって、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきた前記共通フォーマットに変換されたコンテンツに記述されている当該コンテンツの識別情報を、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報と対応付けて複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきた前記共通フォーマットに変換されたコンテンツに記述されている当該コンテンツの識別情報を、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報と対応付けて前記複製管理テーブルに記憶する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置であって、
前記グローバル識別子生成部は、前記複製管理テーブルに記憶されている、前記共通フォーマットに変換されたコンテンツの識別情報と、前記識別情報に対応付けられているアプリケーションプログラムの識別情報と、をコンテンツ毎に組み合わせることにより、前記共通フォーマットに変換された各コンテンツを一意に識別するグローバル識別子を生成する
ことを特徴とする情報処理装置。
【請求項４】
請求項１に記載の情報処理装置であって、
前記クライアントから、グローバル識別子と世代情報とを指定したコンテンツの更新要求及び更新されたコンテンツを受信した場合には、更新された前記コンテンツを前記共通フォーマットに変換して前記第２記録媒体に書き込むと共に、更新された前記コンテンツの前記第２記録媒体における記憶位置を示す記憶位置情報と、前記更新要求に記述されているグローバル識別子と世代情報と、を対応付けて更新管理テーブルに記憶する更新処理部と、
を備えることを特徴とする情報処理装置。
【請求項５】
請求項４に記載の情報処理装置であって、
更新された前記コンテンツが記憶される前記第２記録媒体における記憶位置は、当該コンテンツが更新される前に記憶されていた前記第２記録媒体における記憶位置とは異なる
ことを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置であって、
前記読み出し処理部は、前記クライアントからコンテンツの読み出し要求を受信した場合に、前記読み出し要求に記述されているグローバル識別子及び世代情報と同一のグローバル識別子が前記更新管理テーブルに記憶されている場合には、当該グローバル識別子及び世代情報と対応付けて前記更新管理テーブルに記憶されている記憶位置情報により特定される記憶位置からコンテンツを読み出して、前記クライアントに送信する
ことを特徴とする情報処理装置。
【請求項７】
請求項１に記載の情報処理装置であって、
前記クライアントからグローバル識別子及び世代情報を指定したコンテンツの削除要求を受信した場合には、当該グローバル識別子及び世代情報により特定されるコンテンツを前記第２記録媒体から削除せずに、前記グローバル識別子管理テーブルに記憶されている当該グローバル識別子及び世代情報を削除する削除処理部と、
を備えることを特徴とする情報処理装置。
【請求項８】
請求項１に記載の情報処理装置であって、
前記第２記録媒体に記憶されている各コンテンツから、各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているコンテンツのグローバル識別子と、を単語毎に対応付けて記憶した検索インデックスを生成する検索インデックス生成部と、
前記クライアントから単語を指定したコンテンツの検索要求を受信し、前記単語と対応付けて前記検索インデックスに記憶されているグローバル識別子のリストを前記クライアントに送信する検索処理部と、
を備えることを特徴とする情報処理装置。
【請求項９】
請求項１に記載の情報処理装置であって、
前記グローバル識別子生成部が生成したグローバル識別子と、前記世代情報と、前記グローバル識別子及び世代情報により特定されるコンテンツの読み出しが許可されているユーザを示す情報と、をグローバル識別子毎にそれぞれ対応付けてアクセス管理テーブルに記憶するアクセス管理部と、
を備え、
前記読み出し処理部は、グローバル識別子及び世代情報を指定したコンテンツの前記読み出し要求を受信した際に、前記読み出し要求に記述されている当該読み出し要求を送信したユーザを示す情報が、前記読み出し要求に記述されているグローバル識別子及び世代情報と対応付けて前記アクセス管理テーブルに記憶されている場合には、前記読み出し要求に記述されているグローバル識別子及び世代情報と対応付けて前記グローバル識別子管理テーブルに記憶される記憶位置情報により特定される記憶位置からコンテンツを読み出して前記クライアントに送信する
ことを特徴とする情報処理装置。
【請求項１０】
請求項１に記載の情報処理装置であって、
前記第１記録媒体に記録されている各ファイル内のコンテンツの複製を前記第２記録媒体に記憶するバックアップ処理を実行するバックアップ実行部と、
を備え、
前記バックアップ実行部が行う前記バックアップ処理として、
前記第１要求送信部は、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第１コンテンツ受信部は、前記送信要求に応じて前記第１アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを前記第１サーバから受信し、
前記第１コンテンツ複製部は、前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶し、
前記第２要求送信部は、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第２コンテンツ受信部は、前記送信要求に応じて前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信し、
前記第２コンテンツ複製部は、前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶する
処理をそれぞれ実行することを特徴とする情報処理装置。
【請求項１１】
請求項１０に記載の情報処理装置であって、
前記バックアップ実行部は、バックアップ処理を実行する毎に、バックアップ処理を実行した時刻をバックアップ管理テーブルに記録し、新たにバックアップ処理を実行する際には、前回バックアップを実行した時刻と、前記第１記録媒体に記憶されている各コンテンツに記録されているコンテンツの更新時刻と、を比較し、前回実行したバックアップ処理の後に更新されたコンテンツに対してのみバックアップ処理を行う
ことを特徴とする情報処理装置。
【請求項１２】
請求項１１に記載の情報処理装置であって、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報と、前記世代情報と、を対応付けて複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報と、前記世代情報と、を対応付けて前記複製管理テーブルに記憶し、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と同一の識別情報が既に前記複製管理テーブルに記憶されている場合には、当該識別情報と対応付けられている世代情報のうちの最新の世代情報を１世代分繰り上げて新たな世代情報を生成し、生成した前記新たな世代情報と、前記識別情報と、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報とを対応付けて前記複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と同一の識別情報が既に前記複製管理テーブルに記憶されている場合には、当該識別情報と対応付けられている世代情報のうちの最新の世代情報を１世代分繰り上げて新たな世代情報を生成し、生成した前記新たな世代情報と、前記識別情報と、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報とを対応付けて前記複製管理テーブルに記憶し、
前記グローバル識別子生成部は、前記複製管理テーブルに記憶されているコンテンツの識別情報と、前記識別情報に対応付けられているアプリケーションプログラムの識別情報とを組み合わせることにより各コンテンツを一意に識別するグローバル識別子を生成し、
前記グローバル識別子記憶部は、前記第２記録媒体におけるコンテンツの記憶位置を示す記憶位置情報と、前記記憶位置に記憶されているコンテンツの世代情報と、前記コンテンツのグローバル識別子と、を、それぞれ対応付けて前記グローバル識別子管理テーブルに記憶する
ことを特徴とする情報処理装置。
【請求項１３】
請求項１２に記載の情報処理装置であって、
前記グローバル識別子管理テーブルに記憶されているグローバル識別子と、前記グローバル識別子に対応付けられている世代情報とを、各グローバル識別子の世代情報毎に組み合わせることにより、各コンテンツを一意に識別する詳細グローバル識別子を生成する別名生成部と、
前記グローバル識別子管理テーブルに記憶されているグローバル識別子と、前記グローバル識別子に対応付けられている世代情報と、前記グローバル識別子及び前記世代情報により生成された詳細グローバル識別子と、を各グローバル識別子の世代情報毎に対応付けて別名管理テーブルに記憶する別名管理部と、
を備え、
前記読み出し処理部は、前記クライアントから詳細グローバル識別子を指定したコンテンツの読み出し要求を受信した場合には、前記詳細グローバル識別子と対応付けて前記別名管理テーブルに記憶されるグローバル識別子及び世代情報に基づいて、前記グローバル識別子管理テーブルから読み出し対象のコンテンツの記憶位置を特定し、前記記憶位置からコンテンツを読み出して前記クライアントに送信する
ことを特徴とする情報処理装置。
【請求項１４】
請求項１に記載の情報処理装置であって、
前記第１記録媒体に記録されている各ファイル内のコンテンツの複製を前記第２記録媒体に記憶するコンテンツ収集処理を実行するコンテンツ収集部と、
前記第２記録媒体に記憶した各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているファイルの識別子と、を単語毎に対応付けて記憶したファイルインデックスを生成するファイルインデックス生成部と、
前記クライアントから単語を指定したファイルの検索要求を受信し、前記単語と対応付けて前記ファイルインデックスに記憶されているファイルの識別子のリストを前記クライアントに送信するエンタープライズサーチ実行部と、
を備え、
前記コンテンツ収集部が行う前記コンテンツ収集処理として、
前記第１要求送信部は、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第１コンテンツ受信部は、前記送信要求に応じて前記第１アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを前記第１サーバから受信し、
前記第１コンテンツ複製部は、前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶し、
前記第２要求送信部は、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第２コンテンツ受信部は、前記送信要求に応じて前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信し、
前記第２コンテンツ複製部は、前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶する
処理をそれぞれ実行することを特徴とする情報処理装置。
【請求項１５】
請求項１に記載の情報処理装置であって、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきた前記共通フォーマットに変換されたコンテンツに記述されている当該コンテンツの識別情報を、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報と対応付けて複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきた前記共通フォーマットに変換されたコンテンツに記述されている当該コンテンツの識別情報を、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報と対応付けて前記複製管理テーブルに記憶し、
前記グローバル識別子生成部は、前記複製管理テーブルに記憶されている、前記共通フォーマットに変換されたコンテンツの識別情報と、前記識別情報に対応付けられているアプリケーションプログラムの識別情報と、をコンテンツ毎に組み合わせることにより、前記共通フォーマットに変換された各コンテンツを一意に識別するグローバル識別子を生成し、
前記クライアントから、グローバル識別子と世代情報とを指定したコンテンツの更新要求及び更新されたコンテンツを受信した場合には、更新された前記コンテンツを前記共通フォーマットに変換して、当該コンテンツが更新される前に記憶されていた前記第２記録媒体における記憶位置とは異なる記憶位置に書き込むと共に、更新された前記コンテンツの前記第２記録媒体における記憶位置を示す記憶位置情報と、前記更新要求に記述されているグローバル識別子とと世代情報と、を対応付けて更新管理テーブルに記憶する更新処理部と、
を備え、
前記読み出し処理部は、前記クライアントからコンテンツの読み出し要求を受信した場合に、前記読み出し要求に記述されているグローバル識別子及び世代情報と同一のグローバル識別子が前記更新管理テーブルに記憶されている場合には、当該グローバル識別子及び世代情報と対応付けて前記更新管理テーブルに記憶されている記憶位置情報により特定される記憶位置からコンテンツを読み出して、前記クライアントに送信し、
前記クライアントからグローバル識別子及び世代情報を指定したコンテンツの削除要求を受信した場合には、当該グローバル識別子及び世代情報により特定されるコンテンツを前記第２記録媒体から削除せずに、前記グローバル識別子管理テーブルに記憶されている当該グローバル識別子及び世代情報を削除する削除処理部と、
を備え、
前記第２記録媒体に記憶されている各コンテンツから、各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているコンテンツのグローバル識別子と、を単語毎に対応付けて記憶した検索インデックスを生成する検索インデックス生成部と、
前記クライアントから単語を指定したコンテンツの検索要求を受信し、前記単語と対応付けて前記検索インデックスに記憶されているグローバル識別子のリストを前記クライアントに送信する検索処理部と、
を備え、
前記グローバル識別子生成部が生成したグローバル識別子と、前記世代情報と、前記グローバル識別子及び世代情報により特定されるコンテンツの読み出しが許可されているユーザを示す情報と、をグローバル識別子毎にそれぞれ対応付けてアクセス管理テーブルに記憶するアクセス管理部と、
を備え、
前記読み出し処理部は、グローバル識別子及び世代情報を指定したコンテンツの前記読み出し要求を受信した際に、前記読み出し要求に記述されている当該読み出し要求を送信したユーザを示す情報が、前記読み出し要求に記述されているグローバル識別子及び世代情報と対応付けて前記アクセス管理テーブルに記憶されている場合には、前記読み出し要求に記述されているグローバル識別子及び世代情報と対応付けて前記グローバル識別子管理テーブルに記憶される記憶位置情報により特定される記憶位置からコンテンツを読み出して前記クライアントに送信し、
前記第１記録媒体に記録されている各ファイル内のコンテンツの複製を前記第２記録媒体に記憶するバックアップ処理を実行するバックアップ実行部と、
を備え、
前記バックアップ実行部が行う前記バックアップ処理として、
前記第１要求送信部は、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第１コンテンツ受信部は、前記送信要求に応じて前記第１アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを前記第１サーバから受信し、
前記第１コンテンツ複製部は、前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶し、
前記第２要求送信部は、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第２コンテンツ受信部は、前記送信要求に応じて前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信し、
前記第２コンテンツ複製部は、前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶する
処理をそれぞれ実行し、
前記バックアップ実行部は、バックアップ処理を実行する毎に、バックアップ処理を実行した時刻をバックアップ管理テーブルに記録し、新たにバックアップ処理を実行する際には、前回バックアップを実行した時刻と、前記第１記録媒体に記憶されている各コンテンツに記録されているコンテンツの更新時刻と、を比較し、前回実行したバックアップ処理の後に更新されたコンテンツに対してのみバックアップ処理を行い、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報と、当該コンテンツがバックアップされた回数を示す世代情報と、を対応付けて複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報と、当該コンテンツがバックアップされた回数を示す世代情報と、を対応付けて前記複製管理テーブルに記憶し、
前記第１コンテンツ複製部は、前記第１サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と同一の識別情報が既に前記複製管理テーブルに記憶されている場合には、当該識別情報と対応付けられている世代情報のうちの最新の世代情報を１世代分繰り上げて新たな世代情報を生成し、生成した前記新たな世代情報と、前記識別情報と、その識別情報で当該コンテンツを識別する前記第１アプリケーションプログラムの識別情報とを対応付けて前記複製管理テーブルに記憶し、
前記第２コンテンツ複製部は、前記第２サーバから送信されてきたコンテンツに記述されている当該コンテンツの識別情報と同一の識別情報が既に前記複製管理テーブルに記憶されている場合には、当該識別情報と対応付けられている世代情報のうちの最新の世代情報を１世代分繰り上げて新たな世代情報を生成し、生成した前記新たな世代情報と、前記識別情報と、その識別情報で当該コンテンツを識別する前記第２アプリケーションプログラムの識別情報とを対応付けて前記複製管理テーブルに記憶し、
前記グローバル識別子生成部は、前記複製管理テーブルに記憶されているコンテンツの識別情報と、前記識別情報に対応付けられているアプリケーションプログラムの識別情報とを組み合わせることにより各コンテンツを一意に識別するグローバル識別子を生成し、
前記グローバル識別子記憶部は、前記第２記録媒体におけるコンテンツの記憶位置を示す記憶位置情報と、前記記憶位置に記憶されているコンテンツの世代情報と、前記コンテンツのグローバル識別子と、それぞれ対応付けて前記グローバル識別子管理テーブルに記憶し、
前記グローバル識別子管理テーブルに記憶されているグローバル識別子と、前記グローバル識別子に対応付けられている世代情報とを、各グローバル識別子の世代情報毎に組み合わせることにより、各コンテンツを一意に識別する詳細グローバル識別子を生成する別名生成部と、
前記グローバル識別子管理テーブルに記憶されているグローバル識別子と、前記グローバル識別子に対応付けられている世代情報と、前記グローバル識別子及び前記世代情報により生成された詳細グローバル識別子と、を各グローバル識別子の世代情報毎に対応付けて別名管理テーブルに記憶する別名管理部と、
を備え、
前記読み出し処理部は、前記クライアントから詳細グローバル識別子を指定したコンテンツの読み出し要求を受信した場合には、前記詳細グローバル識別子と対応付けて前記別名管理テーブルに記憶されるグローバル識別子及び世代情報に基づいて、前記グローバル識別子管理テーブルから読み出し対象のコンテンツの記憶位置を特定し、前記記憶位置からコンテンツを読み出して前記クライアントに送信し、
前記第１記録媒体に記録されている各ファイル内のコンテンツの複製を前記第２記録媒体に記憶するコンテンツ収集処理を実行するコンテンツ収集部と、
前記第２記録媒体に記憶した各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているファイルの識別子と、を単語毎に対応付けて記憶したファイルインデックスを生成するファイルインデックス生成部と、
前記クライアントから単語を指定したファイルの検索要求を受信し、前記単語と対応付けて前記ファイルインデックスに記憶されているファイルの識別子のリストを前記クライアントに送信するエンタープライズサーチ実行部と、
を備え、
前記コンテンツ収集部が行う前記コンテンツ収集処理として、
前記第１要求送信部は、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第１コンテンツ受信部は、前記送信要求に応じて前記第１アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを前記第１サーバから受信し、
前記第１コンテンツ複製部は、前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶し、
前記第２要求送信部は、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、
前記第２コンテンツ受信部は、前記送信要求に応じて前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信し、
前記第２コンテンツ複製部は、前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを前記第２記録媒体に記憶する処理をそれぞれ実行する
ことを特徴とする情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置に関する。
【背景技術】
【０００２】
今日、企業や官公庁、学校などの様々な事業体において、種々のアプリケーション・プログラムが活用されている。例えば、電子メールの授受をはじめ、ドキュメントの作成やワークフローの処理、プロジェクトの遂行など様々な業務がアプリケーション・プログラムを利用して進められている。
【０００３】
通常、アプリケーション・プログラムを利用することにより生成されたコンテンツは、アプリケーション・プログラム毎に異なるフォーマットでファイルに格納され、保存される。そのため、各アプリケーション・プログラムで作成したコンテンツの閲覧や編集等を行うためには、各アプリケーション・プログラムに対応した専用のクライアント・プログラムを端末にインストールする必要がある。
【０００４】
このため、各アプリケーション・プログラムによって作成されたそれぞれフォーマットの異なる複数のファイルへのアクセスを統一して行うことを可能にするために、様々な技術が開発されている（例えば特許文献１参照）。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００９−１１６４１４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、例えば特許文献１に開示されているように、情報処理システムで稼動する種々のアプリケーション・プログラムのファイルに対して統一的なアクセスを可能とするためには、それらのアプリケーション・プログラムに対応可能な変換プログラムを用いる必要がある。そして情報処理システムで稼動するアプリケーション・プログラムの数が増えるほど変換プログラムの規模も大きくなり、変換プログラムの開発や実装が煩雑になる。
【０００７】
本発明はこのような背景を鑑みてなされたもので、異なるフォーマットでコンテンツをファイルに格納する各アプリケーション・プログラムによりそれぞれ生成されたコンテンツに対して、変換プログラムを用いなくても統一的なアクセスを可能とする情報処理装置を提供することを一つの目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するための手段の一つは、第１記録媒体を有する第１ストレージ装置と、第２記録媒体を有する第２ストレージ装置と、前記第１ストレージ装置と通信可能に接続され、第１フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第１アプリケーションプログラムを実行する第１サーバと、前記第１ストレージ装置と通信可能に接続され、前記第１フォーマットとは異なる第２フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第２アプリケーションプログラムを実行する第２サーバと、前記第１サーバ、前記第２サーバ及び前記第２ストレージ装置と通信可能に接続され、前記第１記録媒体に記憶されている各ファイル内のコンテンツの複製を取得し、前記第２記録媒体に記憶する情報処理装置と、前記情報処理装置と通信可能に接続され、前記情報処理装置に対してコンテンツの読み出し要求を送信し、前記情報処理装置から前記読み出し要求の対象であるコンテンツを受信するクライアントと、を備えて構成される情報処理システムにおける前記情報処理装置であって、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信する第１要求送信部と、前記送信要求に応じて、前記第１サーバの前記第１アプリケーションプログラムが前記第１記録媒体から読み出し共通フォーマットに変換したコンテンツを、前記第１サーバから受信する第１コンテンツ受信部と、前記第１コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを、前記第２記録媒体に記憶する第１コンテンツ複製部と、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信する第２要求送信部と、前記送信要求に応じて、前記第２サーバの前記第２アプリケーションプログラムが前記第１記録媒体から読み出し前記共通フォーマットに変換したコンテンツを、前記第２サーバから受信する第２コンテンツ受信部と、前記第２コンテンツ受信部が受信した前記共通フォーマットに変換されたコンテンツを、前記第２記録媒体に記憶する第２コンテンツ複製部と、前記第２記録媒体に記憶されている前記共通フォーマットに変換された各コンテンツを一意に識別するためのグローバル識別子を生成するグローバル識別子生成部と、前記共通フォーマットに変換された各コンテンツについて、前記第２記録媒体における記憶位置を示す記憶位置情報と、前記生成したグローバル識別子と、前記共通フォーマットに変換された該コンテンツが記憶された回数の序数を示す世代情報と、をそれぞれ対応付けてグローバル識別子管理テーブルに記憶するグローバル識別子記憶部と、前記クライアントからグローバル識別子と世代情報とを指定したコンテンツの前記読み出し要求を受信した場合、前記グローバル識別子管理テーブルを参照して、前記グローバル識別子と前記世代情報とに対応付けられた記憶位置情報により特定される記憶位置から、前記共通フォーマットに変換されたコンテンツを読み出して前記クライアントに送信する読み出し処理部と、を備える。
その他、本願が開示する課題、及びその解決方法は、発明を実施するための形態の欄の記載、及び図面の記載等により明らかにされる。
【発明の効果】
【０００９】
本発明によれば、異なるフォーマットでコンテンツをファイルに格納する各アプリケーション・プログラムによりそれぞれ生成されたファイルに対して、変換プログラムを用いなくても統一的なアクセスが可能になる。
【図面の簡単な説明】
【００１０】
【図１】実施形態に係る情報処理システムの全体構成を示す図である。
【図２】実施形態に係る情報処理システムの全体構成を示す図である。
【図３】実施形態に係るバックアップファイルを示す図である。
【図４】実施形態に係る更新データを示す図である。
【図５】実施形態に係るクライアントの構成を示す図である。
【図６】実施形態に係るコンテンツ集約サーバの構成を示す図である。
【図７】実施形態に係るバックアップサーバの構成を示す図である。
【図８】実施形態に係るメールサーバの構成を示す図である。
【図９】実施形態に係るコラボレーションサーバの構成を示す図である。
【図１０】実施形態に係るストレージ装置の構成を示す図である。
【図１１】実施形態に係る処理の概要を示す図である。
【図１２】実施形態に係る処理の概要を示す図である。
【図１３】実施形態に係るバックアップカタログ情報管理テーブルを示す図である。
【図１４】実施形態に係るバックアップカタログ情報管理テーブルを示す図である。
【図１５】実施形態に係るバックアップカタログ情報管理テーブルを示す図である。
【図１６】実施形態に係る集約データ管理テーブルを示す図である。
【図１７】実施形態に係る別名管理テーブルを示す図である。
【図１８】実施形態に係るアプリケーション管理テーブルを示す図である。
【図１９】実施形態に係るバックアップ処理の流れを示すフローチャートである。
【図２０】実施形態に係るデータ読み出し変換処理の流れを示すフローチャートである。
【図２１】実施形態に係るデータ書き出し処理の流れを示すフローチャートである。
【図２２】実施形態に係る集約データ管理テーブル更新処理の流れを示すフローチャートである。
【図２３】実施形態に係るリード処理の流れを示すフローチャートである。
【図２４】実施形態に係るライト処理の流れを示すフローチャートである。
【図２５】実施形態に係る削除処理の流れを示すフローチャートである。
【図２６】実施形態に係る検索処理の流れを示すフローチャートである。
【図２７】実施形態に係る情報処理システムの全体構成を示す図である。
【図２８】実施形態に係るコンテンツ集約サーバの構成を示す図である。
【図２９】実施形態に係るエンタープライズサーチサーバの構成を示す図である。
【図３０】実施形態に係る処理の概要を示す図である。
【図３１】実施形態に係る検索インデックス中間データ管理テーブルを示す図である。
【図３２】実施形態に係る検索インデックス中間データ管理テーブルを示す図である。
【図３３】実施形態に係る検索インデックス中間データ管理テーブルを示す図である。
【図３４】実施形態に係る集約データ管理テーブル更新処理の流れを示すフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施の形態について、図面を参照しながら説明する。なお実施の形態を説明するための図面において、同一部には原則として同一符号を付し、その繰り返しの説明は省略する。また説明上プログラムまたは機能が主語となる場合、実際にはプログラムを実行するプロセッサや回路によって処理が実行される。
【００１２】
＝＝第１実施形態＝＝
図１〜図２６を用いて第１実施形態の情報処理システムについて説明する。
図１は、第１実施形態における情報処理システム１を示している。
情報処理システム１は、クライアント装置２、クライアント装置２ａ、クライアント装置２ｂ、コンテンツ集約サーバ３、バックアップサーバ５、メールサーバ６、コラボレーションサーバ７、ストレージ装置４ｓ、ストレージ装置４ｔが、ネットワーク１１０を介して通信可能に接続されて構成される。なおバックアップサーバ５及びコンテンツ集約サーバ３は、特許請求の範囲に記載の情報処理装置に相当する。
【００１３】
クライアント装置２ａは、情報処理システム１により提供される各種情報処理機能を利用しながら業務を行う企業Ａの従業員等（以下、ユーザとも記す）が使用するコンピュータである。クライアント装置２ｂは、情報処理システム１により提供される各種情報処理機能を利用しながら業務を行う企業Ｂのユーザが使用するコンピュータである。
【００１４】
クライアント装置２ａ、２ｂは、電子メールの授受を制御するメールサーバ６や、ユーザ間でドキュメントやスケジュール情報などの共有を可能にするための制御を行うコラボレーションサーバ７と通信可能に接続されている。またクライアント装置２ａ、２ｂはストレージ装置４ｔとも通信可能に接続されている。クライアント装置２ａ、２ｂのユーザは、ストレージ装置４ｔにより提供される記憶資源を利用して、ファイルをストレージ装置４ｔに格納したり、読み出したりすることもできる。
【００１５】
なお、メールサーバ６やコラボレーションサーバ７、ストレージ装置４ｔ、ネットワーク１１０は、企業Ａのユーザと企業Ｂのユーザとで共用されるが、各企業のユーザの情報は互いに相手から隔離されるように制御が行われる。
【００１６】
メールサーバ６は、ユーザ間で行われる電子メールの授受を制御するためのコンピュータである。メールサーバ６には、メールサーバ・プログラム（特許請求の範囲に記載のアプリケーションプログラムに相当する）がインストールされている。メールサーバ６は、メールクライアント・プログラムがインストールされているクライアント装置２ａ、２ｂに対して、電子メール（E-Mail）の受信、送信、検索などの機能を提供する。
【００１７】
またメールサーバ６は、クライアント装置２ａ、２ｂに電子メール機能を提供するにあたり、ユーザ間で授受される各電子メールのコンテンツを格納したファイル（以下、メールデータとも記す）など様々なファイルを、メールサーバ・プログラムが準拠する規格に従ったフォーマットで、ストレージ装置４ｔに記憶する。
【００１８】
コラボレーションサーバ７は、ユーザ間での文書の共有やプロジェクトの管理、スケジュール情報の共有などを制御するためのコンピュータである。コラボレーションサーバ７には、コラボレーションサーバ・プログラム（特許請求の範囲に記載のアプリケーションプログラムに相当する）がインストールされている。コラボレーションサーバ７は、コラボレーションクライアント・プログラムがインストールされているクライアント装置２ａ、２ｂに対して、オフィスドキュメントなどのコラボレーションサーバ・プログラムが生成したコンテンツを格納したファイル（以下、コラボレーションデータとも記す）などの格納、共有などの機能を提供する。
【００１９】
またコラボレーションサーバ７は、クライアント装置２ａ、２ｂにドキュメント管理等の機能を提供するにあたり、ドキュメントやスケジュール情報等のコンテンツを格納したファイルなど様々なファイルを、コラボレーションサーバ・プログラムが準拠する規格に従ったフォーマットで、ストレージ装置４ｔに記憶する。
ストレージ装置４ｔ、４ｓは、それぞれ、複数のハードディスクドライブ等の記録媒体を格納したディスクアレイ装置として構成される。
【００２０】
クライアント装置２は、ストレージ装置４ｔの記録媒体に記憶されるデータのバックアップや情報処理システム１の障害回復等、情報処理システム１の保守や運用管理、各種分析等を行うオペレータが使用するコンピュータである。
【００２１】
オペレータは、クライアント装置２を用いて例えばデータマイニングを行う。データマイニングを行う場合には、クライアント装置２は、情報処理システム１内に記憶されている、様々なアプリケーション・プログラムにより作成された種々のフォーマットのデータを収集する。
バックアップサーバ５は、ストレージ装置４ｔに記憶されているデータの複製をストレージ装置４ｓに記憶するバックアップ処理を行うコンピュータである。
【００２２】
詳細は後述するが、バックアップサーバ５は、例えばストレージ装置４ｔに記憶されている電子メールデータをストレージ装置４ｓにバックアップする場合には、メールサーバ６に対してメールサーバ・プログラムが生成したファイル内の各電子メールデータの送信要求を送信する。そしてバックアップサーバ５は、メールサーバ・プログラムがストレージ装置４ｔが有する記録媒体から読み出した各電子メールデータを、メールサーバ６から受信する。そしてバックアップサーバ５は、受信した電子メールデータをストレージ装置４ｓが有する記録媒体に記憶する。
【００２３】
同様に、例えばストレージ装置４ｔに記憶されているコラボレーションデータ内のコンテンツをストレージ装置４ｓにバックアップする場合には、バックアップサーバ５は、コラボレーションサーバ７に対してコラボレーションサーバ・プログラムが生成したコラボレーションデータ内の各コンテンツの送信要求を送信する。そしてバックアップサーバ５は、コラボレーションサーバ・プログラムがストレージ装置４ｔが有する記録媒体から読み出した各コンテンツを、コラボレーションサーバ７から受信する。そしてバックアップサーバ５は、受信したコンテンツをストレージ装置４ｓが有する記録媒体に記憶する。
【００２４】
コンテンツ集約サーバ３は、ストレージ装置４ｓに記憶される様々なアプリケーション・プログラムにより生成されたコンテンツを集約して、クライアント装置２に提供する機能を有するコンピュータである。
【００２５】
通常、各アプリケーション・プログラムにより生成されたコンテンツは、各アプリケーション・プログラムがそれぞれ準拠するフォーマットに従ってそれぞれファイルに格納されているため、そのままでは各ファイル内のコンテンツを統一的に読み出したり検索したりすることはできないが、本実施形態に係るバックアップサーバ５及びコンテンツ集約サーバ３が、ストレージ装置４ｓに記憶された各ファイル内のコンテンツを一意に識別可能となるような識別子（以下、グローバル識別子とも記す）を各コンテンツに付与し、クライアント装置２に対して、各アプリケーション・プログラムにより生成された各コンテンツへの統一的なアクセスを可能とする。
【００２６】
これにより、クライアント装置２は、個々のアプリケーション・プログラムに固有のプロトコルを理解する必要がなく、シングルネームスペースを実現するコンテンツ管理システムの実装が容易になる。
【００２７】
またクライアント装置２から各コンテンツへアクセスする際、アプリケーション・プログラムごとのプロトコル理解やフォーマットの変換等の処理が不要となり、データアクセス応答プログラムのみを介したアクセスとなるため、アクセスオーバヘッドが小さく、アクセス性能が高くなる。
【００２８】
コンテンツ集約サーバ３は、各コンテンツに付与した上記グローバル識別子と、各コンテンツのストレージ装置４ｓの記録媒体における記憶位置を示す記憶位置情報とを、詳しくは後述する集約データ管理テーブル（特許請求の範囲に記載のグローバル識別子管理テーブルに相当する）３５００に記憶している。
【００２９】
コンテンツ集約サーバ３は、クライアント装置２からグローバル識別子を指定したコンテンツへのアクセス要求を受信した場合には、指定されたグローバル識別子と対応付けて集約データ管理テーブル３５００に記憶されるアドレスからコンテンツを読み出してクライアント装置２に送信する。
【００３０】
ネットワーク１１０は、例えば各種のＬＡＮ（Local Area Network）やＷＡＮ(Wide Area Network)等により構成される通信路である。
【００３１】
なお、本実施形態で説明するメールサーバ・プログラム、コラボレーションサーバ・プログラムはアプリケーション・プログラムの一例であり、本実施形態はこれらのアプリケーション・プログラムに限定されるものではない。その他のアプリケーション・プログラムとしては、例えば、ＨＴＴＰ（HyperText Transfer Protocol）サーバ、リレーショナル・データベース管理システム（RDBMS）などが挙げられる。
【００３２】
またメールサーバ６とコラボレーションサーバ７（特許請求の範囲に記載の第１サーバ、第２サーバに相当する）をアプリケーションサーバ装置と総称することがある。また、コンテンツ集約サーバ３、バックアップサーバ５、メールサーバ６、コラボレーションサーバ７をサーバ装置と総称することがある。さらに、ストレージ装置４ｓ、４ｔをストレージ装置４と総称することがある。
【００３３】
図２は、本実施形態に係る情報処理システム１に関連する一部のプログラムや処理、テーブル、データ等を示す図である。
ストレージ装置４ｔにはＮＡＳ（Network Attached Storage）データ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃといったアプリケーション・データ１０が格納されている。
【００３４】
ＮＡＳデータ１０ａはストレージ装置４ｔによって管理されているファイルの集合体である。ＮＡＳデータ１０ａはＮＦＳ（Network File System）／ＣＩＦＳ（Common Interface File System）プロトコルといったファイル共有プロトコルを介して、クライアント装置２ａ、２ｂによってアクセスされる。
【００３５】
メールデータ１０ｂはメールサーバ・プログラムによって管理されているメール（メッセージ）の集合体である。コラボレーションデータ１０ｃはコラボレーション・プログラムによって管理されているドキュメントやデータの集合体である。
【００３６】
ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃに含まれるファイル、メール（メッセージ）、ドキュメント及びデータをコンテンツと総称する。コンテンツは各アプリケーションにおける管理対象である。
【００３７】
クライアント装置２は、集約データ・クライアント・プログラム２０００を実行している。集約データ・クライアント・プログラム２０００は、（１）コンテンツ集約サーバ３に対してリード要求を発行して、コンテンツ集約サーバ３が管理するコンテンツを読み出したり、（２）コンテンツ集約サーバ３に対してライト要求を発行して、コンテンツ集約サーバ３に対してコンテンツを書き込んだり、（３）コンテンツ集約サーバ３に対して削除要求を発行して、コンテンツ集約サーバ３が管理するコンテンツを削除したり、（４）コンテンツ集約サーバ３に対して検索要求を発行して、コンテンツ集約サーバ３が管理するコンテンツを検索したりする。
【００３８】
コンテンツ集約サーバ３は、リード処理３１００などの処理を実行する各種プログラムを実行している。なお、ここでは代表的な処理としてリード処理３１００を例示したが、コンテンツ集約サーバ３は、他にも各種処理（ライト処理、削除処理、検索処理など）を実行する。またコンテンツ集約サーバ３は、後述する集約データ管理テーブル３５００を格納している。
ストレージ装置４ｓは、集約データ１４や更新データ１３を格納している。集約データ１４は、バックアップファイル１１の集合体である。
【００３９】
バックアップファイル１１ａは、ストレージ装置４ｔに記憶されているＮＡＳデータ１０ａ内の各コンテンツの複製を含むファイルである。バックアップファイル１１ｂは、ストレージ装置４ｔに記憶されているメールデータ１０ｂ内の各コンテンツの複製を含むファイルである。バックアップファイル１１ｃは、ストレージ装置４ｔに記憶されているコラボレーションデータ１０ｃ内の各コンテンツの複製を含むファイルである。
更新データ１３は、クライアント装置２から送信されたライト要求（更新要求）と共に送信されたコンテンツを含むファイルである。
【００４０】
バックアップサーバ５は、バックアップカタログ（特許請求の範囲に記載の複製管理テーブルに相当する）１５を格納している。バックアップカタログ１５は、バックアップカタログ１２ａ、１２ｂ、１２ｃの集合体である。
【００４１】
バックアップカタログ１２ａは、バックアップサーバ５が、ストレージ装置４ｔに記憶されているＮＡＳデータ１０ａ内のコンテンツをストレージ装置４ｓにバックアップする際に、バックアップサーバ５により作成されるテーブルである。
【００４２】
バックアップカタログ１２ｂは、バックアップサーバ５が、ストレージ装置４ｔに記憶されているメールデータ１０ｂ内のコンテンツをストレージ装置４ｓにバックアップする際に、バックアップサーバ５により作成されるテーブルである。
【００４３】
バックアップカタログ１２ｃは、バックアップサーバ５が、ストレージ装置４ｔに記憶されているコラボレーションデータ１０ｃ内のコンテンツをストレージ装置４ｓにバックアップする際に、バックアップサーバ５により作成されるテーブルである。
【００４４】
図３は、バックアップファイル１１のデータ構造の概念図を示している。バックアップファイル１１は、アプリケーション・データ１０に含まれるコンテンツの複製（単にコンテンツと呼ぶことがある）が格納されるファイルである。
【００４５】
バックアップファイル１１はストレージ装置４ｓ内のボリューム（１つまたは複数のＨＤＤ（Hard Disk Drive）等の記録媒体により提供される記憶領域から構成される論理的な記憶領域）上に作成されたファイルシステム内に格納することができる。
【００４６】
図３に示すように、バックアップファイル１１には少なくともコンテンツのデータ１１０１を含む。また、バックアップファイル１１には、コンテンツのデータ１１０１に加えて、コンテンツのメタデータ１１０２を含むようにすることもできる。コンテンツのメタデータ１１０２にはコンテンツの作成時刻、更新時刻、サイズなどを含むように構成することができる。
【００４７】
図４は、更新データ１３のデータ構造の概念図を示している。更新データ１３には、後述するライト処理３２００において、クライアント装置２から受信したライトデータ（更新されたコンテンツ）が書き込まれる。更新データ１３はストレージ装置４ｓ内のボリューム上に作成されたファイルシステム内に格納することができる。
【００４８】
図４に示すように、更新データ１３には少なくともコンテンツのデータ１３０１を含む。また、更新データ１３には、コンテンツのデータ１３０１に加えて、コンテンツのメタデータ１３０２を含むようにすることもできる。コンテンツのメタデータ１３０２にはコンテンツの作成時刻、更新時刻、サイズなどを含むように構成することができる。
【００４９】
バックアップカタログ１２には、バックアップファイル１１に格納されたコンテンツのコンテンツ識別情報、格納位置情報（ストレージ装置４ｓの記録媒体上の記憶位置を示す記憶位置情報）、メタデータなどが格納される。バックアップカタログ１２ａ、１２ｂ、１２ｃはそれぞれ後述するＮＡＳ用／メール用／コラボレーション用のバックアップカタログ情報管理テーブル５４００、５５００、５６００から構成される。
【００５０】
集約データ管理テーブル３５００には、集約データ１４に含まれる全てのバックアップファイル１１のコンテンツを一意に識別できるグローバル・コンテンツ識別情報（グローバル識別子）とコンテンツの格納位置情報（ストレージ装置４ｓの記録媒体上の記憶位置を示す記憶位置情報）などが格納される。
【００５１】
集約データ管理テーブル３５００を用いることで、コンテンツ集約サーバ３は、クライアント装置２により指定されたグローバル・コンテンツ識別情報に対応するコンテンツのデータの格納位置を特定し、特定したコンテンツのデータをクライアント装置２に送信することができる。
【００５２】
図５は、クライアント装置２のハードウェア構成図を示している。クライアント装置２は、ＣＰＵ（Central Processing Unit）２２、メモリ２１、ＨＤＤ（Hard Disk Drive）２３、ネットワーク・インターフェース２８を内部構成要素として有し、それらが内部バス２４で接続されている。さらに、クライアント装置２には、ユーザ・インタフェースとして、ディスプレイ２５、キーボード２６及びマウス２７が接続されている。
【００５３】
クライアント装置２は、ネットワーク・インターフェース２８を介してネットワーク１１０に接続され、コンテンツ集約サーバ３と通信を行う。例えば、ネットワーク１１０は、イーサネット（登録商標）を使い、通信プロトコルとしてＴＣＰ／ＴＰ（Transmission Control Protocol/Internet Protocol）を利用することができる。
【００５４】
メモリ２１には集約データ・クライアント・プログラム２０００が記憶される。本プログラムはコンテンツ集約サーバ３に対して、コンテンツへのリード要求、ライト要求、削除要求、検索要求などといった各種処理要求を行う。メモリ２１に格納されたプログラムはＣＰＵ２２に読み込まれて実行される。
【００５５】
図６は、コンテンツ集約サーバ３のハードウェア構成図を示している。
コンテンツ集約サーバ３は、ＣＰＵ（Central Processing Unit）３２、メモリ３１、ＨＤＤ（Hard Disk Drive）３３、ネットワーク・インターフェース３８を内部構成要素として有し、それらが内部バス３４で接続されている。さらに、コンテンツ集約サーバ３には、ユーザ・インタフェースとして、ディスプレイ３５、キーボード３６及びマウス３７が接続されている。
【００５６】
コンテンツ集約サーバ３のメモリ３１には、集約データ管理テーブル更新処理３０００、リード処理３１００、ライト処理３２００、削除処理３３００、検索処理３４００といった処理を行う各種プログラムや、集約データ管理テーブル３５００、検索インデックス３６００、アプリケーション管理テーブルの複製３７００、別名管理テーブル３８００といった各種テーブルが記憶される。コンテンツ集約サーバ３のメモリ３１に格納されたプログラムはＣＰＵ３２に読み込まれて実行される。
【００５７】
検索インデックス３６００は、ストレージ装置４ｓが有する記録媒体に記憶されている各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているコンテンツのグローバル・コンテンツ識別情報と、を単語毎に対応付けて記憶したテーブルである。
【００５８】
アプリケーション管理テーブルの複製３７００は、各アプリケーション・プログラムを実行するサーバ装置のＩＰアドレスと、アプリケーション・プログラムの識別情報とを対応付けて記憶したテーブルである。詳しくは後述する。
【００５９】
別名管理テーブル３８００は、ストレージ装置４ｓに記憶されるコンテンツに対して世代ごとに一意に付与される識別情報（別名）を記録したテーブルである。
世代とは、ストレージ装置４ｔに記憶されるコンテンツの複製がストレージ装置４ｓにバックアップされた回数に応じて付与される情報である。
別名管理テーブル３８００には、コンテンツのグローバル・コンテンツ識別情報と、そのコンテンツの世代情報と、その世代の当該コンテンツに付与される別名と、が対応付けて記憶されている。
【００６０】
コンテンツ集約サーバ３はネットワーク・インターフェース３８を介してネットワーク１１０に接続され、クライアント装置２及びストレージ装置４ｓと通信を行う。
【００６１】
図７は、バックアップサーバ５のハードウェア構成を示している。
バックアップサーバ５はＣＰＵ５２、メモリ５１、ＨＤＤ５３、ネットワーク・インターフェース５８を内部構成要素として有し、それらが内部バス５４で接続されている。さらに、バックアップサーバ５には、ユーザ・インタフェースとして、ディスプレイ５５、キーボード５６及びマウス５７が接続されている。
【００６２】
バックアップサーバ５のメモリ５１はデータ読み出し・変換処理５０００やデータ書き出し処理５１００やバックアップ制御処理５２００といった処理を行う各種プログラム、及び、ＮＡＳ／メール／コラボレーション用のバックアップカタログ情報管理テーブル５４００、５５００、５６００、及び、アプリケーション管理テーブル５３００といったテーブルを記憶する。メモリ５１に格納されたプログラムはＣＰＵ５１に読み込まれて実行される。
【００６３】
バックアップサーバ５はネットワーク・インターフェース５８を介してネットワーク１１０に接続され、ストレージ装置４ｓ、メールサーバ６、コラボレーションサーバ７、ストレージ装置４ｔと通信を行う。
【００６４】
図８は、メールサーバ６のハードウェア構成を示している。
メールサーバ６はＣＰＵ６２、メモリ６１、ＨＤＤ６３、ネットワーク・インターフェース６８を内部構成要素として有し、それらが内部バス６４で接続されている。さらに、メールサーバ６には、ユーザ・インタフェースとして、ディスプレイ６５、キーボード６６及びマウス６７が接続されている。
【００６５】
メールサーバ６のメモリ６１はデータ読み出し・変換処理６０００といった処理を行う各種プログラムを記憶する。メモリ６１に格納されたプログラムはＣＰＵ６２に読み込まれて実行される。
メールサーバ６はネットワーク・インターフェース６８を介してネットワーク１１０に接続され、バックアップサーバ５及びストレージ装置４ｔと通信を行う。
【００６６】
図９は、コラボレーションサーバ７のハードウェア構成を示している。
コラボレーションサーバ７はＣＰＵ７２、メモリ７１、ＨＤＤ７３、ネットワーク・インターフェース７８を内部構成要素として有し、それらが内部バス７４で接続されている。さらに、コラボレーションサーバ７には、ユーザ・インタフェースとして、ディスプレイ７５、キーボード７６及びマウス７７が接続されている。
【００６７】
コラボレーションサーバ７のメモリ７１はデータ読み出し・変換処理７０００といった処理を行う各種プログラムを記憶する。コラボレーションサーバ７のメモリ７１に格納されたプログラムはコラボレーションサーバ７のＣＰＵ７２に読み込まれて実行される。
【００６８】
コラボレーションサーバ７はネットワーク・インターフェース７８を介してネットワーク１１０に接続され、バックアップサーバ５及びストレージ装置４ｔと通信を行う。
【００６９】
図１０は、ストレージ装置４のハードウェア構成図を示している。ストレージ装置４はストレージ装置４ｓ、４ｔの総称である。
ストレージ装置４は、ネットワーク・インターフェース４６、コントローラ４１、キャッシュメモリ４２、ディスク・インターフェース４３、ＨＤＤ４４から構成され、ＨＤＤ４４以外は内部バス４５で接続されている。ＨＤＤ４４は、ディスク・インターフェース４３に接続されている。
【００７０】
ストレージ装置４ｓは、ストレージ装置４ｓのネットワーク・インターフェース４６を介してネットワーク１１０に接続され、コンテンツ集約サーバ３及びバックアップサーバ５と通信を行う。
【００７１】
ストレージ装置４ｔは、ストレージ装置４ｔのネットワーク・インターフェース４６を介してネットワーク１１０に接続され、クライアント装置２ａ、２ｂ、バックアップサーバ５、メールサーバ６及びコラボレーションサーバ７と通信を行う。
【００７２】
ストレージ装置４ｓのＨＤＤ４４には、バックアップファイル１１及び更新データ１３が格納される。ストレージ装置４ｔのＨＤＤ４４には、ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃが格納される。
【００７３】
コントローラ４１の図示しないメモリはデータ・アクセス・プログラム４００１及びストレージ制御プログラム４００２を記憶する。コントローラ４１の図示しないＣＰＵはメモリに格納された各種プログラムを読み込んで実行する。
【００７４】
ストレージ装置４ｓはバックアップファイル１１と更新データ１３を図示しないボリュームに格納する。ストレージ装置４ｔはアプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃの総称）を図示しないボリュームに格納する。ここで、ボリュームとは１つまたは複数のＨＤＤ４４の記憶領域から構成される論理的な記憶領域である。
【００７５】
ストレージ装置４は、データ・アクセスプログラム４００１を実行し、ボリューム内のデータにアクセスするためにデータ・アクセス機能を提供する。例えば、ストレージ装置４は、ＳＣＳＩ(Small Computer System Interface)や、ＮＦＳ(Network File System)などのデータ・アクセス用のプロトコルを使って、サーバ装置に対してデータへのアクセス手段を提供する。
【００７６】
また、ストレージ装置４は、ストレージ制御プログラム４００２を実行し、当該ストレージ装置４の構成を変更したり、ボリュームのコピーを取得したりするためのストレージ制御機能をサーバ装置に提供する。サーバ装置は、図示しないストレージ制御プログラムを実行し、ストレージ装置４の構成情報参照や変更の要求、ボリュームのコピー作成要求などをストレージ装置４に要求する。ストレージ制御機能は、要求内容に基づいて処理を行う。
【００７７】
図１１は、第１の実施形態における情報処理システム１の概念図を示している。
図１１に示すように、情報処理システム１は、集約データ・クライアント・プログラム２０００、リード処理３１００、集約データ管理テーブル３５００、集約データ１４（バックアップファイル１１の集合体）、アプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）、バックアップカタログ群１５（バックアップカタログ１２ａ、１２ｂ、１２ｃの集合体）を含む。
【００７８】
第１実施形態の情報処理システム１が行う処理を、以下の３つの部分に分けて説明する。即ち、（ａ）バックアップ、（ｂ）集約データ管理テーブル更新、（ｃ）コンテンツ・アクセスの３つの処理部分である。
【００７９】
＜（ａ）バックアップ＞
バックアップ処理は、バックアップサーバ５が、ストレージ装置４ｔが有する記録媒体に記録されている各ファイル内のコンテンツの複製をストレージ装置４ｓが有する記録媒体に記憶する処理である。
【００８０】
バックアップの処理部分においては、バックアップサーバ５は、アプリケーションデータ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）に含まれるコンテンツの複製をバックアップファイル１１に格納し（図１１の「(１)−ａコンテンツの複製」に対応）、それに対応してバックアップカタログ１２の内容を更新する（図１１の「(１)−ｂバックアップカタログ更新」に対応）。
【００８１】
ＮＡＳデータ１０ａに関する、バックアップの処理部分についての処理内容概略は以下のとおりである。まず、バックアップサーバ５はＮＡＳデータ１０ａのコンテンツのデータ（及びメタデータ）を読み出し、バックアップファイル１１ａに格納する。次に、バックアップサーバ５は格納されたコンテンツのコンテンツ識別情報、格納位置情報、メタデータをバックアップカタログ１２ａに追記する。
【００８２】
また、メールデータ１０ｂに関する、バックアップの処理部分の処理内容概略は以下のとおりである。まず、メールサーバ６はメールデータ１１ｂのコンテンツのデータ（及びメタデータ）を読み出し、バックアップサーバ５に送信する。次に、バックアップサーバ５は受信したコンテンツのデータ（及びメタデータ）をバックアップファイル１０ｂに格納する。最後に、格納されたコンテンツのコンテンツ識別情報、格納位置情報、メタデータをバックアップカタログ１２ｂに追記する。
【００８３】
コラボレーションデータ１０ｃに関する、バックアップの処理部分の処理内容概略は以下のとおりである。まず、コラボレーションサーバ７はコラボレーションデータ１０ｃのコンテンツのデータ（及びメタデータ）を読み出し、バックアップサーバ５に送信する。次に、バックアップサーバ５は受信したコンテンツのデータ（及びメタデータ）をバックアップファイル１１ｃに格納する。最後に、格納されたコンテンツのコンテンツ識別情報、格納位置情報、メタデータをバックアップカタログ１２ｃに追記する。
【００８４】
バックアップの処理部分で行われる処理は複数のコンテンツに対して実施される。複数のコンテンツの選び方の違いにより、フルバックアップと増分バックアップの２種類が存在する。フルバックアップ、増分バックアップは後述するバックアップ制御処理５２００に相当する。
フルバックアップでは、アプリケーション・データ１０に含まれる全てのコンテンツに対して、バックアップの処理部分で処理が実施される。
増分バックアップでは前回のフルバックアップ或いは増分バックアップ以降に追加・更新されたコンテンツのみに対してバックアップの処理部分で処理が実施される。
【００８５】
具体的には、バックアップサーバ５は、バックアップ処理を実行する毎に、バックアップ処理を実行した時刻をバックアップ管理テーブル（不図示）に記録しており、新たにバックアップ処理を実行する際には、前回バックアップを実行した時刻と、ストレージ装置４ｓが有する記録媒体に記憶されている各コンテンツに記録されているコンテンツの更新時刻と、を比較し、前回実行したバックアップ処理の後に更新されたコンテンツに対してのみバックアップ処理を行う。
このように増分バックアップを行うことにより、追加・更新されたコンテンツのみが複製されるため、バックアップ処理時間を短縮することができる。
なお、増分バックアップを行う場合には、削除されたコンテンツに関する情報もバックアップカタログに記録する。
【００８６】
＜（ｂ）集約データ管理テーブル更新＞
集約データ管理テーブル更新の処理部分においては、コンテンツ集約サーバ３は、バックアップカタログ１５内のバックアップカタログ１２に含まれるエントリの情報に基づいて、集約データ管理テーブル３５００に新しいエントリを追加する（これをエントリ追加処理と呼ぶ）。本処理は図１１の(２)集約データ管理テーブル更新に対応する。
【００８７】
追加されるエントリにはグローバル・コンテンツ識別情報、コンテンツの格納位置情報、アクセス制御情報などが含まれる。各コンテンツのグローバル・コンテンツ識別情報は、当該エントリに対応するアプリケーション（ＮＡＳ、メール、コラボレーション）の種類に応じたアプリケーション識別子、及び、バックアップカタログ１２のエントリに含まれるコンテンツ識別情報を、コンテンツ毎に文字列として例えば連結することで生成する。
【００８８】
フルバックアップ方式でバックアップ処理が行われる場合は、バックアップカタログ１５内のバックアップカタログ１２に含まれる全てのエントリに対して前述のエントリ追加処理が行われる。
【００８９】
増分バックアップ方式でバックアップ処理が行われる場合は、バックアップカタログ群１５内のバックアップカタログ１２に含まれるエントリのうち、前回のフルバックアップ或いは増分バックアップ以降に追加されたエントリに対して前述のエントリ追加処理が行われる。増分バックアップの場合は、必要最小限のエントリに対してのみ処理が行われるため、処理時間を短縮することができる。
【００９０】
エントリ追加処理が完了すると、コンテンツ集約サーバ３は、集約データ管理テーブル３５００の各エントリのグローバル・コンテンツ識別情報を用いて、集約データ１４内のバックアップファイル１１に含まれるすべてのコンテンツの格納位置情報を特定できるようになる。
集約データ管理テーブル更新の処理に関する更に詳細な説明は後述する。
【００９１】
＜（ｃ）コンテンツ・アクセス＞
コンテンツ・アクセスの処理部分においては、まず集約データ・クライアント・プログラム２０００を実行するクライアント装置２が、グローバル・コンテンツ識別情報を指定したコンテンツのアクセス要求をコンテンツ集約サーバ３に送信する。そしてコンテンツ集約サーバ３が、上記アクセス要求に応じて、グローバル・コンテンツ識別情報と対応付けて集約データ管理テーブル３５００に記憶されている格納位置情報により特定される記憶位置に記憶されているコンテンツに対するアクセスを行う。
本処理は、図１１における、（３）リード要求、（４）データ格納位置情報参照、（５）データ読み出し、（６）リード応答に対応する。
【００９２】
具体的には、まず、集約データ・クライアント・プログラム２０００はグローバル・コンテンツ識別情報を指定して、コンテンツ集約サーバ３に対してリード要求を送信する（（３）のリード要求）。
【００９３】
次に、リード要求に対して、リード処理３１００のプログラムは集約データ管理テーブル３５００を参照し、指定されたグローバル・コンテンツ識別情報に対応する格納位置情報を特定する（（４）データ格納位置情報参照）。
【００９４】
次に、リード処理３１００のプログラムは特定した格納位置情報に基づいてコンテンツのデータをバックアップファイル１１から読み出す（（５）データ読み出し）。
そして、リード処理３１００のプログラムは読み出したデータを集約データ・クライアント・プログラム２０００に送信する（（６）リード応答）。
【００９５】
なお、図１１の説明においては、リード処理を例にとって実施形態の概念を説明したが、リード処理以外の処理に関しては後述のフローチャートの説明において詳細に説明するものとする。また、前述の（６）リード応答の説明においては、集約データ・クライアント・プログラム２０００が動作するクライアント装置２とリード処理３１００のプログラムが動作するコンテンツ集約サーバ３との間の通信プロトコルを明示的に記載しなかったが、通信プロトコルとしてはファイル共有プロトコルのＣＩＦＳ（Common Internet File Protocol）／ＮＦＳ（Network File System）やＨＴＴＰ（Hypertext Transfer Protocol）などを用いることができる。
【００９６】
図１２は第１実施形態におけるアクセス制御の概念図を示している。
アクセス制御の概念図を説明する前にまず、アクセス制御情報について説明する。ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃといったアプリケーション・データ１０に対するアクセスにおいては、通常、アクセス制御情報に基づいてアクセス制御が行われる。
【００９７】
アクセス制御により、許可されたユーザのみしか、アプリケーション・データ１０内のコンテンツにアクセスできないようにすることができる。アクセス制御情報はコンテンツのメタデータに含まれ、また、前述の集約データ管理テーブル更新の処理において集約データ管理テーブル（特許請求の範囲に記載のアクセス管理テーブルに相当する）３５００に登録される。
【００９８】
次にアクセス制御の概念図について説明する。図１２の(３)、(４)’、(５)、(６)の処理は、それぞれ前述のコンテンツ・アクセスの処理部分 (３)、(４)、(５)、(６) の処理に対応する。処理(４)’においては、前述した(４)の処理に代えて以下のような処理を行う。即ち、データ格納位置情報を特定する処理に加えて、アクセス制御情報を参照して、アクセスを許可してよいかを判定する処理を行う。
【００９９】
具体例を以下に述べる。図１２は、情報処理システム１に企業Ａおよび企業Ｂのアプリケーション・データ１０が存在し、それらアプリケーション・データ１０から企業Ａおよび企業Ｂの集約データ１４が生成され、生成された集約データ１４にあるユーザがリード・アクセスを行う場合を示している。
【０１００】
図１２にはまた、アクセス制御情報の一例１０００１が示してある。この例では、企業Ａの集約データ１４に含まれるコンテンツＡ１にアクセスできるアクセス権Ａ１と、企業Ｂの集約データ１４に含まれるコンテンツＢ１にアクセスできるアクセス権Ｂ１が存在する。
【０１０１】
(４)’の処理により、アクセス権Ａ１を持つが、アクセス権Ｂ１を持たないユーザは、コンテンツＡ１に対するアクセスを許可され、コンテンツＢ１に対するアクセスを拒否される。
【０１０２】
次に第１実施形態における各種テーブルについて説明する。
図１３は、ＮＡＳ用のバックアップカタログ情報管理テーブル５４００の構成例を示している。
ＮＡＳ用のバックアップカタログ情報管理テーブル５４００は、ＮＡＳデータ１０ａ内に含まれるコンテンツの複製が格納されたバックアップファイルであるバックアップファイル１１ａに含まれるコンテンツに関する情報が格納されるテーブルである。
【０１０３】
ＮＡＳ用のバックアップカタログ情報管理テーブル５４００は、コンテンツ識別情報５４０１、世代情報５４０２、前世代との関連５４０３、格納位置情報５４０４、メタデータ５４０５から構成される。
【０１０４】
コンテンツ識別情報５４０１は共有名５４０１ａ、ファイルパス５４０１ｂから構成される。格納位置情報５４０４はオフセット５４０４ａ、データ長５４０４ｂから構成される。メタデータ５４０５は更新時刻５４０５ａ、アクセス制御情報５４０５ｂから構成される。
【０１０５】
以下のバックアップカタログ情報管理テーブル５４００の説明において、バックアップカタログ情報管理テーブル５４００のあるエントリで管理されるコンテンツを当該コンテンツと呼ぶ。
【０１０６】
コンテンツ識別情報５４０１は、ＮＡＳデータ１０ａに対するバックアップファイル１１ａ内に含まれるある世代のコンテンツを一意に識別するための情報である。共有名５４０１ａはＮＡＳデータ１０ａの管理単位である。ある共有名には複数のコンテンツが含まれる。ファイルパス５４０１ｂは、ある共有名内でコンテンツを一意に識別するための識別子である。
【０１０７】
世代情報５４０２は、何回目のバックアップ制御処理５２００の実行によってバックアップされたコンテンツであるかを示す情報であり、「世代１」「世代２」「世代３」等というような識別子を持つ。バックアップ制御処理５２００については後述する。
【０１０８】
前世代との関連５４０３は、当該コンテンツと前世代との関連を示す情報である。例えば、世代情報５４０２が「世代２」のコンテンツに対しては、世代情報「世代１」との関連が示される。前世代との関連５４０３が持つ値は、例えば「追加」、「更新」、「削除」のいずれかである。
【０１０９】
「追加」は、当該コンテンツが、前世代に対応するバックアップ制御処理５２００の実行以降にＮＡＳデータ１０ａに追加されたコンテンツであることを示す。「更新」は、当該コンテンツが、前世代に対応するバックアップ制御処理５２００の実行以降に更新されたコンテンツであることを示す。「削除」は、当該コンテンツが、前世代に対応するバックアップ制御処理５２００の実行以降に削除されたコンテンツであることを示す。
【０１１０】
格納位置情報５４０４は、当該コンテンツに関しての、バックアップファイル１１ａ内での格納位置に関する情報である。オフセット５４０４ａは当該コンテンツのバックアップファイル１１ａ内でのオフセットを示す。削除されたコンテンツに対してはオフセット５４０４ａに無効値である「Ｎ／Ａ」が指定される。
データ長５４０４ｂは当該コンテンツのデータ長を示す。削除されたコンテンツに対してはデータ長５４０４ｂに無効値である「Ｎ／Ａ」が指定される。
メタデータ５４０５は、当該コンテンツに関する情報である。メタデータ５４０５には更新時刻５４０５ａ、アクセス制御情報５４０５ｂが含まれる。
【０１１１】
メタデータ５４０５には更新時刻５４０５ａに加えて、生成時刻、最終アクセス時刻などが含まれていてもよい。更新時刻は当該コンテンツが更新された時刻を示す。生成時刻は当該コンテンツが生成された時刻を示す。最終アクセス時刻は当該コンテンツに対して直近にアクセスされた時刻を示す。削除されたコンテンツに対しては更新時刻５４０５ａに無効値である「Ｎ／Ａ」が指定される。
【０１１２】
アクセス制御情報５４０５ｂには、当該コンテンツに対してアクセス許可を持つユーザのユーザ識別子、および、当該コンテンツに対してアクセス許可を持つグループのグループ識別子が含まれる。削除されたコンテンツに対してはアクセス情報５４０５ｂに無効値である「Ｎ／Ａ」が指定される。
【０１１３】
図１３の例では、共有名５４０１ａ、ファイルパス５４０１ｂ、世代情報５４０２の値としてそれぞれ「ＳｈａｒｅＡ」、「／ｄｉｒＡ／ｆｉｌｅＡ」、「世代１」を持つコンテンツは、前世代との関連５４０３、オフセット５４０４ａ、データ長５４０４ｂの値としてそれぞれ「追加」、「０」、「４０９６」の値を持つことを示している。
【０１１４】
また、当該コンテンツに対してアクセス許可を持つユーザのユーザ識別子は「ＵｓｅｒＡ」であり、当該コンテンツに対してアクセス許可を持つグループのグループ識別子は「ＧｒｏｕｐＡ」である。図示していないが、更新時刻５４０５ａは、「２０１０／１０／１０  １９：３０」のような値を持つ。
【０１１５】
図１４は、メール用のバックアップカタログ情報管理テーブル５５００の構成例を示している。
メール用のバックアップカタログ情報管理テーブル５５００は、メールデータ１０ｂ内に含まれるコンテンツの複製が格納されたバックアップファイルであるバックアップファイル１１ｂに含まれるコンテンツに関する情報が格納されるテーブルである。
【０１１６】
メール用のバックアップカタログ情報管理テーブル５５００には、コンテンツ識別情報５５０１、世代情報５５０２、前世代との関連５５０３、格納位置情報５５０４、メタデータ５５０５から構成される。コンテンツ識別情報５５０１はアカウント情報５５０１ａ、メールＩＤ５５０１ｂから構成される。格納位置情報５５０４はオフセット５５０４ａ、データ長５５０４ｂから構成される。メタデータ５５０５は更新時刻５５０５ａ、アクセス制御情報５４０５ｂから構成される。
【０１１７】
コンテンツ識別情報５５０１は、メールデータ１０ｂに対するバックアップファイル１１ｂ内に含まれるある世代のコンテンツを一意に識別するための情報である。アカウントはメールデータ１０ｂの管理単位である。あるアカウントには複数のメール（コンテンツ）が含まれる。メールＩＤ５５０１ｂはあるアカウントに含まれるコンテンツ内でコンテンツを一意に識別するための識別子である。
【０１１８】
世代情報５５０２、前世代との関連５５０３、格納位置情報５５０４、メタデータ５５０５はそれぞれ世代情報５４０２、前世代との関連５４０３、格納位置情報５４０４、メタデータ５４０５と同様であるので説明を省略する。
【０１１９】
図１４の例では、アカウント情報５５０１ａ、メールＩＤ５５０１ｂ、世代情報５５０２の値としてそれぞれ「ＵｓｅｒＡ」、「Ｍａｉｌ１」、「世代１」を持つコンテンツは、前世代との関連５５０３、オフセット５５０４ａ、データ長５５０４ｂの値としてそれぞれ「追加」、「０」、「４０９６」の値を持つことを示している。
【０１２０】
また、当該コンテンツに対してアクセス許可を持つユーザのユーザ識別子は「ＵｓｅｒＡ」であり、当該コンテンツに対してアクセス許可を持つグループのグループ識別子は「ＧｒｏｕｐＡ」である。
【０１２１】
図１５は、コラボレーション用のバックアップカタログ情報管理テーブル５６００の構成例を示している。
コラボレーション用のバックアップカタログ情報管理テーブル５６００は、コラボレーションデータ１０ｃ内に含まれるコンテンツの複製が格納されたバックアップファイルであるバックアップファイル１１ｃに含まれるコンテンツに関する情報が格納されるテーブルである。
【０１２２】
コラボレーション用のバックアップカタログ情報管理テーブル５６００は、コンテンツ識別情報５６０１、世代情報５６０２、前世代との関連５６０３、格納位置情報５６０４、メタデータ５６０５から構成される。コンテンツ識別情報５６０１はプロジェクト情報５６０１ａ、ファイルパス５６０１ｂから構成される。格納位置情報５６０４はオフセット５６０４ａ、データ長５６０４ｂから構成される。メタデータ５６０５は更新時刻５６０５ａ、アクセス制御情報５６０５ｂから構成される。
【０１２３】
コンテンツ識別情報５６０１は、コラボレーションデータ１０ｃに対するバックアップファイル１１ｃ内に含まれある世代のコンテンツを一意に識別するための情報である。プロジェクトはコラボレーションデータ１０ｃの管理単位である。あるプロジェクトには複数のコンテンツが含まれる。ファイルパス５６０１ｂはあるプロジェクトに含まれるコンテンツ内でコンテンツを一意に識別するための識別子である。
【０１２４】
世代情報５６０２、前世代との関連５６０３、格納位置情報５６０４、メタデータ５６０５はそれぞれ世代情報５４０２、前世代との関連５４０３、格納位置情報５４０４、メタデータ５４０５と同様であるので説明を省略する。
【０１２５】
図１５の例では、プロジェクト情報５６０１ａ、ファイルパス５６０１ｂ、世代情報５６０２の値としてそれぞれ「ＰｒｏｊｅｃｔＡ」、「／ｄｉｒＡ／ｆｉｌｅＡ」、「世代１」を持つコンテンツは、前世代との関連５６０３、オフセット５６０４ａ、データ長５６０４ｂの値としてそれぞれ「追加」、「０」、「４０９６」の値を持つことを示している。
【０１２６】
また、当該コンテンツに対してアクセス許可を持つユーザのユーザ識別子は「ＵｓｅｒＡ」であり、当該コンテンツに対してアクセス許可を持つグループのグループ識別子は「ＧｒｏｕｐＡ」である。
【０１２７】
図１６は、集約データ管理テーブル３５００の構成例を示している。
集約データ管理テーブル３５００は、集約データ１４内（バックアップファイル１１ａ、１１ｂ、１１ｃ内）に含まれるコンテンツに関する情報が格納されるテーブルである。
【０１２８】
集約データ管理テーブル３５００は、グローバル・コンテンツ識別情報３５０１、世代情報３５０２、格納位置情報３５０３、メタデータ３５０４から構成される。
【０１２９】
格納位置情報３５０３はファイル３５０３ａ、オフセット３５０３ｂ、データ長３５０３ｃから構成される。メタデータ３５０４は更新時刻３５０４ａ、アクセス制御情報３５０４ｂから構成される。
以下の集約データ管理テーブル３５００の説明において、集約データ管理テーブル３５００のあるエントリに対応するコンテンツを当該コンテンツと呼ぶ。
【０１３０】
グローバル・コンテンツ識別情報３５０１は、クライアント装置２が、集約データ１４内（バックアップファイル１１ａ、１１ｂ、１１ｃ内）に含まれるコンテンツを一意に識別するための識別子である。
【０１３１】
世代情報３５０２は、何回目のバックアップ制御処理５２００の実行によってバックアップされたコンテンツであるかを示す情報であり、「世代１」「世代２」「世代３」等というような識別子を持つ。バックアップ制御処理５２００については後述する。
【０１３２】
格納位置情報３５０３は、ストレージ装置４ｓの記録媒体上での当該コンテンツの記憶位置を示す情報であり、当該コンテンツに関しての集約データ１４内あるいは更新データ１３内での格納位置に関する情報である。
【０１３３】
ファイル３５０３ａはバックアップファイル１１或いは更新データ１３が格納されたファイルを指定する識別子である。オフセット３５０３ｂは当該コンテンツのバックアップファイル１１或いは更新データ１３内でのオフセットを示す。データ長３５０３ｃは当該コンテンツのデータ長を示す。
メタデータ３５０４の内容はＮＡＳ用のバックアップカタログ情報管理テーブル５４００のメタデータ５４０５と同様であるため、説明を省略する。
【０１３４】
図１６の例では、グローバル・コンテンツ識別情報３５０１が「／ＮＡＳ／ＳｈａｒｅＡ／ｄｉｒＡ／ｆｉｌｅＡ」であり、世代情報３５０２が「世代１」であるエントリは、ファイル３５０３ａ、オフセット３５０３ｂ、データ長３５０３ｃの値としてそれぞれ「Ｆｉｌｅ＿ａ」、「０」、「４０９６」の値を持つことを示している。
【０１３５】
また、当該エントリに対応するコンテンツに対してアクセス許可を持つユーザのユーザ識別子は「ＵｓｅｒＡ」であり、当該コンテンツに対してアクセス許可を持つグループのグループ識別子は「ＧｒｏｕｐＡ」である。
【０１３６】
図１７は、別名管理テーブル３８００の構成例を示している。
別名管理テーブル３８００は、集約データ管理テーブル３５００のグローバル・コンテンツ識別情報３５０１に対する別名を管理するテーブルである。
別名管理テーブル３８００はグローバル・コンテンツ識別情報の別名（詳細グローバル識別子）３８０１、対応グローバル・コンテンツ識別情報３８０２、対応世代情報３８０３から構成される。
【０１３７】
グローバル・コンテンツ識別情報の別名３８０１には、対応グローバル・コンテンツ識別情報３８０２及び対応世代情報３８０３によって一意に識別されるコンテンツの別名が保持される。
【０１３８】
つまり、別名管理テーブル３８００には、グローバル・コンテンツ識別情報と、グローバル・コンテンツ識別情報に対応付けられている世代情報と、別名と、が各グローバル・コンテンツ識別情報の世代情報毎に対応付けて記憶されている。
【０１３９】
例えば、図１７の例においては、対応グローバル・コンテンツ識別情報３８０２の値「／ＮＡＳ／ＳｈａｒｅＡ／ｄｉｒＡ／ｆｉｌｅＡ」および対応世代情報３８０３の値「世代１」によって一意に識別されるコンテンツには、「／．ｓｎａｐ／２０１０−１０−８／ＮＡＳ／ＳｈａｒｅＡ／ｄｉｒＡ／ｆｉｌｅＡ」という、フルバックアップ或いは増分バックアップを実行した日時を含むような別名が付与されていることを示している。このコンテンツは、図１６に示す集約データ管理テーブル３５００の第一エントリに記載されたコンテンツに対応する。
【０１４０】
図１８はアプリケーション管理テーブル５３００の構成例を示している。
アプリケーション管理テーブル５３００はバックアップ制御処理５２００の処理対象となっているアプリケーションのリストを管理するテーブルであり、アドレス５３０１、アプリケーション種別５３０２、対応文字列５３０３の各欄から構成される。
【０１４１】
アドレス５３０１はアプリケーション・プログラムを識別するための識別子であり、例えば、アプリケーション・プログラムを実行するサーバのＩＰアドレスから構成される。なお、アドレス５３０１にはポート番号が含まれていてもよい。
【０１４２】
アプリケーション種別５３０２はアプリケーションの種類を示す。アプリケーション種別５３０２は例えば、「ＮＡＳ」、「メール」、「コラボレーション」というような値を保持する。
【０１４３】
対応文字列５３０３はアプリケーション種別５３０２に対応する文字列を示す。例えば、アプリケーション種別５３０２が「ＮＡＳ」、「メール」、「コラボレーション」であれば、対応文字列５３０３はそれぞれ「ＮＡＳ」「Ｍａｉｌ」「Ｃｏｌｌａｂｏｒａｔｉｏｎ」である。この対応文字列は集約データ管理テーブル更新処理３０００のＳ３００６においてグローバル・コンテンツ識別情報を生成する際に使用される。
【０１４４】
なお、アプリケーション管理テーブル５３００の複製が、コンテンツ集約サーバ３に記憶されるが、アプリケーション管理テーブルの複製３７００は、アプリケーション管理テーブル５３００の複製であり、同一の構成を有するため、説明を省略する。
【０１４５】
次に、第１実施形態における情報処理システム１が実行する各種処理の流れについて説明する。以下の説明で主体が省略されている場合、当該主体は前述のＣＰＵ、コントローラ等である。Ｓはステップを表す。
【０１４６】
図１９はバックアップ制御処理５２００の処理フローの一例を示している。
バックアップ制御処理５２００は、例えば事前に決められた時間（例えば、毎日２４：００など）に、バックアップサーバ５上の図示しないバックアップ・スケジュール・プログラムにより起動され、アプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）に含まれるコンテンツに対してフルバックアップ或いは増分バックアップを行う処理である。
【０１４７】
フルバックアップを実行するか増分バックアップを実行するかは、事前にクライアント装置２のオペレータ等により設定されており、バックアップ処理が起動される際に、バックアップ・スケジュール・プログラムは設定内容に応じてバックアップ処理を実行する。
バックアップサーバ５は、Ｓ５２０１において、アプリケーション管理テーブル５３００に含まれる全てのアプリケーションに対して以下の処理を実行する。
バックアップサーバ５は、Ｓ５２０２では、処理対象とするアプリケーション（当該アプリケーション）をひとつ選択する。
【０１４８】
バックアップサーバ５は、Ｓ５２０３では、今回のバックアップ制御処理５２００でフルバックアップを実行するのか、増分バックアップを実行するのかを判定する。
【０１４９】
バックアップサーバ５は、フルバックアップを実行するのであれば（Ｓ５２０３「フル」）、Ｓ５２０４で、処理対象とするアプリケーションのアプリケーションプログラムを実行するサーバ装置に対して、そのアプリケーションプログラムが生成した全てのファイル内の全てのコンテンツの送信要求を送信する。
【０１５０】
具体的には、バックアップサーバ５は、ＮＡＳデータ１０ａに対するバックアップの場合はバックアップサーバ５、メールデータ１０ｂに対するバックアップの場合はメールサーバ６、コラボレーションデータ１０ｃに対するバックアップの場合はコラボレーションサーバ７に対して、コンテンツの送信要求を送信する。
【０１５１】
バックアップサーバ５は、増分バックアップを実行するのであれば（Ｓ５２０３「増分」）、Ｓ５２０５で、処理対象とするアプリケーションのアプリケーションプログラムを実行するサーバ装置に対して、当該アプリケーションのアプリケーション・データ１０に含まれるコンテンツのうち、前回のバックアップ制御処理５２００の実行以降に、追加・更新・削除されたコンテンツ（増分コンテンツ）の送信要求を送信する。
そして、上記送信要求を受信したサーバ装置は、処理対象とするコンテンツ（当該コンテンツ）をひとつ選択する（Ｓ５２０６）。
【０１５２】
サーバ装置は、Ｓ５２０７では、当該コンテンツを対象として処理を行うようデータ読み出し・変換処理５０００、６０００、７０００（それぞれアプリケーションの種別がＮＡＳ、メール、コラボレーションの場合）のプログラムに指示する。データ読み出し・変換処理５０００、６０００、７０００の具体的な処理内容については後述する。
【０１５３】
そうするとバックアップサーバ５は、Ｓ５２０８では、当該コンテンツのコンテンツ識別情報及びメタデータをデータ読み出し・変換処理５０００、６０００、７０００（それぞれアプリケーションの種別がＮＡＳ、メール、コラボレーションの場合）のプログラムから受信する。
バックアップサーバ５は、Ｓ５２０９では、当該コンテンツのデータに関する格納位置情報をデータ書き出し処理５１００のプログラムから受信する。
【０１５４】
バックアップサーバ５は、Ｓ５２１０では、コンテンツに関する各種情報をバックアップカタログに登録する。具体的には、処理対象のアプリケーションがＮＡＳ、メール、コラボレーションであれば、それぞれ、ＮＡＳ用のバックアップカタログ情報管理テーブル５４００、メール用のバックアップカタログ情報管理テーブル５５００、コラボレーション用のバックアップカタログ情報管理テーブル５６００にエントリを追加する。
【０１５５】
追加エントリのコンテンツ識別情報５４０１、５５０１、５６０１には、受信したコンテンツ識別情報を設定する。追加エントリの世代情報５４０２、５５０２、５６０２には、今回のバックアップ制御処理５２００の実行に対応する世代情報（「世代１」「世代２」など）を設定する。
【０１５６】
具体的には、バックアップサーバ５は、受信したコンテンツ識別情報と同一のコンテンツ識別情報が既にバックアップカタログに記憶されている場合には、当該コンテンツ識別情報と対応付けられている世代情報のうちの最新の世代情報を１世代分繰り上げて新たな世代情報を生成し、世代情報５４０２、５５０２、５６０２に格納する。
【０１５７】
追加エントリの前世代との関連５４０３、５５０３、５６０３には、当該コンテンツが前回のバックアップ制御処理５２００以降に追加、更新、削除されたのであればそれぞれ「追加」、「更新」、「削除」を設定する。
【０１５８】
バックアップサーバ５は、追加エントリの格納位置情報５４０４、５５０４、５６０４には受信した格納位置情報を設定する。バックアップサーバ５は、追加エントリのメタデータ５４０５、５５０５、５６０５には受信したメタデータを設定する。
【０１５９】
バックアップサーバ５は、Ｓ５２１１では、サーバ装置に対して、未処理のコンテンツが存在するか否かを問い合わせる。サーバ装置は、Ｓ５２１１では、未処理のコンテンツが存在するかを判定し、存在するのであれば（Ｓ５２１１「Ｙ」）、Ｓ５２０６に進み、存在しないのであれば（Ｓ５２１１「Ｎ」）、Ｓ５２１２に進む。
サーバ装置は、未処理のコンテンツが存在しないのであれば、バックアップサーバ５に対し、その旨の情報を送信する。
【０１６０】
そうすると、バックアップサーバ５は、Ｓ５２１２では、未処理のアプリケーションが存在するかを判定し、存在するのであれば（Ｓ５２１２「Ｙ」）、Ｓ５２０２に進み、存在しないのであれば（Ｓ５２１２「Ｎ」）、バックアップ制御処理５２００を終了する。
【０１６１】
図２０は、図１９に示したＳ５２０７のデータ読み出し・変換処理５０００の処理フローの一例を示している。データ読み出し・変換処理６０００、７０００の処理フローもデータ読み出し・変換処理５０００の処理フローと同様である。
サーバ装置は、Ｓ５００１では、バックアップ制御処理５２００から上記処理の指示を受理する。
【０１６２】
サーバ装置は、Ｓ５００２では、アプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）に含まれるコンテンツ一件に関してデータとメタデータを読み出す。
【０１６３】
サーバ装置は、Ｓ５００３では、読み出したコンテンツのデータを書き出しフォーマットに変換する。この変換により読み出したコンテンツのフォーマットがアプリケーション固有のフォーマットから共通フォーマットに変換される。
【０１６４】
サーバ装置は、Ｓ５００４では、変換したコンテンツのデータ及び読み出したメタデータをデータ書き出し処理５１００のプログラムに送信する。データ書き出し処理５１００については、後述する。
バックアップサーバ５は、Ｓ５００５では、処理対象のコンテンツのコンテンツ識別情報およびメタデータをバックアップ制御処理５２００のプログラムに送信する。
【０１６５】
図２１は、図２０で示したＳ５００４のデータ書き出し処理５１００の処理フローの一例を示している。
バックアップサーバ５は、Ｓ５１０１では、データ読み出し・変換処理５０００、６０００、７０００からコンテンツのデータ及びメタデータを受領する。
【０１６６】
バックアップサーバ５は、Ｓ５１０２では、バックアップファイルに受領したコンテンツのデータ及びメタデータを格納する。具体的には、コンテンツがＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃのコンテンツであれば、それぞれバックアップファイル１１ａ、１１ｂ、１１ｃに受領したコンテンツのデータ及びメタデータを格納する。
【０１６７】
バックアップサーバ５は、Ｓ５１０３では、Ｓ５１０２におけるデータの格納位置情報（オフセット、データ長）を特定し、特定したデータの格納位置情報をバックアップ制御処理５２００のプログラムに送信する。
【０１６８】
以上のようにして、ストレージ装置４ｔが有する記録媒体に記憶されている各ファイル内のコンテンツの複製をストレージ装置４ｓが有する記録媒体に記憶するバックアップ処理が行われる。
【０１６９】
図２２は、コンテンツ集約サーバ３により実行される集約データ管理テーブル更新処理３０００の処理フローの一例を示している。集約データ管理テーブル更新処理３０００はバックアップ制御処理５２００が完了した後に実行される。
【０１７０】
コンテンツ集約サーバ３は、Ｓ３００１では、ストレージ装置４ｓに記憶されているバックアップカタログ１５（具体的には、バックアップカタログ１２ａ、１２ｂ、１２ｃ）をコンテンツ集約サーバ３のＨＤＤ３３にコピーする。
【０１７１】
コンテンツ集約サーバ３は、Ｓ３００２では、アプリケーション管理テーブルの複製３７００に含まれるすべてのアプリケーションに対してＳ３００３以降の処理を実施する。
コンテンツ集約サーバ３は、Ｓ３００３では、アプリケーション管理テーブルの複製３７００からアプリケーションをひとつ選択する。
【０１７２】
コンテンツ集約サーバ３は、Ｓ３００４では、選択したアプリケーションに対応するバックアップカタログ情報管理テーブルを特定し（バックアップカタログ情報管理テーブル５４００、５５００、５６００のいずれか）、特定したバックアップカタログ情報管理テーブルに含まれるエントリのうち、世代情報（世代情報５４０２、５５０２、５６０２）が最新世代（世代“Ｎ”のＮが最も大きい世代）であるエントリに対してＳ３００５以降の処理を実施する。
【０１７３】
コンテンツ集約サーバ３は、Ｓ３００５では、特定したバックアップカタログ情報管理テーブル（５４００、５５００、５６００のいずれか）のエントリをひとつ選択する（対象エントリと呼ぶ）。
【０１７４】
コンテンツ集約サーバ３は、Ｓ３００６では、アプリケーションの種別および対象エントリのコンテンツ識別情報からグローバル・コンテンツ識別情報を生成する。
【０１７５】
具体的には、コンテンツ集約サーバ３は、まず、処理対象のアプリケーションのアプリケーション種別に基づき、アプリケーションに対応する文字列（対応文字列５３０３）を特定する。次に、コンテンツ集約サーバ３は、対象エントリのコンテンツ識別情報（コンテンツ識別情報５４０１、５５０１、５６０１）に含まれるエントリ（ＮＡＳの場合は共有名５４０１ａ及びファイルパス５４０１ｂ、メールの場合はアカウント情報５５０１ａとメールＩＤ５５０１ｂ、コラボレーションの場合はプロジェクト情報５６０１ａとファイルパス５６０１ｂ）を文字列として連結することによりコンテンツ識別情報に対応する文字列を得る。最後に、コンテンツ集約サーバ３は、アプリケーションに対応する文字列とコンテンツ識別情報に対応する文字列を連結することにより、グローバル・コンテンツ識別情報を得る。
【０１７６】
グローバル・コンテンツ識別情報の生成に関して、ＮＡＳの場合についての例を示す。ＮＡＳの場合、アプリ−ケーションに対応する文字列は“ＮＡＳ”である（アプリケーション管理テーブル５３００の第一エントリより）。また、図１３における、ＮＡＳ用のバックアップカタログ情報管理テーブル５４００の第一エントリから得られるコンテンツ識別情報に対応する文字列は、「ＳｈａｒｅＡ」と「／ｄｉｒＡ／ｆｉｌｅＡ」を連結した「／ＳｈａｒｅＡ／ｄｉｒＡ／ｆｉｌｅＡ」である。従って、ＮＡＳ用のバックアップカタログ情報管理テーブル５４００の第一エントリに対するグローバル・コンテンツ識別情報は「／ＮＡＳ／ＳｈａｒｅＡ／ｄｉｒＡ／ｆｉｌｅＡ」と生成される。
【０１７７】
コンテンツ集約サーバ３は、Ｓ３００７では、対象エントリのグローバル・コンテンツ識別情報、世代情報、前世代との関連、格納位置情報、メタデータに基づき、集約データ管理テーブル３５００を更新する。
【０１７８】
具体的には、コンテンツ集約サーバ３は、まず、集約データ管理テーブル３５００に新規エントリを追加する。次に、コンテンツ集約サーバ３は、対象エントリにおける前世代との関連（５４０３、５５０３、５６０３）の値に基づいて、以下の処理を行う。
【０１７９】
コンテンツ集約サーバ３は、前世代との関連の値が「追加」あるいは「更新」の場合は、新規エントリのグローバル・コンテンツ識別情報３５０１にＳ３５０６で生成したグローバル・コンテンツ識別情報を設定する。
【０１８０】
そしてコンテンツ集約サーバ３は、新規エントリのファイル３５０３ａの欄に対しては、アプリケーションの種別に応じたバックアップファイルの識別子（ＮＡＳ、メール、コラボレーションの場合、それぞれ「Ｆｉｌｅ＿ａ」、「Ｆｉｌｅ＿ｂ」、「Ｆｉｌｅ＿ｃ」）を設定する。
【０１８１】
さらにまたコンテンツ集約サーバ３は、新規エントリの世代情報３５０２、オフセット３５０３ｂ、データ長３５０３ｃ、更新時刻３５０４ａ、アクセス制御情報３５０４ｂの各欄には、アプリケーションの種別がＮＡＳの場合は、ＮＡＳ用のバックアップカタログ情報管理テーブル５４００における対応情報を設定し、アプリケーションの種別がメールの場合は、メール用のバックアップカタログ情報管理テーブル５５００における対応情報を設定し、アプリケーションの種別がコラボレーションの場合は、コラボレーション用のバックアップカタログ情報管理テーブル５６００における対応情報を設定する。
次にコンテンツ集約サーバ３は、Ｓ３００８では、未処理のエントリが存在するかを判定し、存在すればＳ３００６に進み、存在しなければＳ３００９に進む。
【０１８２】
コンテンツ集約サーバ３は、Ｓ３００９では、未処理のアプリケーションが存在するかを判定し、存在すればＳ３００３に進み、存在しなければＳ３０１０に進む。
【０１８３】
コンテンツ集約サーバ３は、Ｓ３０１０では、更新された集約データ管理テーブル３５００に含まれるコンテンツの情報に基づき、検索インデックス３６００を更新する。
【０１８４】
検索インデックス３６００の各エントリには、集約データ１４内のコンテンツに含まれるキーワード（単語）の一覧と各キーワードにマッチするコンテンツに対応するグローバル・コンテンツ識別情報のリストが記録される。
【０１８５】
コンテンツ集約サーバ３は、検索インデックス３６００を作成しておくことで、クライアント装置２からキーワードを指定した検索要求を受信すると、指定したキーワードを含むコンテンツのグローバル・コンテンツ識別情報のリストを得てクライアント装置２に送信することができる。
【０１８６】
図２３はリード処理３１００の処理フローの一例を示している。
コンテンツ集約サーバ３は、Ｓ３１０１では、クライアント装置２からのリード要求を受信する。リード要求には、アクセス対象のコンテンツのグローバル・コンテンツ識別情報（グローバル識別子又は詳細グローバル識別子）が指定されている。
【０１８７】
コンテンツ集約サーバ３は、Ｓ３１０２では、アクセス対象のコンテンツのグローバル・コンテンツ識別情報（対象グローバル・コンテンツ識別情報と呼ぶ）及び世代情報（対象世代情報と呼ぶ）を特定する。対象グローバル・コンテンツ識別情報と対象世代情報は集約データ管理テーブル３５００内でコンテンツを一意に特定するために必要である。
【０１８８】
具体的には、コンテンツ集約サーバ３は、まず、別名管理テーブル３８００を参照し、グローバル・コンテンツ識別情報の別名３８０１が、指定されたグローバル・コンテンツ識別情報に一致するエントリがあるかを調べる。
【０１８９】
一致するエントリがある場合、コンテンツ集約サーバ３は、対象グローバル・コンテンツ識別情報としてそのエントリに含まれる対応グローバル・コンテンツ識別情報３８０２を用い、対象世代情報としてそのエントリに含まれる対応世代情報３８０３を用いる。
【０１９０】
一致するエントリがない場合、コンテンツ集約サーバ３は、対象グローバル・コンテンツ識別情報として指定されたグローバル・コンテンツ識別情報を用い、対象世代情報として最新世代（世代“Ｎ”のＮが最も大きい世代）を用いる。
【０１９１】
コンテンツ集約サーバ３は、Ｓ３１０３では、集約データ管理テーブル３５００を参照し、特定した対象グローバル・コンテンツ識別情報、及び、対象世代情報に対応するエントリを特定する。
【０１９２】
具体的にはコンテンツ集約サーバ３は、グローバル・コンテンツ識別情報３５０１及び世代情報３５０２がそれぞれ、Ｓ３１０２で特定した対象グローバル・コンテンツ識別情報及び前記対象世代情報に一致するエントリ（対象エントリ呼ぶ）を探す。
一致するエントリが見つからなかった場合、コンテンツ集約サーバ３は、クライアント装置２にエラーを送信して処理を終了する。
一致するエントリが見つかった場合、コンテンツ集約サーバ３は、見つかったエントリを対象エントリとして、Ｓ３１０４以降の処理を行う。
【０１９３】
コンテンツ集約サーバ３は、Ｓ３１０４では、リード要求を行ったユーザ（当該ユーザ）が対象エントリに対応するコンテンツ（対象コンテンツと呼ぶ）に対してアクセス権を保持しているかを判定する。
【０１９４】
具体的には、コンテンツ集約サーバ３は、集約データ管理テーブル３５００のアクセス制御情報３５０４ｂを参照し、当該ユーザが対象コンテンツに対してアクセス許可を持つユーザであるか、あるいは、当該ユーザが対象コンテンツに対してアクセス許可を持つグループに属しているかを判定する。
【０１９５】
該当すれば、コンテンツ集約サーバ３は、当該ユーザは対象コンテンツに対してアクセス権を持つと判断し、該当しなければ、コンテンツ集約サーバ３は、当該ユーザは対象コンテンツに対してアクセス権を持たないと判断する。
【０１９６】
コンテンツ集約サーバ３は、アクセス権を持つと判断した場合（Ｓ３１０４「Ｙ」）、Ｓ３１０５に進み、アクセス権を許ないと判断した場合（Ｓ３１０４「Ｎ」）、Ｓ３１０８に進む。
コンテンツ集約サーバ３は、Ｓ３１０５では、対象エントリの格納位置情報３５０３を参照することにより、データの格納位置情報を特定する。
【０１９７】
コンテンツ集約サーバ３は、Ｓ３１０６では、Ｓ３１０５で特定した格納位置情報に基づき、バックアップファイルから対象コンテンツのデータを読み出す。具体的にはコンテンツ集約サーバ３は、アプリケーションの種別に応じて、バックアップファイル１１ａ、１１ｂ、１１ｃのいずれかのバックアップファイルにおける、前記特定した格納位置情報に対応する位置から対象コンテンツのデータを読み出す。
コンテンツ集約サーバ３は、Ｓ３１０７では、読み出したデータをクライアント装置２に送信する。
コンテンツ集約サーバ３は、Ｓ３１０８では、クライアント装置２にエラーである旨を送信する。
【０１９８】
図２４は、ライト処理３２００の処理フローの一例を示している。
コンテンツ集約サーバ３は、Ｓ３２０１では、クライアント装置２からのライト要求を受信する。ライト要求には、アクセス対象のコンテンツのグローバル・コンテンツ識別情報、及び、ライト対象のデータ（更新されたコンテンツ）及びメタデータが含まれている。
【０１９９】
コンテンツ集約サーバ３は、Ｓ３２０２では、アクセス対象のコンテンツのグローバル・コンテンツ識別情報（対象グローバル・コンテンツ識別情報と呼ぶ）及び世代情報（対象世代情報と呼ぶ）を特定する。具体的な処理はリード処理３１００のＳ３１０２と同様である。
【０２００】
コンテンツ集約サーバ３は、Ｓ３２０３では、集約データ管理テーブル３５００を参照し、特定した対象グローバル・コンテンツ識別情報、及び、対象世代情報に対応するエントリを特定する。
【０２０１】
具体的にはコンテンツ集約サーバ３は、グローバル・コンテンツ識別情報３５０１及び世代情報３５０２がそれぞれ前記対象グローバル・コンテンツ識別情報及び前記対象世代情報に一致するエントリ（対象エントリ呼ぶ）を探す。一致するエントリは見つかる場合と見つからない場合がある。一致するエントリが見つかる場合は、既存のエントリを更新する場合であり、見つからない場合は、新規のエントリを追加する場合である（エントリの更新・追加はＳ３２０６で実施する）。
【０２０２】
コンテンツ集約サーバ３は、Ｓ３２０４では、エントリが見つかった場合、ライト要求を行ったユーザ（当該ユーザ）が対象エントリに対応するコンテンツ（対象コンテンツ）に対してアクセス権を保持しているかを判定する。
【０２０３】
一方エントリが見つからなかった場合、コンテンツ集約サーバ３は、ライト要求を行ったユーザ（当該ユーザ）が対象ディレクトリ（ライト対象のデータが格納されるディレクトリ）に対してアクセス権を保持しているかを判定する。
エントリが見つかった場合の具体的な処理はリード処理３１００のＳ３１０４と同様である。
【０２０４】
エントリが見つからなかった場合の具体的な処理は以下の通りである。即ち、コンテンツ集約サーバ３は、集約データ管理テーブル３５００のアクセス制御情報３５０４ｂを参照し、当該ユーザが、対象ディレクトリに対してアクセス許可を持つユーザであるか、あるいは、当該ユーザが、対象ディレクトリに対してアクセス許可を持つグループに属しているかを判定し、該当すれば、当該ユーザは対象ディレクトリに対してアクセス権を持つと判断し、該当しなければ、当該ユーザはアクセス対象ディレクトリ対してアクセス権を持たないと判断する。
【０２０５】
コンテンツ集約サーバ３は、アクセス権（エントリが見つかった場合は対象コンテンツに対するアクセス権、エントリが見つからなかった場合は対象ディレクトリに対するアクセス権）を持つと判断した場合（Ｓ３２０４「Ｙ」）、Ｓ３２０５に進み、アクセス権を許ないと判断した場合（Ｓ３２０４「Ｎ」）、Ｓ３２０８に進む。
【０２０６】
コンテンツ集約サーバ３は、Ｓ３２０５では、ライト要求と共に送信されたデータを、集約データ１４ではなく、更新データ１３に書き込む。つまり、コンテンツ集約サーバ３は、ライト要求と共に送信された更新後のコンテンツを、更新前のコンテンツが記憶されていた記憶位置とは異なる記憶位置に書き込む。これにより、コンテンツが更新されたとしても、更新前のコンテンツの内容を保存しておくことが可能となる。
【０２０７】
そしてコンテンツ集約サーバ３は、Ｓ３２０６では、集約データ管理テーブル（更新管理テーブル）３５００を更新する。具体的には、エントリが見つかった場合、コンテンツ集約サーバ３は、Ｓ３２０５でライト対象のデータを書き込んだ格納位置情報を対象エントリの格納位置情報３５０３に設定する（ファイル３５０３ａには更新データを格納するファイルを示す「ＦｉｌｅＵｐｄａｔｅ」を指定する）。またコンテンツ集約サーバ３は、対象エントリのメタデータ３５０４に、ライト要求で指定されたメタデータを設定する。
【０２０８】
また、エントリが見つからなかった場合、コンテンツ集約サーバ３は、集約データ管理テーブル３５００に新規エントリを追加し、世代情報３５０２に最新世代の情報を設定する。またコンテンツ集約サーバ３は、新規エントリの格納位置情報３５０３にＳ３２０５でライト対象のデータを書き込んだ格納位置情報を設定する（ファイル３５０３ａには更新データを格納するファイルを示す「ＦｉｌｅＵｐｄａｔｅ」を指定する）。またコンテンツ集約サーバ３は、新規エントリのメタデータ３５０４に、ライト要求で指定されたメタデータを設定する。
【０２０９】
これによりコンテンツ集約サーバ３は、次回、クライアント装置２からコンテンツのリード要求があった場合には、上記ライト対象のデータを読み出し、クライアント装置２に送信する。
【０２１０】
コンテンツ集約サーバ３は、Ｓ３２０７では、クライアント装置２に完了報告を送信する。コンテンツ集約サーバ３は、Ｓ３２０８では、クライアント装置２にエラーを送信する。
【０２１１】
図２５は、削除処理３３００の処理フローの一例を示している。
コンテンツ集約サーバ３は、Ｓ３３０１では、クライアント装置２からのコンテンツの削除要求を受信する。削除要求には、削除対象のコンテンツのグローバル・コンテンツ識別情報が指定されている。
【０２１２】
コンテンツ集約サーバ３は、Ｓ３３０２では、削除対象のコンテンツのグローバル・コンテンツ識別情報（対象グローバル・コンテンツ識別情報と呼ぶ）及び世代情報（対象世代情報と呼ぶ）を特定する。具体的な処理はリード処理３１００のＳ３１０２と同様である。
【０２１３】
コンテンツ集約サーバ３は、Ｓ３３０３では、集約データ管理テーブル３５００を参照し、特定した対象グローバル・コンテンツ識別情報、及び、対象世代情報に対応するエントリを特定する。
【０２１４】
具体的にはコンテンツ集約サーバ３は、グローバル・コンテンツ識別情報３５０１及び世代情報３５０２がそれぞれ前記対象グローバル・コンテンツ識別情報及び前記対象世代情報に一致するエントリ（対象エントリ呼ぶ）を探す。一致するエントリは見つかる場合と見つからない場合がある。
【０２１５】
一致するエントリが見つかる場合は、削除対象のエントリが存在する場合であり、コンテンツ集約サーバ３は、Ｓ３３０４に進む。見つからない場合は、削除対象のエントリが存在しない場合である。エントリが見つからない場合はコンテンツ集約サーバ３は、エラー終了する。
【０２１６】
コンテンツ集約サーバ３は、Ｓ３３０４では、削除要求を行ったユーザ（当該ユーザ）が削除対象のエントリに対応するコンテンツ（対象コンテンツと呼ぶ）に対してアクセス権を保持しているかを判定する。具体的な判断処理はＳ３１０４と同様である。
【０２１７】
コンテンツ集約サーバ３は、アクセス権を持つと判断した場合（Ｓ３３０４「Ｙ」）、Ｓ３３０５に進み、アクセス権を持たないと判断した場合（Ｓ３３０４「Ｎ」）、Ｓ３３０９に進む。
【０２１８】
コンテンツ集約サーバ３は、Ｓ３３０５では、削除対象のコンテンツが更新データ１３に含まれるデータであるかを判定する。具体的には、コンテンツ集約サーバ３は、削除対象のエントリのファイル３５０３ａを参照し、更新データ１３に対応するファイルを表す「ＦｉｌｅＵｐｄａｔｅ」であれば、削除対象のコンテンツが更新データ１３に含まれるデータであると判定し（Ｓ３３０５「Ｙ」）、Ｓ３３０６に進み、そうでなければ（Ｓ３３０５「Ｎ」）、Ｓ３３０７に進む。
【０２１９】
コンテンツ集約サーバ３は、Ｓ３３０６では、更新データから削除対象のコンテンツを削除する。具体的にはコンテンツ集約サーバ３は、削除対象のエントリの格納位置情報３５０３を参照し、当該格納位置に格納されたデータを削除する。
【０２２０】
コンテンツ集約サーバ３は、Ｓ３３０７では、集約データ管理テーブル３５００を更新する。具体的には、コンテンツ集約サーバ３は、対象エントリの格納位置情報３５０３、メタデータ３５０４に無効値を示す「Ｎ／Ａ」を設定する。
【０２２１】
このように、クライアント装置２からコンテンツの削除要求が送信され、削除処理が実施されたとしても、集約データ１４のコンテンツは削除されないので、元のコンテンツの内容を保存しておくことが可能となる。
コンテンツ集約サーバ３は、Ｓ３３０８では、クライアント装置に完了報告を送信する。コンテンツ集約サーバ３は、Ｓ３３０８では、クライアント装置にエラーを送信する。
【０２２２】
図２６は、検索処理３４００の処理フローの一例を示している。
コンテンツ集約サーバ３は、Ｓ３４０１では、クライアント装置２から検索要求を受信する。検索要求には検索クエリー（単語）が含まれている。
【０２２３】
コンテンツ集約サーバ３は、Ｓ３４０２では、検索要求を送信してきたユーザがアクセス権を持つ集約データ１４内のコンテンツを対象に、検索インデックス３６００からキーワード（検索クエリー）にマッチする単語を含むコンテンツに対応するグローバル・コンテンツ識別情報のリストを検索する。コンテンツ集約サーバ３は、ユーザがアクセス権を持つか否かを集約データ管理テーブル３５００のアクセス制御情報３５０４ｂを参照することにより判定する。
コンテンツ集約サーバ３は、Ｓ３４０３では、検索結果として得られたグローバル・コンテンツ識別情報のリストをクライアント装置２に送信する。
【０２２４】
以上のように本実施形態によれば、異なるフォーマットでコンテンツをファイルに格納する各アプリケーション・プログラムによりそれぞれ生成されたファイルに対して、変換プログラムを用いなくても統一的なアクセスが可能になる。
なお、本実施形態では、各種データを格納するストレージ装置として２台のストレージ装置４ｓ、４ｔを用いたが、１台のストレージ装置に各種データを格納してもよい。また、本実施形態では、コンテンツ集約サーバ３とバックアップサーバ５を物理的に別々のサーバ装置として構成する例を示したが、１台のサーバ装置として構成してもよい。また、バックアップファイル１１をストレージ装置４ｓ以外に図示しないテープ装置にも作成してよい。
また、バックアップサーバ５に代えてアーカイブサーバを用いてもよい。バックアップサーバ５はストレージ装置４ｔ内のコンテンツ（オリジナルコンテンツ）の複製をストレージ装置４ｔ内に記録した後にオリジナルコンテンツを消去しないのに対して、アーカイブサーバはストレージ装置４ｔ内のコンテンツ（オリジナルコンテンツ）の複製をストレージ装置４ｓ内に記録した後に、オリジナルコンテンツを消去する。アーカイブサーバを用いることにより、例えば、コンテンツをビットコストの高い記憶媒体からビットコストの低い記録媒体にマイグレーションすることができる。
【０２２５】
＝＝第２実施形態＝＝
次に、図２７〜図３４を参照しながら、第２実施形態の情報処理システム１００について説明する。
図２７は、第２実施形態における情報処理システム１００の構成例を示している。以下の説明では、第１実施形態と相違する部分について説明する。
【０２２６】
第２実施形態に係る情報処理システム１００は、エンタープライズサーチサーバ８を備える。エンタープライズサーチサーバ８は、ストレージ装置４ｔが有する記録媒体に記録されている各ファイル内のコンテンツの複製をストレージ装置４ｓが有する記録媒体に記憶するコンテンツ収集処理を行い、そして、ストレージ装置４ｓが有する記録媒体に記憶した各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているファイルの識別子と、を単語毎に対応付けて記憶した検索インデックス（ファイルインデックス）を生成する。そして、エンタープライズサーチサーバ８は、クライアント装置２ａ、２ｂから単語を指定したファイルの検索要求を受信し、その単語と対応付けてファイルインデックスに記憶されているファイルの識別子のリストをクライアント装置２ａ、２ｂに送信する。
【０２２７】
より詳しくは、エンタープライズサーチサーバ８は、アプリケーション・データ１０に含まれるコンテンツを収集し、収集したコンテンツに対して検索インデックス（ファイルインデックス）を作成し、クライアント装置２ａ、２ｂに対して、収集したコンテンツに対する検索結果を提供するサーバである。
エンタープライズサーチサーバ８のハードウェア構成は、バックアップサーバ５と同様である。
【０２２８】
エンタープライズサーチサーバ８は、検索インデックス２０、及び、検索インデックス中間データ１６から構成される検索インデックス中間データ群１７を記憶している。
【０２２９】
また、第２実施形態では、ストレージ装置４ｓは、バックアップファイル１１から構成される集約データ１４ではなく、キャッシュファイル１８から構成される集約データ１９を記憶している。
図２８は、第２実施形態におけるコンテンツ集約サーバ３のハードウェア構成図を示している。
【０２３０】
第２実施形態に係るコンテンツ集約サーバ３は、第１実施形態に係るコンテンツ集約サーバ３とほぼ同様の構成であるが、メモリ３１上に、集約データ管理テーブル更新処理３０００ではなく、集約データ管理テーブル更新処理３９００を記憶している。
【０２３１】
図２９は、第２実施形態におけるエンタープライズサーチサーバ８のハードウェア構成図を示している。エンタープライズサーチサーバ８の構成は、第１実施形態で説明したバックアップサーバ５の構成とほぼ同様であるが、メモリ５１上に、クローラ処理８０００、検索インデックス作成処理８１００といった処理を行うプログラムや、アプリケーション管理テーブル５３００、ＮＡＳ用／メール用／コラボレーション用の検索インデックス中間データ管理テーブル８２００、８３００、８４００といったテーブルを格納している。
【０２３２】
クローラ処理８０００は、ストレージ装置４ｔが有する記録媒体に記録されている各ファイル内のコンテンツの複製をストレージ装置４ｓが有する記録媒体に記憶するコンテンツ収集処理を実行するプログラムである。
【０２３３】
検索インデックス作成処理８１００は、ストレージ装置４ｓが有する記録媒体に記憶した各コンテンツに記述されている単語を抽出し、抽出した単語と、抽出した単語が記述されているファイルの識別子と、を単語毎に対応付けて記憶したファイルインデックスを生成するプログラムである。
【０２３４】
図３０は、第２実施形態における情報処理システム１００の概念図を示している。
図３０に示すように、第２実施形態に係る情報処理システム１００には、集約データ・クライアント・プログラム２０００、リード処理３１００、集約データ管理テーブル３５００、集約データ１９（キャッシュファイル１８の集合体）、アプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）、検索インデックス中間データ群１７（検索インデックス中間データ１６の集合体）、検索インデックス２０が含まれる。
【０２３５】
検索インデックス２０は、クライアント装置２ａ、２ｂから送信されるキーワードに基づき、キーワードを含むファイルを特定するためのインデックスであり、例えば、転置インデックスと呼ばれる公知のデータ構造を利用することができる。
【０２３６】
検索インデックス中間データ１６は検索インデックス２０を生成するために使用するデータであり、ファイルの識別情報とファイルに含まれるキーワードのリストなどを記憶する。
【０２３７】
検索インデックス中間データ１６ａ、１６ｂ、１６ｃは、後述するＮＡＳ用／メール用／コラボレーション用の検索インデックス中間データ管理テーブル８２００、８３００、８４００に対応する。
【０２３８】
第２実施形態の情報処理システム１００が行う処理を、以下の３つの部分に分けて説明する。即ち、（ａ）クローリング・検索インデックス生成、（ｂ）集約データ管理テーブル更新、（ｃ）コンテンツ・アクセスの３つの処理部分である。
【０２３９】
＜（ａ）クローリング・検索インデックス生成＞
クローリング・検索インデックス生成の処理部分（クローラ処理８０００、検索インデックス作成処理８１００に対応）においては、エンタープライズサーチサーバ８は、アプリケーション・データ１０（ＮＡＳデータ１０ａ、メールデータ１０ｂ、コラボレーションデータ１０ｃ）に含まれるコンテンツの複製（キャッシュデータ）をキャッシュファイル１８に格納し（図３０の「（１）−ａクローリング」に対応）、それに対応して検索インデックス中間データ１６を生成する（図３０の「（１）−ｂ検索インデックス中間データ生成」に対応）。その後、エンタープライズサーチサーバ８は、検索インデックス中間データ１６に基づいて、検索インデックス２０を生成する（図３０の「（１）−ｃ検索インデックス生成」）。
【０２４０】
ＮＡＳデータ１０ａに基づいて、検索インデックス中間データ１６ａを生成するまでの処理内容の概略は以下のとおりである。
まず、エンタープライズサーチサーバ８は、ＮＡＳデータ１０ａのコンテンツのデータ及びメタデータを読み出し、キャッシュファイル１８ａに格納する。次に、エンタープライズサーチサーバ８は、キャッシュファイル１８ａに格納したコンテンツのコンテンツ識別情報、格納位置情報、メタデータをＮＡＳ用の検索インデックス中間データ管理テーブル８２００に追記する。
また、メールデータ１０ｂに基づいて、検索インデックス中間データ１６ｂを生成するまでの処理内容の概略は以下のとおりである。
【０２４１】
まず、メールサーバ６は、メールデータ１０ｂのコンテンツのデータ及びメタデータを読み出し、エンタープライズサーチサーバ８に送信する。次に、エンタープライズサーチサーバ８は受信したコンテンツのデータ（及びメタデータ）をキャッシュファイル１８ｂに格納する。最後に、格納されたコンテンツのコンテンツ識別情報、格納位置情報、メタデータをメール用の検索インデックス中間データ管理テーブル８３００に追記する。
【０２４２】
コラボレーションデータ１０ｃに基づいて、検索インデックス中間データ１６ｃを生成するまでの処理内容は、メールデータ１０ｂに関しての処理内容と同様であるので説明を省略する（キャッシュファイル１８ｂ、メール用の検索インデックス中間データ管理テーブル８３００をそれぞれキャッシュファイル１８ｃ、コラボレーション用の検索インデックス中間データ管理テーブル８４００に読み替える）。
【０２４３】
＜（ｂ）集約データ管理テーブル更新＞
集約データ管理テーブル更新の処理部分においては、検索インデックス中間データ群１７内の検索インデックス中間データ１６（検索インデックス中間データ１６ａ、１６ｂ、１６ｃはそれぞれ後述するＮＡＳ用／メール用／コラボレーション用の検索インデックス中間データ管理テーブル８２００、８３００、８４００に対応する）に含まれるエントリの情報に基づいて、集約データ管理テーブル３５００に新しいエントリが追加される（これをエントリ追加処理と呼ぶ）。本処理は図３０の(２)集約データ管理テーブル更新に対応する。
【０２４４】
追加されるエントリにはグローバル・コンテンツ識別情報、コンテンツの格納位置情報、アクセス制御情報などが含まれる。グローバル・コンテンツ識別情報は、当該エントリに対応するアプリケーション（ＮＡＳ、メール、コラボレーション）の種類に応じたアプリケーション識別子、及び、検索インデックス中間データ１６のエントリに含まれるコンテンツ識別情報を文字列として連結することで生成される。
エントリ追加処理は、検索インデックス中間データ群１７内の検索インデックス中間データ１６に含まれる全てのエントリに対して行われる。
【０２４５】
エントリ追加処理が全て完了した後には、集約データ管理テーブル３５００の情報を用いて、集約データ１９内のキャッシュファイル１８に含まれるすべてのコンテンツの格納位置情報を特定できるようになる。
集約データ管理テーブル更新の処理に関する更に詳細な説明は後述する。
【０２４６】
＜（ｃ）コンテンツ・アクセス＞
コンテンツ・アクセスの処理部分においては、集約データ・クライアント・プログラム２０００がグローバル・コンテンツ識別情報を指定してコンテンツにアクセスを行う。本処理部分は、図３０における、（３）リード要求、（４）データ格納位置情報参照、（５）データ読み出し、（６）リード応答に対応する。
【０２４７】
図３０の（３）（４）（５）（６）の処理は、それぞれ図１１の（３）（４）（５）（６）の処理に対し、バックアップファイル１１をキャッシュファイル１８に読み替えることにより、対応する。
【０２４８】
以下では第２実施形態におけるテーブルの構成例について説明する。  
図３１は、第２実施形態における、ＮＡＳ用の検索インデックス中間データ管理テーブル８２００の構成例を示している。
ＮＡＳ用の検索インデックス中間データ管理テーブル８２００は、ＮＡＳデータ１０ａ内に含まれるコンテンツの複製が格納されたキャッシュファイルであるキャッシュファイル１８ａに含まれるコンテンツに関する情報が格納されるテーブルである。
【０２４９】
ＮＡＳ用の検索インデックス中間データ管理テーブル８２００は、コンテンツ識別情報８２０１、格納位置情報８２０２、メタデータ８２０３、キーワード８２０４から構成される。
【０２５０】
コンテンツ識別情報８２０１は共有名８２０１ａ、ファイルパス８２０１ｂから構成される。格納位置情報８２０２はオフセット８２０２ａ、データ長８２０２ｂから構成される。メタデータ８２０３は更新時刻８２０３ａ、アクセス制御情報８２０３ｂから構成される。
【０２５１】
コンテンツ識別情報８２０１は、ＮＡＳデータ１０ａに対応するキャッシュファイル１８ａ内に含まれるコンテンツを一意に識別するための情報である。コンテンツ識別情報８２０１の具体的な内容はＮＡＳ用のバックアップカタログ情報管理テーブル５４００と同様である。
【０２５２】
格納位置情報８２０２は、コンテンツのキャッシュファイル１８ａ内での格納位置に関する情報である。格納位置情報８２０２の具体的な内容はＮＡＳ用のバックアップカタログ情報管理テーブル５４００と同様である。
【０２５３】
メタデータ８２０３は、コンテンツに関する情報である。メタデータ８２０３の具体的な内容はＮＡＳ用のバックアップカタログ情報管理テーブル５４００と同様である。
キーワード８２０４には、コンテンツ識別情報８２０１に対応するコンテンツに含まれるキーワードのリストが格納される。
【０２５４】
図３２は、第２実施形態における、メール用の検索インデックス中間データ管理テーブル８３００の構成例を示している。
メール用の検索インデックス中間データ管理テーブル８３００は、メールデータ１０ｂ内に含まれるコンテンツの複製が格納されたキャッシュファイルであるキャッシュファイル１８ｂに含まれるコンテンツに関する情報が格納されるテーブルである。
【０２５５】
メール用の検索インデックス中間データ管理テーブル８３００は、コンテンツ識別情報８３０１、格納位置情報８３０２、メタデータ８３０３、キーワード８３０４から構成される。
【０２５６】
コンテンツ識別情報８３０１はアカウント情報８３０１ａ、メールＩＤ８３０１ｂから構成される。格納位置情報８３０２はオフセット８３０２ａ、データ長８３０２ｂから構成される。メタデータ８３０３は更新時刻８３０３ａ、アクセス制御情報８３０３ｂから構成される。
【０２５７】
コンテンツ識別情報８３０１は、メールデータ１０ｂに対応するキャッシュファイル１８ｂ内に含まれるコンテンツを一意に識別するための情報である。コンテンツ識別情報８３０１の具体的な内容はメール用のバックアップカタログ情報管理テーブル５５００と同様である。
【０２５８】
格納位置情報８３０２は、コンテンツのキャッシュファイル１８ｂ内での格納位置に関する情報である。格納位置情報８３０２の具体的な内容はメール用のバックアップカタログ情報管理テーブル５５００と同様である。
【０２５９】
メタデータ８３０３は、コンテンツに関する情報である。メタデータ８３０３の具体的な内容はメール用のバックアップカタログ情報管理テーブル５５００と同様である。
キーワード８３０４には、コンテンツ識別情報８３０１に対応するコンテンツに含まれるキーワードのリストが格納される。
【０２６０】
図３３は、第２実施形態における、コラボレーション用の検索インデックス中間データ管理テーブル８４００の構成例を示している。
コラボレーション用の検索インデックス中間データ管理テーブル８４００は、コラボレーションデータ１０ｃ内に含まれるコンテンツの複製が格納されたキャッシュファイルであるキャッシュファイル１８ｃに含まれるコンテンツに関する情報が格納されるテーブルである。
【０２６１】
コラボレーション用の検索インデックス中間データ管理テーブル８４００は、コンテンツ識別情報８４０１、格納位置情報８４０２、メタデータ８４０３、キーワード８４０４から構成される。
【０２６２】
コンテンツ識別情報８４０１はプロジェクト情報８４０１ａ、ファイルパス８４０１ｂから構成される。格納位置情報８４０２はオフセット８４０２ａ、データ長８４０２ｂから構成される。メタデータ８４０３は更新時刻８４０３ａ、アクセス制御情報８４０３ｂから構成される。
【０２６３】
コンテンツ識別情報８４０１は、コラボレーションデータ１０ｃに対応するキャッシュファイル１８ｃ内に含まれるコンテンツを一意に識別するための情報である。コンテンツ識別情報８４０１の具体的な内容はコラボレーション用のバックアップカタログ情報管理テーブル５６００と同様である。
【０２６４】
格納位置情報８４０２は、コンテンツのキャッシュファイル１８ｃ内での格納位置に関する情報である。格納位置情報８４０２の具体的な内容はコラボレーション用のバックアップカタログ情報管理テーブル５６００と同様である。
メタデータ８４０３は、コンテンツに関する情報である。メタデータ８４０３の具体的な内容はコラボレーション用のバックアップカタログ情報管理テーブル５６００と同様である。
キーワード８４０４には、コンテンツ識別情報８４０１に対応するコンテンツに含まれるキーワード（単語）のリストが格納される。
【０２６５】
以下では第２実施形態に関する処理プログラムについて説明する。  
図３４は、第２実施形態における集約データ管理テーブル更新処理３９００の処理フローの一例を示している。
集約データ管理テーブル更新処理３９００のプログラムは図示しないが、コンテンツ集約サーバ３のメモリ３１上に格納されている。
【０２６６】
コンテンツ集約サーバ３は、Ｓ３９０１では、検索インデックス中間データ群１７（具体的には、検索インデックス中間データ１６ａ、１６ｂ、１６ｃ）をコンテンツ集約サーバ３のＨＤＤ３３にコピーする。
【０２６７】
コンテンツ集約サーバ３は、Ｓ３９０２では、アプリケーション管理テーブルの複製３７００に含まれるすべてのアプリケーションに対してＳ３９０３以降の処理を実施する。
コンテンツ集約サーバ３は、Ｓ３９０３では、アプリケーション管理テーブルの複製３７００からアプリケーションをひとつ選択する。
【０２６８】
コンテンツ集約サーバ３は、Ｓ３９０４では、選択したアプリケーションに対応する検索インデックス中間データ管理テーブルを特定し（検索インデックス中間データ管理テーブル８２００、８３００、８４００のいずれか）、特定した検索インデックス中間データ管理テーブルに含まれるエントリに対してＳ３９０５以降の処理を実施する。
【０２６９】
コンテンツ集約サーバ３は、Ｓ３９０５では、特定した検索インデックス中間データ管理テーブル（８２００、８３００、８４００）のエントリをひとつ選択する。
【０２７０】
コンテンツ集約サーバ３は、Ｓ３９０６では、アプリケーションの種別および対象エントリのコンテンツ識別情報からグローバル・コンテンツ識別情報を生成する。
【０２７１】
具体的な処理手順はＳ３００６と同様である（ただし、コンテンツ識別情報５４０１、５５０１、５６０１をそれぞれコンテンツ識別情報８２０１、８３０１、８４０１に読み替える。また、共有名５４０１ａ、ファイルパス５４０１ｂ、アカウント情報５５０１ａ、メールＩＤ５５０１ｂ、プロジェクト情報５６０１ａ、ファイルパス５６０１ｂをそれぞれ共有名８２０１ａ、ファイルパス８２０１ｂ、アカウント情報８３０１ａ、メールＩＤ８３０１ｂ、プロジェクト情報８４０１ａ、ファイルパス８４０１ｂに読み替える）。
【０２７２】
コンテンツ集約サーバ３は、Ｓ３９０７では、対象エントリのグローバル・コンテンツ識別情報、格納位置情報、メタデータに基づき、集約データ管理テーブル３５００を更新する。
【０２７３】
具体的には、まず、コンテンツ集約サーバ３は、集約データ管理テーブル３５００に新規エントリを追加する。次に、コンテンツ集約サーバ３は、新規エントリのグローバル・コンテンツ識別情報欄３５０１にＳ３９０６で生成したグローバル・コンテンツ識別情報を設定する。
【０２７４】
またコンテンツ集約サーバ３は、新規エントリのファイル欄３５０３ａには、アプリケーションの種別に応じたキャッシュファイルの識別子（ＮＡＳ、メール、コラボレーションの場合、それぞれ「Ｆｉｌｅ＿ａ」、「Ｆｉｌｅ＿ｂ」、「Ｆｉｌｅ＿ｃ」）を設定する。
【０２７５】
さらにまた、コンテンツ集約サーバ３は、新規エントリのオフセット欄３５０３ｂ、データ長欄３５０３ｃ、更新時刻欄３５０４ａ、アクセス制御情報欄３５０４ｂには、アプリケーションの種別がＮＡＳの場合は、ＮＡＳ用の検索インデックス中間データ管理テーブル８２００における対応情報を設定し、アプリケーションの種別がメールの場合は、メール用の検索インデックス中間データ管理テーブル８３００における対応情報を設定し、アプリケーションの種別がコラボレーションの場合は、コラボレーション用の検索インデックス中間データ管理テーブル８４００における対応情報を設定する。
コンテンツ集約サーバ３は、Ｓ３９０８では、未処理のエントリが存在するかを判定し、存在すればＳ３９０６に進み、存在しなければＳ３９０９に進む。
【０２７６】
コンテンツ集約サーバ３は、Ｓ３９０９では、未処理のアプリケーションが存在するかを判定し、存在すればＳ３９０３に進み、存在しなければＳ３９１０に進む。
【０２７７】
コンテンツ集約サーバ３は、Ｓ３９１０では、更新された集約データ管理テーブル３５００の情報に基づき、検索インデックス３６００を更新する。検索インデックス３６００の各エントリには、キーワードとキーワードにマッチするコンテンツに対応するグローバル・コンテンツ識別情報の組が記録される。
【０２７８】
以上のように、本実施形態によれば、異なるフォーマットでコンテンツをファイルに格納する各アプリケーション・プログラムによりそれぞれ生成されたファイルに対して、変換プログラムを用いなくても統一的なアクセスが可能になる。
【０２７９】
なお、本実施形態では、各種データを格納するストレージ装置として２台のストレージ装置４ｓ、４ｔを用いたが、１台のストレージ装置に各種データを格納してもよい。また、本実施形態では、コンテンツ集約サーバ３とエンタープライズサーチサーバ８を物理的に別々のサーバ装置として構成する例を示したが、１台のサーバ装置（情報処理装置）として構成してもよい。
【０２８０】
また、第１実施形態で説明したバックアップサーバ５と、第２実施形態で説明したエンタープライズサーチサーバ８と、を組み合わせて、ストレージ装置４ｔに記憶されているコンテンツの複製をストレージ装置４ｓに記憶するようにすることもできる。
【０２８１】
この場合、例えば、エンタープライズサーチサーバ８は、ストレージ装置４ｔに記憶されているコンテンツの内、バックアップカタログ情報管理テーブル５４００、５５００、５６００のいずれにも記載されていないコンテンツを抽出するようにする。そして、エンタープライズサーチサーバ８は、抽出したコンテンツの複製をストレージ装置４ｔから読み出して、ストレージ装置４ｓに記憶する。
【０２８２】
このようにすることにより、例えば、バックアップサーバ５によるバックアップ処理の対象外のコンテンツがストレージ装置４ｔに記憶されていたとしても、そのようなコンテンツをも、エンタープライズサーチサーバ８がストレージ装置４ｓに複製してくることが可能になるので、ストレージ装置４ｔに記憶されているコンテンツの複製をもれなくストレージ装置４ｓに記憶するようにすることができる。
これにより、クライアント装置２は、より多くのファイルを網羅した、精度の高いデータマイニングを行うことが可能となる。
【０２８３】
また、以下のような実施形態とすることも可能である。
第１記録媒体を有する第１ストレージ装置と、第２記録媒体を有する第２ストレージ装置と、前記第１ストレージ装置と通信可能に接続され、第１フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第１アプリケーションプログラムを実行する第１サーバと、前記第１ストレージ装置と通信可能に接続され、前記第１フォーマットとは異なる第２フォーマットでコンテンツをファイルに格納し、前記ファイルを前記第１記録媒体に記憶する第２アプリケーションプログラムを実行する第２サーバと、前記第１サーバ、前記第２サーバ及び前記第２ストレージ装置と通信可能に接続され、前記第１記録媒体に記憶されている各ファイル内のコンテンツの複製を取得し、前記第２記録媒体に記憶する情報処理装置と、前記情報処理装置と通信可能に接続され、前記情報処理装置に対してコンテンツの読み出し要求を送信し、前記情報処理装置から前記読み出し要求の対象であるコンテンツを受信するクライアントと、を備えて構成される情報処理システムにおける前記情報処理装置の制御方法であって、前記情報処理装置は、前記第１サーバに対して、前記第１アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、前記情報処理装置は、前記送信要求に応じて、前記第１アプリケーションプログラムが前記第１記録媒体から読み出したコンテンツを、前記第１サーバから受信し、前記情報処理装置は、前記第１コンテンツ受信部が受信したコンテンツを前記第２記録媒体に記憶し、前記情報処理装置は、前記第２サーバに対して、前記第２アプリケーションプログラムが生成したファイル内のコンテンツの送信要求を送信し、前記情報処理装置は、前記送信要求に応じて、前記第２アプリケーションプログラムが前記第１記録媒体から読み出したコンテンツを、前記第２サーバから受信し、前記情報処理装置は、前記第２コンテンツ受信部が受信したコンテンツを前記第２記録媒体に記憶し、前記情報処理装置は、前記クライアントが前記第２記録媒体に記憶されている各コンテンツを一意に識別するためのグローバル識別子を生成し、前記情報処理装置は、前記第２記録媒体における前記各コンテンツの記憶位置を示す記憶位置情報と、前記各コンテンツのグローバル識別子とをそれぞれ対応付けてグローバル識別子管理テーブルに記憶し、前記情報処理装置は、前記クライアントからグローバル識別子を指定したコンテンツの前記読み出し要求を受信し、前記グローバル識別子と対応付けて前記グローバル識別子管理テーブルに記憶される記憶位置情報により特定される記憶位置からコンテンツを読み出して前記クライアントに送信する。
【０２８４】
以上、上記いずれの実施形態においても、異なるフォーマットでファイルを生成する各アプリケーション・プログラムによりそれぞれ生成されたファイルに対して、変換プログラムを用いなくても統一的なアクセスが可能になる。
【０２８５】
またすべてのアプリケーション・プログラムに対応したプロトコル変換プログラムが不要となるため、全てのアプリケーション・プログラムのデータに対する統一的なアクセス手段の実装が容易にできる。
【０２８６】
また、異なる複数のアプリケーション・プログラムが動作するサーバ装置（群）を含む情報処理システムにおいて、クライアント装置に対して全アプリケーション・プログラムのデータへの統一的なアクセス手段を提供することができる。
【０２８７】
またバックアップサーバが生成したバックアップカタログに基づき、オブジェクトの識別子とオブジェクトの格納位置との対応関係を保持するデータベースを生成し、このデータベースを用いてオブジェクトへのアクセスを行い、またオブジェクトへのアクセスは、シングルネームスペースを介して、異なる複数のアプリケーション・プログラムのオブジェクトに対して統一的に行う。これにより、クライアントアプリの実装を容易化することができると共に、複数のプロトコルを理解する必要がなくなる。
【０２８８】
以上の実施形態では、企業内に存在する種々のアプリケーション・プログラムが管理する個々のオブジェクトへのアクセスをバックアップサーバで行い、バックアップカタログの解釈、変換を行う。そのため、プログラム開発工数が大幅に削減可能である。
【０２８９】
以上、本発明の好適な実施形態を説明したが、これらは本発明の説明のための例示であって、本発明の範囲を実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施することが可能である。
【図１】
0005548825.tif 000002
【図２】
0005548825.tif 000003
【図３】
0005548825.tif 000004
【図４】
0005548825.tif 000005
【図５】
0005548825.tif 000006
【図６】
0005548825.tif 000007
【図７】
0005548825.tif 000008
【図８】
0005548825.tif 000009
【図９】
0005548825.tif 000010
【図１０】
0005548825.tif 000011
【図１１】
0005548825.tif 000012
【図１２】
0005548825.tif 000013
【図１３】
0005548825.tif 000014
【図１４】
0005548825.tif 000015
【図１５】
0005548825.tif 000016
【図１６】
0005548825.tif 000017
【図１７】
0005548825.tif 000018
【図１８】
0005548825.tif 000019
【図１９】
0005548825.tif 000020
【図２０】
0005548825.tif 000021
【図２１】
0005548825.tif 000022
【図２２】
0005548825.tif 000023
【図２３】
0005548825.tif 000024
【図２４】
0005548825.tif 000025
【図２５】
0005548825.tif 000026
【図２６】
0005548825.tif 000027
【図２７】
0005548825.tif 000028
【図２８】
0005548825.tif 000029
【図２９】
0005548825.tif 000030
【図３０】
0005548825.tif 000031
【図３１】
0005548825.tif 000032
【図３２】
0005548825.tif 000033
【図３３】
0005548825.tif 000034
【図３４】
0005548825.tif 000035