Reducing a number of storage devices in a storage system that are exhibiting variable I/O response times
First Claim
1. A method of reducing a number of storage devices in a storage system that are exhibiting variable I/O response times, the method comprising:
- determining a number of storage devices in a storage system that are servicing high latency operations;
determining whether the number of storage devices in the storage system that are servicing high latency operations exceeds a predetermined target number of storage devices within the device group that may simultaneously service high latency operations; and
responsive to determining that the number of storage devices in the storage system that are servicing high latency operations exceeds the predetermined target number of storage devices within the device group that may simultaneously service high latency operations, halting execution of high latency operations on at least one of the storage devices.
1 Assignment
0 Petitions
Accused Products
Abstract
A system and method for effectively scheduling read and write operations among a plurality of solid-state storage devices. A computer system comprises client computers and data storage arrays coupled to one another via a network. A data storage array utilizes solid-state drives and Flash memory cells for data storage. A storage controller within a data storage array comprises an I/O scheduler. The characteristics of corresponding storage devices are used to schedule I/O requests to the storage devices in order to maintain relatively consistent response times at predicted times. Should a device exhibit an unscheduled behavior which may be indicative of the device being in an unknown state, the scheduler may schedule one or more reactive operations on the device configured to cause the device to enter a known state.
149 Citations
20 Claims
-
1. A method of reducing a number of storage devices in a storage system that are exhibiting variable I/O response times, the method comprising:
-
determining a number of storage devices in a storage system that are servicing high latency operations; determining whether the number of storage devices in the storage system that are servicing high latency operations exceeds a predetermined target number of storage devices within the device group that may simultaneously service high latency operations; and responsive to determining that the number of storage devices in the storage system that are servicing high latency operations exceeds the predetermined target number of storage devices within the device group that may simultaneously service high latency operations, halting execution of high latency operations on at least one of the storage devices. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A storage system configured for reducing a number of storage devices that are exhibiting variable I/O response times, the storage system including a computer memory and a computer processor, the computer processor including computer program instructions that, when executed by the computer processor, cause the storage system to carry out the steps of:
-
determining a number of storage devices in a storage system that are servicing high latency operations; determining whether the number of storage devices in the storage system that are servicing high latency operations exceeds a predetermined target number of storage devices within the device group that may simultaneously service high latency operations; and responsive to determining that the number of storage devices in the storage system that are servicing high latency operations exceeds the predetermined target number of storage devices within the device group that may simultaneously service high latency operations, halting execution of high latency operations on at least one of the storage devices. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An apparatus for reducing a number of storage devices in a storage system that are exhibiting variable I/O response times, the apparatus including a computer memory and a computer processor, the computer processor including computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:
-
determining a number of storage devices in a storage system that are servicing high latency operations; determining whether the number of storage devices in the storage system that are servicing high latency operations exceeds a predetermined target number of storage devices within the device group that may simultaneously service high latency operations; and responsive to determining that the number of storage devices in the storage system that are servicing high latency operations exceeds the predetermined target number of storage devices within the device group that may simultaneously service high latency operations, halting execution of high latency operations on at least one of the storage devices. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification