Modeling file system operation streams
First Claim
1. A method in a computing system of modeling a file system operation stream, comprising:
- by a processor of the computing system,receiving file system operations directed to a storage system;
recording the received file system operations to produce a trace of the storage system, wherein the trace includes file system operations that are used as input to a model, the model including states defined by the file system operations, and wherein the model specifies valid state transitions between each state of the model;
training the model to produce a trained model, wherein the training includes inputting the trace into the model and determining probabilities associated with the states of the model; and
subsequent to training the model,generating a resulting workload from the trained model that is used as input to simulate dynamic behavior of the storage system, wherein the resulting workload represents file system operations; and
simulating the file system operations of the generated workload to enable a performance analysis of the storage system.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and a system for modeling file system operation streams of a computing environment. File system operations of the file system operation streams are workloads produced by the devices of the computing environment. For example, a device of the computing environment produces the workloads, which are requests for information from a storage system of the computing environment. The requests are captured and form traces. The traces are then used as input to a model of the computing environment. The model is iteratively trained by using the traces to learn the dynamic behavior of the computing environment. Specifically, the model is trained to identify sequences of file system operations that are legal. Legal sequences can then be generated in realistic workloads that simulate the workloads produced by the devices of the computing environment to a high degree of probability.
31 Citations
29 Claims
-
1. A method in a computing system of modeling a file system operation stream, comprising:
by a processor of the computing system, receiving file system operations directed to a storage system; recording the received file system operations to produce a trace of the storage system, wherein the trace includes file system operations that are used as input to a model, the model including states defined by the file system operations, and wherein the model specifies valid state transitions between each state of the model; training the model to produce a trained model, wherein the training includes inputting the trace into the model and determining probabilities associated with the states of the model; and subsequent to training the model, generating a resulting workload from the trained model that is used as input to simulate dynamic behavior of the storage system, wherein the resulting workload represents file system operations; and simulating the file system operations of the generated workload to enable a performance analysis of the storage system. - View Dependent Claims (2, 3, 4, 5, 6)
-
7. A method in a computer system of modeling requests of a computing environment, comprising:
by a processor of the computer system, receiving file system operations of a file system operation stream; producing a trace from the file system operation stream, wherein the trace is produced by recording the received file system operations of the file system operation stream; establishing a model capable of being trained to learn the dynamic behavior of the computing environment, wherein the model includes a plurality of states defined by file system operations, and wherein establishing the model includes defining valid state transitions between each state of the plurality of states; training the model to learn the dynamic behavior of the computing environment; and subsequent to establishing the model, generating a workload from the trained model and randomly generated numbers, wherein the workload is a simulated sequence of file system operations of the trace and the randomly generated numbers are used to select states and state transitions in the model, wherein the states are defined by the file system operations, and wherein the simulated sequence of file system operations is used as input to simulate dynamic behavior of the computing environment; and simulating the file system operations of the generated workload to analyze the performance of the computing environment. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
15. An apparatus for modeling a file system operation stream, comprising:
-
a first device of a computing environment, the first device including a first processor and a first memory accessible to the first processor, the first device to generate a workload that includes file system operations, wherein the file system operations are captured to produce a trace that includes information specifying the file system operations; and a second device including a second processor and a second memory accessible to the second processor, the second device coupled to the first device, wherein the second device includes a model that includes a plurality of states corresponding to file system operations and wherein the model specifies valid state transitions between each state of the plurality of states, wherein the second device receives the trace from the first device and uses the trace to train the model, the model being capable of learning sequences of the file system operations to enable the generation of a resulting workload that is used as input to simulate dynamic behavior of the computing environment for analyzing performance of the computing environment, and wherein, subsequent to training the model, the second device generates a workload from the trained model and uses the generated workload to simulate the computing environment. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A computing system operable in a computing environment, comprising:
-
a first device of the computing environment, the first device including a first processor and a first memory accessible to the first processor, the first device to generate a workload that includes file system operations, wherein the file system operations are captured to produce a trace that includes information specifying the file system operations; a second device including a second processor and a second memory accessible to the second processor, the second device coupled to the first device to receive the trace and to use the trace to train a model that includes states defined by the file system operations, the model specifying valid state transitions between the states, the model being capable of learning sequences of the file system operations to enable the generation of a resulting workload that is used as input to simulate dynamic behavior of the computing environment; and a computing environment management system capable of using the model after training to analyze the computing environment, wherein the computing environment management system analyzes the computing environment by; generating a workload from the trained model, the generated workload representing file system operations that are used as input to the computing environment management system to simulate the computing environment; and simulating the file system operations of the generated workload to analyze the performance of the computing environment.
-
-
23. A method in a computer system of modeling a file system operation stream, comprising:
by a processor of the computer system, receiving file system operations directed to a storage system; recording the received file system operations to produce a trace of the storage system, wherein the trace includes file system operations that are used as input to a model, the model including states defined by the file system operations, wherein the model specifies valid state transitions between each states, and wherein each state has a corresponding probability distribution representing a probability that a particular file system operation will be emitted into the trace in that state; training the model to produce a trained model, wherein the training includes determining probabilities associated with the states of the model; and subsequent to training the model, generating a resulting workload from the trained model that is used as input to simulate dynamic behavior of the storage system, wherein the resulting workload represents file system operations of the file system operation stream; and simulating the file system operations of the generated workload to enable a performance analysis of the storage system. - View Dependent Claims (24, 25, 26, 27, 28)
-
29. A method in a computing system of modeling a file system operation stream, the method comprising:
by a processor of the computing system, receiving file system operations directed to a network storage server; recording the received file system operations to produce a trace of the received file system operations; establishing a model capable of being trained to learn dynamic behavior of the storage system, wherein the model includes a plurality of states defined by file system operations of the network storage server and wherein establishing the model includes specifying valid state transitions between each state of the plurality of states; training the model to learn the dynamic behavior of the network storage server by inputting the trace of the received file system operations into the model and determining probabilities associated with each state of the model; subsequent to training the model, generating a workload from the trained model, wherein the generated workload represents file system operations that are used as input for simulation of the network storage server; and simulating the file system operations of the generated workload on the network storage server to enable a performance analysis of the network storage server.
Specification