JP2000040025A - デ―タベ―ス管理装置、および、そのプログラムが記録された記録媒体 - Google Patents

デ―タベ―ス管理装置、および、そのプログラムが記録された記録媒体

Info

Publication number
JP2000040025A
JP2000040025A JP11007034A JP703499A JP2000040025A JP 2000040025 A JP2000040025 A JP 2000040025A JP 11007034 A JP11007034 A JP 11007034A JP 703499 A JP703499 A JP 703499A JP 2000040025 A JP2000040025 A JP 2000040025A
Authority
JP
Japan
Prior art keywords
data
database management
tip
database
order
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.)
Granted
Application number
JP11007034A
Other languages
English (en)
Other versions
JP3501968B2 (ja
Inventor
Toshiyuki Iwai
俊幸 岩井
Kanji Nakagawa
寛治 中川
Hidetoshi Takizawa
英俊 瀧沢
Tashi Kamakura
多志 鎌倉
Fusayuki Fujita
房之 藤田
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP00703499A priority Critical patent/JP3501968B2/ja
Priority to US09/311,302 priority patent/US6493725B1/en
Priority to EP99109696A priority patent/EP0959417A3/en
Publication of JP2000040025A publication Critical patent/JP2000040025A/ja
Application granted granted Critical
Publication of JP3501968B2 publication Critical patent/JP3501968B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

(57)【要約】 【課題】 より少ないデータの付加で、同期処理時の通
信データ量を削減可能なデータベース管理装置を実現す
る。 【解決手段】 各情報処理機器2は、共有フクロ内のテ
ィップ毎に、更新の有無と移動状態とを示すダーティ・
ビットを作成する。ダーティ・ビットは、同期処理時
に、対応する相手ティップのダーティ・ビットと同一順
位に配され、ダーティ・ビット・リストとして格納され
る。データベース処理部24は、非同期期間中、ダーテ
ィ・ビットを有するティップへの操作を監視して、上記
順位を維持したまま、ダーティ・ビットを更新する。同
期処理の際には、ダーティ・ビットが伝送され、ティッ
プの内容伝送の要否と伝送方向とが決定される。ティッ
プの対応関係は、ダーティ・ビットの伝送順序で特定さ
れ、同期処理の時点で共有フクロに存在する非更新のテ
ィップは、移動の有無に拘わらず識別される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、通信によって、相
手とデータの内容を同一にできるデータベース管理装置
に関し、特に、同期処理時に通信あるいは処理されるデ
ータ量を削減可能なデータベース管理装置、および、そ
のプログラムが記録された記録媒体に関するものであ
る。
【0002】
【従来の技術】従来より、情報処理機器は、広く普及し
ており、近年では、例えば、デスクトップ・パソコンな
どの高性能な情報処理機器と、携帯情報端末などの携帯
性に優れた情報処理機器となど、複数の情報処理機器を
個人が所有することも珍しくない。ここで、これら複数
の情報処理機器によって、例えば、スケジュールやアド
レス帳などの個人情報を管理する場合、いずれの情報処
理機器に設けられたデータベースであっても、同一内容
のデータを持つことが要求される。したがって、例え
ば、パソコンと携帯型情報端末とで個人情報を管理する
場合を例にすると、パソコンでマスターデータベースを
管理し、当該マスターデータベースのデータを携帯型の
情報処理機器のデータベース(携帯データベース)へコ
ピーして、個人情報を持ち歩いている。
【0003】このように、複数のデータベース管理装置
で同一のデータを管理する場合、あるデータベース管理
装置でデータが変更されると、全てのデータベース管理
装置でも、データベースを更新する必要がある。ここ
で、各データベース管理装置が常時通信可能であれば、
更新したデータベース管理装置が他のデータベース管理
装置へデータ変更を通知すれば、データ変更を即座に反
映できる。ところが、各データベース管理装置は、例え
ば、データベース管理装置が携帯情報端末の場合などの
ように、常に通信できるとは限らない。この場合、デー
タの変更時点では、他のデータベース管理装置のデータ
ベースへ当該データ変更を反映できない。したがって、
データベースの同一性を保つためには、各データベース
管理装置が通信可能になった時点で、データベースの内
容を相手と同一にするための処理、すなわち、同期処理
が必要になる。
【0004】上述の例で説明すると、携帯情報端末でデ
ータを変更した場合、携帯情報端末を自宅やオフィスな
どへ持ちかえった時点で同期処理が行われ、携帯情報端
末の携帯データベースとパソコン上のマスターデータベ
ースとの間で、データが同一になる。
【0005】ここで、従来の同期処理の一例として、ダ
ウンロード/アップロードが挙げられる。具体的には、
パソコンでデータが変更された場合、マスターデータベ
ースの内容が携帯情報端末へコピーされる(ダウンロー
ド)。一方、携帯情報端末でデータが変更された場合
は、携帯データベースの内容がパソコンへコピーされる
(アップロード)。
【0006】また、他の従来例としては、和集合を用い
る同期処理が挙げられる。この同期処理では、2つのデ
ータベース管理装置が通信可能になった時点で、双方の
データベースの内容が比較され、新たなデータベースと
して、それぞれのデータベースへ追加された情報全てを
含むような和集合が作成される。その後、作成されたデ
ータベースは、双方のデータベース管理装置に格納され
る。
【0007】例えば、両データベースに、当初データ
「A」が含まれており、一方のデータベース管理装置X
で「B」のデータが追加され、他方のデータベース管理
装置Yで「C」のデータが追加された場合、データベー
ス管理装置Xは、自らが保持する内容「A+B」を、デ
ータベース管理装置Yへ送出する。一方、データベース
管理装置Yは、受け取った「A+B」と、自らが保持す
る内容「A+C」との和集合「A+B+C」を作成し、
自らのデータベースとして格納する。さらに、データベ
ース管理装置Yは、当該データベースの内容「A+B+
C」をデータベース管理装置Xへ送り返す。これによ
り、データベース管理装置Xは、自らのデータベースの
内容を、データベース管理装置Yと同じ「A+B+C」
に更新できる。
【0008】
【発明が解決しようとする課題】しかしながら、上記同
期処理を行う従来のデータベース管理装置では、同期処
理の際に、両データベース管理装置間を伝送されるデー
タ量(通信量)、および、各データベース管理装置にて
演算されるデータ量が極めて多いという問題を生ずる。
【0009】具体的には、ダウンロード/アップロード
では、変更したデータの数に拘わらず、一方のデータベ
ースの内容全てが他方のデータベース管理装置へ送信さ
れる。例えば、1000件のデータを持つデータベース
の場合、1件のデータを変更した場合であっても、10
00件分のデータが送信される。この結果、両データベ
ース管理装置間で伝送される通信量が増大する。併せ
て、受信側のデータベース管理装置では、送信側のデー
タベースによって、データベースの内容が置き換えられ
るため、受信側でのデータ変更は、失われてしまう。
【0010】また、和集合を用いた同期処理では、和集
合を作成するために、一方のデータベースが他方へ送信
され、作成された和集合が新たなデータベースとして送
り返される。このように、当該同期処理では、データベ
ースの内容全てが両データベース管理装置間を往復する
必要があり、同期処理時の通信量がさらに増大する。
【0011】併せて、一方のみでデータが削除された場
合、他方のデータベースにはデータが残留している。し
たがって、新たなデータベースには、当該データが再び
含まれ、データが削除されない。この結果、データベー
スの記憶に必要なメモリ量が増大すると共に、同期処理
時の通信量がさらに増大する。
【0012】これらの問題を解決するために、例えば、
特開平9−6693号公報では、同期処理の他の例とし
て、データベースに含まれる全てのデータに、変更の有
無を示す更新情報が付加されたデータベース管理装置に
ついて記載されている。具体的には、各データベース管
理装置は、データベースに含まれる各データ毎に、当該
データを識別するためのID情報と、変更なし/訂正あ
り/追加/削除を示す更新情報とを記憶しており、デー
タが変更されると、当該データに対応する更新情報を更
新している。さらに、同期処理時には、各データベース
管理装置は、全データのID情報および更新情報を相手
に通知する。一方、相手のデータベース管理装置は、受
け取ったID情報に基づいて、自らのデータベースにお
いて、当該データに対応するデータを検索し、双方の更
新情報を比較する。さらに、一方のみが変更されている
場合、変更側のデータで不変のデータを置き換える。ま
た、両方が変更されている場合は、自らのデータベース
へ、相手のデータを追加し、自らのデータを相手のデー
タベースへ追加する。これにより、いずれのデータベー
ス管理装置でもデータが変更されていない場合、当該デ
ータの送付を省略でき、同期処理時の通信量を削減でき
る。
【0013】しかしながら、上記構成であっても、デー
タベース全体でID情報と更新情報とを送受する必要が
ある。さらに、双方でデータが訂正された場合は、それ
ぞれを相手のデータベースへ追加しなければならない。
これらの結果、同期処理時の通信量を充分に削減してい
るとは言いがたい。加えて、双方でデータが訂正された
場合には、データベースに含まれるデータ数が増加して
いくので、データベースの記憶に必要なメモリ量が増大
し、同期処理時の通信量が増大する虞れがある。
【0014】本発明は、上記の問題点に鑑みてなされた
ものであり、その目的は、変更の有無の記憶に必要なメ
モリ量が少なく、かつ、同期処理時に通信および処理さ
れるデータ量をさらに削減可能なデータベース管理装置
と、そのプログラムが記録された記録媒体とを実現する
ことにある。
【0015】
【課題を解決するための手段】請求項1の発明に係るデ
ータベース管理装置は、上記の課題を解決するために、
複数のデータベース管理装置と、互いに通信可能になっ
たデータベース管理装置に格納されたデータベース間
で、対応するデータの内容を一致させる同期処理手段と
を有するデータベースシステムを構成するために設けら
れ、少なくとも1つのデータベースを有するデータベー
ス管理装置において、以下の手段を講じたことを特徴と
している。
【0016】すなわち、相手のデータベースとの共有範
囲として、自らのデータベース内に部分集合を設定する
部分集合設定手段と、少なくとも前回の同期処理終了時
に上記部分集合に含まれたデータについて、前回の同期
処理から次の同期処理までの非同期期間中に更新された
か否かを示す更新情報と、非同期期間中に上記部分集合
の内外を移動したか否かを示す移動情報とを含む状態情
報が記憶される状態情報記憶手段と、非同期期間中、対
応する状態情報が上記状態情報記憶手段に格納されてい
る各データを監視して、それぞれの状態情報を更新する
状態情報更新手段とを備えている。
【0017】なお、状態情報は、非同期期間中における
上記各データの状態を示しているため、自らのデータベ
ースでは、同じデータであっても、相手のデータと同期
処理する時点が互いに異なっていれば、互いに別の状態
情報として記憶される。ここで、通常、各データベース
管理装置は、相手のデータベース管理装置と同期処理す
る時点を、他のデータベース管理装置に拘わらず決定で
きる。したがって、多くの場合、各データの状態情報
は、相手毎に設けられている。ただし、同期処理する時
点が常に同じであれば、相手が複数であっても、各デー
タの状態情報を共用できる。
【0018】上記構成によれば、状態情報記憶手段は、
前回の同期処理時に部分集合に存在するデータの状態情
報を記憶している。非同期期間中、当該状態情報は、例
えば、データの移動や削除などによってデータが部分集
合内に存在しなくなった場合であっても保持される。さ
らに、状態情報更新手段は、状態情報が状態情報記憶手
段に格納されている限り、当該状態情報に対応するデー
タを監視し、状態情報を更新する。
【0019】したがって、次回の同期処理時の状態情報
を参照することによって、部分集合内外を移動したデー
タであっても、前回の同期処理時と次回の同期処理時と
の双方で部分集合内に存在し、かつ、両時点の間で内容
が更新(変更)されていないデータを確実に識別でき
る。ここで、当該データは、相手のデータベース管理装
置から見ると、共有範囲内で移動も更新も行われていな
いデータと同一であり、当該データによる相手のデータ
更新は不要である。この結果、当該データの識別によっ
て、相手のデータベース管理装置へ通信するデータ量を
削減でき、同期処理時に処理されるデータ量を削減でき
る。
【0020】さらに、状態情報を参照すれば、自らのデ
ータベースにて、部分集合の内外を移動しただけのデー
タを確実に識別できる。したがって、移動を識別しない
場合とは異なり、当該データを別のデータと誤って識別
して、データベースに含まれるデータ数を増加させる不
具合が発生しない。この結果、データベースのデータ量
の不所望な増加を防止でき、データベースの記憶に必要
なメモリ量と、次回の同期処理にて通信および処理され
るデータ量とを削減できる。
【0021】加えて、上記状態情報は、少なくとも、前
回の同期処理終了時に部分集合に含まれたデータについ
てのみ記憶すればよい。また、状態情報は、更新情報や
移動情報などから構成されており、例えば、2〜3ビッ
ト程度と、データの内容よりも極めて少ないデータ量で
表現できる。したがって、状態情報を記憶するためのメ
モリ量と、当該状態情報を処理する際の演算量とを充分
低いレベルに保つことができる。
【0022】なお、データベースシステムにおいて、少
なくとも1つのデータベース管理装置が状態情報を記憶
していれば、当該データベース管理装置から相手へ送ら
れるデータ量を削減できるので、上述の各効果が得られ
る。
【0023】また、請求項2の発明に係るデータベース
管理装置は、請求項1記載の発明の構成において、上記
同期処理手段を備え、当該同期処理手段には、自らの共
有範囲内の各データと、上記相手の共有範囲内の各デー
タとを対応付ける対応付け手段と、対応付けられた各デ
ータの組について、自らの状態情報記憶手段に格納され
た状態情報と、相手のデータベース管理装置から受け取
った情報とに基づいて、データの内容伝送の要否を判定
する判定手段とが設けられていることを特徴としてい
る。
【0024】上記構成によれば、同期処理の際、判定手
段は、少なくとも自らの状態情報記憶手段に格納された
状態情報と、相手のデータベース管理装置から受け取っ
た情報とに基づいて、データの内容伝送の要否を判定す
る。これにより、判定手段は、上述の状態情報や更新の
有無など、データの内容自体に比べてデータ量の小さな
情報に基づき、データの内容伝送よりも前の時点で、内
容伝送の要否を判定できる。この結果、同期処理の際、
各データベース管理装置間で伝送されるデータ量、およ
び、それぞれで処理されるデータ量を削減できる。
【0025】さらに、請求項3の発明に係るデータベー
ス管理装置は、請求項2記載の発明の構成において、上
記判定手段には、互いに対応付けられた各データの組に
ついて、部分集合内へ移動し、現在部分集合内に存在す
ることを示す状態情報が少なくとも一つのデータベース
管理装置に記憶されている場合、および、自らの状態情
報が部分集合内を示し、かつ、上記相手のデータベース
管理装置から、当該データ組を構成するデータが共有範
囲内に存在していると通知された場合は、当該データ組
に対応する状態情報を部分集合内に設定し、残余の場合
は、部分集合外に設定する内外判定同期手段が設けられ
ていることを特徴としている。
【0026】上記構成によれば、同期処理の際、内外判
定同期手段は、少なくとも自らの状態情報記憶手段に格
納された状態情報と、相手の状態情報あるいは更新の有
無とに基づいて、対応するデータ組が共有範囲内に存在
するか否かを判定し、例えば、自らの状態情報や、存在
する場合は相手の状態情報など、当該データ組に対応す
る状態情報を部分集合内か、部分集合外かに設定する。
これにより、同期処理手段は、上述の状態情報や更新の
有無などのデータ量の小さな情報によって、各データが
共有範囲内に存在するか否かを判定できる。この結果、
同期処理の際、各データベース管理装置間で伝送される
データ量、および、それぞれで処理されるデータ量を削
減できる。
【0027】また、部分集合内か否かの判定結果は、状
態情報などとして、各データ組毎に格納される。また、
判定中に伝送されるデータ量は、データの内容自体に比
べれば極めて少なく、データ組それぞれの判定は、極め
て短時間で終了する。したがって、例えば、通信の切断
などによって、全てのデータ組の判定が終了するまで
に、同期処理が中断される場合であっても、それまでの
判定結果は、保存される。さらに、判定後の状態情報に
基づいて再度判定しても、判定結果が変化しないので、
内外判定同期手段は、同期処理が中断されたか否かに拘
わらず、何ら支障なく、同期処理を再開できる。このよ
うに、各判定の独立性が高いので、通信によって同期処
理を行う場合のように、同期処理が中断される虞れがあ
るデータベースシステムであっても、各データベース間
の整合性を確実に保つことができる。
【0028】一方、請求項4の発明に係るデータベース
管理装置は、請求項2または3記載の発明の構成におい
て、上記判定手段には、互いに対応するデータの組のう
ち、少なくとも、同期処理後に共有範囲内に存在するデ
ータ組それぞれについて、当該データ組に対応する状態
情報が更新を示している場合、および、上記相手のデー
タベース管理装置から、当該データ組を構成するデータ
の更新を通知された場合に、当該データ組のうちのいず
れのデータを優先するかを判定する優先側判定手段と、
当該優先側判定手段が優先するデータを決定した場合
は、優先するデータの内容で、非優先側のデータの内容
を置き換えるデータ内容同期手段とが設けられているこ
とを特徴としている。
【0029】上記構成によれば、同期処理の際、優先側
判定手段は、上記データ組について、少なくとも自らの
状態情報記憶手段に格納された状態情報と、相手の状態
情報あるいは更新の有無とに基づいて、優先側を判定す
る必要があるか否かを判断し、優先側を判定する。それ
ゆえ、極めて少ないデータ量で、優先側判定の要否を判
定できる。さらに、データ内容同期手段は、優先側を決
定できた場合、優先側のデータの内容で非優先側のデー
タの内容を置き換える。したがって、対応するデータ
が、各データベース管理装置それぞれで更新された場合
(データが衝突した場合)であっても、優先側を判定で
きれば、データベースに含まれるデータの増加を抑制で
きる。また、各データ組毎に判定されるので、データベ
ースの全てのデータを通信するよりも、データ量を大幅
に削減できる。さらに、データの置き換えは、1つのデ
ータベース管理装置からデータを送出するだけでよく、
双方向の通信が不要になる。これらの結果、同期処理の
際に、通信あるいは処理されるデータ量を削減できる。
【0030】ここで、データの内容は、上記状態情報な
どに比べれば、比較的データ量が大きいので、転送中に
同期処理が中断されると、非優先側のデータ内容が消失
する虞れがある。ところが、この場合であっても、優先
側のデータ内容と、例えば、状態情報など、優先側判定
手段が参照する情報とが保持されている。したがって、
同期処理の再開後に、優先側のデータ内容を再送すれ
ば、何ら支障なく、同期処理できる。この結果、同期処
理が中断される虞れがあるデータベースシステムであっ
ても、各データベース間の整合性を確実に保つことがで
きる。
【0031】なお、上記優先側判定手段が優先側を判定
する際、データの内容など、状態情報以外のデータを参
照する場合、通信されるデータ量が増加し、判定に要す
る時間が増大しがちである。この場合には、同期処理後
に共有範囲内に存在するデータ組についてのみ、優先側
を判定すれば、データ組全てで優先側を判定する場合に
比べて、判定に要する時間を短縮できる。
【0032】さらに、請求項5の発明に係るデータベー
ス管理装置は、請求項3記載の発明の構成において、上
記判定手段には、上記内外判定同期手段による設定に基
づいて、同期処理後に共有範囲内に存在するデータ組を
識別し、当該データ組それぞれについて、当該データ組
に対応する状態情報が更新を示している場合、および、
上記相手のデータベース管理装置から、当該データ組を
構成するデータの更新を通知された場合に、当該データ
組のうちのいずれのデータを優先するかを判定する優先
側判定手段と、当該優先側判定手段が優先するデータを
決定した場合は、優先するデータの内容で、非優先側の
データの内容を置き換えるデータ内容同期手段が設けら
れていることを特徴としている。
【0033】上記構成によれば、優先側判定手段は、同
期処理後に共有範囲内に存在するデータ組についての
み、優先側を判定できる。さらに、上記優先側判定手段
は、内外判定同期手段の判定結果に基づいて、当該デー
タ組を識別する。したがって、対応するデータ組全てで
優先側を判定する場合、あるいは、内外判定同期手段の
判定とは別に、共有範囲内に存在するか否かを判定する
場合に比べて、判定時間を短縮できる。
【0034】一方、請求項6の発明に係るデータベース
管理装置は、上記課題を解決するために、複数のデータ
ベース管理装置と、互いに通信可能になったデータベー
ス管理装置に格納されたデータベース間で、対応するデ
ータの内容を一致させる同期処理手段とを有するデータ
ベースシステムを構成するために設けられ、少なくとも
1つのデータベースを有するデータベース管理装置にお
いて、以下の手段を講じたことを特徴としている。
【0035】すなわち、少なくとも自らの共有範囲に含
まれているデータの順序を記憶すると共に、前回の同期
処理では、各データの順序が相手と同一に設定される順
序記憶手段と、上記順序のうち、前回の同期処理での末
尾の順位を示す対応済順位を記憶する対応済順位記憶手
段と、前回の同期処理から次の同期処理までの非同期期
間中は、上記順序記憶手段が格納する順序のうち、上記
対応済順位および当該対応済順位よりも前の順序を保持
すると共に、非同期期間中に自らの共有範囲へ新たに含
まれたデータは、上記対応済順位よりも後になるよう
に、各データの順序を管理する順序管理手段とを備えて
いる。
【0036】なお、データの順序は、請求項1記載の状
態情報と同様、自らのデータベースでは同じデータであ
っても、相手のデータと同期処理する時点が互いに異な
っていれば、互いに別の順序が記憶される。また、順序
の格納方法は、各順位のデータを特定できる格納方法で
あればよく、例えば、データを示す情報が格納される順
序として格納してもよいし、各データ毎に、順序を示す
情報を付加してもよい。さらに、データを示す情報をリ
スト状に記憶することもできる。
【0037】上記構成によれば、同期処理が終了した時
点において、各データベース管理装置の順序記憶手段
は、対応するデータの順序が互いに同一になるように、
上記各データの順序を記憶している。また、対応済順位
記憶手段には、末尾のデータの順位が格納される。
【0038】一方、非同期期間では、各データベース管
理装置の順序管理手段は、例えば、削除や移動などによ
って、順序管理手段に格納された順序に対応するデータ
が共有範囲に存在しなくなった場合であっても、当該デ
ータの順位が対応済順位と同じか、それより前の順位で
あれば、当該データの順序を保持しつづける。また、新
規作成や移動などにより、共有範囲に新たに含まれたデ
ータは、対応済順位よりも後になるように、各データの
順序を管理する。これにより、非同期期間中であって
も、各データベース管理装置の順序記憶手段間で、対応
するデータの順位は、互いに同一に保たれる。
【0039】上記構成では、各データベース管理装置
は、自らに格納されたデータの順序として対応関係を記
憶している。したがって、対応先のデータを示す対応情
報で対応関係を記憶する場合とは異なり、各データベー
ス管理装置は、他のデータベース管理装置におけるデー
タの格納方法に拘わらず、自らに適した格納方法で対応
関係を記憶できる。これにより、対応情報で記憶する場
合よりも、対応関係の記憶に必要なメモリ量と、同期処
理時の演算量とを削減できる。
【0040】加えて、同期処理の際、例えば、順序を示
す情報、あるいは、データを示す情報(状態情報など)
を送出する順序などによって、相手に対応関係を通知で
きる。したがって、上記対応情報を伝送せずに対応関係
を特定でき、対応情報を伝送する場合に比べて、伝送あ
るいは処理されるデータ量を削減できる。
【0041】さらに、請求項7の発明に係るデータベー
ス管理装置は、請求項6記載の発明の構成において、上
記同期処理手段を備え、当該同期処理手段は、上記相手
のデータベースが格納された相手のデータベース管理装
置と通信して同期処理すると共に、当該同期処理手段に
は、自らの共有範囲内に存在するデータのうち、上記順
序記憶手段に格納された順位が上記対応済順位より後の
データを、相手の共有範囲に追加するデータ追加手段
と、相手の共有範囲へ追加したデータについて、自らの
順序記憶手段に記憶された順位と、相手の順序記憶手段
に記憶された順位とが一致し、かつ、それぞれの順位が
未だ対応付けられていないデータの順位よりも前になる
ように、自らおよび相手の順序記憶手段の少なくとも1
つを更新する追加データ対応付手段と、上記対応済順位
を更新する対応済順位更新手段とを備えていることを特
徴としている。なお、一度の処理で、相手へ追加するデ
ータ数は、1つであってもよいし、全てであってもよ
い。
【0042】上記構成によれば、例えば、新規作成や共
有範囲内への移動などによって、非同期期間中に新たに
共有範囲に追加されたデータは、同期処理の際、他のデ
ータベース管理装置の共有範囲へ追加される。さらに、
追加データ対応付手段と対応済順位更新手段とによっ
て、追加されたデータの順序および対応済順位が、各デ
ータベース管理装置間で互いに同一になるように制御さ
れる。これにより、順序や対応済順位が矛盾することな
く、データを追加できる。
【0043】さらに、請求項8の発明に係るデータベー
ス管理装置は、請求項6または7記載の発明の構成にお
いて、上記対応済順位より後の順位で、かつ、自らの共
有範囲に含まれないデータの順序を上記順序記憶手段か
ら削除する第1順序削除手段が設けられていることを特
徴としている。
【0044】上記構成によれば、上記対応済順位より後
で、共有範囲に含まれないデータの順序が、例えば、非
同期期間あるいは同期処理中など、任意の時点で削除さ
れる。ここで、これらの順序は、他のデータベース管理
装置と同期できない非同期期間中において、新たに共有
範囲に含まれた後、次の同期処理までの間に削除された
データ、すなわち、他のデータベース管理装置へ反映さ
れないデータに対応している。したがって、当該順序を
削除することによって、順序の記憶に必要なメモリ量
と、順序の管理時の演算量と、次回の同期処理時に通信
あるいは演算されるデータ量とを削減できる。
【0045】一方、請求項9の発明に係るデータベース
管理装置は、請求項6、7または8記載の発明の構成に
おいて、同期処理の際、上記順序記憶手段に格納される
順序のうち、自らおよび相手の共有範囲のいずれにも含
まれていないデータに対応する順序を、それぞれの順序
記憶手段から削除する第2順序削除手段が設けられてい
ることを特徴としている。
【0046】上記構成によれば、例えば、削除あるいは
共有範囲外へ移動されたデータに対応する順序など、同
期処理終了時点で、それぞれの共有範囲のいずれにも含
まれていないデータの順序は、各順序記憶手段から削除
される。これにより、順序の記憶に必要なメモリ量と、
順序の管理時の演算量と、次回の同期処理時に通信ある
いは演算されるデータ量とを削減できる。
【0047】さらに、請求項10の発明に係るデータベ
ース管理装置は、請求項6、7、8または9記載の発明
の構成において、少なくとも前回の同期処理終了時に自
らの共有範囲に含まれたデータについて、非同期期間中
に更新されたか否かを示す更新情報が含まれた状態情報
を記憶する状態情報記憶手段と、非同期期間中、対応す
る状態情報が上記状態情報記憶手段に格納されている各
データを監視して、それぞれの状態情報を更新する状態
情報更新手段とを備えており、上記順序記憶手段は、各
データに対応する状態情報を記憶する順序として、それ
ぞれの順序を記憶していることを特徴としている。な
お、状態情報は、更新情報を含んでいれば、移動情報を
含んでいるか否かを問わない。
【0048】上記構成では、それぞれの順序は、状態情
報を記憶する順序として記憶される。それゆえ、順序と
状態情報とを別に格納する場合に比べて、格納に必要な
メモリ量を削減できると共に、同期処理時に状態情報を
伝送する順序を決定し易くなる。
【0049】また、請求項11の発明に係るデータベー
ス管理装置は、請求項10記載の発明の構成において、
相手のデータベースと共有される共有範囲として、自ら
のデータベース内に部分集合を設定する部分集合設定手
段を備え、上記状態情報には、対応するデータが非同期
期間中に上記部分集合の内外を移動したか否かを示す移
動情報が含まれていることを特徴としている。
【0050】それゆえ、請求項10と同様に、格納に必
要なメモリ量を削減でき、同期処理時に状態情報を伝送
する順序を決定し易くなるだけではなく、請求項1と同
様、移動のみを行ったデータを識別でき、同期処理時に
通信あるいは処理されるデータ量を削減できる。
【0051】さらに、請求項12の発明に係るデータベ
ース管理装置は、請求項10または11記載の発明の構
成において、上記同期処理手段を備え、当該同期処理手
段は、上記相手のデータベースが格納された相手のデー
タベース管理装置と通信して同期処理すると共に、当該
同期処理手段は、上記順序記憶手段に格納された順序に
応じた順序で、対応するデータの状態情報を伝送するこ
とを特徴としている。
【0052】上記構成では、同期処理の際、状態情報
は、順序記憶手段に格納された順序に応じた順序で伝送
される。この結果、同期処理の際、状態情報を伝送する
だけで、対応関係を伝送でき、各データベース管理装置
間で伝送あるいは処理されるデータ量を削減できる。
【0053】ところで、上記各データベースシステムに
おいて、同期処理手段は、各データベース管理装置が通
信可能になった時点で動作する。したがって、少なくと
も1つのデータベース管理装置が同期処理手段を備えて
いれば、全てのデータベース管理装置が同期処理手段を
備えている必要はない。また、状態情報記憶手段などを
有する請求項1記載のデータベース管理装置は、相手が
状態情報記憶手段などを備えていない場合であっても、
同期処理時に通信あるいは処理されるデータ量を削減で
きる。それゆえ、請求項1と通信するデータベース管理
装置が、請求項2に記載の同期処理手段を備えている場
合であっても、充分効果を奏する。
【0054】具体的には、請求項13の発明に係るデー
タベース管理装置は、請求項1記載のデータベース管理
装置と通信する通信手段と、当該データベース管理装置
に格納されたデータベースおよび自らのデータベースの
間で、対応するデータの内容を一致させる同期処理手段
とを有するデータベース管理装置であって、上記課題を
解決するために、当該同期処理手段には、自らの共有範
囲内の各データと、上記相手の共有範囲内の各データと
を対応付ける対応付け手段と、対応付けられた各データ
の組について、相手の状態情報記憶手段に格納された状
態情報と、相手のデータベース管理装置から受け取った
情報とに基づいて、データの内容伝送の要否を判定する
判定手段とが設けられていることを特徴としている。
【0055】上記構成の同期処理手段は、相手のデータ
ベース管理装置が請求項1の構成を有している場合、当
該データベース管理装置の状態情報を参照して同期処理
する。それゆえ、請求項2と同様に、同期処理の際に各
データベース管理装置間で伝送されるデータ量、およ
び、それぞれで処理されるデータ量を削減できる。
【0056】ところで、請求項1記載の発明の構成によ
れば、データの移動および更新を監視して、データの状
態情報を更新することによって、次回の同期処理の際に
内容伝送が不要なデータ、すなわち、部分集合内外を移
動しただけで、更新されていないデータを識別してい
る。ところが、これらのデータ全てについて、内容伝送
を省略しようとすると、各データベース管理装置は、そ
れぞれの使用者が不要と判断して、部分集合の外へ排出
したり、削除したデータであっても、非同期期間中、こ
れらのデータの内容を保持し続ける必要があり、各デー
タベース管理装置に搭載する必要のあるメモリ量が増大
する虞れがある。なお、各データベース管理装置が、こ
れらのデータの内容を不用意に削除すると、次回の同期
処理の結果、当該データが部分集合内に配され、かつ、
内容伝送が不要と判断された場合、各データベース間で
当該データの整合性が失われてしまう。
【0057】これに対して、請求項14の発明に係るデ
ータベース管理装置は、請求項1記載の発明の構成にお
いて、非同期期間中、上記部分集合外に配されたデータ
について、当該データと状態情報とが対応しているか否
かを記憶する対応データ情報記憶手段と、非同期期間
中、上記部分集合外に配されたデータのうち、それぞれ
のデータベース管理装置で不要と判断されたデータと状
態情報との対応付けを解消して、上記対応データ情報記
憶手段に記憶する対応付け解消手段と、状態情報と対応
付けられていないデータの内容を削除するデータ削除手
段とを備えていることを特徴としている。
【0058】なお、対応付けの有無は、状態情報の一部
であってもよいし、それぞれを別に設けてもよい。ま
た、対応付けの有無が判定できれば、例えば、対応付け
のあるデータと状態情報との組み合わせのみ、あるい
は、対応付けの無い組み合わせのみを格納してもよい。
一方、対応付け解消手段は、使用者の指示に応じて対応
付けを解消してもよいし、空きメモリ量などに応じて、
自発的に対応付けを解消してもよい。また、不要か否か
は、各データベース管理装置の使用者からの指示や、当
該データへのアクセス頻度などによって判定できる。
【0059】上記構成によれば、対応データ情報記憶手
段は、それぞれのデータベース管理装置で余り重要と判
断されていないデータ、すなわち、上記部分集合に含ま
れていないデータと状態情報とが対応しているか否かを
記憶しており、データの内容が削除される際には、当該
データと状態情報との対応付けが解消される。
【0060】これにより、非同期期間中、各データベー
ス管理装置がそれぞれで不要なデータ内容を削除して必
要なメモリ量を低減する場合であっても、同期処理にお
いて、対応付け情報記憶手段を参照すれば、当該対応付
け情報記憶手段を有するデータベース管理装置で、非同
期期間に内容が削除されたデータを確実に識別できる。
【0061】この結果、例えば、同期処理時に当該デー
タの内容を伝送するなど、適切な対策を講じることがで
きる。また、データ内容を削除しなかった場合は、請求
項1と同様に、同期処理時におけるデータ伝送量を削減
できる。したがって、各データベース間の整合性を損な
うことなく、かつ、比較的少ないメモリ量で、同期処理
におけるデータ伝送量を削減できる。
【0062】なお、それぞれのデータベース管理装置で
データを必要とするか否かは、それぞれで判定できるた
め、対応付け解消手段は、非同期期間中の任意の時点な
ど、他のデータベース管理装置と通信できない期間であ
っても、何ら支障なく、対応付けを解消できる。ただ
し、データ内容と対応付けとが記憶されていれば、同期
処理の際、状態情報の交換によって、データの内容伝送
が不要と判明した場合には、内容伝送を省略できる。し
たがって、同期処理の際のデータ転送量を抑制するため
には、データ内容と対応付けとを出来るだけ遅く解消す
ることが望まれる。一方、データの内容を保持しつづけ
れば、空きメモリ量が減少して、データの更新や追加に
支障をきたす虞れがある。これとは逆に、データ内容を
早い時点で削除すれば、空きメモリ量を拡大できる一方
で、同期処理時のデータ転送量が増大してしまう。
【0063】これに対して、請求項15の発明に係るデ
ータベース管理装置は、請求項14記載の発明の構成に
おいて、上記対応付け解消手段は、自らを含むデータベ
ース管理装置の空きメモリ量が、予め定められたしきい
値以下になった時点で、上記対応付けを解消することを
特徴としている。なお、上記しきい値は、空きメモリ量
と比較できれば、空きメモリ量であってもよいし、空き
メモリ量と、搭載されているメモリ量などとの比率とし
て設定してもよい。
【0064】上記構成によれば、データベース管理装置
の空きメモリ量が少なくなり、しきい値以下になった時
点で、上記対応付け解消手段は、対応付けを解消し、デ
ータ削除手段は、対応付けが解消されたデータの内容を
削除する。この結果、同期処理時のデータ転送量を不要
に増大させることなく、必要な空きメモリ量を確保でき
る。
【0065】また、請求項16の発明に係るデータベー
ス管理装置は、請求項14または15記載の発明の構成
において、上記対応付け解消手段は、上記不要なデータ
について、次回の同期処理の際に、相手のデータベース
管理装置からデータ内容を転送する可能性を推定して比
較し、可能性が低いデータから順番に、上記対応付けを
解消することを特徴としている。なお、データ内容の転
送の可能性は、例えば、これまでの同期処理の履歴から
判定してもよいし、データが排出された場合は、削除さ
れた場合よりも転送の可能性が高いと推定するなど、自
らのデータベース管理装置の使用者による操作に基づい
て推測してもよい。
【0066】上記構成によれば、同期処理の際に同期処
理相手のデータベース管理装置からデータ内容を転送す
る可能性が高い間は、当該データの内容を保持してお
き、可能性が低くなった時点で対応付けを解消できる。
この結果、同期処理の際のデータ転送量を効率良く削減
できる。
【0067】さらにまた、請求項17の発明に係るデー
タベース管理装置は、請求項3記載の発明の構成におい
て、請求項14と同様の対応データ情報記憶手段、対応
付け解消手段およびデータ削除手段を備え、上記同期処
理手段は、上記内外判定同期手段により部分集合内に設
定される状態情報と、データとの対応が、上記対応デー
タ情報記憶手段に記憶されていない場合、相手のデータ
ベース管理装置から、当該データに対応するデータの内
容を受け取ることを特徴としている。
【0068】上記構成によれば、同期処理の際、同期処
理手段は、上記対応データ情報記憶手段を参照して、状
態情報とデータとの対応がないデータが部分集合内に配
された場合、当該データの内容を、相手のデータベース
管理装置から受け取ったデータの内容で置き換える。こ
れにより、あるデータベース管理装置でデータの内容が
削除された場合であっても、同期処理によって、各デー
タベース間の整合性を回復できる。
【0069】ところで、請求項14ないし16記載のデ
ータ削除手段は、データベースの格納に必要なメモリ量
を削減するために、非同期期間中にデータの内容を削除
しているが、同期処理の終了時にデータの内容を削除し
た場合でも同様にメモリ量を削減できる。
【0070】具体的には、請求項18の発明に係るデー
タベース管理装置は、上記課題を解決するために、複数
のデータベース管理装置と、互いに通信可能になったデ
ータベース管理装置に格納されたデータベース間で、対
応するデータの内容を一致させる同期処理手段とを有す
るデータベースシステムを構成するために設けられ、少
なくとも1つのデータベースを有するデータベース管理
装置において、同期処理終了時に、データベース間にお
けるデータの対応付けが解消された場合、当該データの
内容をデータベース内から削除するデータ削除手段が設
けられていることを特徴としている。
【0071】上記構成において、同期処理により対応付
けが解消されたデータは、整合性を保つ必要の無いデー
タであり、それ以降の同期処理の際、データの内容が転
送されない。したがって、上記データ削除手段が、これ
らのデータの内容を削除することによって、同期処理の
際のデータ転送量を増大させることなく、データベース
管理装置の空きメモリ量を拡大できる。
【0072】さらに、請求項19の発明に係るデータベ
ース管理装置は、請求項18記載の発明の構成におい
て、上記データ削除手段がデータを削除するか否かを選
択する削除選択手段を備えていることを特徴としてい
る。なお、各データベース間で、部分集合の対応付けが
複数存在する場合には、対応付け毎に選択してもよい
し、一括して設定してもよい。
【0073】上記構成によれば、例えば、部分集合外に
配されたデータを再利用したい場合には、データを削除
しないことを選択し、再利用よりも、空きメモリ量の増
大が望まれる場合には、データの削除を選択するなど、
データ削除手段がデータを削除するか否かを必要に応じ
て選択でき、使用者の要求に応じた設定が可能になる。
【0074】ところで、請求項5記載のデータベース管
理装置のように、各データベース間で対応するデータの
組を同期処理する際、移動情報に基づいて、部分集合内
に配されるか否かを判定し、更新情報に基づいて、デー
タ内容の優先側を判定した場合、データの配置を判定す
る際に優先したデータベース管理装置と、内容判定の際
に優先したデータベース管理装置とが異なることがあ
る。したがって、使用者が、データの配置と内容との双
方で優先側が同一であると誤解した場合、使用者の混乱
を招く虞れがある。
【0075】これに対して、請求項20の発明に係るデ
ータベース管理装置は、請求項2記載の発明の構成にお
いて、上記判定手段には、対応付けられた各データの組
について、自らの状態情報記憶手段に格納された状態情
報と、相手のデータベース管理装置から受け取った情報
とに基づいて、当該データの組がそれぞれの共有範囲内
に存在すると判定した場合、当該データ組に対応する状
態情報の更新情報に拘わらず、当該データ組のうち、共
有範囲内に存在していないデータの内容よりも、共有範
囲内に存在しているデータの内容の方を優先する範囲内
優先手段が設けられていることを特徴としている。
【0076】上記構成によれば、同期処理の際、共有範
囲内に存在しているデータの内容が優先される。この結
果、データの配置を判定する際に優先した側と、データ
の内容を判定する際に優先した側とを一致させることが
できる。この結果、使用者の誤解を招きにくいデータベ
ース管理装置を実現できる。
【0077】さらに、請求項21の発明に係るデータベ
ース管理装置は、請求項20記載の発明の構成におい
て、請求項3と同様の内外判定同期手段が設けられ、上
記範囲内優先手段は、上記内外判定同期手段によって部
分集合内に変更された状態情報の更新情報を更新なしに
変更すると共に、変更されなかった状態情報の更新情報
を更新ありに変更することを特徴としている。
【0078】上記構成によれば、内外判定同期手段によ
る移動情報の更新に伴って、範囲内優先手段は、移動情
報を更新する。ここで、請求項3と同様に、内外判定同
期手段および範囲内優先手段が状態情報を更新する際
に、各データベース管理装置間で伝送されるデータ量
は、データの内容自体に比べて極めて少なく、データ組
それぞれの判定結果は、状態情報として保存される。し
たがって、通信の切断などによって、内外判定同期手段
および範囲内優先手段が、全てのデータ組の状態情報が
更新されるまでの間に、同期処理が中断される場合であ
っても、何ら支障なく、同期処理を再開できる。この結
果、通信によって同期処理する場合のように、同期処理
が中断される虞れがあるデータベースシステムであって
も、各データベース間の整合性を確実に保つことができ
る。
【0079】また、請求項22の発明に係るデータベー
ス管理装置は、請求項20または21の発明の構成にお
いて、上記範囲内優先手段が動作するか否かを選択する
優先選択手段を備えていることを特徴としている。
【0080】上記構成によれば、範囲内優先手段が動作
するか否かを選択できるので、使用者の好みに合わせた
設定が可能になり、より使いやすいデータベース管理装
置を実現できる。
【0081】ところで、請求項23の発明に係る記録媒
体は、上記課題を解決するために、複数のデータベース
間で互いに対応するデータの内容を同一に管理するため
のプログラムが記録された記録媒体において、請求項1
記載の部分集合設定手段、状態情報記憶手段および状態
情報更新手段として、コンピュータを動作させるための
プログラムが記録されていることを特徴としている。
【0082】上記プログラムがコンピュータで実行され
ると、請求項1のデータベース管理装置が実現される。
それゆえ、請求項1と同様に、同期処理時に処理される
データ量を削減できる。
【0083】また、請求項24の発明に係る記録媒体
は、上記課題を解決するために、複数のデータベース間
で互いに対応するデータの内容を同一に管理するための
プログラムが記録された記録媒体において、請求項6記
載の順序記憶手段、対応済順位記憶手段および順序管理
手段として、コンピュータを動作させるためのプログラ
ムが記録されていることを特徴としている。
【0084】上記プログラムがコンピュータで実行され
ると、請求項6のデータベース管理装置が実現される。
それゆえ、請求項6と同様に、対応情報で記憶する場合
よりも、対応関係の記憶に必要なメモリ量と、同期処理
時の演算量とを削減できると共に、同期処理の際、通信
あるいは処理されるデータ量を削減できる。
【0085】さらに、請求項25の発明に係る記録媒体
は、上記課題を解決するために、複数のデータベース間
で互いに対応するデータの内容を同一に管理するための
プログラムが記録された記録媒体において、請求項13
記載の対応付け手段および判定手段を含む同期処理手
段、並びに通信手段として、コンピュータを動作させる
ためのプログラムが記録されていることを特徴としてい
る。
【0086】当該プログラムがコンピュータで実行され
ると、請求項13記載のデータベース管理装置が実現さ
れる。それゆえ、請求項13と同様に、相手のデータベ
ース管理装置が請求項1の構成を有している場合、同期
処理の際に各データベース管理装置間で伝送されるデー
タ量、および、それぞれで処理されるデータ量を削減で
きる。
【0087】また、請求項26の発明に係る記録媒体
は、上記課題を解決するために、複数のデータベース間
で互いに対応するデータの内容を同一に管理するための
プログラムが記録された記録媒体において、請求項18
記載のデータ削除手段として、コンピュータを動作させ
るためのプログラムが記録されていることを特徴として
いる。
【0088】上記プログラムがコンピュータで実行され
ると、請求項18のデータベース管理装置が実現され
る。それゆえ、請求項18と同様に、同期処理の際のデ
ータ転送量を増大させることなく、データベース管理装
置の空きメモリ量を拡大できる。
【0089】
【発明の実施の形態】〔第1の実施形態〕本発明の一実
施形態について図1ないし図61、並びに、図64ない
し図72に基づいて説明すると以下の通りである。すな
わち、本実施形態に係るデータベースシステムは、例え
ば、個人情報などを複数のデータベース管理装置で管理
する場合など、互いに通信可能な期間が制限され、か
つ、それぞれが独立してデータを更新可能な複数のデー
タベース間で、対応するデータの内容を同一に保つこと
が要求される場合に好適に使用されるシステムである。
システム構成は種々のものが考えられるが、本実施形態
では、携帯情報端末から構成される場合のように、互い
に対等なデータベース管理装置からなるデータベースシ
ステムを例にして説明する。
【0090】具体的には、例えば、図2に示すように、
本実施形態に係るデータベースシステム1は、データベ
ースを格納する情報処理機器(データベース管理装置)
2・2を備えており、各情報処理機器2には、相手の情
報処理機器2と通信するための通信装置(通信手段)3
と、使用者との間の入出力を処理する表示装置4および
入力装置5とが接続されている。
【0091】上記通信装置3は、例えば、LANインタ
ーフェースやRS232Cインターフェースなどのイン
ターフェース、モデム、赤外線送受光器、あるいは、無
線送受信器などであって、情報処理機器2の指示に応
じ、ケーブル、公衆電話回線網、赤外線あるいは無線な
ど、種々の通信媒体のうちの少なくとも1つを介して、
相手の通信装置3と互いに通信できる。また、表示装置
4は、CRTディスプレイや液晶ディスプレイなどであ
って、情報処理機器2のデータベースの内容、あるい
は、データベースに対する操作結果など種々の情報を、
情報処理機器2の指示に応じて表示できる。さらに、入
力装置5は、キーボードやマウス、ペン、あるいは、上
記表示装置4上に配されたタッチパネルなどであって、
使用者の指示を情報処理機器2へ入力できる。
【0092】一方、本実施形態に係る情報処理機器2に
は、図1に示すように、上記通信装置3に接続され、当
該通信装置3を介して、他の情報処理機器2と通信する
通信部21と、上記表示装置4および入力装置5に接続
され、使用者とのインタフェースとなるユーザ操作部2
2と、データベースDBを格納するデータベース管理部
23と、ユーザ操作部22の指示に応じて、データベー
ス管理部23を制御するデータベース処理部24と、通
信部21およびデータベース管理部23を制御して、他
のデータベースDBとの同期に関連した処理を行う同期
部25とが設けられている。上記各部材は、ハードウェ
アで実現されてもよいし、CPUが所定のプログラムを
実行することで実現される機能ブロックであってもよ
い。後者の場合は、上記プログラムが格納された記録媒
体を配付し、当該記録媒体を読み取り可能なコンピュー
タで実行させるだけで、上記各部材を実現できるため、
配付が容易になる。なお、上記データベース管理部23
は、特許請求の範囲に記載のデータベース、状態情報記
憶手段、順序記憶手段および対応済順位記憶手段に対応
しており、データベース処理部24は、状態情報更新手
段および順序管理手段に対応する。
【0093】本実施形態では、図3に示すように、デー
タベースDBがデータ1件を示すティップTとティップ
の母集合となるフクロFとを単位として管理されてお
り、上記データベース管理部23には、データベースを
格納するティップ管理部31およびフクロ管理部(部分
集合設定手段)32が設けられている。また、上記デー
タベース処理部24は、ティップTの更新/追加/削除
をそれぞれ行うティップ更新処理部41・ティップ追加
処理部42・ティップ削除処理部43などを備えてい
る。なお、データベース処理部24は、例えば、ティッ
プTの検索や表示、あるいは、フクロFとの包含関係の
変更など、データベースDBの他の操作に関連する部材
も備えている。これにより、所定の内容のティップTな
ど、所望の条件を満足するティップTを検索して、フク
ロFを生成したり、表示されたティップTのうち、所望
のティップTを選択して、所望のフクロFに挿入したり
できる。
【0094】また、同期部25には、ティップTの同期
処理を行うシンクロナイズ処理部51と、同期処理に先
立って、後述する共有設定を行う共有設定処理部52
と、例えば、同期処理が不要になった場合などに上記共
有設定を解除する共有解除処理部53とが設けられてい
る。なお、上記シンクロナイズ処理部51が、特許請求
の範囲に記載の同期処理手段、対応付け手段、判定手
段、内外同期処理手段、優先側判定手段、データ内容同
期手段、データ追加手段、追加データ対応付手段、対応
済順位更新手段、並びに、第1および第2順序削除手段
に対応する。また、データベース処理部24および同期
部25の構成は、データベース管理部23に格納される
データと密接に関連しており、当該データに基づく動作
に大きな特徴がある。それゆえ、以下では、データベー
ス管理部23の構成についてのみ説明し、データベース
処理部24および同期部25の構成は、動作と共に詳説
する。
【0095】具体的には、上記ティップ管理部31は、
1件分のデータをティップと呼ばれるデータ構造で管理
している。各ティップTは、データベースDB内の他の
ティップTと自らとを一意に識別するためのティップI
Dと、1件分のデータが格納される属性リストLAとを
備えている。当該属性リストLAには、図4に示すよう
に、属性Aの種別を示す属性名NAと、当該ティップT
に格納されるデータの内で当該属性Aの値を示す属性値
VAとの組み合わせが、リスト状に格納されている。
【0096】例えば、データベースDBに住所録を格納
する場合を例にして説明すると、個々のティップTは、
1件の住所データに相当する。各住所データが名前を示
すデータと、住所を示すデータと、電話番号を示すデー
タとの3種のデータから構成される場合、各ティップT
は、名前、住所および電話番号の3つの属性A1 〜A3
の集合として定義され、各ティップTの属性リストLA
は、図4に示すように、属性名NAと属性値VAとの組
み合わせが、順番に並べられたリストとして表現され
る。例えば、第1のティップの属性リストLAには、名
前の属性A1 として、「名前」という属性名NA1
「○山×夫」という属性値VA1 との組み合わせが格納
されている。同様に、「住所」および「東京都東京市
…」の組み合わせと、「電話番号」および「0123- …」
の組み合わせとが格納される。
【0097】また、上記フクロ管理部32は、データベ
ースDBに含まれるフクロFと、上記各ティップTおよ
びフクロFの包含関係とを記憶している。図5に示すよ
うに、1つの情報処理機器2に複数のデータベースDB
1 、DB2 、DB3 が格納されている場合を例にして説
明すると、情報処理機器2∋データベースDB∋フクロ
F∋ティップTの関係が成立する。上記フクロ管理部3
2は、この関係を図6に示すようなツリー構造Sとして
格納している。
【0098】当該ツリー構造Sでは、ティップT2 のよ
うに、単一のフクロ(F1 )に含まれていてもよいし、
ティップT1 のように、複数のフクロ(F1 ・F2 )に
含まれていてもよい。これにより、図5に示すように、
複数のフクロF1 、F2 に含まれるティップT1 を表現
できる。
【0099】なお、上記ツリー構造Sを格納できれば、
ツリー構造S全体を格納してもよいし、当該ツリー構造
Sを複数のリストに分割して、情報処理機器2に含まれ
るデータベースDBのリストと、各データベースDB毎
のフクロFのリストと、各フクロF毎のティップTのリ
ストとして格納してもよい。本実施形態では、ティップ
Tと同様に、各情報処理機器2、各データベースDBお
よび各フクロFに対して、それぞれを一意に識別するた
めのIDが割り当てられているので、上記各リストは、
当該IDのリストとして格納される。なお、上記各リス
トとして格納した場合、あるフクロFに含まれるティッ
プTは、当該リストを参照すれば即座に判明するが、こ
れとは逆に、ティップTを含むフクロFは、最悪のケー
スで、全てのリストを検索する必要がある。それゆえ、
検索時間の短縮が要求される場合には、上記各リストと
は別に、ティップT毎に当該ティップTを含むフクロF
のリストを設ける方がよい。
【0100】本実施形態に係るデータベースシステム1
では、図7に示すように、同期処理の対象となる範囲
(共有範囲)がフクロF単位で決定されており、あるテ
ィップTが他のデータベースDB間で共有されるか否か
は、予め共有すると設定されたフクロ(共有フクロS
F)に所属しているか否かで判定される。
【0101】ここで、通常、通信装置3などを介した他
の情報処理機器2へのアクセスは、自らの情報処理機器
2内のアクセスに比べると極めて低速であり、同期処理
の所要時間は増大しがちである。それゆえ、所要時間の
短縮が切望されており、両情報処理機器2a・2b間で
伝送されるデータ量の削減が望まれる。なお、自らの情
報処理機器2内へのアクセスは比較的高速なので、前回
の同期処理と次回の同期処理との間の期間中(非同期期
間中)の処理が増大したとしても、処理時間は、余り長
くならない。
【0102】本実施形態に係るフクロ管理部32は、上
記データ量を削減するため、非同期期間中における各テ
ィップTの状態を示すダーティ・ビットDからなるダー
ティ・ビット・リストLDを格納している。ダーティ・
ビット・リストLDは、各ダーティ・ビットDの順序
が、自らと相手とで互いに対応するティップTのダーテ
ィ・ビットDが同じ順位になるように管理されており、
後述するように、ティップTの対応関係をも示してい
る。さらに、フクロ管理部32には、前回の同期処理で
既に対応付けられたティップTの数を示すシンク・リミ
ットLimが格納されており、ダーティ・ビットDに対
応するティップTが、相手の共有フクロSF内のティッ
プTと既に対応付けられているか否かを判別できる。
【0103】例えば、図8に示すように、前回の同期処
理において、両共有フクロSFa ・SFb 間で、3つの
ティップ(T1a〜T3aおよびT1b〜T3b)が対応付けら
れた場合、両情報処理機器2a・2bには、シンク・リ
ミットLimとして、”3”が記憶される。さらに、図
9に示すように、情報処理機器2aのダーティ・ビット
・リストLDa では、各ティップT1a〜T6aに対応する
ダーティ・ビットD1a〜D6aが、この順番で格納されて
いる。同様に、情報処理機器2bのダーティ・ビット・
リストLDb では、各ティップT1b〜T3b、T7bおよび
8bに対応するダーティ・ビットD1b〜D3b、D7bおよ
びD8bが、この順番で格納されている。この場合、シン
ク・リミットLimが”3”なので、ダーティ・ビット
Dが3番目よりも後に格納されたティップT4a〜T6a
および、T7b〜T8bは、相手の共有フクロSF内のティ
ップTと対応付けられていない。なお、図9は、ダーテ
ィ・ビット・リストLDの格納方法の一例として、ダー
ティ・ビットDとダーティ・ビットDに対応するティッ
プIDとの組み合わせを順次格納する場合を示してい
る。
【0104】以下では、説明の便宜上、ダーティ・ビッ
ト・リストLDにおけるダーティ・ビットDの順位をシ
ンク・タグと称し、図中では、〔〕内の数字として表記
する。また、ダーティ・ビットDとティップTとなど、
対応するデータは、例えば、ダーティ・ビットD1aとテ
ィップT1aとのように、同じ添字を付して表記する。さ
らに、一方の情報処理機器2aに格納される情報は、例
えば、ティップT1aのように添字a を付して、他方の情
報処理機器2bに格納された情報(添字b を付す)と区
別する。なお、特に対応関係を明記する必要がない場
合、あるいは、総称する場合は、添字を省略する。
【0105】上記ダーティ・ビットDは、非同期期間中
に一度でも共有フクロSF内に存在したティップTそれ
ぞれに対応して作成されており、対応するティップTが
非同期期間中に更新されたか否かを示す更新パラメタ
と、当該ティップTが非同期期間中に共有フクロSF内
外を移動したか否かを示す移動パラメタとを有してい
る。更新パラメタは、更新を示す「m」、あるいは、維
持を示す「p」の値を取り、移動パラメタの値は、静止
を示す「X」、挿入を示す「I」、あるいは、排出を示
す「O」のいずれかである。より詳細には、「X」は、
前回の同期処理以降、共有フクロSF中に存在し続けて
いることを示し、「I」は、前回の同期処理以降、共有
フクロSFに入れられたこと、あるいは、戻されたこと
を示している。同様に、「O」は、前回の同期処理以
降、共有フクロSFから取り出されたこと、あるいは、
一度挿入された後、再び取り出されたことを示してい
る。上記移動パラメタは、例えば、図10に示すよう
に、共有フクロSFへ追加されたことを示す追加ビット
BIと、共有フクロSFから削除されたことを示す削除
ビットBOとの組み合わせとして格納される。また、例
えば、同期処理の結果、共有フクロSF外に存在すると
判定した場合など、それ以降は、ティップTの状態監視
が不要な場合には、両ビットBIおよびBOが共にオン
に設定される。以下では、更新パラメタの値に拘わら
ず、この状態を無効「K」と称する。したがって、ダー
ティ・ビットDから識別可能なティップTの状態は、静
止維持「Xp」、静止更新「Xm」、挿入維持「I
p」、挿入更新「Im」、排出維持「Op」、排出更新
「Om」および無効「K」の7つとなる。
【0106】ところで、同じ共有フクロSFであって
も、相手の共有フクロSFが異なれば、それぞれとの非
同期期間は、通常、互いに異なっている。したがって、
本実施形態では、ダーティ・ビット・リストLDおよび
シンク・リミットLimは、自らの共有フクロSFと相
手の共有フクロSFとの組み合わせ毎に設けられてい
る。
【0107】例えば、図11に示すように、共有フクロ
SFa が、3つの異なる共有フクロSFb ・SFc ・S
d と対応している場合、図12に示すように、それぞ
れに対応するダーティ・ビット・リストLDab・LDac
・LDad、および、シンク・リミットLimab・Lim
ac・Limadが設けられる。図11および図12に示す
ように、各ダーティ・ビット・リストLDは、相手のダ
ーティ・ビット・リストLDと順序が揃えられていれば
よく、相手が異なるダーティ・ビット・リスト(LDab
・LDacなど)間では、ダーティ・ビットDの順序や
値、あるいは、シンク・リミットLimが異なっていて
もよい。例えば、ダーティ・ビット・リストLDab
は、ティップT2aを示すダーティ・ビットD2ab (値
は、Im)が、2番目に格納されているが、ダーティ・
ビット・リストLDacでは、ダーティ・ビットD
2ac (値は、Xp)が1番目に格納されている。ただ
し、共有フクロSFb のダーティ・ビット・リストLD
b では、ティップT2b を示すダーティ・ビットD2b
2番目に格納されており、ダーティ・ビット・リストL
c では、ダーティ・ビットD2cが1番目に格納されて
いる。
【0108】本実施形態に係るフクロ管理部32には、
上記各リストに加えて、各共有フクロSF毎に、当該共
有フクロSFの共有相手を示す共有相手リストLSが設
けられている。このリストLSを参照すれば、ある共有
フクロSFの共有相手全てを容易に検索できるので、例
えば、当該共有フクロSF内のティップTに対して、追
加、削除あるいは内容更新などの変更が加えられた場
合、当該ティップTに対応するダーティ・ビットD全て
をより短時間で更新できる。
【0109】上記構成のデータベースシステム1の動作
について、図13から図61に基づいて説明する。すな
わち、図13に大略的に示すように、実際の同期処理に
先立って共有設定が行われ、例えば、自らおよび相手の
共有フクロSFの設定、並びに、ダーティ・ビット・リ
ストLDやシンク・リミットLimの生成など、同期処
理に必要な処理が行われる(S1)。なお、この段階で
は、図14に示すように、両共有フクロSFa ・SFb
が共有範囲であることが、両情報処理機器2a・2bに
登録されただけであり、同期処理が行われるまでは両共
有フクロの内容は一致しない。
【0110】その後、両情報処理機器2a・2bが通信
可能であるか否かに拘わらず、非同期期間中は、自らの
データベースDBへの操作に基づいて、ダーティ・ビッ
ト・リストLDが更新される(S2)。また、両情報処
理機器2a・2bが通信可能な期間には、同期処理が行
われ、図15に示すように、双方の共有フクロSF内の
ティップ数およびティップTの内容は、上記ダーティ・
ビット・リストLDおよびシンク・リミットLimを参
照して揃えられると共に、ダーティ・ビット・リストL
Dおよびシンク・リミットLimも更新される(S
3)。各情報処理機器2a・2b間の通信路が間欠的に
接続される場合、当該S3のように、意図的な同期処理
によって、整合性の保たれる共有フクロは、非常に有用
である。
【0111】なお、ティップTは複数のフクロFに入れ
ることができるため、いずれかの共有設定に関連する同
期処理が実行されると、同期処理に関係のないフクロF
に所属するティップTが変更されることがある。ただ
し、いずれの共有設定に関連する同期処理を行った場合
であっても、共有フクロSF以外のフクロFへ、ティッ
プTが挿入されたり、除去されることはない。
【0112】上記S2およびS3の処理は、必要に応じ
て繰り返され、それ以降の同期処理が不要になると、S
4において、共有設定が解除される。なお、図13で
は、ステップS1の後、最初にステップS2が行われる
ように記載しているが、両ステップS2・S3が交互に
繰り返されれば、両ステップS2・S3の順番を入れ換
えてもよい。
【0113】ここで、共有解除は、基本的には、共有フ
クロSF間の対応を解除するだけであり、共有フクロS
Fの内容が互いに一致しているとは限らない。それゆ
え、共有フクロSFの内容を一致させる場合は、共有解
除の直前に、自動的に、あるいは、使用者の指示によっ
て同期処理すればよい。
【0114】なお、上記では、共有設定と同期処理とを
別に説明しているが、共有設定と同時に同期処理を行う
こともできる。この場合は、例えば、共有設定の終了時
点で、両共有フクロSFの内容が一致する。ただし、本
実施形態では、共有設定と同期処理とを分離して、共有
設定の所要時間を短縮している。これにより、共有設定
の時点では、双方の情報処理機器2がそれぞれの使用者
へ共有設定の可否を確認し、同期処理の時点では、一方
の情報処理機器2の使用者のみが操作する場合、双方の
使用者による操作時間の合計を短縮できる。この結果、
安全性の向上と、操作時間の短縮との双方を実現でき
る。
【0115】以下では、上記S1の処理の一例として、
フクロ融合型モデルの共有設定について詳細に説明す
る。フクロ融合型の共有設定は、図14に示すように、
両情報処理機器2a・2bに、予め存在するフクロFa
・Fb 間での共有設定であり、図16に示すように、両
情報処理機器2a・2bが通信可能になると、S11に
おいて、一方の情報処理機器2aに設けられた共有設定
処理部52は、他方の情報処理機器2bへ共有設定要求
を送出する。当該要求には、情報処理機器2aを示すマ
シンIDと、情報処理機器2aのフクロFa を示すフク
ロIDと、共有を希望する情報処理機器2bのフクロF
b を示すフクロIDとが含まれている。なお、以下で
は、共有設定要求を送出する側を共有設定起動側と称
し、共有設定要求を受け取る側を共有設定受動側と称す
る。
【0116】さらに、共有設定起動側の共有設定処理部
52は、S12において、上記共有設定要求と同様の情
報を共有情報として登録する。さらに、共有設定処理部
52は、自らのフクロFa に対応する共有相手リストL
Sを作成し、相手のフクロIDを登録する。これによ
り、当該フクロFa は、共有フクロSFa となる。ま
た、当該共有フクロSFa と相手のフクロFb との組み
合わせに対応するダーティ・ビット・リストLDと、シ
ンク・リミットLimとが作成される。
【0117】一方、共有設定受動側の情報処理機器2b
では、S13において、共有設定処理部52が共有設定
要求を受け取ると、S14において、当該共有設定要求
に基づいて、共有情報を登録する。共有情報には、自ら
の情報処理機器2bを示すマシンIDと、情報処理機器
2aにおいて共有対象となるフクロIDと、情報処理機
器2bにおいて共有対象となるフクロIDと、共有設定
の際に決定されるオプションとが含まれる。さらに、共
有設定処理部52は、共有設定起動側と同様に、自らの
フクロFb に対応する共有相手リストLSへ、相手のフ
クロIDを登録して、共有フクロSFb を生成すると共
に、自らの共有フクロSFb と相手の共有フクロSFa
との組み合わせに対応するダーティ・ビット・リストL
Dおよびシンク・リミットLimを作成する。
【0118】本実施形態に係るデータベースシステム1
では、各情報処理機器2が、例えば、上記S3の同期処
理における優先側決定ルールやダウンロード処理の要
否、衝突時のコピーの要否、あるいは、上記S4の共有
解除で採用するモデルなど、種々のオプション(後述)
を選択可能な場合、当該オプションは、共有設定の段階
において設定されることも特徴としており、上記共有設
定要求には、当該オプションを示す情報も含まれてい
る。これにより、各オプションの設定時点を共有設定時
点に限定できる。
【0119】ここで、各情報処理機器2が任意の時点
で、オプションを設定できる場合は、一方の情報処理機
器2への操作に応じて、優先側決定ルールなどが変更さ
れ、他方の情報処理機器2の使用者にとって不所望な設
定が行われる虞れがある。ところが、上記構成では、各
情報処理機器2が通信可能な共有設定時点のみで、オプ
ションが変更されるので、上記不所望な設定を拒絶でき
る。
【0120】なお、図16では、共有相手を認証するス
テップを図示していないが、共有設定受動側が、例え
ば、共有設定のオプションなど、共有設定要求の内容に
応じて、共有設定するか否かを決定してもよい。この場
合、共有設定受動側の情報処理機器2は、例えば、受付
可能な共有設定要求を予め格納しておき、格納した共有
設定要求に基づいて要否を決定すればよい。
【0121】上記ダーティ・ビット・リストLDおよび
シンク・リミットLimの初期値は、両共有フクロSF
a ・SFb に含まれるティップTの対応関係によって異
なる。例えば、共有設定の際、両共有フクロSFa ・S
b 内のティップTをそれぞれ別のティップTと判定す
る場合、シンク・リミットLimの初期値は、0にな
り、各ティップTに対応するダーティ・ビットDは、挿
入更新「Im」に設定される。また、例えば、ティップ
Tの内容などを参照して、ティップTを対応付ける場
合、シンク・リミットLimは、対応付けに成功したテ
ィップTの数になり、当該ティップTに対応するダーテ
ィ・ビットDは、両ダーティ・ビット・リストLD内で
の順位が同一になるように格納される。なお、両ティッ
プTの内容が同一であれば、ダーティ・ビットDの値
は、静止維持「Xp」となり、同一か否かが不明な場合
は、静止更新「Xm」に設定される。
【0122】また、共有設定のモデルは、フクロ融合型
モデルに限るものではなく、図17に示すフクロ取込み
型モデルのように、共有設定の際、一方の共有フクロS
Fを新たに作成してもよいし、図18に示すフクロ新規
作成型モデルのように、双方の情報処理機器2a・2b
に、新たな共有フクロSFを作成してもよい。これらの
場合も図16に示す処理と略同様の処理が行われ、それ
ぞれに、共有情報や、ダーティ・ビット・リストLDお
よびシンク・リミットLimや、共有情報などが登録さ
れる。ただし、共有設定受動側に新たな共有フクロSF
が新規作成される場合は、上記共有情報などを登録する
際に、当該共有フクロSFのフクロIDが共有設定起動
側へ返される。
【0123】続いて、図13に示すS2の処理、すなわ
ち、非同期期間中の処理について詳細に説明する。非同
期期間中には、ティップTへの操作と、操作時点でのダ
ーティ・ビット・リストLDおよびシンク・リミットL
imとに基づいて、ティップTに対応するダーティ・ビ
ットDが、図19に示すように更新される。
【0124】具体的には、ティップTの内容更新が指示
された場合、図20に示すS21において、ティップ更
新処理部41(図1参照)は、ユーザ操作部22から当
該指示を受け取り、指示に応じて、ティップTの内容を
更新する。さらに、S22において、当該ティップTに
対応するダーティ・ビットDについて、更新パラメタを
「m」に設定する。なお、移動パラメタは、それまでの
値のまま保たれる。
【0125】上記ティップTは、複数の共有フクロSF
に所属可能であり、また、各共有フクロSFは、複数の
相手と共有されていることがある。この結果、情報処理
機器2全体でみると、当該ティップTに対応するダーテ
ィ・ビットDは、複数存在する場合がある。したがっ
て、当該ティップTに対応する全てのダーティ・ビット
Dが検索され、それぞれが更新される。対応するダーテ
ィ・ビットDの検索は、例えば、全てのダーティ・ビッ
ト・リストLDを参照してもよいし、検索時間を短縮す
るために、各ティップTに対応するダーティ・ビットD
のリストを予め作成しておき、当該リストを参照して検
索してもよい。
【0126】いずれの場合でも、本実施形態では、非同
期期間に一度でも共有フクロSFに所属したティップT
について、ダーティ・ビットDが作成され、当該ティッ
プTへの操作を監視して、ダーティ・ビットDを更新し
ている。したがって、例えば、ティップTの移動などに
よって、当該ティップTが現時点では共有フクロSFに
存在しない場合であっても、ダーティ・ビットDは、確
実に更新される。
【0127】一方、ティップTの新規作成やティップT
の移動などによって、ティップTが共有フクロSFへ挿
入される場合、図21に示すように、ティップ追加処理
部42(図1参照)は、ユーザ操作部22からの指示に
応じて、フクロ管理部32を制御して、当該ティップT
を共有フクロSFに所属させる(S31)。さらに、テ
ィップ追加処理部42は、S32において、当該共有フ
クロSFを示すダーティ・ビット・リストLDが、ティ
ップTに対応するダーティ・ビットDを含んでいるか否
かを判定する。
【0128】ここで、ダーティ・ビットDを含んでいる
場合は、例えば、共有フクロSF内のティップTを出し
入れした場合など、当該ティップTの内容更新が既に監
視されていることを示している。したがって、ティップ
追加処理部42は、S33において、当該ダーティ・ビ
ットDの移動パラメタを「I」に設定する。一方、含ん
でいない場合は、例えば、一度も共有フクロSFに含ま
れていない場合やティップTを新規作成した場合などで
あり、非同期期間中に、当該ティップTの内容が更新さ
れたか否かを識別できないことを示している。したがっ
て、ティップ追加処理部42は、S34において、例え
ば、ダーティ・ビット・リストLDの末尾など、シンク
・リミットLimよりも後の順位に、値が「Im」で上
記ティップTを示すダーティ・ビットDを追加する。な
お、共有フクロSFに対応するダーティ・ビット・リス
トLDが複数存在する場合は、全てのダーティ・ビット
・リストLDについて、S32ないしS34の処理が行
われる。
【0129】さらに、例えば、ティップTの削除や移動
などによって、ティップTが共有フクロSFから排出さ
れる場合、図22に示すように、ティップ削除処理部4
3(図1参照)は、ユーザ操作部22からの指示に応じ
て、フクロ管理部32を制御して、当該ティップTを共
有フクロSFから取り除く(S41)。ここで、本実施
形態では、非同期期間に共有フクロSFに一度でも含ま
れたティップTについてダーティ・ビットDを保持して
いる。したがって、ティップ削除処理部43は、S42
において、当該共有フクロSFを示す全てのダーティ・
ビット・リストLDにおいて、当該ティップTに対応す
るダーティ・ビットDの移動パラメタを「O」に変更す
る。なお、更新パラメタは、そのまま保たれる。
【0130】例えば、同期処理の終了時点では、図23
に示すように、両共有フクロSFa・SFb 内の全ての
ティップTは、互いに1対1に対応付けられており、対
応するティップTの内容は、同一に設定されている。し
たがって、図24に示すように、シンク・リミットLi
mは、ダーティ・ビット・リストLDの長さ(ダーティ
・ビットDの数)と同一であり、両ダーティ・ビット・
リストLDにおいて、対応するダーティ・ビットDa
b は、それぞれ同じ順位になるように格納される。ま
た、各ダーティ・ビットDの値は、全て「Xp」に設定
されている。
【0131】さらに、非同期期間中、両情報処理機器2
で、それぞれのデータベースDBが独立に操作される
と、各情報処理機器2の上記各処理部41〜43は、そ
れぞれのダーティ・ビット・リストLDを更新する。こ
の結果、非同期期間中、ダーティ・ビットDの値は、対
応するティップTの状態を常に示している。これによ
り、それぞれのデータベースDBが独立に更新された場
合、次の同期処理の直前の時点では、両ダーティ・ビッ
ト・リストLDは、例えば、図25に示すように、一致
しなくなる。
【0132】ただし、両ダーティ・ビット・リストLD
において、シンク・リミットLimが示す順位、およ
び、それ以前のダーティ・ビットDは、対応するティッ
プTが削除されたとしても削除されず、非同期期間中
は、同じ順序を保っている。この結果、ダーティ・ビッ
トD3a・D3bなど、両共有フクロSFa ・SFb で、互
いに対応するティップTを示すダーティ・ビットDの順
位は、互いに同一に保たれている。
【0133】シンク・リミットLimより後のダーティ
・ビットDは、非同期期間中に、新たに共有フクロSF
へ追加されたティップTを示しており、例えば、ダーテ
ィ・ビットD22・D27など、同じ順位に格納されている
ダーティ・ビットDであっても、それぞれのティップT
は、対応していない。これらのシンク・リミットLim
より後のダーティ・ビットDは、「Im」か「Om」を
示しており、「Om」は、共有フクロSFに新たに挿入
されたティップTが、現在は、共有フクロSFに所属し
ていないことを示している。また、追加されたティップ
Tの数が異なる場合、両ダーティ・ビット・リストLD
の長さも互いに異なっている。
【0134】この状態で、使用者の指示や、通信可能を
検出するセンサなどによって同期処理が指示されると、
図13のS3に示す同期処理が行われる。より詳細に説
明すると、図26に示すように、S51において、各情
報処理機器2のシンクロナイズ処理部51は、それぞれ
のダーティ・ビット・リストLDにおいて、シンク・リ
ミットLimより後のダーティ・ビットDのうち、移動
パラメタが「O」のダーティ・ビットDを削除する。こ
れにより、図27に示すように、両ダーティ・ビット・
リストLDにおいて、シンク・リミットLimより後の
ダーティ・ビットDは、値が「Im」のみとなる。
【0135】上記移動パラメタが「O」のダーティ・ビ
ットDは、対応するティップTが前回の同期処理および
今回の同期処理の時点で、自らの共有フクロSFに含ま
れていない。したがって、当該ティップTの内容は、相
手の共有フクロSFの状態に拘わらず、相手に送出する
必要がない。この結果、これらのティップTを削除する
ことによって、以降の処理において、両情報処理機器2
a・2b間を伝送されるダーティ・ビットDの数を削減
できる。
【0136】上記S51にて、ダーティ・ビット・リス
トLDの圧縮が終了すると、両シンクロナイズ処理部5
1は、S52において、シンク・リミットLimより後
のダーティ・ビットDを送受して、相手から送られたダ
ーティ・ビットDに対応するダーティ・ビットDを生成
する。具体的には、一方の情報処理機器2bは、自らの
ダーティ・ビット・リストLDb 内で、シンク・リミッ
トLimb より後のダーティ・ビットDの数Yb を送出
し、他方の情報処理機器2aは、自らのダーティ・ビッ
ト・リストLDa において、シンク・リミットLima
の直後に、値が「Op」のダーティ・ビットDを、受け
取った数Yb だけ挿入する。さらに、両情報処理機器2
a・2bは、それぞれのシンク・リミットLimを上記
b だけ増加させる。これにより、図28に示すよう
に、情報処理機器2bで追加されたティップTに対応す
るダーティ・ビットDが、情報処理機器2aにも作成さ
れる。同様にして、情報処理機器2aで追加されたティ
ップTに対応するダーティ・ビットDが、情報処理機器
2bにも追加され、シンク・リミットLimが調整され
る。
【0137】ここで、図28に示すように、情報処理機
器2aのダーティ・ビット・リストLDa へ、情報処理
機器2bのティップTに対するダーティ・ビットDを追
加した状態では、シンク・リミットLimが既に変更さ
れており、情報処理機器2bのダーティ・ビット・リス
トLDb の末尾を示している(この場合、シンク・リミ
ットLim=23)。したがって、情報処理機器2aの
ティップTに対応するダーティ・ビットDを追加する
際、ダーティ・ビット・リストLDb のシンク・リミッ
トLimの直後に、これらのダーティ・ビットDを追加
すると、情報処理機器2aにて追加されたティップT
(T22a 、T24a 、T26a など)に対応するダーティ・
ビットDは、両ダーティ・ビット・リストLDa ・LD
b のいずれにおいても、情報処理機器2bにて追加され
たティップT(T27b 、T29b など)に対応するダーテ
ィ・ビットDよりも、順序が後になる。この結果、両ダ
ーティ・ビット・リストLDa ・LDb において、対応
するダーティ・ビットDの順位は一致する。
【0138】これにより、図29に示すように、両ダー
ティ・ビット・リストLDa ・LDb の長さは、互いに
等しくなり、互いに同じ順位のダーティ・ビットD・D
は、対応するティップTを示すようになる。また、両シ
ンク・リミットLimは、ダーティ・ビット・リストL
Dの長さと同一になり、シンク・リミットLimより後
のダーティ・ビットDは、存在していない。なお、この
段階では、ダーティ・ビット・リストLDおよびシンク
・リミットLimを更新すればよく、ティップTの内容
を伝送する必要はない。
【0139】なお、上記では、数Ya (Yb )を送受す
る場合を例にして説明したが、対応するティップTのダ
ーティ・ビットDを同一の順位にできれば、送受する情
報は、数Ya (Yb )に限らない。また、上記では、値
が「Op」のダーティ・ビットDを追加したが、「I
m」よりも優先度が低い値であれば同様の効果が得られ
る。
【0140】上記S52にて、ダーティ・ビットDの対
応付けが終了すると、S53において、両シンクロナイ
ズ処理部51は、両情報処理機器2a・2b間を伝送さ
れるダーティ・ビットDに基づいて、各ダーティ・ビッ
トDに対応するティップTが共有フクロSF内に配され
るか否かを決定する。もし、両ダーティ・ビットDa
b の移動パラメタが異なっていた場合は、例えば、図
30に示す優先ルールで、当該ティップTb が共有フク
ロSFb 内に配されるか否かを判定する。なお、図30
では、矢印の先の方が優先される。
【0141】具体的には、一方の情報処理機器2aから
他方の情報処理機器2bへ、ダーティ・ビット・リスト
LD内のダーティ・ビットDが順次送出される。他方の
情報処理機器2bでは、受け取ったダーティ・ビットD
a と、自らのダーティ・ビット・リストLDb のうち、
受け取った順番と同じ順番のダーティ・ビットDb とを
比較する。情報処理機器2bのシンクロナイズ処理部5
1は、図31に示すように、移動パラメタの組み合わせ
が、(X−X)、(X−I)、(I−I)、(I−K)
および(I−O)のいずれかの場合、ダーティ・ビット
DのティップTが、共有フクロSF内に配されると判定
し、ダーティ・ビットDに対応する両ティップTを、そ
れぞれの共有フクロSFに所属させる。さらに、自らと
相手の移動パラメタを「X」に設定する。
【0142】これとは逆に、移動パラメタの組み合わせ
が、(X−O)、(O−K)、(O−O)および(K−
K)のいずれかの場合、シンクロナイズ処理部51は、
ティップTが共有フクロSF外に配されると判定し、例
えば、自らおよび相手のティップTをそれぞれの共有フ
クロSFから排出すると共に、それぞれのダーティ・ビ
ットDが無効状態「K」に設定される。なお、両情報処
理機器2a・2bが正常に動作していれば、上記組み合
わせは(X−K)とならない。したがって、この場合
は、エラーと判断し、例えば、使用者の指示を仰ぐなど
のエラー処理を行う。
【0143】上記相手のティップTの排出、および、ダ
ーティ・ビットDの設定は、自らのダーティ・ビットD
を変更前に相手へ送出し、相手のシンクロナイズ処理部
51に処理させてもよいし、自らの判定結果を相手へ伝
えてもよい。いずれの場合であっても、ダーティ・ビッ
トDあるいは判定結果を送出する順番で、相手のダーテ
ィ・ビットDおよびティップTが特定され、それぞれを
特定するための情報が特に送付されない。したがって、
内外判定時に、伝送されるデータ量は、極めて少ない。
この結果、図32に示すように、両ダーティ・ビット・
リストLD内の全てのダーティ・ビットDは、移動パラ
メタが「X」あるいは「K」に設定される。
【0144】なお、移動パラメタが「X」ではないティ
ップT、すなわち、共有フクロSF外と判断されたティ
ップTやエラーとなったティップTは、以下のS54お
よびS55からなるティップ同期処理の対象外であり、
更新パラメタの優先度判定やティップTの内容送付は行
われない。
【0145】続いて、上記S53のフクロ同期にて、共
有フクロSF内と判定されたティップT(移動パラメタ
が「X」のティップT)について、上記シンクロナイズ
処理部51は、S54において、両ダーティ・ビットD
の更新パラメタを比較して、対応するティップTそれぞ
れの優先度を決定する。ティップTの優先度は、図33
に示すように、更新パラメタによって決められ、更新
「m」の方が維持「p」よりも優先される。これによ
り、ティップTの内容を伝送すべきか否かと、伝送する
場合の方向とが決定される。
【0146】具体的には、シンクロナイズ処理部51
は、図34に示すように、両ダーティ・ビットDa ・D
b を比較して、更新パラメタの組み合わせが(p−p)
の場合、ティップTの内容の送付が不要であると判定す
る。また、組み合わせが(p−m)の場合、更新パラメ
タが「m」の側を優先側と判定し、優先側の情報処理機
器2から、非優先側の情報処理機器2へ、ティップTの
内容を送付すべきと判定する。したがって、両ダーティ
・ビット・リストLDが上記図32に示す値の場合は、
図35に示すように、優先側が判定される。なお、上記
S54にて、組み合わせが(m−m)の場合、すなわ
ち、双方でティップTが更新された場合は、ティップT
の衝突として扱われる。この場合は、後述するように、
例えば、ティップTの内容(更新時刻や所定のキーフィ
ールドなど)や、同期処理を指示した側や共有設定を起
動した側、あるいは、予め設定された側など、ダーティ
・ビットD以外の情報を参照したり、あるいは、使用者
に問い合わせるなど、予め定められた優先ルールで、優
先側を決定する。なお、ティップTが衝突した場合は、
それぞれのティップTを別のティップTと見なし、相手
のティップTを自らの共有フクロSFに追加してもよ
い。
【0147】上記S54にて、ティップTの優先度が判
定され、ティップTの内容の送付が必要であると判断さ
れた場合、S55において、上記両シンクロナイズ処理
部51は、優先側のティップTの内容を非優先側へ送出
し、非優先側のティップTの内容を優先側の内容で置き
換える。これにより、両ティップTの内容が一致するの
で、それぞれのダーティ・ビットDの更新パラメタが
「p」に設定される。この結果、図36に示すように、
ダーティ・ビット・リストLD内の全てのダーティ・ビ
ットDは、「Xp」あるいは「K」のいずれかに設定さ
れる。
【0148】さらに、上記S54およびS55におい
て、ティップ同期が終了すると、S56において、両ダ
ーティ・ビット・リストLDの圧縮が行われ、値が
「K」のダーティ・ビットDは、それぞれのダーティ・
ビット・リストLDから削除される。例えば、図36で
は、5、6、10、11、19、20および21番目の
7つのダーティ・ビットDが、それぞれのダーティ・ビ
ット・リストLDから削除される。この結果、図37に
示すように、全てのダーティ・ビットDは、「Xp」と
なり、ダーティ・ビットDの数に合わせて、シンク・リ
ミットLimが更新される。なお、図37の例では、値
が「Xp」のダーティ・ビットDの順序を変更していな
いが、両ダーティ・ビット・リストLDで、対応するダ
ーティ・ビットDの順位が同じであれば、順序を変更し
てもよい。
【0149】上記S51ないしS56の同期処理によっ
て、両共有フクロSF内のティップTの数、および、対
応するティップTの内容は、同一になる。この結果、一
方の情報処理機器2で、データベースDBが独立に操作
された場合であっても、他の情報処理機器2と通信可能
になった時点で同期処理を行えば、それぞれの共有フク
ロSFの内容を一致させることができる。それゆえ、互
いに通信可能な期間が断続する情報処理機器2で、デー
タベースシステム1が構成されている場合であっても、
データの整合性を保つことができる。
【0150】さらに、上記同期処理では、S55にて、
ティップTの内容を送付する前に、S53およびS54
にて、両情報処理機器2a・2bでダーティ・ビットD
が比較され、内容送付の要否と伝送方向とがティップT
毎に決められる。したがって、この時点で内容の送付が
不要と判明したティップTは、内容の伝送を省略でき
る。ここで、本実施形態では、ダーティ・ビットDを有
するティップTについて、内容の更新を監視している。
したがって、移動も更新も行われていないティップTだ
けではなく、前回の同期処理時点と、今回の同期処理時
点との双方で、共有フクロSF内に存在し、かつ、非同
期期間中、更新されていないティップTについても、内
容の送付を省略できる。
【0151】また、本実施形態では、ティップTの対応
関係がダーティ・ビットDの順位として格納されている
ので、相手のティップTを示すIDを記憶しなくても、
対応関係を記憶できる。加えて、当該IDを送付しなく
ても、対応するティップTを特定できるので、ダーティ
・ビットDの送受の際に、両情報処理機器2a・2b間
を伝送されるデータ量と、ダーティ・ビットDの記憶に
必要なメモリ量とを削減できる。
【0152】なお、本実施形態では、非同期期間中に一
度でも、共有フクロSFに含まれたティップTについ
て、ダーティ・ビットDを作成しているが、これに限る
ものではない。前回の同期処理の終了時点で、共有フク
ロSFに含まれているティップTについて、ダーティ・
ビットDが作成されていれば、本実施形態と同様に、上
述の移動のみが行われたティップTの内容送付を省略で
きる。ただし、本実施形態のように、現時点で共有フク
ロSFに含まれるティップTについても、ダーティ・ビ
ットDを作成する場合は、非同期期間中に新たに挿入さ
れたティップTを検索する際の速度が向上すると共に、
ダーティ・ビットDの移動パラメタが「X」または
「I」のティップTのみを抽出することで、図6に示す
ツリー構造Sのうち、共有フクロSFに含まれるティッ
プTのリストを作成できる。この結果、当該ティップT
のリストを削除でき、メモリ量を削減できる。
【0153】なお、例えば、ティップTの追加など、個
々の処理は、いずれの情報処理機器2のシンクロナイズ
処理部51が行ってもよい。例えば、全ての処理を一方
のシンクロナイズ処理部51が実施してもよいし、双方
が分担して行ってもよい。
【0154】以下では、上記S54にて、ティップTの
衝突が検出された場合の動作について、さらに詳細に説
明する。すなわち、本実施形態では、衝突が検出された
場合、衝突を解決する主体として、以下の3つのモデル
のいずれかを採用している。なお、ある1つのモデルを
採用してもよいが、本実施形態に係る情報処理機器2
は、使用可能な複数のモデルのうち、図13のS1に示
す共有設定の際にオプションとして指示されたモデルを
使用する。
【0155】第1のモデル(話し合いモデル)は、図3
8に示すように、両情報処理機器2a・2bのシンク・
マネージャ61が、それぞれの上位アプリケーション6
2へ優先側を問い合わせ、両情報処理機器2a・2bで
独立して優先側を決定する。また、第2のモデル(選択
解決モデル)は、図39に示すように、両情報処理機器
2a・2bのうちの一方のシンク・マネージャ61のみ
が、上位アプリケーション62へ問い合わせて、優先側
を決定する。さらに、第3のモデル(自動解決モデル)
は、図40に示すように、上位アプリケーション62へ
問い合わせず、双方のシンク・マネージャ61が予め定
められた優先ルールに基づいて、優先側を選択する。な
お、上記シンク・マネージャ61は、図1に示すシンク
ロナイズ処理部51の一部である。また、上位アプリケ
ーション62は、データベースのデータを解析するアプ
リケーションなど、データベースのデータを参照するア
プリケーションや、情報処理機器2の使用者へ優先側を
問い合わせるアプリケーションであり、シンク・マネー
ジャ61からの問い合わせに対して、優先側を返答でき
る。
【0156】なお、上記選択解決モデルにおいて、一方
の情報処理機器2を選択する方法は、上位アプリケーシ
ョン62の有無や、例えば、共有設定の起動側など、後
述する自動解決モデルの一方選択モデルと同様の方法を
採用できる。ただし、優先側の決定方法を示すモデルと
同様、選択される情報処理機器2が異なる場合、不所望
な方が選択される虞れがあるので、当該情報処理機器2
を選択する方法は、共有設定時に設定される方がよい。
【0157】上記話し合いモデルは、さらに、衝突を解
決するタイミングによって、衝突を検出した同期処理中
に衝突を解決する折衝解決型モデルと、衝突の検出と衝
突の解決との間で、一度通信を切断するアプリ解決型モ
デルとに分けられる。同様に、選択解決モデルも、クラ
イアント即時型モデルと、クライアント遅延型モデルと
に分けられる。なお、図41に示すように、折衝解決型
モデルとクライアント即時型モデルとは、解決時期が、
検出と同じ同期処理中である即時解決モデルに分類さ
れ、アプリ解決型モデルとクライアント遅延型モデルと
は、解決時期が、衝突の検出よりも後の同期処理中の遅
延解決モデルに分類される。
【0158】ここで、即時解決モデルのうち、折衝解決
型モデルを採用した場合、例えば、図42に示すよう
に、S61において、一方の情報処理機器2aのシンク
・マネージャ61は、自らのティップTの内容のうちで
優先側決定に必要な情報と、相手のティップTの内容の
うちで優先側決定に必要な情報とを上位アプリケーショ
ン62へ提示する。同様に、S62では、相手の情報処
理機器2bにおいて、自らのティップTと相手のティッ
プTとを示す情報が上位アプリケーション62へ提示さ
れる。さらに、S63およびS64において、各情報処
理機器2a・2bの上位アプリケーション62は、それ
ぞれ独立して優先側を決定する。
【0159】双方で優先側が決定されると、S65にお
いて、シンク・マネージャ61は、双方の優先側が一致
するか否かを判定する。双方が一致した場合(上記S6
5にて YESの場合)、S66において、優先側が自機器
であるか否かが判定される。自機器の場合、シンク・マ
ネージャ61は、S67において、自らのティップTの
内容を相手の情報処理機器2へ送出して、当該内容で、
相手のティップTの内容を置き換える。一方、自機器で
はない場合、S68において、相手の情報処理機器2か
ら、相手のティップTの内容を受け取り、当該内容で、
自らのティップTの内容を置き換える。これにより、衝
突したティップTの組は、内容が同一になる。
【0160】上記S65において、双方の優先側が一致
しなかった場合、情報処理機器2aのシンク・マネージ
ャ61は、S69において、自らの上位アプリケーショ
ン62に対して、上記S61で提示された内容に加え
て、さらに、相手で決定された優先側を提示する。同様
に、S70において、情報処理機器2bのシンク・マネ
ージャ61は、上記S62の提示内容と、情報処理機器
2aが決定した優先側とを、自らの上位アプリケーショ
ン62へ提示する。その後、上記S63以降の処理が繰
り返され、それぞれの上位アプリケーション62で優先
側が再考される。
【0161】また、クライアント即時型モデルを採用し
た場合は、例えば、図43に示すように、一方の情報処
理機器2において、図42のS61と同様に、自らのテ
ィップTと相手のティップTとを示す情報が上位アプリ
ケーション62に提示される(S81)。また、S82
において、当該上位アプリケーション62は、これらの
情報に基づいて、優先側を決定する。さらに、優先側が
自機器の場合(S83にて YESの場合)、S84におい
て、相手のティップTの内容を自らのティップTの内容
で置き換え、相手機器を優先する場合(S83にて No
の場合)は、S85において、相手のティップTの内容
で、自らのティップTの内容を置き換える。これによ
り、衝突したティップTの組は、内容が同一になる。
【0162】一方、遅延解決型モデルのうち、アプリ解
決型モデルを採用した場合は、例えば、図44に示すよ
うに、S91において、両ティップTの内容が一致する
か否かが判定される。両者が一致する場合は、前回の同
期処理にて、ティップTの衝突が検出され、かつ、両者
が独立に提案する解決案が一致した場合である。この場
合、S95において、両情報処理機器2a・2bのシン
ク・マネージャ61は、それぞれ、当該ティップTに対
応する自らのダーティ・ビットDの更新パラメタを維持
「p」に設定して処理を完了する。
【0163】これに対して、両ティップTの内容が一致
しない場合(上記S91にて、 Noの場合)、各シンク
・マネージャ61は、S92にて、ティップTの内容を
互いに交換した後、S93にて、例えば、通信を切断し
たり、他のティップTの衝突を判定したりして、当該テ
ィップTに関する同期処理を一度中断する。さらに、通
信が切断されている間、両情報処理機器2a・2bのシ
ンク・マネージャ61は、S94において、それぞれの
上位アプリケーション62の指示に応じ、相手のシンク
・マネージャ61とは独立に衝突解決処理して、処理を
完了する。
【0164】以下では、図45に基づいて、上記S94
の処理をさらに詳細に説明する。すなわち、シンク・マ
ネージャ61は、S111において、上記S91にて、
相手から受け取ったティップTの内容と、自らのティッ
プTの内容とを、自らの上位アプリケーション62へ提
示し、上位アプリケーション62から、いずれを優先す
るかの指示を受け取る。
【0165】上位アプリケーション62が、相手機器の
ティップTの内容を優先すると判断した場合(上記S1
12にて、 YESの場合)、シンク・マネージャ61は、
S113にて、自らのティップTの内容を、相手のティ
ップTの内容で置き換え、S114にて、当該ティップ
Tに対応するダーティ・ビットDの更新パラメタを更新
「m」に設定して、処理を完了する。これとは逆に、自
機器のティップTの内容を優先すると判断した場合(上
記S112にて、 No の場合)、シンク・マネージャ6
1は、上記S113の処理を行わず、上記S114に
て、当該ティップTに対応するダーティ・ビットDの更
新パラメタを更新「m」に設定する。
【0166】ここで、両情報処理機器2a・2bが上記
S111ないしS114の処理を行うと、いずれを優先
側と判断したかに拘わらず、上記S114にて、ダーテ
ィ・ビットDの更新パラメタを更新「m」に設定するの
で、次回の同期処理の際には、一旦、衝突と判断され
る。ところが、双方の優先側が一致した場合には、双方
のティップTの内容が一致しているので、図44に示す
S91の判定が YESとなる。
【0167】例えば、情報処理機器2aにて、相手機器
が優先側と判断され、かつ、情報処理機器2bでは、自
機器が優先側と判断された場合を例にすると、情報処理
機器2aでは、上記S112の判定が YESとなるので、
情報処理機器2aのティップTの内容は、情報処理機器
2bのティップTの内容で置き換えられる。また、情報
処理機器2bでは、上記S112の判定が No になるの
で、情報処理機器2bのティップTの内容は、変更され
ない。
【0168】このように、双方の優先側が一致した場合
には、次回の同期処理の時点で双方のティップTの内容
が一致し、上記S91の判定が YESとなる。この結果、
両情報処理機器2a・2bにて、上記S95の処理が行
われ、当該ティップTに対応するダーティ・ビットDの
更新パラメタは、それぞれ、維持「p」となって、衝突
が完全に解決される。
【0169】なお、双方の優先側が一致しなかった場合
は、次回の同期処理の時点で、双方のティップTの内容
が一致しない。したがって、次回の同期処理の際、再
度、S92以降の処理が繰り返され、それぞれの上位ア
プリケーション62に再度衝突解決が求められる。
【0170】また、クライアント遅延型モデルの場合、
上位アプリケーション62へ問い合わせる情報処理機器
2では、図46に示す処理が行われる。すなわち、S1
21において、シンク・マネージャ61は、相手のティ
ップTの内容を自らに転送して受け取る。さらに、S1
22において、当該ティップTに対応する相手のダーテ
ィ・ビットDの更新パラメタを維持「p」に変更する。
【0171】さらに、S123およびS124におい
て、上記S93および図45に示すS111と同様に、
同期処理の中断後に優先側を決定される。相手機器を優
先側と判断した場合(S125にて、 YESの場合)、シ
ンク・マネージャ61は、S126において、上記S1
21にて受け取った相手機器のティップTの内容で、自
らのティップTの内容を置き換える。さらに、S127
では、当該ティップTに対応する自らのダーティ・ビッ
トDの更新パラメタを維持「p」に設定して処理を完了
する。
【0172】これとは逆に、自機器を優先側と判断した
場合(S125にて、 No の場合)、シンク・マネージ
ャ61は、当該ティップTに対応する自らのダーティ・
ビットDの更新パラメタを更新「m」に設定する(S1
28)。ここで、上記S122にて、相手機器では、当
該ティップTに対応するダーティ・ビットDの更新パラ
メタが維持「p」に設定されている。したがって、自機
器を優先側と判断した場合(更新パラメタが更新「m」
の場合)は、次回の同期処理の際、相手機器のティップ
Tの内容は、自機器のティップTの内容で置き換えられ
る。
【0173】上記の遅延解決モデルを採用した場合は、
ある同期処理にて、ティップTの衝突が検出された後、
次回以降の同期処理にて、ティップTの内容が一致され
るため、単一の同期処理中に、優先側を決定する必要が
なくなる。この結果、例えば、上位アプリケーション6
2が使用者の指示を受け取っている場合のように、シン
ク・マネージャ61が優先側を問い合わせてから回答が
得られるまでの時間が長い場合であっても、通信時間の
合計を一定の時間に抑えることができ、通信コストや消
費電力を削減できる。なお、上記では、両ティップTの
内容全てを提示する場合を例にして説明したが、優先側
を決定可能であれば、提示する情報は、衝突の発生や、
ティップTの内容の一部であっても同様の効果が得られ
る。
【0174】一方、自動解決型モデルは、衝突したティ
ップTの組毎に、優先側を決定する逐次決定モデルと、
同期処理の開始時点で、予め1つの情報処理機器2を優
先側と設定する一方選択モデルとに大別できる。前者の
例としては、例えば、最終更新時刻など、ティップTの
内容の一部に基づいて、優先側を判定する方法が挙げら
れる。この場合は、例えば、図47に示すように、S1
31において、図40に示すシンク・マネージャ61
は、自らの情報処理機器2において、処理対象となるテ
ィップTの最終更新時刻t1を取得する。また、S13
2では、当該ティップTに対応する相手のティップTの
最終更新時刻t2を取得する。さらに、S133におい
て、自らの最終更新時刻t1が相手の最終更新時刻t2
よりも新しいか否かを判定する。自らの最終更新時刻t
1の方が新しい場合は、S134にて、自らのティップ
Tの内容で、相手のティップTの内容を置き換える。こ
れとは逆に、相手の最終時刻t2の方が新しい場合は、
S135にて、相手のティップTの内容で自らのティッ
プTの内容を置き換える。これにより、より遅くに更新
したティップTを優先することができる。例えば、図4
8に示す例では、情報処理機器2aのティップT8aの方
が、情報処理機器2bのティップT8bよりも最終の更新
時刻が新しい。それゆえ、ティップT8aの内容で、ティ
ップT8bの内容が置き換えられる。なお、優先側決定の
基準は、最終更新時刻に限るものではなく、ティップT
の内容の一部であれば、同様の効果が得られる。
【0175】また、自動解決型モデルのうち、一方選択
モデルは、例えば、図49に示すように、S141にお
いて、同期処理の開始までに定められた優先側が、自機
器であるか否かが判定される。自機器を優先する場合
は、S142にて、自らのティップTの内容で相手のテ
ィップTの内容が置き換えられ、相手機器を優先する場
合は、S143にて、相手のティップTの内容で、自ら
のティップTの内容が置き換えられる。これにより、予
め定められた側のティップTを優先できる。
【0176】本実施形態では、上記S141にて参照さ
れる優先側を、以下の3つのモデルのいずれかで決定し
ている。第1のモデルは、図13のS1に示す同期設定
の際に予め優先側を設定し、優先側情報として記憶して
おき、当該優先側情報に基づいて決定するモデルであ
る。なお、優先側の決定方法は、どんな方法でもよく、
例えば、使用者や上位アプリケーション62の指示に応
じて設定してもよい。
【0177】また、第2のモデルは、上記第1のモデル
のうち、共有設定を起動した側に基づいて、優先側を決
定するモデルであり、さらに、共有設定起動側優先モデ
ルと、共有設定受動側優先モデルとに分けられる。共有
設定起動側優先モデルは、例えば、情報処理機器2…か
らなるデータベースシステム1がクライアント/サーバ
型のクライアント側を常に優先したい場合などに好適に
用いられ、同期処理の起動側やティップTの内容などに
拘わらず、常に、共有設定起動側を優先する。一方、共
有設定受動側モデルは、例えば、上記データベースシス
テム1のサーバ側を常に優先したい場合などに好適に用
いられ、共有設定受動側を常に優先する。いずれの場合
であっても、共有設定の起動と、優先側の特定とを同じ
操作で指定できるので、それぞれを別の操作で指定する
場合に比べて操作を簡略化できる。
【0178】さらに、第3のモデルは、図13のS3に
おいて、同期処理を起動する側に基づいて、優先側を決
定するモデルであり、同期処理起動側優先モデルと、同
期処理受動側優先モデルとに分けられる。これらのモデ
ルは、例えば、各情報処理機器2が対等な場合におい
て、前者は、自機器を優先したい場合に、後者は、相手
機器を優先したい場合に用いられる。いずれの場合であ
っても、同期処理の起動と、優先側の特定とを同じ操作
で指定できるので、それぞれを別の操作で指定する場合
に比べて操作を簡略化できる。さらに、各同期処理の時
点で、いずれの情報処理機器2が同期処理を起動するか
によって、優先側を変更できる。
【0179】ところで、上記では、図30および図33
に示すように、互いに対応するティップTの組のうち、
追加/削除/更新などの変更があったティップTを優先
し、当該変更を他の情報処理機器2へ反映していたが、
これに限るものではない。例えば、全てのティップTの
組について、同期処理や共有設定の起動側、あるいは、
予め定められた側など、同期処理の開始時点までに決定
された側(優先側)を常に優先し、例えば、図50に示
すように、情報処理機器2a(優先側)の共有フクロS
a の内容に合わせて、非優先側となる情報処理機器2
bにおいて、共有フクロSFb の内容を更新してもよ
い。この場合、同期処理は、ダウンロード(アップロー
ド)となる。なお、情報処理機器2がダウンロードを行
うか否かを選択可能な場合、当該選択は、優先側決定の
モデルと同様に、図13のS1に示す共有設定時のオプ
ションとして指定する方がよい。
【0180】具体的には、図51に示すように、S15
1において、優先側のダーティ・ビット・リストLD
は、図26に示すS51と同様に圧縮される。さらに、
S152において、非優先側で、非同期期間中に追加さ
れたティップTを共有フクロSFから削除する。また、
S153では、優先側で追加されたティップTに対応す
るダーティ・ビットDが、S52と同様に、非優先側の
ダーティ・ビット・リストLDに追加される。
【0181】S154では、図1に示すシンクロナイズ
処理部51は、優先側のダーティ・ビットDに基づいて
内外判定し、双方のダーティ・ビット・リストLDにお
いて、ダーティ・ビットDの移動パラメタを「X」また
は「K」に設定すると共に、内外判定に応じて、ティッ
プTを移動する。すなわち、優先側のダーティ・ビット
Dの移動パラメタが「X」または「I」の場合は、共有
フクロSF内を示している。したがって、当該ティップ
Tを共有フクロSF内に残すと共に、当該ティップTに
対応する双方のダーティ・ビットDの移動パラメタを
「X」に設定する。また、優先側のダーティ・ビットD
の移動パラメタが「K」または「O」の場合は、共有フ
クロSF外を示しているので、当該ティップTを共有フ
クロSF外へ移動すると共に、当該ティップTに対応す
る双方のダーティ・ビットDの移動パラメタを「K」に
設定する。
【0182】さらに、S155において、双方のダーテ
ィ・ビットDの更新パラメタに基づいて、優先側のティ
ップTの内容で、非優先側のティップTの内容を置き換
える。具体的には、優先側の更新パラメタが更新「m」
の場合、当該ティップTの内容が非優先側へ送出され
る。また、優先側の更新パラメタが維持「p」の場合で
あっても、非優先側の更新パラメタが更新「m」であれ
ば、同様に、当該ティップTの内容で非優先側を置き換
える。なお、双方の更新パラメタが維持「p」の場合
は、ティップTの内容を転送しない。
【0183】上記S155にて、ティップTの内容同期
が終了すると、S156において、図26のS56と同
様に、双方のダーティ・ビット・リストLDが圧縮され
る。これにより、非優先側の共有フクロSFの内容は、
優先側の共有フクロSFの内容に揃えられ、アップロー
ドやダウンロードを行うことができる。
【0184】また、共有設定処理部52にて設定可能な
オプションの一つとして、図52に示すように、衝突し
たティップTを互いに別のティップTと見なして、自ら
のティップTを相手の共有フクロSFへ追加するモデル
も採用できる。ダウンロードの要否と同様に、当該モデ
ルを採用するか否かも、共有設定時のオプションとして
指定される。
【0185】具体的には、図53のS161に示すよう
に、ティップT4a・T4bが衝突した場合、相手のダーテ
ィ・ビット・リストLDb において、自らのダーティ・
ビット・リストLDa における当該ダーティ・ビットD
4aの順位と同じ順位に、例えば、「Op」など、自らの
ダーティ・ビットD4aよりも優先度の低いダーティ・ビ
ットD4ab を新たに作成する。同様に、S162におい
て、自らのダーティ・ビット・リストLDa において、
相手のダーティ・ビットD4bと同じ順位に新たなダーテ
ィ・ビットD4ba を作成する。さらに、これらのダーテ
ィ・ビットDに基づいて、S163では、ティップT4a
の内容が情報処理機器2bに伝送され、ティップT4a
対応する新たなティップT4ab が、共有フクロSFb
追加される。また、S164において、ティップT4b
対応する新たなティップT4ba が、共有フクロSFa
追加される。これにより、ティップTが衝突した場合
に、変更されたティップTの内容全てを保存できる。
【0186】なお、図52および図53では、ティップ
Tの衝突が発生した場合のみ、コピーする例について説
明したが、他の選択肢として、図54に示すように、対
応するティップTの少なくとも一方が変更された場合に
コピーするモデルも採用できる。この場合は、変更され
ていないティップTの組は、何ら変更されないが、ティ
ップTの組のうち、少なくとも1つが変更されると、テ
ィップTをコピーする。これにより、一方のみが変更さ
れたティップT2a・T2b、T3a・T3bについてもコピー
が作成され、変更されたティップTの内容全てを保存で
きる。
【0187】図13のS2に示す非同期期間中の処理
と、上述のS3に示す同期処理とが交互に繰り返され、
それ以降は、同期処理が不要になると、S4において、
共有設定が解除される。共有解除の一例として、情報処
理機器2a・2b双方にフクロFおよびティップTが残
留するモデル(ティップ複写型モデル)について説明す
ると、図55に示すように、一方の情報処理機器2aに
設けられた共有解除処理部53は、S171において、
他方の情報処理機器2bの共有解除処理部53へ共有解
除要求を送出する。当該共有解除要求には、例えば、自
らのフクロIDと相手のIDとの組み合わせなど、自ら
の共有フクロSFを示す情報と、当該共有フクロSFに
対応する相手の共有フクロSFを示す情報とが含まれて
いる。
【0188】さらに、共有解除起動側の共有解除処理部
53は、S172において、例えば、上記組み合わせに
応じたダーティ・ビット・リストLDおよびシンク・リ
ミットLim、並びに、共有相手リストLSに登録され
た相手のフクロIDなど、共有設定時に設けられた共有
情報を削除する。一方、共有解除受動側となる情報処理
機器2bでは、受け取った共有解除要求に基づいて、共
有解除処理部53が、自らに格納された上記共有情報を
抹消する(S173、S174)。なお、図55では、
共有相手の認証を図示していないが、共有設定と同様
に、共有解除受動側が共有解除要求の内容に応じて、共
有解除するか否かを決定してもよい。
【0189】これにより、図56に示すように、両情報
処理機器2a・2b間で共有されていた共有フクロSF
a ・SFb は、それぞれ非共有のフクロFa ・Fb とな
る。上記ティップ複写型モデルの共有解除では、共有解
除が指示された場合、両共有フクロSFa ・SFb 間の
共有設定が解除されるだけであり、それぞれに含まれて
いるティップTは、双方のフクロFa ・Fb に残留す
る。
【0190】なお、共有解除のモデルは、ティップ複写
型モデルに限るものではなく、種々のモデルを適用でき
る。例えば、共有設定が解除された場合、図57に示す
ように、一方のフクロFにのみ、ティップを残し、他方
のフクロFでは、ティップを削除するモデル(ティップ
偏在型モデル)を採用してもよいし、図58に示すよう
に、ティップ消滅型モデル、すなわち、双方のフクロF
からティップTを削除するモデルを採用してもよい。さ
らに、ティップ複写型モデルやティップ偏在型モデルの
場合は、共有解除が指示されたとき、同期処理した後
で、共有解除することもできる。この場合は、特に同期
処理を指示しなくても、共有解除の時点で、ティップT
の整合性を保つことができる。また、ティップ偏在型モ
デル、および、ティップ消滅型モデルのように、ティッ
プTを除去する場合、図59および図60に示すよう
に、ティップTの除去により、空になるフクロFを削除
してもよい。いずれの場合であっても、情報処理機器2
が共有解除のモデルを複数選択可能な場合は、上述の優
先側決定のモデル選択と同様に、図13のS1に示す共
有設定時のオプションとして、共有解除のモデルを設定
する方がよい。
【0191】ところで、上記では、S51、すなわち、
図13のS3に示す同期処理の際に、シンク・リミット
Limより後のダーティ・ビットDを圧縮したが、この
処理は、自らの情報処理機器2に格納されているダーテ
ィ・ビットDのみを参照しているため、S2の非同期期
間中に実施できる。なお、この場合は、特許請求の範囲
に記載の第1順序削除手段が、データベース処理部24
に対応する。
【0192】この場合は、ティップ削除処理部43(図
1参照)は、ティップTの排出が指示された場合、図2
1に代えて、図61に示す処理を行う。すなわち、S1
81において、当該ティップTに対応するダーティ・ビ
ットDが、シンク・リミットLimより後か否かが判定
され、後の場合は、S182において、ダーティ・ビッ
トDがダーティ・ビット・リストLDから削除される。
一方、後ではない場合は、S183において、ダーティ
・ビットDの移動パラメタが「O」に変更される。この
結果、同期処理時に上記S51の処理が不要になり、所
要時間を短縮できる。
【0193】また、非同期期間中に圧縮する場合は、例
えば、誤操作でティップTを挿入したときのように、共
有フクロSF内に存在する期間が極めて短いティップT
に関連するダーティ・ビットDを、ダーティ・ビット・
リストLDから即座に削除できる。この結果、ダーティ
・ビット・リストLDの長さを抑制でき、記憶に必要な
メモリ量を削減できる。
【0194】図61では、ティップTの排出時にダーテ
ィ・ビット・リストLDを圧縮する場合について説明し
たが、非同期期間中の任意の時点で圧縮することもでき
る。この場合は、例えば、上位アプリケーションの指示
などによって、シンク・リミットLimより後ろに位置
し、かつ、移動パラメタが排出「O」であるダーティ・
ビットDが、ダーティ・ビット・リストLDから削除さ
れる。これにより、1回の処理で複数のティップTのダ
ーティ・ビットDをダーティ・ビット・リストLDから
削除できる。
【0195】ところで、上述の説明では、図19に示す
ように、ティップTが共有フクロSFから出された場合
や削除された場合など、ティップTが共有フクロSF内
に存在しなくなった場合、各情報処理機器2は、当該テ
ィップTに対応するダーティ・ビットDにおいて、移動
パラメタを排出「O」に設定している。したがって、テ
ィップTにダーティ・ビットDが割り当てられると、次
に同期処理するまでの間、当該ティップTの内容を保持
する必要があり、各情報処理機器2に必要なメモリ量が
増大する虞れがある。
【0196】具体的には、例えば、図25に示すダーテ
ィ・ビットD14a ・D14b のように、前回の同期処理時
に対応付けられたティップTに対して、一方の情報処理
機器2aでは、当該ティップTに対応するダーティ・ビ
ットDが、挿入維持「Ip」を示し、他方の情報処理機
器2bでは、排出維持「Op」を示す場合がある。この
状態は、例えば、情報処理機器2aにおいて、上記ティ
ップTを共有フクロSFの外へ排出した後で、共有フク
ロSF内に戻す操作が行われ、情報処理機器2bでは、
当該ティップTを共有フクロSFの外へ出す操作が行わ
れた場合に発生する。
【0197】この状態では、図26のS53に示す内外
判定(フクロ)同期の際、上記ダーティ・ビットD14a
・D14b は、図32に示すように、静止維持「Xp」と
なり、両ティップT14a ・T14b の内容が同じと見なさ
れる。この結果、上記S53に続くS54の優先度判定
では、優先度判定が行われず(図35参照)、S55の
ティップの内容同期においても、各情報処理機器2a・
2b間で、ティップTの内容が伝送されない(図36参
照)。
【0198】したがって、図19に示すように、ダーテ
ィ・ビットDを管理していた場合、同期処理の前に、一
方の情報処理機器2でティップTの内容が消失してしま
うと、図26に示す同期処理の際、当該ティップTの内
容を回復できず、各情報処理機器2間でデータベースD
Bの整合性を保てなくなってしまう。言い換えると、図
19に示すような管理方法の場合、各情報処理機器2
は、それぞれの使用者が不要と判断してティップTを削
除した場合であっても、当該ティップTに対応するダー
ティ・ビットDが存在していれば、次に同期処理が行わ
れるまでの間、当該ティップTの内容を保持する必要が
ある。この結果、長い非同期期間が見込まれる情報処理
機器2ほど、より大きな記憶容量が必要になってしま
う。
【0199】ここで、多くの場合、携帯型の情報処理機
器2は、搭載可能なメモリ量が限られており、しかも、
いつ通信可能になって同期処理を実施できるかが不確定
である。したがって、このような情報処理機器2では、
以下の変形例に示すように、図19に示すダーティ・ビ
ットDの管理方法に代えて、図64に示す管理方法を採
用することが望まれる。なお、この場合は、データベー
ス管理部23が特許請求の範囲に記載の対応データ情報
記憶手段にも対応し、ティップ削除処理部43が対応付
け解消手段、データ削除手段および削除選択手段にも対
応する。
【0200】具体的には、本変形例に係る情報処理機器
2では、図19に示す操作に加えて、実体の削除を伴う
ティップ削除操作、実体の削除を伴うティップの排出操
作、並びに、共有フクロSF外のティップTの実体削除
操作を処理できる。両操作の場合、図64に示すよう
に、操作対象となるティップTに対応するダーティ・ビ
ットDは、それまでの値に拘わらず無効「K」に設定さ
れる。また、共有フクロSF外のティップTの実体を削
除する場合も、ダーティ・ビットDの値が無効「K」に
設定される。なお、ダーティ・ビットDの値は、図19
の場合と同様、例えば、図10に示すように、ビットB
O・BIによって表現できる。
【0201】この管理方法を採用した場合、図1に示す
ティップ削除処理部43は、使用者からユーザ操作部2
2を介して指示を受けた場合など、実体の削除と共にテ
ィップTを排出する場合、図22に示すS41と同様
に、フクロ管理部32を制御して、操作対象となるティ
ップTを共有フクロSFから排出する(図65に示すS
201)。さらに、S202において、ティップ削除処
理部43は、当該共有フクロSFを示す全てのダーティ
・ビット・リストLDにおいて、当該ティップTに対応
するダーティ・ビットDの移動パラメタの値を無効
「K」に設定する。また、S203において、ティップ
管理部31は、ティップ削除処理部43の指示に従い、
ティップTの実体(例えば、ファイルやメモリ上のデー
タなど)と、ダーティ・ビットDとの対応付けを解消す
る。
【0202】なお、対応付けの解消方法は、例えば、各
ティップTの実体に、それぞれに対応しているダーティ
・ビットDの数が付加されている場合、当該数値を減少
させてもよい。また、共有フクロSFから排出されたテ
ィップTに対応するダーティ・ビットD毎に、ティップ
Tの実体が残っているか否かを示す値を記憶してもよ
い。さらに、全てのダーティ・ビット・リストLDを検
索して、ティップTの実体に対応するダーティ・ビット
Dが存在するか否かを判定すれば、ダーティ・ビットD
を無効「K」に設定すること自体で、対応付けを解消す
ることもできる。いずれの場合であっても、後述のティ
ップTの実体削除処理において、各ティップTに対応し
ているダーティ・ビットDが存在するか否かを判定でき
れば、同様の効果が得られる。なお、後述のティップT
の実体削除処理が続いて行われるのであれば、ティップ
Tの実際削除処理自体を対応付けの解消と見なすことも
できる。
【0203】一方、共有フクロSF外のティップTに対
して、実体を削除する場合は、図66のS211および
S212に示すように、情報処理機器2は、図65のS
202およびS203と同様の処理を行い、ティップT
とダーティ・ビットDとの対応付けを解消する。
【0204】実体の削除を伴う処理が、いずれの場合で
あっても、当該ティップTの実体が、他の場所(別の共
有フクロSFや別のアプリケーションなど)からも参照
されていない場合、ティップ削除処理部43は、ティッ
プ管理部31を制御して、ティップTの実体を削除す
る。これにより、情報処理機器2において、データベー
ス管理部23の空き領域を拡大できる。この結果、非同
期期間が長く、多くのティップTが削除される場合であ
っても、データベース管理部23に必要なメモリ量を低
減できる。
【0205】ここで、ティップ削除処理部43は、使用
者から実体削除を指示された場合であっても、例えば、
特定のフクロFへティップTを移動するなどして、ティ
ップTの実体と対応付けとをできるだけ長い間保持して
おくと共に、空きメモリ量と予め定められた値とを比較
して、空きメモリ量が不足した時点で、ダーティ・ビッ
トDとティップTの実体との対応を解消する方が望まし
い。これにより、空きメモリ量が不足していない限り、
各ティップTの実体および対応付けを保持できる。この
結果、同期処理時のデータ転送量を削減できると共に、
ティップTの追加や更新など、情報処理機器2の動作に
不可欠なメモリを確保できる。
【0206】さらに、ティップ削除処理部43は、対応
付けを解消する際、次の同期処理の際に、相手の情報処
理機器2からティップTの内容を転送する可能性を推定
して比較し、可能性が低いティップTから順番に、対応
付けを解消することもできる。この可能性は、例えば、
これまでの同期処理の履歴から推定してもよいし、ティ
ップTが排出された場合は、削除された場合よりも転送
の可能性が高いと推定するなど、自らの情報処理機器2
における使用者の操作に基づいて推測してもよい。な
お、対応付けを解消する際、ティップTの実体を削除で
きるか否か、すなわち、他の場所から参照されているか
否かを判定し、削除可能なティップTから、対応付けを
解消する方がよい。これにより、転送の可能性の高いテ
ィップTほど長い間、情報処理機器2の動作に不可欠な
メモリを確保しながら、同期処理の際のデータ転送量を
効率良く削減できる。
【0207】いずれの場合であっても、対応付けが解消
されたダーティ・ビットDは、移動パラメタが無効
「K」に設定されており、後述するように、同期処理の
際、必要に応じて、他の情報処理機器2から伝送され
る。したがって、各情報処理機器2が非同期期間中の任
意の時点で、ティップTの実体を削除しても、同期処理
が行われた時点で、データベースシステム1におけるデ
ータベースDBの整合性は保たれる。
【0208】具体的には、図19に示す管理方法と同様
に、本変形例でも、非同期期間中、ティップTへの操作
に応じて、ダーティ・ビット・リストLDが更新される
が、本変形例では、ダーティ・ビットDが無効「K」に
変化することがある。したがって、同期処理を開始する
時点の各情報処理機器2a・2bにおいて、ダーティ・
ビット・リストLDa ・LDb には、無効「K」のダー
ティ・ビットDが含まれている。
【0209】このダーティ・ビット・リストLDa ・L
b に対して、図26のS51に示す圧縮処理が実施さ
れると、非同期期間中に新たに共有フクロSFへ追加さ
れたティップTに対応するダーティ・ビットDのうち、
現在共有フクロSFへ含まれていないティップTに対応
するダーティ・ビットDは、それぞれのダーティ・ビッ
ト・リストLDから削除される。
【0210】具体的には、図67に示すように、シンク
・リミットLima ・Limb =21、Ya =7、Yb
=5の場合を例にすると、シンク・リミットLima
Limb よりも後のダーティ・ビットD22a 〜D28a
29b 〜D33b )のうち、排出更新「Om」および無効
「K」のダーティ・ビット(D23a 、D25a …)が削除
される。この結果、図68に示すように、それぞれのダ
ーティ・ビット・リストLDa (LDb )のうち、シン
ク・リミットLima (Limb )よりも後には、挿入
更新「Im」のダーティ・ビットDのみが残留する。
【0211】さらに、S52では、上述の図27ないし
図29と同様に、それぞれのダーティ・ビット・リスト
LDa (LDb )に、他の情報処理機器2b(2a)で
追加されたダーティ・ビットDb (Da )が追加される
と共に、シンク・リミットLima (Limb )が調整
される(図69参照)。これにより、ダーティ・ビット
・リストLDa ・LDb において、互いに対応するティ
ップTを示すダーティ・ビットDa ・Db は、同じ順序
に配され、ダーティ・ビットDa ・Db 間の対応が付け
られる。ここで、S52の時点では、各情報処理機器2
間で、ダーティ・ビットDa ・Db の対応が付けられて
いるが、ティップTの内容は伝達されていない。したが
って、新たに追加されたダーティ・ビットDの値は、無
効「K」に設定される。
【0212】続いて、S53では、各情報処理機器2a
・2b間でダーティ・ビットDが交換され、ティップT
の内外判定(フクロ)同期が行われる。ただし、本変形
例では、シンク・リミットLimより前のダーティ・ビ
ットDであっても、ティップTの実体が削除されれば、
無効「K」に変化するので、各情報処理機器2間でダー
ティ・ビットDa ・Db が対応付けられた後のダーティ
・ビット・リストLDa ・LDb であっても、無効
「K」が含まれている。したがって、シンクロナイズ処
理部51は、図31に代えて、以下に示すルールによ
り、ティップTを内外判定する。
【0213】具体的には、ダーティ・ビットDの移動パ
ラメタの組み合わせが、(X−X)、(X−I)、(I
−I)、(I−K)および(I−O)のいずれかの場
合、当該ダーティ・ビットDに対応するティップTは、
共有フクロSF内に配されると判定し、自らと相手との
ダーティ・ビットDにおいて、移動パラメタを静止
「X」に設定する。一方、移動パラメタの組み合わせ
が、(X−O)、(O−K)、(O−O)および(K−
K)のいずれかの場合、ティップTは、共有フクロSF
外であると判定され、それぞれの移動パラメタが無効
「K」に設定される。
【0214】さらに、組み合わせが(I−K)のよう
に、一方のダーティ・ビットDが無効「K」で、かつ、
ティップTが共有フクロSF内に配される場合は、各ダ
ーティ・ビットDの更新パラメタも合わせて変更され、
無効「K」のダーティ・ビットDが静止維持「Xp」に
設定されると共に、他のダーティ・ビットDは、静止更
新「Xm」に設定される。これにより、他のダーティ・
ビットDの内容が更新されなかった場合(ダーティ・ビ
ットDが挿入維持「Ip」の場合)であっても、後述す
るS54に示す内容同期において、ティップTの実体が
存在しない情報処理機器2には、必ず、他の情報処理機
器2からティップTの内容が補充される。
【0215】この結果、例えば、シンク・リミットLi
m=28で、ダーティ・ビットDa・Db の組み合わせ
全てが網羅されている場合を例にして説明すると、各ダ
ーティ・ビット・リストLDa ・LDb は、図70に示
す状態から図71に示す状態へと変化する。
【0216】ここで、ダーティ・ビットDa ・Db の組
み合わせの判定は、組み合わせ毎に行われ、判定結果
は、移動パラメタおよび更新パラメタの変更として記憶
される。したがって、図19に示す管理方法の場合と同
様に、通信の切断などによって、S53の内外判定(フ
クロ)同期処理が中断されても、何ら支障なく、同期処
理を再開できる。
【0217】その後は、図19の管理方法の場合と同様
に、S54にて、優先度判定が行われ、S56におい
て、各ダーティ・ビット・リストLDa ・LDb が圧縮
されて、同期処理が終了する。
【0218】さらに、同期処理が終了した時点で、ティ
ップ削除処理部43は、同期処理の結果、共有フクロS
F外に配されたティップTについて、実体が他の場所か
ら参照されているか否かを判定し、いずれからも参照さ
れていない場合、ティップ管理部31を制御して、当該
ティップTの実体を削除する。ここで、これらのティッ
プTは、各データベースDB間で整合性を保つ必要の無
いデータであり、それ以降の同期処理の際、内容が転送
されない。したがって、これらのティップTの実体を削
除することによって、同期処理の際のデータ転送量を増
大させることなく、情報処理機器2の空きメモリ量を拡
大できる。
【0219】なお、上記では、同期処理の終了時に、デ
ータベースDB間で対応付けられていないティップTの
実体を削除する場合を例にして説明したが、これに限る
ものではない。例えば、共有フクロSF外に配されたテ
ィップTの内容を頻繁に参照する場合など、当該ティッ
プTの内容を再利用する場合には、同期処理の終了時に
ティップTの実体を削除しなくてもよい。さらに、使用
者の要望に合わせて設定できるように、情報処理機器2
は、ティップ削除処理部43が実体を削除するか否かを
選択可能な方がよい。この場合は、さらに、共有設定毎
に選択してもよいし、全共有設定毎に共通に選択しても
よい。
【0220】また、当該変形例では、ダーティ・ビット
Dの値として、非同期期間中に、無効を示す値「K」を
必ず使用する場合について説明したが、使用者の要求に
応えるために、無効「K」を用いるか否かを設定可能で
あってもよい。この場合、無効「K」の要否を設定する
時点は、共有解除のモデルを設定するときと同様、例え
ば、共有設定時など、各情報処理機器2が互いに通信可
能な期間に限定すれば、同期処理時において、各情報処
理機器2間で設定の相違に起因する不具合の発生を抑制
できるので、より好ましい。
【0221】さらに、上記では、図26を例にして説明
したが、本変形例においても、図61と同様に、非同期
期間中に、自らのダーティ・ビット・リストLDを圧縮
してもよい。この場合は、実体を削除するか否かに拘わ
らず、ティップTに対応するダーティ・ビットDがダー
ティ・ビット・リストLDから削除される。
【0222】ところで、上述の説明では、ティップTの
実体を削除するか否かに拘わらず、各情報処理機器2
は、図26のS53に示す内外判定(フクロ)同期にお
いて、ダーティ・ビットDの移動パラメタの組み合わせ
が(挿入「I」−排出「O」)の場合(図32に示す
〔14〕・〔15〕・〔17〕・〔18〕、あるいは、図71に
示す〔16〕・〔17〕・〔20〕・〔21〕)、当該ダーティ
・ビットDに対応するティップTが、共有フクロSF内
に位置すると判定し、それぞれの更新パラメタを変更せ
ずに、それぞれの移動パラメタのみを静止「X」に設定
している。一方、S54に示す優先度判定では、更新パ
ラメタに基づいて、優先側が決定されるので、ダーティ
・ビットDの組み合わせが(Im−Op)の場合、「I
m」の側が優先される。同様に、(Ip−Om)の場
合、「Om」の側が優先され、(Im−Om)の場合、
衝突と判定される。
【0223】ここで、(Ip−Om)および(Im−O
m)の場合、内外判定(フクロ)同期では、挿入「I」
側の操作結果が反映されているにも拘わらず、優先度判
定では、排出「O」側の操作結果が反映されることがあ
る。一方、用途や使用者によっては、排出「O」側にお
けるティップTの更新が同期処理の結果に反映されなく
ても、内外判定(フクロ)同期の判定と優先度判定の判
定とを一致させる方がよい場合がある。
【0224】以下では、さらに他の変形例として、移動
パラメタの組み合わせが(I−O)の場合には、挿入
「I」側のティップTの内容を優先する場合について、
図72に基づき説明する。なお、この場合、シンクロナ
イズ処理部51が特許請求の範囲に記載の範囲内優先手
段および優先選択手段にも対応する。
【0225】本変形例に係る各情報処理機器2では、図
26のS53に示す内外判定(フクロ)同期において、
シンクロナイズ処理部51は、ダーティ・ビットDの組
み合わせが(Ip−Om)および(Im−Op)の場
合、それぞれの移動パラメタを静止「X」に設定するだ
けではなく、挿入「I」側の更新パラメタを更新「m」
に変更し、排出「O」側の更新パラメタを維持「p」に
設定する(図72の〔17〕・〔21〕)。これにより、S
54の優先度判定およびS55の内容同期の際、挿入
「I」側のティップTが必ず優先され、排出「O」側の
ティップTの内容は、挿入「I」側の内容に合わせて変
更される。この結果、内外判定(フクロ)同期と、優先
度判定とを一致させることができる。
【0226】なお、上記では、排出「O」側を優先する
場合を例にして説明したが、使用者の要求に応えるため
に、排出「O」側を優先するか否かを設定可能であって
もよい。この場合は、共有解除のモデルを設定する場合
と同様に、例えば、共有設定の時点など、各情報処理機
器2が通信可能な期間に、排出「O」側を優先するか否
かを設定することが望まれる。この設定は、共有設定毎
でもよいし、全共有設定で共通であってもよい。これに
より、各情報処理機器2間で、排出「O」側を優先する
か否かについて確実に同意することができ、各情報処理
機器2間で選択が異なる場合の不具合の発生を防止でき
る。
【0227】〔第2の実施形態〕ところで、第1の実施
形態では、データベースシステム1を構成する各情報処
理機器2…が、データベースDBの部分集合となるフク
ロFを作成可能で、それぞれが対等の場合を例にして説
明した。これに対して、本実施形態では、図62に示す
ように、データベースシステム11に、部分集合を設定
できない情報処理機器(データベース管理装置)12が
含まれる場合について説明する。
【0228】上記データベースシステム11は、例え
ば、クライアント−サーバ型のデータベースシステムな
ど、互いに対等ではない情報処理機器から構成される場
合に好適に使用される。上記情報処理機器2は、例え
ば、サーバとして動作するデスクトップ型のコンピュー
タなどとして実現され、上記情報処理機器12は、例え
ば、携帯情報端末など、格納可能なデータベースDBの
規模が情報処理機器2よりも小さい機器にて実現され
る。
【0229】当該情報処理機器12は、図1に示す情報
処理機器2と略同一の構造であるが、データベース管理
部23は、図63に示すように、1つのデータベースD
Bを1つのフクロFとして格納しており、図62に示す
ように、情報処理機器12のデータベースDB全体とな
るフクロFが、情報処理機器2のフクロFと共有され
る。
【0230】上記構成のデータベースシステム11であ
っても、同期処理の際、ティップTの内容伝送に先立っ
て、情報処理機器2・12間でダーティ・ビットDが比
較され、内容伝送の要否と伝送方向とが決定される。こ
こで、情報処理機器2では、第1の実施形態と同様に、
ダーティ・ビットDに基づいて、移動のみが行われたテ
ィップTを判別できる。この結果、当該ティップTの内
容伝送を確実に抑止でき、同期処理時に伝送されるデー
タ量を削減できる。
【0231】さらに、本実施形態でも、両ダーティ・ビ
ット・リストLDにおけるダーティ・ビットDの順位
で、ティップTの対応関係が記憶されているので、より
少ないメモリ量でティップTの状態を把握できると共
に、同期処理時に通信されるデータ量を削減できる。
【0232】上記構成のデータベースシステム11の使
用例としては、例えば、会社などに設置され、サーバと
なる情報処理機器2で、全営業マンに必要なアドレス情
報を一括管理し、携帯情報端末となる情報処理機器12
が各営業マンそれぞれに配付される場合が挙げられる。
ここで、各営業マン毎に必要なアドレス情報の組み合わ
せは、互いに異なっており、かつ、複数の営業マンに共
通のアドレス情報があることが多い。したがって、情報
処理機器2にて、データベースDBに全アドレス情報を
格納し、各営業マンに必要なアドレス情報の組み合わせ
をフクロFとして管理することで、情報処理機器2は、
例えば、各営業マン毎のアドレス情報を別のデータベー
スDBに格納する場合と異なり、各アドレス情報を整合
性を損なうことなく管理できる。また、情報処理機器1
2は、情報処理機器2の1つのフクロFを格納できれば
よいので、アドレス情報全体を記憶する場合よりも記憶
容量を削減できる。
【0233】なお、上記第1および第2の実施形態で
は、ティップTが個々の住所を示す場合を例にして説明
したが、当然ながら、ティップTが示すデータは、デー
タベースの用途に応じて自由に設定できる。また、各テ
ィップTが同じ種類の属性A…を有し、共有相手が同じ
ティップTが、共有フクロSFに集められる場合を例に
して説明したが、これに限るものではない。例えば、共
有相手とアプリケーションとの組み合わせ毎に共有フク
ロSFを設けてもよい。アドレス帳、電子帳およびメイ
ルアドレスデータベースのアプリケーションが存在する
場合を例にして説明すると、アドレス帳で使用されるテ
ィップTは、名前、電話番号、メールアドレス、住所お
よび勤務先などを示す属性を備えている。また、電話帳
で使用されるティップTは、名前と電話番号とを示す属
性を備え、メイルアドレスデータベースのティップT
は、名前とメールアドレスとを示す属性を備えている。
さらに、各ティップTは、使用アプリケーションを示す
フクロFに集められる。例えば、電話帳で使用されるテ
ィップTは、アドレス帳を示すフクロFにも所属する。
この場合、アドレス帳全体を新しくしたい場合は、アド
レス帳を示すフクロFに対して共有設定すればよいし、
電話帳のフクロFのみを変更したい場合は、当該フクロ
Fに対し共有設定して同期処理すればよい。このよう
に、使用するアプリケーション毎にフクロFを割り当て
れば、用途毎に同期処理できる。
【0234】また、上記第1および第2の実施形態で
は、対応関係をダーティ・ビットDの順序として記憶し
ているが、これに限るものではない。例えば、ティップ
IDなど、相手のティップTを示す情報で、対応するテ
ィップTを特定してもよい。ただし、この場合は、同期
処理時に、ダーティ・ビットDだけではなく、相手のテ
ィップIDを送出する必要があり、通信されるデータ量
が増大する虞れがある。
【0235】さらに、相手のティップIDは、相手のデ
ータベースDBの規模が増大するに従って、データ量が
多くなる。この結果、特に、第2の実施形態のように、
情報処理機器2と情報処理機器12とが対等ではない場
合、メモリ量の削減が強く要求される情報処理機器12
において、ダーティ・ビットDの順序で特定するより
も、対応関係の記憶に必要なメモリ量が多くなってしま
う。
【0236】これに対して、上記第1および第2の実施
形態では、ティップTの対応関係は、自らのティップT
に関連する情報の順序で格納さている。したがって、相
手のデータベースDBの規模やティップTの格納方法に
拘わらず、対応関係を格納できる。この結果、相手のテ
ィップTを示す情報で特定する場合よりも、対応関係の
記憶に必要なメモリ量を削減できると共に、同期処理の
際に伝送されるデータ量を削減できる。
【0237】また、上記第1および第2の実施形態で
は、ダーティ・ビットDの順序が、ダーティ・ビット・
リストLDとして格納されているが、これに限るもので
はない。例えば、ダーティ・ビット・リストLDとは別
に順序を示すリストを設けてもよいし、各ティップT毎
に、ダーティ・ビットDと、順位を示す情報とを格納す
ることもできる。ただし、ダーティ・ビットDと順序と
は、同じティップTに対応する場合であっても、自らの
共有フクロSFと相手の共有フクロSFとの組み合わせ
毎に設けられ、共有相手の数は、データベースDBの作
成時点では予測できないことが多い。したがって、ダー
ティ・ビットDと順序とは、ティップTの内容自体とは
別に設ける方がよい。それゆえ、それぞれを別に記憶す
ると、対応するティップTを示す情報が別に必要にな
り、必要なメモリ量が増大する。したがって、ダーティ
・ビットDを格納する順序として、対応関係を格納する
ことで、必要なメモリ量をさらに削減できる。
【0238】さらに、上記各実施形態では、自らの共有
フクロSFと相手の共有フクロSFとの組み合わせ毎
に、ダーティ・ビットDを設けているが、非同期期間が
同一であれば、複数の共有フクロSF間で、ダーティ・
ビット・リストLD(ダーティ・ビットD)を共用でき
る。
【0239】なお、上記各実施形態では、例えば、各情
報処理機器2(12)がシンクロナイズ処理部51を備
えている場合について説明したが、シンクロナイズ処理
部51や共有設定処理部52など、各情報処理機器2
(12)が通信可能な期間のみに動作する部材は、いず
れか一方に設けられていればよい。また、例えば、シン
クロナイズ処理部51のうち、ティップTの衝突を検出
する部分と、優先側を決定する部分とが異なる情報処理
機器2(12)に配されていてもよい。通信可能な時点
で、上記各部材を形成できれば、同様の効果が得られ
る。
【0240】
【発明の効果】請求項1の発明に係るデータベース管理
装置は、以上のように、共有範囲となる部分集合を設定
する部分集合設定手段と、少なくとも前回の同期処理終
了時に上記部分集合に含まれたデータについて、更新情
報と移動情報とを含む状態情報が記憶される状態情報記
憶手段と、非同期期間中、対応する状態情報が上記状態
情報記憶手段に格納されている各データを監視して、そ
れぞれの状態情報を更新する状態情報更新手段とを備え
ている構成である。
【0241】それゆえ、部分集合内外を移動したデータ
であっても、前回の同期処理時と次回の同期処理時との
双方で部分集合内に存在し、かつ、両時点の間で内容が
更新(変更)されていないデータを確実に識別できる。
この結果、相手のデータベース管理装置へ通信するデー
タ量を削減でき、同期処理時に処理されるデータ量を削
減できるという効果を奏する。
【0242】請求項2の発明に係るデータベース管理装
置は、以上のように、請求項1記載の発明の構成におい
て、上記同期処理手段を備え、当該同期処理手段には、
互いに対応するデータ組毎に、自らの状態情報記憶手段
に格納された状態情報と、相手のデータベース管理装置
から受け取った情報(受信情報)とに基づいて、データ
の内容伝送の要否を判定する判定手段とが設けられてい
る構成である。
【0243】それゆえ、判定手段は、データの内容伝送
に先立って、上述の状態情報や更新の有無など、データ
の内容自体に比べてデータ量の小さな情報によって、内
容伝送の要否を判定できる。この結果、同期処理の際、
各データベース管理装置間で伝送されるデータ量、およ
び、それぞれで処理されるデータ量を削減できるという
効果を奏する。
【0244】請求項3の発明に係るデータベース管理装
置は、以上のように、請求項2記載の発明の構成におい
て、上記判定手段は、上記状態情報と受信情報とに基づ
いて、同期処理により、共有範囲内に配されるか否かを
判定し、各データ組に対応する状態情報を更新する内外
判定同期手段を備えている構成である。
【0245】上記構成によれば、同期処理手段は、小さ
な情報によって、各データが共有範囲内に存在するか否
かを判定できる。それゆえ、同期処理に伝送あるいは処
理されるデータ量を削減できるという効果を奏する。さ
らに、判定結果は、状態情報などとして、各データ組毎
に格納されるので、各判定の独立性を向上できる、この
結果、同期処理が中断される虞れがあるデータベースシ
ステムであっても、各データベース間の整合性を確実に
保つことができるという効果を併せて奏する。
【0246】請求項4の発明に係るデータベース管理装
置は、以上のように、請求項2または3記載の発明の構
成において、上記判定手段には、互いに対応するデータ
の組のうち、少なくとも、同期処理後に共有範囲内に存
在するデータ組それぞれについて、上記状態情報と受信
情報とに基づいて、当該データ組のうちのいずれのデー
タを優先するかを判定する優先側判定手段と、当該優先
側判定手段が優先するデータを決定した場合は、優先す
るデータの内容で、非優先側のデータの内容を置き換え
るデータ内容同期手段とが設けられている構成である。
【0247】それゆえ、極めて少ないデータ量で、優先
側判定の要否、優先側、および、データ内容を伝送する
際の伝送方向を決定でき、同期処理の際に、通信あるい
は処理されるデータ量を削減できるという効果を奏す
る。
【0248】請求項5の発明に係るデータベース管理装
置は、以上のように、請求項3記載の発明の構成に加え
て、請求項4記載の優先側判定手段およびデータ内容同
期手段を備え、当該優先側判定手段は、上記内外判定同
期手段による設定に基づいて、同期処理後に共有範囲内
に存在するデータ組を識別する構成である。
【0249】それゆえ、対応するデータ組全てで優先側
を判定する場合、あるいは、内外判定同期手段の判定と
は別に、共有範囲内に存在するか否かを判定する場合に
比べて、判定時間を短縮できるという効果を奏する。
【0250】請求項6の発明に係るデータベース管理装
置は、以上のように、少なくとも自らの共有範囲に含ま
れているデータの順序を記憶すると共に、前回の同期処
理では、各データの順序が相手と同一に設定される順序
記憶手段と、上記順序のうち、前回の同期処理での末尾
の順位を示す対応済順位を記憶する対応済順位記憶手段
と、前回の同期処理から次の同期処理までの非同期期間
中は、上記順序記憶手段が格納する順序のうち、上記対
応済順位および当該対応済順位よりも前の順序を保持す
ると共に、非同期期間中に自らの共有範囲へ新たに含ま
れたデータは、上記対応済順位よりも後になるように、
各データの順序を管理する順序管理手段とを備えている
構成である。
【0251】上記構成では、各データベース管理装置
は、自らに格納されたデータの順序として対応関係を記
憶している。それゆえ、相手のデータを示す対応情報で
記憶する場合よりも、対応関係の記憶に必要なメモリ量
と、同期処理時の演算量とを削減できると共に、同期処
理の際、通信あるいは処理されるデータ量を削減できる
という効果を奏する。
【0252】請求項7の発明に係るデータベース管理装
置は、以上のように、請求項6記載の発明の構成におい
て、同期処理手段を備え、当該同期処理手段には、自ら
の共有範囲内に存在するデータのうち、上記順序記憶手
段に格納された順位が上記対応済順位より後のデータ
を、相手の共有範囲に追加するデータ追加手段と、相手
の共有範囲へ追加したデータについて、自らの順序記憶
手段に記憶された順位と、相手の順序記憶手段に記憶さ
れた順位とが一致し、かつ、それぞれの順位が未だ対応
付けられていないデータの順位よりも前になるように、
自らおよび相手の順序記憶手段の少なくとも1つを更新
する追加データ対応付手段と、上記対応済順位を更新す
る対応済順位更新手段とを備えている構成である。
【0253】上記構成によれば、例えば、新規作成や共
有範囲内への移動などによって、非同期期間中に新たに
共有範囲に追加されたデータであっても、順序や対応済
順位が矛盾することなく、データを追加できるという効
果を奏する。
【0254】請求項8の発明に係るデータベース管理装
置は、以上のように、請求項6または7記載の発明の構
成において、上記対応済順位より後の順位で、かつ、自
らの共有範囲に含まれないデータの順序を上記順序記憶
手段から削除する第1順序削除手段が設けられている構
成である。
【0255】それゆえ、順序の記憶に必要なメモリ量
と、順序の管理時の演算量と、次回の同期処理時に通信
あるいは演算されるデータ量とを削減できるという効果
を奏する。
【0256】請求項9の発明に係るデータベース管理装
置は、以上のように、請求項6、7または8記載の発明
の構成において、同期処理の際、上記順序記憶手段に格
納される順序のうち、自らおよび相手の共有範囲のいず
れにも含まれていないデータに対応する順序を、それぞ
れの順序記憶手段から削除する第2順序削除手段が設け
られている構成である。
【0257】それゆえ、順序の記憶に必要なメモリ量
と、順序の管理時の演算量と、次回の同期処理時に通信
あるいは演算されるデータ量とを削減できるという効果
を奏する。
【0258】請求項10の発明に係るデータベース管理
装置は、以上のように、請求項6、7、8または9記載
の発明の構成において、請求項1記載の状態情報記憶手
段および状態情報更新手段とを備えており、上記順序記
憶手段は、各データに対応する状態情報を記憶する順序
として、それぞれの順序を記憶している構成である。
【0259】それゆえ、順序と状態情報とを別に格納す
る場合に比べて、格納に必要なメモリ量を削減できると
共に、同期処理時に状態情報を伝送する順序を決定し易
くなるという効果を奏する。
【0260】請求項11の発明に係るデータベース管理
装置は、以上のように、請求項10記載の発明の構成に
おいて、相手のデータベースと共有される共有範囲とし
て、自らのデータベース内に部分集合を設定する部分集
合設定手段を備え、上記状態情報には、対応するデータ
が非同期期間中に上記部分集合の内外を移動したか否か
を示す移動情報が含まれている構成である。
【0261】それゆえ、請求項10の効果に加えて、請
求項1と同様、移動のみを行ったデータを識別でき、同
期処理時に通信あるいは処理されるデータ量を削減でき
る。
【0262】請求項12の発明に係るデータベース管理
装置は、以上のように、請求項10または11記載の発
明の構成において、上記同期処理手段を備え、当該同期
処理手段は、上記順序記憶手段に格納された順序に応じ
た順序で、対応するデータの状態情報を伝送する構成で
ある。
【0263】上記構成では、同期処理の際、状態情報
は、順序記憶手段に格納された順序に応じた順序で伝送
される。それゆえ、同期処理の際、状態情報を伝送する
だけで、対応関係を伝送でき、各データベース管理装置
間で伝送あるいは処理されるデータ量を削減できるとい
う効果を奏する。
【0264】請求項13の発明に係るデータベース管理
装置は、請求項1記載のデータベース管理装置と通信す
る通信手段と、当該データベース管理装置に格納された
データベースおよび自らのデータベースの間で、対応す
るデータの内容を一致させる同期処理手段とを有するデ
ータベース管理装置であって、以上のように、当該同期
処理手段には、自らの共有範囲内の各データと、上記相
手の共有範囲内の各データとを対応付ける対応付け手段
と、対応付けられた各データの組について、相手の状態
情報と、相手のデータベース管理装置からの受信情報と
に基づいて、データの内容伝送の要否を判定する判定手
段とが設けられている構成である。
【0265】上記構成の同期処理手段は、相手のデータ
ベース管理装置が請求項1の構成を有している場合、当
該データベース管理装置の状態情報を参照して同期処理
する。それゆえ、請求項2と同様に、同期処理の際に各
データベース管理装置間で伝送されるデータ量、およ
び、それぞれで処理されるデータ量を削減できるという
効果を奏する。
【0266】請求項14の発明に係るデータベース管理
装置は、以上のように、請求項1記載の発明の構成にお
いて、上記部分集合外に配されたデータと状態情報とが
対応しているか否かを記憶する対応データ情報記憶手段
と、非同期期間中、それぞれのデータベース管理装置で
不要と判断されたデータと状態情報との対応付けを解消
する対応付け解消手段と、状態情報と対応付けられてい
ないデータの内容を削除するデータ削除手段とを備えて
いる構成である。
【0267】上記構成によれば、非同期期間中、各デー
タベース管理装置がそれぞれで不要なデータ内容を削除
して必要なメモリ量を低減する場合であっても、非同期
期間に内容が削除されたデータを確実に識別できる。こ
の結果、各データベース間の整合性を損なうことなく、
かつ、比較的少ないメモリ量で、同期処理におけるデー
タ伝送量を削減できるという効果を奏する。
【0268】請求項15の発明に係るデータベース管理
装置は、以上のように、請求項14記載の発明の構成に
おいて、上記対応付け解消手段は、自らを含むデータベ
ース管理装置の空きメモリ量が、予め定められたしきい
値以下になった時点で、上記対応付けを解消する構成で
ある。
【0269】上記構成によれば、対応付けが解消された
時点でデータの内容を削除する場合に比べ、同期処理時
のデータ転送量を不要に増大させることなく、必要な空
きメモリ量を確保できるという効果を奏する。
【0270】請求項16の発明に係るデータベース管理
装置は、以上のように、請求項14または15記載の発
明の構成において、上記対応付け解消手段は、上記不要
なデータについて、次回の同期処理の際に、相手のデー
タベース管理装置からデータ内容を転送する可能性を推
定して比較し、可能性が低いデータから順番に、上記対
応付けを解消する構成である。
【0271】上記構成によれば、同期処理の際に同期処
理相手のデータベース管理装置からデータ内容を転送す
る可能性が高い間は、当該データの内容を保持できるの
で、同期処理の際のデータ転送量を効率良く削減できる
という効果を奏する。
【0272】請求項17の発明に係るデータベース管理
装置は、以上のように、請求項3記載の発明の構成にお
いて、同期処理手段は、内外判定同期手段により部分集
合内に設定される状態情報とデータとの対応が、対応デ
ータ情報記憶手段に記憶されていない場合、相手のデー
タベース管理装置から、当該データに対応するデータの
内容を受け取る構成である。
【0273】それゆえ、あるデータベース管理装置でデ
ータの内容が削除された場合であっても、同期処理によ
って、各データベース間の整合性を回復できるという効
果を奏する。
【0274】請求項18の発明に係るデータベース管理
装置は、以上のように、同期処理終了時に、データベー
ス間におけるデータの対応付けが解消された場合、当該
データの内容をデータベース内から削除するデータ削除
手段が設けられている構成である。
【0275】上記構成によれば、上記データ削除手段が
整合性を保つ必要の無いデータの内容を削除するので、
同期処理の際のデータ転送量を増大させることなく、デ
ータベース管理装置の空きメモリ量を拡大できるという
効果を奏する。
【0276】請求項19の発明に係るデータベース管理
装置は、以上のように、請求項18記載の発明の構成に
おいて、上記データ削除手段がデータを削除するか否か
を選択する削除選択手段を備えている構成である。
【0277】それゆえ、データ削除手段がデータを削除
するか否かを必要に応じて選択でき、使用者の要求に応
じた設定が可能になるという効果を奏する。
【0278】請求項20の発明に係るデータベース管理
装置は、以上のように、請求項2記載の発明の構成にお
いて、互いに対応するデータの組がそれぞれの共有範囲
内に存在すると判定した場合、当該データ組に対応する
状態情報の更新情報に拘わらず、当該データ組のうち、
共有範囲内に存在しているデータの内容の方を優先する
範囲内優先手段が設けられている構成である。
【0279】上記構成によれば、データの配置を判定す
る際に優先した側と、データの内容を判定する際に優先
した側とを一致させることができるので、使用者の誤解
を招きにくいデータベース管理装置を実現できるという
効果を奏する。
【0280】請求項21の発明に係るデータベース管理
装置は、以上のように、請求項20記載の発明の構成に
おいて、上記範囲内優先手段は、上記内外判定同期手段
によって部分集合内に変更された状態情報の更新情報を
更新なしに変更すると共に、変更されなかった状態情報
の更新情報を更新ありに変更する構成である。
【0281】上記構成によれば、内外判定同期手段によ
る移動情報の更新に伴って、範囲内優先手段は、移動情
報を更新し、データ組それぞれの判定結果は、状態情報
として保存される。この結果、同期処理が中断される虞
れがあるデータベースシステムであっても、各データベ
ース間の整合性を確実に保つことができるという効果を
奏する。
【0282】請求項22の発明に係るデータベース管理
装置は、以上のように、請求項20または21の発明の
構成において、上記範囲内優先手段が動作するか否かを
選択する優先選択手段を備えている構成である。
【0283】上記構成によれば、範囲内優先手段が動作
するか否かを選択できるので、使用者の好みに合わせた
設定が可能になり、より使いやすいデータベース管理装
置を実現できるという効果を奏する。
【0284】請求項23ないし26の発明に係る記録媒
体は、以上のように、請求項1、6、13または18の
データベース管理装置を実現するためのプログラムが記
録されている構成である。
【0285】それゆえ、上記構成のプログラムをコンピ
ュータで実行させることによって、各請求項1、6、1
3または18と同様に、必要なメモリ量の増大を抑制し
ながら、同期処理時に処理されるデータ量を削減可能な
データベース管理装置を実現できるという効果を奏す
る。
【図面の簡単な説明】
【図1】本発明の一実施形態を示すものであり、情報処
理機器の要部構成を示すブロック図である。
【図2】上記情報処理機器を使用して構築されるデータ
ベースシステムの一例を示すブロック図である。
【図3】上記情報処理機器において、データ1件を示す
ティップと、その母集合となるフクロとの関係を示す説
明図である。
【図4】上記情報処理機器において、ティップの格納方
法を示す説明図である。
【図5】上記情報処理機器において、ティップと、フク
ロと、データベースとの関係を示す説明図である。
【図6】上記情報処理機器において、ティップの格納方
法を示すものであり、ティップと、フクロと、データベ
ースとからなるツリー構造を示す説明図である。
【図7】上記データベースシステムにおいて、情報処理
機器の共有範囲となる共有フクロと、他の情報処理機器
の共有フクロとの関係を示す説明図である。
【図8】上記データベースシステムにおいて、ティップ
の対応関係と、対応関係の記憶方法とを示す説明図であ
る。
【図9】上記データベースシステムにおいて、各情報処
理機器に格納されるダーティ・ビット・リストを示す説
明図である。
【図10】上記ダーティ・ビット・リストを構成するダ
ーティ・ビットにおいて、移動パラメタの格納例を示す
説明図である。
【図11】自らの共有フクロが複数の共有フクロと共有
される場合において、ティップの対応関係を示す説明図
である。
【図12】上記対応関係において、ダーティ・ビット・
リストを示す説明図である。
【図13】上記データベースシステムの概略の動作を示
すフローチャートである。
【図14】上記データベースシステムにおいて、フクロ
融合型モデルの共有設定を示す説明図である。
【図15】上記データベースシステムにおいて、同期処
理を示す説明図である。
【図16】上記データベースシステムにおいて、共有設
定時の動作を詳細に説明するフローチャートである。
【図17】上記データベースシステムの変形例を示すも
のであり、フクロ取込み型モデルの共有設定を示す説明
図である。
【図18】上記データベースシステムの他の変形例を示
すものであり、フクロ新規作成型モデルの共有設定を示
す説明図である。
【図19】上記データベースシステムにおいて、非同期
期間中の各種操作に応じたダーティ・ビットの変化を示
す説明図である。
【図20】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの内容更新
処理を示すフローチャートである。
【図21】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの挿入処理
を示すフローチャートである。
【図22】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの排出処理
を示すフローチャートである。
【図23】上記データベースシステムにおいて、同期処
理の終了直後におけるティップの対応関係を示す説明図
である。
【図24】上記データベースシステムにおいて、同期処
理の終了直後におけるダーティ・ビット・リストを示す
説明図である。
【図25】上記データベースシステムにおいて、次の同
期処理の直前におけるダーティ・ビット・リストを示す
説明図である。
【図26】上記データベースシステムにおいて、同期処
理中の動作を詳細に説明するフローチャートである。
【図27】上記データベースシステムにおいて、同期処
理中の状態を説明するものであり、圧縮後のダーティ・
ビット・リストを示す説明図である。
【図28】上記データベースシステムにおいて、同期処
理中の他の状態を説明するものであり、他の情報処理機
器で追加されたダーティ・ビットが、自らのダーティ・
ビット・リストに追加された状態を示す説明図である。
【図29】上記データベースシステムにおいて、同期処
理中のさらに他の状態を説明するものであり、自らで追
加されたダーティ・ビットが、他の情報処理機器のダー
ティ・ビット・リストに追加された状態を示す説明図で
ある。
【図30】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの移動パラメタの優
先度を示す説明図である。
【図31】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの変化を示す説明図
である。
【図32】上記データベースシステムの同期処理を説明
するものであり、内外判定同期処理の終了時点における
ダーティ・ビット・リストを示す説明図である。
【図33】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの更新パラメタの優
先度を示す説明図である。
【図34】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの更新パラメタの変
化を示す説明図である。
【図35】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットによる優先側判定を
示す説明図である。
【図36】上記データベースシステムの同期処理を説明
するものであり、データ内容同期処理後のダーティ・ビ
ット・リストを示す説明図である。
【図37】上記データベースシステムの同期処理を説明
するものであり、データ内容同期処理後に、さらに圧縮
されたダーティ・ビット・リストを示す説明図である。
【図38】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、話し合い
モデルを示す説明図である。
【図39】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、選択解決
モデルを示す説明図である。
【図40】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、自動解決
モデルを示す説明図である。
【図41】上記データベースシステムにおいて、ティッ
プ衝突の解決主体と解決時期との関係を示す説明図であ
る。
【図42】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、折衝解決型モデ
ルを示すフローチャートである。
【図43】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、クライアント即
時型モデルを示すフローチャートである。
【図44】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、アプリ解決型モ
デルを示すフローチャートである。
【図45】図44をさらに詳細に説明するフローチャー
トである。
【図46】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、クライアント遅
延型モデルを示すフローチャートである。
【図47】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、最終更新時刻に
基づく自動解決型モデルを示すフローチャートである。
【図48】上記データベースシステムにおいて、各ティ
ップの更新状況を示す説明図である。
【図49】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、自動解決型モデ
ルのうち、一方選択モデルを示すフローチャートであ
る。
【図50】上記データベースシステムにおいて、ダウン
ロードを示す説明図である。
【図51】上記データベースシステムにおいて、ダウン
ロード時の動作を示すフローチャートである。
【図52】上記データベースシステムにおいて、ティッ
プ衝突時に、コピーを用いて対応付けを変更する場合を
示す説明図である。
【図53】上記データベースシステムにおいて、コピー
を用いた対応付け変更時の動作を示すフローチャートで
ある。
【図54】上記データベースシステムにおいて、ティッ
プの変更時に、コピーを用いて対応付けを変更する場合
を示す説明図である。
【図55】上記データベースシステムにおいて、共有解
除の動作を詳細に説明するフローチャートである。
【図56】上記データベースシステムにおいて、ティッ
プ複写型モデルの共有解除を示す説明図である。
【図57】上記データベースシステムの変形例を示すも
のであり、ティップ偏在型モデルの共有解除を示す説明
図である。
【図58】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ消滅型モデルの共有解除
を示す説明図である。
【図59】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ偏在型モデルで、かつ、
空のフクロも消去する場合の共有解除を示す説明図であ
る。
【図60】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ消滅型モデルで、かつ、
空のフクロも消去する場合の共有解除を示す説明図であ
る。
【図61】上記データベースシステムのさらに他の変形
例を示すものであり、非同期期間中に、ダーティ・ビッ
ト・リストを圧縮する場合の動作を示すフローチャート
である。
【図62】本発明の他の実施形態を示すものであり、デ
ータベースシステムにおいて、各情報処理機器間で共有
されるティップとフクロとデータベースとの関係を示す
説明図である。
【図63】上記データベースシステムにおいて、データ
ベース全体を1つのフクロとして処理する情報処理機器
に、ティップを格納する方法を示す説明図である。
【図64】本発明の変形例を示すものであり、データベ
ースシステムにおいて、非同期期間中の各種操作に応じ
たダーティ・ビットの変化を示す説明図である。
【図65】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップを共有フク
ロから排出し、かつ、ティップの実体とダーティ・ビッ
トとの対応付けを解消する場合の処理を示すフローチャ
ートである。
【図66】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、共有フクロの外にあ
るティップの実体とダーティ・ビットとの対応付けを解
消する場合の処理を示すフローチャートである。
【図67】上記データベースシステムにおいて、次の同
期処理の直前におけるダーティ・ビット・リストを示す
説明図である。
【図68】上記データベースシステムにおいて、同期処
理中の状態を説明するものであり、圧縮後のダーティ・
ビット・リストを示す説明図である。
【図69】上記データベースシステムにおいて、同期処
理中の状態を説明するものであり、各ダーティ・ビット
の対応付けが終了した時点のダーティ・ビット・リスト
を示す説明図である。
【図70】上記データベースシステムの同期処理中の動
作を説明するものであり、内外判定同期処理の開始時点
におけるダーティ・ビット・リストを示す説明図であ
る。
【図71】上記データベースシステムの同期処理中の動
作を説明するものであり、内外判定同期処理の終了時点
におけるダーティ・ビット・リストを示す説明図であ
る。
【図72】本発明のさらに他の変形例を示すものであ
り、内外判定同期処理におけるダーティ・ビットの変化
を示す説明図である。
【符号の説明】
1・11 データベースシステム 2・12 情報処理機器(データベース管理装置) 21 通信部(通信手段) 23 データベース管理部(データベース、状態情報記
憶手段、順序記憶手段、対応済順位記憶手段、対応デー
タ情報記憶手段) 24 データベース処理部(状態情報更新手段、順序管
理手段、第1順序削除手段) 32 フクロ管理部(部分集合設定手段) 43 ティップ削除処理部(対応付け解消手段、データ
削除手段、削除選択手段) 51 シンクロナイズ処理部(同期処理手段、対応付け
手段、判定手段、内外同期処理手段、優先側判定手段、
データ内容同期手段、データ追加手段、追加データ対応
付手段、対応済順位更新手段、第1および第2順序削除
手段、範囲内優先手段、優先選択手段)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 瀧沢 英俊 大阪府大阪市阿倍野区長池町22番22号 シ ャープ株式会社内 (72)発明者 鎌倉 多志 大阪府大阪市阿倍野区長池町22番22号 シ ャープ株式会社内 (72)発明者 藤田 房之 大阪府大阪市阿倍野区長池町22番22号 シ ャープ株式会社内

