Systems and methods for synchronizing databases in a receive-only network
First Claim
1. A method for synchronizing databases among a central computer having a master database therein, and a plurality of remote computers in receive-only communication with said central computer, each of said remote computers having therein a replica of said master database, said database synchronizing method comprising the steps of:
- storing a plurality of changes to said master database, which occur during a predetermined time period, in a file which is external to said master database;
assigning a same next-broadcast-number to each of the changes in the file, and assigning a sequential next-sequence-number to a respective one of the changes in the file;
broadcasting each of the changes in the file to each of said plurality of remote computers which are in receive-only communication with said central computer, including the same next-broadcast-number and the sequential next-sequence-numbers;
receiving, at each of said plurality of remote computers which are in receive-only communication with said central computer, the broadcast changes in the file including the same next-broadcast-number and the sequential next-sequence-numbers; and
updating the replica of said master database at each of said plurality of remote computers, which are in receive-only communication with said central computer, based upon the same next-broadcast-number and the sequential next-sequence-number assigned to each change in the received changes.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for synchronizing a plurality of databases are provided for a plurality of geographically dispersed computers in receive-only communication. Each change made to a master database in a central computer is broadcast to a plurality of remote computers, each containing a replica of the master database, via a packet having an assigned next-broadcast-number and a sequential next-sequence-number. Each remote computer has means for comparing the next-broadcast-number and next-sequence-number of each received packet with the last-broadcast-number-received and last-sequence-number-received from a previous packet, and for selectively updating its replica database.
166 Citations
20 Claims
-
1. A method for synchronizing databases among a central computer having a master database therein, and a plurality of remote computers in receive-only communication with said central computer, each of said remote computers having therein a replica of said master database, said database synchronizing method comprising the steps of:
-
storing a plurality of changes to said master database, which occur during a predetermined time period, in a file which is external to said master database; assigning a same next-broadcast-number to each of the changes in the file, and assigning a sequential next-sequence-number to a respective one of the changes in the file; broadcasting each of the changes in the file to each of said plurality of remote computers which are in receive-only communication with said central computer, including the same next-broadcast-number and the sequential next-sequence-numbers; receiving, at each of said plurality of remote computers which are in receive-only communication with said central computer, the broadcast changes in the file including the same next-broadcast-number and the sequential next-sequence-numbers; and updating the replica of said master database at each of said plurality of remote computers, which are in receive-only communication with said central computer, based upon the same next-broadcast-number and the sequential next-sequence-number assigned to each change in the received changes. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for synchronizing databases among a central computer and a plurality of remote computers in receive-only communication with said central computer, said database synchronizing system comprising:
-
a master database in said central computer; a replica of said master database in each of said remote computers which are in receive-only communication with said central computer; packet building means in said central computer, said packet building means comprising; means for storing a plurality of changes to said master database, which occur during a predetermined time period, in a file which is external to said master database; and means, responsive to said storing means, for assigning a same next-broadcast-number to each of the changes in the file, and for assigning a sequential next-sequence-number to a respective one of the changes in the file; broadcasting means in said central computer, and responsive to said packet building means, for broadcasting each of the changes in the file to each of said plurality of remote computers which are in receive-only communication with said central computer, including the same next-broadcast-number and the sequential next-sequence-numbers; and selective updating means in each of said plurality of remote computers which are in receive-only communication with said central computer, said selective updating means comprising; means for receiving the broadcast changes in the file including the same next-broadcast-number and the sequential next-sequence-numbers; and means, responsive to said receiving means, for updating the replica database at each of said plurality of remote computers, which are in receive-only communication with said central computer, based upon the same next-broadcast-number and the sequential next-sequence-number assigned to each change in the received changes. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for selectively updating a replica database in a remote computer, which is in receive-only communication with a central computer having a master database therein, said central computer broadcasting to said remote computer a series of changes to said master database as a series of packets, each of said packets including a next-broadcast-number and a next-sequence number, said remote computer including therein a last-broadcast-number-received and a last-sequence-number-received, said selective updating method comprising the steps of:
-
receiving, at said remote computer, which is in receive-only communication with said central computer, a packet including a next-broadcast-number and a next-sequence-number; comparing the received next-broadcast-number with the last-broadcast-number-received; ignoring the received packet if the received next-broadcast-number is less than or equal to the last-broadcast-number-received; if the received next-broadcast-number is greater than the last-broadcast-number-received, comparing the received next-sequence-number with the last-sequence-number-received; updating the replica database with the received packet if the received next-sequence-number is greater than the last-sequence-number-received; and ignoring the received packet if the received next-sequence-number is not greater than the last-sequence-number-received. - View Dependent Claims (14)
-
-
15. A method for broadcasting changes to a database from a computer comprising the steps of:
-
storing a copy of a change to said database in a file which is external to said database; assigning a next-broadcast-number and a next-sequence-number to said copy; determining if a broadcast time has arrived; incrementing said next-sequence-number if a broadcast time has not arrived; performing said storing step, said assigning step, said determining step and said incrementing step on additional changes to said database until the broadcast time has arrived; and broadcasting each of the changes in the file including the assigned next-broadcast-number and next-sequence-numbers, when the broadcast time has arrived. - View Dependent Claims (16, 17, 18)
-
-
19. A collection of packets for broadcasting a plurality of changes made to a master database to a plurality of replica databases, said packet collection comprising:
-
a plurality of serially broadcast change records, each of which includes update information for an associated database record; each of said serially broadcast change records including a same next-broadcast-number associated therewith; and a respective one of said serially broadcast change records including a sequential next-sequence-number associated therewith. - View Dependent Claims (20)
-
Specification