Maximizing storage system throughput by measuring system performance metrics
First Claim
Patent Images
1. A method for stream allocation in a data storage system, comprising the steps of:
- determining whether a stream needs storage space;
requesting storage space for the stream;
selecting a device on which to allocate the storage space; and
allocating the storage space on the selected device to the stream.
2 Assignments
0 Petitions
Accused Products
Abstract
A method for stream allocation in a data storage system begins by determining whether a stream needs storage space. Storage space for the stream is requested, and a device on which to allocate the storage space is selected. The storage space on the selected device is allocated to the stream.
161 Citations
22 Claims
-
1. A method for stream allocation in a data storage system, comprising the steps of:
-
determining whether a stream needs storage space;
requesting storage space for the stream;
selecting a device on which to allocate the storage space; and
allocating the storage space on the selected device to the stream. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for selecting a device to use in a data storage system, comprising the steps of:
-
(a) determining if there is an unused device in the system;
(b) selecting the unused device if an unused device exists in the system;
(c) determining if there is an input limited device in the system if there are no unused devices in the system;
(d) selecting an input limited device having a lowest amount of traffic if an input limited device exists in the system; and
(e) selecting a device having a lowest command completion time if there are no input limited devices in the system. - View Dependent Claims (10)
-
-
11. A system for determining the length of time for command execution in a data storage system, comprising:
-
a command queue for providing commands to be processed;
a command processor connected to said command queue, said command processor processing each command and sending a command reply to said command queue; and
a timer connected to said command queue, said timer marking a first time, when a command is sent from said command queue to said command processor, and a second time, when the command reply is received at said command queue, whereby the length of time is determined by subtracting the first time from the second time. - View Dependent Claims (12)
-
-
13. A method for switching streams between devices in a data storage system, the method comprising the steps of:
-
(a) determining a size of a new stream;
(b) classifying the new stream, based on its size;
(c) determining if any unused devices exist in the system;
(d) assigning the new stream to an unused device if an unused device exists in the system and if the new stream is larger than average; and
(e) assigning the new stream to an input limited device in the system if there are no unused devices in the system and if the new stream is smaller than average. - View Dependent Claims (14, 15)
-
-
16. A system for performing load balancing in a data storage system having a plurality of storage devices, the system comprising:
-
a command queue configured to process commands;
a device driver configured to send commands to the plurality of storage devices;
a statistics device configured to gather statistics from said device driver regarding command completion times; and
a device allocator configured to allocate space on one of the plurality of storage devices based on the gathered statistics, whereby the data storage system is load balanced. - View Dependent Claims (17, 18, 19, 20, 21, 22)
-
Specification