(57)【特許請求の範囲】
【請求項１】
複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法であって、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備え、
前記複数の端末の各々において、他の端末との間で定期的に通信を行い、その応答の有無をチェックし、
当該端末により参照されたデータをその端末に格納して管理し、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを起動するようにし、
前記起動するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成し、
前記起動するようにされた全体情報管理部から、起動中であることを前記複数の端末に設けられる参照要求処理部の各々に通知し、
前記複数の端末の参照要求処理部のいずれかが、データの参照要求を受けて、当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせ、
前記問い合わせた参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返す
ことを特徴とするデータキャッシュ方法。
【請求項２】
前記全体情報管理部が起動中である端末から前記応答を得られなかった場合、自己の端末の全体情報管理部を起動する
ことを特徴とする請求項１に記載のデータキャッシュ方法。
【請求項３】
前記複数の端末に格納されたデータに相互に異なる第１及び第２のデータ格納形式のものを含み、
前記問い合わせた参照要求処理部の端末におけるデータ格納形式が前記第１のデータ格納形式であり、当該データをキャッシュする端末におけるデータ格納形式が前記第２のデータ格納形式である場合、当該データのデータ格納形式を前記第１のデータ格納形式に変換したものが、前記問い合わせた参照要求処理部において得られる
ことを特徴とする請求項１に記載のデータキャッシュ方法。
【請求項４】
複数の端末を有するデータキャッシュシステムであって、
前記複数の端末の各々が、
他の端末の動作監視部との間で定期的に通信を行い、その応答の有無により全体情報管理部の動作をチェックする動作監視部と、
当該端末により参照されたデータを格納するキャッシュと、
前記キャッシュを管理するキャッシュ管理部と、
前記複数の端末のキャッシュに格納されたデータの各々についての管理情報からなる全体情報格納部を作成し、これにもとづいて参照要求処理部からの問い合わせに応じて所定の応答を返す全体情報管理部と、
前記複数の端末からの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせ、前記全体情報管理部からの前記応答に基づいて当該データを得て前記参照要求をした端末に返す参照要求処理部とからなり、
前記複数の端末における複数の全体情報管理部の内の１個のみが起動するようにされ、  前記起動するようにされた全体情報管理部が、前記全体情報格納部をその端末内に作成し、自己が起動中であることを前記複数の端末における複数の前記動作監視部を介して対応する前記参照要求処理部の各々に通知し、
前記複数の端末の参照要求処理部のいずれかが、データの参照要求を受けて、当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせ、
前記問い合わせた参照要求処理部が、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかのキャッシュ管理部から当該データを得て、前記得られたデータを前記参照要求をした端末に返す
ことを特徴とするデータキャッシュシステム。
【請求項５】
複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法を実現するプログラムであって、
前記プログラムは、当該端末であるコンピュータに、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備えさせ、
他の端末との間で定期的に通信を行い、その応答の有無をチェックさせ、
当該端末により参照されたデータをその端末に格納して管理させ、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを起動するようにさせ、
前記起動するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成させ、
前記起動するようにされた全体情報管理部から、起動中であることを前記複数の端末に設けられる参照要求処理部の各々に通知させ、
前記参照要求処理部により、データの参照要求を受けて、当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせさせ、
前記問い合わせた参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返させる
ことを特徴とするプログラム。
【請求項６】
他のデータキャッシュ装置と共にデータキャッシュシステムを構成するデータキャッシュ装置を実現するためのプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体であって、
前記プログラムは、当該データキャッシュ装置であるコンピュータに、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備えさせ、
他の端末との間で定期的に通信を行い、その応答の有無をチェックさせ、
当該端末により参照されたデータをその端末に格納して管理させ、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを起動するようにさせ、
前記起動するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成させ、
前記起動するようにされた全体情報管理部から、起動中であることを前記複数の端末に設けられる参照要求処理部の各々に通知させ、
前記参照要求処理部により、データの参照要求を受けて、当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせさせ、
前記問い合わせた参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返させる
ことを特徴とするプログラム記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データキャッシュ方法、システム及びプログラム並びに記録媒体に関し、特に、専用のコンピュータなしで複数のローカルキャッシュを重複することなく連携させたデータキャッシュ方法、システム及びプログラム並びに記録媒体に関する。
【０００２】
【従来の技術】
インターネットの発達に伴い、インターネット上の種々のコンテンツを利用する機会が多い。しかし、インターネット上のコンテンツへのアクセスは、必然的にＷＡＮ（Wide Area Network ）であるインターネットを経由することになる。このため、レスポンスタイムが遅く、データ転送のスループットも低い。
【０００３】
そこで、インターネット上のコンテンツへのアクセス（ＷＷＷブラウズ）に使用するアプリケーションプログラム（ＷＷＷブラウザ）は、図１９に示すように、参照したデータを端末６００のローカルディスク又はローカルキャッシュ（キャッシュメモリ）５０上に保存し、２回目以降の参照時に再利用する機能（ローカルキャッシュ機能）を備える。
【０００４】
【発明が解決しようとする課題】
通常、前述のローカルキャッシュ５０の記憶容量は小さく、十分に機能することは少ない。そこで、これを改善するために、通常、図１９に示すように、ＷＡＮであるインターネット４００とＬＡＮ（Local Area Network）７００との間に、キャッシュサーバ８００と呼ばれるコンピュータを設ける。キャッシュサーバ８００は、大容量のデータをキャッシュすることができるグローバルキャッシュ（メモリ）８５０を備える。
【０００５】
しかし、キャッシュサーバ８００を使用する場合、キャッシュサーバ８００専用のコンピュータを当該システムに追加する必要があり、以下の問題が生じる。即ち、キャッシュサーバ８００用のコンピュータを購入する必要があり、キャッシュサーバ８００の設置場所が必要になり、キャッシュサーバ８００のメンテナンスが必要になる。
【０００６】
本発明は、専用のコンピュータなしで複数のローカルキャッシュを重複することなく連携させたデータキャッシュ方法を提供することを目的とする。
【０００８】
また、本発明は、専用のコンピュータなしで複数のローカルキャッシュを重複することなく連携させたデータキャッシュシステムを提供することを目的とする。
【０００９】
また、本発明は、専用のコンピュータなしで複数のローカルキャッシュを重複することなく連携させたデータキャッシュシステムを実現するプログラムを提供することを目的とする。
【００１０】
また、本発明は、専用のコンピュータなしで複数のローカルキャッシュを重複することなく連携させたデータキャッシュシステムを実現するプログラムを記録したプログラム記録媒体を提供することを目的とする。
【００１１】
【課題を解決するための手段】
本発明のデータキャッシュ方法は、複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法である。即ち、複数の端末に格納されたデータの各々についての管理情報を作成しこれにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備え、複数の端末の各々において他の端末との間で定期的に通信を行いその応答の有無をチェックし、当該端末により参照されたデータをその端末に格納して管理し、チェックの結果にもとづいて複数の端末における複数の全体情報管理部の内の１個のみを起動するようにし、起動するようにされた全体情報管理部により前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成し、起動するようにされた全体情報管理部から起動中であることを前記複数の端末に設けられる参照要求処理部の各々に通知し、複数の端末の参照要求処理部のいずれかがデータの参照要求を受けて当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせ、問い合わせた参照要求処理部により前記問い合わせに対する応答に基づいて当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て前記得られたデータを前記参照要求をした端末に返す。
【００１３】
本発明のデータキャッシュシステムは、複数の端末即ちデータキャッシュ装置を有するデータキャッシュシステムである。即ち、複数の端末の各々が、他の端末の動作監視部との間で定期的に通信を行い、その応答の有無により全体情報管理部の動作をチェックする動作監視部と、当該端末により参照されたデータを格納するキャッシュと、キャッシュを管理するキャッシュ管理部と、複数の端末のキャッシュに格納されたデータの各々についての管理情報からなる全体情報格納部を作成し、これにもとづいて参照要求処理部からの問い合わせに応じて所定の応答を返す全体情報管理部と、複数の端末からの参照要求を受けて、当該データについての管理情報を全体情報管理部に問い合わせ、全体情報管理部からの前記応答に基づいて当該データを得て前記参照要求をした端末に返す参照要求処理部とからなる。複数の端末における複数の全体情報管理部の内の１個のみが起動するようにされ、前記起動するようにされた全体情報管理部が、全体情報格納部をその端末内に作成し、自己が起動中であることを複数の端末における複数の動作監視部を介して対応する参照要求処理部の各々に通知し、複数の端末の参照要求処理部のいずれかが、データの参照要求を受けて、当該データについての管理情報を前記１個のみ起動された全体情報管理部に問い合わせ、問い合わせた参照要求処理部が、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される複数の端末のいずれかのキャッシュ管理部から当該データを得て、前記得られたデータを前記参照要求をした端末に返す。
【００１４】
本発明のデータキャッシュ方法、データキャッシュシステムによれば、複数のローカルキャッシュを重複することなく連携させることができるので、キャッシュサーバを不要にできる。従って、キャッシュサーバ専用のコンピュータをシステムに追加する必要がなく、キャッシュサーバ用のコンピュータを購入したり、キャッシュサーバの設置場所を確保したり、キャッシュサーバのメンテナンスをしたりする必要がない。
【００１５】
本発明のプログラムは、複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法を実現する。このプログラムは、当該端末であるコンピュータに、複数の端末に格納されたデータの各々についての管理情報を作成しこれにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備えさせ、他の端末との間で定期的に通信を行い、その応答の有無をチェックさせ、当該端末により参照されたデータをその端末に格納して管理させ、チェックの結果にもとづいて複数の端末における複数の全体情報管理部の内の１個のみを動作するようにさせ、動作するようにされた全体情報管理部により前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成させ、動作するようにされた全体情報管理部から動作中であることを前記複数の端末に設けられる参照要求処理部の各々に通知させ、参照要求処理部によりデータの参照要求を受けて当該データについての管理情報を前記全体情報管理部に問い合わせさせ、参照要求処理部により問い合わせに対する応答に基づいて当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て前記得られたデータを前記参照要求をした端末に返させる。
【００１６】
本発明のプログラム記録媒体は、他の端末又はデータキャッシュ装置とでデータキャッシュシステムを構成するデータキャッシュ装置を実現するためのプログラムであって、前述のような処理を実行させるプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体である。
【００１７】
本発明のプログラムによれば、前述のようなデータキャッシュ方法及びデータキャッシュシステムを実現することができる。また、本発明のプログラム記録媒体によれば、当該プログラムをフレキシブルディスク、ＣＤ−ＲＯＭ、ＣＤＲ／Ｗ、ＤＶＤ等の記録媒体に格納して提供できるので、容易に前記データキャッシュ方法等を構成することができる。従って、複数のローカルキャッシュを重複することなく連携させて、キャッシュサーバを不要にできるので、キャッシュサーバ専用のコンピュータをシステムに追加する必要がなく、キャッシュサーバ用のコンピュータを購入したり、キャッシュサーバの設置場所を確保したり、キャッシュサーバのメンテナンスをしたりする必要がない。
【００１８】
【発明の実施の形態】
図１はデータキャッシュシステム構成図を示し、本発明のデータキャッシュシステムの構成を示す。
【００１９】
データキャッシュシステムは、サーバ３００、複数の端末又はクライアント１００（１００Ａ乃至１００Ｅ）、これらの間を接続する内部のネットワーク２００からなる。サーバ３００は、例えばコンピュータからなり、外部のネットワーク、例えばインターネット４００等のＷＡＮに接続される。複数の端末１００は、各々、ウェブ上のコンテンツのデータをキャッシュする例えばパーソナルコンピュータからなるデータキャッシュ装置であり、ＬＡＮ２００等の内部のネットワーク２００を介して、相互に接続され、サーバ３００に接続される。複数の端末１００は、各々、（ローカル）キャッシュ５（５Ａ乃至５Ｅ）を備える。キャッシュ５は、例えばハードディスク装置等のキャッシュメモリからなり、当該端末１００が参照したコンテンツのデータを２回目以降の参照の際に再利用するために当該データを格納する（キャッシュする）。インターネット４００には、コンテンツのデータを提供するサーバ（オリジナルサーバ）５００が接続される。
【００２０】
なお、この明細書で、複数の端末１００を相互に区別する場合には、１００Ａ乃至１００Ｅのように、符号Ａ乃至Ｅを付加して表す。また、端末１００Ａ乃至１００Ｅの各々のスーパバイザ１（後述する）を相互に区別する場合にも、１Ａ乃至１Ｅのように、符号Ａ乃至Ｅを付加して表す。
【００２１】
この例では、サーバ３００もキャッシュ５（図示せず）を備える。即ち、サーバ３００が端末１００としてインターネット４００上のコンテンツのデータを参照した場合、当該データは、サーバ３００のキャッシュ５に格納される。なお、本発明では、サーバ３００は必ずしも設ける必要はない。即ち、複数の端末１００が接続されたＬＡＮ２００がインターネット４００に接続されていてもよい。但し、当該データキャッシュシステムが例えば１企業のイントラネットである場合のように、その規模が大きい場合等には、当該システムの最上位にインターネット４００への接続のために、サーバ３００を設けることが望ましい。この場合、サーバ３００をキャッシュサーバとして用いることも差し支えない。また、サーバ３００を上位サーバとし端末１００を下位サーバとしてもよい。
【００２２】
図２は端末構成図を示し、本発明のデータキャッシュシステムを構成する端末１００の構成を示す。
【００２３】
端末１００は、ウェブブラウザ４の他に、動作監視部であるスーパバイザ１、参照要求処理部であるリクエスト・リダイレクタ（以下、リダイレクタと言う）３、キャッシュ（メモリ）５、キャッシュ管理部であるキャッシュアダプタ６、全体情報格納部であるキャッシュグローバルインデクス（以下、グローバルインデクスと言う）７、マーク処理部８を備える。スーパバイザ１は全体情報管理部であるヒントマネージャ２を備える。スーパバイザ１（ヒントマネージャ２を除く）、リダイレクタ３、キャッシュアダプタ６は常駐プロセスである。ヒントマネージャ２は、必要に応じて、常駐させられる。マーク処理部８は、必要に応じて、リダイレクタ３から呼び出される。
【００２４】
ウェブブラウザ４は、周知のインターネット４００上のコンテンツを閲覧するためのソフトウェア（プログラム）である。本発明において、ウェブブラウザ４は、インターネット４００上のコンテンツのデータを提供する他のウェブサーバ５００（オリジナルサーバ５００）に直接アクセスすることなく、必ずリダイレクタ３に当該データの参照要求を行うことにより、インターネット４００上のコンテンツのデータを参照する。
【００２５】
リダイレクタ３は、ウェブブラウザ４からの参照要求を横取りし、当該データがキャッシュされているか否かを調べ、キャッシュされている場合にはキャッシュ元から当該データを得て、キャッシュされていない場合にはウェブブラウザ４に代わってインターネット４００上のオリジナルサーバ５００にアクセスして当該データを得る。獲得した当該データはウェブブラウザ４に送られる。
【００２６】
即ち、リダイレクタ３は、ウェブブラウザ４からの参照要求を受け付け、ヒントマネージャ２に当該データのキャッシュの有無及びキャッシュ先を問い合わせる。ヒントマネージャ２からの返信を受けると、リダイレクタ３は当該データの管理元にこれを要求する。当該データがキャッシュされている場合、当該データの管理元は、当該データのキャッシュ先を管理するキャッシュアダプタ６となる。当該データがキャッシュされていない場合、当該データの管理元はオリジナルサーバ５００となる。
【００２７】
当該データの返信を受けると、リダイレクタ３は、当該データを要求元であるウェブブラウザ４に送信する。この時、リダイレクタ３は、当該データが既にキャッシュされていたものである場合、マーク処理部８を呼び出して、当該データにキャッシュ不可のマークを付加することを依頼する。当該データがキャッシュされていない（初めて参照する）ものである場合、当該データにはキャッシュ不可のマークは付加されない。また、リダイレクタ３は、当該データをウェブブラウザ４に送信後、ヒントマネージャ２に対して、後述するキャッシュローカルインデクス（以下、ローカルインデクス）５１のキャッシュ管理情報（当該キャッシュ５についての情報）の変更を要求する。当該データが既にキャッシュされていた場合、当該ウェブブラウザ４による参照を反映するように、キャッシュ管理情報が変更される。当該データがキャッシュされていない場合、当該データをキャッシュしたことを反映するように、キャッシュ管理情報が変更される。
【００２８】
マーク処理部８は、リダイレクタ３から呼び出されると、当該データがキャッシュ５に格納されないように、当該データにキャッシュ不可のマークを付加した上で、これをリダイレクタ３に返す。キャッシュ不可のマークは、例えば当該データのヘッダ（ｈｔｔｐヘッダ）を、キャッシュ不可のヘッダに変更する（追加する）ことによる。
【００２９】
ヒントマネージャ２は、グローバルインデクス７を生成して、これを管理する。また、ヒントマネージャ２は、リダイレクタ３からの問い合わせに応じて、グローバルインデクス７を参照してキャッシュ管理情報を得て、このキャッシュ管理情報をリダイレクタ３に返信する。
【００３０】
グローバルインデクス７は、当該データキャッシュシステム内の全てのローカルインデクス５１を総合したものである。即ち、当該データキャッシュシステム内の全てのキャッシュ５において、どのようなデータがどのキャッシュ５のどの位置に格納されてるかを示す。このために、ヒントマネージャ２は、当該データキャッシュシステム内の全てのローカルインデクス５１を収集する。
【００３１】
グローバルインデクス７の構成の一例を図３に示す。グローバルインデクス７は、当該データのＵＲＬ、データキャッシュマシン（コンピュータ）名及びファイル・パス名、キャッシュ有効期限、最終参照日時、最終参照マシン名、参照回数、追加情報を格納してなる。なお、図３において、各情報についての格納形式、用途を合わせて示した（グローバルインデクス７には含まれない）。
【００３２】
キャッシュアダプタ６は、キャッシュ５を生成して、これを管理する。キャッシュアダプタ６は、リダイレクタ３からの要求に応じて、自己が管理するキャッシュ５から当該データを取り出して、これをリダイレクタ３に返信する。キャッシュアダプタ６に要求を送信するリダイレクタ３は、当該キャッシュアダプタ６と同一の端末１００のリダイレクタ３、又は、これ以外の端末１００のリダイレクタ３である。
【００３３】
キャッシュ５は、キャッシュローカルインデクス（ローカルインデクス）５１と１又は複数のキャッシュされたデータ（キャッシュデータ）５２とからなる。キャッシュデータ５２は、インターネット４００上のコンテンツのデータであって、当該端末１００により参照された結果キャッシュされたデータである。即ち、ウェブブラウザ４のキャッシュ機能により、一旦参照したデータはキャッシュ５上に保存され、２回目以降の参照時に再利用される。ローカルインデクス５１は、ウェブブラウザ４によりキャッシュ時に生成される。ローカルインデクス５１は、当該キャッシュ５に格納されているキャッシュデータ５２についての管理情報であり、どのようなキャッシュデータ５２がどの位置に格納されてるかを示す。
【００３４】
スーパバイザ１は、当該端末１００を、当該データキャッシュシステムを構成するモジュールとして管理する。即ち、複数のキャッシュ５を重複することなく連携させるための処理を行う。これにより、専用のコンピュータ（キャッシュサーバ８００）なしで、キャッシュの効果を得ることができる。
【００３５】
即ち、前述のように、スーパバイザ１、リダイレクタ３、キャッシュアダプタ６は常駐とされ、ヒントマネージャ２は必要に応じて常駐とされる。具体的には、当該端末１００の電源投入によりスーパバイザ１が起動され、スーパバイザ１によりリダイレクタ３及びキャッシュアダプタ６が起動される。これにより、当該端末１００が管理（又は監視）される。一方、ヒントマネージャ２は、当該データキャッシュシステムにおいて、他の（端末１００の）ヒントマネージャ２が動作していない場合に限って、対応するスーパバイザ１により起動される。即ち、当該データキャッシュシステムにおいて動作するヒントマネージャ２は、常に１個である。動作するヒントマネージャ２に付随して、グローバルインデクス７が作成される。
【００３６】
動作するヒントマネージャ２は当該データキャッシュシステムにおいて１個である。従って、それが存在する端末１００が何らかの原因でダウンした場合、ヒントマネージャ２を切り替える必要がある。そこで、スーパバイザ１が、スーパバイザ１間の通信によりヒントマネージャ２を監視する。より正確には、マルチキャストによるポーリングにより、当該端末１００のダウンを監視する。例えば、対応するヒントマネージャ２が動作していないスーパバイザ１がポーリングしても応答がなければ、当該スーパバイザ１が、対応するヒントマネージャ２を動作させる。従って、ヒントマネージャ２の停止後、最初にポーリングしたスーパバイザ１に対応するヒントマネージャ２が新たに動作することになる。
システムにおける処理を詳細に説明する。
【００３７】
図４は本発明の問い合わせ処理フローを示し、図１０及び図１１は本発明の問い合わせ処理説明図であり、いずれもウェブブラウザ４から問い合わせがあったデータがキャッシュされていた場合の処理を示す。
【００３８】
図４において、ウェブブラウザ４が参照ページのデータをリダイレクタ３に要求すると（ステップＳ１１）、リダイレクタ３がヒントマネージャ２に対して当該データがキャッシュされているか否かを問い合わせる（ステップＳ１２）。これに応じて、ヒントマネージャ２が、グローバルインデクス７を参照して、当該データがキャッシュされているか否かを判定し、キャッシュされている場合にはその端末（コンピュータ）１００を特定し（ステップＳ１３）、これらの結果情報をリダイレクタ３に返信する（ステップＳ１４）。この場合、当該データがキャッシュされているので、その旨と当該端末１００が通知される。
【００３９】
これを受信したリダイレクタ３が、キャッシュアダプタ６に対して、当該キャッシュされているコンテンツのデータの送信を要求すると（ステップＳ１５）、これに応じて、キャッシュアダプタ６が、ローカルインデクス５１を更新した上で、先に当該ＬＡＮ２００のいずれかのウェブブラウザ４により先にキャッシュされたデータを取り出して（ステップＳ１６）、当該キャッシュされたデータをリダイレクタ３に送信する（ステップＳ１７）。これを受信したリダイレクタ３が、当該データにキャッシュ不可のマークを付加してこれをウェブブラウザ４に返信し（ステップＳ１８）、また、ヒントマネージャ２に対して先に受信した結果情報で示されたキャッシュ５を参照したことを通知する（ステップＳ１９）。これに応じて、ヒントマネージャ２は、グローバルインデクス７に、リダイレクタ３がキャッシュ５を参照したことを反映するように更新して（ステップＳ１１０）、当該応答を待って処理を終了する（ステップＳ１１０）。一方、この場合、ウェブブラウザ４が当該データをそのキャッシュ５にキャッシュすることはない（ステップＳ１１１）。
【００４０】
以上から、図１０に示すように、自己の端末１００Ａにおいてヒントマネージャ２Ａが動作しており、かつ、当該データが他の端末１００Ｂにキャッシュされている場合、以下のように処理される。
【００４１】
即ち、ウェブブラウザ４Ａからの参照要求（ステップＳ１１）を受けたリダイレクタ３Ａがヒントマネージャ２Ａにキャッシュの有無を問い合わせると（ステップＳ１２）、ヒントマネージャ２Ａがグローバルインデクス７Ａを参照して（ステップＳ１３）、当該データが端末１００Ｂにキャッシュされていることをリダイレクタ３Ａに通知する（ステップＳ１４）。そこで、リダイレクタ３Ａがキャッシュアダプタ６Ｂにキャッシュデータ５２の送信を要求すると（ステップＳ１５）、キャッシュアダプタ６Ｂがキャッシュデータ５２をキャッシュ５Ｂから取り出して（ステップＳ１６）、リダイレクタ３Ａに送信する（ステップＳ１７）。リダイレクタ３Ａはキャッシュ不可のマークを付加したキャッシュデータ５２をウェブブラウザ４Ａに返信する（ステップＳ１８）。
【００４２】
なお、自己の端末１００Ａにおいてヒントマネージャ２Ａが動作しており、かつ、当該キャッシュデータ５２が自己の端末１００Ａにキャッシュされている場合、図１０において、リダイレクタ３Ａがキャッシュアダプタ６Ａにキャッシュデータ５２を要求することになる。
【００４３】
また、図１１に示すように、自己の端末が１００Ｂであり、他の端末１００Ａにおいてヒントマネージャ２Ａが動作しており、かつ、当該データが更に他の端末１００Ｃにキャッシュされている場合、以下に示すように処理される。
【００４４】
即ち、ウェブブラウザ４Ｂからの参照要求（ステップＳ１１）を受けたリダイレクタ３Ｂがヒントマネージャ２Ａにキャッシュの有無を問い合わせると（ステップＳ１２）、ヒントマネージャ２Ａがグローバルインデクス７Ａを参照して（ステップＳ１３）、当該データが端末１００Ｃにキャッシュされていることをリダイレクタ３Ｂに通知する（ステップＳ１４）。そこで、リダイレクタ３Ｂがキャッシュアダプタ６Ｃにキャッシュデータ５２の送信を要求すると（ステップＳ１５）、キャッシュアダプタ６Ｃがキャッシュデータ５２をキャッシュ５Ｃから取り出して（ステップＳ１６）、リダイレクタ３Ｂに送信する（ステップＳ１７）。リダイレクタ３Ｂはキャッシュ不可のマークを付加したキャッシュデータ５２をウェブブラウザ４Ｂに返信する（ステップＳ１８）。
【００４５】
図５は、本発明の問い合わせ処理フローを示し、図１２は本発明の問い合わせ処理説明図であり、いずれもウェブブラウザ４から問い合わせがあったデータがキャッシュされていなかった場合の処理を示す。
【００４６】
図５において、図４と同様に、ウェブブラウザ４が参照ページのデータをリダイレクタ３に要求すると（ステップＳ２１）、リダイレクタ３がヒントマネージャ２に対して当該データがキャッシュされているか否かを問い合わせ（ステップＳ２２）、ヒントマネージャ２がグローバルインデクス７を参照して、当該データがキャッシュされているか否かを判定し（ステップＳ２３）、その結果情報をリダイレクタ３に返信する（ステップＳ２４）。この場合、図４と異なり、当該データがキャッシュされていないので、その旨が通知される。
【００４７】
そこで、これを受信したリダイレクタ３が、オリジナルサーバ５００に対して、ウェブブラウザ４から要求された参照ページのデータの送信を要求すると（ステップＳ２５）、これに応じて、オリジナルサーバ５００（のウェブサーバ）が当該データを（コンテンツから取り出して（図１２のステップＳ１１２６’））リダイレクタ３に送信する（ステップＳ２６）。これを受信したリダイレクタ３が、キャッシュ不可のマークを付加することなく、当該データをウェブブラウザ４に返信する（ステップＳ２７）。従って、当該データは、オリジナルサーバ５００がキャッシュを許可している（又は、キャッシュ可能である）ものであれば、当該ウェブブラウザ４によりその端末（コンピュータ）１００にキャッシュされる。即ち、当該データは当該ＬＡＮ２００上でキャッシュされたことになり、この後は図４の状態となる。
【００４８】
また、リダイレクタ３は、キャッシュアダプタ６に対して、オリジナルサーバ５００が当該データのキャッシュを許可している等の場合には、当該データがキャッシュされた旨を通知する（ステップＳ２８）。これに応じて、キャッシュアダプタ６は、ローカルインデクス５１を更新する。更に、リダイレクタ３は、ヒントマネージャ２に対して、オリジナルサーバ５００が当該データのキャッシュを許可している等の場合には、当該データがキャッシュされた旨を通知する（ステップＳ２９）。これに応じて、ヒントマネージャ２は、グローバルインデクス７に当該データが当該ウェブブラウザ４にキャッシュされたことを反映するように更新して（ステップＳ２１０）、当該応答を待って処理を終了する（ステップＳ２１０）。一方、この場合には、ウェブブラウザ４が当該データをそのキャッシュ５にキャッシュする（ステップＳ２１１）。
【００４９】
以上から、図１２に示すように、当該データがどの端末１００にもキャッシュされていない場合、以下のように処理される。
【００５０】
即ち、ウェブブラウザ４Ａからの参照要求（ステップＳ２１）を受けたリダイレクタ３Ａが、ヒントマネージャ２Ａにキャッシュの有無を問い合わせると（ステップＳ２２）、ヒントマネージャ２Ａがグローバルインデクス７Ａを参照して（ステップＳ２３）、当該データがどの端末１００にもキャッシュされていないことをリダイレクタ３Ａに通知する（ステップＳ２４）。そこで、リダイレクタ３Ａがオリジナルサーバ５００に当該データの送信を要求すると（ステップＳ２５）、オリジナルサーバ５００が当該データを取り出してリダイレクタ３Ａに送信する（ステップＳ２６）。リダイレクタ３Ａはキャッシュ不可のマークを付加することなく、当該データをウェブブラウザ４Ａに返信する（ステップＳ２７）。ウェブブラウザ４Ａは当該データをキャッシュ５Ａにキャッシュする（ステップＳ２１１）。
【００５１】
図６は、本発明の問い合わせ処理フローを示し、ウェブブラウザ４から問い合わせがあったデータがキャッシュされていたと思われたが実際にはキャッシュされていなかった場合の処理を示す。これは、例えば、先に当該データをキャッシュしたウェブブラウザ４（のユーザ）が、当該データをキャッシュ５からクリア（消去）してしまった場合等である。
【００５２】
図４と同様に、ウェブブラウザ４が参照ページのデータをリダイレクタ３に要求すると（ステップＳ３１）、リダイレクタ３がヒントマネージャ２に対して当該データがキャッシュされているか否かを問い合わせ（ステップＳ３２）、ヒントマネージャ２がグローバルインデクス７を参照して（ステップＳ３３）、当該データがキャッシュされているか否かを判定し、キャッシュされている場合にはその端末（コンピュータ）１００を特定し、これらの結果情報をリダイレクタ３に返信する（ステップＳ３４）。この場合、図４と同様に、当該データがキャッシュされている（ことになっている）ので、その旨と当該端末１００が通知される。
【００５３】
これを受信したリダイレクタ３がキャッシュアダプタ６に対して当該データの送信を要求すると（ステップＳ３５）、キャッシュアダプタ６が先に当該ＬＡＮ２００のいずれかのウェブブラウザ４により先にキャッシュされたデータを取り出そうとする（ステップＳ３６）。しかし、図４とは異なり、前述のように当該データはクリアされてしまって、当該ウェブブラウザ４（の存在する端末１００）には存在しない。従って、キャッシュアダプタ６は当該データの取り出しに失敗する（ステップＳ３６）。そこで、キャッシュアダプタ６は、当該失敗を反映するようにローカルインデクス５１を更新した上で、当該データが存在しなかった旨をリダイレクタ３に送信する（ステップＳ３７）。
【００５４】
これを受信したリダイレクタ３は、図５と同様に、オリジナルサーバ５００に対して、ウェブブラウザ４から要求された参照ページのデータの送信を要求すると（ステップＳ３８）、オリジナルサーバ５００が当該データをリダイレクタ３に送信する（ステップＳ３９）。リダイレクタ３は、キャッシュ不可のマークを付加することなく、当該データをウェブブラウザ４に返信する（ステップＳ３１０）。従って、当該データは、オリジナルサーバ５００がキャッシュを許可している等の場合、ウェブブラウザ４によりその端末１００にキャッシュされる。即ち、当該データは当該ＬＡＮ２００上でキャッシュされ、図４の状態となる。
【００５５】
また、リダイレクタ３は、キャッシュアダプタ６に対して、オリジナルサーバ５００が当該データのキャッシュを許可している等の場合には、当該データがキャッシュされた旨を通知し（ステップＳ３１１）、キャッシュアダプタ６はローカルインデクス５１を更新する。更に、リダイレクタ３は、ヒントマネージャ２に対して、オリジナルサーバ５００が当該データのキャッシュを許可している等の場合には、当該データがキャッシュされた旨を通知する（ステップＳ３１２）。ヒントマネージャ２は、グローバルインデクス７に当該データがキャッシュされたことを反映するように更新して（ステップＳ３１３）、当該応答を待って処理を終了する（ステップＳ３１３）。一方、この場合も、ウェブブラウザ４が当該データをそのキャッシュ５にキャッシュする（ステップＳ３１４）。
【００５６】
以上から、図１３（Ａ）に示すように、本発明における参照先は、以下のようになる。即ち、いずれかの端末例えば端末１００Ｂのキャッシュアダプタ６Ｂ（図１０及び図１１の場合）、又は、オリジナルサーバ５００（図１２の場合）のいずれかとされる。なお、図１３（Ｂ）に示すように、従来の参照要求の発行先は、キャッシュサーバ８００又はオリジナルサーバ９００のいずれかであった（図１９参照）。
【００５７】
図７は、本発明の起動処理フローを示し、データキャッシュシステムを構成する端末１００における起動処理の概略を示す。
【００５８】
当該端末１００の電源が投入されると、スーパバイザ１が起動され、その少し後に、キャッシュアダプタ６が起動される（ステップＳ４１）。起動されたキャッシュアダプタ６は、自己（の端末１００）がキャッシュしているキャッシュデータを参照して（ステップＳ４２）、ローカルインデクス５１を作成する（ステップＳ４３）。
【００５９】
一方、起動されたスーパバイザ１は、ＬＡＮ２００を介して、他の端末１００のスーパバイザ１に対して、マルチキャストにより探査処理信号を送信して（ステップＳ４４）、所定時間だけ応答を待つ。これにより、動作しているＬＡＮ２００上の他の端末１００を知る。更に、スーパバイザ１は、動作している他の端末１００から応答があったら、当該端末１００上でヒントマネージャ２が動作中か否かを調べ、動作中であれば当該端末１００でヒントマネージャ２が動作していると認識する（ステップＳ４４）。
【００６０】
次に、スーパバイザ１は、所定時間中に、どの端末１００からも応答がないか、又は、どのヒントマネージャ２も動作していない場合、自己のヒントマネージャ２を起動して（ステップＳ４５）、その応答を待つ。自己のヒントマネージャ２を起動した場合、スーパバイザ１は、ＬＡＮ２００上の他の端末１００の各々のリダイレクタ３に対して、自己の端末１００でヒントマネージャ２が動作中であることを通知して（ステップＳ４６）、その応答を待つ。
【００６１】
起動されたヒントマネージャ２は、動作しているＬＡＮ２００上の他の端末１００の各々のキャッシュアダプタ６に対して、そのローカルインデクス５１の送信を要求し（ステップＳ４７）、（１又は複数の）ローカルインデクス５１を収集する（ステップＳ４７）。なお、キャッシュアダプタ６は、前述のように、当該端末１００の電源投入により起動されている。次に、ヒントマネージャ２は、収集したローカルインデクス５１に基づいて、グローバルインデクス７を作成し（ステップＳ４８）、これを読み出してそれが正しく作成されたかを調べる（ステップＳ４８）。
【００６２】
この後、スーパバイザ１は、（いずれかの端末１００において）動作しているヒントマネージャ２に対して定期的にマルチキャストによりポーリングを行い（ステップＳ４９）、その応答があることを確認する（ステップＳ４９）。これにより、ＬＡＮ２００内のいずれかの端末１００においてヒントマネージャ２が動作していることを保証することができる。
【００６３】
図８は、本発明の起動処理フローを示し、データキャッシュシステムを構成する最初（１台目）に起動された端末１００における起動処理を示す。
【００６４】
当該端末１００の電源の投入によりスーパバイザ１が起動されると（ステップＳ５１）、スーパバイザ１がキャッシュアダプタ６を起動する（ステップＳ５２）。起動されたキャッシュアダプタ６は、ローカルインデクス５１を作成して（ステップＳ５３）、これをスーパバイザ１に通知する（ステップＳ５４）。
【００６５】
当該通知の受信後、スーパバイザ１は、探査処理信号を送信して、動作しているＬＡＮ２００上の他の端末１００及びヒントマネージャ２の探査処理を行う（ステップＳ５５）。しかし、１台目であるので、所定時間中に、どの端末１００からも応答がなく、タイムアウトが発生する（ステップＳ５６）。
【００６６】
そこで、スーパバイザ１は、自己のヒントマネージャ２を起動して（ステップＳ５７）、キャッシュアダプタ６に対して、ローカルインデクス５１の送信を要求してこれを収集し（ステップＳ５８）、グローバルインデクス７を作成し（ステップＳ５９）、これをスーパバイザ１に通知する（ステップＳ５１０）。次に、スーパバイザ１は、リダイレクタ３を起動し、かつ、これにヒントマネージャ２の動作する端末１００を通知し（ステップＳ５１１）、また、ヒントマネージャ２に対してマルチキャストによりポーリングを行う（ステップＳ５１２）。この場合、スーパバイザ１は、自己のヒントマネージャ２から当該ポーリングに対する応答を受信する（ステップＳ５１２）。
【００６７】
一方、タイムアウトの発生後、その電源投入により、他の（２台目以降）の端末１００（のスーパバイザ１）が起動される。この結果、（１台目の）スーパバイザ１は、前述と同様にして、当該２台目の端末１００のスーパバイザ１から、端末１００及びヒントマネージャ２の探査処理信号を受信する（ステップＳ５１３）。そこで、（１台目の）スーパバイザ１は、当該信号に対する応答を２台目の端末１００のスーパバイザ１に返信する（ステップＳ５１３）。この応答に先立って、（１台目の）スーパバイザ１は、認証用のテーブル（図示せず）を用いて、２台目の端末１００の認証を行う。また、この応答には、自己（１台目の端末１００）のヒントマネージャ２が動作している旨の通知が含まれる。なお、２台目の端末１００のスーパバイザ１は、前述と同様にして、探査処理に先立ってそのローカルインデクス５１を作成し（ステップＳ５３）、一方、タイムアウトしないので、そのヒントマネージャ２を起動することはない。
【００６８】
次に、（１台目の）スーパバイザ１は、探査処理信号の受信に応じて、自己のヒントマネージャ２が動作しているので、これに対して、探査処理信号に基づくグローバルインデクス７の更新要求を送信する（ステップＳ５１４）。これに応じて、ヒントマネージャ２は、探査処理信号に基づいて、２台目の（他の）端末１００のキャッシュアダプタ６に対して、そのローカルインデクス５１の送信を要求し（ステップＳ５１５）、これを収集して（ステップＳ５１５）、これに基づいて、グローバルインデクス７を更新する（ステップＳ５１６）。
【００６９】
図９は、本発明の起動処理フローを示し、データキャッシュシステムを構成する最初の端末１００以外の（即ち、２台目（以降）に起動された）端末１００における起動処理を示す。
【００７０】
図８と同様に、２台目（以降）の端末１００の電源が投入され、スーパバイザ１が起動され（ステップＳ６１）、スーパバイザ１がキャッシュアダプタ６を起動し（ステップＳ６２）、キャッシュアダプタ６がローカルインデクス５１を作成して（ステップＳ６３）、これをスーパバイザ１に通知する（ステップＳ６４）。この後、スーパバイザ１は、マルチキャストにより探査処理信号を送信するして、他の端末１００及びヒントマネージャ２の探査処理を行う（ステップＳ６４）。
【００７１】
この時点で、既に１台目の端末１００が動作しているので、所定時間中に、１台目の端末１００からの応答があり、これに含まれる通知からそのヒントマネージャ２が動作していることを知る（ステップＳ６４）。そこで、スーパバイザ１は、自己のヒントマネージャ２を起動することなく、直ちに自己のリダイレクタ３を起動し、かつ、これにヒントマネージャ２の動作する端末１００が１台目の端末１００であることを通知する（ステップＳ６５）。なお、この探査処理のマルチキャストにより、１台目のスーパバイザ１は、２台目のスーパバイザ１が起動されたことを知る。
【００７２】
なお、キャッシュアダプタ６は、起動された後、他の（１台目の）端末１００において動作しているヒントマネージャ２から（起動されたことを知って）そのローカルインデクス５１の送信を要求されると（ステップＳ６６）、これに対する応答として、ローカルインデクス５１を返信する（ステップＳ６６）。
【００７３】
この後、何らかの理由で、あるタイミングで、データキャッシュシステムを構成する１台目の端末１００が停止される。この結果、スーパバイザ１は、マルチキャストによるポーリングを行っても（ステップＳ６７）、１台目の端末１００のヒントマネージャ２から応答を得ることができず（ステップＳ６７）、タイムアウトが発生する（ステップＳ６８）。
【００７４】
そこで、スーパバイザ１が、図８と同様に、自己（２台目）の端末１００のヒントマネージャ２を起動すると（ステップＳ６９）、起動されたヒントマネージャ２が自己のキャッシュアダプタ６にローカルインデクス５１の送信を要求し（ステップＳ６１０）、これを収集し（ステップＳ６１０）、グローバルインデクス７を作成する（ステップＳ６１１）。この後も図８と同様に処理される。なお、グローバルインデクス７は、自己のスーパバイザ１が行う探査処理に対する応答、又は、他のスーパバイザ１が行う探査処理信号の受信を契機として、前述のように、当該キャッシュアダプタ６からローカルインデクス５１を収集することにより、順次更新される。
【００７５】
以上から、図１４に示すように、本発明における端末１００の起動処理は、以下のようにされる。
【００７６】
例えば、端末１００Ａのヒントマネージャ２Ａが動作しており、端末１００Ｂ及び１００Ｃが動作しているとする。ヒントマネージャ２Ａ及び２Ｂは動作していない。この場合、スーパバイザ１Ａ、１Ｂ、１Ｃはマルチキャストによるポーリングを行うことで、相互に監視している。
【００７７】
この状態で、端末１００Ａのダウンにより、ヒントマネージャ２Ａが停止する。例えば、先に端末１００Ｂのスーパバイザ１Ｂがポーリングを行ったとする。しかし、スーパバイザ１Ａからは応答がない。そこで、スーパバイザ１Ｂは、自己のヒントマネージャ２Ｂを起動する。これにより、複数のキャッシュ５の重複しない連携は維持される。但し、ダウンした端末１００Ａのキャッシュアダプタ６Ａからはそのローカルインデクス５１Ａを得ることはできないが、当該データの参照もできないので問題は生じない。
【００７８】
図１５（Ａ）及び図１５（Ｂ）は、本発明の変形例説明図であり、本発明の他のデータキャッシュシステムの構成を示す。
【００７９】
図１５（Ａ）に示すように、ヒントマネージャ２（又はこれに対応するスーパバイザ１）が、グローバルインデクス７を端末１００（のリダイレクタ３）に定期的に送信するようにしてもよい。グローバルインデクス７におけるキャッシュ管理情報は、有用なデータについてのものであることが多い。そこで、当該データをキャッシュした以外の端末１００に、当該キャッシュ管理情報を送信してもよい。また、この場合、一定回数以上参照されたキャッシュデータ５２についてのキャッシュ管理情報を送信するようにしてもよい。また、 ある部署の端末１００により参照されたキャッシュデータ５２についてのキャッシュ管理情報を、あらかじめ定められた関連部署の端末１００に送信するようにしてもよい。これにより、グローバルインデクス７のキャッシュ管理情報を複数の端末１００で共有することができる。
【００８０】
また、図１５（Ｂ）に示すように、リダイレクタ３に予めアクセスを禁止するオリジナルサーバやデータ又は有害なデータの種類等、アクセスを禁止する対象を示す禁止情報３’を登録しておき、これらに対するアクセスを行わないようにしてもよい。この場合、当該データ等についてのウェブブラウザ４からの参照要求を受けても、リダイレクタ３はこれを実行しない（無視又は廃棄する）。これにより、アクセスを禁止するＵＲＬを管理し、インターネット４００への無駄なアクセスを防止することができる。
【００８１】
図１６は、本発明の他の変形例説明図であり、本発明の更に他のデータキャッシュシステムの構成を示す。図１７は、図１６のデータキャッシュシステムにおけるデータ表示処理フローである。
【００８２】
図１６に示すように、端末１００Ａの（Ａ種の）ウェブブラウザ４Ａが、（Ｂ種の）端末１００Ｂのウェブブラウザ４Ｂとは異なるブラウザである場合がある。この場合、各々の端末１００Ａ及び１００Ｂにおけるキャッシュデータ５２Ａ及び５２Ｂは、相互にデータ格納形式が異なる。即ち、当該データキャッシュシステム内に、Ａ種のデータ（キャッシュ）とＢ種のデータ（キャッシュ）とが存在する。
【００８３】
このような場合、従来は、端末１００Ａが端末１００Ｂからそのキャッシュしたキャッシュデータ５２Ｂをそのまま受信してしまうので、そのウェブブラウザ４Ａは、このデータ５２Ｂを表示することができなかった。また、逆も同様であった。しかし、本発明のデータキャッシュシステムは、キャッシュアダプタ６Ａ及び６Ｂを備えるので、端末１００Ａ及び端末１００Ｂは、相互にデータ格納形式の異なるキャッシュデータ５２Ａ及び５２Ｂを表示することができる。従って、異なるウェブブラウザ４Ａ・・・を使用する複数の端末１００Ａ・・・により、分散キャッシュシステムを構成することができる。
【００８４】
図１７において、端末１００Ａのウェブブラウザ４Ａが、▲１▼に示すように、自己の要求するデータ（Ｂ種のキャッシュデータ）についてのデータ要求を送信すると（ステップＳ７１）、そのリダイレクタ３Ａを介して、▲２▼に示すように、当該データをキャッシュしている端末１００Ｂのキャッシュアダプタ６Ｂがこれを受信する（ステップＳ７２）。キャッシュアダプタ６Ｂは、▲３▼に示すように、自己の管理するＢ種のキャッシュデータ５２Ｂの中から当該要求されたデータを取り出し（ステップＳ７３）、▲４▼に示すように、これを要求元であるウェブブラウザ４Ａに送信する（ステップＳ７４）。この時、この送信に先立って、キャッシュアダプタ６Ｂは、要求元の種別（即ち、その使用するデータ格納形式）を調べ、自己のデータ格納形式と要求元のデータ格納形式とが異なる場合、読み出したキャッシュデータ５２Ｂのデータ格納形式を要求元で利用可能なデータ格納形式に変換する。この後、ウェブブラウザ４Ａが、▲５▼に示すように、当該送信されたデータを受信すると（ステップＳ７５）、そのデータ格納形式は自己の使用するものに変換されているので、当該データをその出力装置９の表示画面上に表示出力することができる（ステップＳ７６）。
【００８５】
なお、データの要求は個々のデータ単位で行なっても、複数のデータについてまとめて行なってもよい。また、異なるデータ格納形式のウェブブラウザ４から得たデータを、全て要求元で再度キャッシュしてもよい。更に、要求先の端末１００にキャッシュされている全てのデータを要求してもよい。この場合、重複しないデータのみ取り出して送信するか、全てを取り出した上で重複しないデータのみを送信することも可能である。
【００８６】
図１８は、本発明の他の変形例説明図であり、本発明の更に他のデータキャッシュシステムの構成を示す。
【００８７】
図１８に示すように、物理的に１個の端末１００上で、（Ａ種の）ウェブブラウザ４Ａと、（Ｂ種の）ウェブブラウザ４Ｂとが動作する場合がある。例えば、異なるユーザが当該端末１００を共用しているが、ブラウザは異なる場合である。この場合、図１７と同様に、端末１００において、相互にデータ格納形式が異なるキャッシュデータ５２Ａ及び５２Ｂが存在する。即ち、図１８は図１７の状態が１個の端末１００において生じる場合を示す変形例である。従って、その処理は図１７及び図１８とほぼ同様である。図１８における▲１▼〜▲６▼の処理は、各々、図１６における▲１▼〜▲６▼の処理に対応するので、説明を省略する。
【００８８】
このような場合でも、本発明のデータキャッシュシステムは、各々のウェブブラウザ４Ａ及び４Ｂに対応するキャッシュアダプタ６Ａ及び６Ｂを備える。従って、相互に他方に対応するキャッシュアダプタ６Ｂ及び６Ａを利用することにより、相互にデータ格納形式の異なるキャッシュデータ５２Ａ及び５２Ｂを表示することができる。
【００８９】
なお、本発明は、ウェブブラウザ４が同一種のものであっても、同様に適用することができる。また、キャッシュアダプタ６が管理するキャッシュデータ５２は、ウェブ（インターネット）から得られたデータに限られず、どのようなデータであってもよい。また、１個のキャッシュアダプタ６で１個の端末１００上の複数のキャッシュ５を管理してもよい。
【００９０】
以上から明らかなように、この明細書からは、前記の発明並びに以下の発明が把握される。
（付記１）  複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法であって、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備え、
前記複数の端末の各々において、他の端末との間で定期的に通信を行い、その応答の有無をチェックし、
当該端末により参照されたデータをその端末に格納して管理し、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを動作するようにし、
前記動作するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成し、
前記動作するようにされた全体情報管理部から、動作中であることを前記複数の端末に設けられる参照要求処理部の各々に通知し、
前記複数の端末の参照要求処理部のいずれかが、データの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせ、
前記問い合わせた参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返す
ことを特徴とするデータキャッシュ方法。
（付記２）  前記全体情報管理部が動作中である端末から前記応答を得られなかった場合、自己の端末の全体情報管理部を起動する
ことを特徴とする付記１に記載のデータキャッシュ方法。
（付記３）  他の端末との間でマルチキャストによる通信を行いその応答が得られない場合にのみ、自己の端末の前記全体情報管理部を起動する
ことを特徴とする付記２に記載のデータキャッシュ方法。
（付記４）  前記参照要求処理部が前記データを得た場合、当該データにキャッシュ不可の情報を付加する
ことを特徴とする付記１に記載のデータキャッシュ方法。
（付記５）  前記全体情報管理部が、前記全体情報格納部を前記複数の端末の各々に定期的に送信する
ことを特徴とする付記１に記載のデータキャッシュ方法。
（付記６）  前記参照要求がアクセスを禁止する対象を示す禁止情報に該当する場合、当該参照要求を実行しない
ことを特徴とする付記１に記載のデータキャッシュ方法。
（付記７）  前記複数の端末に格納されたデータに相互に異なる第１及び第２のデータ格納形式のものを含み、
前記問い合わせた参照要求処理部の端末におけるデータ格納形式が前記第１のデータ格納形式であり、当該データをキャッシュする端末におけるデータ格納形式が前記第２のデータ格納形式である場合、当該データのデータ格納形式を前記第１のデータ格納形式に変換したものが、前記問い合わせた参照要求処理部において得られる
ことを特徴とする付記１に記載のデータキャッシュ方法。
（付記８）  他のデータキャッシュ装置と共にデータキャッシュシステムを構成するデータキャッシュ装置であって、
他のデータキャッシュ装置の動作監視部との間で定期的に通信を行い、その応答の有無により全体情報管理部の動作をチェックする動作監視部と、
当該データキャッシュ装置により参照されたデータを格納するキャッシュと、
前記キャッシュを管理するキャッシュ管理部と、
当該データキャッシュ装置及び前記他のデータキャッシュ装置のキャッシュに格納されたデータについての管理情報からなる全体情報格納部を作成し、これにもとづいて参照要求処理部からの問い合わせに応じて所定の応答を返す全体情報管理部と、
前記複数のデータキャッシュ装置からの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせ、前記全体情報管理部からの前記応答に基づいて当該データを得て前記参照要求をしたデータキャッシュ装置に返す参照要求処理部とからなり、
前記複数のデータキャッシュ装置における複数の全体情報管理部の内の１個のみが動作するようにされ、
前記動作するようにされた全体情報管理部が、前記全体情報格納部を当該データキャッシュ装置内に作成し、自己が動作中であることを前記複数のデータキャッシュ装置における複数の前記動作監視部を介して対応する前記参照要求処理部の各々に通知し、
前記参照要求処理部が、当該データがキャッシュされている場合には前記応答において示されるキャッシュ管理部から当該データを得る
ことを特徴とするデータキャッシュ装置。
（付記９）  前記複数の端末の各々において、当該電源の投入により前記動作監視部が起動され、前記起動された動作監視部により前記キャッシュ管理部及び参照要求処理部が起動される
ことを特徴とする付記８に記載のデータキャッシュ装置。
（付記１０）  前記複数の端末の各々において、前記起動された動作監視部により前記キャッシュ管理部、全体情報管理部及び参照要求処理部がこの順に起動され、
前記起動された全体情報管理部が、前記複数の端末の各々の前記キャッシュ管理部から当該管理情報を収集して前記全体情報格納部を作成する
ことを特徴とする付記９に記載のデータキャッシュ装置。
（付記１１）  複数の端末を有するデータキャッシュシステムであって、
前記複数の端末の各々が、
他の端末の動作監視部との間で定期的に通信を行い、その応答の有無により全体情報管理部の動作をチェックする動作監視部と、
当該端末により参照されたデータを格納するキャッシュと、
前記キャッシュを管理するキャッシュ管理部と、
前記複数の端末のキャッシュに格納されたデータの各々についての管理情報からなる全体情報格納部を作成し、これにもとづいて参照要求処理部からの問い合わせに応じて所定の応答を返す全体情報管理部と、
前記複数の端末からの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせ、前記全体情報管理部からの前記応答に基づいて当該データを得て前記参照要求をした端末に返す参照要求処理部とからなり、
前記複数の端末における複数の全体情報管理部の内の１個のみが動作するようにされ、
前記動作するようにされた全体情報管理部が、前記全体情報格納部をその端末内に作成し、自己が動作中であることを前記複数の端末における複数の前記動作監視部を介して対応する前記参照要求処理部の各々に通知し、
前記参照要求処理部が、当該データがキャッシュされている場合には前記応答において示されるキャッシュ管理部から当該データを得る
ことを特徴とするデータキャッシュシステム。
（付記１２）  複数の端末を有するデータキャッシュシステムにおけるデータキャッシュ方法を実現するプログラムであって、
前記プログラムは、当該端末であるコンピュータに、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備えさせ、
他の端末との間で定期的に通信を行い、その応答の有無をチェックさせ、
当該端末により参照されたデータをその端末に格納して管理させ、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを動作するようにさせ、
前記動作するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成させ、
前記動作するようにされた全体情報管理部から、動作中であることを前記複数の端末に設けられる参照要求処理部の各々に通知させ、
前記参照要求処理部により、データの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせさせ、
前記参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返させる
ことを特徴とするプログラム。
（付記１３）  他のデータキャッシュ装置と共にデータキャッシュシステムを構成するデータキャッシュ装置を実現するためのプログラムを記録したコンピュータ読み取り可能なプログラム記録媒体であって、
前記プログラムは、当該データキャッシュ装置であるコンピュータに、
前記複数の端末に格納されたデータの各々についての管理情報を作成し、これにもとづいて前記複数の端末からの問い合わせに応じて所定の応答を返す全体情報管理部を前記複数の端末の各々に備えさせ、
他の端末との間で定期的に通信を行い、その応答の有無をチェックさせ、
当該端末により参照されたデータをその端末に格納して管理させ、
前記チェックの結果にもとづいて、複数の端末における複数の全体情報管理部の内の１個のみを動作するようにさせ、
前記動作するようにされた全体情報管理部により、前記複数の端末に格納されたデータの各々についての管理情報からなる全体情報格納部をその端末内に作成させ、
前記動作するようにされた全体情報管理部から、動作中であることを前記複数の端末に設けられる参照要求処理部の各々に通知させ、
前記参照要求処理部により、データの参照要求を受けて、当該データについての管理情報を前記全体情報管理部に問い合わせさせ、
前記参照要求処理部により、前記問い合わせに対する応答に基づいて、当該データがキャッシュされている場合には前記応答において示される前記複数の端末のいずれかから当該データを得て、前記得られたデータを前記参照要求をした端末に返させる
ことを特徴とするプログラム記録媒体。
【００９１】
【発明の効果】
本発明によれば、データキャッシュ方法及びシステムにおいて、複数の端末の（ローカル）キャッシュを重複することなく連携させることができるので、キャッシュサーバを不要にできる。従って、キャッシュサーバ専用のコンピュータをシステムに追加する必要がなく、キャッシュサーバ用のコンピュータを購入したり、キャッシュサーバの設置場所を確保したり、キャッシュサーバのメンテナンスをしたりする必要がない。
【００９２】
また、本発明によれば、データキャッシュ方法を実現するプログラム及びその記録媒体によれば、当該プログラムをＣＤ−ＲＯＭ等の記録媒体に格納して提供できるので、容易にデータキャッシュ方法を構成することができる。従って、前述のように、複数のローカルキャッシュを重複することなく連携させて、キャッシュサーバを不要にできるので、キャッシュサーバ専用のコンピュータをシステムに追加する必要がなく、キャッシュサーバ用のコンピュータを購入したり、キャッシュサーバの設置場所を確保したり、キャッシュサーバのメンテナンスをしたりする必要がない。
【図面の簡単な説明】
【図１】データキャッシュシステム構成図である。
【図２】端末構成図である。
【図３】グローバルインデクス説明図である。
【図４】問い合わせ処理フローを示す。
【図５】問い合わせ処理フローを示す。
【図６】問い合わせ処理フローを示す。
【図７】起動処理フローを示す。
【図８】起動処理フローを示す。
【図９】起動処理フローを示す。
【図１０】問い合わせ処理説明図である。
【図１１】問い合わせ処理説明図である。
【図１２】問い合わせ処理説明図である。
【図１３】問い合わせ処理説明図である。
【図１４】起動処理説明図である。
【図１５】本発明の変形例説明図である。
【図１６】本発明の他の変形例説明図である。
【図１７】図１６の問い合わせ処理説明図である。
【図１８】本発明の他の変形例説明図である。
【図１９】従来技術説明図である。
【符号の説明】
１    スーパバイザ
２    ヒントマネージャ
３    リクエスト・リダイレクタ（リダイレクタ）
４    ウェブブラウザ
５    キャッシュ
６    キャッシュアダプタ
７    キャッシュグローバルインデクス（グローバルインデクス）
８    マーク処理部
１００    端末（クライアント）
２００    ＬＡＮ（ネットワーク）
３００    サーバ
４００    インターネット
５００    オリジナルサーバ
【図１】
0004227338.tif 000002
【図２】
0004227338.tif 000003
【図３】
0004227338.tif 000004
【図４】
0004227338.tif 000005
【図５】
0004227338.tif 000006
【図６】
0004227338.tif 000007
【図７】
0004227338.tif 000008
【図８】
0004227338.tif 000009
【図９】
0004227338.tif 000010
【図１０】
0004227338.tif 000011
【図１１】
0004227338.tif 000012
【図１２】
0004227338.tif 000013
【図１３】
0004227338.tif 000014
【図１４】
0004227338.tif 000015
【図１５】
0004227338.tif 000016
【図１６】
0004227338.tif 000017
【図１７】
0004227338.tif 000018
【図１８】
0004227338.tif 000019
【図１９】
0004227338.tif 000020