Patent ID: 8473779

Claim:
A method for recovering from a fault in an array of data storage devices, comprising: arranging the array of devices into an outside pair of device columns and an inside pair of device columns, the devices of one outside column mirroring the devices of the other outside column as mirrored outside device pairs, and the devices of one inside column mirroring the devices of the other inside column as mirrored inside device pairs; designating a portion of the mirrored outside device pairs and a portion of the mirrored inside device pairs as spare devices; determining that a first data storage device of the array of data storage devices is more likely to fail than other storage devices of the array of data storage devices; selecting a first spare device, selected from the device column of which the first data storage device is a member, to be used in recovering from a failure of the first data storage device; storing data from the first data storage device at the first spare device, and at the mirrored device of the first spare device; in the event of a failure at the first data storage device, continuing data storage operations at the array of data storage devices using the first spare device, and the mirrored device of the first spare device; determining that a second data storage device of the array of data storage devices is more likely to fail than the first data storage device; selecting a second spare device, selected from the device column of which the second data storage device is a member, to be used in recovering from a failure of the second data storage device; storing data from the second data storage device at the second spare device, and at the mirrored device of the second spare device; in the event of a failure at the second data storage device, continuing data storage operations at the array of data storage devices using the second spare device, and the mirrored device of the second spare device; determining that an additional data storage device of the array of data storage devices is more likely to fail than the first data storage device; determining that no further spare data storage devices are available from the device column of which the additional data storage device is a member; and selecting an additional spare device, selected from one of the device columns not having the additional data storage device as a member, and not having a mirrored data storage device of the additional data storage device as a member, the additional spare device to be used in recovering from a failure of the additional data storage device.