In a distributed, object-based data storage system that includes a plurality of object-based storage devices, and one or more nodes that access virtualized objects from the object-based storage devices, wherein each of the virtualized objects is stored as an aggregation of multiple component objects, each stored on one of the object-based storage devices, and wherein a RAID-X format is implemented at a file level within the plurality of object-based storage devices, a method for reconstruction comprising:
- (a) in response to a failure that renders inaccessible at least one portion of an object-based storage device, retrieving a map for at least one virtualized object having at least one component stored on the at least one portion;
- wherein the map includes a list of storage devices where components of the at least one virtualized object reside;
- (b) using the map to determine whether a number of lost or damaged components associated with the at least one virtualized object exceed a maximum limit beyond which reconstruction of an object stored using the file level implementation of the RAID-X format is not possible;
- and
- (c) if the maximum limit for reconstruction of an object stored using the RAID-X format has not been exceeded, reconstructing the at least one virtualized object;
- wherein the data storage system continues to service data storage and access requests, with reconstruction of the at least one virtualized object being performed as a background operation, after a number of device failures has occurred which would have exceeded the maximum limit of storage device failures for reconstruction had the virtualized object been stored using a volume level implementation of the RAID-X format;
- and
- wherein said at least one virtualized object contains data from one or more logical files, or a portion of a logical file.