Methods, systems and computer program products for controlling caching of distributed data
AssigneeInternational Business Machines Corporation
InventorsGennaro A. Cuomo, Brian K. Martin
Life of this patent
Estimating the term…
Abstract
Controlling a cache of distributed data is provided by dynamically determining whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data. The data may be selectively cached based on the indication.
Claims17
A method of controlling a cache of distributed data, comprising:
- dynamically determining whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data;
- and
- selectively caching the data based on the indication, wherein dynamically determining whether and/or where to cache the distributed data, comprises:
- determining a predicted maximum number of cache accesses;
- determining a predicted maximum time consumed by processing cache hits corresponding to a cache entry corresponding to the distributed data;
- determining a time (r) to replicate the distributed data;
- determining time (c) to generate the distributed data;
- and
- setting the indication to indicate caching the distributed data if the sum of the time to generate the distributed data, the time to replicate the distributed data and the predicted maximum time consumed by processing cache hits is less than the product of the predicted maximum number of cache accesses and the time to generate the distributed data.
A method of controlling a cache of distributed data, comprising:
- dynamically determining whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data;
- and
- selectively caching the data based on the indication, wherein setting the indication is repeatedly performed for a time (r) that is equal to a time to retrieve the distributed data from a local cache, a time to replicate the distributed data in a cluster, and a time to offload the distributed data to disk, to thereby determine whether and where to cache the distributed data.
A system for controlling a cache of distributed data, comprising:
- means for dynamically determining whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data;
- and
- means for selectively caching the data based on the indication, wherein the means for dynamically determining whether and/or where to cache the distributed data, comprises:
- means for determining a predicted maximum number of cache accesses;
- means for determining a predicted maximum time consumed by processing cache hits corresponding to a cache entry corresponding to the distributed data;
- means for determining a time (r) to replicate the distributed data;
- means for determining time (c) to generate the distributed data;
- and
- means for setting the indication to indicate caching the distributed data if the sum of the time to generate the distributed data, the time to replicate the distributed data and the predicted maximum time consumed by processing cache hits is less than the product of the predicted maximum number of cache accesses and the time to generate the distributed data.
A computer program product for controlling a cache of distributed data, comprising:
- a computer readable medium having computer readable program code embodied therein, the computer readable program code comprising:
- computer readable program code configured to dynamically determine whether and/or where to cache the distributed data based on characteristics of the data, characteristics of the source of the data and characteristics of the cache so as to provide an indication of whether to cache the data;
- and
- computer readable program code configured to selectively cache the data based on the indication, wherein the computer readable program code configured to dynamically determine whether and/or where to cache the distributed data, comprises:
- computer readable program code configured to determine a predicted maximum number of cache accesses;
- computer readable program code configured to determine a predicted maximum time consumed by processing cache hits corresponding to a cache entry corresponding to the distributed data;
- computer readable program code configured to determine a time (r) to replicate the distributed data;
- computer readable program code configured to determine time (c) to generate the distributed data;
- and
- computer readable program code configured to set the indication to indicate caching the distributed data if the sum of the time to generate the distributed data, the time to replicate the distributed data and the predicted maximum time consumed by processing cache hits is less than the product of the predicted maximum number of cache accesses and the time to generate the distributed data.
Dependencies are inferred from the claim text.