Nova Patents
CA2390954C

Dynamic multi-level cache manager

Abstract

A method of caching data in a multi-processor computing environment, involves the steps of receiving from one of a plurality of network clients a request for a data item; establishing a private cache uniquely associating with the network client; associating the private cache with a shared cache, the shared cache including the requested data item and being associated with a number of the network clients; and updating the private cache with the requested data item. In one aspect, the shared cache includes a subset of a store of dynamically- variable data, and the method also involves storing in the shared cache a data update received from one of the network clients; receiving from another of the network clients a request for an item of the variable data; and updating the private cache of the one network client with the update data and the requested data item.

CA2390954C, drawing sheet 1
Sheet 1 of 9

Term

Term ended

Expired 19 June 2022, 4.3 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

20 claims: 6 independent, 14 dependent

  1. 1
    CA 02390954 2009-05-04 WE CLAIM:1. A method of caching data, which involves the steps of: receiving from one of a plurality of network clients a request for a data item;creating a private cache uniquely associated with the one network client;initiating association of the private cache with a shared cache, the shared cache including the requested data item and being associated with a number of the network clients;and updating the private cache with the requested data item.
  2. 9
    A computer-readable medium having a computer readable code embodied therein, for execution by a computer processor, for performing the steps of:receiving from one of a plurality of network clients a request for a data item;creating a private cache uniquely associated with the one network client;initiating association of the private cache with a shared cache, the shared cache including the requested data item and being associated with a number of the network clients;and updating the private cache with the requested data item.
  3. 10
    A caching server for caching data, the caching server comprising:receiving means for receiving from one of a plurality of network clients a request for a data item;cache establishing means in communication with the receiving means for creating a private cache uniquely associated with the one network client;cache associating means in communication with the cache establishing means for initiating association of the private cache with a shared cache, the shared cache including the requested data item and being associated with a number of the network clients;and updating means for updating the private cache with the requested data item.
  4. 11
    A method of caching dynamically-variable data, which involves the steps of:maintaining a store of dynamically-variable data and a shared cache, the shared cache being associated with a plurality of network clients and including a subset of the data store;receiving from one of the network clients a data update to the shared cache, and storing the updated data in at least the shared cache;receiving from one other of the network clients a request for an item of the variable data;and initiating updating of a private cache associated with the one other network client, the private cache being uniquely associated with the one other network client and including a -25CA 02390954 2009-05-04 respective portion of the data subset, the data portion including the requested data item and cache data corresponding to the updated data.
  5. 19
    A computer-readable medium having a computer readable code embodied therein, for execution by a computer processor, for performing the steps of:maintaining a store of dynamically-variable data and a shared cache, the shared cache being associated with a plurality of network clients and including a subset of the data store;-26CA 02390954 2009-05-04 receiving from one of the network clients a data update to the shared cache, and storing the updated data in at least the shared cache;receiving from one other of the network clients a request for an item of the variable data;and 5 updating a private cache associated with the one other network client, the private cache being uniquely associated with the one other network client and including a respective portion of the data subset, the data portion including the requested data item and cache data corresponding to the updated data.
  6. 20
    A caching server for caching data, the caching server comprising:10 a shared cache associated with a plurality of network clients;data update means in communication with the shared cache for receiving from one of the network clients a data update to the shared cache, and storing the updated data in at least the shared cache;receiving means for receiving from one other of the network clients a request for an item 15 of the variable data;and updating means for updating a private cache associated with the one other network client, the private cache being uniquely associated with the one other network client and including a respective portion of the data subset, the data portion including the requested data item and cache data corresponding to the updated data.