1. A method, comprising: arranging multiple storage devices as a Redundant Array of Independent Disks (RAID) array; receiving, from a given storage device, a number of error messages exceeding a threshold, the given storage device storing a dataset; retrieving, from the given storage device, a mirrored subset of the dataset; retrieving, using remaining storage devices in the RAID array, the remaining storage devices comprising the multiple storage devices absent the given storage device, a calculated subset of the dataset, the dataset comprising a union of the mirrored and the calculated subsets; and creating, on an additional storage device not comprised in the multiple storage devices, a copy of the dataset using the mirrored and the calculated subsets; wherein each of the storage devices in the RAID array have corresponding storage regions, and wherein retrieving the calculated subset comprises successfully retrieving user data and parity data from a first number of the corresponding storage regions in each of the remaining storage devices in the RAID array, calculating values based on the successfully retrieved user and parity data, storing the calculated values to the calculated subset, and identifying a second number of the corresponding storage regions whose data could not be successfully retrieved; and wherein retrieving the mirrored subset comprises retrieving, for each of the second number of the corresponding storage regions, data from the corresponding storage region in the given storage device, and storing, to the mirrored subset, the data retrieved from the given storage region.