Claims (26)

    【特許請求の範囲】
  1. 【請求項1】複数のデータベース管理装置と、互いに通
    信可能になったデータベース管理装置に格納されたデー
    タベース間で、対応するデータの内容を一致させる同期
    処理手段とを有するデータベースシステムを構成するた
    めに設けられ、少なくとも1つのデータベースを有する
    データベース管理装置において、 相手のデータベースとの共有範囲として、自らのデータ
    ベース内に部分集合を設定する部分集合設定手段と、 少なくとも前回の同期処理終了時に上記部分集合に含ま
    れたデータについて、前回の同期処理から次の同期処理
    までの非同期期間中に更新されたか否かを示す更新情報
    と、非同期期間中に上記部分集合の内外を移動したか否
    かを示す移動情報とを含む状態情報が記憶される状態情
    報記憶手段と、 非同期期間中、対応する状態情報が上記状態情報記憶手
    段に格納されている各データを監視して、それぞれの状
    態情報を更新する状態情報更新手段とを備えていること
    を特徴とするデータベース管理装置。
  2. 【請求項2】上記同期処理手段を備え、 当該同期処理手段には、自らの共有範囲内の各データ
    と、上記相手の共有範囲内の各データとを対応付ける対
    応付け手段と、 対応付けられた各データの組について、自らの状態情報
    記憶手段に格納された状態情報と、相手のデータベース
    管理装置から受け取った情報とに基づいて、データの内
    容伝送の要否を判定する判定手段とが設けられているこ
    とを特徴とする請求項1記載のデータベース管理装置。
  3. 【請求項3】上記判定手段には、互いに対応付けられた
    各データの組について、部分集合内へ移動し、現在部分
    集合内に存在することを示す状態情報が少なくとも一つ
    のデータベース管理装置に記憶されている場合、およ
    び、自らの状態情報が部分集合内を示し、かつ、上記相
    手のデータベース管理装置から、当該データ組を構成す
    るデータが共有範囲内に存在していると通知された場合
    は、当該データ組に対応する状態情報を部分集合内に設
    定し、残余の場合は、部分集合外に設定する内外判定同
    期手段が設けられていることを特徴とする請求項2記載
    のデータベース管理装置。
  4. 【請求項4】上記判定手段には、互いに対応するデータ
    の組のうち、少なくとも、同期処理後に共有範囲内に存
    在するデータ組それぞれについて、当該データ組に対応
    する状態情報が更新を示している場合、および、上記相
    手のデータベース管理装置から、当該データ組を構成す
    るデータの更新を通知された場合に、当該データ組のう
    ちのいずれのデータを優先するかを判定する優先側判定
    手段と、 当該優先側判定手段が優先するデータを決定した場合
    は、優先するデータの内容で、非優先側のデータの内容
    を置き換えるデータ内容同期手段とが設けられているこ
    とを特徴とする請求項2または3記載のデータベース管
    理装置。
  5. 【請求項5】上記判定手段には、上記内外判定同期手段
    による設定に基づいて、同期処理後に共有範囲内に存在
    するデータ組を識別し、当該データ組それぞれについ
    て、当該データ組に対応する状態情報が更新を示してい
    る場合、および、上記相手のデータベース管理装置か
    ら、当該データ組を構成するデータの更新を通知された
    場合に、当該データ組のうちのいずれのデータを優先す
    るかを判定する優先側判定手段と、 当該優先側判定手段が優先するデータを決定した場合
    は、優先するデータの内容で、非優先側のデータの内容
    を置き換えるデータ内容同期手段が設けられていること
    を特徴とする請求項3記載のデータベース管理装置。
  6. 【請求項6】複数のデータベース管理装置と、互いに通
    信可能になったデータベース管理装置に格納されたデー
    タベース間で、対応するデータの内容を一致させる同期
    処理手段とを有するデータベースシステムを構成するた
    めに設けられ、少なくとも1つのデータベースを有する
    データベース管理装置において、 少なくとも自らの共有範囲に含まれているデータの順序
    を記憶すると共に、前回の同期処理では、各データの順
    序が相手と同一に設定される順序記憶手段と、 上記順序のうち、前回の同期処理での末尾の順位を示す
    対応済順位を記憶する対応済順位記憶手段と、 前回の同期処理から次の同期処理までの非同期期間中
    は、上記順序記憶手段が格納する順序のうち、上記対応
    済順位および当該対応済順位よりも前の順序を保持する
    と共に、非同期期間中に自らの共有範囲へ新たに含まれ
    たデータは、上記対応済順位よりも後になるように、各
    データの順序を管理する順序管理手段とを備えているこ
    とを特徴とするデータベース管理装置。
  7. 【請求項7】上記同期処理手段を備え、当該同期処理手
    段は、上記相手のデータベースが格納された相手のデー
    タベース管理装置と通信して同期処理すると共に、 当該同期処理手段には、自らの共有範囲内に存在するデ
    ータのうち、上記順序記憶手段に格納された順位が上記
    対応済順位より後のデータを、相手の共有範囲に追加す
    るデータ追加手段と、 相手の共有範囲へ追加したデータについて、自らの順序
    記憶手段に記憶された順位と、相手の順序記憶手段に記
    憶された順位とが一致し、かつ、それぞれの順位が未だ
    対応付けられていないデータの順位よりも前になるよう
    に、自らおよび相手の順序記憶手段の少なくとも1つを
    更新する追加データ対応付手段と、 上記対応済順位を更新する対応済順位更新手段とを備え
    ていることを特徴とする請求項6記載のデータベース管
    理装置。
  8. 【請求項8】上記対応済順位より後の順位で、かつ、自
    らの共有範囲に含まれないデータの順序を上記順序記憶
    手段から削除する第1順序削除手段が設けられているこ
    とを特徴とする請求項6または7記載のデータベース管
    理装置。
  9. 【請求項9】同期処理の際、上記順序記憶手段に格納さ
    れる順序のうち、自らおよび相手の共有範囲のいずれに
    も含まれていないデータに対応する順序を、それぞれの
    順序記憶手段から削除する第2順序削除手段が設けられ
    ていることを特徴とする請求項6、7または8記載のデ
    ータベース管理装置。
  10. 【請求項10】少なくとも前回の同期処理終了時に自ら
    の共有範囲に含まれたデータについて、非同期期間中に
    更新されたか否かを示す更新情報が含まれた状態情報を
    記憶する状態情報記憶手段と、 非同期期間中、対応する状態情報が上記状態情報記憶手
    段に格納されている各データを監視して、それぞれの状
    態情報を更新する状態情報更新手段とを備えており、 上記順序記憶手段は、各データに対応する状態情報を記
    憶する順序として、それぞれの順序を記憶していること
    を特徴とする請求項6、7、8または9記載のデータベ
    ース管理装置。
  11. 【請求項11】相手のデータベースと共有される共有範
    囲として、自らのデータベース内に部分集合を設定する
    部分集合設定手段を備え、 上記状態情報には、対応するデータが非同期期間中に上
    記部分集合の内外を移動したか否かを示す移動情報が含
    まれていることを特徴とする請求項10記載のデータベ
    ース管理装置。
  12. 【請求項12】上記同期処理手段を備え、当該同期処理
    手段は、上記相手のデータベースが格納された相手のデ
    ータベース管理装置と通信して同期処理すると共に、 当該同期処理手段は、上記順序記憶手段に格納された順
    序に応じた順序で、対応するデータの状態情報を伝送す
    ることを特徴とする請求項10または11記載のデータ
    ベース管理装置。
  13. 【請求項13】少なくとも1つのデータベースと、請求
    項1記載のデータベース管理装置と通信する通信手段
    と、当該データベース管理装置に格納されたデータベー
    スおよび自らのデータベースの間で、対応するデータの
    内容を一致させる同期処理手段とを有するデータベース
    管理装置であって、 当該同期処理手段には、自らの共有範囲内の各データ
    と、上記相手の共有範囲内の各データとを対応付ける対
    応付け手段と、 対応付けられた各データの組について、相手の状態情報
    記憶手段に格納された状態情報と、相手のデータベース
    管理装置から受け取った情報とに基づいて、データの内
    容伝送の要否を判定する判定手段とが設けられているこ
    とを特徴とするデータベース管理装置。
  14. 【請求項14】非同期期間中、上記部分集合外に配され
    たデータについて、当該データと状態情報とが対応して
    いるか否かを記憶する対応データ情報記憶手段と、 非同期期間中、上記部分集合外に配されたデータのう
    ち、それぞれのデータベース管理装置で不要と判断され
    たデータと状態情報との対応付けを解消して、上記対応
    データ情報記憶手段に記憶する対応付け解消手段と、 状態情報と対応付けられていないデータの内容を削除す
    るデータ削除手段とを備えていることを特徴とする請求
    項1記載のデータベース管理装置。
  15. 【請求項15】上記対応付け解消手段は、自らを含むデ
    ータベース管理装置の空きメモリ量が、予め定められた
    しきい値以下になった時点で、上記対応付けを解消する
    ことを特徴とする請求項14記載のデータベース管理装
    置。
  16. 【請求項16】上記対応付け解消手段は、上記不要なデ
    ータについて、次回の同期処理の際に、相手のデータベ
    ース管理装置からデータ内容を転送する可能性を推定し
    て比較し、可能性が低いデータから順番に、上記対応付
    けを解消することを特徴とする請求項14または15記
    載のデータベース管理装置。
  17. 【請求項17】非同期期間中、上記部分集合外に配され
    たデータについて、当該データと状態情報とが対応して
    いるか否かを記憶する対応データ情報記憶手段と、 非同期期間中、上記部分集合外に配されたデータのう
    ち、それぞれのデータベース管理装置で不要と判断され
    たデータと状態情報との対応付けを解消して、上記対応
    データ情報記憶手段に記憶する対応付け解消手段と、 状態情報と対応付けられていないデータの内容を削除す
    るデータ削除手段とを備え、 上記同期処理手段は、上記内外判定同期手段により部分
    集合内に設定される状態情報と、データとの対応が、上
    記対応データ情報記憶手段に記憶されていない場合、相
    手のデータベース管理装置から、当該データに対応する
    データの内容を受け取ることを特徴とする請求項3記載
    のデータベース管理装置。
  18. 【請求項18】複数のデータベース管理装置と、互いに
    通信可能になったデータベース管理装置に格納されたデ
    ータベース間で、対応するデータの内容を一致させる同
    期処理手段とを有するデータベースシステムを構成する
    ために設けられ、少なくとも1つのデータベースを有す
    るデータベース管理装置において、 同期処理終了時に、データベース間におけるデータの対
    応付けが解消された場合、当該データの内容をデータベ
    ース内から削除するデータ削除手段が設けられているこ
    とを特徴とするデータベース管理装置。
  19. 【請求項19】上記データ削除手段がデータを削除する
    か否かを選択する削除選択手段を備えていることを特徴
    とする請求項18記載のデータベース管理装置。
  20. 【請求項20】上記判定手段には、対応付けられた各デ
    ータの組について、自らの状態情報記憶手段に格納され
    た状態情報と、相手のデータベース管理装置から受け取
    った情報とに基づいて、当該データの組がそれぞれの共
    有範囲内に存在すると判定した場合、当該データ組に対
    応する状態情報の更新情報に拘わらず、当該データ組の
    うち、共有範囲内に存在していないデータの内容より
    も、共有範囲内に存在しているデータの内容の方を優先
    する範囲内優先手段が設けられていることを特徴とする
    請求項2記載のデータベース管理装置。
  21. 【請求項21】上記判定手段には、互いに対応付けられ
    た各データの組について、部分集合内へ移動し、現在部
    分集合内に存在することを示す状態情報が少なくとも一
    つのデータベース管理装置に記憶されている場合、およ
    び、自らの状態情報が部分集合内を示し、かつ、上記相
    手のデータベース管理装置から、当該データ組を構成す
    るデータが共有範囲内に存在していると通知された場合
    は、当該データ組に対応する状態情報を部分集合内に設
    定し、残余の場合は、部分集合外に設定する内外判定同
    期手段が設けられ、 上記範囲内優先手段は、上記内外判定同期手段によって
    部分集合内に変更された状態情報の更新情報を更新なし
    に変更すると共に、変更されなかった状態情報の更新情
    報を更新ありに変更することを特徴とする請求項20記
    載のデータベース管理装置。
  22. 【請求項22】上記範囲内優先手段が動作するか否かを
    選択する優先選択手段を備えていることを特徴とする請
    求項20または21記載のデータベース管理装置。
  23. 【請求項23】複数のデータベース間で互いに対応する
    データの内容を同一に管理するためのプログラムが記録
    された記録媒体において、 請求項1記載の部分集合設定手段、状態情報記憶手段お
    よび状態情報更新手段として、コンピュータを動作させ
    るためのプログラムが記録されていることを特徴とする
    記録媒体。
  24. 【請求項24】複数のデータベース間で互いに対応する
    データの内容を同一に管理するためのプログラムが記録
    された記録媒体において、 請求項6記載の順序記憶手段、対応済順位記憶手段およ
    び順序管理手段として、コンピュータを動作させるため
    のプログラムが記録されていることを特徴とする記録媒
    体。
  25. 【請求項25】複数のデータベース間で互いに対応する
    データの内容を同一に管理するためのプログラムが記録
    された記録媒体において、 請求項13記載の対応付け手段および判定手段を含む同
    期処理手段、並びに通信手段として、コンピュータを動
    作させるためのプログラムが記録されていることを特徴
    とする記録媒体。
  26. 【請求項26】複数のデータベース間で互いに対応する
    データの内容を同一に管理するためのプログラムが記録
    された記録媒体において、 請求項18記載のデータ削除手段として、コンピュータ
    を動作させるためのプログラムが記録されていることを
    特徴とする記録媒体。
