APPARATUS AND METHOD TO ALLOCATE RESOURCES IN A DATA STORAGE LIBRARY
First Claim
1. A method to allocate resources in a data storage library comprising a plurality of data storage devices configured as a RAID array, comprising the steps of:
- establishing a normal operation resource allocation;
establishing a RAID failure resource allocation;
establishing a multiple storage device failure resource allocation;
receiving host I/O requests;
enqueuing said host I/O requests.
1 Assignment
0 Petitions
Accused Products
Abstract
A method to allocate resources in a data storage library comprising a plurality of data storage devices configured as a RAID array, by establishing a normal operation resource allocation, a RAID failure resource allocation, and a multiple storage device failure resource allocation. The method receives host I/O requests, and enqueues those host I/O requests. If the system is operating without any storage device failures, then the method processes host I/O requests using the normal operation resource allocation. If the system is operating with a storage device failure, then the method processes host I/O requests using the RAID failure resource allocation. If the system is operating with multiple storage device failures, then the method processes host I/O requests using the multiple storage device failure resource allocation.
40 Citations
25 Claims
-
1. A method to allocate resources in a data storage library comprising a plurality of data storage devices configured as a RAID array, comprising the steps of:
-
establishing a normal operation resource allocation; establishing a RAID failure resource allocation; establishing a multiple storage device failure resource allocation; receiving host I/O requests; enqueuing said host I/O requests. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A RAID controller comprising a processor capable of a nominal number of instructions per second and a computer readable medium comprising a normal operation resource allocation, a RAID failure resource allocation, a multiple storage device failure resource allocation, and computer readable program code disposed therein to allocate a percentage of said nominal number of instructions per second to processing host I/O requests, wherein said RAID controller is in communication with a host computer and interconnected with a plurality of data storage media configured as a RAID array, the computer readable program code comprising a series of computer readable program steps to effect:
-
receiving host I/O requests; enqueuing said host I/O requests. selecting an enqueued host I/O request; determining if said RAID array is operating with a RAID failure; operative if said RAID array is not operating with a RAID failure, processing said selected host I/O request using said normal operation resource allocation. - View Dependent Claims (11, 12, 13, 14)
-
-
15. A computer program product encoded in a computer readable medium, said computer program product being useable by a RAID controller comprising a processor capable of a nominal number of instructions per second and a computer readable medium comprising a normal operation resource allocation, a RAID failure resource allocation, a multiple storage device failure resource allocation, wherein said RAID controller is in communication with a host computer and interconnected with a plurality of data storage media configured as a RAID array, comprising:
-
computer readable program code which causes said programmable computer processor to receive host I/O requests; computer readable program code which causes said programmable computer processor to enqueue said host I/O requests. computer readable program code which causes said programmable computer processor to select an enqueued host I/O request; computer readable program code which causes said programmable computer processor to determine if said RAID array is operating with a RAID failure; computer readable program code which, if said RAID array is not operating with a RAID failure, causes said programmable computer processor to process said selected host I/O request using said normal operation resource allocation. - View Dependent Claims (16, 17, 18, 19)
-
-
20. A method to allocate resources in a first data storage library in communication with a host computer and in communication with a second data storage library, wherein said first data storage library comprises a first RAID controller and a first RAID array, wherein said first RAID controller is capable of executing a nominal number of instructions per second (“
- NNIPS”
) and is in communication with a second RAID controller disposed in a second data storage library comprising a second RAID array, comprising the steps of;establishing a normal operation resource allocation; receiving host I/O requests; providing information to said second data storage library using a peer-to-peer copy protocol; operative if there is a data storage device failure in said first RAID array but not in said second RAID array, decreasing a NNIPS allocated for processing host I/O requests. - View Dependent Claims (21, 22)
- NNIPS”
-
23. A RAID controller comprising a processor capable of a nominal number of instructions per second (“
- NNIPS”
) and a computer readable medium comprising computer readable program code disposed therein to allocate a percentage of said NNIPS to processing host I/O requests and to peer-to-peer copying, wherein said RAID controller is in communication with a host computer, a first RAID array, and a second RAID controller disposed in a second data storage library comprising a second RAID array, the computer readable program code comprising a series of computer readable program steps to effect;receiving host I/O requests; providing information to said second data storage library using a peer-to-peer copy protocol; operative if there is a data storage device failure in said first RAID array but not in said second RAID array, decreasing a NNIPS allocated for processing host I/O requests. - View Dependent Claims (24, 25)
- NNIPS”
Specification