(57)【要約】  ユーザが利用する端末から任意のサーバにアクセスすることにより、複数のサーバのいずれかが保持する電子ファイルをユーザに提供することが可能な分散ファイル管理システムを提供する。  複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、ユーザが利用する端末と、ユーザの要求を受け付ける複数のサーバと、サーバからの問合せに応じてユーザの要求に係る電子ファイルを保持するサーバを判断するとともに、その要求に必要な処理を各サーバに実行させる分散ファイル管理装置とにより構成される。
2008010473.tif 000002
【特許請求の範囲】
【請求項１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項２】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項３】
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項２に記載の分散ファイル管理システム。
【請求項４】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項３に記載の分散ファイル管理システム。
【請求項５】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項６】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５に記載の分散ファイル管理システム。
【請求項７】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５に記載の分散ファイル管理システム。
【請求項８】
前記各サーバは、さらに、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、
要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、
前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける
ことを特徴とする請求項１から請求項７までのいずれか１項に記載の分散ファイル管理システム。
【請求項９】
前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項８に記載の分散ファイル管理システム。
【請求項１０】
前記各サーバは、
さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、
前記分散ファイル管理装置は、
さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、
前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、
前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する
ことを特徴とする請求項８または請求項９に記載の分散ファイル管理システム。
【請求項１１】
前記各サーバは、
さらに、前記ユーザ要求受信部が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信部が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段を備える
ことを特徴とする請求項８から請求項１０までのいずれか１項に記載の分散ファイル管理システム。
【請求項１２】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項１３】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項１４】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断手段と、
前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項１５】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理システム。
【請求項１６】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理システム。
【請求項１７】
前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する
ことを特徴とする請求項１４から請求項１６までのいずれか１項に記載の分散ファイル管理システム。
【請求項１８】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理装置。
【請求項１９】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える
ことを特徴とする請求項１４から請求項１８までのいずれか１項に記載の分散ファイル管理システム。
【請求項２０】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計手段と、
前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第１の保持情報更新手段とを備える
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２１】
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２２】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項２１に記載の分散ファイル管理システム。
【請求項２３】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第２の保持情報更新手段とを備える
ことを特徴とする請求項２２に記載の分散ファイル管理システム。
【請求項２４】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２５】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２６】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２７】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２８】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項２９】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項３０】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項３１】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する
ことを特徴とする請求項３０に記載の分散ファイル管理システム。
【請求項３２】
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第１の判断部と、
前記第１判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第１判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第２の判断部とを有し、
前記分散ファイル管理装置は、さらに、
前記問合受付手段が問合せを受け付けることにより、前記第１の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、
前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、
前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、
前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える
ことを特徴とする請求項３１に記載の分散ファイル管理システム。
【請求項３３】
前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、
前記分散ファイル管理装置は、さらに、
前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、
前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える
ことを特徴とする請求項３０から請求項３２までのいずれか１項に記載の分散ファイル管理システム。
【請求項３４】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３３に記載の分散ファイル管理システム。
【請求項３５】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３３に記載の分散ファイル管理システム。
【請求項３６】
前記各サーバは、
前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項３０から請求項３５までのいずれか１項に記載の分散ファイル管理システム。
【請求項３７】
前記各サーバは、さらに、
他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項３０から請求項３６までのいずれか１項に記載の分散ファイル管理システム。
【請求項３８】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項３０から請求項３７までのいずれか１項に記載の分散ファイル管理システム。
【請求項３９】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４０】
前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項４２】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項４３】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、ユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する前記第１のサーバ群の１つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバ手段と、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶し、前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、前記ファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備える
ことを特徴とする分散ファイル管理装置。
【請求項４４】
前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、
前記第２のサーバは、
前記ファイルサーバ手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える
ことを特徴とする請求項４３に記載の分散ファイル管理装置。
【請求項４５】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する
ことを特徴とする請求項４３に記載の分散ファイル管理システム。
【請求項４６】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、
前記第２の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、
前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する
ことを特徴とする請求項４４に記載の分散ファイル管理システム。
【請求項４７】
前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する
ことを特徴とする請求項４５または請求項４６に記載の分散ファイル管理システム。
【請求項４８】
前記管理装置手段は、
前記ファイル保持情報を記憶する保持サーバ記憶部と、
ユーザ指定の識別子含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付ける問合受付部と、
前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、
前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備える
ことを特徴とする請求項４３から請求項４７までのいずれか１項に記載の分散ファイル管理システム。
【請求項４９】
前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、
前記管理装置手段は、さらに、
前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する
ことを特徴とする請求項４８に記載の分散ファイル管理システム。
【請求項５０】
前記ファイルサーバ手段は、
電子ファイルを記憶するファイル記憶部と、
前記ファイル送信要求部が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信部と、
前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶部から読み出すファイル記憶制御部と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信部とを備える
ことを特徴とする請求項４８または請求項４９に記載の分散ファイル管理システム。
【請求項５１】
前記ファイルサーバ手段は、さらに、
他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、
前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む
ことを特徴とする請求項５０に記載の分散ファイル管理システム。
【請求項５２】
前記ファイルサーバ手段は、さらに、
前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、
前記管理装置手段は、
前記更新通知部による通知を受け付ける更新通知受付部と
前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える
ことを特徴とする請求項５１に記載の分散ファイル管理システム。
【請求項５３】
前記管理装置手段は、さらに、
前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付部は前記更新通知手段による通知を受け、
前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５２に記載の分散ファイル管理システム。
【請求項５４】
前記管理装置手段は、さらに、
前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５３に記載の分散ファイル管理システム。
【請求項５５】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する第１のサーバ群の１つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバステップと、
前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置ステップと、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項５６】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する第１のサーバ群の１つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバステップと、
前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置ステップと、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・ネットワーク（以下、「ネットワーク」という。）上で分散している電子ファイルを管理するシステムに関する。
【背景技術】
【０００２】
企業等の組織内のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネットなどのＷａｎ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）といったネットワークを介して、ネットワークに接続されている端末を利用するユーザは、ネットワークに接続されているサーバが保持している電子ファイルにアクセスすることができる。これにより、ユーザは、ネットワークに接続されているサーバに分散して保持されている電子ファイルを閲覧すること、または、ダウンロードすることなどが可能となり、情報の流通や活用が促進されている。【０００３】
従来、このようにネットワーク上で分散して保持されている電子ファイルの活用および管理のための技術が提案されている。【０００４】
例えば、特許文献１に記載の技術は、各サーバのファイルシステムを統合するスーパーディレクトリを頂点とするツリー構造をした仮想的なファイルシステムをユーザに提示するファイルシステムの管理方法である。この技術によると、ユーザは自身が利用している端末が保持している電子ファイルにアクセスする場合と同様のユーザインターフェースから、サーバが保持する電子ファイルにアクセスすることができる。【０００５】
また、特許文献２に記載の技術は、各サーバが保持する１つの電子ファイルをネットワークに接続された各端末において共同で利用するのではなく、各サーバが同一の電子ファイルないし電子ファイル群を重複して保持し、各サーバ間で保持している電子ファイルないし電子ファイル群の内容を完全に同期させるメカニズムまたは方法である。
【特許文献１】特開平５−２５０２４９号公報
【特許文献２】特表平１０−５１０４１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、ユーザが取得した電子ファイルが必ずしも最新の内容の電子ファイルであるとは限らないという問題がある。【０００７】
特許文献１に記載の技術は、ネットワーク上に分散している電子ファイルの同期をとる技術を開示していないため、例えば、複数のサーバが保持している同一名称の電子ファイルの内容が異なる場合がある。【０００８】
特許文献２に記載の技術では、複数のサーバが保持する各電子ファイルの同期が取れている。しかしながら、全てのサーバが同一の電子ファイル群を保持しており、各電子ファイル間の同期をとるためには、電子ファイルの内容を更新する際に、全てのサーバが保持する当該電子ファイルを更新する必要がある。したがって、更新時には、ネットワークトラフィックが増大するという問題がある。この問題は、サーバの数が多くなるほど顕著になる。【０００９】
本発明は、上記の問題を解決するためになされたもので、ユーザが利用する端末から任意のサーバにアクセスすることにより、ユーザの所望する電子ファイルが複数のサーバのいずれかに保持されている限り、最新の当該電子ファイルをユーザに提供することを可能とする分散ファイル管理システムの提供を目的とする。また、上記の目的を達成するために掛かるネットワーク上の負荷を抑えることを可能とする分散ファイル管理システムの提供を目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。【００１１】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、最新の電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。【００１２】
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００１３】
好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する。【００１４】
このように、分散ファイル管理装置は、サーバと、電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報を含むファイル保持情報を保持しており、アクセス元サーバから問合せを受け付けると、このようなファイル保持情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。【００１５】
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００１６】
さらに好ましくは、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。【００１７】
このように、アクセス元サーバは保持サーバからユーザの要求に係る電子ファイルを取得する。これにより、アクセス元サーバは、ユーザの要求に係る電子ファイルをユーザが利用する端末に送信することが可能となる。【００１８】
さらに好ましくは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。【００１９】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００２０】
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。【００２１】
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００２２】
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００２３】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。【００２４】
さらに好ましくは、前記各サーバは、さらに、電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける。【００２５】
また、前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む。【００２６】
このように、アクセス元サーバは、ユーザの要求に応じて、分散ファイル管理装置にユーザの要求に関連する問合せをし、または、自身の処理を実行する。これにより、分散ファイル管理装置にかかる負荷を軽減することが可能となる。【００２７】
さらに好ましくは、前記各サーバは、さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、前記分散ファイル管理装置は、さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する。【００２８】
このように、ロック処理をすることにより、分散ファイル管理装置が保持しているファイル保持情報の内容と、各サーバが保持する電子ファイルの最新の状態との食い違いを防止することが可能となる。【００２９】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断手段と、前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える。【００３０】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。【００３１】
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。【００３２】
さらに、重複して保持されている電子ファイルを、少なくとも１つを残して削除する。これにより、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。【００３３】
さらに好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する。【００３４】
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。【００３５】
さらに、前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する。【００３６】
さらに、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。【００３７】
このように、定期的に、または、書込要求を受信したときに、重複して保持されている電子ファイルを、少なくとも１つを残して削除する。これにより、各サーバが電子ファイルを保持するために消費する記憶資源の有効な活用が可能となる。【００３８】
さらに好ましくは、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。【００３９】
また、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。【００４０】
さらに、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。【００４１】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００４２】
さらに好ましくは、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計手段と、前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第１の保持情報更新手段とを備える。【００４３】
また、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と、前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第２の保持情報更新手段とを備える。【００４４】
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００４５】
さらに、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００４６】
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する。【００４７】
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００４８】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の正しい状態を格納しておくことが可能となる。【００４９】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。【００５０】
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する。【００５１】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。【００５２】
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。【００５３】
電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。【００５４】
さらに好ましくは、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第１の判断部と、前記第１判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第１判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第２の判断部とを有し、前記分散ファイル管理装置は、さらに、前記問合受付手段が問合せを受け付けることにより、前記第１の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える。【００５５】
このように、各サーバは保持している電子ファイルのハッシュ値を計算し、計算したハッシュ値を分散ファイル管理装置に送信する。これにより、分散ファイル管理装置は、現にサーバが保持している電子ファイルのハッシュ値を取得することができ、サーバが保持している電子ファイルに改竄がなされていないことを検証することが可能となる。【００５６】
さらに好ましくは、前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、前記分散ファイル管理装置は、さらに、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える。【００５７】
また、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。【００５８】
さらに、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。【００５９】
このように、書込要求に係る電子ファイルがいずれのサーバも保持していなかった新しい電子ファイルの場合に、その電子ファイルをアクセス元サーバ以外のサーバにも保持させる。そのため、いずれか１つのサーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。【００６０】
また、新しい電子ファイルを保持するアクセス元サーバ以外のサーバは、電子ファイルを記憶する部位の空き容量の状態に応じて決定されるため、各サーバの記憶資源を均等に利用でき、サーバにかかる負荷を分散させることが可能となる。【００６１】
さらに好ましくは、前記各サーバは、前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。【００６２】
また、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。【００６３】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００６４】
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。【００６５】
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００６６】
さらに、前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する。【００６７】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。【００６８】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、ユーザが利用する端末とにより構成され、前記各第１のサーバは、ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する前記第１のサーバ群の１つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバ手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶し、前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、前記ファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置手段と、前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備える。【００６９】
また、前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、前記第２のサーバは、前記ファイルサーバ手段と、前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える。【００７０】
このように、分散ファイル管理システムは、複数のサーバに分散して保持されている電子ファイルを管理するための機能を備えるサーバを複数備える。そのため、障害が発生するなどのために、分散ファイル管理装置として機能しているサーバの稼動が停止しても、他のサーバが分散ファイル管理装置として稼動できるため、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。【００７１】
さらに好ましくは、前記第１の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する。【００７２】
また、前記第１の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、前記第２の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する。【００７３】
さらに、前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する。【００７４】
さらに、前記管理装置手段は、前記ファイル保持情報を記憶する保持サーバ記憶部と、ユーザ指定の識別子含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付ける問合受付部と、前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備える。【００７５】
このように、分散ファイル管理装置の機能を備えた第1のサーバと、他のサーバとが通信をし、通信が途絶えたこと、または、通信が復活したことを検知して、予め定めた順位に従って、稼働中の第1のサーバの中で最も順位が高いサーバを分散ファイル管理装置とする。これにより、分散ファイル管理装置として機能するサーバが自動的に切り替えることが可能となり、分散ファイル管理システムの安定性を向上させることが可能となる。【００７６】
さらに好ましくは、前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、前記管理装置手段は、さらに、前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する。【００７７】
また、前記ファイルサーバ手段は、電子ファイルを記憶するファイル記憶部と、前記ファイル送信要求部が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信部と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶部から読み出すファイル記憶制御部と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信部とを備える。【００７８】
さらに、前記ファイルサーバ手段は、さらに、他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む。【００７９】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００８０】
さらに好ましくは、前記ファイルサーバ手段は、さらに、前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、前記管理装置手段は、前記更新通知部による通知を受け付ける更新通知受付部と前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える。【００８１】
また、前記管理装置手段は、さらに、前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付部は前記更新通知手段による通知を受け、前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。【００８２】
さらに、前記管理装置手段は、さらに、前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する。【００８３】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。【００８４】
なお、本発明は、このような特徴的な手段を備える分散ファイル管理システムとして実現することができるだけでなく、分散ファイル管理システムを構成する装置に含まれる特徴的な手段をステップとする分散ファイル管理方法として実現したり、分散ファイル管理システムを構成する装置に含まれる特徴的な手段としてコンピュータを機能させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の記録媒体やインターネット等の通信ネットワークを介して流通させることができる。
【発明の効果】
【００８５】
ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。【００８６】
さらに、特に、１つのサーバを介して頻繁に取得される電子ファイルについては、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００８７】
ここで頻繁に取得される電子ファイルとは、同一または異なるユーザにより２回以上の取得要求の対象とされた電子ファイルであり、または、一定の期間内に同一または異なるユーザにより２回以上の取得要求の対象とされた電子ファイルである。【００８８】
さらに、ユーザに最新の電子ファイルを提供するための電子ファイルの管理につき、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。【００８９】
さらに、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。【００９０】
さらに、電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。また、サーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。【００９１】
さらに、分散ファイル管理装置の稼動が停止した場合であっても、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。
【図面の簡単な説明】
【００９２】
【図１】図１は本発明の実施の形態１に係る分散ファイル管理システムの構成の概要を示す図である。
【図２】図２は実施の形態１に係る各サーバが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図３Ａ】図３Ａは実施の形態１に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３Ｂ】図３Ｂは実施の形態１に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３Ｃ】図３Ｃは実施の形態１に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４】図４は実施の形態１に係るサーバＡが備える機能的構成の例を示すブロック図である。
【図５】図５は実施の形態１に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図６】図６は保持サーバ記憶部が記憶している管理サーバ情報の例を示す図である。
【図７】図７は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図８】図８はユーザが端末から取得要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図９】図９はユーザが端末から書込要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図１０】図１０はサーバＡが端末ａからファイルａの取得要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【図１１】図１１はサーバＡが端末ａからファイルａの取得要求を受け付けた後に、サーバＡが保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示す図である。
【図１２】図１２は端末ａからファイルａの取得要求を受け付けたサーバＡのファイル記憶部が記憶している電子ファイル情報を示す図である。
【図１３】図１３はサーバＡが端末ａからファイルａの取得要求を受け付けた後に、サーバＡが保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【図１４】図１４は端末ａからファイルａの更新要求により更新されたサーバＡのファイル記憶部が記憶している電子ファイル情報を示す図である。
【図１５】図１５はサーバＡが端末ａからファイルａの更新要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報を示す図である。
【図１６】図１６はユーザが利用する端末に接続されたモニタに表示される、ユーザが特定のファイルに対する要求を入力するための画面の例を示す図である。
【図１７】図１７はユーザがファイルａの取得要求を指示した場合に、ユーザが利用する端末に接続されたモニタに表示される結果の例を示す図である。
【図１８】図１８はユーザがファイルａの更新要求を指示した場合に、ユーザが利用する端末に接続されたモニタに表示される結果の例を示す図である。
【図１９】図１９は保持サーバ記憶部が記憶しているファイル保持情報の他の例を示す図である。
【図２０Ａ】図２０Ａは実施の形態２に係るサーバＡが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２０Ｂ】図２０Ｂは実施の形態２に係るサーバＢが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２０Ｃ】図２０Ｃは実施の形態２に係るサーバＣが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２１】図２１は実施の形態２に係るサーバＡ３２０が備える機能的構成の例を示すブロック図である。
【図２２】図２２は実施の形態２に係る分散ファイル管理装置３１０が備える機能的構成の例を示すブロック図である。
【図２３】図２３は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図２４】図２４は実施の形態２に係る削除条件情報の例を示す図である。
【図２５】図２５はユーザが端末から取得要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図２６】図２６はユーザが端末から書込要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図２７】図２７は各サーバが保持する電子ファイルを削除する際に、本発明の実施の形態２に係る分散ファイル管理装置において実行される処理の一例を示すフローチャートである。
【図２８】図２８はファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０による電子ファイルの削除処理が終了した後のファイル保持情報４００ｃを示す図である。
【図２９】図２９は変形例１に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図３０】図３０は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図３１】図３１はユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理の例を示すタイムチャートである。
【図３２】図３２はサーバＡがファイルｄの更新要求を受け付けた場合に、保持サーバ判断部がＳ２１２における判断処理を実行するときの、ファイル保持情報を示す図である。
【図３３】図３３はユーザからファイルｄの更新要求をサーバＡが受け付けた場合に、本変形例に係る各装置が実行する処理が終了した後のファイル保持情報を示す図である。
【図３４】図３４は古い内容を有する電子ファイルを削除の対象とする場合のファイル保持情報の例を示す図である。
【図３５Ａ】図３５Ａは実施の形態３に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３５Ｂ】図３５Ｂは実施の形態３に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３５Ｃ】図３５Ｃは実施の形態３に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３６】図３６は実施の形態３に係るサーバＡが備える機能的構成の例を示すブロック図である。
【図３７】図３７は実施の形態３に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図３８】図３８は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図３９】図３９はユーザが端末から取得要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４０】図４０はユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４１】図４１は図４０に示す複写先決定処理の詳細であり、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４２】図４２はユーザが端末からサーバＡにファイルｆの更新要求を送信した場合に、サーバＡから送信された更新通知およびハッシュ値に従って更新された保持サーバ記憶部のファイル保持情報の例を示す図である。
【図４３】図４３は記憶部情報を説明するための具体例を示す図である。
【図４４】図４４はユーザが端末からサーバＡにファイルｆの更新要求を送信した場合に、各装置における処理が終了した後の保持サーバ記憶部のファイル保持情報の例を示す図である。
【図４５】図４５はユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４６】図４６は実施の形態３に係る分散ファイル管理装置が更新許可要求を受信することにより、ハッシュ値が初期化されたファイル保持情報の例を示す図である。
【図４７】図４７は実施の形態３において、ユーザが端末から更新要求を送信した場合に、その要求に係る電子ファイルの更新処理を実行した後のファイル保持情報の例を示す図である。
【図４８】図４８は本発明の実施の形態４に係る分散ファイル管理システムの構成の概要を示す図である。
【図４９Ａ】図４９Ａは実施の形態４に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４９Ｂ】図４９Ｂは実施の形態４に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４９Ｃ】図４９Ｃは実施の形態４に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図５０】図５０は実施の形態４に係るサーバＡ８２０が備える機能的構成の概要の一例を示すブロック図である。
【図５１】図５１は実施の形態４に係るサーバＡ８２０のファイルサーバ部９００が備える機能的構成の詳細について、その一例を示すブロック図である。
【図５２】図５２は実施の形態４に係るサーバＡの管理装置部と管理装置判定部とが備える機能的構成の詳細について、その一例を示すブロック図である。
【図５３】図５３は実施の形態４に係る保持サーバ記憶部が記憶している管理サーバ情報の一例を示す図である。
【図５４】図５４は実施の形態４に係る保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂの一例を示す図である。
【図５５】図５５はユーザが端末から取得要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図５６】図５６はユーザが端末から書込要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図５７】図５７は管理装置を判定するために各サーバにおいて実行される処理のタイムチャートである。
【図５８】図５８は通常のサーバの管理装置判定部が実行する第１管理装置処理の詳細なフローチャートである。
【図５９】図５９は管理装置サーバの管理装置判定部が実行する第２管理装置処理の詳細なフローチャートである。
【図６０】図６０はサーバＢの停止中にサーバＡがファイルｄの取得要求を受け付けた場合と、その後にサーバＢが復旧した場合とにおいて、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の具体例を示すタイムチャートである。
【図６１】図６１はサーバＢの停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＡおよびサーバＣの保持サーバ記憶部の保持サーバ情報の例を示す図である。
【図６２】図６２はサーバＢの停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＢの保持サーバ記憶部の保持サーバ情報の例を示す図である。
【図６３】図６３は本発明の変形例２に係る分散ファイル管理システムの構成の概要を示す図である。
【図６４】図６４は本発明の変形例２に係る分散ファイル管理装置として機能するサーバが備える保持サーバ記憶部の管理サーバ情報の一例を示す図である。
【図６５】図６５は本発明の変形例２に係る分散ファイル管理装置として機能しないサーバであるサーバＤが備える機能的構成を示すブロック図である。
【符号の説明】
【００９３】
１０、３１０、５１０、６１０  分散ファイル管理装置
１５、５０  通信回線
２０、３０、４０、３２０、６２０、８２０  サーバ
２５、３５、４５、８５５  ファイル記憶部
６０、６５  端末
７１  ユーザ要求受信部
７３  要求種別判断部
７５  要求情報保持部
７７、６７７  ファイル記憶制御部
７９、１０７９  保持サーバ問合部
８１  保持応答受信部
８３  ファイル送信要求受信部
８５  ファイル送信部
８７  ファイル受信部
８９  ロック要求送信部
９１、３９１、１０９１  更新通知部
９３  完了通知受信部
９５  ユーザ要求応答部
１００、４００、５００、７００、１０００  保持サーバ記憶部
１０２  問合受付部
１０４、４０４、５０４、７０４  保持サーバ判断部
１０６  保持応答送信部
１０８  ファイル送信要求部
１１０、４１０  更新通知受付部
１１２、４１２  保持情報更新部
１１４  更新完了通知部
１１６  ロック要求受信部
１１８  ロック情報保持部
３２２  削除要求受信部
４２０  削除条件記憶部
４２２  時計部
４２４、５２４  削除対象判断部
４２６  削除要求部
６２４  ハッシュ値要求受信部
６２６  ハッシュ値計算部
６２８  ハッシュ値送信部
６３０  記憶部情報要求受信部
６３２  記憶部情報送信部
６３４  複写先受信部
７２８  ハッシュ値要求部
７３０  ハッシュ値受信部
７３２  更新許可要求受信部
７３４  ハッシュ値初期化部
７３６  更新許可送信部
７３８  記憶部情報要求部
７４０  記憶部情報受信部
７４２  複写先判定部
７４４  複写先送信部
８２０、９００  ファイルサーバ部
９１０  管理装置部
９２０、１３００  管理装置判定部
１２００、１４００  管理装置保持部
１２０２  管理装置通知部
１２０４、１４０２  管理装置通知受付部
１２０６  変更判断部
１２０８  管理装置決定部
１２１０  保持サーバ情報取得部
１２１２、１４１２  サーバ応答部
１２１４  サーバ応答受付部
【発明を実施するための最良の形態】
【００９４】
以下に、図面を参照しながら、本発明に係る分散ファイル管理システムの実施の形態１から実施の形態４までについて説明する。【００９５】
（実施の形態１）
図１から図１９までを参照して、本発明に係る実施の形態１について説明する。【００９６】
図１は、実施の形態１に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態１に係る分散ファイル管理システムは、ユーザが利用する端末と通信回線を介して接続され、電子ファイルを記憶しているファイル記憶部を備える複数のサーバのいずれかが、端末から送信される電子ファイルに関連するユーザの要求を受け付け、受け付けたユーザの要求に関連する処理を分散ファイル管理装置または他のサーバと連携して実行し、実行した処理の結果をユーザが利用する端末に送信するシステムの一例である。【００９７】
本実施の形態に係る分散ファイル管理システムは、分散ファイル管理装置１０と、サーバＡ２０、サーバＢ３０およびサーバＣ４０と、端末ａ６０および端末ｂ６５とから構成される。【００９８】
分散ファイル管理装置１０は、管理対象である複数のサーバが保持する電子ファイルに関する情報を管理する装置であり、電子ファイルに関連するユーザの要求を受け付けたサーバ（以下、「アクセス元サーバ」という。）からの問合せに応じて、ユーザの要求に係る電子ファイルを保持しているサーバ（以下、「保持サーバ」という。）を示す情報を、アクセス元サーバに送信する装置の一例である。【００９９】
本実施の形態に係る分散ファイル管理装置１０は、サーバＡ２０とサーバＢ３０とサーバＣ４０とを管理対象とし、サーバＡ２０において記憶保持されている電子ファイルに関する情報と、サーバＢ３０において記憶保持されている電子ファイルに関する情報と、サーバＣ４０において記憶保持されている電子ファイルに関する情報とを管理する。【０１００】
通信回線１５は、分散ファイル管理装置１０と、各サーバ２０、３０および４０とを接続する通信回線であり、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。【０１０１】
サーバＡ２０は、電子ファイルを記憶しているファイル記憶部２５を備え、ユーザが利用する各端末６０、６５や他のサーバ３０、４０から電子ファイルに関連する要求を受ける装置である。サーバＡ２０は、要求を受け付けると必要に応じて分散ファイル管理装置１０と連携して、受け付けた要求を処理し、処理した結果を要求の送信元に送信する。【０１０２】
また、サーバＢ３０、およびサーバＣ４０も、同様の機能を備え、それぞれ、ファイル記憶部３５、およびファイル記憶部４５を備える。【０１０３】
ここで、実施の形態１に係る各ファイル記憶部２５、３５、４５が記憶している電子ファイルに係るファイル構造の例について図２を参照して説明し、また、各ファイル記憶部２５、３５、４５が記憶している電子ファイルの具体例について、図３Ａ〜図３Ｃを参照して説明する。【０１０４】
図２は、本実施の形態に係る各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成の例を示す図である。分散ファイル管理装置１０の管理に係る電子ファイルが各サーバに保持される場合、各サーバは、予め定められた共通のフォルダ構成に従って保持する。【０１０５】
ユーザは、端末６０または６５を利用して、本図に示すような予め定められた共通のフォルダ構成を示すパスにより電子ファイルを特定し、特定した電子ファイルに関連する要求を各サーバ２０、３０、４０のいずれか、例えば、各端末６０、６５に予め設定されているサーバに送信する。【０１０６】
ここで、「電子ファイルに関連する要求」には、電子ファイルを取得する要求である「取得要求」と、電子ファイルを書き込む要求である「書込要求」とがある。「書込要求」には、既存の電子ファイルを更新する要求である「更新要求」と、新たな電子ファイルを格納する要求である「格納要求」とを含む。【０１０７】
本図に示す各電子ファイルは、フォルダ名「／ｄａｔａ」に関連するフォルダを頂点とする相対パスまたはファイル名により特定される。【０１０８】
フォルダ名が「／ｄａｔａ」であるフォルダは、その直下に、ファイル名が「ａ」である電子ファイルと、ファイル名が「ｂ」である電子ファイルと、ファイル名が「ｄ」である電子ファイルと、フォルダ名が「ｃ」であるフォルダとを有する。フォルダ名が「ｃ」であるフォルダは、直下に、ファイル名が「ｅ」である電子ファイルと、ファイル名が「ｆ」である電子ファイルとを有する。【０１０９】
ここで、「電子ファイル」には、電子ファイルの実体となる情報の他、ファイル名やファイルの更新日時等のファイルの属性情報を含む。以下単に「ファイルｘ」という場合、ファイル名が「ｘ」である電子ファイルをさす。また、単に「フォルダｘ」という場合、フォルダ名が「ｘ」であるフォルダをさす。【０１１０】
また、「ファイルｘ＿２」や「ファイルｘ＿３」という場合、ファイル名が「ｘ」である電子ファイルをさす。すなわち、「ファイルｘ」と、「ファイルｘ＿２」と、「ファイルｘ＿３」とは、ファイル名が「ｘ」である電子ファイルとして特定されるが、その実体およびファイル名以外のファイルの属性情報が異なる関係とする。【０１１１】
ここで説明した「電子ファイルに関する要求」に関連する用語、電子ファイルの表記方法は、全ての実施の形態において共通して用いる。【０１１２】
図３Ａ〜図３Ｃは、実施の形態１に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。【０１１３】
図３Ａは、実施の形態１に係るサーバＡ２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。【０１１４】
図３Ｂは、実施の形態１に係るサーバＢ３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ＿２」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。【０１１５】
図３Ｃは、実施の形態１に係るサーバＣ４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。【０１１６】
ここで、図１の説明に戻る。【０１１７】
通信回線５０は、各サーバ２０、３０、４０と、各端末６０、６５を接続する通信回線であり、例えば、ＬＡＮやＷＡＮ等である。【０１１８】
端末ａ６０は、ユーザが利用する端末である。端末ａ６０は、電子ファイルに関連するユーザの要求を受け付けると、その要求を各サーバ２０、３０、４０のいずれかに送信する。また、端末ａ６０は、要求を送信したサーバから結果を取得すると、取得した結果をモニタに表示する等により、取得した結果をユーザに提供する。端末ｂ６５も同様の機能を備える。【０１１９】
以上のように、予め定められたファイル構成により示される各ファイルが複数のサーバに分散保持されており、ユーザが所望の電子ファイルを保持していないサーバにアクセスした場合であっても、分散ファイル管理装置１０は、その電子ファイルに係るユーザの要求の処理を可能とする。【０１２０】
このような処理を可能とするために各装置が備える機能的構成について、図４から図７までを参照して説明する。【０１２１】
図４は、実施の形態１に係るサーバＡ２０が備える機能的構成の例を示すブロック図である。サーバＡ２０は、ユーザからの要求を受け付ける。ユーザの要求が取得要求である場合、サーバＡ２０は、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。サーバＢ３０およびサーバＣ４０も、サーバＡと同様の機能的構成を備える。【０１２２】
サーバＡ２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、更新通知部９１と、完了通知受信部９３と、ユーザ要求応答部９５とを備える。【０１２３】
ファイル記憶部２５は、図３を参照して説明したため、ここでの説明は省略する。【０１２４】
ユーザ要求受信部７１は、通信回線５０を介してユーザが利用する端末６０、６５から電子ファイルに関連する要求を受け付ける部位である。【０１２５】
要求種別判断部７３は、ユーザ要求受信部７１が受信した電子ファイルに関連する要求の種別を判断する部位である。実施の形態１において、電子ファイルに関連する要求には上記のように「取得要求」と「書込要求」とがあり、さらに、「書込要求」には「更新要求」と「格納要求」とがある。要求種別判断部７３は、ユーザ要求受信部７１が受信した電子ファイルに関連する要求がこれらのいずれであるかを判断する。【０１２６】
要求情報保持部７５は、ユーザ要求受信部７１が受信した要求に含まれる情報を一時的に記憶保持する部位である。要求情報保持部７５は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により実現される。【０１２７】
ファイル記憶制御部７７は、ファイル記憶部２５を制御する部位である。ファイル記憶制御部７７は、ファイル記憶部２５が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部２５が記憶している電子ファイルを読み出し、ファイル記憶部２５が記憶している電子ファイルを更新し、また、ファイル記憶部２５に新たな電子ファイルを格納する。【０１２８】
保持サーバ問合部７９は、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線５０を介して分散ファイル管理装置１０に問い合わせる部位である。【０１２９】
保持応答受信部８１は、保持サーバ問合部７９の問合わせを受けた分散ファイル管理装置１０の応答を、通信回線１５を介して受信する部位である。保持応答受信部８１は、自身がアクセス元サーバである場合にユーザの要求に係る電子ファイルを、自身のファイル記憶部２５が記憶していること、または、記憶しているファイル記憶部２５、３５、４５が存在しないことを内容とする応答を受信する。【０１３０】
ファイル送信要求受信部８３は、自身を備えるサーバがアクセス元サーバではなく、かつ、自身を備えるサーバがユーザの要求に関連する電子ファイルを保持している場合に、その電子ファイルをアクセス元サーバに送信する要求を、分散ファイル管理装置１０から受信する部位である。【０１３１】
ファイル送信部８５は、ファイル送信要求受信部８３が受信した要求を受け、その要求に係る電子ファイルをファイル記憶制御部７７から取得し、取得した電子ファイルをアクセス元サーバに送信する部位である。【０１３２】
ファイル受信部８７は、他のサーバのファイル送信部８５から送信された電子ファイルを受信する部位である。【０１３３】
ロック要求送信部８９は、要求種別判断部７３によりユーザ要求受信部７１が受信したユーザの要求の種別が書込要求であると判断された場合に、その書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求を、分散ファイル管理装置１０に送信する部位である。【０１３４】
更新通知部９１は、ファイル記憶制御部７７が電子ファイルを格納または更新した場合に、格納または更新された内容を分散ファイル管理装置１０に通知する部位である。【０１３５】
完了通知受信部９３は、分散ファイル管理装置１０から、処理の完了を内容とする通知を受信する部位である。【０１３６】
ユーザ要求応答部９５は、ユーザ要求受信部７１が受信したユーザの要求に対する応答を、通信回線５０を介してユーザが利用する端末６０、６５に送信する部位である。ここでの応答は、ユーザの要求が取得要求の場合はその取得要求に係る電子ファイルであり、ユーザの要求が書込要求の場合はその書込要求の完了の通知である。【０１３７】
図５は、実施の形態１に係る分散ファイル管理装置１０が備える機能的構成の例を示すブロック図である。【０１３８】
分散ファイル管理装置１０は、保持サーバ記憶部１００と、問合受付部１０２と、保持サーバ判断部１０４と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８とを備える。【０１３９】
保持サーバ記憶部１００は、分散ファイル管理装置１０の管理対象として設定されているサーバを特定するための情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルを含む情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部１００は、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。【０１４０】
ここで、本実施の形態に係る管理サーバ情報と、ファイル保持情報との具体例を図６と、図７とを参照して、説明する。【０１４１】
図６は、保持サーバ記憶部１００が記憶している管理サーバ情報１００ａの例を示す図である。本図が示すように、本実施の形態に係る管理サーバ情報１００ａは、「サーバ名」と、「ＩＰアドレス」とから構成される。【０１４２】
「サーバ名」は、分散ファイル管理装置１０の管理対象であるサーバに付されている名称を内容とする。「ＩＰアドレス」は、各サーバに付与されているＩＰアドレスを内容とする。そして、管理サーバ情報１００ａは、分散ファイル管理装置１０の管理対象である各サーバについて、サーバ名とＩＰアドレスとを対応付けて保持する。【０１４３】
本図は、例えば、「サーバ名」が「サーバＡ」により示されるサーバＡ２０について、「ＩＰアドレス」が「１９２．１６８．ｘｘｘ．１」であることを示す。【０１４４】
図７は、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報１００ｂは、「ファイルパス」と、「サーバ名」と、「フラグ」とから構成される。【０１４５】
「ファイルパス」は、各サーバが保持している電子ファイルのパスを内容とする。電子ファイルのパスは、図２を参照して説明したように、分散ファイル管理装置１０による管理される全てのサーバにおいて共通である。【０１４６】
「サーバ名」は、管理サーバ情報１００ａの「サーバ名」と同様のサーバの名称を内容とする。ファイル保持情報１００ｂの「サーバ名」は、「ファイルパス」に示される電子ファイルに対応付けられている。ファイル保持情報１００ｂの「サーバ名」には、対応する「ファイルパス」により示される電子ファイルを保持している全てのサーバの名称が格納される。【０１４７】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」により示される電子ファイル、すなわち、「ファイルａ」または「ファイルａ＿２」を保持するサーバが、サーバＡ２０とサーバＢ３０とであることを示す。【０１４８】
「フラグ」は、各サーバが保持する電子ファイルが最新の内容であるか否かを示すフラグを内容とする。本実施の形態では、各サーバが保持する電子ファイルが最新の内容である場合に「１」が、最新の内容ではない場合に「０」が格納される。【０１４９】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」により示される電子ファイルについて、「サーバＡ」が保持する電子ファイルの「フラグ」は「０」であり、「サーバＢ」が保持する電子ファイルの「フラグ」は「１」であることを示す。【０１５０】
すなわち、「サーバＡ」が保持する電子ファイルは、図３Ａに示すように「／ｄａｔａ／ａ」である。また、「サーバＢ」が保持する電子ファイルは、図３Ｂに示すように「／ｄａｔａ／ａ＿２」である。このように「フラグ」は、「／ｄａｔａ／ａ」により特定される電子ファイルにつき「サーバＢ」が「サーバＡ」より新しい内容を含むことを示している。【０１５１】
ここから、図５の説明に戻る。【０１５２】
問合受付部１０２は、サーバからのユーザの要求に係る電子ファイルを保持するサーバに関する問い合わせを受け付ける部位である。【０１５３】
保持サーバ判断部１０４は、保持サーバ記憶部１００を参照することにより、問合受付部１０２が受け付けた問い合わせに係る最新の電子ファイルを保持するサーバを判断する部位である。【０１５４】
保持応答送信部１０６は、アクセス元サーバが、ユーザの要求に係る最新の電子ファイルを保持しているか否かを応答する部位である。【０１５５】
ファイル送信要求部１０８は、保持サーバ判断部１０４の判断に従って、保持サーバからアクセス元サーバへのユーザの要求に関連する電子ファイルの送信を要求する部位である。【０１５６】
更新通知受付部１１０は、サーバが備えるファイル記憶部に新たな電子ファイルが格納され、または、ファイル記憶部が記憶している電子ファイルが更新されたことを内容とする通知を、サーバから受け付ける部位である。【０１５７】
保持情報更新部１１２は、更新通知受付部１１０が受け付けた通知の内容に従って、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｂを更新する部位である。【０１５８】
更新完了通知部１１４は、前記保持情報更新部１１２による保持サーバ記憶部１００の更新が完了したことを内容とする通知を、サーバ２０に送信する部位である。【０１５９】
ロック要求受信部１１６は、サーバ２０から送信されるロックの要求を受信する部位である。【０１６０】
ロック情報保持部１１８は、ロック要求受信部１１６が受信したロック要求に関連する電子ファイルを示す情報を、その電子ファイルに関連して保持情報更新部１１２が実行する処理が完了するまで、一時的に記憶保持する部位である。【０１６１】
以上のような機能を分散ファイル管理装置１０および各サーバ２０、３０、４０が備えることにより、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ２０、３０、４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。また、ユーザの取得要求に係る電子ファイルについて、複数のサーバが内容の新旧が異なる電子ファイルを保持している場合には、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。【０１６２】
ユーザが端末６０、６５を利用して取得要求または書込要求を送信した場合に、分散ファイル管理装置１０および各サーバ２０、３０、４０において実行される一連の処理について、図８および図９を参照して説明する。【０１６３】
図８は、ユーザが端末６０、６５から取得要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０１６４】
本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。【０１６５】
また、本図に示す「アクセス元サーバ」は、ユーザが利用する端末６０（６５）がユーザの要求を送信する送信先となるサーバである。本実施の形態におけるアクセス元サーバは、サーバＡ２０、サーバＢ３０またはサーバＣ４０のいずれか１つである。【０１６６】
さらに、本図に示す「保持サーバ」は、アクセス元サーバを除く、ユーザの要求に係る電子ファイルを保持しているサーバである。本実施の形態における保持サーバは、サーバＡ２０、サーバＢ３０またはサーバＣ４０のいずれかが候補となる。【０１６７】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ１０１）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求である。【０１６８】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。【０１６９】
続けて、保持サーバ問合部７９が分散ファイル管理装置１０に保持サーバを問合せると、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ１０２）。【０１７０】
続けて、保持サーバ判断部１０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバが保持サーバであるか否かを判断する（Ｓ１０３）。【０１７１】
まず、アクセス元サーバが保持サーバであると判断した場合（Ｓ１０３でＹｅｓ）、続けて、保持応答送信部１０６はアクセス元サーバが保持サーバであることを内容とする通知（以下、「保持通知」という。）を送信し、保持応答受信部８１は保持通知を受信する（Ｓ１０４）。【０１７２】
続けて、ファイル記憶制御部７７は、自身のファイル記憶部２５（３５、４５）から、取得要求に係る電子ファイルを読み出す（Ｓ１０５）。ここで、「自身の」とは、動作の主体となる部位を備えるサーバと同一のサーバが備える別の部位であることを示す。【０１７３】
続けて、ユーザ要求応答部９５は、電子ファイルをファイル記憶制御部７７から取得し、ユーザが利用する端末６０（６５）に送信し（Ｓ１０６）、処理を終了する。【０１７４】
また、アクセス元サーバが保持サーバでないと判断した場合（Ｓ１０３でＮｏ）、続けて、保持サーバ判断部１０４は保持サーバがあるか否かを判断する（Ｓ１０７）。【０１７５】
まず、保持サーバがないと判断した場合（Ｓ１０７でＮｏ）、続けて、保持応答送信部１０６は保持サーバがないことを内容とする通知（以下、「不保持通知」という。）を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ１０８）。【０１７６】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ１０９）、処理を終了する。【０１７７】
また、保持サーバがあると判断した場合（Ｓ１０７でＹｅｓ）、続けて、ファイル送信要求部１０８は保持サーバにファイル送信要求を送信し、保持サーバのファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ１１０）。【０１７８】
ここで、「ファイル送信要求」とは、特定の電子ファイルを保持するサーバに、その電子ファイルを他のサーバへ送信する要求である。【０１７９】
続けて、保持サーバのファイル記憶制御部７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５、３５、４５から読み出す（Ｓ１１１）。【０１８０】
続けて、保持サーバのファイル送信部８５は、ファイル記憶制御部７７が読み出した電子ファイルをアクセス元サーバに送信し、アクセス元サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ１１２）。【０１８１】
続けて、アクセス元サーバのユーザ要求応答部９５は、自身のファイル記憶制御部７７を介して、ユーザの取得要求に関連する電子ファイルを取得し、その電子ファイルをユーザが利用する端末６０（６５）に送信する（Ｓ１１３）。【０１８２】
続けて、アクセス元サーバのファイル記憶制御部７７は、ファイル受信部８７が受信した電子ファイルを自身のファイル記憶部２５、３５、４５に格納する（Ｓ１１４）。【０１８３】
続けて、更新通知部９１は、分散ファイル管理装置１０が備える保持サーバ記憶部１００のファイル保持情報１００ｂを更新することを内容とする通知（以下、「更新通知」という。）を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ１１５）。【０１８４】
ここでの「更新通知」は、より具体的には、ファイル保持情報１００ｂに、アクセス元サーバ２０、３０、４０のファイル記憶部２５、３５、４５に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。【０１８５】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ１１６）、処理を終了する。【０１８６】
図９は、ユーザが端末６０、６５から書込要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０１８７】
本実施の形態では、書込要求が「更新要求」である場合と「格納要求」である場合とで、各装置が実行する処理および各装置間で送受信される情報は同様である。【０１８８】
本図に示す「端末」および「アクセス元サーバ」は、図８に示す「端末」および「アクセス元サーバ」と同様であるため、ここでの説明は省略する。【０１８９】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された書込要求を、通信回線５０を介して受信する（Ｓ２０１）。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。【０１９０】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、書込要求に係る処理のタイムチャートであるため、この判断を省略している。【０１９１】
続けて、要求種別判断部７３は、要求情報保持部７５に書込要求に係る電子ファイルを保持させる（Ｓ２０２）。【０１９２】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、その書込要求に係る電子ファイルに関連する書込要求を排除する要求（以下、「ロック要求」という。）を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ２０３）。【０１９３】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ２０４）。【０１９４】
また、ファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５、３５、４５に書き込む（Ｓ２０５）。【０１９５】
続けて、ファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ２０６）。【０１９６】
まず、書き込みが完了していないと判断した場合（Ｓ２０６でＮｏ）、更新通知部９１は待機する。【０１９７】
また、書き込みが完了したと判断した場合（Ｓ２０６でＹｅｓ）、更新通知部９１は、ファイル記憶制御部７７から完了の通知を受けて、分散ファイル管理装置１０に更新通知を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ２０７）。【０１９８】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新する（Ｓ１１６）。【０１９９】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ２０９）。【０２００】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部９３は完了の通知を受信する（Ｓ２１０）。【０２０１】
続けて、アクセス元サーバのユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信して（Ｓ２１１）、処理を終了する。【０２０２】
以上が、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付け、さらにその後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合を例に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理について、図１０から図１５までを参照してより具体的に説明する。【０２０３】
図１０は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。【０２０４】
まず、アクセス元サーバであるサーバＡ２０のユーザ要求受信部７１は、ユーザが利用する端末ａ６０から送信された取得要求を、通信回線５０を介して受信する（Ｓ１０１）。ここでの「取得要求」は、ユーザが利用する端末ａ６０が最新の内容を有するファイルａを取得する要求を内容とする情報である。【０２０５】
続けて、要求種別判断部７３がユーザ要求受信部７１が受信した要求を取得し、その要求が取得要求であると判断し（図示しない）、続けて、保持サーバ問合部７９が分散ファイル管理装置１０に保持サーバを問合せると、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ１０２）。【０２０６】
続けて、保持サーバ判断部１０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、サーバＡ２０が保持サーバであるか否かを判断する（Ｓ１０３）。【０２０７】
ここで、ファイル保持情報１００ｂが図７に示す内容である場合、サーバＡ２０は、「／ｄａｔａ／ａ」により示されるファイル、すなわち、ファイルａを保持するが、「フラグ」が「０」であり、サーバＡ２０は最新の内容のファイルａを保持していない。したがって、保持サーバ判断部１０４は、サーバＡ２０が保持サーバではないと判断する（Ｓ１０３でＮｏ）。【０２０８】
アクセス元サーバであるサーバＡ２０が保持サーバでないと判断した場合（Ｓ１０３でＮｏ）、続けて、保持サーバ判断部１０４は保持サーバがあるか否かを判断する（Ｓ１０７）。【０２０９】
ここで、ファイル保持情報１００ｂが図７に示す内容である場合、サーバＢ３０は、「／ｄａｔａ／ａ」により示されるファイル、すなわち、ファイルａを保持し、「フラグ」が「１」である。したがって、サーバＢ３０が保持サーバであり、保持サーバ判断部１０４は保持サーバがあると判断する（Ｓ１０７でＹｅｓ）。【０２１０】
また、保持サーバがあると判断した場合（Ｓ１０７でＹｅｓ）、続けて、ファイル送信要求部１０８は保持サーバであるサーバＢ３０にファイルａの送信要求を送信し、保持サーバのファイル送信要求受信部８３はファイルａの送信要求を受信する（Ｓ１１０）。【０２１１】
ここで、「ファイルａの送信要求」とは、ファイルａを保持するサーバＢ３０に、そのファイルａをサーバＡ２０へ送信する要求を内容とする。【０２１２】
続けて、サーバＢ３０のファイル記憶制御部７７は、ファイルａを自身のファイル記憶部３５から読み出す（Ｓ１１１）。【０２１３】
続けて、サーバＢ３０のファイル送信部８５は、ファイルａをアクセス元サーバであるサーバＡ２０に送信し、サーバＡ２０のファイル受信部８７はファイルａを受信する（Ｓ１１２）。【０２１４】
続けて、サーバＡ２０のユーザ要求応答部９５は、自身のファイル記憶制御部７７を介してファイルａを取得し、取得したファイルａをユーザが利用する端末ａ６０に送信する（Ｓ１１３）。【０２１５】
続けて、サーバＡ２０のファイル記憶制御部７７は、取得したファイルａを自身のファイル記憶部２５に格納する（Ｓ１１４）。【０２１６】
ここで、図１１は、端末ａ６０からファイルａの取得要求を受け付けたサーバＡ２０のファイル記憶部２５が記憶している電子ファイル情報２５ａを示す図である。サーバＡ２０のファイル記憶部２５が記憶しているファイル情報２５ａの初期状態を示す図３Ａの「ａ」が、本図では「ａ＿２」に更新されている。【０２１７】
ここから、図１０の説明に戻る。【０２１８】
続けて、更新通知部９１は更新通知を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ１１５）。【０２１９】
ここでの「更新通知」は、ファイル保持情報１００ｂに、サーバＡ２０のファイル記憶部２５にファイルａが更新されたことを内容とする通知である。【０２２０】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ１１６）、処理を終了する。【０２２１】
ここで、図１２は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報１００ｂを示す図である。ファイル保持情報１００ｂの初期状態を示す図７の「／ｄａｔａ／ａ」に対応する「サーバＡ」の「フラグ」の「０」が、本図では「１」に更新されている。【０２２２】
以上が、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報である。この後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報について、続けて説明する。【０２２３】
図１３は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。【０２２４】
まず、アクセス元サーバであるサーバＡ２０のユーザ要求受信部７１は、ユーザが利用する端末ａ６０から送信された書込要求を、通信回線５０を介して受信する（Ｓ２０１）。ここでの「書込要求」は、サーバＡが保持しているファイルａを更新する要求を内容とする情報である。【０２２５】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が書込要求であると判断し（図示しない）、続けて、要求種別判断部７３は、要求情報保持部７５にファイルａを保持させる（Ｓ２０２）。【０２２６】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、その書込要求に係る電子ファイルであるファイルａのロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ２０３）。【０２２７】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルであるファイルａに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ２０４）。【０２２８】
また、ファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持しているファイルａを取得し、取得したファイルａを、自身のファイル記憶部２５、３５、４５に書き込む（Ｓ２０５）。【０２２９】
ここで、図１４は、端末ａ６０からファイルａの更新要求により更新されたサーバＡ２０のファイル記憶部２５が記憶している電子ファイル情報２５ａを示す図である。ファイルａの取得要求を受け付けたサーバＡ２０のファイル記憶部２５が記憶しているファイル情報２５ａを示す図１１の「ａ＿２」が、本図では「ａ＿３」に更新されている。【０２３０】
ここから、図１３の説明に戻る。【０２３１】
続けて、ファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ２０６）。【０２３２】
まず、書き込みが完了していないと判断した場合（Ｓ２０６でＮｏ）、ファイル記憶制御部７７は完了まで書き込みを継続する。【０２３３】
また、書き込みが完了したと判断した場合（Ｓ２０６でＹｅｓ）、更新通知部９１は、ファイル記憶制御部７７から完了の通知を受けて、サーバＡ２０のファイル記憶部２５のファイルａを更新したことを内容とする更新通知を分散ファイル管理装置１０に送信し、分散ファイル管理装置１０の更新通知受付部１１０は、その更新通知を受け付ける（Ｓ２０７）。【０２３４】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新する（Ｓ１１６）。【０２３５】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持しているファイルａに関連する情報を消去することにより、ロックを解除する（Ｓ２０９）。【０２３６】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバであるサーバＡ２０に通知し、サーバＡ２０の完了通知受信部９３は完了の通知を受信する（Ｓ２１０）。【０２３７】
続けて、サーバＡ２０のユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末ａ６０に送信して（Ｓ２１１）、処理を終了する。【０２３８】
ここで、図１５は、サーバＡ２０が端末ａ６０からファイルａの更新要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報１００ｂを示す図である。ファイルａの取得要求を受け付けた後のファイル保持情報１００ｂを示す図１２の「／ｄａｔａ／ａ」に対応する「サーバＢ」の「フラグ」の「１」が、本図では「０」に更新されている。【０２３９】
以上が、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付け、さらにその後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理である。【０２４０】
続けて、図１６から図１８までを参照して、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例を説明する。【０２４１】
図１６は、ユーザが利用する端末６０（６５）に接続されたモニタに表示される、ユーザが特定のファイルに対する要求を入力するための画面の例を示す図である。ユーザは、本図に示す画面表示を見て、取得要求や書込要求をサーバに送信する。【０２４２】
本図に例示する入力画面２００は、ファイル構成表示部２０２と、選択ファイル表示部２０４と、取得ボタン２０６と、書込ファイル入力部２０８と、書込ボタン２１０とから構成される。【０２４３】
ファイル構成表示部２０２は、分散ファイル管理装置１０の管理対象である各サーバ２０、３０、４０における電子ファイルのパスを表示する部分である。【０２４４】
ファイル構成表示部２０２に表示される内容は、図２に示す電子ファイルのパスと同様の構成であり、端末６０（６５）からサーバ２０、３０、４０を介して分散ファイル管理装置１０のファイル保持情報１００ｂにアクセスすることにより、取得される。【０２４５】
ユーザはファイル構成表示部２０２に表示される電子ファイルをマウス等の入力機器を利用して、取得要求または書込要求に関連する電子ファイルを選択する。本図のファイル構成表示部２０２は、ファイルａにカーソルがあたっており、ファイルａが選択されている例を示す。【０２４６】
選択ファイル表示部２０４は、ユーザにより選択されている電子ファイルを表示する部分である。本図は上記のようにファイルａが選択されている。そのため、選択ファイル表示部２０４の「選択ファイル」には、「／ｄａｔａ／ａ」というパスが表示されている。【０２４７】
取得ボタン２０６は、取得要求を端末６０（６５）に送信させるボタンである。本図のような入力画面２００において、ユーザが取得ボタン２０６を押下すると、端末６０（６５）はサーバ２０、３０、４０のいずれかに、ファイルａの取得要求を送信する。【０２４８】
書込ファイル入力部２０８は、サーバ２０、３０、４０が保持するファイルを更新し、または新規格納させる電子ファイルを入力する部分である。本図は「端末ａ／ｘｙｚ」というパスにより特定される、端末ａ６０（６５）が保持するファイルｘｙｚが入力されている例である。【０２４９】
書込ボタン２１０は、書込要求を端末６０（６５）に送信させるボタンである。本図のような入力画面２００において、ユーザが書込ボタン２１０を押下すると、端末６０（６５）はサーバ２０、３０、４０のいずれかに、ファイルａが選択されているため、ファイルａの書込要求を送信する。また、この書込要求により更新されたファイル記憶部２５、３５、４５が記憶しているファイルａの実体は、書込ファイル入力部２０８に入力されているファイルｘｙｚの実体と同一である。【０２５０】
図１７は、ユーザがファイルａの取得要求を指示した場合に、ユーザが利用する端末６０（６５）に接続されたモニタに表示される結果の例を示す図である。【０２５１】
本図に示す取得結果表示画面２２０は、ファイルａの取得要求を送信することにより、ユーザの利用する端末６０（６５）がファイルａを取得した場合に、モニタ上に表示される画面である。【０２５２】
取得結果表示画面２２０は、取得ファイル表示部２２２と、閲覧ボタン２２４と、保存ボタン２２６とから構成される。【０２５３】
取得ファイル表示部２２２は、取得したファイルの名称を表示する。【０２５４】
閲覧ボタン２２４は、取得したファイルをモニタ上に表示させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルがモニタ上に表示される。【０２５５】
保存ボタン２２６は、取得したファイルを端末６０（６５）が備える記憶部に保存させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルが端末６０（６５）の記憶部に保存される。【０２５６】
図１８は、ユーザがファイルａの更新要求を指示した場合に、ユーザが利用する端末６０（６５）に接続されたモニタに表示される結果の例を示す図である。【０２５７】
本図に示す更新結果表示画面２３０は、ファイルａの更新要求に関連する処理が完了した場合に、モニタ上に表示される画面である。【０２５８】
更新結果表示画面２３０は、更新結果表示部２３２と、確認ボタン２３４とから構成される。【０２５９】
更新結果表示部２３２には、端末６０（６５）から送信された書込要求が電子ファイルを更新する要求である場合に、その要求に関連する電子ファイルの名称と、その処理が完了したこととが示される。【０２６０】
これにより、端末６０（６５）を利用するユーザは処理が完了したことを知ることができる。【０２６１】
確認ボタン２３４は、押下されると更新結果表示画面２３０を閉じるボタンである。【０２６２】
これらのような表示画面により、ユーザはモニタ上で要求を送信し、要求に係る処理の結果を取得することができる。【０２６３】
以上、本発明の実施の形態１に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。【０２６４】
保持サーバ記憶部１００は、ファイル保持情報１００ｂの「フラグ」に代えて、電子ファイルの「作成日」を保持してもよい。【０２６５】
図１９は、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｃの他の例を示す図である。本図に示すファイル保持情報１００ｃは、図７に示すファイル保持情報１００ｂの「フラグ」に代えて、「作成日」を保持している。【０２６６】
電子ファイルの「作成日」が最も現在に近い電子ファイルは、最新の内容を保持する。したがって、電子ファイルの「作成日」によって、各サーバが保持する電子内容が最新であるか否かを判断することができる。【０２６７】
例えば、本図に示すファイル保持情報１００ｃは、「ファイルパス」が「／ｄａｔａ／ａ」であるファイルａを、「サーバＡ」と「サーバＢ」とが保持しており、「サーバＡ」が保持するファイルａの「作成日」が「２００６年３月３日」であり、「サーバＢ」が保持するファイルａの「作成日」が「２００６年３月２０日」である情報を含む。【０２６８】
この場合、「作成日」が最も現在に近い「サーバＢ」が保持するファイルａが最新の内容を含み、「サーバＡ」が保持するファイルａは古い内容を含んでいる。【０２６９】
以上のように、実施の形態１に係る分散ファイル管理システムは、書込要求を受け付けた場合には、アクセス元サーバのファイル記憶部のみに新しい電子ファイルを書き込む。また、実施の形態１に係る分散ファイル管理システムは、取得要求を受け付けた場合には、最新の内容を含む電子ファイルを保持するサーバから電子ファイルを取得することにより、ユーザがいずれのサーバにアクセスしたかを意識することなく、最新の内容を有する電子ファイルをユーザに提供する。【０２７０】
これにより、更新要求に係る保持サーバが複数ある場合に、これら複数の保持サーバが保持する電子ファイルの同期をとりながら更新する場合に比べて、データの転送量を抑制することが可能となる。特に、同一の電子ファイルを保持するサーバが多数ある場合には、更新時のデータの転送量の抑制の利点は大きい。【０２７１】
（実施の形態２）
実施の形態１に係る分散ファイル管理システムでは、取得要求を受け付けたアクセス元サーバがその取得要求に係る電子ファイルを保持していない場合、分散ファイル管理装置からの情報により、その管理に係るサーバの中に、取得要求に係る電子ファイルを保持するサーバを特定し、そのサーバから取得要求に係る電子ファイルを取得し、自身のファイル記憶部に格納する。【０２７２】
そのため、長時間経過すると、全てのサーバが、ほぼ全ての電子ファイルを重複して保持することとなる。端末から取得や更新の要求を受けることが少ない電子ファイルを、多くのサーバが重複して保持することは、ストレージの無駄な利用といえる。【０２７３】
そこで、実施の形態２では、ストレージの有効活用が可能な分散ファイル管理システムを提供する。【０２７４】
図２０から図２８までを参照して、本発明に係る実施の形態２について説明する。【０２７５】
図１に示す分散ファイル管理システムの構成の概要は、実施の形態２に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。【０２７６】
実施の形態２に係る分散ファイル管理システムは、ユーザが利用する端末６０、６５と、各端末６０、６５からユーザの要求を受け付け、ファイル記憶部２５、３５、４５をそれぞれに備えるサーバＡ３２０と、サーバＢ３３０と、サーバＣ３４０と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルに関する情報を管理する分散ファイル管理装置とにより構成される。【０２７７】
また、実施の形態２に係る各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は、実施の形態１と同様に、各ファイル記憶部において共通するパスで示され、その具体例は、図２に示す実施の形態１のフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。【０２７８】
図２０Ａ〜図２０Ｃは、実施の形態２に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。【０２７９】
図２０Ａは、実施の形態２に係るサーバＡ３２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」を記憶している例を示す。【０２８０】
図２０Ｂは、実施の形態２に係るサーバＢ３３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。【０２８１】
図２０Ｃは、実施の形態２に係るサーバＣ３４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。【０２８２】
図２１は、実施の形態２に係るサーバＡ３２０が備える機能的構成の例を示すブロック図である。サーバＡ３２０は、実施の形態１に係るサーバＡ２０と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置３１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態２に係るサーバＡ３２０は、実施の形態１に係るサーバＡ２０とは異なり、一定の条件を満たす電子ファイルについては、分散ファイル管理装置３１０の要求に従って、ファイル記憶部２５から削除する。【０２８３】
サーバＡ３２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、完了通知受信部９３と、ユーザ要求応答部９５と、更新通知部３９１と、削除要求受信部３２２とを備える。【０２８４】
実施の形態２に係るサーバＡ３２０について、実施の形態１に係るサーバＡ２０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。【０２８５】
削除要求受信部３２２は、分散ファイル管理装置３１０から、通信回線１５を介して、自身のファイル記憶部２５が記憶している電子ファイルの一部または全部を削除する要求を受信する部位である。【０２８６】
更新通知部３９１は、ファイル記憶制御部７７がファイル記憶部２５に新たな電子ファイルを格納し、電子ファイル情報２５ａを更新し、または、電子ファイル情報２５ａから電子ファイルの一部または全部を削除した場合に、格納、更新、または削除された内容を分散ファイル管理装置１０に通知する部位である。【０２８７】
以上が、本実施の形態に係るサーバＡ３２０の機能的構成である。サーバＢ３３０およびサーバＣ３４０も、サーバＡ３２０と同様の機能的構成を備える。【０２８８】
図２２は、実施の形態２に係る分散ファイル管理装置３１０が備える機能的構成の例を示すブロック図である。実施の形態２に係る分散ファイル管理装置３１０と、実施の形態１に係る分散ファイル管理装置１０との違いは、実施の形態２に係る分散ファイル管理装置３１０が、ユーザの要求を一定以上の期間、サーバが要求を受信していない電子ファイルを複数のサーバが保持している場合に、いずれか１つのサーバ以外が保持するその電子ファイルをサーバに削除させることである。【０２８９】
分散ファイル管理装置３１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部４００と、保持サーバ判断部４０４と、更新通知受付部４１０と、保持情報更新部４１２と、削除条件記憶部４２０と、時計部４２２と、削除対象判断部４２４と、削除要求部４２６とを備える。【０２９０】
実施の形態２に係る分散ファイル管理装置３１０について、実施の形態１に係る分散ファイル管理装置１０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。【０２９１】
保持サーバ記憶部４００は、実施の形態１に係る保持サーバ記憶部１００と同様に、分散ファイル管理装置３１０の管理対象として設定されているサーバに関する情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルに関連する情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部４００は、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。【０２９２】
実施の形態２に係る管理サーバ情報４００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。【０２９３】
実施の形態２に係るファイル保持情報の具体例について、図２３を参照して説明する。【０２９４】
図２３は、保持サーバ記憶部４００が記憶しているファイル保持情報４００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報４００ｂは、「ファイルパス」と、「サーバ名」と、「アクセス日」とから構成される。【０２９５】
本実施の形態に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。【０２９６】
「アクセス日」は、「サーバ名」に格納された情報により示されるサーバが、「ファイルパス」により示される電子ファイルに関連するユーザの要求を、最後に受付けた日付けが格納される。【０２９７】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」である電子ファイルについて、「サーバＡ」が、ユーザから要求を受け付けた最後の日が「２００６０３０３」、すなわち、「２００６年３月３日」であることを示す。【０２９８】
ここから、図２２の説明に戻る。【０２９９】
保持サーバ判断部４０４は、保持サーバ記憶部４００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。【０３００】
また、保持サーバ判断部４０４は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバであると判断した場合には、かかる判断を保持情報更新部１１２に出力する。【０３０１】
さらに、保持サーバ判断部４０４は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する。【０３０２】
更新通知受付部４１０は、各サーバが備えるファイル記憶部２５、３５、４５に新たな電子ファイルが格納され、ファイル記憶部２５、３５、４５が記憶している電子ファイルが更新され、または、ファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知を、サーバから受け付ける部位である。【０３０３】
保持情報更新部４１２は、保持サーバ判断部４０４から受け付けた情報または更新通知受付部４１０が受け付けた情報に従って、保持サーバ記憶部４００が記憶しているファイル保持情報４００ｂを更新する部位である。【０３０４】
削除条件記憶部４２０は、各サーバが保持する電子ファイルを削除するための条件を含む情報である削除条件情報を記憶している部位である。【０３０５】
図２４は、実施の形態２に係る削除条件情報４２０ａの例を示す図である。本図に示す削除条件は、ファイル保持情報４００ｂの「アクセス日」から「３０日」以上、経過している場合に、そのサーバが保持するその電子ファイルを削除することを条件とする例である。【０３０６】
ここから、図２２の説明に戻る。【０３０７】
時計部４２２は、現在の日時を保持している部位である。【０３０８】
削除対象判断部４２４は、削除の対象となる電子ファイルをサーバごとに判断する部位である。より具体的には、削除対象判断部４２４は、ファイル保持情報４００ｂの「アクセス日」が示す日付けから削除条件情報４２０ａに含まれる期間を超えて保持されている電子ファイルがあり、かつ、その電子ファイルを保持するサーバが複数ある場合には、「アクセス日」が最も新しいサーバが保持する電子ファイルのみを残して、他のサーバが保持するその電子ファイルを削除すると判断する。【０３０９】
本実施の形態に係る削除対象判断部４２４は、予め定められた周期で上記の判断処理を実行する。【０３１０】
削除要求部４２６は、削除対象判断部４２４により削除の対象として判断された電子ファイルを保持するサーバに、その電子ファイルを削除する要求を送信する部位である。【０３１１】
以上のような機能を分散ファイル管理装置１０および各サーバ２０、３０、４０が備えることにより、実施の形態１と同様に、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ２０、３０、４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。【０３１２】
また、ユーザの取得要求に係る電子ファイルを複数のサーバが保持する場合、その電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。【０３１３】
さらに、同一の電子ファイルが複数のサーバに重複して保持されている場合、予め定められた条件に従って、いずれかのサーバが保持する電子ファイルを残して、他のサーバが保持する電子ファイルを削除するため、ストレージの有効な活用が可能となる。【０３１４】
図２５は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０３１５】
本図において、図８に示す実施の形態１に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。【０３１６】
本図に示すタイムチャートと図８に示すタイムチャートとの違いは、電子ファイルに関するアクセス元サーバの保持判断（Ｓ１０３）において肯定判定がなされた後に（Ｓ１０３でＹｅｓ）、保持通知（Ｓ１０４）がなされるまでに、保持情報更新処理が（Ｓ３１０）実行される点にある。【０３１７】
保持サーバ判断部４０４がアクセス元サーバが保持サーバであると判断した場合（Ｓ１０３でＹｅｓ）、続けて、保持情報更新部４１２は、保持サーバ判断部の判断を受け、アクセス元サーバが保持する、ユーザの要求に係る電子ファイルに関するファイル保持情報４００ｂの「アクセス日」を、時計部４２２から取得した日付けにより更新する（Ｓ３０１）。【０３１８】
図２６は、ユーザが端末６０、６５から書込要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０３１９】
本図において、図９に示す実施の形態１に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。【０３２０】
本図に示すタイムチャートと図８に示すタイムチャートとの違いは、分散ファイル管理装置３１０が、アクセス元サーバ以外の保持サーバの有無を判断し、アクセス元サーバ以外の保持サーバがある場合には、そのサーバが保持する電子ファイルをも更新する点にある。このような処理により、複数のサーバに重複して保持されている電子ファイルの内容は同期する。【０３２１】
分散ファイル管理装置３１０の更新完了通知部１１４がファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知した後に（Ｓ２０９）、続けて、分散ファイル管理装置３１０の保持サーバ判断部４０４は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する（Ｓ２１２）。【０３２２】
アクセス元サーバ以下に保持サーバがないと判断した場合（Ｓ２１２でＮｏ）、分散ファイル管理装置３１０は、サーバからの要求または問合せを受け付けるまで待機する。【０３２３】
また、アクセス元サーバ以下に保持サーバがあると判断した場合（Ｓ２１２でＹｅｓ）、ファイル送信要求部１０８は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ３２０のファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ２１３）。【０３２４】
ここで、「ファイル送信要求」とは、アクセス元サーバに、ユーザの書込要求に係る電子ファイルを他の保持サーバへ送信する要求を内容とする。【０３２５】
続けて、ファイル記憶制御部７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５から読み出す（Ｓ２１４）。【０３２６】
続けて、アクセス元サーバ３２０のファイル送信部８５は、ファイル記憶制御部７７が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ２１５）。【０３２７】
保持サーバのファイル記憶制御部７７は、ファイル受信部８７が受信した電子ファイルにより自身のファイル記憶部２５が記憶している電子ファイルを更新する（Ｓ２１６）。【０３２８】
続けて、更新通知部３９１は、分散ファイル管理装置３１０に更新通知を送信し、分散ファイル管理装置３１０の更新通知受付部４１０は更新通知を受け付ける（Ｓ２１７）。【０３２９】
ここでの「更新通知」は、より具体的には、アクセス元サーバ２０、３０、４０のファイル記憶部２５、３５、４５に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。【０３３０】
続けて、保持情報更新部４１２は、更新通知受付部４１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ２１８）、処理を終了する。【０３３１】
以上が、サーバのいずれかがユーザの要求を受け付けた場合に、各装置において実行される処理である。本実施の形態では、上記のように、ユーザが最後にアクセスした日から一定期間が経過した電子ファイルを保持するサーバについては、その電子ファイルを削除する。このとき、分散ファイル管理装置３１０が実行する処理を、図２７を参照して説明する。【０３３２】
図２７は、各サーバが保持する電子ファイルを削除する際に、本発明の実施の形態２に係る分散ファイル管理装置３１０において実行される処理の一例を示すフローチャートである。【０３３３】
まず、削除対象判断部４２４は、自身が保持している予め定められた更新時刻であるか否かを、時計部４２２から取得する現在時刻と比較することにより判断する（Ｓ３００）。【０３３４】
更新時刻ではないと判断した場合（Ｓ３００でＮｏ）、削除対象判断部４２４は更新時刻であるか否かの判断を継続する。【０３３５】
また、更新時刻であると判断した場合（Ｓ３００でＹｅｓ）、分散ファイル管理装置３１０は、保持サーバ記憶部４００のファイル保持情報４００ｂに含まれる全ての電子ファイルについて、以下に説明する、最終アクセスから一定時間経過したか否かの判断（Ｓ３０２）から保持情報の更新（Ｓ３０７）までの処理を繰り返す（Ｓ３０１）。【０３３６】
まず、削除対象判断部４２４は、ファイル保持情報４００ｂの「アクセス日」と削除条件情報４２０ａと時計部４２２から現在の日付けとを取得し、現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過しているか否かを判断する（Ｓ３０２）。【０３３７】
現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していないと判断した場合（Ｓ３０２でＮｏ）、次の電子ファイルについて、経過時間の判断処理（Ｓ３０２）を実行する。【０３３８】
現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していると判断した場合（Ｓ３０２でＹｅｓ）、削除対象判断部４２４は、同一の電子ファイルを保持しているサーバが複数あるか否かを判断する（Ｓ３０３）。【０３３９】
同一の電子ファイルを保持しているサーバが複数ではないと判断した場合（Ｓ３０３でＮｏ）、次の電子ファイルについて、経過時間の判断処理（Ｓ３０２）を実行する。したがって、最終アクセス日から一定期間が経過した電子ファイルの保持サーバが１つのみの場合、その電子ファイルは削除されない。【０３４０】
また、同一の電子ファイルを保持しているサーバが複数であると判断した場合（Ｓ３０３でＹｅｓ）その電子ファイルを保持するサーバの中で「アクセス日」が最も新しいサーバ除く、各サーバが保持する電子ファイルを削除の対象と決定する（Ｓ３０４）。【０３４１】
削除要求部４２６は、削除対象判断部４２４により削除の対象と決定された電子ファイルを保持しているサーバに、その電子ファイルの削除要求を送信する（Ｓ３０５）。【０３４２】
更新通知受付部４１０は、削除要求部４２６からの要求に係る電子ファイルの削除処理を実行したサーバから、更新通知を受け付ける（Ｓ３０６）。【０３４３】
ここで受信する「更新通知」は、保持サーバ２０、３０、４０のファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知である。【０３４４】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、ファイル保持情報４００ｂを更新して（Ｓ３０７）、処理を終了する。【０３４５】
以上が、各サーバが保持する電子ファイルの削除の際に、分散ファイル管理装置３１０が実行する処理である。ファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０が、削除対象判断部４２４が更新時刻であると判断した後に（Ｓ３００でＹｅｓ）実行する処理について、より具体的に説明する。【０３４６】
まず、「ファイルパス」が「／ｄａｔａ／ａ」であるファイルａについて、時計部４２２から取得した現在の日付けが、「アクセス日」である「２００６年３月３日」から削除条件情報４２０ａに含まれる期間である「３０日」が経過しているか否かを判断する（Ｓ３０２）。ここで、現在の日付けを「２００６年３月３０日」とする。【０３４７】
「２００６年３月３０日」は「２００６年３月３日」から「３０日」が経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｂ」であるファイルｂについて同様の判断処理（Ｓ３０２）を実行する。【０３４８】
ファイルｂも、ファイルａの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｃ／ｅ」であるファイルｅについて同様の判断処理（Ｓ３０２）を実行する。【０３４９】
ファイルｅも、ファイルａの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｄ」であるファイルｄについて同様の判断処理（Ｓ３０２）を実行する。【０３５０】
ファイルｄについて、保持サーバはサーバＢ３３０と、サーバＣ３４０とである。ファイルｄについて、サーバＢ３３０の「アクセス日」は「２００６年３月３日」であり、現在の日付である「２００６年３月３０日」は「アクセス日」から「３０日」経過していない。【０３５１】
また、ファイルｄについて、サーバＣ３４０の「アクセス日」は「２００６年２月２０日」であり、現在の日付である「２００６年３月３０日」は「アクセス日」から「３０日」経過している。【０３５２】
そのため、削除対象判断部４２４は、ファイルｄにつき、現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していると判断する（Ｓ３０２でＹｅｓ）。【０３５３】
続けて、削除対象判断部４２４は、ファイルｄを保持しているサーバが複数あるため、ファイルｄを保持するサーバである、サーバＢ３３０とサーバＣ３４０との中で、最も新しい「アクセス日」に関連するサーバであるサーバＢ３３０以外のサーバ、すなわち、サーバＣ３４０が保持するファイルｄを削除の対象と決定する（Ｓ３０３）。【０３５４】
続けて、削除要求部４２６は、サーバＣ３４０にファイルｄの削除を要求する（Ｓ３０４）。【０３５５】
続けて、更新通知受付部４１０は、削除要求部４２６からの要求に応じてファイルｄを削除したサーバＣ３４０から、更新通知を受け付ける（Ｓ３０５）。【０３５６】
ここで受信する「更新通知」は、サーバＣ３４０のファイル記憶部４５が記憶しているファイルｄが削除されたことを内容とする通知である。【０３５７】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、ファイル保持情報４００ｂを更新して（Ｓ３０６）、処理を終了する。【０３５８】
ここで、図２８は、ファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０による電子ファイルの削除処理が終了した後のファイル保持情報４００ｃを示す図である。【０３５９】
上述のようにファイルａと、ファイルｂと、ファイルｅとは削除されないため、削除処理後のファイル保持情報４００ｂに変更はない。【０３６０】
また、「サーバＣ」が保持していたファイルｄは削除されたため、「／ｄａｔａ／ｄ」の保持サーバは「サーバＢ」のみに更新されている。【０３６１】
実施の形態２において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。【０３６２】
以上、本発明の実施の形態２に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。【０３６３】
例えば、実施の形態２に係る分散ファイル管理装置３１０は、予め定められた周期で削除処理を実行したが、サーバがユーザから更新要求を受け付けたときに、削除処理を実行してもよい。【０３６４】
また、分散ファイル管理装置３１０は、予め定められた周期と、サーバがユーザから更新要求を受け付けたときとの両方で、削除処理を実行してもよい。【０３６５】
（変形例１）
ここで、サーバがユーザから更新要求を受け付けたときに、削除処理を実行する場合である変形例１について、図２９から図３３までを参照して説明する。【０３６６】
図２９は、変形例１に係る分散ファイル管理装置５１０が備える機能的構成の例を示すブロック図である。分散ファイル管理装置５１０は、管理するサーバのいずれかが更新要求を受け付けた場合に、アクセス元サーバ以外の保持サーバに更新要求に係る電子ファイルを削除する要求を送信する。【０３６７】
分散ファイル管理装置５１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、更新通知受付部４１０と、保持情報更新部４１２と、削除要求部４２６と、保持サーバ記憶部５００と、保持サーバ判断部５０４と、削除対象判断部５２４とを備える。【０３６８】
保持サーバ記憶部５００は、実施の形態２に係る保持サーバ記憶部４００と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部であり、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。【０３６９】
変形例１に係る管理サーバ情報５００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。【０３７０】
変形例１に係るファイル保持情報の具体例について、図３０を参照して説明する。【０３７１】
図３０は、保持サーバ記憶部５００が記憶しているファイル保持情報５００ｂの例を示す図である。本図に示すように、本実施の形態に係るファイル保持情報５００ｂは、「ファイルパス」と、「サーバ名」とから構成される。【０３７２】
本変形例に係るファイル保持情報５００ｂの「ファイルパス」と、「サーバ名」とは、図２３を参照して説明した実施の形態２に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納される。【０３７３】
本変形例に係るファイル保持情報５００ｂと、実施の形態２に係るファイル保持情報４００ｂとの違いは、本変形例に係るファイル保持情報５００ｂに「アクセス日」が含まれていない点にある。【０３７４】
実施の形態２ではアクセス日から一定期間が経過した電子ファイルを削除の候補としたのに対して、本変形例ではサーバが更新要求を受け付けた際に保持サーバの電子ファイルを削除するため、アクセス日が不要となる。【０３７５】
ここから、図２９の説明に戻る。【０３７６】
保持サーバ判断部５０４は、保持サーバ記憶部５００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。【０３７７】
また、保持サーバ判断部５０４は、アクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバを判断する。【０３７８】
削除対象判断部５２４は、実施の形態２に係る削除対象判断部４２４と同様に、削除の対象となる電子ファイルをサーバごとに判断する部位である。本変形例に係る削除対象判断部５２４は、保持サーバ判断部５０４が判断したアクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバに関する情報を取得し、取得したサーバに関する情報を削除要求部４２６に引き渡す。【０３７９】
続けて、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理について、図を参照して説明する。【０３８０】
図３１は、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理の例を示すタイムチャートである。本図では、サーバＡ３２０をアクセス元サーバとし、そのサーバＡ３２０がファイルｄの更新要求を受け付けた場合を例に具体的に説明する。【０３８１】
本図において、図２６に示す実施の形態２に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。【０３８２】
本図に示す処理と、図２６に示す処理との違いは、アクセス元サーバ以外に保持サーバがあるか否かの判断（Ｓ２１２）において、アクセス元サーバ以外に保持サーバがあると判断された場合（Ｓ２１２でＹｅｓ）以後の処理にある。【０３８３】
ここで、アクセス元サーバであるサーバＡ３２０がファイルｄの更新要求を受け付けた場合に、保持サーバ判断部５０４がＳ２１２における判断処理を実行するときの、ファイル保持情報は、図３２に示すようになる。【０３８４】
図３２は、サーバＡ３２０がファイルｄの更新要求を受け付けた場合に、保持サーバ判断部５０４がＳ２１２における判断処理を実行するときの、ファイル保持情報５００ｃを示す図である。ファイル保持情報の初期状態は、図３０に示すファイル保持情報５００ｂとする。【０３８５】
本図に示すファイル保持情報５００ｃは、保持情報更新処理（Ｓ２０８）により、ファイルｄに対応する「サーバ名」に「サーバＡ」が追加されている。【０３８６】
ここから、図３１を参照して、アクセス元サーバ以外に保持サーバがあると判断された場合（Ｓ２１２でＹｅｓ）以後の処理について説明する。【０３８７】
まず、保持サーバ判断部５０４は、保持情報更新部４１２がファイル保持情報５００ｂを更新したことを受けて、アクセス元サーバ以外に、保持サーバがあるか否かおよび保持サーバがある場合には保持サーバがどのサーバであるかを判断する（Ｓ２１２）。【０３８８】
ファイルｄについて、アクセス元サーバであるサーバＡ３２０以外の保持サーバは、「サーバＢ」と「サーバＣ」とであるため、保持サーバ判断部５０４は、アクセス元サーバ以外に、保持サーバがあり、その保持サーバは「サーバＢ」と「サーバＣ」とであると判断する。【０３８９】
続けて、削除対象判断部５２４は、保持サーバ判断部５０４の判断を受けて、削除対象を決定する（Ｓ３１３）。【０３９０】
ここでは、削除対象判断部５２４は、保持サーバ判断部５０４が判断した保持サーバである「サーバＢ」と「サーバＣ」とが保持するファイルｄを削除対象と決定する（Ｓ３１３）。【０３９１】
続けて、削除対象判断部５２４は、削除対象があるか否かを判断する（Ｓ３１４）。【０３９２】
削除対象がないと判断した場合（Ｓ３１４でＮｏ）、分散ファイル管理装置３１０は、サーバからの要求または問合せを受け付けるまで待機する。【０３９３】
また、削除対象があると判断した場合（Ｓ３１４でＹｅｓ）、続けて、削除要求部４２６は、ファイルの削除要求を保持サーバに送信し、保持サーバの削除要求受信部３２２はそのファイルの削除要求を受信する（Ｓ３１５）。【０３９４】
ここでは、「サーバＢ」と「サーバＣ」とが保持するファイルｄが削除対象と判断したため、削除対象判断部５２４は、削除対象があると判断し（Ｓ３１４でＹｅｓ）、削除要求部４２６は、ファイルｄの削除要求をサーバＢ３３０およびサーバＣ３４０に送信し、サーバＢ３３０およびサーバＣ３４０の削除要求受信部３２２は、それぞれファイルｄの削除要求を受信する（Ｓ３１５）。【０３９５】
続けて、ファイル削除要求を受け付けた保持サーバのファイル記憶制御部７７は、削除要求に係る電子ファイルを、ファイル記憶部が記憶しているファイル情報から削除する（Ｓ３１６）。【０３９６】
ここでは、サーバＢ３３０およびサーバＣ３４０のファイル記憶制御部７７が、ファイル記憶部３５、４５が記憶している各ファイルｄを削除する（Ｓ３１６）。【０３９７】
続けて、保持サーバの更新通知部３９１は更新通知を送信し、更新通知受付部４１０は更新通知を受信する（Ｓ３１７）。ここで、「更新通知」は、保持サーバ２０、３０、４０のファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知である。【０３９８】
ここでは、サーバＢ３３０およびサーバＣ３４０の更新通知部３９１が、ファイル記憶部３５、４５が記憶しているファイルｄが削除されたことを内容とする更新通知を送信し、更新通知受付部４１０がその更新通知を受信する（Ｓ３１７）。【０３９９】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、保持サーバ記憶部５００のファイル保持情報５００ｃを更新して（Ｓ３１８）、処理を終了する。【０４００】
ここで、保持情報更新部４１２による更新処理をした後のファイル保持情報について、図を参照して説明する。【０４０１】
図３３は、ユーザからファイルｄの更新要求をサーバＡ３２０が受け付けた場合に、本変形例に係る各装置が実行する処理が終了した後のファイル保持情報５００ｄを示す図である。本図に示すファイル保持情報５００ｄでは、図３２に示すファイル保持情報５００ｃから、ファイルｄに対応する「サーバ名」から「サーバＢ」と「サーバＣ」とが削除されており、ファイルｄに対応する「サーバ名」は「サーバＡ」のみとなる。【０４０２】
以上に説明した変形例１では、ユーザから更新要求を受け付けたときに削除処理を実行するため、「アクセス日」が不要となる。また、更新要求を受け付けたアクセス元サーバには、処理後も、削除に係る電子ファイルが保持される。そのため、削除対象判断部４２４は、削除に係る電子ファイルを保持するサーバが複数のあるか否かに基づいて、削除対象を決定する必要がなく、処理を簡略化することができる。【０４０３】
なお、上記のように、予め定められた周期と、サーバがユーザから書込要求を受け付けたときとの両方で、削除処理を実行する場合には、分散ファイル管理装置は、図２２に示す実施の形態２に係る分散ファイル管理装置３１０が備える機能と、図２９に示す変形例１に係る分散ファイル管理装置３１０が備える機能とを組み合わせることで実現できる。【０４０４】
さらに、例えば、ファイル保持情報４００ｂに、さらに、実施の形態１と同様に電子ファイルの内容が最新であるか否かを示す「フラグ」を含め、削除の対象とする電子ファイルに古い内容を有する電子ファイルを含めても構わない。【０４０５】
図３４は、古い内容を有する電子ファイルを削除の対象とする場合のファイル保持情報４００ｄの例を示す図である。本図に示すように、この場合のファイル保持情報４００ｄは、「ファイルパス」と、「サーバ名」と、「フラグ」と、「アクセス日」とから構成される。【０４０６】
ファイル保持情報４００ｄの「ファイルパス」と、「サーバ名」と、「アクセス日」とは、図２３を参照して説明した実施の形態２に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」と、「アクセス日」と、それぞれ同様の情報が格納される。また、ファイル保持情報４００ｄの「フラグ」には、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「フラグ」と同様の情報が格納される。【０４０７】
この場合の各装置の機能的構成は、実施の形態１、実施の形態２および変形例１に係る各装置が備える機能を組み合わせることによって、実現される。【０４０８】
（実施の形態３）
実施の形態１および実施の形態２に係る分散ファイル管理システムでは、最新の内容を有する電子ファイルを複数のサーバが重複して保持する場合がある。このように重複して保持することにより、ユーザが頻繁に取得する電子ファイルについては、その取得要求に関する処理において、通信回線を移動する情報量を減少させることを可能としている。【０４０９】
しかし、実施の形態１および実施の形態２では、同一の電子ファイルを複数のサーバが重複して保持することを有効に活用していないという問題がある。【０４１０】
そこで、実施の形態３では、複数のサーバによる重複保持を積極的に活用し、第三者による電子ファイルの改竄を防止することを可能とする分散ファイル管理システムを提供する。また、サーバやディスクの耐障害性の向上を可能とする分散ファイル管理システムを提供する。【０４１１】
図３５から図４７までを参照して、本発明に係る実施の形態３について説明する。【０４１２】
図１に示す分散ファイル管理システムの構成の概要は、実施の形態３に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。【０４１３】
実施の形態３に係る分散ファイル管理システムは、ユーザが利用する端末６０、６５と、ファイル記憶部２５、３５、４５をそれぞれに備え、各端末６０、６５からユーザの要求を受け付けるサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルを管理する分散ファイル管理装置とにより構成される。【０４１４】
また、図２に示す各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成は、実施の形態３に係る分散ファイル管理システムにおいても同様であるため、フォルダ構成に関するここでの説明は省略する。【０４１５】
図３５Ａ〜図３５Ｃは、実施の形態３に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。【０４１６】
図３５Ａは、実施の形態３に係るサーバＡ６２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。【０４１７】
図３５Ｂは、実施の形態３に係るサーバＢ６３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。【０４１８】
図３５Ｃは、実施の形態３に係るサーバＣ６４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｂ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。【０４１９】
図３６は、実施の形態３に係るサーバＡ６２０が備える機能的構成の例を示すブロック図である。サーバＡ６２０は、実施の形態１に係るサーバＡ２０と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に関連する電子ファイルを分散ファイル管理装置６１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態３に係るサーバＡ６２０は、実施の形態１に係るサーバＡ２０とは異なり、改竄を検知するために電子ファイルのハッシュ値を計算する。【０４２０】
サーバＡ６２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、更新通知部９１と、完了通知受信部９３と、ユーザ要求応答部９５と、ハッシュ値要求受信部６２４と、ハッシュ値計算部６２６と、ハッシュ値送信部６２８と、記憶部情報要求受信部６３０と、記憶部情報送信部６３２と、複写先受信部６３４と、ファイル記憶制御部６７７とを備える。【０４２１】
実施の形態３に係るサーバＡ６２０について、実施の形態１に係るサーバＡ２０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。【０４２２】
ハッシュ値要求受信部６２４は、分散ファイル管理装置６１０から、特定の電子ファイルのハッシュ値の要求を受信する部位である。【０４２３】
ハッシュ値計算部６２６は、ハッシュ値要求受信部６２４が受信した要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、その電子ファイルのハッシュ値を計算する部位である。【０４２４】
ハッシュ値送信部６２８は、ハッシュ値計算部６２６が計算したハッシュ値を分散ファイル管理装置６１０に送信する部位である。【０４２５】
記憶部情報要求受信部６３０は、自身が備えるファイル記憶部２５の状態に関する情報、例えば、空き容量などの要求を受信する部位である。【０４２６】
記憶部情報送信部６３２は、後述するファイル記憶制御部６７７からファイル記憶部２５の状態を示す情報を取得し、分散ファイル管理装置６１０に送信する部位である。【０４２７】
複写先受信部６３４は、書込要求に係る電子ファイルが、いずれのサーバにも保持されていない新規に格納される電子ファイルである場合、その電子ファイルのコピーを格納するサーバ（以下、「複写先サーバ」という。）に関する情報を受信する部位である。【０４２８】
これにより、新規格納に係る電子ファイルは複写先サーバにコピーされるため、同一の電子ファイルを少なくとも２つ以上のサーバが保持することとなる。そのため、ユーザの取得要求に係る電子ファイルを保持するいずれか１つのサーバ、または、サーバが備えるファイル記憶部に障害が発生しても、その電子ファイルは他のサーバにも保持されているため、ユーザは他のサーバから要求に係る電子ファイルを取得することができる。【０４２９】
ファイル記憶制御部６７７は、実施の形態１に係るファイル記憶制御部７７と同様に、ファイル記憶部２５を制御する部位であり、ファイル記憶部２５が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部２５が記憶している電子ファイルを読み出し、ファイル記憶部２５が記憶している電子ファイルを更新し、また、ファイル記憶部２５に新たな電子ファイルを格納し、さらに、ファイル記憶部２５の空き容量などファイル記憶部２５の状態を示す情報を取得する。【０４３０】
以上が、本実施の形態に係るサーバＡ６２０が備える機能的構成である。サーバＢ６３０およびサーバＣ６４０も、サーバＡ６２０と同様の機能的構成を備える。【０４３１】
図３７は、実施の形態３に係る分散ファイル管理装置６１０が備える機能的構成の例を示すブロック図である。実施の形態３に係る分散ファイル管理装置６１０と、実施の形態１に係る分散ファイル管理装置１０との違いは、実施の形態３に係る分散ファイル管理装置６１０が、取得要求に係る電子ファイルのハッシュ値をサーバから取得することにより、最新かつ正しい内容を有する電子ファイルをユーザに送信し、また、１つの電子ファイルを少なくとも２つのサーバが保持するように管理することである。【０４３２】
分散ファイル管理装置６１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部７００と、保持サーバ判断部７０４と、ハッシュ値要求部７２８と、ハッシュ値受信部７３０と、更新許可要求受信部７３２と、ハッシュ値初期化部７３４と、更新許可送信部７３６と、記憶部情報要求部７３８と、記憶部情報受信部７４０と、複写先判定部７４２と、複写先送信部７４４とを備える。【０４３３】
保持サーバ記憶部７００は、実施の形態１に係る保持サーバ記憶部１００と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部である。保持サーバ記憶部７００は、例えば、ＨＤにより実現される。【０４３４】
実施の形態３に係る管理サーバ情報７００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。【０４３５】
実施の形態３に係るファイル保持情報の具体例について、図３８を参照して説明する。【０４３６】
図３８は、保持サーバ記憶部７００が記憶しているファイル保持情報７００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報７００ｂは、「ファイルパス」と、「サーバ名」と、「ハッシュ値」とから構成される。【０４３７】
本実施の形態に係るファイル保持情報７００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。【０４３８】
「ハッシュ値」には、サーバにおいて算出された正規の電子ファイルのハッシュ値が格納される。ここで、「正規の電子ファイル」とは、その電子ファイルを作成または変更する権限を有する者により、作成または変更された電子ファイルをいう。また、本実施の形態に係るハッシュ値は、例えば、予め定められたハッシュ関数を用いて、電子ファイルの全てまたは一部を入力値として算出される値である。ハッシュ関数は全てのサーバにおいて共通して予め定められており、また、入力値が、電子ファイルの全てであるか、または、一部であるか、さらに、一部の場合にはいずれの部分であるかも、全てのサーバにおいて共通して予め定められている。【０４３９】
本図は、例えば、「／ｄａｔａ／ａ」で示されるファイルａについて、「ハッシュ値」が「１９３２０６６」であり、保持サーバが「サーバＡ」および「サーバＢ」であることを示す。【０４４０】
また、本図に示すように、全ての電子ファイルが２つ以上のサーバに保持されている。そのため、例えば、「サーバＡ」に障害が発生した場合であっても、ファイルａは「サーバＢ」から、ファイルｂは「サーバＣ」から取得することができる。したがって、異なるサーバが電子ファイルを重複して保持することにより、システム全体での耐障害性が向上する。【０４４１】
ここから、図３７の説明に戻る。【０４４２】
保持サーバ判断部７０４は、保持サーバ記憶部７００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。本実施の形態に係る保持サーバ判断部７０４は、ユーザの取得要求に係る電子ファイルの保持サーバを判断する場合、正規の内容を有する電子ファイルを保持するサーバを保持サーバと判断する。【０４４３】
ハッシュ値要求部７２８は、保持サーバ判断部７０４が取得要求に係る電子ファイルの保持サーバの候補として判断したサーバに、そのサーバが保持する取得要求に係る電子ファイルのハッシュ値を要求する部位である。【０４４４】
ハッシュ値受信部７３０は、ハッシュ値要求部７２８が要求を送信したサーバから、ハッシュ値を受信する部位である。【０４４５】
更新許可要求受信部７３２は、ユーザが電子ファイルを更新する場合に、ユーザが利用する端末６０（６５）から、その電子ファイルの更新に関する許可の要求を受信する部位である。【０４４６】
ハッシュ値初期化部７３４は、更新許可要求受信部７３２が更新許可要求を受信した場合に、その更新に係る電子ファイルに対応するファイル保持情報７００ｂの「ハッシュ値」を初期化する部位である。本実施の形態のハッシュ値の初期化では、「ハッシュ値」を「−１」で更新する。【０４４７】
更新許可送信部７３６は、ハッシュ値初期化部７３４が「ハッシュ値」を初期化したことを受けて、更新許可要求受信部７３２が受信した更新許可要求の送信元である端末６０（６５）に、更新を許可することを内容とする情報を送信する部位である。【０４４８】
記憶部情報要求部７３８は、保持情報更新部１１２が新規格納に係る更新をした場合に、分散ファイル管理装置６１０の管理下にある各サーバに、各サーバが備えるファイル記憶部の状態を示す情報（以下、「記憶部情報」という。）を要求する部位である。【０４４９】
本実施の形態に係る「記憶部情報」は、例えば、各ファイル記憶部の空き容量に関連する情報であり、具体的には、全記憶容量に対する空き容量の割合などである。【０４５０】
記憶部情報受信部７４０は、記憶部情報要求部７３８からの要求に応じて各サーバから送信される記憶部情報を受信する部位である。【０４５１】
複写先判定部７４２は、記憶部情報受信部７４０が受信した記憶部情報に基づいて、複写先サーバを判定する部位である。本実施の形態に係る複写先判定部７４２は、記憶部情報に含まれる空き容量の割合が最大であるサーバを、複写先サーバとする。【０４５２】
複写先送信部７４４は、複写先判定部７４２により複写先サーバと判定されたサーバに関する情報を、アクセス元サーバに送信する部位である。【０４５３】
以上のような機能を分散ファイル管理装置６１０および各サーバ６２０、６３０、６４０が備えることにより、実施の形態１と同様に、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ６２０、６３０、６４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。【０４５４】
また、実施の形態２と同様に、複数のサーバが保持する同一の電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。【０４５５】
さらに、同一の電子ファイルを少なくとも２つのサーバが保持するため、もし、１つの保持サーバや保持サーバの記憶部に障害が生じた場合であっても、他の保持サーバから電子ファイルを取得することができ、システム全体での耐障害性を向上させることが可能となる。【０４５６】
さらに、分散ファイル管理装置６１０が各ファイルのハッシュ値を保持している。そのため、ハッシュ値を参照して、各サーバが保持する電子ファイルが正規であるか否かを判断でき、電子ファイルの不正な書き換えを防止することが可能となる。【０４５７】
図３９は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０４５８】
本図に示す「端末」、「アクセス元サーバ」、「保持サーバ」は、図８と同様である。そのため、これらに関するここでの説明は省略する。【０４５９】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ４０１）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求を内容とする情報である。【０４６０】
次に、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。【０４６１】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５を参照することにより、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶保持しているか否かを判断する（Ｓ４０２）。【０４６２】
電子ファイルを保持していないと判断した場合（Ｓ４０２でＮｏ）、続けて、保持サーバ問合部７９は分散ファイル管理装置１０に保持サーバを問合せ、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ４０３）。【０４６３】
続けて、保持サーバ判断部７０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する（Ｓ４０４）。【０４６４】
アクセス元サーバ以外に保持サーバがないと判断した場合（Ｓ４０４でＮｏ）、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４０５）。【０４６５】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ４０６）、処理を終了する。【０４６６】
また、アクセス元サーバ以外に保持サーバがあると判断した場合（Ｓ４０４でＹｅｓ）、続けて、ハッシュ値要求部７２８は、取得要求に係る電子ファイルのハッシュ値の要求を保持サーバに送信し、保持サーバのハッシュ値要求受信部６２４はハッシュ値の要求を受信する（Ｓ４０７）。【０４６７】
続けて、ハッシュ値計算部６２６は、ファイル記憶制御部６７７にファイル記憶部２５から取得要求に係る電子ファイルを取得させ、ファイル記憶制御部６７７からその電子ファイルを取得し、その電子ファイルのハッシュ値を計算する（Ｓ４０８）。【０４６８】
続けて、ハッシュ値送信部６２８はハッシュ値計算部６２６が計算したハッシュ値を送信し、ハッシュ値受信部７３０はハッシュ値を受信する（Ｓ４０９）。【０４６９】
続けて、保持サーバ判断部７０４は、保持サーバ記憶部７００のファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致するか否かにより、保持サーバが保持する電子ファイルが正規であるか否かを判断する（Ｓ４１０）。【０４７０】
ファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致しない場合、保持サーバ判断部７０４は正規ではないと判断する（Ｓ４１０でＮｏ）。【０４７１】
この場合、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４１１）。【０４７２】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部６７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ４１２）、処理を終了する。【０４７３】
また、ファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致する場合、保持サーバ判断部７０４は正規であると判断する（Ｓ４１０でＹｅｓ）。【０４７４】
この場合、続けて、ファイル送信要求部１０８は、保持サーバにファイル送信要求を送信し、ファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ４１３）。ここで、「ファイル送信要求」とは、ユーザの取得要求に係る電子ファイルをアクセス元サーバに送信することを内容とし、保持サーバに送信される要求である。【０４７５】
続けて、ファイル記憶制御部６７７は、ファイル送信要求部１０８が受信したファイル送信要求を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部から読み出す（Ｓ４１４）。【０４７６】
続けて、保持サーバのファイル送信部８５はユーザの取得要求に係る電子ファイルを送信し、アクセス元サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ４１５）。【０４７７】
続けて、アクセス元サーバのファイル記憶制御部６７７は、ファイル受信部８７が受信した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ４１６）。【０４７８】
続けて、アクセス元サーバのユーザ要求応答部９５は、ユーザの取得要求に係る電子ファイルをファイル記憶制御部６７７から取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ４１７）。【０４７９】
続けて、アクセス元サーバの更新通知部９１はファイル記憶制御部６７７の格納処理（Ｓ４１６）が終了したことを受けて、更新通知を送信し、更新通知受付部１１０は更新通知を受け付ける（Ｓ４１８）。【０４８０】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新し（Ｓ４１９）、処理を終了する。【０４８１】
また、電子ファイルを保持していると判断した場合（Ｓ４０２でＹｅｓ）、続けて、ハッシュ値計算部６２６は、その電子ファイルのハッシュ値を計算する（Ｓ４２０）。【０４８２】
続けて、ハッシュ値送信部６２８はハッシュ値計算部６２６が計算したハッシュ値を送信し、ハッシュ値受信部７３０はハッシュ値を受信する（Ｓ４２１）。【０４８３】
続けて、保持サーバ判断部７０４は、Ｓ４１０における判断処理と同様に、保持サーバが保持する電子ファイルが正規であるか否かを判断する（Ｓ４２２）。【０４８４】
保持サーバ判断部７０４が正規であると判断した場合（Ｓ４２２でＹｅｓ）、続けて、保持応答送信部１０６は、アクセス元サーバに保持通知を送信し、保持応答受信部８１は保持通知を受信する（Ｓ４２３）。【０４８５】
続けて、ファイル記憶制御部６７７は、保持応答受信部８１が受信した保持通知を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部２５から読み出す（Ｓ４２４）。【０４８６】
続けて、ユーザ要求応答部９５はユーザの取得要求に係る電子ファイルをファイル記憶制御部６７７から取得し、ユーザが利用する端末６０（６５）に送信し（Ｓ４２５）、アクセス元サーバは処理を終了する。【０４８７】
また、保持サーバ判断部７０４が正規ではないと判断した場合（Ｓ４１０でＮｏ）、続けて、保持サーバ判断部７０４は、Ｓ４０４における判断処理と同様に、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する（Ｓ４２６）。【０４８８】
アクセス元サーバ以外に保持サーバがないと判断した場合（Ｓ４２６でＮｏ）、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４２７）。【０４８９】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部６７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信し（Ｓ４２８）、アクセス元サーバは処理を終了する。【０４９０】
アクセス元サーバ以外に保持サーバがあると判断した場合（Ｓ４２６でＹｅｓ）、続けて、ハッシュ値送信部６２８はＳ４０７と同様に、ハッシュ値要求部７２８と保持サーバのハッシュ値要求受信部６２４とは、取得要求に係る電子ファイルのハッシュ値の要求を送受信する（Ｓ４２９）。【０４９１】
本図に示す、Ｓ４３０以降における処理は、上記のＳ４０８以降における処理と同様である。詳しくは、Ｓ４３０からＳ４３２までの処理はＳ４０８からＳ４１０までの処理とそれぞれ同じであり、Ｓ４２７とＳ４２８とにおける処理はＳ４１１とＳ４１２とにおける処理とそれぞれ同じであり、Ｓ４３３からＳ４３７までの処理はＳ４１３からＳ４１７までの処理とそれぞれ同じである。そのため、これらの処理に関するここでの説明は、省略する。【０４９２】
図４０は、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０４９３】
本図に示す「端末」と、「アクセス元サーバ」とは、図８に示す「端末」と、「アクセス元サーバ」と、それぞれ同様であるため、ここでの説明は省略する。【０４９４】
本図に示す「複写先サーバ」は、分散ファイル管理装置６１０により新規格納に係る電子ファイルの複写先と判断されたサーバである。本実施の形態における複写先サーバは、サーバＡ６２０、サーバＢ６３０またはサーバＣ６４０のいずれか１つである。【０４９５】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された格納要求を、通信回線５０を介して受信する（Ｓ５０１）。ここで、「格納要求」とは、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。【０４９６】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」と「格納要求」とのいずれであるかを判断する。本図は、格納要求に係る処理のタイムチャートであるため、この判断を省略している。【０４９７】
続けて、要求種別判断部７３は、要求情報保持部７５に格納要求に係る電子ファイルを保持させる（Ｓ５０２）。【０４９８】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ５０３）。【０４９９】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させる。これにより、ロック要求に係る電子ファイルの書込要求はロックされる（Ｓ５０４）。【０５００】
また、ファイル記憶制御部６７７は、取得した要求が格納要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５、３５、４５に新規格納する（Ｓ５０５）。【０５０１】
続けて、ハッシュ値計算部６２６は新規格納した電子ファイルのハッシュ値を計算する（Ｓ５０６）。【０５０２】
続けて、更新通知部９１は、分散ファイル管理装置１０に更新通知とハッシュ値とを送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知とハッシュ値とを受け付ける（Ｓ５０７）。【０５０３】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ５０８）。【０５０４】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ５０９）。【０５０５】
続けて、更新完了通知部１１４は、ファイル記憶制御部６７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部９３は完了の通知を受信する（Ｓ５１０）。【０５０６】
続けて、アクセス元サーバのユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ５１１）。これにより、端末６０（６５）とアクセス元サーバとの間で実行される処理は終了する。【０５０７】
分散ファイル管理装置６１０は、Ｓ５１０における更新完了通知部１１４による完了通知の送信に続けて、複写先判定部７４２が各サーバのファイル記憶部の空き容量に基づいて複写先サーバを決定する（Ｓ５１２）。この処理の詳細は後述する。【０５０８】
続けて、複写先送信部７４４は、アクセス元サーバが新規格納した電子ファイルを複写先サーバに送信する要求を、アクセス元サーバに送信し、複写先受信部６３４はこのファイルの送信要求を受信する（Ｓ５１３）。【０５０９】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５から新規格納した電子ファイルを読み出す（Ｓ５１４）。【０５１０】
続けて、アクセス元サーバのファイル送信部８５は複写先サーバに新規格納した電子ファイルを送信し、複写先サーバのファイル受信部８７は新規格納した電子ファイルを受信する（Ｓ５１５）。【０５１１】
続けて、複写先サーバのファイル記憶制御部６７７はファイル記憶部３５にファイル受信部８７が受信した電子ファイルを新規格納する（Ｓ５１６）。【０５１２】
続けて、複写先サーバの更新通知部９１は更新通知を分散ファイル管理装置６１０に送信し、更新通知受付部１１０は更新通知を受信する（Ｓ５１７）。【０５１３】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新して（Ｓ５１８）、処理を終了する。【０５１４】
図４１は、図４０に示す複写先決定処理（Ｓ５１２）の詳細であり、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０５１５】
まず、記憶部情報要求部７３８は、各サーバ、すなわち、本実施の形態ではサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０とに記憶部情報の送信要求を送信し、各サーバの記憶部情報要求受信部６３０はその送信要求を受信する（それぞれ、Ｓ５５１と、Ｓ５５２と、Ｓ５５３とに対応する。）。【０５１６】
続けて、サーバＡ６２０のファイル記憶制御部６７７は自身のファイル記憶部２５を参照することにより記憶部情報を取得または算出する（Ｓ５５４）。【０５１７】
サーバＢ６３０とサーバＣ６４０とのファイル記憶制御部６７７も、同様に記憶部情報を取得する（それぞれ、Ｓ５５５と、Ｓ５５６とに対応する。）。【０５１８】
続けて、記憶部情報受信部７４０は、各サーバ、すなわち、本実施の形態ではサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０から、各サーバのファイル記憶部２５と、ファイル記憶部３５と、ファイル記憶部４５とに関する記憶部情報を受信する（それぞれ、Ｓ５５７と、Ｓ５５８と、Ｓ５５９とに対応する。）。【０５１９】
続けて、複写先判定部７４２は分散ファイル管理装置６１０が管理する全てのサーバから記憶部情報を受信したか否かを判断する（Ｓ５６０）。【０５２０】
記憶部情報を受信していないサーバが１つでもある場合、全てのサーバから記憶部情報を受信していないと判断し（Ｓ５６０でＮｏ）、複写先判定部７４２は待機する。【０５２１】
全てのサーバから記憶部情報を受信したと判断した場合（Ｓ５６０でＹｅｓ）、複写先判定部７４２は取得した記憶部情報に基づいて複写先サーバを決定する（Ｓ５６１）。【０５２２】
以上が、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、ファイル保持情報７００ｂの初期状態を図３８に示す内容であるとして、ユーザが端末からファイルｆの格納要求をサーバＡ６２０に送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的に説明する。【０５２３】
まず、サーバＡ６２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信されたファイルｆの格納要求を、通信回線５０を介して受信する（Ｓ５０１）。【０５２４】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「格納要求」であると判断する。続けて、要求種別判断部７３は、要求情報保持部７５に格納要求に係るファイルｆを保持させる（Ｓ５０２）。【０５２５】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信し（Ｓ５０３）、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させる。これにより、ファイルｆの書込要求はロックされる（Ｓ５０４）。【０５２６】
ファイル記憶制御部６７７は、取得した要求が格納要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５に新規格納する（Ｓ５０５）。【０５２７】
続けて、ハッシュ値計算部６２６は新規格納した電子ファイルのハッシュ値を計算する（Ｓ５０６）。ここで算出されたファイルｆのハッシュ値は、「１８１４６８０」であるとする。【０５２８】
続けて、更新通知部９１は、分散ファイル管理装置１０に更新通知とハッシュ値とを送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知とハッシュ値とを受け付ける（Ｓ５０７）。【０５２９】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ５０８）。【０５３０】
ここで、図４２は、ユーザが端末６０からサーバＡ６２０にファイルｆの更新要求を送信した場合に、サーバＡ６２０から送信された更新通知およびハッシュ値に従って更新された保持サーバ記憶部７００のファイル保持情報７００ｃの例を示す図である。【０５３１】
本図に示すファイル保持情報７００ｃと図３８に示すファイル保持情報７００ｂの初期状態との違いは、ファイル保持情報７００ｃでは「ファイルパス」が「／ｄａｔａ／ｆ」であり、「ハッシュ値」が「１８１４６８０」であり、「サーバ名」が「サーバＡ」である情報が追加されている点にある。【０５３２】
このようにファイル保持情報を更新（Ｓ５０８）した後、保持情報更新部１１２はロックを解除し（Ｓ５０９）、更新完了通知部１１４とアクセス元サーバの完了通知受信部９３とは完了通知を送受信し（Ｓ５１０）、アクセス元サーバのユーザ要求応答部９５は、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ５１１）。【０５３３】
続けて、分散ファイル管理装置６１０は複写先サーバを決定する（Ｓ５１２）。【０５３４】
複写先決定処理（Ｓ５１２）において、記憶部情報の送信要求の送受信（Ｓ５５１からＳ５５３まで）と、記憶部情報の取得処理（Ｓ５５４からＳ５５６まで）と、記憶部情報の送受信処理（Ｓ５５７からＳ５５９まで）とが実行される。【０５３５】
続けて、複写先判定部７４２は全てのサーバから記憶部情報を受信するまで待機し（Ｓ５６０でＮｏ）、全てのサーバから記憶部情報を受信した場合（Ｓ５６０でＹｅｓ）、取得した記憶部情報に基づいて複写先サーバを決定する（Ｓ５６１）。【０５３６】
ここで、複写先判定部７４２が取得した記憶部情報が図４３に示す内容である場合を例に、複写先サーバを決定する具体例について説明する。【０５３７】
図４３は、記憶部情報を説明するための具体例を示す図である。本実施の形態では、「空き割合」に記載の各割合が、各サーバが備える各ファイル記憶部２５、３５、４５の記憶部情報となる。「空き割合」は、各ファイル記憶部の空き容量の総容量に対する割り合いである。このような、ファイル記憶部の空き容量および総容量の取得と、空き割合の算出とは、ファイル記憶制御部６７７が行う（Ｓ５５４からＳ５５６まで）。【０５３８】
本図では、例えば、「サーバＡ」が備えるファイル記憶部２５の「記憶部総容量」が「１８４２５６ＭＢ」（Ｍｅｇａ  Ｂｙｔｅ）であり、「記憶部空容量」が「１２０７８９ＭＢ」であるため、「空き容量」は１２０７８９を１８４２５６で割った値である「６６％」である例を示す。【０５３９】
そして、本図では「サーバＢ」に対応する「空き割合」が「７３％」であり、各サーバの中で最大である。【０５４０】
そのため、空き割合が本図に示す内容である場合、複写先判定部７４２は、「サーバＢ」を複写先サーバと決定する（Ｓ５６１）。【０５４１】
このように複写先サーバが決定されると、複写先送信部７４４とアクセス元サーバであるサーバＡ６２０の複写先受信部６３４とは、ファイルｆをサーバＢ６３０に送信する要求を送受信する（Ｓ５１３）。【０５４２】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５からファイルｆを読み出し（Ｓ５１４）、サーバＡ６２０のファイル送信部８５とサーバＢ６３０のファイル受信部８７とはファイルｆを送受信する（Ｓ５１５）。【０５４３】
続けて、サーバＢ６３０のファイル記憶制御部６７７はファイル記憶部３５にファイルｆを格納し（Ｓ５１６）、サーバＢ６３０の更新通知部９１と更新通知受付部１１０とは更新通知を送受信する（Ｓ５１７）。【０５４４】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新して（Ｓ５１８）、処理を終了する。【０５４５】
ここで、図４４は、ユーザが端末６０からサーバＡ６２０にファイルｆの更新要求を送信した場合に、各装置における処理が終了した後の保持サーバ記憶部７００のファイル保持情報７００ｄの例を示す図である。【０５４６】
本図に示すファイル保持情報７００ｄでは、「ファイルパス」が「／ｄａｔａ／ｆ」である情報に対応付けられた「サーバ名」に、図４２に示すファイル保持情報７００ｃの「サーバＡ」に加えて「サーバＢ」が格納されている。【０５４７】
以上が、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理である。次に、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理について説明する。【０５４８】
図４５は、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０５４９】
まず、更新許可要求受信部７３２は、ユーザが利用する端末６０（６５）から、特定の電子ファイルの更新の許可の要求を受信する（Ｓ６０１）。【０５５０】
続けて、ハッシュ値初期化部７３４は、更新許可要求受信部７３２が受信した要求に含まれる電子ファイルに対応付けられた、ファイル保持情報７００ｂのハッシュ値を初期化する（Ｓ６０２）。【０５５１】
ここで、図４６は、実施の形態３に係る分散ファイル管理装置６１０が更新許可要求を受信することにより、ハッシュ値が初期化されたファイル保持情報７００ｅの例を示す図である。【０５５２】
本図は、ハッシュ値が初期化される前のファイル保持情報７００ｂが図３８に示す内容である場合に、ファイルｂの更新許可要求を受信した分散ファイル管理装置６１０がファイル保持情報７００ｂを更新した例を示す。【０５５３】
本実施の形態では、ハッシュ値初期化部７３４は、更新許可要求に係る「ハッシュ値」に「−１」を格納することにより、ハッシュ値を初期化する。【０５５４】
本図では、ファイルｂの更新許可要求であるため、「ファイルパス」が「／ｄａｔａ／ｂ」であるファイルｂの「ハッシュ値」に「−１」が格納されている。【０５５５】
ここから、図４５の説明に戻る。【０５５６】
続けて、更新許可送信部７３６は、ユーザが利用する端末６０（６５）に、更新許可要求受信部７３２が要求を受けた電子ファイルの更新の許可を送信する（Ｓ６０３）。【０５５７】
続けて、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された更新要求を、通信回線５０を介して受信する（Ｓ２０１）。ここで、「更新要求」とは、アクセス元サーバが保持している電子ファイルを更新する要求を内容とする情報である。【０５５８】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「更新要求」と「格納要求」とのいずれであるかを判断する。本図は、更新要求に係る処理のタイムチャートであるため、この判断を省略している。【０５５９】
続けて、要求種別判断部７３は、要求情報保持部７５に更新要求に係る電子ファイルを保持させる（Ｓ６０５）。【０５６０】
続く、ロック要求の送受信処理（Ｓ６０６）と、ロック処理（Ｓ６０７）とは、図９に示すロック要求の送受信処理（Ｓ２０３）と、ロック処理（Ｓ２０４）と、それぞれ同じである。そのため、これらに関するここでの説明は省略する。【０５６１】
続けて、ファイル記憶制御部６７７は、取得した要求が更新要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルにより、自身のファイル記憶部２５、３５、４５が記憶している電子ファイルを更新する（Ｓ６０８）。【０５６２】
続けて、ファイル記憶制御部６７７は、更新が完了したか否かを判断する（Ｓ６０９）。【０５６３】
まず、更新が完了していないと判断した場合（Ｓ６０９でＮｏ）、ハッシュ値計算部６２６は待機する。【０５６４】
また、更新が完了したと判断した場合（Ｓ６０９でＹｅｓ）、ハッシュ値計算部６２６は、ファイル記憶制御部６７７から更新に係る新たな電子ファイルを取得し、その電子ファイルのハッシュ値を計算する（Ｓ６１０）。【０５６５】
続けて、図４０に示すＳ５０７およびＳ５０８における処理と同様に、アクセス元サーバの更新通知部９１と分散ファイル管理装置６１０の更新通知受付部１１０とは、更新通知とハッシュ値とを送受信し（Ｓ６１１）、続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ６１２）。【０５６６】
ここで、図４７は、実施の形態３において、ユーザが端末から更新要求を送信した場合に、その要求に係る電子ファイルの更新処理を実行した後のファイル保持情報の例を示す図である。本図は、ファイルｂを更新した場合の例であり、新たなファイルｂの「ハッシュ値」が「３４１７５１０」である例を示す。【０５６７】
ここから、図４５の説明に戻る。【０５６８】
続けて、保持情報更新部１１２によるロック解除処理（Ｓ６１３）から、アクセス元サーバのユーザ要求応答部９５によるユーザが利用する端末６０（６５）への完了通知の送信処理（Ｓ６１５）までは、図４０に示すＳ５０９からＳ５１１までにおける処理とそれぞれ同様であるため、ここでの説明は省略する。【０５６９】
続けて、保持サーバ判断部７０４は、保持情報更新部１１２がファイル保持情報５００ｂを更新したことを受けて、保持サーバを抽出する（Ｓ６１６）。【０５７０】
続けて、ファイル送信要求部１０８は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ３２０のファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ６１７）。【０５７１】
続けて、ファイル記憶制御部６７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５から読み出す（Ｓ６１８）。【０５７２】
続けて、アクセス元サーバ３２０のファイル送信部８５は、ファイル記憶制御部６７７が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ６１９）。【０５７３】
続けて、保持サーバのファイル記憶制御部６７７は、ファイル受信部８７が受信した電子ファイルにより自身のファイル記憶部２５が記憶している電子ファイルを更新する（Ｓ６２０）。【０５７４】
実施の形態３において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。【０５７５】
以上、本発明の実施の形態３に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。【０５７６】
例えば、本実施の形態では、「記憶部情報」を記憶部の「空き容量の割合」としたが、「記憶部情報」は「空き容量」そのものでもよい。【０５７７】
また例えば、本実施の形態では、図４６に示すようにファイル保持情報７００ｅの「ハッシュ値」に「−１」を格納することによりハッシュ値を初期化することとしたが、初期化のためにハッシュ値に格納される値は「−１」に限られず、ハッシュ値としてとり得ない値であればよい。また、ＮＵＬＬ値が格納されてもよい。【０５７８】
（実施の形態４）
実施の形態１から実施の形態３までに説明したように、本発明に係る分散ファイル管理システムでは、電子ファイルに係るユーザの要求を処理するためには分散ファイル管理装置が不可欠である。そのため、障害などにより分散ファイル管理装置が機能しなくなると電子ファイルに係るユーザの要求を処理できず、そのため、分散ファイル管理システムも機能しなくなるという問題がある。【０５７９】
そこで、実施の形態４では、耐障害性に優れた分散ファイル管理システムを提供する。【０５８０】
図４８から図６２までを参照して、本発明に係る実施の形態４について説明する。【０５８１】
図４８は、本発明の実施の形態４に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態４に係る分散ファイル管理システムは、実施の形態１から実施の形態３までと同様に、アクセス元サーバがいずれであるかにかかわらず、電子ファイルに関するユーザの要求に応じるシステムである。【０５８２】
本実施の形態に係る分散ファイル管理システムは、通信回線５０を介して接続された、サーバＡ８２０、サーバＢ８３０およびサーバＣ８４０と、端末ａ６０および端末ｂ６５とから構成される。本実施の形態に係る分散ファイル管理システムを構成する要素について、実施の形態１に係る分散ファイル管理システムを構成する要素と同様の機能を有する要素には、同一の参照符号を付しており、これらの要素に関する説明は省略する。【０５８３】
本実施の形態に係る各サーバ８２０、８３０、８４０は、各サーバに保持されている電子ファイルを管理する分散ファイル管理装置の機能を備え、また、電子ファイルを保持し、ユーザの要求を受け付け、ユーザの要求を受け付けた場合に分散ファイル管理装置または他のサーバと連携してその要求に対する応答をするファイルサーバの機能をも備える。【０５８４】
各サーバのいずれか１台が分散ファイル管理装置として機能する。本実施の形態ではサーバが分散ファイル管理装置となる順位が予め定められ、稼動しているサーバの中で最も順位の高いサーバが分散ファイル管理装置として機能する。これにより、分散ファイル管理装置として機能しているサーバが障害などのために稼動を停止しても、他のサーバが分散ファイル管理装置となることができ、耐障害性を向上させることが可能となる。【０５８５】
本実施の形態では、分散ファイル管理装置として機能しているサーバを「管理装置サーバ」という。【０５８６】
また、各サーバは電子ファイルを記憶保持するためのファイル記憶部を備え、本実施の形態に係るサーバＡ８２０はファイル記憶部２５を備え、サーバＢ８３０はファイル記憶部３５を備え、サーバＣ８４０はファイル記憶部４５を備える。【０５８７】
ここで、実施の形態４に係る分散ファイル管理システムにおいても各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は共通しており、具体的には、図２に示すフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。【０５８８】
また、実施の形態４に係る各ファイル記憶部２５、３５、４５が記憶している電子ファイルの具体例について、図を参照して説明する。【０５８９】
図４９Ａ〜図４９Ｃは、実施の形態４に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。【０５９０】
図４９Ａは、実施の形態４に係るサーバＡ８２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。【０５９１】
図４９Ｂは、実施の形態４に係るサーバＢ８３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。【０５９２】
図４９Ｃは、実施の形態４に係るサーバＣ８４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。【０５９３】
続けて、各サーバが備える機能的構成の例について、サーバＡ８２０を例に図を参照して説明する。【０５９４】
図５０は、実施の形態４に係るサーバＡ８２０が備える機能的構成の概要の一例を示すブロック図である。サーバＡは電子ファイルを保持するファイルサーバの機能と複数のファイルサーバが保持する電子ファイルを管理する分散ファイル管理装置の機能とをともに備える。【０５９５】
サーバＡ８２０は、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とを備える。【０５９６】
ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とは内部バス（図示しない）を介して相互に接続される。したがって、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とが有する各部位は、サーバＡ８２０の内部では内部バスを介して情報を送受信する。ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とに含まれる部位の詳細については後述する。【０５９７】
また、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とは、通信回線５０を介して、端末６０、６５または他のサーバと情報を送受信する。【０５９８】
ファイルサーバ部９００は、ファイルサーバとしての機能を実現する部位である。すなわち、ファイルサーバ部９００は、ユーザの要求または管理装置サーバから送信される要求を受信する。そして、ファイルサーバ部９００は、受信したこれらの要求に応じた処理を実行する。【０５９９】
管理装置部９１０は、分散ファイル管理装置としての機能を実現する部位である。すなわち、管理装置部９１０は、サーバＡ８２０、サーバＢ８３０、または、サーバＣ８４０が保持する電子ファイルに関する情報を管理し、また、サーバＡ８２０が管理装置サーバである場合には、他のサーバからの問合せを受け付ける。【０６００】
管理装置判定部９２０は、他のサーバが備える管理装置判定部と送受信される情報に基づいて、管理装置サーバを判定する部位である。【０６０１】
以上が、本実施の形態に係るサーバＡ８２０が備える機能的構成の概要である。次に、各部位が有する機能の詳細を、図を参照して説明する。【０６０２】
図５１は、実施の形態４に係るサーバＡ８２０のファイルサーバ部９００が備える機能的構成の詳細について、その一例を示す図である。【０６０３】
ファイルサーバ部９００は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、完了通知受信部９３と、ユーザ要求応答部９５と、保持サーバ問合部１０７９と、更新通知部１０９１とを有し、これらは、上記のように、管理装置部９１０および管理装置判定部９２０と内部バス（図示しない）を介して相互に情報を送受信する。【０６０４】
本実施の形態に係るファイルサーバ部９００が有する各部位について、図４に示す実施の形態１に係るサーバが備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。【０６０５】
保持サーバ問合部１０７９は、実施の形態１に係る保持サーバ問合部７９と同様に、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線５０を介して管理装置９１０に問い合わせる部位である。保持サーバ問合部１０７９は、実施の形態１に係る保持サーバ問合部７９と異なり、ファイル記憶制御部７７から取得する指示に従って、保持サーバを管理装置９１０に問い合わせる。【０６０６】
更新通知部１０９１は、ファイル記憶制御部７７が電子ファイルを格納または更新した場合に、格納または更新された内容を各サーバに通知する部位である。これにより、全てのサーバが、保持サーバに関する最新の情報を保持することが可能となる。【０６０７】
図５２は、実施の形態４に係るサーバＡ８２０の管理装置部９１０と管理装置判定部９２０とが備える機能的構成の詳細について、その一例を示す図である。【０６０８】
まず、管理装置部９１０は、問合受付部１０２と、保持サーバ判断部１０４と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部１０００とを有し、これらは、上記のように、ファイルサーバ部９００および管理装置判定部９２０と内部バス（図示しない）を介して相互に情報を送受信する。【０６０９】
本実施の形態に係る管理装置部９１０が有する各部位について、図５に示す実施の形態１に係る分散ファイル管理装置１０が備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。【０６１０】
保持サーバ記憶部１０００は、実施の形態１の保持サーバ記憶部１００と同様に、管理サーバ情報とファイル保持情報とを記憶している記憶部であり、例えば、ＨＤにより実現される。実施の形態１の保持サーバ記憶部１００とは、各情報の内容が異なる。各情報の詳細について図を参照して説明する。【０６１１】
ここで、図５３は、実施の形態４に係る保持サーバ記憶部１０００が記憶している管理サーバ情報１０００ａの一例を示す図である。管理サーバ情報１０００ａには、管理対象として設定されているサーバを特定するための情報に加えて、各サーバが分散ファイル管理装置として機能する順位を示す情報が含まれる。【０６１２】
本図に示す管理サーバ情報１０００ａは、「サーバ名」と、「ＩＰアドレス」と、「順位」とにより構成される。「サーバ名」および「ＩＰアドレス」は、実施の形態１に係る「サーバ名」および「ＩＰアドレス」と、それぞれ同一であるため、これらに関するここでの説明は省略する。【０６１３】
「順位」は、各サーバが分散ファイル管理装置として機能する順位を内容とする。【０６１４】
本図は、例えば、「サーバ名」が「サーバＡ」であるサーバの「ＩＰアドレス」が「１９２．１６８．ｘｘｘ．１」であり、その「順位」が「３」である管理サーバ情報を含む。【０６１５】
また、「順位」についてみると、「サーバＢ」が「１」、「サーバＣ」が「２」、「サーバＡ」が「３」である。これは、「サーバＢ」がまず管理装置サーバとなり、「サーバＢ」が稼動を停止した場合には、次に、「サーバＣ」が管理装置サーバとなり、さらに、「サーバＣ」をも稼動を停止した場合には、「サーバＡ」が管理装置サーバとなることを示す。このような順位は、本実施の形態に係る分散ファイル管理システムの管理者などにより、予め定められる。【０６１６】
次に、図５４は、実施の形態４に係る保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂの一例を示す図である。本実施の形態に係るファイル保持情報１０００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。【０６１７】
本図は、例えば、「サーバＡ」と「サーバＢ」とが、「ファイルパス」が「／ｄａｔａ／ａ」である電子ファイルを保持していることを示すファイル保持情報を含む例である。【０６１８】
次に、図５２に示す管理装置判定部９２０について説明する。【０６１９】
管理装置判定部９２０は、管理装置保持部１２００と、管理装置通知部１２０２と、管理装置通知受付部１２０４と、変更判断部１２０６と、管理装置決定部１２０８と、保持サーバ情報取得部１２１０と、サーバ応答部１２１２と、サーバ応答受付部１２１４と、を有する。【０６２０】
管理装置保持部１２００は、現在の管理装置サーバを特定するための情報（以下、「管理装置情報」という）を保持している部位である。【０６２１】
管理装置通知部１２０２は、管理装置保持部１２００を参照することにより、自身を備えるサーバが管理装置サーバであるか否かを判断し、自身を備えるサーバが管理装置サーバである場合には、予め定められた時間間隔で各サーバに自身を備えるサーバが現在の管理装置サーバであることを通知する部位である。【０６２２】
ここで、管理装置通知部１２０２は、管理装置保持部１２００に自身を備えるサーバを示す情報が保持されている場合には自身を備えるサーバが管理装置サーバであると判断し、管理装置保持部１２００に自身を備えるサーバを示す情報が保持されていない場合には自身を備えるサーバが管理装置サーバでないと判断する。【０６２３】
管理装置通知受付部１２０４は、管理装置サーバの管理装置通知部１２０２からの通知を受け付ける部位である。【０６２４】
変更判断部１２０６は、管理装置通知受付部１２０４が受け付けた通知に基づいて、管理装置サーバの変更が必要か否かを判断する部位である。【０６２５】
具体的には、まず、変更判断部１２０６は、管理装置通知受付部１２０４が受け付けた応答の送信元が、管理装置保持部１２００が保持している情報が示すサーバより順位が高いサーバである場合に、変更が必要であると判断する。このとき、順位を判断するために、保持サーバ記憶部１０００の管理サーバ情報１０００ａを参照する。このように、管理装置保持部１２００が保持している情報が示すサーバより順位が高いサーバからの応答を受け付けるのは、一旦ダウンしたサーバが復旧した場合である。従って、各サーバは、ダウンしていたサーバの復旧を検知できる。【０６２６】
次に、変更判断部１２０６は、管理装置通知受付部１２０４が通知を受け付けることなく予め定められた時間が経過した場合に、変更が必要であると判断する。このように管理装置通知受付部１２０４が一定時間通知を受け付けないのは、管理装置サーバに障害が発生するなど、そのサーバの稼動が停止した場合である。従って、各サーバは、管理装置サーバの稼動停止を検知することができる。【０６２７】
管理装置決定部１２０８は、変更判断部１２０６が分散ファイル管理装置として機能するサーバの変更が必要であると判断した場合に、次の管理装置サーバを、保持サーバ記憶部１０００の管理サーバ情報１０００ａを参照することにより決定し、決定したサーバを特定する情報を管理装置保持部１２００に格納する。ここで、管理装置決定部１２０８は、稼動しているサーバのうち、管理サーバ情報１０００ａの順位が最も上位のサーバを次の管理装置サーバとして決定する。【０６２８】
保持サーバ情報取得部１２１０は、サーバの復旧により変更判断部１２０６が管理装置サーバの変更が必要と判断したことによって、管理装置決定部１２０８がサーバを決定した場合に、保持サーバ記憶部１０００のファイル保持情報１０００ｂを取得する。【０６２９】
サーバ応答部１２１２は、管理装置通知受付部１２０４が通知を受け付けた場合に、変更判断部１２０６の判断に従って、管理装置サーバに応答する部位である。【０６３０】
まず、サーバ応答部１２１２は、変更判断部１２０６が変更の必要がないと判断した場合には、管理装置通知受付部１２０４が受け付けた通知の送信元に、応答する。【０６３１】
また、サーバ応答部１２１２は、サーバの復旧により変更判断部１２０６が管理装置サーバの変更が必要と判断した場合には、管理装置決定部１２０８が決定したサーバに、保持サーバ情報取得部１２１０が取得したファイル保持情報１０００ｂを含む応答を送信する。【０６３２】
サーバ応答受付部１２１４は、他のサーバのサーバ応答部１２１２から送信された応答を受け付ける部位である。【０６３３】
ここで、受け付けた応答にファイル保持情報１０００ｂが含まれていた場合には、サーバ応答受付部１２１４は、そのファイル保持情報１０００ｂにより自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する。【０６３４】
応答にファイル保持情報１０００ｂが含まれるのは、応答を受け付けたサーバに障害が発生していた場合である。障害が発生していた間、そのサーバが保持するファイル保持情報１０００ｂは更新できないため、内容が古い場合がある。このように、サーバの復旧時にファイル保持情報１０００ｂを更新することにより、復旧したサーバが直ちに管理装置サーバとして正しく機能することが可能となる。【０６３５】
以上が、本実施の形態に係るサーバＡ８２０が備える機能的構成である。ここで説明したサーバＡ８２０の機能的構成は、ファイルサーバ部９００のファイル記憶部２５がサーバＢ８３０ではファイル記憶部３５であり、サーバＣ８４０ではファイル記憶部４５であることを除いて、共通する。そのため、サーバＢ８３０およびサーバＣ８４０の機能的構成の説明は省略する。【０６３６】
次に、本実施の形態に係る分散ファイル管理システムにおいて実行される処理について、図を参照して説明する。【０６３７】
図５５は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０６３８】
本実施の形態では、管理サーバ情報１０００ａは図５３に示す内容であり、従って、順位が最も高い「サーバＢ」を管理装置サーバとし、各サーバの管理装置保持部１２００には「サーバＢ」を示す情報が保持されているとする。【０６３９】
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。さらに、本図は、サーバＡ８２０がアクセス元サーバである例を示す。【０６４０】
従って、本図および本図の説明における、「サーバＡ」８２０の処理は「アクセス元サーバ」が実行する処理であり、「サーバＢ」８３０の処理は「管理装置サーバ」が実行する処理である。【０６４１】
まず、サーバＢ８３０の管理装置通知部１２０２が「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４が「通知１」を、それぞれ受け付ける（Ｓ７０１およびＳ７０２）。【０６４２】
ここで、「通知１」とは、管理装置サーバであるサーバＢ８３０の管理装置通知部１２０２が、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報をいう。【０６４３】
続けて、管理装置保持部１２００に保持されている情報により示されるサーバと、管理装置通知受付部１２０４が「通知１」を受け付けたサーバとは、ともに「サーバＢ」であるため、サーバＡ８２０およびサーバＣ８４０の変更判断部１２０６は変更の必要がないと判断し、この判断を受けたサーバＡ８２０およびサーバＣ８４０のサーバ応答部１２１２は「応答１」をサーバＢ８３０に送信する。そして、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」を受け付ける（Ｓ７０３およびＳ７０４）。【０６４４】
ここまでのＳ７０１からＳ７０４までの処理は、各サーバの管理装置判定部９２０が管理装置サーバを判定するために継続されている処理である。【０６４５】
続けて、アクセス元サーバであるサーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ７０５）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルをユーザが利用する端末が取得する要求である。【０６４６】
続けて、サーバＡ８２０の要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。【０６４７】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶しているか否かを判断する（Ｓ７０６）。【０６４８】
自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していると判断した場合（Ｓ７０６でＹｅｓ）、サーバＡ８２０のファイル記憶制御部７７は、続けて、ファイル記憶部２５から取得要求に係る電子ファイルを読み出す（Ｓ７０７）。【０６４９】
続けて、サーバＡ８２０のユーザ要求応答部９５は、自身のファイル記憶制御部７７から取得要求に係る電子ファイルを取得し、その電子ファイルをユーザが利用する端末６０（６５）に送信する（Ｓ７０８）。【０６５０】
続けて、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していないと判断した場合（Ｓ７０６でＮｏ）、サーバＡ８２０の保持サーバ問合部１０７９はサーバＢ８３０に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバＢ８３０の問合受付部１０２はその保持サーバの問合せを受け付ける（Ｓ７０９）。【０６５１】
続けて、サーバＢ８３０の保持サーバ判断部１０４は、保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する（Ｓ７１０）。【０６５２】
保持サーバがないと判断した場合（Ｓ７１０でＮｏ）、サーバＢ８３０の保持応答送信部１０６はサーバＡ８２０に不保持通知を送信する（Ｓ７１１）。【０６５３】
続けて、サーバＡ８２０のユーザ要求応答部９５は、ユーザが利用する端末６０（６５）に不保持通知を送信する（Ｓ７１２）。【０６５４】
また、保持サーバがあると判断した場合（Ｓ７１０でＹｅｓ）、続けて、サーバＢ８３０の保持サーバ判断部１０４は、サーバＢ８３０自身が保持サーバであるか否かを判断する（Ｓ７１３）。【０６５５】
自身が保持サーバであると判断した場合（Ｓ７１３でＹｅｓ）、続けて、サーバＢ８３０のファイル記憶制御部７７は、自身の管理装置部９１０の要求に基づいて、ファイル記憶部３５から取得要求に係る電子ファイルを読み出す（Ｓ７１４）。【０６５６】
続けて、サーバＢ８３０のファイル送信部８５は、自身のファイル記憶制御部７７から取得要求に係る電子ファイルを取得し、サーバＡ８２０に送信する。そして、サーバＡ８２０のファイル受信部８７は、サーバＢのファイル送信部８５が送信した電子ファイルを受信する（Ｓ７１５）。【０６５７】
続けて、サーバＡ８２０のユーザ要求応答部９５は、取得要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ７１６）。【０６５８】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル受信部８７から取得した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ７１７）。【０６５９】
続けて、サーバＡ８２０の更新通知部１０９１は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＢ８３０およびサーバＣ８４０に送信し、サーバＢ８３０およびサーバＣ８４０の更新通知受付部１１０はその更新通知を受け付ける（Ｓ７１８およびＳ７１９）。【０６６０】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ７２０）。【０６６１】
また、サーバＢ８３０およびサーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ７２１およびＳ７２２）。【０６６２】
続けて、Ｓ７０１からＳ７０４までにおける処理と同様に、サーバＢ８３０とサーバＡ８２０との間、および、サーバＢ８３０とサーバＣ８４０との間で「通知１」が送受信され、また、「応答１」が送受信される（Ｓ７２３からＳ７２６まで）。Ｓ７２３はＳ７０１に、Ｓ７２４はＳ７０２に、Ｓ７２５はＳ７０３に、Ｓ７２６はＳ７０４に、それぞれ対応する同様の処理であるため、ここでの詳しい説明は省略する。さらに、各サーバの管理装置判定部９２０は管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。【０６６３】
また、自身が保持サーバでないと判断した場合（Ｓ７１３でＮｏ）、続けて、サーバＢ８３０のファイル送信要求部１０８は、取得要求に係る電子ファイルをアクセス元サーバであるサーバＡ８２０に送信する要求を、保持サーバに送信する（Ｓ７２７）。ここでは、サーバＣ８４０が保持サーバであるとする。【０６６４】
続けて、保持サーバであるサーバＣ８４０のファイル記憶制御部７７は、ファイル記憶部２５から取得要求に係る電子ファイルを読み出す（Ｓ７２８）。【０６６５】
続けて、サーバＣ８４０のファイル送信部８５は取得要求に係る電子ファイルをファイル記憶制御部７７から取得し、取得した電子ファイルをサーバＡ８２０に送信する（Ｓ７２９）。【０６６６】
続けて、サーバＡ８２０のユーザ要求応答部９５は、取得要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ７３０）。【０６６７】
続けて、Ｓ７１７以降の処理を実行する。Ｓ７１７以降の処理については、既に説明したため、ここでの説明は省略する。【０６６８】
図５６は、ユーザが端末から書込要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。【０６６９】
ここでも、図５５の場合と同様に、管理サーバ情報１０００ａは図５３に示す内容であり、従って、順位が最も高い「サーバＢ」を管理装置サーバとし、各サーバの管理装置保持部１２００には「サーバＢ」を示す情報が保持されているとする。【０６７０】
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。さらに、本図は、サーバＡ８２０がアクセス元サーバである例を示す。【０６７１】
従って、本図および本図の説明における、「サーバＡ」８２０の処理は「アクセス元サーバ」が実行する処理であり、「サーバＢ」８３０の処理は「管理装置サーバ」が実行する処理である。【０６７２】
まず、本図に示すＳ７０１からＳ７０４までの処理は、分散ファイル管理装置として機能するサーバを各サーバが判定するために継続されている処理であり、図５５において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。【０６７３】
続けて、アクセス元サーバであるサーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された書込要求を、通信回線５０を介して受信する（Ｓ８０１）。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。【０６７４】
続けて、サーバＡ８２０の要求種別判断部７３は、自身の要求情報保持部７５に書込要求に係る電子ファイルを保持させる（Ｓ８０２）。【０６７５】
続けて、まず、サーバＡ８２０のロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置として機能しているサーバＢ８３０に送信し、サーバＢ８３０のロック要求受信部１１６はロック要求を受信する（Ｓ８０３）。【０６７６】
続けて、サーバＢ８３０のロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ８０４）。【０６７７】
また、サーバＡ８２０のファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５に書き込む（Ｓ８０５）。【０６７８】
続けて、サーバＡ８２０のファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ８０６）。【０６７９】
書き込みが完了していないと判断した場合（Ｓ８０６でＮｏ）、サーバＡ８２０の更新通知部１０９１は待機する。【０６８０】
また、書き込みが完了したと判断した場合（Ｓ８０６でＹｅｓ）、サーバＡ８２０の更新通知部１０９１は、自身のファイル記憶制御部７７から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＢ８３０に送信し、サーバＢ８３０の更新通知受付部１１０は更新通知を受け付ける（Ｓ８０７）。【０６８１】
続けて、サーバＡ８２０の保持サーバ問合部１０７９は、自身のファイル記憶制御部７７から完了の通知を受けて、書込要求に係る電子ファイルの保持サーバの問合せを、サーバＢ８３０に送信し、サーバＢ８３０の問合受付部１０２は保持サーバの問合せを受け付ける（Ｓ８０８）。【０６８２】
続けて、サーバＡ８２０の更新通知部１０９１は、自身のファイル記憶制御部７７から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＣ８４０に送信し、サーバＣ８４０の更新通知受付部１１０は更新通知を受け付ける（Ｓ８０９）。【０６８３】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ８１０）。【０６８４】
また、サーバＢ８３０およびサーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ８１１およびＳ８１２）。【０６８５】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ８１３）。【０６８６】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をサーバＡ８２０に通知し、サーバＡ８２０の完了通知受信部９３は完了の通知を受信する（Ｓ８１４）。【０６８７】
続けて、サーバＡ８２０のユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ８１５）。【０６８８】
続けて、サーバＢ８３０の保持サーバ判断部１０４は、自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、アクセス元サーバであるサーバＡ８２０以外の保持サーバの有無を判断する（Ｓ８１６）。【０６８９】
保持サーバがあると判断した場合（Ｓ８１６でＹｅｓ）、サーバＢ８３０のファイル送信要求部１０８は、保持サーバを特定する情報を自身の保持サーバ判断部１０４から取得することにより、書込要求に係る電子ファイルを保持サーバに送信することを内容とするファイル送信要求をサーバＡ８２０に送信し、サーバＡ８２０のファイル送信要求受信部８３は、ファイルの送信要求を受信する（Ｓ８１７）。本図は、Ｓ８１６で肯定判断された場合の保持サーバが「サーバＣ」８４０である場合の例を示す。したがって、以下の「サーバＣ」８４０の処理は、「保持サーバ」が実行する処理である。【０６９０】
続けて、サーバＡ８２０のファイル記憶制御部７７は、ファイル送信要求受信部８３が受信したファイル送信要求をファイル送信要求受信部８３から取得し、自身のファイル記憶部２５から書込要求に係る電子ファイルを読み出す（Ｓ８１８）。【０６９１】
続けて、サーバＡ８２０のファイル送信部８５は、書込要求に係る電子ファイルおよびファイル送信要求をファイル記憶制御部７７から取得し、書込要求に係る電子ファイルをサーバＣ８４０に送信し、サーバＣ８４０のファイル受信部８７はその電子ファイルを受信する（Ｓ８１９）。【０６９２】
続けて、サーバＣ８４０のファイル記憶制御部７７は、自身のファイル受信部８７からファイル受信部８７が受信した電子ファイルを取得し、その電子ファイルにより自身のファイル記憶部４５を更新する（Ｓ８２０）。【０６９３】
続けて、本図に示すＳ７２２からＳ７２５までの処理が継続される。これらの処理は、管理装置サーバを各サーバが判定するために継続されている処理であり、図５５において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。さらに、各サーバの管理装置判定部９２０が管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。【０６９４】
次に、各サーバの管理装置判定部９２０による管理装置判定処理に関連する手順について、図を参照して説明する。【０６９５】
図５７は、管理装置サーバを判定するために各サーバにおいて実行される処理のタイムチャートである。本図は、管理装置サーバであるサーバＢ８３０の稼動が停止し、その後、普及した場合に、管理装置サーバを判定するために各サーバにおいて実行される処理の具体例を示すタイムチャートである。【０６９６】
本図では、サーバＡ８２０、サーバＢ８３０およびサーバＣ８４０の保持サーバ記憶部１０００の管理サーバ情報１０００ａは、図５３に示す内容であることとする。従って、サーバＢ８３０が停止した場合、次の管理装置サーバはサーバＣ８４０である。【０６９７】
まず、管理装置サーバであるサーバＢ８３０が停止する（Ｓ９０１）。そのため、サーバＢ８３０は、サーバＡ８２０およびサーバＣ８４０に「通知１」を送信できない。「通知１」に×印を付した本図の記載は、これを表す。【０６９８】
次に、サーバＡ８２０の管理装置判定部９２０は、管理装置サーバであるサーバＢ８３０から一定時間内に通知を受信することができず、そのため、管理装置サーバは、次の順位のサーバであるサーバＣ８４０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＢ８３０からサーバＣ８４０に変更する（Ｓ９０２）。【０６９９】
ここで、管理装置サーバではない各サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第１管理装置判定処理」といい、その詳細は後述する。【０７００】
また、サーバＣ８４０の管理装置判定部９２０も、同様に、第１管理装置判定処理において、サーバＣ８４０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＢ８３０からサーバＣ８４０に変更する（Ｓ９０３）。【０７０１】
続けて、管理装置サーバとなったサーバＣ８４０の管理装置通知部１２０２が「通知２」を他のサーバに送信し、サーバＡ８２０の管理装置通知受付部１２０４が「通知２」を受け付ける（Ｓ９０４）。サーバＢ８３０は、停止しているため、「通知２」を受け付けることができない（Ｓ９０５）。本図の「通知２」の矢印に付した×は、これを表す。【０７０２】
ここで、「通知２」とは、「通知１」と同様に、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報であり、管理装置サーバであるサーバＣ８４０の管理装置通知部１２０２が送信する通知である。【０７０３】
続けて、サーバＡ８２０の管理装置判定部９２０は、第１管理装置判定処理において、管理装置の変更は必要ないと判定する（Ｓ９０６）。【０７０４】
続けて、Ａ８２０のサーバ応答部１２１２は「応答２」をサーバＣ８４０に送信し、サーバＣ８４０のサーバ応答受付部１２１４は「応答２」を受け付ける（Ｓ９０７）。【０７０５】
続けて、サーバＡ８２０の管理装置判定部９２０は第１装置判定処理を継続し、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、「通知２」と「応答２」との送受信を繰り返す（図示していない）。【０７０６】
続けて、サーバＢ８３０が復旧したとする（Ｓ９０８）。【０７０７】
復旧したサーバＢ８３０の管理装置通知部１２０２は「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４は「通知１」を、それぞれ受け付ける（Ｓ９０９およびＳ９１０）。【０７０８】
続けて、サーバＡ８２０の管理装置判定部９２０は、第１管理装置判定処理において、現在の管理装置サーバとして保持している情報が示すサーバＣ８４０よりも順位が上位であるサーバＢ８３０から通知を受け付けたため、サーバＢ８３０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＣ８４０からサーバＢ８３０に変更する（Ｓ９１１）。【０７０９】
続けて、サーバＡ８２０のサーバ応答部１２１２は「応答１」を送信し、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」をサーバＡ８２０から受け付ける（Ｓ９１２）。【０７１０】
また、サーバＣ８４０の管理装置判定部９２０は、自身より順位の高いサーバＢ８３０から通知を受け付けたため、サーバＢ８３０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＣ８４０からサーバＢ８３０に変更する（Ｓ９１３）。【０７１１】
ここで、管理装置サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第２管理装置判定処理」といい、その詳細は後述する。【０７１２】
続けて、サーバＣ８４０のサーバ応答部１２１２は自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを含む「応答１」を送信し、サーバＢ８３０のサーバ応答受付部１２１４はファイル保持情報１０００ｂを含む「応答１」をサーバＣ８４０から受け付ける（Ｓ９１４）。【０７１３】
続けて、ファイル保持情報１０００ｂを含む「応答１」を受け付けたサーバＢ８３０のサーバ応答受付部１２１４は、そのファイル保持情報１０００ｂにより、自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを更新する（Ｓ９１５）。これにより、サーバＢ８３０が保持するファイル保持情報１０００ｂは最新の内容となる。【０７１４】
続けて、サーバＢ８３０の管理装置通知部１２０２が「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４が「通知１」を、それぞれ受け付ける（Ｓ９１６およびＳ９１７）。【０７１５】
続けて、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、それぞれ、第１管理装置判定処理において、管理装置の変更は必要ないと判定する（Ｓ９１８およびＳ９１９）。【０７１６】
続けて、サーバＡ８２０およびサーバＣ８４０のサーバ応答部１２１２は「応答１」をサーバＢ８３０に送信する。そして、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」を受け付ける（Ｓ９２０およびＳ９２１）。【０７１７】
続けて、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は第１装置判定処理を継続し、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、「通知１」と「応答１」との送受信を繰り返す（図示していない）。【０７１８】
図５８は、通常のサーバの管理装置判定部９２０が実行する第１管理装置処理の詳細なフローチャートである。【０７１９】
まず、変更判断部１２０６は、管理装置通知受付部１２０４が直前に通知を受け付けてから予め定められた一定の時間が経過したか否かを判断する（Ｓ１００１）。この一定時間は、変更判断部１２０６が保持している。【０７２０】
一定時間が経過していないと判断した場合（Ｓ１００１でＮｏ）、すなわち、直前の通知から一定の時間内に次の通知を受け付けた場合、続けて、変更判断部１２０６は、管理装置保持部１２００が保持している情報と、保持サーバ記憶部１０００の管理サーバ情報１０００ａとを取得し、次の通知の送信元のサーバの順位が、管理装置保持部１２００が保持している管理装置情報が示すサーバより上位であるか否かを判断する（Ｓ１００２）。【０７２１】
送信元であるサーバが管理装置情報が示すサーバより上位でないと判断した場合（Ｓ１００２でＮｏ）、変更判断部１２０６は、管理装置サーバの変更が必要がないと判断し、時間経過の判断処理（Ｓ１００１）に戻る。【０７２２】
また、一定時間が経過したと判断した場合（Ｓ１００１でＹｅｓ）、または、一定時間が経過していないと判断し（Ｓ１００１でＮｏ）、かつ、送信元であるサーバが管理装置情報が示すサーバより上位であると判断した場合（Ｓ１００２でＹｅｓ）、変更判断部１２０６は管理装置サーバの変更が必要であると判断し、この判断を受けた管理装置決定部１２０８は管理装置サーバを決定する（Ｓ１００３）。【０７２３】
ここで、一定時間が経過したために（Ｓ１００１でＹｅｓ）、管理装置サーバの変更が必要と判断された場合には、管理装置決定部１２０８は、この判断と、管理装置保持部１２００が保持している管理装置情報とを変更判断部１２０６から取得し、さらに、保持サーバ記憶部１０００から管理サーバ情報１０００ａの「順位」を取得し、管理装置情報が示すサーバの次の順位に対応するサーバを、新たな管理装置サーバとして決定する。【０７２４】
また、送信元であるサーバが管理装置情報が示すサーバより上位であるために（Ｓ１００２でＹｅｓ）、管理装置サーバの変更が必要と判断された場合には、管理装置決定部１２０８は、この判断と、送信元であるサーバを特定するための情報とを変更判断部１２０６から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する。【０７２５】
続けて、管理装置決定部１２０８は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部１２００が保持する管理装置情報を更新し、保持させる（Ｓ１００４）。これにより、通常のサーバの管理装置判定部９２０による、第１管理装置判定処理は終了する。【０７２６】
図５９は、管理装置サーバの管理装置判定部９２０が実行する第２管理装置処理の詳細なフローチャートである。【０７２７】
まず、変更判断部１２０６は、管理装置通知受付部１２０４が通知を受け付けた場合、その通知の送信元が、自身を備えるサーバより上位であるか否かを判断する（Ｓ１１００）。【０７２８】
送信元が自身を備えるサーバより上位ではないと判断した場合（Ｓ１１００でＮｏ）、変更判断部１２０６は待機する。【０７２９】
送信元が自身を備えるサーバより上位であると判断した場合（Ｓ１１００でＹｅｓ）、管理装置決定部１２０８は、この判断と、送信元であるサーバを特定するための情報とを変更判断部１２０６から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する（Ｓ１１０１）。【０７３０】
続けて、管理装置決定部１２０８は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部１２００が保持する管理装置情報を更新し、保持させる（Ｓ１１０２）。【０７３１】
続けて、保持サーバ情報取得部１２１０は、管理装置決定部１２０８が新たな管理装置サーバとして決定したサーバを特定するための情報を取得すると、自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを取得し、取得したファイル保持情報１０００ｂとサーバを特定するための情報とをサーバ応答部１２１２に引き渡す（Ｓ１１０３）。【０７３２】
これにより、管理装置サーバの管理装置判定部９２０による、第１管理装置判定処理は終了する。【０７３３】
次に、実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的な一例を挙げて説明する。【０７３４】
図６０は、サーバＢ８３０の停止中にサーバＡ８２０がファイルｄの取得要求を受け付けた後に、サーバＢ８３０が復旧した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の具体例を示すタイムチャートである。【０７３５】
ここでも、各サーバの保持サーバ記憶部１０００の管理サーバ情報は、図５３に示す管理サーバ情報１０００ａであるとする。また、各サーバの保持サーバ記憶部１０００のファイル保持情報の初めの内容は、図５４に示すファイル保持情報１０００ｂであるとする。さらに、各サーバのファイル記憶部２５、３５、４５が記憶している電子ファイル情報の初めの内容は、図４９に示す内容であるとする。【０７３６】
まず、管理装置サーバであるサーバＢ８３０が停止してから（Ｓ９０１）、サーバＡ８２０が新たに管理装置サーバとなったサーバＣ８４０に「応答２」を送信するまで（Ｓ９０７）の処理は、図５７において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。この時点での管理装置サーバは、サーバＣ８４０に変更されている。【０７３７】
続けて、サーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から、ファイルｄの取得要求を受け付ける（Ｓ１２０１）。【０７３８】
続けて、サーバＡ８２０の要求種別判断部７３は、ユーザ要求受信部７１が受信した要求が「取得要求」であるかを判断し（図示していない）、続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶しているか否かを判断する（Ｓ１２０２）。【０７３９】
図４９Ａに示すように、サーバＡ８２０のファイル記憶部２５はファイルｄを記憶していない。そのため、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していないと判断する（Ｓ１２０２でＮｏ）。【０７４０】
サーバＡ８２０の保持サーバ問合部１０７９は、ファイル記憶制御部７７の判断を受けて、サーバＣ８４０に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバＢ８３０の問合受付部１０２はその保持サーバの問合せを受け付ける（Ｓ１２０３）。【０７４１】
続けて、サーバＣ８４０の保持サーバ判断部１０４は、保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する（Ｓ１２０４）。【０７４２】
図５４に示すように、ファイルｄの保持サーバは「サーバＢ」と「サーバＣ」とであるため、サーバＣ８４０の保持サーバ判断部１０４は、保持サーバがあると判断し（Ｓ１２０４でＹｅｓ）、続けて、サーバＣ８４０自身が保持サーバであるか否かを判断する（Ｓ１２０５）。【０７４３】
上記のように、「サーバＣ」が保持サーバであるため、自身が保持サーバであると判断し（Ｓ１２０５でＹｅｓ）、続けて、サーバＣ８４０のファイル記憶制御部７７は、自身の管理装置部９１０の要求により、ファイル記憶部４５からファイルｄを読み出す（Ｓ１２０６）。【０７４４】
続けて、サーバＣ８４０のファイル送信部８５は、自身のファイル記憶制御部７７からファイルｄを取得し、サーバＡ８２０に送信する。そして、サーバＡ８２０のファイル受信部８７はそのファイルｄを受信する（Ｓ１２０７）。【０７４５】
続けて、サーバＡ８２０のユーザ要求応答部９５は、ファイルｄをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ１２０８）。【０７４６】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル受信部８７から取得した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ１２０９）。【０７４７】
続けて、サーバＡ８２０の更新通知部１０９１は、自身がファイルｄの保持サーバとなったことを内容とする更新通知を、サーバＣ８４０に送信し、サーバＣ８４０の更新通知受付部１１０はその更新通知を受け付ける（Ｓ１２１０）。【０７４８】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ１２１１）。【０７４９】
また、サーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ１２１２）。【０７５０】
この後、サーバＣ８４０とサーバＡ８２０とは「通知２」の送受信から（Ｓ９０４）、「応答２」の送受信まで（Ｓ９０７）の処理を継続する。【０７５１】
ここまでの処理を終えた時に、各サーバが保持しているファイル保持情報について、図を参照して説明する。【０７５２】
図６１は、サーバＢ８３０の停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＡ８２０およびサーバＣ８４０の保持サーバ記憶部の保持サーバ情報１０００ｃの例を示す図である。サーバＡ８２０およびサーバＣ８４０の保持サーバ情報１０００ｃには、「ファイルｄ」の保持サーバに「サーバＡ」が新たに追加されている。【０７５３】
また、図６２は、サーバＢ８３０の停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＢ８３０の保持サーバ記憶部の保持サーバ情報１０００ｂの例を示す図である。サーバＢ８３０は停止しているため保持サーバ情報１０００ｄが更新されておらず、「ファイルｄ」の保持サーバに「サーバＡ」が新たに追加されていない。【０７５４】
このように、停止中のサーバが保持するファイル保持情報１０００ｄは、正しい情報を保持していないことがある。そのため、以下に説明する処理が実行される。【０７５５】
ここから、図６０の説明に戻る。【０７５６】
サーバＢ８３０が復旧したとする（Ｓ９０８）。【０７５７】
続けて、サーバＢ８３０とサーバＡ８２０との「通知１」の送受信から（Ｓ９０９）、サーバＢによる保持サーバ情報の更新までは（Ｓ９１５）、図５７において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。【０７５８】
ここで、Ｓ９１４においてサーバＣ８４０のサーバ応答部１２１２が送信する「応答１」には、図６１に示す最新のファイル保持情報１０００ｃが含まれる。そのため、「応答１」を受信したサーバＢ８３０は、Ｓ９１５において、ファイル保持情報１０００ｃにより、自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを更新することができ、復旧したサーバＢ８３０は管理装置サーバとして正しく機能することが可能となる。【０７５９】
実施の形態２において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。【０７６０】
以上、本発明の実施の形態４に係る分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。【０７６１】
（変形例２）
例えば、本実施の形態に係る分散ファイル管理システムを構成するサーバに、分散ファイル管理装置としての機能を有しないサーバが含まれても構わない。【０７６２】
実施の形態４では、分散ファイル管理システムを構成するサーバが３台の場合を例に説明した。しかし、分散ファイル管理システムを構成するサーバの台数は、より多くても構わない。分散ファイル管理装置としての機能を備えたサーバは、保持サーバ記憶部１０００にファイル保持情報を記憶しており、サーバのいずれかのファイル記憶部に変更があると、すべての分散ファイル管理装置としての機能を備えたサーバのファイル保持情報が、同期を保つために、更新される。多数のサーバにより分散ファイル管理システムが構成される場合、このファイル保持情報の同期のための処理および通信情報量が増加する。【０７６３】
したがって、分散ファイル管理システムが多数のサーバにより構成される場合には、そのサーバ群の一部に分散ファイル管理装置の機能を有するサーバを含むことにより、分散ファイル管理システムの耐障害性を向上させることが可能になるとともに、そのサーバ群の一部に分散ファイル管理装置の機能を有しないサーバを含むことにより、各サーバの処理に係る負荷の増加と通信情報量が増加とを抑えることが可能となる。【０７６４】
このような実施の形態４に係る一変形例について、図６３から図６５までを参照して説明する。【０７６５】
図６３は、本発明の変形例２に係る分散ファイル管理システムの構成の概要を示す図である。本図に示す分散ファイル管理システムは、サーバＡ８２０と、サーバＢ８３０と、サーバＣ８４０と、サーバＤ８５０と、端末ａ６０と、端末ｂ６５とから構成され、これらの各装置は通信回線５０介して接続されている。すなわち、本図に示す分散ファイル管理システムの構成は、実施の形態４に係る分散ファイル管理システムの構成に、さらに、サーバＤ８５０を追加したものである。サーバＤ８５０以外の装置は実施の形態４と同様であるため、ここでの詳しい説明は省略する。【０７６６】
サーバＤ８５０は、他のサーバと同様に、電子ファイルを記憶している記憶部であるファイル記憶部８５５を備える。サーバＤ８５０が他のサーバと異なる点は、分散ファイル管理装置としての機能を備えていないことにある。【０７６７】
そのため、分散ファイル管理装置としての機能を備えるサーバであるサーバＡ８２０と、サーバＢ８３０と、サーバＣ８４０とが備える保持サーバ記憶部１０００の管理サーバ情報は、サーバＤ８５０が分散ファイル管理装置としての機能を備えていないことが識別できるようになっている。【０７６８】
図６４は、本発明の変形例２に係る分散ファイル管理装置として機能するサーバが備える保持サーバ記憶部１０００の管理サーバ情報１０００ｅの一例を示す図である。【０７６９】
本図に示す管理サーバ情報１０００ｅは、図５３に示す実施の形態４に係る管理サーバ情報１０００ａと同様に、「サーバ名」と、「ＩＰアドレス」と、「順位」とから構成される。本変形において、これらに格納される情報も、実施の形態と同様である。違いは、分散ファイル管理装置としての機能を備えないサーバを識別できるようにするため、そのサーバに対応する「順位」に情報を含まないことである。【０７７０】
例えば、本図では、「サーバＤ」に対応付けて格納されている情報は「ＩＰアドレス」のみであり、「順位」はＮＵＬＬ値である。このように、「順位」がＮＵＬＬ値であることにより、分散ファイル管理装置としての機能を備えたサーバは、「サーバＤ」が分散ファイル管理装置としての機能を備えないサーバであることを識別でき、例えば、管理装置サーバが停止した場合、サーバＤ８５０は次の管理装置サーバの候補とならない。【０７７１】
なお、サーバが分散ファイル管理装置としての機能を備えないことを示す方法は、これに限られない。「順位」がＮＵＬＬ値である他、「順位」を「−１」とするなど、分散ファイル管理装置の機能を備えるサーバに対応付けられた「順位」に付与されない値でもよい。また、分散ファイル管理装置としての機能を有するサーバであるか否かを示すフラグを、さらに追加してもよい。【０７７２】
図６５は、本発明の変形例２に係る分散ファイル管理装置として機能しないサーバであるサーバＤ８５０が備える機能的構成を示すブロック図である。【０７７３】
サーバＤ８５０は、ファイルサーバ部９００と、管理装置判定部１３００とから構成される。また、各部位は内部バスで接続されている（図示しない）。【０７７４】
サーバＤ８５０のファイルサーバ部９００は、図５１に示すサーバＡ８２０のファイルサーバ部８２０と同様に、ファイルサーバとしての機能を実現する部位であり、サーバＡ８２０のファイルサーバ部８２０と同様の機能的構成を備える。本図に示すファイルサーバ部９００の各部位が備える機能は、図５１において同一の参照符号を付したサーバＡ８２０のファイルサーバ部８２０の各部位が備える機能と同様である。そのため、ここでサーバＤ８５０のファイルサーバ部９００の各部位が備える機能に関する詳細な説明は省略する。【０７７５】
管理装置判定部１３００は、図５２に示すサーバＡ８２０の管理装置判定部９２０と同様に、管理装置サーバとの間で送受信される情報に基づいて、管理装置サーバを判定する部位である。【０７７６】
本変形例に係るサーバＤ８５０の管理装置判定部１３００は、管理装置保持部１４００と、管理装置通知受付部１４０２と、サーバ応答部１４１２とを有する。【０７７７】
管理装置保持部１４００は、図５２に示す管理装置保持部１２００と同様に、管理装置情報を保持している部位である。【０７７８】
管理装置通知受付部１４０２は、図５２に示す管理装置通知受付部１２０４と同様に、管理装置サーバの管理装置通知部１２０２からの通知を受け付ける部位である。管理装置通知受付部１４０２は、受け付けた通知の送信元であるサーバを示す情報を管理装置情報として管理装置保持部１４００に保持させる。【０７７９】
すなわち、分散ファイル管理装置としての機能を備えないサーバの管理装置判定部１３００は、通知元であるサーバが管理装置サーバであると判定する。【０７８０】
サーバ応答部１４１２は、管理装置通知受付部１４０２が通知を受け付けた場合に、管理装置サーバに応答する部位である。サーバ応答部１４１２は、管理装置保持部１４００が保持している管理装置情報を取得し、取得した管理装置情報により示されるサーバを、応答先である管理装置サーバとする。【０７８１】
このような機能を備えることにより、分散ファイル管理装置の機能を有しないサーバは、分散ファイル管理サーバを検知することができ、ユーザからの要求を受け付けた場合には、必要に応じて分散ファイル管理サーバにユーザの要求に係る電子ファイルの保持サーバを問い合わせることができる。【０７８２】
なお、本変形例では分散ファイル管理装置の機能を有しないサーバを１台である場合を例にしたが、複数台であってもよいのはもちろんである。【０７８３】
以上、本発明の実施の形態１から実施の形態４までに係る分散ファイル管理システムについて説明したが、本発明は、これらの実施の形態に限定されるものではない。【０７８４】
例えば、実施の形態１から実施の形態３まででは、分散ファイル管理装置の管理下にあるサーバが３台である場合を例に説明したが、サーバは複数あればよい。また、サーバの台数が多い程、ユーザは電子ファイルの所在を意識することなく所望の電子ファイルを取得することが可能となるなど、各実施の形態における効果は顕著になる。
【産業上の利用可能性】
【０７８５】
本発明は、複数のサーバで分散して保持されている電子ファイル群を管理する装置またはシステム等に適用でき、特に、複数のファイルサーバおよび各ファイルサーバを管理する装置により構成されるシステムや、複数のＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバおよび各ＷＷＷサーバを管理する装置により構成されるシステム等に適用できる。
【図１】
2008010473.tif 000003
【図２】
2008010473.tif 000004
【図３Ａ】
2008010473.tif 000005
【図３Ｂ】
2008010473.tif 000006
【図３Ｃ】
2008010473.tif 000007
【図４】
2008010473.tif 000008
【図５】
2008010473.tif 000009
【図６】
2008010473.tif 000010
【図７】
2008010473.tif 000011
【図８】
2008010473.tif 000012
【図９】
2008010473.tif 000013
【図１０】
2008010473.tif 000014
【図１１】
2008010473.tif 000015
【図１２】
2008010473.tif 000016
【図１３】
2008010473.tif 000017
【図１４】
2008010473.tif 000018
【図１５】
2008010473.tif 000019
【図１６】
2008010473.tif 000020
【図１７】
2008010473.tif 000021
【図１８】
2008010473.tif 000022
【図１９】
2008010473.tif 000023
【図２０Ａ】
2008010473.tif 000024
【図２０Ｂ】
2008010473.tif 000025
【図２０Ｃ】
2008010473.tif 000026
【図２１】
2008010473.tif 000027
【図２２】
2008010473.tif 000028
【図２３】
2008010473.tif 000029
【図２４】
2008010473.tif 000030
【図２５】
2008010473.tif 000031
【図２６】
2008010473.tif 000032
【図２７】
2008010473.tif 000033
【図２８】
2008010473.tif 000034
【図２９】
2008010473.tif 000035
【図３０】
2008010473.tif 000036
【図３１】
2008010473.tif 000037
【図３２】
2008010473.tif 000038
【図３３】
2008010473.tif 000039
【図３４】
2008010473.tif 000040
【図３５Ａ】
2008010473.tif 000041
【図３５Ｂ】
2008010473.tif 000042
【図３５Ｃ】
2008010473.tif 000043
【図３６】
2008010473.tif 000044
【図３７】
2008010473.tif 000045
【図３８】
2008010473.tif 000046
【図３９】
2008010473.tif 000047
【図４０】
2008010473.tif 000048
【図４１】
2008010473.tif 000049
【図４２】
2008010473.tif 000050
【図４３】
2008010473.tif 000051
【図４４】
2008010473.tif 000052
【図４５】
2008010473.tif 000053
【図４６】
2008010473.tif 000054
【図４７】
2008010473.tif 000055
【図４８】
2008010473.tif 000056
【図４９Ａ】
2008010473.tif 000057
【図４９Ｂ】
2008010473.tif 000058
【図４９Ｃ】
2008010473.tif 000059
【図５０】
2008010473.tif 000060
【図５１】
2008010473.tif 000061
【図５２】
2008010473.tif 000062
【図５３】
2008010473.tif 000063
【図５４】
2008010473.tif 000064
【図５５】
2008010473.tif 000065
【図５６】
2008010473.tif 000066
【図５７】
2008010473.tif 000067
【図５８】
2008010473.tif 000068
【図５９】
2008010473.tif 000069
【図６０】
2008010473.tif 000070
【図６１】
2008010473.tif 000071
【図６２】
2008010473.tif 000072
【図６３】
2008010473.tif 000073
【図６４】
2008010473.tif 000074
【図６５】
2008010473.tif 000075
【手続補正書】
【提出日】平成20年2月29日(2008.2.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項２】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項３】
（削除）
【請求項４】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項５】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項６】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５に記載の分散ファイル管理システム。
【請求項７】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５に記載の分散ファイル管理システム。
【請求項８】
前記各サーバは、さらに、
前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、
要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求に係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、
前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける
ことを特徴とする請求項１から請求項７までのいずれか１項に記載の分散ファイル管理システム。
【請求項９】
前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項８に記載の分散ファイル管理システム。
【請求項１０】
前記各サーバは、
さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、
前記分散ファイル管理装置は、
さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、
前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、
前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する
ことを特徴とする請求項８または請求項９に記載の分散ファイル管理システム。
【請求項１１】
（削除）
【請求項１２】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項１３】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項１４】
前記分散ファイル管理装置は、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断手段と、
前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項１５】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理システム。
【請求項１６】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理システム。
【請求項１７】
前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する
ことを特徴とする請求項１４から請求項１６までのいずれか１項に記載の分散ファイル管理システム。
【請求項１８】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１４に記載の分散ファイル管理システム。
【請求項１９】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える
ことを特徴とする請求項１４から請求項１８までのいずれか１項に記載の分散ファイル管理システム。
【請求項２０】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計手段と、
前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第１の保持情報更新手段とを備える
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２１】
（削除）
【請求項２２】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２３】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第２の保持情報更新手段とを備える
ことを特徴とする請求項２２に記載の分散ファイル管理システム。
【請求項２４】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２５】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２６】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２７】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２３に記載の分散ファイル管理システム。
【請求項２８】
前記分散ファイル管理方法は、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとを含む
ことを特徴とする請求項１２に記載の分散ファイル管理方法。
【請求項２９】
前記分散ファイル管理プログラムは、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとを含む
ことを特徴とする請求項１３に記載の分散ファイル管理プログラム。
【請求項３０】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項３１】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する
ことを特徴とする請求項３０に記載の分散ファイル管理システム。
【請求項３２】
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第１の判断部と、
前記第１判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第１判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第２の判断部とを有し、
前記分散ファイル管理装置は、さらに、
前記問合受付手段が問合せを受け付けることにより、前記第１の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、
前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、
前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、
前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える
ことを特徴とする請求項３１に記載の分散ファイル管理システム。
【請求項３３】
前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、
前記分散ファイル管理装置は、さらに、
前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、
前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える
ことを特徴とする請求項３０から請求項３２までのいずれか１項に記載の分散ファイル管理システム。
【請求項３４】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３３に記載の分散ファイル管理システム。
【請求項３５】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３３に記載の分散ファイル管理システム。
【請求項３６】
前記各サーバは、
前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項３０から請求項３５までのいずれか１項に記載の分散ファイル管理システム。
【請求項３７】
前記各サーバは、さらに、
他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項３０から請求項３６までのいずれか１項に記載の分散ファイル管理システム。
【請求項３８】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項３０から請求項３７までのいずれか１項に記載の分散ファイル管理システム。
【請求項３９】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４０】
前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４１】
（削除）
【請求項４２】
（削除）
【請求項４３】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶部と、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付部と、
前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、
前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備え、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項４４】
前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、
前記第２のサーバは、
前記ファイルサーバ手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える
ことを特徴とする請求項４３に記載の分散ファイル管理システム。
【請求項４５】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する
ことを特徴とする請求項４３に記載の分散ファイル管理システム。
【請求項４６】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、
前記第２の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、
前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する
ことを特徴とする請求項４４に記載の分散ファイル管理システム。
【請求項４７】
前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する
ことを特徴とする請求項４５または請求項４６に記載の分散ファイル管理システム。
【請求項４８】
（削除）
【請求項４９】
前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、
前記管理装置手段は、さらに、
前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する
ことを特徴とする請求項４３から請求項４７までのいずれか１項に記載の分散ファイル管理システム。
【請求項５０】
（削除）
【請求項５１】
前記ファイルサーバ手段は、さらに、
他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、
前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む
ことを特徴とする請求項４９に記載の分散ファイル管理システム。
【請求項５２】
前記ファイルサーバ手段は、さらに、
前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、
前記管理装置手段は、
前記更新通知部による通知を受け付ける更新通知受付部と
前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える
ことを特徴とする請求項５１に記載の分散ファイル管理システム。
【請求項５３】
前記管理装置手段は、さらに、
前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付部は前記更新通知手段による通知を受け、
前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５２に記載の分散ファイル管理システム。
【請求項５４】
前記管理装置手段は、さらに、
前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項５３に記載の分散ファイル管理システム。
【請求項５５】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとを含み、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項５６】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとをコンピュータに実行させ、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【手続補正書】
【提出日】平成20年11月13日(2008.11.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項２】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項３】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項４】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項３に記載の分散ファイル管理システム。
【請求項５】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項６】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項７】
前記各サーバは、さらに、
前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、
要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求に係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、
前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける
ことを特徴とする請求項１から請求項６までのいずれか１項に記載の分散ファイル管理システム。
【請求項８】
前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項７に記載の分散ファイル管理システム。
【請求項９】
前記各サーバは、
さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、
前記分散ファイル管理装置は、
さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、
前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、
前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する
ことを特徴とする請求項７または請求項８に記載の分散ファイル管理システム。
【請求項１０】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項１１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項１２】
前記分散ファイル管理装置は、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断手段と、
前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項１３】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１２に記載の分散ファイル管理システム。
【請求項１４】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１２に記載の分散ファイル管理システム。
【請求項１５】
前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する
ことを特徴とする請求項１２から請求項１４までのいずれか１項に記載の分散ファイル管理システム。
【請求項１６】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する
ことを特徴とする請求項１２に記載の分散ファイル管理システム。
【請求項１７】
前記分散ファイル管理装置は、さらに、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える
ことを特徴とする請求項１２から請求項１６までのいずれか１項に記載の分散ファイル管理システム。
【請求項１８】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計手段と、
前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第１の保持情報更新手段とを備える
ことを特徴とする請求項１７に記載の分散ファイル管理システム。
【請求項１９】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項１７に記載の分散ファイル管理システム。
【請求項２０】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第２の保持情報更新手段とを備える
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２１】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２０に記載の分散ファイル管理システム。
【請求項２２】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２０に記載の分散ファイル管理システム。
【請求項２３】
前記分散ファイル管理装置は、さらに、
現在の日時を保持する時計部を備え、
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する
ことを特徴とする請求項２０に記載の分散ファイル管理システム。
【請求項２４】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２０に記載の分散ファイル管理システム。
【請求項２５】
前記分散ファイル管理方法は、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとを含む
ことを特徴とする請求項１０に記載の分散ファイル管理方法。
【請求項２６】
前記分散ファイル管理プログラムは、さらに、
前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを予め設定した間隔で判断する削除対象判断ステップと、
前記削除対象判断ステップにおいて削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信ステップとを含む
ことを特徴とする請求項１１に記載の分散ファイル管理プログラム。
【請求項２７】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項２８】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する
ことを特徴とする請求項２７に記載の分散ファイル管理システム。
【請求項２９】
前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第１の判断部と、
前記第１判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第１判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第２の判断部とを有し、
前記分散ファイル管理装置は、さらに、
前記問合受付手段が問合せを受け付けることにより、前記第１の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、
前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、
前記各サーバは、
電子ファイルを記憶しているファイル記憶手段と、
前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、
前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、
前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える
ことを特徴とする請求項２８に記載の分散ファイル管理システム。
【請求項３０】
前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、
前記分散ファイル管理装置は、さらに、
前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、
前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える
ことを特徴とする請求項２７から請求項２９までのいずれか１項に記載の分散ファイル管理システム。
【請求項３１】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３０に記載の分散ファイル管理システム。
【請求項３２】
前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する
ことを特徴とする請求項３０に記載の分散ファイル管理システム。
【請求項３３】
前記各サーバは、
前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える
ことを特徴とする請求項２７から請求項３２までのいずれか１項に記載の分散ファイル管理システム。
【請求項３４】
前記各サーバは、さらに、
他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項２７から請求項３３までのいずれか１項に記載の分散ファイル管理システム。
【請求項３５】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項２７から請求項３４までのいずれか１項に記載の分散ファイル管理システム。
【請求項３６】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３５に記載の分散ファイル管理システム。
【請求項３７】
前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項３５に記載の分散ファイル管理システム。
【請求項３８】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶部と、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付部と、
前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、
前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備え、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項３９】
前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、
前記第２のサーバは、
前記ファイルサーバ手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４０】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する
ことを特徴とする請求項３８に記載の分散ファイル管理システム。
【請求項４１】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、
前記第２の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、
前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する
ことを特徴とする請求項３９に記載の分散ファイル管理システム。
【請求項４２】
前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する
ことを特徴とする請求項４０または請求項４１に記載の分散ファイル管理システム。
【請求項４３】
前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、
前記管理装置手段は、さらに、
前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する
ことを特徴とする請求項３８から請求項４２までのいずれか１項に記載の分散ファイル管理システム。
【請求項４４】
前記ファイルサーバ手段は、さらに、
他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、
前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む
ことを特徴とする請求項４３に記載の分散ファイル管理システム。  
【請求項４５】
前記ファイルサーバ手段は、さらに、
前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、
前記管理装置手段は、
前記更新通知部による通知を受け付ける更新通知受付部と
前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える
ことを特徴とする請求項４４に記載の分散ファイル管理システム。
【請求項４６】
前記管理装置手段は、さらに、
前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付部は前記更新通知手段による通知を受け、
前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４５に記載の分散ファイル管理システム。
【請求項４７】
前記管理装置手段は、さらに、
前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４６に記載の分散ファイル管理システム。
【請求項４８】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとを含み、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項４９】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとをコンピュータに実行させ、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ・ネットワーク（以下、「ネットワーク」という。）上で分散している電子ファイルを管理するシステムに関する。
【背景技術】
【０００２】
企業等の組織内のＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やインターネットなどのＷａｎ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）といったネットワークを介して、ネットワークに接続されている端末を利用するユーザは、ネットワークに接続されているサーバが保持している電子ファイルにアクセスすることができる。これにより、ユーザは、ネットワークに接続されているサーバに分散して保持されている電子ファイルを閲覧すること、または、ダウンロードすることなどが可能となり、情報の流通や活用が促進されている。
【０００３】
従来、このようにネットワーク上で分散して保持されている電子ファイルの活用および管理のための技術が提案されている。
【０００４】
例えば、特許文献１に記載の技術は、各サーバのファイルシステムを統合するスーパーディレクトリを頂点とするツリー構造をした仮想的なファイルシステムをユーザに提示するファイルシステムの管理方法である。この技術によると、ユーザは自身が利用している端末が保持している電子ファイルにアクセスする場合と同様のユーザインターフェースから、サーバが保持する電子ファイルにアクセスすることができる。
【０００５】
また、特許文献２に記載の技術は、各サーバが保持する１つの電子ファイルをネットワークに接続された各端末において共同で利用するのではなく、各サーバが同一の電子ファイルないし電子ファイル群を重複して保持し、各サーバ間で保持している電子ファイルないし電子ファイル群の内容を完全に同期させるメカニズムまたは方法である。
【特許文献１】特開平５−２５０２４９号公報
【特許文献２】特表平１０−５１０４１３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載の技術では、ユーザが取得した電子ファイルが必ずしも最新の内容の電子ファイルであるとは限らないという問題がある。
【０００７】
特許文献１に記載の技術は、ネットワーク上に分散している電子ファイルの同期をとる技術を開示していないため、例えば、複数のサーバが保持している同一名称の電子ファイルの内容が異なる場合がある。
【０００８】
特許文献２に記載の技術では、複数のサーバが保持する各電子ファイルの同期が取れている。しかしながら、全てのサーバが同一の電子ファイル群を保持しており、各電子ファイル間の同期をとるためには、電子ファイルの内容を更新する際に、全てのサーバが保持する当該電子ファイルを更新する必要がある。したがって、更新時には、ネットワークトラフィックが増大するという問題がある。この問題は、サーバの数が多くなるほど顕著になる。
【０００９】
本発明は、上記の問題を解決するためになされたもので、ユーザが利用する端末から任意のサーバにアクセスすることにより、ユーザの所望する電子ファイルが複数のサーバのいずれかに保持されている限り、最新の当該電子ファイルをユーザに提供することを可能とする分散ファイル管理システムの提供を目的とする。また、上記の目的を達成するために掛かるネットワーク上の負荷を抑えることを可能とする分散ファイル管理システムの提供を目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。
【００１１】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、最新の電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。
【００１２】
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００１３】
好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する。
【００１４】
このように、分散ファイル管理装置は、サーバと、電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報を含むファイル保持情報を保持しており、アクセス元サーバから問合せを受け付けると、このようなファイル保持情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。
【００１５】
また、各サーバが保持している電子ファイルの更新時には、電子ファイルの同期をとるための処理をしなくても、ユーザの要求に係る電子ファイルをサーバのいずれかが保持している限り、ユーザの要求に係る最新の電子ファイルを端末が取得ことが可能となる。したがって、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００１６】
さらに好ましくは、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。
【００１７】
このように、アクセス元サーバは保持サーバからユーザの要求に係る電子ファイルを取得する。これにより、アクセス元サーバは、ユーザの要求に係る電子ファイルをユーザが利用する端末に送信することが可能となる。
【００１８】
さらに好ましくは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。
【００１９】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００２０】
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。
【００２１】
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００２２】
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００２３】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。
【００２４】
さらに好ましくは、前記各サーバは、さらに、電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける。
【００２５】
また、前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む。
【００２６】
このように、アクセス元サーバは、ユーザの要求に応じて、分散ファイル管理装置にユーザの要求に関連する問合せをし、または、自身の処理を実行する。これにより、分散ファイル管理装置にかかる負荷を軽減することが可能となる。
【００２７】
さらに好ましくは、前記各サーバは、さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、前記分散ファイル管理装置は、さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する。
【００２８】
このように、ロック処理をすることにより、分散ファイル管理装置が保持しているファイル保持情報の内容と、各サーバが保持する電子ファイルの最新の状態との食い違いを防止することが可能となる。
【００２９】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記ファイル保持情報を参照し、同一の識別子を有する電子ファイルを複数のサーバが保持している場合に、当該複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する削除対象判断手段と、前記削除対象判断手段により削除すると判断された電子ファイルを保持するサーバに、前記電子ファイルを削除する要求を送信する削除要求送信手段とを備える。
【００３０】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。
【００３１】
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。
【００３２】
さらに、重複して保持されている電子ファイルを、少なくとも１つを残して削除する。これにより、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。
【００３３】
さらに好ましくは、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、サーバが保持する電子ファイルに係るユーザの要求を最後に受け付けた日付けである最終アクセス日とを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の電子ファイルを複数のサーバが保持し、かつ、前記複数のサーバが保持する電子ファイルのいずれかが前記最終アクセス日から予め定められた期間を経過している場合に、前記最終アクセス日が最も新しい電子ファイルを残すように、前記各電子ファイルを削除するか否かを判断する。
【００３４】
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、前記削除対象判断手段は、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持し、かつ、当該同一の識別子を含む電子ファイルのいずれかに最新でないことを示す前記フラグが対応付けられている場合に、最新の内容であることを示す前記フラグに対応付けられた電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。
【００３５】
さらに、前記削除対象判断手段は、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記複数のサーバの少なくとも１つが保持する前記電子ファイルを残すように、前記各電子ファイルを削除するか否かを、定期的に、判断する。
【００３６】
さらに、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバが電子ファイルを前記サーバに保持させる要求である書込要求を受信した場合に、前記書込要求に係る電子ファイルと同一の識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記削除対象判断手段は、前記問合受付手段が前記書込要求に基づく問合せを受け付けたときに、前記ファイル保持情報を参照し、同一の識別子を含む電子ファイルを複数のサーバが保持している場合に、前記アクセス元サーバが前記書込要求を受信することにより保持した電子ファイルのみを残すように、前記各電子ファイルを削除するか否かを判断する。
【００３７】
このように、定期的に、または、書込要求を受信したときに、重複して保持されている電子ファイルを、少なくとも１つを残して削除する。これにより、各サーバが電子ファイルを保持するために消費する記憶資源の有効な活用が可能となる。
【００３８】
さらに好ましくは、前記分散ファイル管理装置は、さらに、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記取得要求に係る電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、前記問合受付手段が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記保持サーバ判断手段により保持サーバであると判断されたサーバに、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。
【００３９】
また、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。
【００４０】
さらに、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。
【００４１】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００４２】
さらに好ましくは、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計手段と、前記保持サーバ判断手段により前記アクセス元サーバが保持サーバであると判断された場合に、前記時計手段が保持する日によって、前記アクセス元サーバおよび前記ユーザ指定の識別子に対応付けられた前記ファイル保持情報に含まれる前記最終アクセス日を更新する第１の保持情報更新手段とを備える。
【００４３】
また、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と、前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する第２の保持情報更新手段とを備える。
【００４４】
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００４５】
さらに、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００４６】
さらに、前記分散ファイル管理装置は、さらに、現在の日時を保持する時計部を備え、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、前記最終アクセス日として前記時計部から取得した日とを対応付けた情報により、前記ファイル保持情報を更新する。
【００４７】
さらに、前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、当該書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記第２の保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００４８】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の正しい状態を格納しておくことが可能となる。
【００４９】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、ユーザが利用する端末と、分散ファイル管理装置とにより構成され、前記分散ファイル管理装置は、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む権限ある者により作成された真正な電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備える。
【００５０】
また、前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、電子ファイルのハッシュ値とを対応付けた情報であるファイル保持情報を記憶し、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照し、前記ユーザ指定の識別子に対応付けられているサーバが保持している電子ファイルのハッシュ値を取得することにより、前記ユーザ指定の識別子に対応付けられたハッシュ値が取得した前記ハッシュ値と一致する場合に、前記ユーザ指定の識別子に対応付けられているサーバを保持サーバと判断する。
【００５１】
このように、分散ファイル管理装置は、アクセス元サーバから問合せを受け付けると、電子ファイルを保持するサーバがいずれであるかを示す情報に基づいて、ユーザの要求に係る電子ファイルの保持サーバを判断する。そのため、ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。
【００５２】
また、各サーバが保持している電子ファイルの更新時には、一部のサーバが重複して保持している同一の識別子を有する電子ファイルの同期をとることができる。重複して保持される電子ファイルは、複数のサーバの全てとは限らないため、全てのサーバが全ての電子ファイルを重複して保持している場合よりも、電子ファイルの更新時にネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。同一識別子を含む電子ファイルの同期がとられている場合には、ユーザは、端末において、最新の電子ファイルを取得ことが可能となる。
【００５３】
電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。
【００５４】
さらに好ましくは、前記保持サーバ判断手段は、前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、ユーザ指定の識別子を含む電子ファイルを保持するサーバを判断する第１の判断部と、前記第１判断部により電子ファイルを保持すると判断されたサーバが保持している当該電子ファイルのハッシュ値を取得し、当該ハッシュ値と前記ファイル保持情報に含まれるハッシュ値とが一致している場合に、前記第１判断部により電子ファイルを保持する判断されたサーバを保持サーバと判断する第２の判断部とを有し、前記分散ファイル管理装置は、さらに、前記問合受付手段が問合せを受け付けることにより、前記第１の判断部により電子ファイルを保持すると判断されたサーバに、当該サーバが保持している当該電子ファイルのハッシュ値を要求するハッシュ値要求手段と、前記ハッシュ値要求手段が要求を送信したサーバから、当該要求に係る電子ファイルのハッシュ値を受信するハッシュ値受信手段とを備え、前記各サーバは、電子ファイルを記憶しているファイル記憶手段と、前記ハッシュ値要求手段から特定の電子ファイルのハッシュ値の要求を受信するハッシュ値要求受信手段と、前記ハッシュ値要求受信手段が受信した要求に含まれる前記特定の電子ファイルを、前記ファイル記憶手段から取得し、前記特定の電子ファイルのハッシュ値を計算するハッシュ値計算手段と、前記ハッシュ値計算手段により計算されたハッシュ値を前記ハッシュ値受信部に送信するハッシュ値送信手段とを備える。
【００５５】
このように、各サーバは保持している電子ファイルのハッシュ値を計算し、計算したハッシュ値を分散ファイル管理装置に送信する。これにより、分散ファイル管理装置は、現にサーバが保持している電子ファイルのハッシュ値を取得することができ、サーバが保持している電子ファイルに改竄がなされていないことを検証することが可能となる。
【００５６】
さらに好ましくは、前記問合受付手段は、さらに、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を受信したサーバであるアクセス元サーバから、当該書込要求に係る電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、前記保持サーバ判断手段は、さらに、前記問合受付手段が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、当該書込要求に係る電子ファイルの識別子と同一の識別子を含む電子ファイルを保持するサーバを判断し、前記分散ファイル管理装置は、さらに、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き状態を示す値が最も大きいサーバを判断し、空き状態を示す値が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する複写先判定部と、前記複写先判定部により複製を保持させると決定されたサーバへの前記書込要求に係る電子ファイルの送信を、前記アクセス元サーバに送信する複写先送信部を備える。
【００５７】
また、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の全容量に対する空き容量の割合が最も大きいサーバを判断し、当該割合が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。
【００５８】
さらに、前記複写先判定部は、前記保持サーバ判断手段により電子ファイルを保持するサーバがないと判断された場合に、前記各サーバが電子ファイルを記憶するために備えるファイル記憶手段の空き容量が最も大きいサーバを判断し、空き容量が最も大きいサーバを、前記書込要求に係る電子ファイルの複製を保持させるサーバと決定する。
【００５９】
このように、書込要求に係る電子ファイルがいずれのサーバも保持していなかった新しい電子ファイルの場合に、その電子ファイルをアクセス元サーバ以外のサーバにも保持させる。そのため、いずれか１つのサーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。
【００６０】
また、新しい電子ファイルを保持するアクセス元サーバ以外のサーバは、電子ファイルを記憶する部位の空き容量の状態に応じて決定されるため、各サーバの記憶資源を均等に利用でき、サーバにかかる負荷を分散させることが可能となる。
【００６１】
さらに好ましくは、前記各サーバは、前記ファイル送信要求手段が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信手段と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段とを備える。
【００６２】
また、前記各サーバは、さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む。
【００６３】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００６４】
さらに好ましくは、前記各サーバは、さらに、前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段の差分を前記分散ファイル管理装置に通知する更新通知手段を備え、前記分散ファイル管理装置は、前記更新通知手段による通知を受け付ける更新通知受付手段と前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える。
【００６５】
また、前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００６６】
さらに、前記更新通知手段は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子とハッシュ値とを、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、前記差分に含まれる電子ファイルのハッシュ値とを追加することにより、前記ファイル保持情報を更新する。
【００６７】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。
【００６８】
上記目的を達成するために、本発明に係る分散ファイル管理システムは、複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、ユーザが利用する端末とにより構成され、前記各第１のサーバは、ユーザが利用する端末から、電子ファイルの取得または書込に係るユーザの要求を受け付け、当該ユーザの要求に応じて、前記サーバ群が保持する電子ファイルを管理する前記第１のサーバ群の１つである管理装置に、前記ユーザの要求に係る電子ファイルを保持するサーバがいずれであるかを問合せるファイルサーバ手段と、電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶し、前記ユーザの要求を受信したサーバであるアクセス元サーバからの問合せに応じて、前記ファイル保持情報を参照して、前記ユーザの要求に係る電子ファイルを保持するサーバである保持サーバを判断することにより、前記サーバ群が保持する電子ファイルを管理する管理装置手段と、前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備える。
【００６９】
また、前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、前記第２のサーバは、前記ファイルサーバ手段と、前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える。
【００７０】
このように、分散ファイル管理システムは、複数のサーバに分散して保持されている電子ファイルを管理するための機能を備えるサーバを複数備える。そのため、障害が発生するなどのために、分散ファイル管理装置として機能しているサーバの稼動が停止しても、他のサーバが分散ファイル管理装置として稼動できるため、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。
【００７１】
さらに好ましくは、前記第１の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する。
【００７２】
また、前記第１の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、前記第２の管理装置判定手段は、現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する。
【００７３】
さらに、前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する。
【００７４】
さらに、前記管理装置手段は、前記ファイル保持情報を記憶する保持サーバ記憶部と、ユーザ指定の識別子含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付ける問合受付部と、前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備える。
【００７５】
このように、分散ファイル管理装置の機能を備えた第１のサーバと、他のサーバとが通信をし、通信が途絶えたこと、または、通信が復活したことを検知して、予め定めた順位に従って、稼働中の第１のサーバの中で最も順位が高いサーバを分散ファイル管理装置とする。これにより、分散ファイル管理装置として機能するサーバが自動的に切り替えることが可能となり、分散ファイル管理システムの安定性を向上させることが可能となる。
【００７６】
さらに好ましくは、前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、前記管理装置手段は、さらに、前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する。
【００７７】
また、前記ファイルサーバ手段は、電子ファイルを記憶するファイル記憶部と、前記ファイル送信要求部が送信した電子ファイルの識別子を含むファイル送信要求を受信するファイル送信要求受信部と、前記ファイル送信要求に含まれる識別子を含む電子ファイルを前記ファイル記憶部から読み出すファイル記憶制御部と、前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信部とを備える。
【００７８】
さらに、前記ファイルサーバ手段は、さらに、他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む。
【００７９】
このように、アクセス元サーバは、ユーザの要求に係る電子ファイルを保持していない場合、保持サーバから電子ファイルを取得するとともに、自身が保持する。これにより、端末のいずれかから同一の電子ファイルを取得する要求を再度受け付けた場合に、自身が保持している電子ファイルを送信することができる。そのため、１つのアクセス元サーバを介して取得される電子ファイルについて、アクセス元サーバは、再度保持サーバから取得する必要がなくなり、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００８０】
さらに好ましくは、前記ファイルサーバ手段は、さらに、前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、前記管理装置手段は、前記更新通知部による通知を受け付ける更新通知受付部と前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える。
【００８１】
また、前記管理装置手段は、さらに、前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付部は前記更新通知手段による通知を受け、前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する。
【００８２】
さらに、前記管理装置手段は、さらに、前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、前記更新通知受付手段は前記更新通知手段による通知を受け、前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する。
【００８３】
このように、分散ファイル管理装置が保持しているファイル保持情報は更新される。これにより、自動的に、ファイル保持情報に各サーバが保持する電子ファイルの最新の状態を格納しておくことが可能となる。
【００８４】
なお、本発明は、このような特徴的な手段を備える分散ファイル管理システムとして実現することができるだけでなく、分散ファイル管理システムを構成する装置に含まれる特徴的な手段をステップとする分散ファイル管理方法として実現したり、分散ファイル管理システムを構成する装置に含まれる特徴的な手段としてコンピュータを機能させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、ＣＤ−ＲＯＭ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ−Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）等の記録媒体やインターネット等の通信ネットワークを介して流通させることができる。
【発明の効果】
【００８５】
ユーザは、自身が利用する端末からネットワークを介して接続されている複数のサーバのいずれにアクセスしても、それら複数のサーバの少なくとも１台がユーザ所望の電子ファイルを保持している限り、ユーザの要望に係る最新の電子ファイルを端末から取得ことが可能となる。したがって、また、ユーザは、電子ファイルが最新か否かおよび端末からアクセスするサーバを意識する必要がなくなり、ネットワーク上の複数のサーバに分散して保持されている電子ファイルの取得に係るユーザの利便性を向上させることが可能となる。
【００８６】
さらに、特に、１つのサーバを介して頻繁に取得される電子ファイルについては、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００８７】
ここで頻繁に取得される電子ファイルとは、同一または異なるユーザにより２回以上の取得要求の対象とされた電子ファイルであり、または、一定の期間内に同一または異なるユーザにより２回以上の取得要求の対象とされた電子ファイルである。
【００８８】
さらに、ユーザに最新の電子ファイルを提供するための電子ファイルの管理につき、ネットワーク上に転送される情報量を抑えることが可能となり、また、各サーバに掛かる負荷を軽減することが可能となる。
【００８９】
さらに、各サーバが電子ファイルを保持するための記憶資源の消費を抑えることが可能となる。
【００９０】
さらに、電子ファイルの改竄を検知して、真正な電子ファイルのみをユーザに送信することができ、分散ファイル管理システムの信頼性を向上させることが可能となる。また、サーバの稼動が停止した場合であっても、そのサーバが保持する電子ファイルをユーザが利用する端末に送信することが可能となる。
【００９１】
さらに、分散ファイル管理装置の稼動が停止した場合であっても、分散ファイル管理システムの稼動を継続でき、分散ファイル管理システムの安定性を向上させることが可能となる。
【発明を実施するための最良の形態】
【００９２】
以下に、図面を参照しながら、本発明に係る分散ファイル管理システムの実施の形態１から実施の形態４までについて説明する。
【００９３】
（実施の形態１）
図１から図１９までを参照して、本発明に係る実施の形態１について説明する。
【００９４】
図１は、実施の形態１に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態１に係る分散ファイル管理システムは、ユーザが利用する端末と通信回線を介して接続され、電子ファイルを記憶しているファイル記憶部を備える複数のサーバのいずれかが、端末から送信される電子ファイルに関連するユーザの要求を受け付け、受け付けたユーザの要求に関連する処理を分散ファイル管理装置または他のサーバと連携して実行し、実行した処理の結果をユーザが利用する端末に送信するシステムの一例である。
【００９５】
本実施の形態に係る分散ファイル管理システムは、分散ファイル管理装置１０と、サーバＡ２０、サーバＢ３０およびサーバＣ４０と、端末ａ６０および端末ｂ６５とから構成される。
【００９６】
分散ファイル管理装置１０は、管理対象である複数のサーバが保持する電子ファイルに関する情報を管理する装置であり、電子ファイルに関連するユーザの要求を受け付けたサーバ（以下、「アクセス元サーバ」という。）からの問合せに応じて、ユーザの要求に係る電子ファイルを保持しているサーバ（以下、「保持サーバ」という。）を示す情報を、アクセス元サーバに送信する装置の一例である。
【００９７】
本実施の形態に係る分散ファイル管理装置１０は、サーバＡ２０とサーバＢ３０とサーバＣ４０とを管理対象とし、サーバＡ２０において記憶保持されている電子ファイルに関する情報と、サーバＢ３０において記憶保持されている電子ファイルに関する情報と、サーバＣ４０において記憶保持されている電子ファイルに関する情報とを管理する。
【００９８】
通信回線１５は、分散ファイル管理装置１０と、各サーバ２０、３０および４０とを接続する通信回線であり、例えば、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）やＷＡＮ（Ｗｉｄｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）である。
【００９９】
サーバＡ２０は、電子ファイルを記憶しているファイル記憶部２５を備え、ユーザが利用する各端末６０、６５や他のサーバ３０、４０から電子ファイルに関連する要求を受ける装置である。サーバＡ２０は、要求を受け付けると必要に応じて分散ファイル管理装置１０と連携して、受け付けた要求を処理し、処理した結果を要求の送信元に送信する。
【０１００】
また、サーバＢ３０、およびサーバＣ４０も、同様の機能を備え、それぞれ、ファイル記憶部３５、およびファイル記憶部４５を備える。
【０１０１】
ここで、実施の形態１に係る各ファイル記憶部２５、３５、４５が記憶している電子ファイルに係るファイル構造の例について図２を参照して説明し、また、各ファイル記憶部２５、３５、４５が記憶している電子ファイルの具体例について、図３Ａ〜図３Ｃを参照して説明する。
【０１０２】
図２は、本実施の形態に係る各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成の例を示す図である。分散ファイル管理装置１０の管理に係る電子ファイルが各サーバに保持される場合、各サーバは、予め定められた共通のフォルダ構成に従って保持する。
【０１０３】
ユーザは、端末６０または６５を利用して、本図に示すような予め定められた共通のフォルダ構成を示すパスにより電子ファイルを特定し、特定した電子ファイルに関連する要求を各サーバ２０、３０、４０のいずれか、例えば、各端末６０、６５に予め設定されているサーバに送信する。
【０１０４】
ここで、「電子ファイルに関連する要求」には、電子ファイルを取得する要求である「取得要求」と、電子ファイルを書き込む要求である「書込要求」とがある。「書込要求」には、既存の電子ファイルを更新する要求である「更新要求」と、新たな電子ファイルを格納する要求である「格納要求」とを含む。
【０１０５】
本図に示す各電子ファイルは、フォルダ名「／ｄａｔａ」に関連するフォルダを頂点とする相対パスまたはファイル名により特定される。
【０１０６】
フォルダ名が「／ｄａｔａ」であるフォルダは、その直下に、ファイル名が「ａ」である電子ファイルと、ファイル名が「ｂ」である電子ファイルと、ファイル名が「ｄ」である電子ファイルと、フォルダ名が「ｃ」であるフォルダとを有する。フォルダ名が「ｃ」であるフォルダは、直下に、ファイル名が「ｅ」である電子ファイルと、ファイル名が「ｆ」である電子ファイルとを有する。
【０１０７】
ここで、「電子ファイル」には、電子ファイルの実体となる情報の他、ファイル名やファイルの更新日時等のファイルの属性情報を含む。以下単に「ファイルｘ」という場合、ファイル名が「ｘ」である電子ファイルをさす。また、単に「フォルダｘ」という場合、フォルダ名が「ｘ」であるフォルダをさす。
【０１０８】
また、「ファイルｘ＿２」や「ファイルｘ＿３」という場合、ファイル名が「ｘ」である電子ファイルをさす。すなわち、「ファイルｘ」と、「ファイルｘ＿２」と、「ファイルｘ＿３」とは、ファイル名が「ｘ」である電子ファイルとして特定されるが、その実体およびファイル名以外のファイルの属性情報が異なる関係とする。
【０１０９】
ここで説明した「電子ファイルに関する要求」に関連する用語、電子ファイルの表記方法は、全ての実施の形態において共通して用いる。
【０１１０】
図３Ａ〜図３Ｃは、実施の形態１に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【０１１１】
図３Ａは、実施の形態１に係るサーバＡ２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。
【０１１２】
図３Ｂは、実施の形態１に係るサーバＢ３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ＿２」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。
【０１１３】
図３Ｃは、実施の形態１に係るサーバＣ４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ａの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。
【０１１４】
ここで、図１の説明に戻る。
【０１１５】
通信回線５０は、各サーバ２０、３０、４０と、各端末６０、６５を接続する通信回線であり、例えば、ＬＡＮやＷＡＮ等である。
【０１１６】
端末ａ６０は、ユーザが利用する端末である。端末ａ６０は、電子ファイルに関連するユーザの要求を受け付けると、その要求を各サーバ２０、３０、４０のいずれかに送信する。また、端末ａ６０は、要求を送信したサーバから結果を取得すると、取得した結果をモニタに表示する等により、取得した結果をユーザに提供する。端末ｂ６５も同様の機能を備える。
【０１１７】
以上のように、予め定められたファイル構成により示される各ファイルが複数のサーバに分散保持されており、ユーザが所望の電子ファイルを保持していないサーバにアクセスした場合であっても、分散ファイル管理装置１０は、その電子ファイルに係るユーザの要求の処理を可能とする。
【０１１８】
このような処理を可能とするために各装置が備える機能的構成について、図４から図７までを参照して説明する。
【０１１９】
図４は、実施の形態１に係るサーバＡ２０が備える機能的構成の例を示すブロック図である。サーバＡ２０は、ユーザからの要求を受け付ける。ユーザの要求が取得要求である場合、サーバＡ２０は、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。サーバＢ３０およびサーバＣ４０も、サーバＡと同様の機能的構成を備える。
【０１２０】
サーバＡ２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、更新通知部９１と、完了通知受信部９３と、ユーザ要求応答部９５とを備える。
【０１２１】
ファイル記憶部２５は、図３を参照して説明したため、ここでの説明は省略する。
【０１２２】
ユーザ要求受信部７１は、通信回線５０を介してユーザが利用する端末６０、６５から電子ファイルに関連する要求を受け付ける部位である。
【０１２３】
要求種別判断部７３は、ユーザ要求受信部７１が受信した電子ファイルに関連する要求の種別を判断する部位である。実施の形態１において、電子ファイルに関連する要求には上記のように「取得要求」と「書込要求」とがあり、さらに、「書込要求」には「更新要求」と「格納要求」とがある。要求種別判断部７３は、ユーザ要求受信部７１が受信した電子ファイルに関連する要求がこれらのいずれであるかを判断する。
【０１２４】
要求情報保持部７５は、ユーザ要求受信部７１が受信した要求に含まれる情報を一時的に記憶保持する部位である。要求情報保持部７５は、例えば、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）により実現される。
【０１２５】
ファイル記憶制御部７７は、ファイル記憶部２５を制御する部位である。ファイル記憶制御部７７は、ファイル記憶部２５が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部２５が記憶している電子ファイルを読み出し、ファイル記憶部２５が記憶している電子ファイルを更新し、また、ファイル記憶部２５に新たな電子ファイルを格納する。
【０１２６】
保持サーバ問合部７９は、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線５０を介して分散ファイル管理装置１０に問い合わせる部位である。
【０１２７】
保持応答受信部８１は、保持サーバ問合部７９の問合わせを受けた分散ファイル管理装置１０の応答を、通信回線１５を介して受信する部位である。保持応答受信部８１は、自身がアクセス元サーバである場合にユーザの要求に係る電子ファイルを、自身のファイル記憶部２５が記憶していること、または、記憶しているファイル記憶部２５、３５、４５が存在しないことを内容とする応答を受信する。
【０１２８】
ファイル送信要求受信部８３は、自身を備えるサーバがアクセス元サーバではなく、かつ、自身を備えるサーバがユーザの要求に関連する電子ファイルを保持している場合に、その電子ファイルをアクセス元サーバに送信する要求を、分散ファイル管理装置１０から受信する部位である。
【０１２９】
ファイル送信部８５は、ファイル送信要求受信部８３が受信した要求を受け、その要求に係る電子ファイルをファイル記憶制御部７７から取得し、取得した電子ファイルをアクセス元サーバに送信する部位である。
【０１３０】
ファイル受信部８７は、他のサーバのファイル送信部８５から送信された電子ファイルを受信する部位である。
【０１３１】
ロック要求送信部８９は、要求種別判断部７３によりユーザ要求受信部７１が受信したユーザの要求の種別が書込要求であると判断された場合に、その書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求を、分散ファイル管理装置１０に送信する部位である。
【０１３２】
更新通知部９１は、ファイル記憶制御部７７が電子ファイルを格納または更新した場合に、格納または更新された内容を分散ファイル管理装置１０に通知する部位である。
【０１３３】
完了通知受信部９３は、分散ファイル管理装置１０から、処理の完了を内容とする通知を受信する部位である。
【０１３４】
ユーザ要求応答部９５は、ユーザ要求受信部７１が受信したユーザの要求に対する応答を、通信回線５０を介してユーザが利用する端末６０、６５に送信する部位である。ここでの応答は、ユーザの要求が取得要求の場合はその取得要求に係る電子ファイルであり、ユーザの要求が書込要求の場合はその書込要求の完了の通知である。
【０１３５】
図５は、実施の形態１に係る分散ファイル管理装置１０が備える機能的構成の例を示すブロック図である。
【０１３６】
分散ファイル管理装置１０は、保持サーバ記憶部１００と、問合受付部１０２と、保持サーバ判断部１０４と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８とを備える。
【０１３７】
保持サーバ記憶部１００は、分散ファイル管理装置１０の管理対象として設定されているサーバを特定するための情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルを含む情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部１００は、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。
【０１３８】
ここで、本実施の形態に係る管理サーバ情報と、ファイル保持情報との具体例を図６と、図７とを参照して、説明する。
【０１３９】
図６は、保持サーバ記憶部１００が記憶している管理サーバ情報１００ａの例を示す図である。本図が示すように、本実施の形態に係る管理サーバ情報１００ａは、「サーバ名」と、「ＩＰアドレス」とから構成される。
【０１４０】
「サーバ名」は、分散ファイル管理装置１０の管理対象であるサーバに付されている名称を内容とする。「ＩＰアドレス」は、各サーバに付与されているＩＰアドレスを内容とする。そして、管理サーバ情報１００ａは、分散ファイル管理装置１０の管理対象である各サーバについて、サーバ名とＩＰアドレスとを対応付けて保持する。
【０１４１】
本図は、例えば、「サーバ名」が「サーバＡ」により示されるサーバＡ２０について、「ＩＰアドレス」が「１９２．１６８．ｘｘｘ．１」であることを示す。
【０１４２】
図７は、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報１００ｂは、「ファイルパス」と、「サーバ名」と、「フラグ」とから構成される。
【０１４３】
「ファイルパス」は、各サーバが保持している電子ファイルのパスを内容とする。電子ファイルのパスは、図２を参照して説明したように、分散ファイル管理装置１０による管理される全てのサーバにおいて共通である。
【０１４４】
「サーバ名」は、管理サーバ情報１００ａの「サーバ名」と同様のサーバの名称を内容とする。ファイル保持情報１００ｂの「サーバ名」は、「ファイルパス」に示される電子ファイルに対応付けられている。ファイル保持情報１００ｂの「サーバ名」には、対応する「ファイルパス」により示される電子ファイルを保持している全てのサーバの名称が格納される。
【０１４５】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」により示される電子ファイル、すなわち、「ファイルａ」または「ファイルａ＿２」を保持するサーバが、サーバＡ２０とサーバＢ３０とであることを示す。
【０１４６】
「フラグ」は、各サーバが保持する電子ファイルが最新の内容であるか否かを示すフラグを内容とする。本実施の形態では、各サーバが保持する電子ファイルが最新の内容である場合に「１」が、最新の内容ではない場合に「０」が格納される。
【０１４７】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」により示される電子ファイルについて、「サーバＡ」が保持する電子ファイルの「フラグ」は「０」であり、「サーバＢ」が保持する電子ファイルの「フラグ」は「１」であることを示す。
【０１４８】
すなわち、「サーバＡ」が保持する電子ファイルは、図３Ａに示すように「／ｄａｔａ／ａ」である。また、「サーバＢ」が保持する電子ファイルは、図３Ｂに示すように「／ｄａｔａ／ａ＿２」である。このように「フラグ」は、「／ｄａｔａ／ａ」により特定される電子ファイルにつき「サーバＢ」が「サーバＡ」より新しい内容を含むことを示している。
【０１４９】
ここから、図５の説明に戻る。
【０１５０】
問合受付部１０２は、サーバからのユーザの要求に係る電子ファイルを保持するサーバに関する問い合わせを受け付ける部位である。
【０１５１】
保持サーバ判断部１０４は、保持サーバ記憶部１００を参照することにより、問合受付部１０２が受け付けた問い合わせに係る最新の電子ファイルを保持するサーバを判断する部位である。
【０１５２】
保持応答送信部１０６は、アクセス元サーバが、ユーザの要求に係る最新の電子ファイルを保持しているか否かを応答する部位である。
【０１５３】
ファイル送信要求部１０８は、保持サーバ判断部１０４の判断に従って、保持サーバからアクセス元サーバへのユーザの要求に関連する電子ファイルの送信を要求する部位である。
【０１５４】
更新通知受付部１１０は、サーバが備えるファイル記憶部に新たな電子ファイルが格納され、または、ファイル記憶部が記憶している電子ファイルが更新されたことを内容とする通知を、サーバから受け付ける部位である。
【０１５５】
保持情報更新部１１２は、更新通知受付部１１０が受け付けた通知の内容に従って、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｂを更新する部位である。
【０１５６】
更新完了通知部１１４は、前記保持情報更新部１１２による保持サーバ記憶部１００の更新が完了したことを内容とする通知を、サーバ２０に送信する部位である。
【０１５７】
ロック要求受信部１１６は、サーバ２０から送信されるロックの要求を受信する部位である。
【０１５８】
ロック情報保持部１１８は、ロック要求受信部１１６が受信したロック要求に関連する電子ファイルを示す情報を、その電子ファイルに関連して保持情報更新部１１２が実行する処理が完了するまで、一時的に記憶保持する部位である。
【０１５９】
以上のような機能を分散ファイル管理装置１０および各サーバ２０、３０、４０が備えることにより、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ２０、３０、４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。また、ユーザの取得要求に係る電子ファイルについて、複数のサーバが内容の新旧が異なる電子ファイルを保持している場合には、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。
【０１６０】
ユーザが端末６０、６５を利用して取得要求または書込要求を送信した場合に、分散ファイル管理装置１０および各サーバ２０、３０、４０において実行される一連の処理について、図８および図９を参照して説明する。
【０１６１】
図８は、ユーザが端末６０、６５から取得要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０１６２】
本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。
【０１６３】
また、本図に示す「アクセス元サーバ」は、ユーザが利用する端末６０（６５）がユーザの要求を送信する送信先となるサーバである。本実施の形態におけるアクセス元サーバは、サーバＡ２０、サーバＢ３０またはサーバＣ４０のいずれか１つである。
【０１６４】
さらに、本図に示す「保持サーバ」は、アクセス元サーバを除く、ユーザの要求に係る電子ファイルを保持しているサーバである。本実施の形態における保持サーバは、サーバＡ２０、サーバＢ３０またはサーバＣ４０のいずれかが候補となる。
【０１６５】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ１０１）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求である。
【０１６６】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
【０１６７】
続けて、保持サーバ問合部７９が分散ファイル管理装置１０に保持サーバを問合せると、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ１０２）。
【０１６８】
続けて、保持サーバ判断部１０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバが保持サーバであるか否かを判断する（Ｓ１０３）。
【０１６９】
まず、アクセス元サーバが保持サーバであると判断した場合（Ｓ１０３でＹｅｓ）、続けて、保持応答送信部１０６はアクセス元サーバが保持サーバであることを内容とする通知（以下、「保持通知」という。）を送信し、保持応答受信部８１は保持通知を受信する（Ｓ１０４）。
【０１７０】
続けて、ファイル記憶制御部７７は、自身のファイル記憶部２５（３５、４５）から、取得要求に係る電子ファイルを読み出す（Ｓ１０５）。ここで、「自身の」とは、動作の主体となる部位を備えるサーバと同一のサーバが備える別の部位であることを示す。
【０１７１】
続けて、ユーザ要求応答部９５は、電子ファイルをファイル記憶制御部７７から取得し、ユーザが利用する端末６０（６５）に送信し（Ｓ１０６）、処理を終了する。
【０１７２】
また、アクセス元サーバが保持サーバでないと判断した場合（Ｓ１０３でＮｏ）、続けて、保持サーバ判断部１０４は保持サーバがあるか否かを判断する（Ｓ１０７）。
【０１７３】
まず、保持サーバがないと判断した場合（Ｓ１０７でＮｏ）、続けて、保持応答送信部１０６は保持サーバがないことを内容とする通知（以下、「不保持通知」という。）を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ１０８）。
【０１７４】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ１０９）、処理を終了する。
【０１７５】
また、保持サーバがあると判断した場合（Ｓ１０７でＹｅｓ）、続けて、ファイル送信要求部１０８は保持サーバにファイル送信要求を送信し、保持サーバのファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ１１０）。
【０１７６】
ここで、「ファイル送信要求」とは、特定の電子ファイルを保持するサーバに、その電子ファイルを他のサーバへ送信する要求である。
【０１７７】
続けて、保持サーバのファイル記憶制御部７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５、３５、４５から読み出す（Ｓ１１１）。
【０１７８】
続けて、保持サーバのファイル送信部８５は、ファイル記憶制御部７７が読み出した電子ファイルをアクセス元サーバに送信し、アクセス元サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ１１２）。
【０１７９】
続けて、アクセス元サーバのユーザ要求応答部９５は、自身のファイル記憶制御部７７を介して、ユーザの取得要求に関連する電子ファイルを取得し、その電子ファイルをユーザが利用する端末６０（６５）に送信する（Ｓ１１３）。
【０１８０】
続けて、アクセス元サーバのファイル記憶制御部７７は、ファイル受信部８７が受信した電子ファイルを自身のファイル記憶部２５、３５、４５に格納する（Ｓ１１４）。
【０１８１】
続けて、更新通知部９１は、分散ファイル管理装置１０が備える保持サーバ記憶部１００のファイル保持情報１００ｂを更新することを内容とする通知（以下、「更新通知」という。）を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ１１５）。
【０１８２】
ここでの「更新通知」は、より具体的には、ファイル保持情報１００ｂに、アクセス元サーバ２０、３０、４０のファイル記憶部２５、３５、４５に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。
【０１８３】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ１１６）、処理を終了する。
【０１８４】
図９は、ユーザが端末６０、６５から書込要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０１８５】
本実施の形態では、書込要求が「更新要求」である場合と「格納要求」である場合とで、各装置が実行する処理および各装置間で送受信される情報は同様である。
【０１８６】
本図に示す「端末」および「アクセス元サーバ」は、図８に示す「端末」および「アクセス元サーバ」と同様であるため、ここでの説明は省略する。
【０１８７】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された書込要求を、通信回線５０を介して受信する（Ｓ２０１）。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
【０１８８】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、書込要求に係る処理のタイムチャートであるため、この判断を省略している。
【０１８９】
続けて、要求種別判断部７３は、要求情報保持部７５に書込要求に係る電子ファイルを保持させる（Ｓ２０２）。
【０１９０】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、その書込要求に係る電子ファイルに関連する書込要求を排除する要求（以下、「ロック要求」という。）を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ２０３）。
【０１９１】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ２０４）。
【０１９２】
また、ファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５、３５、４５に書き込む（Ｓ２０５）。
【０１９３】
続けて、ファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ２０６）。
【０１９４】
まず、書き込みが完了していないと判断した場合（Ｓ２０６でＮｏ）、更新通知部９１は待機する。
【０１９５】
また、書き込みが完了したと判断した場合（Ｓ２０６でＹｅｓ）、更新通知部９１は、ファイル記憶制御部７７から完了の通知を受けて、分散ファイル管理装置１０に更新通知を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ２０７）。
【０１９６】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新する（Ｓ１１６）。
【０１９７】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ２０９）。
【０１９８】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部９３は完了の通知を受信する（Ｓ２１０）。
【０１９９】
続けて、アクセス元サーバのユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信して（Ｓ２１１）、処理を終了する。
【０２００】
以上が、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付け、さらにその後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合を例に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理について、図１０から図１５までを参照してより具体的に説明する。
【０２０１】
図１０は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【０２０２】
まず、アクセス元サーバであるサーバＡ２０のユーザ要求受信部７１は、ユーザが利用する端末ａ６０から送信された取得要求を、通信回線５０を介して受信する（Ｓ１０１）。ここでの「取得要求」は、ユーザが利用する端末ａ６０が最新の内容を有するファイルａを取得する要求を内容とする情報である。
【０２０３】
続けて、要求種別判断部７３がユーザ要求受信部７１が受信した要求を取得し、その要求が取得要求であると判断し（図示しない）、続けて、保持サーバ問合部７９が分散ファイル管理装置１０に保持サーバを問合せると、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ１０２）。
【０２０４】
続けて、保持サーバ判断部１０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、サーバＡ２０が保持サーバであるか否かを判断する（Ｓ１０３）。
【０２０５】
ここで、ファイル保持情報１００ｂが図７に示す内容である場合、サーバＡ２０は、「／ｄａｔａ／ａ」により示されるファイル、すなわち、ファイルａを保持するが、「フラグ」が「０」であり、サーバＡ２０は最新の内容のファイルａを保持していない。したがって、保持サーバ判断部１０４は、サーバＡ２０が保持サーバではないと判断する（Ｓ１０３でＮｏ）。
【０２０６】
アクセス元サーバであるサーバＡ２０が保持サーバでないと判断した場合（Ｓ１０３でＮｏ）、続けて、保持サーバ判断部１０４は保持サーバがあるか否かを判断する（Ｓ１０７）。
【０２０７】
ここで、ファイル保持情報１００ｂが図７に示す内容である場合、サーバＢ３０は、「／ｄａｔａ／ａ」により示されるファイル、すなわち、ファイルａを保持し、「フラグ」が「１」である。したがって、サーバＢ３０が保持サーバであり、保持サーバ判断部１０４は保持サーバがあると判断する（Ｓ１０７でＹｅｓ）。
【０２０８】
また、保持サーバがあると判断した場合（Ｓ１０７でＹｅｓ）、続けて、ファイル送信要求部１０８は保持サーバであるサーバＢ３０にファイルａの送信要求を送信し、保持サーバのファイル送信要求受信部８３はファイルａの送信要求を受信する（Ｓ１１０）。
【０２０９】
ここで、「ファイルａの送信要求」とは、ファイルａを保持するサーバＢ３０に、そのファイルａをサーバＡ２０へ送信する要求を内容とする。
【０２１０】
続けて、サーバＢ３０のファイル記憶制御部７７は、ファイルａを自身のファイル記憶部３５から読み出す（Ｓ１１１）。
【０２１１】
続けて、サーバＢ３０のファイル送信部８５は、ファイルａをアクセス元サーバであるサーバＡ２０に送信し、サーバＡ２０のファイル受信部８７はファイルａを受信する（Ｓ１１２）。
【０２１２】
続けて、サーバＡ２０のユーザ要求応答部９５は、自身のファイル記憶制御部７７を介してファイルａを取得し、取得したファイルａをユーザが利用する端末ａ６０に送信する（Ｓ１１３）。
【０２１３】
続けて、サーバＡ２０のファイル記憶制御部７７は、取得したファイルａを自身のファイル記憶部２５に格納する（Ｓ１１４）。
【０２１４】
ここで、図１１は、端末ａ６０からファイルａの取得要求を受け付けたサーバＡ２０のファイル記憶部２５が記憶している電子ファイル情報２５ａを示す図である。サーバＡ２０のファイル記憶部２５が記憶しているファイル情報２５ａの初期状態を示す図３Ａの「ａ」が、本図では「ａ＿２」に更新されている。
【０２１５】
ここから、図１０の説明に戻る。
【０２１６】
続けて、更新通知部９１は更新通知を送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知を受け付ける（Ｓ１１５）。
【０２１７】
ここでの「更新通知」は、ファイル保持情報１００ｂに、サーバＡ２０のファイル記憶部２５にファイルａが更新されたことを内容とする通知である。
【０２１８】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ１１６）、処理を終了する。
【０２１９】
ここで、図１２は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報１００ｂを示す図である。ファイル保持情報１００ｂの初期状態を示す図７の「／ｄａｔａ／ａ」に対応する「サーバＡ」の「フラグ」の「０」が、本図では「１」に更新されている。
【０２２０】
以上が、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報である。この後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報について、続けて説明する。
【０２２１】
図１３は、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付けた後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置１０と、サーバＡ２０と、サーバＢ３０と、端末ａ６０とにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【０２２２】
まず、アクセス元サーバであるサーバＡ２０のユーザ要求受信部７１は、ユーザが利用する端末ａ６０から送信された書込要求を、通信回線５０を介して受信する（Ｓ２０１）。ここでの「書込要求」は、サーバＡが保持しているファイルａを更新する要求を内容とする情報である。
【０２２３】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が書込要求であると判断し（図示しない）、続けて、要求種別判断部７３は、要求情報保持部７５にファイルａを保持させる（Ｓ２０２）。
【０２２４】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、その書込要求に係る電子ファイルであるファイルａのロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ２０３）。
【０２２５】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルであるファイルａに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ２０４）。
【０２２６】
また、ファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持しているファイルａを取得し、取得したファイルａを、自身のファイル記憶部２５、３５、４５に書き込む（Ｓ２０５）。
【０２２７】
ここで、図１４は、端末ａ６０からファイルａの更新要求により更新されたサーバＡ２０のファイル記憶部２５が記憶している電子ファイル情報２５ａを示す図である。ファイルａの取得要求を受け付けたサーバＡ２０のファイル記憶部２５が記憶しているファイル情報２５ａを示す図１１の「ａ＿２」が、本図では「ａ＿３」に更新されている。
【０２２８】
ここから、図１３の説明に戻る。
【０２２９】
続けて、ファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ２０６）。
【０２３０】
まず、書き込みが完了していないと判断した場合（Ｓ２０６でＮｏ）、ファイル記憶制御部７７は完了まで書き込みを継続する。
【０２３１】
また、書き込みが完了したと判断した場合（Ｓ２０６でＹｅｓ）、更新通知部９１は、ファイル記憶制御部７７から完了の通知を受けて、サーバＡ２０のファイル記憶部２５のファイルａを更新したことを内容とする更新通知を分散ファイル管理装置１０に送信し、分散ファイル管理装置１０の更新通知受付部１１０は、その更新通知を受け付ける（Ｓ２０７）。
【０２３２】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新する（Ｓ１１６）。
【０２３３】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持しているファイルａに関連する情報を消去することにより、ロックを解除する（Ｓ２０９）。
【０２３４】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバであるサーバＡ２０に通知し、サーバＡ２０の完了通知受信部９３は完了の通知を受信する（Ｓ２１０）。
【０２３５】
続けて、サーバＡ２０のユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末ａ６０に送信して（Ｓ２１１）、処理を終了する。
【０２３６】
ここで、図１５は、サーバＡ２０が端末ａ６０からファイルａの更新要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報１００ｂを示す図である。ファイルａの取得要求を受け付けた後のファイル保持情報１００ｂを示す図１２の「／ｄａｔａ／ａ」に対応する「サーバＢ」の「フラグ」の「１」が、本図では「０」に更新されている。
【０２３７】
以上が、サーバＡ２０が端末ａ６０からファイルａの取得要求を受け付け、さらにその後に、サーバＡ２０が保持するファイルａの更新要求を受け付けた場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理である。
【０２３８】
続けて、図１６から図１８までを参照して、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例を説明する。
【０２３９】
図１６は、ユーザが利用する端末６０（６５）に接続されたモニタに表示される、ユーザが特定のファイルに対する要求を入力するための画面の例を示す図である。ユーザは、本図に示す画面表示を見て、取得要求や書込要求をサーバに送信する。
【０２４０】
本図に例示する入力画面２００は、ファイル構成表示部２０２と、選択ファイル表示部２０４と、取得ボタン２０６と、書込ファイル入力部２０８と、書込ボタン２１０とから構成される。
【０２４１】
ファイル構成表示部２０２は、分散ファイル管理装置１０の管理対象である各サーバ２０、３０、４０における電子ファイルのパスを表示する部分である。
【０２４２】
ファイル構成表示部２０２に表示される内容は、図２に示す電子ファイルのパスと同様の構成であり、端末６０（６５）からサーバ２０、３０、４０を介して分散ファイル管理装置１０のファイル保持情報１００ｂにアクセスすることにより、取得される。
【０２４３】
ユーザはファイル構成表示部２０２に表示される電子ファイルをマウス等の入力機器を利用して、取得要求または書込要求に関連する電子ファイルを選択する。本図のファイル構成表示部２０２は、ファイルａにカーソルがあたっており、ファイルａが選択されている例を示す。
【０２４４】
選択ファイル表示部２０４は、ユーザにより選択されている電子ファイルを表示する部分である。本図は上記のようにファイルａが選択されている。そのため、選択ファイル表示部２０４の「選択ファイル」には、「／ｄａｔａ／ａ」というパスが表示されている。
【０２４５】
取得ボタン２０６は、取得要求を端末６０（６５）に送信させるボタンである。本図のような入力画面２００において、ユーザが取得ボタン２０６を押下すると、端末６０（６５）はサーバ２０、３０、４０のいずれかに、ファイルａの取得要求を送信する。
【０２４６】
書込ファイル入力部２０８は、サーバ２０、３０、４０が保持するファイルを更新し、または新規格納させる電子ファイルを入力する部分である。本図は「端末ａ／ｘｙｚ」というパスにより特定される、端末ａ６０（６５）が保持するファイルｘｙｚが入力されている例である。
【０２４７】
書込ボタン２１０は、書込要求を端末６０（６５）に送信させるボタンである。本図のような入力画面２００において、ユーザが書込ボタン２１０を押下すると、端末６０（６５）はサーバ２０、３０、４０のいずれかに、ファイルａが選択されているため、ファイルａの書込要求を送信する。また、この書込要求により更新されたファイル記憶部２５、３５、４５が記憶しているファイルａの実体は、書込ファイル入力部２０８に入力されているファイルｘｙｚの実体と同一である。
【０２４８】
図１７は、ユーザがファイルａの取得要求を指示した場合に、ユーザが利用する端末６０（６５）に接続されたモニタに表示される結果の例を示す図である。
【０２４９】
本図に示す取得結果表示画面２２０は、ファイルａの取得要求を送信することにより、ユーザの利用する端末６０（６５）がファイルａを取得した場合に、モニタ上に表示される画面である。
【０２５０】
取得結果表示画面２２０は、取得ファイル表示部２２２と、閲覧ボタン２２４と、保存ボタン２２６とから構成される。
【０２５１】
取得ファイル表示部２２２は、取得したファイルの名称を表示する。
【０２５２】
閲覧ボタン２２４は、取得したファイルをモニタ上に表示させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルがモニタ上に表示される。
【０２５３】
保存ボタン２２６は、取得したファイルを端末６０（６５）が備える記憶部に保存させるボタンである。ユーザがマウスなどを利用して押下すると、取得したファイルが端末６０（６５）の記憶部に保存される。
【０２５４】
図１８は、ユーザがファイルａの更新要求を指示した場合に、ユーザが利用する端末６０（６５）に接続されたモニタに表示される結果の例を示す図である。
【０２５５】
本図に示す更新結果表示画面２３０は、ファイルａの更新要求に関連する処理が完了した場合に、モニタ上に表示される画面である。
【０２５６】
更新結果表示画面２３０は、更新結果表示部２３２と、確認ボタン２３４とから構成される。
【０２５７】
更新結果表示部２３２には、端末６０（６５）から送信された書込要求が電子ファイルを更新する要求である場合に、その要求に関連する電子ファイルの名称と、その処理が完了したこととが示される。
【０２５８】
これにより、端末６０（６５）を利用するユーザは処理が完了したことを知ることができる。
【０２５９】
確認ボタン２３４は、押下されると更新結果表示画面２３０を閉じるボタンである。
【０２６０】
これらのような表示画面により、ユーザはモニタ上で要求を送信し、要求に係る処理の結果を取得することができる。
【０２６１】
以上、本発明の実施の形態１に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
【０２６２】
保持サーバ記憶部１００は、ファイル保持情報１００ｂの「フラグ」に代えて、電子ファイルの「作成日」を保持してもよい。
【０２６３】
図１９は、保持サーバ記憶部１００が記憶しているファイル保持情報１００ｃの他の例を示す図である。本図に示すファイル保持情報１００ｃは、図７に示すファイル保持情報１００ｂの「フラグ」に代えて、「作成日」を保持している。
【０２６４】
電子ファイルの「作成日」が最も現在に近い電子ファイルは、最新の内容を保持する。したがって、電子ファイルの「作成日」によって、各サーバが保持する電子内容が最新であるか否かを判断することができる。
【０２６５】
例えば、本図に示すファイル保持情報１００ｃは、「ファイルパス」が「／ｄａｔａ／ａ」であるファイルａを、「サーバＡ」と「サーバＢ」とが保持しており、「サーバＡ」が保持するファイルａの「作成日」が「２００６年３月３日」であり、「サーバＢ」が保持するファイルａの「作成日」が「２００６年３月２０日」である情報を含む。
【０２６６】
この場合、「作成日」が最も現在に近い「サーバＢ」が保持するファイルａが最新の内容を含み、「サーバＡ」が保持するファイルａは古い内容を含んでいる。
【０２６７】
以上のように、実施の形態１に係る分散ファイル管理システムは、書込要求を受け付けた場合には、アクセス元サーバのファイル記憶部のみに新しい電子ファイルを書き込む。また、実施の形態１に係る分散ファイル管理システムは、取得要求を受け付けた場合には、最新の内容を含む電子ファイルを保持するサーバから電子ファイルを取得することにより、ユーザがいずれのサーバにアクセスしたかを意識することなく、最新の内容を有する電子ファイルをユーザに提供する。
【０２６８】
これにより、更新要求に係る保持サーバが複数ある場合に、これら複数の保持サーバが保持する電子ファイルの同期をとりながら更新する場合に比べて、データの転送量を抑制することが可能となる。特に、同一の電子ファイルを保持するサーバが多数ある場合には、更新時のデータの転送量の抑制の利点は大きい。
【０２６９】
（実施の形態２）
実施の形態１に係る分散ファイル管理システムでは、取得要求を受け付けたアクセス元サーバがその取得要求に係る電子ファイルを保持していない場合、分散ファイル管理装置からの情報により、その管理に係るサーバの中に、取得要求に係る電子ファイルを保持するサーバを特定し、そのサーバから取得要求に係る電子ファイルを取得し、自身のファイル記憶部に格納する。
【０２７０】
そのため、長時間経過すると、全てのサーバが、ほぼ全ての電子ファイルを重複して保持することとなる。端末から取得や更新の要求を受けることが少ない電子ファイルを、多くのサーバが重複して保持することは、ストレージの無駄な利用といえる。
【０２７１】
そこで、実施の形態２では、ストレージの有効活用が可能な分散ファイル管理システムを提供する。
【０２７２】
図２０から図２８までを参照して、本発明に係る実施の形態２について説明する。
【０２７３】
図１に示す分散ファイル管理システムの構成の概要は、実施の形態２に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。
【０２７４】
実施の形態２に係る分散ファイル管理システムは、ユーザが利用する端末６０、６５と、各端末６０、６５からユーザの要求を受け付け、ファイル記憶部２５、３５、４５をそれぞれに備えるサーバＡ３２０と、サーバＢ３３０と、サーバＣ３４０と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルに関する情報を管理する分散ファイル管理装置とにより構成される。
【０２７５】
また、実施の形態２に係る各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は、実施の形態１と同様に、各ファイル記憶部において共通するパスで示され、その具体例は、図２に示す実施の形態１のフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。
【０２７６】
図２０Ａ〜図２０Ｃは、実施の形態２に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【０２７７】
図２０Ａは、実施の形態２に係るサーバＡ３２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」を記憶している例を示す。
【０２７８】
図２０Ｂは、実施の形態２に係るサーバＢ３３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。
【０２７９】
図２０Ｃは、実施の形態２に係るサーバＣ３４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。
【０２８０】
図２１は、実施の形態２に係るサーバＡ３２０が備える機能的構成の例を示すブロック図である。サーバＡ３２０は、実施の形態１に係るサーバＡ２０と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に係る電子ファイルを分散ファイル管理装置３１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態２に係るサーバＡ３２０は、実施の形態１に係るサーバＡ２０とは異なり、一定の条件を満たす電子ファイルについては、分散ファイル管理装置３１０の要求に従って、ファイル記憶部２５から削除する。
【０２８１】
サーバＡ３２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、完了通知受信部９３と、ユーザ要求応答部９５と、更新通知部３９１と、削除要求受信部３２２とを備える。
【０２８２】
実施の形態２に係るサーバＡ３２０について、実施の形態１に係るサーバＡ２０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。
【０２８３】
削除要求受信部３２２は、分散ファイル管理装置３１０から、通信回線１５を介して、自身のファイル記憶部２５が記憶している電子ファイルの一部または全部を削除する要求を受信する部位である。
【０２８４】
更新通知部３９１は、ファイル記憶制御部７７がファイル記憶部２５に新たな電子ファイルを格納し、電子ファイル情報２５ａを更新し、または、電子ファイル情報２５ａから電子ファイルの一部または全部を削除した場合に、格納、更新、または削除された内容を分散ファイル管理装置１０に通知する部位である。
【０２８５】
以上が、本実施の形態に係るサーバＡ３２０の機能的構成である。サーバＢ３３０およびサーバＣ３４０も、サーバＡ３２０と同様の機能的構成を備える。
【０２８６】
図２２は、実施の形態２に係る分散ファイル管理装置３１０が備える機能的構成の例を示すブロック図である。実施の形態２に係る分散ファイル管理装置３１０と、実施の形態１に係る分散ファイル管理装置１０との違いは、実施の形態２に係る分散ファイル管理装置３１０が、ユーザの要求を一定以上の期間、サーバが要求を受信していない電子ファイルを複数のサーバが保持している場合に、いずれか１つのサーバ以外が保持するその電子ファイルをサーバに削除させることである。
【０２８７】
分散ファイル管理装置３１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部４００と、保持サーバ判断部４０４と、更新通知受付部４１０と、保持情報更新部４１２と、削除条件記憶部４２０と、時計部４２２と、削除対象判断部４２４と、削除要求部４２６とを備える。
【０２８８】
実施の形態２に係る分散ファイル管理装置３１０について、実施の形態１に係る分散ファイル管理装置１０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。
【０２８９】
保持サーバ記憶部４００は、実施の形態１に係る保持サーバ記憶部１００と同様に、分散ファイル管理装置３１０の管理対象として設定されているサーバに関する情報である管理サーバ情報と、管理サーバ情報に含まれる各サーバが保持している電子ファイルに関連する情報であるファイル保持情報とを記憶している記憶部である。保持サーバ記憶部４００は、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。
【０２９０】
実施の形態２に係る管理サーバ情報４００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。
【０２９１】
実施の形態２に係るファイル保持情報の具体例について、図２３を参照して説明する。
【０２９２】
図２３は、保持サーバ記憶部４００が記憶しているファイル保持情報４００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報４００ｂは、「ファイルパス」と、「サーバ名」と、「アクセス日」とから構成される。
【０２９３】
本実施の形態に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
【０２９４】
「アクセス日」は、「サーバ名」に格納された情報により示されるサーバが、「ファイルパス」により示される電子ファイルに関連するユーザの要求を、最後に受付けた日付けが格納される。
【０２９５】
本図は、例えば、「ファイルパス」が「／ｄａｔａ／ａ」である電子ファイルについて、「サーバＡ」が、ユーザから要求を受け付けた最後の日が「２００６０３０３」、すなわち、「２００６年３月３日」であることを示す。
【０２９６】
ここから、図２２の説明に戻る。
【０２９７】
保持サーバ判断部４０４は、保持サーバ記憶部４００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。
【０２９８】
また、保持サーバ判断部４０４は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバであると判断した場合には、かかる判断を保持情報更新部１１２に出力する。
【０２９９】
さらに、保持サーバ判断部４０４は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する。
【０３００】
更新通知受付部４１０は、各サーバが備えるファイル記憶部２５、３５、４５に新たな電子ファイルが格納され、ファイル記憶部２５、３５、４５が記憶している電子ファイルが更新され、または、ファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知を、サーバから受け付ける部位である。
【０３０１】
保持情報更新部４１２は、保持サーバ判断部４０４から受け付けた情報または更新通知受付部４１０が受け付けた情報に従って、保持サーバ記憶部４００が記憶しているファイル保持情報４００ｂを更新する部位である。
【０３０２】
削除条件記憶部４２０は、各サーバが保持する電子ファイルを削除するための条件を含む情報である削除条件情報を記憶している部位である。
【０３０３】
図２４は、実施の形態２に係る削除条件情報４２０ａの例を示す図である。本図に示す削除条件は、ファイル保持情報４００ｂの「アクセス日」から「３０日」以上、経過している場合に、そのサーバが保持するその電子ファイルを削除することを条件とする例である。
【０３０４】
ここから、図２２の説明に戻る。
【０３０５】
時計部４２２は、現在の日時を保持している部位である。
【０３０６】
削除対象判断部４２４は、削除の対象となる電子ファイルをサーバごとに判断する部位である。より具体的には、削除対象判断部４２４は、ファイル保持情報４００ｂの「アクセス日」が示す日付けから削除条件情報４２０ａに含まれる期間を超えて保持されている電子ファイルがあり、かつ、その電子ファイルを保持するサーバが複数ある場合には、「アクセス日」が最も新しいサーバが保持する電子ファイルのみを残して、他のサーバが保持するその電子ファイルを削除すると判断する。
【０３０７】
本実施の形態に係る削除対象判断部４２４は、予め定められた周期で上記の判断処理を実行する。
【０３０８】
削除要求部４２６は、削除対象判断部４２４により削除の対象として判断された電子ファイルを保持するサーバに、その電子ファイルを削除する要求を送信する部位である。
【０３０９】
以上のような機能を分散ファイル管理装置１０および各サーバ２０、３０、４０が備えることにより、実施の形態１と同様に、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ２０、３０、４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。
【０３１０】
また、ユーザの取得要求に係る電子ファイルを複数のサーバが保持する場合、その電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。
【０３１１】
さらに、同一の電子ファイルが複数のサーバに重複して保持されている場合、予め定められた条件に従って、いずれかのサーバが保持する電子ファイルを残して、他のサーバが保持する電子ファイルを削除するため、ストレージの有効な活用が可能となる。
【０３１２】
図２５は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０３１３】
本図において、図８に示す実施の形態１に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
【０３１４】
本図に示すタイムチャートと図８に示すタイムチャートとの違いは、電子ファイルに関するアクセス元サーバの保持判断（Ｓ１０３）において肯定判定がなされた後に（Ｓ１０３でＹｅｓ）、保持通知（Ｓ１０４）がなされるまでに、保持情報更新処理が（Ｓ３１０）実行される点にある。
【０３１５】
保持サーバ判断部４０４がアクセス元サーバが保持サーバであると判断した場合（Ｓ１０３でＹｅｓ）、続けて、保持情報更新部４１２は、保持サーバ判断部の判断を受け、アクセス元サーバが保持する、ユーザの要求に係る電子ファイルに関するファイル保持情報４００ｂの「アクセス日」を、時計部４２２から取得した日付けにより更新する（Ｓ３０１）。
【０３１６】
図２６は、ユーザが端末６０、６５から書込要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０３１７】
本図において、図９に示す実施の形態１に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
【０３１８】
本図に示すタイムチャートと図８に示すタイムチャートとの違いは、分散ファイル管理装置３１０が、アクセス元サーバ以外の保持サーバの有無を判断し、アクセス元サーバ以外の保持サーバがある場合には、そのサーバが保持する電子ファイルをも更新する点にある。このような処理により、複数のサーバに重複して保持されている電子ファイルの内容は同期する。
【０３１９】
分散ファイル管理装置３１０の更新完了通知部１１４がファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知した後に（Ｓ２０９）、続けて、分散ファイル管理装置３１０の保持サーバ判断部４０４は、書込要求に係る電子ファイルの保持サーバが、アクセス元サーバにあるか否かを判断する（Ｓ２１２）。
【０３２０】
アクセス元サーバ以下に保持サーバがないと判断した場合（Ｓ２１２でＮｏ）、分散ファイル管理装置３１０は、サーバからの要求または問合せを受け付けるまで待機する。
【０３２１】
また、アクセス元サーバ以下に保持サーバがあると判断した場合（Ｓ２１２でＹｅｓ）、ファイル送信要求部１０８は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ３２０のファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ２１３）。
【０３２２】
ここで、「ファイル送信要求」とは、アクセス元サーバに、ユーザの書込要求に係る電子ファイルを他の保持サーバへ送信する要求を内容とする。
【０３２３】
続けて、ファイル記憶制御部７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５から読み出す（Ｓ２１４）。
【０３２４】
続けて、アクセス元サーバ３２０のファイル送信部８５は、ファイル記憶制御部７７が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ２１５）。
【０３２５】
保持サーバのファイル記憶制御部７７は、ファイル受信部８７が受信した電子ファイルにより自身のファイル記憶部２５が記憶している電子ファイルを更新する（Ｓ２１６）。
【０３２６】
続けて、更新通知部３９１は、分散ファイル管理装置３１０に更新通知を送信し、分散ファイル管理装置３１０の更新通知受付部４１０は更新通知を受け付ける（Ｓ２１７）。
【０３２７】
ここでの「更新通知」は、より具体的には、アクセス元サーバ２０、３０、４０のファイル記憶部２５、３５、４５に新たな電子ファイルが格納されたこと、または、電子ファイルが更新されたことを内容とする通知である。
【０３２８】
続けて、保持情報更新部４１２は、更新通知受付部４１０から取得した更新通知に従って、保持サーバ記憶部１００のファイル保持情報１００ｂを更新し（Ｓ２１８）、処理を終了する。
【０３２９】
以上が、サーバのいずれかがユーザの要求を受け付けた場合に、各装置において実行される処理である。本実施の形態では、上記のように、ユーザが最後にアクセスした日から一定期間が経過した電子ファイルを保持するサーバについては、その電子ファイルを削除する。このとき、分散ファイル管理装置３１０が実行する処理を、図２７を参照して説明する。
【０３３０】
図２７は、各サーバが保持する電子ファイルを削除する際に、本発明の実施の形態２に係る分散ファイル管理装置３１０において実行される処理の一例を示すフローチャートである。
【０３３１】
まず、削除対象判断部４２４は、自身が保持している予め定められた更新時刻であるか否かを、時計部４２２から取得する現在時刻と比較することにより判断する（Ｓ３００）。
【０３３２】
更新時刻ではないと判断した場合（Ｓ３００でＮｏ）、削除対象判断部４２４は更新時刻であるか否かの判断を継続する。
【０３３３】
また、更新時刻であると判断した場合（Ｓ３００でＹｅｓ）、分散ファイル管理装置３１０は、保持サーバ記憶部４００のファイル保持情報４００ｂに含まれる全ての電子ファイルについて、以下に説明する、最終アクセスから一定時間経過したか否かの判断（Ｓ３０２）から保持情報の更新（Ｓ３０７）までの処理を繰り返す（Ｓ３０１）。
【０３３４】
まず、削除対象判断部４２４は、ファイル保持情報４００ｂの「アクセス日」と削除条件情報４２０ａと時計部４２２から現在の日付けとを取得し、現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過しているか否かを判断する（Ｓ３０２）。
【０３３５】
現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していないと判断した場合（Ｓ３０２でＮｏ）、次の電子ファイルについて、経過時間の判断処理（Ｓ３０２）を実行する。
【０３３６】
現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していると判断した場合（Ｓ３０２でＹｅｓ）、削除対象判断部４２４は、同一の電子ファイルを保持しているサーバが複数あるか否かを判断する（Ｓ３０３）。
【０３３７】
同一の電子ファイルを保持しているサーバが複数ではないと判断した場合（Ｓ３０３でＮｏ）、次の電子ファイルについて、経過時間の判断処理（Ｓ３０２）を実行する。したがって、最終アクセス日から一定期間が経過した電子ファイルの保持サーバが１つのみの場合、その電子ファイルは削除されない。
【０３３８】
また、同一の電子ファイルを保持しているサーバが複数であると判断した場合（Ｓ３０３でＹｅｓ）その電子ファイルを保持するサーバの中で「アクセス日」が最も新しいサーバ除く、各サーバが保持する電子ファイルを削除の対象と決定する（Ｓ３０４）。
【０３３９】
削除要求部４２６は、削除対象判断部４２４により削除の対象と決定された電子ファイルを保持しているサーバに、その電子ファイルの削除要求を送信する（Ｓ３０５）。
【０３４０】
更新通知受付部４１０は、削除要求部４２６からの要求に係る電子ファイルの削除処理を実行したサーバから、更新通知を受け付ける（Ｓ３０６）。
【０３４１】
ここで受信する「更新通知」は、保持サーバ２０、３０、４０のファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知である。
【０３４２】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、ファイル保持情報４００ｂを更新して（Ｓ３０７）、処理を終了する。
【０３４３】
以上が、各サーバが保持する電子ファイルの削除の際に、分散ファイル管理装置３１０が実行する処理である。ファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０が、削除対象判断部４２４が更新時刻であると判断した後に（Ｓ３００でＹｅｓ）実行する処理について、より具体的に説明する。
【０３４４】
まず、「ファイルパス」が「／ｄａｔａ／ａ」であるファイルａについて、時計部４２２から取得した現在の日付けが、「アクセス日」である「２００６年３月３日」から削除条件情報４２０ａに含まれる期間である「３０日」が経過しているか否かを判断する（Ｓ３０２）。ここで、現在の日付けを「２００６年３月３０日」とする。
【０３４５】
「２００６年３月３０日」は「２００６年３月３日」から「３０日」が経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｂ」であるファイルｂについて同様の判断処理（Ｓ３０２）を実行する。
【０３４６】
ファイルｂも、ファイルａの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｃ／ｅ」であるファイルｅについて同様の判断処理（Ｓ３０２）を実行する。
【０３４７】
ファイルｅも、ファイルａの場合と同様に、現在の日付けは「アクセス日」から削除条件に含まれる期間を経過していないため（Ｓ３０２でＮｏ）、続けて、削除対象判断部４２４は、次のファイルである「／ｄａｔａ／ｄ」であるファイルｄについて同様の判断処理（Ｓ３０２）を実行する。
【０３４８】
ファイルｄについて、保持サーバはサーバＢ３３０と、サーバＣ３４０とである。ファイルｄについて、サーバＢ３３０の「アクセス日」は「２００６年３月３日」であり、現在の日付である「２００６年３月３０日」は「アクセス日」から「３０日」経過していない。
【０３４９】
また、ファイルｄについて、サーバＣ３４０の「アクセス日」は「２００６年２月２０日」であり、現在の日付である「２００６年３月３０日」は「アクセス日」から「３０日」経過している。
【０３５０】
そのため、削除対象判断部４２４は、ファイルｄにつき、現在の日付けが「アクセス日」から削除条件情報４２０ａに含まれる期間が経過していると判断する（Ｓ３０２でＹｅｓ）。
【０３５１】
続けて、削除対象判断部４２４は、ファイルｄを保持しているサーバが複数あるため、ファイルｄを保持するサーバである、サーバＢ３３０とサーバＣ３４０との中で、最も新しい「アクセス日」に関連するサーバであるサーバＢ３３０以外のサーバ、すなわち、サーバＣ３４０が保持するファイルｄを削除の対象と決定する（Ｓ３０３）。
【０３５２】
続けて、削除要求部４２６は、サーバＣ３４０にファイルｄの削除を要求する（Ｓ３０４）。
【０３５３】
続けて、更新通知受付部４１０は、削除要求部４２６からの要求に応じてファイルｄを削除したサーバＣ３４０から、更新通知を受け付ける（Ｓ３０５）。
【０３５４】
ここで受信する「更新通知」は、サーバＣ３４０のファイル記憶部４５が記憶しているファイルｄが削除されたことを内容とする通知である。
【０３５５】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、ファイル保持情報４００ｂを更新して（Ｓ３０６）、処理を終了する。
【０３５６】
ここで、図２８は、ファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０による電子ファイルの削除処理が終了した後のファイル保持情報４００ｃを示す図である。
【０３５７】
上述のようにファイルａと、ファイルｂと、ファイルｅとは削除されないため、削除処理後のファイル保持情報４００ｂに変更はない。
【０３５８】
また、「サーバＣ」が保持していたファイルｄは削除されたため、「／ｄａｔａ／ｄ」の保持サーバは「サーバＢ」のみに更新されている。
【０３５９】
実施の形態２において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。
【０３６０】
以上、本発明の実施の形態２に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
【０３６１】
例えば、実施の形態２に係る分散ファイル管理装置３１０は、予め定められた周期で削除処理を実行したが、サーバがユーザから更新要求を受け付けたときに、削除処理を実行してもよい。
【０３６２】
また、分散ファイル管理装置３１０は、予め定められた周期と、サーバがユーザから更新要求を受け付けたときとの両方で、削除処理を実行してもよい。
【０３６３】
（変形例１）
ここで、サーバがユーザから更新要求を受け付けたときに、削除処理を実行する場合である変形例１について、図２９から図３３までを参照して説明する。
【０３６４】
図２９は、変形例１に係る分散ファイル管理装置５１０が備える機能的構成の例を示すブロック図である。分散ファイル管理装置５１０は、管理するサーバのいずれかが更新要求を受け付けた場合に、アクセス元サーバ以外の保持サーバに更新要求に係る電子ファイルを削除する要求を送信する。
【０３６５】
分散ファイル管理装置５１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、更新通知受付部４１０と、保持情報更新部４１２と、削除要求部４２６と、保持サーバ記憶部５００と、保持サーバ判断部５０４と、削除対象判断部５２４とを備える。
【０３６６】
保持サーバ記憶部５００は、実施の形態２に係る保持サーバ記憶部４００と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部であり、例えば、ＨＤ（Ｈａｒｄ  Ｄｉｓｋ）により実現される。
【０３６７】
変形例１に係る管理サーバ情報５００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。
【０３６８】
変形例１に係るファイル保持情報の具体例について、図３０を参照して説明する。
【０３６９】
図３０は、保持サーバ記憶部５００が記憶しているファイル保持情報５００ｂの例を示す図である。本図に示すように、本実施の形態に係るファイル保持情報５００ｂは、「ファイルパス」と、「サーバ名」とから構成される。
【０３７０】
本変形例に係るファイル保持情報５００ｂの「ファイルパス」と、「サーバ名」とは、図２３を参照して説明した実施の形態２に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納される。
【０３７１】
本変形例に係るファイル保持情報５００ｂと、実施の形態２に係るファイル保持情報４００ｂとの違いは、本変形例に係るファイル保持情報５００ｂに「アクセス日」が含まれていない点にある。
【０３７２】
実施の形態２ではアクセス日から一定期間が経過した電子ファイルを削除の候補としたのに対して、本変形例ではサーバが更新要求を受け付けた際に保持サーバの電子ファイルを削除するため、アクセス日が不要となる。
【０３７３】
ここから、図２９の説明に戻る。
【０３７４】
保持サーバ判断部５０４は、保持サーバ記憶部５００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。
【０３７５】
また、保持サーバ判断部５０４は、アクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバを判断する。
【０３７６】
削除対象判断部５２４は、実施の形態２に係る削除対象判断部４２４と同様に、削除の対象となる電子ファイルをサーバごとに判断する部位である。本変形例に係る削除対象判断部５２４は、保持サーバ判断部５０４が判断したアクセス元サーバ以外に更新要求に係る電子ファイルを保持するサーバに関する情報を取得し、取得したサーバに関する情報を削除要求部４２６に引き渡す。
【０３７７】
続けて、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理について、図を参照して説明する。
【０３７８】
図３１は、ユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理の例を示すタイムチャートである。本図では、サーバＡ３２０をアクセス元サーバとし、そのサーバＡ３２０がファイルｄの更新要求を受け付けた場合を例に具体的に説明する。
【０３７９】
本図において、図２６に示す実施の形態２に係る各装置において実行される処理と同一の参照符号を付した処理は、同様の処理を示す。そのため、同一の参照符号を付した処理については、ここでの説明は省略する。
【０３８０】
本図に示す処理と、図２６に示す処理との違いは、アクセス元サーバ以外に保持サーバがあるか否かの判断（Ｓ２１２）において、アクセス元サーバ以外に保持サーバがあると判断された場合（Ｓ２１２でＹｅｓ）以後の処理にある。
【０３８１】
ここで、アクセス元サーバであるサーバＡ３２０がファイルｄの更新要求を受け付けた場合に、保持サーバ判断部５０４がＳ２１２における判断処理を実行するときの、ファイル保持情報は、図３２に示すようになる。
【０３８２】
図３２は、サーバＡ３２０がファイルｄの更新要求を受け付けた場合に、保持サーバ判断部５０４がＳ２１２における判断処理を実行するときの、ファイル保持情報５００ｃを示す図である。ファイル保持情報の初期状態は、図３０に示すファイル保持情報５００ｂとする。
【０３８３】
本図に示すファイル保持情報５００ｃは、保持情報更新処理（Ｓ２０８）により、ファイルｄに対応する「サーバ名」に「サーバＡ」が追加されている。
【０３８４】
ここから、図３１を参照して、アクセス元サーバ以外に保持サーバがあると判断された場合（Ｓ２１２でＹｅｓ）以後の処理について説明する。
【０３８５】
まず、保持サーバ判断部５０４は、保持情報更新部４１２がファイル保持情報５００ｂを更新したことを受けて、アクセス元サーバ以外に、保持サーバがあるか否かおよび保持サーバがある場合には保持サーバがどのサーバであるかを判断する（Ｓ２１２）。
【０３８６】
ファイルｄについて、アクセス元サーバであるサーバＡ３２０以外の保持サーバは、「サーバＢ」と「サーバＣ」とであるため、保持サーバ判断部５０４は、アクセス元サーバ以外に、保持サーバがあり、その保持サーバは「サーバＢ」と「サーバＣ」とであると判断する。
【０３８７】
続けて、削除対象判断部５２４は、保持サーバ判断部５０４の判断を受けて、削除対象を決定する（Ｓ３１３）。
【０３８８】
ここでは、削除対象判断部５２４は、保持サーバ判断部５０４が判断した保持サーバである「サーバＢ」と「サーバＣ」とが保持するファイルｄを削除対象と決定する（Ｓ３１３）。
【０３８９】
続けて、削除対象判断部５２４は、削除対象があるか否かを判断する（Ｓ３１４）。
【０３９０】
削除対象がないと判断した場合（Ｓ３１４でＮｏ）、分散ファイル管理装置３１０は、サーバからの要求または問合せを受け付けるまで待機する。
【０３９１】
また、削除対象があると判断した場合（Ｓ３１４でＹｅｓ）、続けて、削除要求部４２６は、ファイルの削除要求を保持サーバに送信し、保持サーバの削除要求受信部３２２はそのファイルの削除要求を受信する（Ｓ３１５）。
【０３９２】
ここでは、「サーバＢ」と「サーバＣ」とが保持するファイルｄが削除対象と判断したため、削除対象判断部５２４は、削除対象があると判断し（Ｓ３１４でＹｅｓ）、削除要求部４２６は、ファイルｄの削除要求をサーバＢ３３０およびサーバＣ３４０に送信し、サーバＢ３３０およびサーバＣ３４０の削除要求受信部３２２は、それぞれファイルｄの削除要求を受信する（Ｓ３１５）。
【０３９３】
続けて、ファイル削除要求を受け付けた保持サーバのファイル記憶制御部７７は、削除要求に係る電子ファイルを、ファイル記憶部が記憶しているファイル情報から削除する（Ｓ３１６）。
【０３９４】
ここでは、サーバＢ３３０およびサーバＣ３４０のファイル記憶制御部７７が、ファイル記憶部３５、４５が記憶している各ファイルｄを削除する（Ｓ３１６）。
【０３９５】
続けて、保持サーバの更新通知部３９１は更新通知を送信し、更新通知受付部４１０は更新通知を受信する（Ｓ３１７）。ここで、「更新通知」は、保持サーバ２０、３０、４０のファイル記憶部２５、３５、４５が記憶している電子ファイルが削除されたことを内容とする通知である。
【０３９６】
ここでは、サーバＢ３３０およびサーバＣ３４０の更新通知部３９１が、ファイル記憶部３５、４５が記憶しているファイルｄが削除されたことを内容とする更新通知を送信し、更新通知受付部４１０がその更新通知を受信する（Ｓ３１７）。
【０３９７】
続けて、保持情報更新部４１２は、更新通知受付部４１０が受け付けた更新通知に従って、保持サーバ記憶部５００のファイル保持情報５００ｃを更新して（Ｓ３１８）、処理を終了する。
【０３９８】
ここで、保持情報更新部４１２による更新処理をした後のファイル保持情報について、図を参照して説明する。
【０３９９】
図３３は、ユーザからファイルｄの更新要求をサーバＡ３２０が受け付けた場合に、本変形例に係る各装置が実行する処理が終了した後のファイル保持情報５００ｄを示す図である。本図に示すファイル保持情報５００ｄでは、図３２に示すファイル保持情報５００ｃから、ファイルｄに対応する「サーバ名」から「サーバＢ」と「サーバＣ」とが削除されており、ファイルｄに対応する「サーバ名」は「サーバＡ」のみとなる。
【０４００】
以上に説明した変形例１では、ユーザから更新要求を受け付けたときに削除処理を実行するため、「アクセス日」が不要となる。また、更新要求を受け付けたアクセス元サーバには、処理後も、削除に係る電子ファイルが保持される。そのため、削除対象判断部４２４は、削除に係る電子ファイルを保持するサーバが複数のあるか否かに基づいて、削除対象を決定する必要がなく、処理を簡略化することができる。
【０４０１】
なお、上記のように、予め定められた周期と、サーバがユーザから書込要求を受け付けたときとの両方で、削除処理を実行する場合には、分散ファイル管理装置は、図２２に示す実施の形態２に係る分散ファイル管理装置３１０が備える機能と、図２９に示す変形例１に係る分散ファイル管理装置３１０が備える機能とを組み合わせることで実現できる。
【０４０２】
さらに、例えば、ファイル保持情報４００ｂに、さらに、実施の形態１と同様に電子ファイルの内容が最新であるか否かを示す「フラグ」を含め、削除の対象とする電子ファイルに古い内容を有する電子ファイルを含めても構わない。
【０４０３】
図３４は、古い内容を有する電子ファイルを削除の対象とする場合のファイル保持情報４００ｄの例を示す図である。本図に示すように、この場合のファイル保持情報４００ｄは、「ファイルパス」と、「サーバ名」と、「フラグ」と、「アクセス日」とから構成される。
【０４０４】
ファイル保持情報４００ｄの「ファイルパス」と、「サーバ名」と、「アクセス日」とは、図２３を参照して説明した実施の形態２に係るファイル保持情報４００ｂの「ファイルパス」と、「サーバ名」と、「アクセス日」と、それぞれ同様の情報が格納される。また、ファイル保持情報４００ｄの「フラグ」には、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「フラグ」と同様の情報が格納される。
【０４０５】
この場合の各装置の機能的構成は、実施の形態１、実施の形態２および変形例１に係る各装置が備える機能を組み合わせることによって、実現される。
【０４０６】
（実施の形態３）
実施の形態１および実施の形態２に係る分散ファイル管理システムでは、最新の内容を有する電子ファイルを複数のサーバが重複して保持する場合がある。このように重複して保持することにより、ユーザが頻繁に取得する電子ファイルについては、その取得要求に関する処理において、通信回線を移動する情報量を減少させることを可能としている。
【０４０７】
しかし、実施の形態１および実施の形態２では、同一の電子ファイルを複数のサーバが重複して保持することを有効に活用していないという問題がある。
【０４０８】
そこで、実施の形態３では、複数のサーバによる重複保持を積極的に活用し、第三者による電子ファイルの改竄を防止することを可能とする分散ファイル管理システムを提供する。また、サーバやディスクの耐障害性の向上を可能とする分散ファイル管理システムを提供する。
【０４０９】
図３５から図４７までを参照して、本発明に係る実施の形態３について説明する。
【０４１０】
図１に示す分散ファイル管理システムの構成の概要は、実施の形態３に係る分散ファイル管理システムにおいても同様であるため、分散ファイル管理システムの構成の概要に関する、ここでの詳細な説明は省略する。
【０４１１】
実施の形態３に係る分散ファイル管理システムは、ユーザが利用する端末６０、６５と、ファイル記憶部２５、３５、４５をそれぞれに備え、各端末６０、６５からユーザの要求を受け付けるサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０と、これらのサーバと情報を送受信することにより各サーバに分散して保持されている電子ファイルを管理する分散ファイル管理装置とにより構成される。
【０４１２】
また、図２に示す各サーバが備えるファイル記憶部が記憶している電子ファイルに共通のフォルダ構成は、実施の形態３に係る分散ファイル管理システムにおいても同様であるため、フォルダ構成に関するここでの説明は省略する。
【０４１３】
図３５Ａ〜図３５Ｃは、実施の形態３に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【０４１４】
図３５Ａは、実施の形態３に係るサーバＡ６２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。
【０４１５】
図３５Ｂは、実施の形態３に係るサーバＢ６３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。
【０４１６】
図３５Ｃは、実施の形態３に係るサーバＣ６４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｂの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｂ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。
【０４１７】
図３６は、実施の形態３に係るサーバＡ６２０が備える機能的構成の例を示すブロック図である。サーバＡ６２０は、実施の形態１に係るサーバＡ２０と同様に、ユーザからの要求を受け、ユーザの要求が取得要求である場合、受け付けた取得要求に関連する電子ファイルを分散ファイル管理装置６１０の管理下にある各サーバのいずれかが保持している限り、その最新の実体を含む電子ファイルをユーザが利用する端末に送信する。また、実施の形態３に係るサーバＡ６２０は、実施の形態１に係るサーバＡ２０とは異なり、改竄を検知するために電子ファイルのハッシュ値を計算する。
【０４１８】
サーバＡ６２０は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、保持サーバ問合部７９と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、更新通知部９１と、完了通知受信部９３と、ユーザ要求応答部９５と、ハッシュ値要求受信部６２４と、ハッシュ値計算部６２６と、ハッシュ値送信部６２８と、記憶部情報要求受信部６３０と、記憶部情報送信部６３２と、複写先受信部６３４と、ファイル記憶制御部６７７とを備える。
【０４１９】
実施の形態３に係るサーバＡ６２０について、実施の形態１に係るサーバＡ２０と同様の機能を有する部位には、同一の参照符号を付しており、これらの部位に関するここでの説明は省略する。
【０４２０】
ハッシュ値要求受信部６２４は、分散ファイル管理装置６１０から、特定の電子ファイルのハッシュ値の要求を受信する部位である。
【０４２１】
ハッシュ値計算部６２６は、ハッシュ値要求受信部６２４が受信した要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、その電子ファイルのハッシュ値を計算する部位である。
【０４２２】
ハッシュ値送信部６２８は、ハッシュ値計算部６２６が計算したハッシュ値を分散ファイル管理装置６１０に送信する部位である。
【０４２３】
記憶部情報要求受信部６３０は、自身が備えるファイル記憶部２５の状態に関する情報、例えば、空き容量などの要求を受信する部位である。
【０４２４】
記憶部情報送信部６３２は、後述するファイル記憶制御部６７７からファイル記憶部２５の状態を示す情報を取得し、分散ファイル管理装置６１０に送信する部位である。
【０４２５】
複写先受信部６３４は、書込要求に係る電子ファイルが、いずれのサーバにも保持されていない新規に格納される電子ファイルである場合、その電子ファイルのコピーを格納するサーバ（以下、「複写先サーバ」という。）に関する情報を受信する部位である。
【０４２６】
これにより、新規格納に係る電子ファイルは複写先サーバにコピーされるため、同一の電子ファイルを少なくとも２つ以上のサーバが保持することとなる。そのため、ユーザの取得要求に係る電子ファイルを保持するいずれか１つのサーバ、または、サーバが備えるファイル記憶部に障害が発生しても、その電子ファイルは他のサーバにも保持されているため、ユーザは他のサーバから要求に係る電子ファイルを取得することができる。
【０４２７】
ファイル記憶制御部６７７は、実施の形態１に係るファイル記憶制御部７７と同様に、ファイル記憶部２５を制御する部位であり、ファイル記憶部２５が特定の電子ファイルを記憶しているか否かを検索し、ファイル記憶部２５が記憶している電子ファイルを読み出し、ファイル記憶部２５が記憶している電子ファイルを更新し、また、ファイル記憶部２５に新たな電子ファイルを格納し、さらに、ファイル記憶部２５の空き容量などファイル記憶部２５の状態を示す情報を取得する。
【０４２８】
以上が、本実施の形態に係るサーバＡ６２０が備える機能的構成である。サーバＢ６３０およびサーバＣ６４０も、サーバＡ６２０と同様の機能的構成を備える。
【０４２９】
図３７は、実施の形態３に係る分散ファイル管理装置６１０が備える機能的構成の例を示すブロック図である。実施の形態３に係る分散ファイル管理装置６１０と、実施の形態１に係る分散ファイル管理装置１０との違いは、実施の形態３に係る分散ファイル管理装置６１０が、取得要求に係る電子ファイルのハッシュ値をサーバから取得することにより、最新かつ正しい内容を有する電子ファイルをユーザに送信し、また、１つの電子ファイルを少なくとも２つのサーバが保持するように管理することである。
【０４３０】
分散ファイル管理装置６１０は、問合受付部１０２と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部７００と、保持サーバ判断部７０４と、ハッシュ値要求部７２８と、ハッシュ値受信部７３０と、更新許可要求受信部７３２と、ハッシュ値初期化部７３４と、更新許可送信部７３６と、記憶部情報要求部７３８と、記憶部情報受信部７４０と、複写先判定部７４２と、複写先送信部７４４とを備える。
【０４３１】
保持サーバ記憶部７００は、実施の形態１に係る保持サーバ記憶部１００と同様に、管理サーバ情報と、ファイル保持情報とを記憶している記憶部である。保持サーバ記憶部７００は、例えば、ＨＤにより実現される。
【０４３２】
実施の形態３に係る管理サーバ情報７００ａは、図６を参照して説明した実施の形態１に係る管理サーバ情報１００ａと同様であるため、ここでの説明は省略する。
【０４３３】
実施の形態３に係るファイル保持情報の具体例について、図３８を参照して説明する。
【０４３４】
図３８は、保持サーバ記憶部７００が記憶しているファイル保持情報７００ｂの例を示す図である。本図が示すように、本実施の形態に係るファイル保持情報７００ｂは、「ファイルパス」と、「サーバ名」と、「ハッシュ値」とから構成される。
【０４３５】
本実施の形態に係るファイル保持情報７００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
【０４３６】
「ハッシュ値」には、サーバにおいて算出された正規の電子ファイルのハッシュ値が格納される。ここで、「正規の電子ファイル」とは、その電子ファイルを作成または変更する権限を有する者により、作成または変更された電子ファイルをいう。また、本実施の形態に係るハッシュ値は、例えば、予め定められたハッシュ関数を用いて、電子ファイルの全てまたは一部を入力値として算出される値である。ハッシュ関数は全てのサーバにおいて共通して予め定められており、また、入力値が、電子ファイルの全てであるか、または、一部であるか、さらに、一部の場合にはいずれの部分であるかも、全てのサーバにおいて共通して予め定められている。
【０４３７】
本図は、例えば、「／ｄａｔａ／ａ」で示されるファイルａについて、「ハッシュ値」が「１９３２０６６」であり、保持サーバが「サーバＡ」および「サーバＢ」であることを示す。
【０４３８】
また、本図に示すように、全ての電子ファイルが２つ以上のサーバに保持されている。そのため、例えば、「サーバＡ」に障害が発生した場合であっても、ファイルａは「サーバＢ」から、ファイルｂは「サーバＣ」から取得することができる。したがって、異なるサーバが電子ファイルを重複して保持することにより、システム全体での耐障害性が向上する。
【０４３９】
ここから、図３７の説明に戻る。
【０４４０】
保持サーバ判断部７０４は、保持サーバ記憶部７００を参照することにより、問合受付部１０２が受け付けた問い合わせに関連する電子ファイルを保持するサーバを判断する部位である。本実施の形態に係る保持サーバ判断部７０４は、ユーザの取得要求に係る電子ファイルの保持サーバを判断する場合、正規の内容を有する電子ファイルを保持するサーバを保持サーバと判断する。
【０４４１】
ハッシュ値要求部７２８は、保持サーバ判断部７０４が取得要求に係る電子ファイルの保持サーバの候補として判断したサーバに、そのサーバが保持する取得要求に係る電子ファイルのハッシュ値を要求する部位である。
【０４４２】
ハッシュ値受信部７３０は、ハッシュ値要求部７２８が要求を送信したサーバから、ハッシュ値を受信する部位である。
【０４４３】
更新許可要求受信部７３２は、ユーザが電子ファイルを更新する場合に、ユーザが利用する端末６０（６５）から、その電子ファイルの更新に関する許可の要求を受信する部位である。
【０４４４】
ハッシュ値初期化部７３４は、更新許可要求受信部７３２が更新許可要求を受信した場合に、その更新に係る電子ファイルに対応するファイル保持情報７００ｂの「ハッシュ値」を初期化する部位である。本実施の形態のハッシュ値の初期化では、「ハッシュ値」を「−１」で更新する。
【０４４５】
更新許可送信部７３６は、ハッシュ値初期化部７３４が「ハッシュ値」を初期化したことを受けて、更新許可要求受信部７３２が受信した更新許可要求の送信元である端末６０（６５）に、更新を許可することを内容とする情報を送信する部位である。
【０４４６】
記憶部情報要求部７３８は、保持情報更新部１１２が新規格納に係る更新をした場合に、分散ファイル管理装置６１０の管理下にある各サーバに、各サーバが備えるファイル記憶部の状態を示す情報（以下、「記憶部情報」という。）を要求する部位である。
【０４４７】
本実施の形態に係る「記憶部情報」は、例えば、各ファイル記憶部の空き容量に関連する情報であり、具体的には、全記憶容量に対する空き容量の割合などである。
【０４４８】
記憶部情報受信部７４０は、記憶部情報要求部７３８からの要求に応じて各サーバから送信される記憶部情報を受信する部位である。
【０４４９】
複写先判定部７４２は、記憶部情報受信部７４０が受信した記憶部情報に基づいて、複写先サーバを判定する部位である。本実施の形態に係る複写先判定部７４２は、記憶部情報に含まれる空き容量の割合が最大であるサーバを、複写先サーバとする。
【０４５０】
複写先送信部７４４は、複写先判定部７４２により複写先サーバと判定されたサーバに関する情報を、アクセス元サーバに送信する部位である。
【０４５１】
以上のような機能を分散ファイル管理装置６１０および各サーバ６２０、６３０、６４０が備えることにより、実施の形態１と同様に、ユーザは、自己の利用する端末６０、６５からいずれのサーバにアクセスするかにかかわらず、各サーバ６２０、６３０、６４０のいずれかが電子ファイルを保持している限り、その電子ファイルを取得することが可能となる。
【０４５２】
また、実施の形態２と同様に、複数のサーバが保持する同一の電子ファイルは同期がとられるため、ユーザは、いずれのサーバが最新の内容を有する電子ファイルを保持しているかを意識することなく、また、任意のサーバにアクセスすることにより、最新の内容を有する電子ファイルを取得することが可能となる。
【０４５３】
さらに、同一の電子ファイルを少なくとも２つのサーバが保持するため、もし、１つの保持サーバや保持サーバの記憶部に障害が生じた場合であっても、他の保持サーバから電子ファイルを取得することができ、システム全体での耐障害性を向上させることが可能となる。
【０４５４】
さらに、分散ファイル管理装置６１０が各ファイルのハッシュ値を保持している。そのため、ハッシュ値を参照して、各サーバが保持する電子ファイルが正規であるか否かを判断でき、電子ファイルの不正な書き換えを防止することが可能となる。
【０４５５】
図３９は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０４５６】
本図に示す「端末」、「アクセス元サーバ」、「保持サーバ」は、図８と同様である。そのため、これらに関するここでの説明は省略する。
【０４５７】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ４０１）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルであって、最新の内容を有する電子ファイルをユーザが利用する端末が取得する要求を内容とする情報である。
【０４５８】
次に、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
【０４５９】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５を参照することにより、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶保持しているか否かを判断する（Ｓ４０２）。
【０４６０】
電子ファイルを保持していないと判断した場合（Ｓ４０２でＮｏ）、続けて、保持サーバ問合部７９は分散ファイル管理装置１０に保持サーバを問合せ、問合受付部１０２は保持サーバの問合わせを受け付ける（Ｓ４０３）。
【０４６１】
続けて、保持サーバ判断部７０４は、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する（Ｓ４０４）。
【０４６２】
アクセス元サーバ以外に保持サーバがないと判断した場合（Ｓ４０４でＮｏ）、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４０５）。
【０４６３】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ４０６）、処理を終了する。
【０４６４】
また、アクセス元サーバ以外に保持サーバがあると判断した場合（Ｓ４０４でＹｅｓ）、続けて、ハッシュ値要求部７２８は、取得要求に係る電子ファイルのハッシュ値の要求を保持サーバに送信し、保持サーバのハッシュ値要求受信部６２４はハッシュ値の要求を受信する（Ｓ４０７）。
【０４６５】
続けて、ハッシュ値計算部６２６は、ファイル記憶制御部６７７にファイル記憶部２５から取得要求に係る電子ファイルを取得させ、ファイル記憶制御部６７７からその電子ファイルを取得し、その電子ファイルのハッシュ値を計算する（Ｓ４０８）。
【０４６６】
続けて、ハッシュ値送信部６２８はハッシュ値計算部６２６が計算したハッシュ値を送信し、ハッシュ値受信部７３０はハッシュ値を受信する（Ｓ４０９）。
【０４６７】
続けて、保持サーバ判断部７０４は、保持サーバ記憶部７００のファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致するか否かにより、保持サーバが保持する電子ファイルが正規であるか否かを判断する（Ｓ４１０）。
【０４６８】
ファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致しない場合、保持サーバ判断部７０４は正規ではないと判断する（Ｓ４１０でＮｏ）。
【０４６９】
この場合、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４１１）。
【０４７０】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部６７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信して（Ｓ４１２）、処理を終了する。
【０４７１】
また、ファイル保持情報７００ｂに含まれるハッシュ値と、ハッシュ値受信部７３０が受信したハッシュ値とが一致する場合、保持サーバ判断部７０４は正規であると判断する（Ｓ４１０でＹｅｓ）。
【０４７２】
この場合、続けて、ファイル送信要求部１０８は、保持サーバにファイル送信要求を送信し、ファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ４１３）。ここで、「ファイル送信要求」とは、ユーザの取得要求に係る電子ファイルをアクセス元サーバに送信することを内容とし、保持サーバに送信される要求である。
【０４７３】
続けて、ファイル記憶制御部６７７は、ファイル送信要求部１０８が受信したファイル送信要求を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部から読み出す（Ｓ４１４）。
【０４７４】
続けて、保持サーバのファイル送信部８５はユーザの取得要求に係る電子ファイルを送信し、アクセス元サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ４１５）。
【０４７５】
続けて、アクセス元サーバのファイル記憶制御部６７７は、ファイル受信部８７が受信した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ４１６）。
【０４７６】
続けて、アクセス元サーバのユーザ要求応答部９５は、ユーザの取得要求に係る電子ファイルをファイル記憶制御部６７７から取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ４１７）。
【０４７７】
続けて、アクセス元サーバの更新通知部９１はファイル記憶制御部６７７の格納処理（Ｓ４１６）が終了したことを受けて、更新通知を送信し、更新通知受付部１１０は更新通知を受け付ける（Ｓ４１８）。
【０４７８】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新し（Ｓ４１９）、処理を終了する。
【０４７９】
また、電子ファイルを保持していると判断した場合（Ｓ４０２でＹｅｓ）、続けて、ハッシュ値計算部６２６は、その電子ファイルのハッシュ値を計算する（Ｓ４２０）。
【０４８０】
続けて、ハッシュ値送信部６２８はハッシュ値計算部６２６が計算したハッシュ値を送信し、ハッシュ値受信部７３０はハッシュ値を受信する（Ｓ４２１）。
【０４８１】
続けて、保持サーバ判断部７０４は、Ｓ４１０における判断処理と同様に、保持サーバが保持する電子ファイルが正規であるか否かを判断する（Ｓ４２２）。
【０４８２】
保持サーバ判断部７０４が正規であると判断した場合（Ｓ４２２でＹｅｓ）、続けて、保持応答送信部１０６は、アクセス元サーバに保持通知を送信し、保持応答受信部８１は保持通知を受信する（Ｓ４２３）。
【０４８３】
続けて、ファイル記憶制御部６７７は、保持応答受信部８１が受信した保持通知を受けて、ユーザの取得要求に係る電子ファイルをファイル記憶部２５から読み出す（Ｓ４２４）。
【０４８４】
続けて、ユーザ要求応答部９５はユーザの取得要求に係る電子ファイルをファイル記憶制御部６７７から取得し、ユーザが利用する端末６０（６５）に送信し（Ｓ４２５）、アクセス元サーバは処理を終了する。
【０４８５】
また、保持サーバ判断部７０４が正規ではないと判断した場合（Ｓ４１０でＮｏ）、続けて、保持サーバ判断部７０４は、Ｓ４０４における判断処理と同様に、保持サーバ記憶部１００のファイル保持情報１００ｂを参照することにより、アクセス元サーバ以外に保持サーバがあるか否かを判断する（Ｓ４２６）。
【０４８６】
アクセス元サーバ以外に保持サーバがないと判断した場合（Ｓ４２６でＮｏ）、続けて、保持応答送信部１０６は不保持通知を送信し、保持応答受信部８１は不保持通知を受信する（Ｓ４２７）。
【０４８７】
続けて、ユーザ要求応答部９５は、不保持通知をファイル記憶制御部６７７を介して取得すると、取得要求を送信した端末６０（６５）に不保持通知を送信し（Ｓ４２８）、アクセス元サーバは処理を終了する。
【０４８８】
アクセス元サーバ以外に保持サーバがあると判断した場合（Ｓ４２６でＹｅｓ）、続けて、ハッシュ値送信部６２８はＳ４０７と同様に、ハッシュ値要求部７２８と保持サーバのハッシュ値要求受信部６２４とは、取得要求に係る電子ファイルのハッシュ値の要求を送受信する（Ｓ４２９）。
【０４８９】
本図に示す、Ｓ４３０以降における処理は、上記のＳ４０８以降における処理と同様である。詳しくは、Ｓ４３０からＳ４３２までの処理はＳ４０８からＳ４１０までの処理とそれぞれ同じであり、Ｓ４２７とＳ４２８とにおける処理はＳ４１１とＳ４１２とにおける処理とそれぞれ同じであり、Ｓ４３３からＳ４３７までの処理はＳ４１３からＳ４１７までの処理とそれぞれ同じである。そのため、これらの処理に関するここでの説明は、省略する。
【０４９０】
図４０は、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０４９１】
本図に示す「端末」と、「アクセス元サーバ」とは、図８に示す「端末」と、「アクセス元サーバ」と、それぞれ同様であるため、ここでの説明は省略する。
【０４９２】
本図に示す「複写先サーバ」は、分散ファイル管理装置６１０により新規格納に係る電子ファイルの複写先と判断されたサーバである。本実施の形態における複写先サーバは、サーバＡ６２０、サーバＢ６３０またはサーバＣ６４０のいずれか１つである。
【０４９３】
まず、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された格納要求を、通信回線５０を介して受信する（Ｓ５０１）。ここで、「格納要求」とは、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
【０４９４】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」と「格納要求」とのいずれであるかを判断する。本図は、格納要求に係る処理のタイムチャートであるため、この判断を省略している。
【０４９５】
続けて、要求種別判断部７３は、要求情報保持部７５に格納要求に係る電子ファイルを保持させる（Ｓ５０２）。
【０４９６】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信する（Ｓ５０３）。
【０４９７】
続けて、ロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させる。これにより、ロック要求に係る電子ファイルの書込要求はロックされる（Ｓ５０４）。
【０４９８】
また、ファイル記憶制御部６７７は、取得した要求が格納要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５、３５、４５に新規格納する（Ｓ５０５）。
【０４９９】
続けて、ハッシュ値計算部６２６は新規格納した電子ファイルのハッシュ値を計算する（Ｓ５０６）。
【０５００】
続けて、更新通知部９１は、分散ファイル管理装置１０に更新通知とハッシュ値とを送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知とハッシュ値とを受け付ける（Ｓ５０７）。
【０５０１】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ５０８）。
【０５０２】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ５０９）。
【０５０３】
続けて、更新完了通知部１１４は、ファイル記憶制御部６７７から完了の通知を受けて、更新処理の完了をアクセス元サーバに通知し、アクセス元サーバの完了通知受信部９３は完了の通知を受信する（Ｓ５１０）。
【０５０４】
続けて、アクセス元サーバのユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ５１１）。これにより、端末６０（６５）とアクセス元サーバとの間で実行される処理は終了する。
【０５０５】
分散ファイル管理装置６１０は、Ｓ５１０における更新完了通知部１１４による完了通知の送信に続けて、複写先判定部７４２が各サーバのファイル記憶部の空き容量に基づいて複写先サーバを決定する（Ｓ５１２）。この処理の詳細は後述する。
【０５０６】
続けて、複写先送信部７４４は、アクセス元サーバが新規格納した電子ファイルを複写先サーバに送信する要求を、アクセス元サーバに送信し、複写先受信部６３４はこのファイルの送信要求を受信する（Ｓ５１３）。
【０５０７】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５から新規格納した電子ファイルを読み出す（Ｓ５１４）。
【０５０８】
続けて、アクセス元サーバのファイル送信部８５は複写先サーバに新規格納した電子ファイルを送信し、複写先サーバのファイル受信部８７は新規格納した電子ファイルを受信する（Ｓ５１５）。
【０５０９】
続けて、複写先サーバのファイル記憶制御部６７７はファイル記憶部３５にファイル受信部８７が受信した電子ファイルを新規格納する（Ｓ５１６）。
【０５１０】
続けて、複写先サーバの更新通知部９１は更新通知を分散ファイル管理装置６１０に送信し、更新通知受付部１１０は更新通知を受信する（Ｓ５１７）。
【０５１１】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新して（Ｓ５１８）、処理を終了する。
【０５１２】
図４１は、図４０に示す複写先決定処理（Ｓ５１２）の詳細であり、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０５１３】
まず、記憶部情報要求部７３８は、各サーバ、すなわち、本実施の形態ではサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０とに記憶部情報の送信要求を送信し、各サーバの記憶部情報要求受信部６３０はその送信要求を受信する（それぞれ、Ｓ５５１と、Ｓ５５２と、Ｓ５５３とに対応する。）。
【０５１４】
続けて、サーバＡ６２０のファイル記憶制御部６７７は自身のファイル記憶部２５を参照することにより記憶部情報を取得または算出する（Ｓ５５４）。
【０５１５】
サーバＢ６３０とサーバＣ６４０とのファイル記憶制御部６７７も、同様に記憶部情報を取得する（それぞれ、Ｓ５５５と、Ｓ５５６とに対応する。）。
【０５１６】
続けて、記憶部情報受信部７４０は、各サーバ、すなわち、本実施の形態ではサーバＡ６２０と、サーバＢ６３０と、サーバＣ６４０から、各サーバのファイル記憶部２５と、ファイル記憶部３５と、ファイル記憶部４５とに関する記憶部情報を受信する（それぞれ、Ｓ５５７と、Ｓ５５８と、Ｓ５５９とに対応する。）。
【０５１７】
続けて、複写先判定部７４２は分散ファイル管理装置６１０が管理する全てのサーバから記憶部情報を受信したか否かを判断する（Ｓ５６０）。
【０５１８】
記憶部情報を受信していないサーバが１つでもある場合、全てのサーバから記憶部情報を受信していないと判断し（Ｓ５６０でＮｏ）、複写先判定部７４２は待機する。
【０５１９】
全てのサーバから記憶部情報を受信したと判断した場合（Ｓ５６０でＹｅｓ）、複写先判定部７４２は取得した記憶部情報に基づいて複写先サーバを決定する（Ｓ５６１）。
【０５２０】
以上が、ユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理である。続けて、ファイル保持情報７００ｂの初期状態を図３８に示す内容であるとして、ユーザが端末からファイルｆの格納要求をサーバＡ６２０に送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的に説明する。
【０５２１】
まず、サーバＡ６２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信されたファイルｆの格納要求を、通信回線５０を介して受信する（Ｓ５０１）。
【０５２２】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「格納要求」であると判断する。続けて、要求種別判断部７３は、要求情報保持部７５に格納要求に係るファイルｆを保持させる（Ｓ５０２）。
【０５２３】
続けて、まず、ロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置１０に送信し、ロック要求受信部１１６はロック要求を受信し（Ｓ５０３）、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させる。これにより、ファイルｆの書込要求はロックされる（Ｓ５０４）。
【０５２４】
ファイル記憶制御部６７７は、取得した要求が格納要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５に新規格納する（Ｓ５０５）。
【０５２５】
続けて、ハッシュ値計算部６２６は新規格納した電子ファイルのハッシュ値を計算する（Ｓ５０６）。ここで算出されたファイルｆのハッシュ値は、「１８１４６８０」であるとする。
【０５２６】
続けて、更新通知部９１は、分散ファイル管理装置１０に更新通知とハッシュ値とを送信し、分散ファイル管理装置１０の更新通知受付部１１０は更新通知とハッシュ値とを受け付ける（Ｓ５０７）。
【０５２７】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ５０８）。
【０５２８】
ここで、図４２は、ユーザが端末６０からサーバＡ６２０にファイルｆの更新要求を送信した場合に、サーバＡ６２０から送信された更新通知およびハッシュ値に従って更新された保持サーバ記憶部７００のファイル保持情報７００ｃの例を示す図である。
【０５２９】
本図に示すファイル保持情報７００ｃと図３８に示すファイル保持情報７００ｂの初期状態との違いは、ファイル保持情報７００ｃでは「ファイルパス」が「／ｄａｔａ／ｆ」であり、「ハッシュ値」が「１８１４６８０」であり、「サーバ名」が「サーバＡ」である情報が追加されている点にある。
【０５３０】
このようにファイル保持情報を更新（Ｓ５０８）した後、保持情報更新部１１２はロックを解除し（Ｓ５０９）、更新完了通知部１１４とアクセス元サーバの完了通知受信部９３とは完了通知を送受信し（Ｓ５１０）、アクセス元サーバのユーザ要求応答部９５は、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ５１１）。
【０５３１】
続けて、分散ファイル管理装置６１０は複写先サーバを決定する（Ｓ５１２）。
【０５３２】
複写先決定処理（Ｓ５１２）において、記憶部情報の送信要求の送受信（Ｓ５５１からＳ５５３まで）と、記憶部情報の取得処理（Ｓ５５４からＳ５５６まで）と、記憶部情報の送受信処理（Ｓ５５７からＳ５５９まで）とが実行される。
【０５３３】
続けて、複写先判定部７４２は全てのサーバから記憶部情報を受信するまで待機し（Ｓ５６０でＮｏ）、全てのサーバから記憶部情報を受信した場合（Ｓ５６０でＹｅｓ）、取得した記憶部情報に基づいて複写先サーバを決定する（Ｓ５６１）。
【０５３４】
ここで、複写先判定部７４２が取得した記憶部情報が図４３に示す内容である場合を例に、複写先サーバを決定する具体例について説明する。
【０５３５】
図４３は、記憶部情報を説明するための具体例を示す図である。本実施の形態では、「空き割合」に記載の各割合が、各サーバが備える各ファイル記憶部２５、３５、４５の記憶部情報となる。「空き割合」は、各ファイル記憶部の空き容量の総容量に対する割り合いである。このような、ファイル記憶部の空き容量および総容量の取得と、空き割合の算出とは、ファイル記憶制御部６７７が行う（Ｓ５５４からＳ５５６まで）。
【０５３６】
本図では、例えば、「サーバＡ」が備えるファイル記憶部２５の「記憶部総容量」が「１８４２５６ＭＢ」（Ｍｅｇａ  Ｂｙｔｅ）であり、「記憶部空容量」が「１２０７８９ＭＢ」であるため、「空き容量」は１２０７８９を１８４２５６で割った値である「６６％」である例を示す。
【０５３７】
そして、本図では「サーバＢ」に対応する「空き割合」が「７３％」であり、各サーバの中で最大である。
【０５３８】
そのため、空き割合が本図に示す内容である場合、複写先判定部７４２は、「サーバＢ」を複写先サーバと決定する（Ｓ５６１）。
【０５３９】
このように複写先サーバが決定されると、複写先送信部７４４とアクセス元サーバであるサーバＡ６２０の複写先受信部６３４とは、ファイルｆをサーバＢ６３０に送信する要求を送受信する（Ｓ５１３）。
【０５４０】
続けて、ファイル記憶制御部６７７は、自身のファイル記憶部２５からファイルｆを読み出し（Ｓ５１４）、サーバＡ６２０のファイル送信部８５とサーバＢ６３０のファイル受信部８７とはファイルｆを送受信する（Ｓ５１５）。
【０５４１】
続けて、サーバＢ６３０のファイル記憶制御部６７７はファイル記憶部３５にファイルｆを格納し（Ｓ５１６）、サーバＢ６３０の更新通知部９１と更新通知受付部１１０とは更新通知を送受信する（Ｓ５１７）。
【０５４２】
続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新して（Ｓ５１８）、処理を終了する。
【０５４３】
ここで、図４４は、ユーザが端末６０からサーバＡ６２０にファイルｆの更新要求を送信した場合に、各装置における処理が終了した後の保持サーバ記憶部７００のファイル保持情報７００ｄの例を示す図である。
【０５４４】
本図に示すファイル保持情報７００ｄでは、「ファイルパス」が「／ｄａｔａ／ｆ」である情報に対応付けられた「サーバ名」に、図４２に示すファイル保持情報７００ｃの「サーバＡ」に加えて「サーバＢ」が格納されている。
【０５４５】
以上が、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理である。次に、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理について説明する。
【０５４６】
図４５は、ユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０５４７】
まず、更新許可要求受信部７３２は、ユーザが利用する端末６０（６５）から、特定の電子ファイルの更新の許可の要求を受信する（Ｓ６０１）。
【０５４８】
続けて、ハッシュ値初期化部７３４は、更新許可要求受信部７３２が受信した要求に含まれる電子ファイルに対応付けられた、ファイル保持情報７００ｂのハッシュ値を初期化する（Ｓ６０２）。
【０５４９】
ここで、図４６は、実施の形態３に係る分散ファイル管理装置６１０が更新許可要求を受信することにより、ハッシュ値が初期化されたファイル保持情報７００ｅの例を示す図である。
【０５５０】
本図は、ハッシュ値が初期化される前のファイル保持情報７００ｂが図３８に示す内容である場合に、ファイルｂの更新許可要求を受信した分散ファイル管理装置６１０がファイル保持情報７００ｂを更新した例を示す。
【０５５１】
本実施の形態では、ハッシュ値初期化部７３４は、更新許可要求に係る「ハッシュ値」に「−１」を格納することにより、ハッシュ値を初期化する。
【０５５２】
本図では、ファイルｂの更新許可要求であるため、「ファイルパス」が「／ｄａｔａ／ｂ」であるファイルｂの「ハッシュ値」に「−１」が格納されている。
【０５５３】
ここから、図４５の説明に戻る。
【０５５４】
続けて、更新許可送信部７３６は、ユーザが利用する端末６０（６５）に、更新許可要求受信部７３２が要求を受けた電子ファイルの更新の許可を送信する（Ｓ６０３）。
【０５５５】
続けて、アクセス元サーバ２０（３０、４０）のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された更新要求を、通信回線５０を介して受信する（Ｓ２０１）。ここで、「更新要求」とは、アクセス元サーバが保持している電子ファイルを更新する要求を内容とする情報である。
【０５５６】
続けて、要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「更新要求」と「格納要求」とのいずれであるかを判断する。本図は、更新要求に係る処理のタイムチャートであるため、この判断を省略している。
【０５５７】
続けて、要求種別判断部７３は、要求情報保持部７５に更新要求に係る電子ファイルを保持させる（Ｓ６０５）。
【０５５８】
続く、ロック要求の送受信処理（Ｓ６０６）と、ロック処理（Ｓ６０７）とは、図９に示すロック要求の送受信処理（Ｓ２０３）と、ロック処理（Ｓ２０４）と、それぞれ同じである。そのため、これらに関するここでの説明は省略する。
【０５５９】
続けて、ファイル記憶制御部６７７は、取得した要求が更新要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルにより、自身のファイル記憶部２５、３５、４５が記憶している電子ファイルを更新する（Ｓ６０８）。
【０５６０】
続けて、ファイル記憶制御部６７７は、更新が完了したか否かを判断する（Ｓ６０９）。
【０５６１】
まず、更新が完了していないと判断した場合（Ｓ６０９でＮｏ）、ハッシュ値計算部６２６は待機する。
【０５６２】
また、更新が完了したと判断した場合（Ｓ６０９でＹｅｓ）、ハッシュ値計算部６２６は、ファイル記憶制御部６７７から更新に係る新たな電子ファイルを取得し、その電子ファイルのハッシュ値を計算する（Ｓ６１０）。
【０５６３】
続けて、図４０に示すＳ５０７およびＳ５０８における処理と同様に、アクセス元サーバの更新通知部９１と分散ファイル管理装置６１０の更新通知受付部１１０とは、更新通知とハッシュ値とを送受信し（Ｓ６１１）、続けて、保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知とハッシュ値とに従って、保持サーバ記憶部７００のファイル保持情報７００ｂを更新する（Ｓ６１２）。
【０５６４】
ここで、図４７は、実施の形態３において、ユーザが端末から更新要求を送信した場合に、その要求に係る電子ファイルの更新処理を実行した後のファイル保持情報の例を示す図である。本図は、ファイルｂを更新した場合の例であり、新たなファイルｂの「ハッシュ値」が「３４１７５１０」である例を示す。
【０５６５】
ここから、図４５の説明に戻る。
【０５６６】
続けて、保持情報更新部１１２によるロック解除処理（Ｓ６１３）から、アクセス元サーバのユーザ要求応答部９５によるユーザが利用する端末６０（６５）への完了通知の送信処理（Ｓ６１５）までは、図４０に示すＳ５０９からＳ５１１までにおける処理とそれぞれ同様であるため、ここでの説明は省略する。
【０５６７】
続けて、保持サーバ判断部７０４は、保持情報更新部１１２がファイル保持情報５００ｂを更新したことを受けて、保持サーバを抽出する（Ｓ６１６）。
【０５６８】
続けて、ファイル送信要求部１０８は、アクセス元サーバにファイル送信要求を送信し、アクセス元サーバ３２０のファイル送信要求受信部８３はファイル送信要求を受信する（Ｓ６１７）。
【０５６９】
続けて、ファイル記憶制御部６７７は、ファイル送信要求に関連する電子ファイルを自身のファイル記憶部２５から読み出す（Ｓ６１８）。
【０５７０】
続けて、アクセス元サーバ３２０のファイル送信部８５は、ファイル記憶制御部６７７が読み出した電子ファイルを保持サーバに送信し、保持サーバのファイル受信部８７はその電子ファイルを受信する（Ｓ６１９）。
【０５７１】
続けて、保持サーバのファイル記憶制御部６７７は、ファイル受信部８７が受信した電子ファイルにより自身のファイル記憶部２５が記憶している電子ファイルを更新する（Ｓ６２０）。
【０５７２】
実施の形態３において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。
【０５７３】
以上、本発明の実施の形態３に係る分散ファイル管理装置および分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
【０５７４】
例えば、本実施の形態では、「記憶部情報」を記憶部の「空き容量の割合」としたが、「記憶部情報」は「空き容量」そのものでもよい。
【０５７５】
また例えば、本実施の形態では、図４６に示すようにファイル保持情報７００ｅの「ハッシュ値」に「−１」を格納することによりハッシュ値を初期化することとしたが、初期化のためにハッシュ値に格納される値は「−１」に限られず、ハッシュ値としてとり得ない値であればよい。また、ＮＵＬＬ値が格納されてもよい。
【０５７６】
（実施の形態４）
実施の形態１から実施の形態３までに説明したように、本発明に係る分散ファイル管理システムでは、電子ファイルに係るユーザの要求を処理するためには分散ファイル管理装置が不可欠である。そのため、障害などにより分散ファイル管理装置が機能しなくなると電子ファイルに係るユーザの要求を処理できず、そのため、分散ファイル管理システムも機能しなくなるという問題がある。
【０５７７】
そこで、実施の形態４では、耐障害性に優れた分散ファイル管理システムを提供する。
【０５７８】
図４８から図６２までを参照して、本発明に係る実施の形態４について説明する。
【０５７９】
図４８は、本発明の実施の形態４に係る分散ファイル管理システムの構成の概要を示す図である。実施の形態４に係る分散ファイル管理システムは、実施の形態１から実施の形態３までと同様に、アクセス元サーバがいずれであるかにかかわらず、電子ファイルに関するユーザの要求に応じるシステムである。
【０５８０】
本実施の形態に係る分散ファイル管理システムは、通信回線５０を介して接続された、サーバＡ８２０、サーバＢ８３０およびサーバＣ８４０と、端末ａ６０および端末ｂ６５とから構成される。本実施の形態に係る分散ファイル管理システムを構成する要素について、実施の形態１に係る分散ファイル管理システムを構成する要素と同様の機能を有する要素には、同一の参照符号を付しており、これらの要素に関する説明は省略する。
【０５８１】
本実施の形態に係る各サーバ８２０、８３０、８４０は、各サーバに保持されている電子ファイルを管理する分散ファイル管理装置の機能を備え、また、電子ファイルを保持し、ユーザの要求を受け付け、ユーザの要求を受け付けた場合に分散ファイル管理装置または他のサーバと連携してその要求に対する応答をするファイルサーバの機能をも備える。
【０５８２】
各サーバのいずれか１台が分散ファイル管理装置として機能する。本実施の形態ではサーバが分散ファイル管理装置となる順位が予め定められ、稼動しているサーバの中で最も順位の高いサーバが分散ファイル管理装置として機能する。これにより、分散ファイル管理装置として機能しているサーバが障害などのために稼動を停止しても、他のサーバが分散ファイル管理装置となることができ、耐障害性を向上させることが可能となる。
【０５８３】
本実施の形態では、分散ファイル管理装置として機能しているサーバを「管理装置サーバ」という。
【０５８４】
また、各サーバは電子ファイルを記憶保持するためのファイル記憶部を備え、本実施の形態に係るサーバＡ８２０はファイル記憶部２５を備え、サーバＢ８３０はファイル記憶部３５を備え、サーバＣ８４０はファイル記憶部４５を備える。
【０５８５】
ここで、実施の形態４に係る分散ファイル管理システムにおいても各サーバが備えるファイル記憶部が記憶している電子ファイルのフォルダ構成は共通しており、具体的には、図２に示すフォルダ構成と同様である。そのため、フォルダ構成に関するここでの説明は省略する。
【０５８６】
また、実施の形態４に係る各ファイル記憶部２５、３５、４５が記憶している電子ファイルの具体例について、図を参照して説明する。
【０５８７】
図４９Ａ〜図４９Ｃは、実施の形態４に係る各サーバが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【０５８８】
図４９Ａは、実施の形態４に係るサーバＡ８２０が備えるファイル記憶部２５が記憶している電子ファイル情報２５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部２５が「ファイルａ」と、「ファイルｂ」とを記憶している例を示す。
【０５８９】
図４９Ｂは、実施の形態４に係るサーバＢ８３０が備えるファイル記憶部３５が記憶している電子ファイル情報３５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部３５が「ファイルａ」と、「ファイルｄ」と、「ファイルｅ」とを記憶している例を示す。
【０５９０】
図４９Ｃは、実施の形態４に係るサーバＣ８４０が備えるファイル記憶部４５が記憶している電子ファイル情報４５ｄの例を示す図である。本図は、本実施の形態に係るファイル記憶部４５が「ファイルｄ」を記憶している例を示す。
【０５９１】
続けて、各サーバが備える機能的構成の例について、サーバＡ８２０を例に図を参照して説明する。
【０５９２】
図５０は、実施の形態４に係るサーバＡ８２０が備える機能的構成の概要の一例を示すブロック図である。サーバＡは電子ファイルを保持するファイルサーバの機能と複数のファイルサーバが保持する電子ファイルを管理する分散ファイル管理装置の機能とをともに備える。
【０５９３】
サーバＡ８２０は、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とを備える。
【０５９４】
ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とは内部バス（図示しない）を介して相互に接続される。したがって、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とが有する各部位は、サーバＡ８２０の内部では内部バスを介して情報を送受信する。ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とに含まれる部位の詳細については後述する。
【０５９５】
また、ファイルサーバ部９００と、管理装置部９１０と、管理装置判定部９２０とは、通信回線５０を介して、端末６０、６５または他のサーバと情報を送受信する。
【０５９６】
ファイルサーバ部９００は、ファイルサーバとしての機能を実現する部位である。すなわち、ファイルサーバ部９００は、ユーザの要求または管理装置サーバから送信される要求を受信する。そして、ファイルサーバ部９００は、受信したこれらの要求に応じた処理を実行する。
【０５９７】
管理装置部９１０は、分散ファイル管理装置としての機能を実現する部位である。すなわち、管理装置部９１０は、サーバＡ８２０、サーバＢ８３０、または、サーバＣ８４０が保持する電子ファイルに関する情報を管理し、また、サーバＡ８２０が管理装置サーバである場合には、他のサーバからの問合せを受け付ける。
【０５９８】
管理装置判定部９２０は、他のサーバが備える管理装置判定部と送受信される情報に基づいて、管理装置サーバを判定する部位である。
【０５９９】
以上が、本実施の形態に係るサーバＡ８２０が備える機能的構成の概要である。次に、各部位が有する機能の詳細を、図を参照して説明する。
【０６００】
図５１は、実施の形態４に係るサーバＡ８２０のファイルサーバ部９００が備える機能的構成の詳細について、その一例を示す図である。
【０６０１】
ファイルサーバ部９００は、ファイル記憶部２５と、ユーザ要求受信部７１と、要求種別判断部７３と、要求情報保持部７５と、ファイル記憶制御部７７と、保持応答受信部８１と、ファイル送信要求受信部８３と、ファイル送信部８５と、ファイル受信部８７と、ロック要求送信部８９と、完了通知受信部９３と、ユーザ要求応答部９５と、保持サーバ問合部１０７９と、更新通知部１０９１とを有し、これらは、上記のように、管理装置部９１０および管理装置判定部９２０と内部バス（図示しない）を介して相互に情報を送受信する。
【０６０２】
本実施の形態に係るファイルサーバ部９００が有する各部位について、図４に示す実施の形態１に係るサーバが備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。
【０６０３】
保持サーバ問合部１０７９は、実施の形態１に係る保持サーバ問合部７９と同様に、いずれのサーバがユーザの要求に係る電子ファイルを保持しているかについて、通信回線５０を介して管理装置９１０に問い合わせる部位である。保持サーバ問合部１０７９は、実施の形態１に係る保持サーバ問合部７９と異なり、ファイル記憶制御部７７から取得する指示に従って、保持サーバを管理装置９１０に問い合わせる。
【０６０４】
更新通知部１０９１は、ファイル記憶制御部７７が電子ファイルを格納または更新した場合に、格納または更新された内容を各サーバに通知する部位である。これにより、全てのサーバが、保持サーバに関する最新の情報を保持することが可能となる。
【０６０５】
図５２は、実施の形態４に係るサーバＡ８２０の管理装置部９１０と管理装置判定部９２０とが備える機能的構成の詳細について、その一例を示す図である。
【０６０６】
まず、管理装置部９１０は、問合受付部１０２と、保持サーバ判断部１０４と、保持応答送信部１０６と、ファイル送信要求部１０８と、更新通知受付部１１０と、保持情報更新部１１２と、更新完了通知部１１４と、ロック要求受信部１１６と、ロック情報保持部１１８と、保持サーバ記憶部１０００とを有し、これらは、上記のように、ファイルサーバ部９００および管理装置判定部９２０と内部バス（図示しない）を介して相互に情報を送受信する。
【０６０７】
本実施の形態に係る管理装置部９１０が有する各部位について、図５に示す実施の形態１に係る分散ファイル管理装置１０が備える各部位と同様の機能を有する部位には、同一の参照符号を付しており、ここでは、これらの各部位の詳細な説明は省略する。
【０６０８】
保持サーバ記憶部１０００は、実施の形態１の保持サーバ記憶部１００と同様に、管理サーバ情報とファイル保持情報とを記憶している記憶部であり、例えば、ＨＤにより実現される。実施の形態１の保持サーバ記憶部１００とは、各情報の内容が異なる。各情報の詳細について図を参照して説明する。
【０６０９】
ここで、図５３は、実施の形態４に係る保持サーバ記憶部１０００が記憶している管理サーバ情報１０００ａの一例を示す図である。管理サーバ情報１０００ａには、管理対象として設定されているサーバを特定するための情報に加えて、各サーバが分散ファイル管理装置として機能する順位を示す情報が含まれる。
【０６１０】
本図に示す管理サーバ情報１０００ａは、「サーバ名」と、「ＩＰアドレス」と、「順位」とにより構成される。「サーバ名」および「ＩＰアドレス」は、実施の形態１に係る「サーバ名」および「ＩＰアドレス」と、それぞれ同一であるため、これらに関するここでの説明は省略する。
【０６１１】
「順位」は、各サーバが分散ファイル管理装置として機能する順位を内容とする。
【０６１２】
本図は、例えば、「サーバ名」が「サーバＡ」であるサーバの「ＩＰアドレス」が「１９２．１６８．ｘｘｘ．１」であり、その「順位」が「３」である管理サーバ情報を含む。
【０６１３】
また、「順位」についてみると、「サーバＢ」が「１」、「サーバＣ」が「２」、「サーバＡ」が「３」である。これは、「サーバＢ」がまず管理装置サーバとなり、「サーバＢ」が稼動を停止した場合には、次に、「サーバＣ」が管理装置サーバとなり、さらに、「サーバＣ」をも稼動を停止した場合には、「サーバＡ」が管理装置サーバとなることを示す。このような順位は、本実施の形態に係る分散ファイル管理システムの管理者などにより、予め定められる。
【０６１４】
次に、図５４は、実施の形態４に係る保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂの一例を示す図である。本実施の形態に係るファイル保持情報１０００ｂの「ファイルパス」と、「サーバ名」とは、図７を参照して説明した実施の形態１に係るファイル保持情報１００ｂの「ファイルパス」と、「サーバ名」と、それぞれ同様の情報が格納されるため、ここでの詳細な説明は省略する。
【０６１５】
本図は、例えば、「サーバＡ」と「サーバＢ」とが、「ファイルパス」が「／ｄａｔａ／ａ」である電子ファイルを保持していることを示すファイル保持情報を含む例である。
【０６１６】
次に、図５２に示す管理装置判定部９２０について説明する。
【０６１７】
管理装置判定部９２０は、管理装置保持部１２００と、管理装置通知部１２０２と、管理装置通知受付部１２０４と、変更判断部１２０６と、管理装置決定部１２０８と、保持サーバ情報取得部１２１０と、サーバ応答部１２１２と、サーバ応答受付部１２１４と、を有する。
【０６１８】
管理装置保持部１２００は、現在の管理装置サーバを特定するための情報（以下、「管理装置情報」という）を保持している部位である。
【０６１９】
管理装置通知部１２０２は、管理装置保持部１２００を参照することにより、自身を備えるサーバが管理装置サーバであるか否かを判断し、自身を備えるサーバが管理装置サーバである場合には、予め定められた時間間隔で各サーバに自身を備えるサーバが現在の管理装置サーバであることを通知する部位である。
【０６２０】
ここで、管理装置通知部１２０２は、管理装置保持部１２００に自身を備えるサーバを示す情報が保持されている場合には自身を備えるサーバが管理装置サーバであると判断し、管理装置保持部１２００に自身を備えるサーバを示す情報が保持されていない場合には自身を備えるサーバが管理装置サーバでないと判断する。
【０６２１】
管理装置通知受付部１２０４は、管理装置サーバの管理装置通知部１２０２からの通知を受け付ける部位である。
【０６２２】
変更判断部１２０６は、管理装置通知受付部１２０４が受け付けた通知に基づいて、管理装置サーバの変更が必要か否かを判断する部位である。
【０６２３】
具体的には、まず、変更判断部１２０６は、管理装置通知受付部１２０４が受け付けた応答の送信元が、管理装置保持部１２００が保持している情報が示すサーバより順位が高いサーバである場合に、変更が必要であると判断する。このとき、順位を判断するために、保持サーバ記憶部１０００の管理サーバ情報１０００ａを参照する。このように、管理装置保持部１２００が保持している情報が示すサーバより順位が高いサーバからの応答を受け付けるのは、一旦ダウンしたサーバが復旧した場合である。従って、各サーバは、ダウンしていたサーバの復旧を検知できる。
【０６２４】
次に、変更判断部１２０６は、管理装置通知受付部１２０４が通知を受け付けることなく予め定められた時間が経過した場合に、変更が必要であると判断する。このように管理装置通知受付部１２０４が一定時間通知を受け付けないのは、管理装置サーバに障害が発生するなど、そのサーバの稼動が停止した場合である。従って、各サーバは、管理装置サーバの稼動停止を検知することができる。
【０６２５】
管理装置決定部１２０８は、変更判断部１２０６が分散ファイル管理装置として機能するサーバの変更が必要であると判断した場合に、次の管理装置サーバを、保持サーバ記憶部１０００の管理サーバ情報１０００ａを参照することにより決定し、決定したサーバを特定する情報を管理装置保持部１２００に格納する。ここで、管理装置決定部１２０８は、稼動しているサーバのうち、管理サーバ情報１０００ａの順位が最も上位のサーバを次の管理装置サーバとして決定する。
【０６２６】
保持サーバ情報取得部１２１０は、サーバの復旧により変更判断部１２０６が管理装置サーバの変更が必要と判断したことによって、管理装置決定部１２０８がサーバを決定した場合に、保持サーバ記憶部１０００のファイル保持情報１０００ｂを取得する。
【０６２７】
サーバ応答部１２１２は、管理装置通知受付部１２０４が通知を受け付けた場合に、変更判断部１２０６の判断に従って、管理装置サーバに応答する部位である。
【０６２８】
まず、サーバ応答部１２１２は、変更判断部１２０６が変更の必要がないと判断した場合には、管理装置通知受付部１２０４が受け付けた通知の送信元に、応答する。
【０６２９】
また、サーバ応答部１２１２は、サーバの復旧により変更判断部１２０６が管理装置サーバの変更が必要と判断した場合には、管理装置決定部１２０８が決定したサーバに、保持サーバ情報取得部１２１０が取得したファイル保持情報１０００ｂを含む応答を送信する。
【０６３０】
サーバ応答受付部１２１４は、他のサーバのサーバ応答部１２１２から送信された応答を受け付ける部位である。
【０６３１】
ここで、受け付けた応答にファイル保持情報１０００ｂが含まれていた場合には、サーバ応答受付部１２１４は、そのファイル保持情報１０００ｂにより自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する。
【０６３２】
応答にファイル保持情報１０００ｂが含まれるのは、応答を受け付けたサーバに障害が発生していた場合である。障害が発生していた間、そのサーバが保持するファイル保持情報１０００ｂは更新できないため、内容が古い場合がある。このように、サーバの復旧時にファイル保持情報１０００ｂを更新することにより、復旧したサーバが直ちに管理装置サーバとして正しく機能することが可能となる。
【０６３３】
以上が、本実施の形態に係るサーバＡ８２０が備える機能的構成である。ここで説明したサーバＡ８２０の機能的構成は、ファイルサーバ部９００のファイル記憶部２５がサーバＢ８３０ではファイル記憶部３５であり、サーバＣ８４０ではファイル記憶部４５であることを除いて、共通する。そのため、サーバＢ８３０およびサーバＣ８４０の機能的構成の説明は省略する。
【０６３４】
次に、本実施の形態に係る分散ファイル管理システムにおいて実行される処理について、図を参照して説明する。
【０６３５】
図５５は、ユーザが端末から取得要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０６３６】
本実施の形態では、管理サーバ情報１０００ａは図５３に示す内容であり、従って、順位が最も高い「サーバＢ」を管理装置サーバとし、各サーバの管理装置保持部１２００には「サーバＢ」を示す情報が保持されているとする。
【０６３７】
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。さらに、本図は、サーバＡ８２０がアクセス元サーバである例を示す。
【０６３８】
従って、本図および本図の説明における、「サーバＡ」８２０の処理は「アクセス元サーバ」が実行する処理であり、「サーバＢ」８３０の処理は「管理装置サーバ」が実行する処理である。
【０６３９】
まず、サーバＢ８３０の管理装置通知部１２０２が「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４が「通知１」を、それぞれ受け付ける（Ｓ７０１およびＳ７０２）。
【０６４０】
ここで、「通知１」とは、管理装置サーバであるサーバＢ８３０の管理装置通知部１２０２が、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報をいう。
【０６４１】
続けて、管理装置保持部１２００に保持されている情報により示されるサーバと、管理装置通知受付部１２０４が「通知１」を受け付けたサーバとは、ともに「サーバＢ」であるため、サーバＡ８２０およびサーバＣ８４０の変更判断部１２０６は変更の必要がないと判断し、この判断を受けたサーバＡ８２０およびサーバＣ８４０のサーバ応答部１２１２は「応答１」をサーバＢ８３０に送信する。そして、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」を受け付ける（Ｓ７０３およびＳ７０４）。
【０６４２】
ここまでのＳ７０１からＳ７０４までの処理は、各サーバの管理装置判定部９２０が管理装置サーバを判定するために継続されている処理である。
【０６４３】
続けて、アクセス元サーバであるサーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された取得要求を、通信回線５０を介して受信する（Ｓ７０５）。ここで、「取得要求」とは、ユーザの指定に係る電子ファイルをユーザが利用する端末が取得する要求である。
【０６４４】
続けて、サーバＡ８２０の要求種別判断部７３は、ユーザ要求受信部７１が受信した要求を取得し、その要求が「取得要求」と「書込要求」とのいずれであるかを判断する。本図は、取得要求に係る処理のタイムチャートであるため、この判断を省略している。
【０６４５】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶しているか否かを判断する（Ｓ７０６）。
【０６４６】
自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していると判断した場合（Ｓ７０６でＹｅｓ）、サーバＡ８２０のファイル記憶制御部７７は、続けて、ファイル記憶部２５から取得要求に係る電子ファイルを読み出す（Ｓ７０７）。
【０６４７】
続けて、サーバＡ８２０のユーザ要求応答部９５は、自身のファイル記憶制御部７７から取得要求に係る電子ファイルを取得し、その電子ファイルをユーザが利用する端末６０（６５）に送信する（Ｓ７０８）。
【０６４８】
続けて、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していないと判断した場合（Ｓ７０６でＮｏ）、サーバＡ８２０の保持サーバ問合部１０７９はサーバＢ８３０に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバＢ８３０の問合受付部１０２はその保持サーバの問合せを受け付ける（Ｓ７０９）。
【０６４９】
続けて、サーバＢ８３０の保持サーバ判断部１０４は、保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する（Ｓ７１０）。
【０６５０】
保持サーバがないと判断した場合（Ｓ７１０でＮｏ）、サーバＢ８３０の保持応答送信部１０６はサーバＡ８２０に不保持通知を送信する（Ｓ７１１）。
【０６５１】
続けて、サーバＡ８２０のユーザ要求応答部９５は、ユーザが利用する端末６０（６５）に不保持通知を送信する（Ｓ７１２）。
【０６５２】
また、保持サーバがあると判断した場合（Ｓ７１０でＹｅｓ）、続けて、サーバＢ８３０の保持サーバ判断部１０４は、サーバＢ８３０自身が保持サーバであるか否かを判断する（Ｓ７１３）。
【０６５３】
自身が保持サーバであると判断した場合（Ｓ７１３でＹｅｓ）、続けて、サーバＢ８３０のファイル記憶制御部７７は、自身の管理装置部９１０の要求に基づいて、ファイル記憶部３５から取得要求に係る電子ファイルを読み出す（Ｓ７１４）。
【０６５４】
続けて、サーバＢ８３０のファイル送信部８５は、自身のファイル記憶制御部７７から取得要求に係る電子ファイルを取得し、サーバＡ８２０に送信する。そして、サーバＡ８２０のファイル受信部８７は、サーバＢのファイル送信部８５が送信した電子ファイルを受信する（Ｓ７１５）。
【０６５５】
続けて、サーバＡ８２０のユーザ要求応答部９５は、取得要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ７１６）。
【０６５６】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル受信部８７から取得した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ７１７）。
【０６５７】
続けて、サーバＡ８２０の更新通知部１０９１は、アクセス元サーバが取得要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＢ８３０およびサーバＣ８４０に送信し、サーバＢ８３０およびサーバＣ８４０の更新通知受付部１１０はその更新通知を受け付ける（Ｓ７１８およびＳ７１９）。
【０６５８】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ７２０）。
【０６５９】
また、サーバＢ８３０およびサーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ７２１およびＳ７２２）。
【０６６０】
続けて、Ｓ７０１からＳ７０４までにおける処理と同様に、サーバＢ８３０とサーバＡ８２０との間、および、サーバＢ８３０とサーバＣ８４０との間で「通知１」が送受信され、また、「応答１」が送受信される（Ｓ７２３からＳ７２６まで）。Ｓ７２３はＳ７０１に、Ｓ７２４はＳ７０２に、Ｓ７２５はＳ７０３に、Ｓ７２６はＳ７０４に、それぞれ対応する同様の処理であるため、ここでの詳しい説明は省略する。さらに、各サーバの管理装置判定部９２０は管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。
【０６６１】
また、自身が保持サーバでないと判断した場合（Ｓ７１３でＮｏ）、続けて、サーバＢ８３０のファイル送信要求部１０８は、取得要求に係る電子ファイルをアクセス元サーバであるサーバＡ８２０に送信する要求を、保持サーバに送信する（Ｓ７２７）。ここでは、サーバＣ８４０が保持サーバであるとする。
【０６６２】
続けて、保持サーバであるサーバＣ８４０のファイル記憶制御部７７は、ファイル記憶部２５から取得要求に係る電子ファイルを読み出す（Ｓ７２８）。
【０６６３】
続けて、サーバＣ８４０のファイル送信部８５は取得要求に係る電子ファイルをファイル記憶制御部７７から取得し、取得した電子ファイルをサーバＡ８２０に送信する（Ｓ７２９）。
【０６６４】
続けて、サーバＡ８２０のユーザ要求応答部９５は、取得要求に係る電子ファイルをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ７３０）。
【０６６５】
続けて、Ｓ７１７以降の処理を実行する。Ｓ７１７以降の処理については、既に説明したため、ここでの説明は省略する。
【０６６６】
図５６は、ユーザが端末から書込要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【０６６７】
ここでも、図５５の場合と同様に、管理サーバ情報１０００ａは図５３に示す内容であり、従って、順位が最も高い「サーバＢ」を管理装置サーバとし、各サーバの管理装置保持部１２００には「サーバＢ」を示す情報が保持されているとする。
【０６６８】
また、本図に示す「端末」はユーザが利用する端末であり、本実施の形態においては端末ａ６０または端末ｂ６５のいずれかである。さらに、本図は、サーバＡ８２０がアクセス元サーバである例を示す。
【０６６９】
従って、本図および本図の説明における、「サーバＡ」８２０の処理は「アクセス元サーバ」が実行する処理であり、「サーバＢ」８３０の処理は「管理装置サーバ」が実行する処理である。
【０６７０】
まず、本図に示すＳ７０１からＳ７０４までの処理は、分散ファイル管理装置として機能するサーバを各サーバが判定するために継続されている処理であり、図５５において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。
【０６７１】
続けて、アクセス元サーバであるサーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から送信された書込要求を、通信回線５０を介して受信する（Ｓ８０１）。ここで、「書込要求」とは、アクセス元サーバが保持している電子ファイルを更新し、または、アクセス元サーバに新たな電子ファイルを保持させる要求を内容とする情報である。
【０６７２】
続けて、サーバＡ８２０の要求種別判断部７３は、自身の要求情報保持部７５に書込要求に係る電子ファイルを保持させる（Ｓ８０２）。
【０６７３】
続けて、まず、サーバＡ８２０のロック要求送信部８９は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、ロック要求を分散ファイル管理装置として機能しているサーバＢ８３０に送信し、サーバＢ８３０のロック要求受信部１１６はロック要求を受信する（Ｓ８０３）。
【０６７４】
続けて、サーバＢ８３０のロック要求受信部１１６は、受信したロック要求に係る電子ファイルに関する情報をロック情報保持部１１８に保持させることにより、ロックする（Ｓ８０４）。
【０６７５】
また、サーバＡ８２０のファイル記憶制御部７７は、取得した要求が書込要求であるという要求種別判断部７３の判断を受けて、要求情報保持部７５が保持している電子ファイルを取得し、取得したその電子ファイルを、自身のファイル記憶部２５に書き込む（Ｓ８０５）。
【０６７６】
続けて、サーバＡ８２０のファイル記憶制御部７７は、書き込みが完了したか否かを判断する（Ｓ８０６）。
【０６７７】
書き込みが完了していないと判断した場合（Ｓ８０６でＮｏ）、サーバＡ８２０の更新通知部１０９１は待機する。
【０６７８】
また、書き込みが完了したと判断した場合（Ｓ８０６でＹｅｓ）、サーバＡ８２０の更新通知部１０９１は、自身のファイル記憶制御部７７から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＢ８３０に送信し、サーバＢ８３０の更新通知受付部１１０は更新通知を受け付ける（Ｓ８０７）。
【０６７９】
続けて、サーバＡ８２０の保持サーバ問合部１０７９は、自身のファイル記憶制御部７７から完了の通知を受けて、書込要求に係る電子ファイルの保持サーバの問合せを、サーバＢ８３０に送信し、サーバＢ８３０の問合受付部１０２は保持サーバの問合せを受け付ける（Ｓ８０８）。
【０６８０】
続けて、サーバＡ８２０の更新通知部１０９１は、自身のファイル記憶制御部７７から完了の通知を受けて、アクセス元サーバが書込要求に係る電子ファイルの保持サーバとなったことを内容とする更新通知を、サーバＣ８４０に送信し、サーバＣ８４０の更新通知受付部１１０は更新通知を受け付ける（Ｓ８０９）。
【０６８１】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ８１０）。
【０６８２】
また、サーバＢ８３０およびサーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ８１１およびＳ８１２）。
【０６８３】
続けて、保持情報更新部１１２は、ロック情報保持部１１８が保持している情報を消去することにより、ロックを解除する（Ｓ８１３）。
【０６８４】
続けて、更新完了通知部１１４は、ファイル記憶制御部７７から完了の通知を受けて、更新処理の完了をサーバＡ８２０に通知し、サーバＡ８２０の完了通知受信部９３は完了の通知を受信する（Ｓ８１４）。
【０６８５】
続けて、サーバＡ８２０のユーザ要求応答部９５は、完了通知受信部９３が完了の通知を受信したことを受けて、ユーザの書込要求に関連する処理が完了したことをユーザが利用する端末６０（６５）に送信する（Ｓ８１５）。
【０６８６】
続けて、サーバＢ８３０の保持サーバ判断部１０４は、自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、アクセス元サーバであるサーバＡ８２０以外の保持サーバの有無を判断する（Ｓ８１６）。
【０６８７】
保持サーバがあると判断した場合（Ｓ８１６でＹｅｓ）、サーバＢ８３０のファイル送信要求部１０８は、保持サーバを特定する情報を自身の保持サーバ判断部１０４から取得することにより、書込要求に係る電子ファイルを保持サーバに送信することを内容とするファイル送信要求をサーバＡ８２０に送信し、サーバＡ８２０のファイル送信要求受信部８３は、ファイルの送信要求を受信する（Ｓ８１７）。本図は、Ｓ８１６で肯定判断された場合の保持サーバが「サーバＣ」８４０である場合の例を示す。したがって、以下の「サーバＣ」８４０の処理は、「保持サーバ」が実行する処理である。
【０６８８】
続けて、サーバＡ８２０のファイル記憶制御部７７は、ファイル送信要求受信部８３が受信したファイル送信要求をファイル送信要求受信部８３から取得し、自身のファイル記憶部２５から書込要求に係る電子ファイルを読み出す（Ｓ８１８）。
【０６８９】
続けて、サーバＡ８２０のファイル送信部８５は、書込要求に係る電子ファイルおよびファイル送信要求をファイル記憶制御部７７から取得し、書込要求に係る電子ファイルをサーバＣ８４０に送信し、サーバＣ８４０のファイル受信部８７はその電子ファイルを受信する（Ｓ８１９）。
【０６９０】
続けて、サーバＣ８４０のファイル記憶制御部７７は、自身のファイル受信部８７からファイル受信部８７が受信した電子ファイルを取得し、その電子ファイルにより自身のファイル記憶部４５を更新する（Ｓ８２０）。
【０６９１】
続けて、本図に示すＳ７２２からＳ７２５までの処理が継続される。これらの処理は、管理装置サーバを各サーバが判定するために継続されている処理であり、図５５において同一の参照符号を付した処理とそれぞれ同じである。そのため、ここでの説明は省略する。さらに、各サーバの管理装置判定部９２０が管理装置サーバを継続的に判定しているが、図示していない。この管理装置判定処理の説明は後述するため、ここでは省略する。
【０６９２】
次に、各サーバの管理装置判定部９２０による管理装置判定処理に関連する手順について、図を参照して説明する。
【０６９３】
図５７は、管理装置サーバを判定するために各サーバにおいて実行される処理のタイムチャートである。本図は、管理装置サーバであるサーバＢ８３０の稼動が停止し、その後、普及した場合に、管理装置サーバを判定するために各サーバにおいて実行される処理の具体例を示すタイムチャートである。
【０６９４】
本図では、サーバＡ８２０、サーバＢ８３０およびサーバＣ８４０の保持サーバ記憶部１０００の管理サーバ情報１０００ａは、図５３に示す内容であることとする。従って、サーバＢ８３０が停止した場合、次の管理装置サーバはサーバＣ８４０である。
【０６９５】
まず、管理装置サーバであるサーバＢ８３０が停止する（Ｓ９０１）。そのため、サーバＢ８３０は、サーバＡ８２０およびサーバＣ８４０に「通知１」を送信できない。「通知１」に×印を付した本図の記載は、これを表す。
【０６９６】
次に、サーバＡ８２０の管理装置判定部９２０は、管理装置サーバであるサーバＢ８３０から一定時間内に通知を受信することができず、そのため、管理装置サーバは、次の順位のサーバであるサーバＣ８４０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＢ８３０からサーバＣ８４０に変更する（Ｓ９０２）。
【０６９７】
ここで、管理装置サーバではない各サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第１管理装置判定処理」といい、その詳細は後述する。
【０６９８】
また、サーバＣ８４０の管理装置判定部９２０も、同様に、第１管理装置判定処理において、サーバＣ８４０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＢ８３０からサーバＣ８４０に変更する（Ｓ９０３）。
【０６９９】
続けて、管理装置サーバとなったサーバＣ８４０の管理装置通知部１２０２が「通知２」を他のサーバに送信し、サーバＡ８２０の管理装置通知受付部１２０４が「通知２」を受け付ける（Ｓ９０４）。サーバＢ８３０は、停止しているため、「通知２」を受け付けることができない（Ｓ９０５）。本図の「通知２」の矢印に付した×は、これを表す。
【０７００】
ここで、「通知２」とは、「通知１」と同様に、自身が稼動していることを他のサーバに知らせるために、継続的にまたは一定間隔で断続的に送信する情報であり、管理装置サーバであるサーバＣ８４０の管理装置通知部１２０２が送信する通知である。
【０７０１】
続けて、サーバＡ８２０の管理装置判定部９２０は、第１管理装置判定処理において、管理装置の変更は必要ないと判定する（Ｓ９０６）。
【０７０２】
続けて、Ａ８２０のサーバ応答部１２１２は「応答２」をサーバＣ８４０に送信し、サーバＣ８４０のサーバ応答受付部１２１４は「応答２」を受け付ける（Ｓ９０７）。
【０７０３】
続けて、サーバＡ８２０の管理装置判定部９２０は第１装置判定処理を継続し、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、「通知２」と「応答２」との送受信を繰り返す（図示していない）。
【０７０４】
続けて、サーバＢ８３０が復旧したとする（Ｓ９０８）。
【０７０５】
復旧したサーバＢ８３０の管理装置通知部１２０２は「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４は「通知１」を、それぞれ受け付ける（Ｓ９０９およびＳ９１０）。
【０７０６】
続けて、サーバＡ８２０の管理装置判定部９２０は、第１管理装置判定処理において、現在の管理装置サーバとして保持している情報が示すサーバＣ８４０よりも順位が上位であるサーバＢ８３０から通知を受け付けたため、サーバＢ８３０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＣ８４０からサーバＢ８３０に変更する（Ｓ９１１）。
【０７０７】
続けて、サーバＡ８２０のサーバ応答部１２１２は「応答１」を送信し、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」をサーバＡ８２０から受け付ける（Ｓ９１２）。
【０７０８】
また、サーバＣ８４０の管理装置判定部９２０は、自身より順位の高いサーバＢ８３０から通知を受け付けたため、サーバＢ８３０を管理装置サーバと判定し、自身が保持する管理装置情報をサーバＣ８４０からサーバＢ８３０に変更する（Ｓ９１３）。
【０７０９】
ここで、管理装置サーバが、現在の管理装置サーバを判定し、正しい管理装置情報を保持するために断続的に実行する処理を「第２管理装置判定処理」といい、その詳細は後述する。
【０７１０】
続けて、サーバＣ８４０のサーバ応答部１２１２は自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを含む「応答１」を送信し、サーバＢ８３０のサーバ応答受付部１２１４はファイル保持情報１０００ｂを含む「応答１」をサーバＣ８４０から受け付ける（Ｓ９１４）。
【０７１１】
続けて、ファイル保持情報１０００ｂを含む「応答１」を受け付けたサーバＢ８３０のサーバ応答受付部１２１４は、そのファイル保持情報１０００ｂにより、自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを更新する（Ｓ９１５）。これにより、サーバＢ８３０が保持するファイル保持情報１０００ｂは最新の内容となる。
【０７１２】
続けて、サーバＢ８３０の管理装置通知部１２０２が「通知１」を他のサーバに送信し、サーバＡ８２０およびサーバＣ８４０の管理装置通知受付部１２０４が「通知１」を、それぞれ受け付ける（Ｓ９１６およびＳ９１７）。
【０７１３】
続けて、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、それぞれ、第１管理装置判定処理において、管理装置の変更は必要ないと判定する（Ｓ９１８およびＳ９１９）。
【０７１４】
続けて、サーバＡ８２０およびサーバＣ８４０のサーバ応答部１２１２は「応答１」をサーバＢ８３０に送信する。そして、サーバＢ８３０のサーバ応答受付部１２１４は「応答１」を受け付ける（Ｓ９２０およびＳ９２１）。
【０７１５】
続けて、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は第１装置判定処理を継続し、サーバＡ８２０およびサーバＣ８４０の管理装置判定部９２０は、「通知１」と「応答１」との送受信を繰り返す（図示していない）。
【０７１６】
図５８は、通常のサーバの管理装置判定部９２０が実行する第１管理装置処理の詳細なフローチャートである。
【０７１７】
まず、変更判断部１２０６は、管理装置通知受付部１２０４が直前に通知を受け付けてから予め定められた一定の時間が経過したか否かを判断する（Ｓ１００１）。この一定時間は、変更判断部１２０６が保持している。
【０７１８】
一定時間が経過していないと判断した場合（Ｓ１００１でＮｏ）、すなわち、直前の通知から一定の時間内に次の通知を受け付けた場合、続けて、変更判断部１２０６は、管理装置保持部１２００が保持している情報と、保持サーバ記憶部１０００の管理サーバ情報１０００ａとを取得し、次の通知の送信元のサーバの順位が、管理装置保持部１２００が保持している管理装置情報が示すサーバより上位であるか否かを判断する（Ｓ１００２）。
【０７１９】
送信元であるサーバが管理装置情報が示すサーバより上位でないと判断した場合（Ｓ１００２でＮｏ）、変更判断部１２０６は、管理装置サーバの変更が必要がないと判断し、時間経過の判断処理（Ｓ１００１）に戻る。
【０７２０】
また、一定時間が経過したと判断した場合（Ｓ１００１でＹｅｓ）、または、一定時間が経過していないと判断し（Ｓ１００１でＮｏ）、かつ、送信元であるサーバが管理装置情報が示すサーバより上位であると判断した場合（Ｓ１００２でＹｅｓ）、変更判断部１２０６は管理装置サーバの変更が必要であると判断し、この判断を受けた管理装置決定部１２０８は管理装置サーバを決定する（Ｓ１００３）。
【０７２１】
ここで、一定時間が経過したために（Ｓ１００１でＹｅｓ）、管理装置サーバの変更が必要と判断された場合には、管理装置決定部１２０８は、この判断と、管理装置保持部１２００が保持している管理装置情報とを変更判断部１２０６から取得し、さらに、保持サーバ記憶部１０００から管理サーバ情報１０００ａの「順位」を取得し、管理装置情報が示すサーバの次の順位に対応するサーバを、新たな管理装置サーバとして決定する。
【０７２２】
また、送信元であるサーバが管理装置情報が示すサーバより上位であるために（Ｓ１００２でＹｅｓ）、管理装置サーバの変更が必要と判断された場合には、管理装置決定部１２０８は、この判断と、送信元であるサーバを特定するための情報とを変更判断部１２０６から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する。
【０７２３】
続けて、管理装置決定部１２０８は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部１２００が保持する管理装置情報を更新し、保持させる（Ｓ１００４）。これにより、通常のサーバの管理装置判定部９２０による、第１管理装置判定処理は終了する。
【０７２４】
図５９は、管理装置サーバの管理装置判定部９２０が実行する第２管理装置処理の詳細なフローチャートである。
【０７２５】
まず、変更判断部１２０６は、管理装置通知受付部１２０４が通知を受け付けた場合、その通知の送信元が、自身を備えるサーバより上位であるか否かを判断する（Ｓ１１００）。
【０７２６】
送信元が自身を備えるサーバより上位ではないと判断した場合（Ｓ１１００でＮｏ）、変更判断部１２０６は待機する。
【０７２７】
送信元が自身を備えるサーバより上位であると判断した場合（Ｓ１１００でＹｅｓ）、管理装置決定部１２０８は、この判断と、送信元であるサーバを特定するための情報とを変更判断部１２０６から取得し、送信元であるサーバを、新たな管理装置サーバとして決定する（Ｓ１１０１）。
【０７２８】
続けて、管理装置決定部１２０８は、自身が決定した管理装置サーバを特定するための情報により、管理装置保持部１２００が保持する管理装置情報を更新し、保持させる（Ｓ１１０２）。
【０７２９】
続けて、保持サーバ情報取得部１２１０は、管理装置決定部１２０８が新たな管理装置サーバとして決定したサーバを特定するための情報を取得すると、自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを取得し、取得したファイル保持情報１０００ｂとサーバを特定するための情報とをサーバ応答部１２１２に引き渡す（Ｓ１１０３）。
【０７３０】
これにより、管理装置サーバの管理装置判定部９２０による、第１管理装置判定処理は終了する。
【０７３１】
次に、実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理について、より具体的な一例を挙げて説明する。
【０７３２】
図６０は、サーバＢ８３０の停止中にサーバＡ８２０がファイルｄの取得要求を受け付けた後に、サーバＢ８３０が復旧した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の具体例を示すタイムチャートである。
【０７３３】
ここでも、各サーバの保持サーバ記憶部１０００の管理サーバ情報は、図５３に示す管理サーバ情報１０００ａであるとする。また、各サーバの保持サーバ記憶部１０００のファイル保持情報の初めの内容は、図５４に示すファイル保持情報１０００ｂであるとする。さらに、各サーバのファイル記憶部２５、３５、４５が記憶している電子ファイル情報の初めの内容は、図４９に示す内容であるとする。
【０７３４】
まず、管理装置サーバであるサーバＢ８３０が停止してから（Ｓ９０１）、サーバＡ８２０が新たに管理装置サーバとなったサーバＣ８４０に「応答２」を送信するまで（Ｓ９０７）の処理は、図５７において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。この時点での管理装置サーバは、サーバＣ８４０に変更されている。
【０７３５】
続けて、サーバＡ８２０のユーザ要求受信部７１は、ユーザが利用する端末６０（６５）から、ファイルｄの取得要求を受け付ける（Ｓ１２０１）。
【０７３６】
続けて、サーバＡ８２０の要求種別判断部７３は、ユーザ要求受信部７１が受信した要求が「取得要求」であるかを判断し（図示していない）、続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶しているか否かを判断する（Ｓ１２０２）。
【０７３７】
図４９Ａに示すように、サーバＡ８２０のファイル記憶部２５はファイルｄを記憶していない。そのため、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル記憶部２５が取得要求に係る電子ファイルを記憶していないと判断する（Ｓ１２０２でＮｏ）。
【０７３８】
サーバＡ８２０の保持サーバ問合部１０７９は、ファイル記憶制御部７７の判断を受けて、サーバＣ８４０に取得要求に係る電子ファイルの保持サーバの問合せを送信し、サーバＢ８３０の問合受付部１０２はその保持サーバの問合せを受け付ける（Ｓ１２０３）。
【０７３９】
続けて、サーバＣ８４０の保持サーバ判断部１０４は、保持サーバ記憶部１０００のファイル保持情報１０００ｂを参照することにより、取得要求に係る電子ファイルの保持サーバがあるか否かを判断する（Ｓ１２０４）。
【０７４０】
図５４に示すように、ファイルｄの保持サーバは「サーバＢ」と「サーバＣ」とであるため、サーバＣ８４０の保持サーバ判断部１０４は、保持サーバがあると判断し（Ｓ１２０４でＹｅｓ）、続けて、サーバＣ８４０自身が保持サーバであるか否かを判断する（Ｓ１２０５）。
【０７４１】
上記のように、「サーバＣ」が保持サーバであるため、自身が保持サーバであると判断し（Ｓ１２０５でＹｅｓ）、続けて、サーバＣ８４０のファイル記憶制御部７７は、自身の管理装置部９１０の要求により、ファイル記憶部４５からファイルｄを読み出す（Ｓ１２０６）。
【０７４２】
続けて、サーバＣ８４０のファイル送信部８５は、自身のファイル記憶制御部７７からファイルｄを取得し、サーバＡ８２０に送信する。そして、サーバＡ８２０のファイル受信部８７はそのファイルｄを受信する（Ｓ１２０７）。
【０７４３】
続けて、サーバＡ８２０のユーザ要求応答部９５は、ファイルｄをファイル記憶制御部７７を介して取得し、ユーザが利用する端末６０（６５）に送信する（Ｓ１２０８）。
【０７４４】
続けて、サーバＡ８２０のファイル記憶制御部７７は、自身のファイル受信部８７から取得した電子ファイルを自身のファイル記憶部２５に格納する（Ｓ１２０９）。
【０７４５】
続けて、サーバＡ８２０の更新通知部１０９１は、自身がファイルｄの保持サーバとなったことを内容とする更新通知を、サーバＣ８４０に送信し、サーバＣ８４０の更新通知受付部１１０はその更新通知を受け付ける（Ｓ１２１０）。
【０７４６】
続けて、サーバＡ８２０の更新通知受付部１１０は上記の更新通知を内部バスを介して自身の更新通知部１０９１から取得し、サーバＡ８２０の保持情報更新部１１２は、更新通知受付部１１０から取得した更新通知に従って自身の保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ１２１１）。
【０７４７】
また、サーバＣ８４０の保持情報更新部１１２は、それぞれの更新通知受付部１１０から更新通知を取得し、取得した更新通知に従ってそれぞれの保持サーバ記憶部１０００のファイル保持情報１０００ｂを更新する（Ｓ１２１２）。
【０７４８】
この後、サーバＣ８４０とサーバＡ８２０とは「通知２」の送受信から（Ｓ９０４）、「応答２」の送受信まで（Ｓ９０７）の処理を継続する。
【０７４９】
ここまでの処理を終えた時に、各サーバが保持しているファイル保持情報について、図を参照して説明する。
【０７５０】
図６１は、サーバＢ８３０の停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＡ８２０およびサーバＣ８４０の保持サーバ記憶部の保持サーバ情報１０００ｃの例を示す図である。サーバＡ８２０およびサーバＣ８４０の保持サーバ情報１０００ｃには、「ファイルｄ」の保持サーバに「サーバＡ」が新たに追加されている。
【０７５１】
また、図６２は、サーバＢ８３０の停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＢ８３０の保持サーバ記憶部の保持サーバ情報１０００ｂの例を示す図である。サーバＢ８３０は停止しているため保持サーバ情報１０００ｄが更新されておらず、「ファイルｄ」の保持サーバに「サーバＡ」が新たに追加されていない。
【０７５２】
このように、停止中のサーバが保持するファイル保持情報１０００ｄは、正しい情報を保持していないことがある。そのため、以下に説明する処理が実行される。
【０７５３】
ここから、図６０の説明に戻る。
【０７５４】
サーバＢ８３０が復旧したとする（Ｓ９０８）。
【０７５５】
続けて、サーバＢ８３０とサーバＡ８２０との「通知１」の送受信から（Ｓ９０９）、サーバＢによる保持サーバ情報の更新までは（Ｓ９１５）、図５７において同じ参照符号を付した処理と同一である。そのため、これらに関するここでの説明は省略する。
【０７５６】
ここで、Ｓ９１４においてサーバＣ８４０のサーバ応答部１２１２が送信する「応答１」には、図６１に示す最新のファイル保持情報１０００ｃが含まれる。そのため、「応答１」を受信したサーバＢ８３０は、Ｓ９１５において、ファイル保持情報１０００ｃにより、自身の保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂを更新することができ、復旧したサーバＢ８３０は管理装置サーバとして正しく機能することが可能となる。
【０７５７】
実施の形態２において、ユーザが利用する端末６０（６５）に接続されたモニタに表示される入力画面および結果の表示画面の例は、実施の形態１において図１６から図１８までを参照して説明した入力画面および結果の表示画面の例と同様である。そのため、ここでの説明は省略する。
【０７５８】
以上、本発明の実施の形態４に係る分散ファイル管理システムについて説明したが、本発明はこの実施の形態に限定されるものではない。
【０７５９】
（変形例２）
例えば、本実施の形態に係る分散ファイル管理システムを構成するサーバに、分散ファイル管理装置としての機能を有しないサーバが含まれても構わない。
【０７６０】
実施の形態４では、分散ファイル管理システムを構成するサーバが３台の場合を例に説明した。しかし、分散ファイル管理システムを構成するサーバの台数は、より多くても構わない。分散ファイル管理装置としての機能を備えたサーバは、保持サーバ記憶部１０００にファイル保持情報を記憶しており、サーバのいずれかのファイル記憶部に変更があると、すべての分散ファイル管理装置としての機能を備えたサーバのファイル保持情報が、同期を保つために、更新される。多数のサーバにより分散ファイル管理システムが構成される場合、このファイル保持情報の同期のための処理および通信情報量が増加する。
【０７６１】
したがって、分散ファイル管理システムが多数のサーバにより構成される場合には、そのサーバ群の一部に分散ファイル管理装置の機能を有するサーバを含むことにより、分散ファイル管理システムの耐障害性を向上させることが可能になるとともに、そのサーバ群の一部に分散ファイル管理装置の機能を有しないサーバを含むことにより、各サーバの処理に係る負荷の増加と通信情報量が増加とを抑えることが可能となる。
【０７６２】
このような実施の形態４に係る一変形例について、図６３から図６５までを参照して説明する。
【０７６３】
図６３は、本発明の変形例２に係る分散ファイル管理システムの構成の概要を示す図である。本図に示す分散ファイル管理システムは、サーバＡ８２０と、サーバＢ８３０と、サーバＣ８４０と、サーバＤ８５０と、端末ａ６０と、端末ｂ６５とから構成され、これらの各装置は通信回線５０介して接続されている。すなわち、本図に示す分散ファイル管理システムの構成は、実施の形態４に係る分散ファイル管理システムの構成に、さらに、サーバＤ８５０を追加したものである。サーバＤ８５０以外の装置は実施の形態４と同様であるため、ここでの詳しい説明は省略する。
【０７６４】
サーバＤ８５０は、他のサーバと同様に、電子ファイルを記憶している記憶部であるファイル記憶部８５５を備える。サーバＤ８５０が他のサーバと異なる点は、分散ファイル管理装置としての機能を備えていないことにある。
【０７６５】
そのため、分散ファイル管理装置としての機能を備えるサーバであるサーバＡ８２０と、サーバＢ８３０と、サーバＣ８４０とが備える保持サーバ記憶部１０００の管理サーバ情報は、サーバＤ８５０が分散ファイル管理装置としての機能を備えていないことが識別できるようになっている。
【０７６６】
図６４は、本発明の変形例２に係る分散ファイル管理装置として機能するサーバが備える保持サーバ記憶部１０００の管理サーバ情報１０００ｅの一例を示す図である。
【０７６７】
本図に示す管理サーバ情報１０００ｅは、図５３に示す実施の形態４に係る管理サーバ情報１０００ａと同様に、「サーバ名」と、「ＩＰアドレス」と、「順位」とから構成される。本変形において、これらに格納される情報も、実施の形態と同様である。違いは、分散ファイル管理装置としての機能を備えないサーバを識別できるようにするため、そのサーバに対応する「順位」に情報を含まないことである。
【０７６８】
例えば、本図では、「サーバＤ」に対応付けて格納されている情報は「ＩＰアドレス」のみであり、「順位」はＮＵＬＬ値である。このように、「順位」がＮＵＬＬ値であることにより、分散ファイル管理装置としての機能を備えたサーバは、「サーバＤ」が分散ファイル管理装置としての機能を備えないサーバであることを識別でき、例えば、管理装置サーバが停止した場合、サーバＤ８５０は次の管理装置サーバの候補とならない。
【０７６９】
なお、サーバが分散ファイル管理装置としての機能を備えないことを示す方法は、これに限られない。「順位」がＮＵＬＬ値である他、「順位」を「−１」とするなど、分散ファイル管理装置の機能を備えるサーバに対応付けられた「順位」に付与されない値でもよい。また、分散ファイル管理装置としての機能を有するサーバであるか否かを示すフラグを、さらに追加してもよい。
【０７７０】
図６５は、本発明の変形例２に係る分散ファイル管理装置として機能しないサーバであるサーバＤ８５０が備える機能的構成を示すブロック図である。
【０７７１】
サーバＤ８５０は、ファイルサーバ部９００と、管理装置判定部１３００とから構成される。また、各部位は内部バスで接続されている（図示しない）。
【０７７２】
サーバＤ８５０のファイルサーバ部９００は、図５１に示すサーバＡ８２０のファイルサーバ部８２０と同様に、ファイルサーバとしての機能を実現する部位であり、サーバＡ８２０のファイルサーバ部８２０と同様の機能的構成を備える。本図に示すファイルサーバ部９００の各部位が備える機能は、図５１において同一の参照符号を付したサーバＡ８２０のファイルサーバ部８２０の各部位が備える機能と同様である。そのため、ここでサーバＤ８５０のファイルサーバ部９００の各部位が備える機能に関する詳細な説明は省略する。
【０７７３】
管理装置判定部１３００は、図５２に示すサーバＡ８２０の管理装置判定部９２０と同様に、管理装置サーバとの間で送受信される情報に基づいて、管理装置サーバを判定する部位である。
【０７７４】
本変形例に係るサーバＤ８５０の管理装置判定部１３００は、管理装置保持部１４００と、管理装置通知受付部１４０２と、サーバ応答部１４１２とを有する。
【０７７５】
管理装置保持部１４００は、図５２に示す管理装置保持部１２００と同様に、管理装置情報を保持している部位である。
【０７７６】
管理装置通知受付部１４０２は、図５２に示す管理装置通知受付部１２０４と同様に、管理装置サーバの管理装置通知部１２０２からの通知を受け付ける部位である。管理装置通知受付部１４０２は、受け付けた通知の送信元であるサーバを示す情報を管理装置情報として管理装置保持部１４００に保持させる。
【０７７７】
すなわち、分散ファイル管理装置としての機能を備えないサーバの管理装置判定部１３００は、通知元であるサーバが管理装置サーバであると判定する。
【０７７８】
サーバ応答部１４１２は、管理装置通知受付部１４０２が通知を受け付けた場合に、管理装置サーバに応答する部位である。サーバ応答部１４１２は、管理装置保持部１４００が保持している管理装置情報を取得し、取得した管理装置情報により示されるサーバを、応答先である管理装置サーバとする。
【０７７９】
このような機能を備えることにより、分散ファイル管理装置の機能を有しないサーバは、分散ファイル管理サーバを検知することができ、ユーザからの要求を受け付けた場合には、必要に応じて分散ファイル管理サーバにユーザの要求に係る電子ファイルの保持サーバを問い合わせることができる。
【０７８０】
なお、本変形例では分散ファイル管理装置の機能を有しないサーバを１台である場合を例にしたが、複数台であってもよいのはもちろんである。
【０７８１】
以上、本発明の実施の形態１から実施の形態４までに係る分散ファイル管理システムについて説明したが、本発明は、これらの実施の形態に限定されるものではない。
【０７８２】
例えば、実施の形態１から実施の形態３まででは、分散ファイル管理装置の管理下にあるサーバが３台である場合を例に説明したが、サーバは複数あればよい。また、サーバの台数が多い程、ユーザは電子ファイルの所在を意識することなく所望の電子ファイルを取得することが可能となるなど、各実施の形態における効果は顕著になる。
【産業上の利用可能性】
【０７８３】
本発明は、複数のサーバで分散して保持されている電子ファイル群を管理する装置またはシステム等に適用でき、特に、複数のファイルサーバおよび各ファイルサーバを管理する装置により構成されるシステムや、複数のＷＷＷ（Ｗｏｒｌｄ  Ｗｉｄｅ  Ｗｅｂ）サーバおよび各ＷＷＷサーバを管理する装置により構成されるシステム等に適用できる。
【図面の簡単な説明】
【０７８４】
【図１】図１は本発明の実施の形態１に係る分散ファイル管理システムの構成の概要を示す図である。
【図２】図２は実施の形態１に係る各サーバが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図３Ａ】図３Ａは実施の形態１に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３Ｂ】図３Ｂは実施の形態１に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３Ｃ】図３Ｃは実施の形態１に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４】図４は実施の形態１に係るサーバＡが備える機能的構成の例を示すブロック図である。
【図５】図５は実施の形態１に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図６】図６は保持サーバ記憶部が記憶している管理サーバ情報の例を示す図である。
【図７】図７は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図８】図８はユーザが端末から取得要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図９】図９はユーザが端末から書込要求を送信した場合に、本発明の実施の形態１に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図１０】図１０はサーバＡが端末ａからファイルａの取得要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【図１１】図１１はサーバＡが端末ａからファイルａの取得要求を受け付けた後に、サーバＡが保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示す図である。
【図１２】図１２は端末ａからファイルａの取得要求を受け付けたサーバＡのファイル記憶部が記憶している電子ファイル情報を示す図である。
【図１３】図１３はサーバＡが端末ａからファイルａの取得要求を受け付けた後に、サーバＡが保持するファイルａの更新要求を受け付けた場合に、分散ファイル管理装置と、サーバＡと、サーバＢと、端末ａとにおいて実行される処理およびこれらの装置間で送受信される情報の例を示すタイムチャートである。
【図１４】図１４は端末ａからファイルａの更新要求により更新されたサーバＡのファイル記憶部が記憶している電子ファイル情報を示す図である。
【図１５】図１５はサーバＡが端末ａからファイルａの更新要求を受け付けた場合に、更新通知に従って更新されたファイル保持情報を示す図である。
【図１６】図１６はユーザが利用する端末に接続されたモニタに表示される、ユーザが特定のファイルに対する要求を入力するための画面の例を示す図である。
【図１７】図１７はユーザがファイルａの取得要求を指示した場合に、ユーザが利用する端末に接続されたモニタに表示される結果の例を示す図である。
【図１８】図１８はユーザがファイルａの更新要求を指示した場合に、ユーザが利用する端末に接続されたモニタに表示される結果の例を示す図である。
【図１９】図１９は保持サーバ記憶部が記憶しているファイル保持情報の他の例を示す図である。
【図２０Ａ】図２０Ａは実施の形態２に係るサーバＡが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２０Ｂ】図２０Ｂは実施の形態２に係るサーバＢが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２０Ｃ】図２０Ｃは実施の形態２に係るサーバＣが備えるファイル記憶部が記憶している電子ファイル情報に共通する電子ファイルのパスの例を示す図である。
【図２１】図２１は実施の形態２に係るサーバＡ３２０が備える機能的構成の例を示すブロック図である。
【図２２】図２２は実施の形態２に係る分散ファイル管理装置３１０が備える機能的構成の例を示すブロック図である。
【図２３】図２３は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図２４】図２４は実施の形態２に係る削除条件情報の例を示す図である。
【図２５】図２５はユーザが端末から取得要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図２６】図２６はユーザが端末から書込要求を送信した場合に、本発明の実施の形態２に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図２７】図２７は各サーバが保持する電子ファイルを削除する際に、本発明の実施の形態２に係る分散ファイル管理装置において実行される処理の一例を示すフローチャートである。
【図２８】図２８はファイル保持情報４００ｂが図２３に示す内容である場合に、分散ファイル管理装置３１０による電子ファイルの削除処理が終了した後のファイル保持情報４００ｃを示す図である。
【図２９】図２９は変形例１に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図３０】図３０は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図３１】図３１はユーザからの更新要求をサーバが受け付けた場合に本変形例に係る各装置が実行する処理の例を示すタイムチャートである。
【図３２】図３２はサーバＡがファイルｄの更新要求を受け付けた場合に、保持サーバ判断部がＳ２１２における判断処理を実行するときの、ファイル保持情報を示す図である。
【図３３】図３３はユーザからファイルｄの更新要求をサーバＡが受け付けた場合に、本変形例に係る各装置が実行する処理が終了した後のファイル保持情報を示す図である。
【図３４】図３４は古い内容を有する電子ファイルを削除の対象とする場合のファイル保持情報の例を示す図である。
【図３５Ａ】図３５Ａは実施の形態３に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３５Ｂ】図３５Ｂは実施の形態３に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３５Ｃ】図３５Ｃは実施の形態３に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図３６】図３６は実施の形態３に係るサーバＡが備える機能的構成の例を示すブロック図である。
【図３７】図３７は実施の形態３に係る分散ファイル管理装置が備える機能的構成の例を示すブロック図である。
【図３８】図３８は保持サーバ記憶部が記憶しているファイル保持情報の例を示す図である。
【図３９】図３９はユーザが端末から取得要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４０】図４０はユーザが端末から格納要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４１】図４１は図４０に示す複写先決定処理の詳細であり、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４２】図４２はユーザが端末からサーバＡにファイルｆの更新要求を送信した場合に、サーバＡから送信された更新通知およびハッシュ値に従って更新された保持サーバ記憶部のファイル保持情報の例を示す図である。
【図４３】図４３は記憶部情報を説明するための具体例を示す図である。
【図４４】図４４はユーザが端末からサーバＡにファイルｆの更新要求を送信した場合に、各装置における処理が終了した後の保持サーバ記憶部のファイル保持情報の例を示す図である。
【図４５】図４５はユーザが端末から更新要求を送信した場合に、本発明の実施の形態３に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図４６】図４６は実施の形態３に係る分散ファイル管理装置が更新許可要求を受信することにより、ハッシュ値が初期化されたファイル保持情報の例を示す図である。
【図４７】図４７は実施の形態３において、ユーザが端末から更新要求を送信した場合に、その要求に係る電子ファイルの更新処理を実行した後のファイル保持情報の例を示す図である。
【図４８】図４８は本発明の実施の形態４に係る分散ファイル管理システムの構成の概要を示す図である。
【図４９Ａ】図４９Ａは実施の形態４に係るサーバＡが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４９Ｂ】図４９Ｂは実施の形態４に係るサーバＢが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図４９Ｃ】図４９Ｃは実施の形態４に係るサーバＣが備えるファイル記憶部が記憶している電子ファイルの具体例を示す図である。
【図５０】図５０は実施の形態４に係るサーバＡ８２０が備える機能的構成の概要の一例を示すブロック図である。
【図５１】図５１は実施の形態４に係るサーバＡ８２０のファイルサーバ部９００が備える機能的構成の詳細について、その一例を示すブロック図である。
【図５２】図５２は実施の形態４に係るサーバＡの管理装置部と管理装置判定部とが備える機能的構成の詳細について、その一例を示すブロック図である。
【図５３】図５３は実施の形態４に係る保持サーバ記憶部が記憶している管理サーバ情報の一例を示す図である。
【図５４】図５４は実施の形態４に係る保持サーバ記憶部１０００が記憶しているファイル保持情報１０００ｂの一例を示す図である。
【図５５】図５５はユーザが端末から取得要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図５６】図５６はユーザが端末から書込要求を送信した場合に、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の一例を示すタイムチャートである。
【図５７】図５７は管理装置を判定するために各サーバにおいて実行される処理のタイムチャートである。
【図５８】図５８は通常のサーバの管理装置判定部が実行する第１管理装置処理の詳細なフローチャートである。
【図５９】図５９は管理装置サーバの管理装置判定部が実行する第２管理装置処理の詳細なフローチャートである。
【図６０】図６０はサーバＢの停止中にサーバＡがファイルｄの取得要求を受け付けた場合と、その後にサーバＢが復旧した場合とにおいて、本発明の実施の形態４に係る分散ファイル管理システムを構成する各装置において実行される処理の具体例を示すタイムチャートである。
【図６１】図６１はサーバＢの停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＡおよびサーバＣの保持サーバ記憶部の保持サーバ情報の例を示す図である。
【図６２】図６２はサーバＢの停止中に実行されたファイルｄの取得要求に関する処理が終了した後の、サーバＢの保持サーバ記憶部の保持サーバ情報の例を示す図である。
【図６３】図６３は本発明の変形例２に係る分散ファイル管理システムの構成の概要を示す図である。
【図６４】図６４は本発明の変形例２に係る分散ファイル管理装置として機能するサーバが備える保持サーバ記憶部の管理サーバ情報の一例を示す図である。
【図６５】図６５は本発明の変形例２に係る分散ファイル管理装置として機能しないサーバであるサーバＤが備える機能的構成を示すブロック図である。
【符号の説明】
【０７８５】
１０、３１０、５１０、６１０  分散ファイル管理装置
１５、５０  通信回線
２０、３０、４０、３２０、６２０、８２０  サーバ
２５、３５、４５、８５５  ファイル記憶部
６０、６５  端末
７１  ユーザ要求受信部
７３  要求種別判断部
７５  要求情報保持部
７７、６７７  ファイル記憶制御部
７９、１０７９  保持サーバ問合部
８１  保持応答受信部
８３  ファイル送信要求受信部
８５  ファイル送信部
８７  ファイル受信部
８９  ロック要求送信部
９１、３９１、１０９１  更新通知部
９３  完了通知受信部
９５  ユーザ要求応答部
１００、４００、５００、７００、１０００  保持サーバ記憶部
１０２  問合受付部
１０４、４０４、５０４、７０４  保持サーバ判断部
１０６  保持応答送信部
１０８  ファイル送信要求部
１１０、４１０  更新通知受付部
１１２、４１２  保持情報更新部
１１４  更新完了通知部
１１６  ロック要求受信部
１１８  ロック情報保持部
３２２  削除要求受信部
４２０  削除条件記憶部
４２２  時計部
４２４、５２４  削除対象判断部
４２６  削除要求部
６２４  ハッシュ値要求受信部
６２６  ハッシュ値計算部
６２８  ハッシュ値送信部
６３０  記憶部情報要求受信部
６３２  記憶部情報送信部
６３４  複写先受信部
７２８  ハッシュ値要求部
７３０  ハッシュ値受信部
７３２  更新許可要求受信部
７３４  ハッシュ値初期化部
７３６  更新許可送信部
７３８  記憶部情報要求部
７４０  記憶部情報受信部
７４２  複写先判定部
７４４  複写先送信部
８２０、９００  ファイルサーバ部
９１０  管理装置部
９２０、１３００  管理装置判定部
１２００、１４００  管理装置保持部
１２０２  管理装置通知部
１２０４、１４０２  管理装置通知受付部
１２０６  変更判断部
１２０８  管理装置決定部
１２１０  保持サーバ情報取得部
１２１２、１４１２  サーバ応答部
１２１４  サーバ応答受付部
【手続補正３】
【補正対象書類名】図面
【補正対象項目名】全図
【補正方法】変更
【補正の内容】
【図１】
2008010473.tif 000076
【図２】
2008010473.tif 000077
【図３Ａ】
2008010473.tif 000078
【図３Ｂ】
2008010473.tif 000079
【図３Ｃ】
2008010473.tif 000080
【図４】
2008010473.tif 000081
【図５】
2008010473.tif 000082
【図６】
2008010473.tif 000083
【図７】
2008010473.tif 000084
【図８】
2008010473.tif 000085
【図９】
2008010473.tif 000086
【図１０】
2008010473.tif 000087
【図１１】
2008010473.tif 000088
【図１２】
2008010473.tif 000089
【図１３】
2008010473.tif 000090
【図１４】
2008010473.tif 000091
【図１５】
2008010473.tif 000092
【図１６】
2008010473.tif 000093
【図１７】
2008010473.tif 000094
【図１８】
2008010473.tif 000095
【図１９】
2008010473.tif 000096
【図２０Ａ】
2008010473.tif 000097
【図２０Ｂ】
2008010473.tif 000098
【図２０Ｃ】
2008010473.tif 000099
【図２１】
2008010473.tif 000100
【図２２】
2008010473.tif 000101
【図２３】
2008010473.tif 000102
【図２４】
2008010473.tif 000103
【図２５】
2008010473.tif 000104
【図２６】
2008010473.tif 000105
【図２７】
2008010473.tif 000106
【図２８】
2008010473.tif 000107
【図２９】
2008010473.tif 000108
【図３０】
2008010473.tif 000109
【図３１】
2008010473.tif 000110
【図３２】
2008010473.tif 000111
【図３３】
2008010473.tif 000112
【図３４】
2008010473.tif 000113
【図３５Ａ】
2008010473.tif 000114
【図３５Ｂ】
2008010473.tif 000115
【図３５Ｃ】
2008010473.tif 000116
【図３６】
2008010473.tif 000117
【図３７】
2008010473.tif 000118
【図３８】
2008010473.tif 000119
【図３９】
2008010473.tif 000120
【図４０】
2008010473.tif 000121
【図４１】
2008010473.tif 000122
【図４２】
2008010473.tif 000123
【図４３】
2008010473.tif 000124
【図４４】
2008010473.tif 000125
【図４５】
2008010473.tif 000126
【図４６】
2008010473.tif 000127
【図４７】
2008010473.tif 000128
【図４８】
2008010473.tif 000129
【図４９Ａ】
2008010473.tif 000130
【図４９Ｂ】
2008010473.tif 000131
【図４９Ｃ】
2008010473.tif 000132
【図５０】
2008010473.tif 000133
【図５１】
2008010473.tif 000134
【図５２】
2008010473.tif 000135
【図５３】
2008010473.tif 000136
【図５４】
2008010473.tif 000137
【図５５】
2008010473.tif 000138
【図５６】
2008010473.tif 000139
【図５７】
2008010473.tif 000140
【図５８】
2008010473.tif 000141
【図５９】
2008010473.tif 000142
【図６０】
2008010473.tif 000143
【図６１】
2008010473.tif 000144
【図６２】
2008010473.tif 000145
【図６３】
2008010473.tif 000146
【図６４】
2008010473.tif 000147
【図６５】
2008010473.tif 000148
【手続補正書】
【提出日】平成21年7月14日(2009.7.14)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、前記複数のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末と、分散ファイル管理装置とにより構成され、
前記分散ファイル管理装置は、
電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付手段と、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶手段と、
前記問合受付手段が問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断手段と、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断手段により保持サーバであると判断されたサーバに送信するファイル送信要求手段とを備え、
前記各サーバは、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項２】
前記保持サーバ記憶手段は、前記サーバと、前記電子ファイルの識別子と、同一の識別子を含む電子ファイル群の中で最新であるか否かを示すフラグとを対応付けた情報であるファイル保持情報を記憶し、
前記保持サーバ判断手段は、前記ファイル保持情報を参照することにより、前記ユーザ指定の識別子と、最新であることを示す前記フラグとに対応付けられているサーバを、前記保持サーバと判断する
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項３】
前記各サーバは、
さらに、他のサーバの前記ファイル送信手段から送信された電子ファイルを受信するファイル受信手段を備え、
前記ファイル記憶制御手段は、さらに、前記ファイル受信手段が受信した電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項１に記載の分散ファイル管理システム。
【請求項４】
前記各サーバは、さらに、
前記ファイル記憶制御手段がファイル記憶手段に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶手段が記憶している情報の差分を、前記分散ファイル管理装置に通知する更新通知手段を備え、
前記分散ファイル管理装置は、
前記更新通知手段による通知を受け付ける更新通知受付手段と、
前記更新通知受付手段が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新手段とを備える
ことを特徴とする請求項３に記載の分散ファイル管理システム。
【請求項５】
前記更新通知手段は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記取得要求に係る電子ファイルを保持するに至った場合に、前記取得要求に係る電子ファイルの識別子を前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項６】
前記更新通知手段は、電子ファイルを前記サーバに保持させる要求である書込要求を前記アクセス元サーバが受信し、当該アクセス元サーバが前記書込要求に係る電子ファイルを保持するに至った場合に、前記書込要求に係る電子ファイルの識別子と、書込要求に基づく保持であることを示す情報とを、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた通知に応じて、前記差分に含まれる識別子に対応付けられているサーバがある場合に、当該サーバに対応する前記フラグを最新でないことを示すフラグに変更するとともに、前記アクセス元サーバを示す情報と、前記差分に含まれる識別子と、最新であることを示す前記フラグとを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項４に記載の分散ファイル管理システム。
【請求項７】
前記各サーバは、さらに、
前記ユーザ要求受信手段が受信した前記ユーザの要求が、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求と、電子ファイルを前記サーバに保持させる要求である書込要求とのいずれであるかを判断する要求種別判断手段と、
要求種別判断手段が前記取得要求であると判断した場合に、前記取得要求に係る電子ファイルの保持サーバがいずれであるかを、分散ファイル管理装置に問い合わせる保持サーバ問合手段とを備え、
前記問合受付手段は、取得要求を受け付けた前記アクセス元サーバが備える保持サーバ問合手段から、当該取得要求に係る電子ファイルの保持サーバがいずれであるかという問合せを受け付ける
ことを特徴とする請求項１から請求項６までのいずれか１項に記載の分散ファイル管理システム。
【請求項８】
前記ファイル記憶制御手段は、さらに、前記要求種別判断部が前記書込要求と判断した場合に、前記ユーザ要求受信手段が受信した前記書込要求に係る電子ファイルを前記ファイル記憶手段に書き込む
ことを特徴とする請求項７に記載の分散ファイル管理システム。
【請求項９】
前記各サーバは、
さらに、前記要求種別判断手段が前記書込要求であると判断した場合に、前記書込要求に係る電子ファイルの書き込みに関連する処理を排除するロックの要求と前記ロックを解除する要求とを、分散ファイル管理装置に送信するロック要求送信手段を備え、
前記分散ファイル管理装置は、
さらに、ロックすべき電子ファイルを識別するための情報であるロック情報を保持するロック情報保持手段と、
前記ロック要求送信手段から前記ロック要求またはロック解除要求を受け付け、前記ロックの要求を受け付けた場合に、当該ロックの要求に係る前記ロック情報を前記ロック情報保持手段に保持させ、前記ロック解除の要求を受け付けた場合に、当該ロック解除の要求に係る前記ロック情報を前記ロック情報保持手段から削除するロック要求受信手段とを備え、
前記保持情報更新手段は、前記ロック情報が示す電子ファイルと、前記更新通知受付手段が受け付けた通知の前記差分が示す電子ファイルとが同一である場合には、前記ロック情報保持手段が保持している前記ロック情報が削除された後に、前記ファイル保持情報を更新する
ことを特徴とする請求項７または請求項８に記載の分散ファイル管理システム。
【請求項１０】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項１１】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するため、電子ファイルに関連するユーザの要求を受信したサーバであるアクセス元サーバがユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を受信した場合に、前記識別子を含む最新の電子ファイルを保持するサーバである保持サーバがいずれであるかという問合せを、前記アクセス元サーバから受け付ける問合受付ステップと、
前記問合受付ステップにおいて問合せを受け付けた場合に、最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記ユーザ指定の識別子を含む電子ファイルを前記アクセス元サーバに送信する要求であるファイル送信要求を、前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに送信するファイル送信要求ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【請求項１２】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理システムであって、
前記分散ファイル管理システムは、通信回線により接続された、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶部と、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付部と、
前記問合受付部が前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断部と、
前記保持サーバ判断部により保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求部とを備え、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶手段と、
前記ファイル送信要求手段が送信した前記ファイル送信要求を受信するファイル送信要求受信手段と、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶手段から読み出すファイル記憶制御手段と、
前記ファイル記憶制御手段が読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信手段と、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信手段と
、
前記ユーザ要求受信手段が受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信手段が受信した要求が前記書込要求である場合に、前記ファイル記憶制御手段から当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答手段とを備える
ことを特徴とする分散ファイル管理システム。
【請求項１３】
前記分散ファイル管理システムは、通信回線により接続された、前記複数の第１のサーバと、少なくとも１つの第２のサーバと、ユーザが利用する端末とにより構成され、
前記第２のサーバは、
前記ファイルサーバ手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第２の管理装置判定手段とを備える
ことを特徴とする請求項１２に記載の分散ファイル管理システム。
【請求項１４】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記第１の管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有する
ことを特徴とする請求項１２に記載の分散ファイル管理システム。
【請求項１５】
前記第１の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第１の管理装置保持部と、
前記第１のサーバ群が前記管理装置として機能する順序を定めた情報である順位情報を記憶する順位記憶部と、
前記管理装置が前記各第１のサーバおよび前記第２のサーバに前記管理装置であることを通知する管理装置通知部と、
前記管理装置通知部からの通知を受け付ける第１の管理装置通知受付部と、
前記管理装置通知受付部が前記通知を受け付けてから、次の通知を受け付けずに予め定めた時間が経過した場合に、管理装置の変更が必要であると判断する変更判断部と、
前記変更判断部が管理装置の変更が必要であると判断した場合に、前記順位情報を参照することにより、稼動している前記第１のサーバ群の中で最も順位の高い第１のサーバを示す情報を前記第１の管理装置保持部に保持させる管理装置決定部とを有し、
前記第２の管理装置判定手段は、
現在の前記管理装置が前記第１のサーバ群のいずれであるかを示す情報を保持している第２の管理装置保持部と、
前記管理装置通知部からの通知を受け付け、受け付けた前記通知の送信元を示す情報を前記第２の管理装置保持部に保持させる第２の管理装置通知受付部とを有する
ことを特徴とする請求項１３に記載の分散ファイル管理システム。
【請求項１６】
前記変更判断部は、さらに、前記第１の管理装置保持部が保持している情報が示す前記現在の管理装置と、前記第１の管理装置通知受付部が受け付けた前記通知の送信元とが一致しない場合に、管理装置の変更が必要であると判断する
ことを特徴とする請求項１４または請求項１５に記載の分散ファイル管理システム。
【請求項１７】
前記問合受付部は、さらに、ユーザ指定の識別子を含む電子ファイルを前記サーバに保持させる要求である書込要求を受信した前記アクセス元サーバから、当該識別子を含む電子ファイルを保持するサーバがいずれであるかという問合せを受け付け、
保持サーバ判断部は、前記問合受付部が前記書込要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断し、
前記管理装置手段は、さらに、
前記保持サーバ判断部により保持サーバであると判断されたサーバを示す情報を、前記アクセス元サーバに送信する保持応答送信部を有する
ことを特徴とする請求項１２から請求項１６までのいずれか１項に記載の分散ファイル管理システム。
【請求項１８】
前記ファイルサーバ手段は、さらに、
他のサーバの前記ファイル送信部から送信された電子ファイルを受信するファイル受信部を備え、
前記ファイル記憶制御部は、さらに、前記ファイル受信部が受信した電子ファイルを前記ファイル記憶部に書き込む
ことを特徴とする請求項１７に記載の分散ファイル管理システム。
【請求項１９】
前記ファイルサーバ手段は、さらに、
前記ファイル記憶制御部がファイル記憶部に電子ファイルを書き込んだ場合に、書き込みの前後における当該ファイル記憶部の差分を前記第１のサーバ群に通知する更新通知部を備え、
前記管理装置手段は、
前記更新通知部による通知を受け付ける更新通知受付部と
前記更新通知受付部が受け付けた通知に含まれる前記差分により、前記ファイル保持情報を更新する保持情報更新部とを備える
ことを特徴とする請求項１８に記載の分散ファイル管理システム。
【請求項２０】
前記管理装置手段は、さらに、
前記更新通知部は、ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該取得要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付部は前記更新通知手段による通知を受け、
前記保持情報更新部は、前記更新通知受付手段が受け付けた通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを対応付けた情報を追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項１９に記載の分散ファイル管理システム。
【請求項２１】
前記管理装置手段は、さらに、
前記更新通知部は、電子ファイルを前記アクセス元サーバが備えるファイル記憶手段に書き込む要求を前記アクセス元サーバが受け付けたことにより、前記アクセス元サーバが
備えるファイル記憶手段に当該要求に係る電子ファイルが書き込まれた場合に、当該書込要求に係る電子ファイルの識別子を、前記差分として、前記分散ファイル管理装置に通知し、
前記更新通知受付手段は前記更新通知手段による通知を受け、
前記保持情報更新手段は、前記更新通知受付手段が受け付けた、前記ハッシュ値を前記差分に含む通知に応じて、前記アクセス元サーバを示す情報と、前記差分に含まれる電子ファイルの識別子とを追加することにより、前記ファイル保持情報を更新する
ことを特徴とする請求項２０に記載の分散ファイル管理システム。
【請求項２２】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理方法であって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとを含み、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとを含む
ことを特徴とする分散ファイル管理方法。
【請求項２３】
複数のサーバが保持する電子ファイルを管理する分散ファイル管理プログラムであって、
前記分散ファイル管理システムは、通信回線により接続され、複数の第１のサーバと、
前記複数のサーバのいずれか１つのサーバから前記電子ファイルを取得するユーザが利用する端末とにより構成され、
前記各第１のサーバは、
ファイルサーバ手段と、
管理装置手段と、
前記第１のサーバ群と通信することにより、前記第１のサーバ群のいずれが前記管理装置であるかを判定する第１の管理装置判定手段とを備え、
前記管理装置手段は、
最新の電子ファイルを保持するサーバがいずれであるかを示す情報であるファイル保持情報を記憶している保持サーバ記憶ステップと、
ユーザ指定の識別子を含む電子ファイルを前記端末が取得する要求である取得要求を受信した前記アクセス元サーバから、当該識別子を含む最新の電子ファイルを保持するサーバがいずれであるかという問い合わせを受け付ける問合受付ステップと、
前記問合受付ステップにおいて前記取得要求に基づく問合せを受け付けた場合に、前記ファイル保持情報を参照することにより、前記保持サーバがいずれであるかを判断する保持サーバ判断ステップと、
前記保持サーバ判断ステップにおいて保持サーバであると判断されたサーバに、前記ユーザの要求に係る電子ファイルを前記アクセス元サーバへ送信するように要求するファイル送信要求ステップとをコンピュータに実行させ、
前記ファイルサーバ手段は、
前記電子ファイルを記憶しているファイル記憶ステップと、
前記ファイル送信要求ステップにおいて送信した前記ファイル送信要求を受信するファイル送信要求受信ステップと、
前記ファイル送信要求に係る電子ファイルを前記ファイル記憶ステップにおいて読み出すファイル記憶制御ステップと、
前記ファイル記憶制御ステップにおいて読み出した電子ファイルを取得し、取得した当該電子ファイルを前記アクセス元サーバに送信するファイル送信ステップと、
電子ファイルに関連するユーザの要求を、前記端末から受信するユーザ要求受信ステップと、
前記ユーザ要求受信ステップにおいて受信した要求が前記取得要求である場合に、当該取得要求の送信元である端末に当該取得要求に係る電子ファイルを送信し、前記ユーザ要求受信ステップにおいて受信した要求が前記書込要求である場合に、前記ファイル記憶制御ステップにおいて当該書込要求に係る電子ファイルの書込の完了を受けて、書込が完了したことを前記書込要求の送信元である端末に通知するユーザ要求応答ステップとをコンピュータに実行させる
ことを特徴とする分散ファイル管理プログラム。
【国際調査報告】
2008010473.tif 000149
2008010473.tif 000150
2008010473.tif 000151
2008010473.tif 000152
2008010473.tif 000153
2008010473.tif 000154
2008010473.tif 000155