JP00703499A 1998-05-18 1999-01-13 データベース管理装置、および、そのプログラムが記録された記録媒体 Expired - Fee Related JP3501968B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP00703499A JP3501968B2 (ja) 1998-05-18 1999-01-13 データベース管理装置、および、そのプログラムが記録された記録媒体
US09/311,302 US6493725B1 (en) 1998-05-18 1999-05-14 Database managing system
EP99109696A EP0959417A3 (en) 1998-05-18 1999-05-17 Database managing system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP13578298 1998-05-18
JP10-135782 1998-05-18
JP00703499A JP3501968B2 (ja) 1998-05-18 1999-01-13 データベース管理装置、および、そのプログラムが記録された記録媒体

Publications (2)

Publication Number Publication Date
JP2000040025A true JP2000040025A (ja) 2000-02-08
JP3501968B2 JP3501968B2 (ja) 2004-03-02

Family

ID=26341279

Family Applications (1)

Application Number Title Priority Date Filing Date
JP00703499A Expired - Fee Related JP3501968B2 (ja) 1998-05-18 1999-01-13 データベース管理装置、および、そのプログラムが記録された記録媒体

Country Status (1)

Country Link
JP (1) JP3501968B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11327989A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327987A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JP2002055864A (ja) * 2000-08-09 2002-02-20 Seiko Epson Corp データ更新方法および情報処理装置
JP2005032249A (ja) * 2003-07-10 2005-02-03 Microsoft Corp フェンシングおよびフェンシング解除による、複製情報の権限の細分制御
JP2008009809A (ja) * 2006-06-30 2008-01-17 Fujitsu Ltd データベース同期処理プログラム
JP2021018162A (ja) * 2019-07-22 2021-02-15 株式会社デンソー 故障検出システム

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241236A (ja) * 1994-12-07 1996-09-17 Xerox Corp 書き込み衝突解決プロセス
JPH08328931A (ja) * 1995-05-29 1996-12-13 Nec Corp データ処理装置
JPH09128280A (ja) * 1995-10-27 1997-05-16 Toshiba Corp データ管理装置及びデータ管理方法
JPH09134304A (ja) * 1995-11-10 1997-05-20 Nippon Telegr & Teleph Corp <Ntt> スケジュール同期方法
JPH11327987A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327989A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08241236A (ja) * 1994-12-07 1996-09-17 Xerox Corp 書き込み衝突解決プロセス
JPH08328931A (ja) * 1995-05-29 1996-12-13 Nec Corp データ処理装置
JPH09128280A (ja) * 1995-10-27 1997-05-16 Toshiba Corp データ管理装置及びデータ管理方法
JPH09134304A (ja) * 1995-11-10 1997-05-20 Nippon Telegr & Teleph Corp <Ntt> スケジュール同期方法
JPH11327987A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327989A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11327989A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327987A (ja) * 1998-05-18 1999-11-30 Sharp Corp データベース管理装置、および、そのプログラムが記録された記録媒体
JP2002055864A (ja) * 2000-08-09 2002-02-20 Seiko Epson Corp データ更新方法および情報処理装置
US7280996B2 (en) 2000-08-09 2007-10-09 Seiko Epson Corporation Data updating method and related information processing device
JP2005032249A (ja) * 2003-07-10 2005-02-03 Microsoft Corp フェンシングおよびフェンシング解除による、複製情報の権限の細分制御
JP2011253574A (ja) * 2003-07-10 2011-12-15 Microsoft Corp フェンシングおよびフェンシング解除による、複製情報の権限の細分制御
JP2008009809A (ja) * 2006-06-30 2008-01-17 Fujitsu Ltd データベース同期処理プログラム
JP2021018162A (ja) * 2019-07-22 2021-02-15 株式会社デンソー 故障検出システム
JP7180564B2 (ja) 2019-07-22 2022-11-30 株式会社デンソー 故障検出システム

