Intelligence for controlling virtual storage appliance storage allocation
AssigneeNet App, Inc.
InventorsGokul Soundararajan, Kaladhar Voruganti, Lakshmi Narayanan Bairavasundaram, Priya Sehgal, Vipul Mathur
Life of this patent
Estimating the term…
Abstract
A change in workload characteristics detected at one tier of a multi-tiered cache is communicated to another tier of the multi-tiered cache. Multiple caching elements exist at different tiers, and at least one tier includes a cache element that is dynamically resizable. The communicated change in workload characteristics causes the receiving tier to adjust at least one aspect of cache performance in the multi-tiered cache. In one aspect, at least one dynamically resizable element in the multi-tiered cache is resized responsive to the change in workload characteristics.
Claims22
A method in a multi-tiered cache comprising:
- detecting, by a first cache device controller for a tier of the multi-tiered cache, a change of a workload characteristic at the tier of the multi-tiered cache, where at least one of the tiers of the multi-tiered cache includes a dynamically resizable cache element, and wherein each tier is managed by a cache device controller;
- and
- communicating the change of the workload characteristic from the first cache device controller to a second cache device controller of a different tier of the multi-tiered cache to cause the second cache device controller to adjust one or both of a caching size and policy in response to the change;
- wherein a first workload and a second workload overlap access to at least a portion of cached data in the multi-tiered cache, wherein the first workload accesses the portion of cached data through a dynamic cache virtual storage appliance (VSA), and the second workload does not access the portion of cached data through the dynamic cache VSA, and wherein a change in behavior of the second workload causes the dynamic cache VSA to adjust one or both of a caching size and policy for the first workload.
A storage subsystem comprising:
- a storage server having at least one tier of a cache, the at least one tier of the cache including a first tier of the cache;
- a dynamic cache virtual storage appliance (VSA) executing in a virtual machine hosted on hardware resources separate from the storage server, the dynamic cache VSA providing a second tier of the cache, the cache comprising a multi-tiered cache, each tier including a controller to manage the cache tier;
- and
- a communication protocol for cache communication between a controller the first tier of cache at the storage server and a controller of the second tier of cache at the dynamic cache VSA,
- wherein at least the first tier of cache at the storage server, or the dynamic cache VSA, or both are dynamically resizable, and
- wherein the controllers of the first and second tiers of cache are configured to detect a change of a workload characteristic, and to communicate the change of the workload characteristic to the other controller to cause the other controller to adjust one or both of a cache size and policy for its cache tier in response to the change.
An article of manufacture comprising a non-transitory computer-readable storage medium having content stored thereon, which when accessed by a computing device causes the computing device to perform operations including:
- detecting, by a first cache controller for a first tier of a multi-tiered cache, a change of a workload characteristic at the first tier of the multi-tiered cache, where at least one of the tiers of the multi-tiered cache includes a dynamically resizable cache element;
- and
- communicating the change of the workload characteristic from the first cache controller to a second cache controller of a second tier of the multi-tiered cache to cause the second cache controller to adjust one or both of a caching size and policy in response to the change, including adjusting a memory allocation size of the dynamically resizable cache element;
- wherein a first workload and a second workload overlap access to at least a portion of cached data in the multi-tiered cache, wherein the first workload accesses the portion of cached data through a dynamic cache virtual storage appliance (VSA), and the second workload does not access the portion of cached data through the dynamic cache VSA, and wherein a change in behavior of the second workload causes the dynamic cache VSA to adjust one or both of a caching size and policy for the first workload.
Dependencies are inferred from the claim text.