(57)【特許請求の範囲】
【請求項１】
ファイルを管理する文書管理サーバと、
前記ファイルを格納する複数のファイルサーバと、
前記文書管理サーバ及び前記複数のファイルサーバの各々の間で相互にファイルの同期を取るための同期エージェントと、
前記文書管理サーバに前記ファイルの更新、参照を要求し、前記文書管理サーバからの指示に応じて、前記複数のファイルサーバのうち指定されたファイルサーバ上で前記ファイルの更新、参照を行うクライアントと
を含み、
前記文書管理サーバは、
前記クライアントと前記クライアントが最も高速にアクセス可能なファイルサーバとの対応関係を示す対応テーブルと、
前記ファイルの前記複数のファイルサーバへの配置状態を表すファイル配置レコードを保持するファイル配置テーブルと、
前記複数のファイルサーバ、前記同期エージェント、及び前記クライアントからのファイル入出力要求を制御するファイル入出力制御部と
を具備し、
前記ファイル配置レコードは、
前記ファイルを示すファイル名の情報と、
前記ファイルが配置されているファイルサーバを示すファイルサーバ名の情報と、
前記複数のファイルサーバに配置されている同じファイルの中で最後に更新されたファイルと内容が同じ場合は“最新”である旨、最後に更新されたファイルと内容が異なる場合は“過去”である旨を表す最新フラグの情報と、
前記複数のファイルサーバに配置されている同じファイルの中で更新可能なものを１つに限定するために使用され、当該ファイル配置レコードが更新権のあるファイルに対応するレコードの場合は“有”である旨、当該ファイル配置レコードが更新権のあるファイルに対応しないレコードの場合は“無”である旨を示す更新権の有無の情報と
を保持し、
前記ファイル入出力制御部は、
前記クライアントから前記ファイルの更新、参照の要求を受けた際、前記対応テーブルを参照して、前記クライアントに対応するファイルサーバを選択し、
前記選択されたファイルサーバと前記ファイルとに基づいて、前記ファイル配置テーブルを参照し、該当するファイル配置レコードを検索する手段と、
前記検出されたファイル配置レコードを参照し、前記選択されたファイルサーバに前記ファイルの更新権があるか確認する手段と、
前記選択されたファイルサーバに前記ファイルの更新権がある場合、前記クライアントに対して、前記選択されたファイルサーバ上で前記ファイルの更新、参照を行うように指示する手段と、
前記選択されたファイルサーバから前記ファイルが更新された旨の通知を受けた場合、前記ファイル配置テーブルに対し、前記選択されたファイルサーバ以外で前記ファイルが存在するファイルサーバに対応するレコードの最新フラグを“過去”に更新する手段と
を具備する
文書管理システム。
【請求項２】
請求項１に記載の文書管理システムであって、
前記同期エージェントは、
前記ファイル入出力制御部に指示し、前記ファイル配置テーブルを参照し、前記最新フラグが“過去”のファイル配置レコードを検索する手段と、
前記ファイル入出力制御部に指示し、前記最新フラグが“過去”のファイル配置レコードのうち、前記更新権が“有”のファイル配置レコードを検索する手段と、
前記ファイル入出力制御部に指示し、前記最新フラグが“最新”のファイル配置レコードを検索する手段と、
前記更新権が“有”のファイル配置レコードに示されたファイルサーバに対して、前記最新フラグが“最新”のファイル配置レコードに示されたファイルサーバから前記ファイルを取得するように指示する手段と
を具備する
文書管理システム。
【請求項３】
請求項２に記載の文書管理システムであって、
前記各ファイルサーバは、
前記クライアントにより前記ファイルが更新された場合、前記ファイルが更新された旨を前記文書管理サーバに通知する手段と、
前記同期エージェントからの指示に応じて前記最新のファイルを取得した場合、前記最新のファイルを取得した旨を前記文書管理サーバに通知する手段と
を具備する
文書管理システム。
【請求項４】
請求項１乃至３のいずれか一項に記載の文書管理システムであって、
前記ファイル入出力制御部は、
前記クライアントから、前記更新権の移動元となるファイル配置レコード、及び前記更新権の移動先となるファイル配置レコードの指定を受ける手段と、
前記更新権の移動先となるファイル配置レコードの最新フラグが“最新”かどうか確認する手段と、
前記更新権の移動先となるファイル配置レコードの最新フラグが“最新”である場合、前記更新権の移動元となるファイル配置レコードの更新権の値を“無”に変更し、前記更新権の移動先となるファイル配置レコードの更新権の値を“有”に変更する手段と
を更に具備する
文書管理システム。
【請求項５】
請求項１乃至４のいずれか一項に記載の文書管理システムで、文書管理サーバ、ファイルサーバ、同期エージェント、クライアントのうち少なくとも１つとして使用される計算機。
【請求項６】
クライアントから、ファイルを管理する文書管理サーバに前記ファイルの更新、参照を要求することと、
前記文書管理サーバ上で、対応テーブルに、前記クライアントと、前記ファイルを格納する複数のファイルサーバのうち前記クライアントが最も高速にアクセス可能なファイルサーバとの対応関係を示すことと、
前記文書管理サーバ上で、ファイル配置テーブルに、前記ファイルの前記複数のファイルサーバへの配置状態を表すファイル配置レコードを保持することと、
前記文書管理サーバ上で、前記複数のファイルサーバ、前記同期エージェント、及び前記クライアントからのファイル入出力要求を制御することと、
前記文書管理サーバ上で、前記ファイル配置レコードに、前記ファイルを示すファイル名の情報と、前記ファイルが配置されているファイルサーバを示すファイルサーバ名の情報と、前記複数のファイルサーバに配置されている同じファイルの中で最後に更新されたファイルと内容が同じ場合は“最新”である旨、最後に更新されたファイルと内容が異なる場合は“過去”である旨を表す最新フラグの情報と、前記複数のファイルサーバに配置されている同じファイルの中で更新可能なものを１つに限定するために使用され、当該ファイル配置レコードが更新権のあるファイルに対応するレコードの場合は“有”である旨、当該ファイル配置レコードが更新権のあるファイルに対応しないレコードの場合は“無”である旨を示す更新権の有無の情報とを保持することと、
前記文書管理サーバ上で、前記クライアントから前記ファイルの更新、参照の要求を受けた際、前記対応テーブルを参照して、前記クライアントに対応するファイルサーバを選択することと、
前記文書管理サーバ上で、前記選択されたファイルサーバと前記ファイルとに基づいて、前記ファイル配置テーブルを参照し、該当するファイル配置レコードを検索することと、
前記文書管理サーバ上で、前記検出されたファイル配置レコードを参照し、前記選択されたファイルサーバに前記ファイルの更新権があるか確認することと、
前記選択されたファイルサーバに前記ファイルの更新権がある場合、前記クライアントに対して、前記選択されたファイルサーバ上で前記ファイルの更新、参照を行うように指示することと、
前記クライアント上で、前記文書管理サーバからの指示に応じて、前記ファイルを格納する複数のファイルサーバのうち指定されたファイルサーバ上で前記ファイルの更新、参照を行うことと、
同期エージェントにより、前記文書管理サーバ及び前記複数のファイルサーバの各々の間で相互にファイルの同期を取ることと、
前記文書管理サーバ上で、前記選択されたファイルサーバから前記ファイルが更新された旨の通知を受けた場合、前記ファイル配置テーブルに対し、前記選択されたファイルサーバ以外で前記ファイルが存在するファイルサーバに対応するレコードの最新フラグを“過去”に更新することと
を含む
文書管理方法。
【請求項７】
請求項６に記載の文書管理方法であって、
前記同期エージェントにより、
前記ファイル入出力制御部に指示し、前記ファイル配置テーブルを参照し、前記最新フラグが“過去”のファイル配置レコードを検索することと、
前記ファイル入出力制御部に指示し、前記最新フラグが“過去”のファイル配置レコードのうち、前記更新権が“有”のファイル配置レコードを検索することと、
前記ファイル入出力制御部に指示し、前記最新フラグが“最新”のファイル配置レコードを検索することと、
前記更新権が“有”のファイル配置レコードに示されたファイルサーバに対して、前記最新フラグが“最新”のファイル配置レコードに示されたファイルサーバから前記ファイルを取得するように指示することと
を更に含む
文書管理方法。
【請求項８】
請求項７に記載の文書管理方法であって、
前記各ファイルサーバ上で、
前記クライアントにより前記ファイルが更新された場合、前記ファイルが更新された旨を前記文書管理サーバに通知することと、
前記同期エージェントからの指示に応じて前記最新のファイルを取得した場合、前記最新のファイルを取得した旨を前記文書管理サーバに通知することと
を更に含む
文書管理方法。
【請求項９】
請求項６乃至８のいずれか一項に記載の文書管理方法であって、
前記文書管理サーバ上で、
前記クライアントから、前記更新権の移動元となるファイル配置レコード、及び前記更新権の移動先となるファイル配置レコードの指定を受けることと、
前記更新権の移動先となるファイル配置レコードの最新フラグが“最新”かどうか確認することと、
前記更新権の移動先となるファイル配置レコードの最新フラグが“最新”である場合、前記更新権の移動元となるファイル配置レコードの更新権の値を“無”に変更し、前記更新権の移動先となるファイル配置レコードの更新権の値を“有”に変更することと
を更に含む
文書管理方法。
【請求項１０】
請求項６乃至９のいずれか一項に記載の文書管理方法における文書管理サーバ、ファイルサーバ、同期エージェント、及びクライアントのうち少なくとも１つの動作を、計算機に実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、文書管理システムに関し、特に実体ファイルの分散管理を行う文書管理システムに関する。
【背景技術】
【０００２】
従来の文書管理システムでは、文書番号やタイトルなどの文書管理属性と文書が保有する実体ファイルを１つのサーバに配置するか、文書管理属性管理用のサーバと実体ファイル格納用のサーバに別々に配置する。実体ファイル格納用のサーバが複数ある場合でも、あるファイルはどれか１つのサーバ上にしか存在しない。このため、この従来技術には、以下のような問題点があった。
【０００３】
第１の問題点は、クライアントと実体ファイル格納用のサーバ間のネットワーク性能が低い場合、サイズの大きいファイルを参照、更新する際に、操作レスポンス劣化とネットワークの高負荷が発生することである。
【０００４】
第２の問題点は、第１の問題点を解決するために、複数のファイルサーバ上に同一ファイルを冗長に配置可能にした場合、それぞれのファイルサーバ上で同一ファイルが別々に更新されることによって不整合が発生することである。
【０００５】
第３の問題点は、第２の問題点の解決するために、ファイル更新時に複数のファイルサーバ上の同一ファイルを全て同様に更新するとした場合、操作レスポンスとネットワークの高負荷が発生することである。
【０００６】
第４の問題点は、第２、第３の問題点を解決するために、１つのファイルにつき、ファイルを更新可能なファイルサーバを１箇所に限定するとした場合、クライアントとそのファイルサーバ間のネットワーク性能が低い場合、ファイル更新時の操作レスポンス劣化が発生することである。
【０００７】
従って、いずれのシステム構成にしても、クライアントと実体ファイル格納用のサーバ間のネットワーク性能が低い場合、サイズの大きいファイルを参照、更新する際に、操作レスポンス劣化とネットワーク高負荷の問題が発生する。
【０００８】
文書管理システムから分散ファイルシステムまで対象を広げると、特開２０００−０６６９４１号公報（特許文献１）に、ネットワーク上で同一ファイルを複数のファイルサーバに配置して論理レコード単位で更新を同期するシステムの一例が記載されている。
ここで開示されている分散ファイル更新システムは、一つの通信網に分散して接続される複数のファイルサーバが、それぞれにクライアントを収容し、且つ、前記複数のファイルサーバにおけるデータファイルのファイル内容を一致させる更新処理を行う。この分散ファイル更新システムでは、前記クライアントが、イベント発生時の追加、変更、削除によって更新した論理レコード及び更新フラグを、収容先のファイルサーバに送信する。前記複数のファイルサーバは、それぞれが受信した更新が、追加の場合にデータファイルに論理レコード及び更新フラグを格納し、変更の場合にデータファイルの該当する論理レコードと置換する。また、更新フラグをデータファイルに格納し、削除の場合にデータファイルの該当する論理レコードに更新フラグを格納する。その後、前記複数のファイルサーバ間で前記通信網を通じ、データファイルにおける更新した論理レコード及び更新フラグのみを送受信して、データファイルのファイル内容を一致させる更新処理を実行する。
【０００９】
しかし、文書管理システムでは、クライアント側でのファイルの編集と編集したファイルの文書管理システムへの登録は独立した処理であることが前提であるため、文書管理システムにファイルが格納される際には、特開２０００−０６６９４１号公報など分散ファイルシステムにあるようなレコード単位の更新ではなく、必ずファイル全体の更新となる。従って、上記の分散ファイルシステムは、文書管理システムには適用できない。
【００１０】
関連する技術として、特開平１０−０６３５５７号公報（特許文献２）に分散ファイルの同期方式が開示されている。
この分散ファイルの同期方式は、ファイルの集合全体を管理するセンタコンピュータと、このセンタコンピュータと間欠的に接続され一部分のファイルのコピーを分散して持つローカルコンピュータと、前記センタコンピュータ及び前記ローカルコンピュータ上にスタンドアロン用のファイル操作手段とファイル管理テーブルとを備え、前記センタコンピュータ及び前記ローカルコンピュータのそれぞれでファイルの生成，更新及び削除を非同期に行うコンピュータシステムを用いる。また、このコンピュータシステムにおいて、ファイル実体の一つ一つを識別するために識別子を付け、そのファイル実体の状態として新規，内容変更，パス名変更，削除，保管等を管理する拡張ファイル管理テーブルと、上位プログラムからのファイル操作指示を検出し、ファイルの状態変化を前記拡張ファイル管理テーブルに反映する拡張ファイル操作手段と、前記センタコンピュータと前記ローカルコンピュータとを接続する通信手段と、前記センタコンピュータ及び前記ローカルコンピュータの前記拡張ファイル管理テーブルの内容を前記通信手段を通して入手して比較し、相互のファイルの状態変更を同期させるための処理を決定し、必要なだけのデータ交換を前記通信手段を通して実行する同期処理手段とを有することを特徴とする。
【００１１】
また、特開２００６−０１８３７０号公報（特許文献３）に文書管理システムが開示されている。
この文書管理システムは、文書管理クライアントと文書管理情報を保存する文書管理サーバと、複数の文書ファイルを保存する文書ファイルサーバを有するクライアントサーバ型の文書管理システムである。また、前記管理サーバが、文書種別に応じた複数の管理レベルを格納した文書別管理レベルテーブルと、複数のユーザＩＤに対応した管理レベル及び更新通知先とを格納したユーザ管理テーブルと、複数の文書ファイルに対応した文書種別とファイル保管場所とファイル更新日時と管理者承認日時とを格納した文書情報管理テーブルとを備える。更に、入力された文書種別を基に文書別管理レベルテーブルを参照して求めた管理レベルに比して高度な管理レベルのユーザＩＤに対応した更新通知先を前記文書管理テーブルに格納する。
【００１２】
【特許文献１】特開２０００−０６６９４１号公報
【特許文献２】特開平１０−０６３５５７号公報
【特許文献３】特開２００６−０１８３７０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１３】
本発明の目的は、クライアントと実体ファイル格納用のサーバ間のネットワーク性能が低い場合、サイズの大きいファイルを参照、更新する際に、操作レスポンス劣化とネットワーク高負荷の問題が発生するのを抑制する文書管理システムを提供することである。
【課題を解決するための手段】
【００１４】
以下に、［発明を実施するための最良の形態］で使用される番号を括弧付きで用いて、課題を解決するための手段を説明する。これらの番号は、［特許請求の範囲］の記載と［発明を実施するための最良の形態］との対応関係を明らかにするために付加されたものである。但し、それらの番号を、［特許請求の範囲］に記載されている発明の技術的範囲の解釈に用いてはならない。
【００１５】
本発明の文書管理システムは、文書管理サーバ（１）と、第１ファイルサーバ（２）及び第２ファイルサーバ（３）を含む複数のファイルサーバ（２，３）と、クライアント（４）とを有する。
前記文書管理サーバ（１）は、文書を表す文書レコードを保持する文書テーブル（１１）と、前記文書に対応するファイルを表すファイル定義レコードを保持するファイル定義テーブル（１２）と、前記ファイルの前記複数のファイルサーバ（２，３）の各々への配置状態を表すファイル配置レコードを保持するファイル配置テーブル（１３）と、前記各ファイルサーバ（２，３）を表すファイルサーバ管理レコードを保持するファイルサーバ管理テーブル（１４）と、前記クライアント（４）から最も高速にアクセス可能なファイルサーバのファイルサーバ名を保持するクライアントサーバ対応テーブル（１５）と、前記各ファイルサーバ（２，３）及び前記クライアント（４）からのファイル入出力要求を制御するファイル入出力制御部とを具備する。
前記各ファイルサーバ（２，３）は、前記ファイルを前記文書用のフォルダ配下に配置しているファイル格納領域と、前記ファイル格納領域に前記ファイルの格納を行うファイル格納部とを具備する。
前記ファイル入出力制御部は、前記クライアント（４）からの前記ファイルに該当するファイル定義レコードの指定に基づき、前記クライアントサーバ対応テーブル（１５）を検索して前記第１ファイルサーバ（２）を選択し、且つ、前記ファイル配置テーブル（１３）上で、前記ファイルと前記第１ファイルサーバ（２）の組み合わせに一致する前記ファイル配置レコードを検索し、且つ、前記ファイル配置レコードの最新フラグの値が最新かどうか調べ、前記最新フラグの値が最新の場合、前記ファイルサーバ管理テーブル（１４）を参照して、前記第１ファイルサーバ（２）のネットワークアドレスを前記クライアント（４）に返却する。
前記クライアント（４）は、前記第１ファイルサーバ（２）のネットワークアドレスに基づき、前記第１ファイルサーバ（２）に前記ファイルの取り出しを要求する。
前記第１ファイルサーバ（２）は、前記ファイル格納領域にある前記ファイルを前記クライアント（４）に返却する。
【００１６】
前記ファイル入出力制御部（１６）は、前記クライアント（４）からの前記ファイルに該当するファイル定義レコードの指定に基づき、前記クライアントサーバ対応テーブル（１５）を検索し、前記第１ファイルサーバ（２）を選択し、且つ、前記ファイル配置テーブル（１３）上で、前記ファイルと前記第１ファイルサーバ（２）の組み合わせに一致する前記ファイル配置レコードを検索する。また、、前記ファイル配置テーブル（１３）を参照し、前記第１ファイルサーバ（２）に前記ファイルの更新権があるかどうか調べ、更新権がある場合、前記ファイルサーバ管理テーブル（１４）を参照して、前記第１ファイルサーバ（２）のネットワークアドレスを前記クライアント（４）に返却する。
前記クライアント（４）は、前記第１ファイルサーバ（２）のネットワークアドレスに基づき、前記第１ファイルサーバ（２）に前記ファイルの格納を要求する。
前記第１ファイルサーバ（２）は、前記クライアント（４）から前記ファイルを前記ファイル格納領域（２１）に保存した後、前記ファイル入出力制御部（１６）に前記ファイルの格納が終了したことを通知する。
前記ファイル入出力制御部（１６）は、前記ファイル配置テーブル（１３）に、前記第１ファイルサーバ（２）以外のファイルサーバ（３）上の前記ファイルが最新でなくなったことを記録する。
【００１７】
本発明の文書管理システムは、一定時間おき、又は不定期に前記文書管理サーバ（１）内の情報を検索し、前記各ファイルサーバ上に最新でないファイルがないかを調べる同期エージェント（６）とを更に有する。
前記同期エージェント（６）は、前記第１ファイルサーバ（２）以外のファイルサーバ（３）上の該当するファイルが最新の状態でないことを検出すると、前記第１ファイルサーバ（２）以外のファイルサーバ（３）に、最新のファイルを前記第１ファイルサーバ（２）からコピーするように指示する。
前記第１ファイルサーバ（２）以外のファイルサーバ（３）は、前記第１ファイルサーバ（２）から前記最新のファイルをコピーして前記第１ファイルサーバ（２）以外のファイルサーバ（３）上の該当するファイルを更新し、前記最新のファイルのコピーが終わると、前記最新のファイルがコピーされたことを前記文書管理サーバ（１）に通知する。
前記文書管理サーバ（１）は、前記第１ファイルサーバ（２）以外のファイルサーバ（３）上の該当するファイルが最新の状態になったことを記録する。
【００１８】
前記文書管理サーバ（１）は、前記第１ファイルサーバ（２）以外のファイルサーバ（３）上のファイルが最新の状態になる前に、前記クライアント（４）が前記文書管理サーバ（１）に前記ファイルの参照を要求した場合、前記第１ファイルサーバ（２）から前記第１ファイルサーバ（２）以外のファイルサーバ（３）に前記最新のファイルをコピーした後取り出すか、前記第１ファイルサーバ（２）から前記最新のファイルを直接取り出すかを選択するよう前記クライアント（４）に指示する。
【００１９】
前記文書レコードは、文書ＩＤを保持する。
前記ファイル定義レコードは、文書ＩＤ、ファイル名を保持する。
前記ファイル配置レコードは、文書ＩＤ、ファイル名、ファイルサーバ名、最新フラグ、更新権の有無を保持する。
最新フラグは、前記複数のファイルサーバ（２，３）に配置されている同じファイルの中で最後に更新されたファイルとの相違を表する。最後に更新されたファイルと内容が同じ場合は「最新」、異なる場合は「過去」を保持する。
更新権の有無は、前記複数のファイルサーバ（２，３）に配置されている同じファイルの中で更新可能なものを１つに限定するのに使用する。更新権のあるファイルに対応するファイル配置レコードの場合は「有」を保持する。それ以外の場合は「無」を保持する。
前記ファイルサーバ管理レコードは、ファイルサーバ名、ネットワークアドレスを保持する。
【００２０】
前記文書管理サーバ（１）は、前記ファイルを更新可能なファイルサーバを表すファイル所在レコードを保持するファイル所在テーブル（１７）とを更に具備する。
前記ファイル所在レコードは、文書ＩＤ、ファイルサーバ名、更新権の有無を保持する。
【００２１】
本発明の他の文書管理サーバ（１）は、文書を表す文書レコードを保持する文書テーブル（１１）と、前記文書に対応するファイルを表すファイル定義レコードを保持するファイル定義テーブル（１２）と、前記ファイルの複数のファイルサーバ（２，３）の各々への配置状態を表すファイル配置レコードを保持するファイル配置テーブル（１３）と、前記各ファイルサーバを表すファイルサーバ管理レコードを保持するファイルサーバ管理テーブル（１４）と、クライアント（４）から最も高速にアクセス可能なファイルサーバのファイルサーバ名を保持するクライアントサーバ対応テーブル（１５）と、前記各ファイルサーバ及び前記クライアント（４）からのファイル入出力要求を制御するファイル入出力制御部（１６）と、一定時間おき、又は不定期に前記ファイル配置テーブル（１３）を検索し、最新でなくなった前記ファイルがないかを調べる同期エージェント（６）とを具備する。
前記複数のファイルサーバ（２，３）は、第１ファイルサーバ（２）及び第２ファイルサーバ（３）を含む。
前記同期エージェント（６）は、前記第１ファイルサーバ（２）に最新でないファイルが存在することを検出すると、前記第１ファイルサーバ（２）に、最新のファイルを前記第２ファイルサーバ（３）からコピーするように指示する。
前記ファイル入出力制御部（１６）は、前記第１ファイルサーバ（２）から前記最新のファイルをコピーしたことを通知された時、前記第１ファイルサーバ（２）上の該当するファイルが最新になったことを前記ファイル配置テーブル（１３）に記録する。
【００２２】
本発明の文書管理方法及びプログラムは、（ａ１）第１クライアント（４）が、文書管理サーバ（１）に、更新するファイルに該当するファイル定義レコードを指定するステップと、（ａ２）前記文書管理サーバ（１）が、クライアントサーバ対応テーブル（１５）を検索し、第１ファイルサーバ（２）を選択するステップと、（ａ３）前記文書管理サーバ（１）が、ファイル配置テーブル（１３）上で、指定されたファイルと前記第１ファイルサーバ（２）の組み合わせに一致するファイル配置レコードを検索するステップと、（ａ４）前記文書管理サーバ（１）が、前記ファイル配置テーブル（１３）を参照し、前記第１ファイルサーバ（２）に該当する文書配下のファイルの更新権があるかどうか調べるステップと、（ａ５）更新権がある場合、前記文書管理サーバ（１）が、ファイルサーバ管理テーブル（１４）を参照して、前記第１ファイルサーバ（２）のネットワークアドレスを前記第１クライアント（４）に返却するステップと、（ａ６）前記第１クライアント（４）が、返却されたネットワークアドレスにある前記第１ファイルサーバ（２）にファイルの格納を要求するステップと、（ａ７）前記第１ファイルサーバ（２）が、前記第１クライアント（４）から送信されたファイルをファイル格納領域（２１）に保存した後、前記文書管理サーバ（１）にファイルの格納が終了したことを通知するステップと、（ａ８）前記文書管理サーバ（１）が、前記ファイル配置テーブル（１３）上で、更新されたファイルと同じファイルで、前記第１ファイルサーバ（２）以外に配置されているものに該当するレコードの最新フラグの値を「過去」に更新するステップと、（ａ９）更新権がない場合、前記文書管理サーバ（１）が、前記第１クライアント（４）からのファイル更新要求をエラーとするステップとを具備する。
【００２３】
本発明の文書管理方法及びプログラムは、（ｂ１）同期エージェント（６）が、前記文書管理サーバ（１）に、前記ファイル配置テーブル（１３）内で最新フラグの値が「過去」のファイル配置レコードを検索するよう指示するステップと、（ｂ２）前記文書管理サーバ（１）が、条件に一致するレコードを返却するステップと、（ｂ３）前記同期エージェント（６）が、前記文書管理サーバ（１）から返却されたレコードごとに、繰り返し以下の処理を行うステップと、（ｂ４）前記同期エージェント（６）が、返却されたファイル配置レコードが保持する第２ファイルサーバ（３）のファイルサーバ名を指定して、前記文書管理サーバ（１）から前記ネットワークアドレスを取得するステップと、
（ｂ５）前記同期エージェント（６）が、更新権があるファイルが存在するファイルサーバを検索するよう、前記文書管理サーバ（１）に指示するステップと、（ｂ６）前記文書管理サーバ（１）が、前記ファイル配置テーブル（１３）を検索して、更新権があるファイルが前記第１ファイルサーバ（２）上に存在することを検出するステップと、（ｂ７）前記文書管理サーバ（１）が、前記ファイルサーバ管理テーブル（１４）から前記第１ファイルサーバ（２）のネットワークアドレスを取得して、前記同期エージェント（６）に返却するステップと、（ｂ８）前記同期エージェント（６）が、返却されたネットワークアドレスにある前記第２ファイルサーバ（３）に、同期をとるべきファイルとコピー元となる前記第１ファイルサーバ（２）のネットワークアドレスを指定して、ファイルのコピーを要求するステップと、（ｂ９）前記第２ファイルサーバ（３）が、前記第１ファイルサーバ（２）にファイルの取り出しを要求するステップと、（ｂ１０）前記第１ファイルサーバ（２）が、指定されたファイルを前記第２ファイルサーバ（３）に返却するステップと、（ｂ１１）前記第２ファイルサーバ（３）が、受け取ったファイルをファイル格納領域（２１）に保存した後、前記文書管理サーバ（１）にファイルのコピーが終了したことを通知するステップと、（ｂ１２）前記文書管理サーバ（１）が、前記ファイル配置テーブル（１３）上で、コピー先に該当するファイル配置レコードの最新フラグの値を「最新」に更新するステップとを更に具備する。
【００２４】
本発明の文書管理方法及びプログラムは、（ｃ１）前記第２クライアント（４）は前記文書管理サーバ（１）に、参照するファイルに該当するファイル定義レコードを指定するステップと、（ｃ２）前記文書管理サーバ（１）が、前記クライアントサーバ対応テーブル（１５）を検索し、前記第２ファイルサーバ（３）を選択するステップと、（ｃ３）前記文書管理サーバ（１）が、前記ファイル配置テーブル（１３）上で、指定されたファイルと前記第２ファイルサーバ（３）の組み合わせに一致するファイル配置レコードを検索するステップと、（ｃ４）前記文書管理サーバ（１）が、ファイル配置レコードの最新フラグの値が最新かどうか調べるステップと、（ｃ５）ファイルが最新の場合、前記文書管理サーバ（１）が、前記ファイルサーバ管理テーブル（１４）を参照して、前記第２ファイルサーバ（３）のネットワークアドレスを前記第２クライアント（４）に返却するステップと、（ｃ６）前記第２クライアント（４）が、返却されたネットワークアドレスにある前記第２ファイルサーバ（３）に、ファイルの取り出しを要求するステップと、（ｃ７）前記第２ファイルサーバ（３）は、ファイル格納領域（３１）にある指定されたファイルを前記第２クライアント（４）に返却するステップと、（ｃ８）ファイルが最新でない場合、前記文書管理サーバ（１）が、前記第２クライアント（４）にファイルが最新でないことを通知するステップと、（ｃ９）前記第２クライアント（４）が、利用者からの入力に従って、前記第１ファイルサーバ（２）から直接最新のファイルを取り出すか、前記第２ファイルサーバ（３）に最新のファイルをコピーして、そこから取り出すかを選択するステップとを更に具備する。
【００２５】
本発明の文書管理方法及びプログラムは、（ｄ１）前記第１クライアント（４）が、前記文書管理サーバ（１）に、更新権の移動元となるファイル配置レコードと移動先となるファイル配置レコードを指定するステップと、（ｄ２）前記文書管理サーバ（１）が、移動先となるファイル配置レコードの最新フラグの値が「最新」かどうか調べるステップと、（ｄ３）前記文書管理サーバ（１）が、移動先となるファイル配置レコードの最新フラグの値が「最新」の場合、移動元となるファイル配置レコードの更新権の値を「無」に、移動先となるファイル配置レコードの更新権の値を「有」に変更するステップと、（ｄ４）前記文書管理サーバ（１）が、移動先となるファイル配置レコードの最新フラグの値が「過去」の場合、更新権の移動要求をエラーとするステップとを更に具備する。
【００２６】
本発明の文書管理方法及びプログラムは、（ｅ１）第１クライアント（４）が、文書管理サーバ（１）に、更新するファイルに該当するファイル定義レコードを指定するステップと、（ｅ２）前記文書管理サーバ（１）が、前記クライアントサーバ対応テーブル（１５）を検索し、前記第１ファイルサーバ（２）を選択するステップと、（ｅ３）前記文書管理サーバ（１）が、ファイル所在テーブル（１７）上で、該当する文書と前記第１ファイルサーバ（２）の組み合わせに一致するファイル所在レコードを検索するステップと、（ｅ４）前記文書管理サーバ（１）が、前記ファイル所在テーブル（１７）を参照し、前記第１クライアント（４）に該当する文書の更新権があるかどうか調べるステップと、（ｅ５）更新権がある場合、前記文書管理サーバ（１）が、前記ファイルサーバ管理テーブル（１４）を参照して、前記第１ファイルサーバ（２）にファイルの格納を要求するステップと、（ｅ６）前記第１ファイルサーバ（２）が、前記第１クライアント（４）から送信されたファイルをファイル格納領域（２１）に保存した後、前記文書管理サーバ（１）にファイルの格納が終了したことを通知するステップと、（ｅ７）前記文書管理サーバ（１）が、ファイル配置テーブル（１３）上で、更新されたファイルと同じファイルで、前記第１ファイルサーバ（２）以外に配置されているものに該当するレコードの最新フラグの値を「過去」に更新するステップと、（ｅ８）更新権がない場合、前記文書管理サーバ（１）が、前記第１クライアント（４）からのファイル更新要求をエラーとするステップと
を具備する。
【００２７】
本発明の文書管理方法及びプログラムは、（ｆ１）前記第１クライアント（４）が、前記文書管理サーバ（１）に、更新権の移動元となるファイル所在レコードと移動先となるファイル所在レコードを指定するステップと、（ｆ２）前記文書管理サーバ（１）が、前記移動先となるファイル所在レコードと同じ文書、ファイルサーバの組み合わせを持つファイル配置レコードを前記ファイル配置テーブル（１３）内で検索し、それぞれの最新フラグの値を調べるステップと、（ｆ３）前記最新フラグの値が「最新」かどうか調べるステップと、（ｆ４）検索した全てのファイル配置レコードにおいて、前記最新フラグの値が「最新」である場合、移動元となるファイル所在レコードの更新権の値を「無」に、移動先となるファイル所在レコードの更新権の値を「有」に変更するステップと、（ｆ５）前記検索した全てのファイル配置レコードの中に前記最新フラグの値が「過去」のものがあった場合、更新権の移動要求をエラーとするステップとを更に具備する。
【００２８】
本発明の文書管理方法及びプログラムは、（Ａ１）文書を表す文書レコードを保持するステップと、（Ａ２）前記文書ごとに保有するファイルを表すファイル定義レコードを保持するステップと、
（Ａ３）夫々のファイルのファイルサーバへの配置状態を表すファイル配置レコードを保持するステップと、（Ａ４）前記ファイルサーバを表すファイルサーバ管理レコードを保持するステップと、（Ａ５）クライアント（４）ごとにネットワーク上最も高速にアクセス可能なファイルサーバのファイルサーバ名を保持するステップと、（Ａ６）前記ファイルサーバ及び前記クライアント（４）からのファイル入出力要求を制御するステップと、（Ａ７）一定時間おき、又は不定期に前記ファイル配置テーブル（１３）を検索し、最新でなくなった前記ファイルがないかを調べるステップと、（Ａ８）第１ファイルサーバ（２）に最新でないファイルが存在することを検出すると、前記第１ファイルサーバ（２）に、更新されたファイルを第２ファイルサーバ（３）からコピーするように指示するステップと、（Ａ９）前記第１ファイルサーバ（２）から前記更新されたファイルをコピーしたことを通知された時、前記第１ファイルサーバ（２）上の該当するファイルが最新になったことを記録するステップとを具備する。
【発明の効果】
【００２９】
第一の効果は、クライアントがファイルの更新、参照を実行する際に、クライアントに近いファイルサーバとの間で入出力を行うため、１つのファイルサーバでファイルを一元管理する方式に比べて、操作レスポンスが速く、ネットワーク負荷が低いという点である。
第二の効果は、クライアントがファイルの更新を実行する際に、特定のファイルサーバ上でファイルの更新が完了した時点でクライアント側に制御が戻り、他のファイルサーバ上の該当するファイルの更新はその時点では実行されないため、同じファイルを複数のファイルサーバに配置していても更新時の操作レスポンスが劣化しないという点である。
第三の効果は、更新権を有することよって、複数のファイルサーバに配置された同じファイルが、別々に更新されるのを禁止できるという点である。
第四の効果は、更新権の移動によって、複数のファイルサーバに配置された同じファイルは、オリジナル、コピーの区別なく、どのファイルサーバ上でも更新できるという点である。
【発明を実施するための最良の形態】
【００３０】
以下に本発明の第１実施形態について添付図面を参照して説明する。
図１では、本実施形態におけるシステム構成を示す。
本発明の文書管理システムは、文書管理サーバ１と、複数のファイルサーバ２、３と、複数のクライアント４、５と、同期エージェント６を有する。
【００３１】
文書管理サーバ１は、文書テーブル１１と、ファイル定義テーブル１２と、ファイル配置テーブル１３と、ファイルサーバ管理テーブル１４と、クライアント−ファイルサーバ対応テーブル１５と、ファイル入出力制御部１６を備えている。
【００３２】
文書テーブル１１は、文書を表す文書レコードを保持する。文書レコードは、文書ＩＤ、タイトル、作成者等を保持する。
【００３３】
ファイル定義テーブル１２は、文書ごとに保有するファイルを表すファイル定義レコードを保持する。ファイル定義レコードは、文書ＩＤ、ファイル名を保持する。
【００３４】
ファイル配置テーブル１３は、それぞれのファイルのファイルサーバ２、３への配置状態を表すファイル配置レコードを保持する。ファイル配置レコードは、文書ＩＤ、ファイル名、ファイルサーバ名、最新フラグ、更新権の有無を保持する。最新フラグは、複数のファイルサーバ２、３に配置されている同じファイルの中で最後に更新されたファイルとの相違を表す。最後に更新されたファイルと内容が同じ場合は「最新」、異なる場合は「過去」を保持する。更新権の有無は、複数のファイルサーバ２、３に配置されている同じファイルの中で更新可能なものを１つに限定するのに使用する。更新権のあるファイルに対応するファイル配置レコードの場合は「有」を保持する。それ以外の場合は「無」を保持する。更新権の有無の値が「有」の場合、最新フラグの値は必ず「最新」であることとする。
【００３５】
ファイルサーバ管理テーブル１４は、文書管理システムを構成するファイルサーバ２、３を表すファイルサーバ管理レコードを保持する。ファイルサーバ管理レコードは、ファイルサーバ名、ネットワークアドレスを保持する。
【００３６】
クライアント−ファイルサーバ対応テーブル１５は、クライアント４、５ごとにネットワーク上最も高速にアクセス可能なファイルサーバのファイルサーバ名を保持する。
【００３７】
ファイル入出力制御部１６は、ファイルサーバ２、３、クライアント４、５、同期エージェント６からのファイル入出力要求を制御する。なお、同期エージェント６は、文書管理サーバ１の内部に含まれていても良い。例えば、ファイル入出力制御部１６が同期エージェント６の機能を有するようにする。この場合、ファイル入出力制御部１６は、ファイルサーバ２、３、クライアント４、５からのファイル入出力要求を制御する。
【００３８】
以降、図１に示すように、ファイルサーバ２、３、及び、クライアント４、５は夫々、ファイルサーバＡ：２、ファイルサーバＢ：３、クライアントＸ：４、クライアントＹ：５として説明する。
【００３９】
ファイルサーバＡ：２は、ファイル格納領域２１と、ファイル格納部２２と、ファイル取り出し部２３と、ファイルコピー部２４を備えている。
【００４０】
ファイル格納領域２１は、文書ごとのフォルダを有する。文書が保有するファイルは各文書用のフォルダ配下に配置される。ファイル格納部２２は、クライアント４、５との間のファイルの格納を行う。なお、ファイル格納部２２は、クライアント４、５から取得したファイルを自動的に、該当する文書用のフォルダに振り分けて格納するようにしても良い。例えば、ファイル名やファイルの内容、取得元のクライアント名に基づいて該当する文書用のフォルダを判断することが考えられる。ファイル取り出し部２３は、クライアント４、５との間のファイルの取り出しを行う。例えば、クライアント４、５からの要求に応じてファイル格納領域２１からファイルの取り出しを行う。また、クライアント４、５が保有するファイルの自動取得を行うようにしても良い。ファイルコピー部２４は、ファイルサーバ２、３間のファイルのコピーを行う。
【００４１】
ファイルサーバＢ：３は、ファイル格納領域３１と、ファイル格納部３２と、ファイル取り出し部３３と、ファイルコピー部３４を備えている。
【００４２】
ファイル格納領域３１は、文書ごとのフォルダを有する。文書が保有するファイルは各文書用のフォルダ配下に配置される。ファイル格納部３２は、クライアント４、５との間のファイルの格納を行う。なお、ファイル格納部３２は、クライアント４、５から取得したファイルを自動的に、該当する文書用のフォルダに振り分けて格納するようにしても良い。例えば、ファイル名やファイルの内容、取得元のクライアント名に基づいて該当する文書用のフォルダを判断することが考えられる。ファイル取り出し部３３は、クライアント４、５との間のファイルの取り出しを行う。例えば、クライアント４、５からの要求に応じてファイル格納領域３１からファイルの取り出しを行う。また、クライアント４、５が保有するファイルの自動取得を行うようにしても良い。ファイルコピー部３４は、ファイルサーバ２、３間のファイルのコピーを行う。
【００４３】
クライアントＸ：４が所定のファイルの参照を文書管理サーバ１に要求すると、文書管理サーバ１は、クライアントＸ：４にファイルサーバＡ：２から参照するように指示する。クライアントＸ：４は、ファイルサーバＡ：２からファイルを取り出す。
【００４４】
クライアントＸ：４が所定のファイルの更新を文書管理サーバ１に要求すると、文書管理サーバ１は、クライアントＸ：４にファイルサーバＡ：２で更新するように指示する。クライアントＸ：４は、ファイルサーバＡ：２にファイルを格納する。ファイルの更新が終わると、ファイルサーバＡ：２は、文書管理サーバ１にファイルが更新されたことを通知する。文書管理サーバ１は、ファイルサーバＢ：３上の該当するファイルが最新でなくなったことを記録する。ファイルサーバＢ：３上の該当するファイルは、この時点では更新しない。
【００４５】
同期エージェント６は、一定時間おき、又は不定期に文書管理サーバ１内の情報を検索し、最新でなくなったファイルがないかを調べる。同期エージェント６は、ファイルサーバＢ：３に最新でないファイルが存在することを検出すると、ファイルサーバＢ：３に、更新されたファイルをファイルサーバＡ：２からコピーするように指示する。ファイルサーバＢ：３は、ファイルサーバＡ：２から更新されたファイルを取得して、ファイルサーバＢ：３上のファイルを更新する。ファイルのコピーが終わると、ファイルサーバＢ：３は、文書管理サーバ１にファイルがコピーされたことを通知する。文書管理サーバ１は、ファイルサーバＢ：３上の該当するファイルが最新になったことを記録する。この時、同期エージェント６は、文書管理サーバ１の内部に含まれていても良い。
【００４６】
ファイルサーバＢ：３上のファイルが最新の状態になる前に、クライアントＹ：５が文書管理サーバ１にそのファイルの参照を要求した場合、文書管理サーバ１は、ファイルサーバＡ：２からファイルサーバＢ：３にファイルをコピーした後取り出すか、ファイルサーバＡ：２から直接取り出すかを選択するようクライアントＹ：５に指示する。クライアントＹ：５は利用者からの入力に従って、いずれかの処理を選択する。
【００４７】
図２を参照して、クライアントが文書管理システム上のファイルを更新する場合について説明する。
（１）ステップＳ１１１
クライアントＸ：４は、文書管理サーバ１のファイル入出力制御部１６に、更新するファイルに該当するファイル定義レコードを指定する。
（２）ステップＳ１１２
ファイル入出力制御部１６は、クライアント−ファイルサーバ対応テーブル１５を検索し、ファイルサーバＡ：２を選択する。
（３）ステップＳ１１３
次に、ファイル入出力制御部１６は、ファイル配置テーブル１３上で、指定されたファイルとファイルサーバＡ：２の組み合わせに一致するファイル配置レコードを検索する。
（４）ステップＳ１１４
ファイル入出力制御部１６は、ファイル配置テーブル１３を参照し、ファイルサーバＡ：２に当該指定されたファイルの更新権があるかどうか調べる。この時、ファイル配置テーブル１３は、更新権のあるファイルに対応するファイル配置レコードの場合（更新権がある場合）は「有」を保持する。それ以外のファイル配置レコードの場合（更新権がない場合）は「無」を保持する。
（５）ステップＳ１１５
更新権がある場合、ファイル入出力制御部１６は、ファイルサーバ管理テーブル１４を参照して、ファイルサーバＡ：２のネットワークアドレスをクライアントＸ：４に返却する。
（６）ステップＳ１１６
クライアントＸ：４は、返却されたネットワークアドレスにあるファイルサーバＡ：２のファイル格納部２２にファイルの格納を要求する。
（７）ステップＳ１１７
ファイル格納部２２は、クライアントＸ：４から送信されたファイルをファイル格納領域２１に保存した後、ファイル入出力制御部１６にファイルの格納が終了したことを通知する。
（８）ステップＳ１１８
ファイル入出力制御部１６は、ファイル配置テーブル１３上で、更新されたファイルと同じファイルで、ファイルサーバＡ：２以外に配置されているものに該当するレコードの最新フラグの値を「過去」に更新する。
（９）ステップＳ１１９
更新権がない場合、ファイル入出力制御部１６は、クライアントＸ：４からのファイル更新要求をエラーとする。
【００４８】
図３を参照して、同期エージェントがファイルサーバ間でファイルの内容を同期する場合について説明する。
同期エージェント６は、一定時間おき、又は不定期に以下の処理を行う。
（１）ステップＳ１２１
同期エージェント６は、文書管理サーバ１のファイル入出力制御部１６に、ファイル配置テーブル１３内で最新フラグの値が「過去」のファイル配置レコードを検索するよう指示する。ファイル入出力制御部１６は、条件に一致するレコードを返却する。なお、検索結果は複数件返却される場合がある。
（２）ステップＳ１２２
同期エージェント６は、ファイル入出力制御部１６から返却されたレコードごとに、繰り返し以下の処理を行う。返却されたレコードが全て処理された場合は終了する。
（３）ステップＳ１２３
同期エージェント６は、返却されたファイル配置レコードが保持するファイルサーバＢ：３のファイルサーバ名を指定して、ファイル入出力制御部１６からそのネットワークアドレスを取得する。
（４）ステップＳ１２４
更に、同期エージェント６は、更新権があるファイルが存在するファイルサーバを検索するよう、ファイル入出力制御部１６に指示する。ファイル入出力制御部１６は、ファイル配置テーブル１３を検索して、更新権があるファイルがファイルサーバＡ：２上に存在することを検出する。
（５）ステップＳ１２５
ファイル入出力制御部１６は、更に、ファイルサーバ管理テーブル１４からファイルサーバＡ：２のネットワークアドレスを取得して、同期エージェント６に返却する。
（６）ステップＳ１２６
同期エージェント６は、返却されたネットワークアドレスにあるファイルサーバＢ：３のファイルコピー部３４に、同期をとるべきファイルとコピー元となるファイルサーバＡ：２のネットワークアドレスを指定して、ファイルのコピーを要求する。
（７）ステップＳ１２７
ファイルサーバＢ：３のファイルコピー部３４は、ファイルサーバＡ：２のファイルの取り出し部２３にファイルの取り出しを要求する。
（８）ステップＳ１２８
ファイルサーバＡ：２のファイル取り出し部２３は、指定されたファイルをファイルサーバＢ：３のファイルコピー部３４に返却する。
（９）ステップＳ１２９
ファイルサーバＢ：３のファイルコピー部３４は、受け取ったファイルをファイル格納領域３１に保存した後、ファイル入出力制御部１６にファイルのコピーが終了したことを通知する。
（１０）ステップＳ１３０
ファイル入出力制御部１６は、ファイル配置テーブル１３上で、コピー先に該当するファイル配置レコードの最新フラグの値を「最新」に更新する。
【００４９】
図４を参照して、クライアントが文書管理システム上のファイルを参照する場合について説明する。
（１）ステップＳ１３１
クライアントＹ：５は文書管理サーバ１のファイル入出力制御部１６に、参照するファイルに該当するファイル定義レコードを指定する。
（２）ステップＳ１３２
ファイル入出力制御部１６は、クライアント−ファイルサーバ対応テーブル１５を検索し、ファイルサーバＢ：３を選択する。
（３）ステップＳ１３３
次に、ファイル入出力制御部１６は、ファイル配置テーブル１３上で、指定されたファイルとファイルサーバＢ：３の組み合わせに一致するファイル配置レコードを検索する。
（４）ステップＳ１３４
ファイル入出力制御部１６は、ファイル配置レコードの最新フラグの値が最新かどうか調べる。
（５）ステップＳ１３５
ファイルが最新の場合、ファイル入出力制御部１６は、ファイルサーバ管理テーブル１４を参照して、ファイルサーバＢ：３のネットワークアドレスをクライアントＹ：５に返却する。
（６）ステップＳ１３６
クライアントＹ：５は、返却されたネットワークアドレスにあるファイルサーバＢ：３のファイル取り出し部３３に、ファイルの取り出しを要求する。
（７）ステップＳ１３７
ファイルサーバＢ：３のファイル取り出し部３３は、ファイル格納領域３１にある指定されたファイルをクライアントＹ：５に返却する。
（８）ステップＳ１３８
ファイルが最新でない場合、ファイル入出力制御部１６は、クライアントＹ：５にファイルが最新でないことを通知する。
（９）ステップＳ１３９
クライアントＹ：５は、利用者からの入力に従って、ファイルサーバＡ：２から直接最新のファイルを取り出すか、ファイルサーバＡ：２からファイルサーバＢ：３に最新のファイルをコピーして、そこから取り出すかを選択する。
【００５０】
図５を参照して、クライアントがファイルの更新権を移動する場合について説明する。
（１）ステップＳ１４１
クライアントＸ：４は、文書管理サーバ１のファイル入出力制御部１６に、更新権の移動元となるファイル配置レコードと移動先となるファイル配置レコードを指定する。
（２）ステップＳ１４２
ファイル入出力制御部１６は、移動先となるファイル配置レコードの最新フラグの値が「最新」かどうか調べる。
（３）ステップＳ１４３
ファイル入出力制御部１６は、移動先となるファイル配置レコードの最新フラグの値が「最新」の場合、移動元となるファイル配置レコードの更新権の値を「無」に、移動先となるファイル配置レコードの更新権の値を「有」に変更する。
（４）ステップＳ１４４
ファイル入出力制御部１６は、移動先となるファイル配置レコードの最新フラグの値が「過去」の場合、更新権の移動要求をエラーとする。
【００５１】
以下に本発明の第２実施形態について説明する。
図６を参照すると、本実施形態は、文書管理サーバ１がファイル所在テーブル１７を有する点が第１実施形態と異なる。ファイル所在テーブル１７は、文書ごとにどのファイルサーバ２、３でファイルを更新可能かを表すファイル所在レコードを保持する。ファイル所在レコードは、文書ＩＤ、ファイルサーバ名、更新権の有無を保持する。これに合わせて、ファイル配置テーブル１３内のファイル配置レコードでは、更新権の有無は保持しない。
【００５２】
図７を参照して、クライアントが文書管理システム上のファイルを更新する場合について説明する。
（１）ステップＳ２１１
クライアントＸ：４は文書管理サーバ１のファイル入出力制御部１６に、更新するファイルに該当するファイル定義レコードを指定する。
（２）ステップＳ２１２
ファイル入出力制御部１６は、クライアント−ファイルサーバ対応テーブル１５を検索し、ファイルサーバＡ：２を選択する。
（３）ステップＳ２１３
次に、ファイル入出力制御部１６は、ファイル所在テーブル１７上で、該当する文書とファイルサーバＡ：２の組み合わせに一致するファイル所在レコードを検索する。
（４）ステップＳ２１４
ファイル入出力制御部１６は、ファイル所在テーブル１７を参照し、ファイルサーバＡ：２に、該当する文書配下のファイルの更新権があるかどうか調べる。この時、ファイル所在テーブル１７は、更新権のあるファイルサーバと文書の組み合わせに対応するファイル所在レコードの場合（更新権がある場合）は「有」を保持する。それ以外のファイル所在レコードの場合（更新権がない場合）は「無」を保持する。
（５）ステップＳ２１５
更新権がある場合、ファイル入出力制御部１６は、ファイルサーバ管理テーブル１４を参照して、ファイルサーバＡ：２のネットワークアドレスをクライアントＸ：４に返却する。
（６）ステップＳ２１６
クライアントＸ：４は、返却されたネットワークアドレスにあるファイルサーバＡ：２のファイル格納部２２にファイルの格納を要求する。
（７）ステップＳ２１７
ファイル格納部２２は、クライアントＸ：４から送信されたファイルをファイル格納領域２１に保存した後、ファイル入出力制御部１６にファイルの格納が終了したことを通知する。
（８）ステップＳ２１８
ファイル入出力制御部１６は、ファイル配置テーブル１３上で、更新されたファイルと同じファイルで、ファイルサーバＡ：２以外に配置されているものに該当するレコードの最新フラグの値を「過去」に更新する。
（９）ステップＳ２１９
更新権がない場合、ファイル入出力制御部１６は、クライアントＸ：４からのファイル更新要求をエラーとする。
【００５３】
図８を参照して、クライアントがファイル更新権を移動する場合について説明する。
（１）ステップＳ２２１
クライアントＸ：４は、文書管理サーバ１のファイル入出力制御部１６に、更新権の移動元となるファイル所在レコードと移動先となるファイル所在レコードを指定する。
（２）ステップＳ２２２
ファイル入出力制御部１６は、移動先となるファイル所在レコードと同じ文書、ファイルサーバの組み合わせを持つファイル配置レコードをファイル配置テーブル１３内で検索し、それぞれの最新フラグの値を調べる。
（３）ステップＳ２２３
ファイル入出力制御部１６は、移動先となるファイル所在レコードと同じ文書、ファイルサーバの組み合わせを持つファイル配置レコードの最新フラグの値が「最新」かどうか調べる。
（４）ステップＳ２２４
検索した全てのファイル配置レコードの最新フラグの値が「最新」の場合、移動元となるファイル所在レコードの更新権の値を「無」に、移動先となるファイル所在レコードの更新権の値を「有」に変更する。
（５）ステップＳ２２５
検索した全てのファイル配置レコードの中に最新フラグの値が「過去」のものがあった場合、更新権の移動要求をエラーとする。
【００５４】
本実施形態では、更新権を文書ごとにまとめて設定できるという、操作性に関する効果がある。
【００５５】
なお、各実施形態で説明した動作については、これらの動作を定義したプログラムを諸般のコンピュータに実行させることで実施しても良い。この時、当該プログラムは、コンピュータの記憶装置（メモリ、ハードディスク、記憶媒体）に記憶されており、処理装置（ＣＰＵ）に読み出されて実行される。
【００５６】
本発明は、システムの利用者がネットワーク的に広い範囲に分布している企業の文書管理システム、又は、製造業の設計、生産業務等、ＣＡＤ、動画などサイズの大きいファイルを共有する業務で使用する文書管理システムとしての利用が考えられる。
【００５７】
以上のように、本発明では、文書管理システム内に登録されている文書が保有するファイルをネットワーク上の複数のファイルサーバに冗長に配置し、クライアントに近いファイルサーバを使用してファイルを参照、更新する手段を提供することによって、容量の大きいファイルにアクセスする場合の操作レスポンス、ネットワーク負荷の問題を解決する。
【図面の簡単な説明】
【００５８】
【図１】図１は、本発明の第１の文書管理システムの構成を示すブロック図である。
【図２】図２は、クライアントが文書管理システム上のファイルを更新する場合の動作を示すフローチャートである。
【図３】図３は、同期エージェントがファイルサーバ間でファイルの内容を同期する場合の動作を示すフローチャートである。
【図４】図４は、クライアントが文書管理システム上のファイルを参照する場合の動作を示すフローチャートである。
【図５】図５は、クライアントがファイルの更新権を移動する場合の動作を示すフローチャートである。
【図６】図６は、本発明の第２の文書管理システムの構成を示すブロック図である。
【図７】図７は、クライアントが文書管理システム上のファイルを更新する場合の動作を示すフローチャートである。
【図８】図８は、クライアントがファイル更新権を移動する場合の動作を示すフローチャートである。
【符号の説明】
【００５９】
１…  文書管理サーバ
１１…  文書テーブル
１２…  ファイル定義テーブル
１３…  ファイル配置テーブル
１４…  ファイルサーバ管理テーブル
１５…  クライアント−ファイルサーバ対応テーブル
１６…  ファイル入出力制御部
１７…  ファイル所在テーブル
２…  ファイルサーバ（ファイルサーバＡ）
２１…  ファイル格納領域
２２…  ファイル格納部
２３…  ファイル取り出し部
２４…  ファイルコピー部
３…  ファイルサーバ（ファイルサーバＢ）
３１…  ファイル格納領域
３２…  ファイル格納部
３３…  ファイル取り出し部
３４…  ファイルコピー部
４…  クライアント（クライアントＸ）
５…  クライアント（クライアントＹ）
６…  同期エージェント
【図１】
0004536034.tif 000002
【図２】
0004536034.tif 000003
【図３】
0004536034.tif 000004
【図４】
0004536034.tif 000005
【図５】
0004536034.tif 000006
【図６】
0004536034.tif 000007
【図７】
0004536034.tif 000008
【図８】
0004536034.tif 000009