JP4568576B2 - データ共有システム及び通信端末並びにデータ共有方法 - Google Patents

データ共有システム及び通信端末並びにデータ共有方法 Download PDF

Info

Publication number
JP4568576B2
JP4568576B2 JP2004311420A JP2004311420A JP4568576B2 JP 4568576 B2 JP4568576 B2 JP 4568576B2 JP 2004311420 A JP2004311420 A JP 2004311420A JP 2004311420 A JP2004311420 A JP 2004311420A JP 4568576 B2 JP4568576 B2 JP 4568576B2
Authority
JP
Japan
Prior art keywords
data
communication
communication terminal
update
distributed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004311420A
Other languages
English (en)
Other versions
JP2006126972A (ja
Inventor
知克 奥谷
弘利 岩崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso IT Laboratory Inc
Original Assignee
Denso IT Laboratory Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso IT Laboratory Inc filed Critical Denso IT Laboratory Inc
Priority to JP2004311420A priority Critical patent/JP4568576B2/ja
Publication of JP2006126972A publication Critical patent/JP2006126972A/ja
Application granted granted Critical
Publication of JP4568576B2 publication Critical patent/JP4568576B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Mobile Radio Communication Systems (AREA)

Description

本発明は、分散システム環境(分散環境)におけるデータ共有システム及び通信端末並びにデータ共有方法に関し、特に、無線通信環境に置かれた移動通信端末間において、黒板モデルを利用したデータ共有システム及び通信端末並びにデータ共有方法に関する。
近年、異種システム間のデータ共有化・データ同期化技術の進歩(例えば、分散オブジェクトデータベース技術や、XML(eXtensible Markup Language)メタスキーマ技術などの進歩)によって、オープンネットワークにおけるB2B(Business to Business)・B2C(Business to Consumer)などの情報サービスの連携が、効率的に実現されるようになった。また、来るユビキタスネットワーク社会(非特許文献1参照)に向けて、異種システム間の情報サービス連携を高効率化するための技術が研究されており、エージェント技術が活発に利用されている。ユビキタスネットワーク社会では、移動する人や機器(以下、移動体)に対し、コンテキストに応じてサービスを提供し、移動体を支援するシステムが不可欠である。現在のカーナビに代表される各種ナビゲーションシステムは、その先駆けとして考えられる。現在、これらのシステムはそれぞれ独自に発展してきている。今後、これらのシステムが連携して、統合したサービスとして移動体を支援することが課題となってくると考えられる。
また、次世代ナビゲーションシステムにおいては、移動体が持つ情報端末(例えば、カーナビゲーション、携帯電話、PDA(Personal Digital Assistant)。以降、モバイル端末と呼ぶ)が、無線通信を始めとした様々な通信ネットワークを利用して、バックネット側のホストの役割を果たすホストコンピュータ機器(例えば、自宅・オフィスのパソコンやセンターサーバ。以降、ホストと呼ぶ)と連携するとともに、さらにはモバイル端末間で連携し、移動体を支援すると考えられる(図1参照)。なお、図1には、次世代ナビゲーションの世界が模式的に図示されている。
我々は、この世界における新しい情報サービスのアプリケーションコンセプトとして、『ランデブーアシスタンス』を提案している(非特許文献2参照)。これは、移動体がモノ(人、未知なる場所や情報)に出会うことを支援するナビゲーションサービスである。『ランデブーアシスタンス』では、例えば、複数のユーザが集合する際は、道路案内、情報提案、自分や相手の位置把握、自分や相手のスケジュール監視による連携などにより支援が行われる。また、不慮の事態の場合は、集合地点を適宜、変更する。これらの実現には、各ノード(ホスト、モバイル端末)が連携することによる、移動体の「移動に追従する情報サービス」や移動体間の「情報端末非依存のコミュニケーション」が基本となる。
また、ノードの連携には、ノード間の情報共有が不可欠である。情報共有として、個人におけるノード間の情報共有と、複数人におけるノード間の情報共有を実現する必要がある。前者は、「移動に追従する情報サービス」に、後者は「情報端末非依存のコミュニケーション」に必要となる。例えば、「スケジュールの連携」のアプリにおいて、前者は、個人が移動シーンに応じて端末を切り替えながらシングルトン(実現方式において多重化される場合であっても、概念的・仮想的に唯一の存在であること)なスケジュールデータを利用、編集するような場面で実施される。後者は、関係する各ユーザが、シングルトンなスケジュールデータをほぼリアルタイムに利用、編集する場面で実施される(図2参照)。なお、図2(A)には個人におけるスケジュールの連携が、図2(B)には複数人によるスケジュールの連携が、それぞれ模式的に図示されている。
これら連携を行う上では、移動状態にあるユーザに負担をかけないことが必要である。そこで、個々のノード間及びノード内部で相互作用するアプリケーションプロセスを、コンテキストに応じ自律的に振る舞えるようにエージェント化することが考えられる。各連携の実現には、これらエージェント間の情報共有方法の確立が必要である。例えば、分散システム環境におけるエージェントの情報共有方法としては、「黒板モデル」がよく知られている。黒板モデルとは、複数のエージェントに対し共有データ空間を用意して、エージェント間の協調を実現するモデルである。この黒板モデルは、『ランデブーアシスタンス』のエージェント間での情報共有の基盤になり得ると考えられる。
非特許文献12には、黒板モデルを実現する構造である黒板アーキテクチャは、分散オブジェクト間で知識源(データ)を共有化し、共有化された知識源を用いて相互作用・協調動作するためのアーキテクチャパターンとして紹介されている(図3参照)。なお、図3は、黒板モデルの静的モデルをUML(Unified Modeling Language)によって図示したクラス図である。黒板コンポーネントであるBlackboard、知識源コンポーネントであるKnowledgeSourceと、これらの制御担当コンポーネントであるcontrolから構成される。それぞれは、共有データを格納する共通領域(共有データ書庫)、共有データ自体(共有データ)、共有データの制御(スケジューラ)の役割を持っていると考えてよい。各部分問題を割り当てられたエージェントは、これを利用して相互に、問題や解に関するデータ共有を行うことで、全体の問題を解決することができるようになる。
また、分散システム環境における共有データシステムとして、古典的にはLinda(非特許文献8参照)が存在する。Lindaは、tuple spaceと呼ばれる分散共有メモリシステムを使用した分散システム環境での並列処理システムである。しかしながら、Lindaが持つ共有データリポジトリは1つであり、モバイル環境で必要なノードの移動性に対応していない。一方、これをモバイル環境に拡張したLIME(Linda in a Mobile Environment:非特許文献9参照)や、MARS(Mobile Agent Reactive Space:非特許文献10参照)のシステムが存在している。LIMEは、モバイルエージェントが決められたtupleとそのtuple spaceを保持し、エージェントの移動やノードの通信接続により、一時的なtuple spaceを作りだすことでデータ共有を実現する。また、MARSは、モバイルエージェントが、所望のtupleがあるtuple spaceが存在するノードに移動して、データ共有を図る方法である。
総務省:情報通信白書(2004年版) FIPA(The Foundation for Intelligent Physical Agents):http://www.fipa.org ランデブーアシスタンス:http://www.d-itlab.co.jp/ja/research/nag.html 増永良文、上林弥彦、金森吉成、北川博之、今井浩、古川哲也、徐海燕、加藤和彦:協調能動型データベースシステム技術の研究に向けて 宮西洋太郎、中村健二、佐藤文明、水野忠則:分散システムにおけるデータの複製管理方式 黒田正博、Lousheng Peng、渡辺尚、水野忠則、下間芳樹:オブジェクト同期化モデルを用いた無線ネットワークでのデータ転送方式 黒田正博、井上淳、渡辺尚、水野忠則:楽観的データ整合性モデルを用いた放浪型メッセージングシステム GD.Gelernter. Generative Communication in Linda. ACM Computing Surveys, 7(1):80-112, Jan. 1985. G.Picco, A.Murphy, and G.-C.Roman. LIME:Linda Meets Mobility. In D.Garlan, editor, Proc. Of the 21st Int. Conf. on Software Engineering, pages 368-377, May 1999. G.Cabri, L.Leonardi, and F.Zambornelli. MARS:A programmable coordination architecture for mobile agents. IEEE Internet Computing, 2000. Erich Gamma:オブジェクト指向における再利用のためのデザインパターン F.ブッシュマン、H.ローネルト、M.スタル、R.ムニエ、P.ゾンメルラード:ソフトウェアアーキテクチャ −ソフトウェア開発のためのパターン体系− JADE:http://jade.tilab.com/ SyncML:http://www.openmobilealliance.org/tech/affiliates/syncml/syncmlindex.html Sync4j:http://sync4j.funambol.com
しかしながら、上述のような情報共有方法を実現するためには、サービスの稼働環境、アプリケーション、ビジネス要因より、それぞれ、以下のような課題がある。
(1)移動体環境におけるデータ共有
モバイル端末が中心の移動体が置かれる環境では、無線通信による接続が前提となる。さらに各端末は、突然電源が切られるなど稼働は保証されない。そのため、安定した接続が保証されない。無線遮断時にはデータ共有が不可能となる。そのため、各エージェントは他のノードの接続状態や、共有データのアクセス状態にかかわらず、処理を継続することが必要になる。そのために、共有データを分散させ、同期化手法を用いて、データ共有を行うことになる。さらに、無線環境ではナローバンドであり、また端末はリソース制約が厳しいため、同期のための転送データ量は、なるべく少なくする必要がある。
(2)共有データのアクセスコントロール
例えば、『ランデブーアシスタンス』においては、「スケジュール連携」をはじめとして、個人の情報を共有することが必須である。よって、アクセスコントロールは基本機能となる。そのため、まず、アクセスの単位となる、共有データのグループ化や、共有データ間の関連を構造化できる必要がある。さらに、同期化手法には、アクセス単位に応じた制御機構が必要になる。
(3)異種機器・システムベンダへの対応
多くの異種の機器、システムが関係するため、多ベンダへの対応を図るためには、ポータビリティ性の確保(実装の入れ替え、変更が可能)が必要になる。
また、上述のLIME及びMARSは、両手法とも、モバイルエージェントを利用しているため、異種のシステムを対象にした場合、移動先での動作の保証が出来ないため直接前提にできない。また、複数の端末が共に共有データにアクセスできないような状況で、端末間でそのデータの共有をしたい場合があるが、対応するには多重化への拡張が必要となる。
本発明は、上記の課題に鑑み、分散システム環境においてデータ共有が行われる場合に、個々の分散コンポーネントが、通信状況に影響されずに、共有データの管理を行うことを可能とするータ共有システム及び通信端末並びにデータ共有方法を提供することを目的とする。
上記目的を達成するため、本発明のデータ共有システムは、複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムであって、
前記複数の通信端末のそれぞれが、
自通信端末内の前記データを参照及び更新するデータ更新手段と、
他の前記通信端末との間で通信が可能か否かを監視する監視手段と、
前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化手段と、
前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化手段による前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲手段とを、
有する。
また、本発明のデータ共有システムは、上記構成に加えて、前記権利移譲手段が、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲するよう構成されている。
上記目的を達成するため、本発明の通信端末は、複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムにおける通信端末であって、
自通信端末内の前記データを参照及び更新するデータ更新手段と、
他の前記通信端末との間で通信が可能か否かを監視する監視手段と、
前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化手段と、
前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化手段による前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲手段とを、
有する。
また、本発明の通信端末は、上記構成に加えて、前記権利移譲手段が、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲するよう構成されている。
上記目的を達成するため、本発明のデータ共有方法は、複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムにおける前記通信端末によって実行されるデータ共有方法であって、
自通信端末内の前記データを参照及び更新するデータ更新ステップと、
他の前記通信端末との間で通信が可能か否かを監視する監視ステップと、
前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化ステップと、
前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化ステップにおいて前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲ステップとを、
有する。
また、本発明のデータ共有方法は、上記処理に加えて、前記権利移譲ステップにおいて、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲する。
本発明は、上記の構成を有しており、分散システム環境においてデータ共有を行う場合に、個々の分散コンポーネントが、通信状況に影響されずに、共有データの管理を行うことができるという効果を有している。また、本発明は、特に、モバイル端末を含むデータ共有システムにおいて、自端末又は相手端末の無線通信環境に影響を受けることなく、データの共有・参照・更新を行うことができるという効果を有している。また、本発明は、特に、無線通信環境において分散協調するマルチエージェントに対応した黒板モデルを提供することができるという効果を有している。
<概要>
以下、図面を参照しながら、本発明の実施の形態について説明する。まず、図4を参照しながら、本発明の概要について説明する。図4は、本発明の基本概念を黒板アーキテクチャに適用した場合の一例を模式的に示す図である。なお、以下では、本発明の基本概念を黒板アーキテクチャに適用したシステムを、分散黒板アーキテクチャと呼ぶことにする。
図4に示す分散黒板アーキテクチャは、移動体環境に対応するように黒板アーキテクチャを拡張したシステムであり、無線通信環境において分散協調するマルチエージェントのために、黒板に格納された知識源の共有を可能とするシステムである。図4に示す分散黒板アーキテクチャでは、知識源を黒板に格納し、各モバイル端末(図4には、モバイル端末A及びモバイル端末Bを図示)上に黒板単位に分散多重化する。これにより、各モバイル端末は、それぞれ分散型黒板を有することになる。また、黒板の分散多重化によって知識源が分散多重化されることで、複製間(分散型黒板間)のデータ一貫性を保つという副次要件が発生するので、任意のモバイル端末が無線遮断中に更新された知識源に対して、そのモバイル端末が無線遮断状況から回復した時点で、そのモバイル端末が有する分散型黒板に格納されている知識源を遅延同期させる処置が可能となる。そのため、任意のモバイル端末の無線通信環境が不確実な状況(無線遮断されている場合など)であっても、接続相手のモバイル端末の接続状況や、分散協調する相手側マルチエージェントの稼動状況を意識せず、知識源の参照・更新が可能となる。
<参照モデル>
また、図5は、図4に示す分散黒板アーキテクチャの参照モデルの一例をUMLによって記述したクラス図である。なお、図5に示す参照モデルは、図3に図示されている黒板アーキテクチャを拡張して、黒板と知識源を分散多重化させたものである。
<分散型知識源>
図5に図示されている分散型知識源は、ユーザデータを格納して分散共有データとして扱うクラスである。知識源は、黒板に格納することで各モバイル端末及びホストに分散多重化することができる。分散多重化におけるオブジェクトの複製は、分散多重化手法によって施行される。複製されたオブジェクト(レプリカ)とその基点となったオブジェクト(マスタ)の関係は、マスタとレプリカ間の従属関係である。
<分散型黒板>
また、図5に図示されている分散型黒板は、知識源を格納して分散共有データリポジトリとして扱うクラスである。この黒板を単位として、黒板に格納した知識源の集合を各情報端末及びホストに分散多重化することができる。また、この単位で同期化することができる。また、このクラスは知識源の汎化であるため、知識源と同様に、黒板に格納することができる。
<アクセスポリシー>
また、図5に図示されているアクセスポリシーは、各種のアクセス制御のためのアクセスポリシーを格納するクラスである。知識源と黒板に対してアクセスポリシーを割り当てられるようになっている。また、アクセスポリシーを運用する対象(参照し施行するもの)としては、知識源、知識源から派生する黒板、分散多重化手法、同期化手法である。アクセスポリシーの種類としては、コピーポリシー(copyPolicy)、複製ポリシー(clonePolicy)、更新ポリシー(updatePolicy)、参照ポリシー(referPolicy)、マスタ権移譲ポリシー(delegatePolicy)、同期化ポリシー(syncPolicy)をサポートする。
<分散多重化手法>
また、図5に図示されている分散多重化手法は、分散多重化を施行するメカニズムクラスである。本発明においては、分散多重化におけるオブジェクト複製のメカニズムを実現し、これを提供する。また、このクラスはポータビリティ性を持っている。
<同期化手法>
また、図5に図示されている同期化手法は、同期化を施行するメカニズムクラスである。本発明においては、同期化のデフォルト手法として集中型同期化手法と分散型同期化手法のメカニズムを実装し、これを提供する。また、このクラスは分散多重化手法と同様にポータビリティ性を持つ。
<黒板構造について>
また、図6は、本発明に係る分散多重化・同期化の概念を模式的に示す図である。図6に図示されるように、本発明では、移動体環境におけるデータ共有を実現するため、ノード間及びエージェント間における黒板と知識源の共有化を可能とする。知識源はマスタからレプリカに黒板の単位で分散多重化し、同期化する。さらに、複数の黒板の単位でも、分散多重化及び同期化を行える黒板は、役割単位(異種ベンダーアプリケーション間の相互運用におけるデータ管理の責務分担など)にデータ集合を形成することが可能である。
<分散多重化と同期化の分離>
無線遮断中や相手側モバイル端末が停止中の状況では、知識源のマスタとレプリカ間における同期化ができない問題が発生し、黒板システムを使用するマルチエージェントの分散協調動作が阻害される。「移動体環境におけるデータ共有」を実現するため、本発明では、知識源(黒板を含む)のマスタ及びレプリカ間の同期化の方式に楽観的データ整合性方式を採用する。楽観的データ整合性方式とは、分散データベース技術における、データ更新開始から同期化完了までの長期的なトランザクション区間を提供し、更新・参照の開始時点から終了時点の短期的なトランザクション区間(以降、参照・更新フェーズと呼ぶ)と、同期化の開始時点から終了時点の短期的なトランザクション区間(以降、同期化フェーズと呼ぶ)を別離し、遅延同期を可能とする方式である。参照・更新フェーズと同期化フェーズを別離することによって、無線遮断中や相手側モバイル端末が停止中であっても知識源の参照・更新を実現できる。なお、同期化フェーズは、参照・更新フェーズの前後に存在することが可能である。
<知識源のオブジェクト複製制御>
また、本発明では、分散オブジェクト環境における異種アプリケーション間のデータ相互運用を考慮する必要がある。そして、オブジェクト複製におけるディープコピーとシャローコピーの制御が必要である。また、不正なコピーを抑止する制御が必要である。図5に示す通り、分散多重化手法は、アクセスポリシーのコピーポリシー(copyPolicy)を使用して、この制御を実現する。(図7参照)。なお、図7(A)には、本発明に係るオブジェクト複製におけるディープコピーの制御の一例が図示されており、図7(B)には、本発明に係るオブジェクト複製におけるシャローコピーの制御の一例が図示されている。これによって、マルチエージェント開発者は、分散オブジェクト環境における異種アプリケーション間のデータ相互運用に対して、正しいオブジェクトの複製をもって振舞うことが可能となる。また、異種アプリケーションが提供するオブジェクト複製のコピーポリシーがブラックボックス化した知識源を、自分が管理する黒板に包含することが可能となる。
<黒板と知識源の木構造化>
また、異種アプリケーション間のデータ相互運用や、複数のユーザ間で共有される黒板及び知識源のデータモデルは、黒板及び知識源の単位に複雑なアクセスポリシーの設定を要求される。そのため、黒板及び知識源は役割・責務などに応じて柔軟なデータモデル構造を提供する必要がある。
こうした要件を満たすために、本発明では、図5に示す通り、知識源は、Compositeパターン(入れ子関係)とし、黒板は知識源の派生となることで、黒板を含む知識源に関して木構造の関係を実現可能とした。これによって、マルチエージェント開発者は、分散オブジェクト環境における異種アプリケーション間のデータ相互運用に対して、黒板及び知識源の柔軟なモデル構造を設計できる。
<オブジェクト複製間のマスタ交代>
また、移動体は移動シーンに合わせて適時モバイル端末を切り替える。また、モバイル端末の種類によっては稼働時間が端的かつ断続的である。つまり、これらモバイル端末上にインスタンス化される知識源のマスタとレプリカ間の同期化については、マスタが設置されているモバイル端末が停止中の状態で同期化できない場合がある。したがって、知識源のマスタとレプリカ間において、マスタ権の移譲ができる仕組みが必要である(図8参照)。なお、図8には、本発明に係るモバイル端末間におけるマスタ権の委譲(マスタ権の交代)の様子が図示されている。また、マスタが設置されているモバイル端末が停止中の場合は、自動的にマスタ権を移譲する仕組みが必要である。このマスタ権の移譲の仕組みは、知識源のアクセスポリシーであるマスタ権移譲ポリシー(delegatePolicy)の制御ルールによって実現する。制御ルールの決定要因としては、以下の例がある。
・頻繁に更新が発生するレプリカに権利移譲
・安定永続性の高いレプリカに権利移譲
<制御とモデルの分離>
また、既存の黒板システムの多くは、閉鎖的なシステムにおいて専用のデータモデル(黒板と知識源)と制御機構で実現され、マルチエージェントのプラットフォームに汎用的ではない。つまり、データモデルと制御機構に「異種機器・システムベンダへの対応」を行うためのポータビリティ性が無い。本発明では、ポータビリティ性を実現するために、データモデルと分散多重化手法と同期化手法を含む制御機構の分離が可能な仕組みを提供する。また制御機構の追加・交換できる仕組みを提供する。これは、図5に示す通り、アクセスポリシーを媒介として、制御とモデル(黒板、知識源)を分離することで実現を可能とした。これによって、黒板及び知識源へのアクセス制御を施行するセキュリティ制御機構を後付けで搭載することなどが可能である。
<本発明に係る同期化手法>
また、本発明では、同期化手法として集中型同期化手法と分散型同期化手法を例として実現した。これは分散データベース技術において、一貫性を保障する機構を大別したものである。両者共に会話人数(n)における同期1回分の会話総数のオーダーはO(n)となり、完全P2P通信(O(n2))と比較して、会話人数の増加に対する高完遂性と高リアルタイム性の獲得が期待できる。ただし、知識源として扱うデータの特質とユーザアプリケーションの運用特性によって両者の有効性が変化することが予想される。
<集中型同期化手法>
上記の集中型同期化手法は、一貫性保証方法における中央集権的なマージ方法である。同期処理プロトコルは分散型同期化手法にくらべて単純である。データの永続性を考慮した場合はこの手法が有効である。この集中型同期化手法に関連して、分散協調する各同期化手法インスタンス間の同期処理プロトコルについては、図9に図示されている。
<分散型同期化手法>
また、上記の分散型同期化手法は、一貫性保証方法における非中央集権的なマージ方法である。同期のプロトコルは集中型同期化手法にくらべて複雑である。分散オブジェクトネットワーク環境、完全P2P環境の場合は会話総数オーダー(O(n2))の問題を改善できる。この分散型同期化手法に関連して、分散協調する各同期化手法インスタンス間の同期処理プロトコルについては、図10に図示されている。
<同期化ポリシーの例>
また、各同期化手法における汎用的な同期化ポリシーを事例的に実現した。これはモバイル端末用の同期化手法として最も標準的なI/F仕様を提供しているSyncML(非特許文献14参照)を参考としたものである。
(a)ユーザ決定
ユーザ介入によってマージ時の競合解決を行う。自立的に競合解決できない場合、このメッセージを用いて解決することができる。
(b) レプリカ勝ち
無条件にレプリカの更新内容をマスタへ反映させる。分散型同期化手法で使用した場合、マージした結果が複数レプリカ間で再度競合する可能性がある。
(c)マスタ勝ち
無条件にマスタの更新内容をレプリカへ反映させる。分散型同期化手法で使用した場合、集中型同期化手法と等しい効率でマージ時の競合解決ができる。
(d)タイムスタンプベース
タイムスタンプが新しい更新内容を反映させる。バージョン管理機構などの履歴管理機構を使用することで高機能な競合解決ができる。
(e)ラスト/ファースト勝ち
メッセージキューシステムのスケジュール管理に従って更新内容を反映させる。集中型同期化手法、分散型同期化手法に関わらず、スケジュール管理に従った高機能な競合解決ができる。
<プロトタイプ評価>
また、本発明について、実現可否と速度性能についてプロトタイプ評価を行った。なお、以下に記載するプロトタイプ評価は、簡単な初期評価である。
<実験環境>
実験環境は以下の通りである。ハードウェア以下のスペックのPC複数台にて実験を行った。
・CPU:Pentium(登録商標)4 2.60GHz
・Memory:2.0GB
・OS:Windows(登録商標) XP Professional
・LAN:100Mbps
また、以下の前提ソフトウェアを使用した。
・Java(登録商標):J2SE1.4.2
・JADE:jade snapshot20040323
・Sync4j:SyncServer-4.0.1
・SyncClient command line edition 1.0
<無線遮断時の黒板アーキテクチャの効果>
本発明において、最も特徴的である無線遮断時の知識源の参照更新の可能な状況について、実現可否の確認と実行時の速度性能を確認するためにプロトタイプ実装を行った。プロトタイプ実装では、集中型同期化手法(図9参照)を組み込み、マルチエージェントが黒板のレプリカ知識源にデータ更新する状況を実装した。また、比較対象とする従来方式の黒板アーキテクチャの実装には、SyncMLの仕様に準拠したSync4j(非特許文献15参照)を用いた。これは参照・更新フェーズと同期化フェーズの短期トランザクション区間が同一(遅延同期しない状況)であるように調整を行った。確認方法は、黒板から25メガバイトのデータを878バイト単位に更新(同期化のマージ処理における競合は発生させていない)する処理(図9におけるシーケンス番号1〜3の工程)にて、通信開始5秒後に強制的にLAN線を切断し、10秒後に再接続する操作を行うこととした。これによって、従来の黒板アーキテクチャは更新が中断することが確認でき、本発明では、更新が中断しないことが確認できる。
確認結果によれば、図11に示す通り、従来方式では約5秒間の更新中断が発生した。これに対して、本発明では更新を継続することができた。速度性能においては、本発明では、無線通信をせず、レプリカ知識源を更新するのみであることに対して、従来方式では、ネットワーク通信を行う分、本発明のほうが高性能であった。
<同期性能に対するクライアント数の影響>
また、本発明では、上述のように、会話人数(n)における同期1回分の会話総数のオーダーはO(n)となるはずである。よって、この会話人数(クライアント数)の増加に対してリニアな速度性能であるか確認を行う。確認方法は、上述のプロトタイプ実装に対して、クライアント数の増加を施行するものである。また、比較参考値として、上述の従来方式に係る実装も同様に実行した。ただし、従来方式に係る実装と本発明に係る実装では、1回のデータ更新に対する通信処理コストに差があるため(厳密には従来方式が無駄にファイルアクセスをしている分)、これについては速度性能に計上しない仕組みを加えた。
確認結果によれば、図12に示す通り、クライアント数の増加に対して予測通りにリニアな速度性能であった。これによってクライアント数の増加に対するスケーラビリティの確保が確認できた。また、ネットワーク通信コストを差し引いても、従来方式と比較して10倍程度高速に動作することが判明した。本発明の性能が良好であった要因は、従来方式がデータ更新のたびに毎時通信するのに対して、本発明が、図9におけるシーケンス番号3の更新差分記録によって、通信回数を削減できるという効果による。
<まとめ>
以上、説明したように、本発明は、無線遮断の状況に影響されずに黒板の共有データにアクセス可能であることから、分散多重化手法の効果を実証できたと考える。また、クライアント数の増加にも影響されず、リニアな速度性能劣化であることが確認できた。スケーラビリティも確保できたと考える。
本発明は、分散システム環境においてデータ共有を行う場合に、個々の分散コンポーネントが、通信状況に影響されずに、共有データの管理を行うことができるという効果を有し、分散システム環境における通信端末のデータ共有に係る技術に適用可能であり、特に、無線通信環境に置かれた移動通信端末間において、黒板モデルを利用したエージェント間のデータ共有に係る技術に適用可能である。
本発明の適用対象の一例となる次世代ナビゲーションの世界を模式的に示す図である。 本発明の適用対象の一例となるスケジュール連携を示す図であり、(A)は、個人におけるスケジュールの連携を示す図、(B)は、複数人によるスケジュールの連携を示す図である。 本発明に係る黒板モデルの静的モデルをUML(Unified Modeling Language)によって図示したクラス図である。 本発明の基本概念を黒板アーキテクチャに適用した場合の一例を模式的に示す図である。 図4に示す分散黒板アーキテクチャの参照モデルの一例をUMLによって記述したクラス図である。 本発明に係る分散多重化・同期化の概念を模式的に示す図である。 本発明に係る知識源のオブジェクト複製制御の一例を示す図であり、(A)は、本発明に係るオブジェクト複製におけるディープコピーの制御の一例を示す図、図7(B)は、本発明に係るオブジェクト複製におけるシャローコピーの制御の一例を示す図である。 本発明に係るモバイル端末間におけるマスタ権の委譲(マスタ権の交代)の様子を示す図である。 本発明において利用可能な集中型同期化手法を示す図である。 本発明において利用可能な分散型同期化手法を示す図である。 本発明に係る黒板アーキテクチャの無線遮断における効果を示すグラフである。 本発明に係る速度性能の効果を示す同期速度性能グラフである。

Claims (6)

  1. 複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムであって、
    前記複数の通信端末のそれぞれが、
    自通信端末内の前記データを参照及び更新するデータ更新手段と、
    他の前記通信端末との間で通信が可能か否かを監視する監視手段と、
    前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化手段と、
    前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化手段による前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲手段とを、
    有するデータ共有システム。
  2. 前記権利移譲手段が、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲するよう構成されている請求項1に記載のデータ共有システム。
  3. 複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムにおける通信端末であって、
    自通信端末内の前記データを参照及び更新するデータ更新手段と、
    他の前記通信端末との間で通信が可能か否かを監視する監視手段と、
    前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化手段と、
    前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化手段による前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲手段とを、
    有する通信端末。
  4. 前記権利移譲手段が、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲するよう構成されている請求項3に記載の通信端末。
  5. 複数の通信端末によってデータが共有され、共有されるべき前記データが前記複数の通信端末のそれぞれに対して分散多重化されているデータ共有システムにおける前記通信端末によって実行されるデータ共有方法であって、
    自通信端末内の前記データを参照及び更新するデータ更新ステップと、
    他の前記通信端末との間で通信が可能か否かを監視する監視ステップと、
    前記通信が可能な場合に、他の前記通信端末に対して前記データの更新結果を通知することによって前記データの同期化を行うデータ同期化ステップと、
    前記複数の通信端末によって共有される前記データに関して、前記複数の通信端末のうちのいずれか1つによって保持される前記データに対してデータ更新の主導権を示すマスタ識別子が設定されており、前記データ同期化ステップにおいて前記データの同期化ができない場合には、前記データ更新の主導権を他の前記通信端末へ移譲する権利移譲ステップとを、
    有するデータ共有方法。
  6. 前記権利移譲ステップにおいて、前記データの更新頻度が高い通信端末、又は、接続が安定している通信端末へ、前記データ更新の主導権を移譲する請求項5に記載のデータ共有方法
JP2004311420A 2004-10-26 2004-10-26 データ共有システム及び通信端末並びにデータ共有方法 Expired - Fee Related JP4568576B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004311420A JP4568576B2 (ja) 2004-10-26 2004-10-26 データ共有システム及び通信端末並びにデータ共有方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004311420A JP4568576B2 (ja) 2004-10-26 2004-10-26 データ共有システム及び通信端末並びにデータ共有方法

Publications (2)

Publication Number Publication Date
JP2006126972A JP2006126972A (ja) 2006-05-18
JP4568576B2 true JP4568576B2 (ja) 2010-10-27

Family

ID=36721699

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004311420A Expired - Fee Related JP4568576B2 (ja) 2004-10-26 2004-10-26 データ共有システム及び通信端末並びにデータ共有方法

Country Status (1)

Country Link
JP (1) JP4568576B2 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7945639B2 (en) * 2007-06-27 2011-05-17 Microsoft Corporation Processing write requests with server having global knowledge
JP4982304B2 (ja) 2007-09-04 2012-07-25 株式会社日立製作所 電源障害の発生を把握するストレージシステム
US7747784B2 (en) * 2008-03-04 2010-06-29 Apple Inc. Data synchronization protocol
JP2009265930A (ja) * 2008-04-24 2009-11-12 Hitachi Ltd ストレージサブシステムおよびストレージシステム
JP5251446B2 (ja) * 2008-11-17 2013-07-31 富士通株式会社 データ共有プログラム,データ共有方法及びデータ共有装置
JP5257016B2 (ja) * 2008-11-21 2013-08-07 富士通株式会社 更新関数検証プログラム,更新関数検証方法及び情報処理装置
KR101337021B1 (ko) * 2011-11-29 2013-12-06 이가형 복수의 단말에 의한 프로그램 분담 제어 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319748A (ja) * 1994-05-23 1995-12-08 Internatl Business Mach Corp <Ibm> データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
JPH09160780A (ja) * 1995-12-04 1997-06-20 Nippon Telegr & Teleph Corp <Ntt> 黒板モデルの通信方法
JPH10149308A (ja) * 1996-11-19 1998-06-02 Sharp Corp データベース管理装置
JP2002116939A (ja) * 2000-10-06 2002-04-19 Telecommunication Advancement Organization Of Japan 分散型データベースシステム
JP2003256256A (ja) * 2002-03-01 2003-09-10 Nippon Telegr & Teleph Corp <Ntt> 複製データ管理方法、無線ネットワーク、ノード、プログラム、記録媒体
JP2004221916A (ja) * 2003-01-15 2004-08-05 Nec Access Technica Ltd 携帯端末情報の更新内容通知システム及び方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07319748A (ja) * 1994-05-23 1995-12-08 Internatl Business Mach Corp <Ibm> データ処理システム内で複写データ一貫性を維持するためのシステムおよび方法
JPH09160780A (ja) * 1995-12-04 1997-06-20 Nippon Telegr & Teleph Corp <Ntt> 黒板モデルの通信方法
JPH10149308A (ja) * 1996-11-19 1998-06-02 Sharp Corp データベース管理装置
JP2002116939A (ja) * 2000-10-06 2002-04-19 Telecommunication Advancement Organization Of Japan 分散型データベースシステム
JP2003256256A (ja) * 2002-03-01 2003-09-10 Nippon Telegr & Teleph Corp <Ntt> 複製データ管理方法、無線ネットワーク、ノード、プログラム、記録媒体
JP2004221916A (ja) * 2003-01-15 2004-08-05 Nec Access Technica Ltd 携帯端末情報の更新内容通知システム及び方法

Also Published As

Publication number Publication date
JP2006126972A (ja) 2006-05-18

Similar Documents

Publication Publication Date Title
Meier et al. Taxonomy of distributed event-based programming systems
JP5456677B2 (ja) マルチマスタ同期環境におけるウェブサービスエンドポイントの同期
JP6077562B2 (ja) 分散型アプリケーション・オブジェクトに関するアップデート通知の提供
Wijngaards et al. Supporting internet-scale multi-agent systems
US7715444B2 (en) Resuming a previously interrupted peer-to-peer synchronization operation
JP2005509979A (ja) 非同期型同期のシステムおよび方法
JP4568576B2 (ja) データ共有システム及び通信端末並びにデータ共有方法
Neyem et al. Integrating service-oriented mobile units to support collaboration in ad-hoc scenarios
Hadim et al. Middleware issues and approaches for mobile ad hoc networks.
Johnsen et al. Web services discovery across heterogeneous military networks
Schiele et al. Pervasive computing middleware
Hoefig et al. On concepts for autonomic communication elements
Han et al. A middleware architecture for community computing with intelligent agents
WO2007001927A2 (en) Ad-hoc multimedia information exploitation via web services and mobile agents
Strljic et al. Shop-floor service connector-a message-oriented middleware focused on the usability and infrastructure requirements of SMEs developing smart services
Delavergne et al. A service mesh for collaboration between geo-distributed services: the replication case
Richard et al. Clique: a transparent, peer-to-peer collaborative file sharing system
Neyem et al. A strategy to share documents in MANETs using mobile devices
Genco et al. An augmented campus design for context-aware service provision
Cutting Ph. D. Annual Progress Report for 2003
Aghav et al. A software architecture for provisioning of mobile services: An osgi implementation
Han et al. ATLAS-II: Scalable and self-tunable network framework for networked virtual environments
Ashrafi et al. FOG based distributed IoT infrastructure
Neyem et al. An architectural pattern for mobile groupware platforms
Eßmann et al. A JXTA-based framework for mobile cooperation in distributed knowledge spaces

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070329

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20091224

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100323

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100521

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100527

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100716

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100809

R150 Certificate of patent or registration of utility model

Ref document number: 4568576

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130813

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130813

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130813

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees