(57)【要約】【課題】  情報処理装置が格納しているデータを効率的にバックアップする。【解決手段】  各々が格納手段を有する、ネットワークを介して接続された複数の情報処理装置を備える情報処理システム１０であって、複数の情報処理装置２０の各々が、当該情報処理装置の格納手段に格納された保存データを、複数のグループデータに分割する分割手段２１０と、分割手段２１０により分割された複数のグループデータのそれぞれを、他の複数の情報処理装置のそれぞれに送信してバックアップさせるバックアップ手段２７０とを有する情報処理システム１０を提供する。【選択図】図２
2005115524.tif 000002
【特許請求の範囲】
【請求項１】
各々が格納手段を有する、ネットワークを介して接続された複数の情報処理装置を備える情報処理システムであって、前記複数の情報処理装置の各々が、
当該情報処理装置の格納手段に格納された保存データを、複数のグループデータに分割する分割手段と、
前記分割手段により分割された前記複数のグループデータのそれぞれを、他の複数の情報処理装置に１つずつ送信してバックアップさせるバックアップ手段と
を有する情報処理システム。
【請求項２】
前記複数の情報処理装置の各々が、
他の情報処理装置の格納手段の空き容量を取得する空き容量取得手段と、
前記空き容量取得手段が取得した、他の情報処理装置が有する格納手段の空き容量に基づいて、前記保存データをバックアップするバックアップ先の情報処理装置を決定するバックアップ先決定手段と
を更に有し、
前記バックアップ手段は、前記バックアップ先決定手段が決定したバックアップ先の情報処理装置に、前記複数のグループデータを１つずつ送信してバックアップさせる
請求項１に記載の情報処理システム。
【請求項３】
前記分割手段は、前記バックアップ先決定手段が決定したバックアップ先の情報処理装置の数に応じて、前記保存データを分割して保存させる方法を判断する請求項２に記載の情報処理システム。
【請求項４】
前記複数の情報処理装置の各々は、
前記バックアップ手段がバックアップさせたグループデータのそれぞれを識別する情報を、当該グループデータのバックアップ先の情報処理装置に対応付けて、当該情報処理装置の格納手段にファイルとして格納するバックアップ先格納手段を更に有する
請求項１記載の情報処理システム。
【請求項５】
前記分割手段は、前記保存データを構成する複数の単位データのそれぞれを、ビット位置に基づいてビットデータに分割すると共に、異なる単位データにおける対応するビットデータをまとめることにより前記グループデータを生成する請求項１に記載の情報処理システム。
【請求項６】
前記分割手段は、前記複数の単位データのそれぞれを１ビット毎に分割すると共に、異なる単位データから分割された対応する１ビットずつのビットデータをまとめることにより前記グループデータを生成する請求項５に記載の情報処理システム。
【請求項７】
前記複数の情報処理装置の各々が、
他の情報処理装置にバックアップさせる前記保存データを構成する複数の前記単位データのそれぞれについて、当該単位データ内の各ビットのパリティを算出すると共に、各単位データについて算出されたパリティをまとめた誤り訂正用データを新たなグループデータとして生成する誤り訂正用データ生成手段を更に有し、
前記バックアップ手段は、前記複数のグループデータの送信先の情報処理装置と異なる情報処理装置に、新たなグループデータとして生成された前記誤り訂正用データを更に送信してバックアップさせる
請求項６記載の情報処理システム。
【請求項８】
バックアップ先の情報処理装置の数が、前記単位データ及び前記単位データのパリティの合計ビット数より少ない場合に、前記バックアップ手段は、複数の前記グループデータを１つずつ他の複数の情報処理装置に送信し、送信できなかった残りのグループデータと同数の情報処理装置を、既にグループデータを送信した前記他の複数の情報処理装置から選択して、選択した当該情報処理装置に、送信できなかった残りのグループデータを１つずつ送信し、
前記複数の情報処理装置の各々が、
前記バックアップ手段が、既にグループデータを送信した送信先の情報処理装置に、更にグループデータを送信した場合に、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、当該グループデータの送信先とは異なる他の情報処理装置に更に送信する冗長データ送信手段
を更に有する請求項７に記載の情報処理システム。
【請求項９】
前記バックアップ手段は、既に前記グループデータを送信した当該他の複数の情報処理装置のうち、当該情報処理装置との通信速度が他の情報処理装置より速い情報処理装置を、送信できなかった残りのグループデータを送信する送信先の情報処理装置として選択し、
前記冗長データ送信手段は、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、当該グループデータの送信先とは異なる情報処理装置のうち、前記通信速度が他の情報処理装置より速い情報処理装置に更に送信する
請求項８に記載の情報処理システム。
【請求項１０】
前記グループデータを格納するバックアップ先の情報処理装置の中の一台から前記グループデータを読み出すことができない場合に、
グループデータをバックアップする他の情報処理装置の少なくとも１台が、他のグループデータをバックアップしている他の情報処理装置に当該情報処理装置が格納しているグループデータを復元用データとして送信し、
他の情報処理装置から復元用データを受け取った情報処理装置は、更に、当該情報処理装置が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出して、前記復元用データとして、他のグループデータをバックアップしている更に他の情報処理装置に送信し、
前記復元用データを最後に受け取った、グループデータをバックアップしている情報処理装置が、当該情報処理装置が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出することにより、読み出すことのできなかったグループデータを復元し、読み出せない情報処理装置に置き換えるべき新たな情報処理装置に送信し、
前記新たな情報処理装置は、受け取ったグループデータを保存する
請求項７に記載の情報処理システム。
【請求項１１】
前記複数の情報処理装置の各々は、
当該情報処理装置とネットワーク構成において近接する他の情報処理装置に前記復元用データを送信する
請求項１０記載の情報処理システム。
【請求項１２】
前記複数の情報処理装置の各々が、
他の複数の情報処理装置のそれぞれについて、当該情報処理装置から当該他の情報処理装置間に至る通信経路の混雑率を時間帯毎に学習する混雑率学習手段
を更に有し、
前記バックアップ手段は、他の複数の情報処理装置のそれぞれについて、当該情報処理装置から当該他の情報処理装置に至る通信経路の過去の前記混雑率が、予め定められた基準値より小さい時間帯に、当該他の情報処理装置にグループデータを送信する
請求項１記載の情報処理システム。
【請求項１３】
前記複数の情報処理装置の各々は、
他の複数の情報処理装置のそれぞれの中央処理装置が処理可能な最大処理量に対する、当該中央処理装置が処理している処理量の割合を示すシステム使用率を時間帯毎に学習するシステム使用率学習手段
を更に有し、
前記バックアップ手段は、他の複数の情報処理装置のそれぞれについて、当該他の情報処理装置の過去の前記システム使用率が予め定められた基準値より小さい時間帯に、当該他の情報処理装置にグループデータを送信する
請求項１記載の情報処理システム。
【請求項１４】
前記複数の情報処理装置の各々は、
当該情報処理装置の格納手段の空き容量が予め定められた容量以下になった場合に、当該格納手段に格納しているグループデータを、当該グループデータの受信先とは異なる他の情報処理装置の格納手段に移してバックアップさせる
請求項１記載の情報処理装置。
【請求項１５】
各々が格納手段を有する、ネットワークを介して接続された複数の情報処理装置を備える情報処理システムを制御するプログラムであって、前記複数の情報処理装置の各々を、
当該情報処理装置の格納手段に格納された保存データを、複数のグループデータに分割する分割手段と、
前記分割手段により分割された前記複数のグループデータを、他の複数の情報処理装置に１つずつ送信してバックアップさせるバックアップ手段と
して機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理システム及びプログラムに関する。特に、本発明は、データをバックアップする情報処理システム及びプログラムに関する。
【背景技術】
【０００２】
コンピュータの利用形態として、コンピュータのハードディスクドライブに大量のデータを格納し、それらのデータを高速に処理させることが一般的に行われている。しかしながら、コンピュータのハードディスクドライブが故障すると、ハードディスクドライブに格納されたデータを復元することができない場合が多い。このため、業務に用いる重要なデータが失われるため多大な損失を蒙る可能性もある。
【０００３】
従来、ハードディスクドライブに格納されたデータを、光磁気ディスクなどの他の記憶装置にバックアップする技術が用いられている。これにより、ハードディスクドライブに格納されたデータが使用不能になっても、予めバックアップしたデータを復元することにより、業務を継続できる。
現時点で従来技術文献の存在を確認していないので、従来技術文献についての記載を省略する。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、ハードディスクドライブに格納されたデータをバックアップするには、光磁気ディスクや、他のハードディスクなどの、バックアップ専用の記憶装置を導入しなければならない。更に、その記憶装置には、ハードディスクドライブに格納されたデータを記憶するのに充分な記憶容量が必要となる。
【０００５】
そこで本発明は、上記の課題を解決することのできる情報処理システム及びプログラムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００６】
本発明の第１の形態によると、各々が格納手段を有する、ネットワークを介して接続された複数の情報処理装置を備える情報処理システムは、複数の情報処理装置の各々が、当該情報処理装置の格納手段に格納された保存データを、複数のグループデータに分割する分割手段と、分割手段により分割された複数のグループデータのそれぞれを、他の複数の情報処理装置に１つずつ送信してバックアップさせるバックアップ手段とを有する。
また、複数の情報処理装置の各々が、他の情報処理装置の格納手段の空き容量を取得する空き容量取得手段と、空き容量取得手段が取得した、他の情報処理装置が有する格納手段の空き容量に基づいて、保存データをバックアップするバックアップ先の情報処理装置を決定するバックアップ先決定手段とを更に有し、バックアップ手段は、バックアップ先決定手段が決定したバックアップ先の情報処理装置に、複数のグループデータを１つずつ送信してバックアップさせてもよい。
【０００７】
また、分割手段は、バックアップ先決定手段が決定したバックアップ先の情報処理装置の数に応じて、保存データを分割して保存させる方法を判断してもよい。
また、複数の情報処理装置の各々は、バックアップ手段がバックアップさせたグループデータのそれぞれを識別する情報を、当該グループデータのバックアップ先の情報処理装置に対応付けて、当該情報処理装置の格納手段にファイルとして格納するバックアップ先格納手段を更に有してもよい。
また、分割手段は、保存データを構成する複数の単位データのそれぞれを、ビット位置に基づいてビットデータに分割すると共に、異なる単位データにおける対応するビットデータをまとめることによりグループデータを生成してもよい。
分割手段は、複数の単位データのそれぞれを１ビット毎に分割すると共に、異なる単位データから分割された対応する１ビットずつのビットデータをまとめることによりグループデータを生成してもよい。
【０００８】
複数の情報処理装置の各々が、他の情報処理装置にバックアップさせる保存データを構成する複数の単位データのそれぞれについて、当該単位データ内の各ビットのパリティを算出すると共に、各単位データについて算出されたパリティをまとめた誤り訂正用データを新たなグループデータとして生成する誤り訂正用データ生成手段を更に有し、バックアップ手段は、複数のグループデータの送信先の情報処理装置と異なる情報処理装置に、新たなグループデータとして生成された誤り訂正用データを更に送信してバックアップさせてもよい。
また、バックアップ先の情報処理装置の数が、単位データ及び単位データのパリティの合計ビット数より少ない場合に、バックアップ手段は、複数のグループデータを１つずつ他の複数の情報処理装置に送信し、送信できなかった残りのグループデータと同数の情報処理装置を、既にグループデータを送信した他の複数の情報処理装置から選択して、選択した当該情報処理装置に、送信できなかった残りのグループデータを１つずつ送信し、複数の情報処理装置の各々が、バックアップ手段が、既にグループデータを送信した送信先の情報処理装置に、更にグループデータを送信した場合に、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、当該グループデータの送信先とは異なる他の情報処理装置に更に送信する冗長データ送信手段を更に有してもよい。
【０００９】
また、バックアップ手段は、既にグループデータを送信した当該他の複数の情報処理装置のうち、当該情報処理装置との通信速度が他の情報処理装置より速い情報処理装置を、送信できなかった残りのグループデータを送信する送信先の情報処理装置として選択し、冗長データ送信手段は、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、当該グループデータの送信先とは異なる情報処理装置のうち、通信速度が他の情報処理装置より速い情報処理装置に更に送信してもよい。
また、グループデータを格納するバックアップ先の情報処理装置の中の一台からグループデータを読み出すことができない場合に、グループデータをバックアップする他の情報処理装置の少なくとも１台が、他のグループデータをバックアップしている他の情報処理装置に当該情報処理装置が格納しているグループデータを復元用データとして送信し、他の情報処理装置から復元用データを受け取った情報処理装置は、更に、当該情報処理装置が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出して、復元用データとして、他のグループデータをバックアップしている更に他の情報処理装置に送信し、復元用データを最後に受け取った、グループデータをバックアップしている情報処理装置が、当該情報処理装置が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出することにより、読み出すことのできなかったグループデータを復元し、読み出せない情報処理装置に置き換えるべき新たな情報処理装置に送信し、新たな情報処理装置は、受け取ったグループデータを保存してもよい。
【００１０】
また、複数の情報処理装置の各々は、当該情報処理装置とネットワーク構成において近接する他の情報処理装置に復元用データを送信してもよい。
また、複数の情報処理装置の各々が、他の複数の情報処理装置のそれぞれについて、当該情報処理装置から当該他の情報処理装置間に至る通信経路の混雑率を時間帯毎に学習する混雑率学習手段を更に有し、バックアップ手段は、他の複数の情報処理装置のそれぞれについて、当該情報処理装置から当該他の情報処理装置に至る通信経路の過去の混雑率が、予め定められた基準値より小さい時間帯に、当該他の情報処理装置にグループデータを送信してもよい。
【００１１】
また、複数の情報処理装置の各々は、他の複数の情報処理装置のそれぞれの中央処理装置が処理可能な最大処理量に対する、当該中央処理装置が処理している処理量の割合を示すシステム使用率を時間帯毎に学習するシステム使用率学習手段を更に有し、バックアップ手段は、他の複数の情報処理装置のそれぞれについて、当該他の情報処理装置の過去のシステム使用率が予め定められた基準値より小さい時間帯に、当該他の情報処理装置にグループデータを送信してもよい。
【００１２】
また、複数の情報処理装置の各々は、当該情報処理装置の格納手段の空き容量が予め定められた容量以下になった場合に、当該格納手段に格納しているグループデータを、当該グループデータの受信先とは異なる他の情報処理装置の格納手段に移してバックアップさせてもよい。
また、本発明の第２の形態によると、各々が格納手段を有する、ネットワークを介して接続された複数の情報処理装置を備える情報処理システムを制御するプログラムは、複数の情報処理装置の各々を、当該情報処理装置の格納手段に格納された保存データを、複数のグループデータに分割する分割手段と、分割手段により分割された複数のグループデータを、他の複数の情報処理装置に１つずつ送信してバックアップさせるバックアップ手段として機能させる。
【００１３】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【００１４】
本発明によれば、情報処理装置が格納しているデータを効率的にバックアップすることができる。
【発明を実施するための最良の形態】
【００１５】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【００１６】
図１は、情報処理システム１０のブロック図を示す。情報処理システム１０は、各々が格納手段を有する、ネットワークを介して互いに接続された情報処理装置２０−１〜１０を備える。情報処理装置２０−１〜１０の各々は、格納手段に格納された保存データを分割して、分割した複数のグループデータのそれぞれを、他の複数の情報処理装置における格納手段の空き容量にバックアップする。これにより、情報処理システム１０は、バックアップ専用の記憶装置を設けることなく、ネットワーク上の他の情報処理装置における空き容量をバックアップ先として利用することができる。
【００１７】
情報処理装置２０−１〜１０の各々は、グループデータを互いに送信し合うことによりバックアップする。そこで、本実施例の以降の説明においては、便宜上、情報処理装置２０−１（メイン装置）が、複数のグループデータのそれぞれを、情報処理装置２０−２〜１０（バックアップ側装置）のそれぞれに送信してバックアップさせる形態について説明する。
【００１８】
図２は、メイン装置２０−１のブロック図を示す。他の情報処理装置であるバックアップ側装置２０−２〜１０は、メイン装置２０−１と略同一の構成を有するので、説明を省略する。メイン装置２０−１は、格納手段２００と、分割手段２１０と、誤り訂正用データ生成手段２２０と、空き容量取得手段２３０と、バックアップ先決定手段２４０と、システム使用率学習手段２５０と、混雑率学習手段２６０と、バックアップ手段２７０と、冗長データ送信手段２８０と、バックアップ先格納手段２９０と、グループデータ復元手段２９５と、グループデータ移動指示手段２９７とを有する。格納手段２００は、例えば、ハードディスクドライブ等の記憶装置であり、バックアップ側装置２０−２〜１０にバックアップさせる保存データを格納する。
【００１９】
分割手段２１０は、メイン装置２０−１の格納手段２００に格納された保存データを、複数のグループデータに分割し、誤り訂正用データ生成手段２２０に送る。具体的には、分割手段２１０は、保存データを構成する複数の単位データのそれぞれを１ビット毎に分割すると共に、異なる単位データから分割された対応する１ビットずつのビットデータをまとめることによりグループデータを生成する。例えば、分割手段２１０は、各ビットデータを、新たに生成したファイルに順次格納することによりまとめてもよいし、メモリの連続した領域に格納することによりまとめてもよい。
【００２０】
また、分割方法の他の例として、分割手段２１０は、複数の単位データのそれぞれをビット位置に基づいてビットデータに分割してもよい。例えば、分割手段２１０は、単位データのそれぞれを予め定めた数のビット毎に分割してもよいし、予め定めたビット位置を境界として分割してもよい。
【００２１】
誤り訂正用データ生成手段２２０は、複数の単位データのそれぞれについて、当該単位データ内の各ビットのパリティを算出すると共に、各単位データについてのパリティをまとめた誤り訂正用データを新たなグループデータとして生成し、保存データと共にバックアップ手段２７０に送る。例えば、誤り訂正用データ生成手段２２０は、算出したパリティのそれぞれを、新たに生成したファイルに順次格納することによりまとめてもよいし、メモリの連続した領域に格納することによりまとめてもよい。
【００２２】
空き容量取得手段２３０は、バックアップ側装置２０−２〜１０の格納手段の空き容量を、バックアップ側装置２０−２〜１０のそれぞれから取得する。バックアップ先決定手段２４０は、空き容量取得手段２３０が取得したバックアップ側装置２０−２〜１０が有する格納手段の空き容量に基づいて、保存データをバックアップするバックアップ先の情報処理装置を決定する。
【００２３】
システム使用率学習手段２５０は、バックアップ側装置２０−２〜１０のそれぞれの中央処理装置が処理可能な最大処理量に対する、当該中央処理装置が処理している処理量の割合を示すシステム使用率を、時間帯毎に学習する。例えば、システム使用率学習手段２５０は、システム使用率を学習する処理として、時間帯毎に検出された過去のシステム使用率の平均値を算出し、将来の複数の時間帯のそれぞれにおけるシステム使用率の予測値とする。
また、これに代えて、システム使用率学習手段２５０は、バックアップ側装置２０−２〜１０のそれぞれの主メモリの使用率又はバックアップ側装置２０−２〜１０の格納手段へのアクセス頻度を、システム使用率として学習してもよい。
【００２４】
混雑率学習手段２６０は、メイン装置２０−１からバックアップ側装置２０−２〜１０のそれぞれに至る通信経路の混雑率を時間帯毎に学習する。例えば、混雑率学習手段２６０は、通信が正常に行われない場合にデータを再送する回数を混雑率として学習してもよいし、メイン装置２０−１からバックアップ側装置２０−２〜１０のそれぞれに至る通信経路におけるデータの伝送可能量に対する、当該通信経路においてデータが伝送されている伝送量の割合を混雑率として学習してもよい。
【００２５】
バックアップ手段２７０は、システム使用率学習手段２５０により学習された時間帯毎のシステム使用率及び混雑率学習手段２６０により学習された時間帯毎の混雑率に基づいて、現在の時間帯においてグループデータを送信するか否かを判断する。グループデータを送信すると判断した場合に、バックアップ手段２７０は、バックアップ先決定手段２４０が決定したバックアップ先、例えばバックアップ側装置２０−２〜９に、複数のグループデータのそれぞれを１つずつ送信して、バックアップ側装置２０−２〜９の格納手段にバックアップさせる。更に、バックアップ手段２７０は、複数のグループデータの送信先と異なる情報処理装置、例えばバックアップ側装置２０−１０に、新たなグループデータとして生成された誤り訂正用データを更に送信して、バックアップ側装置２０−１０の格納手段にバックアップさせる。
【００２６】
また、バックアップ手段２７０は、バックアップ先の情報処理装置の数が、単位データ及び単位データのパリティの合計ビット数より少ない場合には、まず、複数のグループデータを１つずつ他の複数の情報処理装置であるバックアップ側装置２０−２〜１０に送信する。次に、バックアップ手段２７０は、送信できなかった残りのグループデータと同数の情報処理装置を、既にグループデータを送信した当該他の複数の情報処理装置から選択する。そして、バックアップ手段２７０、選択した当該情報処理装置に、送信できなかった残りのグループデータを１つずつ送信する。
【００２７】
バックアップ手段２７０が、既にグループデータを送信した送信先の情報処理装置に、更にグループデータを送信した場合に、冗長データ送信手段２８０は、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、当該グループデータの送信先とは異なる他の情報処理装置に更に送信する。
【００２８】
バックアップ先格納手段２９０は、バックアップ手段２７０又は冗長データ送信手段２８０がバックアップさせたグループデータのそれぞれを識別する情報を、そのグループデータのバックアップ先の情報処理装置に対応付けた保存先情報を、格納手段２００にファイルとして保存する。また、バックアップ先格納手段２９０は、メイン装置２０−１の管理者のみが知っているパスワードを、保存先情報の読み出し時に入力を要するパスワードとして設定する。そして、バックアップ先格納手段２９０は、パスワードが設定されたこの保存先情報を、バックアップ手段２７０により、バックアップ側装置２０−２〜１０のそれぞれの格納手段に保存する。これにより、保存データが破壊された場合のみならず、メイン装置２０−１の格納手段２００が故障した場合であっても、バックアップ側装置２０−２〜１０の何れかにより保存データを復元することができる。
【００２９】
グループデータ復元手段２９５は、バックアップさせた複数のグループデータの何れかを読み出すことができない場合に、格納手段２００に格納された保存先情報に基づいて各グループデータのバックアップ先を検出する。そして、グループデータ復元手段２９５は、検出したバックアップ先であるバックアップ側装置２０−２〜１０のそれぞれに指示することにより、読み出すことのできるグループデータの各々から対応する１ビットずつを取り出したデータのパリティを算出させる。
【００３０】
そして、グループデータ復元手段２９５は、算出させたパリティの組により、読み出すことのできなかったグループデータを復元させる。これに代えて、グループデータ復元手段２９５は、読み出すことのできるグループデータを、バックアップ側装置２０−２〜１０のそれぞれから取得してもよい。この場合、グループデータ復元手段２９５は、取得した各グループデータから対応する１ビットずつを取り出したデータのパリティを算出し、算出したパリティの組により、読み出すことができなかったグループデータを復元してもよい。
【００３１】
グループデータ移動指示手段２９７は、バックアップ先の情報処理装置、例えばバックアップ側装置２０−２の格納手段の空き容量が予め定められた容量以下になった旨を、バックアップ側装置２０−２からの通知により検出する。例えば、バックアップ側装置２０−２は、バックアップ側装置２０−２の利用者により新たなデータが格納手段に格納された結果、空き容量が予め定められた容量以下になった場合に、その旨をメイン装置２０−１に通知する。
【００３２】
そして、グループデータ移動指示手段２９７は、バックアップ側装置２０−２の格納手段が格納しているグループデータを、メイン装置２０−１とは異なる他の情報処理装置の格納手段に移してバックアップさせる。例えば、バックアップ側装置２０−２は、格納しているグループデータを、バックアップ側装置２０−３に対してネットワークを介して送信して、バックアップ側装置２０−３の格納手段に保存させてもよい。そして、グループデータ移動指示手段２９７は、格納手段２００に保存された保存先情報のうち、グループデータをバックアップ側装置２０−２に格納させる旨を示す情報を、そのグループデータをバックアップ側装置２０−３に格納させる旨を示す情報に変更する。
【００３３】
図３は、バックアップ手段２７０がバックアップ側装置２０−２〜１０に送信してバックアップさせるデータの一例を示す。本図を用いて、メイン装置２０−１が格納手段２００に格納されている保存データを分割してバックアップ側装置２０−２〜１０のそれぞれに送信する処理を説明する。
【００３４】
格納手段２００は、保存データを複数の単位データとして格納している。例えば、単位データとは１バイトのデータであり、格納手段２００は、保存データを１バイト毎に格納している。なお、単位データとは、１バイトのデータに限られるものではなく、２バイトのワードデータであってもよいし、４バイトのデータであってもよい。更に、単位データとは、情報処理装置のメモリの１アドレスに格納するサイズのデータであってもよい。
【００３５】
分割手段２１０は、保存データを構成する複数のバイトのそれぞれを１ビット毎に分割する。例えば、分割手段２１０は、保存データの第１バイトを、第１ビットから第８ビットまでの８つのビットデータに分割する。そして、分割手段２１０は、異なる単位データから分割された対応する１ビットずつのビットデータをまとめることにより、グループデータを生成する。例えば、分割手段２１０は、第１バイトと、第２バイトと、途中を省略して、第Ｎバイトとのそれぞれから分割された第１ビットをまとめることにより、グループデータを生成する。
【００３６】
誤り訂正用データ生成手段２２０は、複数の単位データのそれぞれについて、当該単位データ内の各ビットのパリティを算出すると共に、各単位データについてのパリティをまとめた誤り訂正用データを生成する。例えば、誤り訂正用データ生成手段２２０は、第１バイトの第１ビットから第８ビットのパリティと、第２バイトの第１ビットから第８ビットのパリティと、途中を省略して、第Ｎバイトの第１ビットから第８ビットのパリティとをまとめた誤り訂正用データを生成する。
【００３７】
そして、バックアップ手段２７０は、分割手段２１０により分割された複数のグループデータのそれぞれを、バックアップ側装置２０−２〜９に１つずつ送信する。これにより、バックアップ側装置２０−２〜９の利用者に、保存データの内容を予測させにくくすることができる。
【００３８】
また、バックアップ手段２７０は、誤り訂正用データを、バックアップ側装置２０−１０に更に送信してバックアップさせる。これにより、バックアップ側装置２０−２〜９の何れかに格納されたグループデータを読み出すことができなくなった場合であっても、読み出すことができなくなったそのグループデータを復元することができる。
【００３９】
また、メイン装置２０−１の格納手段２００に格納された保存データが破壊された場合には、メイン装置２０−１に代わって保存データを保持する代替装置は、保存データを復元することができる。例えば、代替装置は、バックアップ側装置２０−２〜９のそれぞれからグループデータを受信して、各グループデータの１ビットずつのビットデータを結合して単位データを生成し、生成した複数の単位データをまとめることにより、保存データを復元することができる。この場合、代替装置は、バックアップ側装置２０−２〜９の何れかであってもよいし、バックアップ側装置２０−２〜９とは異なる装置であってもよい。
【００４０】
図４は、メイン装置２０−１及びバックアップ側装置２０−２の動作フローを説明する図である。本図を用いて、メイン装置２０−１の格納手段に格納された保存データを分割して、バックアップ側装置２０−２〜１０のそれぞれに格納する処理を説明する。なお、本図において、バックアップ側装置２０−３〜１０のそれぞれは、バックアップ側装置２０−２と略同一の動作をするので説明を省略する。また、メイン装置２０−１が、バックアップ側装置２０−３〜１０のそれぞれに対して行う処理は、バックアップ側装置２０−２に対して行う処理と略同一であるので説明を省略する。
【００４１】
分割手段２１０は、メイン装置２０−１の格納手段２００に格納された保存データを、複数のグループデータに分割する（Ｓ６００）。例えば、分割手段２１０は、保存データを構成する複数の単位データのそれぞれを１ビット毎に分割すると共に、異なる単位データから分割された対応する１ビットずつのビットデータをまとめることによりグループデータを生成する。
【００４２】
誤り訂正用データ生成手段２２０は、複数の単位データのそれぞれについて、当該単位データ内の各ビットのパリティを算出すると共に、各単位データについてのパリティをまとめた誤り訂正用データを生成する（Ｓ６０５）。
【００４３】
空き容量取得手段２３０は、バックアップ側装置２０−２〜１０の格納手段の空き容量を、バックアップ側装置２０−２〜１０のそれぞれから取得する（Ｓ６１０）。バックアップ先決定手段２４０は、バックアップ側装置２０−２〜１０の格納手段の空き容量に基づいて、保存データをバックアップさせるバックアップ先の情報処理装置を決定する（Ｓ６１５）。例えば、バックアップ先決定手段２４０は、空き容量が予め定めた基準容量より大きい情報処理装置を、バックアップ先の情報処理装置として決定してもよいし、空き容量が大きい順に予め定めた台数の情報処理装置を、バックアップ先の情報処理装置として決定してもよい。
【００４４】
バックアップ手段２７０は、システム使用率学習手段２５０により学習された時間帯毎のシステム使用率に基づいて、現在のシステム使用率を予測する（Ｓ６２０）。更に、バックアップ手段２７０は、混雑率学習手段２６０により学習された時間帯毎の混雑率に基づいて、現在の混雑率を予測する（Ｓ６３０）。そして、バックアップ手段２７０は、これらの予測の結果に基づいて、グループデータをバックアップ側装置２０−２に送信する（Ｓ６４０）。また、冗長データ送信手段２８０は、必要に応じて、既に送信したグループデータを更に送信する。
【００４５】
具体的には、バックアップ手段２７０は、バックアップ側装置２０−２〜１０のそれぞれについて、メイン装置２０−１から当該バックアップ側装置に至る通信経路の過去の混雑率が、予め定められた基準値より小さい時間帯に、その時間帯の混雑率が基準値より小さい旨を予測して、当該バックアップ側装置にグループデータを送信する。これにより、ネットワークが混雑していない可能性の高い時間帯に、グループデータを送ることができる。
【００４６】
バックアップ側装置２０−２は、グループデータをメイン装置２０−１から受信する（Ｓ６５０）。そして、バックアップ側装置２０−２は、受信したグループデータを格納手段に格納する（Ｓ６６０）。メイン装置２０−１のバックアップ先格納手段２９０は、バックアップ手段２７０又は冗長データ送信手段２８０がバックアップさせたグループデータのそれぞれを識別する情報を、当該グループデータのバックアップ先の情報処理装置に対応付けた保存先情報を、格納手段２００にファイルとして保存する（Ｓ６７０）。これにより、保存した当該ファイルを、格納手段２００に格納した保存データとして、更にバックアップ側装置２０−２〜９にバックアップさせることができる。
【００４７】
この場合、メイン装置２０−１の格納手段２００に格納された保存データが破壊された場合には、メイン装置２０−１に代わって保存データを復元すべき代替装置は、以下の処理により保存データを復元する。まず、代替装置は、バックアップ側装置２０−２〜９の何れか、例えばバックアップ側装置２０−２に、保存先情報を復元させる保存先情報復元指示を送る。ここで、保存先情報復元指示を送信するには、メイン装置２０−１の管理者のみが知っているパスワードの入力を要するのが望ましい。
【００４８】
保存先情報復元指示を受けたバックアップ側装置２０−２は、保存先情報の他のバックアップ先であるバックアップ側装置２０−３〜９のそれぞれから、保存先情報の一部ずつを受け取る。そして、バックアップ側装置２０−２は、受け取った保存先情報の一部ずつと、格納している保存先情報の一部とを結合して、保存先情報を復元する。これを受けて、代替装置は、バックアップ側装置２０−２により復元された保存先情報に基づいて、グループデータの保存先がバックアップ側装置２０−２〜９である旨を検出する。その結果、代替装置は、バックアップ側装置２０−２〜９のそれぞれからグループデータを受け取って結合することにより、メイン装置２０−１において破壊された保存データを復元することができる。
【００４９】
図５は、グループデータ復元手段２９５が、読み出すことのできないデータを復元させる処理を説明する図である。図５（ａ）は、データが読み出せなくなる前に、バックアップ側装置２０−２〜８が格納するデータの一例を示す。図５（ａ）から図５（ｃ）の前提として、バックアップ先決定手段２４０は、バックアップ先の情報処理装置として、バックアップ側装置２０−２〜８を決定している。
【００５０】
バックアップ手段２７０は、バックアップ先の情報処理装置の数が、単位データ及び単位データのパリティの合計ビット数より少ない場合に、まず、複数のグループデータを１つずつ他の複数の情報処理装置に送信する。例えば、バックアップ手段２７０は、第１グループデータから第７グループデータまでを、１つずつバックアップ側装置２０−２〜８に送信してバックアップさせる。
【００５１】
次に、バックアップ手段２７０は、送信できなかった残りのグループデータと同数の情報処理装置を、既にグループデータを送信した当該他の複数の情報処理装置から選択する。例えば、バックアップ手段２７０は、送信できなかった第８グループデータ及び誤り訂正用データの送信先の情報処理装置として、メイン装置２０−１との通信速度が他のバックアップ側装置より速いバックアップ側装置２０−５及びバックアップ側装置２０−６を選択する。そして、バックアップ手段２７０は、バックアップ側装置２０−５に第８グループデータを更に送信し、バックアップ側装置２０−６に誤り訂正用データを更に送信する。
【００５２】
ここで、通信速度とは、実際に計測された通信のスループット又はレイテンシであってもよいし、通信経路に定められた通信の上限速度であってもよい。即ち、バックアップ手段２７０は、バックアップ側装置の選択に先だって、メイン装置２０−１から各バックアップ側装置に至る通信速度を計測してもよい。また、バックアップ手段２７０は、メイン装置２０−１から各バックアップ側装置に至る通信回線の仕様を予め格納していてもよい。一例としては、バックアップ手段２７０は、ギガビットイーサネット又はＦＤＤＩ等の通信回線の種類に応じて通信速度を判断してもよい。
【００５３】
バックアップ手段２７０が、既にグループデータを送信した送信先の情報処理装置に、更にグループデータを送信した場合に、冗長データ送信手段２８０は、同一の情報処理装置に送信した複数のグループデータのうち少なくとも１つを、既に送信した当該グループデータの送信先とは異なる情報処理装置に送信する。好ましくは、冗長データ送信手段２８０は、バックアップ手段２７０が既に送信した当該グループデータの送信先とは異なる情報処理装置のうち、メイン装置２０−１との通信速度が他のバックアップ側装置より速いバックアップ側装置に送信する。本図において、冗長データ送信手段２８０は、バックアップ側装置２０−７に第８グループデータを送信し、バックアップ側装置２０−８に誤り訂正用データを送信する。
【００５４】
本図において、バックアップ先の情報処理装置が７つであるので、メイン装置２０−１は、バックアップ側装置２０−２に１つのグループデータを格納させる一方、バックアップ側装置２０−５に２つのグループデータを格納させる。これに対し、図３の例においては、バックアップ先の情報処理装置が９つであるので、バックアップ側装置２０−２〜１０のそれぞれに１つずつのグループデータを格納させる。即ち、分割手段２１０は、バックアップ先の情報処理装置の数に応じて、バックアップ手段２７０により各情報処理装置に保存させるグループデータの数を判断する。
【００５５】
これに代えて、分割手段２１０は、保存データを、バックアップ先の情報処理装置の数と等しい複数のグループデータに分割してもよい。即ち、分割手段２１０は、バックアップ先決定手段２４０が決定したバックアップ先の情報処理装置の数に応じて、結果として保存データをバックアップ側装置２０−２〜１０に分割して保存する方法を判断すればよい。
【００５６】
図５（ｂ）は、バックアップ側装置２０−８に格納されたグループデータが読み出せなくなった場合において、バックアップ側装置２０−２〜８が格納するグループデータの一例を示す。バックアップ側装置２０−８の格納手段に格納された第７グループデータ及び誤り訂正用データは、読み出すことのできない読出不能な状態である。ここで、バックアップ側装置２０−８に格納されたグループデータが読み出せなくなった場合とは、例えば、バックアップ側装置２０−８に障害が発生した場合であり、より具体的には、バックアップ側装置２０−８の格納手段に障害が発生した場合、バックアップ側装置２０−８の格納手段からデータを読み出す機能に障害が発生した場合、又はバックアップ側装置２０−８の通信機能に障害が発生した場合等である。また、メイン装置２０−１及びバックアップ側装置２０−８間の通信に障害が発生した場合であってもよい。
【００５７】
グループデータ復元手段２９５は、バックアップ側装置２０−８の格納手段に格納された第７グループデータを読み出すことができない場合に、バックアップ側装置２０−２〜７に指示することにより、読み出すことのできる各グループデータから対応する１ビットずつを取り出したデータのパリティを算出させる。
【００５８】
ここで、複数の情報処理装置のそれぞれが、読み出すことのできる同一のグループデータを格納している場合には、グループデータ復元手段２９５は、同一のグループデータのうち何れか１つを、パリティの計算対象として選択する。例えば、バックアップ側装置２０−５及びバックアップ側装置２０−７のそれぞれが、共に第８グループデータを格納しているので、グループデータ復元手段２９５は、バックアップ側装置２０−５に格納された第８グループを、パリティの計算対象として選択する。
【００５９】
そして、グループデータ復元手段２９５は、算出させたパリティの組により、読み出すことができなかった第７グループデータを復元させ、バックアップ側装置２０−８の格納手段に保存させる。また、グループデータ復元手段２９５は、誤り訂正用データを復元してバックアップ側装置２０−８の格納手段に更に保存させてもよい。図５（ｃ）は、グループデータ復元手段２９５によるグループデータの復元後において、バックアップ側装置２０−２〜８が格納するデータの一例を示す。
【００６０】
ここで、メイン装置２０−１は、バックアップ側装置２０−２〜７の何れに格納されたデータが読み出せなくなった場合であっても、８以上の互いに異なるグループデータを読み出すことができる。従って、メイン装置２０−１は、バックアップ側装置２０−８のみならず、バックアップ側装置２０−２〜７の何れに格納されたグループデータを読み出せなくなった場合であっても、読み出せなくなったグループデータを復元することができる。
【００６１】
図６は、メイン装置２０−１がバックアップ側装置２０−２〜７に、読み出すことができないグループデータを復元させる処理の一例を示す。本図は、図５（ｂ）と同一の場合について、読み出すことができないグループデータを復元する処理の詳細を説明する。
【００６２】
メイン装置２０−１の図１に示すグループデータ復元手段２９５は、グループデータを格納するバックアップ先の情報処理装置の中の一台、例えばバックアップ側装置２０−８からグループデータを読み出すことができない場合に（Ｓ８００）、以下の処理を行う。まず、グループデータ復元手段２９５は、グループデータをバックアップする他の情報処理装置の少なくとも１台、例えばバックアップ側装置２０−２に、グループデータを復元用データとして更に他の情報処理装置に送信させる送信指示を送る（Ｓ８０５）。
【００６３】
そして、グループデータ復元手段２９５は、グループデータをバックアップする更に他の情報処理装置であるバックアップ側装置２０−３に、受信した復元用データ及び格納しているグループデータの各ビットの排他的論理和を算出させて、算出結果を復元用データとして更に他の情報処理装置に送信させる送信指示を送る（Ｓ８１０）。同様に、グループデータ復元手段２９５は、バックアップ側装置２０−４〜６のそれぞれに送信指示を送る（Ｓ８２０−１〜３）。また、グループデータ復元手段２９５は、読み出せない情報処理装置に置き換えるべき新たな情報処理装置としてバックアップ側装置２０−１０を選択し、バックアップ側装置２０−１０宛に復元用データを送信させる指示を、バックアップ側装置２０−７に送る（Ｓ８３０）。また、グループデータ復元手段２９５は、受け取った復元用データを保存させる指示を、バックアップ側装置２０−１０に送る（Ｓ８４０）。
【００６４】
ここで、複数のバックアップ側装置のそれぞれが、読み出すことのできる同一のグループデータを格納している場合には、グループデータ復元手段２９５は、同一のグループデータのうち何れか１つを除いた他のグループデータを、パリティの計算対象から除外する指示を更に送信する。具体的には、図５（ｂ）に示すように、バックアップ側装置２０−５及びバックアップ側装置２０−７は、共に第８グループデータを格納している。従って、グループデータ復元手段２９５は、バックアップ側装置２０−７に格納されている第８グループデータをパリティの計算対象から除外する旨の指示を、バックアップ側装置２０−７に送信する。
【００６５】
バックアップ側装置２０−２は、送信指示をメイン装置２０−１から受け取ると、他のグループデータをバックアップしている他の情報処理装置であるバックアップ側装置２０−３に、バックアップ側装置２０−２が格納しているグループデータを復元用データとして送信する（Ｓ８５０）。そして、バックアップ側装置２０−２から復元用データを受け取ったバックアップ側装置２０−３は、更に、バックアップ側装置２０−３が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出する。そして、バックアップ側装置２０−３は、算出した排他的論理和の組を、復元用データとして、他のグループデータをバックアップしている更に他の情報処理装置であるバックアップ側装置２０−４に送信する（Ｓ８６０）。
【００６６】
同様に、バックアップ側装置２０−４〜６のそれぞれは、当該バックアップ側装置が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出して、復元用データとして、バックアップ側装置２０−５〜７のそれぞれに送信する（Ｓ８７０−１〜３）。また、バックアップ側装置が、複数のグループデータを格納している場合には、当該バックアップ側装置が格納しているグループデータのそれぞれと、受け取った復元用データとの各ビットのパリティを算出して、復元用データとして更に他のバックアップ側装置に送信する。
【００６７】
復元用データを最後に受け取った、グループデータをバックアップしている情報処理装置であるバックアップ側装置２０−７は、バックアップ側装置２０−７が格納しているグループデータと、受け取った復元用データとの各ビットの排他的論理和を算出することにより、読み出すことのできなかったグループデータを復元し、バックアップ側装置２０−１０に送信する（Ｓ８８０）。ここで、バックアップ側装置２０−７は、グループデータ復元手段２９５からの指示に基づいて、格納している第８グループデータをパリティの計算対象から除外している。そして、バックアップ側装置２０−１０は、受け取ったグループデータを格納手段に保存する。
【００６８】
なお、好ましくは、バックアップ側装置２０−２〜７のそれぞれは、当該バックアップ側装置とネットワーク構成において近接する他の情報処理装置に復元用データを送信する。例えば、バックアップ側装置２０−２〜７のそれぞれは、近接する他の情報処理装置として、当該他の情報処理装置に至る通信経路に設けられたルータの数であるホップ数が、予め定められた数より小さい当該他の情報処理装置に復元用データを送信してもよい。一例として、バックアップ側装置２０−３は、図１に示したルータを介することにより通信可能なバックアップ側装置２０−６ではなく、ルータを介さずに通信可能なバックアップ側装置２０−４に、復元用データを送信する。これにより、復元用データが送信される通信経路を短くすることにより、ネットワークのトラフィックを低減することができる。
【００６９】
また、バックアップ側装置２０−２〜７のそれぞれは、他の情報処理装置のそれぞれに対してテスト用パケット（例えば、ＰＩＮＧパケット）を送信し、テスト用パケットの返信が戻って来るまでの時間が予め定められた時間より小さい情報処理装置に復元用データを送信してもよい。これにより、復元用データが送信されるのに要する時間を短くすることにより、ネットワークのトラフィックを低減することができる。
【００７０】
このように、情報処理システム１０は、バックアップ側装置の間で復元用データを送信させる。これにより、グループデータのサイズが非常に大きい場合であっても、復元用データの送信によるトラフィックを分散させ、メイン装置２０−１の周辺のネットワークにトラフィックが集中することを避けることができる。その結果、読み出せなくなったグループデータを迅速に復元することができる。
【００７１】
図７は、バックアップ側装置２０−２が格納しているグループデータ又は誤り訂正用データをバックアップ側装置２０−３に移してバックアップさせる処理の動作フローを説明する図である。バックアップ側装置２０−２は、以下に示す処理を、例えば定期的に行う。バックアップ側装置２０−２は、格納手段の空き容量が所定以下であると判断した場合に（Ｓ７００：ＹＥＳ）、その旨をメイン装置２０−１に通知する（Ｓ７１０）。
【００７２】
そして、メイン装置２０−１のグループデータ移動指示手段２９７は、バックアップ側装置２０−２から通知を受けると、バックアップ側装置２０−２が格納しているグループデータを転送させるべき転送先を判断する（Ｓ７２０）。例えば、グループデータ移動指示手段２９７は、バックアップ側装置２０−２がグループデータを受信した受信先であるメイン装置２０−１とは異なるバックアップ側装置２０−３を転送先と判断する。
【００７３】
グループデータ移動指示手段２９７は、バックアップ側装置２０−３にグループデータを送信させる指示を、バックアップ側装置２０−２に送信する（Ｓ７３０）。そして、バックアップ側装置２０−２は、バックアップ側装置２０−２の格納手段に格納しているグループデータを、バックアップ側装置２０−３の格納手段に移してバックアップさせる（Ｓ７４０）。バックアップ先格納手段２９０は、格納手段に格納させた保存先情報のうち、グループデータをバックアップ側装置２０−２に対応付けていた部分を、そのグループデータをバックアップ側装置２０−３に対応付けた情報に変更する（Ｓ７５０）。
【００７４】
図８は、メイン装置２０−１として機能するコンピュータ５００のハードウェア構成の一例を説明する図である。バックアップ側装置２０−２〜１０として機能するコンピュータも、本図の構成と略同一であるので、説明を省略する。メイン装置２０−１は、ホストコントローラ１０８２により相互に接続されるＣＰＵ１０００、ＲＡＭ１０２０、グラフィックコントローラ１０７５、及び表示装置１０８０を有するＣＰＵ周辺部と、入出力コントローラ１０８４によりホストコントローラ１０８２に接続される通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を有する入出力部と、入出力コントローラ１０８４に接続されるＲＯＭ１０１０、フレキシブルディスクドライブ１０５０、及び入出力チップ１０７０を有するレガシー入出力部とを備える。
【００７５】
ホストコントローラ１０８２は、ＲＡＭ１０２０と、高い転送レートでＲＡＭ１０２０をアクセスするＣＰＵ１０００及びグラフィックコントローラ１０７５とを接続する。ＣＰＵ１０００は、ＲＯＭ１０１０及びＲＡＭ１０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１０７５は、ＣＰＵ１０００等がＲＡＭ１０２０内に設けたフレームバッファ上に生成する画像データを取得し、表示装置１０８０上に表示させる。これに代えて、グラフィックコントローラ１０７５は、ＣＰＵ１０００等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００７６】
入出力コントローラ１０８４は、ホストコントローラ１０８２と、比較的高速な入出力装置である通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を接続する。通信インターフェイス１０３０は、ネットワークを介して外部の装置と通信する。ハードディスクドライブ１０４０は、メイン装置２０−１が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１０６０は、ＣＤ−ＲＯＭ１０９５からプログラム又はデータを読み取り、ＲＡＭ１０２０を介して入出力チップ１０７０に提供する。
【００７７】
また、入出力コントローラ１０８４には、ＲＯＭ１０１０と、フレキシブルディスクドライブ１０５０や入出力チップ１０７０等の比較的低速な入出力装置とが接続される。ＲＯＭ１０１０は、メイン装置２０−１の起動時にＣＰＵ１０００が実行するブートプログラムや、メイン装置２０−１のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１０５０は、フレキシブルディスク１０９０からプログラム又はデータを読み取り、ＲＡＭ１０２０を介して入出力チップ１０７０に提供する。入出力チップ１０７０は、フレキシブルディスク１０９０や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【００７８】
メイン装置２０−１に提供されるプログラムは、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ１０７０及び／又は入出力コントローラ１０８４を介して、記録媒体から読み出されメイン装置２０−１にインストールされて実行される。メイン装置２０−１は、プログラムを、バックアップ側装置２０−２〜１０に送信してインストールし、実行させてもよい。
【００７９】
メイン装置２０−１にインストールされて実行されるプログラムは、分割モジュールと、誤り訂正用データ生成モジュールと、空き容量取得モジュールと、バックアップ先決定モジュールと、システム使用率学習モジュールと、混雑率学習モジュールと、バックアップモジュールと、冗長データ送信モジュールと、バックアップ先格納モジュールと、グループデータ移動指示モジュールとを含む。また、当該プログラムは、ハードディスクドライブ１０４０を、格納手段２００として用いてもよい。各モジュールがメイン装置２０−１に働きかけて行わせる動作は、図１から図７において説明したメイン装置２０−１における、対応する部材の動作と同一であるから、説明を省略する。
【００８０】
以上に示したプログラム又はモジュールは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムをメイン装置２０−１に提供してもよい。
【００８１】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【図面の簡単な説明】
【００８２】
【図１】図１は、情報処理システム１０のブロック図を示す。
【図２】図２は、メイン装置２０−１のブロック図を示す。
【図３】図３は、バックアップ手段２７０がバックアップ側装置２０−２〜１０に送信してバックアップさせるデータの一例を示す。
【図４】図４は、メイン装置２０−１及びバックアップ側装置２０−２の動作フローを説明する図である。
【図５】図５は、グループデータ復元手段２９５が、読み出すことのできないデータを復元させる処理を説明する図である。
【図６】図６は、メイン装置２０−１がバックアップ側装置２０−２〜７に、読み出すことができないグループデータを復元させる処理の一例を示す。
【図７】図７は、バックアップ側装置２０−２が格納しているグループデータ又は誤り訂正用データをバックアップ側装置２０−３に移してバックアップさせる処理の動作フローを説明する図である。
【図８】図８は、メイン装置２０−１として機能するコンピュータ５００のハードウェア構成の一例を説明する図である。
【符号の説明】
【００８３】
１０  情報処理システム
２０−１  メイン装置
２０−２〜１０  バックアップ側装置
２００  格納手段
２１０  分割手段
２２０  誤り訂正用データ生成手段
２３０  空き容量取得手段
２４０  バックアップ先決定手段
２５０  システム使用率学習手段
２６０  混雑率学習手段
２７０  バックアップ手段
２８０  冗長データ送信手段
２９０  バックアップ先格納手段
２９５  グループデータ復元手段
２９７  グループデータ移動指示手段
５００  コンピュータ
【図１】
2005115524.tif 000003
【図２】
2005115524.tif 000004
【図３】
2005115524.tif 000005
【図４】
2005115524.tif 000006
【図５】
2005115524.tif 000007
【図６】
2005115524.tif 000008
【図７】
2005115524.tif 000009
【図８】
2005115524.tif 000010