(57)【要約】【課題】コンピュータのディスク容量の削減を図ること。【解決手段】サーバコンピュータ３が、複数のクライアントコンピュータ１にて共有されるファイルの物理データを当該サーバコンピュータ内に記憶すると共に、物理データを参照するポインタを各コンピュータに表示することにより共有ファイルの管理を行うデータ共有システムであって、サーバコンピュータ３が、クライアントコンピュータ１から所定のファイルの複製指令を受けたときに複製対象である所定のファイルのポインタを参照先として指し示す新たなポインタを生成するポインタ生成機能と、所定のファイルのポインタと新たなポインタとの関連付けデータをサーバコンピュータ３内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、を備えた。【選択図】        図２
2004362418.tif 000002
【特許請求の範囲】
【請求項１】
複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータを備え、
このサーバコンピュータが、前記複数のクライアントコンピュータにて共有されるファイルの物理データを当該サーバコンピュータ内に記憶すると共に、当該物理データを参照するポインタを前記各コンピュータに表示することにより共有ファイルの管理を行うデータ共有システムであって、
前記サーバコンピュータが、前記クライアントコンピュータから当該サーバコンピュータ内に記憶された所定のファイルの複製指令を受けたときに当該複製対象であるファイルのポインタを参照先として指し示す他のポインタを生成するポインタ生成機能と、前記所定のファイルのポインタと前記新たに生成した他のポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、を備えたことを特徴とするデータ共有システム。
【請求項２】
前記サーバコンピュータが、前記所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶機能と、前記物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている前記新たなポインタに対応する前記クライアントコンピュータに前記物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知機能と、通知を受けた前記クライアントコンピュータから前記物理データの変更に従わない旨の通知を受けた際に前記物理データの変更前のデータを前記新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行機能と、を備えたことを特徴とする請求項１記載のデータ共有システム。
【請求項３】
前記変更通知機能は、前記物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている前記新たなポインタに前記クライアントコンピュータからアクセスがあったときに当該クライアントコンピュータに前記物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う機能を有する、ことを特徴とする請求項２記載のデータ共有システム。
【請求項４】
前記物理データの変更は、当該物理データが削除されたことを含む、ことを特徴とする請求項２又は３記載のデータ共有システム。
【請求項５】
複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータを備え、
このサーバコンピュータが、前記複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、前記特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えたことを特徴とするデータ共有システム。
【請求項６】
複数のクライアントコンピュータにネットワークを介して接続され、前記クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータを備え、
このサーバコンピュータが、当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えたことを特徴とするデータ共有システム。
【請求項７】
複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータが、前記複数のクライアントコンピュータにて共有されるファイルの物理データを当該サーバコンピュータ内に記憶すると共に、当該物理データを参照するポインタを前記各コンピュータに表示することにより共有ファイルの管理を行うデータ共有方法であって、
前記サーバコンピュータが，前記クライアントコンピュータから当該サーバコンピュータ内に記憶された所定のファイルの複製指令を受けたときに当該複製対象であるファイルのポインタを参照先として指し示す他のポインタを生成するポインタ生成工程と、前記サーバコンピュータが，前記所定のファイルのポインタと前記新たに生成した他のポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、前記サーバコンピュータが，前記クライアントコンピュータから前記新たなポインタにアクセスがあったときに前記ファイル管理テーブルから関連付けデータを読み出して前記新たなポインタが関連付けられている前記ポインタを介して前記物理データを参照させる物理データ参照工程と、を備えたことを特徴とするデータ共有方法。
【請求項８】
少なくとも前記管理テーブル記憶工程の後に、前記サーバコンピュータが，前記所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶工程と、前記サーバコンピュータが，前記物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている前記新たなポインタに対応する前記クライアントコンピュータに前記物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知工程と、前記サーバコンピュータが，通知を受けた前記クライアントコンピュータから前記物理データの変更に従わない旨の通知を受けた際に前記物理データの変更前のデータを前記新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行工程と、を備えたことを特徴とする請求項７記載のデータ共有方法。
【請求項９】
複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータが，前記複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視工程と、前記サーバコンピュータが，監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、前記サーバコンピュータが，前記特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除工程と、を備えたことを特徴とするデータ共有方法。
【請求項１０】
複数のクライアントコンピュータにネットワークを介して接続され、前記クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータが，当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視工程と、前記サーバコンピュータが，監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、前記サーバコンピュータが，特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除工程と、を備えたことを特徴とするデータ共有方法。
【請求項１１】
複数のクライアントコンピュータに共有されるファイルの物理データを記憶すると共に、当該物理データを参照するポインタを前記クライアントコンピュータに表示することにより共有ファイルの管理を行う、前記複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータに、
前記クライアントコンピュータから当該サーバコンピュータ内に記憶された所定のファイルの複製指令を受けたときに当該複製対象であるファイルのポインタを参照先として指し示す他のポインタを生成するポインタ生成機能と、前記サーバコンピュータが前記所定のファイルのポインタと前記新たに生成した他のポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、前記サーバコンピュータが前記クライアントコンピュータから前記新たなポインタにアクセスがあったときに前記ファイル管理テーブルから関連付けデータを読み出して前記新たなポインタが関連付けられている前記ポインタを介して前記物理データを参照させる物理データ参照機能と、を実現させるためのデータ共有用プログラム。
【請求項１２】
前記サーバコンピュータに、前記所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶機能と、前記物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている前記新たなポインタに対応する前記クライアントコンピュータに前記物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知機能と、通知を受けた前記クライアントコンピュータから前記物理データの変更に従わない旨の通知を受けた際に前記物理データの変更前のデータを前記新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行機能と、を実現するための請求項１１記載のデータ共有用プログラム。
【請求項１３】
複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータに、
前記複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、前記特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を実現するためのデータ共有用プログラム。
【請求項１４】
複数のクライアントコンピュータにネットワークを介して接続され、前記クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータに、
当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータを前記サーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を実現するためのデータ共有用プログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データ共有システムにかかり、特に、ネットワークに接続された複数のクライアントにて同一内容のデータを共有するシステムに関する。また、データ共有方法及びデータ共有用プログラムに関する。
【０００２】
【従来の技術】
社内ＬＡＮなどの複数のコンピュータがネットワークに接続されたサーバ・クライアントシステムでは、サーバコンピュータをファイルサーバとして利用することが多々あり、かかる場合には複数の利用者が共有ファイルに同時にアクセス可能な状態にある。このように、同一のファイルを複数の利用者が参照する場合には、サーバコンピュータで使用するディスク容量は１ファイル分ですみ効率的である。
【０００３】
しかしながら、サーバコンピュータ内の共有ファイルは、複数の利用者がアクセス可能であるから、変更が加えられる可能性や、削除される可能性もある。従って、各利用者は共有ファイルを別途保存したい場合もあり、このような場合には、それぞれの利用者が各々管理するファイル領域にファイルのコピーを作成する、という利用方法が採られる。
【０００４】
また、サーバコンピュータを用いて共有ファイルを管理する方法では、上述したように削除されてしまうなどの不都合があることから、サーバコンピュータを置かない複数のクライアントコンピュータによるネットワークシステムも存在する。かかる場合には、各コンピュータに分散して保有されている共有ファイル参照情報を用意し、当該共有ファイル参照情報を各コンピュータ間で交換し、これによりファイルを共有するという利用方法が採られている。かかる技術が特許文献１に開示されている。
【０００５】
【特許文献１】
特開２００２−２４４９０６号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、上記従来例には以下のような不都合があった。まず、同一のファイルを複数の領域に保存することは、多くのディスク容量を無駄に使用することになるという問題が生じる。
【０００７】
また、サーバコンピュータを置かない構成のときには、共有ファイル参照情報を総てのコンピュータが記憶したり、配信したりする必要があり、各コンピュータのディスク容量が不要に多く使用されるという問題が生じる。また、ネットワーク渋滞が生じる可能性もある。
【０００８】
一方、個別のファイルで管理する場合には、オリジナルのファイルが変更された場合にはそれぞれのファイルに対して変更がかからないため、古いファイルを保存することになり、データの整合が取れないという問題も生じる。
【０００９】
【発明の目的】
本発明は、上記従来例の有する不都合を改善し、特に、複数のコンピュータによる共有ファイルの管理を容易にすると共に、当該共有ファイルを記憶するコンピュータのディスク容量の削減を図ることができるデータ共有システム及び方法並びにデータ共有用プログラムを提供することをその目的とする。
【００１０】
【課題を解決するための手段】
そこで、本発明では、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータを備え、このサーバコンピュータが、複数のクライアントコンピュータにて共有されるファイルの物理データを当該サーバコンピュータ内に記憶すると共に、物理データを参照するポインタを各コンピュータに表示することにより共有ファイルの管理を行うデータ共有システムであって、サーバコンピュータが、クライアントコンピュータから所定のファイルの複製指令を受けたときに複製対象である所定のファイルのポインタを参照先として指し示す新たなポインタを生成するポインタ生成機能と、所定のファイルのポインタと新たなポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、を備えた、という構成を採っている。
【００１１】
このような構成にすることにより、ファイルサーバにて同一のファイルを異なる領域に複製をする際には、複製対象である物理データを指し示すポインタをさらに参照する新たなポインタが生成される。そして、これら両ポインタを関連付けるデータが、ファイルサーバ内のファイル管理テーブルに記憶される。このため、後に複製したファイルを参照する場合には、新たなポインタを指定することで、ファイル管理テーブル内の関連付けデータに基づいて元のポインタが参照され、当該元のポインタにて参照される物理データにアクセスすることができる。
従って、ファイルの物理データ自体を実際に複製することなく、当該物理データのデータ容量よりも小さい容量のポインタと関連付けデータを生成することのみで、ファイル複製を実現でき、ディスク容量の削減を図ることができる。
【００１２】
また、上記構成に加えて、サーバコンピュータが、所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶機能と、物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている新たなポインタに対応するクライアントコンピュータに物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知機能と、通知を受けたクライアントコンピュータから物理データの変更に従わない旨の通知を受けた際に物理データの変更前のデータを新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行機能と、を備えた、という構成を採ると望ましい。
【００１３】
そして、上記変更通知機能は、物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている新たなポインタにクライアントコンピュータからアクセスがあったときに当該クライアントコンピュータに物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う機能を有する、という構成であってもよい。
【００１４】
また、上記構成において、物理データの変更は、当該物理データが削除されたことを含む、という構成であってもよい。
【００１５】
このような構成にすることにより、まず、ポインタを介して参照している物理データの内容が更新や削除されるなど変更されると、変更前の物理データは一時的に保存される。そして、変更直後や変更後に新たなポインタにアクセスがあったときに、元のポインタを介して参照する物理データの内容が変更された旨の情報が新たなポインタを用いているクライアントコンピュータに通知されて、かかる変更に従うか否かが問われる。これに対し、従う場合には変更された物理データをそのまま参照することとなるが、従わない場合には、新たなポインタが変更前の物理データを直接参照することとなる。従って、共有ファイルのデータが勝手に更新や削除されるなど変更されることが抑制され、データ紛失等を抑制することができる。
【００１６】
また、本発明では、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータを備え、このサーバコンピュータが、複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えた、という構成を採っている。
【００１７】
このような構成にすることにより、まず、定期的に同一ネットワーク上のコンピュータに記憶されているファイルがサーバコンピュータにて監視される。そして、同一のファイルが発見されると、その中の特定のファイルの物理データを参照するポインタを選定して、当該特定ポインタに他のファイルのポインタを関連付けるデータを生成してサーバコンピュータに記憶する。これと共に、特定ファイル以外のファイルの物理データを削除する。従って、クライアントコンピュータから、特定ファイルと同一内容の他のファイルを参照する場合には、当該他のファイルのポインタを参照することにより、関連付けデータから特定ポインタが参照され、当該特定ファイルの物理データを参照することができる。これにより、データ内容を保持しつつ、各コンピュータ内で同一データの重複を抑制でき、ディスク容量の削減を図ることができる。
【００１８】
さらに、複数のクライアントコンピュータにネットワークを介して接続され、クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータを備え、このサーバコンピュータが、当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えた、という構成をも採っている。
【００１９】
このような構成にすることにより、まず、ストレージサービスなどとして使用されているサーバコンピュータにて、クライアントコンピュータから送信されて当該サーバコンピュータに記憶されているファイルが監視される。そして、同一のファイルが発見されると、その中の特定のファイルの物理データを参照するポインタを選定して、当該特定ポインタに他のファイルのポインタを関連付けるデータを生成してサーバコンピュータに記憶する。これと共に、特定ファイル以外のファイルの物理データを削除する。従って、クライアントコンピュータが、サーバコンピュータ内に記憶したファイルを参照する際には、他のファイルのポインタを参照することにより、関連付けデータから特定ポインタが参照され、当該特定ファイルの物理データを参照することができ、記憶した内容と同一のデータを使用することができる。これにより、データ内容を保持しつつ、サーバコンピュータ内で同一データの重複を抑制でき、ディスク容量の削減を図ることができる。
【００２０】
また、本発明では、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータが、複数のクライアントコンピュータにて共有されるファイルの物理データを当該サーバコンピュータ内に記憶すると共に、当該物理データを参照するポインタを各コンピュータに表示することにより共有ファイルの管理を行うデータ共有方法であって、サーバコンピュータが，クライアントコンピュータから当該サーバコンピュータ内に記憶された所定のファイルの複製指令を受けたときに当該複製対象であるファイルのポインタを参照先として指し示す他のポインタを生成するポインタ生成工程と、サーバコンピュータが，所定のファイルのポインタと新たに生成した他のポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、サーバコンピュータが，クライアントコンピュータから新たなポインタにアクセスがあったときにファイル管理テーブルから関連付けデータを読み出して新たなポインタが関連付けられているポインタを介して物理データを参照させる物理データ参照工程と、を備えた、データ共有方法をも提供している。
【００２１】
そして、上記工程に加え、少なくとも管理テーブル記憶工程の後に、サーバコンピュータが，所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶工程と、サーバコンピュータが，物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている新たなポインタに対応するクライアントコンピュータに物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知工程と、サーバコンピュータが，通知を受けたクライアントコンピュータから物理データの変更に従わない旨の通知を受けた際に物理データの変更前のデータを新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行工程と、を備えてもよい。
【００２２】
また、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータが，複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視工程と、サーバコンピュータが，監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、サーバコンピュータが，特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除工程と、を備えたデータ共有方法をも提供している。
【００２３】
さらに、複数のクライアントコンピュータにネットワークを介して接続され、クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータが，当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視工程と、サーバコンピュータが，監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶工程と、サーバコンピュータが，特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除工程と、を備えたデータ共有方法をも提供している。
【００２４】
また、本発明では、複数のクライアントコンピュータに共有されるファイルの物理データを記憶すると共に、当該物理データを参照するポインタをクライアントコンピュータに表示することにより共有ファイルの管理を行う、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータに、クライアントコンピュータから当該サーバコンピュータ内に記憶された所定のファイルの複製指令を受けたときに当該複製対象であるファイルのポインタを参照先として指し示す他のポインタを生成するポインタ生成機能と、サーバコンピュータが所定のファイルのポインタと新たに生成した他のポインタとの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、サーバコンピュータがクライアントコンピュータから新たなポインタにアクセスがあったときにファイル管理テーブルから関連付けデータを読み出して新たなポインタが関連付けられているポインタを介して物理データを参照させる物理データ参照機能と、を実現させるためのデータ共有用プログラムをも提供している。
【００２５】
そして、上記プログラムは、さらに、サーバコンピュータに、所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶機能と、物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている新たなポインタに対応するクライアントコンピュータに物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知機能と、通知を受けたクライアントコンピュータから物理データの変更に従わない旨の通知を受けた際に物理データの変更前のデータを新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行機能と、を実現するためのデータ共有用プログラムとしてもよい。
【００２６】
また、本発明では、複数のクライアントコンピュータにネットワークを介して接続されたサーバコンピュータに、複数のクライアントコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を実現するためのデータ共有用プログラムをも提供している。
【００２７】
さらに、複数のクライアントコンピュータにネットワークを介して接続され、クライアントコンピュータから送信されたファイルを記憶管理するサーバコンピュータに、当該サーバコンピュータにポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときにこれら同一ファイルの各ポインタのうち１つの特定のポインタに他のポインタをそれぞれ関連付けて関連付けデータを生成しこの関連付けデータをサーバコンピュータ内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を実現するためのデータ共有用プログラムをも提供している。
【００２８】
【発明の実施の形態】
〈第１の実施形態〉
以下、本発明の第１の実施形態を、図１乃至図３を参照して説明する。図１は、本発明の第１の実施形態における構成を示すブロック図である。図２は、本実施形態におけるデータの状態を示す模式図である。図３は、システムの動作を示すシーケンス図である。
【００２９】
（全体構成）
図１に示すように、本実施形態におけるデータ共有システムは、複数のクライアントコンピュータ１が、ネットワーク２を介して接続されたサーバコンピュータ３を備えている。そして、複数のクライアントコンピュータ１にて共有されるファイルがサーバコンピュータ３に記憶されており、当該サーバコンピュータ３がこれら共有ファイルを管理するというシステムである。以下、これを詳述する。
【００３０】
（クライアントコンピュータ）
クライアントコンピュータ１は、上記サーバコンピュータ３とサーバ・クライアントシステムを構築するクライアント側のコンピュータであって、サーバコンピュータ３にアクセス権限を有する。そして、一般的なコンピュータであって、所定の情報処理能力を有するＣＰＵといった演算装置、及び、所定の記憶容量を有するハードディスクなどの記憶装置を備えていて、ネットワーク２を介してサーバコンピュータ３に接続可能なよう通信装置も備えている。
【００３１】
そして、本実施形態では、特に、クライアントコンピュータ１は会社などの同一組織内のユーザ（クライアント）が使用するコンピュータであって、後述するようにサーバコンピュータ３内に、他のユーザと共有するファイルを記憶するようになっている。従って、サーバコンピュータ３にアクセスして、共有ファイルを生成したり、既存の共有ファイルのデータ内容を更新したり、削除することが可能である。
【００３２】
（ネットワーク）
ネットワーク２は、本実施形態では、特定企業内のみで稼働するイントラネットや、ＴＣＰ／ＩＰ以外のプロトコルで通信する特定のネットワークである。但し、専用線や電話回線あるいはＣＡＴＶのケーブル等の有線回線や、携帯電話回線といった無線回線を用い、ＴＣＰ／ＩＰプロトコルといった通信プロトコルにて通信を行うインターネットであってもよい。
【００３３】
（サーバコンピュータ）
サーバコンピュータ３は、上記クライアントコンピュータ１がアクセス可能であり、これらクライアントコンピュータ１が使用可能なよう共有ファイルを管理している。本実施形態では、特に、特定の社内ＬＡＮにおけるファイルサーバである。そして、その構成は、一般的なサーバコンピュータであって、所定の情報処理能力を有するＣＰＵといった演算装置、及び、所定の記憶容量を有するハードディスクなどの記憶装置を備えていて、ネットワーク２に接続可能なよう通信装置も備えている。
【００３４】
ここで、サーバコンピュータ３が有する機能について説明する。なお、以下に説明するサーバコンピュータ３が有する機能は、かかる機能用プログラムがコンピュータのＣＰＵに組み込まれることにより実現できる。すなわち、データ共有用プログラムが、サーバコンピュータ３のハードディスクなどの記憶装置に記憶されていて、ＣＰＵにて読み出されることで当該ＣＰＵに機能ブロックが構築される。なお、プログラムは、ＣＤ−ＲＯＭなどの可搬媒体に記憶されていて、これがサーバコンピュータ３に提供されてもよく、あるいは、ネットワーク上の他のコンピュータからダウンロードされて提供されてもよい。また、後述する他の実施形態においても、同様である。
【００３５】
サーバコンピュータ３は、まず、基本的なファイルサーバとしての機能として、複数のクライアントコンピュータ１にて共有されるファイルの物理データを当該サーバコンピュータ３内に記憶すると共に、物理データを参照するポインタを各コンピュータに表示することにより共有ファイルの管理を行う機能を有している。かかる機能の詳細を、図２を参照して説明する。
【００３６】
まず、所定のクライアントコンピュータ（Ａ）１ａからファイル（Ａ）の記録依頼があると（矢印Ａ１参照）、サーバ３の記憶装置３１には、ファイル（Ａ）を表示するデータとしてファイル表示データＦ１０が生成される。そして、このファイル表示データＦ１０が作成されると同時に、当該ファイル自体のデータ内容が物理イメージＰ１０（物理データ）として、上記ファイル表示データと関連付けられてディスク３１に記憶される。なお、図２及び以下の文章では、ファイル表示データＦ１０を単に「ファイルＦ１０」と表し、物理イメージＰ１０を「イメージＰ１０」と表す。以下、同様である。
【００３７】
このとき、ファイルＦ１０は、当該ファイルの物理イメージを参照するポインタとしての役割を果たしている。
【００３８】
このようにすることで、クライアントコンピュータ（Ａ）１ａやクライアントコンピュータ（Ｂ）１ｂなどは、ファイルＦ１０を介して、そのデータ内容であるイメージＰ１０にアクセスすることができる。
【００３９】
そして、サーバコンピュータ３には、クライアントコンピュータ１から所定のファイルの複製指令を受けたときに複製対象である所定のファイルのポインタを参照先として指し示す新たなポインタを生成するポインタ生成機能と、所定のファイルのポインタと新たなポインタとの関連付けデータをサーバコンピュータ３内に形成されたファイル管理テーブルに記憶する管理テーブル記憶機能と、が備えられている。
【００４０】
これら機能についても、図２を参照して詳述する。ここでは、例えば、上述したファイルＦ１０を生成したクライアントコンピュータ（Ａ）１ａとは別のクライアントコンピュータ（Ｂ）１ｂからファイルＦ１０にアクセスがあり、当該ファイルＦ１０をハードディスク３１の別の領域（例えば、クライアントコンピュータ（Ｂ）１ｂが自由に使用できる領域）に記憶する場合を考える。
【００４１】
まず、ポインタ生成機能は、クライアントコンピュータ（Ｂ）１ｂにてファイルＦ１０にアクセスされ（矢印Ａ２参照）、かかるファイルＦ１０の複製指令を受けたときに、まず、ファイルＦ１０を参照する新たなファイルＦ１１を生成する。すなわち、ファイルＦ１０を指し示す新たなポインタとしてのファイル表示データＦ１１を生成する（矢印Ａ３参照）。
【００４２】
管理テーブル記憶機能は、この生成したファイルＦ１１と、その参照先であるファイルＦ１０との関係を表す関連付けデータを、ハードディスク３１内にあらかじめ設けてあるポインタレポジトリＲ１０（ファイル管理テーブル）に記憶する（矢印Ａ４参照）。このとき、新たなポインタであるファイルＦ１１が参照元となり、また、ファイルＦ１０が参照先として表される。
【００４３】
そして、上述したファイルを複製する機能に伴い、サーバコンピュータ３は、新たなファイルＦ１１からイメージＰ１０を参照する機能も有している。具体的には、まず、クライアントコンピュータ（Ｂ）１ｂが複製したファイルＦ１１にアクセスした際には、ファイルＦ１１が別のファイルに関連付けられているか否かをポインタレポジトリＲ１０を参照して調べる。このとき、図２に示すようファイルＦ１１に関係した関連付けデータが発見されると、これを読み出してファイルＦ１１がファイル１０を参照していることを認識する。これにより、ファイルＦ１１からファイルＦ１０を介してイメージＰ１０を参照することができる。
【００４４】
（動作）
次に、本実施形態におけるシステム全体の動作を、図３のシーケンス図を参照して説明する。まず、クライアントコンピュータ（Ａ）１ａからサーバコンピュータ３に共有ファイルが送信され、当該サーバコンピュータ３に格納するよう指示が出される（ステップＳ１）。これに応じて、サーバコンピュータ３では、送信された共有ファイルを表すファイル表示データＦ１０を作成すると共に、データ自体である物理イメージＰ１０を作成して、ハードディスク３１に格納する（ステップＳ２）。
【００４５】
続いて、別のクライアントコンピュータ（Ｂ）１ｂからファイルＦ１０にアクセスがあり、当該ファイルＦ１０をクライアントコンピュータ（Ｂ）１ｂが取り扱うサーバコンピュータ３上のディスク領域にコピーするよう指示を出す（ステップＳ３）。これを受けたサーバコンピュータ３は、まず、複製対象であるファイルのポインタであるファイル表示データＦ１０を参照する新たなポインタとしてのファイル表示データＦ１１のみを作成する（ステップＳ４）。そして、これと共に、ファイルＦ１１がファイルＦ１０を参照することを表す関連付けデータを、ポインタレポジトリＲ１０に記憶する（ステップＳ５）。従って、このときには、ファイルのコピーといっても、その物理イメージＰ１０を別の領域には複製しない。これにより、ファイルの物理データ自体を実際に複製することなく、当該物理データのデータ容量よりも小さい容量のポインタと関連付けデータを生成することファイル複製を実現しているため、ディスク容量の削減を図ることができる。
【００４６】
なお、複製したファイルＦ１１へのアクセスは、以下のようにして行われる。クライアントコンピュータ（Ｂ）１ｂからサーバコンピュータ３にファイルＦ１１の閲覧要求が出されると（ステップＳ６）、サーバコンピュータ３は、まず、ポインタレポジトリＲ１０を調べ、ファイルＦ１１を参照元としている関連付けデータがあるかどうかを調べる。かかる関連付けデータがある場合にはそのデータを読み出す（ステップＳ７）。そして、これを参照することで、ファイルＦ１１の参照先が分かるため、ファイルＦ１１からファイルＦ１０を参照し、当該ファイルＦ１０が指し示す物理イメージＰ１０にアクセスして読み出す（ステップＳ８）。その後、サーバコンピュータ３は、読み出したイメージＰ１０をクライアントコンピュータ（Ｂ）１ｂに表示すべく当該クライアントに送信し（ステップＳ９）、これを受けたクライアントコンピュータ（Ｂ）１ｂは、当該イメージＰ１０を閲覧することができる。
【００４７】
このように、実際にファイルの物理イメージをディスク上に複製しなくとも、複製したと同様の効果を得ることができ、上述したように、ディスク使用容量の削減を図ることができる。
【００４８】
〈第２の実施形態〉
次に、本発明の第２の実施形態について、図４乃至図７を参照して説明する。このうち、図４乃至図５は、共有データの内容を更新する場合の説明図であり、図６乃至図７は、共有データを削除する場合の説明図である。そして、図４及び図６は、ファイルの状態を示す説明図であり、図５及び図７は、システムの動作を示すフローチャートである。
【００４９】
（構成）
本実施形態におけるデータ共有システムは、上述した第１の実施形態に示すものとほぼ同様の構成を採っていて、さらに、共有ファイルの内容が更新や削除など変更されたときに、各クライアントがデータ内容の変更に対応することができるような構成となっている。
【００５０】
具体的には、サーバコンピュータ３のＣＰＵには、所定のファイルの物理データ自体に変更が生じたときに当該物理データの変更前のデータを一時的に記憶保持する変更前データ記憶機能と、物理データに変更が生じた後に当該物理データを参照するポインタに関連付けられている新たなポインタに対応するクライアントコンピュータに物理データに変更が生じた旨の情報を通知してかかる変更に従うか否かを問う変更通知機能と、通知を受けたクライアントコンピュータから物理データの変更に従わない旨の通知を受けた際に物理データの変更前のデータを新たなポインタが直接参照するよう対応付けると共に当該新たなポインタに関する関連付けデータを削除する物理データ移行機能と、が備えられている。これら各機能を、データが更新、削除されるときの例を、更に具体的に説明する。
【００５１】
まず、サーバコンピュータ３内のデータの記憶状況は、上述した図２に示すようになっている。すなわち、クライアントコンピュータ（Ａ）１ａにて作成された参照先となる共有ファイルのファイルＦ１０（ポインタ）とその物理データであるイメージＰ１０が記憶されていて、これをクライアントコンピュータ（Ｂ）１ｂが複製したファイルＦ１１がファイルＦ１０を参照して、イメージＰ１０を参照するようになっている。そして、ファイルＦ１１がファイルＦ１０を参照する旨の関連付けデータが、ポインタレポジトリＲ１０に記憶されている。この状態において、共有ファイルであるファイル１０のデータ自体イメージＰ１０が更新あるいは削除される指令が、クライアントコンピュータ（Ａ）から出された場合を想定している。
【００５２】
イメージＰ１０の変更あるいは削除指令が出されると、変更前データ記憶機能は、イメージＰ１０を変更あるいは削除する前に、サーバコンピュータ３内のＲＡＭやレジスタなどのメモリに一時的に記憶保持する。そして、保存を行った後に、クライアントコンピュータ（Ａ）１ａの指示に従って、ファイルＦ１０が参照するイメージＰ１０を更新したり、削除する。
【００５３】
そして、変更通知機能は、ファイルＦ１１を作成したクライアントコンピュータ（Ｂ）１ｂにイメージＰ１０が更新あるいは削除された旨の通知して、これに従うか否かを問う。このとき、ファイルＦ１１の作成者がクライアントコンピュータ（Ｂ）１ｂであることは、ファイルＦ１１のヘッダ部分などに記憶されているデータを参照してそのコンピュータ名やＩＰアドレスなどから特定してその旨の通知を行う。但し、変更通知機能は、変更があった直後に通知を行うことに限定されない。変更後、ファイルＦ１１にクライアントコンピュータ（Ｂ）１ｂからアクセスがあったときに、その旨を通知して更新や削除に従うか否かを尋ねてもよい。このとき、更新前、削除前のイメージＰ１０は保存されたままとなる。
【００５４】
そして、物理データ移行機能は、クライアントコンピュータ（Ｂ）から、イメージＰ１０の変更や削除に従わない旨の通知を受けると、メモリなどに保存しておいたイメージＰ１０をファイルＦ１１の参照先として設定する。すなわち、ファイルＦ１１がファイルＦ１０を参照先とするよう設定していた関連付けデータを、ポインタレポジトリＲ１０から削除する。これにより、ファイルＦ１１を参照すると、変更前のイメージＰ１０を閲覧することができる。
【００５５】
なお、サーバコンピュータ３に、参照元である新たなポインタ（ファイルＦ１１）が、参照先となるポインタ（ファイルＦ１０）の物理データ（イメージＰ１０）の変更に依存するか否かに関する情報を、参照元ポインタを作成したクライアント（Ｂ）からの指示であらかじめメモリに記憶しておいてもよい。そして、ファイル変更指示が来たときに、かかる情報が「依存しない」旨の情報である場合には、クライアントに通知することなく、変更前のイメージＰ１０をポインタに関連付けてもよい。このように、勝手に変更されては困るデータに関してあらかじめ設定しておくことで、データの改変を抑制することができる。
【００５６】
（動作）
次に、本実施形態における動作を説明する。まず、図４乃至図５を参照して、データが更新される場合を説明する。なお、図４（ａ）は、更新に応じる場合であり、図４（ｂ）は、更新に応じない場合である。
【００５７】
まず、上述したように、図４（ａ）の上段図に示すように、ファイルＦ１０の内容であるイメージＰ１０に、ファイルＦ１１がファイルＦ１０を介して参照するようになっている。このとき、クライアントコンピュータ（Ａ）１ａからファイルＦ１０の更新指示があったとする（ステップＳ１０１）。すると、まず、更新前のイメージＰ１０がメモリに一時保存されて（ステップＳ１０２）、その後、更新された新規イメージＰ１１が作成される（ステップＳ１０３）。すなわち、図４（ａ）の下段図に示すように、ファイルＦ１０が参照する物理データがイメージＰ１１に更新される。
【００５８】
続いて、メモリ内にファイルＦ１１はファイルＦ１０に依存する旨の情報があるか否かを調べ（ステップＳ１０４）、かかる旨の情報がある場合には（ステップＳ１０４にて肯定判断）、そのことをファイルＦ１１を作成したクライアントコンピュータ（Ｂ）１ｂに通知して確認する（ステップＳ１０５）。このとき、通知すべき設定ではない場合（ステップＳ１０５にて否定判断）、あるいは、通知されて更新許可の情報が返信された場合には（ステップＳ１０６にて肯定判断）、ポインタレポジトリＲ１０内の関連付けデータは変更されず、ファイルＦ１１はファイルＦ１０を参照したままの状態となる。すなわち、ファイルＦ１１を参照すると、ファイルＦ１０を介して更新されたイメージＰ１１が参照される。
【００５９】
一方、ファイルＦ１１がファイルＦ１０に依存しない旨の情報が存在していたり（ステップＳ１０４にて否定判断）、あるいは、クライアントコンピュータ（Ｂ）から更新を許可しない旨の情報をサーバコンピュータ３が受けた場合には（ステップＳ１０６にて否定判断）、メモリ内に一時保存しておいた更新前のイメージＰ１０を読み出して、ファイルＦ１１の直接の参照先として設定する（ステップＳ１０７）。このときの様子を、図４（ｂ）の下段図に示す。そして、ファイルＦ１１がファイルＦ１０を参照するという関連付けデータをポインタレポジトリＲ１０の中から削除する（ステップＳ１０８）。すると、ファイルＦ１０は更新されたイメージＰ１１を参照し、ファイルＦ１１は更新前のイメージＰ１０を参照することとなる。
【００６０】
これにより、クライアントコンピュータ（Ｂ）は、複製した共有ファイルのデータが勝手に更新されることを抑制することができる。
【００６１】
次に、図６乃至図７を参照して、データが削除される場合を説明する。なお、図６（ａ）は、削除に応じる場合であり、図６（ｂ）は、削除に応じない場合である。
【００６２】
まず、上述したように、図６（ａ）の上段図に示すように、ファイルＦ１０の内容であるイメージＰ１０に、ファイルＦ１１がファイルＦ１０を介して参照するようになっている。このとき、クライアントコンピュータ（Ａ）１ａからファイルＦ１０の削除指示があったとする（ステップＳ２０１）。すると、まず、更新前のイメージＰ１０がメモリに一時保存されて（ステップＳ２０２）、その後、ファイルＦ１０が直接参照するイメージＰ１０が削除される（ステップＳ２０３）。すなわち、図６（ａ）、（ｂ）の下段図のように、ファイルＦ１０及びイメージＰ１０が削除された状態となる。
【００６３】
続いて、メモリ内にファイルＦ１１はファイルＦ１０に依存する旨の情報があるか否かを調べ（ステップＳ２０４）、かかる旨の情報がある場合には（ステップＳ２０４にて肯定判断）、そのことを、ファイルＦ１１を作成したクライアントコンピュータ（Ｂ）１ｂに通知して確認する（ステップＳ２０５）。このとき、通知すべき設定ではない場合には（ステップＳ２０５にて否定判断）、あるいは、通知されて削除許可の情報が返信された場合には（ステップＳ２０６にて肯定判断）、ポインタレポジトリＲ１０内の関連付けデータが削除され、当然のことながら、ファイルＦ１１は参照すべきデータがないので削除される。すなわち、図６（ｂ）の下段図のようになる。
【００６４】
一方、ファイルＦ１１がファイルＦ１０に依存しない旨の情報が存在していたり（ステップＳ２０４にて否定判断）、あるいは、クライアントコンピュータ（Ｂ）から更新を許可しない旨の情報をサーバコンピュータ３が受けた場合には（ステップＳ２０６にて否定判断）、メモリ内に一時保存しておいた更新前のイメージＰ１０を読み出して、ファイルＦ１１の直接の参照先として設定する（ステップＳ２０７）。このときの様子を、図６（ａ）の下段図に示す。そして、既にファイルＦ１１は削除されているので、ファイルＦ１１がファイルＦ１０を参照するという関連付けデータをポインタレポジトリＲ１０の中から削除する（ステップＳ２０８）。すると、ファイルＦ１０は、削除前のイメージＰ１０を参照することとなる。
【００６５】
これにより、クライアントコンピュータ（Ｂ）は、複製した共有ファイルのデータが勝手に削除されることを抑制することができる。
【００６６】
〈第３の実施形態〉
次に、本発明の第３の実施形態について説明する。本実施形態では、上述した第１の実施形態における手法とほぼ同様の手法にて共有ファイルを複製する。但し、その複製対象である共有ファイルの保存されているコンピュータと、共有ファイルの複製先のコンピュータとが異なっている。
【００６７】
例えば、ネットワーク２に接続されたサーバ・クライアントシステムにおいて、一方のクライアントコンピュータに保存されているファイルを、他方のクライアントコンピュータに複製する場合である。かかる場合には、一方のクライアントコンピュータにファイルの物理データであるイメージと、当該イメージを参照するポインタが記憶されていて、このポインタを参照する新たなポインタのみが、他方のクライアントコンピュータに作成される。そして、新たなポインタと、複製元のファイルのポインタとを関連付けるデータが、サーバコンピュータ３のポインタレポジトリ内に記憶されることとなる。
【００６８】
このようにすることで、上述同様に、同一ネットワーク上で、各コンピュータのディスク容量の節約を図ることができる。
【００６９】
〈第４の実施形態〉
次に、本発明の第４の実施形態について説明する。本実施形態においても、上記同様にサーバ・クライアントシステムにて構成されるシステムであるが、クライアントが意識して共有するファイルは存在しない。すなわち、各クライアントコンピュータが記憶するファイルの中で同一ファイルを検索し、これらを上述した他の実施形態にて説明した手法で共有ファイルとして管理する、というものである。
【００７０】
このため、本実施形態におけるサーバコンピュータ３は、ネットワーク２を介して接続されている複数のクライアントコンピュータ１にポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときに当該ファイルの各ポインタをそのうちの特定のポインタにそれぞれ関連付けて当該関連付けデータをサーバコンピュータ内にファイル管理テーブルとして記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えている。これら機能を詳述する。
【００７１】
まず、ファイル監視機能は、サーバコンピュータ３が組織内のクライアントコンピュータ１、例えば、社内ＬＡＮで接続されたクライアントコンピュータ１を巡回し、これらに記憶されているデータを調べる。このとき、例えば、ファイルのヘッダ部を監視し、データ種類や容量、作成者、作成日時などを読み出し、リスト化する。
【００７２】
また、管理テーブル記憶機能は、上述したようなヘッダ部情報が一致するファイルを同一のファイルとして認識する。そして、同一のファイルが複数発見されたら、これらのうちから１つのファイルを選択し、当該ファイルの物理データを参照するポインタを特定のポインタとする。なお、ポインタは、クライアントコンピュータ１上に表示されるファイル表示としての役割をも果たすものである。そして、さらに、特定したファイルと同一内容の他のファイルのポインタ、すなわち、他のファイルの物理データを参照する他のポインタが、上記特定のポインタを参照するよう関連付けて、かかる関連付けデータを生成してサーバコンピュータ３内のポインタレポジトリＲ１０に記憶しておく。
【００７３】
そして、物理データ削除機能が、特定のポインタが直接参照する物理データを残して、当該特定のポインタを参照する他のポインタが直接参照していた他のファイルの物理データを削除する。
【００７４】
なお、上記管理テーブル記憶機能は、同一ファイルのうち、１つを特定のものとして選択するが、当該ファイルが記憶されているクライアントコンピュータ１の性能や空きディスク容量などを考慮して選択するとよい。例えば、ＣＰＵの処理速度が高いものや空きディスク容量が多いコンピュータに記憶されているものを選択する。これにより、他のコンピュータからは、同一ファイルの物理データであるイメージが削除されるため、より効果的にディスク容量の削減を図ることができる。
【００７５】
そして、物理データが削除された他のファイルを使用するクライアントコンピュータ１は、当該ファイルにアクセスしたときに、サーバコンピュータ３のポインタレポジトリＲ１０を参照することで、特定のポインタを参照して、イメージを参照することができる。
【００７６】
〈第５の実施形態〉
次に、本発明の第５の実施形態について説明する。本実施形態においては、上記第４の実施形態とほぼ同様の構成であるが、各クライアントコンピュータ１からサーバコンピュータ３に送信されて記憶されたファイルのうち、同一のファイルを共有データとする構成である。例えば、サーバコンピュータ３がストレージサービスを提供している場合であり、クライアントコンピュータ１は、各自の音楽ファイルや画像ファイル、ビデオファイルなどをサーバコンピュータ３に送信して、当該サーバコンピュータ３に保存しておく、というものである。
【００７７】
これを実現するために、サーバコンピュータ３は、当該サーバコンピュータ３にポインタを介して物理データが記憶されているファイルを監視するファイル監視機能と、監視されたファイルのうち同一のファイルを発見したときに当該ファイルの各ポインタをそのうちの特定のポインタにそれぞれ関連付けて当該関連付けデータをサーバコンピュータ内にファイル管理テーブルとして記憶する管理テーブル記憶機能と、特定のポインタにて参照される物理データを残して他のファイルの物理データを削除する物理データ削除機能と、を備えている。なお、これら機能は、データ共有用プログラムがサーバコンピュータに提供されて、ＣＰＵに組み込まれることにより実現できる。
【００７８】
これにより、持ち主が異なっていても、同一の音楽ファイルなどは１つのファイルを保存しておけばよく、他のファイルはポインタ及び関連付けデータで管理することができるため、ディスク容量の節約を図ることができる。
【００７９】
【発明の効果】
本発明は、以上のように構成され機能するので、これによると、ファイルサーバにて同一のファイルを異なる領域に複製をする際には、複製対象である物理データは複製されず、これを指し示すポインタをさらに参照する新たなポインタが生成され、そして、これら両ポインタを関連付けるデータが、ファイルサーバ内のファイル管理テーブルに記憶されるため、新たなポインタを指定することで、ファイル管理テーブル内の関連付けデータに基づいて元のポインタが参照され、当該元のポインタにて参照される物理データにアクセスすることができ、複製されたことと同様の効果を得ることができる。従って、ファイルの物理データ自体を実際に複製することなく、当該物理データのデータ容量よりも小さい容量のポインタと関連付けデータを生成することのみで、ファイル複製を実現でき、ディスク容量の削減を図ることができる、という従来にない優れた効果を有する。
【００８０】
また、ポインタを介して参照している物理データの内容が更新や削除されるなど変更されると、変更前の物理データは一時的に保存され、変更直後や変更後に新たなポインタにアクセスがあったときに、元のポインタを介して参照する物理データの内容が変更された旨の情報が新たなポインタを用いているクライアントコンピュータに通知されて、かかる変更に従うか否かが問われる。そして、これに従わない場合には、新たなポインタが変更前の物理データを直接参照することとなるため、共有ファイルのデータが勝手に更新や削除されるなど変更されることが抑制され、データ紛失等を抑制することができる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態における構成を示すブロック図である。
【図２】第１の実施形態におけるデータの状態を示す説明図である。
【図３】第１の実施形態におけるシステムの動作を示すシーケンス図である。
【図４】図４（ａ）、（ｂ）は、第２の実施形態におけるデータの状態を示す説明図であり、特に、共有データの内容を更新する場合の説明図である。
【図５】第２の実施形態におけるシステムの動作を示すフローチャートである。
【図６】図６（ａ）、（ｂ）は、第２の実施形態におけるデータの状態を示す説明図であり、特に、共有データの内容を削除する場合の説明図である。
【図７】第２の実施形態におけるシステムの動作を示すフローチャートである。
【符号の説明】
１  クライアントコンピュータ
２  ネットワーク
３  サーバコンピュータ
【図１】
2004362418.tif 000003
【図２】
2004362418.tif 000004
【図３】
2004362418.tif 000005
【図４】
2004362418.tif 000006
【図５】
2004362418.tif 000007
【図６】
2004362418.tif 000008
【図７】
2004362418.tif 000009