(57)【要約】  第１データ処理装置は、所定機能を実行するためのデータを分割する第１分割数をデータのサイズに基づいて設定し（ステップＳ１）、第１分割数を分割してＮ個（Ｎは正の整数）の要素を含むグループを第２分割数個生成する（ステップＳ２）。次いで、第１データ処理装置は、第１データ処理装置と通信可能な複数のデータ処理装置を第２分割数個のグループに割り当て（ステップＳ３）、データを第１分割数で分割した分割データを第２分割数個のグループのそれぞれに割り当てる（ステップＳ４）。
2012164673.tif 000002
【特許請求の範囲】
【請求項１】
第１データ処理装置は、
所定機能を実行するためのデータを分割する第１分割数を前記データのサイズに基づいて設定し、
前記第１分割数を分割してＮ個（Ｎは正の整数）の要素を含むグループを第２分割数個生成し、
前記第１データ処理装置と通信可能な複数のデータ処理装置を前記第２分割数個のグループに割り当て、
前記データを前記第１分割数で分割した分割データを前記第２分割数個のグループのそれぞれに割り当てること
を特徴とするデータ処理方法。
【請求項２】
前記第２分割数個のグループのそれぞれに割り当てられた複数のデータ処理装置に含まれるＮ個のデータ処理装置のそれぞれに前記分割データが割り当てられること
を特徴とする請求項１に記載のデータ処理方法。
【請求項３】
前記Ｎ個のデータ処理装置は、通信強度に基づいて選択されること
を特徴とする請求項１に記載のデータ処理方法。
【請求項４】
前記第２分割数個のグループのそれぞれに割り当てられた複数のデータ処理装置に含まれるとともに前記Ｎ個のデータ処理装置以外のデータ処理装置は、前記Ｎ個のデータ処理装置のうちの少なくとも一のデータ処理装置から前記分割データを取得すること
を特徴とする請求項２または請求項３に記載のデータ処理方法。
【請求項５】
前記第２分割数個のグループのそれぞれに割り当てられた複数のデータ処理装置は複数の領域のうちの一の領域に位置すること
を特徴とする請求項２乃至請求項４の何れか一の請求項に記載のデータ処理方法。
【請求項６】
前記第２分割数個のグループの内の少なくとも一のグループの前記Ｎ個のデータ処理装置のうちの第２データ処理装置と前記第１データ処理装置との通信が弱まる方向に変化するとき、前記少なくとも一のグループに含まれるとともに前記Ｎ個のデータ処理装置以外の第３データ処理装置に前記第２データ処理装置に割り当てられた分割データを割り当てること
を特徴とする請求項２乃至請求項５の何れか一の請求項に記載のデータ処理方法。
【請求項７】
前記第２分割数個のグループの内の少なくとも一のグループの前記Ｎ個のデータ処理装置のうちの第４データ処理装置が前記領域に位置しなくなるとき、前記第４データ処理装置が前記分割データを前記第１データ処理装置からダウンロードしているときは前記ダウンロード終了後に、前記少なくとも一のグループに含まれるとともに前記Ｎ個のデータ処理装置以外の第５データ処理装置に前記第４データ処理装置に割り当てられた分割データを割り当てること
を特徴とする請求項５に記載のデータ処理方法。
【請求項８】
前記第２分割数個のグループの内の少なくとも一のグループの前記Ｎ個のデータ処理装置以外の第７データ処理装置が前記領域から新たな領域に移動するとき、前記新たな領域に位置するグループのＮ個のデータ処理装置に関する情報を前記第７データ処理装置に通知すること
を特徴とする請求項５または請求項７に記載のデータ処理方法。
【請求項９】
前記第１分割数は、前記データを前記第１データ処理装置からダウンロードする時間、実行帯域、前記複数のデータ処理装置が位置する領域間の通信時間、前記データ処理装置のファイルへのアクセス時間のうちの少なくとも一要素に基づいて設定されること
を特徴とする請求項１乃至請求項８の何れか一の請求項に記載のデータ処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、データ処理方法に関する。
【背景技術】
【０００２】
従来、複数の端末が、互いが受信可能エリアに在るときに送受信を行って、自端末が未保有の配信対象データの部分を相手方端末より転送して保有することを他の端末との間でも繰り返すことにより、配信対象データのすべてを取得するシステムがある。また、端末を位置グループに分類し、位置グループの情報と局配信性能データとから配信グループを形成し、予め設定された時間帯において、配信グループごとに予め設定された配信間隔でデータ配信を行うシステムがある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−８１５４２号公報
【特許文献２】特開２００６−２４６０９０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上述した従来技術では、端末が移動する場合、端末の密集度合いが動的に変化するため、端末間でのデータ転送やグループごとのデータ配信によって各端末がすべての必要なデータを取得することは困難であるという問題点がある。【０００５】
複数のデータ処理装置がすべての必要なデータを取得することを可能とするデータ処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００６】
データ処理方法は、第１データ処理装置において、第１分割数を設定し、第２分割数個のグループを生成し、複数のデータ処理装置を第２分割数個のグループに割り当て、分割データを第２分割数個のグループのそれぞれに割り当てるものである。第１分割数は、所定機能を実行するためのデータを分割する数であり、データのサイズに基づいて設定される。第２分割数個のグループは、第１分割数を分割してＮ個（Ｎは正の整数）の要素を含む。複数のデータ処理装置は、第１データ処理装置と通信可能である。分割データは、所定機能を実行するためのデータを第１分割数で分割したデータである。
【発明の効果】
【０００７】
複数のデータ処理装置がすべての必要なデータを取得することができるという効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施例１にかかるデータ処理方法を示すフローチャートである。
【図２】図２は、実施例２にかかるデータ処理方法を説明する模式図である。
【図３】図３は、実施例２にかかる基地局を示すブロック図である。
【図４】図４は、実施例２にかかる端末を示すブロック図である。
【図５】図５は、実施例２にかかる基地局におけるデータ処理方法を示すフローチャートである。
【図６】図６は、実施例２にかかる端末の開始時及び移動時のデータ処理方法を示すフローチャートである。
【図７】図７は、実施例２にかかるクライアント側端末のアプリケーション動作時のデータ処理方法を示すフローチャートである。
【図８】図８は、実施例２にかかるサーバ側端末のアプリケーション動作時のデータ処理方法を示すフローチャートである。
【図９】図９は、実施例２にかかる端末間データ転送を説明する模式図である。
【発明を実施するための形態】
【０００９】
以下に、この発明にかかるデータ処理方法の実施例を図面に基づいて詳細に説明する。実施例にかかるデータ処理方法は、所定機能を実行するためのデータを第１分割数で分割し、第１分割数で分割した分割データを、複数のデータ処理装置を割り当てた第２分割数個のグループのそれぞれに割り当てるものである。なお、この実施例によりこの発明が限定されるものではない。
【００１０】
（実施例１）
図１は、実施例１にかかるデータ処理方法を示すフローチャートである。図１に示すように、第１データ処理装置は、データ処理方法を開始すると、まず、第１分割数を設定する（ステップＳ１）。第１分割数は、所定機能を実行するためのデータを分割する数であり、当該データのサイズに基づいて設定される。
【００１１】
次いで、第１データ処理装置は、第２分割数個のグループを生成する（ステップＳ２）。各グループは、第１分割数を分割してＮ個（Ｎは正の整数）の要素を含む。
【００１２】
次いで、第１データ処理装置は、複数のデータ処理装置を第２分割数個のグループに割り当てる（ステップＳ３）。複数のデータ処理装置は、第１データ処理装置と通信可能である。
【００１３】
次いで、第１データ処理装置は、分割データを第２分割数個のグループのそれぞれに割り当てる（ステップＳ４）。分割データは、所定機能を実行するためのデータを第１分割数で分割したデータである。
【００１４】
実施例１によれば、複数のデータ処理装置をグループ分けし、分割したデータを各グループのそれぞれに割り当てることによって、複数のデータ処理装置がすべての必要なデータを取得することができる。
【００１５】
（実施例２）
実施例２は、実施例１にかかるデータ処理方法を、複数のデータ処理装置として携帯電話機などの端末を含み、第１データ処理装置として基地局を含む携帯電話システムに適用したものである。所定機能を実行するためのデータの一例として、例えば地域に関係づけられたデータが挙げられる。
【００１６】
すなわち、実施例２は、複数の端末が、基地局を介して、地域に関係づけられたデータを提供するサービスサーバから、地域に関係づけられたデータをダウンロードする際のデータ処理方法である。地域に関係づけられたデータの一例として、例えば地図データや、地域ごとの店舗やサービスの情報のようなデータが挙げられる。なお、端末の一例として、携帯電話機以外にも、無線による通信が可能な携帯型のゲーム機やＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔｓ）などの携帯情報端末が挙げられる。
【００１７】
・データ処理方法の概要
図２は、実施例２にかかるデータ処理方法を説明する模式図である。図２に示すように、地域に関係づけられたデータの提供領域１は、同一のデータが提供される領域である。地域に関係づけられたデータの提供領域１に位置する複数の端末は、図示しない基地局と通信可能である。地域に関係づけられたデータの提供領域１に位置する複数の端末は、複数のグループに分けられる。
【００１８】
各グループには、サービスサーバに対するアクセス権を有する端末と、サービスサーバに対するアクセス権のない端末とが含まれている。サービスサーバに対するアクセス権のある端末は、基地局を介してサービスサーバから地域に関係づけられたデータをダウンロードする。サービスサーバに対するアクセス権のない端末は、基地局を介してサービスサーバから地域に関係づけられたデータをダウンロードしない。各グループにおいて、サービスサーバに対するアクセス権のある端末６，７，８の数は同じである。
【００１９】
一方、地域に関係づけられたデータの提供領域１は、複数のクラスタ２，３，４，５に分割されている。上述した各グループのそれぞれに属する端末は、グループごとに、いずれかのクラスタ２，３，４，５に位置する。
【００２０】
例えば図２に示す例では、各クラスタ２，３，４，５に、サービスサーバに対するアクセス権のある端末６，７，８が３台ずつ含まれている。各クラスタ２，３，４，５において、サービスサーバに対するアクセス権のない端末は、図示省略されている。このように、クラスタは、広さや端末の位置とは関係なく、サービスサーバに対するアクセス権を有する端末６，７，８の数によって決まる。
【００２１】
地域に関係づけられたデータは、各クラスタ２，３，４，５においてサービスサーバに対するアクセス権のある端末６，７，８の数で分割される。元のデータが分割されてできたデータは、各クラスタ２，３，４，５においてサービスサーバに対するアクセス権のある端末６，７，８によって分担されてダウンロードされる。
【００２２】
図２に示す例では、地域に関係づけられた元のデータは、１番目の分割されたデータ、２番目の分割されたデータ及び３番目の分割されたデータに３分割される。そして、各クラスタ２，３，４，５において、サービスサーバに対するアクセス権のある端末６，７，８のうち、ある端末６が１番目の分割されたデータを、別の端末７が２番目の分割されたデータを、さらに別の端末８が３番目の分割されたデータを、それぞれダウンロードする。
【００２３】
各クラスタ２，３，４，５において、各クラスタ２，３，４，５に属する複数の端末は、例えばアドホックデータ通信により互いに自端末が保持する分割されたデータを転送し合う。それによって、各クラスタ２，３，４，５に属する複数の端末は、地域に関係づけられた元のデータのすべてを取得することができる。
【００２４】
・基地局の説明
図３は、実施例２にかかる基地局を示すブロック図である。図３に示すように、基地局１１は、例えばＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置）１２、メモリ１３及び通信部１４を備えている。ＣＰＵ１２、メモリ１３及び通信部１４は、バス１５に接続されている。
【００２５】
ＣＰＵ１２は、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ、オペレーティングシステム）１６及び種々のアプリケーションプログラムを実行する。ＣＰＵ１２がＯＳ１６を実行することによって、例えば算出部２１、検出部２２、スケジューラ２３、指示部２４及び通信ドライバ２５が実現される。
【００２６】
算出部２１は、地域に関係づけられたデータを、端末が実効最大速度で基地局を介してサービスサーバからダウンロードすることができるようなサイズの複数のデータに分割することができるように、分割数を算出する。端末がデータをダウンロードする際の実効最大速度は、通信環境などの要因によって決まるので、分割前の元のデータのサイズが大きければ分割数も大きくなり、分割前の元のデータのサイズが小さければ分割数も小さくなる。
【００２７】
検出部２２は、無線通信により接続されている端末の移動ベクタを収集し、移動ベクタに基づいて端末の動きを検出する。検出部２２は、地域に関係づけられたデータにくくりつけられた地図上の座標と端末との位置関係に基づいて、地域に関係づけられたデータの提供領域１に対する端末の出入りを監視する。また、検出部２２は、基地局の通信可能領域（例えば、セル）に対する端末の出入りを監視する。
【００２８】
スケジューラ２３は、各クラスタ２，３，４，５において、基地局との間の無線通信における電波強度の強い端末、あるいは通信品質の良い端末を、算出部２１が算出した分割数分選択し、選択した端末にサービスサーバに対するアクセス権を付与する。また、スケジューラ２３は、各クラスタ２，３，４，５において、サービスサーバに対するアクセス権を付与しない端末を選択し、サービスサーバに対するアクセス権を付与した端末と付与しない端末とでグループを形成する。このグループは、サービスサーバに対するアクセス権のある端末６，７，８によるダウンロードの終了後、相互に自端末の保持するデータを転送し合う端末の集合である。
【００２９】
スケジューラ２３は、端末がクラスタ２，３，４，５の間を行き来することによってクラスタの構成が変化すると、新たにサービスサーバに対するアクセス権を付与する端末を選択してもよい。地域に関係づけられたデータの提供領域１に対して端末が出入りする場合、地域に関係づけられたデータの提供領域１においてオフラインであった端末がオンラインになる場合やその逆の場合、基地局の通信可能領域に対して端末が出入りする場合も、同様であってもよい。
【００３０】
例えば、スケジューラ２３は、サービスサーバに対するアクセス権のある端末６，７，８が、現在位置するクラスタから出た場合、当該端末が実行中のダウンロードが完了してから、当該端末に付与していたサービスサーバに対するアクセス権を剥奪してもよい。この場合、当該端末が位置していたクラスタに位置する他の端末は、当該端末から、当該端末がダウンロードしたデータを取得するようにしてもよい。
【００３１】
また、スケジューラ２３は、サービスサーバに対するアクセス権のない端末が、現在位置するクラスタから出た場合、当該端末に、移動先のクラスタに位置する、サービスサーバに対するアクセス権のある端末６，７，８を通知してもよい。
【００３２】
一方、スケジューラ２３は、サービスサーバに対するアクセス権のある端末６，７，８が、現在位置するクラスタから基地局の通信可能領域の外へ出る場合、ダウンロードが終了していなくても、サービスサーバに対するアクセス権を剥奪してもよい。この場合、スケジューラ２３は、当該端末が位置していたクラスタに位置する他の端末のうち、電波強度の強い端末または通信品質の良い端末に新たにサービスサーバに対するアクセス権を付与して、再度ダウンロードを行うように指示してもよい。
【００３３】
指示部２４は、各クラスタ２，３，４，５内の端末に対して、サービスサーバに対するアクセス権のある端末６，７，８のダウンロードが終了した後に、クラスタ内の各端末で相互にデータを転送し合うように指示する。その際、指示部２４は、サービスサーバに対するアクセス権のある端末６，７，８のうちのどの端末が、分割されたデータのどれを保持しているかということを指示する。また、指示部２４は、各端末に対して、携帯電話網などのネットワーク経由ではなく、アドホックデータ通信によってデータの転送を行うように指示する。
【００３４】
通信ドライバ２５は、通信部１４に対する制御を行う。メモリ１３は、例えばＣＰＵ１２の作業領域として用いられる。通信部１４は、携帯電話網に無線通信により接続して端末との間で例えばパケットの送受信を行う。
【００３５】
・端末の説明
図４は、実施例２にかかる端末を示すブロック図である。図４に示すように、端末３１は、例えば、センサ３２、ＣＰＵ３３、ベースバンド部３４、メモリ３５、ストレージ３６及び無線部３７を備えている。センサ３２、ＣＰＵ３３、ベースバンド部３４、メモリ３５、ストレージ３６及び無線部３７は、バス３８に接続されている。
【００３６】
ＣＰＵ３３は、ＯＳ３９及び種々のアプリケーションプログラムを実行する。ＣＰＵ３３がＯＳ３９を実行することによって、例えばファイルシステム４０、アドホック通信ドライバ４１、並びに常駐プロセス４２として例えばデータ分割クライアント４３、移動ベクトル通知クライアント４４及びファイル共用サーバ／クライアント４５が実現される。
【００３７】
データ分割クライアント４３は、基地局に対して、地域に関係づけられたデータを取得する際のクライアント機能を実現する。データ分割クライアント４３は、基地局１１からデータ配置情報４６を取得し、端末の移動に伴ってクラスタが再構成されるとデータ配置情報４６を更新する。
【００３８】
データ配置情報４６は、どの端末が、地域に関係づけられたデータの分割されたデータ（分割データ）４７のうちのどれを保持しているかということを示す情報である。データ配置情報４６は、例えば端末ごとに、端末の識別子と当該端末が保持しているデータのオフセットとを対にした情報であってもよい。端末の識別子は、例えばＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスであってもよい。
【００３９】
移動ベクトル通知クライアント４４は、センサ３２により取得した自端末の位置情報に基づいて自端末の移動ベクタを算出し、移動ベクタを基地局１１へ通知する。ファイル共用サーバ／クライアント４５は、自端末の保持するデータを他の端末へ提供するサーバ機能、及び他の端末からデータを取得するクライアント機能を実現する。
【００４０】
ファイルシステム４０は、ストレージ３６に記録されているデータを管理する。アドホック通信ドライバ４１は、無線部３７に対して、端末間でデータを転送し合う際のアドホックデータ通信を制御する。
【００４１】
センサ３２は、自端末の位置情報を取得する。センサ３２の一例として、例えばＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ、全地球測位システム）センサや加速度センサなどが挙げられる。ベースバンド部３４は、ベースバンド信号に対する送信処理及び受信処理を行う。メモリ３５は、例えばＣＰＵ３３の作業領域として用いられる。
【００４２】
ストレージ３６には、端末３１が基地局１１から取得したデータ配置情報４６や、基地局１１を介してサービスサーバからダウンロードした、地域に関係づけられたデータの分割されたデータ（分割データ）４７が格納されてもよい。無線部３７は、携帯電話網に無線通信により接続して基地局１１との間で例えばパケットの送受信を行う。また、無線部３７は、アドホックデータ通信により他の端末との間で例えばパケットの送受信を行う。
【００４３】
・基地局におけるデータ処理方法の説明
図５は、実施例２にかかる基地局におけるデータ処理方法を示すフローチャートである。図５に示すように、基地局１１は、まず、算出部２１により、サービスサーバが提供する地域に関係づけられたデータのサイズ、及び端末がダウンロードする際の実効最大速度に基づいて、地域に関係づけられたデータの分割数Ｎ（データ分割数Ｎ）を算出する（ステップＳ１１）。
【００４４】
次いで、基地局１１は、検出部２２により、自局と無線通信によりハンドシェイクの状態で接続している端末の移動ベクタを収集し、移動ベクタに基づいて端末の動きを検出する（ステップＳ１２）。次いで、基地局１１は、スケジューラ２３により、地域に関係づけられたデータの提供領域１に含まれるクラスタ２，３，４，５において、端末の出入りや端末の電源のオンオフなどによってクラスタが再構成されているか否かを判断する（ステップＳ１３）。
【００４５】
クラスタが再構成されていない場合（ステップＳ１３：Ｎｏ）、ステップＳ１２に戻る。クラスタが再構成されている場合（ステップＳ１３：Ｙｅｓ）、基地局１１は、スケジューラ２３による端末のスケジューリングを行い、各クラスタに、サービスサーバに対するアクセス権のある端末とアクセス権のない端末とを割り当てる（ステップＳ１４）。
【００４６】
次いで、基地局１１は、指示部２４により、各端末に対してクラスタ内の各端末で相互にデータを転送し合い、データを共用するように指示する（ステップＳ１５）。そして、ステップＳ１２に戻る。なお、データ分割数Ｎが、基地局１１とハンドシェイクの状態で接続している端末の数よりも大きい場合には、基地局１１は、図５に示すフローチャートの動作を実行しない。
【００４７】
・端末の開始時及び移動時のデータ処理方法の説明
図６は、実施例２にかかる端末の開始時及び移動時のデータ処理方法を示すフローチャートである。図６に示すように、端末３１は、まず、センサ３２により取得した位置情報に基づいて、移動ベクトル通知クライアント４４により自端末の移動ベクタを算出し、移動ベクタを基地局へ報告する（ステップＳ２１）。
【００４８】
次いで、端末３１は、自端末が現在位置する基地局圏から他の基地局圏に移動するのか否かを判断する（ステップＳ２２）。他の基地局圏に移動する場合（ステップＳ２２：Ｙｅｓ）、端末３１は、移動先の基地局から当該基地局におけるデータの分割方針を受信する（ステップＳ２３）。次いで、端末３１は、データの分割方針に基づいて、移動先のクラスタが新規クラスタであるか否かを判断する（ステップＳ２４）。
【００４９】
新規クラスタである場合（ステップＳ２４：Ｙｅｓ）、端末３１は、移動先のクラスタにおいて自端末に割り当てられた、地域に関係づけられたデータの分割されたデータ（分割データ）４７をダウンロードする（ステップＳ２５）。一方、新規クラスタでない場合（ステップＳ２４：Ｎｏ）、端末３１は、アドホックデータ通信によってクラスタ内の他の端末からデータを受信する（ステップＳ２９）。そして、分割データのダウンロードまたはアドホックデータ通信によるデータの受信が終了したら、端末３１は、データ配置情報４６を更新し（ステップＳ２６）、ステップＳ２１に戻る。
【００５０】
一方、他の基地局圏に移動しない場合（ステップＳ２２：Ｎｏ）、端末３１は、クラスタの構成が変更されたか否かを判断する（ステップＳ２７）。変更されていない場合（ステップＳ２７：Ｎｏ）、ステップＳ２１に戻る（すなわち、端末３１は、何もしない）。
【００５１】
クラスタの構成が変更されている場合（ステップＳ２７：Ｙｅｓ）、端末３１は、基地局から、クラスタ内の各端末で相互にデータを転送し合うことによってデータを共用する指示を受信する（ステップＳ２８）。次いで、端末３１は、アドホックデータ通信によってクラスタ内の他の端末からデータを受信し（ステップＳ２９）、データ配置情報４６を更新し（ステップＳ２６）、ステップＳ２１に戻る。
【００５２】
・端末のアプリケーション動作時のデータ処理方法
図７は、実施例２にかかるクライアント側端末のアプリケーション動作時のデータ処理方法を示すフローチャートである。図８は、実施例２にかかるサーバ側端末のアプリケーション動作時のデータ処理方法を示すフローチャートである。
【００５３】
図７に示すように、端末３１は、地域に関係づけられたデータを使用するアプリケーションの動作を開始すると（ステップＳ３１）、データ配置情報４６を参照して、アクセスするファイルのオフセットを取得する（ステップＳ３２）。次いで、端末３１は、データ配置情報４６を参照し、アクセスするファイルのオフセットの情報に基づいて所望のデータが自端末のストレージ３６に格納されているか、他の端末上にあるデータかを判断する（ステップＳ３３）。
【００５４】
自端末にあるデータである場合（ステップＳ３３：Ｎｏ）、端末３１は、自端末のストレージ３６に格納されている、所望のデータを含むファイルにアクセスする（ステップＳ３４）。そして、端末３１は、ファイルシステム４０によりファイル更新フラグを更新する（ステップＳ３５）。
【００５５】
一方、他の端末上にあるデータの場合（ステップＳ３３：Ｙｅｓ）、端末３１は、ファイル共用サーバ／クライアント４５のクライアント機能を起動する（ステップＳ３６）。そして、端末３１は、自端末のファイルキャッシュ上に所望のデータがあるか否かを判断する（ステップＳ３７）。本来、所望のデータが他の端末上にあるデータであっても、例えば、以前に端末３１が他の端末上のデータにアクセスしたことがある場合には、自端末のファイルキャッシュ上にその所望のデータが残っていることがあるからである。
【００５６】
一方、他の端末の側では、図８に示すように、ファイル共用サーバ／クライアント４５のサーバ機能が起動する（ステップＳ４１）。端末３１の側でクライアント機能が起動し（図７、ステップＳ３６）、他の端末の側でサーバ機能が起動すると、サーバ側の端末は、自端末のファイルキャッシュ上のデータが更新されているか否かを判断する（ステップＳ４２）。サーバ側の端末のファイルキャッシュ上のデータが更新されていない場合（ステップＳ４２：Ｎｏ）、サーバ側の端末は、何もしないでサーバ機能を停止する。その際、サーバ側の端末は、クライアント側の端末３１に、ファイルキャッシュ上のデータが更新されていないことを通知する。
【００５７】
クライアント側の端末３１は、自端末のファイルキャッシュ上に所望のデータがあり、かつサーバ側の端末からファイルキャッシュ上のデータが更新されていないという通知を受け取ると（ステップＳ３７：Ｙｅｓ）、図７に示すように、自端末のファイルキャッシュ上にある所望のデータを含むファイルにアクセスする（ステップＳ３４）。そして、クライアント側の端末３１は、ファイルシステム４０によりファイル更新フラグを更新する（ステップＳ３５）。
【００５８】
一方、サーバ側の端末のファイルキャッシュ上のデータが更新されている場合（ステップＳ４２：Ｙｅｓ）、サーバ側の端末は、図８に示すように、自端末のストレージ３６に格納されている、所望のデータを含むファイルにアクセスする（ステップＳ４３）。また、サーバ側の端末は、クライアント側の端末３１に、ファイルキャッシュ上のデータが更新されていることを通知する。
【００５９】
クライアント側の端末３１は、自端末のファイルキャッシュ上に所望のデータがない場合（ステップＳ３７：Ｎｏ）、図７に示すように、アドホックデータ通信によってサーバ側の端末から所望のデータを受信する（ステップＳ３８）。クライアント側の端末３１のファイルキャッシュ上に所望のデータがあるが、サーバ側の端末からファイルキャッシュ上のデータが更新されているという通知を受け取った場合も、同様にアドホックデータ通信によってサーバ側の端末から所望のデータを受信する（ステップＳ３８）。
【００６０】
・端末間データ転送の説明
図９は、実施例２にかかる端末間データ転送を説明する模式図である。図９に示すように、端末Ａ３１ａにおいて、地域に関係づけられたデータを使用するアプリケーション５１が起動すると、アプリケーション５１は、矢印６１で示すように、端末Ａ３１ａに対してアクセス要求を発行する。それによって、端末Ａ３１ａは、矢印６２で示すように、自端末のファイルシステム４０ａによって、自端末が保持するデータ配置情報４６ａを確認する。
【００６１】
そして、端末Ａ３１ａは、自端末が保持する分割データ４７ａについては、矢印６３で示すように、自端末のストレージ３６ａから分割データ４７ａを取得する。一方、他の端末Ｂ３１ｂが保持する分割データ４７ｂについては、端末Ａ３１ａは、矢印６４で示すように、自端末のファイル共用サーバ／クライアント４５ａのクライアント機能を起動する。端末Ａ３１ａは、ファイル共用サーバ／クライアント４５ａのクライアント機能によって、矢印６５で示すように、端末Ｂ３１ｂに対してアドホック通信によるアクセス要求を発行する。
【００６２】
端末Ｂ３１ｂは、端末Ａ３１ａからのアクセス要求に対して、自端末のファイル共用サーバ／クライアント４５ｂのサーバ機能を起動する。端末Ｂ３１ｂは、矢印６６及び矢印６７で示すように、自端末のファイルシステム４０ｂによって自端末のストレージ３６ｂにアクセスし、分割データ４７ｂを取得する。そして、端末Ｂ３１ｂは、ファイル共用サーバ／クライアント４５ｂのサーバ機能によって、矢印６８及び矢印６９で示すように、端末Ａ３１ａに対して、端末Ａ３１ａからのアクセス要求に対する応答として、分割データ４７ｂを返信する。
【００６３】
端末Ａ３１ａは、ファイル共用サーバ／クライアント４５ａのクライアント機能によって、端末Ｂ３１ｂから返信されてきた分割データ４７ｂを受け取る。端末Ａ３１ａは、矢印７０及び矢印７１で示すように、自端末のファイルシステム４０ａによって、端末Ｂ３１ｂから取得した分割データ４７ｂをアプリケーション５１へ返す。また、端末Ａ３１ａは、矢印７２で示すように、自端末のファイルシステム４０ａによって、自端末が保持する分割データ４７ａをアプリケーション５１へ返す。
【００６４】
・具体例
具体的な数値を挙げて説明する。一例として、データサイズや通信環境や端末数を以下の条件とする。地域に関係づけられたデータのサイズを１００Ｍビットとする。確保したいダウンロード時間を５秒とする。端末がクラスタ間を移動するときの更新に要する時間を５秒とする。実効帯域の最大を５Ｍｂｐｓとする。最大の実効帯域を確保することができる端末の数を２０台とする。地域に関係づけられたデータの提供領域１に存在する端末の数を５０台とする。５０台の端末が基地局と接続したときの帯域は１Ｍｂｐｓである。リモートファイルへのアクセススピードを１Ｍｂｐｓとする。
【００６５】
確保したいダウンロード時間が５秒であるので、この５秒間に最大の実効帯域５Ｍｂｐｓでダウンロード可能なファイルサイズの最大は２５Ｍビットである。従って、１００Ｍビットのデータを４個以上に分割すれば、ダウンロードに関する要求は満たされる。すなわち、端末数５０に対して、クラスタ数Ｘとクラスタ内の分割数Ｎとの関係は、５０≧Ｘ・Ｎ≧４であることが条件となる。Ｘ及びＮは正の整数であるので、５０≧Ｘ・Ｎ≧４を満たす組み合わせは、次の通りである。
【００６６】
Ｘ＝１に対してＮは４〜５０の４６通り、Ｘ＝２に対してＮは２〜２５の２３通り、Ｘ＝３に対してＮは２〜１６の１４通り、・・・、Ｘ＝２５に対してＮは２の２通り、Ｘ＝２６に対してＮは１の１通り、・・・、Ｘ＝５０に対してＮは１の１通りとなる。従って、すべての組み合わせは１９３通りである。
【００６７】
ここで、端末がクラスタ間を行き来する場合に更新に要する時間が５秒であり、リモートファイルへのアクセススピードが１Ｍｂｐｓであるので、データ更新に許されるデータサイズは最大で５Ｍビットである。従って、１００Ｍビットのデータを２０分割するのが要件を満たす分割数となる。この場合、Ｘ＝４でＮ＝５またはＸ＝５でＮ＝４が最適解となり、Ｘ＝４の場合には７台（あるいは８台）の端末により構成されるクラスタが形成されることとなる。また、Ｘ＝３の場合には１０台の端末により構成されるクラスタが形成されることとなる。
【００６８】
いずれが選択されてもよいが、例えば上述した組み合わせを検証して、最も早く見つかった解に基づいて分割数を決定するようにしてもよい。この分割数を決定する処理は、地域に関係づけられたデータのサイズで決まるので、１つのサービスについて１回実行すればよい。
【００６９】
以下、Ｘ＝３の場合を例にして説明する。クラスタの分割が決定し、システムが運用を開始すると、各クラスタに属する複数の端末のうち、例えば無線強度の高い端末がサービスサーバに対するアクセス権を持つ端末として、分割されたデータをダウンロードする。ここでの条件に従えば、サービスサーバに対するアクセス権を持つすべての端末は、５秒でダウンロードを完了する。そして、各クラスタにおいて、分割されたデータが複数の端末に分散された状態となる。
【００７０】
基地局は、どの端末にどの分割データが配置されているかということを把握している。例えば、第１の端末が第１の分割データを保持しており、第２の端末が第２の分割データを保持しており、第３の端末が第３の分割データを保持しているとする。
【００７１】
この場合、各クラスタにおいて、第１の端末、第２の端末及び第３の端末以外の端末は、第１の端末、第２の端末及び第３の端末にアクセスして、第１の分割データ、第２の分割データ及び第３の分割データを取得する。第１の端末、第２の端末及び第３の端末は、互いにデータを転送し合って、足りないデータを補完する。このようにして、各クラスタ内のすべての端末が、地域に関係づけられたデータの全体を取得することができる。
【００７２】
なお、上述した具体例のようにクラスタを構成しないで、５０台の端末が同時に１００Ｍビットのデータをダウンロードするようにすると、すべての端末は１００秒の時間をかけてデータをダウンロードすることになるため、効率が悪い。また、最大の実効帯域を確保することができる端末の数が２０台であるので、１００Ｍビットのデータを５Ｍビットずつ、２０分割することが考えられる。しかし、データを細分化し過ぎると、リモートファイルへのアクセスオーバーヘッドが増えてボトルネックとなるため、システム全体の要求を満たすことができなくなるおそれがある。
【００７３】
実施例２によれば、地域に関係づけられたデータが、実効最大速度でダウンロード可能なサイズの分割数個のデータに分割されており、各クラスタにおいて、分割数個の端末が、分割された各データを基地局を介してサービスサーバからダウンロードするので、端末は実効最大速度でダウンロードすることができる。また、各クラスタにおいて、端末同士が互いの保持している分割データを転送し合うことによって、すべての端末がすべての必要なデータを取得することができる。
【符号の説明】
【００７４】
２，３，４，５  領域
６，７，８  データ処理装置、第２データ処理装置、第４データ処理装置
１１  第１データ処理装置
【図１】
2012164673.tif 000003
【図２】
2012164673.tif 000004
【図３】
2012164673.tif 000005
【図４】
2012164673.tif 000006
【図５】
2012164673.tif 000007
【図６】
2012164673.tif 000008
【図７】
2012164673.tif 000009
【図８】
2012164673.tif 000010
【図９】
2012164673.tif 000011
【国際調査報告】
2012164673.tif 000012
2012164673.tif 000013
2012164673.tif 000014
2012164673.tif 000015