Abstract:
Techniques are disclosed for delivering push subscription notifications in large scale distributed systems. Subscription notifications can be delivered to mobile devices of subscribing users by monitoring, at a server, an application database comprising a data record having one or more data values, detecting, at the server, in accordance with the monitoring, a changed data value, querying a subscription database for a subscription having at least one constant value to be compared to the changed data value in accordance with a trigger condition specified in a trigger template, determining whether the trigger condition is true using the changed data value and the constant value as the values of the first and second variables, respectively, in the at least one comparison; and pushing a notification from the server in response to the trigger condition being true.
Abstract:
Disclosed are methods and apparatus for efficiently storing application data received from clients in a database stored on a server, such as a cloud-based database. The methods include receiving a batch of a plurality of web operations that specify actions to be performed on data objects that represent application data stored in a cloud database, translating the web operations to a batch of data storage operation sets, creating a temporary database having a subset of contents of the cloud database, applying the data storage operation sets to the temporary database, recording database operations generated by the temporary database based on the plurality of data storage operation sets, and applying the plurality of database operations to the cloud database in a transaction. Translating the web operations can include mapping the actions to be performed on the data objects to transactions to be performed on the cloud database.
Abstract:
The embodiments set forth a technique that enables the storage of data at a first data storage device. The technique includes, at the first data storage device, dividing the data to produce a first and second portion of the data, in which the first and second portions are associated with a computed exclusive or (“XOR”) value. Also, the technique includes deleting the second portion stored at the first data storage device, based at least in part on whether the computed XOR value is established. Also, the technique includes receiving a first replicated metadata, in which the first replicated metadata indicates a location of the second portion stored at the second data storage device. Furthermore, the technique includes communicating either the first portion or the second portion, to a remote computing device, based at least in part on the first replicated metadata.
Abstract:
Disclosed herein is a technique for providing status feedback on the execution of a database request. The technique involves receiving a database request that defines an operation to be performed on at least one data record stored in a database. The data record is updated in the database in accordance with the operation, and one or more tasks that are to be performed in connection to the operation are scheduled for execution. A first version of a receipt is generated and provided to the application, and includes, for each of the one or more tasks, a status field that indicates a progress of executing the task. The method further includes the steps of, in response to a change in the execution of any of the one or more tasks, updating the status fields to produce a second version of the receipt, which is then provided to the application.
Abstract:
A method of generating a schema including receiving a data record having a record type name and one or more data values is provided. The data values are associated with data value names. The method includes determining whether a set of existing schemas includes a schema associated with the record type name, determining whether the schema includes an element having the same name as a corresponding data element of the record, and validating the corresponding data element against the schema element. A new schema element is added to the schema, the new schema element having the same name and type as the corresponding data element of the record. The method can further include indexing at least one of the one or more data values, which involves querying the indexed data, forming subscription lists for the data values, and forming a derived data value associated with one or more data values.
Abstract:
Techniques are disclosed for delivering push subscription notifications in large scale distributed systems. Subscription notifications can be delivered to mobile devices of subscribing users by monitoring, at a server, an application database comprising a data record having one or more data values, detecting, at the server, in accordance with the monitoring, a changed data value, querying a subscription database for a subscription having at least one constant value to be compared to the changed data value in accordance with a trigger condition specified in a trigger template, determining whether the trigger condition is true using the changed data value and the constant value as the values of the first and second variables, respectively, in the at least one comparison; and pushing a notification from the server in response to the trigger condition being true.