JP4179880B2 - データを同期させるシステム、そのシステムに用いられる装置およびデータ同期方法 - Google Patents
データを同期させるシステム、そのシステムに用いられる装置およびデータ同期方法 Download PDFInfo
- Publication number
- JP4179880B2 JP4179880B2 JP2002574088A JP2002574088A JP4179880B2 JP 4179880 B2 JP4179880 B2 JP 4179880B2 JP 2002574088 A JP2002574088 A JP 2002574088A JP 2002574088 A JP2002574088 A JP 2002574088A JP 4179880 B2 JP4179880 B2 JP 4179880B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- client
- server
- attribute
- terminal
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Description
【発明の属する技術分野】
この発明は、データアクセスシステムに関し、特に、データサーバ装置に記憶されているデータをクライアント装置に記憶されているかのごとく利用することが可能なデータアクセスシステムに関する。
【0002】
【従来の技術】
従来、サーバにおいてクライアント装置のデータを一括管理するシステムとして、グループウェアシステムがある。
【0003】
グループウェアシステムでは、たとえば、スケジュールやメモなどのデータをグループデータとしてサーバに登録しておくと、そのグループに属する全てのユーザはそのスケジュールを参照できるようになるものである。このグループウェアにおけるグループデータの参照の方法には大きく分けて2種類ある。一つはクライアント装置がグループデータを参照するときには必ずサーバへ接続し、その時点でのサーバのデータを参照する方法である。もう一つは、クライアント装置毎にグループデータを全て記憶しておき、サーバのグループデータに変更があると、サーバは全てのクライアント装置に記憶されているグループデータを変更する処理を行なう方法がある。
【0004】
特開2000−148572公報においては、無線移動端末からの通信要求を、通信が不可能な間は、メッセージキューに蓄積しておき、通信が可能となったときに、キューに蓄積された通信処理を行なう方法、および、無線移動端末の表示装置に表示されるリストを変更するリスト更新方法について開示されている。
【0005】
また、特開2000−148691公報においては、情報同期システムとして、クライアント装置において発生したデータ更新が、グループウェア情報であった場合に、関係するメンバーのクライアント装置の同じグループウェア情報を、メールを利用することにより一致させる情報同期システムが開示されている。
【0006】
しかしながら、従来のグループウェアでは、次のような課題がある。
クライアント装置がデータを参照するときにサーバへ接続し、その時点でのサーバのデータを参照する場合においては、サーバにおいて管理されているグループデータに変更があった場合、個々の端末では、サーバにおいてグループデータの更新があったことが通知されない。このため、ユーザが意識をしてサーバ上のグループデータにアクセスしない限り、該グループデータの更新に気がつかないことがあるという問題がある。また、クライアント装置がグループデータを参照する毎に通信が発生し、ネットワーク上のトラフィックが増大するという問題がある。
【0007】
次に、クライアント装置内にグループデータを全て記憶しておき、サーバのグループデータに変更があったときに全てのクライアント装置内のグループデータを変更するようにした場合、各クライアントで完全なグループデータを記憶する記憶容量が必要となる問題がある。また、サーバのグループデータに変更が生じると、全てのクライアントのグループデータを更新しなければならない。このため、ネットワーク上のトラフィックが増大するという問題がある。
【0008】
次に、特開2000−148572公報においては、サーバから無線移動端末のデータを効率よく更新するような技術は開示されていない。また、サーバにおいて記憶されている各無線移動端末のデータのオリジナルと各無線移動端末のデータとの複雑な関連を記憶する方法に関してはなんら教示しておらず、解決を与えることができない。
【0009】
特開2000−148691公報においては、各クライアントにおいてサーバの記憶領域を、各クライアントの記憶領域のように使用することはできない。このため、各クライアントは、実際に各クライアントに実装されている記憶領域以上のデータを取り扱うことができない。また、各クライアントにおいて、同期するべきグループデータを管理するグループウェア管理テーブルおよび管理機能が必要となり、クライアント側の負担が増大する。さらに、あるクライアントにおいてグループデータの更新が発生すると全てのクライアント装置に対して更新内容を通知するため、ネットワーク上のトラフィックが増大する。
【0010】
【発明が解決しようとする課題】
これら特開2000−148572公報および特開2000−148691公報に開示の技術を単に組み合わせたとしても、グループデータの更新のたびにすべてのクライアント装置に対して通信が発生しネットワーク上のトラフィックが増大するという問題は解決できない。また、個々のクライアント装置の負担を軽減しながら種々の通信サービスを実現することもできない。
【0011】
そこで、この発明の目的は、ネットワークトラフィックを増加させることなく、ユーザがクライアント装置を用いて情報を利用することができるデータサーバ装置、クライアント装置およびデータアクセスシステムを提供することである。
【0012】
この発明の他の目的は、ユーザがクライアント装置を用いて、そのクライアント装置の実記憶容量よりもはるかに多い情報を利用することができるデータサーバ装置、クライアント装置およびデータアクセスシステムを提供することである。
【0013】
この発明のさらに他の目的は、ユーザがクライアント装置を用いて、そのユーザにとって有意義な情報を利用することができるデータサーバ装置、クライアント装置およびデータアクセスシステムを提供することである。
【0014】
この発明のさらに他の目的は、セキュリティを確保しつつ、ユーザがクライアント装置を用いて情報を利用することができるデータサーバ装置、クライアント装置およびデータアクセスシステムを提供することである。
【0015】
この発明のさらに他の目的は、ユーザがクライアント装置を用いて、必要に応じて情報を利用することができるデータサーバ装置、クライアント装置およびデータアクセスシステムを提供することである。
【0016】
【課題を解決するための手段】
本発明のある局面に従うデータサーバ装置は、木構造を構成する要素の集合をサーバデータとして記憶するサーバデータ記憶部と、サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するクライアント記憶データ管理部とを含み、サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、クライアント記憶データ管理部は、サーバデータ記憶部に記憶されたサーバデータが更新された場合に、サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、木構造を構成する要素の集合の部分集合を選択して送信する。
好ましくは、さらに、ユーザが所属するグループおよび所有する端末装置を示すユーザの属性を記憶するユーザプロファイル記憶部を含み、クライアント記憶データ管理部による選択は、サーバデータに含まれる要素が持つ種別属性および重要度属性、クライアント装置の種別を含む属性、ユーザの属性のいずれかから導出される必要性に応じて行なわれる。
好ましくは、クライアント記憶データ管理部による選択において、要素の削除は、要素の実体の削除か、サーバ上の要素へのリンクの置換えのいずれかを、選択的に行なうことにより実現される。
好ましくは、サーバデータは、XMLを用いて構造化されている。
【0079】
さらに好ましくは、クライアント記憶データ管理部は、クライアント装置において記憶中のクライアントデータを更新するデータと、少なくとも要素の重要度属性、時間属性または端末属性に基づいて決定された、クライアントデータが更新されたことをユーザに通知する方法を表わす通知情報とを、対応関係に基づいて抽出されたクライアント装置に送信するように処理を決定する。
【0080】
クライアント装置のユーザに、データ更新を通知する方法が、対応関係に基づいて決定される。これにより、たとえばサーバデータの重要度に基づいて、通知方法を、大音量の警報による通知、ビープ音による通知、表示のみによる通知などに決定できる。
【0081】
さらに好ましくは、クライアント記憶データ管理部は、クライアント装置において記憶中のクライアントデータを更新するデータと、少なくとも要素の重要度属性、時間属性または端末属性に基づいて決定された、更新されたクライアントデータを消去する方法を表わす消去情報とを、対応関係に基づいて抽出されたクライアント装置に送信するように処理を決定する。
【0082】
クライアント装置のユーザに、データを消去する方法が、対応関係に基づいて決定される。これにより、たとえばサーバデータの重要度に基づいて、データの消去方法を、更新から1日経過すると消去、更新から1週間経過すると消去などに決定できる。
さらに好ましくは、クライアント記憶データ管理部は、サーバデータに含まれる要素が持つ種別属性、重要度属性およびクライアント装置の種別を含む属性に対応させて定められたアルゴリズムに基づいて、ユーザ通知の必要性およびガーベージコレクションの必要性を規定した機会優先度およびクライアントデータを伝播すべき時間および伝播すべきクライアント装置を規定した伝播優先度を算出し、算出された優先度に対応して、クライアントデータに対する処理を決定する。
さらに好ましくは、クライアント記憶データ管理部は、クライアント装置へ送信される通信データを、構造化されたデータに含まれる複数の要素の中から要素を選択することにより、クライアントデータに対して処理するように決定する。
本発明の別の局面に従うクライアント装置は、データサーバ装置のサーバデータ記憶部
に記憶されたサーバデータの一部または全部であるクライアントデータを記憶するクライアントデータ記憶部と、データサーバ装置から、更新されたクライアントデータと通知情報とを含む更新情報を受信する受信部と、クライアント装置のユーザに、クライアントデータが更新されたことを通知する通知部と、更新情報を受信すると、クライアントデータ記憶部に記憶されている当該データを更新情報に応じて更新するとともに、クライアントデータに含まれる要素がどのような種類のデータであるかを示す種別属性および重要度属性、クライアント装置の種別を含む属性、ユーザが所属するグループおよび所有する端末装置を示すユーザの属性のいずれかから導出される必要性に応じて、クライアントデータが更新されたことをユーザに通知する、あるいは通知しないように、クライアントデータ記憶部と通知部とを制御する制御部とを含み、受信部による更新情報によりクライアントデータ記憶部の空き容量が不足した場合、クライアント装置は、クライアントデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、クライアントデータ記憶部に記憶されたクライアントデータの要素を消去して、クライアントデータの要素が消去されたことに応答して、消去されたクライアントデータの要素に対応するデータサーバ装置のマスタデータの当該要素へのリンク情報を設定する消去処理部をさらに含む。
好ましくは、クライアント装置は、クライアントデータ記憶部に記憶されたクライアントデータを、クライアントデータの各要素の種別属性および重要度属性、クライアント装置の種別を含む属性、ユーザが所属するグループおよび所有する端末装置を示す属性のいずれかから導出される必要性に応じて、段階的に消去する消去処理部をさらに含む。
好ましくは、データサーバ装置のサーバデータ記憶部に記憶されたサーバデータの一部または全部であるクライアントデータを記憶するクライアントデータ記憶部と、データサーバ装置から、更新されたクライアントデータと消去情報とを含む更新情報を受信する受信部と、クライアントデータ記憶部と受信部とに接続され、受信部が受信した更新情報に含まれる更新されたクライアントデータをクライアントデータ記憶部に記憶するとともに、更新情報に含まれる消去情報に基づいてクライアントデータ記憶部に記憶されたクライアントデータを消去するように、クライアントデータ記憶部を制御する制御部とを含む。
本発明のさらに別の局面に従うデータアクセスシステムは、上記データサーバ装置と、ネットワークを介して、データサーバ装置に接続された上記クライアント装置とを含む。
本発明のさらに別の局面に従うデータアクセスシステムは、データ同期方法は、木構造を構成する要素の集合をサーバデータとして記憶し、サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するデータサーバ装置と、ネットワークを介して、データサーバ装置と接続され、サーバデータの一部または全部であるクライアントデータを記憶するクライアント装置とを含むデータアクセスシステムで用いられる、サーバデータとクライアントデータとのデータ同期方法であって、サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、クライアント装置が、クライアント装置に記憶されているクライアントデータが更新された際に、データサーバ装置にデータ更新の通知をするステップと、データサーバ装置が、クライアント装置からデータ更新の通知を受信すると、サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、木構造を構成する要素の集合の部分集合を選択して送信するステップとを含む。
本発明のさらに別の局面に従う記録媒体は、コンピュータにデータサーバ機能を実現させるためのプログラムを記録したコンピュータ読取可能な記録媒体であって、プログラムは、コンピュータを、木構造を構成する要素の集合をサーバデータとして記憶するサーバデータ記憶手段と、サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するクライアント記憶データ管理部として機能させ、サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、クライアント記憶データ管理部が、サーバデータ記憶部に記憶されたサーバデータが更新された場合に、サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、木構造を構成する要素の集合の部分集合を選択して送信するよう機能させるためのプログラムである。
【0099】
【発明の実施の形態】
以下、図面を参照しつつ、本発明の実施例について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明の繰返しは適宜省略する。
【0100】
第1の実施例
図1を参照して、本実施例に係るデータアクセスシステムは、インターネットに代表されるネットワーク5に接続され、スケジュールやメモなどのデータを登録、表示するためにユーザが使用するクライアント装置10と、ネットワーク5に接続され、クライアント装置10において記憶中のデータを管理するデータサーバ装置1とを含む。
【0101】
図2を参照して、データサーバ装置1は、各クライアント装置10により利用されるサーバデータを記憶するサーバデータ記憶部3と、サーバデータ記憶部3に接続され、各クライアント装置10において記憶中のデータを管理するクライアント記憶データ管理部2と、ネットワーク5およびクライアント記憶データ管理部2に接続され、各クライアント装置10と通信を行なう通信部4とを含む。
【0102】
図3を参照して、クライアント装置10は、ネットワーク5を介してデータサーバ装置1と通信を行なう通信部11と、データサーバ装置1のサーバデータ記憶部3に記憶されたサーバデータの一部または全部、および、場合によってはクライアント装置10に固有のデータを記憶するクライアントデータ記憶部12と、ユーザへ文字情報や映像情報を提示する表示装置(図示せず)と、音や音声を出力するスピーカからなる出力部13と、キーボード、ボタン、カメラまたはマイクなどからなる入力部14と、通信部11、クライアントデータ記憶部12、出力部13、入力部14および表示装置に接続され、これらの装置を制御する制御部15とを含む。
【0103】
クライアント装置10として、図4Aに示すようなPDA(PersonalDigital Assistants)や、図4Bに示すような携帯電話が想定される。
【0104】
本構成において、各クライアント装置10のクライアントデータ記憶部12には、データサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータの一部または全部が記憶されているものとする。すなわち、クライアント装置10は、データサーバ装置1より必要なサーバデータを適宜クライアントデータ記憶部12にダウンロードする。原則的に比較的最近使ったデータについてはクライアント装置10のクライアントデータ記憶部12に記憶されているようにし、古いデータや重要度の低いデータは順次クライアントデータ記憶部12より削除を行なうようにする。このような仕組みを設けることにより、クライアント装置10は、あたかもデータサーバ装置1の広大な記憶容量を有するサーバデータ記憶部3がクライアント装置10内にあるかのように利用できるようになる。
【0105】
なお、クライアント装置10が携帯電話機能を持つ場合などは、クライアントデータ記憶部12より電話帳のデータについては削除しないなど、状況やデータの種類などに応じ所定の取り決めに従いデータを扱うようになっている。また、クライアント装置10の制御部15は、クライアントデータ記憶部12において削除処理が発生すると、そのことをデータサーバ装置1に通知するようになっている。データサーバ装置1のクライアント記憶データ管理部2は、各クライアント装置10のクライアントデータ記憶部12に、サーバデータのどの部分が記憶されているかをクライアント装置10毎に管理する。
【0106】
図5〜図7を参照して、データサーバ装置1の機能を実現するためのプログラムの制御構造の概要について説明する。
【0107】
図5を参照して、データサーバ装置1の全体的な制御の流れについて説明する。
【0108】
データサーバ装置1はクライアント装置10からの通信を待ち(S101)、通信があると(S101でYes)、そのクライアント装置10からの通信データがデータサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータの更新を要求するものかどうかを判断する(S102)。
【0109】
通信データがサーバデータの更新を要求するものであった場合(S102でYes)、クライアント記憶データ管理部2は、サーバデータの更新要求の整合性を確認する(S103)。この整合性の確認とは、たとえば、更新を行なおうとするデータへのアクセス権の確認や、更新データのもととなったサーバデータが、この更新データが該クライアント装置10に転送された時から変更されているなど、複数箇所での編集といったコンフリクトが発生していないか、等の確認を指す。
【0110】
整合性の確認がOKであった場合(S103でYes)、クライアント記憶データ管理部2は、データサーバ装置1のサーバデータ記憶部3に記憶されている該当するサーバデータの更新を行なう。このとき、サーバデータの最終更新日時の更新も同時に行なう(S104)。クライアント記憶データ管理部2は、更新したサーバデータについて、本更新データを送信してきたクライアント装置10以外のクライアント装置10への反映処理を行なう(S105)。本処理の詳細については後述する。反映処理(S105)が終了すると、データサーバ装置1は次の通信を待つ処理(S101)に戻る。
【0111】
通信データがサーバデータの更新要求で無かった場合(S102でNo)、データサーバ装置1のクライアント記憶データ管理部2は、通信データがクライアント装置10の接続復帰を知らせるものであるかどうかを判断する(S106)。
【0112】
通信データが、クライアント装置10の接続復帰を知らせるものである場合(S106でYes)、クライアント記憶データ管理部2は、該クライアント装置10に関する端末通信キューの有無を調べ(S107)、端末通信キューが存在した場合には(S107でYes)、その内容に従い、通信部4により該クライアント装置10のクライアントデータ記憶部12に記憶されているクライアントデータを更新する通信を行ない(S108)、次の通信を待つ処理に戻る(S101)。また、該クライアント装置10への端末通信キューが空である場合は(S107でNo)、何も処理を行なわずに、次の通信を待つ処理に戻る(S101)。
【0113】
クライアント装置10からの通信データが更新要求であり、かつ整合性がとれなかった場合(S102でYes,S103でNo)や、該通信データがデータ更新要求でも接続復帰でも無かった場合(S102でNo,S106でNo)については、適宜例外処理(S109)を行なう。なお、例外処理とは、たとえば整合性の確認に失敗した場合には、その理由を該クライアント装置10へ送付し、事後の処理をユーザに問い合わせる処理や、または、通信データがデータ更新でも接続復帰でもない、たとえば新しいクライアント装置10のユーザ登録を依頼する通信であったりする場合のユーザ登録処理などを指す。
【0114】
図6を参照して、上述の更新データを送信してきたクライアント装置10以外のクライアント装置10への反映処理(S105)についてさらに詳細に説明する。
【0115】
クライアント装置10から送信され、データサーバ装置1により受信された更新データが、スケジュールデータやアルバムデータなど、特殊な通信処理を含まない一般データであった場合(SA01でYes)、データサーバ装置1のクライアント記憶データ管理部2は、一般データの更新処理を行なう(SA02)。なお、本一般データの更新処理の詳細については後述する。
【0116】
該更新データがメールデータであった場合(SA01でNo,SA03でYes)、メールデータの更新処理を行なう(SA04)。メールデータの更新処理においては、更新データ中に含まれていた宛先情報より、メールデータを配布すべきクライアント装置10を一台または複数台特定する。それぞれのクライアント装置10のクライアントデータ記憶部12に対して新規メールデータとして該メールデータを保存するように、通信部4より更新データを送信する。また、メールデータを送信したクライアント装置10のユーザが所有するクライアント装置10が複数台存在した場合には、それらのクライアント装置10に対しても、該メールデータが送信済みメールとして登録されるように更新データを送信する(SA04)。なお、該メールデータの宛先として更新データを受信したクライアント装置10は、該データを新規メールとしてユーザへ通知する処理を行なう。
【0117】
次に、該更新データがチャットデータであった場合(SA01でNo,SA03でNo,SA05でYes)、チャットデータの更新処理を行なう。チャットデータの更新処理においては、更新データ中に含まれていたチャットメンバーの情報より、配布すべきクライアント装置10を一台または複数台特定する。それぞれのクライアント装置10のクライアントデータ記憶部12に対して新規チャットデータとして該チャットデータを保存するように、通信部4より更新データを送信する(SA06)。なお、該チャットデータを受信したクライアント装置10においては、該チャットデータをチャット画面に表示する処理を適宜行なう。
【0118】
該更新データがメールデータでもチャットデータでも無かった場合(SA01でNo,SA03でNo,SA05でNo)、該データについて定められた所定の処理を行なうものとする(SA07)。
【0119】
図7を参照し、上述のクライアント装置10から送信され、データサーバ装置1により受信された更新データが、一般データであった場合の一般データの更新処理(SA02)について、さらに詳細に説明する。
【0120】
データサーバ装置1のクライアント記憶データ管理部2は、該更新の発生した一般データが、該更新データを送信したクライアント装置10以外のクライアント装置10によって共有されるべきデータであるかどうかを判断する(SB01)。共有されるべき他のクライアント装置10が存在しない場合は(SB01でNo)、本処理においては何も実行しない。
【0121】
共有されるべき他のクライアント装置10が存在した場合(SB01でYes)、クライアント装置10が複数台あればそのうちの一台を、一台しか存在しなければ該クライアント装置10をそれぞれ選択する(SB02)。次に、選択した該クライアント装置10に対して、本データ更新の通知が必要であるかどうかの判断を行なう(SB03)。本判断は、次のようにして行なわれる。まず、該クライアント装置10のクライアントデータ記憶部12に、対応するクライアントデータがその時点において記憶されているかどうかを確認する。対応するクライアントデータが記憶されていなければ、原則として該クライアント装置10のクライアントデータの更新は必要ないと判断する。ただし、更新データに付与されている重要度が高い場合や、ユーザによる設定の場合にはこの限りではない。次に、該クライアント装置10のクライアントデータ記憶部12に、対応するクライアントデータが記憶されていた場合は、原則として該クライアント装置10のクライアントデータの更新が必要であると判断する。ただし、更新データに付与されている重要度が高い場合や、該クライアント装置10への通信コストが高い場合などはこの限りではない。なお、SB02におけるクライアント装置10の選択処理において、最後にサーバへの接続があったクライアント装置10を最初に選択するようにしてもよい。これにより、現在ユーザに使用されている可能性が高いクライアント装置10へ最も早く通知することが可能になり、利便性が向上する。
【0122】
通知の必要性の判断(SB03)を終え、通知の必要性がないと判断すると(SB03でNo)、共有すべきさらに他のクライアント装置10がないかどうかの確認処理(SB10)へ移る。通知の必要性があると判断すると(SB03でYes)、該クライアント装置10へ送信する該更新データについて加工の必要性があるかどうかの判断を行なう(SB04)。本判断は、次のようにして行なわれる。まず更新データの内容を表現するために必要となる能力が該クライアント装置10の表現能力を超えている場合、即ち、8bitカラーの表示しか行なえないクライアント装置10に対して24bitカラーの画像の更新通知である場合や、たとえば所定の値以上の大きなデータである場合には更新内容の概要のみの通知でよいようにユーザが設定していた場合などには、データ加工が必要と判断される。更新データ内容が、ユーザ設定、クライアント装置10の表現能力、通信路に問題がない場合には、データ加工は必要ないと判断する。データ加工が必要と判断した場合には(SB04でYes)、通知データの加工を行なった後(SB05)、該クライアント装置10への通信を開始し(SB06)、必要ないと判断した場合には(SB04でNo)、すぐ該クライアント装置10への通信を開始する(SB06)。
【0123】
該クライアント装置10への通信を開始し、通信路の確立に成功した場合には(SB07でYes)、該クライアント装置10へのデータの更新通知を実施し(SB08)、通信路の確立に失敗した場合には(SB07でNo)、該クライアント装置10に対する端末通信キューへ本更新通知を追加する処理(SB09)を行ない、共有すべきさらに他のクライアント装置10がないかどうかの確認処理(SB10)を行なう。本処理において共有すべき他のクライアント装置10が残っていた場合には(SB10でYes)、SB02に戻り、まだ更新処理の行なわれていないクライアント装置10の選択から、順次上述の処理を繰り返す。また、本処理において共有すべき他のクライアント装置10が残っていなかった場合には(SB10でNo)、データサーバ装置1は次の通信が行なわれるのを待つ処理(図5のS101)へ戻る。なお、本処理においては、端末データの更新の必要があれば、直ちにクライアント装置10との通信および端末データの更新を試みるようにしたが、もちろん、重要度が低い場合などは、直ちに通信を試みずに、端末通信キューへの追加を行なうのみにとどめるようにしてもよい。
【0124】
これらの通信処理においては、悪意を持ったユーザからの不正アクセス等を防止するため、暗号化処理や、端末認証手続きを行なうようにする。なお、以後のデータサーバ装置1とクライアント装置10の全ての通信において、秘匿性の求められる通信においては、適宜暗号化処理や、認証手続きを行なうものとする。本暗号化および認証手続きについては、公知の技術であるので、ここではその説明は繰返さない。
【0125】
図8を参照して、クライアント装置10の動作の説明を行なう。
クライアント装置10の制御部15は、データサーバ装置1よりネットワーク5および通信部11を経由してデータ更新要求を受信した場合には(S201でYes)、データサーバ装置1に起因するクライアント装置10のクライアントデータ更新処理(S202)を行なう。なお、本処理の詳細については後述する。
【0126】
次に、入力部14により検知されたユーザ操作により、クライアントデータの更新要求が発生した場合には(S201でNo,S203でYes)、クライアント装置10に起因したデータ更新処理を行なう(S204)。なお、本処理の詳細については後述する。
【0127】
次に、サーバによるデータ更新も、ユーザ操作によるデータ更新も行なわれず(S201でNo,S203でNo)、定期的、ここでは30分毎に訪れる通信路チェック時間となり、かつ、サーバ通信キューが存在した場合(S205でYes)、サーバへの接続を開始する(S206)。なお、通信路チェック時間ではない場合、または、通信路チェック時間でありかつサーバ通信キューが存在しない場合は(S205でNo)、S201の処理へ戻る。
【0128】
S206でサーバへの接続を開始し、通信路の確立に成功した場合(S207でYes)には、サーバ通信キューに蓄積されたデータのデータサーバ装置1への送信処理を行なう(S208)。S208の後、または、通信路の確立に失敗した場合には(S207でNo)、S201の処理へ戻る。
【0129】
図9を参照して、データサーバ装置1に起因するデータ更新処理(図8のS202)について説明する。
【0130】
データサーバ装置1よりネットワーク5および通信部11を介して伝達されたデータ更新要求に応じ、制御部15はクライアント装置10内のクライアントデータ記憶部12に記憶されている当該データの更新を行なう(S305)。なお、更新内容が、新データの追加であった場合には、新データの追加をクライアントデータ記憶部12に行ない、更新データの反映処理を行なう。なお、本処理の詳細については後述する。
【0131】
次に、該データの属性により、通知が必要であるかどうかを判断する(S306)。通知が必要である場合(S306でYes)、該データを利用するアプリケーションに対して更新の通知を行なう。アプリケーションが動作中でない場合は、必要に応じて該データを利用するアプリケーションや、更新通知用のアプリケーションを立ち上げてから通知を行なうようにしてもよい。また、同時に呼び出し音を鳴らす、アイコンを変更する、など、ユーザへの通知を行なうようにしてもよい(S307)。また、この通知をするに当たり、後述するデータの重要度やデータの種類に応じて、アイコンの変更の程度や通知音のある・なし、大きさなど、ユーザに注意を喚起するレベルを変化させてもよい。また、S306においてたとえば時刻表データのミスの訂正と言った特にユーザへの通知を必要としないような変更については、ユーザへの通知を行なわない。
【0132】
次に図10を参照して、クライアント装置10に起因するデータ更新処理(図8のS204)について説明する。
【0133】
制御部15は、入力部14により更新または新規入力されたデータに基づいて、クライアントデータ記憶部12の該当データの更新を行なうか、または、クライアントデータ記憶部12へのデータの新規追加を行なうかして、更新データの反映処理を行なう(S301)。なお、本処理の詳細については後述する。
【0134】
制御部15は、更新されたデータの属性を確認し(S302)、クライアント装置10固有で記憶すべきデータではなく、データサーバ装置1において管理されているサーバデータの更新が必要かどうかを判断する(S303)。本判断では、たとえばユーザの指定などによりクライアント装置10固有のデータであればサーバデータの更新が必要ないと判断するが、通常のユーザデータについてはサーバデータの更新を行なうものとする。
【0135】
サーバデータの更新が必要である場合(S303でYes)、通信部11およびネットワーク5を介してデータサーバ装置1において管理されているサーバデータの更新が行なわる(S304)。その後、図8のS201の処理へ戻る。サーバデータの更新が必要でなかった場合には(S303でNo)、S201の処理へ戻る。
【0136】
図11を参照して、クライアント装置10からのデータサーバ装置1のサーバデータを更新する処理(図10のS304)について説明する。
【0137】
サーバデータの更新が直ちに必要かどうかを、データの重要度、種類などにより所定のアルゴリズムにより判断する(SC01)。
【0138】
直ちにサーバデータの更新が必要であると判断すると(SC01でYes)、クライアント装置10の制御部15は通信部11を介してデータサーバ装置1への通信の開始を行なう(SC02)。
【0139】
通信路の確立に成功した場合(SC03でYes)、制御部15はデータサーバ装置1のサーバデータ記憶部3の対応するデータの更新を行なうよう通知を行なう(SC04)。
【0140】
直ちにサーバデータの更新が必要でないと判断された場合(SC01でNo)、または、通信路の確立に失敗した場合(SC03でNo)、制御部15はサーバ通信キューへ、本更新処理要求を追加する(SC05)。なお、本サーバ通信キューは通常、上述のS208においていずれ処理される。この処理により、たとえば直ちにサーバデータの更新が必要でないようなデータの更新の際には、連続して複数回の編集を行なったとしても、その都度サーバデータの更新が行なわれてたとえば通信料の課金が増大するといった問題が回避できる。
【0141】
また、これらの通信において、悪意を持ったユーザからの不正アクセス等を防止するため、暗号化処理や、ユーザ認証手続きを行なうようにする。
【0142】
次に、本実施例における実際の動作の様子について、データの状態や手順を示して詳細に説明する。また、以降クライアント装置のことを単に「端末」と記すことがある。
【0143】
図12に、本実施例におけるデータサーバ装置1のサーバデータ記憶部3において記憶されているサーバデータと複数のクライアント装置10のクライアントデータ記憶部12において記憶されているクライアントデータとの関係の一例を概念的に示す。
【0144】
本実施例において、本システムの利用者は「鈴木太郎」、「鈴木花子」および「田中次郎」の3名であるものとする。「鈴木太郎」と「鈴木花子」とは婚姻関係にあり、両者はデータサーバ装置1において管理されている、「鈴木家」と言うグループ220に所属するものとする。「鈴木太郎」と、「田中次郎」との両名は、同様にデータサーバ装置1において管理されているスキー同好会グループ221に所属しているものとする。
【0145】
また、「鈴木太郎」はクライアント装置である、端末A206および端末B207を所持し、「鈴木花子」は端末C208および端末D209を所持し、「田中次郎」は端末E210および端末F211を所持しているものとする。
【0146】
この場合、データサーバ装置1のサーバデータ記憶部3においては、データ集合として、鈴木花子個人データ201、鈴木太郎個人データ202、鈴木家データ203、スキー同好会グループデータ204および田中次郎個人データ205のサーバデータが管理されているものとする。図12において、データサーバ装置1内のサーバデータのグループとそれぞれのクライアント装置10内のクライアントデータとは、直線により結ばれたような対応関係になっているものとする。
【0147】
たとえば、「鈴木太郎」の所持している端末A206のクライアントデータ記憶部12には、データサーバ装置1にサーバデータとして管理されている、鈴木太郎個人データ202、鈴木家データ203およびスキー同好会グループデータ204の、それぞれのサーバデータの一部が記憶されているものとする。
【0148】
図13に、データサーバ装置1のサーバデータ記憶部3において記憶されているサーバデータのデータ記憶形式の一例を示す。なお、この例は図12に示した、各ユーザ、端末、グループの関係にしたがっている。
【0149】
本実施例では、各クライアント装置10において、個人の予定やグループの予定を管理することができるスケジュールアプリケーション、知人友人の電話番号や住所を管理することができる住所録アプリケーション、電子メールの送受信を行ない、受信メールや送信メールを管理することができるメールアプリケーション、写真データや動画データを管理することができるアルバムアプリケーション、文字ベースなどでリアルタイムに画面上で所定のメンバー間での会話を実現することができるチャットアプリケーション、および天気予報やニュース速報などを適宜入手し、管理することができるニュースアプリケーションなどが実装されているものとする。各クライアント装置10から参照されるサーバデータは、図13に示したような形式にて記憶されているものとする。
【0150】
また、図13におけるそれぞれの行のデータ単位を以降「データエントリ」と表現する。各データエントリには、各データエントリのデータ内容301、それぞれのデータエントリを扱うアプリケーションを示すアプリケーション属性302、それぞれのデータエントリの所属するグループを示す所属グループ属性303、それぞれのデータエントリを使用する端末を示す使用端末属性304、それぞれのデータエントリを現在記憶中である端末を示す記憶中端末属性305、およびそれぞれのデータエントリの重要度を示す重要度属性306などの属性があるものとする。データエントリは、それぞれのデータエントリの属性に基づいて、たとえば同じ属性の値を持つデータエントリは、同じカテゴリに分類される。所属グループ属性303については、後述の図15のテーブルにより必ずしも各データの属性として付与される必要はないと考えられるが、本実施例では分かりやすいよう付与している。使用端末属性304については、後述の図14及び図15のテーブルにより導き出すことができるため、必ずしも各データの属性として付与される必要はないと考えられるが、本実施例では分かりやすいよう付与している。
【0151】
図14を参照して、データサーバ装置1のクライアント記憶データ管理部2において管理されている、各端末の属性を記憶するデータ形式の一例を示す。
【0152】
データサーバ装置1のクライアント記憶データ管理部2は、図14に示すように、それぞれの端末毎に、端末を所持しているユーザを示すユーザ属性401、端末がPC(Personal Computer)なのか、PDAなのか、携帯電話なのかなど、どのような種別であるかを示す種別属性402、ユーザは端末をどういった用途で所持しているのかを示す用途属性403、音声出力の可否や、映像表示能力など、端末がどのような表現能力を持っているかを示す表現能力属性404、および通信路として無線の通信路を利用しているのか、有線の通信路を利用しているのか、通信速度は高速なのか低速なのか、また、通信路は従量課金となっているのか、固定課金となっているのかを示す、通信路属性405などの属性を管理するテーブルを記憶している。
【0153】
本テーブルにより、本実施例では、端末Aは、「鈴木太郎」に所有されている従量課金の高速無線通信機能を持ったパーソナル用途の携帯電話であり、表現能力としては、音声出力が可能、VGA(Video Graphics Array)の表示能力を持つことが分かる。同様に、端末Bは、「鈴木太郎」に所有されている従量課金の低速無線通信機能を持ったビジネス用途のPDAであり、表現能力としては、音声出力が不可、VGAの表示能力を持つことが分かる。端末Cは、「鈴木花子」に所有されている固定課金の高速有線通信機能を持ったパーソナル用途のデスクトップPCであり、表現能力としては、音声出力が可能、SXGA(SupereXtended Graphics Array)の表示能力を持つことが分かる。端末Dは、「鈴木花子」に所有されている従量課金の高速無線通信機能を持ったパーソナル用途の携帯電話であり、表現能力としては、音声出力が可能、テキストの表示のみが可能な表示能力を持つことが分かる。端末Eは、「田中次郎」に所有されている従量課金の高速無線通信機能を持ったパーソナル用途の携帯電話であり、音声出力が可能、VGAの表示能力を持つことが分かる。端末Fは、「田中次郎」に所有されている従量課金の低速無線通信機能を持ったビジネス用途のPDAであり、音声出力が可能、VGAの表示能力を持つことが分かる。
【0154】
図15に、データサーバ装置1のサーバデータ記憶部3において記憶されているグループデータのデータ記憶形式の一例を示す。なお、この例は図12に示した、各ユーザ、端末、グループの関係にしたがっている。図15に示すように、それぞれのグループ毎に、グループに属しているユーザを示すユーザ属性406を対応づけるテーブルを記憶している。
【0155】
本テーブルにより、“鈴木家”のグループには、「鈴木太郎」および「鈴木花子」が属していることが分かる。同様に、“スキー同好会”のグループには、「鈴木太郎」および「田中次郎」が、“鈴木太郎個人”には、「鈴木太郎」が、“鈴木花子個人”には「鈴木花子」が、“田中次郎個人”には「田中次郎」が属していることが分かるようになっている。
【0156】
図14および図15に示したテーブルは、各データの所属グループから、それぞれのデータがどの端末からアクセスされるか、すなわち、それぞれのデータエントリを所有する端末を示す使用端末属性(図13の304)を判断することにも使用される。
【0157】
図16にクライアント装置10より、データサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータを更新するために送信される、サーバデータ更新通知のフォーマットを示す。
【0158】
上述の図11のSC04におけるデータサーバ装置1への更新通知処理においては、本フォーマットのデータが使用されるものとする。
【0159】
本フォーマットには、送信元のクライアント装置を識別するための端末ID(IDentification)D01、データサイズD02、データ内容D03、データを利用するアプリケーションD04、データの所属する所属グループD05、データの重要度D06、該当データのデータサーバ装置1における最終更新日時D07(すなわち、該当データをデータサーバ装置1からクライアント装置10へ最後に取り込んだ時点、または、該当データをクライアント装置10からデータサーバ装置1へ最後に登録した時点での、データサーバ装置1における更新日時)、該当データのクライアント装置10における最終更新日時D08、および、該データがデータサーバ装置1のサーバデータ記憶部3への新規登録なのか、それとも、すでにサーバデータ記憶部3に記憶されているデータの更新なのかを示す、登録種別D09を含む。
【0160】
なお、フォーマットには、ここに記載された情報以外の情報を適宜含むようにしてもよく、また、逆にここに記載されたすべてのフィールドが必須であるとは限らない。
【0161】
データサーバ装置1より、クライアント装置10へのデータ更新通知についてもほぼ同様のデータフォーマットを用いることができる。
【0162】
次に、本システムにおける各サービスの動作を説明する。
図17を参照して、住所録データの「田中次郎」のデータエントリが更新された場合についての説明を行なう。
【0163】
まず、「田中次郎」がパーソナル用途で使用している携帯電話のクライアント装置10である端末Eにおいて、自分の住所データの更新を行なったとする。端末Eは、まず、該クライアント装置10内のクライアントデータ記憶部12に記憶されているデータサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータのコピーである「田中次郎」の住所データが収められたエントリを、「田中次郎」の操作内容にしたがって変更する。次に、端末Eの制御部15は、通信部11により、ネットワーク5を介し、データサーバ装置1へ接続し、データサーバ装置1のサーバデータ記憶部3に記憶されている「田中次郎」の住所のサーバデータの更新要求を行なう(S501)。
【0164】
端末Eより、「田中次郎」の住所データの更新要求を受けたデータサーバ装置1のクライアント記憶データ管理部2は、サーバデータ記憶部3に記憶されているサーバデータの「田中次郎」の住所データのエントリの更新を行なうとともに、図13に示されたテーブルより、該田中次郎の住所録のデータエントリを使用する端末は、A,B,E,Fの4台、該データエントリを記憶中の端末は、端末A,E,Fの3台であることを判断し、端末Eからの更新要求であるため、データ更新を行なうべき端末は、A,Fの2台であると判断する。
【0165】
したがって、データサーバ装置1のクライアント記憶データ管理部2は、通信部4により、ネットワーク5を介して、端末Aおよび端末Fのクライアントデータ記憶部12に記憶されている、「田中次郎」の住所録のデータエントリを更新する旨の通信を行なう(S502,S503)。これにより、端末Aおよび端末Fにおいては、更新された「田中次郎」の住所録データが参照可能となる。また、端末Bについては、該データエントリを使用する端末であるが、該データエントリを記憶中でないために、データ更新の手続きは行なわない(S504)。
【0166】
この後、端末Bにおいて、住所録アプリケーションが起動され、「田中次郎」の住所録へのアクセスがあると、端末Bの制御部15は、クライアントデータ記憶部12に「田中次郎」の住所録データがないため、通信部11により、ネットワーク5を介して、データサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータを要求する(S505)。端末Bより、「田中次郎」の住所録のサーバデータの要求を受けたデータサーバ装置1は、サーバデータ記憶部3に記憶されている更新済みの「田中次郎」の住所録データを読出し、通信部4により、ネットワーク5を介して、端末Bへ該住所録データを送付する(S506)。
【0167】
さらに、「田中次郎」が2度目の住所データの更新を端末Eにおいて行なった場合、上述同様の処理により、データサーバ装置1のサーバデータの更新要求を行なう(S507)。データの更新要求を受けたデータサーバ装置1は、該データエントリを記憶中の端末は、端末A,B,E,Fの4台であることを判断し、端末Eからの更新要求であるため、データ更新を行なうべき端末は、A,B,Fの3台であると判断する。したがって、データサーバ装置1のクライアント記憶データ管理部2は、通信部4により、ネットワーク5を介して、端末A,B,Fのクライアントデータ記憶部12に記憶されている、「田中次郎」の住所録のデータエントリを更新する旨の通信を行なう(S508)。
【0168】
以上の手続きにより、端末Bにおける「田中次郎」の住所録データの更新がデータサーバ装置1のサーバデータ記憶部3に反映された後は、他の「田中次郎」の住所録データを参照できるどの端末においても、正しく更新されたデータを共有することが可能となる。
【0169】
図18〜図23を参照して、図17に示した本システムにおけるデータの更新処理におけるデータサーバ装置1におけるデータの変化について説明する。
【0170】
図18は、図17における「田中次郎」の住所録データ変更処理を開始する前のデータサーバ装置1におけるサーバデータ状態の例である。この時点では端末A,B,Fの3台に、データサーバ装置1に「田中次郎」の第1回目の変更処理の前の時点での住所データが記憶されており、端末Bについては、「田中次郎」のデータを長らく使用していなかったため、端末Bの記憶装置からは削除されていたものとする。
【0171】
サーバデータは図18に示したように、データ内容421とともに、それぞれの端末422について、その端末において該データを取り扱うのに使用するアプリケーションを示すアプリケーション属性423、その端末における該データの重要度を示す重要度属性424、その端末のクライアントデータ記憶部12に記憶されている対応データが該サーバデータ421と同期済みであるかどうかを示す同期属性425、およびその端末が現在該データを記憶中であるかどうかを示す記憶中属性426を含む。
【0172】
上述のように、図18では、端末A,E,Fにおいては、記憶中属性426が「Yes」になっており、また、同期属性425も「済」になっている。なお、該データを記憶中でない端末Bについては、記憶中属性426が「No」となり、記憶中でないため、同期属性425はなし(「−」)となっている。
【0173】
図19に「田中次郎」が端末Eにおいて住所録データ変更処理を行なったことにより、端末Eよりデータサーバ装置1へ更新通知があり(S501)、データサーバ装置1のサーバデータ記憶部3に記憶されている田中次郎住所録データのサーバデータが更新された直後のサーバデータの状態を示す。
【0174】
本時点において、端末Eと、データサーバ装置1のサーバデータ記憶部3に記憶された「田中次郎」の住所録データは一致しているため、端末Eに関する記憶中属性は「Yes」であり、同期属性は「済」となる。記憶中属性が「Yes」であるそれ以外の端末Aおよび端末Fに関しては、同期属性は「未」となるため、図19に示したような状態となる。
【0175】
次に、図20に「田中次郎」の1回目の住所変更処理がデータサーバ装置1のサーバデータ記憶部3に反映された図19の時点から、たとえば5分経過した時点での、データサーバ装置1のサーバデータの状態を示す。
【0176】
本時点においては、図19の時点で同期属性が「未」であった端末Aおよび端末Fに対して、データ更新通知処理(S503,S504)が終了しているため、これらの同期属性が「済」に変更され、図20に示したような状態となる。
【0177】
次に、図21に「田中次郎」の1回目の住所変更処理がデータサーバ装置1のサーバデータ記憶部3に反映された図19の時点から、たとえば5時間経過した時点でのデータサーバ装置1のサーバデータの状態を示す。
【0178】
本時点においては、図20の時点の後、端末Bにおいて住所録アプリケーションが起動され、「田中次郎」の住所録データへのアクセスがあったため、端末Bよりデータサーバ装置1へデータの要求が発生し(S505)、要求に応じてデータサーバ装置1より「田中次郎」の住所録データが端末Bへ転送されている(S506)。
【0179】
本時点においては、データサーバ装置のサーバデータは、図20の時点で記憶中属性が「No」であった端末Bの記憶中属性が「Yes」になるとともに、同期属性が「済」に変更され、図21に示したような状態となる。
【0180】
次に、図22に「田中次郎」が端末Eにおいて2回目の住所録データ変更処理を行なったことにより、端末Eよりデータサーバ装置1へ更新通知があり(S507)、データサーバ装置1のサーバデータ記憶部3に記憶されている田中次郎住所録データのサーバデータが再度更新された直後のサーバデータの状態を示す。
【0181】
本時点において、図19と同様、端末Eと、データサーバ装置1のサーバデータ記憶部3に記憶された「田中次郎」の住所録データとは一致しているため、端末Eに関する記憶中属性は「Yes」であり、同期属性は「済」となる。記憶中属性が「Yes」であるそれ以外の端末A、端末B、および端末Fに関しては、同期属性は「未」となるため、図22に示したような状態となる。
【0182】
次に、図23に「田中次郎」の2回目の住所変更処理がデータサーバ装置1のサーバデータ記憶部3に反映された図22の時点から、たとえば5分経過した時点での、データサーバ装置1のサーバデータの状態を示す。
【0183】
本時点においては、図22の時点で同期属性が「未」であった端末A、端末B、および端末Fに対して、データ更新通知処理(S508)が終了している。このため、これらの同期属性が「済」に変更され、図23に示したような状態となる。
【0184】
図24を参照して、本システムにおいてアルバムの新規入力を行なった場合の処理の流れを示す。
【0185】
まず、「鈴木太郎」に所有されているパーソナル用途の携帯電話である端末Aにより、「鈴木家」の家族旅行の写真が、鈴木家データ203にアルバムとして新規入力された場合の説明を行なう。
【0186】
所属グループとして“鈴木家”、アプリケーションとして“アルバム”という属性が付加された鈴木家旅行アルバムが端末Aにおいて新規入力されると、端末Aの制御部15は、入力されたアルバムデータをクライアントデータ記憶部12に記憶する。それとともに、制御部15は、通信部11により、ネットワーク5を介して、データサーバ装置1へ接続し、データサーバ装置1中のサーバデータ記憶部3に、入力された新規アルバムデータをサーバデータとして新規登録する(S511)。
【0187】
端末Aへのアルバムデータは、たとえば、デジタルカメラより、赤外線や近距離無線通信により端末Aへ伝送することにより得られたものであってもよく、または、端末Aにデジタルカメラの機能が内蔵されており、該カメラ機能により撮影されたものであってもよい。
【0188】
新規アルバムデータの登録を受けたデータサーバ装置1のクライアント記憶データ管理部2は、該新規アルバムデータを転送すべき端末があるかどうかを次のようにして判断する。
【0189】
まず、該アルバムデータの属性より、所属グループが「鈴木家」であることを判断し、次に図15に示したグループデータのテーブルより、「鈴木家」には、「鈴木太郎」および「鈴木花子」が属していることを判断する。次に図14に示した各端末の属性のテーブルより、「鈴木太郎」および「鈴木花子」の所有する端末が、端末A,B,CおよびDの4台であることを判断する。
【0190】
また、端末Aに関しては、新規アルバムデータの作成元であることが分かっている。このため、端末Aに対して新規アルバムデータを転送する必要はないと判断される。
【0191】
端末Cに関しては、デスクトップPCであることが判断でき、固定課金の高速有線接続で記憶領域がふんだんにあることより、転送を試みるが、このとき、端末Cの電源が切られている、または、通信路が障害により不通となっており(S512)、端末Cのクライアントデータの更新は断念する(S513)。
【0192】
端末Dに関しては、図14に示したテーブルより、テキスト表示のみの表示能力しか持たないことが分かっている。このため、写真データである該新規アルバムデータを転送する必要はないと判断する(S514)。または、端末Dに対して新規アルバムデータがデータサーバ装置1上に登録された旨の通知を行なってもよい。
【0193】
端末Bに関しては、図14より、PDAであることが分かり、また、低速の無線回線が従量課金となっている。このことより、該新規アルバムデータそのもの転送は行なわず、新規アルバムデータがデータサーバ装置1のサーバデータ記憶部のサーバデータに追加されたことの通知のみを行なう(S515)。
【0194】
「鈴木花子」が端末Cの電源を入れる、または、ネットワーク障害が解消し通信路が開通すると、端末Cの制御部15は、通信部11により、ネットワーク5を介してデータサーバ装置1へ、端末装置Cのクライアントデータ記憶部12内に記憶されているクライアントデータに更新が必要なデータが存在するか否かを問い合わせる(S516)。データサーバ装置1は、該問い合わせに応じ、該新規アルバムデータの転送を行なう(S517)。新規アルバムデータの転送を受けた端末Cの制御部15は、該新規アルバムデータをクライアントデータ記憶部12に記憶させる。
【0195】
なお、ここでは、電源投入後に端末Cの電源投入後に更新が必要なデータの存在の有無の問い合わせを行なうようにしたが、逆に、端末Cからは問い合わせを行なわず、データサーバ装置1より定期的に更新処理を試みるようにしてもよい。この場合、たとえば更新されたデータが重要度の高いデータであれば、定期的に更新処理を試みる周期を短くするなどの処理も有用である。
【0196】
また、ここでは、端末Bは従量課金の無線回線であるため、新規データ追加の通知のみを行なうようになっているが、これもたとえば重要度が高く設定されたアルバムデータであれば画像データの転送を行なうようにしたり、重要度に応じて更新処理を変更したりすることも有用である。
【0197】
次に「鈴木太郎」が端末Bにおいて、アルバムデータへの参照を要求すると(S518)、データサーバ装置1のクライアント記憶データ管理部2は、通信部4により、ネットワーク5を介して、クライアント装置10の一台である、端末装置Bへ、該新規アルバムデータの転送を行なう(S519)。
【0198】
以上の手続きにより、一台のクライアント装置10において追加されたグループデータを、自動的にそのデータを共有すべきその他のクライアント装置10のクライアントデータ記憶部12に配布することが実現される。
【0199】
図25を参照して、本システムにおいてメール送付を行なった場合の処理の流れについて説明する。ここでは、「鈴木太郎」に所有されているパーソナル用途の携帯電話である端末Aにより、「鈴木家」および「スキー同好会」へ新規メールの送付を行なった場合について説明する。
【0200】
端末Aにおいて、「鈴木家」および「スキー同好会」へ新規メールの送付を行なうと、端末Aの制御部15は、まず、端末Aのクライアントデータ記憶部12に、メールデータとして、該新規メールを記憶するとともに、通信部11により、ネットワーク5を介して、データサーバ装置1へ接続し、データサーバ装置1中のサーバデータ記憶部3に、入力された新規メールデータをサーバデータとして新規登録する(S520)。
【0201】
新規メールデータの登録を受けたデータサーバ装置1のクライアント記憶データ管理部2は、登録されたメールデータの宛先フィールドにより、転送すべき端末の特定を行なう。
【0202】
ここでは、宛先フィールドに、「鈴木花子」および「スキー同好会」が指定されているため、データサーバ装置1のクライアント記憶データ管理部2は、「鈴木花子」および「スキー同好会」のメンバーの所有するすべての端末のクライアントデータ記憶部12に新規メールデータを送付する。該当する端末は、図14および図15のテーブルより、端末A、B、C、D、EおよびFの6台である。端末Aに関しては、該新規メールの送信元であるため、データサーバ装置1のクライアント記憶データ管理部2は、端末B、C、D、EおよびFの5台のクライアント装置10を該新規メールの送付先として判断する。クライアント記憶データ管理部2は、通信部4により、ネットワーク5を介して、端末B、C、D、EおよびFのそれぞれの端末へ接続し、それぞれの端末のクライアントデータ記憶部12に登録するための該新規メールデータを転送する(S521)。
【0203】
該新規メールデータをクライアントデータ記憶部12に登録した各クライアント装置10の制御部15は、新規登録されたデータのアプリケーション属性がメールであることより、メール用のユーザインターフェースにより新規メールが着信したことの表示を行なう。
【0204】
端末Bに関しては、同じ「鈴木太郎」の保有する端末であるため、送信済みメールとしてクライアントデータ記憶部12に登録すべく、該新規メールデータを転送する(S522)。
【0205】
「鈴木花子」の所有する端末Cおいて、該新規メールの開封処理が行なわれると、端末Cの制御部15は、クライアントデータ記憶部12の該新規メールデータへの読出しアクセスの検出、または、メールアプリケーションからの通知により、該新規メールの開封処理を認識し、データサーバ装置1へ、該新規メールデータの開封処理の通知を行なう(S523)。端末Cにおける該新規メールデータの開封処理の通知を受けたデータサーバ装置1のクライアント記憶データ管理部2は、図14のテーブルにより、同じユーザに所有される他の端末が端末Dであることを判断する。端末Cおよび端末Dのユーザは同一人物(鈴木花子)である。このため、本実施例では、データサーバ装置1のクライアント記憶データ管理部2は、通信部4によりネットワーク5を介し、端末Dに対して、既読通知を試みる(S524)。このとき端末Dはビルの中など、通信不可能な状況にあったとする(S525)。
【0206】
端末Dが、屋外へでるなどして、通信可能な状態となると、端末Dの制御部15は、通信部11により、ネットワーク5を介して、データサーバ装置1へ接続し、サーバデータの更新がないかどうかを確認する(S526)。この端末Dからの更新データの確認に応じて、データサーバ装置1は、端末Dへ該新規メールの既読通知を行なう(S527)。
【0207】
なお、ここでは、通信可能な状態となると端末Dよりデータサーバ装置1へサーバデータの更新の有無を問い合わせるようにしたが、逆に、端末Dからは問い合わせを行なわず、データサーバ装置1より、定期的にデータ更新の通知を試みるようにしてもよい。
【0208】
データサーバ装置1より、既読通知を受け取った端末Dは、該新規メールの属性を既読に変更する。
【0209】
以上の処理により、それぞれのクライアント装置10でのメールアプリケーションが、メールデータをそれぞれのクライアント装置10のクライアントデータ記憶部12に対して所定の属性を付加して記憶することにより、メールシステムを実現することが可能となる。
【0210】
また、端末Cにて一度読んだメールが、再度端末Dにおいて新規メールとして取り扱われてしまい、「鈴木花子」が同じメールを2度新規メールとして読まされてしまうと言う問題の発生を回避できる。
【0211】
なお、上述のメールの既読、未読などの属性は、データサーバ装置1のサーバデータ記憶部3におけるサーバデータの該メールエントリに対し、複数のユーザ毎、端末毎に属性を設定し、その属性を、各通信において各端末へ反映するようにしてもよい。または、各端末毎に、サーバデータにおける該メールエントリをコピーし、それぞれの属性を管理するようにしてもよい。
【0212】
図26〜図31を参照して、本メール処理におけるデータサーバ装置1のサーバデータ記憶部3に記憶されている該メールデータに対応するサーバデータの遷移の様子を時間順に説明する。
【0213】
図26は、端末Aにおいて、新規メールを作成している途中での状態を示したものである。作成中のメール451はメールアプリケーションにおいてサーバデータ記憶部3内の下書きフォルダに保存されている。このため、下書きフォルダというフォルダ属性453が付与されている。また、ここでは、未読/既読属性454については、作成中の下書き状態のメールデータには「未読」という属性が付与されているものとする。また、ここではユーザにより本メールの重要度455は「4」という値に設定されているものとする。これらの属性が、それぞれの端末452毎に同期属性456およびそれぞれの端末に該メールデータが記憶中かどうかを示す記憶情報457とともに記憶されている。
【0214】
作成中のメールデータは、同じユーザ(鈴木太郎)が記憶する端末Bからも共有される。このため、端末Bについても同様の情報が管理される。ここでは、メールデータの作成中においては、端末Bのクライアントデータ記憶部12への同期はしない。このため、同期情報は、端末Aに関しては同期済みであるのに対し、端末Bに関しては未同期となっている。もちろん、この状態で端末Bより続きの編集をした場合には、端末Bのクライアントデータ記憶部12に作成途中の該メールデータを記憶することとなる。
【0215】
図27は、新規メールの執筆を完了し、新規メールの送信を行なっている途中の状態を示す。本時点においては、メールの執筆者は該メールを読んでいる。このため、メールの執筆者(鈴木太郎)の所有する端末Aにおいては、未読/既読属性は「既読」となっており、その他の端末C、D、EおよびFにおいては、いずれも開封処理をしていないため「未読」となっている。また、本時点においては、本メールデータを端末Dおよび端末Eのクライアントデータ記憶部12で同期済みであり、端末Cおよび端末Fのクライアントデータ記憶部12では、まだ同期処理が完了していない。また、端末Aに関しては、フォルダ属性が「送信中」となっている。端末Bは、送信中においては、本データの同期処理を行なわないものとする。このため、「未読」の属性が付与されている。
【0216】
図28は、新規メールの全ての配布先端末への同期が完了した時点での状態を示す。本時点において、メール発信者(鈴木太郎)の端末Aおよび端末Bにおいては、「送信済み」のフォルダ属性が付与され、メールを執筆した本人なので「既読」の属性が付与されている。また、本時点において残りの端末については、該メールを開封したユーザがいないものとする。このため、すべて未読の属性が付与されている。
【0217】
図29は、端末Cにおいて、本メールの開封処理が行なわれ、端末Cより本メールのデータ更新通知があった直後の状態を示す。
【0218】
本時点では、端末Cからの更新通知に応じて、端末Cの未読/既読属性を「既読」にするとともに、端末Dにおける未読/既読属性も同時に「既読」に変更する。また、端末Dに対する未読/既読属性の同期は本時点では完了していない。
【0219】
次に図30に、図29の時点からしばらく後の時点の状態を示す。本時点では、端末Dにおける未読/既読属性の同期が完了している。
【0220】
さらに図31に、図30の時点から数日経過した時点での状態を示す。本時点では、端末Dおよび端末Fにおいて、該メールの情報がしばらく使用されず、また、他のデータをデータサーバ装置1よりダウンロードするために、該メール情報がクライアントデータ記憶部12より削除されている状態を示す。
【0221】
以上の処理により、各クライアント装置10のメールアプリケーションは、メールデータを作成することにより、それぞれのクライアントデータ記憶部12に対してメール送信が可能となる。
【0222】
なお、上述の処理では、他の上記クライアント装置に対してのみメール送信が可能となるが、たとえば、メールの宛先に従来のインターネットメールのアドレスが指定されていた場合には、データサーバ装置1において、メールデータのToフィールドの宛先データを用い、SMTP(Simple Mail Transfer Protocol)に従い、従来のインターネットメールと同様にメールデータを送出するようにしてもよい。このようにすることにより、従来のインターネットメールとの互換性を保つことも容易である。
【0223】
図32を参照して、本システムにおいてチャットを行なった場合の処理の流れについて説明する。ここでは、まず、「鈴木太郎」が端末Aより「田中次郎」に対してチャットを開始し、その後、同じく「鈴木太郎」が「鈴木花子」をチャット対象に追加した場合の説明を行なう。
【0224】
「鈴木太郎」が端末Aにおいてチャットアプリケーションを用いて、「田中次郎」に対してチャットを開始する。チャットアプリケーションは、端末Aの制御部15において実行されており、入力部14より、「田中次郎」に対するチャットの開始を行なうような操作が検出されると、クライアントデータ記憶部12にチャットデータとしてチャット内容のファイルを作成、保存する。このとき、本チャットデータは、「鈴木太郎」から「田中次郎」に対してのものであるため、データの所属グループに属する人物は、「田中次郎」および「鈴木太郎」の2名となる。
【0225】
端末装置Cの制御部15は、クライアントデータ記憶部12に新しく作成されたデータのアプリケーション属性が、チャットであることにより、すぐに通信部11より、ネットワーク5を介して、データサーバ装置1へチャットデータを通知する(S530)。
【0226】
通知を受けたデータサーバ装置1のクライアント記憶データ管理部2は、サーバデータ記憶部3に、受信したチャットデータを記憶する。また、本データのアプリケーション属性が「チャット」であり、所属グループに属する人物が「鈴木太郎」および「田中次郎」であり、「鈴木太郎」より受信されたデータである。このため、鈴木太郎以外、すなわち、「田中次郎」の所持する端末へ、即時チャットデータの反映を試みる。この時、図14のテーブルより、「田中次郎」の記憶する端末は、端末Eおよび端末Fの2台であるが、端末Fはビジネス用途の端末であるため、趣味仲間の「鈴木太郎」からのチャットデータは、パーソナル用途の携帯電話である端末Eに対してのみ通知を行なう(S531)。
【0227】
データサーバ装置1より、本チャットデータの通知を受けた端末Eの制御部15は、チャットデータをクライアントデータ記憶部12に記憶する。それとともに、本データのアプリケーション属性が、チャットであるため、チャットプログラムを起動するか、または、あらかじめプロセスとして実行されているチャットアプリケーションに新規チャットデータ受信の通知を行なう。通知を受けたチャットアプリケーションは、出力部13にチャットのウィンドウを表示するか、または画面そのものを切り替えるなどし、受信したチャットデータを出力する。なお、このとき、ユーザに対して音により通知するようにしてもよい。
【0228】
次に、「田中次郎」が、鈴木次郎からのチャットメッセージに気が付き、端末Eの出力部13に表示されているメッセージに対して書込を行なうと、チャットアプリケーションは、端末Eのクライアントデータ記憶部12のチャットデータを更新する。端末Eの制御部15は、クライアントデータ記憶部12のチャットデータが更新されると、そのアプリケーション属性がチャットであるため、即時にデータサーバ装置1に該データの更新を通信部11によりネットワーク5を介して通知する(S532)。
【0229】
通知を受けたデータサーバ装置1のクライアント記憶データ管理部2は、サーバデータ記憶部3のチャットデータを受信内容に基づき更新する。また、本データのアプリケーション属性が「チャット」であり、所属グループに属する人物が「鈴木太郎」および「田中次郎」であり、チャットデータが「田中次郎」より受信されたデータであるため、田中次郎以外、すなわち、「鈴木太郎」の所持する端末へ、即時チャットデータの反映を試みる。この時、図14のテーブルより、「鈴木太郎」の記憶する端末は、端末Aおよび端末Bの2台であるが、最初の「鈴木太郎」からのチャットデータは、端末Aより通知されたため、端末Aに対して、該更新通知を行なう(S533)。
【0230】
以後は、同様の処理が、それぞの端末の制御部15において実行される。
また、S533のメッセージに対して、「鈴木太郎」が端末Aの入力部14により、チャットメンバーに「鈴木花子」を追加する操作を行なったとする。この場合、端末Aの制御部15は、該チャットデータの所属グループ属性を、「鈴木太郎」、「田中次郎」および「鈴木花子」の3名に変更して、データサーバ装置1へ通知する(S534)。
【0231】
端末Aからのチャットデータにおいて、チャットデータの所属グループ属性が変更され、所属グループに「鈴木花子」が追加されたため、データサーバ装置1のクライアント記憶データ管理部2は、該チャットデータを、「田中次郎」の端末Eに通知する(S535)のみならず、図14のテーブルより「鈴木花子」の記憶する端末である、端末Cおよび端末Dに対して、該チャットデータの更新の通知を行なう(S536,537)。端末Cおよび端末Dにおいては、該チャットデータは、クライアントデータ記憶部12に記憶されていないため、新規データとして登録され、上述と同様の処理が端末Cおよび端末Dにおいてなされる。
【0232】
該チャットデータへの応答が、「鈴木花子」により端末Cおいて行なわれると、端末Cの制御部15は、通信部11によりネットワーク5を介してデータサーバ装置1に該チャットデータの更新通知を行なう(S538)。データサーバ装置1のクライアント記憶データ管理部2は、本更新通知が、端末Cより送付されているため、本チャットにおける「鈴木花子」へのチャットデータは端末Cに通知することとし、端末Cより受信したチャットデータを、「鈴木花子」以外のメンバーの端末である、端末Aおよび端末Eに対して、通知を行なう(S539,S540)。
【0233】
したがって、このチャットデータへの次の更新通知が端末Eより行なわれると(S541)、データサーバ装置1のクライアント記憶データ管理部2は、該更新通知を端末Aおよび端末Cに対して行なう(S542,S543)。
【0234】
以上の処理により、各クライアント装置10のチャットアプリケーションが、それぞれのクライアントデータ記憶部12に対してチャットデータを作成、更新し、それにより、チャットシステムが全体として実現される。
【0235】
図33を参照して、複数のユーザで共通のスケジュールデータを入力した場合および端末固有のスケジュールを入力した場合の処理について説明する。
【0236】
まず、「田中次郎」の保有する端末Eより、所属グループ属性が「スキー同好会」のスケジュールデータの登録があった場合の処理を説明する。
【0237】
「田中次郎」が端末Eの入力部14を操作し、「スキー同好会」のスキーツアーのスケジュールを、所属グループ属性を「スキー同好会」として登録する。すると、端末Eの制御部15は、クライアントデータ記憶部12に該スケジュールデータの登録を行なうとともに、通信部11により、ネットワーク5を介してデータサーバ装置1に接続し、該スケジュールデータの登録を行なう(S550)。本処理における所属グループ属性の付与は、データの属性編集という形で可能であってもよいし、ディレクトリ管理されており、所定のディレクトリに対して、所属グループ属性が付与されており、そのディレクトリ内のファイルには全て該ディレクトリと同じ所属グループ属性が付与されるようになっていてもよい。
【0238】
端末Eより、所属グループ属性が「スキー同好会」のスケジュールデータの登録を受けたデータサーバ装置1のクライアント記憶データ管理部2は、スケジュールデータをサーバデータ記憶部3に記憶するとともに、通信部4により、ネットワーク5を介して、端末A,BおよびFの3台のクライアント装置10に対して該スケジュールデータの登録を行なう(S551,552,553)。データサーバ装置1より、該スケジュールデータを受信した各クライアント装置10の制御部15は、それぞれのクライアントデータ記憶部12に該スケジュールデータの登録を行なう。
【0239】
次に、端末Bより、「鈴木太郎」がビジネスデータであるB社との打ち合わせの予定の入力を行なった場合の処理について説明する。
【0240】
「鈴木太郎」が端末Bの入力部14を操作し、B社との打ち合わせのスケジュールの入力を、所属グループ属性を端末Bとして登録すると、端末Bの制御部15は、クライアントデータ記憶部12に該スケジュールデータの登録を行なう。それとともに、制御部15は、通信部11により、ネットワーク5を介してデータサーバ装置1に接続し、該スケジュールデータの登録を行なう(S554)。
【0241】
データサーバ装置1は、本処理における所属グループ属性が端末Bであるため、端末Bにのみ同期を行なえばよいと認識し、同じユーザが保有するクライアント装置10である端末Aに対して同期の処理を行なわない。これにより、たとえば、秘匿性が必要なビジネスデータなどが、パーソナル用途の端末に反映されてしまうことによって情報の漏洩などが発生する可能性を低減することが可能となる。
【0242】
図34を参照して、クライアント装置10における更新データの反映処理について説明する。
【0243】
クライアント装置10の制御部15は、まず、更新データの反映において必要となる空き容量の必要量を算出する(S601)。クライアント装置10のクライアントデータ記憶部12の空き容量と、S601で計算された必要量とを比較する(S602)。空き容量が不足した場合(S602でYes)、クライアント装置10の制御部15は、クライアントデータ記憶部12に記憶されているデータより、削除するデータを決定し、削除を行ない(S603)、再度クライアント装置10のクライアントデータ記憶部12の空き容量と、S601で計算された必要量とを比較する(S602)。空き容量が足りるようになると(S602でNo)、クライアント装置10の制御部15は、クライアントデータ記憶部12内の記憶データの更新を行なう(S604)。
【0244】
なお、上述の処理においては、必ず更新データの反映処理を行なうようになっているが、たとえば、クライアントデータ記憶部12に記憶されている情報がすべて更新データよりも重要度が高い場合などにおいては、更新データを受付けないようにしてもよい。または、ユーザの設定によって、サーバからのデータ更新を一時的に受付けないようにすることも有用である。
【0245】
本実施例において、上述の削除データの決定は、次のようにして行なわれるものとする。
【0246】
データの削除が必要となったときの、クライアント装置10のクライアントデータ記憶部12に記憶されているデータの内容が図35のような状態であったとする。なお、本実施例では、各データは、最終データアクセス時刻501、ユーザにより付与された、または、内容より自動的に付与された5段階の重要度502、および削除操作を許可するかどうかの可否503等を属性として持っているものとする。
【0247】
ここで、最終データアクセス時刻501は、そのデータに対して行なわれた最新の読出しアクセスの時刻でもあってもよいし、最新の書込みアクセスの時刻であってもよい。または、それらが、データ種別によって変化するようになっていてもよい。
【0248】
重要度502は、データサーバ装置1のサーバデータ上で付与されている重要度であってもよいし、各端末の機能や特徴により、所定のアルゴリズムにより、重要度を変化させるようにしてもよい。ビジネス用の端末にとっては、ビジネス以外のデータの重要度は下げるなどが考えられる。
【0249】
同様に、削除の可否503についても各端末の機能や特徴により、所定のアルゴリズムにより、属性を変化させるようにしてもよい。たとえば、携帯電話の端末にとっては、電話帳データは必須のものであるため、このデータに対しては、削除不可能の属性を持たせるようにしてもよい。
【0250】
制御部15は、これらのデータより、まず、削除が許可されているデータの中から、最も重要度の低いデータをサーチする。図28に示した例のデータでは、チャットデータ504およびニュースデータ505の2つのデータエントリが該当する。次に、制御部15はこれら二つのデータの最終アクセス時刻を比較し、より古いほうのデータ、すなわち本例においては、ニュースデータ505を削除データとして決定する。
【0251】
もちろん、削除データの決定方法はこれに限られない。たとえば、スケジュールデータなどでは、時間順を重要度順に優先させた手続きとしてもよい。また、重要度は持たせずに時間順にのみ削除するようにしてもよい。すなわち、将来のデータは削除しないが、過去のスケジュールについては削除対象のリストに加えるなどの決定方法にしてもよい。
【0252】
さらに、それぞれのデータをヘッダ部分と本データ部分とにより構成し、ヘッダ部分を残して、データ量の大きい本データ部分のみを削除するようにすると、削除データのタイトルなどの閲覧は可能となり、操作性が向上すると考えられる。
【0253】
次に、データサーバ装置1のサーバデータの一部へのアクセスを外部ASPなどに許可することにより、データ加工サービスやデータ配信サービスを可能とする場合について説明を行なう。図36は本処理におけるハードウェア構成図である。
【0254】
図36には、図1に示したデータアクセスシステムに、新たにASP60が接続されている。
【0255】
データサーバ装置1のクライアント記憶データ管理部2において、所定の暗号化および認証手続きを経た外部のASP60は、所定の手続きによりデータサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータの一部にアクセスすることが許可される。許可するアクセスの種類としては、ユーザがデータに対して設定した所属グループ属性303(図13)が「anyone」となっているデータに対する読出し動作や、配信データを受け取るためのスプールエリアに対する新規データの書込み動作などである。また、十分に信頼の置けるASPであれば、スケジュールデータなど秘匿性のあるデータであっても読出し動作を許可してもよい。これにより、たとえば、ユーザのスケジュールデータに基き、ASPではスケジュールにおいて必要となる可能性の高い時刻表や、昼食時にユーザがいる場所付近の飲食店の情報などを提示したり、さらには電子割引券をクライアント装置に対して発行することなどが可能となる。これにより、広告活動においてはユーザの行動情報を手中にしているため、きわめて高効率の宣伝を行なうことが可能になる。このようなASP60によって生成されたデータは、上述のサーバデータにおける新規データと同様の手続きにより、所望のクライアント装置10へ配信され、適切な方法によりユーザの注意を喚起する。
【0256】
さらに、スケジュールデータをもとに、海外出張であればフライトの予約やホテルの予約を自動的に行なうサービスなどが考えられる。ただしユーザの確認がなければすぐにキャンセルするようにしておくことなどがこのようなサービスにおいては有効と考えれられる。
【0257】
別の応用としては、たとえばクライアント装置10にカメラの機能がついている場合、写真に取った多数の名刺の画像データより、文字認識を行ない、電子名刺データを作成するサービスや、色調補正、高精彩プリントサービスなどが可能となる。
【0258】
上述の処理により、データサーバ装置1のクライアント記憶データ管理部2およびクライアント装置10の制御部15が、それぞれのデータエントリのアプリケーション属性に従って、自動的に通信を行なう。このため、データサーバ装置1やクライアント装置10において通信を必要とするメール、チャットまたは掲示板などの各通信アプリケーションは、全く通信を意識せずに、データに所定の属性を付与し、それぞれのクライアントデータ記憶部12にアクセスするだけで所定の通信が行なわれる。このため、クライアント装置10は、それぞれのデータの特徴にあわせて表示方法などのユーザインターフェースを切り替えるだけでよい。これにより通信プロトコルの実装を省くことが可能となり、コーディングの作業が簡易化される。
【0259】
なお、ここではアプリケーション属性に基づいて通信処理を行なう、すなわち、アプリケーション属性を通信属性としても利用するようにした。しかし、もちろん、アプリケーション属性はユーザインターフェースの切り替えのみに使用し、クライアント装置10からデータサーバ装置1への更新処理と、データサーバ装置1からクライアント装置10への更新処理とを指定する通信属性を別途設けるようにしてもよい。
【0260】
また、データサーバ装置1のサーバデータへの一部アクセスを外部ASPへVPN(VirtualPrivate Network)などにより許可することにより、クライアント装置10では処理が困難な高度なデータ処理を行なうASP事業や、広大なDB(データベース)を必要とするサービスなどを各クライアント装置10に対して行なうことが可能となる。
【0261】
また、上述のシステムにおいて、クライアント装置10のクライアントデータにおいて発生したデータ変更を、データサーバ装置1のサーバデータに反映する処理において、たとえば、変更されたクライアントデータのもととなったサーバデータの最終更新日付よりも、反映処理の時点でのサーバデータの最終更新日付の方が新しい場合などにおいては、クライアント装置10からのサーバデータ更新要求を受付けないようにし、さらには、該クライアント装置10を使用するユーザにその旨を通知するようにしてもよい。
【0262】
逆に、データサーバ装置1のサーバデータの更新をクライアント装置10の対応するクライアントデータに反映する処理において、サーバデータの更新前の最終更新日時よりも、対応するクライアントデータの最終更新日時の方が新しい場合などにおいては、データサーバ装置1からのクライアントデータ更新要求を受付けないようにし、さらには、該クライアントデータの更新を行なったユーザにその旨を通知するようにしてもよい。
【0263】
その為に、更新通知においては、該更新データの更新以前の最終更新日時も合わせて通知するようにしてもよい。
【0264】
または、スイッチなどユーザの設定によって、データサーバ装置1からのデータ更新を一時的に受付けないようにすることも有用である。
【0265】
なお、上述したシステムにおいては、アプリケーションの使用するデータの共有を行なっているが、JAVA(R)など共通のアプリケーションを実行することが可能な環境においては、実行されるアプリケーションプログラムや、そのプログラムの環境設定ファイルを、上述した手法で共有することにより、たとえば、同一ユーザの端末間で、プログラムのツールバーの個人設定や、ブックマークなどを共通にしたり、ある端末で行なっていたゲームの続きを別の端末上で実行したりすることなども容易に実現することができる。
【0266】
ここに記述したフロー以外に、データサーバ装置1のサーバデータを各端末において、適宜ダウンロードして参照する手続きもある。
【0267】
また、たとえば、ワークステーションなどによるデータサーバ装置1が広域ネットワーク上にあり、広域ネットワークにクライアント装置としてPCが接続されており、そのPCをデータサーバ装置1としてLAN(Local Area Network)にPDAなどがクライアント装置10として接続されているような構成も有用と考えられる。
【0268】
本実施例では、データサーバ装置1に、全てのクライアント装置10のマスターデータを記憶する構成とした。このような場合においては、ワークステーションなどによるデータサーバ装置1において全てのクライアント装置10であるPCのデータのマスターデータを記憶することは、データの規模が大きくなった場合に非常に広大な記憶領域を必要とし、実現が困難となる。
【0269】
したがって、データサーバ装置1は一台のコンピュータで実現される必要はなく、複数台のコンピュータが適宜データの同期を取る、または、適宜データを転送するなどの処理によって連携することにより、仮想的に1台のデータサーバ装置1を形成するような構成としてもよい。あるいは、上述の任意のクライアント装置が1台または複数台でサーバ装置の機能を持つように構成してもよい。
【0270】
または、ワークステーションなどによるデータサーバ装置1においては、クライアント装置10である全てのPCのマスターデータを記憶せずに、同期されるべきクライアント装置10間のデータのみを一時的に記憶し、それぞれのクライアント装置10間でデータの同期が取れれば、データサーバ装置1のサーバデータ記憶部3から該データを削除し、各クライアント装置10であるPCのデータの同期されるべきデータ同士の関連と、相互同期状況のみを管理するような構成とすることも有用であると考えられる。
【0271】
以上説明したように本実施例によると、データサーバ装置1において、各クライアント装置10で利用されるデータに対応したサーバデータが確実に保存されている。このため、クライアント装置10に事故が発生してもそれらのデータは保証されるという効果がある。
【0272】
また、各クライアント装置10はデータサーバ装置1のサーバデータ記憶部3を仮想記憶として使用する。このため、各端末の実記憶容量よりもはるかに多い情報を利用することが可能になる。それとともに、データサーバ装置1において各クライアント装置10内に記憶されているデータを管理することにより、他のクライアント装置10と共有すべき情報については、その情報を記憶しているクライアント装置10に対して自動的に情報を同期する。このため、各ユーザは、情報を共有する端末において、2度同じ操作や処理を行なう必要がないという効果がある。
【0273】
さらに、各クライアント装置10内の通信アプリケーションは、各サービスごとにファイルに通信属性をつけて仮想記憶に記憶することにより実現される。このため、通信アプリケーションごとに通信プロトコルなどの通信を意識したコーディングが不要になるという効果がある。
【0274】
第1の実施例 第1の変形例
以下、データサーバ装置における全体的な動作(図5)の変形例を、図37を用いて説明する。なお、以下の説明において、前述の図5以外の、ハードウェア構成、フローチャートおよび動作は、前述の第1の実施例と同じであるため、それらについてのここでの詳細な説明は繰返さない。また、図37に示す処理の中で、前述の図5と同じ処理については同じステップ番号を付してある。それらについての処理も同じである。したがってそれらについてのここでの詳細な説明は繰返さない。
【0275】
図37を参照して、データサーバ装置1はクライアント装置10からの通信を待ち(S101)、通信があると(S101でYes)、そのクライアント装置10からの通信データがデータサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータの読出しを要求するものかどうかを判断する(SD101)。
【0276】
通信データがサーバデータの読出しを要求するものであった場合(SD101でYes)、クライアント記憶データ管理部2は、データサーバ装置1のサーバデータ記憶部3に記憶されているその要求データを読出し、要求のあったクライアント装置10へその要求データを転送する(SD102)。
【0277】
通信データが、サーバデータの読出しを要求するものでなかった場合(SD101でNo)、通信データがデータサーバ装置1のサーバデータ記憶部3に記憶されているサーバデータの更新を要求するものかどうかを判断する(S102)。その後、処理は、S103またはS106へ移される。
【0278】
以上のようにして、本変形例においては、クライアント装置10からサーバ装置1へ送信された通信データが、サーバデータの読出しの要求である場合には、要求されたデータの応答処理が行なわれる。
【0279】
第1の実施例 第2の変形例
以下、クライアント装置の全体的な動作(図8)の変形例を、図38を用いて説明する。なお、以下の説明において、前述の図8以外の、ハードウェア構成、フローチャートおよび動作は、前述の第1の実施例と同じであるため、それらについてのここでの詳細な説明は繰返さない。また、図38に示す処理の中で、前述の図8と同じ処理については同じステップ番号を付してある。それらについての処理も同じである。したがってそれらについてのここでの詳細な説明は繰返さない。
【0280】
図38を参照して、入力部14により検知されたユーザ操作により、データ参照要求が発生した場合には(S201でNo,SE201でYes)、クライアント装置10のクライアントデータ記憶部12に要求されたデータがキャッシュデータとして存在するかどうかを判断する(SE202)。
【0281】
クライアントデータ記憶部12に要求されたデータが存在しなかった場合(SE202でNo)、クライアント装置10の制御部15は通信部11を制御してデータサーバ装置1へ接続し、データサーバ装置1のサーバデータ記憶部3に記憶されている要求データを読出し、提示する(SE204)。なお、この時サーバへのアクセスが不可能であった場合には、ユーザへサーバデータの取得に失敗したことを通知する。
【0282】
クライアントデータ記憶部12に要求されたデータが存在した場合(SE202でYes)、クライアント装置10の制御部15は、データの属性を確認し、重要度が所定の値より高い、あるいは、極めて即時性が重要なデータの種類である場合、サーバデータの参照が必要であると判断する(SE203でYes)。クライアント装置10の制御部15は、通信部11を制御してデータサーバ装置1へ接続し、データサーバ装置1のサーバデータ記憶部3に記憶されている要求データを読出し、これを提示する(SE204)。なお、この時データサーバ装置1へのアクセスが不可能であった場合には、クライアントデータ記憶部12に記憶されていたキャッシュデータを提示し、ユーザへサーバデータの取得を失敗したため、キャッシュ中のデータを表示していることを通知する。
【0283】
また、クライアントデータ記憶部12に要求のあったデータが存在した場合(SE202でYes)、クライアント装置10の制御部15は、データの属性を確認し、重要度が所定の値より低い、あるいは、極めて即時性が重要ではないデータの種類である場合などは、サーバデータの参照が必要無いと判断する(SE203でNo)。クライアント装置10の制御部15は、クライアント装置10のクライアントデータ記憶部12に記憶されている要求データを読出し、これを提示する(SE205)。
【0284】
以上のようにして、本変形例においては、入力部14により検知されたユーザ操作によりデータの登録要求が発生すると、クライアント装置10のキャッシュデータの有無を判断した後、要求されたデータが提示される。
【0285】
第2の実施例
以下、図面を参照しつつ、本実施例について説明する。なお、以下に説明する以外のハードウェア構成、フローチャートおよび動作は、前述の第1の実施例と同じであるため、それらについてのここでの詳細な説明は繰返さない。
【0286】
図39に、データサーバ装置1のサーバデータ記憶部3において記憶されているサーバデータと、複数のクライアント装置10のクライアントデータ記憶部12において記憶されるクライアントデータとの関係を示す。
【0287】
本実施例において、本システムの利用者は「鈴木太郎」、「鈴木花子」、「田中次郎」および「山田三郎」の4名であると想定する。「鈴木太郎」と「鈴木花子」とは、婚姻関係にある。この両者は、データサーバ装置1において管理されている鈴木家グループ1220に所属する。「鈴木太郎」と「田中次郎」とは、データサーバ装置1において管理されているスキー同好会グループ1221に所属する。「田中次郎」と「山田三郎」とは、データサーバ装置1において管理されているA社SE部というグループ1222に所属する。
【0288】
「鈴木太郎」は、クライアント装置である、端末A1206および端末B1207を所持する。「鈴木花子」は、端末D1209を所持する。「鈴木太郎」と「鈴木花子」とは、端末C1208を共用して所持する。「田中次郎」は、端末E1210を所持する。「山田三郎」は、端末G1212を所持する。「田中次郎」と「山田三郎」とは、端末F1211を共用して所持する。
【0289】
データサーバ装置1のサーバデータ記憶部3では、鈴木花子個人データ1201、鈴木太郎個人データ1202、鈴木家データ1203、スキー同好会グループデータ1204、田中次郎個人データ1205、A社SE部グループデータ1206および山田三郎個人データ1207のデータ集合が記憶されている。図39において、データサーバ装置1内のサーバデータのデータ集合とそれぞれのクライアント装置10内のクライアントデータとは、直線により結ばれたような対応関係をもつ。
【0290】
たとえば、「鈴木太郎」が所持している端末A1206のクライアントデータ記憶部12には、データサーバ装置1により管理されたデータ集合である、鈴木太郎個人データ1202、鈴木家データ1203およびスキー同好会グループデータ1204の一部または全部が記憶されている。
【0291】
本実施例において、データサーバ装置1は、クライアント装置10より参照されるサーバデータとその属性、サーバデータを反映させるクライアント装置とその属性、クライアント装置のユーザとその属性、の3つの対応関係を管理する。この属性に基づいて、サーバデータ、クライアント装置、ユーザは、それぞれのデータカテゴリに分類される。たとえば、同じ属性であるサーバデータ(サーバデータを実行するためのアプリケーションが同じ)は、同じデータカテゴリに分類される。同じ属性であるクライアント装置(データサーバ装置とクライアント装置との通信経路が同じ)は、同じ装置カテゴリに分類される。同じ属性であるユーザ(ユーザにより登録された嗜好が同じ)は、同じユーザカテゴリに分類される。データサーバ装置1は、分類された、データカテゴリ、装置カテゴリおよびユーザカテゴリを対応付けたテーブルを記憶する。データサーバ装置1は、そのテーブルと、更新されたデータエントリのデータ属性と、データ更新を通知するクライアント装置の装置属性と、データ更新を通知するクライアント装置を所持するユーザのユーザ属性とに基づいて、実行する処理を決定する。
【0292】
図40に、データサーバ装置1のサーバデータ記憶部3に記憶される、サーバデータとその属性の記憶形式の一例を示す。なお、この例は、図39に示した、各ユーザ、端末、グループの関係にしたがっている。
【0293】
クライアント装置10の一部には、スケジュールアプリケーションと、住所録アプリケーション、アルバムアプリケーションがすでにインストールされていると想定する。
【0294】
図40におけるそれぞれの行のデータ単位を、「データエントリ」と表現する。各データエントリは、データ内容1301、時間属性1302、アプリケーション属性1303、所属属性1304、用途属性1305、記憶中端末属性1306および重要度属性1307を含む。
【0295】
時間属性1302は、それぞれのデータエントリの作成時間、スケジュールアプリケーションを用いて入力された行動予定の時間などの属性(その作成時間がいつであるのか等を示す)である。アプリケーション属性1303は、それぞれのデータエントリのデータの種類、すなわち、そのデータを取扱うアプリケーションを示す属性である。所属属性1304は、それぞれのデータエントリが所属するユーザやユーザグループを示す属性である。用途属性1305は、それぞれのデータエントリがビジネス用のデータであるのかパーソナル用途のデータであるのかを示す属性である。記憶中端末属性1306は、それぞれのデータエントリを現在記憶中である端末を示す属性である。重要度属性1307は、それぞれのデータエントリの重要度を示す属性である。
【0296】
なお、これらの属性は、新規データ作成時にはデフォルトの値が設定されているものとする。すなわち、データの所属属性は、該データが作成されたクライアント装置のユーザ属性が設定され、アプリケーション属性は、該データを作成したアプリケーションが設定される。重要度は、たとえば中程度の“3”が設定される、などである。もちろんこれらのデフォルト属性のいくつか、すなわち、ユーザ所属属性、重要度属性、用途属性などは、ユーザの嗜好に合わせて変更することが可能であり、作成済みデータの属性もデータの所有者により更新可能である。
【0297】
図41に、データサーバ装置1のクライアント記憶データ管理部2において管理される、クライアント装置とその属性を示す。
【0298】
データサーバ装置1のクライアント記憶データ管理部2は、図41に示すような端末ごとの管理テーブルを管理する。この管理テーブルには、ユーザ属性1401、種別属性1402、用途属性1403、表現能力属性1404および通信路属性1405などが記憶される。
【0299】
ユーザ属性1401は、それぞれの端末ごとに、端末を所持しているユーザを示す属性である。種別属性1402は、端末がPC(Personal Computer)であるのか、PDAであるのか、携帯電話であるのかという、端末の種別を示す属性である。用途属性1403は、ユーザがその端末をどのような用途、目的で所持しているのかを示す属性である。表現能力属性1404は、音声出力の可否や、映像表示能力など、端末がどのような表現能力を持っているかを示す属性である。、通信路属性1405は、通信路に無線の通信路を利用しているのか、通信路に有線の通信路を利用しているのか、通信速度は高速なのか低速なのか、通信路は従量課金であるのか、固定課金であるのかを示す属性である。
【0300】
なお、これらの属性は、クライアント装置を本サービスに登録する際に所定の手続きによりサーバ装置へ追加、登録されるものとする。さらに、本実施例では、クライアント装置のハードウェアに関する属性は自動的に通知され、クライアント装置のユーザや用途などは、ユーザの入力によりサーバ装置へ通知されるようになっているものとする。
【0301】
この管理テーブルにより、端末Aは、「鈴木太郎」に所有されている従量課金の高速無線通信機能を持ったパーソナル用途の携帯電話であることがわかる。この端末Aは、音声出力および画像の表示能力を持つ。端末Bは、「鈴木太郎」に所有されている従量課金の低速無線通信機能を持ったビジネスおよびパーソナル用途のPDAであることがわかる。この端末Bは、音声出力が不可、画像の表示能力を持つ。端末Cは、「鈴木太郎」と「鈴木花子」の両名により共用して所有されている固定課金の高速有線通信機能を持ったパーソナル用途のデスクトップPCであることがわかる。この端末Cは、音声出力が可能、画像の表示能力を持つ。端末Dは、「鈴木花子」に所有されている従量課金の高速無線通信機能を持ったパーソナル用途の携帯電話であることがわかる。この端末Cは、音声出力が可能、テキストの表示のみが可能な表示能力を持つ。端末Eは、「田中次郎」に所有されている従量課金の低速無線通信機能を持ったビジネスおよびパーソナル用途の携帯電話であることがわかる。この端末Eは、音声出力が可能、テキストの表示のみが可能な表示能力を持つ。端末Fは、「田中次郎」と「山田三郎」とに共用して所有されている従量課金の低速無線通信機能を持ったビジネス用途のPDAであることがわかる。この端末Fは、音声出力が可能、画像の表示能力を持つ。端末Gは、「山田三郎」に所持されている、固定課金の高速有線通信機能を持ったパーソナル用途のデスクトップPCであることがわかる。この端末Gは、音声出力が可能、画像の表示能力を持つ。
【0302】
ユーザが共用して所持する端末においては、ログイン管理などにより、ユーザ毎に提示される内容が切換えられる処理が行なわれる。
【0303】
端末は、データサーバ装置1から受信した情報に基づいて、端末のユーザへ、データエントリが更新されたことを、音、振動、画面表示などを用いてユーザに通知することができる。さらに、この通知は、データサーバ装置1から受信したユーザ通知情報に基づいて、ユーザへの通知の度合いを切換えることができる。データサーバ装置1から「強いユーザ通知」を受信すると、たとえば、端末は大きな警告音を発生してユーザへデータ更新を通知する。携帯電話であれば、データサーバ装置1から受信した情報に基づいて、着信音の種類、音量が自動的に変更される。データサーバ装置1は、たとえば重要なデータであるほど、ユーザが気付きやすいようなユーザ通知を設定する。
【0304】
端末は、データサーバ装置1から受信した自動消去情報に基づいて、端末の記憶部に記憶されたデータを消去する優先順位を変更することができる。この消去の優先順位とは、図34のS603における削除データの決定の優先順位であり、データサーバ装置1から「消えやすい自動消去」を受信すると、削除データとして優先的に決定され削除される対象になる。したがって、重要なデータであるほど、端末が自動消去しにくく、重要でないデータであるほど、消去されやすいように自動消去方法を設定する。
【0305】
図42に、データサーバ装置1のサーバデータ記憶部3に記憶される、ユーザとその属性の記憶形式の一例を示す。
【0306】
図42に示すように、このテーブルは、それぞれのユーザ1501ごとに、ユーザグループ属性1502、所有端末属性1503、個人設定属性1504、嗜好属性1505および購入ソフト属性1506などの属性を記憶する。
【0307】
ユーザグループ属性1502は、ユーザが所属しているユーザグループを示す属性である。所有端末属性1503は、ユーザが所持している端末を示す属性である。個人設定属性1504は、たとえばブックマークや、ツールバーの設定など、ユーザがそれぞれの端末で利用するアプリケーションの設定情報を示す属性である。嗜好属性1505は、ユーザの好きな音楽や好物、趣味などを示す属性である。購入ソフト属性1506は、ユーザが端末で利用することができる購入済みアプリケーションを示す属性である。
【0308】
なお、これらの属性は、ブラウザを用いるなど所定の手続きにより、ユーザがサーバへ登録可能となっているものとする。また、本実施例においては、ユーザグループは、自由にユーザがユーザIDやニックネーム等によりグループメンバーを特定して作成できる。新規グループの作成時には、各グループメンバーに登録の可否について問合せ、登録を許諾したメンバーのみが新規グループに登録されるものとする。メンバーの追加および削除については、グループを作成したユーザに権限があり、グループからの脱退については、各グループメンバーに権限があるとする。
【0309】
このテーブルには、例えば、「鈴木太郎」は、鈴木家グループとスキー同好会グループというユーザグループに属していること、「鈴木太郎」は、端末A,端末B,端末Cの3台のクライアント装置10を所持していること、「鈴木太郎」が個人的に設定したブックマークや呼出音の設定、「鈴木太郎」の好みはバッハの音楽であること、「鈴木太郎」の好物はカツ丼であること、「鈴木太郎」が購入済みのソフトウェアは、「表計算ソフトA」、「グラフィックソフトA」であることが分かる。
【0310】
「鈴木太郎」が使用する端末A,端末B,端末Cの3台のクライアント装置10では、個人設定を共通にすることができる。この個人設定とは、たとえば、ウェブブラウザのブックマークや、各種アプリケーションのツールバーなどの設定、マウスやキーボードの入力環境の設定である。これらが共通になることにより複数の端末を使用するユーザの利便性が向上する。なお、端末Cは、「鈴木太郎」および「鈴木花子」の2名により使用される端末であるため、ユーザ毎に設定されるログイン処理などにより、この個人設定が管理される。ログインしたユーザ毎にアプリケーションの設定が管理され、ログインユーザに応じて各種の設定が反映された画面が表示される。
【0311】
データサーバ装置1のサーバデータ記憶部3に、アプリケーションソフトを記憶しておき、クライアント装置からの要求に応じて、それらをそのクライアント装置へ送信できる。この時、図42に示すテーブルを用いて、ユーザ毎に購入済みのソフトウェアを管理する。たとえば、「鈴木太郎」は、「表計算ソフトA」、「グラフィックソフトA」という2種類のアプリケーションを購入済みである。「鈴木太郎」が所有する端末Aにこれらのソフトウェアがインストールされていない場合に、それらをデータサーバ装置1がクライアント装置10に送信してその端末Aにインストールすることができる。このとき、「鈴木太郎」は、これらのソフトウェアの販売会社から、1ユーザが所有する複数の装置へのインストールが認められているとする。
【0312】
また、ユーザの嗜好情報より、データサーバ装置1は、ユーザの嗜好に合致する、広告などの情報を送信することができる。たとえば、ユーザがデータサーバ装置1に、自己の嗜好を「音楽、バッハ」と登録しているユーザは、ユーザカテゴリが「音楽の趣味でバッハを好む」というカテゴリに分類される。このカテゴリに分類されたユーザの端末には、「バッハ」に関する情報が、データサーバ装置1から送信される。
【0313】
なお、端末属性の所有者情報とユーザ属性の所有端末属性とは、どちらか一方でもよい。
【0314】
本実施例における、データサーバ装置1のサーバデータ記憶部3に記憶されているデータエントリが更新されたときに、データサーバ装置1が実行する処理を決定するためのテーブルの一例を、図を用いて説明する。
【0315】
図43に、データサーバ装置1のサーバデータ記憶部3に記憶されているデータエントリが更新されたときに、データサーバ装置1が実行する処理を決定するときに利用する、属性とその属性に対する処理とを記憶したテーブルの一部を示す。このテーブルは、データサーバ装置1のサーバデータ記憶部3に記憶される。
【0316】
図43に示したテーブルを説明するために、ユーザ「鈴木太郎」が端末Cを用いて、スキー旅行写真のアルバムデータのデータエントリを更新した場合について説明する。
【0317】
図40に示すように、このデータエントリは、アプリケーション属性として、“アルバム”、所属属性として“スキー同好会”、用途属性として“パーソナル”、記憶中端末属性として“A,C,E”、重要度属性として“2”が記憶されている。このデータエントリの更新通知を受信したデータサーバ装置1は、図43に示すテーブルと、更新されたサーバデータのデータ属性と、更新を通知する端末の端末属性とに基づいて、処理を決定する。図43に示すテーブルにより、アプリケーション属性が“アルバム”、重要度が“2”以下であるこのデータエントリについては、以下の処理が実行されることが分かる。すなわち、画像が表示可能かつ通信路が固定課金である端末に対しては、定期的な通信時に、このデータエントリを記憶中の端末に、完全なデータを通知する。画像が表示可能かつ通信路が従量課金である端末に対しては、定期的な通信時に、このデータエントリを記憶中の端末に、データが更新されたということのみを通知する。テキストの表示しかできず画像が表示できない端末に対しては、一切通知を行わない。
【0318】
図40と図41とを参照することにより、端末Aに対しては、従量課金の通信路を持つ端末であるため、定期的な通信時に、データが更新されたということのみが通知される。端末Cに対しては、固定課金の通信路を持つ端末であるため、定期的な通信時に、完全な更新データが通知される。端末Eに対しては、画像表示能力を持たないため、通知を行なわない。
【0319】
さらに、ユーザ「田中次郎」が端末Fにおいて、C社との打ち合わせのデータエントリを更新した場合について説明する。
【0320】
図40に示すように、このデータエントリは、アプリケーション属性として、“スケジュール”、所属属性として“A社SE部”、用途属性として“ビジネス”、記憶中端末属性として“F”、重要度属性として“5”が記憶されている。このデータの更新通知を受信したデータサーバ装置1は、図43に示すテーブルと、更新されたサーバデータのデータ属性と、更新を通知する端末の端末属性とに基づいて、処理を決定する。図43に示すテーブルにより、アプリケーション属性が“スケジュール”で重要度が“3”以上であるこのデータエントリについては、以下の処理が実行されることが分かる。すなわち、端末の属性には関係なく、このデータエントリを利用する端末の全てに、即時に、通知する。
【0321】
図40と図41を参照することにより、A社SE部のメンバーである、「田中次郎」または「山田三郎」により利用される端末、かつビジネス用途である端末である端末“E”と端末“F”とに対して、即時に通知が実行される。
【0322】
このテーブルにより導き出される処理は、ユーザの嗜好により変化するため、所定の操作により(たとえば、ユーザがデータサーバ装置1に登録の変更を要求し、データサーバ装置1は、テーブルを書換える。)、ユーザが自由に属性の条件と処理とを編集できるようにすることが望ましい。
【0323】
本実施例における、データサーバ装置1のサーバデータ記憶部3に記憶されているデータエントリが更新されたときに、データサーバ装置1が実行する処理を決定するためのテーブルの一例を、さらに図を用いて説明する。
【0324】
図44に、データサーバ装置1のサーバデータ記憶部3に記憶されているデータエントリが更新されたときに、データサーバ装置1が実行する処理を決定するときに利用する、属性とその属性に対する処理とを記憶したテーブルの一部を示す。このテーブルは、データサーバ装置1のサーバデータ記憶部3に記憶される。
【0325】
図44に示したテーブルを説明するために、ユーザ「田中次郎」が端末Eを用いて、住所録データのデータエントリを更新した場合について説明する。
【0326】
図40に示すように、このデータは、アプリケーション属性として、“住所録”、重要度属性として“2”が記憶されている。このデータエントリの更新通知を受信したデータサーバ装置1は、図44に示すテーブルと、更新されたサーバデータのデータ属性と、更新を通知する端末の端末属性とに基づいて、処理を決定する。図44に示すテーブルにより、端末が携帯電話である場合には、ユーザ通知が“弱”、自動消去が“なし”という情報とともに、端末にデータエントリの更新を送信する。端末が携帯電話以外である場合には、ユーザ通知情報が“弱”、自動消去情報が“消えやすい”という情報とともに、端末にデータエントリの更新を送信する。
【0327】
データサーバ装置1から、ユーザ通知情報および自動消去情報とともにデータエントリの更新を受信した端末は、ユーザ通知情報および自動消去情報に基づいて、ユーザへの音などによるデータ更新の通知および更新されたデータの自動消去を行なう。この自動消去は、図34のS603において行なわれる。
【0328】
さらに、ユーザ「田中次郎」が端末Fにおいて、C社との打ち合わせのデータエントリを更新した場合について説明する。
【0329】
図40に示すように、このデータエントリは、アプリケーション属性として“スケジュール”、重要度属性として“5”が記憶されている。このデータエントリの更新通知を受信したデータサーバ装置1は、図44に示すテーブルと、更新されたサーバデータのデータ属性と、更新を通知する端末の端末属性とに基づいて、処理を決定する。このスケジュールが未来のスケジュールである場合には、端末の種別に関わらず、ユーザ通知情報が“強”、自動消去情報が“なし”という情報とともに、端末にデータエントリの更新を送信する。
【0330】
データサーバ装置1から、ユーザ通知情報および自動消去情報とともにデータエントリの更新を受信した端末は、ユーザ通知情報および自動消去情報に基づいて、更新されたデータの自動消去を行なう。
【0331】
このテーブルにより判断されるデータサーバ装置1が実行する処理は、ユーザの使用環境により(たとえば、一時的に大きな警告音を鳴らせたくないなど)、さまざまに変化するため、所定の操作により(たとえば、ユーザがデータサーバ装置1から受信した通知情報によらず、ユーザの通知を「画面のみ」とするなど)、ユーザが変更できるようにすることが望ましい。
【0332】
また、更新を行なったユーザと、クライアント装置における更新通知を行なう対象となるユーザが同一である場合と異なる場合とで、たとえば、異なる場合にはユーザ通知を行なうが、同一の場合にはユーザ通知を行なわないようにしてもよい。
【0333】
なお、ここでは、データサーバ装置においてユーザ通知および自動消去のレベルを決定したが、クライアント装置において図44に示すテーブルを記憶しておいて、そのテーブルと、クライアント装置の属性と、データサーバ装置から受信したデータの属性とに基づいて、ユーザ通知および自動消去のレベルを判断させるようにしても良い。
【0334】
第3の実施例
以下、図面を参照しつつ、本実施例について説明する。なお、以下に説明する以外のハードウェア構成、フローチャートおよび動作は、前述の第2の実施例と同じであるため、それらについてのここでの詳細な説明は繰返さない。
【0335】
図45に、データサーバ装置1のサーバデータ記憶部3に記憶される内容を示す。本実施例において、サーバデータ記憶部3は、各クライエント装置10から利用されるオブジェクトおよびその属性(以下、属性をプロファイルとも記述する。)を記憶するオブジェクト/オブジェクトプロファイル記憶部701、クライエント装置の属性を記憶するクライエント装置プロファイル記憶部702、ユーザの属性を記憶するユーザプロファイル記憶部703、各プロファイルやその他の状況に応じてオブジェクトを操作するためのルールを記憶するプロセスルール記憶部704とを含む。
【0336】
本実施例においては、各オブジェクトは、たとえばXML(eXtensibleMarkup
Language)のような記述言語により構造化された文書オブジェクトと想定し、1つのオブジェクトは、1つあるいは複数のエレメントにより構成されているものとする。
【0337】
図46に、構造化されたオブジェクトが、複数のクライエント装置10に適宜伝播していく様子を示す。この図は、クライエント装置Aで、ユーザ操作により新たに作成されたオブジェクトTが、端末に起因するデータ更新処理S204(図8参照)によりサーバ装置1へ伝播される(SP1)様子を示す。さらにこの図は、サーバ装置1の他のクライエント装置10への反映処理S105(図5参照)よりオブジェクトTが適宜加工されてクライエント装置Bおよびクライエント装置Cに伝播する(SP2)様子を示す。
【0338】
本実施例におけるオブジェクトの加工は、図46に示すように、構造化されたオブジェクトのエレメント単位で選択が可能であり、各オブジェクトのルールノードを含む元のオブジェクトTの部分集合T′およびT″へと加工される。この処理においてエレメントの削除は、実質的な削除でもよく、あるいはサーバ装置1のマスタオブジェクトの該当エレメントへのリンクへの交換でもよい。本処理の詳細については後述する。
【0339】
次に、サーバ1において、プロファイルなどの諸条件により、前述のオブジェクトの加工を図45に示した各情報により行なう処理について説明する。
【0340】
オブジェクト/オブジェクトプロファイル記憶部701には、構造化言語によって記述されたオブジェクトが記憶されている。本実施例においてはXMLの「attribute」により各属性が各オブジェクトに割当てられているものとする。クライエント装置プロファイル記憶部702には、図14に示したように各クライエント装置10の属性が記憶されている。ユーザプロファイル記憶部703には、図42に示したように、各ユーザとその属性とが記憶されている。プロセスルール記憶部704には、図47〜図50に示すように、オブジェクトの更新処理を行なうためのテーブルと、前述のオブジェクトの加工や伝播における処理を行なうためのルールとが記憶されている。
【0341】
以下、これらのルールの利用方法について詳細に説明する。
図47に、クライエント装置10の能力と、オブジェクトのエレメントとの適合性を表わす、ブーリアンの出力を持つ能力適合関数の一部を示す。この図によれば、この関数は、たとえばオブジェクトのエレメントの種別属性が静止画であった場合、端末の表示能力属性がグラフィックであれば「1」を、テキストのみの表示しか行なえない端末であれば「0」を返す。また、この関数は、エレメントの種別属性が動画であった場合に、端末の動画処理属性が再生可能となっていれば「1」を、再生不可能となっていれば「0」を返す。このように、この関数はエレメントの種別属性によりそれを表現するための適切な端末属性とを照合し、適合するか否かをブーリアン値で返す関数である。なお、サーバでの減色処理等の単純化処理やフォーマット変換処理などの加工により端末において取扱うことが可能になる場合には「1」を返す。入力となるエレメントを「x」として、この関数を「Fca(x)」と表記する。
【0342】
図48に、あるオブジェクトと、そのオブジェクトを取巻く環境との意味的な整合性に基づいて出力される値の大きさが変わる関数の一部を示す。この図によれば、この関数は、たとえばオブジェクトの種別属性が「電話帳」であった場合、そのオブジェクトを記憶するクライエント装置10の種別属性が「電話機」であれば高い値を、電話以外の「端末」であれば低い値を返す。また、たとえばオブジェクトの種別属性が「スケジュール」であった場合、そのオブジェクトの時間属性が「未来」であれば高い値を、「過去」であれば低い値を返す。このように、この関数はオブジェクトの種別属性によりそのオブジェクトと関連する適切な属性や環境とを照合し、そのオブジェクトとそのオブジェクトを取巻く環境との意味的な整合性を返す関数である。入力となるオブジェクトを「T」として、この関数を「Fcc(T)」と表記する。
【0343】
ここで、オブジェクトTの重要度属性を取出す関数をImp(T)と表現し、機会優先度をOP=Fcc(T)・Imp(T)と定義する。本実施例では、これらの関数を用いて、マスタオブジェクトより、そのルートノードを含む部分集合のオブジェクトを、「seek a subset Tsub of {x∈T|Fca(x)≠0} such that OP≒(C・Σsize(xof Tsub))/Sc」のようなアルゴリズムにより作成する。ここで、「Sc」は、たとえば通信料/通信量や通信速度といったオブジェクトを転送するクライエント装置10の通信能力を表現する値である。「Size」は、エレメント「x」のサイズを取出す関数であり、単純化処理やフォーマット変換処理を行なう場合には、その処理を行なった後のサイズを返すものとする。「C」は、通信コストとオブジェクトの機会優先度とのバランスを調整する定数である。本実施例では、本アルゴリズムにより削除されるエレメントのうち、Fca(x)が「0」であるものは実際に削除して、Fca(x)が「1」であるものは、サーバ装置1へのリンクと置換えを行なう。なお所定の条件に対してはこの加工方法とは別に定められた加工方法を優先して実行するようにすることで、ユーザ個人の独特な要望や特殊な場合に対応可能にすることもできる。
【0344】
次に、伝播優先度をPP=OP・Ntf(T,D)・Act(D)として定義する。ここで、関数「Ntf」は、あるクライエント装置10を例として、オブジェクトTの最終更新を端末Dのユーザへ伝えたか否かを表わす関数であり、通知済みであれば「1」、未通知であれば「2」の値をとるものとする。関数「Act(D)」は、ある端末Dの活動状況を表わす関数であり、使用中であれば「2」を、使用中でなければ「1」の値をとるものとする。
【0345】
図49に、この伝播優先度PPの値とオブジェクトの処理との対応を示す。この図に示されるルールにより、機会優先度が高く最終更新が未通知のオブジェクトは、より多くの端末により早く伝播させ、特に使用中の端末に対しては早く伝播させることができる。なお、所定の条件に対してはこの伝播方法とは別に定められた伝播方法を優先して実行するようにすることで、ユーザ個人の独特な要望や特殊な場合に対応することができる。
【0346】
図50に、端末でのオブジェクトの処理を規定するためのオブジェクトのユーザ通知属性、およびガーベージコレクション属性を生成するルールを示す。この図に示されるルールにより、機会優先度により端末におけるユーザ通知の強度およびガーベージコレクションの方針を得ることができる。なお、所定の条件に対してはこの処理方針とは別に定められた処理方針を優先して実行することで、ユーザ個人独特な要望や特殊な場合に対応することも可能である。
【0347】
なお、図34の削除データ決定および削除処理を、図51のように構造化されたオブジェクトの末端のエレメントから順にエレメント単位で行ない、削除処理として削除するエレメントをサーバ装置1のマスタオブジェクトの該当エレメントへのリンクへ交換するようにすると、オブジェクトの利用可能性が高くなり効果的である。
【0348】
今回開示された実施例はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【0349】
以上のように、このデータアクセスシステムによれば、クライアント装置は、データの更新を行ないサーバに通知する。サーバは、その更新されたデータを記憶しているクライアント装置に対してのみ、クライアント装置において記憶されたデータを更新する。そのため、ネットワークトラフィックを増加させることなく、クライアント装置は、実記憶容量よりもはるかに多い情報を利用することができる。そのため、この発明のデータアクセスシステムは、多くのユーザがデータを共用して使用するサーバ・クライアントシステムに適している。
【図面の簡単な説明】
【図1】 本発明の第1の実施例に係るデータアクセスシステムの構成を示すブロック図である。
【図2】 第1の実施例に係るデータサーバ装置の構成を示すブロック図である。
【図3】 第1の実施例に係るクライアント装置の構成を示すブロック図である。
【図4】 第1の実施例に係るクライアント装置の外観図である。
【図5】 第1の実施例に係るデータサーバ装置の全体的な動作のフローチャートである。
【図6】 第1の実施例に係るデータサーバ装置による他のクライアント装置への更新データの反映処理のフローチャートである。
【図7】 第1の実施例に係るデータサーバ装置による一般データの更新反映処理のフローチャートである。
【図8】 第1の実施例に係るクライアント装置の全体的な動作のフローチャートである。
【図9】 第1の実施例に係るクライアント装置におけるデータサーバ装置に起因するデータ更新処理のフローチャートである。
【図10】 第1の実施例に係るクライアント装置におけるクライアント装置に起因するデータ更新処理のフローチャートである。
【図11】 第1の実施例に係るクライアント装置によるサーバデータ更新処理のフローチャートである。
【図12】 第1の実施例に係るサーバデータとクライアントデータの関係の一例を示す図である。
【図13】 第1の実施例に係るデータサーバ装置におけるサーバデータの記憶形式の一例を示す図である。
【図14】 第1の実施例に係るデータサーバ装置における端末データの記憶形式の一例を示す図である。
【図15】 第1の実施例に係るデータサーバ装置におけるグループデータの記憶形式の一例を示す図である。
【図16】 第1の実施例に係るクライアント装置より、データサーバ装置に記憶されているサーバデータを更新するために送信される、サーバデータ更新通知のフォーマットを示す図である。
【図17】 第1の実施例に係るデータアクセスシステムでのデータの更新処理の一例を説明するための図である。
【図18】 第1の実施例に係る住所録データの一例を示す図(その1)である。
【図19】 第1の実施例に係る住所録データの一例を示す図(その2)である。
【図20】 第1の実施例に係る住所録データの一例を示す図(その3)である。
【図21】 第1の実施例に係る住所録データの一例を示す図(その4)である。
【図22】 第1の実施例に係る住所録データの一例を示す図(その5)である。
【図23】 第1の実施例に係る住所録データの一例を示す図(その6)である。
【図24】 第1の実施例に係るデータアクセスシステムでのアルバムデータ更新処理の一例を説明するための図である。
【図25】 第1の実施例に係るデータアクセスシステムでのメール送信処理の一例を説明するための図である。
【図26】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図27】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図28】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図29】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図30】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図31】 第1の実施例に係るメール送信処理におけるサーバデータの一例を示す図である。
【図32】 第1の実施例に係るデータアクセスシステムでのチャット処理の一例を説明するための図である。
【図33】 第1の実施例に係るデータアクセスシステムでのスケジュールデータ更新処理の一例を説明するための図である。
【図34】 第1の実施例に係るクライアント装置における更新データの反映処理のフローチャートである。
【図35】 第1の実施例に係るデータ削除処理時におけるクライアントデータの一例を示す図である。
【図36】 本発明の第1の実施例に係るデータアクセスシステムの他の構成を示すブロック図である。
【図37】 第1の実施例の第1の変形例に係るデータサーバ装置の全体的な動作のフローチャートである。
【図38】 第1の実施例の第2の変形例に係るクライアント装置の全体的な動作のフローチャートである。
【図39】 本発明の第2の実施例に係るサーバデータとクライアントデータの関係の一例を示す図である。
【図40】 第2の実施例に係るデータサーバ装置におけるサーバデータの記憶形式の一例を示す図である。
【図41】 第2の実施例に係るデータサーバ装置における端末データの記憶形式の一例を示す図である。
【図42】 第2の実施例に係るデータサーバ装置を使用するユーザのユーザデータの記憶形式の一例を示す図である。
【図43】 第2の実施例に係るデータサーバ装置に記憶される処理テーブルの記憶形式の一例を示す図である。
【図44】 第2の実施例に係るデータサーバ装置に記憶される処理テーブルの記憶形式の一例を示す図である。
【図45】 第3の実施例に係るデータサーバ装置におけるサーバデータ記憶部の内容を示す図である。
【図46】 第3の実施例において構造化されたオブジェクトが伝播する様子を示す図である。
【図47】 オブジェクトの更新処理を行なうためのテーブルおよびルールを示す図である。
【図48】 オブジェクトの更新処理を行なうためのテーブルおよびルールを示す図である。
【図49】 オブジェクトの更新処理を行なうためのテーブルおよびルールを示す図である。
【図50】 オブジェクトの更新処理を行なうためのテーブルおよびルールを示す図である。
【図51】 第3の実施例において構造化されたオブジェクトのエレメントが削除される様子を示す図である。
Claims (14)
- 木構造を構成する要素の集合をサーバデータとして記憶するサーバデータ記憶部と、
前記サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するクライアント記憶データ管理部とを含み、
前記サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、
前記クライアント記憶データ管理部は、前記サーバデータ記憶部に記憶されたサーバデータが更新された場合に、前記サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、前記更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、前記木構造を構成する要素の集合の部分集合を選択して送信する、データサーバ装置。 - さらに、ユーザが所属するグループおよび所有する端末装置を示すユーザの属性を記憶するユーザプロファイル記憶部を含み、
前記クライアント記憶データ管理部による選択は、前記サーバデータに含まれる要素が持つ種別属性および重要度属性、クライアント装置の種別を含む属性、ユーザの属性のいずれかから導出される必要性に応じて行なわれる、請求項1に記載のデータサーバ装置。 - 前記クライアント記憶データ管理部による選択において、要素の削除は、要素の実体の削除か、サーバ上の要素へのリンクの置換えのいずれかを、選択的に行なうことにより実現されることを特徴とする、請求項1または2に記載のデータサーバ装置。
- 前記サーバデータは、XMLを用いて構造化されていることを特徴とする、請求項1〜3のいずれかに記載のデータサーバ装置。
- 前記クライアント記憶データ管理部は、クライアント装置において記憶中のクライアントデータを更新するデータと、少なくとも要素の重要度属性、時間属性または端末属性に基づいて決定された、クライアントデータが更新されたことをユーザに通知する方法を表わす通知情報とを、前記対応関係に基づいて抽出されたクライアント装置に送信するように処理を決定する、請求項1〜4のいずれかに記載のデータサーバ装置。
- 前記クライアント記憶データ管理部は、クライアント装置において記憶中のクライアントデータを更新するデータと、少なくとも要素の重要度属性、時間属性または端末属性に基づいて決定された、更新されたクライアントデータを消去する方法を表わす消去情報とを、前記対応関係に基づいて抽出されたクライアント装置に送信するように処理を決定する、請求項1〜4のいずれかに記載のデータサーバ装置。
- 前記クライアント記憶データ管理部は、前記サーバデータに含まれる要素が持つ種別属性、重要度属性および前記クライアント装置の種別を含む属性に対応させて定められたアルゴリズムに基づいて、ユーザ通知の必要性およびガーベージコレクションの必要性を規定した機会優先度およびクライアントデータを伝播すべき時間および伝播すべきクライアント装置を規定した伝播優先度を算出し、算出された前記優先度に対応して、クライアントデータに対する処理を決定する、請求項1〜4のいずれかに記載のデータサーバ装置。
- 前記クライアント記憶データ管理部は、クライアント装置へ送信される通信データを、構造化されたデータに含まれる複数の要素の中から要素を選択することにより、クライアントデータに対して処理するように決定する、請求項1〜4のいずれかに記載のデータサーバ装置。
- データサーバ装置のサーバデータ記憶部に記憶されたサーバデータの一部または全部であるクライアントデータを記憶するクライアントデータ記憶部と、
前記データサーバ装置から、更新されたクライアントデータと通知情報とを含む更新情報を受信する受信部と、
前記クライアント装置のユーザに、クライアントデータが更新されたことを通知する通知部と、
前記更新情報を受信すると、前記クライアントデータ記憶部に記憶されている当該データを前記更新情報に応じて更新するとともに、前記クライアントデータに含まれる要素がどのような種類のデータであるかを示す種別属性および重要度属性、前記クライアント装置の種別を含む属性、ユーザが所属するグループおよび所有する端末装置を示すユーザの属性のいずれかから導出される必要性に応じて、クライアントデータが更新されたことをユーザに通知する、あるいは通知しないように、前記クライアントデータ記憶部と前記通知部とを制御する制御部とを含み、
前記受信部による前記更新情報により前記クライアントデータ記憶部の空き容量が不足した場合、前記クライアント装置は、クライアントデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、前記クライアントデータ記憶部に記憶されたクライアントデータの要素を消去して、前記クライアントデータの要素が消去されたことに応答して、消去されたクライアントデータの要素に対応する前記データサーバ装置のマスタデータの当該要素へのリンク情報を設定する消去処理部をさらに含む、クライアント装置。 - 前記クライアント装置は、前記クライアントデータ記憶部に記憶されたクライアントデータを、前記クライアントデータの各要素の種別属性および重要度属性、前記クライアント装置の種別を含む属性、ユーザが所属するグループおよび所有する端末装置を示す属性のいずれかから導出される必要性に応じて、段階的に消去する消去処理部をさらに含む、請求項9に記載のクライアント装置。
- データサーバ装置のサーバデータ記憶部に記憶されたサーバデータの一部または全部であるクライアントデータを記憶するクライアントデータ記憶部と、
前記データサーバ装置から、更新されたクライアントデータと消去情報とを含む更新情報を受信する受信部と、
前記クライアントデータ記憶部と前記受信部とに接続され、前記受信部が受信した更新情報に含まれる更新されたクライアントデータを前記クライアントデータ記憶部に記憶するとともに、前記更新情報に含まれる消去情報に基づいて前記クライアントデータ記憶部に記憶されたクライアントデータを消去するように、前記クライアントデータ記憶部を制御する制御部とを含む、請求項9または10に記載のクライアント装置。 - 請求項1〜8のいずれかに記載のデータサーバ装置と、
ネットワークを介して、前記データサーバ装置に接続された請求項9〜11のいずれかに記載のクライアント装置とを含む、データアクセスシステム。 - 木構造を構成する要素の集合をサーバデータとして記憶し、前記サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するデータサーバ装置と、ネットワークを介して、前記データサーバ装置と接続され、前記サーバデータの一部または全部であるクライアントデータを記憶するクライアント装置とを含むデータアクセスシステムで用いられる、前記サーバデータと前記クライアントデータとのデータ同期方法であって、
前記サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、
前記クライアント装置が、前記クライアント装置に記憶されているクライアントデータが更新された際に、前記データサーバ装置にデータ更新の通知をするステップと、
前記データサーバ装置が、前記クライアント装置からデータ更新の通知を受信すると、前記サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、前記更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、前記木構造を構成する要素の集合の部分集合を選択して送信するステップとを含む、データ同期方法。 - コンピュータにデータサーバ機能を実現させるためのプログラムを記録したコンピュータ読取可能な記録媒体であって、前記プログラムは、前記コンピュータを、
木構造を構成する要素の集合をサーバデータとして記憶するサーバデータ記憶手段と、
前記サーバデータのそれぞれとクライアント装置との対応関係と、各クライアント装置の表現能力を示す属性とを記憶するクライアント記憶データ管理部として機能させ、
前記サーバデータは、要素がどのような種類のデータであるかを示す種別属性を持つ要素およびユーザにより指定された重要度を示す重要度属性を持つ要素を含み、
前記クライアント記憶データ管理部が、前記サーバデータ記憶部に記憶されたサーバデータが更新された場合に、前記サーバデータとクライアント装置との対応関係に基づき通知すべきクライアント装置を決定し、前記更新されたサーバデータの各要素の種別属性および重要度属性とクライアント装置の種別を含む属性とに基づき、前記木構造を構成する要素の集合の部分集合を選択して送信するよう機能させるためのプログラムである、コンピュータ読取可能な記録媒体。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001076276 | 2001-03-16 | ||
JP2001076276 | 2001-03-16 | ||
JP2001275119 | 2001-09-11 | ||
JP2001275119 | 2001-09-11 | ||
PCT/JP2002/002446 WO2002075549A1 (fr) | 2001-03-16 | 2002-03-14 | Systeme de synchronisation de donnees, dispositif utilise avec le systeme, et procede de synchronisation de donnees |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2002075549A1 JPWO2002075549A1 (ja) | 2004-07-08 |
JP4179880B2 true JP4179880B2 (ja) | 2008-11-12 |
Family
ID=26611445
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002574088A Expired - Fee Related JP4179880B2 (ja) | 2001-03-16 | 2002-03-14 | データを同期させるシステム、そのシステムに用いられる装置およびデータ同期方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20040107236A1 (ja) |
EP (1) | EP1387272A4 (ja) |
JP (1) | JP4179880B2 (ja) |
CN (1) | CN1304952C (ja) |
WO (1) | WO2002075549A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090409A (ja) * | 2009-10-20 | 2011-05-06 | Canon Inc | 情報処理装置、その処理方法、及びプログラム |
Families Citing this family (52)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7516163B1 (en) * | 2001-12-13 | 2009-04-07 | At & T Delaware Intellectrual Property, Inc. | Wireless device address book updates |
JP2004336343A (ja) * | 2003-05-07 | 2004-11-25 | Canon Inc | 画像処理システム |
US8438601B2 (en) | 2003-07-02 | 2013-05-07 | Rovi Solutions Corporation | Resource management for a networked personal video recording system |
US7454120B2 (en) | 2003-07-02 | 2008-11-18 | Macrovision Corporation | Methods and apparatus for client aggregation of television programming in a networked personal video recording system |
US7523096B2 (en) | 2003-12-03 | 2009-04-21 | Google Inc. | Methods and systems for personalized network searching |
JP2005174048A (ja) * | 2003-12-12 | 2005-06-30 | Internatl Business Mach Corp <Ibm> | データセット更新装置、端末装置、データセット更新方法、およびプログラム |
US7567967B2 (en) | 2004-01-16 | 2009-07-28 | Microsoft Corporation | Business application entity subscriptions synch operation management |
US7890544B2 (en) | 2004-01-16 | 2011-02-15 | Microsoft Corporation | Metadata driven customization of a software-implemented business process |
JP2006059131A (ja) * | 2004-08-20 | 2006-03-02 | Sony Ericsson Mobilecommunications Japan Inc | コミュニケーションシステム及びコミュニケーション方法 |
US20060101064A1 (en) | 2004-11-08 | 2006-05-11 | Sharpcast, Inc. | Method and apparatus for a file sharing and synchronization system |
US7761412B2 (en) * | 2005-04-22 | 2010-07-20 | Microsoft Corporation | Synchronization move support systems and methods |
KR101159341B1 (ko) | 2005-08-19 | 2012-06-25 | 삼성전자주식회사 | Xdm 서비스 정보 관리 시스템 및 방법 |
KR100655971B1 (ko) * | 2005-08-29 | 2006-12-11 | 엘지전자 주식회사 | 예약동기화 이동통신단말기 및 그 예약동기화방법 |
US8582946B2 (en) | 2005-11-04 | 2013-11-12 | Rovi Guides, Inc. | Systems and methods for recording programs using a network recording device as supplemental storage |
US20070156521A1 (en) | 2005-12-29 | 2007-07-05 | United Video Properties, Inc. | Systems and methods for commerce in media program related merchandise |
US9390405B2 (en) | 2006-01-05 | 2016-07-12 | International Business Machines Corporation | System and method for providing profile enhancement using scheduling information |
KR100678124B1 (ko) * | 2006-01-26 | 2007-02-02 | 삼성전자주식회사 | 화상 통신 단말 및 화상 통신 단말의 화상 통신 데이터처리 방법 |
JP4657944B2 (ja) * | 2006-02-20 | 2011-03-23 | ソニー・エリクソン・モバイルコミュニケーションズ株式会社 | 情報処理装置、情報処理方法、情報処理プログラム、及び携帯端末装置 |
EP1826716A1 (en) * | 2006-02-22 | 2007-08-29 | Sony Deutschland Gmbh | Method for updating a user profile |
US8285747B1 (en) * | 2006-03-14 | 2012-10-09 | Netapp, Inc. | Incorporation of client storage into a storage system |
JP4972980B2 (ja) * | 2006-04-14 | 2012-07-11 | 富士通株式会社 | データ通信プログラム、データ通信方法および携帯端末装置 |
US9549025B2 (en) * | 2006-05-09 | 2017-01-17 | International Business Machines Corporation | Protocol optimization for client and server synchronization |
US20080059580A1 (en) * | 2006-08-30 | 2008-03-06 | Brian Kalinowski | Online video/chat system |
BRPI0718373B1 (pt) * | 2006-09-29 | 2021-03-09 | Rovi Guides, Inc | método e sistema de orientação de mídia para fornecer uma recomendação a um usuário |
CN101536520B (zh) * | 2006-09-29 | 2011-08-17 | 联合视频制品公司 | 交互式媒体指南应用程序的配置文件的管理 |
WO2008108337A1 (ja) * | 2007-03-06 | 2008-09-12 | Nec Corporation | 端末データ共有方法及び共有データ表示方法 |
DE102007016181A1 (de) | 2007-04-02 | 2008-10-09 | Siemens Ag | Verfahren zur Bereitstellung von computerbasierten Diensten und/oder Anwendungen, Datenverarbeitungsanlage und Steuerungsprogramm |
CN101340425A (zh) * | 2007-07-02 | 2009-01-07 | 华为技术有限公司 | 终端间进行数据同步的方法和装置 |
JP2009048386A (ja) * | 2007-08-20 | 2009-03-05 | Chepro:Kk | 通信システム、通信方法、通信制御プログラムおよびこのプログラムを記憶した記録媒体 |
JP2009199324A (ja) * | 2008-02-21 | 2009-09-03 | Mitsubishi Electric Corp | データ同期システム及びデータ同期方法 |
DE102009030219A1 (de) * | 2009-06-23 | 2010-12-30 | T-Mobile International Ag | Verfahren zur Übertragung einer elektronischen Kurznachricht an mehrere Empfänger |
CN101730085B (zh) * | 2009-11-18 | 2012-09-05 | 中国电信股份有限公司 | 通信录数据同步方法和系统 |
CN102118854B (zh) * | 2010-01-16 | 2016-04-27 | 李燕 | 一种手机跟踪和共享信息的方法和系统 |
JP2011257959A (ja) * | 2010-06-08 | 2011-12-22 | Toshiba Corp | 差分検索システム |
CN102143146B (zh) * | 2010-11-09 | 2015-04-08 | 华为技术有限公司 | 企业通信录更新方法和设备及系统 |
US9055385B1 (en) | 2010-11-18 | 2015-06-09 | Sprint Communications Company L.P. | Adjusting an application update rate in a wireless communication device |
CN102624764A (zh) * | 2011-01-30 | 2012-08-01 | 北京千橡网景科技发展有限公司 | 同步同一Web应用程序的多个副本的方法和设备 |
US10057318B1 (en) | 2012-08-10 | 2018-08-21 | Dropbox, Inc. | System, method, and computer program for enabling a user to access and edit via a virtual drive objects synchronized to a plurality of synchronization clients |
US9848276B2 (en) | 2013-03-11 | 2017-12-19 | Rovi Guides, Inc. | Systems and methods for auto-configuring a user equipment device with content consumption material |
CN103313216B (zh) * | 2013-06-24 | 2015-04-01 | 腾讯科技(深圳)有限公司 | 一种通信账号的消息提醒方法、系统及装置 |
JP5735588B2 (ja) * | 2013-07-17 | 2015-06-17 | 三菱電機株式会社 | 宅内コントローラ、宅内機器管理システム、通知メッセージ表示方法及びプログラム |
CN104836825A (zh) * | 2014-02-11 | 2015-08-12 | 中兴通讯股份有限公司 | 一种信息共享方法及装置 |
CN104021053B (zh) * | 2014-06-13 | 2017-02-08 | 广州金山网络科技有限公司 | 一种修复、备份应用程序的方法、移动终端及网络服务器 |
CN104239467A (zh) * | 2014-09-02 | 2014-12-24 | 百度在线网络技术(北京)有限公司 | 应用程序的推荐方法、系统和装置 |
CN105592122A (zh) * | 2014-11-03 | 2016-05-18 | 中国银联股份有限公司 | 一种云平台监控方法以及云平台监控系统 |
US9467545B1 (en) * | 2014-11-10 | 2016-10-11 | GoneBusy, Inc. | Specifically programmed computer-implemented engine systems for real-time on-demand discovery of available time slots across programmed schedule objects and methods of use thereof |
US10242082B2 (en) * | 2014-12-12 | 2019-03-26 | Microsoft Technology Licensing, Llc | Context-driven multi-user communication |
JP6631996B2 (ja) * | 2016-05-11 | 2020-01-15 | アルパイン株式会社 | 電子装置、データベースの構築方法およびシステム |
JP6767229B2 (ja) * | 2016-10-13 | 2020-10-14 | 任天堂株式会社 | 情報処理プログラム、情報処理装置、情報処理システム、および、情報処理方法 |
CN107770367A (zh) * | 2017-09-27 | 2018-03-06 | 郑州云海信息技术有限公司 | 一种基于云计算的实时提醒备忘录系统及备忘方法 |
US11334596B2 (en) | 2018-04-27 | 2022-05-17 | Dropbox, Inc. | Selectively identifying and recommending digital content items for synchronization |
CN113485772A (zh) * | 2021-07-28 | 2021-10-08 | 江苏创源电子有限公司 | 一种应用程序的配置更新方法、装置、设备及介质 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5710922A (en) * | 1993-06-02 | 1998-01-20 | Apple Computer, Inc. | Method for synchronizing and archiving information between computer systems |
US5664207A (en) * | 1994-12-16 | 1997-09-02 | Xcellenet, Inc. | Systems and methods for automatically sharing information among remote/mobile nodes |
US5754782A (en) * | 1995-12-04 | 1998-05-19 | International Business Machines Corporation | System and method for backing up and restoring groupware documents |
US6074434A (en) * | 1996-06-07 | 2000-06-13 | International Business Machines Corporation | Selection of code updates, data updates or new data for client |
US5926816A (en) * | 1996-10-09 | 1999-07-20 | Oracle Corporation | Database Synchronizer |
US5884325A (en) * | 1996-10-09 | 1999-03-16 | Oracle Corporation | System for synchronizing shared data between computers |
US5870765A (en) * | 1996-10-09 | 1999-02-09 | Oracle Corporation | Database synchronizer |
JPH10240598A (ja) * | 1997-02-21 | 1998-09-11 | Hitachi Building Syst Co Ltd | データベースシステムのデータ更新方法 |
US6310941B1 (en) * | 1997-03-14 | 2001-10-30 | Itxc, Inc. | Method and apparatus for facilitating tiered collaboration |
JPH1155324A (ja) * | 1997-07-31 | 1999-02-26 | Fujitsu Ltd | コンピュータネットワークの通信システム |
US6151708A (en) * | 1997-12-19 | 2000-11-21 | Microsoft Corporation | Determining program update availability via set intersection over a sub-optical pathway |
JPH11184813A (ja) * | 1997-12-22 | 1999-07-09 | Fuji Xerox Co Ltd | データ通信システム |
JP2000035910A (ja) * | 1998-07-17 | 2000-02-02 | Ntt Mobil Communication Network Inc | データベースシステム用端末装置、データベース管理システム及びデータベース管理方法 |
US6687878B1 (en) * | 1999-03-15 | 2004-02-03 | Real Time Image Ltd. | Synchronizing/updating local client notes with annotations previously made by other clients in a notes database |
JP3756349B2 (ja) * | 1999-06-17 | 2006-03-15 | シャープ株式会社 | データベース管理装置、および、そのプログラムが記録された記録媒体 |
US6859821B1 (en) * | 1999-07-19 | 2005-02-22 | Groove Networks, Inc. | Method and apparatus for prioritizing data change requests and maintaining data consistency in a distributed computer system equipped for activity-based collaboration |
US6393434B1 (en) * | 1999-09-14 | 2002-05-21 | International Business Machines Corporation | Method and system for synchronizing data using fine-grained synchronization plans |
US6636897B1 (en) * | 1999-09-28 | 2003-10-21 | Microsoft Corporation | Selective information subset synchronization based on single user action |
US6609148B1 (en) * | 1999-11-10 | 2003-08-19 | Randy Salo | Clients remote access to enterprise networks employing enterprise gateway servers in a centralized data center converting plurality of data requests for messaging and collaboration into a single request |
US6694336B1 (en) * | 2000-01-25 | 2004-02-17 | Fusionone, Inc. | Data transfer and synchronization system |
US6591278B1 (en) * | 2000-03-03 | 2003-07-08 | R-Objects, Inc. | Project data management system and method |
US6505200B1 (en) * | 2000-07-06 | 2003-01-07 | International Business Machines Corporation | Application-independent data synchronization technique |
US7013316B1 (en) * | 2000-07-13 | 2006-03-14 | Microsoft Corporation | System and method for synchronizing multiple database files |
US6636875B1 (en) * | 2000-10-25 | 2003-10-21 | International Business Machines Corporation | System and method for synchronizing related data elements in disparate storage systems |
US20020075303A1 (en) * | 2000-12-18 | 2002-06-20 | Nortel Networks Limited And Bell Canada | Method and system for creating a virtual team environment |
US8463744B2 (en) * | 2001-01-03 | 2013-06-11 | International Business Machines Corporation | Method and system for synchronizing data |
US20030217096A1 (en) * | 2001-12-14 | 2003-11-20 | Mckelvie Samuel J. | Agent based application using data synchronization |
-
2002
- 2002-03-14 WO PCT/JP2002/002446 patent/WO2002075549A1/ja active Application Filing
- 2002-03-14 US US10/471,976 patent/US20040107236A1/en not_active Abandoned
- 2002-03-14 JP JP2002574088A patent/JP4179880B2/ja not_active Expired - Fee Related
- 2002-03-14 CN CNB028066723A patent/CN1304952C/zh not_active Expired - Fee Related
- 2002-03-14 EP EP02705209A patent/EP1387272A4/en not_active Withdrawn
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011090409A (ja) * | 2009-10-20 | 2011-05-06 | Canon Inc | 情報処理装置、その処理方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
CN1526099A (zh) | 2004-09-01 |
CN1304952C (zh) | 2007-03-14 |
JPWO2002075549A1 (ja) | 2004-07-08 |
EP1387272A4 (en) | 2008-04-02 |
EP1387272A1 (en) | 2004-02-04 |
US20040107236A1 (en) | 2004-06-03 |
WO2002075549A1 (fr) | 2002-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4179880B2 (ja) | データを同期させるシステム、そのシステムに用いられる装置およびデータ同期方法 | |
JP3927834B2 (ja) | サービス提供システム、方法、プログラム及び記憶媒体 | |
CN1705946B (zh) | 用于同步身份信息的方法和系统 | |
JP3943949B2 (ja) | 電子メール処理システム、方法、プログラム及び記憶媒体 | |
JP4250366B2 (ja) | 電子メール処理システム、方法、プログラム及び記憶媒体 | |
US20030023759A1 (en) | System and method for provisioning telephony services via a personal digital assistant | |
JPWO2007077603A1 (ja) | 情報処理装置、情報処理方法及びプログラム | |
KR20060107902A (ko) | 컨택트 관리 | |
KR100396204B1 (ko) | 이메일 작성시 수신자의 이메일 주소 입력방법 및 이를구현할 수 있는 프로그램이 수록된 컴퓨터로 읽을 수 있는기록매체 | |
JP4721442B2 (ja) | 電子メールシステム | |
JP2004220259A (ja) | 添付ファイル管理システム、プログラム、情報記憶媒体および添付ファイル管理方法 | |
JP3756349B2 (ja) | データベース管理装置、および、そのプログラムが記録された記録媒体 | |
JP2008504632A (ja) | メッセージ送受信および掲示システム、送受信および掲示方法、並びに、その方法を具現するプログラムを記録したコンピュータで読出可能な保存媒体 | |
JP2005284454A (ja) | 迷惑メール配信防止システム、当該システムにおける情報端末及び電子メールサーバ | |
JP5051793B2 (ja) | 電子メール制御装置及びその制御方法、プログラム | |
JP2003196243A5 (ja) | ||
JP3708146B2 (ja) | ファイルシステムおよびそのファイルシステムで管理される情報の属性構造 | |
JP2011100363A (ja) | 情報処理装置およびその制御方法、プログラム | |
KR100996819B1 (ko) | 분산된 협업 시스템에서 콘택트를 저장하고 관리하기 위한방법 및 장치 | |
CA2452893C (en) | Method and apparatus for storing and managing contacts in a distributed collaboration system | |
JP2003233563A (ja) | 電子メール処理システム、方法、プログラム及び記憶媒体 | |
JP2004318866A (ja) | 電子メール受信装置及びプログラム | |
JP2004145572A (ja) | スケジュール管理用データベース、およびスケジュールデータ管理方法ならびにスケジュール管理方法 | |
JP2007172015A (ja) | 電子メールアドレス管理装置と方法並びに電子メール管理プログラム | |
JP2005352949A (ja) | 情報処理装置,電子ファイル重複受信制限システム,それらを制御する電子ファイル重複受信制限プログラム,それを記録する記録媒体,及び電子ファイル重複受信制限方法。 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20071120 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080118 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080520 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080722 |
|
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: 20080819 |
|
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: 20080826 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110905 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120905 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130905 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |