Application resource usage behavior analysis
View Patent ↗A method, system, and apparatus are disclosed, which include injecting shadow input/outputs (shadow IOs) into a system, removing the shadow IOs from the system, storing the shadow IOs, and analyzing the stored shadow IOs to determine application specific behavioral information about the system.
1. A method comprising:
injecting shadow input/outputs (shadow IOs) into an IO stack of a host system space of a data storage system, wherein the injecting IOs includes adaptive sampling of application-based use and behavior of Information Technology (IT) resources which is tuned dynamically to fit Quality of Service needs;
removing the shadow IOs from the data storage system at a data storage subsystem of the data storage system; and
using the shadow IOs to determine application behavioral information about the data storage system.
2. The method of claim 1 wherein the shadow IOs comprises application information, original IO header start timestamp and an unique identifier.
3. The method of claim 1 further comprising:
creating correlation mapping between an application and the shadow IO associated resources.
4. The method of claim 1 wherein using the shadow IOs further comprises:
determining application specific behavioral information for a plurality of applications.
5. The method of claim 1 wherein the injecting further comprises:
injecting shadow IOs at a plurality of hosts.
6. The method of claim 1 wherein the injecting further comprises:
injecting shadow IOs for a plurality of applications; and wherein the using the shadow IOs further comprises: determining application specific behavioral information for the plurality of applications.
7. The method of claim 1 wherein the shadow IOs are cloned IOs.
8. An apparatus comprising:
an injecting device to inject shadow input/output (shadow IOs) into an IO stack of a host system space of data storage system, wherein the injecting IOs includes adaptive sampling of application-based use and behavior of Information Technology (IT) resources which is tuned dynamically to fit Quality of Service needs;
a shadow device to remove the shadow IOs from the data storage system at a data storage subsystem of the data storage system; and
an analyzer to analyze the shadow IOs to determine behavioral information about the data storage system.
9. The apparatus of claim 8 wherein the shadow IOs comprises application information, original IO header start timestamp, and a unique identifier.
10. The apparatus of claim 8 further comprising:
a correlation mapping device to create a map between an application and the shadow IO associated resources.
11. The apparatus of claim 8 wherein analyzer device comprises:
a behavior analyzer to determine application specific behavioral information for a plurality of applications.
12. The apparatus of claim 8 further comprises:
a second injecting device to inject shadow input/output (shadow IOs) into a system; wherein the system comprises two hosts; wherein the injecting device is located on a first of the two hosts and the second injecting device is located on a second of the two hosts.
13. The apparatus of claim 8 wherein the injecting devices injects shadow IOs for a plurality of applications; and wherein the analyzer determines application specific behavioral information for the plurality of applications.
14. The apparatus of claim 8 wherein the shadow IOs are cloned IOs.
15. A system comprising:
a computer having a memory;
computer-executable program code operating in memory, wherein the computer-executable program code is configured for execution of the following:
injecting shadow input/outputs (shadow IOs) into an IO stack of a host system space of a data storage system, wherein the shadow IOs comprises application information, original IO header start timestamp, and an unique identifier and wherein the injecting IOs includes adaptive sampling of application-based use and behavior of Information Technology (IT) resources which is tuned dynamically to fit Quality of Service needs;
removing the shadow IOs from the data storage system at a data storage subsystem of the data storage system; and
using the shadow IOs to determine application behavioral information about the data storage system.
16. The system of claim 15 wherein the program code is further configured for:
creating correlation mapping between an application and the shadow IO.
17. The system of claim 15 wherein the program code is:
further configured wherein the analyzing the stored shadow IOs further comprises:
determining application specific behavioral information for a plurality of applications.
18. The system of claim 15 wherein the program code is:
further configured wherein the injecting further comprises:
injecting shadow IOs at a plurality of hosts.
19. The system of claim 15 wherein the program code is further configured wherein the injecting further comprises:
injecting shadow IOs for a plurality of applications: and therein the analyzing the stored shadow IOs further comprises:
determining application specific behavioral information for the plurality of applications.
20. The system of claim 15 wherein the shadow IOs are cloned IOs.