(57)【要約】【課題】ファイルサーバ装置からファイルを読み込む際のデータ伝送率をできるだけ向上させ得るファイル管理プログラムと、このようなファイル管理プログラムを格納したコンピュータ可読媒体と、このようなファイル管理プログラムを実行したコンピュータと同等に機能するファイル管理装置とを、提供する。【解決手段】クライアント装置２０は、ファイルサーバ装置１０からファイル１３を受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量をログ管理テーブル２３に記録する。また、クライアント装置２０は、ファイル１３の保存先が他のファイルサーバ装置１０のデータ伝送率よりも高いか低いかを定期的に判別し、低い場合にファイル１３の保存先をデータ伝送率の高いファイルサーバ装置１０へ変更する。【選択図】図３
2005258590.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
ファイルを記録するための一つ以上のファイルサーバ装置から通信装置を通じてファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて、記憶装置に記録する記憶手段，
前記全ファイルサーバ装置のそれぞれについて、そのファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算手段，及び、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを現に記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動手段
として機能させる
ことを特徴とするファイル管理プログラム。
【請求項２】
前記記憶手段は、ファイルの伝送に掛かった伝送時間及び伝送データ量を、前記サーバ識別情報と、そのファイルを識別するためのファイル識別情報とに対応付けて、前記記憶装置に記憶するとともに、
前記コンピュータを、更に、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを受信した際の第２データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行う第２演算手段
として機能させ、
前記ファイル移動手段は、そのファイルを現に記憶するファイルサーバ装置よりも第１データ伝送率が高く、且つ、記録可能な記憶容量がそのファイルのファイルサイズよりも大きいファイルサーバ装置が存在した場合に、そのファイルサーバ装置へそのファイルを移し替える処理を、前記第２データ伝送率が低いファイルから高いファイルへと順に行う
ことを特徴とする請求項１記載のファイル管理プログラム。
【請求項３】
前記記憶手段は、ファイルの伝送に掛かった伝送時間及び伝送データ量を、前記サーバ識別情報と、そのファイルを識別するためのファイル識別情報とに対応付けて、前記記憶装置に記憶するとともに、
前記コンピュータを、更に、
前記全ファイルサーバ装置に記憶される全てのファイルのそれぞれについて、前記記憶装置内のファイル識別情報に基づいてそのファイルの所定期間内での受信回数を読込頻度として取得する処理を行う頻度取得手段
として機能させ、
前記ファイル移動手段は、前記全ファイルサーバ装置に現に記録される全てのファイルの中から、読込頻度が所定の上限値よりも高いファイルを抽出した後に、抽出した全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行う
ことを特徴とする請求項１又は２記載のファイル管理プログラム。
【請求項４】
コンピュータを、
ファイルを記録するための一つ以上のファイルサーバ装置から通信装置を通じてファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて、記憶装置に記録する記憶手段，
ファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を、前記全ファイルサーバ装置のそれぞれについて行う第１演算手段，及び、
そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を、前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて行うファイル移動手段
として機能させる
ファイル管理プログラム
を格納したことを特徴とするコンピュータ可読媒体。
【請求項５】
ファイルを記録するための一つ以上のファイルサーバ装置からファイルを受信する受信部，
前記受信部がファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて記憶する記憶部，
前記全ファイルサーバ装置のそれぞれについて、前記受信部がファイルサーバ装置からファイルを受信した際の第１データ伝送率を前記記憶部内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算部，及び、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動部
を備えることを特徴とするファイル管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ファイルサーバ装置に保存されるファイルを管理するためのファイル管理プログラムと、このようなファイル管理プログラムを格納したコンピュータ可読媒体と、このようなファイル管理プログラムが実行されたコンピュータと同等に機能するファイル管理装置とに、関する。
【背景技術】
【０００２】
近年、机や椅子などからなる作業場を各従業員に割り当てないで作業場を従業員に自由に選択させるという職場が、増えつつある。このような職場では、従業員は、自分で選択した作業場に着くと、自分に割り当てられているノート型のパーソナルコンピュータの通信ポートを、建物内に構築されている社内ネットワークの通信ポートに対し、接続する。
【０００３】
そして、社内ネットワークには、業務上作成されたファイルを保存しておくためのファイルサーバ装置が、多数接続されており、従業員は、自分のパーソナルコンピュータに保存しきれない容量のファイルや、他の従業員と共同開発しているファイルを、ファイルサーバ装置に保存する。
【特許文献１】特開平０５−２１６８４２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
前述した社内ネットワークでは、ファイルサーバ装置は、何れも、ネットワーク上のアドレスで特定されるため、作業員のパーソナルコンピュータがファイルを取得しようとしているファイルサーバ装置が、その作業員が着いている作業場とは異なる階や異なる職場にあろうと無かろうと、作業員がそれを気にする必要はない。
【０００５】
しかし、実際には、別の棟や別の階や遠隔の職場にあるファイルサーバ装置からファイルを読み込もうとすると、そのファイルサーバ装置との間に多数のノードが介在すること等によって、同じ職場や近隣の職場にあるファイルサーバ装置に比べて、ファイルの読み込みに多くの時間が掛かってしまう場合があった。
【０００６】
本発明は、前述したような従来技術の有する問題点に鑑みてなされたものであり、その課題は、ファイルサーバ装置からファイルを読み込む際のデータ伝送率をできるだけ向上させ得るファイル管理プログラムを、提供することにある。また、本発明の課題は、このようなファイル管理プログラムを格納したコンピュータ可読媒体と、このようなファイル管理プログラムを実行したコンピュータと同等に機能するファイル管理装置とを、提供することにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために発明されたファイル管理プログラム，及び、上記の課題を解決するために発明されたコンピュータ可読媒体に格納されるファイル管理プログラムは、以下に記述するように、構成されている。
【０００８】
すなわち、このファイル管理プログラムは、コンピュータを、ファイルを記録するための一つ以上のファイルサーバ装置から通信装置を通じてファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて、記憶装置に記録する記憶手段，前記全ファイルサーバ装置のそれぞれについて、そのファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算手段，及び、前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを現に記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動手段として機能させることを、特徴としている。
【０００９】
このように構成されると、ファイルサーバ装置に現に記録されていたファイルは、そのファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合に、そのファイルサーバ装置へ移し替えられる。このため、このファイル管理プログラムが従業員のパーソナルコンピュータにおいて実行された場合には、従業員が利用するファイルは、常に、データ伝送率の高いファイルサーバ装置に格納されることとなる。その結果、従業員は、業務を遂行するためにファイルサーバ装置からファイルを読み込んだときに、その受信に多くの時間を掛けなくて済む。
【００１０】
また、上記の課題を解決するために発明されたファイル管理装置は、ファイルを記録するための一つ以上のファイルサーバ装置からファイルを受信する受信部，前記受信部がファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて記憶する記憶部，前記全ファイルサーバ装置のそれぞれについて、前記受信部がファイルサーバ装置からファイルを受信した際の第１データ伝送率を前記記憶部内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算部，及び、前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動部を備えることを、特徴としている。
【００１１】
従って、このファイル管理装置は、前述したファイル管理プログラムを実行したコンピュータと同等に機能することになる。
【発明の効果】
【００１２】
以上に説明したように、本発明によれば、ファイルサーバ装置からファイルを読み込む際のデータ伝送率ができるだけ向上することとなる。
【発明を実施するための最良の形態】
【００１３】
以下、添付図面に基づいて、本発明を実施するための形態を説明する。
【００１４】
図１は、本発明が適用されたコンピュータネットワークシステムの概略図である。本実施形態のコンピュータネットワークシステムは、一企業内の従業員同士がコンピュータにて通信するために構築された社内ネットワークシステムである。
【００１５】
具体的には、本実施形態のコンピュータネットワークシステムは、多数のファイルサーバ装置１０と、多数のクライアント装置２０とを、備えており、各装置１０，２０は、ネットワークを介して相互に接続されている。
【００１６】
そのネットワークは、バックボーン回線や電話回線やＬＡＮ［Local Area Network］ケーブルなどを介して相互に接続されたルータやレイヤ３スイッチ等の中継装置３０から、構成されており、各中継装置３０は、上記企業が有する各事業所の各建物内に分散配置されている。そして、各ファイルサーバ装置１０及び各クライアント装置２０は、何れかの中継装置３０に対して接続されている。
【００１７】
図２は、ファイルサーバ装置１０の内部構成図である。ファイルサーバ装置１０は、当該企業の各従業員がその業務上作成したファイルを読み出し自在に蓄積しておくための汎用コンピュータである。
【００１８】
具体的には、ファイルサーバ装置１０は、ＣＰＵ［Central Processing Unit］１０ａ，ＲＡＭ［Random Access Memory］１０ｂ，通信アダプタ１０ｃ，及び、ＨＤＤ［Hard Disk Drive］１０ｄを、備えており、これらハードウエア１０ａ〜１０ｄは、バスＢを介して互いに接続されている。
【００１９】
ＣＰＵ１０ａは、ファイルサーバ装置１０全体を制御するための中央処理装置である。ＲＡＭ１０ｂは、ＣＰＵ１０ａが各種プログラムを実行するに際しての作業領域が展開される主記憶装置である。
【００２０】
通信アダプタ１０ｃは、ネットワーク上の中継装置３０との間でデータの送受信を行うための装置であり、中継装置３０の通信ポートと有線又は無線にて接続される通信ポートを、有している。具体的には、通信アダプタ１０ｃは、ＬＡＮ［Local Area Network］接続ボード，ターミナルアダプタ，モデムなどである。
【００２１】
ＨＤＤ１０ｄは、ファイルサーバ装置１０に内蔵され或いは外付けされる補助記憶装置であり、ＣＰＵ１０ａによってＲＡＭ１０ｂ上に読み出されて実行される各種プログラムを記憶している。このＨＤＤ１０ｄが記憶するプログラムには、ＯＳ［Operation System］プログラム１１及びファイルサーバプログラム１２が、含まれている。
【００２２】
ＯＳプログラム１１は、ハードウエアとソフトウエアとを統合的に管理するためのプログラムである。ファイルサーバプログラム１２は、コンピュータをファイルサーバとして機能させるためのプログラムであり、ファイル受信プログラム１２１及びファイル送信プログラム１２２を、モジュールプログラムとして含んでいる。
【００２３】
ファイル受信プログラム１２１は、ネットワークを通じてアクセスしてきたクライアント装置２０からファイル１３を受信してＨＤＤ１０ｄに記録するためのプログラムである。また、ファイル送信プログラム１２２は、アクセスしてきたクライアント装置２０へＨＤＤ１０ｄ内のファイル１３を送信するためのプログラムである。
【００２４】
図３は、クライアント装置２０の内部構成図である。クライアント装置２０は、業務上利用するために各従業員に割り当てられたノート型のパーソナルコンピュータに対してファイルサーバのクライアントとしての機能が付加されてなるものである。
【００２５】
具体的には、クライアント装置２０は、ＣＰＵ２０ａ，ＲＡＭ２０ｂ，表示装置２０ｃ，入力装置２０ｄ，通信アダプタ２０ｅ，ＦＤＤ［Flexible Disk Drive］２０ｆ，ＣＤＤ［Compact Disk Drive］２０ｇ，及び、ＨＤＤ２０ｈを、備えており、これらハードウエア２０ａ〜２０ｈは、バスＢを介して互いに接続されている。なお、ＣＰＵ２０ａ，ＲＡＭ２０ｂ，通信アダプタ２０ｅは、前述したファイルサーバ装置１０のものと同等の機能を発揮するものである。
【００２６】
表示装置２０ｃは、ＣＰＵ２０ａによって生成された画面データに基づいて各種画面を表示するための装置であり、具体的にはブラウン管ディスプレイや液晶ディスプレイである。入力装置２０ｄは、操作者からの入力を受け付けるための装置であり、具体的にはキーボードやマウスである。
【００２７】
ＦＤＤ２０ｆ及びＣＤＤ２０ｇは、コンピュータ可読媒体であるフレキシブルディスクやコンパクトディスクからデータやプログラムを読み出したりこれらディスクに書き込んだりするための補助記憶装置である。
【００２８】
ＨＤＤ２０ｈは、クライアント装置２０に内蔵され或いは外付けされる補助記憶装置であり、ＣＰＵ２０ａによってＲＡＭ２０ｂ上に読み出されて実行される各種プログラムを格納している。このＨＤＤ２０ｈには、ＯＳプログラム２１，クライアントプログラム２２，及び、ログ管理テーブル２３が、記録されている。なお、ＯＳプログラム２１は、前述したファイルサーバ装置１０のものと同等の機能を発揮するものである。
【００２９】
クライアントプログラム２２は、コンピュータをファイルサーバのクライアントとして機能させるためのプログラムであり、ファイル書込プログラム２２１，ファイル読込プログラム２２２，及び、格納位置最適化プログラム２２３を、モジュールプログラムとして含んでいる。
【００３０】
ファイル書込プログラム２２１は、ファイルをファイルサーバ装置１０へ保存する指示を受け付けてそのファイルをファイルサーバ装置１０へ送信するためのプログラムである。
【００３１】
ファイル読込プログラム２２２は、ファイルサーバ装置１０に保存されているファイルを取得する指示を受け付けてそのファイルをファイルサーバ装置１０から受信するためのプログラムである。このファイル読込プログラム２２２に基づく処理の内容については、後で詳しく説明する。
【００３２】
格納位置最適化プログラム２２３は、ファイルサーバ装置１０のＨＤＤ１０ｄ内のファイル１３を移動する必要があった場合にファイルを移動させるためのプログラムである。この格納位置最適化プログラム２２３に基づく処理の内容については、後で詳しく説明する。
【００３３】
ログ管理テーブル２３は、クライアントプログラム２２に従ったＣＰＵ２０ａによってファイルサーバ装置１０から受信したファイルに関する情報を蓄積しておくためのテーブルである。図４は、このログ管理テーブル２３のデータ構造の一例を示す図である。図４のログ管理テーブル２３中の各レコードは、「サーバ名」，「パス名」，「ファイル名」，「受信開始時刻」，「受信終了時刻」，「伝送時間」，及び、「伝送データ量」の各フィールドを、有している。
【００３４】
「サーバ名」には、各ファイルサーバ装置１０に一意に割り当てられているサーバ識別情報であるサーバ名のうち、そのファイル１３をＨＤＤ１０ｄ内に記録しているファイルサーバ装置１０のサーバ名が、記録される。「パス名」には、ファイルサーバ装置１０のＯＳプログラム１１がそのファイルの格納位置を管理するために利用しているディレクトリ群の名称が、パス名として記録される。「ファイル名」には、そのファイルの名称が記録される。
【００３５】
「受信開始時刻」及び「受信終了時刻」には、そのファイルのファイルサーバ装置１０からの受信を開始した時刻と終了した時刻とが、それぞれ記録される。「伝送時間」には、クライアント装置２０がそのファイル１３を受信し始めてから受信し終えるまでに掛かった伝送時間が、記録される。「伝送データ量」には、バイト単位で示されたそのファイルのデータ量が、伝送データ量として記録される。
【００３６】
以上のように構成されるコンピュータネットワークシステムにおいて実行される処理のうち、本発明に係る処理の内容について、詳しく説明する。
【００３７】
クライアント装置２０のＣＰＵ２０ａは、その入力装置２０ｄが操作されることによって、クライアントプログラム２２中のファイル読込プログラム２２２の起動を指示されると、ＨＤＤ２０ｈからそのファイル読込プログラム２２２を読み込んで、ファイル読込処理を開始する。図５は、このファイル読込処理の内容を示すフローチャートである。
【００３８】
ファイル読込処理の開始後、最初のステップＳ１０１では、ＣＰＵ２０ａは、ファイル名受付処理を実行する。ファイル名受付処理においては、ＣＰＵ２０ａは、まず、ファイル名入力画面を表示装置２０ｃに表示する。そして、何れかのファイル名が、このファイル名入力画面の所定のテキストボックスに入力されて、ＯＫボタンがクリックされると、ＣＰＵ２０ａは、そのファイル名を処理対象としてＲＡＭ２０ｂに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１０２へ処理を進める。
【００３９】
ステップＳ１０２では、ＣＰＵ２０ａは、ステップＳ１０１において受け付けたファイル名が図４のログ管理テーブル２３に記録されているか否かを、判別する。そして、そのファイル名が図４のログ管理テーブル２３に記録されていなかったと判断した場合（Ｓ１０２；ＮＯ）、ＣＰＵ２０ａは、ステップＳ１０３へ処理を進める。
【００４０】
ステップＳ１０３では、ＣＰＵ２０ａは、新規登録処理を実行する。新規登録処理においては、ＣＰＵ２０ａは、まず、格納位置情報入力画面を表示装置２０ｃに表示する。そして、何れかのサーバ名及びパス名がこの格納位置情報入力画面の所定のテキストボックスに入力されて、ＯＫボタンがクリックされると、ＣＰＵ２０ａは、そのサーバ名とパス名と処理対象ファイル名とを含む新たなレコードを、図４のログ管理テーブル２３に追加するとともに、サーバ名とパス名とをＲＡＭ２０ｂに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１０７へ処理を進める。
【００４１】
一方、ステップＳ１０２において、ステップＳ１０１において受け付けたファイル名がログ管理テーブル２３に記録されていたと判断した場合（Ｓ１０２；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ１０４へ処理を進める。
【００４２】
ステップＳ１０４では、ＣＰＵ２０ａは、格納位置情報受付処理を実行する。格納位置情報受付処理においては、ＣＰＵ２０ａは、まず、格納位置情報入力画面を表示装置２０ｃに表示する。そして、何れかのサーバ名及びパス名がこの格納位置情報入力画面の所定のテキストボックスに入力されて、ＯＫボタンがクリックされると、ＣＰＵ２０ａは、そのサーバ名及びパス名をＲＡＭ２０ｂに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１０５へ処理を進める。
【００４３】
ステップＳ１０５では、ＣＰＵ２０ａは、ステップＳ１０４において受け付けたサーバ名及びパス名が、ログ管理テーブル２３における処理対象ファイル名のものと一致するか否かを、判別する。そして、そのサーバ名及びパス名がログ管理テーブル２３中の処理対象ファイル名のものと一致していないと判断した場合（Ｓ１０５；ＮＯ）、ＣＰＵ２０ａは、ステップＳ１０６へ処理を進める。
【００４４】
ステップＳ１０６では、ＣＰＵ２０ａは、格納位置情報修正処理を実行する。この格納位置情報修正処理においては、ＣＰＵ２０ａは、まず、格納位置情報入力画面を表示装置２０ｃに表示する。そして、適正なサーバ名及びパス名がこの格納位置情報入力画面の所定のテキストボックスに入力されて、ＯＫボタンがクリックされると、ＣＰＵ２０ａは、そのサーバ名及びパス名を、ログ管理テーブル２３中の処理対象ファイル名のものに上書きするとともに、サーバ名とパス名とをＲＡＭ２０ｂ内のものに上書きする。上書きした後、ＣＰＵ２０ａは、ステップＳ１０７へ処理を進める。
【００４５】
ステップＳ１０７では、ＣＰＵ２０ａは、ＲＡＭ２０ｂ内のサーバ名及びパス名により示される格納位置に処理対象ファイル名のファイルが既に存在しているか否かを、判別する。具体的には、ＣＰＵ２０ａは、ファイルシステムオブジェクト（米国マイクロソフト社商標）というプログラムがＯＳプログラム２１に含まれているのであれば、そのファイルシステムオブジェクトのfileexistsメソッドを利用して、サーバ名の示すファイルサーバ装置１０へパス名及びファイル名を引数として問い合わせ、その返値を得ることにより、その格納位置に当該ファイルが存在しているか否を、判別する。そして、ＣＰＵ２０ａは、その格納位置に処理対象ファイル名と同じファイル名のファイルがまだ存在していないと判断した場合（Ｓ１０７；ＮＯ）、ステップＳ１１１へ処理を進め、その格納位置に処理対象ファイル名と同じファイル名のファイルが既に存在していると判断した場合（Ｓ１０７；ＮＯ）、ステップＳ１０８へ処理を進める。
【００４６】
ステップＳ１０８では、ＣＰＵ２０ａは、エラー処理を実行する。エラー処理においては、ＣＰＵ２０ａは、『指定されたファイルが、指定されたサーバ名及びパス名にて示される位置に既に存在していて、その位置に当該ファイルを新規作成できない』旨が記述されたエラー通知画面を表示装置２０ｃに表示して、ファイル読込処理を終了する。
【００４７】
一方、ステップＳ１０５において、ステップＳ１０４において受け付けたパス名がログ管理テーブル２３中の処理対象ファイル名のものと一致していると判断した場合（Ｓ１０５；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ１０９へ処理を進める。
【００４８】
ステップＳ１０９では、ＣＰＵ２０ａは、ＲＡＭ２０ｂ内のサーバ名及びパス名により示される格納位置に処理対象ファイル名を有するファイルが存在しているか否かを、判別する。そして、その格納位置に処理対象ファイル名を有するファイルが存在していないと判断した場合（Ｓ１０９；ＮＯ）、ＣＰＵ２０ａは、ステップＳ１１０へ処理を進める。
【００４９】
ステップＳ１１０では、ＣＰＵ１０ａは、エラー処理を実行する。エラー処理においては、ＣＰＵ２０ａは、『指定されたファイルが、指定されたサーバ名及びパス名にて示される位置に、存在していない』旨が記述されたエラー通知画面を表示装置２０ｃに表示して、ファイル読込処理を終了する。
【００５０】
一方、ステップＳ１０９において、ＲＡＭ２０ｂ内のサーバ名及びパス名により示される格納位置に処理対象ファイル名を有するファイルが存在していると判断した場合（Ｓ１０９；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ１１１へ処理を進める。
【００５１】
ステップＳ１１１では、ＣＰＵ２０ａは、ファイルオープン処理を実行する。具体的には、ＣＰＵ２０ａは、前述したファイルシステムオブジェクトがＯＳプログラム２１に含まれているのであれば、そのファイルシステムオブジェクトのopentextfileメソッドを利用して、パス名及びファイル名にて示される格納位置にあるファイル１３のコピーを、サーバ名の示すファイルサーバ装置１０から取得して、ＲＡＭ２０ｂに展開する処理を開始する。なお、そのファイルがそのファイルサーバ装置１０のそのパス名の位置に無かった場合にその位置に新規にファイルが作成されるようにしておくために、opentextfileメソッドの第３属性値は、「true」に設定される。このようなファイルオープン処理を実行した後、ＣＰＵ２０ａは、ステップＳ１１２へ処理を進める。
【００５２】
ステップＳ１１２では、ＣＰＵ２０ａは、処理対象ファイル名のファイル１３のコピーをＲＡＭ２０ｂに展開する処理を開始した時刻を、図４のログ管理テーブル２３の最新レコードの「受信開始時刻」フィールドに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１１３へ処理を進める。
【００５３】
ステップＳ１１３では、ＣＰＵ２０ａは、処理対象ファイル名のファイル１３のコピーをファイルサーバ装置１０から受信し終えるまで、待機する（Ｓ１１３；ＮＯ）。そして、当該ファイル１３のコピーを受信し終えると（Ｓ１１３；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ１１４へ処理を進める。
【００５４】
ステップＳ１１４では、ＣＰＵ２０ａは、処理対象ファイル名のファイルのコピーをＲＡＭ２０ｂに展開する処理を終了した時刻を、図４のログ管理テーブル２３の最新レコードの「受信終了時刻」フィールドに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１１５へ処理を進める。
【００５５】
ステップＳ１１５では、ＣＰＵ２０ａは、図４のログ管理テーブル２３の最新レコードに含まれる受信開始時刻と受信終了時刻とから、ファイル１３の伝送に掛かった伝送時間を算出し、続いて、その伝送時間をログ管理テーブル２３の最新レコードの「伝送時間」フィールドに記録する。記録後、ＣＰＵ２０ａは、ステップＳ１１６へ処理を進める。
【００５６】
ステップＳ１１６では、ＣＰＵ２０ａは、ファイルサイズ記録処理を実行する。具体的には、ＣＰＵ２０ａは、ファイルオブジェクト（米国マイクロソフト社商標）というプログラムがＯＳプログラム２１に含まれているのであれば、そのファイルオブジェクトのsizeプロパティを利用して、ＲＡＭ２０ｂに展開されたファイルの大きさをバイト単位で取得する。取得後、ＣＰＵ２０ａは、ファイルのデータ量を、伝送データ量として、図４のログ管理テーブル２３の最新レコードに記録する。記録後、ＣＰＵ２０ａは、ファイル読込処理を終了する。
【００５７】
なお、ステップＳ１０１〜Ｓ１１６を実行するＣＰＵ２０ａは、前述した記憶手段に相当する。また、ステップＳ１１１を実行するＣＰＵ２０ａ及び通信アダプタ２０ｅは、前述した受信部に相当し、ＨＤＤ２０ｈ内のログ管理テーブル２３は、前述した記憶部に相当する。
【００５８】
クライアント装置２０では、以上に示したファイル読込処理が実行されるように構成されているので、ファイルサーバ装置１０からファイル１３を読み込む毎に、そのファイル１３及びそのファイル１３の受信に係る情報が、ＨＤＤ２０ｈ内のログ管理テーブル２３に蓄積されることとなる。
【００５９】
このようなファイル読込処理と並行して、クライアント装置２０のＣＰＵ２０ａは、例えば週に一度のように定期的に、クライアントプログラム２２中の格納位置最適化プログラム２２３をＨＤＤ２０ｈから読み込んで、格納位置最適化処理を開始する。図６及び図７は、この格納位置最適化処理の内容を示すフローチャートである。
【００６０】
格納位置最適化処理の開始後、最初のステップＳ２０１では、ＣＰＵ２０ａは、図４のログ管理テーブル２３内を、サーバ名毎に並べ替える。並べ替えた後、ＣＰＵ２０ａは、ステップＳ２０２へ処理を進める。
【００６１】
ステップＳ２０２では、ＣＰＵ２０ａは、平均伝送率算出処理を実行する。図８は、この平均伝送率算出処理の内容を示すフローチャートである。
【００６２】
平均伝送率算出処理の開始後、最初のステップＳ４０１では、ＣＰＵ２０ａは、図４のログ管理テーブル２３から、処理対象としてレコードを一つ読み出す。読み出し後、ＣＰＵ２０ａは、ステップＳ４０２へ処理を進める。
【００６３】
ステップＳ４０２では、ＣＰＵ２０ａは、第１ワークテーブルを新たに用意して、この第１ワークテーブルに、処理対象レコード中の幾つかの情報を、新規のレコードとして記録する。図９は、その第１ワークテーブル４１のデータ構造の一例を示す図である。図９の第１ワークテーブル４１中のレコードは、「サーバ名」，「総伝送時間」，「総伝送量」，「平均伝送率」，及び、「空き容量」のフィールドを、有している。
【００６４】
ここで、「サーバ名」は、図４のログ管理テーブル２３に記録されているサーバ名が記録されるフィールドである。また、「総伝送時間」は、ログ管理テーブル２３におけるそのサーバ名に対応する伝送時間の総計が総伝送時間として記録されるフィールドである。また、「総伝送量」は、ログ管理テーブル２３におけるそのサーバ名に対応する伝送データ量の総計が総伝送量として記録されるフィールドである。また、「平均伝送率」は、後述するように、そのサーバ名についての総伝送量をその総伝送時間で除して得られる商が、平均伝送量として記録されるフィールドである。また、「空き容量」は、そのサーバ名にて示されるファイルサーバ装置１０のＨＤＤ１０ｄにおける記録可能な記憶容量を示す情報が空き容量情報として記録されるフィールドである。
【００６５】
そして、ＣＰＵ２０ａは、処理対象レコード中のサーバ名と伝送時間と伝送データ量とを「サーバ名」，「総伝送時間」，及び、「総伝送量」のフィールドにそれぞれ有する新規のレコードを、新たに用意した第１ワークテーブル４１に登録した後、ステップＳ４０３へ処理を進める。
【００６６】
ステップＳ４０３では、ＣＰＵ２０ａは、図４のログ管理テーブル２３から、処理対象として次のレコードを読み出す。読み出し後、ＣＰＵ２０ａは、ステップＳ４０４へ処理を進める。
【００６７】
ステップＳ４０４では、ＣＰＵ２０ａは、この時点の処理対象レコード中のサーバ名が、この前に処理対象となっていたレコード中のサーバ名と一致するか否かを、判別する。そして、処理対象レコード中のサーバ名が一つ前の処理対象レコード中のサーバ名と一致していると判断した場合（Ｓ４０４；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ４０５へ処理を進める。
【００６８】
ステップＳ４０５では、ＣＰＵ２０ａは、図９の第１ワークテーブル４１における最新レコード中の総伝送時間に対し、処理対象レコード中の伝送時間を加算する。また、ＣＰＵ２０ａは、図９の第１ワークテーブル４１における最新レコード中の総伝送量に対し、処理対象レコード中の伝送データ量を加算する。加算後、ＣＰＵ２０ａは、ステップＳ４０９へ処理を進める。
【００６９】
一方、ステップＳ４０４において、処理対象レコード中のサーバ名が一つ前の処理対象レコード中のサーバ名と一致していないと判断した場合（Ｓ４０４；ＮＯ）、ＣＰＵ２０ａは、ステップＳ４０６へ処理を進める。
【００７０】
ステップＳ４０６では、ＣＰＵ２０ａは、図９の第１ワークテーブル４１における最新レコード中の総伝送時間でその総伝送量を除することにより、その最新レコード中のサーバ名にて示されるファイルサーバ装置１０についての平均伝送率を算出し、続いて、算出した平均伝送率をこの最新レコードの「平均伝送率」フィールドに記録する。記録後、ＣＰＵ２０ａは、ステップＳ４０７へ処理を進める。
【００７１】
ステップＳ４０７では、ＣＰＵ２０ａは、処理対象レコード中のサーバ名と伝送時間と伝送データ量とを記録した新規のレコードを、図９の第１ワークテーブル４１に追加登録する。登録後、ＣＰＵ２０ａは、ステップＳ４０８へ処理を進める。
【００７２】
ステップＳ４０８では、ＣＰＵ２０ａは、図４のログ管理テーブル２３に次に処理対象となり得るレコードが存在するか否かを、判別する。そして、ログ管理テーブル２３に次に処理対象となり得るレコードが存在していると判断した場合（Ｓ４０８；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ４０３へ処理を戻す。
【００７３】
ステップＳ４０３〜Ｓ４０８の処理ループを実行中、図４のログ管理テーブル２３に次に処理対象となり得るレコードが無くなったと判断した場合（Ｓ４０８；ＮＯ），ＣＰＵ２０ａは、ステップＳ４０８からステップＳ４０９へ処理を分岐させる。
【００７４】
ステップＳ４０９では、ＣＰＵ２０ａは、図９の第１ワークテーブル４１における最新レコード中の総伝送時間でその総伝送量を除することにより、この最新レコード中のサーバ名にて示されるファイルサーバ装置１０についての平均伝送率を算出し、続いて、算出した平均伝送率をこの最新レコードの「平均伝送率」フィールドに記録する。記録後、ＣＰＵ２０ａは、図８の平均伝送率算出処理を終了し、図６の格納位置最適化処理におけるステップＳ２０３へ処理を進める。
【００７５】
なお、ステップＳ２０２及びステップＳ４０１〜Ｓ４０９を実行するＣＰＵ２０ａは、前述した第１演算手段及び第１演算部に相当する。
【００７６】
ステップＳ２０３では、ＣＰＵ２０ａは、空き容量情報取得処理を実行する。この空き容量情報取得処理においては、ＣＰＵ２０ａは、図９の第１ワークテーブル４１に記録されているサーバ名にて示される全てのファイルサーバ装置１０のそれぞれについて、以下の処理を実行する。その処理では、ＣＰＵ２０ａは、そのファイルサーバ装置１０から、ＨＤＤ１０ｄにおける記録可能な記憶容量を示す空き容量情報を取得し、第１ワークテーブル４１におけるそのファイルサーバ装置１０のサーバ名を含むレコードの「空き容量」フィールドに、その空き容量情報を記録する。このような空き容量情報取得処理の実行後、ＣＰＵ２０ａは、ステップＳ２０４へ処理を進める。
【００７７】
ステップＳ２０４では、ＣＰＵ２０ａは、図４のログ管理テーブル２３内を、ファイル名毎に並べ替える。並べ替えた後、ＣＰＵ２０ａは、ステップＳ２０５へ処理を進める。
【００７８】
ステップＳ２０５では、ＣＰＵ２０ａは、平均伝送率算出処理を実行する。図１０は、この平均伝送率算出処理の内容を示すフローチャートである。なお、図１０と図８とを比較して明らかなように、ステップＳ５０１〜Ｓ５０９からなるこの平均伝送率算出処理は、図８に示された平均伝送率算出処理とほぼ同じ内容となっている。図８と図１０との相違点は、図８の平均伝送率算出処理は、図４のログ管理テーブル２３に記録された全てのサーバ名のそれぞれについて、平均伝送率を算出するものであったが、図１０の平均伝送率算出処理は、ログ管理テーブル２３に記録された全てのファイル名のそれぞれについて平均伝送率を算出するものである。
【００７９】
また、この相違点を成立させるために、図１０の平均伝送率算出処理には、図９の第１ワークテーブル４１とは異なる第２ワークテーブルが、用いられる。図１１は、第２ワークテーブル４２のデータ構造の一例を示す図である。図１１の第２ワークテーブル４２中のレコードは、「ファイル名」，「総伝送時間」，「総伝送量」，「平均伝送率」，「カウント数」，及び、「読込頻度」のフィールドを、有している。
【００８０】
ここで、「ファイル名」は、図４のログ管理テーブル２３に記録されているファイル名が記録されるフィールドである。また、「総伝送時間」は、ログ管理テーブル２３におけるそのファイル名に対応する伝送時間の総計が総伝送時間として記録されるフィールドである。「総伝送量」は、ログ管理テーブル２３におけるそのファイル名に対応する伝送データ量の総計が総伝送量として記録されるフィールドである。また、「平均伝送率」は、そのファイル名についての総伝送量をその総伝送時間で除して得られる商が平均伝送量として記録されるフィールドである。また、「カウント数」には、ログ管理テーブル２３におけるそのファイル名の出現回数が記録されるフィールドである。また、「読込頻度」には、後述するように、この格納位置最適化処理の実行間隔（上記の例で言えば一週間）の日数で上記出現回数を除することにより得られる商が、読込頻度として記録されるフィールドである。
【００８１】
そして、図８の平均伝送率算出処理と同様に、図１０の平均伝送率算出処理の実行後には、図１１の第２ワークテーブル４２の各フィールドのうち、「ファイル名」，「総伝送時間」，「総伝送量」，及び、「平均伝送率」のフィールドだけが埋まることとなり、その他のフィールドは空欄のままとなる。なお、ステップＳ２０５及びステップＳ５０１〜Ｓ５０９を実行するＣＰＵ２０ａは、第２演算手段及び第２演算部に相当する。図１０の平均伝送率算出処理の実行後、ＣＰＵ２０ａは、図６の格納位置最適化処理におけるステップＳ２０６へ処理を進める。
【００８２】
ステップＳ２０６では、ＣＰＵ２０ａは、読込頻度算出処理を実行する。図１２は、この読込頻度算出処理の内容を示すフローチャートである。
【００８３】
読込頻度算出処理の開始後、最初のステップＳ６０１では、ＣＰＵ２０ａは、図４のログ管理テーブル２３から、処理対象としてレコードを一つ読み出す。読み出し後、ＣＰＵ２０ａは、ステップＳ６０２へ処理を進める。
【００８４】
ステップＳ６０２では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２おける処理対象レコードと同じファイル名を持つレコードの「カウント数」フィールドに、「１」を記録する。記録後、ＣＰＵ２０ａは、ステップＳ６０３へ処理を進める。
【００８５】
ステップＳ６０３では、ＣＰＵ２０ａは、図４のログ管理テーブル２３から、処理対象として次のレコードを読み出す。読み出し後、ＣＰＵ２０ａは、ステップＳ６０４へ処理を進める。
【００８６】
ステップＳ６０４では、ＣＰＵ２０ａは、この時点の処理対象レコード中のファイル名が、その前に処理対象となっていたレコード中のファイル名と一致するか否かを、判別する。そして、処理対象レコード中のファイル名が一つ前の処理対象レコード中のファイル名と一致していると判断した場合（Ｓ６０４；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ６０５へ処理を進める。
【００８７】
ステップＳ６０５では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２における処理対象レコードと同じファイル名を持つ最新レコードの「カウント数」フィールドの値を「１」だけカウントアップする。その後、ＣＰＵ２０ａは、ステップＳ６０９へ処理を進める。
【００８８】
一方、ステップＳ６０４において、処理対象レコード中のファイル名が一つ前の処理対象レコード中のファイル名と一致していないと判断した場合（Ｓ６０４；ＮＯ）、ＣＰＵ２０ａは、ステップＳ６０６へ処理を進める。
【００８９】
ステップＳ６０６では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２における最新レコードの「カウント数」フィールドの値を、この格納位置最適化処理の実行間隔の日数（上記の例で言えば７）で除することによって、この最新レコード中のファイル名にて示されるファイルについての読込頻度を算出し、続いて、算出した読込頻度をこの最新レコードの「読込頻度」フィールドに記録する。記録後、ＣＰＵ２０ａは、ステップＳ６０７へ処理を進める。
【００９０】
ステップＳ６０７では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２おける処理対象レコードと同じファイル名を持つレコードの「カウント数」フィールドに、「１」を記録する。記録後、ＣＰＵ２０ａは、ステップＳ６０８へ処理を進める。
【００９１】
ステップＳ６０８では、ＣＰＵ２０ａは、図４のログ管理テーブル２３に次に処理対象となり得るレコードが存在するか否かを、判別する。そして、ログ管理テーブル２３に次に処理対象となり得るレコードが存在していると判断した場合（Ｓ６０８；ＹＥＳ）、ＣＰＵ２０ａは、ステップＳ６０３へ処理を戻す。
【００９２】
ステップＳ６０３〜Ｓ６０８の処理ループを実行中、図４のログ管理テーブル２３に次に処理対象となり得るレコードが無くなったと判断した場合（Ｓ６０８；ＮＯ），ＣＰＵ２０ａは、ステップＳ６０８からステップＳ６０９へ処理を分岐させる。
【００９３】
ステップＳ６０９では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２における最新レコードの「カウント数」フィールドの値を、この格納位置最適化処理の実行間隔の日数（上記の例で言えば７）で除することによって、この最新レコード中のファイル名にて示されるファイルについての読込頻度を算出し、続いて、算出した読込頻度をこの最新レコードの「読込頻度」フィールドに記録する。記録後、ＣＰＵ２０ａは、読込頻度算出処理を終了し、図６の格納位置最適化処理におけるステップＳ２０７へ処理を進める。
【００９４】
なお、ステップＳ２０６及びステップＳ６０１〜Ｓ６０９を実行するＣＰＵ２０ａは、頻度取得手段及び頻度取得部に相当する。
【００９５】
ステップＳ２０７では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２における各平均伝送率の１０ＭＢの位を四捨五入する。その後、ＣＰＵ２０ａは、ステップＳ２０８へ処理を進める。
【００９６】
ステップＳ２０８では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２内を並べ替える。並べ替えの条件は、第一に、平均伝送率の低いものから高いものの順であり、第二に、同じ平均伝送率をもつレコードについては読込頻度の高いものから低いものの順である。並べ替えた後、ＣＰＵ２０ａは、第１処理ループＬ１を実行する。
【００９７】
第１処理ループＬ１では、ＣＰＵ２０ａは、図１１の第２ワークテーブル４２内のレコードを、処理対象として一つずつ特定することにより、各レコードに対して、ステップＳ３０１〜Ｓ３０６を実行する。
【００９８】
ステップＳ３０１では、ＣＰＵ２０ａは、図４のログ管理テーブル２３を参照することによって、処理対象レコード中のファイル名に対応する伝送データ量を、そのファイルのデータ量として読み取る。読み取り後、ＣＰＵ２０ａは、ステップＳ３０２へ処理を進める。
【００９９】
ステップＳ３０２では、ＣＰＵ２０ａは、ＨＤＤ１０ｄの記憶容量に占める空き容量の割り合いが所定数（例えば７５％）以上であるファイルサーバ装置１０のレコードを、図９の第１ワークテーブル４１から抽出する。抽出後、ＣＰＵ２０ａは、ステップＳ３０３へ処理を進める。
【０１００】
ステップＳ３０３では、ＣＰＵ２０ａは、ステップＳ３０２において抽出したレコードの中から、処理対象レコード中のファイル名にて示されるファイル１３のデータ量よりも大きい空き容量をＨＤＤ１０ｄに持つファイルサーバ装置１０のレコードを抽出し、続いて、抽出したレコードの中で平均伝送率が最も高いレコードを検索する。
【０１０１】
次のステップＳ３０４では、ＣＰＵ２０ａは、第１ワークテーブル４１から上記条件を満たすレコードを検出できたか否かを、判別する。そして、ＣＰＵ２０ａは、第１ワークテーブル４１から上記条件を満たすレコードを検出できなかった場合（Ｓ３０４；ＮＯ）、この処理対象レコードに対する第１処理ループＬ１を終了し、第１ワークテーブル４１から上記条件を満たすレコードを検出できた場合（Ｓ３０４；ＹＥＳ）、ステップＳ３０５へ処理を進める。
【０１０２】
ステップＳ３０５では、ＣＰＵ２０ａは、処理対象レコード中のファイル名にて示されるファイル１３を、それを記憶しているファイルサーバ装置１０から、検出されたレコードのサーバ名にて示されるファイルサーバ装置１０へ、移し替える。すなわち、ＣＰＵ２０ａは、検出されたレコードのサーバ名にて示されるファイルサーバ装置１０のＨＤＤ１０ｄにこのファイル１３を記録した後、このファイル１３が記録されていた元のファイルサーバ装置１０のＨＤＤ１０ｄからこのファイル１３を削除する。このような移し替えを行った後、ＣＰＵ２０ａは、ステップＳ３０６へ処理を進める。
【０１０３】
ステップＳ３０６では、ＣＰＵ２０ａは、図９の第１ワークテーブル４１における当該ファイル１３が移し替えられた先のファイルサーバ装置１０のサーバ名を含むレコードの「空き容量」フィールドの値を、当該ファイル１３のデータ量だけ、減算する。この後、ＣＰＵ２０ａは、この処理対象レコードに対する第１処理ループＬ１を終了する。
【０１０４】
このような第１処理ループＬ１を、図１１の第２ワークテーブル４２内の全てのレコードについて実行した後、ＣＰＵ２０ａは、ステップＳ２０９へ処理を進める。
【０１０５】
なお、この第１処理ループＬ１を実行するＣＰＵ２０ａは、前述したファイル移動手段及びファイル移動部に相当する。
【０１０６】
ステップＳ２０９では、ＣＰＵ２０ａは、図４のログ管理テーブル２３をクリアして、格納位置最適化処理を終了する。
【０１０７】
以上に示した処理が実行されるため、本実施形態のコンピュータネットワークシステムは、以下に記述されるように、作用する。
【０１０８】
従業員が、自分のクライアント装置２０の通信アダプタ２０ｅの通信ポートを、中継装置３０の通信ポートに接続した後、入力装置２０ｄを操作することによって、クライアントプログラム２２を起動する。すると、表示装置２０ｃには、メニュー画面が表示されるので、従業員は、そのメニュー画面の中から、ファイル読込モジュールを選択する。この選択をトリガとして、ファイル読込プログラム２２２が起動すると、表示装置２０ｃには、ファイル名入力画面が表示される（Ｓ１０１）。
【０１０９】
その後、従業員は、ファイルサーバ装置１０から読み込みを希望する既存のファイル１３のファイル名を、そのファイル名入力画面のテキストボックスに入力して、ＯＫボタンをクリックすると、表示装置２０ｃには、格納位置情報入力画面が表示される（Ｓ１０４）。
【０１１０】
その後、従業員は、指定したファイルが記録されているサーバ名及びパス名を、その格納位置情報入力画面のテキストボックスに入力し、ＯＫボタンをクリックすると、指定したサーバ名及びパス名にて示される格納位置に指定ファイルが存在すれば、その指定ファイルをファイルサーバ装置１０から読み込む（Ｓ１０５；ＹＥＳ，Ｓ１０９；ＹＥＳ）。逆に、指定したサーバ名及びパス名にて示される格納位置に指定ファイルが存在しなければ、サーバ名及びパス名の修正を受け付け（Ｓ１０５；ＮＯ，Ｓ１０６）、修正されたサーバ名及びパス名にて示される格納位置に当該ファイル名のファイルが存在していなければ、当該ファイルがそのファイルサーバ装置１０に新規作成されて、そのファイルサーバ装置１０からそのファイルが読み込まれる（Ｓ１０７；ＮＯ）。
【０１１１】
また、従業員は、新規のファイル１３のファイル名をファイル名入力画面のテキストボックスに入力して、ＯＫボタンをクリックすると、表示装置２０ｃには、格納位置情報入力画面が表示される（Ｓ１０３）。
【０１１２】
その後、従業員は、指定した新規ファイルの格納を希望するサーバ名及びパス名を、その格納位置情報入力画面のテキストボックスに入力し、ＯＫボタンをクリックすると、指定したサーバ名及びパス名にて示される格納位置に指定の新規ファイルが存在しなければ、当該新規ファイルがそのファイルサーバ装置１０に新規作成されて、そのファイルサーバ装置１０からそのファイルが読み込まれる（Ｓ１０７；ＮＯ）。
【０１１３】
以上のようにして従業員が指定したファイル１３がファイルサーバ装置１０からクライアント装置２０に読み込まれると、クライアント装置２０では、そのファイル１３の伝送に掛かった伝送時間とそのファイルのデータ量である伝送データ量とを、ログ管理テーブル２３に記録する（Ｓ１１１〜Ｓ１１６）。つまり、従業員がファイル１３のファイルサーバ装置１０からの読み込み作業を行う毎に、そのファイル１３の伝送に関する情報がクライアント装置２０に蓄積される。
【０１１４】
これと並行して、クライアント装置２０は、保存先となるファイルサーバ装置１０を変更する必要があるファイル１３を移し替える作業を、例えば週末や深夜などの業務が行われていない間に、実行する。クライアント装置２０は、まず、ログ管理テーブル２３に情報を蓄積した蓄積期間においてファイル１３の伝送を行った全てのファイルサーバ装置１０のそれぞれについて、平均伝送率を算出する（Ｓ２０１，Ｓ２０２，Ｓ４０１〜Ｓ４０９）。なお、この平均伝送率は、前述した第１データ伝送率に相当する。また、クライアント装置２０は、上記全ファイルサーバ装置１０の空き容量を示す空き容量情報も取得する（Ｓ２０３）。
【０１１５】
続いて、クライアント装置２０は、上記蓄積期間においてファイルサーバ装置１０から伝送されたことのある全てのファイル１３のそれぞれについても、平均伝送率を算出する（Ｓ２０４，Ｓ２０５，Ｓ５０１〜Ｓ５０９）。
【０１１６】
さらに、クライアント装置２０は、上記蓄積期間においてファイルサーバ装置１０から伝送されたことのある全てのファイル１３のそれぞれについて、その蓄積期間における伝送回数に基づく読込頻度を、取得する（Ｓ２０６，Ｓ６０１〜Ｓ６０９）。
【０１１７】
このように、ファイルサーバ装置１０の平均伝送率及び空き容量と、ファイル１３の平均伝送率及び読込頻度とを、取得した後、クライアント装置２０は、これらの情報に基づいて、上記蓄積期間においてファイルサーバ装置１０から伝送されたことのある全てのファイル１３のそれぞれについて、その保存先のファイルサーバ装置１０を変更すべきか否かを判別し、その保存先のファイルサーバ装置１０を変更すべきであると判断したファイル１３を移し替える（Ｌ１，Ｓ３０１〜Ｓ３０６）。
【０１１８】
ここで、ファイル１３の保存先のファイルサーバ装置１０を変更すべきであるか否かを判別する際には、平均伝送率の低かったファイル１３が優先され、同じ平均伝送率を持つ場合には、読込頻度が高いものが優先される（Ｓ２０８）。
【０１１９】
また、ファイル１３の移し替え後の保存先については、ＨＤＤ１０ｄの記憶容量に占める空き容量の割り合いが所定数以上であって、且つ、空き容量がそのファイル１３のデータ量よりも大きいファイルサーバ装置１０の中で、平均伝送率が最も高いファイルサーバ装置１０が、選択される（Ｓ３０２，Ｓ３０３）。
【０１２０】
以上に説明したように作用するために、本実施形態のコンピュータネットワークシステムによれば、ファイル１３は、それを伝送する際のデータ伝送率ができるだけ高くなるファイルサーバ装置１０へと、定期的に移し替えられる。つまり、ファイル１３は、常にデータ伝送率の高いファイルサーバ装置１０に格納されることとなる。その結果、ファイル１３を一つのファイルサーバ装置１０に格納したままにすることに比べると、従業員は、業務を遂行するためにファイルサーバ装置１０からファイル１３を読み込んだときに、その受信に多くの時間を掛けなくて済む。
【０１２１】
（付記１）
コンピュータを、
ファイルを記録するための一つ以上のファイルサーバ装置から通信装置を通じてファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて、記憶装置に記録する記憶手段，
前記全ファイルサーバ装置のそれぞれについて、そのファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算手段，及び、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを現に記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動手段
として機能させる
ことを特徴とするファイル管理プログラム。
【０１２２】
（付記２）
前記記憶手段は、ファイルの伝送に掛かった伝送時間及び伝送データ量を、前記サーバ識別情報と、そのファイルを識別するためのファイル識別情報とに対応付けて、前記記憶装置に記憶するとともに、
前記コンピュータを、更に、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを受信した際の第２データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行う第２演算手段
として機能させ、
前記ファイル移動手段は、そのファイルを現に記憶するファイルサーバ装置よりも第１データ伝送率が高く、且つ、記録可能な記憶容量がそのファイルのファイルサイズよりも大きいファイルサーバ装置が存在した場合に、そのファイルサーバ装置へそのファイルを移し替える処理を、前記第２データ伝送率が低いファイルから高いファイルへと順に行う
ことを特徴とする付記１記載のファイル管理プログラム。
【０１２３】
（付記３）
前記記憶手段は、ファイルの伝送に掛かった伝送時間及び伝送データ量を、前記サーバ識別情報と、そのファイルを識別するためのファイル識別情報とに対応付けて、前記記憶装置に記憶するとともに、
前記コンピュータを、更に、
前記全ファイルサーバ装置に記憶される全てのファイルのそれぞれについて、前記記憶装置内のファイル識別情報に基づいてそのファイルの所定期間内での受信回数を読込頻度として取得する処理を行う頻度取得手段
として機能させ、
前記ファイル移動手段は、前記全ファイルサーバ装置に現に記録される全てのファイルの中から、読込頻度が所定の上限値よりも高いファイルを抽出した後に、抽出した全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行う
ことを特徴とする付記１又は２記載のファイル管理プログラム。
【０１２４】
（付記４）
コンピュータを、
ファイルを記録するための一つ以上のファイルサーバ装置から通信装置を通じてファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて、記憶装置に記録する記憶手段，
ファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を、前記全ファイルサーバ装置のそれぞれについて行う第１演算手段，及び、
そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を、前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて行うファイル移動手段
として機能させる
ファイル管理プログラム
を格納したことを特徴とするコンピュータ可読媒体。
【０１２５】
（付記５）
ファイルを記録するための一つ以上のファイルサーバ装置からファイルを受信する受信部，
前記受信部がファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて記憶する記憶部，
前記全ファイルサーバ装置のそれぞれについて、前記受信部がファイルサーバ装置からファイルを受信した際の第１データ伝送率を前記記憶部内の伝送時間及び伝送データ量に基づいて算出する処理を行う第１演算部，及び、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行うファイル移動部
を備えることを特徴とするファイル管理装置。
【０１２６】
（付記６）
ファイルを記録するための一つ以上のファイルサーバ装置に対して通信装置を介して接続され得るコンピュータが、
何れかのファイルサーバ装置から前記通信装置を介してファイルを受信すると、そのファイルの伝送に掛かった伝送時間及び伝送データ量を、そのファイルサーバ装置を識別するためのサーバ識別情報と対応付けて記憶装置に記録し、
前記全ファイルサーバ装置のそれぞれについて、そのファイルサーバ装置から前記通信装置を通じてファイルを受信した際の第１データ伝送率を前記記憶装置内の伝送時間及び伝送データ量に基づいて算出する処理を行い、
前記全ファイルサーバ装置に記録される全てのファイルのそれぞれについて、そのファイルを記憶するファイルサーバ装置よりも第１データ伝送率の高いファイルサーバ装置が存在した場合にそのファイルサーバ装置へそのファイルを移し替える処理を行う
ことを特徴とするファイル管理方法。
【図面の簡単な説明】
【０１２７】
【図１】本発明が適用されたコンピュータネットワークシステムの概略図
【図２】ファイルサーバ装置の内部構成図
【図３】クライアント装置の内部構成図
【図４】ログ管理テーブルのデータ構造の一例を示す図
【図５】ファイル読込処理の内容を示すフローチャート
【図６】格納位置最適化処理の内容を示すフローチャート
【図７】格納位置最適化処理の内容を示すフローチャート
【図８】平均伝送率算出処理の内容を示すフローチャート
【図９】第１ワークテーブルのデータ構造の一例を示す図
【図１０】平均伝送率算出処理の内容を示すフローチャート
【図１１】第２ワークテーブルのデータ構造の一例を示す図
【図１２】読込頻度算出処理の内容を示すフローチャート
【符号の説明】
【０１２８】
１０    ファイルサーバ装置
１０ａ  ＣＰＵ
１０ｂ  ＲＡＭ
１０ｃ  通信アダプタ
１０ｄ  ＨＤＤ
１２    ファイルサーバプログラム
１３    ファイル
２０    クライアント装置
２０ａ  ＣＰＵ
２０ｂ  ＲＡＭ
２０ｃ  表示装置
２０ｄ  入力装置
２０ｅ  通信アダプタ
２０ｆ  ＦＤＤ
２０ｇ  ＣＤＤ
２０ｈ  ＨＤＤ
２２    クライアントプログラム
２２２  ファイル読込プログラム
２２３  格納位置最適化プログラム
３０    中継装置
４１    第１ワークテーブル
４２    第２ワークテーブル
【図１】
2005258590.tif 000003
【図２】
2005258590.tif 000004
【図３】
2005258590.tif 000005
【図４】
2005258590.tif 000006
【図５】
2005258590.tif 000007
【図６】
2005258590.tif 000008
【図７】
2005258590.tif 000009
【図８】
2005258590.tif 000010
【図９】
2005258590.tif 000011
【図１０】
2005258590.tif 000012
【図１１】
2005258590.tif 000013
【図１２】
2005258590.tif 000014