Patent classifications
G06F2212/464
Content Distribution Network Supporting Popularity-Based Caching
A content delivery network may provide content items to requesting devices using a popularity-based distribution hierarchy. A central analysis system may determine popularity data for a content item stored in a first caching device. The central analysis system may determine that a change in the popularity data is beyond a threshold value. The central analysis system may then transmit an instruction to move the content item from the first caching device to a second caching device in a different tier of caching devices than the first caching device. The central analysis system may update a content index to indicate that the content item has been moved to the second caching device. A user device may be redirected to request the content item directly from the second caching device.
USING DYNAMIC DATA STRUCTURES FOR STORING DATA OBJECTS
A technique for dynamic data structure usage for storing data objects is described. In one example of the present disclosure, a system can receive a data object and properties associated with the data object. The system can determine, based on at least one of the properties and pre-defined rules for data objects and corresponding object types, an object type of the data object and a first data structure for storing the data object that is different from a second data structure currently storing data objects in the memory. The system can output a command for causing the first data structure to store the data object in the memory.
Efficient and flexible load-balancing for clusters of caches under latency constraint
The present technology provides a system, method and computer readable medium for steering a content request among plurality of cache servers based on multi-level assessment of content popularity. In some embodiments a three levels of popularity may be determined comprising popular, semi-popular and unpopular designations for the queried content. The processing of the query and delivery of the requested content depends on the aforementioned popularity level designation and comprises a acceptance of the query at the edge cache server to which the query was originally directed, rejection of the query and re-direction to a second edge cache server or redirection of the query to origin server to thereby deliver the requested content. The proposed technology results in higher hit ratio for edge cache clusters by steering requests for semi-popular content to one or more additional cache servers while forwarding request for unpopular content to origin server.
CACHED DATA EXPIRATION AND REFRESH
The described technology is directed towards maintaining a cache of data items, with cached data items having current value subsets and next value subsets. The cache is accessed for data item requests, to return a cache miss if a requested data item is not cached, to return data from the current value subset if not expired, to return data from the next value subset if the current value subset is expired and the next value subset is not expired, or to return a cache miss (or expired data) if both subsets are expired. Cached data items are refreshed, (e.g., periodically), when a data item's current value subset is expired by replacing the data item's current value subset with the next value subset and caching a new next value subset, or caching a new next value subset when the next value subset will expire within a threshold time.
Data storage methods and apparatuses for reducing the number of writes to flash-based storage
Methods and apparatuses are provided for reducing the number of write operations to a flash-based storage system that stores and replaces data. The storage system includes a first storage implemented using non-flash storage and a second storage implemented using flash memory. Missed data is first stored in the first storage, which can be less sensitive than flash to write operations. The missed data is stored in the flash-based second storage only after the missed data satisfies a storage management algorithm.
Memory descriptor list caching and pipeline processing
Memory descriptor list caching and pipeline processing techniques are described. In one or more examples, a method is configured to increase efficiency of buffer usage within a pipeline of a computing device. The method includes creation of a buffer in memory of the computing device and caching of a memory descriptor list by the computing device that describes the buffer in a buffer information cache and has associated therewith a handle that acts as a lookup to the memory descriptor list. The method also includes passing the handle through the pipeline of the computing device for processing of data within the buffer by one or more stages of the pipeline such that access to the data is obtained by the one or more stages by using the handle as the lookup as part of a call to obtain the memory descriptor list for the buffer from the buffer information cache.
Method and system for self-tuning cache management
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.
WORKLOAD DETECTION AND MEDIA CACHE MANAGEMENT
Implementations disclosed herein include a method comprising detecting a workload request from a host, estimating a media cache fill-up rate based on the detected workload request, estimating a current media cache usage, predicting, based on the detected workload request, the estimated media cache fill-up rate and the estimated current media cache usage, a workload profile, and determining a preemptive media cache cleaning strategy based on the predicted workload profile.
Customized media overlays
Among other things, embodiments of the present disclosure improve the functionality of electronic messaging and imaging software and systems by enabling users to generate customized media overlays that can be shared with other users. For example, media overlays can be generated by the system and displayed in conjunction with media content (e.g., images and/or video) generated by an image-capturing device (e.g., a digital camera). In some embodiments, existing media overlays may be used by users to create derivative media overlays. The system may track usage of media overlays and any derivatives created based thereon, and allow users to control the distribution and use of their overlays in future derivatives. In some embodiments, for example, a user can modify an overlay they created and cause the modification to propagate to all derivative overlays based on the user's overlay.
Content distribution network supporting popularity-based caching
A content delivery network may provide content items to requesting devices using a popularity-based distribution hierarchy. A central analysis system may determine popularity data for a content item stored in a first caching device. The central analysis system may determine that a change in the popularity data is beyond a threshold value. The central analysis system may then transmit an instruction to move the content item from the first caching device to a second caching device in a different tier of caching devices than the first caching device. The central analysis system may update a content index to indicate that the content item has been moved to the second caching device. A user device may be redirected to request the content item directly from the second caching device.