Apparatus and method for cache provisioning, configuration for optimal application performance
First Claim
1. A method, comprising:
- monitoring an input/output (IO) stream between an application and at least one storage device with an IO monitor;
recording application-level heuristics that include information pertaining to a plurality of characteristics associated with the application;
recording IO-level heuristics in IO requests including information pertaining to a plurality of characteristics associated with the IO stream between the application and the at least one storage device;
correlating the recorded IO-level heuristics with the recorded application-level heuristics to determine at least one optimizable cache parameter for a performance increase corresponding to the IO stream;
generating a caching policy based on the at least one optimizable cache parameter;
selecting cache settings based on the caching policy; and
configuring a cache unit based on the selected cache settings.
1 Assignment
0 Petitions
Accused Products
Abstract
In an embodiment of the invention, a method comprises: recording application-level heuristics and IO-level (input/output-level) heuristics; correlating and analyzing the application-level heuristics and IO-level heuristics; and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, generating a policy for achieving optimal application performance. In another embodiment of the invention, an apparatus comprises: a system configured to record application-level heuristics and IO-level heuristics, to correlate and analyze the application-level heuristics and IO-level heuristics, and based on an analysis and correlation of the application-level heuristics and IO-level heuristics, to generate a policy for achieving optimal application performance.
-
Citations
20 Claims
-
1. A method, comprising:
-
monitoring an input/output (IO) stream between an application and at least one storage device with an IO monitor; recording application-level heuristics that include information pertaining to a plurality of characteristics associated with the application; recording IO-level heuristics in IO requests including information pertaining to a plurality of characteristics associated with the IO stream between the application and the at least one storage device; correlating the recorded IO-level heuristics with the recorded application-level heuristics to determine at least one optimizable cache parameter for a performance increase corresponding to the IO stream; generating a caching policy based on the at least one optimizable cache parameter; selecting cache settings based on the caching policy; and configuring a cache unit based on the selected cache settings. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system, comprising:
-
at least one storage device; an input/output (IO) monitor configured to interact with an application, to collect information pertaining to a plurality of characteristics associated with the application, and to collect information pertaining to a plurality of characteristics associated with an IO stream between the application and the storage device; an IO stream analyzer coupled with the IO monitor and configured to determine at least one optimizable cache parameter for a particular performance boost corresponding to the IO stream based on the plurality of characteristics associated with the application and the plurality of characteristics associated with the IO stream; and a caching engine configured to interact with a storage stack to perform caching operations with the at least one storage device based on the at least one optimizable cache parameter determined by the IO stream analyzer. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification