Host I/O performance and availability of a storage array during rebuild by prioritizing I/O request
First Claim
Patent Images
1. A method comprising:
- identifying that a storage array is close to permanently losing data, wherein the storage array and a corresponding controller include a plurality of resources; and
giving, in response to identifying that the storage array is close to permanently losing data, input/output (I/O) requests for rebuilding at least a portion of the storage array priority over host I/O requests, and wherein giving I/O requests for rebuilding at least a portion of the storage array priority over host I/O requests comprises restricting host I/O resource usage to not exceed a threshold amount.
3 Assignments
0 Petitions
Accused Products
Abstract
Improved host I/O performance and availability of a storage array during rebuild is obtained by prioritizing I/O requests. In one embodiment, rebuild I/O requests are given priority over host I/O requests when the storage array is close to permanently losing data (for example, failure of one more particular disk in the storage array would result in data loss). Rebuild I/O requests continue to have priority over host I/O requests until the storage array is no longer close to permanently losing data, at which point host I/O requests are given priority over rebuild I/O requests.
481 Citations
6 Claims
-
1. A method comprising:
-
identifying that a storage array is close to permanently losing data, wherein the storage array and a corresponding controller include a plurality of resources; and
giving, in response to identifying that the storage array is close to permanently losing data, input/output (I/O) requests for rebuilding at least a portion of the storage array priority over host I/O requests, and wherein giving I/O requests for rebuilding at least a portion of the storage array priority over host I/O requests comprises restricting host I/O resource usage to not exceed a threshold amount. - View Dependent Claims (2, 3)
the storage army comprises a redundant array of independent disks (RAID) system that includes a plurality of RAID levels;
the identifying comprises identifying when at least one of the plurality of RAID levels is close to permanently losing data; and
the giving comprises giving rebuild I/O requests priority over host I/O requests only for the at least one RAID level that is close to permanently losing data.
-
-
4. One or more computer-readable media having stored thereon a computer program that, when executed by one or more processors of a computer, causes the one or more processors to perform acts including:
-
identifying that a storage array is close to permanently losing data, wherein the storage array and a corresponding controller include a plurality of resources; and
giving, in response to identifying that the storage array is close to permanently losing data, input/output (I/O) requests for rebuilding at least a portion of the storage array priority over host I/O requests, and wherein giving I/O requests for rebuilding at least a portion of the storage array priority over host I/O requests comprises restricting host I/O resource usage to not exceed a threshold amount. - View Dependent Claims (5)
the storage array comprises a redundant array of independent disks (RAID) system that includes a plurality of RAID levels;
the identifying comprises identifying when at least one of the plurality of RAID levels is close to permanently losing data; and
the giving comprises giving rebuild I/O requests priority over host I/O requests only for the at least one RAID level that is close to permanently losing data.
-
-
6. An apparatus comprising:
-
a priority identifier to determine whether host input/output (I/O) requests or rebuild I/O requests for a storage array are to have priority, wherein the storage array comprises a redundant array of independent disks (RAID) system, wherein the RAID system includes a plurality of RAID levels; and
a request dispatcher, communicatively coupled to the priority identifier, to select host I/O requests and rebuild I/O requests for execution based at least in part on whether host I/O requests or rebuild I/O requests are to have priority, wherein the apparatus further comprises, a priority identifier associated with each of the plurality of RAID levels, and a request dispatcher associated with each of the plurality of RAID levels.
-
Specification