(57)【要約】【課題】データベースのコンバートを行いつつも、システムを停止しなくてもよいようにして、バージョンアップ時のシステムの停止時間を最小限にする。【解決手段】システムのバージョンアップに際してバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成中であるときに（ステップＳ８１のＹ）、オンラインによる文書管理クライアントから問い合わせがあったときは、その問い合わせに応じて、旧データベースにアクセスして行う問い合わせの実行と、新データベースにアクセスして行う問い合わせの実行とのうち、一方又は双方を実行する（ステップＳ８２）。【選択図】        図１５
2004341777.tif 000002
【特許請求の範囲】
【請求項１】
オンラインによる問い合わせをデータベースにアクセスして実行する処理をコンピュータに行わせるプログラムをバージョンアップする、コンピュータに読み取り可能なプログラムにおいて、
前記バージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート処理と、
前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行処理と、
前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行処理と、
前記コンバート中は前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる問い合わせ分配処理と、
をコンピュータに行わせることを特徴とするプログラム。
【請求項２】
前記バージョンアップにより、コンピュータは、
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのデータベースアクセスモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、
ことを特徴とする請求項１に記載のプログラム。
【請求項３】
前記バージョンアップにより、コンピュータは、
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記データベースアクセスモジュール及び前記データ管理ロジックモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのデータ管理ロジックモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする請求項１に記載のプログラム。
【請求項４】
前記バージョンアップにより、コンピュータは、
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記インターフェースモジュール、前記データ管理ロジックモジュール及び前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのインターフェースモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、
ことを特徴とする請求項１に記載のプログラム。
【請求項５】
前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする請求項１〜４のいずれかの一に記載のプログラム。
【請求項６】
前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行処理の双方に実行させ、
この第１及び第２の問い合わせ実行処理による問い合わせの処理結果をマージするマージ処理をさらにコンピュータに実行させる、ことを特徴とする請求項１〜４のいずれかの一に記載のプログラム。
【請求項７】
前記コンバート処理及び前記問い合わせ分配処理の少なくとも一方は、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする請求項１〜６のいずれかの一に記載のプログラム。
【請求項８】
プログラムを記憶してきる記憶媒体において、
前記プログラムは請求項１〜７のいずれかの一に記載のプログラムであること、を特徴とする記憶媒体。
【請求項９】
オンラインによる問い合わせをデータベースにアクセスして実行するデータベースシステムにおいて、
本システムのバージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート手段と、
前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行手段と、
前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行手段と、
前記コンバート中は前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の一方又は双方に当該問い合わせを実行させる問い合わせ分配手段と、
を備えていることを特徴とするデータベースシステム。
【請求項１０】
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのデータベースアクセスモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、
ことを特徴とする請求項９に記載のデータベースシステム。
【請求項１１】
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記データベースアクセスモジュール及び前記データ管理ロジックモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのデータ管理ロジックモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする請求項９に記載のデータベースシステム。
【請求項１２】
オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、
前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、
前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、
を備え、
前記インターフェースモジュール、前記データ管理ロジックモジュール及び前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、
前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのインターフェースモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、
ことを特徴とする請求項９に記載のデータベースシステム。
【請求項１３】
前記問い合わせ分配手段は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の一方又は双方に実行させる、ことを特徴とする請求項９〜１２のいずれかの一に記載のデータベースシステム。
【請求項１４】
前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の双方に実行させ、
この第１及び第２の問い合わせ実行処理による問い合わせの処理結果をマージするマージ手段をさらに備えている、ことを特徴とする請求項９〜１２のいずれかの一に記載のデータベースシステム。
【請求項１５】
前記コンバート手段及び前記問い合わせ分配手段の少なくとも一方は、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする請求項９〜１４のいずれかの一に記載のデータベースシステム。
【請求項１６】
ネットワークで接続された複数台のサーバを備え、
前記各手段は前記各サーバに分散して設けられていること、
を特徴とする請求項９〜１５のいずれかの一に記載のデータベースシステム。
【請求項１７】
オンラインによる問い合わせをデータベースにアクセスして実行するデータベースアクセス方法において、
前記データベースのシステムのバージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート工程と、
前記コンバート中に前記オンラインによる問い合わせがあったときは、前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行と、前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行とのうち一方又は双方を実行する問い合わせ分配工程と、
を備えていることを特徴とするデータベースアクセス方法。
【請求項１８】
前記問い合わせ分配工程は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせの一方又は双方を実行する、ことを特徴とする請求項１７に記載のデータベースアクセス方法。
【請求項１９】
前記問い合わせ分配工程は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行の双方を実行し、
この第１及び第２の問い合わせの実行による問い合わせの処理結果をマージするマージ工程をさらに備えている、
ことを特徴とする請求項１７に記載のデータベースアクセス方法。
【請求項２０】
前記コンバート工程及び前記問合わせ分配工程の少なくとも一方では、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする請求項１７〜１９のいずれかの一に記載のデータベースアクセス方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、オンラインによる問い合わせをデータベースにアクセスして実行する処理をコンピュータに行わせるプログラムをバージョンアップするためのプログラム、このプログラムを記憶している記憶媒体、並びにオンラインによる問い合わせをデータベースにアクセスして実行するデータベースシステム、及びデータベースアクセス方法に関する。
【０００２】
【従来の技術】
データベースを利用するための情報システムに関し、各クライアント装置において使用されているプログラムのバージョンを自動的に判定して最新バージョンプログラムに書き換えることを目的とした技術が、特許文献１に開示されている。
【０００３】
【特許文献１】
特開２００１−５１８３７公報
【０００４】
【発明が解決しようとする課題】
データベースに文書データを格納して利用する従来の文書管理システムでは、文書管理システムをバージョンアップする場合に、文書データが格納されている旧バージョンのデータベースを新バージョンのデータベースにコンバートする必要がある。このコンバートは、システムのバージョンアップ時に自動的に行われるか、あるいは、専用のツールを実行し行われるが、コンバート中はシステムを停止する必要がある。これをオフラインコンバートと呼ぶ。
【０００５】
しかしながら、オフラインコンバートを行う場合には、データベースに格納されている文書数が多いときに、コンバートに要する時間が非常に長くなり、その間システムを使用することができなくなるという不具合がある。
【０００６】
そこで、バージョンアップの際には現行のデータベースを旧データベースとして維持するとともに、新たに新データベースを作成し、バージョンアップ時以降に更新若しくは新規登録された文書のみを新データベースに保存し、新データベース、旧データベースのいずれか又は両方にアクセスして問い合わせを処理するようにすれば、旧データベースを新データベースにコンバートすることなく旧データベースを利用できるので、バージョンアップの際のシステムの停止時間を最小限とすることができる。
【０００７】
しかし、この場合には、新データベースの機能を使用するときには、システムを停止した状態で旧データベースを新データベースにオフラインコンバートする必要があり、この場合にはシステムを停止しなければならないという不具合がある。
【０００８】
本発明の目的は、データベースのコンバートを行いつつも、システムを停止しなくてもよいようにして、バージョンアップ時のシステムの停止時間を最小限にすることである。
【０００９】
【課題を解決するための手段】
請求項１に記載の発明は、オンラインによる問い合わせをデータベースにアクセスして実行する処理をコンピュータに行わせるプログラムをバージョンアップする、コンピュータに読み取り可能なプログラムにおいて、前記バージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート処理と、前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行処理と、前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行処理と、前記コンバート中は前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる問い合わせ分配処理と、をコンピュータに行わせることを特徴とするプログラムである。
【００１０】
したがって、データベースのコンバートを行いつつも、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００１１】
請求項２に記載の発明は、請求項１に記載のプログラムにおいて、前記バージョンアップにより、コンピュータは、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのデータベースアクセスモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００１２】
したがって、データベースアクセスモジュールが変更されるようなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００１３】
請求項３に記載の発明は、請求項１に記載のプログラムにおいて、前記バージョンアップにより、コンピュータは、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記データベースアクセスモジュール及び前記データ管理ロジックモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのデータ管理ロジックモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００１４】
したがって、データ管理ロジックモジュールが変更されるような比較的大きなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００１５】
請求項４に記載の発明において、請求項１に記載のプログラムにおいて、前記バージョンアップにより、コンピュータは、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記データベースアクセスモジュール、前記データ管理ロジックモジュール及び前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行処理はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配処理は、前記オンラインによる問い合わせを前記２つのデータ管理ロジックモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００１６】
したがって、データベースアクセスモジュールが変更されるような大幅なバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００１７】
請求項５に記載の発明は、請求項１〜４のいずれかの一に記載のプログラムにおいて、前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００１８】
したがって、オンラインによる問い合わせに応じて新旧両データベースのうち必要な方にアクセスすることができる。
【００１９】
請求項６に記載の発明は、請求項１〜４のいずれかの一に記載のプログラムにおいて、前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行処理の双方に実行させ、この第１及び第２の問い合わせ実行処理による問い合わせの処理結果をマージするマージ処理をさらにコンピュータに実行させる、ことを特徴とする。
【００２０】
したがって、オンラインによる問い合わせを新旧両データベースで実行して、その結果をマージした結果を得ることができるので、いまだコンバートされずに旧データベースに残っているデータや、コンバート開始後に新データベースに新たに登録されたデータでも利用することができる。
【００２１】
請求項７に記載の発明は、請求項１〜６のいずれかの一に記載のプログラムにおいて、前記コンバート処理及び前記問い合わせ分配処理の少なくとも一方は、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする。
【００２２】
したがって、２相ルールによるロック方式を用いて登録データを処理することができる。
【００２３】
請求項８に記載の発明は、プログラムを記憶してきる記憶媒体において、前記プログラムは請求項１〜７のいずれかの一に記載のプログラムであること、を特徴とする記憶媒体である。
【００２４】
したがって、記憶されているプログラムにより請求項１〜８のいずれかの一に記載の発明と同様の作用、効果を奏することができる。
【００２５】
請求項９に記載の発明は、オンラインによる問い合わせをデータベースにアクセスして実行するデータベースシステムにおいて、本システムのバージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート手段と、前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行手段と、前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行手段と、前記コンバート中は前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の一方又は双方に当該問い合わせを実行させる問い合わせ分配手段と、を備えていることを特徴とするデータベースシステムである。
【００２６】
したがって、データベースのコンバートを行いつつも、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００２７】
請求項１０に記載の発明は、請求項９に記載のデータベースシステムにおいて、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのデータベースアクセスモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００２８】
したがって、データベースアクセスモジュールが変更されるようなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００２９】
請求項１１に記載の発明は、請求項９に記載のデータベースシステムにおいて、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記データベースアクセスモジュール及び前記データ管理ロジックモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのデータ管理ロジックモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００３０】
したがって、データ管理ロジックモジュールが変更されるような比較的大きなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００３１】
請求項１２に記載の発明は、請求項９に記載のデータベースシステムにおいて、オンラインにより前記問い合わせを行うクライアントと本システムとのインターフェースとなるインターフェースモジュールと、前記データベースの登録データ管理のためのロジックを処理するデータ管理ロジックモジュールと、前記問い合わせを前記データベースに対して実行するデータベースアクセスモジュールと、を備え、前記インターフェースモジュール、前記データ管理ロジックモジュール及び前記データベースアクセスモジュールは前記新旧両データベースにそれぞれ対応して２つ用意されていて、前記第１及び第２の問い合わせ実行手段はそれぞれ前記各データベースアクセスモジュールにより実行され、前記問い合わせ分配手段は、前記オンラインによる問い合わせを前記２つのインターフェースモジュールの一方又は双方に渡して前記オンラインによる問い合わせを前記第１及び第２の問い合わせ実行処理の一方又は双方に実行させる、ことを特徴とする。
【００３２】
したがって、データベースアクセスモジュールが変更されるような大幅なバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００３３】
請求項１３に記載の発明は、請求項９〜１２のいずれかの一に記載のデータベースシステムにおいて、前記問い合わせ分配手段は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の一方又は双方に実行させる、ことを特徴とする。
【００３４】
したがって、オンラインによる問い合わせに応じて新旧両データベースのうち必要な方にアクセスすることができる。
【００３５】
請求項１４に記載の発明は、請求項９〜１２のいずれかの一に記載のデータベースシステムにおいて、前記問い合わせ分配処理は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行手段の双方に実行させ、この第１及び第２の問い合わせ実行処理による問い合わせの処理結果をマージするマージ手段をさらに備えている、ことを特徴とする。
【００３６】
したがって、オンラインによる問い合わせを新旧両データベースで実行して、その結果をマージした結果を得ることができるので、いまだコンバートされずに旧データベースに残っているデータや、コンバート開始後に新データベースに新たに登録されたデータでも利用することができる。
【００３７】
請求項１５に記載の発明は、請求項９〜１４のいずれかの一に記載のデータベースシステムにおいて、前記コンバート手段及び前記問い合わせ分配手段の少なくとも一方は、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする。
【００３８】
したがって、２相ルールによるロック方式を用いて登録データを処理することができる。
【００３９】
請求項１６に記載の発明は、請求項９〜１５のいずれかの一に記載のデータベースシステムにおいて、ネットワークで接続された複数台のサーバを備え、前記各手段は前記各サーバに分散して設けられていること、を特徴とする。
【００４０】
したがって、複数台のサーバをネットワークで接続して構成される分散型のシステムで本システムを構築することができる。
【００４１】
請求項１７に記載の発明は、オンラインによる問い合わせをデータベースにアクセスして実行するデータベースアクセス方法において、前記データベースのシステムのバージョンアップに際して前記データベースについてバージョンアップ前の旧データベースを維持したまま当該旧データベースをコンバートしてバージョンアップした新データベースを作成するコンバート工程と、前記コンバート中に前記オンラインによる問い合わせがあったときは、前記旧データベースにアクセスして前記問い合わせを実行する第１の問い合わせ実行と、前記新データベースにアクセスして前記問い合わせを実行する第２の問い合わせ実行とのうち一方又は双方を実行する問い合わせ分配工程と、を備えていることを特徴とするデータベースアクセス方法である。
【００４２】
したがって、データベースのコンバートを行いつつも、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【００４３】
請求項１８に記載の発明は、請求項１７に記載のデータベースアクセス方法において、前記問い合わせ分配工程は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせの一方又は双方を実行する、ことを特徴とする。
【００４４】
したがって、オンラインによる問い合わせに応じて新旧両データベースのうち必要な方にアクセスすることができる。
【００４５】
請求項１９に記載の発明は、請求項１７に記載のデータベースアクセス方法において、前記問い合わせ分配工程は、前記オンラインによる問い合わせに応じて前記第１及び第２の問い合わせ実行の双方を実行し、この第１及び第２の問い合わせの実行による問い合わせの処理結果をマージするマージ工程をさらに備えている、ことを特徴とする。
【００４６】
したがって、オンラインによる問い合わせを新旧両データベースで実行して、その結果をマージした結果を得ることができるので、いまだコンバートされずに旧データベースに残っているデータや、コンバート開始後に新データベースに新たに登録されたデータでも利用することができる。
【００４７】
請求項２０に記載の発明は、請求項１７〜１９のいずれかの一に記載のデータベースアクセス方法において、前記コンバート工程及び前記問合わせ分配工程の少なくとも一方では、前記データベースのある登録データにＳロックがかけられていると、他の登録データにはＳロックはかけられるが、Ｘロックはかけることはできず、また、ある登録データにＸロックがかけられていると、他の登録データにはＳロックもＸロックもかけることはできない２相ルールによるロック方式を用いている、ことを特徴とする。
【００４８】
したがって、２相ルールによるロック方式を用いて登録データを処理することができる。
【００４９】
【発明の実施の形態】
［発明の実施の形態１］
本発明の一実施の形態を発明の実施の形態１として説明する。
【００５０】
図１は、本実施の形態である文書管理システム１の全体構成を示すブロック図である。この文書管理システム１は、本発明のデータベースシステムを実施する文書管理サーバ２と、複数台の文書管理クライアント３とが通信ネットワーク４を介して接続されている。
【００５１】
文書管理クライアント３は、文書管理システム１の利用者が入力した要求を、必要なら暗号化し、文書管理サーバ２に転送し、その結果を、必要なら復号化し、表示するための計算機である。
【００５２】
文書管理サーバ２は、文書管理クライアント３から入力された要求に応じた処理を行い、その結果を文書管理クライアント３に返すための計算機である。
【００５３】
通信ネットワーク４は、文書管理クライアント３及び文書管理サーバ２をつなぐ伝送路である。これは、例えば、ケーブルで実現され、通信プロトコルにはＴＣＰ／ＩＰ（ＴＣＰ／ＩＰは登録商標である）などが使用される。ただし、文書管理クライアント３と文書管理サーバ２との通信プロトコルが一致すれば、ケーブルを使用しない無線ＬＡＮや放送波を使ったネットワークを用いてもよい。
【００５４】
図２は、文書管理サーバ２、文書管理クライアント３の電気的な接続のブロック図である。図２に示すように、文書管理サーバ２、文書管理クライアント３は、いずれも、各種演算を行ない、文書管理サーバ２の各部を集中的に制御するＣＰＵ１１と、各種のＲＯＭ、ＲＡＭからなるメモリ１２とが、バス１３で接続されている。
【００５５】
バス１３には、所定のインターフェースを介して、ハードディスクなどの磁気記憶装置１４と、キーボード、マウスなどの入力装置１５と、表示装置１６と、光ディスクなどの記憶媒体１７を読み取る記憶媒体読取装置１８と、画像を読み取る画像読取装置２１とが接続され、また、ネットワーク４と通信を行なう所定の通信インターフェース１９が接続されている。なお、記憶媒体１７としては、ＣＤ，ＤＶＤなどの光ディスク、光磁気ディスク、フレキシブルディスクなどの各種メディアを用いることができる。また、記憶媒体読取装置１８は、具体的には記憶媒体１７の種類に応じて光ディスク装置、光磁気ディスク装置、フレキシブルディスク装置などが用いられる。
【００５６】
画像処理装置１は、この発明の記憶媒体を実施する記憶媒体１７から、この発明のプログラムを実施する文書管理プログラム２０を読み取って、磁気記憶装置１４にインストールする。これらのプログラムはインターネットなどのネットワーク４等を介してダウンロードしてインストールするようにしてもよい。文書管理プログラム２０の具体的内容は、文書管理サーバ２と、文書管理クライアント３とで異なることは言うまでもない。このインストールにより、文書管理サーバ２、文書管理クライアント３は、それぞれ後述の所定の処理の実行が可能な状態となる。また、文書管理サーバ２の場合は、後述のデータベースも磁気記憶装置１４に構築される。なお、文書管理プログラム２０は、所定のＯＳ上で動作するものであってもよい。
【００５７】
図３は、文書管理システム１が、文書管理サーバ２、文書管理クライアント３それぞれの文書管理プログラム２０に基づいて実現する機能の機能ブロックや、文書管理プログラム２０を構成する各モジュールの関係を示す説明図である。
【００５８】
図３に示すように、文書管理クライアント３において、文書入力手段３１は、文書管理クライアント３のユーザから入力装置１５を介して文書（入力又は表示するための文書データ）の入力を受け付ける。書誌情報入力手段３２は、この文書を入力するときの書誌情報の入力をユーザから受け付ける。検索条件入力手段３３は、文書を検索するときの検索条件の入力をユーザから受け付ける。
【００５９】
検索結果表示手段３４は、文書を検索した結果である検索結果を表示装置１６に表示する。文書表示手段３５は、ユーザが入力した文書を表示装置１６に表示する。
【００６０】
暗号化・復号化モジュール３６は、文書管理サーバ２に送信するデータを暗号化し、また、文書管理サーバ２から受信する暗号化データを復号する。
【００６１】
文書管理サーバ２において、インターフェースモジュール４１は、文書管理サーバ２と文書管理クライアント３との間のインターフェース機能を司るモジュールである。暗号化された文書が入力された場合には、文書管理ロジックモジュール４２に転送する前に、暗号化・復号化モジュール４４が、暗号化された文書を復号化する。また、暗号化・復号化モジュール４４は、文書管理クライアント３に転送する前に、文書管理ロジックモジュール４２から得られた結果を必要なら暗号化する。さらに、ユーザ認証の要求があった場合には、ユーザ認証モジュール４５がユーザ認証を行う。
【００６２】
文書管理ロジックモジュール４２は、登録データである文書の文書管理のためのロジックを処理するモジュールであり、データ管理ロジックモジュールを実施するものでる。すなわち、文書管理クライアント３からの要求をＳＱＬ等のデータベース問い合わせ言語に翻訳し、データベースアクセスモジュール４９に対してデータベース問い合わせを実行し、その結果をインターフェースモジュール４１に返す。
【００６３】
データベースアクセスモジュール４９は、データベース問い合わせをデータベースに対して実行するモジュールである。すなわち、文書管理ロジックモジュール４２からの要求をデータベースに問い合わせ、その結果を文書管理ロジックモジュール４２に返す。データベースとのセッションの管理や、データベースのエンティティーのキャッシュ等も行う。
【００６４】
ロックモジュール４６は、文書データを排他制御するためのロックを管理するモジュールである。後述のデータベースでは、文書データには文書を一意に識別できるＩＤ（文書ＩＤ）が振られている。ロックモジュール４６は、その文書ＩＤとロックモードを管理する。
【００６５】
表１に示すように、このロックモードはＳとＸの２種類存在し、ある文書にＳロックがかけられていると、他の文書にはＳロックはかけられるが、Ｘロックはかけることはできない。また、ある文書にＸロックがかけられていると、他の文書にはＳロックもＸロックもかけることはできない（２相ルールによるロック方式）。
【００６６】
【表１】
2004341777.tif 000003
【００６７】
振り分けモジュール４３は、後述のオンラインコンバートを実行するモジュールである。すなわち、文書管理サーバ２でデータベースをコンバートしているときには、後述のように文書管理サーバ２には、データベースとしてコンバート前の旧データベース４７と、コンバート後の新データベース４８とが並存している。旧データベースアクセスモジュール４９ａ、新データベースアクセスモジュール４９ｂは、それぞれ旧データベース４７、新データベース４８にそれぞれアクセスするモジュールであるが（この旧データベースアクセスモジュール４９ａの機能により、第１の問い合わせ手段、第１の問い合わせ処理を実現し、新データベースアクセスモジュール４９ｂの機能により、第２の問い合わせ手段、第２の問い合わせ処理を実現している）、旧データベースアクセスモジュール４９ａ、新データベースアクセスモジュール４９ｂを介して旧データベース４７、新データベース４８のいずれにアクセスするかの振り分けは、振り分けモジュール４３が行う。この場合、コンバートする文書はコンバートが完了するまでＸロックでロックされ、コンバートが終了した時点で、旧データベース４７から削除される。このような振り分けモジュール４３の機能により、問い合わせ分配処理、問い合わせ分配手段を実現している。
【００６８】
次に、オンラインコンバートについて説明する。
【００６９】
文書管理サーバ２において、文書管理プログラム２０をバージョンアップするときは、文書管理プログラム２０そのもののバージョンアップのみならず、磁気記憶装置１４に構築されているデータベースそのものも新たなものにコンバートする必要がある。本文書管理サーバ２においては、このコンバートを、文書管理サーバ２をオフラインにすることなくオンラインのまま実行することができる。これをオンラインコンバートと呼ぶ。
【００７０】
図４は、バージョンアップ後の文書管理プログラム２０に基づいて実行するオンラインコンバートの処理を説明するフローチャートである。このオンラインコンバートの処理は、バージョンアップに際して、バージョンアップ前の旧データベース４７を維持したまま当該旧データベース４７をコンバートしてバージョンアップした新データベース４８を作成する処理である。
【００７１】
図４に示すように、文書管理サーバ２のＣＰＵ１１は、振り分けモジュール４３によりデータベース（旧データベース４７）に格納されているすべての文書の文書ＩＤのリストを取得する（ステップＳ１）。そして、文書ＩＤを１つずつ取り出して、コンバートする文書にＸロックをかける（ステップＳ２のＮ，Ｓ３）。そして、旧データベースアクセスモジュール４９ａにより旧データベース４７の文書データを得る（ステップＳ４）。この旧データベース４７から得られた文書データは新データベース４８用に変換する（ステップＳ５，Ｓ６）。そして、新データベースアクセスモジュール４９ｂに、変換後の文書データを挿入し（ステップＳ７，Ｓ８）、文書のロックを解除する（ステップＳ９）。ステップＳ３〜Ｓ９の処理は、旧データベース４７に格納されている文書がなくなるまで繰り返し、文書がなくなったら（ステップＳ２のＹ）、旧データベース４７を削除する（ステップＳ１０）。以上説明した図４の処理により、コンバート処理、コンバート手段を実現している。
【００７２】
次に、文書管理サーバ２が実行するオンラインコンバート中の通常の問い合わせの処理について、図５のフローチャートを参照して説明する。
【００７３】
図５に示すように、文書管理サーバ２のＣＰＵ１１は、入力された処理要求はインターフェースモジュール４１で、暗号化されている場合は暗号化・復号化モジュール４５で復号化を行い、ユーザ認証の要求の場合はユーザ認証モジュール４５で認証を行う。（入力インターフェース処理）（ステップＳ１１）。インターフェースモジュール４１から入力された処理要求は文書管理ロジックモジュール４２で、データベース問い合わせに変換される（ステップＳ１２〜Ｓ１４）。文書管理ロジックモジュール４２から入力された問い合わせは、振り分けモジュール４３で文書の更新操作か否かを判断される（ステップＳ１５）。
【００７４】
更新操作の場合には（ステップＳ１４のＹ）、更新する文書にＸロックをかけ（ステップＳ１５）、新旧データベースアクセスモジュール４９ａ，４９ｂにより更新操作を実行する。すなわち、前述のコンバート済みであるか否かを判断し（ステップＳ１６）、コンバート済みであれば（ステップＳ１６のＹ）、新データベース４８に更新処理を行ない（ステップＳ１７）、前述のコンバート済みでないときは（ステップＳ１６のＮ）、旧データベース４７に更新処理を行なってから（ステップＳ１９）、新データベース４８の更新処理を行なう（ステップＳ１７）。
【００７５】
更新操作ではない場合には（ステップＳ１４のＮ）、検索操作が実行される。すなわち、旧データベースアクセスモジュール４９ａにより旧データベース４７に対して検索操作を実行し（ステップＳ２１）、検索結果集合（問い合わせ結果）を得て、すべての文書に対してＳロックをかける（ステップＳ２２，Ｓ２３）。すべての文書にＳロックがかけられなかった場合には（ステップＳ２４のＮ）、もう一度検索（ステップＳ２１）からやり直す。なお、コンバート終了前には旧データベース４７に対して検索操作を実行するが、コンバート終了後にはコンバート後の新データベース４８が旧データベース４７ということになる。
【００７６】
更新操作の場合にステップＳ１９まで終了したとき、あるいは、検索操作ですべての文書にＳロックがかけられた場合には（ステップＳ２４のＹ）、すべてのロックを解除し、文書管理ロジックモジュール４２に、問い合わせ結果を返す（ステップＳ１８，Ｓ２０，Ｓ２５）。文書管理ロジックモジュール４２に返された問い合わせ結果は、文書管理要求結果（処理結果）に変換され（ステップＳ２６）、インターフェースモジュール４１により文書管理クライアント３に返される（出力インターフェース処理）（ステップＳ２７，Ｓ２８）。
【００７７】
なお、図５の処理においては、ステップＳ１８以下の検索操作において、検索の対象となるデータベースを旧データベース４７（コンバート完了後はコンバート後の新データベース４８）としているが、オンラインコンバート中の検索の問い合わせは、旧データベース４７と新データベース４８の両方に対して実行し、その問い合わせ結果をマージして（これにより、マージ処理、マージ手段を実現する）、上位モジュールに返し、オンラインコンバート後はコンバート後の新データベース４８のみを検索の問い合わせの対象とするようにしてもよい。
【００７８】
また、先に新データベース４８に対して検索操作を実行し、検索結果が得られない場合にだけ旧データベース４７に対しても検索操作を実行するようにしてもよい。
【００７９】
更新操作についても、文書ＩＤがシーケンシャルな順番で与えられていて、ある値以上の文書ＩＤについては新データベース４８に登録した文書に付与されていることが明らかなような場合において、更新操作の対象となる文書ＩＤが新データベース４８に存在することが明らかであれば、前述のように旧データベース４７、新データベース４８の両方を対象とすることなく、新データベース４８だけを対象とするようにしてもよい。
【００８０】
［発明の実施の形態２］
本発明の別の実施の形態を発明の実施の形態２として説明する。
【００８１】
本実施の形態の文書管理システム１のハードウエア構成は、図１、図２を参照して前記した発明の実施の形態１のものと同様であり、前記と同一符号を用いて詳細な説明は省略する。
【００８２】
図６は、文書管理システム１が、文書管理サーバ２、文書管理クライアント３それぞれの文書管理プログラム２０に基づいて実現する機能の機能ブロックや、文書管理プログラム２０を構成する各モジュールの関係を示す説明図である。図３を参照して前記した発明の実施の形態１のものと共通のブロックなどには同一符号を用い、詳細な説明は省略する。
【００８３】
図６の構成が図３のものと相違する点は、図３の構成では単一であった文書管理ロジックモジュール４２が、旧データベース４７用、新データベース４８用の２つ用意されていて（旧データベース用文書管理ロジックモジュール４２ａ、新データベース用文書管理ロジックモジュール４２ｂ）、振り分けモジュール４３、ロックモジュール４６が、この文書管理ロジックモジュール４２ａ，４２ｂの上位に位置していて、文書管理クライアント３からの問い合わせを振り分けて、旧データベース用文書管理ロジックモジュール４２ａ、新データベース用文書管理ロジックモジュール４２ｂに渡すように構成している点である。
【００８４】
図７は、バージョンアップ後の文書管理プログラム２０に基づいて実行するオンラインコンバートの処理を説明するフローチャートである。図７において、前記の図４と同一符号のブロックは、実施の形態１の場合と同様の処理であるため、詳細な説明は省略する。
【００８５】
図７の処理が図４の処理と相違するのは、文書管理ロジックモジュールが２系統に分かれたことに伴い、旧データベースアクセスモジュール４９ａにより旧データベース４７の文書データを得るために（ステップＳ４）、文書管理クライアント３からの問い合わせを旧データベース用文書管理ロジックモジュール４２ａで旧データベース４７用の問い合わせに変換すること（ステップＳ３１）、また、新データベースアクセスモジュール４９ｂに、変換後の文書データを挿入するために（ステップＳ６）、文書管理クライアント３からの問い合わせを新データベース用文書管理ロジックモジュール４２ｂで新データベース４８用の問い合わせに変換すること（ステップＳ３４）、さらに、ステップＳ４で得られ、文書管理ロジックモジュール４２ａに返された問い合わせ結果である旧データベース４７の文書データは、文書管理要求結果（処理結果）に変換される（ステップＳ３２，Ｓ３３）。
【００８６】
次に、文書管理サーバ２が実行するオンラインコンバート中の通常の問い合わせの処理について、図８のフローチャートを参照して説明する。
【００８７】
かかる処理が図５の処理と相違するのは、旧データベース４７、新データベース４８の検索処理のために、文書管理クライアント３からの問い合わせを旧データベース用文書管理ロジックモジュール４２ａ、新データベース用文書管理ロジックモジュール４２ｂで、それぞれ旧データベース４７、新データベース４８用の問い合わせに変換すること（ステップＳ４１，Ｓ４３，Ｓ４５）、及び、文書管理ロジックモジュール４２ａ，４２ｂに返された問い合わせ結果は、文書管理要求結果（処理結果）に変換されることである（ステップＳ４２，Ｓ４４，Ｓ４６）。
【００８８】
［発明の実施の形態３］
本発明の別の実施の形態を発明の実施の形態３として説明する。
【００８９】
本実施の形態の文書管理システム１のハードウエア構成は、図１、図２を参照して前記した発明の実施の形態１のものと同様であり、前記と同一符号を用いて詳細な説明は省略する。
【００９０】
図９は、文書管理システム１が、文書管理サーバ２、文書管理クライアント３それぞれの文書管理プログラム２０に基づいて実現する機能の機能ブロックや、文書管理プログラム２０を構成する各モジュールの関係を示す説明図である。図６を参照して前記した発明の実施の形態２のものと共通のブロックなどには同一符号を用い、詳細な説明は省略する。
【００９１】
図９の構成が図６のものと相違する点は、図６の構成では単一であったインターフェースモジュール４１が、旧データベース４７用、新データベース４８用の２つ用意されていて（旧データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂ）、振り分けモジュール４３、ロックモジュール４６が、このインターフェースモジュール４１ａ，４１ｂの上位に位置していて、文書管理クライアント３からの問い合わせを振り分けて、旧データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂに渡すように構成している点である。
【００９２】
図１０は、バージョンアップ後の文書管理プログラム２０に基づいて実行するオンラインコンバートの処理を説明するフローチャートである。図１０において、前記の図７と同一符号のブロックは、実施の形態２の場合と同様の処理であるため、詳細な説明は省略する。
【００９３】
図１０の処理が図７の処理と相違するのは、インターフェースモジュールが旧データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂの２系統となったことに伴い、データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂごとに入力インターフーイス処理、出力インターフーイス処理が行われる点である（ステップＳ５１〜Ｓ５３）。
【００９４】
次に、文書管理サーバ２が実行するオンラインコンバート中の通常の問い合わせの処理について、図１１のフローチャートを参照して説明する。
【００９５】
かかる処理が図８の処理と相違するのは、ここでも、インターフェースモジュールが旧データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂの２系統となったことに伴い、データベース用インターフェースモジュール４１ａ、新データベース用インターフェースモジュール４１ｂごとに入力インターフーイス処理、出力インターフーイス処理が行われる点である（ステップＳ６１〜Ｓ７２）。
【００９６】
［発明の実施の形態４］
本発明の別の実施の形態を発明の実施の形態４として説明する。
【００９７】
図１２に示すように、本実施の形態の文書管理システム１が発明の実施の形態１と相違するのは、まず、そのハードウエア構成の点で、文書管理サーバが文書管理サーバ２ａ，２ｂの２台用いられ、通信ネットワークも通信ネットワーク４ａ，４ｂの２台用いられている点である。文書管理クライアント３、文書管理サーバ２ａ，２ｂの各ハードウエア構成は前記の図２の場合と同様であり、詳細な説明は省略する。
【００９８】
通信ネットワーク４ａは、インターネット等の不特定多数が利用できる、セキュリティが確保されていない通信ネットワークであり、文書管理クライアント３と、文書管理サーバ２ａとが接続されている。また、通信ネットワーク４ｂは、ローカルエリアネットワーク等のセキュリティが確保されている通信ネットワークであり、文書管理サーバ２ａと２ｂとが接続されている。
【００９９】
図１３は、文書管理システム１が、文書管理サーバ２、文書管理クライアント３それぞれの文書管理プログラム２０に基づいて実現する機能の機能ブロックや、文書管理プログラム２０を構成する各モジュールの関係を示す説明図である。図１３の構成が、前記の図３の構成と相違する点は、インターフェースモジュール４１、暗号化・復号化モジュール４４、ユーザ認証モジュール４５が文書管理サーバ２ａに用意され、その他のモジュールや新旧データベース４７，４８が文書管理サーバ２ｂに用意されている点である。なお、実施の形態２のように、文書管理サーバ２ｂの文書管理ロジックモジュール４２を新旧データベース４７，４８に対応して２系統設け、振り分けモジュール４３、ロックモジュール４６をこれらの上位に置くようにしてもよい。具体的な処理は、前記の図４、図５、図７、図８の例と同様である。
【０１００】
この例では、文書等の暗号化・復号化の処理は非常に重い処理であるため、高速化あるいは多人数での利用を可能にするために、暗号化・復号化モジュール４５を含むインターフェースモジュール４１を、他のモジュールとは別の計算機で実行するものである。
【０１０１】
また、この場合に、図１４に示すように、文書管理サーバ２ａを文書管理サーバ２ａ１，２ａ２の２台用意するような分散型のシステムとしてもよい。その際に、ロードバランサー５１は、文書管理クライアント３からの処理を、適切な文書管理サーバ２ａ１，２ａ２，２ｂへ振り分ける。このとき、文書管理クライアント３からの要求を順番に文書管理サーバ２ａ１，２ａ２，２ｂに振り分ける方法（ラウンドロビン方式）が一般的である。
【０１０２】
図１５は、前述の各実施の形態で実行されているデータベースアクセス方法の概要を説明するフローチャートである。図１５において、まず、システムのバージョンアップに際して、コンバート中、すなわち、バージョンアップ前の旧データベース４７を維持したまま当該旧データベース４７をコンバートしてバージョンアップした新データベース４８を作成中であるときに（コンバート工程）（ステップＳ８１のＹ）、オンラインによる文書管理クライアント３から問い合わせがあったときは（ステップＳ８２のＹ）、その問い合わせに応じて、旧データベース４７にアクセスして行う問い合わせの実行（第１の問い合わせ実行）と、新データベース４８にアクセスして行う問い合わせの実行（第２の問い合わせ実行）とのうち、一方又は双方を実行する（分配工程）（ステップＳ８３）。そして、いまだコンバートの実行中であるときは（ステップＳ８４のＹ）、ステップＳ８１に戻り、コンバートが終了しているときは（ステップＳ８４のＮ）、処理を終了する。
【０１０３】
【発明の効果】
請求項１，９，１７に記載の発明は、データベースのコンバートを行いつつも、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【０１０４】
請求項２，１０に記載の発明は、請求項１，９に記載の発明において、データベースアクセスモジュールが変更されるようなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【０１０５】
請求項３，１１に記載の発明は、請求項１，９に記載の発明において、データ管理ロジックモジュールが変更されるような比較的大きなバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【０１０６】
請求項４，１２に記載の発明において、請求項１，９に記載の発明において、データベースアクセスモジュールが変更されるような大幅なバージョンアップを行う場合においても、システムを停止することなく新旧両データベースにアクセスすることができ、バージョンアップ時のシステムの停止時間を最小限にすることができる。
【０１０７】
請求項５，１３，１８に記載の発明は、請求項１〜４，９〜１２，１７のいずれかの一に記載の発明において、オンラインによる問い合わせに応じて新旧両データベースのうち必要な方にアクセスすることができる。
【０１０８】
請求項６，１４，１９に記載の発明は、請求項１〜５，９〜１３，１７，１８のいずれかの一に記載の発明において、オンラインによる問い合わせを新旧両データベースで実行して、その結果をマージした結果を得ることができるので、いまだコンバートされずに旧データベースに残っているデータや、コンバート開始後に新データベースに新たに登録されたデータでも利用することができる。
【０１０９】
請求項７，１５，２０に記載の発明は、請求項１〜６，１０〜１４，１７〜１９のいずれかの一に記載の発明において、２相ルールによるロック方式を用いて登録データを処理することができる。
【０１１０】
請求項８に記載の発明は、記憶されているプログラムにより請求項１〜７のいずれかの一に記載の発明と同様の作用、効果を奏することができる。
【０１１１】
請求項１６に記載の発明は、請求項９〜１５のいずれかの一に記載の発明において、複数台のサーバをネットワークで接続して構成される分散型のシステムで本システムを構築することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１である文書管理システムの全体構成を示すブロック図である。
【図２】文書管理システムを構成する文書クライアントや文書管理サーバの電気的な接続のブロック図である。
【図３】文書管理システムの機能ブロック図である。
【図４】文書管理サーバにおけるコンバートの処理のフローチャートである。
【図５】文書管理サーバにおける問い合わせの処理のフローチャートである。
【図６】本発明の実施の形態２である文書管理システムの機能ブロック図である。
【図７】文書管理サーバにおけるコンバートの処理のフローチャートである。
【図８】文書管理サーバにおける問い合わせの処理のフローチャートである。
【図９】本発明の実施の形態３である文書管理システムの機能ブロック図である。
【図１０】文書管理サーバにおけるコンバートの処理のフローチャートである。
【図１１】文書管理サーバにおける問い合わせの処理のフローチャートである。
【図１２】本発明の実施の形態４である文書管理システムの全体構成を示すブロック図である。
【図１３】文書管理システムの機能ブロック図である。
【図１４】本発明の実施の形態４である文書管理システムの他の構成例の全体構成を示すブロック図である。
【図１５】本発明の実施の形態におけるデータベースアクセス方法のフローチャートである。
【符号の説明】
２      データベースシステム
１７    記憶媒体
２０    プログラム
【図１】
2004341777.tif 000004
【図２】
2004341777.tif 000005
【図３】
2004341777.tif 000006
【図４】
2004341777.tif 000007
【図５】
2004341777.tif 000008
【図６】
2004341777.tif 000009
【図７】
2004341777.tif 000010
【図８】
2004341777.tif 000011
【図９】
2004341777.tif 000012
【図１０】
2004341777.tif 000013
【図１１】
2004341777.tif 000014
【図１２】
2004341777.tif 000015
【図１３】
2004341777.tif 000016
【図１４】
2004341777.tif 000017
【図１５】
2004341777.tif 000018