Also Published As

Publication number Publication date
JP3501968B2 (ja) 2004-03-02

Similar Documents

Publication Publication Date Title
JP5092234B2 (ja) 情報処理装置、分散同期型情報システム、情報同期方法、及び、プログラム
US20090083210A1 (en) Exchange of syncronization data and metadata
US10623059B2 (en) File transmission/reception device and control method of file transmission/reception device
CN112035420B (zh) 数据共享方法、共享设备和系统
JP3756349B2 (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
JP2000040025A (ja) デ―タベ―ス管理装置、および、そのプログラムが記録された記録媒体
JP2007025964A (ja) データ所在管理サーバ及びデータ所在管理プログラム
JPH11327989A (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
JPH11327987A (ja) データベース管理装置、および、そのプログラムが記録された記録媒体
JP4481053B2 (ja) 通信機器、通信機器の制御方法、通信機器の制御プログラム
JP5853791B2 (ja) データ同期方法及びサーバ装置
KR20010036488A (ko) 개인 정보 관리 방법
JPH0478949A (ja) 情報資源管理システム
JP2004046300A (ja) イベント共有システム、ホスト、イベント共有方法及びイベント共有プログラム

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20031202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20031203

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

Free format text: PAYMENT UNTIL: 20071212

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20081212

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20091212

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20101212

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20111212

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20121212

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees