CACHE AND INDEX REFRESHING STRATEGIES FOR VARIABLY DYNAMIC ITEMS AND ACCESSES
First Claim
1. A method of prioritizing a refreshing of items provided in response to queries, the items stored in an item cache by a computer having a processor, respective items corresponding to a source item retrieved from a source item host accessible to the computer, and the method comprising:
- executing on the processor instructions configured to;
for respective items;
predict a query frequency of queries requesting the item,predict an update frequency of the source item by the source item host, andcompute a refresh utility of the item based on the query frequency and the update frequency; and
prioritize the refreshing of the items based on the refresh utilities.
2 Assignments
0 Petitions
Accused Products
Abstract
Many computing scenarios involve an item cache or index, comprising items corresponding to source items that may change without notice, rendering the item in the item cache or index stale. It may not be possible to guarantee the freshness of the items, but it may be desirable to reduce staleness in an efficient manner. Therefore, the refreshing of items may be prioritized by first predicting the query frequency of respective item representing the rate at which an item is retrieved from the item cache (e.g., by monitoring queries for the item), predicting an update frequency representing the rate at which the source item is updated by the source item host (e.g., by classifying the source item type), and computing a refresh utility representing the improvement in cache freshness achieved by refreshing the item. Respective items may then be prioritized for refreshing according to the computed refresh utilities.
190 Citations
20 Claims
-
1. A method of prioritizing a refreshing of items provided in response to queries, the items stored in an item cache by a computer having a processor, respective items corresponding to a source item retrieved from a source item host accessible to the computer, and the method comprising:
executing on the processor instructions configured to; for respective items; predict a query frequency of queries requesting the item, predict an update frequency of the source item by the source item host, and compute a refresh utility of the item based on the query frequency and the update frequency; and prioritize the refreshing of the items based on the refresh utilities. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18)
-
19. A system configured to prioritize a refreshing of items provided in response to queries, the items stored in an item cache by a computer having a processor, respective items corresponding to a source item retrieved from a source item host accessible to the computer, and the system comprising:
-
a refresh utility computing component configured to compute a refresh utility of the items stored in the item cache by, for respective items; predicting a query frequency of queries requesting the item, predicting an update frequency of the source item by the source item host, and computing a refresh utility of the item based on the query frequency and the update frequency; and an item prioritizing component configured to prioritize the refreshing of the items based on the refresh utilities.
-
-
20. A computer-readable storage medium comprising processor-executable instructions, the instructions configured to, when executed by a processor of a computer comprising an item cache of items and at least one cache refreshing resource configured to refresh items in the item cache, respective items provided in response to queries and corresponding to a source item retrieved from a source item host accessible to the computer, refresh respective items stored in the item cache by:
-
predicting a query frequency of queries requesting the item by; tracking a rate of queries for the item, computing a query frequency for the item based on the rate of queries, and generating an item query frequency set configured to map items to query frequencies; selecting the query frequency of the item from the item query frequency set; predicting an update frequency of the source item by the source item host by; generating an update frequency set identifying update frequencies of source items of respective source item types by; generating a machine learning function configured to map source item types to update frequencies, and training the machine learning function based on a training data set associating source items of respective source item types with update frequencies extracting at least one source item criterion of the source item; classifying the source item as a source item type according to the at least one source item criterion; and predicting the update frequency of the source item based on the update frequencies of source items of the source item type; and identifying from the update frequency set the update frequency of the source item type of the source item; computing a refresh utility of the item based on the query frequency and the update frequency by; computing a refresh probability for the item based on the query frequency of queries requesting the item and the update probability of the source item by the source item host, the refresh probabilities selected to yield a desirably high refresh utility; and after at least one item in the item cache is refreshed, recomputing the refresh probability for the item based on the query frequency of queries requesting the item and the update probability of the source item by the source item host; prioritizing the refreshing of the items based on the refresh utilities; and refreshing the items in the item cache according to the refresh frequency of the item by allocating the cache refreshing resources of the cache refreshing resource set to refresh items in the item cache based on respective refresh utilities of the items.
-
Specification