7281024

Approach for Propagating Changes from a Database to a Client

PublishedOctober 9, 2007
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
30 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for propagating changes from a database to a client, the method comprising the computer-implemented steps of: providing to the client, at a first time, a copy of a portion of the database, wherein the portion of the database contains at least a first data item and a second data item; generating, at a second time, an updated value of the first data item, wherein the updated value of the first data item reflects the application of a first plurality of changes to the first data item; generating, at a third time, an updated value of the second data item, wherein the updated value of the second data item reflects the application of a second plurality of changes to the second data item; selecting the updated value of the first data item from the updated value of the first data item and the updated value of the second data item based upon the first time at which the copy of the portion of the database was provided to the client being earlier than the second time at which at which the updated value of the first data item was generated and the first time being later than the third time at which at which the updated value of the second data item was generated; and providing the updated value of the first data item to the client with operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the updated value of the first data item.

2

2. The method as recited in claim 1 , wherein: the updated value of the first data item was provided to the client at a fourth time that is after the second time; and the method further comprises the computer-implemented step of deleting the updated value of the first data item based upon the fourth time at which the first data item was provided to the client being after the second time at which at which the updated value of the first data item was generated.

3

3. The method as recited in claim 1 , further comprising the computer-implemented steps of: generating a second updated value of the first data item, wherein the second updated value of the first data item reflects the application of a plurality of additional changes to the first data item; and providing the second updated value of the first data item to the client with additional operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the second updated value of the first data item.

4

4. The method as recited in claim 1 , further comprising the computer-implemented step of receiving a registration request from the client that indicates that the client is to receive updated values of the first data item.

5

5. The method as recited in claim 1 , wherein the value of the first data item contained in the copy of the portion of the database provided to the client had an initial value and the operator data specifies that the initial value of the first data item is to be replaced with the updated value of the first data item.

6

6. The method as recited in claim 1 , further comprising the computer-implemented steps of: in response to the addition of a third data item to the portion of the database after the copy of the portion of the database was provided to the client, generating a value of the third data item; and providing the value of the third data item to the client with additional operator data that indicates that the value of the third data item is a new value that is to be added to the copy of the portion of the database at the client.

7

7. A computer-readable storage medium for propagating changes from a database to a client, the computer-readable storage medium carrying one or more sequences of instructions which, when executed by one or more processors, cause the one or more processors to perform the steps of: providing to the client, at a first time, a copy of a portion of the database, wherein the portion of the database contains at least a first data item and a second data item; generating, at a second time, an updated value of the first data item, wherein the updated value of the first data item reflects the application of a first plurality of changes to the first data item; generating, at a third time, an updated value of the second data item, wherein the updated value of the second data item reflects the application of a second plurality of changes to the second data item; selecting the updated value of the first data item from the updated value of the first data item and the updated value of the second data item based upon the first time at which the copy of the portion of the database was provided to the client being earlier than the second time at which at which the updated value of the first data item was generated and the first time being later than the third time at which at which the updated value of the second data item was generated; and providing the updated value of the first data item to the client with operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the updated value of the first data item.

8

8. The computer-readable medium as recited in claim 7 , wherein: the updated value of the first data item was provided to the client at a fourth time that is after the second time; and A computer-readable medium further comprises one or more sequences of additional instructions which, when executed by the one or more processors, cause the one or more processors to perform the step of deleting the updated value of the first data item based upon the fourth time at which the first data item was provided to the client being after the second time at which at which the updated value of the first data item was generated.

9

9. The computer-readable medium as recited in claim 7 , further comprising one or more sequences of additional instructions which, when executed by the one or more processors, cause the one or more processors to perform the steps of: generating a second updated value of the first data item, wherein the second updated value of the first data item reflects the application of a plurality of additional changes to the first data item; and providing the second updated value of the first data item to the client with additional operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the second updated value of the first data item.

10

