Recovery after data loss in a reliable distributed computing system
AssigneeScale Computing, Inc.
InventorsNate Hardt, Scott Loughmiller, Philip White
Life of this patent
Estimating the term…
Abstract
Real system devices (RSD's) emulate virtual system devices (VSD's); system elements can use RSD's and manipulate VSD's, while users can only use VSD's. Identifying when RSD's have erroneous data. Providing a mapping of RSD's to VSD's, to recover a maximum set of VSD's. Providing a mapping of VSD's to RSD's, to recover a specified most valuable VSD. Reconstructing VSD's from RSD's having erroneous data, and coordinating with a user's assistance to couple RSD's in an order allowing data recovery. Metadata is maintained coupling data identifiable on VSD's with corresponding data on RSD's; it is possible to trace connections between RSD's and VSD's even without complete data.
Claims18
A method of recovering data after a loss of such data in a reliable distributed computing system that includes one or more virtual machines, each said virtual machine having access to a plurality of virtual storage devices, each said virtual machine operating under the control of a guest operating system, the method including steps of
- maintaining metadata associating one or more real storage devices with one or more said virtual storage devices;
- after the loss of such data in one or more first virtual storage devices of said virtual storage devices or one or more of said real storage devices associated with one or more of said first virtual storage devices, receiving an instruction from a user to recover from a set of one or more of the real storage devices, using said metadata, a number of file storage units associated with said one or more first virtual storage devices, and determining an order in which to inform said user to couple said set of the real storage devices to the reliable distributed computing system;
- informing said user of which real storage device to next couple to the reliable distributed computing system, based on the determined order;
- and
- reading still-good data from said real storage device that was next coupled.
A device in a reliable distributed computing system that recovers data after a loss of such data, the device comprising:
- an interface to one or more real storage devices associated with one or more virtual machines, each said virtual machine having access to a plurality of virtual storage devices;
- and
- one or more processors that perform functions including:
- accessing one or more of the virtual storage devices;
- maintaining metadata associating one or more of the real storage devices with one or more of the virtual storage devices;
- after the loss of such data in one or more first virtual storage devices of said virtual storage devices or one or more of said real storage devices associated with one or more of said virtual storage devices, receiving an instruction from a user to recover from a set of one or more of the real storage devices, using the metadata, a number of file storage units associated with said one or more first virtual storage devices, and determining an order in which to inform said user to couple said set of the real storage devices to the reliable distributed computing system;
- informing said user of which real storage device to next couple to the reliable distributed computing system, based on the determined order;
- and
- reading still-good data from said real storage device that was next coupled.
Dependencies are inferred from the claim text.