Optimizing data synchronization between mobile clients and database systems
First Claim
Patent Images
1. A method of providing a response from a database system to a user of the database system, the method comprising:
- receiving a request associated with a plurality of different types of data stored in the database;
dividing, with a server, the request into separate operations, wherein the dividing of the request is based on the different types of data;
obtaining separate partial results based on the breaking of the request into separate operations, wherein the separate partial results are obtained at a plurality of times, wherein at least one of the partial results is obtained in near real-time for a type of dataset that requires faster response times to be synced with the requesting client; and
sending each partial result to the user at the time the partial result is obtained.
1 Assignment
0 Petitions
Accused Products
Abstract
Mechanisms and methods are provided for optimizing data synchronization between clients and database systems. These mechanisms and methods provide optimizations for synchronization requests, by either breaking a synchronization request into multiple smaller requests, or by executing different code routines for differing client types, or by pre-caching data that a user is anticipated to want at a future point. Such optimization techniques can enable clients with varying capacities (e.g., mobile client vs. full desktop client) to optimally utilize their respective device capabilities.
122 Citations
24 Claims
-
1. A method of providing a response from a database system to a user of the database system, the method comprising:
-
receiving a request associated with a plurality of different types of data stored in the database; dividing, with a server, the request into separate operations, wherein the dividing of the request is based on the different types of data; obtaining separate partial results based on the breaking of the request into separate operations, wherein the separate partial results are obtained at a plurality of times, wherein at least one of the partial results is obtained in near real-time for a type of dataset that requires faster response times to be synced with the requesting client; and sending each partial result to the user at the time the partial result is obtained. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer program product comprising a tangible non-transitory computer readable medium storing a plurality of instructions for controlling a processor to perform an operation for providing a response from a database system to a user of the database system, the instructions comprising:
-
receiving a request associated with a plurality of different types of data stored in the database; dividing, with a server, the request into separate operations, wherein the dividing of the request is based on the different types of data; obtaining separate partial results based on the breaking of the request into separate operations, wherein the separate partial results are obtained at a plurality of times, wherein at least one of the partial results is obtained in near real-time for a type of dataset that requires faster response times to be synced with the requesting client; and sending each partial result to the user at the time the partial result is obtained. - View Dependent Claims (16)
-
-
17. A method comprising:
-
receiving at a server a request for data from a user at a client; determining that the request is associated with a first type of data, and a second type of data, different from the first type of data; dividing the request into a first operation to retrieve data of the first type, and a second operation to retrieve data of the second type; obtaining a first partial result from the first operation, the first partial result comprising the data of the first type; sending the first partial result from the server to the client for the data of the first type to be presented at the client; obtaining a second partial result from the second operation, the second partial result comprising the data of the second type; and sending the second partial result from the server to the client for the data of the second type to be presented at the client, wherein the data of the first type has a higher priority than the data of the second type, and the data of the first type is presented at the client before the data of the second type is presented at the client. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24)
-
Specification