Patent classifications
G06F2212/314
Load balancer shared session cache
A shared session cache can be accessible by multiple load balancers, and can indicate whether client devices are associated with specific backend servers of a server pool. When a client device connects to a load balancer, the load balancer can use the shared session cache to determine if the client device is already associated with a specific backend server. If so, the load balancer can connect the client device to that specific backend server so that it can continue an existing session with the specific backend server. If not, the load balancer can select a new backend server for the client device, connect the client device to the newly selected backend server, and create an entry in the shared session cache indicating that the client device is associated with the newly selected backend server.
Cloud Storage for Database Using Object Storage
Techniques are disclosed relating to managing distributed storage of data with low latency access and durable storage. A distributed storage system may include storage caches distributed across availability zones in front of a shared object storage. Database nodes collocated with the storage caches may handle the storage, retrieval, and manipulation of data in the storage caches and the shared object storage. The shared object storage cache provides persistent storage of data for the distributed storage system while storage of the data in the storage caches is implemented to provide low latency retrieval of the storage. The storage caches across the availability zones may be populated through the shared object storage rather than moving data across availability zones.
Extra-resilient cache for resilient storage array
A data storage array is configured for m-way resiliency across a first plurality of storage nodes. The m-way resiliency causes the data storage array to direct each top-level write to at least m storage nodes within the first plurality, for committing data to a corresponding capacity region allocated on each storage node to which each write operation is directed. Based on the data storage array being configured for m-way resiliency, an extra-resilient cache is allocated across a second plurality of storage nodes comprising at least s storage nodes (where s>m), including allocating a corresponding cache region on each of the second plurality for use by the extra-resilient cache. Based on determining that a particular top-level write has not been acknowledged by at least n of the first plurality of storage nodes (where n m), the particular top-level write is redirected to the extra-resilient cache.
Cache management using multiple cache memories and favored volumes with multiple residency time multipliers
A method for demoting a selected storage element from a cache memory includes storing favored and non-favored storage elements within a higher performance portion and lower performance portion of the cache memory. The method maintains a plurality of favored LRU lists and a non-favored LRU list for the higher and lower performance portions of the cache memory. Each favored LRU list contains entries associated with the favored storage elements that have the same unique residency multiplier. The non-favored LRU list includes entries associated with the non-favored storage elements. The method demotes a selected favored or non-favored storage element from the higher and lower performance portions of the cache memory according to a cache demotion policy that provides a preference to favored storage elements over non-favored storage elements based on a computed cache life expectancy, residency time, and the unique residency multiplier. A corresponding storage controller and computer program product are also disclosed.
Cache management using favored volumes and a multiple tiered cache memory
A method for demoting a selected storage element from a cache memory includes storing favored and non-favored storage elements within a higher performance portion and lower performance portion of the cache memory. The favored storage elements are retained in the cache memory longer than the non-favored storage elements. The method maintains a first favored LRU list and a first non-favored LRU list, associated with the favored and non-favored storage elements stored within the higher performance portion of the cache. The method selects a favored or non-favored storage element to be demoted from the higher performance portion of the cache memory according to life expectancy and residency of the oldest favored and non-favored storage elements in the first LRU lists. The method demotes the selected from the higher performance portion of the cache to the lower performance portion of the cache, or to the data storage devices, according to a cache demotion policy. A corresponding storage controller and computer program product are also disclosed.
MAINTAINING A CACHED VERSION OF A FILE AT A ROUTER DEVICE
A router device may receive, from a user device, a request for access to a file. The router device may determine that a cached version of the file is stored in a first data structure associated with the router device. The router device may communicate with a server device to determine whether the cached version of the file is current. The server device may be associated with a second data structure that stores a master version of the file. The router device may generate a copy of the cached version of the file based on communicating with the server device. The router device may send the copy of the cached version of the file to the user device.
MAINTAINING A CACHED VERSION OF A FILE AT A ROUTER DEVICE
A router device may receive a copy of a file. The router device may identify metadata associated with the copy of the file. The router device may process the metadata to identify a priority position in a first data structure associated with the router device. The router device may cause a copy of the file to be stored as a cached version of the file at the priority position in the first data structure. The router device may generate a copy of the cached version of the file. The router device may send the copy of the cached version of the file to a user device.
MAINTAINING CONSISTENCY OF ASYNCHRONOUS REPLICATION
Maintaining consistency for asynchronous replication of LUNs of a local storage system to corresponding LUNs of a remote storage system includes copying application data written to LUNs to cache slots, copying metadata of LUNs to cache slots, associating a first sequence number to all metadata modifications and all application data writes that are begun after a first time and before a second time, associating a second sequence number, different from the first sequence number, to all metadata modifications and all application data writes that are begun after the second time, and, after completion of all metadata modifications and all application data writes associated with the first sequence number, initiating transfer to the remote storage system of all metadata modifications and all application data writes associated with the first sequence number. Each cache slot may include a field that indicates a corresponding sequence number.
Security of Dynamic I/O Virtualization
A system and method for providing dynamic I/O virtualization is herein disclosed. According to one embodiment, a device capable of performing hypervisor-agnostic and device-agnostic I/O virtualization includes a host computer interface, memory, I/O devices (GPU, disk, NIC), and efficient communication mechanisms for virtual machines to communicate their intention to perform I/O operations on the device. According to one embodiment, the communication mechanism may use shared memory. According to some embodiments, the device may be implemented purely in hardware, in software, or using a combination of hardware and software. According to some embodiments, the device may share its memory with guest processes to perform optimizations including but not limited to a shared page cache and a shared heap.
DATA WRITING METHOD, DEVICE, STORAGE SERVER, AND COMPUTER READABLE STORAGE MEDIUM
This application discloses a data writing method, device, a storage server and a computer readable storage medium, including: writing, when a write request is received, write data corresponding to the write request to a write buffer; acquiring historical access data of a data block corresponding to to-be-flushed data in the write buffer when a data flushing operation is triggered for the write buffer; determining whether the to-be-flushed data is write-only data based on the historical access data by using a pre-trained classifier; if yes, writing the to-be-flushed data to a hard disk drive; and if no, writing the to-be-flushed data to a cache. The data writing method provided by this application can effectively reduce the traffic of writing dirty data to the cache while reserving more space in the cache for the ordinary data, thereby improving the utilization of the cache space and the read hit rate of the cache.