JP3501944B2 - Database management device and recording medium on which the program is recorded - Google Patents
Database management device and recording medium on which the program is recordedInfo
- Publication number
- JP3501944B2 JP3501944B2 JP13578698A JP13578698A JP3501944B2 JP 3501944 B2 JP3501944 B2 JP 3501944B2 JP 13578698 A JP13578698 A JP 13578698A JP 13578698 A JP13578698 A JP 13578698A JP 3501944 B2 JP3501944 B2 JP 3501944B2
- Authority
- JP
- Japan
- Prior art keywords
- tip
- data
- database
- dirty bit
- priority
- 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
Landscapes
- Information Transfer Between Computers (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
【0001】[0001]
【発明の属する技術分野】本発明は、通信によって、相
手とデータの内容を同一にできるデータベース管理装置
に関し、特に、同期処理時に通信あるいは処理されるデ
ータ量を削減可能なデータベース管理装置、および、そ
のプログラムが記録された記録媒体に関するものであ
る。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a database management device capable of making the contents of data the same as that of the other party by communication, and in particular, a database management device capable of reducing the amount of data communicated or processed during synchronization processing, and The present invention relates to a recording medium on which the program is recorded.
【0002】[0002]
【従来の技術】従来より、情報処理機器は、広く普及し
ており、近年では、例えば、デスクトップ・パソコンな
どの高性能な情報処理機器と、携帯情報端末などの携帯
性に優れた情報処理機器となど、複数の情報処理機器を
個人が所有することも珍しくない。ここで、これら複数
の情報処理機器によって、例えば、スケジュールやアド
レス帳などの個人情報を管理する場合、いずれの情報処
理機器に設けられたデータベースであっても、同一内容
のデータを持つことが要求される。したがって、例え
ば、パソコンと携帯型情報端末とで個人情報を管理する
場合を例にすると、パソコンでマスターデータベースを
管理し、当該マスターデータベースのデータを携帯型の
情報処理機器のデータベース(携帯データベース)へコ
ピーして、個人情報を持ち歩いている。2. Description of the Related Art Conventionally, information processing devices have been widely spread, and in recent years, for example, high-performance information processing devices such as desktop personal computers and information processing devices having excellent portability such as personal digital assistants. It is not unusual for individuals to own multiple information processing devices. Here, when managing personal information such as a schedule or an address book by these plural information processing devices, it is required that the databases provided in any of the information processing devices have the same data. To be done. Therefore, for example, in the case of managing personal information between a personal computer and a portable information terminal, for example, a personal database is managed by a personal computer, and the data of the master database is transferred to a portable information processing device database (portable database). I copy and carry my personal information with me.
【0003】このように、複数のデータベース管理装置
で同一のデータを管理する場合、あるデータベース管理
装置でデータが変更されると、全てのデータベース管理
装置でも、データベースを更新する必要がある。ここ
で、各データベース管理装置が常時通信可能であれば、
更新したデータベース管理装置が他のデータベース管理
装置へデータ変更を通知すれば、データ変更を即座に反
映できる。ところが、各データベース管理装置は、例え
ば、データベース管理装置が携帯情報端末の場合などの
ように、常に通信できるとは限らない。この場合、デー
タの変更時点では、他のデータベース管理装置のデータ
ベースへ当該データ変更を反映できない。したがって、
データベースの同一性を保つためには、各データベース
管理装置が通信可能になった時点で、データベースの内
容を相手と同一にするための処理、すなわち、同期処理
が必要になる。As described above, when the same data is managed by a plurality of database management devices, when the data is changed by a certain database management device, all the database management devices also need to update the databases. Here, if each database management device can always communicate,
If the updated database management device notifies another database management device of the data change, the data change can be immediately reflected. However, each database management device cannot always communicate, for example, when the database management device is a portable information terminal. In this case, when the data is changed, the data change cannot be reflected in the database of another database management device. Therefore,
In order to maintain the sameness of the databases, a process for making the contents of the database the same as that of the other party, that is, a synchronization process is required when each database management device becomes communicable.
【0004】上述の例で説明すると、携帯情報端末でデ
ータを変更した場合、携帯情報端末を自宅やオフィスな
どへ持ちかえった時点で同期処理が行われ、携帯情報端
末の携帯データベースとパソコン上のマスターデータベ
ースとの間で、データが同一になる。Explaining in the above example, when data is changed in the portable information terminal, synchronization processing is performed when the portable information terminal is moved back to the home or office, and the portable database of the portable information terminal and the master on the personal computer. The data will be the same with the database.
【0005】ここで、従来の同期処理の一例として、ダ
ウンロード/アップロードが挙げられる。具体的には、
パソコンでデータが変更された場合、マスターデータベ
ースの内容が携帯情報端末へコピーされる(ダウンロー
ド)。一方、携帯情報端末でデータが変更された場合
は、携帯データベースの内容がパソコンへコピーされる
(アップロード)。Here, download / upload can be given as an example of the conventional synchronization processing. In particular,
When the data is changed on the personal computer, the contents of the master database are copied to the mobile information terminal (download). On the other hand, when the data is changed on the mobile information terminal, the contents of the mobile database are copied (uploaded) to the personal computer.
【0006】また、他の従来例としては、和集合を用い
る同期処理が挙げられる。この同期処理では、2つのデ
ータベース管理装置が通信可能になった時点で、双方の
データベースの内容が比較され、新たなデータベースと
して、それぞれのデータベースへ追加された情報全てを
含むような和集合が作成される。その後、作成されたデ
ータベースは、双方のデータベース管理装置に格納され
る。[0006] Another conventional example is synchronization processing using a union. In this synchronization processing, when the two database management devices can communicate with each other, the contents of both databases are compared, and a new set is created as a union set containing all the information added to each database. To be done. After that, the created database is stored in both database management devices.
【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」
に更新できる。For example, both databases initially contain data "A", and one database management device X
When the data of “B” is added in the above, and the data of “C” is added in the other database managing apparatus Y, the database managing apparatus X sends the content “A + B” held by itself to the database managing apparatus Y. To do. On the other hand, the database management device Y creates a union “A + B + C” of the received “A + B” and the content “A + C” held by itself,
Store as your own database. Further, the database management device Y determines that the contents of the database “A + B +
"C" is sent back to the database management device X. As a result, the database management device X sets the contents of its own database to the same “A + B + C” as the database management device Y.
Can be updated.
【0008】[0008]
【発明が解決しようとする課題】しかしながら、上記同
期処理を行う従来のデータベース管理装置では、同期処
理の際に、両データベース管理装置間を伝送されるデー
タ量(通信量)、および、各データベース管理装置にて
演算されるデータ量が極めて多いという問題を生ずる。However, in the conventional database management apparatus which performs the above-mentioned synchronization processing, the amount of data (communication amount) transmitted between both database management apparatuses and each database management in the synchronization processing. This causes a problem that the amount of data calculated by the device is extremely large.
【0009】具体的には、ダウンロード/アップロード
では、変更したデータの数に拘わらず、一方のデータベ
ースの内容全てが他方のデータベース管理装置へ送信さ
れる。例えば、1000件のデータを持つデータベース
の場合、1件のデータを変更した場合であっても、10
00件分のデータが送信される。この結果、両データベ
ース管理装置間で伝送される通信量が増大する。併せ
て、受信側のデータベース管理装置では、送信側のデー
タベースによって、データベースの内容が置き換えられ
るため、受信側でのデータ変更は、失われてしまう。Specifically, in downloading / uploading, all the contents of one database are transmitted to the other database management device regardless of the number of changed data. For example, in the case of a database having 1000 data, even if one data is changed, 10
00 data is transmitted. As a result, the amount of communication transmitted between both database management devices increases. At the same time, in the database management device on the receiving side, the contents of the database are replaced by the database on the transmitting side, so that the data change on the receiving side is lost.
【0010】また、和集合を用いた同期処理では、和集
合を作成するために、一方のデータベースが他方へ送信
され、作成された和集合が新たなデータベースとして送
り返される。このように、当該同期処理では、データベ
ースの内容全てが両データベース管理装置間を往復する
必要があり、同期処理時の通信量がさらに増大する。Further, in the synchronous processing using the union, one database is transmitted to the other in order to create the union, and the created union is sent back as a new database. As described above, in the synchronization processing, all the contents of the database have to be reciprocated between the two database management devices, which further increases the communication amount during the synchronization processing.
【0011】併せて、一方のみでデータが削除された場
合、他方のデータベースにはデータが残留している。し
たがって、新たなデータベースには、当該データが再び
含まれ、データが削除されない。この結果、データベー
スの記憶に必要なメモリ量が増大すると共に、同期処理
時の通信量がさらに増大する。In addition, when the data is deleted in only one side, the data remains in the other side database. Therefore, the new database contains the data again and the data is not deleted. As a result, the amount of memory required to store the database increases and the amount of communication during synchronization processing further increases.
【0012】これらの問題を解決するために、例えば、
特開平9−6693号公報では、同期処理の他の例とし
て、データベースに含まれる全てのデータに、変更の有
無を示す更新情報が付加されたデータベース管理装置に
ついて記載されている。具体的には、各データベース管
理装置は、データベースに含まれる各データ毎に、当該
データを識別するためのID情報と、変更なし/訂正あ
り/追加/削除を示す更新情報とを記憶しており、デー
タが変更されると、当該データに対応する更新情報を更
新している。さらに、同期処理時には、各データベース
管理装置は、全データのID情報および更新情報を相手
に通知する。一方、相手のデータベース管理装置は、受
け取ったID情報に基づいて、自らのデータベースにお
いて、当該データに対応するデータを検索し、双方の更
新情報を比較する。さらに、一方のみが変更されている
場合、変更側のデータで不変のデータを置き換える。ま
た、両方が変更されている場合は、自らのデータベース
へ、相手のデータを追加し、自らのデータを相手のデー
タベースへ追加する。これにより、いずれのデータベー
ス管理装置でもデータが変更されていない場合、当該デ
ータの送付を省略でき、同期処理時の通信量を削減でき
る。In order to solve these problems, for example,
Japanese Patent Laid-Open No. 9-6693 describes, as another example of the synchronization process, a database management device in which update information indicating whether or not there is a change is added to all data included in the database. Specifically, each database management device stores, for each data included in the database, ID information for identifying the data and update information indicating no change / correction / addition / deletion. When the data is changed, the update information corresponding to the data is updated. Furthermore, at the time of synchronization processing, each database management device notifies the other party of ID information and update information of all data. On the other hand, the counterpart database management device searches the data corresponding to the data in its own database based on the received ID information and compares the update information of both. Furthermore, when only one is changed, the unchanged data is replaced with the changing data. If both have been changed, the other party's data is added to its own database, and its own data is added to the other party's database. As a result, when the data is not changed in any of the database management devices, the sending of the data can be omitted, and the communication amount at the time of synchronization processing can be reduced.
【0013】しかしながら、上記構成では、双方でデー
タが訂正された場合は、それぞれが相手のデータベース
に追加され、データベースに含まれるデータ数が増加す
る。この結果、データベースの記憶に必要なメモリ量が
増大し、通信量も増大する。また、データ数の増加を抑
えるためには、同期処理の後、不要なデータを削除する
必要がある。ところが、この操作は、同期処理後のデー
タベースから、一方で訂正されたデータと他方で訂正さ
れたデータとを抽出し、双方を比較すると共に、削除す
るデータを指定する必要があり、非常に手間がかかる。
さらに、通常は、一方のデータベース管理装置で操作さ
れるので、他方のデータベース管理装置へ、データの削
除を反映させる必要があり、両データベース管理装置間
の通信量がさらに増大する。However, in the above configuration, when the data is corrected by both sides, each is added to the other database, and the number of data contained in the database increases. As a result, the amount of memory required to store the database increases and the amount of communication also increases. Further, in order to suppress the increase in the number of data, it is necessary to delete unnecessary data after the synchronization processing. However, this operation requires extracting data corrected on the one hand and data corrected on the other hand from the database after synchronization processing, comparing both, and specifying the data to be deleted, which is very troublesome. Takes.
Furthermore, since one database management device is usually operated, it is necessary to reflect the deletion of data in the other database management device, which further increases the communication volume between both database management devices.
【0014】本発明は、上記の問題点に鑑みてなされた
ものであり、その目的は、互いに対応するデータが複数
で独立して更新された場合であっても、データベースの
規模が増大せず、少ない手間と少ない通信データ量とで
同期処理可能なデータベース管理装置、および、そのプ
ログラムが記録された記録媒体とを実現することにあ
る。The present invention has been made in view of the above problems, and an object thereof is not to increase the scale of a database even when a plurality of corresponding data are independently updated. It is to realize a database management device capable of performing synchronous processing with a small amount of effort and a small amount of communication data, and a recording medium in which the program is recorded.
【0015】[0015]
【課題を解決するための手段】請求項1の発明に係るデ
ータベース管理装置は、上記課題を解決するために、複
数のデータベース管理装置と、互いに通信可能になった
データベース管理装置に格納されたデータベース間で、
対応するデータの内容を一致させる同期処理手段とを有
するデータベースシステムを構成するために設けられ、
少なくとも1つのデータベースを有するデータベース管
理装置において、以下の手段を講じたことを特徴として
いる。In order to solve the above-mentioned problems, a database management apparatus according to a first aspect of the present invention includes a plurality of database management apparatuses and a database stored in the database management apparatus that can communicate with each other. Between,
Provided for configuring a database system having a synchronization processing means for matching the contents of corresponding data,
A database management device having at least one database is characterized by taking the following means.
【0016】すなわち、相手のデータベース内のデータ
に対応する自らのデータ毎に、前回の同期処理と次回の
同期処理との間の非同期期間中における、データの変更
を示す状態情報が記憶される状態情報記憶手段と、同期
処理の際、互いに対応するデータからなる組について、
それぞれの状態情報に基づき、当該データ組で変更され
たデータが複数であるか否かを検出する衝突検出手段
と、複数の場合、変更された複数のデータの内容全てを
伝送する前に、いずれのデータを優先するかを決定し
て、上記同期処理手段に、優先側のデータの内容で非優
先側のデータの内容を置き換えさせる優先側決定手段
と、自らの優先側決定手段が決定した優先側と、相手か
ら指定された優先側との不一致を検出する検出手段とを
備えている。なお、データの変更は、他のデータベース
へ影響する可能性がある処理であり、例えば、データの
内容更新、追加や削除あるいは、データベースにおける
データの位置の移動などの少なくとも1種類を示してい
る。That is, a state in which, for each of its own data corresponding to the data in the other party's database, state information indicating a change in the data is stored during the asynchronous period between the previous synchronization processing and the next synchronization processing. For the information storage means and the set of data corresponding to each other during the synchronization processing,
Collision detection means for detecting whether or not there is a plurality of changed data in the data set based on the respective state information, and in the case of a plurality of collisions, before transmitting all the contents of the changed plurality of data, Priority data determined by its own priority side determination means and the synchronization processing means that causes the synchronization processing means to replace the content of the non-priority side data with the content of the priority side data. Side or opponent
And a detection unit that detects a mismatch with the designated priority side . Note that the data change is a process that may affect other databases, and indicates at least one type of data content update, addition or deletion, or data position movement in the database, for example.
【0017】上記構成において、自らのデータベースの
うち、少なくとも相手のデータベースのデータと対応付
けられるデータには、それぞれ状態情報が設けられてお
り、非同期期間中、当該データへの操作に応じて更新さ
れる。In the above structure, the status information is provided in at least the data of the own database that is associated with the data of the other database, and is updated in response to an operation on the data during the asynchronous period. It
【0018】同期処理が指示されると、衝突検出手段
は、対応付けられたデータ組の内容を一致させるため
に、それぞれのデータ内容を伝送する前に、自らの状態
情報と、相手から受け取った状態情報とに基づいて、当
該データ組で、データの衝突が発生したか否かを判定す
る。なお、どの種類の変更に関して、データの衝突を検
出できるかは、状態情報で示される変更に依存するが、
少なくとも、状態情報が示す種類のデータ変更に関する
衝突を検出できる。When the synchronization processing is instructed, the collision detection means receives its own status information and the other party's status information before transmitting the respective data contents in order to match the contents of the associated data sets. Based on the state information, it is determined whether or not a data collision has occurred in the data set. In addition, regarding what kind of change, the collision of data can be detected depends on the change indicated by the state information.
At least, it is possible to detect a collision related to a data change of the type indicated by the state information.
【0019】ここで、状態情報は、非同期期間中のデー
タの変更を示しており、データの内容に比べれば、デー
タ量が少ない。それゆえ、データの内容を送受する場合
に比べて少ないデータ量で、データの衝突を検出でき
る。Here, the state information indicates the change of data during the asynchronous period, and the amount of data is smaller than the content of the data. Therefore, it is possible to detect data collision with a smaller amount of data than in the case of transmitting and receiving data contents.
【0020】データの衝突が検出されると、優先側決定
手段は、データの内容全体を伝送する前に、同期処理ま
でに決定されたデータベース管理装置や、例えば、使用
者や上位のアプリケーションなどへの問い合わせ結果、
あるいは、データ内容の一部などに基づいて、データ組
のうちで優先するデータを決定する。さらに、同期処理
手段は、優先側のデータ内容で、非優先側のデータ内容
を置き換える。When a data collision is detected, the priority side determination means sends the data contents to the database management device determined by the synchronization processing, for example, the user or a higher-level application before transmitting the entire content of the data. Inquiry result of
Alternatively, priority data is determined from the data set based on a part of the data content. Further, the synchronization processing means replaces the data content on the non-priority side with the data content on the priority side.
【0021】上記構成では、データ衝突の際、データの
内容全体を伝送する前に、優先するデータが決められ、
データの内容全体は、優先側のデータベース管理装置か
ら非優先側のデータベース管理装置への一方向に伝送さ
れる。したがって、データの内容全てを伝送した後、優
先側を決定し、データ内容を置き換える場合に比べて、
各データベース管理装置間で伝送および処理されるデー
タ量を削減できる。さらに、データ衝突時に優先側を決
定しているので、複数のデータベース管理装置でデータ
が更新された場合であっても、各データベースに含まれ
るデータの数が増加しない。これらの結果、データベー
スの格納に必要なメモリ量と、同期処理の際に伝送およ
び処理されるデータ量とを削減できる。In the above configuration, in the event of data collision, prioritized data is determined before the entire contents of the data are transmitted,
The entire data content is unidirectionally transmitted from the database management device on the priority side to the database management device on the non-priority side. Therefore, compared with the case where the priority side is decided and the data contents are replaced after transmitting all the data contents,
The amount of data transmitted and processed between the database management devices can be reduced. Furthermore, since the priority side is determined at the time of data collision, the number of data included in each database does not increase even when the data is updated by a plurality of database management devices. As a result, it is possible to reduce the amount of memory required to store the database and the amount of data transmitted and processed during the synchronization process.
【0022】ここで、複数のデータベース管理装置が優
先側決定手段を備えている場合、それぞれで決定された
優先側が一致しないことがある。この場合は、同期処理
手段が、あるデータベース管理装置で決定された優先側
に基づいて、同期処理を行うと、残余のデータベース管
理装置で優先側と決定されたデータの内容が、不所望に
消失してしまう。 Here, a plurality of database management devices are better
If there is a front-side decision means, it is decided by each
The priority side may not match. In this case, synchronous processing
The means is the priority side determined by a database management device
When the synchronization process is performed based on the
The content of the data determined as the priority side by the management device is undesired.
Will disappear.
【0023】これに対して、上記データベース管理装置
は、自らの優先側決定手段が決定した優先側と、相手か
ら指定された優先側との不一致を検出する検出手段を備
えていることを特徴としている。 On the other hand, the above database management device
Is the priority side determined by one's own priority side determination means, and
Equipped with detection means to detect inconsistencies with the designated priority side
It is characterized by having.
【0024】当該構成によれば、検出手段は、各優先側
の不一致を検出するので、上記不所望なデータ内容の消
失を防止できる。それゆえ、例えば、各データベース管
理装置へ優先側の再決定を促したり、優先側と決定され
たデータ全てを保存するなど適切な処理を講じることが
できる。 According to this structure, the detecting means is provided on each priority side.
Is detected, the above undesired data contents are deleted.
Loss can be prevented. Therefore, for example, each database
Prompt the management device to re-determine the priority side, or
Appropriate processing such as saving all data
it can.
【0025】さらに、請求項2の発明に係るデータベー
ス管理装置は、請求項1記載の発明の構成において、上
記優先側決定手段は、上記変更された複数のデータの内
容のうち、それぞれの一部分のみを比較して、優先側を
決定することを特徴としている。Further, in the database management apparatus according to a second aspect of the present invention, in the configuration of the first aspect of the invention, the priority side determining means is only a part of each of the changed contents of the plurality of data. Is characterized by determining the priority side.
【0026】上記構成によれば、優先側決定手段は、例
えば、最終更新時刻など、データの内容の一部分に基づ
いて、優先側を決定する。それゆえ、データの内容全て
を伝送する場合に比べて、同期処理の際に伝送および処
理されるデータ量とを削減できる。According to the above configuration, the priority side determining means determines the priority side based on a part of the data contents such as the last update time. Therefore, it is possible to reduce the amount of data to be transmitted and processed in the synchronization processing, as compared with the case of transmitting the entire content of data.
【0027】一方、請求項3の発明に係るデータベース
管理装置は、請求項1記載の発明の構成において、上記
優先側決定手段は、変更されたデータが複数の場合、い
ずれのデータを優先するかを、使用者または上位のアプ
リケーションへ問い合わせることを特徴としている。On the other hand, in the database management apparatus according to the third aspect of the present invention, in the configuration of the first aspect of the invention, when there is a plurality of changed data, which data has priority. The user or higher
It is characterized by inquiring to the application .
【0028】上記構成では、データが衝突した場合、優
先側決定手段は、例えば、自らのデータ内容や、それぞ
れの状態情報など、衝突の状態を示す情報、あるいは、
衝突の発生を示す情報などを通知して、上位のアプリケ
ーションや使用者に、優先すべきデータを問い合わせ、
その回答に基づいて、優先側を決定する。ここで、問い
合わせの際に通知される情報は、データ内容全体よりも
少ないことが多く、特に、自らのデータ内容やそれぞれ
の状態情報は、他のデータベース管理装置から新たに伝
送する必要がない。それゆえ、同期処理の際に伝送およ
び処理されるデータ量を削減できる。加えて、優先側の
決定に、使用者や上位のアプリケーションの指示を反映
できるので、より的確に優先側を決定できる。In the above-mentioned configuration, when data collides, the priority side determining means, for example, information indicating the state of the collision, such as its own data content and status information of each, or
Such as to notify the information indicating the occurrence of a collision, the application and the user of the higher-level, query the data should be given priority,
The priority side is decided based on the answer. Here, the information notified at the time of inquiry is often smaller than the entire data content, and in particular, it is not necessary to newly transmit its own data content and each status information from another database management device. Therefore, it is possible to reduce the amount of data transmitted and processed during the synchronization processing. In addition, the priority side can be determined more accurately because the instructions of the user and the higher-level application can be reflected in the determination of the priority side.
【0029】なお、上記構成に加えて、変更されたデー
タが複数の場合、いずれのデータを優先するかを示す優
先側情報が格納される優先側情報記憶手段を備え、上記
優先側決定手段は、上記優先側情報に基づいて、優先側
を決定してもよい。なお、優先側情報は、優先側の決定
までに格納されていれば、使用者や上位アプリケーショ
ンなどの指示により設定されてもよいし、例えば、同期
処理の起動側や共有設定の起動側などに基づいて設定さ
れてもよい。In addition to the above configuration, when there are a plurality of changed data, a priority side information storage means for storing priority side information indicating which data is prioritized is provided, and the priority side determination means is provided. The priority side may be determined based on the priority side information . Note that the priority side information may be set by an instruction from the user or a higher-level application as long as it is stored by the time the priority side is determined. It may be set based on.
【0030】上記構成によれば、優先側決定手段は、優
先側情報に基づいて、優先側を決定するので、データ内
容全体を送付した後に優先側を決定する場合に比べて、
同期処理の際、伝送および処理されるデータ量を削減で
きる。According to the above configuration, the priority side determining means determines the priority side based on the priority side information.
It is possible to reduce the amount of data transmitted and processed during the synchronization processing.
【0031】請求項4の発明に係るデータベース管理装
置は、請求項3記載の発明の構成において、上記優先側
決定手段は、変更されたデータが複数の場合、いずれの
データを優先するかを、使用者または上位アプリケーシ
ョンへ問い合わせ、その回答に基づいて優先側を決定
し、当該優先側と、相手から指定された優先側とに基づ
いて、上記同期処理手段へ優先側を指示すると共に、上
記問い合わせと指示との間に、相手との通信を一度切断
することを特徴としている。According to a fourth aspect of the present invention , in the database management apparatus according to the third aspect of the present invention, the priority side determining means determines which data has a higher priority when there are a plurality of changed data . User or higher level application
® was Awa query to down, the preferential is determined based on the answers, and the preferential, based on the preferential designated by the other party, it instructs the preferential to the synchronization processing means, and the query It is characterized by disconnecting the communication with the other party once between instructions.
【0032】上記構成によれば、問い合わせと優先側の
指示との間で、通信が切断される。それゆえ、例えば、
使用者が席を外している場合や複雑な演算で優先側を判
定する場合など、データベース管理装置が問い合わせて
から回答が得られるまでに長い時間がかかる場合であっ
ても、同期処理に必要な通信時間の合計を一定に保つこ
とができる。この結果、通信に要する費用や消費電力な
どを削減できる。According to the above configuration, the communication is disconnected between the inquiry and the instruction on the priority side. So, for example,
Even if it takes a long time for the database management device to make an inquiry and get a response, such as when the user is out of the seat or when the priority side is determined by a complicated calculation, it is necessary for the synchronization processing. The total communication time can be kept constant. As a result, it is possible to reduce communication costs and power consumption.
【0033】なお、上記構成に加えて、自らのデータベ
ースに部分集合を設定する部分集合設定手段を備えてお
り、上記状態情報記憶手段は、相手のデータベースと共
有される部分集合に前回の同期処理の時点で含まれてい
るデータについて、状態情報を記憶してもよい。 In addition to the above-mentioned configuration, it is provided with a subset setting means for setting a subset in its own database, and the state information storage means carries out the previous synchronization processing to the subset shared with the other database. The state information may be stored for the data included at the point of .
【0034】上記構成では、データベースの大きさとは
独立して、共有範囲を指定できるので、共有専用のデー
タベースを新たに作成せずに、共有が不要なデータの同
期処理を省略できる。したがって、データベースの格納
に必要なメモリ量を増大させることなく、同期処理の際
に伝送および処理されるデータ量を削減できる。In the above configuration, since the sharing range can be specified independently of the size of the database, it is possible to omit the synchronization processing of data that does not need to be shared without newly creating a dedicated sharing database. Therefore, it is possible to reduce the amount of data transmitted and processed during the synchronization process without increasing the amount of memory required to store the database.
【0035】また、上記構成に加えて、上記同期処理手
段は、各データベースの共有範囲に含まれるデータの同
期処理を行い、上記データベース管理装置は、自らのデ
ータベースの共有範囲と、相手のデータベースの共有範
囲とを対応付ける共有設定手段を備えていてもよい。な
お、共有範囲は、データベースの部分集合であってもよ
いし、データベース全体であってもよい。また、データ
ベース全体や既に存在する部分集合など、共有設定前に
存在する範囲を共有範囲として指定してもよいし、部分
集合を作成するなどして、新たな範囲を作成してもよ
い。In addition to the above configuration, the synchronization processing means performs a synchronization process on the data included in the shared range of each database, and the database management device stores the shared range of its own database and the other database. A sharing setting means for associating with the sharing range may be provided. The shared range may be a subset of the database or the entire database. Further, a range existing before the sharing setting, such as the entire database or an already existing subset, may be designated as the sharing range, or a new range may be created by creating a subset.
【0036】上記構成によれば、共有範囲間を対応付け
るだけで、その中のデータの共有を指定できるので、デ
ータ毎に対応付ける場合よりも、少ない操作で共有する
データを指定できる。According to the above configuration, the sharing of the data in the sharing range can be designated only by associating the sharing ranges, so that it is possible to designate the data to be shared with less operation than in the case of associating each data.
【0037】さらに、上記構成に加えて、上記同期処理
手段は、各データベースの共有範囲に含まれるデータの
同期処理を行い、上記データベース管理装置は、互いに
対応付けられた共有範囲間の対応付けを解消する共有解
除手段を備えていてもよい。なお、共有解除手段は、対
応付けのみを解消して、共有範囲となる部分集合や共有
範囲内のデータを残してもよいし、部分集合や、共有範
囲内のデータを削除してもよい。 Further, in addition to the above configuration, the synchronization processing means performs a synchronization process of data included in the shared range of each database, and the database management device associates the shared ranges associated with each other. A sharing canceling means for canceling may be provided. The sharing canceling unit may cancel only the association and leave the subset within the sharing range or the data within the sharing range, or may delete the subset or the data within the sharing range.
【0038】上記構成によれば、以降の同期処理が不要
になった時点で、共有範囲間の対応付けを解消できる。
それゆえ、当該共有範囲内のデータについて、変更を監
視して状態情報を更新する必要がなくなり、状態情報の
記憶に必要なメモリ量と、状態情報更新のための演算量
とを抑制できる。According to the above configuration, the association between the shared ranges can be canceled when the subsequent synchronization processing becomes unnecessary.
Therefore, it is not necessary to monitor the status of the data within the shared range to update the status information, and it is possible to suppress the amount of memory required to store the status information and the amount of calculation for updating the status information.
【0039】ところで、請求項5の発明に係る記録媒体
は、上記課題を解決するために、複数のデータベース間
で互いに対応するデータの内容を同一に管理するための
プログラムが記録された記録媒体において、請求項1記
載の状態情報記憶手段、衝突検出手段、優先側決定手段
および検出手段として、コンピュータを動作させるため
のプログラムが記録されていることを特徴としている。In order to solve the above-mentioned problems, a recording medium according to a fifth aspect of the present invention is a recording medium in which a program for managing the same contents of data corresponding to each other among a plurality of databases is recorded. The state information storage means, the collision detection means , and the priority side determination means according to claim 1.
And, as a detecting means , a program for operating a computer is recorded.
【0040】上記構成の記録媒体をコンピュータが読み
取り、プログラムを実行すると、当該コンピュータは、
請求項1記載のデータベース管理装置として動作する。
それゆえ、請求項1と同様に、データベースの格納に必
要なメモリ量と、同期処理の際に伝送および処理される
データ量とを削減できる。When the computer reads the recording medium having the above configuration and executes the program, the computer
It operates as the database management device according to claim 1.
Therefore, similarly to the first aspect, it is possible to reduce the amount of memory required to store the database and the amount of data transmitted and processed during the synchronization processing.
【0041】[0041]
【発明の実施の形態】〔第1の実施形態〕
本発明の一実施形態について図1ないし図61に基づい
て説明すると以下の通りである。すなわち、本実施形態
に係るデータベースシステムは、例えば、個人情報など
を複数のデータベース管理装置で管理する場合など、互
いに通信可能な期間が制限され、かつ、それぞれが独立
してデータを更新可能な複数のデータベース間で、対応
するデータの内容を同一に保つことが要求される場合に
好適に使用されるシステムである。システム構成は種々
のものが考えられるが、本実施形態では、携帯情報端末
から構成される場合のように、互いに対等なデータベー
ス管理装置からなるデータベースシステムを例にして説
明する。BEST MODE FOR CARRYING OUT THE INVENTION [First Embodiment] The following will describe one embodiment of the present invention with reference to FIGS. 1 to 61. That is, the database system according to the present embodiment is limited to a plurality of data management devices that manage individual information and the like by a plurality of database management devices and have a limited period during which they can communicate with each other and can update data independently. It is a system suitably used when it is required to keep the contents of corresponding data identical between the databases. Although various system configurations are conceivable, the present embodiment will be described by taking a database system including database management devices, which are equal to each other, as in the case of a mobile information terminal, as an example.
【0042】具体的には、例えば、図2に示すように、
本実施形態に係るデータベースシステム1は、データベ
ースを格納する情報処理機器(データベース管理装置)
2・2を備えており、各情報処理機器2には、相手の情
報処理機器2と通信するための通信装置3と、使用者と
の間の入出力を処理する表示装置4および入力装置5と
が接続されている。Specifically, for example, as shown in FIG.
The database system 1 according to the present embodiment is an information processing device (database management device) that stores a database.
Each of the information processing devices 2 includes a communication device 3 for communicating with the other information processing device 2, and a display device 4 and an input device 5 for processing input / output with the user. And are connected.
【0043】上記通信装置3は、例えば、LANインタ
ーフェースやRS232Cインターフェースなどのイン
ターフェース、モデム、赤外線送受光器、あるいは、無
線送受信器などであって、情報処理機器2の指示に応
じ、ケーブル、公衆電話回線網、赤外線あるいは無線な
ど、種々の通信媒体のうちの少なくとも1つを介して、
相手の通信装置3と互いに通信できる。また、表示装置
4は、CRTディスプレイや液晶ディスプレイなどであ
って、情報処理機器2のデータベースの内容、あるい
は、データベースに対する操作結果など種々の情報を、
情報処理機器2の指示に応じて表示できる。さらに、入
力装置5は、キーボードやマウス、ペン、あるいは、上
記表示装置4上に配されたタッチパネルなどであって、
使用者の指示を情報処理機器2へ入力できる。The communication device 3 is, for example, an interface such as a LAN interface or an RS232C interface, a modem, an infrared transmitter / receiver, or a radio transmitter / receiver. Via at least one of various communication media, such as a network, infrared or wireless,
The communication device 3 of the other party can communicate with each other. The display device 4 is a CRT display, a liquid crystal display, or the like, and displays various information such as the contents of the database of the information processing device 2 or the operation result on the database.
It can be displayed according to an instruction from the information processing device 2. Further, the input device 5 is a keyboard, a mouse, a pen, a touch panel arranged on the display device 4, or the like,
The user's instruction can be input to the information processing device 2.
【0044】一方、本実施形態に係る情報処理機器2に
は、図1に示すように、上記通信装置3に接続され、当
該通信装置3を介して、他の情報処理機器2と通信する
通信部21と、上記表示装置4および入力装置5に接続
され、使用者とのインタフェースとなるユーザ操作部2
2と、データベースDBを格納するデータベース管理部
23と、ユーザ操作部22の指示に応じて、データベー
ス管理部23を制御するデータベース処理部24と、通
信部21およびデータベース管理部23を制御して、他
のデータベースDBとの同期に関連した処理を行う同期
部25とが設けられている。上記各部材は、ハードウェ
アで実現されてもよいし、CPUが所定のプログラムを
実行することで実現される機能ブロックであってもよ
い。後者の場合は、上記プログラムが格納された記録媒
体を配付し、当該記録媒体を読み取り可能なコンピュー
タで実行させるだけで、上記各部材を実現できるため、
配付が容易になる。なお、上記データベース管理部23
は、特許請求の範囲に記載のデータベース、状態情報記
憶手段、優先側情報記憶手段に対応している。On the other hand, as shown in FIG. 1, the information processing device 2 according to this embodiment is connected to the communication device 3 and communicates with the other information processing device 2 via the communication device 3. The user operation unit 2 which is connected to the display unit 4 and the input device 5 and serves as an interface with the user.
2, the database management unit 23 that stores the database DB, the database processing unit 24 that controls the database management unit 23, the communication unit 21 and the database management unit 23 according to instructions from the user operation unit 22, A synchronization unit 25 that performs processing related to synchronization with another database DB is provided. Each of the above-mentioned members may be realized by hardware, or may be a functional block realized by the CPU executing a predetermined program. In the latter case, each member can be realized only by distributing a recording medium in which the program is stored and executing the recording medium on a computer that can read the recording medium.
Distribution is easy. The database management unit 23
Corresponds to the database, the state information storage means, and the priority side information storage means described in the claims.
【0045】本実施形態では、図3に示すように、デー
タベースDBがデータ1件を示すティップTとティップ
の母集合となるフクロFとを単位として管理されてお
り、上記データベース管理部23には、データベースを
格納するティップ管理部31およびフクロ管理部(部分
集合設定手段)32が設けられている。また、上記デー
タベース処理部24は、ティップTの更新/追加/削除
をそれぞれ行うティップ更新処理部41・ティップ追加
処理部42・ティップ削除処理部43などを備えてい
る。なお、データベース処理部24は、例えば、ティッ
プTの検索や表示、あるいは、フクロFとの包含関係の
変更など、データベースDBの他の操作に関連する部材
も備えている。これにより、所定の内容のティップTな
ど、所望の条件を満足するティップTを検索して、フク
ロFを生成したり、表示されたティップTのうち、所望
のティップTを選択して、所望のフクロFに挿入したり
できる。In the present embodiment, as shown in FIG. 3, the database DB is managed in units of a tip T indicating one piece of data and a bag F which is a population of the tips. A tip management unit 31 and a bag management unit (subset setting means) 32 for storing a database are provided. Further, the database processing unit 24 includes a tip update processing unit 41, a tip addition processing unit 42, a tip deletion processing unit 43, etc. that respectively update / add / delete the tip T. The database processing unit 24 also includes members related to other operations of the database DB, such as searching and displaying the tip T or changing the inclusion relationship with the bag F. As a result, a tip T that satisfies a desired condition, such as a tip T having a predetermined content, is searched to generate the bag F, or a desired tip T is selected from the displayed tips T to select a desired tip T. It can be inserted into the F bag.
【0046】また、同期部25には、ティップTの同期
処理を行うシンクロナイズ処理部51と、同期処理に先
立って、後述する共有設定を行う共有設定処理部52
と、例えば、同期処理が不要になった場合などに上記共
有設定を解除する共有解除処理部53とが設けられてい
る。なお、上記シンクロナイズ処理部51が、特許請求
の範囲に記載の同期処理手段、衝突検出手段、優先側決
定手段、検出手段に対応しており、共有設定処理部52
と共有解除処理部53とが、共有設定手段と共有解除手
段とに、それぞれ対応している。また、データベース処
理部24および同期部25の構成は、データベース管理
部23に格納されるデータと密接に関連しており、当該
データに基づく動作に大きな特徴がある。それゆえ、以
下では、データベース管理部23の構成についてのみ説
明し、データベース処理部24および同期部25の構成
は、動作と共に詳説する。Further, the synchronizing section 25 includes a synchronizing processing section 51 for performing the synchronization processing of the tip T and a sharing setting processing section 52 for performing a sharing setting described later prior to the synchronization processing.
Further, for example, a sharing cancellation processing unit 53 that cancels the sharing setting when synchronization processing becomes unnecessary is provided. The synchronization processing unit 51 corresponds to the synchronization processing unit, the collision detection unit, the priority side determination unit, and the detection unit described in the claims, and the sharing setting processing unit 52.
The sharing cancellation processing section 53 corresponds to the sharing setting means and the sharing cancellation means, respectively. Further, the configurations of the database processing unit 24 and the synchronization unit 25 are closely related to the data stored in the database management unit 23, and the operation based on the data has a great feature. Therefore, hereinafter, only the configuration of the database management unit 23 will be described, and the configurations of the database processing unit 24 and the synchronization unit 25 will be described in detail together with the operation.
【0047】具体的には、上記ティップ管理部31は、
1件分のデータをティップと呼ばれるデータ構造で管理
している。各ティップTは、データベースDB内の他の
ティップTと自らとを一意に識別するためのティップI
Dと、1件分のデータが格納される属性リストLAとを
備えている。当該属性リストLAには、図4に示すよう
に、属性Aの種別を示す属性名NAと、当該ティップT
に格納されるデータの内で当該属性Aの値を示す属性値
VAとの組み合わせが、リスト状に格納されている。Specifically, the tip management section 31 is
Data for one case is managed by a data structure called a tip. Each tip T is a tip I for uniquely identifying itself from other tips T in the database DB.
D and an attribute list LA in which data for one case is stored. In the attribute list LA, as shown in FIG. 4, the attribute name NA indicating the type of the attribute A and the tip T
The combination with the attribute value VA indicating the value of the attribute A in the data stored in is stored in a list.
【0048】例えば、データベースDBに住所録を格納
する場合を例にして説明すると、個々のティップTは、
1件の住所データに相当する。各住所データが名前を示
すデータと、住所を示すデータと、電話番号を示すデー
タとの3種のデータから構成される場合、各ティップT
は、名前、住所および電話番号の3つの属性A1 〜A3
の集合として定義され、各ティップTの属性リストLA
は、図4に示すように、属性名NAと属性値VAとの組
み合わせが、順番に並べられたリストとして表現され
る。例えば、第1のティップの属性リストLAには、名
前の属性A1 として、「名前」という属性名NA1 と
「○山×夫」という属性値VA1 との組み合わせが格納
されている。同様に、「住所」および「東京都東京市
…」の組み合わせと、「電話番号」および「0123- …」
の組み合わせとが格納される。For example, the case of storing the address book in the database DB will be described as an example.
It corresponds to one address data. If each address data is composed of three types of data, that is, data indicating a name, data indicating an address, and data indicating a telephone number, each tip T
Has three attributes A 1 to A 3 of name, address and telephone number.
Attribute list LA of each tip T defined as a set of
As shown in FIG. 4, the combination of the attribute name NA and the attribute value VA is expressed as a list arranged in order. For example, in the attribute list LA of the first tip, a combination of an attribute name NA 1 of “name” and an attribute value VA 1 of “○ yama × husband” is stored as the attribute A 1 of the name. Similarly, a combination of "address" and "Tokyo city, Tokyo ...", and "phone number" and "0123 -..."
And a combination of are stored.
【0049】また、上記フクロ管理部32は、データベ
ースDBに含まれるフクロFと、上記各ティップTおよ
びフクロFの包含関係とを記憶している。図5に示すよ
うに、1つの情報処理機器2に複数のデータベースDB
1 、DB2 、DB3 が格納されている場合を例にして説
明すると、情報処理機器2∋データベースDB∋フクロ
F∋ティップTの関係が成立する。上記フクロ管理部3
2は、この関係を図6に示すようなツリー構造Sとして
格納している。The bag management unit 32 stores the bag F included in the database DB and the inclusion relationship between the tips T and bag F. As shown in FIG. 5, one information processing device 2 has a plurality of database DBs.
The case where 1 , DB 2 , and DB 3 are stored will be described as an example. The relationship of the information processing device 2∋database DB∋float F∋tip T is established. The bag management unit 3
2 stores this relationship as a tree structure S as shown in FIG.
【0050】当該ツリー構造Sでは、ティップT2 のよ
うに、単一のフクロ(F1 )に含まれていてもよいし、
ティップT1 のように、複数のフクロ(F1 ・F2 )に
含まれていてもよい。これにより、図5に示すように、
複数のフクロF1 、F2 に含まれるティップT1 を表現
できる。In the tree structure S, like the tip T 2 , it may be included in a single bag (F 1 ),
Like the tip T 1 , it may be included in a plurality of bags (F 1 · F 2 ). As a result, as shown in FIG.
The tip T 1 included in the plurality of bags F 1 and F 2 can be expressed.
【0051】なお、上記ツリー構造Sを格納できれば、
ツリー構造S全体を格納してもよいし、当該ツリー構造
Sを複数のリストに分割して、情報処理機器2に含まれ
るデータベースDBのリストと、各データベースDB毎
のフクロFのリストと、各フクロF毎のティップTのリ
ストとして格納してもよい。本実施形態では、ティップ
Tと同様に、各情報処理機器2、各データベースDBお
よび各フクロFに対して、それぞれを一意に識別するた
めのIDが割り当てられているので、上記各リストは、
当該IDのリストとして格納される。なお、上記各リス
トとして格納した場合、あるフクロFに含まれるティッ
プTは、当該リストを参照すれば即座に判明するが、こ
れとは逆に、ティップTを含むフクロFは、最悪のケー
スで、全てのリストを検索する必要がある。それゆえ、
検索時間の短縮が要求される場合には、上記各リストと
は別に、ティップT毎に当該ティップTを含むフクロF
のリストを設ける方がよい。If the tree structure S can be stored,
The entire tree structure S may be stored, or the tree structure S may be divided into a plurality of lists and a list of database DBs included in the information processing device 2 and a list of bag F for each database DB may be stored. It may be stored as a list of tips T for each bag F. In the present embodiment, as in the case of the tip T, an ID for uniquely identifying each information processing device 2, each database DB, and each bag F is assigned, so that each list above
It is stored as a list of the ID. When stored as each of the above lists, the tip T included in a certain bag F is immediately found by referring to the list. On the contrary, the bag F including the tip T is the worst case. , I need to search all the lists. therefore,
When the search time is required to be shortened, the bag F including the tip T for each tip T, apart from the above-mentioned lists.
It is better to have a list of.
【0052】本実施形態に係るデータベースシステム1
では、図7に示すように、同期処理の対象となる範囲
(共有範囲)がフクロF単位で決定されており、あるテ
ィップTが他のデータベースDB間で共有されるか否か
は、予め共有すると設定されたフクロ(共有フクロS
F)に所属しているか否かで判定される。Database system 1 according to the present embodiment
Then, as shown in FIG. 7, the range (shared range) that is the target of the synchronization processing is determined in units of the F bags F, and whether or not a certain tip T is shared between other database DBs is shared in advance. Then the set bag (shared bag S
It is determined by whether or not it belongs to F).
【0053】ここで、通常、通信装置3などを介した他
の情報処理機器2へのアクセスは、自らの情報処理機器
2内のアクセスに比べると極めて低速であり、同期処理
の所要時間は増大しがちである。それゆえ、所要時間の
短縮が切望されており、両情報処理機器2a・2b間で
伝送されるデータ量の削減が望まれる。なお、自らの情
報処理機器2内へのアクセスは比較的高速なので、前回
の同期処理と次回の同期処理との間の期間中(非同期期
間中)の処理が増大したとしても、処理時間は、余り長
くならない。Here, normally, access to another information processing device 2 via the communication device 3 or the like is extremely slow as compared with access within the information processing device 2 of its own, and the time required for the synchronization processing increases. It tends to be. Therefore, there is a strong demand for shortening the required time, and it is desired to reduce the amount of data transmitted between the information processing devices 2a and 2b. Since the access to the information processing device 2 is relatively fast, even if the processing during the period between the previous synchronization processing and the next synchronization processing (during the asynchronous period) increases, the processing time is Not too long.
【0054】本実施形態に係るフクロ管理部32は、上
記データ量を削減するため、非同期期間中における各テ
ィップTの状態を示すダーティ・ビットDからなるダー
ティ・ビット・リストLDを格納している。ダーティ・
ビット・リストLDは、各ダーティ・ビットDの順序
が、自らと相手とで互いに対応するティップTのダーテ
ィ・ビットDが同じ順位になるように管理されており、
後述するように、ティップTの対応関係をも示してい
る。さらに、フクロ管理部32には、前回の同期処理で
既に対応付けられたティップTの数を示すシンク・リミ
ットLimが格納されており、ダーティ・ビットDに対
応するティップTが、相手の共有フクロSF内のティッ
プTと既に対応付けられているか否かを判別できる。In order to reduce the amount of data, the bag management unit 32 according to the present embodiment stores a dirty bit list LD consisting of dirty bits D indicating the state of each tip T during the asynchronous period. . Dirty
In the bit list LD, the order of the dirty bits D is managed so that the dirty bit D of the tip T corresponding to each other in the self and the opponent is the same.
As will be described later, the correspondence relationship between tips T is also shown. Further, the pocket management unit 32 stores a sync limit Lim indicating the number of tips T already associated with the previous synchronization process, and the tip T corresponding to the dirty bit D is shared by the partner. It can be determined whether or not it is already associated with the tip T in the SF.
【0055】例えば、図8に示すように、前回の同期処
理において、両共有フクロSFa ・SFb 間で、3つの
ティップ(T1a〜T3aおよびT1b〜T3b)が対応付けら
れた場合、両情報処理機器2a・2bには、シンク・リ
ミットLimとして、”3”が記憶される。さらに、図
9に示すように、情報処理機器2aのダーティ・ビット
・リストLDa では、各ティップT1a〜T6aに対応する
ダーティ・ビットD1a〜D6aが、この順番で格納されて
いる。同様に、情報処理機器2bのダーティ・ビット・
リストLDb では、各ティップT1b〜T3b、T7bおよび
T8bに対応するダーティ・ビットD1b〜D3b、D7bおよ
びD8bが、この順番で格納されている。この場合、シン
ク・リミットLimが”3”なので、ダーティ・ビット
Dが3番目よりも後に格納されたティップT4a〜T6a、
および、T7b〜T8bは、相手の共有フクロSF内のティ
ップTと対応付けられていない。なお、図9は、ダーテ
ィ・ビット・リストLDの格納方法の一例として、ダー
ティ・ビットDとダーティ・ビットDに対応するティッ
プIDとの組み合わせを順次格納する場合を示してい
る。For example, as shown in FIG. 8, in the previous synchronization processing, three tips (T 1a to T 3a and T 1b to T 3b ) are associated between both shared bags SF a and SF b . In this case, "3" is stored as the sync limit Lim in both the information processing devices 2a and 2b. Furthermore, as shown in FIG. 9, the dirty bit list LD a of the information processing apparatus 2a, the dirty bits D 1a to D 6a corresponding to the tip T 1a through T 6a is stored in this order . Similarly, the dirty bit of the information processing device 2b
In the list LD b , dirty bits D 1b to D 3b , D 7b and D 8b corresponding to the respective tips T 1b to T 3b , T 7b and T 8b are stored in this order. In this case, since the sync limit Lim is “3”, the tips T 4a to T 6a in which the dirty bit D is stored after the third bit,
And, T 7b through T 8b are not associated with the tip T in the shared bag SF of the other party. Note that FIG. 9 shows an example of a method of storing the dirty bit list LD in which a combination of a dirty bit D and a tip ID corresponding to the dirty bit D is sequentially stored.
【0056】以下では、説明の便宜上、ダーティ・ビッ
ト・リストLDにおけるダーティ・ビットDの順位をシ
ンク・タグと称し、図中では、〔〕内の数字として表記
する。また、ダーティ・ビットDとティップTとなど、
対応するデータは、例えば、ダーティ・ビットD1aとテ
ィップT1aとのように、同じ添字を付して表記する。さ
らに、一方の情報処理機器2aに格納される情報は、例
えば、ティップT1aのように添字a を付して、他方の情
報処理機器2bに格納された情報(添字b を付す)と区
別する。なお、特に対応関係を明記する必要がない場
合、あるいは、総称する場合は、添字を省略する。Hereinafter, for convenience of explanation, the order of the dirty bits D in the dirty bit list LD is referred to as a sync tag, and is represented as a number in [] in the drawing. Also, Dirty Bit D and Tip T, etc.
Corresponding data are denoted with the same subscript, for example, dirty bit D 1a and tip T 1a . Further, the information stored in one of the information processing devices 2a is attached with a subscript a such as, for example, tip T 1a to be distinguished from the information stored in the other information processing device 2b (subscript b is attached). . The subscripts are omitted when it is not necessary to specify the correspondence or when the names are collectively referred to.
【0057】上記ダーティ・ビット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つとなる。The dirty bit D is created corresponding to each of the tips T existing in the shared bag SF even at least once during the asynchronous period, and it is determined whether the corresponding tip T is updated during the asynchronous period. It has an update parameter that indicates and a movement parameter that indicates whether or not the tip T has moved inside and outside the shared bag SF during the asynchronous period. The update parameter takes a value of "m" indicating update or "p" indicating maintenance, and the value of the movement parameter is "X" indicating stillness, "I" indicating insertion, or "I" indicating ejection. It is either "O". More specifically, "X" is
It has been shown that it has continued to exist in the shared bag SF since the last synchronization process, and "I" has been put in the shared bag SF since the last synchronization process or has been returned. . Similarly, “O” has been extracted from the shared bag SF since the previous synchronization processing, or
It shows that it was inserted once and then removed again. The movement parameter is stored, for example, as shown in FIG. 10, as a combination of an addition bit BI indicating addition to the shared bag SF and a deletion bit BO indicating deletion from the shared bag SF. Further, for example, when it is determined as a result of the synchronization processing that the tip T exists outside the shared bag SF, and thereafter, when it is unnecessary to monitor the state of the tip T, both bits BI and BO are set to ON. Hereinafter, this state is referred to as invalid "K" regardless of the value of the update parameter. Therefore, the states of the tip T which can be identified from the dirty bit D are the static maintenance "Xp", the static update "Xm", and the insertion maintenance "I".
There are seven: p ”, insert update“ Im ”, discharge maintenance“ Op ”, discharge update“ Om ”, and invalid“ K ”.
【0058】ところで、同じ共有フクロSFであって
も、相手の共有フクロSFが異なれば、それぞれとの非
同期期間は、通常、互いに異なっている。したがって、
本実施形態では、ダーティ・ビット・リストLDおよび
シンク・リミットLimは、自らの共有フクロSFと相
手の共有フクロSFとの組み合わせ毎に設けられてい
る。By the way, even if the same shared bag SF is used, if the shared bag SF of the other party is different, the asynchronous period with each is usually different from each other. Therefore,
In the present embodiment, the dirty bit list LD and the sync limit Lim are provided for each combination of the shared bag SF of itself and the shared bag SF of the other party.
【0059】例えば、図11に示すように、共有フクロ
SFa が、3つの異なる共有フクロSFb ・SFc ・S
Fd と対応している場合、図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
Dc では、ダーティ・ビットD2cが1番目に格納されて
いる。For example, as shown in FIG. 11, the shared bag SF a has three different shared bags SF b , SF c , S.
When it corresponds to F d , as shown in FIG. 12, the corresponding dirty bit list LD ab and LD ac
・ LD ad and sink limit Lim ab・ Lim
ac · Lim ad is provided. As shown in FIGS. 11 and 12, each dirty bit list LD may be in the same order as the dirty bit list LD of the other party, and the dirty bit list (LD ab
The order or value of the dirty bit D or the sync limit Lim may be different between LD ac ). For example, in the dirty bit list LD ab , the dirty bit D 2ab (whose value is Im) indicating the tip T 2a is stored second, but the dirty bit
In the bit list LD ac , dirty bit D
2ac (value is Xp) is stored first. However, dirty bit list LD of shared bag SF b
In b , the dirty bit D 2b indicating the tip T2 b is stored second, and the dirty bit list L
In D c , the dirty bit D 2c is stored first.
【0060】本実施形態に係るフクロ管理部32には、
上記各リストに加えて、各共有フクロSF毎に、当該共
有フクロSFの共有相手を示す共有相手リストLSが設
けられている。このリストLSを参照すれば、ある共有
フクロSFの共有相手全てを容易に検索できるので、例
えば、当該共有フクロSF内のティップTに対して、追
加、削除あるいは内容更新などの変更が加えられた場
合、当該ティップTに対応するダーティ・ビットD全て
をより短時間で更新できる。In the bag management unit 32 according to this embodiment,
In addition to each of the above lists, a sharing partner list LS indicating a sharing partner of the sharing bag SF is provided for each sharing bag SF. By referring to this list LS, it is possible to easily search all the sharing partners of a certain shared bag SF, so that, for example, a change such as addition, deletion, or content update is made to the tip T in the shared bag SF. In this case, all the dirty bits D corresponding to the tip T can be updated in a shorter time.
【0061】上記構成のデータベースシステム1の動作
について、図13から図61に基づいて説明する。すな
わち、図13に大略的に示すように、実際の同期処理に
先立って共有設定が行われ、例えば、自らおよび相手の
共有フクロSFの設定、並びに、ダーティ・ビット・リ
ストLDやシンク・リミットLimの生成など、同期処
理に必要な処理が行われる(S1)。なお、この段階で
は、図14に示すように、両共有フクロSFa ・SFb
が共有範囲であることが、両情報処理機器2a・2bに
登録されただけであり、同期処理が行われるまでは両共
有フクロの内容は一致しない。The operation of the database system 1 having the above configuration will be described with reference to FIGS. 13 to 61. That is, as roughly shown in FIG. 13, the sharing setting is performed prior to the actual synchronization processing, and for example, the setting of the shared bag SF of itself and the other party, the dirty bit list LD, and the sync limit Lim are set. The processing required for the synchronization processing, such as the generation of (S1), is performed (S1). At this stage, as shown in FIG. 14, both sharing bags SF a · SF b
It is only registered in both the information processing devices 2a and 2b that the range is a shared range, and the contents of both shared bags do not match until the synchronization process is performed.
【0062】その後、両情報処理機器2a・2bが通信
可能であるか否かに拘わらず、非同期期間中は、自らの
データベースDBへの操作に基づいて、ダーティ・ビッ
ト・リストLDが更新される(S2)。また、両情報処
理機器2a・2bが通信可能な期間には、同期処理が行
われ、図15に示すように、双方の共有フクロSF内の
ティップ数およびティップTの内容は、上記ダーティ・
ビット・リストLDおよびシンク・リミットLimを参
照して揃えられると共に、ダーティ・ビット・リストL
Dおよびシンク・リミットLimも更新される(S
3)。各情報処理機器2a・2b間の通信路が間欠的に
接続される場合、当該S3のように、意図的な同期処理
によって、整合性の保たれる共有フクロは、非常に有用
である。After that, the dirty bit list LD is updated during the asynchronous period based on the operation to the database DB of itself, regardless of whether the both information processing devices 2a and 2b can communicate. (S2). Further, during a period in which both the information processing devices 2a and 2b can communicate, a synchronization process is performed, and as shown in FIG.
Aligned with reference to bit list LD and sync limit Lim, and dirty bit list L
D and sync limit Lim are also updated (S
3). When the communication path between the information processing devices 2a and 2b is intermittently connected, the shared bag whose consistency is maintained by the intentional synchronization process as in S3 is very useful.
【0063】なお、ティップTは複数のフクロFに入れ
ることができるため、いずれかの共有設定にて、同期処
理が実行されると、同期処理に関係のないフクロFに所
属するティップTが変更されることがある。ただし、い
ずれの共有設定に関連する同期処理を行った場合であっ
ても、共有フクロSF以外のフクロFへ、ティップTが
挿入されたり、除去されることはない。Since the tip T can be put in a plurality of the pockets F, when the synchronization processing is executed in any of the sharing settings, the tip T belonging to the cloth F which is not related to the synchronization processing is changed. It may be done. However, the tip T is not inserted into or removed from the bag F other than the shared bag SF regardless of which sharing setting is performed.
【0064】上記S2およびS3の処理は、必要に応じ
て繰り返され、それ以降の同期処理が不要になると、S
4において、共有設定が解除される。なお、図13で
は、ステップS1の後、最初にステップS2が行われる
ように記載しているが、両ステップS2・S3が交互に
繰り返されれば、両ステップS2・S3の順番を入れ換
えてもよい。The processes of S2 and S3 are repeated as necessary, and when the subsequent synchronization process becomes unnecessary, S
In 4, the sharing setting is canceled. Although FIG. 13 describes that step S2 is first performed after step S1, but if both steps S2 and S3 are alternately repeated, the order of both steps S2 and S3 may be exchanged. .
【0065】ここで、共有解除は、基本的には、共有フ
クロSF間の対応を解除するだけであり、共有フクロS
Fの内容が互いに一致しているとは限らない。それゆ
え、共有フクロSFの内容を一致させる場合は、共有解
除の直前に、自動的に、あるいは、使用者の指示によっ
て同期処理すればよい。Here, the sharing cancellation basically only cancels the correspondence between the sharing bags SF, and the sharing bag S
The contents of F do not necessarily match each other. Therefore, when the contents of the shared bag SF are made to coincide with each other, the synchronization process may be performed immediately before the cancellation of sharing, or automatically according to a user's instruction.
【0066】なお、上記では、共有設定と同期処理とを
別に説明しているが、共有設定と同時に同期処理を行う
こともできる。この場合は、例えば、共有設定の終了時
点で、両共有フクロSFの内容が一致する。ただし、本
実施形態では、共有設定と同期処理とを分離して、共有
設定の所要時間を短縮している。これにより、共有設定
の時点では、双方の情報処理機器2がそれぞれの使用者
へ共有設定の可否を確認し、同期処理の時点では、一方
の情報処理機器2の使用者のみが操作する場合、双方の
使用者による操作時間の合計を短縮できる。この結果、
安全性の向上と、操作時間の短縮との双方を実現でき
る。In the above description, the sharing setting and the synchronizing process are separately described, but the synchronizing process can be performed simultaneously with the sharing setting. In this case, for example, the contents of both shared bag SFs match at the end of sharing setting. However, in the present embodiment, the sharing setting and the synchronization process are separated to reduce the time required for the sharing setting. Accordingly, at the time of sharing setting, both information processing devices 2 confirm with each user whether sharing setting is possible, and at the time of synchronization processing, when only the user of one information processing device 2 operates, The total operation time by both users can be shortened. As a result,
Both improvement of safety and reduction of operation time can be realized.
【0067】以下では、上記S1の処理の一例として、
フクロ融合型モデルの共有設定について詳細に説明す
る。フクロ融合型の共有設定は、図14に示すように、
両情報処理機器2a・2bに、予め存在するフクロFa
・Fb 間での共有設定であり、図16に示すように、両
情報処理機器2a・2bが通信可能になると、S11に
おいて、一方の情報処理機器2aに設けられた共有設定
処理部52は、他方の情報処理機器2bへ共有設定要求
を送出する。当該要求には、情報処理機器2aを示すマ
シンIDと、情報処理機器2aのフクロFa を示すフク
ロIDと、共有を希望する情報処理機器2bのフクロF
b を示すフクロIDとが含まれている。なお、以下で
は、共有設定要求を送出する側を共有設定起動側と称
し、共有設定要求を受け取る側を共有設定受動側と称す
る。In the following, as an example of the processing of S1,
The sharing setting of the bag fusion type model will be described in detail. As shown in FIG. 14, the sharing settings of the fusion type are as follows.
A balloon F a that is present in advance in both information processing devices 2a and 2b
- a shared settings between F b, as shown in FIG. 16, when both the information processing devices 2a, 2b is communicable, in S11, the shared setting processing unit 52 provided on one of the information processing apparatus 2a , And sends a sharing setting request to the other information processing device 2b. To the request includes a machine ID showing an information processing apparatus 2a, a bag ID showing the bag F a of the information processing apparatus 2a, bag F of an information processing apparatus 2b to the desired share
It includes a bag ID indicating b . In the following, the side that sends the sharing setting request is referred to as the sharing setting activation side, and the side that receives the sharing setting request is referred to as the sharing setting passive side.
【0068】さらに、共有設定起動側の共有設定処理部
52は、S12において、上記共有設定要求と同様の情
報を共有情報として登録する。さらに、共有設定処理部
52は、自らのフクロFa に対応する共有相手リストL
Sを作成し、相手のフクロIDを登録する。これによ
り、当該フクロFa は、共有フクロSFa となる。ま
た、当該共有フクロSFa と相手のフクロFb との組み
合わせに対応するダーティ・ビット・リストLDと、シ
ンク・リミットLimとが作成される。Further, the sharing setting processing unit 52 on the sharing setting starting side registers the same information as the sharing setting request as the sharing information in S12. Further, the sharing setting processing unit 52 causes the sharing partner list L corresponding to the own bag F a.
Create S and register the opponent's bag ID. As a result, the bag F a becomes the shared bag SF a . In addition, a dirty bit list LD and a sync limit Lim corresponding to the combination of the shared bag SF a and the partner bag F b are created.
【0069】一方、共有設定受動側の情報処理機器2b
では、S13において、共有設定処理部52が共有設定
要求を受け取ると、S14において、当該共有設定要求
に基づいて、共有情報を登録する。共有情報には、自ら
の情報処理機器2bを示すマシンIDと、情報処理機器
2aにおいて共有対象となるフクロIDと、情報処理機
器2bにおいて共有対象となるフクロIDと、共有設定
の際に決定されるオプションとが含まれる。さらに、共
有設定処理部52は、共有設定起動側と同様に、自らの
フクロFb に対応する共有相手リストLSへ、相手のフ
クロIDを登録して、共有フクロSFb を生成すると共
に、自らの共有フクロSFb と相手の共有フクロSFa
との組み合わせに対応するダーティ・ビット・リストL
Dおよびシンク・リミットLimを作成する。On the other hand, the information processing device 2b on the sharing setting passive side
Then, when the sharing setting processing unit 52 receives the sharing setting request in S13, the sharing information is registered based on the sharing setting request in S14. The shared information includes a machine ID indicating its own information processing device 2b, a bag ID to be shared by the information processing device 2a, a bag ID to be shared by the information processing device 2b, and determined at the time of sharing setting. Options are included. Furthermore, sharing setting processing unit 52, similarly to the sharing setting initiator, the shared contact list LS that corresponds to his bag F b, and registers the bag ID of the other party, to generate a shared bag SF b, itself The shared scrounger SF b and the other's shared scrounger SF a
Dirty bit list L corresponding to the combination with
Create D and Sync Limit Lim.
【0070】本実施形態に係るデータベースシステム1
では、各情報処理機器2が、例えば、上記S3の同期処
理における優先側決定ルールやダウンロード処理の要
否、衝突時のコピーの要否、あるいは、上記S4の共有
解除で採用するモデルなど、種々のオプション(後述)
を選択可能な場合、当該オプションは、共有設定の段階
において設定されることも特徴としており、上記共有設
定要求には、当該オプションを示す情報も含まれてい
る。これにより、各オプションの設定時点を共有設定時
点に限定できる。Database system 1 according to the present embodiment
Then, various types of information processing devices 2 may be used, for example, whether the priority side determination rule or the download process is necessary in the synchronization process of S3, the necessity of copying at the time of collision, the model adopted in the sharing cancellation of S4, or the like. Options (see below)
If the option is selectable, the option is set at the stage of sharing setting, and the sharing setting request also includes information indicating the option. Thereby, the setting time of each option can be limited to the sharing setting time.
【0071】ここで、各情報処理機器2が任意の時点
で、オプションを設定できる場合は、一方の情報処理機
器2への操作に応じて、優先側決定ルールなどが変更さ
れ、他方の情報処理機器2の使用者にとって不所望な設
定が行われる虞れがある。ところが、上記構成では、各
情報処理機器2が通信可能な共有設定時点のみで、オプ
ションが変更されるので、上記不所望な設定を拒絶でき
る。Here, when each information processing device 2 can set an option at an arbitrary time, the priority side determination rule or the like is changed according to the operation on one of the information processing devices 2, and the other information processing device 2 is processed. There is a risk that the user of the device 2 may make undesired settings. However, in the above configuration, the option is changed only at the time of sharing setting at which each information processing device 2 can communicate, so that the above-mentioned undesired setting can be rejected.
【0072】なお、図16では、共有相手を認証するス
テップを図示していないが、共有設定受動側が、例え
ば、共有設定のオプションなど、共有設定要求の内容に
応じて、共有設定するか否かを決定してもよい。この場
合、共有設定受動側の情報処理機器2は、例えば、受付
可能な共有設定要求を予め格納しておき、格納した共有
設定要求に基づいて要否を決定すればよい。Although FIG. 16 does not show the step of authenticating the sharing partner, whether or not the sharing setting passive side makes the sharing setting according to the contents of the sharing setting request such as the option of the sharing setting. May be determined. In this case, the information processing device 2 on the sharing setting passive side may store, for example, a receivable sharing setting request in advance, and determine the necessity based on the stored sharing setting request.
【0073】上記ダーティ・ビット・リストLDおよび
シンク・リミットLimの初期値は、両共有フクロSF
a ・SFb に含まれるティップTの対応関係によって異
なる。例えば、共有設定の際、両共有フクロSFa ・S
Fb 内のティップTをそれぞれ別のティップTと判定す
る場合、シンク・リミットLimの初期値は、0にな
り、各ティップTに対応するダーティ・ビットDは、挿
入更新「Im」に設定される。また、例えば、ティップ
Tの内容などを参照して、ティップTを対応付ける場
合、シンク・リミットLimは、対応付けに成功したテ
ィップTの数になり、当該ティップTに対応するダーテ
ィ・ビットDは、両ダーティ・ビット・リストLD内で
の順位が同一になるように格納される。なお、両ティッ
プTの内容が同一であれば、ダーティ・ビットDの値
は、静止維持「Xp」となり、同一か否かが不明な場合
は、静止更新「Xm」に設定される。The initial values of the dirty bit list LD and the sync limit Lim are as follows:
It depends on the correspondence of the tip T included in a.SF b . For example, when sharing settings, both sharing bags SF a · S
When the tips T in F b are determined to be different tips T, the initial value of the sync limit Lim becomes 0, and the dirty bit D corresponding to each tip T is set to the insertion update “Im”. It Further, for example, in the case of associating the tip T with reference to the content of the tip T, the sync limit Lim is the number of the tips T that have been successfully associated, and the dirty bit D corresponding to the tip T is It is stored so that the ranks in both dirty bit lists LD are the same. It should be noted that if the contents of both tips T are the same, the value of the dirty bit D becomes the still maintenance "Xp", and if it is not clear whether they are the same or not, it is set to the still update "Xm".
【0074】また、共有設定のモデルは、フクロ融合型
モデルに限るものではなく、図17に示すフクロ取込み
型モデルのように、共有設定の際、一方の共有フクロS
Fを新たに作成してもよいし、図18に示すフクロ新規
作成型モデルのように、双方の情報処理機器2a・2b
に、新たな共有フクロSFを作成してもよい。これらの
場合も図16に示す処理と略同様の処理が行われ、それ
ぞれに、共有情報や、ダーティ・ビット・リストLDお
よびシンク・リミットLimや、共有情報などが登録さ
れる。ただし、共有設定受動側に新たな共有フクロSF
が新規作成される場合は、上記共有情報などを登録する
際に、当該共有フクロSFのフクロIDが共有設定起動
側へ返される。The model of sharing setting is not limited to the bag fusion type model, but one of the sharing bags S at the time of sharing setting like the bag taking-in model shown in FIG.
F may be newly created, or both information processing devices 2a and 2b may be created as in the new bag creation model shown in FIG.
Alternatively, a new shared bag SF may be created. In these cases as well, a process substantially similar to the process shown in FIG. 16 is performed, and the shared information, the dirty bit list LD and the sync limit Lim, the shared information, etc. are registered in each of them. However, a new sharing bag SF is added to the sharing setting passive side.
When a new item is created, the bag ID of the shared bag SF is returned to the sharing setting activation side when the shared information is registered.
【0075】続いて、図13に示すS2の処理、すなわ
ち、非同期期間中の処理について詳細に説明する。非同
期期間中には、ティップTへの操作と、操作時点でのダ
ーティ・ビット・リストLDおよびシンク・リミットL
imとに基づいて、ティップTに対応するダーティ・ビ
ットDが、図19に示すように更新される。Next, the process of S2 shown in FIG. 13, that is, the process during the asynchronous period will be described in detail. During the asynchronous period, the operation to the tip T, the dirty bit list LD and the sync limit L at the time of the operation are performed.
Based on im, the dirty bit D corresponding to tip T is updated as shown in FIG.
【0076】具体的には、ティップTの内容更新が指示
された場合、図20に示すS21において、ティップ更
新処理部41(図1参照)は、ユーザ操作部22から当
該指示を受け取り、指示に応じて、ティップTの内容を
更新する。さらに、S22において、当該ティップTに
対応するダーティ・ビットDについて、更新パラメタを
「m」に設定する。なお、移動パラメタは、それまでの
値のまま保たれる。Specifically, when the content of the tip T is instructed to be updated, the tip update processing unit 41 (see FIG. 1) receives the instruction from the user operation unit 22 and gives the instruction in S21 shown in FIG. Accordingly, the content of tip T is updated. Further, in S22, the update parameter is set to "m" for the dirty bit D corresponding to the tip T. The movement parameter is kept as it is.
【0077】上記ティップTは、複数の共有フクロSF
に所属可能であり、また、各共有フクロSFは、複数の
相手と共有されていることがある。この結果、情報処理
機器2全体でみると、当該ティップTに対応するダーテ
ィ・ビットDは、複数存在する場合がある。したがっ
て、当該ティップTに対応する全てのダーティ・ビット
Dが検索され、それぞれが更新される。対応するダーテ
ィ・ビットDの検索は、例えば、全てのダーティ・ビッ
ト・リストLDを参照してもよいし、検索時間を短縮す
るために、各ティップTに対応するダーティ・ビットD
のリストを予め作成しておき、当該リストを参照して検
索してもよい。The tip T is a plurality of shared bag SFs.
, And each shared bag SF may be shared with a plurality of opponents. As a result, as a whole of the information processing device 2, there may be a plurality of dirty bits D corresponding to the tip T. Therefore, all the dirty bits D corresponding to the tip T are searched and each is updated. For searching the corresponding dirty bit D, for example, all the dirty bit lists LD may be referred to, or in order to shorten the search time, the dirty bit D corresponding to each tip T may be searched.
The list may be created in advance, and the search may be performed by referring to the list.
【0078】いずれの場合でも、本実施形態では、非同
期期間に一度でも共有フクロSFに所属したティップT
について、ダーティ・ビットDが作成され、当該ティッ
プTへの操作を監視して、ダーティ・ビットDを更新し
ている。したがって、例えば、ティップTの移動などに
よって、当該ティップTが現時点では共有フクロSFに
存在しない場合であっても、ダーティ・ビットDは、確
実に更新される。In any case, in the present embodiment, the tip T which belongs to the shared bag SF even once in the asynchronous period.
, The dirty bit D is created, the operation to the tip T is monitored, and the dirty bit D is updated. Therefore, even if the tip T is not present in the shared bag SF at the present time due to, for example, the movement of the tip T, the dirty bit D is surely updated.
【0079】一方、ティップTの新規作成やティップT
の移動などによって、ティップTが共有フクロSFへ挿
入される場合、図21に示すように、ティップ追加処理
部42(図1参照)は、ユーザ操作部22からの指示に
応じて、フクロ管理部32を制御して、当該ティップT
を共有フクロSFに所属させる(S31)。さらに、テ
ィップ追加処理部42は、S32において、当該共有フ
クロSFを示すダーティ・ビット・リストLDが、ティ
ップTに対応するダーティ・ビットDを含んでいるか否
かを判定する。On the other hand, a new tip T or a tip T is created.
When the tip T is inserted into the shared bag SF due to the movement of the tag or the like, as shown in FIG. 21, the tip addition processing unit 42 (see FIG. 1) causes the bag management unit 42 to respond to the instruction from the user operation unit 22. 32 to control the tip T
Belong to the shared bag SF (S31). Further, in S32, the tip addition processing unit 42 determines whether or not the dirty bit list LD indicating the shared bag SF includes the dirty bit D corresponding to the tip T.
【0080】ここで、ダーティ・ビットDを含んでいる
場合は、例えば、共有フクロSF内のティップTを出し
入れした場合など、当該ティップTの内容更新が既に監
視されていることを示している。したがって、ティップ
追加処理部42は、S33において、当該ダーティ・ビ
ットDの移動パラメタを「I」に設定する。一方、含ん
でいない場合は、例えば、一度も共有フクロSFに含ま
れていない場合やティップTを新規作成した場合などで
あり、非同期期間中に、当該ティップTの内容が更新さ
れたか否かを識別できないことを示している。したがっ
て、ティップ追加処理部42は、S34において、例え
ば、ダーティ・ビット・リストLDの末尾など、シンク
・リミットLimよりも後の順位に、値が「Im」で上
記ティップTを示すダーティ・ビットDを追加する。な
お、共有フクロSFに対応するダーティ・ビット・リス
トLDが複数存在する場合は、全てのダーティ・ビット
・リストLDについて、S32ないしS34の処理が行
われる。Here, when the dirty bit D is included, it indicates that the content update of the tip T is already monitored, for example, when the tip T in the shared bag SF is taken in and out. Therefore, the tip addition processing unit 42 sets the movement parameter of the dirty bit D to "I" in S33. On the other hand, when it is not included, for example, when it is not included in the shared bag SF once, when a tip T is newly created, and the like, it is determined whether the content of the tip T is updated during the asynchronous period. Indicates that it cannot be identified. Therefore, in S34, the tip addition processing unit 42, for example, the dirty bit D indicating the tip T with a value of “Im” in the order after the sync limit Lim, such as the end of the dirty bit list LD. To add. When there are a plurality of dirty bit lists LD corresponding to the shared bag SF, the processes of S32 to S34 are performed for all dirty bit lists LD.
【0081】さらに、例えば、ティップTの削除や移動
などによって、ティップTが共有フクロSFから排出さ
れる場合、図22に示すように、ティップ削除処理部4
3(図1参照)は、ユーザ操作部22からの指示に応じ
て、フクロ管理部32を制御して、当該ティップTを共
有フクロSFから取り除く(S41)。ここで、本実施
形態では、非同期期間に共有フクロSFに一度でも含ま
れたティップTについてダーティ・ビットDを保持して
いる。したがって、ティップ追加処理部42は、S42
において、当該共有フクロSFを示す全てのダーティ・
ビット・リストLDにおいて、当該ティップTに対応す
るダーティ・ビットDの移動パラメタを「O」に変更す
る。なお、更新パラメタは、そのまま保たれる。Further, when the tip T is discharged from the shared bag SF by, for example, deleting or moving the tip T, as shown in FIG.
3 (see FIG. 1) controls the bag management unit 32 according to an instruction from the user operation unit 22 to remove the tip T from the shared bag SF (S41). Here, in the present embodiment, the dirty bit D is held for the tip T included in the shared bag SF even once in the asynchronous period. Therefore, the tip addition processing unit 42 determines S42.
In, all the dirty
In the bit list LD, the movement parameter of the dirty bit D corresponding to the tip T is changed to "O". The update parameter is kept as it is.
【0082】例えば、同期処理の終了時点では、図23
に示すように、両共有フクロSFa・SFb 内の全ての
ティップTは、互いに1対1に対応付けられており、対
応するティップTの内容は、同一に設定されている。し
たがって、図24に示すように、シンク・リミットLi
mは、ダーティ・ビット・リストLDの長さ(ダーティ
・ビットDの数)と同一であり、両ダーティ・ビット・
リストLDにおいて、対応するダーティ・ビットDa ・
Db は、それぞれ同じ順位になるように格納される。ま
た、各ダーティ・ビットDの値は、全て「Xp」に設定
されている。For example, at the end of the synchronization process, FIG.
As shown in FIG. 5, all the tips T in both shared pockets SF a and SF b are in a one-to-one correspondence with each other, and the contents of the corresponding tips T are set to be the same. Therefore, as shown in FIG. 24, the sink limit Li
m is the same as the length of the dirty bit list LD (the number of dirty bits D), and both dirty bits
In the list LD, the corresponding dirty bit D a
D b is stored so as to have the same rank. Further, the value of each dirty bit D is set to "Xp".
【0083】さらに、非同期期間中、両情報処理機器2
で、それぞれのデータベースDBが独立に操作される
と、各情報処理機器2の上記各処理部41〜43は、そ
れぞれのダーティ・ビット・リストLDを更新する。こ
の結果、非同期期間中、ダーティ・ビットDの値は、対
応するティップTの状態を常に示している。これによ
り、それぞれのデータベースDBが独立に更新された場
合、次の同期処理の直前の時点では、両ダーティ・ビッ
ト・リストLDは、例えば、図25に示すように、一致
しなくなる。Furthermore, during the asynchronous period, both information processing devices 2
Then, when the respective databases DB are operated independently, the respective processing units 41 to 43 of the respective information processing devices 2 update the respective dirty bit lists LD. As a result, during the asynchronous period, the value of dirty bit D always indicates the state of the corresponding tip T. As a result, when the respective databases DB are independently updated, both dirty bit lists LD do not match at the time immediately before the next synchronization process, as shown in FIG. 25, for example.
【0084】ただし、両ダーティ・ビット・リストLD
において、シンク・リミットLimが示す順位、およ
び、それ以前のダーティ・ビットDは、対応するティッ
プTが削除されたとしても削除されず、非同期期間中
は、同じ順序を保っている。この結果、ダーティ・ビッ
トD3a・D3bなど、両共有フクロSFa ・SFb で、互
いに対応するティップTを示すダーティ・ビットDの順
位は、互いに同一に保たれている。However, both dirty bit lists LD
In, the rank indicated by the sync limit Lim and the dirty bits D before that are not deleted even if the corresponding tip T is deleted, and the same order is maintained during the asynchronous period. As a result, the ranks of the dirty bits D indicating the tips T corresponding to each other in both shared pockets SF a and SF b such as the dirty bits D 3a and D 3b are kept the same.
【0085】シンク・リミットLimより後のダーティ
・ビットDは、非同期期間中に、新たに共有フクロSF
へ追加されたティップTを示しており、例えば、ダーテ
ィ・ビットD22・D27など、同じ順位に格納されている
ダーティ・ビットDであっても、それぞれのティップT
は、対応していない。これらのシンク・リミットLim
より後のダーティ・ビットDは、「Im」か「Om」を
示しており、「Om」は、共有フクロSFに新たに挿入
されたティップTが、現在は、共有フクロSFに所属し
ていないことを示している。また、追加されたティップ
Tの数が異なる場合、両ダーティ・ビット・リストLD
の長さも互いに異なっている。The dirty bit D after the sync limit Lim is newly added to the shared bag SF during the asynchronous period.
Shows the tip T added to the tip T. For example, even if the dirty bit D is stored in the same order such as the dirty bit D 22 D 27 , the tip T of each dirty bit D 22 D 27 is stored.
Does not correspond. These sink limit lim
The subsequent dirty bit D indicates “Im” or “Om”, and “Om” indicates that the tip T newly inserted in the shared bag SF does not belong to the shared bag SF at present. It is shown that. When the number of added tips T is different, both dirty bit lists LD
Are also different in length.
【0086】この状態で、使用者の指示や、通信可能を
検出するセンサなどによって同期処理が指示されると、
図13のS3に示す同期処理が行われる。より詳細に説
明すると、図26に示すように、S51において、各情
報処理機器2のシンクロナイズ処理部51は、それぞれ
のダーティ・ビット・リストLDにおいて、シンク・リ
ミットLimより後のダーティ・ビットDのうち、移動
パラメタが「O」のダーティ・ビットDを削除する。こ
れにより、図27に示すように、両ダーティ・ビット・
リストLDにおいて、シンク・リミットLimより後の
ダーティ・ビットDは、値が「Im」のみとなる。In this state, if a user's instruction or a sensor for detecting communication is instructed to perform a synchronization process,
The synchronization process shown in S3 of FIG. 13 is performed. More specifically, as shown in FIG. 26, in S51, the synchronization processing unit 51 of each information processing device 2 registers the dirty bit D after the sync limit Lim in each dirty bit list LD. Of these, the dirty bit D whose movement parameter is "O" is deleted. As a result, as shown in FIG. 27, both dirty bits
In the list LD, the value of the dirty bit D after the sync limit Lim is only “Im”.
【0087】上記移動パラメタが「O」のダーティ・ビ
ットDは、対応するティップTが前回の同期処理および
今回の同期処理の時点で、自らの共有フクロSFに含ま
れていない。したがって、当該ティップTの内容は、相
手の共有フクロSFの状態に拘わらず、相手に送出する
必要がない。この結果、これらのティップTを削除する
ことによって、以降の処理において、両情報処理機器2
a・2b間を伝送されるダーティ・ビットDの数を削減
できる。The dirty bit D having the movement parameter "O" is not included in the shared tip SF of the corresponding tip T at the time of the previous synchronization processing and the current synchronization processing. Therefore, the content of the tip T does not need to be sent to the partner regardless of the state of the shared bag SF of the partner. As a result, by deleting these tips T, both information processing devices 2
The number of dirty bits D transmitted between a and 2b can be reduced.
【0088】上記S51にて、ダーティ・ビット・リス
トLDの圧縮が終了すると、両シンクロナイズ処理部5
1は、S52において、シンク・リミットLimより後
のダーティ・ビットDを送受して、相手から送られたダ
ーティ・ビットDに対応するダーティ・ビットDを生成
する。具体的には、一方の情報処理機器2bは、自らの
ダーティ・ビット・リストLDb 内で、シンク・リミッ
トLimb より後のダーティ・ビットDの数Yb を送出
し、他方の情報処理機器2aは、自らのダーティ・ビッ
ト・リストLDa において、シンク・リミットLima
の直後に、値が「Op」のダーティ・ビットDを、受け
取った数Yb だけ挿入する。さらに、両情報処理機器2
a・2bは、それぞれのシンク・リミットLimを上記
Yb だけ増加させる。これにより、図28に示すよう
に、情報処理機器2bで追加されたティップTに対応す
るダーティ・ビットDが、情報処理機器2aにも作成さ
れる。同様にして、情報処理機器2aで追加されたティ
ップTに対応するダーティ・ビットDが、情報処理機器
2bにも追加され、シンク・リミットLimが調整され
る。When the compression of the dirty bit list LD is completed in the above S51, both synchronization processing units 5
In S52, 1 transmits and receives the dirty bit D after the sync limit Lim and generates the dirty bit D corresponding to the dirty bit D sent from the other party. Specifically, one of the information processing apparatus 2b is a own dirty bit list LD b, and sends the number Y b of dirty bits D after the sink limit Lim b, the other information processing equipment 2a, in their own dirty bit list LD a, sink limit Lim a
Immediately after, the dirty bit D with the value "Op" is inserted by the number Y b received. Furthermore, both information processing devices 2
a-2b increases the respective sink limit Lim only the Y b. As a result, as shown in FIG. 28, the dirty bit D corresponding to the tip T added by the information processing device 2b is also created in the information processing device 2a. Similarly, the dirty bit D corresponding to the tip T added by the information processing device 2a is also added to the information processing device 2b, and the sync limit Lim is adjusted.
【0089】これにより、図29に示すように、両ダー
ティ・ビット・リストLDa ・LDb の長さは、互いに
等しくなり、互いに同じ順位のダーティ・ビットD・D
は、対応するティップTを示すようになる。また、両シ
ンク・リミットLimは、ダーティ・ビット・リストL
Dの長さと同一になり、シンク・リミットLimより後
のダーティ・ビットDは、存在していない。なお、この
段階では、ダーティ・ビット・リストLDおよびシンク
・リミットLimを更新すればよく、ティップTの内容
を伝送する必要はない。As a result, as shown in FIG. 29, the lengths of both dirty bit lists LD a and LD b become equal to each other, and the dirty bits D and D of the same rank are placed.
Indicates the corresponding tip T. Also, both sync limits Lim are dirty bit list L
There is no dirty bit D after the sync limit Lim, which is the same as the length of D. At this stage, the dirty bit list LD and the sync limit Lim may be updated, and the contents of the tip T need not be transmitted.
【0090】なお、上記では、数Ya (Yb )を送受す
る場合を例にして説明したが、対応するティップTのダ
ーティ・ビットDを同一の順位にできれば、送受する情
報は、数Ya (Yb )に限らない。また、上記では、値
が「Op」のダーティ・ビットDを追加したが、「I
m」よりも優先度が低い値であれば同様の効果が得られ
る。In the above description, the case of transmitting / receiving the number Y a (Y b ) has been described as an example. However, if the dirty bit D of the corresponding tip T can be set in the same order, the information to be transmitted / received is the number Y. It is not limited to a (Y b ). Also, in the above, the dirty bit D having a value of “Op” was added,
Similar effects can be obtained if the priority is lower than "m".
【0091】上記S52にて、ダーティ・ビットDの対
応付けが終了すると、S53において、両シンクロナイ
ズ処理部51は、両情報処理機器2a・2b間を伝送さ
れるダーティ・ビットDに基づいて、各ダーティ・ビッ
トDに対応するティップTが共有フクロSF内に配され
るか否かを決定する。もし、両ダーティ・ビットDa・
Db の移動パラメタが異なっていた場合は、例えば、図
30に示す優先ルールで、当該ティップTb が共有フク
ロSFb 内に配されるか否かを判定する。なお、図30
では、矢印の先の方が優先される。When the association of the dirty bit D is completed in the above S52, the two synchronization processing units 51, in S53, based on the dirty bit D transmitted between the two information processing devices 2a and 2b. It is determined whether the tip T corresponding to the dirty bit D is arranged in the shared bag SF. If both dirty bits D a
When the movement parameters of D b are different, for example, the priority rule shown in FIG. 30 is used to determine whether or not the tip T b is arranged in the shared bag SF b . Note that FIG.
Then, the tip of the arrow has priority.
【0092】具体的には、一方の情報処理機器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」に設定する。Specifically, the dirty bit D in the dirty bit list LD is sequentially transmitted from one information processing device 2a to the other information processing device 2b. In the other information processing device 2b, the received dirty bit D
a and his own dirty bit list LD b
Compare dirty bit D b in the same order as it was received. The synchronization processing unit 5 of the information processing device 2b
31, the combination of movement parameters is (XX), (XI), (II), (IK) as shown in FIG.
In either case of (1−O) and (I−O), it is determined that the tip T of the dirty bit D is arranged in the shared bag SF, and both tips T corresponding to the dirty bit D are set in the shared bag SF. Belong to. Further, the movement parameters of itself and the other party are set to "X".
【0093】これとは逆に、移動パラメタの組み合わせ
が、(X−O)、(O−K)、(O−O)および(K−
K)のいずれかの場合、シンクロナイズ処理部51は、
ティップTが共有フクロSF外に配されると判定し、例
えば、自らおよび相手のティップTをそれぞれの共有フ
クロSFから排出すると共に、それぞれのダーティ・ビ
ットDが無効状態「K」に設定される。なお、両情報処
理機器2a・2bが正常に動作していれば、上記組み合
わせは(X−K)とならない。したがって、この場合
は、エラーと判断し、例えば、使用者の指示を仰ぐなど
のエラー処理を行う。On the contrary, the combinations of movement parameters are (X-O), (O-K), (O-O) and (K-).
In either case of K), the synchronization processing unit 51
It is determined that the tip T is arranged outside the shared bag SF, and, for example, the tip T of itself and the opponent is ejected from the shared bag SF and each dirty bit D is set to the invalid state “K”. . If both the information processing devices 2a and 2b are operating normally, the above combination does not become (X-K). Therefore, in this case, it is determined that an error has occurred, and error processing is performed, for example, asking for a user's instruction.
【0094】上記相手のティップTの排出、および、ダ
ーティ・ビットDの設定は、自らのダーティ・ビットD
を変更前に相手へ送出し、相手のシンクロナイズ処理部
51に処理させてもよいし、自らの判定結果を相手へ伝
えてもよい。いずれの場合であっても、ダーティ・ビッ
トDあるいは判定結果を送出する順番で、相手のダーテ
ィ・ビットDおよびティップTが特定され、それぞれを
特定するための情報が特に送付されない。したがって、
内外判定時に、伝送されるデータ量は、極めて少ない。
この結果、図32に示すように、両ダーティ・ビット・
リストLD内の全てのダーティ・ビットDは、移動パラ
メタが「X」あるいは「K」に設定される。The discharge of the tip T of the opponent and the setting of the dirty bit D are performed by the own dirty bit D.
May be sent to the other party before the change, and may be processed by the other party's synchronization processing unit 51, or the result of its own judgment may be transmitted to the other party. In either case, the dirty bit D and the tip T of the other party are specified in the order in which the dirty bit D or the determination result is sent, and the information for specifying each is not sent in particular. Therefore,
The amount of data transmitted at the time of inside / outside determination is extremely small.
As a result, as shown in FIG. 32, both dirty bits
The movement parameters of all dirty bits D in the list LD are set to "X" or "K".
【0095】なお、移動パラメタが「X」ではないティ
ップT、すなわち、共有フクロSF外と判断されたティ
ップTやエラーとなったティップTは、以下のS54お
よびS55からなるティップ同期処理の対象外であり、
更新パラメタの優先度判定やティップTの内容送付は行
われない。Note that the tip T whose movement parameter is not "X", that is, the tip T judged to be outside the shared bag SF and the tip T having an error are not subject to the tip synchronization processing of S54 and S55 below. And
The update parameter priority determination and tip T content transmission are not performed.
【0096】続いて、上記S53のフクロ同期にて、共
有フクロSF内と判定されたティップT(移動パラメタ
が「X」のティップT)について、上記シンクロナイズ
処理部51は、S54において、両ダーティ・ビットD
の更新パラメタを比較して、対応するティップTそれぞ
れの優先度を決定する。ティップTの優先度は、図33
に示すように、更新パラメタによって決められ、更新
「m」の方が維持「p」よりも優先される。これによ
り、ティップTの内容を伝送すべきか否かと、伝送する
場合の方向とが決定される。Subsequently, with respect to the tip T (the tip T having the movement parameter "X") which is determined to be within the shared pocket SF in the balloon synchronization of S53, the synchronization processing unit 51 determines in step S54 that both dirty Bit D
Are compared with each other to determine the priority of each corresponding tip T. The priority of Tip T is shown in FIG.
, The update "m" has priority over the maintenance "p", as determined by the update parameters. As a result, whether or not the contents of the tip T should be transmitted and the direction of the transmission are determined.
【0097】具体的には、シンクロナイズ処理部51
は、図34に示すように、両ダーティ・ビットDa ・D
b を比較して、更新パラメタの組み合わせが(p−p)
の場合、ティップTの内容の送付が不要であると判定す
る。また、組み合わせが(p−m)の場合、更新パラメ
タが「m」の側を優先側と判定し、優先側の情報処理機
器2から、非優先側の情報処理機器2へ、ティップTの
内容を送付すべきと判定する。したがって、両ダーティ
・ビット・リストLDが上記図32に示す値の場合は、
図35に示すように、優先側が判定される。なお、上記
S54にて、組み合わせが(m−m)の場合、すなわ
ち、双方でティップTが更新された場合は、ティップT
の衝突として扱われ、後述するように、予め定められた
優先ルールで優先側を決定する。Specifically, the synchronization processing section 51
As shown in FIG. 34, both dirty bits D a D
b is compared, and the combination of update parameters is (pp)
In the case of, it is determined that the contents of the tip T need not be sent. When the combination is (pm), the side with the update parameter "m" is determined to be the priority side, and the content of the tip T is transferred from the priority side information processing apparatus 2 to the non-priority side information processing apparatus 2. Determine that should be sent. Therefore, when both dirty bit lists LD have the values shown in FIG. 32,
As shown in FIG. 35, the priority side is determined. In S54, when the combination is (m−m), that is, when the tip T is updated by both, the tip T
And the priority side is determined by a predetermined priority rule, as will be described later.
【0098】上記S54にて、ティップTの優先度が判
定され、ティップTの内容の送付が必要であると判断さ
れた場合、S55において、上記両シンクロナイズ処理
部51は、優先側のティップTの内容を非優先側へ送出
し、非優先側のティップTの内容を優先側の内容で置き
換える。これにより、両ティップTの内容が一致するの
で、それぞれのダーティ・ビットDの更新パラメタが
「p」に設定される。この結果、図36に示すように、
ダーティ・ビット・リストLD内の全てのダーティ・ビ
ットDは、「Xp」あるいは「K」のいずれかに設定さ
れる。When the priority of the tip T is judged in S54 and it is judged that the contents of the tip T need to be sent, the both synchronization processing units 51 of the tip T on the priority side are judged in S55. The content is sent to the non-priority side, and the content of the tip T on the non-priority side is replaced with the content on the priority side. As a result, since the contents of both tips T match, the update parameter of each dirty bit D is set to "p". As a result, as shown in FIG.
All dirty bits D in the dirty bit list LD are set to either "Xp" or "K".
【0099】さらに、上記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の順位が同じであれば、順序を変更し
てもよい。Further, when the tip synchronization is completed in S54 and S55, both dirty bit lists LD are compressed in S56, and the dirty bit D having the value "K" is used for each dirty bit list LD.
It is deleted from the bit list LD. For example, in FIG. 36, the seven dirty bits D at the fifth, sixth, tenth, eleventh, nineteenth, and twentieth positions are deleted from the respective dirty bit lists LD. As a result, as shown in FIG. 37, all the dirty bits D become “Xp”, and the sync limit Lim is updated according to the number of dirty bits D. In the example of FIG. 37, the order of the dirty bits D having the value “Xp” is not changed, but if the corresponding dirty bits D are the same in both dirty bit lists LD, You may change the order.
【0100】上記S51ないしS56の同期処理によっ
て、両共有フクロSF内のティップTの数、および、対
応するティップTの内容は、同一になる。この結果、一
方の情報処理機器2で、データベースDBが独立に操作
された場合であっても、他の情報処理機器2と通信可能
になった時点で同期処理を行えば、それぞれの共有フク
ロSFの内容を一致させることができる。それゆえ、互
いに通信可能な期間が断続する情報処理機器2で、デー
タベースシステム1が構成されている場合であっても、
データの整合性を保つことができる。By the synchronization processing of S51 to S56, the number of tips T in both shared bag SFs and the contents of the corresponding tips T become the same. As a result, even when the database DB is operated independently on one of the information processing devices 2, if the synchronization processing is performed at the time when communication with the other information processing device 2 becomes possible, each shared bag SF SF. The contents of can be matched. Therefore, even when the database system 1 is configured with the information processing device 2 in which the periods in which communication is possible with each other is intermittent,
Data integrity can be maintained.
【0101】さらに、上記同期処理では、S55にて、
ティップTの内容を送付する前に、S53およびS54
にて、両情報処理機器2a・2bでダーティ・ビットD
が比較され、内容送付の要否と伝送方向とがティップT
毎に決められる。したがって、この時点で内容の送付が
不要と判明したティップTは、内容の伝送を省略でき
る。ここで、本実施形態では、ダーティ・ビットDを有
するティップTについて、内容の更新を監視している。
したがって、移動も更新も行われていないティップTだ
けではなく、前回の同期処理時点と、今回の同期処理時
点との双方で、共有フクロSF内に存在し、かつ、非同
期期間中、更新されていないティップTについても、内
容の送付を省略できる。Further, in the above synchronization processing, in S55,
Before sending the contents of Tip T, S53 and S54
At both information processing devices 2a and 2b, dirty bit D
Are compared, and whether or not the content needs to be sent and the transmission direction are set to Tip T.
It is decided for each. Therefore, the tip T, which is found to be unnecessary to send the content at this point, can omit the transmission of the content. Here, in this embodiment, the update of the content of the tip T having the dirty bit D is monitored.
Therefore, not only the tip T that has not been moved or updated, but is present in the shared bag SF at both the previous synchronous processing time point and the current synchronous processing time point, and is updated during the asynchronous period. For the tip T that does not exist, it is possible to omit sending the content.
【0102】また、本実施形態では、ティップTの対応
関係がダーティ・ビットDの順位として格納されている
ので、相手のティップTを示すIDを記憶しなくても、
対応関係を記憶できる。加えて、当該IDを送付しなく
ても、対応するティップTを特定できるので、ダーティ
・ビットDの送受の際に、両情報処理機器2a・2b間
を伝送されるデータ量と、ダーティ・ビットDの記憶に
必要なメモリ量とを削減できる。Further, in this embodiment, since the correspondence relation of the tip T is stored as the rank of the dirty bit D, it is possible to store the ID indicating the tip T of the opponent.
Can store correspondence. In addition, since the corresponding tip T can be specified without sending the ID, the amount of data transmitted between the information processing devices 2a and 2b and the dirty bit when the dirty bit D is sent and received. The amount of memory required to store D can be reduced.
【0103】なお、本実施形態では、非同期期間中に一
度でも、共有フクロSFに含まれたティップTについ
て、ダーティ・ビットDを作成しているが、これに限る
ものではない。前回の同期処理の終了時点で、共有フク
ロSFに含まれているティップTについて、ダーティ・
ビットDが作成されていれば、本実施形態と同様に、上
述の移動のみが行われたティップTの内容送付を省略で
きる。ただし、本実施形態のように、現時点で共有フク
ロSFに含まれるティップTについても、ダーティ・ビ
ットDを作成する場合は、非同期期間中に新たに挿入さ
れたティップTを検索する際の速度が向上すると共に、
ダーティ・ビットDの移動パラメタが「X」または
「I」のティップTのみを抽出することで、図6に示す
ツリー構造Sのうち、共有フクロSFに含まれるティッ
プTのリストを作成できる。この結果、当該ティップT
のリストを削除でき、メモリ量を削減できる。In the present embodiment, the dirty bit D is created for the tip T included in the shared bag SF even once in the asynchronous period, but the present invention is not limited to this. At the end of the previous synchronization process, the tip T included in the shared bag SF is
If the bit D is created, it is possible to omit the content transmission of the tip T, which has only been moved, as in the present embodiment. However, like the present embodiment, when the dirty bit D is also created for the tip T currently included in the shared bag SF, the speed at which the tip T newly inserted during the asynchronous period is searched for is high. Improve and
By extracting only the tips T of which the movement parameter of the dirty bit D is “X” or “I”, the list of the tips T included in the shared bag SF in the tree structure S shown in FIG. 6 can be created. As a result, the tip T
The list of can be deleted and the amount of memory can be reduced.
【0104】なお、例えば、ティップTの追加など、個
々の処理は、いずれの情報処理機器2のシンクロナイズ
処理部51が行ってもよい。例えば、全ての処理を一方
のシンクロナイズ処理部51が実施してもよいし、双方
が分担して行ってもよい。Note that, for example, each processing such as addition of the tip T may be performed by the synchronization processing section 51 of any of the information processing devices 2. For example, one of the synchronization processing units 51 may perform all the processing, or both of them may share the processing.
【0105】以下では、上記S54にて、ティップTの
衝突が検出された場合の動作について、さらに詳細に説
明する。すなわち、本実施形態では、衝突が検出された
場合、衝突を解決する主体として、以下の3つのモデル
のいずれかを採用している。なお、ある1つのモデルを
採用してもよいが、本実施形態に係る情報処理機器2
は、使用可能な複数のモデルのうち、図13のS1に示
す共有設定の際にオプションとして指示されたモデルを
使用する。In the following, the operation in the case where the collision of the tip T is detected in S54 will be described in more detail. That is, in the present embodiment, when a collision is detected, any one of the following three models is adopted as a main body for resolving the collision. Although one model may be adopted, the information processing device 2 according to the present embodiment
Uses the model designated as an option during the sharing setting shown in S1 of FIG. 13 among the plurality of usable models.
【0106】第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からの問い合わせに対して、優先側を返答でき
る。The first model (discussion model) is shown in FIG.
As shown in FIG. 8, the sinks of both information processing devices 2a and 2b
The manager 61 manages each upper application 6
The information processing device 2a and 2b independently determines the priority side. In the second model (selection solution model), as shown in FIG. 39, only the sink manager 61 of both information processing devices 2a and 2b inquires the higher-level application 62 to determine the priority side. To do. Furthermore, the third model (automatic solution model)
As shown in FIG. 40, both sync managers 61 select the priority side based on a predetermined priority rule without inquiring the upper application 62. The sync manager 61 is a part of the synchronization processing unit 51 shown in FIG. The upper application 62 is an application that refers to data in the database, such as an application that analyzes data in the database, or an application that inquires the user of the information processing device 2 about the priority side. Then, the priority side can reply.
【0107】なお、上記選択解決モデルにおいて、一方
の情報処理機器2を選択する方法は、上位アプリケーシ
ョン62の有無や、例えば、共有設定の起動側など、後
述する自動解決モデルの一方選択モデルと同様の方法を
採用できる。ただし、優先側の決定方法を示すモデルと
同様、選択される情報処理機器2が異なる場合、不所望
な方が選択される虞れがあるので、当該情報処理機器2
を選択する方法は、共有設定時に設定される方がよい。In the selection solution model, the method of selecting one of the information processing devices 2 is the same as the one-sided selection model of the automatic solution model to be described later, such as the presence or absence of the higher-level application 62, the start side of the sharing setting, and the like. Can be adopted. However, like the model showing the method of determining the priority side, if the selected information processing device 2 is different, there is a possibility that the undesired one may be selected.
The method of selecting is preferably set when sharing is set.
【0108】上記話し合いモデルは、さらに、衝突を解
決するタイミングによって、衝突を検出した同期処理中
に衝突を解決する折衝解決型モデルと、衝突の検出と衝
突の解決との間で、一度通信を切断するアプリ解決型モ
デルとに分けられる。同様に、選択解決モデルも、クラ
イアント即時型モデルと、クライアント遅延型モデルと
に分けられる。なお、図41に示すように、折衝解決型
モデルとクライアント即時型モデルとは、解決時期が、
検出と同じ同期処理中である即時解決モデルに分類さ
れ、アプリ解決型モデルとクライアント遅延型モデルと
は、解決時期が、衝突の検出よりも後の同期処理中の遅
延解決モデルに分類される。The discussion model further includes a negotiation resolution type model for resolving a collision during synchronization processing in which a collision is detected, and a collision detection and collision resolution communication once according to the timing of resolving the collision. It is divided into an application-solving model that disconnects. Similarly, the selection solution model is divided into a client immediate model and a client delay model. As shown in FIG. 41, the negotiation resolution type model and the client immediate type model are
It is classified into an immediate solution model that is in the same synchronization process as the detection, and the application resolution model and the client delay model are classified into a delay solution model in which the resolution time is in the synchronization process after the collision is detected.
【0109】ここで、即時解決モデルのうち、折衝解決
型モデルを採用した場合、例えば、図42に示すよう
に、S61において、一方の情報処理機器2aのシンク
・マネージャ61は、自らのティップTの内容のうちで
優先側決定に必要な情報と、相手のティップTの内容の
うちで優先側決定に必要な情報とを上位アプリケーショ
ン62へ提示する。同様に、S62では、相手の情報処
理機器2bにおいて、自らのティップTと相手のティッ
プTとを示す情報が上位アプリケーション62へ提示さ
れる。さらに、S63およびS64において、各情報処
理機器2a・2bの上位アプリケーション62は、それ
ぞれ独立して優先側を決定する。Here, in the case where the negotiation solution type model is adopted among the immediate solution models, for example, as shown in FIG. 42, in S61, the sink manager 61 of one of the information processing devices 2a has its tip The information necessary for determining the priority side among the contents of the above and the information necessary for determining the priority side among the contents of the tip T of the other party are presented to the upper application 62. Similarly, in S62, the information indicating the tip T of the user and the tip T of the partner is presented to the higher-level application 62 in the information processing device 2b of the partner. Further, in S63 and S64, the upper application 62 of each of the information processing devices 2a and 2b independently determines the priority side.
【0110】双方で優先側が決定されると、S65にお
いて、シンク・マネージャ61は、双方の優先側が一致
するか否かを判定する。双方が一致した場合(上記S6
5にて YESの場合)、S66において、優先側が自機器
であるか否かが判定される。自機器の場合、シンク・マ
ネージャ61は、S67において、自らのティップTの
内容を相手の情報処理機器2へ送出して、当該内容で、
相手のティップTの内容を置き換える。一方、自機器で
はない場合、S68において、相手の情報処理機器2か
ら、相手のティップTの内容を受け取り、当該内容で、
自らのティップTの内容を置き換える。これにより、衝
突したティップTの組は、内容が同一になる。When the priority sides are determined by both sides, the sync manager 61 determines in S65 whether or not the priority sides are the same. If both match (S6 above)
If YES in 5), it is determined in S66 whether or not the priority side is the own device. In the case of the own device, the sink manager 61 sends the contents of its own tip T to the partner information processing device 2 in S67,
Replace the contents of Tip T of the opponent. On the other hand, if it is not the own device, in S68, the content of the tip T of the partner is received from the information processing device 2 of the partner,
Replace the contents of your own tip T. As a result, the content of the tip T sets that have collided becomes the same.
【0111】上記S65において、双方の優先側が一致
しなかった場合、情報処理機器2aのシンク・マネージ
ャ61は、S69において、自らの上位アプリケーショ
ン62に対して、上記S61で提示された内容に加え
て、さらに、相手で決定された優先側を提示する。同様
に、S70において、情報処理機器2bのシンク・マネ
ージャ61は、上記S62の提示内容と、情報処理機器
2aが決定した優先側とを、自らの上位アプリケーショ
ン62へ提示する。その後、上記S63以降の処理が繰
り返され、それぞれの上位アプリケーション62で優先
側が再考される。In S65, if the priority sides of both do not match, the sink manager 61 of the information processing device 2a, in S69, notifies the host application 62 of its own in addition to the contents presented in S61. Furthermore, the priority side decided by the other party is presented. Similarly, in S70, the sink manager 61 of the information processing device 2b presents the presentation content of S62 and the priority side determined by the information processing device 2a to its own upper application 62. After that, the processes from S63 onward are repeated, and the priority side is reconsidered by each upper application 62.
【0112】また、クライアント即時型モデルを採用し
た場合は、例えば、図43に示すように、一方の情報処
理機器2において、図42のS61と同様に、自らのテ
ィップTと相手のティップTとを示す情報が上位アプリ
ケーション62に提示される(S81)。また、S82
において、当該上位アプリケーション62は、これらの
情報に基づいて、優先側を決定する。さらに、優先側が
自機器の場合(S83にて YESの場合)、S84におい
て、相手のティップTの内容を自らのティップTの内容
で置き換え、相手機器を優先する場合(S83にて No
の場合)は、S85において、相手のティップTの内容
で、自らのティップTの内容を置き換える。これによ
り、衝突したティップTの組は、内容が同一になる。In the case where the client immediate model is adopted, for example, as shown in FIG. 43, in one information processing device 2, as in S61 of FIG. Is displayed on the upper application 62 (S81). Also, S82
At, the upper application 62 determines the priority side based on these pieces of information. Further, when the priority side is the own device (YES in S83), the contents of the tip T of the partner is replaced with the contents of the tip T of the partner in S84, and the partner device is prioritized (No in S83).
In the case of), in S85, the content of the tip T of the opponent is replaced with the content of the tip T of the opponent. As a result, the content of the tip T sets that have collided becomes the same.
【0113】一方、遅延解決型モデルのうち、アプリ解
決型モデルを採用した場合は、例えば、図44に示すよ
うに、S91において、両ティップTの内容が一致する
か否かが判定される。両者が一致する場合は、前回の同
期処理にて、ティップTの衝突が検出され、かつ、両者
が独立に提案する解決案が一致した場合である。この場
合、S95において、両情報処理機器2a・2bのシン
ク・マネージャ61は、それぞれ、当該ティップTに対
応する自らのダーティ・ビットDの更新パラメタを維持
「p」に設定して処理を完了する。On the other hand, when the application resolution type model is adopted among the delay resolution type models, for example, as shown in FIG. 44, in S91, it is determined whether or not the contents of both tips T match. The case where both match is the case where the collision of the tip T is detected in the previous synchronization process, and the solutions independently proposed by both match. In this case, in S95, the sync manager 61 of each of the information processing devices 2a and 2b sets the update parameter of its own dirty bit D corresponding to the tip T to the maintenance "p" and completes the processing. .
【0114】これに対して、両ティップTの内容が一致
しない場合(上記S91にて、 Noの場合)、各シンク
・マネージャ61は、S92にて、ティップTの内容を
互いに交換した後、S93にて、例えば、通信を切断し
たり、他のティップTの衝突を判定したりして、当該テ
ィップTに関する同期処理を一度中断する。さらに、通
信が切断されている間、両情報処理機器2a・2bのシ
ンク・マネージャ61は、S94において、それぞれの
上位アプリケーション62の指示に応じ、相手のシンク
・マネージャ61とは独立に衝突解決処理して、処理を
完了する。On the other hand, if the contents of both tips T do not match (No in S91), each sync manager 61 exchanges the contents of tip T with each other in S92, and then S93. Then, for example, by disconnecting the communication or determining the collision of another tip T, the synchronization processing regarding the tip T is interrupted once. Further, while the communication is disconnected, the sync manager 61 of both the information processing devices 2a and 2b responds to the instruction of the respective upper application 62 in S94, independently of the sync manager 61 of the other party, to perform the conflict resolution process. Then, the process is completed.
【0115】以下では、図45に基づいて、上記S94
の処理をさらに詳細に説明する。すなわち、シンク・マ
ネージャ61は、S111において、上記S91にて、
相手から受け取ったティップTの内容と、自らのティッ
プTの内容とを、自らの上位アプリケーション62へ提
示し、上位アプリケーション62から、いずれを優先す
るかの指示を受け取る。In the following, based on FIG. 45, the above S94
The process will be described in more detail. That is, the sync manager 61, in S111, in S91,
The content of the tip T received from the other party and the content of the tip T of its own are presented to the host application 62 of its own, and an instruction of which is prioritized is received from the host application 62.
【0116】上位アプリケーション62が、相手機器の
ティップTの内容を優先すると判断した場合(上記S1
12にて、 YESの場合)、シンク・マネージャ61は、
S113にて、自らのティップTの内容を、相手のティ
ップTの内容で置き換え、S114にて、当該ティップ
Tに対応するダーティ・ビットDの更新パラメタを更新
「m」に設定して、処理を完了する。これとは逆に、自
機器のティップTの内容を優先すると判断した場合(上
記S112にて、 No の場合)、シンク・マネージャ6
1は、上記S113の処理を行わず、上記S114に
て、当該ティップTに対応するダーティ・ビットDの更
新パラメタを更新「m」に設定する。When the upper application 62 determines that the content of the tip T of the partner device is prioritized (S1 above).
If YES in 12), the sync manager 61
In S113, the content of the tip T of the user is replaced with the content of the tip T of the other party, and in S114, the update parameter of the dirty bit D corresponding to the tip T is set to the update "m", and the processing is executed. Complete. On the contrary, when it is determined that the content of the tip T of the own device is prioritized (No in S112 above), the sync manager 6
In step S114, the update parameter of the dirty bit D corresponding to the tip T is set to update "m" without performing the process of step S113.
【0117】ここで、両情報処理機器2a・2bが上記
S111ないしS114の処理を行うと、いずれを優先
側と判断したかに拘わらず、上記S114にて、ダーテ
ィ・ビットDの更新パラメタを更新「m」に設定するの
で、次回の同期処理の際には、一旦、衝突と判断され
る。ところが、双方の優先側が一致した場合には、双方
のティップTの内容が一致しているので、図44に示す
S91の判定が YESとなる。Here, when both the information processing devices 2a and 2b perform the processes of S111 to S114, the update parameter of the dirty bit D is updated in S114 regardless of which is determined to be the priority side. Since it is set to "m", it is once determined to be a collision in the next synchronization processing. However, if both priority sides match, the contents of both tips T match, so the determination in S91 shown in FIG. 44 is YES.
【0118】例えば、情報処理機器2aにて、相手機器
が優先側と判断され、かつ、情報処理機器2bでは、自
機器が優先側と判断された場合を例にすると、情報処理
機器2aでは、上記S112の判定が YESとなるので、
情報処理機器2aのティップTの内容は、情報処理機器
2bのティップTの内容で置き換えられる。また、情報
処理機器2bでは、上記S112の判定が No になるの
で、情報処理機器2bのティップTの内容は、変更され
ない。For example, when the information processing apparatus 2a determines that the partner apparatus is the priority side and the information processing apparatus 2b determines that the own apparatus is the priority side, the information processing apparatus 2a is Since the judgment in S112 is YES,
The content of the tip T of the information processing device 2a is replaced with the content of the tip T of the information processing device 2b. Further, in the information processing device 2b, since the determination in S112 is No, the content of the tip T of the information processing device 2b is not changed.
【0119】このように、双方の優先側が一致した場合
には、次回の同期処理の時点で双方のティップTの内容
が一致し、上記S91の判定が YESとなる。この結果、
両情報処理機器2a・2bにて、上記S95の処理が行
われ、当該ティップTに対応するダーティ・ビットDの
更新パラメタは、それぞれ、維持「p」となって、衝突
が完全に解決される。As described above, when both priority sides match, the contents of both tips T match at the time of the next synchronization processing, and the determination in S91 is YES. As a result,
The processing of S95 is performed in both the information processing devices 2a and 2b, and the update parameter of the dirty bit D corresponding to the tip T becomes the maintenance "p", and the collision is completely resolved. .
【0120】なお、双方の優先側が一致しなかった場合
は、次回の同期処理の時点で、双方のティップTの内容
が一致しない。したがって、次回の同期処理の際、再
度、S92以降の処理が繰り返され、それぞれの上位ア
プリケーション62に再度衝突解決が求められる。If the two priority sides do not match, the contents of both tips T do not match at the time of the next synchronization processing. Therefore, in the next synchronization process, the processes after S92 are repeated again, and the respective upper applications 62 are requested to resolve the conflict again.
【0121】また、クライアント遅延型モデルの場合、
上位アプリケーション62へ問い合わせる情報処理機器
2では、図46に示す処理が行われる。すなわち、S1
21において、シンク・マネージャ61は、相手のティ
ップTの内容を自らに転送して受け取る。さらに、S1
22において、当該ティップTに対応する相手のダーテ
ィ・ビットDの更新パラメタを維持「p」に変更する。In the case of the client delay type model,
The information processing device 2 that makes an inquiry to the higher-level application 62 performs the process shown in FIG. That is, S1
At 21, the sync manager 61 transfers and receives the contents of the tip T of the other party to itself. Furthermore, S1
At 22, the update parameter of the dirty bit D of the opponent corresponding to the tip T is changed to the maintenance “p”.
【0122】さらに、S123およびS124におい
て、上記S93および図45に示すS111と同様に、
同期処理の中断後に優先側を決定される。相手機器を優
先側と判断した場合(S125にて、 YESの場合)、シ
ンク・マネージャ61は、S126において、上記S1
21にて受け取った相手機器のティップTの内容で、自
らのティップTの内容を置き換える。さらに、S127
では、当該ティップTに対応する自らのダーティ・ビッ
トDの更新パラメタを維持「p」に設定して処理を完了
する。Further, in S123 and S124, similar to S93 and S111 shown in FIG. 45,
The priority side is determined after the interruption of the synchronization process. If it is determined that the partner device is the priority side (YES in S125), the sync manager 61 determines in S126 that the above S1.
The contents of the tip T of the partner device received at 21 are replaced with the contents of the tip T of the own device. Furthermore, S127
Then, the update parameter of its own dirty bit D corresponding to the tip T is set to the maintenance "p" and the processing is completed.
【0123】これとは逆に、自機器を優先側と判断した
場合(S125にて、 No の場合)、シンク・マネージ
ャ61は、当該ティップTに対応する自らのダーティ・
ビットDの更新パラメタを更新「m」に設定する(S1
28)。ここで、上記S122にて、相手機器では、当
該ティップTに対応するダーティ・ビットDの更新パラ
メタが維持「p」に設定されている。したがって、自機
器を優先側と判断した場合(更新パラメタが更新「m」
の場合)は、次回の同期処理の際、相手機器のティップ
Tの内容は、自機器のティップTの内容で置き換えられ
る。On the contrary, when the own device is determined to be the priority side (No in S125), the sync manager 61 determines that the dirty manager corresponding to the tip T concerned.
The update parameter of bit D is set to update "m" (S1
28). Here, in S122, the update parameter of the dirty bit D corresponding to the tip T is set to the maintenance “p” in the partner device. Therefore, when the own device is determined to be the priority side (the update parameter is updated "m")
In this case), the content of the tip T of the partner device is replaced with the content of the tip T of the own device in the next synchronization process.
【0124】上記の遅延解決モデルを採用した場合は、
ある同期処理にて、ティップTの衝突が検出された後、
次回以降の同期処理にて、ティップTの内容が一致され
るため、単一の同期処理中に、優先側を決定する必要が
なくなる。この結果、例えば、上位アプリケーション6
2が使用者の指示を受け取っている場合のように、シン
ク・マネージャ61が優先側を問い合わせてから回答が
得られるまでの時間が長い場合であっても、通信時間の
合計を一定の時間に抑えることができ、通信コストや消
費電力を削減できる。なお、上記では、両ティップTの
内容全てを提示する場合を例にして説明したが、優先側
を決定可能であれば、提示する情報は、衝突の発生や、
ティップTの内容の一部であっても同様の効果が得られ
る。When the above delay solution model is adopted,
After a tip T collision is detected in a certain synchronization process,
Since the contents of the tip T are matched in the synchronization process from the next time onward, it is not necessary to determine the priority side during a single synchronization process. As a result, for example, the upper application 6
Even when the sync manager 61 takes a long time from the inquiry to the priority side until the answer is obtained, as in the case where 2 receives the instruction from the user, the total communication time is set to a fixed time. Therefore, the communication cost and power consumption can be reduced. In the above description, the case where all the contents of both tips T are presented has been described as an example, but if the priority side can be determined, the information to be presented is the occurrence of a collision,
The same effect can be obtained even if the content of the tip T is part.
【0125】一方、自動解決型モデルは、衝突したティ
ップ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
の内容の一部であれば、同様の効果が得られる。On the other hand, the automatic solution type model is a sequential decision model for deciding the priority side for each set of the tips T that have collided,
At the start of the synchronization processing, one information processing device 2 can be roughly divided into a one-side selection model in which the information processing device 2 is set as the priority side in advance. An example of the former is a method of determining the priority side based on a part of the content of the tip T, such as the last update time. In this case, for example, as shown in FIG.
31, the sync manager 61 shown in FIG.
Acquires the last update time t1 of the tip T to be processed in its own information processing device 2. In addition, S13
In 2, the last update time t2 of the tip T of the opponent corresponding to the tip T is acquired. Further, in S133, the last update time t1 of the user is the last update time t2 of the other party.
Is newer than. Own last update time t
If 1 is newer, the contents of the tip T of the opponent are replaced with the contents of the tip T of the opponent in S134. On the contrary, if the last time t2 of the other party is newer,
In S135, the content of the tip T of the opponent is replaced with the content of the tip T of the opponent. As a result, the tip T updated later can be prioritized. For example, in FIG.
In the example shown in FIG. 8, the last update time of the tip T 8a of the information processing device 2a is newer than the tip T 8b of the information processing device 2b. Therefore, the contents of tip T 8a replace the contents of tip T 8b . The criterion for determining the priority side is not limited to the last update time, but the tip T
The same effect can be obtained if it is a part of the contents of.
【0126】また、自動解決型モデルのうち、一方選択
モデルは、例えば、図49に示すように、S141にお
いて、同期処理の開始までに定められた優先側が、自機
器であるか否かが判定される。自機器を優先する場合
は、S142にて、自らのティップTの内容で相手のテ
ィップTの内容が置き換えられ、相手機器を優先する場
合は、S143にて、相手のティップTの内容で、自ら
のティップTの内容が置き換えられる。これにより、予
め定められた側のティップTを優先できる。Further, in the one-selection model among the automatic solution type models, for example, as shown in FIG. 49, in S141, it is determined whether or not the priority side determined by the start of the synchronization process is the own device. To be done. If the own device is prioritized, the content of the tip T of the other party is replaced with the content of the tip T of the other party in S142, and if the other device is prioritized, the content of the tip T of the other party is used in S143. The contents of tip T of are replaced. Thereby, the tip T on the predetermined side can be prioritized.
【0127】本実施形態では、上記S141にて参照さ
れる優先側を、以下の3つのモデルのいずれかで決定し
ている。第1のモデルは、図13のS1に示す同期設定
の際に予め優先側を設定し、優先側情報として記憶して
おき、当該優先側情報に基づいて決定するモデルであ
る。なお、優先側の決定方法は、どんな方法でもよく、
例えば、使用者や上位アプリケーション62の指示に応
じて設定してもよい。In this embodiment, the priority side referred to in S141 is determined by one of the following three models. The first model is a model in which the priority side is set in advance during the synchronization setting shown in S1 of FIG. 13, is stored as priority side information, and is determined based on the priority side information. Any method can be used for the priority side.
For example, it may be set according to an instruction from the user or the upper application 62.
【0128】また、第2のモデルは、上記第1のモデル
のうち、共有設定を起動した側に基づいて、優先側を決
定するモデルであり、さらに、共有設定起動側優先モデ
ルと、共有設定受動側優先モデルとに分けられる。共有
設定起動側優先モデルは、例えば、情報処理機器2…か
らなるデータベースシステム1がクライアント/サーバ
型のクライアント側を常に優先したい場合などに好適に
用いられ、同期処理の起動側やティップTの内容などに
拘わらず、常に、共有設定起動側を優先する。一方、共
有設定受動側モデルは、例えば、上記データベースシス
テム1のサーバ側を常に優先したい場合などに好適に用
いられ、共有設定受動側を常に優先する。いずれの場合
であっても、共有設定の起動と、優先側の特定とを同じ
操作で指定できるので、それぞれを別の操作で指定する
場合に比べて操作を簡略化できる。The second model is a model of the first model that determines the priority side based on the side that has activated the sharing setting. It is divided into the passive side priority model. The sharing setting starting side priority model is preferably used, for example, when the database system 1 including the information processing devices 2 ... Always wants to give priority to the client / server type client side, and the starting side of the synchronization process and the contents of the tip T. Regardless of the above, the sharing setting activation side is always prioritized. On the other hand, the shared setting passive side model is preferably used, for example, when the server side of the database system 1 is always desired to be prioritized, and the shared setting passive side model is always prioritized. In either case, since the activation of the sharing setting and the specification of the priority side can be designated by the same operation, the operation can be simplified as compared with the case where the respective operations are designated by different operations.
【0129】さらに、第3のモデルは、図13のS3に
おいて、同期処理を起動する側に基づいて、優先側を決
定するモデルであり、同期処理起動側優先モデルと、同
期処理受動側優先モデルとに分けられる。これらのモデ
ルは、例えば、各情報処理機器2が対等な場合におい
て、前者は、自機器を優先したい場合に、後者は、相手
機器を優先したい場合に用いられる。いずれの場合であ
っても、同期処理の起動と、優先側の特定とを同じ操作
で指定できるので、それぞれを別の操作で指定する場合
に比べて操作を簡略化できる。さらに、各同期処理の時
点で、いずれの情報処理機器2が同期処理を起動するか
によって、優先側を変更できる。Further, the third model is a model for deciding the priority side on the basis of the side activating the synchronization processing in S3 of FIG. 13, and includes the synchronization processing activation side priority model and the synchronization processing passive side priority model. Can be divided into These models are used, for example, when the information processing devices 2 are equal and the former wants to prioritize its own device, and the latter when it wants to prioritize the other device. In either case, since the activation of the synchronization processing and the identification of the priority side can be designated by the same operation, the operation can be simplified as compared with the case where the respective operations are designated by different operations. Furthermore, the priority side can be changed depending on which information processing device 2 starts the synchronization process at the time of each synchronization process.
【0130】ところで、上記では、1つの情報処理機器
2のみでティップTが変更された場合は、当該変更を他
の情報処理機器2へ反映していたが、これに限るもので
はない。例えば、図50に示すように、情報処理機器2
a(優先側)の共有フクロSFa の内容に合わせて、非
優先側となる情報処理機器2bにおいて、共有フクロS
Fb の内容を更新してもよい。この場合、同期処理は、
ダウンロード(アップロード)となる。なお、情報処理
機器2がダウンロードを行うか否かを選択可能な場合、
当該選択は、優先側決定のモデルと同様に、図13のS
1に示す共有設定時のオプションとして指定する方がよ
い。By the way, in the above, when the tip T is changed by only one information processing device 2, the change is reflected in the other information processing device 2, but the present invention is not limited to this. For example, as shown in FIG. 50, the information processing device 2
In accordance with the contents of the shared bag SF a on the priority side (a), the shared bag S on the information processing device 2b on the non-priority side is shared.
The contents of F b may be updated. In this case, the synchronization process is
It becomes a download (upload). If the information processing device 2 can select whether or not to download,
The selection is performed in the same manner as the model of the priority side determination in S of FIG.
It is better to specify it as an option at the time of sharing setting shown in 1.
【0131】具体的には、図51に示すように、S15
1において、優先側のダーティ・ビット・リストLD
は、図26に示すS51と同様に圧縮される。さらに、
S152において、非優先側で、非同期期間中に追加さ
れたティップTを共有フクロSFから削除する。また、
S153では、優先側で追加されたティップTに対応す
るダーティ・ビットDが、S52と同様に、非優先側の
ダーティ・ビット・リストLDに追加される。Specifically, as shown in FIG. 51, S15
In 1, the dirty bit list LD on the priority side
Is compressed similarly to S51 shown in FIG. further,
In S152, the tip T added during the asynchronous period is deleted from the shared bag SF on the non-priority side. Also,
In S153, the dirty bit D corresponding to the tip T added on the priority side is added to the dirty bit list LD on the non-priority side, as in S52.
【0132】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」に
設定する。In S154, the synchronization processing unit 51 shown in FIG. 1 makes an internal / external decision based on the dirty bit D on the priority side, and sets the movement parameter of the dirty bit D to "X" in both dirty bit lists LD. Or “K”, and the tip T is moved according to the inside / outside determination. That is, when the movement parameter of the dirty bit D on the priority side is "X" or "I", the inside of the shared bag SF is shown. Therefore, the tip T is left in the shared bag SF and the movement parameter of both dirty bits D corresponding to the tip T is set to “X”. Also, the dirty bit D on the priority side
If the movement parameter of "K" is "K" or "O", it means that the tip T is outside the shared hat SF and the dirty bit D corresponding to the tip T is moved. The movement parameter of is set to "K".
【0133】さらに、S155において、双方のダーテ
ィ・ビットDの更新パラメタに基づいて、優先側のティ
ップTの内容で、非優先側のティップTの内容を置き換
える。具体的には、優先側の更新パラメタが更新「m」
の場合、当該ティップTの内容が非優先側へ送出され
る。また、優先側の更新パラメタが維持「p」の場合で
あっても、非優先側の更新パラメタが更新「m」であれ
ば、同様に、当該ティップTの内容で非優先側を置き換
える。なお、双方の更新パラメタが維持「p」の場合
は、ティップTの内容を転送しない。Further, in S155, the contents of the tip T on the non-priority side are replaced with the contents of the tip T on the priority side based on the update parameters of both dirty bits D. Specifically, the update parameter on the priority side is updated "m".
In the case of, the content of the tip T is sent to the non-priority side. Further, even when the update parameter on the priority side is the maintenance “p”, if the update parameter on the non-priority side is the update “m”, the content of the tip T is similarly replaced on the non-priority side. If both update parameters are maintained “p”, the contents of tip T are not transferred.
【0134】上記S155にて、ティップTの内容同期
が終了すると、S156において、図26のS56と同
様に、双方のダーティ・ビット・リストLDが圧縮され
る。この結果、同期処理の開始時点までに、予め定めら
れた優先側の共有フクロSFの内容に合わせて、非優先
側の共有フクロSFの内容を更新できる。When the content synchronization of the tip T is completed in S155, both dirty bit lists LD are compressed in S156, as in S56 of FIG. As a result, by the time when the synchronization process is started, the contents of the non-priority side shared bag SF can be updated in accordance with the predetermined contents of the priority side shared bag SF.
【0135】また、共有設定処理部52にて設定可能な
オプションの一つとして、図52に示すように、衝突し
たティップTを互いに別のティップTと見なして、自ら
のティップTを相手の共有フクロSFへ追加するモデル
も採用できる。ダウンロードの要否と同様に、当該モデ
ルを採用するか否かも、共有設定時のオプションとして
指定される。Further, as one of the options that can be set by the sharing setting processing section 52, as shown in FIG. 52, the tips T that have collided are regarded as different tips T, and their own tips T are shared by the other party. A model added to the bag SF can also be adopted. As with the necessity of downloading, whether or not to adopt the model is also specified as an option at the time of sharing setting.
【0136】具体的には、図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の内容全てを保存できる。[0136] Specifically, as shown in S161 of FIG. 53, when the tip T 4a-T 4b collide in dirty bit list LD b partner, its dirty
The dirty bit D in the bit list LD a
A dirty bit D 4ab having a lower priority than its own dirty bit D 4a , such as “Op”, is newly created in the same order as that of 4a . Similarly, in S162, in its own dirty bit list LD a ,
Create a new dirty bit D 4ba in the same rank as the opponent's dirty bit D 4b . Further, based on these dirty bits D, in S163, the tip T 4a
The contents of is transmitted to the information processing apparatus 2b, a new tip T 4ab corresponding to the tips T 4a is added to the shared bag SF b. Further, in S164, a new tip T 4ba corresponding to the tip T 4b is added to the shared bag SF a . Thereby, when the tip T collides, all the changed contents of the tip T can be saved.
【0137】なお、図52および図53では、ティップ
Tの衝突が発生した場合のみ、コピーする例について説
明したが、他の選択肢として、図54に示すように、対
応するティップTの少なくとも一方が変更された場合に
コピーするモデルも採用できる。この場合は、変更され
ていないティップTの組は、何ら変更されないが、ティ
ップTの組のうち、少なくとも1つが変更されると、テ
ィップTをコピーする。これにより、一方のみが変更さ
れたティップT2a・T2b、T3a・T3bについてもコピー
が作成され、変更されたティップTの内容全てを保存で
きる。Note that, in FIGS. 52 and 53, an example in which copying is performed only when a collision of the tip T occurs has been described. However, as another option, as shown in FIG. 54, at least one of the corresponding tips T is set. A model that copies when it is changed can also be adopted. In this case, the set of tips T that has not been changed is not changed at all, but the tip T is copied when at least one of the sets of tips T is changed. As a result, a copy is also created for the tips T 2a , T 2b and T 3a , T 3b , only one of which has been changed, and the entire contents of the changed tip T can be saved.
【0138】図13のS2に示す非同期期間中の処理
と、上述のS3に示す同期処理とが交互に繰り返され、
それ以降は、同期処理が不要になると、S4において、
共有設定が解除される。共有解除の一例として、情報処
理機器2a・2b双方にフクロFおよびティップTが残
留するモデル(ティップ複写型モデル)について説明す
ると、図55に示すように、一方の情報処理機器2aに
設けられた共有解除処理部53は、S171において、
他方の情報処理機器2bの共有解除処理部53へ共有解
除要求を送出する。当該共有解除要求には、例えば、自
らのフクロIDと相手のIDとの組み合わせなど、自ら
の共有フクロSFを示す情報と、当該共有フクロSFに
対応する相手の共有フクロSFを示す情報とが含まれて
いる。The processing during the asynchronous period shown in S2 of FIG. 13 and the synchronous processing shown in S3 are alternately repeated.
After that, when the synchronization process becomes unnecessary, in S4,
Sharing settings are canceled. As an example of cancellation of sharing, a model in which the bag F and the tip T remain on both information processing devices 2a and 2b (tip copying type model) will be described. As shown in FIG. 55, the model is provided on one of the information processing devices 2a. The sharing cancellation processing unit 53, in S171,
The sharing cancellation request is sent to the sharing cancellation processing unit 53 of the other information processing device 2b. The sharing cancellation request includes, for example, information indicating the shared pocket SF of the partner such as a combination of the own pocket ID and the ID of the partner, and information indicating the shared pocket SF of the partner corresponding to the shared balloon SF. Has been.
【0139】さらに、共有解除起動側の共有解除処理部
53は、S172において、例えば、上記組み合わせに
応じたダーティ・ビット・リストLDおよびシンク・リ
ミットLim、並びに、共有相手リストLSに登録され
た相手のフクロIDなど、共有設定時に設けられた共有
情報を削除する。一方、共有解除受動側となる情報処理
機器2bでは、受け取った共有解除要求に基づいて、共
有解除処理部53が、自らに格納された上記共有情報を
抹消する(S173、S174)。なお、図55では、
共有相手の認証を図示していないが、共有設定と同様
に、共有解除受動側が共有解除要求の内容に応じて、共
有解除するか否かを決定してもよい。Further, in S172, the sharing cancellation processing unit 53 on the sharing cancellation starting side, for example, the dirty bit list LD and the sync limit Lim corresponding to the above combination, and the partner registered in the sharing partner list LS. The shared information provided at the time of sharing setting, such as the bag ID, is deleted. On the other hand, in the information processing device 2b on the sharing cancellation passive side, the sharing cancellation processing unit 53 deletes the sharing information stored therein based on the received sharing cancellation request (S173, S174). In addition, in FIG. 55,
Although the authentication of the sharing partner is not shown, the sharing cancellation passive side may determine whether or not to cancel the sharing in accordance with the content of the sharing cancellation request, similarly to the sharing setting.
【0140】これにより、図56に示すように、両情報
処理機器2a・2b間で共有されていた共有フクロSF
a ・SFb は、それぞれ非共有のフクロFa ・Fb とな
る。上記ティップ複写型モデルの共有解除では、共有解
除が指示された場合、両共有フクロSFa ・SFb 間の
共有設定が解除されるだけであり、それぞれに含まれて
いるティップTは、双方のフクロFa ・Fb に残留す
る。As a result, as shown in FIG. 56, the shared bag SF shared between the two information processing devices 2a and 2b.
The a · SF b is the non-shared bag F a · F b . In the sharing cancellation of the tip copy type model, when the sharing cancellation is instructed, the sharing setting between both sharing bags SF a and SF b is only canceled, and the tip T included in each of them is set to the both sides. Remains on the seams F a and F b .
【0141】なお、共有解除のモデルは、ティップ複写
型モデルに限るものではなく、種々のモデルを適用でき
る。例えば、共有設定が解除された場合、図57に示す
ように、一方のフクロFにのみ、ティップを残し、他方
のフクロFでは、ティップを削除するモデル(ティップ
偏在型モデル)を採用してもよいし、図58に示すよう
に、ティップ消滅型モデル、すなわち、双方のフクロF
からティップTを削除するモデルを採用してもよい。さ
らに、ティップ複写型モデルやティップ偏在型モデルの
場合は、共有解除が指示されたとき、同期処理した後
で、共有解除することもできる。この場合は、特に同期
処理を指示しなくても、共有解除の時点で、ティップT
の整合性を保つことができる。また、ティップ偏在型モ
デル、および、ティップ消滅型モデルのように、ティッ
プTを除去する場合、図59および図60に示すよう
に、ティップTの除去により、空になるフクロFを削除
してもよい。いずれの場合であっても、情報処理機器2
が共有解除のモデルを複数選択可能な場合は、上述の優
先側決定のモデル選択と同様に、図13のS1に示す共
有設定時のオプションとして、共有解除のモデルを設定
する方がよい。The sharing cancellation model is not limited to the tip copy type model, and various models can be applied. For example, when the sharing setting is canceled, as shown in FIG. 57, a model in which a tip is left only in one of the bags F and a tip is deleted in the other bag F (a model in which the tip is unevenly distributed) is adopted. As shown in FIG. 58, the tip extinction type model, that is, both of the bag F
A model in which the tip T is deleted may be adopted. Further, in the case of the tip copy type model or the tip uneven distribution type model, when sharing cancellation is instructed, it is possible to perform sharing processing and then cancel sharing. In this case, even if the synchronization process is not instructed, the tip T
The integrity of can be maintained. Further, in the case of removing the tip T as in the tip uneven distribution model and the tip disappearance model, as shown in FIG. 59 and FIG. Good. In any case, the information processing device 2
If a plurality of sharing cancellation models can be selected, it is better to set the sharing cancellation model as an option at the time of sharing setting shown in S1 of FIG. 13, as in the model selection for determining the priority side.
【0142】ところで、上記では、S51、すなわち、
図13のS3に示す同期処理の際に、シンク・リミット
Limより後のダーティ・ビットDを圧縮したが、この
処理は、自らの情報処理機器2に格納されているダーテ
ィ・ビットDのみを参照しているため、S2の非同期期
間中に実施できる。By the way, in the above, S51, that is,
During the synchronization processing shown in S3 of FIG. 13, the dirty bit D after the sync limit Lim was compressed, but this processing only refers to the dirty bit D stored in its own information processing device 2. Therefore, it can be performed during the asynchronous period of S2.
【0143】この場合は、ティップ削除処理部43(図
1参照)は、ティップTの排出が指示された場合、図2
1に代えて、図61に示す処理を行う。すなわち、S1
81において、当該ティップTに対応するダーティ・ビ
ットDが、シンク・リミットLimより後か否かが判定
され、後の場合は、S182において、ダーティ・ビッ
トDがダーティ・ビット・リストLDから削除される。
一方、後ではない場合は、S183において、ダーティ
・ビットDの移動パラメタが「O」に変更される。この
結果、同期処理時に上記S51の処理が不要になり、所
要時間を短縮できる。In this case, the tip deletion processing section 43 (see FIG. 1) is operated as shown in FIG.
Instead of 1, the process shown in FIG. 61 is performed. That is, S1
At 81, it is determined whether or not the dirty bit D corresponding to the tip T is after the sync limit Lim. If it is, then at S182, the dirty bit D is deleted from the dirty bit list LD. It
On the other hand, if it is not after, the movement parameter of the dirty bit D is changed to "O" in S183. As a result, the processing of S51 is not required during the synchronization processing, and the required time can be shortened.
【0144】また、非同期期間中に圧縮する場合は、例
えば、誤操作でティップTを挿入したときのように、共
有フクロSF内に存在する期間が極めて短いティップT
に関連するダーティ・ビットDを、ダーティ・ビット・
リストLDから即座に削除できる。この結果、ダーティ
・ビット・リストLDの長さを抑制でき、記憶に必要な
メモリ量を削減できる。When compression is performed during the asynchronous period, the tip T having a very short period existing in the shared bag SF, for example, when the tip T is inserted by an erroneous operation, is used.
Dirty Bit D associated with
It can be deleted from the list LD immediately. As a result, the length of the dirty bit list LD can be suppressed and the amount of memory required for storage can be reduced.
【0145】図61では、ティップTの排出時にダーテ
ィ・ビット・リストLDを圧縮する場合について説明し
たが、非同期期間中の任意の時点で圧縮することもでき
る。この場合は、例えば、上位アプリケーションの指示
などによって、シンク・リミットLimより後ろに位置
し、かつ、移動パラメタが排出「O」であるダーティ・
ビットDが、ダーティ・ビット・リストLDから削除さ
れる。これにより、1回の処理で複数のティップTのダ
ーティ・ビットDをダーティ・ビット・リストLDから
削除できる。In FIG. 61, the case where the dirty bit list LD is compressed when the tip T is discharged has been described, but the dirty bit list LD may be compressed at any time during the asynchronous period. In this case, for example, due to an instruction from a higher-level application or the like, a dirty file that is located after the sync limit Lim and has a movement parameter of “O” is ejected.
Bit D is deleted from the dirty bit list LD. As a result, the dirty bits D of a plurality of tips T can be deleted from the dirty bit list LD by one processing.
【0146】〔第2の実施形態〕
ところで、第1の実施形態では、データベースシステム
1を構成する各情報処理機器2…が、データベースDB
の部分集合となるフクロFを作成可能で、それぞれが対
等の場合を例にして説明した。これに対して、本実施形
態では、図62に示すように、データベースシステム1
1に、部分集合を設定できない情報処理機器(データベ
ース管理装置)12が含まれる場合について説明する。Second Embodiment By the way, in the first embodiment, each information processing device 2 ...
The description has been given by taking as an example the case in which it is possible to create a bag F that is a subset of, and each is equal. On the other hand, in the present embodiment, as shown in FIG.
A case where 1 includes an information processing device (database management device) 12 that cannot set a subset will be described.
【0147】上記データベースシステム11は、例え
ば、クライアント−サーバ型のデータベースシステムな
ど、互いに対等ではない情報処理機器から構成される場
合に好適に使用される。上記情報処理機器2は、例え
ば、サーバとして動作するデスクトップ型のコンピュー
タなどとして実現され、上記情報処理機器12は、例え
ば、携帯情報端末など、格納可能なデータベースDBの
規模が情報処理機器2よりも小さい機器にて実現され
る。The database system 11 is preferably used when it is composed of information processing devices that are not equal to each other, such as a client-server type database system. The information processing device 2 is realized, for example, as a desktop computer that operates as a server, and the information processing device 12 has a database DB that can be stored in a larger scale than the information processing device 2, such as a mobile information terminal. Realized with a small device.
【0148】当該情報処理機器12は、図1に示す情報
処理機器2と略同一の構造であるが、データベース管理
部23は、図63に示すように、1つのデータベースD
Bを1つのフクロFとして格納しており、図62に示す
ように、情報処理機器12のデータベースDB全体とな
るフクロFが、情報処理機器2のフクロFと共有され
る。The information processing device 12 has substantially the same structure as the information processing device 2 shown in FIG. 1, but the database management unit 23, as shown in FIG.
B is stored as one bag F, and as shown in FIG. 62, the bag F, which is the entire database DB of the information processing device 12, is shared with the bag F of the information processing device 2.
【0149】上記構成のデータベースシステム11であ
っても、同期処理の際、ティップTの内容伝送に先立っ
て、情報処理機器2・12間でダーティ・ビットDが比
較され、内容伝送の要否と伝送方向とが決定される。こ
こで、情報処理機器2では、第1の実施形態と同様に、
ダーティ・ビットDに基づいて、移動のみが行われたテ
ィップTを判別できる。この結果、当該ティップTの内
容伝送を確実に抑止でき、同期処理時に伝送されるデー
タ量を削減できる。Even in the database system 11 having the above-described configuration, the dirty bit D is compared between the information processing devices 2 and 12 before the content transmission of the tip T during the synchronization processing, and it is determined whether the content transmission is necessary or not. The transmission direction is determined. Here, in the information processing device 2, as in the first embodiment,
Based on the dirty bit D, the tip T that has only been moved can be determined. As a result, the content transmission of the tip T can be reliably suppressed, and the amount of data transmitted during the synchronization processing can be reduced.
【0150】さらに、本実施形態でも、両ダーティ・ビ
ット・リストLDにおけるダーティ・ビットDの順位
で、ティップTの対応関係が記憶されているので、より
少ないメモリ量でティップTの状態を把握できると共
に、同期処理時に通信されるデータ量を削減できる。Further, also in this embodiment, since the correspondence relation of the tips T is stored in the order of the dirty bits D in both the dirty bit lists LD, the state of the tips T can be grasped with a smaller memory amount. At the same time, it is possible to reduce the amount of data communicated during the synchronization processing.
【0151】上記構成のデータベースシステム11の使
用例としては、例えば、会社などに設置され、サーバと
なる情報処理機器2で、全営業マンに必要なアドレス情
報を一括管理し、携帯情報端末となる情報処理機器12
が各営業マンそれぞれに配付される場合が挙げられる。
ここで、各営業マン毎に必要なアドレス情報の組み合わ
せは、互いに異なっており、かつ、複数の営業マンに共
通のアドレス情報があることが多い。したがって、情報
処理機器2にて、データベースDBに全アドレス情報を
格納し、各営業マンに必要なアドレス情報の組み合わせ
をフクロFとして管理することで、情報処理機器2は、
例えば、各営業マン毎のアドレス情報を別のデータベー
スDBに格納する場合と異なり、各アドレス情報を整合
性を損なうことなく管理できる。また、情報処理機器1
2は、情報処理機器2の1つのフクロFを格納できれば
よいので、アドレス情報全体を記憶する場合よりも記憶
容量を削減できる。As an example of using the database system 11 having the above configuration, for example, the information processing device 2 installed in a company or the like and serving as a server collectively manages the address information required by all the sales persons, and becomes a portable information terminal. Information processing equipment 12
Can be given to each salesman.
Here, the combination of address information required for each sales person is different from each other, and there are many cases in which a plurality of sales persons have common address information. Therefore, in the information processing device 2, by storing all the address information in the database DB and managing the combination of the address information required for each sales person as the bag F, the information processing device 2 can
For example, unlike the case where the address information for each sales person is stored in another database DB, each address information can be managed without impairing the consistency. Also, the information processing device 1
2 only needs to be able to store one bag F of the information processing device 2, so that the storage capacity can be reduced compared to the case where the entire address information is stored.
【0152】なお、上記第1および第2の実施形態で
は、ティップTが個々の住所を示す場合を例にして説明
したが、当然ながら、ティップTが示すデータは、デー
タベースの用途に応じて自由に設定できる。また、各テ
ィップTが同じ種類の属性A…を有し、共有相手が同じ
ティップTが、共有フクロSFに集められる場合を例に
して説明したが、これに限るものではない。例えば、共
有相手とアプリケーションとの組み合わせ毎に共有フク
ロSFを設けてもよい。アドレス帳、電子帳およびメイ
ルアドレスデータベースのアプリケーションが存在する
場合を例にして説明すると、アドレス帳で使用されるテ
ィップTは、名前、電話番号、メールアドレス、住所お
よび勤務先などを示す属性を備えている。また、電話帳
で使用されるティップTは、名前と電話番号とを示す属
性を備え、メイルアドレスデータベースのティップT
は、名前とメールアドレスとを示す属性を備えている。
さらに、各ティップTは、使用アプリケーションを示す
フクロFに集められる。例えば、電話帳で使用されるテ
ィップTは、アドレス帳を示すフクロFにも所属する。
この場合、アドレス帳全体を新しくしたい場合は、アド
レス帳を示すフクロFに対して共有設定すればよいし、
電話帳のフクロFのみを変更したい場合は、当該フクロ
Fに対し共有設定して同期処理すればよい。このよう
に、使用するアプリケーション毎にフクロFを割り当て
れば、用途毎に同期処理できる。In the first and second embodiments described above, the case where the tip T indicates an individual address has been described as an example, but the data indicated by the tip T is naturally free depending on the use of the database. Can be set to. Further, the case has been described as an example where the tips T have the same type of attribute A ... And the tips T having the same sharing partner are collected in the shared bag SF, but the present invention is not limited to this. For example, the shared bag SF may be provided for each combination of the sharing partner and the application. Taking the case where there are applications of address book, electronic book and mail address database as an example, the tip T used in the address book has attributes indicating a name, a telephone number, a mail address, an address and a place of work. ing. The tip T used in the telephone directory has attributes indicating a name and a telephone number, and the tip T of the mail address database is
Has attributes indicating a name and a mail address.
Further, each tip T is collected in the bag F indicating the application used. For example, the tip T used in the telephone book also belongs to the bag F, which indicates the address book.
In this case, if you want to update the entire address book, you can set sharing for the bag F that shows the address book.
When it is desired to change only the bag F of the phone book, the sharing may be set for the bag F and synchronization processing may be performed. In this way, if the bag F is assigned to each application to be used, synchronous processing can be performed for each application.
【0153】また、上記第1および第2の実施形態で
は、対応関係をダーティ・ビットDの順序として記憶し
ているが、これに限るものではない。例えば、ティップ
IDなど、相手のティップTを示す情報で、対応するテ
ィップTを特定してもよい。ただし、この場合は、同期
処理時に、ダーティ・ビットDだけではなく、相手のテ
ィップIDを送出する必要があり、通信されるデータ量
が増大する虞れがある。In the first and second embodiments, the correspondence is stored as the order of dirty bits D, but the invention is not limited to this. For example, the corresponding tip T may be specified by information indicating the tip T of the other party such as the tip ID. However, in this case, it is necessary to send not only the dirty bit D but also the tip ID of the other party at the time of synchronization processing, which may increase the amount of data to be communicated.
【0154】さらに、相手のティップIDは、相手のデ
ータベースDBの規模が増大するに従って、データ量が
多くなる。この結果、特に、第2の実施形態のように、
情報処理機器2と情報処理機器12とが対応ではない場
合、メモリ量の削減が強く要求される情報処理機器12
において、ダーティ・ビットDの順序で特定するより
も、対応関係の記憶に必要なメモリ量が多くなってしま
う。Furthermore, the data amount of the tip ID of the opponent increases as the scale of the database DB of the opponent increases. As a result, in particular, as in the second embodiment,
If the information processing device 2 and the information processing device 12 are not compatible, the information processing device 12 is strongly requested to reduce the memory amount.
In the above, the amount of memory required to store the correspondence becomes larger than that specified in the order of the dirty bit D.
【0155】これに対して、上記第1および第2の実施
形態では、ティップTの対応関係は、自らのティップT
に関連する情報の順序で格納さている。したがって、相
手のデータベースDBの規模やティップTの格納方法に
拘わらず、対応関係を格納できる。この結果、相手のテ
ィップTを示す情報で特定する場合よりも、対応関係の
記憶に必要なメモリ量を削減できると共に、同期処理の
際に伝送されるデータ量を削減できる。On the other hand, in the first and second embodiments, the correspondence relationship between the tips T is that the tips T themselves.
Are stored in the order of information related to. Therefore, the correspondence can be stored regardless of the scale of the partner database DB and the storage method of the tip T. As a result, it is possible to reduce the amount of memory required to store the correspondence relationship and to reduce the amount of data transmitted during the synchronization processing, as compared with the case where the information indicating the tip T of the other party is specified.
【0156】また、上記第1および第2の実施形態で
は、ダーティ・ビットDの順序が、ダーティ・ビット・
リストLDとして格納されているが、これに限るもので
はない。例えば、ダーティ・ビット・リストLDとは別
に順序を示すリストを設けてもよいし、各ティップT毎
に、ダーティ・ビットDと、順位を示す情報とを格納す
ることもできる。ただし、ダーティ・ビットDと順序と
は、同じティップTに対応する場合であっても、自らの
共有フクロSFと相手の共有フクロSFとの組み合わせ
毎に設けられ、共有相手の数は、データベースDBの作
成時点では予測できないことが多い。したがって、ダー
ティ・ビットDと順序とは、ティップTの内容自体とは
別に設ける方がよい。それゆえ、それぞれを別に記憶す
ると、対応するティップTを示す情報が別に必要にな
り、必要なメモリ量が増大する。したがって、ダーティ
・ビットDを格納する順序として、対応関係を格納する
ことで、必要なメモリ量をさらに削減できる。In the first and second embodiments, the order of the dirty bits D is the dirty bit.
Although stored as a list LD, it is not limited to this. For example, a list indicating the order may be provided separately from the dirty bit list LD, and the dirty bit D and information indicating the order may be stored for each tip T. However, even if the dirty bit D and the order correspond to the same tip T, the dirty bit D and the order are provided for each combination of the own shared bag SF and the partner shared bag SF, and the number of shared partners is the database DB. Often unpredictable at the time of creation. Therefore, it is better to provide the dirty bit D and the order separately from the content itself of the tip T. Therefore, if each of them is stored separately, information indicating the corresponding tip T is needed separately, and the required memory amount increases. Therefore, by storing the correspondence relationship as the order of storing the dirty bit D, the required memory amount can be further reduced.
【0157】さらに、上記各実施形態では、自らの共有
フクロSFと相手の共有フクロSFとの組み合わせ毎
に、ダーティ・ビットDを設けているが、非同期期間が
同一であれば、複数の共有フクロSF間で、ダーティ・
ビット・リストLD(ダーティ・ビットD)を共用でき
る。Further, in each of the above-mentioned embodiments, the dirty bit D is provided for each combination of the own shared bag SF and the shared bag SF of the other party, but if the asynchronous periods are the same, a plurality of shared bag SFs are provided. Dirty between SF
The bit list LD (dirty bit D) can be shared.
【0158】なお、上記各実施形態では、例えば、各情
報処理機器2(12)がシンクロナイズ処理部51を備
えている場合について説明したが、シンクロナイズ処理
部51や共有設定処理部52など、各情報処理機器2
(12)が通信可能な期間のみに動作する部材は、いず
れか一方に設けられていればよい。また、例えば、シン
クロナイズ処理部51のうち、ティップTの衝突を検出
する部分と、優先側を決定する部分とが異なる情報処理
機器2(12)に配されていてもよい。通信可能な時点
で、上記各部材を形成できれば、同様の効果が得られ
る。In each of the above embodiments, for example, the case where each information processing device 2 (12) is provided with the synchronization processing section 51 has been described. However, each information such as the synchronization processing section 51 and the sharing setting processing section 52 is described. Processing equipment 2
The member that operates only during the period (12) in which communication is possible may be provided in either one. Further, for example, in the synchronization processing unit 51, a portion that detects a collision of the tip T and a portion that determines the priority side may be arranged in different information processing devices 2 (12). If the above members can be formed at the time when communication is possible, the same effect can be obtained.
【0159】[0159]
【発明の効果】請求項1の発明に係るデータベース管理
装置は、以上のように、相手のデータベース内のデータ
に対応する自らのデータ毎に、非同期期間中におけるデ
ータの変更を示す状態情報が記憶される状態情報記憶手
段と、同期処理の際、互いに対応するデータからなる組
について、それぞれの状態情報に基づき、当該データ組
で変更されたデータが複数であるか否かを検出する衝突
検出手段と、複数の場合、変更された複数のデータの内
容全てを伝送する前に、いずれのデータを優先するかを
決定して、上記同期処理手段に、優先側のデータの内容
で非優先側のデータの内容を置き換えさせる優先側決定
手段と、自らの優先側決定手段が決定した優先側と、相
手から指定された優先側との不一致を検出する検出手段
とを備えている構成である。As described above, the database management apparatus according to the first aspect of the present invention stores the status information indicating the data change during the asynchronous period for each of its own data corresponding to the data in the other party's database. State information storage means and a collision detection means for detecting whether or not there is a plurality of changed data in the data set, based on the respective state information, for a set of data corresponding to each other during synchronization processing. In the case of a plurality of data, before transmitting all the contents of the changed plurality of data, it is determined which data has priority, and the synchronization processing means determines the contents of the data on the priority side of the non-priority side. The priority determining means that replaces the contents of the data and the priority determining means determined by its own priority determining means
Detection means to detect inconsistency with the priority side specified by hand
A configuration that includes and.
【0160】上記構成では、状態情報など、データの内
容に比べて少ないデータ量で、データの衝突を検出でき
ると共に、データの内容全体を伝送する前に、優先する
データが決定され、当該データの内容で、非優先側のデ
ータの内容が置き換えられる。それゆえ、データが衝突
した場合であっても、各データベースの規模拡大を防止
できる。この結果、データベースの格納に必要なメモリ
量と、同期処理の際に伝送および処理されるデータ量と
を削減できるという効果を奏する。In the above configuration, the data collision such as the status information can be detected with a smaller amount of data than the content of the data, and the prioritized data is determined before transmitting the entire content of the data, and The contents replace the contents of the non-priority side data. Therefore, even if the data collide, it is possible to prevent the scale expansion of each database. As a result, it is possible to reduce the amount of memory required to store the database and the amount of data transmitted and processed during the synchronization process.
【0161】さらに、検出手段は、各優先側の不一致を
検出するので、不所望なデータ内容の消失を防止でき
る。それゆえ、例えば、各データベース管理装置へ優先
側の再決定を促したり、優先側と決定されたデータを保
存するなど適切な処理が可能になるという効果を奏す
る。 Further, the detecting means detects the disagreement on the priority side.
Since it detects, you can prevent the loss of undesired data contents
It Therefore, for example, priority is given to each database management device.
To encourage the re-determination of the
It has the effect of enabling appropriate processing such as existing
It
【0162】請求項2の発明に係るデータベース管理装
置は、以上のように、請求項1記載の発明の構成におい
て、上記優先側決定手段は、上記変更された複数のデー
タの内容のうち、それぞれの一部分のみを比較して、優
先側を決定する構成である。As described above, in the database management apparatus according to the second aspect of the present invention, in the configuration of the first aspect of the present invention, the priority side determining means is one of the plurality of changed data contents. In this configuration, only a part of the above is compared to determine the priority side.
【0163】それゆえ、データの内容全てを伝送する場
合に比べて、同期処理の際に伝送および処理されるデー
タ量とを削減できるという効果を奏する。Therefore, it is possible to reduce the amount of data to be transmitted and processed at the time of synchronous processing, as compared with the case of transmitting the entire contents of data.
【0164】請求項3の発明に係るデータベース管理装
置は、以上のように、請求項1記載の発明の構成におい
て、上記優先側決定手段は、変更されたデータが複数の
場合、いずれのデータを優先するかを、使用者または上
位のアプリケーションへ問い合わせる構成である。As described above, in the database management apparatus according to the third aspect of the present invention, in the configuration of the first aspect of the invention, the priority-side determining means determines which data is changed when there are a plurality of changed data. User or above
It is a structure to inquire the application of the highest rank .
【0165】それゆえ、同期処理の際に伝送および処理
されるデータ量を削減できると共に、より的確に優先側
を決定できるという効果を奏する。Therefore, it is possible to reduce the amount of data transmitted and processed at the time of synchronization processing and to determine the priority side more accurately.
【0166】請求項4の発明に係るデータベース管理装
置は、以上のように、請求項3記載の発明の構成におい
て、上記優先側決定手段は、変更されたデータが複数の
場合、いずれのデータを優先するかを使用者または上位
のアプリケーションへ問い合わせ、その回答に基づいて
優先側を決定し、当該優先側と、相手から指定された優
先側とに基づいて、上記同期処理手段へ優先側を指示す
ると共に、上記問い合わせと指示との間に、相手との通
信を一度切断する構成である。As described above, in the database management apparatus according to the fourth aspect of the present invention , in the configuration of the third aspect of the invention, the priority-side determining means determines which data is changed when there are a plurality of changed data. User or higher priority
The application is inquired , the priority side is determined based on the answer, and the priority side is instructed to the synchronization processing means based on the priority side and the priority side designated by the partner, and The communication with the other party is once disconnected between the inquiry and the instruction.
【0167】上記構成によれば、問い合わせと優先側の
指示との間で、通信が切断される。それゆえ、問い合わ
せの回答が得られるまでの時間が長い場合であっても、
同期処理に必要な通信時間の合計を一定に保つことがで
きる。この結果、通信に要する費用や消費電力などを削
減できるという効果を奏する。According to the above configuration, the communication is disconnected between the inquiry and the instruction on the priority side. Therefore, even if it takes a long time for the inquiry to be answered,
The total communication time required for synchronization processing can be kept constant. As a result, it is possible to reduce the cost and power consumption required for communication.
【0168】請求項5の発明に係る記録媒体は、以上の
ように、請求項1記載の状態情報記憶手段、衝突検出手
段、優先側決定手段および検出手段として、コンピュー
タを動作させるためのプログラムが記録されている構成
である。As described above, the recording medium according to the fifth aspect of the present invention has a program for operating a computer as the state information storage means, the collision detection means , the priority side determination means and the detection means according to the first aspect. This is the recorded configuration.
【0169】それゆえ、上記プログラムをコンピュータ
に実行させることにより、請求項1と同様に、データベ
ースの格納に必要なメモリ量と、同期処理の際に伝送お
よび処理されるデータ量とを削減できるという効果を奏
する。Therefore, by causing the computer to execute the above-mentioned program, it is possible to reduce the amount of memory required for storing the database and the amount of data transmitted and processed during the synchronization processing, as in the first aspect. Produce an effect.
【図1】本発明の一実施形態を示すものであり、情報処
理機器の要部構成を示すブロック図である。FIG. 1 shows an embodiment of the present invention and is a block diagram showing a main configuration of an information processing device.
【図2】上記情報処理機器を使用して構築されるデータ
ベースシステムの一例を示すブロック図である。FIG. 2 is a block diagram showing an example of a database system constructed using the information processing device.
【図3】上記情報処理機器において、データ1件を示す
ティップと、その母集合となるフクロとの関係を示す説
明図である。FIG. 3 is an explanatory diagram showing a relationship between a tip indicating one piece of data and a balloon that is a population thereof in the information processing device.
【図4】上記情報処理機器において、ティップの格納方
法を示す説明図である。FIG. 4 is an explanatory diagram showing a method of storing tips in the information processing device.
【図5】上記情報処理機器において、ティップと、フク
ロと、データベースとの関係を示す説明図である。FIG. 5 is an explanatory diagram showing a relationship among a tip, a bag, and a database in the information processing device.
【図6】上記情報処理機器において、ティップの格納方
法を示すものであり、ティップと、フクロと、データベ
ースとからなるツリー構造を示す説明図である。FIG. 6 is a diagram illustrating a method of storing tips in the information processing device, and is an explanatory diagram illustrating a tree structure including tips, bags, and a database.
【図7】上記データベースシステムにおいて、情報処理
機器の共有範囲となる共有フクロと、他の情報処理機器
の共有フクロとの関係を示す説明図である。FIG. 7 is an explanatory diagram showing a relationship between a shared bag that is a shared range of an information processing device and a shared bag of another information processing device in the database system.
【図8】上記データベースシステムにおいて、ティップ
の対応関係と、対応関係の記憶方法とを示す説明図であ
る。FIG. 8 is an explanatory diagram showing a tip correspondence and a correspondence storage method in the database system.
【図9】上記データベースシステムにおいて、各情報処
理機器に格納されるダーティ・ビット・リストを示す説
明図である。FIG. 9 is an explanatory diagram showing a dirty bit list stored in each information processing device in the database system.
【図10】上記ダーティ・ビット・リストを構成するダ
ーティ・ビットにおいて、移動パラメタの格納例を示す
説明図である。FIG. 10 is an explanatory diagram showing an example of storage of movement parameters in dirty bits forming the dirty bit list.
【図11】自らの共有フクロが複数の共有フクロと共有
される場合において、ティップの対応関係を示す説明図
である。FIG. 11 is an explanatory diagram showing a correspondence relationship of tips when a shared bag of its own is shared with a plurality of shared bags.
【図12】上記対応関係において、ダーティ・ビット・
リストを示す説明図である。FIG. 12 shows the dirty bit
It is explanatory drawing which shows a list.
【図13】上記データベースシステムの概略の動作を示
すフローチャートである。FIG. 13 is a flowchart showing a schematic operation of the database system.
【図14】上記データベースシステムにおいて、フクロ
融合型モデルの共有設定を示す説明図である。FIG. 14 is an explanatory diagram showing sharing settings of a balloon fusion type model in the database system.
【図15】上記データベースシステムにおいて、同期処
理を示す説明図である。FIG. 15 is an explanatory diagram showing a synchronization process in the database system.
【図16】上記データベースシステムにおいて、共有設
定時の動作を詳細に説明するフローチャートである。FIG. 16 is a flowchart illustrating in detail the operation at the time of sharing setting in the database system.
【図17】上記データベースシステムの変形例を示すも
のであり、フクロ取込み型モデルの共有設定を示す説明
図である。FIG. 17 is a diagram showing a modified example of the database system, and is an explanatory diagram showing sharing settings of the bag capture type model.
【図18】上記データベースシステムの他の変形例を示
すものであり、フクロ新規作成型モデルの共有設定を示
す説明図である。FIG. 18 is a diagram showing another modification of the database system, and is an explanatory diagram showing sharing settings for a new balloon model.
【図19】上記データベースシステムにおいて、非同期
期間中の各種操作に応じたダーティ・ビットの変化を示
す説明図である。FIG. 19 is an explanatory diagram showing changes in dirty bits according to various operations during an asynchronous period in the database system.
【図20】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの内容更新
処理を示すフローチャートである。FIG. 20 is a flow chart for explaining the details of the operation during the asynchronous period of the database system, and showing a tip content updating process.
【図21】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの挿入処理
を示すフローチャートである。FIG. 21 is a flowchart for explaining the operation of the above database system during an asynchronous period in detail and showing a tip insertion process.
【図22】上記データベースシステムの非同期期間中の
動作を詳細に説明するものであり、ティップの排出処理
を示すフローチャートである。FIG. 22 is a flowchart for explaining the operation during the asynchronous period of the database system in detail, and is a flowchart showing a tip discharging process.
【図23】上記データベースシステムにおいて、同期処
理の終了直後におけるティップの対応関係を示す説明図
である。FIG. 23 is an explanatory diagram showing a tip correspondence relationship immediately after the end of the synchronization processing in the database system.
【図24】上記データベースシステムにおいて、同期処
理の終了直後におけるダーティ・ビット・リストを示す
説明図である。FIG. 24 is an explanatory diagram showing a dirty bit list immediately after the end of the synchronization processing in the database system.
【図25】上記データベースシステムにおいて、次の同
期処理の直前におけるダーティ・ビット・リストを示す
説明図である。FIG. 25 is an explanatory diagram showing a dirty bit list immediately before the next synchronization process in the database system.
【図26】上記データベースシステムにおいて、同期処
理中の動作を詳細に説明するフローチャートである。FIG. 26 is a flowchart illustrating in detail the operation during synchronization processing in the database system.
【図27】上記データベースシステムにおいて、同期処
理中の状態を説明するものであり、圧縮後のダーティ・
ビット・リストを示す説明図である。FIG. 27 is a diagram for explaining a state during synchronization processing in the above database system.
It is explanatory drawing which shows a bit list.
【図28】上記データベースシステムにおいて、同期処
理中の他の状態を説明するものであり、他の情報処理機
器で追加されたダーティ・ビットが、自らのダーティ・
ビット・リストに追加された状態を示す説明図である。FIG. 28 is a diagram for explaining another state during synchronization processing in the database system, in which the dirty bit added by another information processing device is its own dirty bit.
It is explanatory drawing which shows the state added to the bit list.
【図29】上記データベースシステムにおいて、同期処
理中のさらに他の状態を説明するものであり、自らで追
加されたダーティ・ビットが、他の情報処理機器のダー
ティ・ビット・リストに追加された状態を示す説明図で
ある。FIG. 29 is a view for explaining still another state during synchronization processing in the database system, in which the dirty bit added by itself is added to the dirty bit list of another information processing device. FIG.
【図30】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの移動パラメタの優
先度を示す説明図である。[Fig. 30] Fig. 30 is a diagram for explaining the synchronization processing of the database system, and is an explanatory diagram showing the priority of the dirty bit movement parameter.
【図31】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの変化を示す説明図
である。FIG. 31 is a diagram for explaining the synchronization processing of the database system, and is an explanatory diagram showing changes in dirty bits.
【図32】上記データベースシステムの同期処理を説明
するものであり、内外判定同期処理の終了時点における
ダーティ・ビット・リストを示す説明図である。FIG. 32 is an explanatory diagram for explaining the synchronization processing of the database system, showing the dirty bit list at the end of the inside / outside determination synchronization processing.
【図33】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの更新パラメタの優
先度を示す説明図である。FIG. 33 is a diagram for explaining the synchronization processing of the database system, and is an explanatory diagram showing the priority of the update parameter of the dirty bit.
【図34】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットの更新パラメタの変
化を示す説明図である。[Fig. 34] Fig. 34 is a diagram for explaining the synchronization processing of the database system, and is an explanatory diagram illustrating changes in the update parameter of the dirty bit.
【図35】上記データベースシステムの同期処理を説明
するものであり、ダーティ・ビットによる優先側判定を
示す説明図である。FIG. 35 is an explanatory diagram for explaining the synchronization processing of the database system, showing the priority side determination by the dirty bit.
【図36】上記データベースシステムの同期処理を説明
するものであり、データ内容同期処理後のダーティ・ビ
ット・リストを示す説明図である。FIG. 36 is an explanatory diagram for explaining the synchronization processing of the database system, showing the dirty bit list after the data content synchronization processing.
【図37】上記データベースシステムの同期処理を説明
するものであり、データ内容同期処理後に、さらに圧縮
されたダーティ・ビット・リストを示す説明図である。FIG. 37 is an explanatory diagram for explaining the synchronization processing of the database system, showing the dirty bit list further compressed after the data content synchronization processing.
【図38】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、話し合い
モデルを示す説明図である。FIG. 38 is an explanatory diagram illustrating a discussion model for explaining a subject that resolves a tip collision in the database system.
【図39】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、選択解決
モデルを示す説明図である。[Fig. 39] Fig. 39 is a diagram illustrating a subject that resolves a tip conflict in the database system, and is an explanatory diagram illustrating a selection resolution model.
【図40】上記データベースシステムにおいて、ティッ
プ衝突を解決する主体を説明するものであり、自動解決
モデルを示す説明図である。FIG. 40 is an explanatory diagram illustrating an automatic resolution model for explaining a subject that resolves a tip conflict in the database system.
【図41】上記データベースシステムにおいて、ティッ
プ衝突の解決主体と解決時期との関係を示す説明図であ
る。FIG. 41 is an explanatory diagram showing a relationship between a tip collision resolution subject and a resolution time in the database system.
【図42】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、折衝解決型モデ
ルを示すフローチャートである。FIG. 42 is a flow chart showing an operation at the time of tip conflict resolution in the database system and showing a negotiation resolution model.
【図43】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、クライアント即
時型モデルを示すフローチャートである。FIG. 43 is a flow chart showing an operation when resolving a tip conflict in the database system and showing a client immediate model.
【図44】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、アプリ解決型モ
デルを示すフローチャートである。FIG. 44 is a flowchart showing an operation at the time of tip conflict resolution in the database system, and is a flowchart showing an application resolution model.
【図45】図44をさらに詳細に説明するフローチャー
トである。FIG. 45 is a flowchart illustrating FIG. 44 in more detail.
【図46】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、クライアント遅
延型モデルを示すフローチャートである。FIG. 46 is a flowchart showing an operation at the time of tip conflict resolution in the database system, and is a flowchart showing a client delay type model.
【図47】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、最終更新時刻に
基づく自動解決型モデルを示すフローチャートである。FIG. 47 is a flowchart showing an operation at the time of tip conflict resolution in the database system, and is a flowchart showing an automatic resolution type model based on the last update time.
【図48】上記データベースシステムにおいて、各ティ
ップの更新状況を示す説明図である。FIG. 48 is an explanatory diagram showing an update status of each tip in the database system.
【図49】上記データベースシステムにおいて、ティッ
プ衝突解決時の動作を示すものであり、自動解決型モデ
ルのうち、一方選択モデルを示すフローチャートであ
る。FIG. 49 is a flowchart showing an operation at the time of tip conflict resolution in the database system, showing a one-side selection model of the automatic resolution model.
【図50】上記データベースシステムにおいて、ダウン
ロードを示す説明図である。FIG. 50 is an explanatory diagram showing downloading in the database system.
【図51】上記データベースシステムにおいて、ダウン
ロード時の動作を示すフローチャートである。FIG. 51 is a flowchart showing an operation at the time of download in the database system.
【図52】上記データベースシステムにおいて、ティッ
プ衝突時に、コピーを用いて対応付けを変更する場合を
示す説明図である。FIG. 52 is an explanatory diagram showing a case where the association is changed using a copy at the time of a tip collision in the database system.
【図53】上記データベースシステムにおいて、コピー
を用いた対応付け変更時の動作を示すフローチャートで
ある。FIG. 53 is a flowchart showing an operation at the time of changing association using copying in the database system.
【図54】上記データベースシステムにおいて、ティッ
プの変更時に、コピーを用いて対応付けを変更する場合
を示す説明図である。FIG. 54 is an explanatory diagram showing a case where the association is changed by using a copy when changing the tip in the database system.
【図55】上記データベースシステムにおいて、共有解
除の動作を詳細に説明するフローチャートである。[Fig. 55] Fig. 55 is a flowchart describing in detail the sharing cancellation operation in the database system.
【図56】上記データベースシステムにおいて、ティッ
プ複写型モデルの共有解除を示す説明図である。FIG. 56 is an explanatory diagram showing cancellation of sharing of a tip copy type model in the database system.
【図57】上記データベースシステムの変形例を示すも
のであり、ティップ偏在型モデルの共有解除を示す説明
図である。[Fig. 57] Fig. 57 is a diagram illustrating a modification of the database system and is an explanatory diagram illustrating cancellation of sharing of a tip ubiquitous model.
【図58】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ消滅型モデルの共有解除
を示す説明図である。FIG. 58 is a diagram showing still another modification of the database system, and is an explanatory diagram showing cancellation of sharing of the tip extinction type model.
【図59】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ偏在型モデルで、かつ、
空のフクロも消去する場合の共有解除を示す説明図であ
る。FIG. 59 is a view showing still another modified example of the above database system, which is a tip uneven distribution type model, and
It is explanatory drawing which shows the cancellation | release of sharing in the case of also erasing an empty bag.
【図60】上記データベースシステムのさらに他の変形
例を示すものであり、ティップ消滅型モデルで、かつ、
空のフクロも消去する場合の共有解除を示す説明図であ
る。FIG. 60 is a view showing still another modified example of the above database system, which is a tip disappearance model, and
It is explanatory drawing which shows the cancellation | release of sharing in the case of also erasing an empty bag.
【図61】上記データベースシステムのさらに他の変形
例を示すものであり、非同期期間中に、ダーティ・ビッ
ト・リストを圧縮する場合の動作を示すフローチャート
である。[Fig. 61] Fig. 61 is a flowchart showing the operation of compressing the dirty bit list during the asynchronous period, showing still another modification of the database system.
【図62】本発明の他の実施形態を示すものであり、デ
ータベースシステムにおいて、各情報処理機器間で共有
されるティップとフクロとデータベースとの関係を示す
説明図である。FIG. 62 is a diagram showing another embodiment of the present invention, and is an explanatory diagram showing the relationship among tips, bags and databases shared among information processing devices in a database system.
【図63】上記データベースシステムにおいて、データ
ベース全体を1つのフクロとして処理する情報処理機器
に、ティップを格納する方法を示す説明図である。FIG. 63 is an explanatory diagram showing a method of storing tips in an information processing device that processes the entire database as one bag in the database system.
1・11 データベースシステム
2・12 情報処理機器(データベース管理装置)
23 データベース管理部(データベース、状態情報記
憶手段、優先側情報記憶手段)
32 フクロ管理部(部分集合設定手段)
51 シンクロナイズ処理部(同期処理手段、衝突検出
手段、優先側決定手段、検出手段)
52 共有設定処理部(共有設定手段)
53 共有解除処理部(共有解除手段)1/11 Database system 2/12 Information processing equipment (database management device) 23 Database management unit (database, state information storage means, priority side information storage means) 32 Float management unit (subset setting means) 51 Synchronization processing unit (synchronization Processing unit, collision detection unit, priority side determination unit, detection unit) 52 sharing setting processing unit (sharing setting unit) 53 sharing cancellation processing unit (sharing cancellation unit)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 鎌倉 多志 大阪府大阪市阿倍野区長池町22番22号 シャープ株式会社内 (72)発明者 藤田 房之 大阪府大阪市阿倍野区長池町22番22号 シャープ株式会社内 (56)参考文献 特開 平9−134304(JP,A) 特開 平9−128280(JP,A) 特開 平8−328931(JP,A) 特開 平8−241236(JP,A) 特開 平11−327987(JP,A) 特開 平12−40025(JP,A) 伊庭 四郎 外2名,Outlook 98日本語版をはじめ必携11製品ワークグ ループ対応PIMソフト,Hello! PC,日本,ソフトバンク,1998年 5 月 8日,第5巻, 第9号,p. 162 ―― 181 (特に178 ―― 181) 中村 正弘,「どこでもオフィス」の ソフトウェア環境が整う,日経エレクト ロニクス,日本,日経BP社,1994年10 月10日,第619号,p. 137 ―― 141 長谷川 裕行,Windows95では じめるパソコンLAN,日本,エーアイ 出版,1996年 4月22日,第1版,p. 218 ―― 226 渡辺 玲,わずらわしいファイル管理 をもっと楽に,日経MAC,日本,日経 BP社,1994年 2月17日,第11号, p. 124 ―― 129 中村 正弘,複製ファイルの非同期更 新が分散データベースの中心技術に,日 経エレクトロニクス,日本,日経BP 社,1994年 6月 6日,第609号,p. 101 ―― 110 (58)調査した分野(Int.Cl.7,DB名) G06F 12/00 G06F 13/00 ─────────────────────────────────────────────────── ─── Continuation of the front page (72) Inventor Tama Kamakura 22-22 Nagaike-cho, Abeno-ku, Osaka-shi, Osaka Inside Sharp Corporation (72) Inventor Fusayuki Fujita 22-22 Nagaike-cho, Abeno-ku, Osaka-shi, Osaka Sharp (56) References JP-A-9-134304 (JP, A) JP-A-9-128280 (JP, A) JP-A-8-328931 (JP, A) JP-A-8-241236 (JP, A) JP-A-11-327987 (JP, A) JP-A-12-40025 (JP, A) Shiro Iba Two outsiders, must-have PIM software for 11 product work groups, including Outlook 98 Japanese version, Hello! PC, Japan, SoftBank, May 8, 1998, Volume 5, No. 9, p. 162 ―― 181 (especially 178 ―― 181) Masahiro Nakamura, “Anywhere Office” software environment is set up, Nikkei Electronics, Japan, Nikkei BP, October 10, 1994, No. 619, p. 137 ―― 141 Hiroyuki Hasegawa, Personal Computer LAN Beginning with Windows95, Japan, AI Publishing, April 22, 1996, 1st edition, p. 218 ―― 226 Rei Watanabe, Make troublesome file management easier, Nikkei MAC, Nikkei BP, Japan, February 17, 1994, No. 11, p. 124 ―― 129 Masahiro Nakamura, Asynchronous updating of replicated files is the core technology of distributed database, Nikkei Electronics, Japan, Nikkei BP, June 6, 1994, No. 609, p. 101 ―― 110 (58 ) Fields surveyed (Int.Cl. 7 , DB name) G06F 12/00 G06F 13/00
Claims (5)
信可能になったデータベース管理装置に格納されたデー
タベース間で、対応するデータの内容を一致させる同期
処理手段とを有するデータベースシステムを構成するた
めに設けられ、少なくとも1つのデータベースを有する
データベース管理装置において、 相手のデータベース内のデータに対応する自らのデータ
毎に、前回の同期処理と次回の同期処理との間の非同期
期間中における、データの変更を示す状態情報が記憶さ
れる状態情報記憶手段と、 同期処理の際、互いに対応するデータからなる組につい
て、それぞれの状態情報に基づき、当該データ組で変更
されたデータが複数であるか否かを検出する衝突検出手
段と、 複数の場合、変更された複数のデータの内容全てを伝送
する前に、いずれのデータを優先するかを決定して、上
記同期処理手段に、優先側のデータの内容で非優先側の
データの内容を置き換えさせる優先側決定手段と、 自らの優先側決定手段が決定した優先側と、相手から指
定された優先側との不一致を検出する検出手段と を備え
ていることを特徴とするデータベース管理装置。1. To configure a database system having a plurality of database management devices and a synchronization processing means for matching the contents of corresponding data between databases stored in the database management devices which can communicate with each other. In a database management device that is provided and has at least one database, for each of its own data corresponding to the data in the other database, change of data during the asynchronous period between the previous synchronization processing and the next synchronization processing. Whether or not there is a plurality of data changed in the data set based on the respective state information for the set of state information storage means for storing the state information indicating And a collision detection means for detecting all of the contents of a plurality of changed data in the case of a plurality of To, to determine whether to give priority to any data, to the synchronization processing means, a preferential determining means for creating replace the contents of the data of the non-priority side by the contents of the data preferential, is its preferential determining means The determined priority side and the other party's finger
A database management device comprising: a detection unit that detects a mismatch with the determined priority side .
数のデータの内容のうち、それぞれの一部分のみを比較
して、優先側を決定することを特徴とする請求項1記載
のデータベース管理装置。2. The database management according to claim 1, wherein the priority side determining means determines the priority side by comparing only a part of each of the changed plurality of data contents. apparatus.
が複数の場合、いずれのデータを優先するかを、使用者
または上位のアプリケーションへ問い合わせることを特
徴とする請求項1記載のデータベース管理装置。Wherein said preferential determining means, when the modified data of the plurality, a preference of any of the data, the user
The database management apparatus according to claim 1 , further comprising inquiring an upper application .
が複数の場合、いずれのデータを優先するかを、使用者
または上位のアプリケーションへ問い合わせ、その回答
に基づいて優先側を決定し、当該優先側と、相手から指
定された優先側とに基づいて、上記同期処理手段へ優先
側を指示すると共に、 上記問い合わせと指示との間に、上記相手との通信を一
度切断することを特徴とする請求項3記載のデータベー
ス管理装置。 4. The modified data is changed by the priority side determining means.
If there is more than one, the user can select which data has priority.
Or inquire to the upper application and answer
The priority side is determined based on the
Priority is given to the synchronization processing means based on the determined priority side.
In addition to instructing the other side, communication between
The database according to claim 3, wherein the database is cut once.
Management device.
ータの内容を同一に管理するためのプログラムが記録さ
れた記録媒体において、 請求項1記載の状態情報記憶手段、衝突検出手段、優先
側決定手段および検出手段として、コンピュータを動作
させるためのプログラムが記録されていることを特徴と
する記録媒体。 5. Data corresponding to each other among a plurality of databases
A program for managing the same contents of the data is recorded.
In the recorded medium, the state information storage means, the collision detection means, the priority,
Operates a computer as a side determination means and detection means
It is characterized in that the program for making it recorded
Recording medium.
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13578698A JP3501944B2 (en) | 1998-05-18 | 1998-05-18 | Database management device and recording medium on which the program is recorded |
| 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 (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP13578698A JP3501944B2 (en) | 1998-05-18 | 1998-05-18 | Database management device and recording medium on which the program is recorded |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH11327989A JPH11327989A (en) | 1999-11-30 |
| JP3501944B2 true JP3501944B2 (en) | 2004-03-02 |
Family
ID=15159818
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP13578698A Expired - Fee Related JP3501944B2 (en) | 1998-05-18 | 1998-05-18 | Database management device and recording medium on which the program is recorded |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3501944B2 (en) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP3501943B2 (en) * | 1998-05-18 | 2004-03-02 | シャープ株式会社 | Database management device and recording medium on which the program is recorded |
| JP3501968B2 (en) * | 1998-05-18 | 2004-03-02 | シャープ株式会社 | Database management device and recording medium on which the program is recorded |
| JP3750504B2 (en) * | 2000-08-09 | 2006-03-01 | セイコーエプソン株式会社 | Data update method and information processing apparatus |
| JP2004265193A (en) * | 2003-03-03 | 2004-09-24 | Canon Inc | Information processing method, information processing apparatus, server apparatus control method, server apparatus |
| JP4983100B2 (en) * | 2006-05-31 | 2012-07-25 | 富士通株式会社 | Data difference elimination program and data difference elimination apparatus |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5603026A (en) * | 1994-12-07 | 1997-02-11 | Xerox Corporation | Application-specific conflict resolution for weakly consistent replicated databases |
| JPH08328931A (en) * | 1995-05-29 | 1996-12-13 | Nec Corp | Data processor |
| JPH09128280A (en) * | 1995-10-27 | 1997-05-16 | Toshiba Corp | Data management device and data management method |
| JPH09134304A (en) * | 1995-11-10 | 1997-05-20 | Nippon Telegr & Teleph Corp <Ntt> | Schedule synchronization method |
| JP3501943B2 (en) * | 1998-05-18 | 2004-03-02 | シャープ株式会社 | Database management device and recording medium on which the program is recorded |
| JP3501968B2 (en) * | 1998-05-18 | 2004-03-02 | シャープ株式会社 | Database management device and recording medium on which the program is recorded |
-
1998
- 1998-05-18 JP JP13578698A patent/JP3501944B2/en not_active Expired - Fee Related
Non-Patent Citations (5)
| Title |
|---|
| 中村 正弘,「どこでもオフィス」のソフトウェア環境が整う,日経エレクトロニクス,日本,日経BP社,1994年10月10日,第619号,p. 137 ―― 141 |
| 中村 正弘,複製ファイルの非同期更新が分散データベースの中心技術に,日経エレクトロニクス,日本,日経BP社,1994年 6月 6日,第609号,p. 101 ―― 110 |
| 伊庭 四郎 外2名,Outlook98日本語版をはじめ必携11製品ワークグループ対応PIMソフト,Hello!PC,日本,ソフトバンク,1998年 5月 8日,第5巻, 第9号,p. 162 ―― 181 (特に178 ―― 181) |
| 渡辺 玲,わずらわしいファイル管理をもっと楽に,日経MAC,日本,日経BP社,1994年 2月17日,第11号,p. 124 ―― 129 |
| 長谷川 裕行,Windows95ではじめるパソコンLAN,日本,エーアイ出版,1996年 4月22日,第1版,p. 218 ―― 226 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH11327989A (en) | 1999-11-30 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR101109219B1 (en) | System and method for propagation of collision resolution to enforce item convergence (ie data convergence) | |
| CN101207580B (en) | System and method for adding and deleting linkman synchronously by instant communication platform and business platform | |
| US20120131128A1 (en) | System and method for generating a consistent user name-space on networked devices | |
| US10454531B2 (en) | File transmission/reception device and control method of file transmission/reception device | |
| US20140059087A1 (en) | Storage management of profiles in mobile devices | |
| CN113918096B (en) | An algorithm image package uploading method, device and application | |
| JP3501944B2 (en) | Database management device and recording medium on which the program is recorded | |
| JPH11232159A (en) | File management method and medium storing file management program | |
| JPH11282686A (en) | Network computer system | |
| JP2010277467A (en) | Distributed data management system, data management apparatus, data management method, and program | |
| JP3756349B2 (en) | Database management apparatus and recording medium on which program is recorded | |
| US8296372B2 (en) | Method and system for merging electronic messages | |
| JP3501968B2 (en) | Database management device and recording medium on which the program is recorded | |
| JP3501943B2 (en) | Database management device and recording medium on which the program is recorded | |
| KR102779430B1 (en) | Method and user terminal for recommending emoticons based on conversation information | |
| JP4142866B2 (en) | Database synchronization apparatus and program | |
| JPH11249949A (en) | File transfer method, file transfer apparatus, and computer-readable recording medium recording file transfer program | |
| CN113890753A (en) | Digital identity management method, device, system, computer equipment and storage medium | |
| CN114090911B (en) | Interface processing method, device, computer equipment and computer readable storage medium | |
| CN113467799B (en) | Update system, printing device, and program storage medium | |
| JP5238469B2 (en) | Database processing method, database processing program, and database instruction apparatus | |
| CN115686356A (en) | Clone splitting method and cluster of storage volume | |
| CN114416871A (en) | Data processing method, device, equipment, system and medium based on block chain | |
| JP2008165328A (en) | Data synchronization system, acquisition terminal, provision terminal, acquisition program, and provision program | |
| JP4207657B2 (en) | Logical path control method, relay server, and program |
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 |