10. The computer-readable medium as recited in claim 7 , further comprising one or more sequences of additional instructions which, when executed by the one or more processors, cause the one or more processors to perform the step of receiving a registration request from the client that indicates that the client is to receive updated values of the first data item.

11

11. The computer-readable medium as recited in claim 7 , wherein the value of the first data item contained in the copy of the portion of the database provided to the client had an initial value and the operator data specifies that the initial value of the first data item is to be replaced with the updated value of the first data item.

12

12. The computer-readable medium as recited in claim 7 , further comprising one or more sequences of additional instructions which, when executed by the one or more processors, cause the one or more processors to perform the steps of: in response to the addition of a third data item to the portion of the database after the copy of the portion of the database was provided to the client, generating a value of the third data item; and providing the value of the third data item to the client with additional operator data that indicates that the value of the third data item is a new value that is to be added to the copy of the portion of the database at the client.

13

13. An apparatus for propagating changes from a database to a client, the apparatus comprising a synchronization mechanism configured to: provide to the client, at a first time from a memory on a host, a copy of a portion of the database stored in the memory on the host, wherein the portion of the database contains at least a first data item and a second data item; generate, at a second time in the memory on the host, an updated value of the first data item, wherein the updated value of the first data item reflects the application of a first plurality of changes to the first data item; generate, at a third time in the memory on the host, an updated value of the second data item, wherein the updated value of the second data item reflects the application of a second plurality of changes to the second data item; select the updated value of the first data item from the updated value of the first data item and the updated value of the second data item based upon the first time at which the copy of the portion of the database was provided from the memory on the host to the client being earlier than a the second time at which at which the updated value of the first data item from the memory on the host was generated and the first time being later than the third time at which at which the updated value of the second data item was generated; and provide the updated value of the first data item to the client with operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the updated value of the first data item.

14

14. The apparatus as recited in claim 13 , wherein: the updated value of the first data item was provided to the client at a fourth time that is after the second time; and wherein the synchronization mechanism is further configured to delete the updated value of the first data item based upon the fourth time at which the first data item was provided to the client being after the second time at which at which the updated value of the first data item was generated.

15

15. The apparatus as recited in claim 13 , wherein the synchronization mechanism is further configured to: generate a second updated value of the first data item, wherein the second updated value of the first data item reflects the application of a plurality of additional changes to the first data item; and provide the second updated value of the first data item to the client with additional operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the second updated value of the first data item.

16

16. The apparatus as recited in claim 13 , wherein the synchronization mechanism is further configured to receive a registration request from the client that indicates that the client is to receive updated values of the first data item.

17

17. The apparatus as recited in claim 13 , wherein the value of the first data item contained in the copy of the portion of the database provided to the client had an initial value and the operator data specifies that the initial value of the first data item is to be replaced with the updated value of the first data item.

18

18. The apparatus as recited in claim 13 , wherein the synchronization mechanism is further configured to: in response to the addition of a third data item to the portion of the database after the copy of the portion of the database was provided to the client, generate a value of the third data item; and provide the value of the third data item to the client with additional operator data that indicates that the value of the third data item is a new value that is to be added to the copy of the portion of the database at the client.

19

19. An apparatus for propagating changes from a database to a client, the apparatus comprising: means for providing to the client from a memory on a host a copy of a portion of the database, wherein the portion of the database stored in the memory on the host contains at least a first data item and a second data item; means for generating an updated value of the first data item in the memory on the host, wherein the updated value of the first data item reflects the application of a first plurality of changes to the first data item; means for generating an updated value of the second data item in the memory on the host, wherein the updated value of the second data item reflects the application of a second plurality of changes to the second data item; means for selecting the updated value of the first data item from the updated value of the first data item and the updated value of the second data item based upon a first time at which the copy of the portion of the database was provided from the memory on the host to the client being earlier than a second time at which at which the updated value of the first data item from the memory on the host was generated and the first time being later than a third time at which at which the updated value of the second data item was generated; and means for providing the updated value of the first data item to the client with operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the updated value of the first data item.

