摘要:
Schema evolution involves defining flavored object groups. Specifically, related collections of replicated tables and other database objects, which are defined as belonging to an object group, are given different “flavors.” A flavor describes different subsets of the objects and even different subsets of the columns in the master tables. In one embodiment, when one site in a distributed database system propagates changes to a replicated database object, the current flavor for the site is also transmitted, so that the destination site can make the necessary adjustments in the uploaded changes by dropping the values for obsolete columns and using default values for new columns.
摘要:
Replication for front office automation involves the use of snapshots that are instantiated on laptops, in which refreshing the snapshots is driven from a master site with a high-performance protocol. All of the necessary snapshot metadata for performing the snapshot refreshes is stored at the master site, so that the laptop only needs to send a single refresh request. In response to the refresh request, the master site reconciles the differences between the master tables and the laptop's snapshots and transmits the differences to the laptop, reducing the necessary network traffic for updating a snapshot to a single round trip.
摘要:
A method for applying changes to a standby system is described in which multiple apply tasks or “slaves” are scheduled to changes from redo logs, especially those changes in large transactions, in parallel and as soon as they are encountered in the logs. To foster data convergence, a partial ordering may be imposed on the transactions so that those transactions that actually depend on others are forced to wait on the transactions they are dependent upon commit. To foster read consistency, synchronization points may be periodically established, at which points a read consistent state of the standby database system can be obtained-all without adversely impact the throughput of the system.
摘要:
Techniques for making a replica of a particular group of database objects of a database on a particular node that does not initially have the particular group of database objects include determining whether conditions for copying a full database from a first node are satisfied. If conditions for copying the full database from the first node are not satisfied, then a database-object-copy routine is employed for each database object in the particular group of database objects. If conditions for copying the full database from the first node are satisfied, then a full-database-copy routine for performing a copy of an entire database is employed.
摘要:
Techniques for making a replica of a particular group of database objects of a database on a particular node that does not initially have the particular group of database objects include transferring description data from a first node to the particular node during a first time period. The description data describes the particular group of database objects at a first time. The first time period begins at the first time and ends at a second time. During the first time period, a request from a user of the database to perform an operation involving particular data in the particular group of database objects is processed.
摘要:
A method of redeeming for a seller electronic payments generated by and received from a customer using a master key unknown to the seller. In anticipation of making electronic payments, a customer sends a bank the master key that he will use to generate electronic payments. The bank stores the master key. Later, the bank receives from the seller a redemption request including a seller identifier, a first value of a payment index, and an electronic payment associated with the first value of the payment index. The bank authenticates the electronic payment by comparing the electronic payment to a hash of a string including the master key, the seller identifier, and the first value of the payment index. If the electronic payment is authenticated, the bank determines an amount due to the seller and credits that amount to the seller.
摘要:
A method of space efficient electronic payments. A customer initiates an electronic transaction by transmitting a request for payment information to a seller. In response, the customer receives from the seller the payment information needed to generate an electronic payment. The customer determines the reliability of the payment information by authenticating it. If the payment information is authenticated, then the customer generates an electronic payment using the payment information and a master key unknown to the seller. Finally, the customer transmits the electronic payment to the seller along with a request for desired goods and/or services.
摘要:
Write operations for weakly consistent replicated database systems have application-specific embedded dependency queries and related descriptions of the results that are expected to be returned when the respective dependency queries are run against the database. The dependency queries are arbitrary queries that are provided by the application to satisfy the requirements of the application. Write operations that conflict with the current state of any given instance of such a database are detected by comparing (a) the results that are returned when the dependency queries for those writes are run against the given instance of the database with (b) the results that are expected to be returned.
摘要:
Write operations for weakly consistent replicated database systems have embedded conflict detection and conflict resolution procedures for identifying and resolving, respectively conflicts between such write operations and the current state of any given instance of such a database. These write operations are committed to a firm execution order by the host for one instance of such a database, and this execution order propagates to the other instances of the database. Accordingly, a write log distinguishes between the writes that are known to be committed to a firm execution order (the "tentative writes") is maintained for each instance of the database, thereby enabling the user to explicitly identifying the stable data and the potentially unstable data in any given instance of the database. Furthermore, provision is made for enabling users to select from a set of predefined consistency guarantees across all instances of such a database for any given session.
摘要:
The present invention provides client-selected consistency guarantees to clients of a weakly consistent replicated database on a per "session" basis. The clients have access to utilities which allow the clients to, individually or collectively, define a "session" over which the selected guarantees are enforced. A "session" is broadly defined as a sequence of logically related Reads and Writes to the database. Sessions are initiated and terminated substantially independently of other sessions which may exist concurrently. Clients are allowed, however, to clone sessions and/or merge sessions with other clients. Clients select a minimum relevant subset of guarantees from among a set of pre-defined consistency guarantees, where "relevancy" is a client determined factor. At any given time, the system may be enforcing a number of different combinations of consistency guarantees. The guarantees ensure that all clients participating in a particular session view the database as having certain conditions of data consistency--the consistency of which is only provided with respect to the participants' Read and Write requests. Clients are allowed to downgrade their selected guarantees during the course of their sessions. One implementation of the present invention permits the selection of any one of four consistency guarantees.