Resynchronization of mirrored storage devices
First Claim
1. A method of rebuilding data in a storage device, the method comprising:
- replacing a failed storage device in a first group of storage devices, the first group of storage devices belonging to a first set of storage devices;
writing up-to-date data to the first group of storage devices;
determining a difference between data stored in the first set of storage devices and data stored in a second set of storage devices, by comparing a first storage usage information created prior to failure of the failed storage device and a second storage usage information created after the up-to-date data is written to the first group of storage devices, wherein the first storage usage information is a point-in-time representation of a file system and the second storage usage information is another point-in-time representation of the file system; and
resynchronizing the first set of storage devices with the second set of storage devices based on the difference, wherein the difference between the first storage usage information and the second storage usage information represents data written to the second set of storage devices when the first set of storage devices is in a degraded state.
1 Assignment
0 Petitions
Accused Products
Abstract
In one embodiment, a first storage device and a second storage device form a mirror. When the first storage device loses synchronization with the second storage device, data present in the second storage device but not in the first storage device are identified. The identified data are then copied to the first storage device. In one embodiment, a method of rebuilding data in a storage device includes the act of replacing a failed storage device with a replacement storage device. Up-to-date data for the failed storage device, which may be stored in a corresponding mirror, may then be copied to the replacement storage device. Thereafter, the replacement storage device and any other storage devices that have lost synchronization with their mirror are resynchronized.
-
Citations
27 Claims
-
1. A method of rebuilding data in a storage device, the method comprising:
-
replacing a failed storage device in a first group of storage devices, the first group of storage devices belonging to a first set of storage devices; writing up-to-date data to the first group of storage devices; determining a difference between data stored in the first set of storage devices and data stored in a second set of storage devices, by comparing a first storage usage information created prior to failure of the failed storage device and a second storage usage information created after the up-to-date data is written to the first group of storage devices, wherein the first storage usage information is a point-in-time representation of a file system and the second storage usage information is another point-in-time representation of the file system; and resynchronizing the first set of storage devices with the second set of storage devices based on the difference, wherein the difference between the first storage usage information and the second storage usage information represents data written to the second set of storage devices when the first set of storage devices is in a degraded state. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for providing data storage services over a computer network, the system comprising:
-
a file system; a storage device manager configured to service data access requests from the file system, the storage device manager configured to mirror a first set of storage devices with a second set of storage devices; and wherein the storage device manager is configured to resynchronize the second set of storage devices with the first set of storage devices by using data from the first set of storage devices to rebuild data in a replacement storage device in the second set of storage devices and by copying data determined to be in the first set of storage devices but not in the second set of storage devices, wherein the storage device manager determines if data is in the first set but not in the second set by comparing a first storage usage information created prior to failure of the second set and a second storage usage information created after up-to-date data is written into the replacement storage device, wherein the first storage usage information is a point-in-time representation of the file system and the second storage usage information is another point-in-time representation of the file system, wherein a difference between the first storage usage information and the second storage usage information represents data written to the first set of storage devices when the second set of storage devices is in a degraded state. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A method of rebuilding data in a storage device, the method comprising:
-
replacing a failed storage device with a replacement storage device, the failed storage device belonging to a first set of storage devices that forms a mirror with a second set of storage devices; writing up-to-date data to the replacement storage device; determining a difference between a surviving storage device in the first set of storage devices and a storage device in the second set of storage devices, by comparing a first storage usage information created prior to failure of the failed storage device and a second storage usage information created after the up-to-date data is written to the replacement storage device, wherein the first storage usage information is a point-in-time representation of a file system and the second storage usage information is another point-in-time representation of the file system; and updating data in the surviving storage device based on a difference between the first storage usage information and the second storage usage information, wherein the difference represents data written to the second set of storage devices when the first set of storage devices is in a degraded state. - View Dependent Claims (15, 16, 17)
-
-
18. A computer-readable storage medium comprising:
-
computer-readable program code for copying up-to-date data to a first group of storage devices, the first group of storage devices belonging to a first set of storage devices that also includes a second group of storage devices; computer-readable program code for determining a difference between the first set of storage devices and a second set of storage devices, the first set of storage devices and the second set of storage devices forming a mirror, wherein the difference is determined by comparing a first storage usage information created prior to failure of a failed storage device in the second set and a second storage usage information created after the up-to-date data is written to the second set, wherein the first storage usage information is a point-in-time representation of a file system in the mirror and the second storage usage information is another point-in-time representation of a file system in the mirror; and computer readable-program code for resynchronizing the first set of storage devices with the second set of the storage devices based on a difference between the first storage usage information and the second storage usage information, wherein the difference represents data written to the first set of storage devices when the second set of storage devices is in a degraded state. - View Dependent Claims (19, 20, 21, 22, 23)
-
-
24. A method of resynchronizing mirrored-storage devices comprising:
-
copying up-to-date data to a first group of storage devices, the first group of storage devices belonging to a first set of storage devices that also includes a second group of storage devices; determining a difference between the first set of storage devices and a second set of storage devices, the first set of storage devices and the second set of storage devices forming a mirror, wherein the difference is determined by comparing a first storage usage information created prior to failure of a failed storage device in the first set and a second storage usage information created after the up-to-date data is written to the first group, wherein the first storage usage information is a point-in-time representation of a file system in the mirror and the second storage usage information is another point-in-time representation of a file system in the mirror; and resynchronizing the first set of storage devices with the second set of the storage devices based on a difference between the first storage usage information and the second storage usage information, wherein the difference represents data written to the second set of storage devices when the first set of storage devices is in a degraded state. - View Dependent Claims (25, 26, 27)
-
Specification