METHOD FOR COORDINATING UPDATES TO DATABASE AND IN-MEMORY CACHE
First Claim
1. A computer method of caching comprising:
- executing a multi-threaded application, different threads executing respective transactions accessing a data store from a single server;
representing status of said transactions;
caching results of said transactions based on transaction status and on data store determination of transaction, such that said caching is accomplished in a two stage commit and effectively forms a two level cache.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer method and system of caching. In a multi-threaded application, different threads execute respective transactions accessing a data store (e.g. database) from a single server. The method and system represent status of datastore transactions using respective certain (e.g. Future) parameters.
Results of the said transactions are cached based on transaction status as represented by the certain parameters and on data store determination of a subject transaction. The caching employs a two stage commit and effectively forms a two level cache. One levels maps from datastore keys to entries in the cache. Each entry stores a respective last known commit value. The second level provides an optional mapping from a respective transaction as represented by the corresponding certain parameter to an updated value.
-
Citations
20 Claims
-
1. A computer method of caching comprising:
-
executing a multi-threaded application, different threads executing respective transactions accessing a data store from a single server; representing status of said transactions; caching results of said transactions based on transaction status and on data store determination of transaction, such that said caching is accomplished in a two stage commit and effectively forms a two level cache. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer caching system comprising:
-
a data store supporting a multi-threaded application, different threads executing respective transactions accessing the data store from a single server; transaction status indicators representing status of said transactions; and a cache storing results of the transactions based on transaction status indicators and on data store determinations of transactions, such that said cache employs a 2 phase commit and two level storage. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. An in-memory computer cache comprising:
-
given a multi-threaded application, different threads executing respective transactions accessing a data store from a single server, a transaction cache storing results of the transactions and having; a two level storage, one level mapping from data store keys to entries in the cache; and a second level optionally mapping from a respective transaction to an updated value; wherein each respective transaction is represented by a corresponding value indicative of computations being preferred by the transaction and the cache employs a two phase commit. - View Dependent Claims (17, 18, 19)
-
-
20. A computer program product for caching results of database transactions, the computer program product comprising:
a computer usable medium having computer usable program code embodied therewith, the computer usable program code comprising; computer useable code configured to implement a cache having a two stage commit and two levels such that each database transaction sees its produced updated value on top of an effectively shared store of known commit values, the database transactions accessing a database from a single server.
Specification