20

20. The apparatus as recited in claim 19 , wherein: the updated value of the first data item was provided to the client at a fourth time that is after the second time; and wherein the apparatus further comprises means for deleting the updated value of the first data item based upon the fourth time at which the first data item was provided to the client being after the second time at which at which the updated value of the first data item was generated.

21

21. The apparatus as recited in claim 19 , further comprising: means for generating a second updated value of the first data item, wherein the second updated value of the first data item reflects the application of a plurality of additional changes to the first data item; and means for providing the second updated value of the first data item to the client with additional operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the second updated value of the first data item.

22

22. The apparatus as recited in claim 19 , further comprising means for receiving a registration request from the client that indicates that the client is to receive updated values of the first data item.

23

23. The apparatus as recited in claim 19 , wherein the value of the first data item contained in the copy of the portion of the database provided to the client had an initial value and the operator data specifies that the initial value of the first data item is to be replaced with the updated value of the first data item.

24

24. The apparatus as recited in claim 19 , further comprising: means for in response to the addition of a third data item to the portion of the database after the copy of the portion of the database was provided to the client, generating a value of the third data item; and means for providing the value of the third data item to the client with additional operator data that indicates that the value of the third data item is a new value that is to be added to the copy of the portion of the database at the client.

25

25. An apparatus for propagating changes from a database to a client, the apparatus comprising: means for providing to the client, at a first time from a memory on a host, a copy of a portion of the database, wherein the portion of the database stored in the memory on the host contains at least a first data item and a second data item; means for generating, at a second time in the memory on the host, an updated value of the first data item, wherein the updated value of the first data item reflects the application of a first plurality of changes to the first data item; means for generating, at a third time in the memory on the host, an updated value of the second data item, wherein the updated value of the second data item reflects the application of a second plurality of changes to the second data item; means for selecting the updated value of the first data item from the updated value of the first data item and the updated value of the second data item based upon the first time at which the copy of the portion of the database was provided from the memory on the host to the client being earlier than the second time at which at which the updated value of the first data item from the memory on the host was generated and the first time being later than the third time at which at which the updated value of the second data item was generated; and means for providing the updated value of the first data item to the client with operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the updated value of the first data item.

26

26. The apparatus as recited in claim 25 , wherein: the updated value of the first data item was provided to the client at a fourth time that is after the second time; and the apparatus method further comprises means for deleting the updated value of the first data item based upon the fourth time at which the first data item was provided to the client being after the second time at which at which the updated value of the first data item was generated.

27

27. The apparatus as recited in claim 25 , further comprising means for: generating a second updated value of the first data item, wherein the second updated value of the first data item reflects the application of a plurality of additional changes to the first data item; and providing the second updated value of the first data item to the client with additional operator data that indicates one or more operations to be performed at the client to update the copy of the portion of the database at the client with the second updated value of the first data item.

28

28. The apparatus as recited in claim 25 , further comprising means for receiving a registration request from the client that indicates that the client is to receive updated values of the first data item.

29

29. The apparatus as recited in claim 25 , wherein the value of the first data item contained in the copy of the portion of the database provided to the client had an initial value and the operator data specifies that the initial value of the first data item is to be replaced with the updated value of the first data item.

30

30. The apparatus as recited in claim 25 , further comprising means for: in response to the addition of a third data item to the portion of the database after the copy of the portion of the database was provided to the client, generating a value of the third data item; and providing the value of the third data item to the client with additional operator data that indicates that the value of the third data item is a new value that is to be added to the copy of the portion of the database at the client.

Patent Metadata

Filing Date

Unknown

Publication Date

October 9, 2007

Inventors

Pradeep Banerjee
Shyyunn Sheran Lin
Jung Tjong

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “APPROACH FOR PROPAGATING CHANGES FROM A DATABASE TO A CLIENT” (7281024). https://patentable.app/patents/7281024

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.