METHOD AND SYSTEM FOR SELF-TUNING CACHE MANAGEMENT
6 Assignments
0 Petitions
Accused Products
Abstract
Web objects, such as media files are sent through an adaptation server which includes a transcoder for adapting forwarded objects according to profiles of the receiving destinations, and a cache memory for caching frequently requested objects, including their adapted versions. The probability of additional requests for the same object before the object expires, is assessed by tracking hits. Only objects having experienced hits in excess of a hit threshold are cached, the hit threshold being adaptively adjusted based on the capacity of the cache, and the space required to store cached media files. Expired objects are collected in a list, and may be periodically ejected from the cache, or when the cache is nearly full.
-
Citations
68 Claims
-
1-34. -34. (canceled)
-
35. A method for managing caching of objects in a cache, comprising:
-
receiving a request (hit) for an object having a predetermined expiry time; obtaining the object from a media source provided the object is not cached; caching the object after receiving an Nth request for the object, N being greater than a hit threshold HT, provided there is space available in the cache; dynamically adjusting the hit threshold HT as a function of available cache space; and removing the object from the cache after the predetermined expiry time has passed provided the object was cached, thereby making space available in the cache. - View Dependent Claims (36, 37, 38, 39, 40, 41, 42, 43, 44)
-
-
45. A media adaptation server computer, comprising:
-
a processor and a cache; and a self-tuning cache management module for managing the cache, comprising computer readable instructions stored in a memory causing the processor to; receive a request (hit) for an object having a predetermined expiry time; obtain the object from a media source provided the object is not cached; cache the object after receiving an Nth request for the object, N being greater than a hit threshold HT, provided there is space available in the cache; dynamically adjust the hit threshold HT as a function of available cache space; and remove the object from the cache after the predetermined expiry time has passed provided the object was cached, thereby making space available in the cache. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54)
-
-
55. A method of caching one of a plurality of objects in a cache of predetermined capacity having a cache size threshold less than the predetermined capacity, comprising:
-
registering a descriptor of each of the plurality of objects in an object registry upon a first request for each respective object, the descriptor including a respective expiry time for the corresponding object; storing a reference to each object in a list sorted according to the respective expiry time; determining an adaptive hit threshold (HT) for caching as a function of the sizes of objects already cached and the cache size threshold, and caching each object only after it has received more than HT requests; removing the descriptor of each corresponding object from the object registry after its expiry time; and removing each object from the cache after its expiry time. - View Dependent Claims (56, 57, 58, 59, 60)
-
-
61. A media adaptation server comprising a self-tuning cache management sub system for processing requests for caching objects in a media cache, the system comprising:
-
a processor, and a non-transitory computer readable storage medium having computer readable instructions stored thereon for execution by the processor, forming; a caching control module comprising executable instructions for determining caching of objects, and operating in combination with data structures, the caching control module comprising; an object registry for identifying and registering objects; a hit buckets array of hit buckets for storing accumulated sizes of registered objects, and indexed by a hit number which corresponds to a number of requests (hits) each registered object has received; a hit threshold register for storing an adaptively determined hit threshold (HT) specifying a minimum number of hits after which an object is cached; a time-to-live (TTL) window list for storing expiry times of respective registered objects; and a timer for determining an occurrence of times for removing registered objects from the object registry and from the cache. - View Dependent Claims (62, 63, 64, 65, 66, 67)
-
-
68. A self-tuning cache management system for processing requests for caching objects in a media cache, the system comprising:
-
a non-transitory computer readable storage medium having computer readable instructions stored thereon for execution by a processor, causing the processor to perform functions of; registering requested objects upon respective first requests for the requested objects in an object registry, including a time to live (TTL) for each requested object; accumulating an object size of each requested object in hit buckets according to a number of requests received for said each requested object; storing a hit threshold (HT) in a hit threshold register, the HT determining a minimum number of requests any of the requested object must have before the requested object is cached; adjusting the HT periodically according to a cache fill; listing the requested objects in a TTL window according to respective expiry times according to the TTL of said requested object; and scanning the TTL window and removing requested objects from the object registry when the requested objects are expired, furthermore removing the requested objects from the cache provided the requested objects had been cached.
-
Specification