US10635546B2

Synthesizing a restore image from one or more secondary copies to facilitate data restore operations to a file server

Summary by NHIP

On-Fly Synthesized Restore Image System

The system generates a smaller synthesized-copy containing specific backed-up files to facilitate faster restoration by a file server. It creates a header mimicking native backups and streams the image piecemeal without storing the final synthesized-copy on the media agent.

Claim Score by NHIP

Read claim 15, the broadest

Abstract

An illustrative media agent (MA) in a data storage management system instructs a NAS file server (filer) to restore an MA-created synthesized-copy instead of larger filer-created backup copies. The synthesized-copy is designed only for the particular files to be restored and mimics, and is typically much smaller than, a filer-created backup copy. The synthesized-copy is fed to the filer on restore as a “restore data image.” When receiving a restore request for certain backed-up data files, the MA synthesizes the synthesized-copy on the fly. The MA generates a header mimicking a filer-created backup header; extracts files from filer-created backup copies arranging them within the synthesized-copy as if in filer-created backups; and instructs filer to perform a full-volume restore from the synthesized-copy. The MA serves the synthesized-copy piecemeal as available, rather than waiting to synthesize the entire synthesized-copy. The synthesized-copy is not stored at the MA.

US10635546B2, drawing sheet 1
Sheet 1 of 21

Term

11.7 yearsleft in the term

Expires 5 June 2038, including 180 days of term adjustment.

  1. Priority and filed
  2. Granted
  3. Today
  4. Expires

19 claims: 3 independent, 16 dependent

  1. 1
    A system comprising:a file server;a computing device comprising one or more processors and computer memory and in communication with the file server;secondary storage comprising one or more data storage devices, wherein the secondary storage is in communication with the computing device, and wherein one or more backup copies generated by the file server and comprising a plurality of backed-up data files are stored in the secondary storage;wherein the computing device is configured to: generate a synthesized-copy comprising one or more first backed-up data files from among the plurality of backed-up data files, wherein the synthesized-copy is to be restored by the file server instead of the file server restoring the one or more first backed-up data files from the one or more backup copies in the secondary storage, and instruct the file server to restore the synthesized-copy to a location on the file server;and wherein to generate the synthesized-copy, the computing device is further configured to: (i) generate a first header for the synthesized-copy, based at least in part on information at the computing device that was collected when the one or more backup copies generated by the file server were stored to the secondary storage, wherein the first header is configured to be readable by the file server as a header for a backup copy generated by the file server, even though the synthesized-copy is not generated by the file server, (ii) retrieve from the one or more backup copies the one or more first backed-up data files to be restored, and (iii) arrange the one or more first backed-up data files into a first sequence within the synthesized-copy that is compatible with a scheme for restoring backup copies by the file server.
  2. 7
    A method for generating a synthesized-copy to be restored by a file server that did not generate the synthesized-copy, the method comprising:receiving, by a media agent, a request to restore one or more data files that are backed up atoll in one or more backup copies, wherein the media agent executes on a computing device comprising one or more processors and computer memory, wherein the media agent is a component of a data storage management system comprising the one or more backup copies, and wherein the one or more data files are to be restored from the one or more backup copies to a file server in communication with the media agent;by the media agent using an identifier for a data storage volume that is not actually configured at the media agent, instructing the file server to perform a full-volume restore operation from the data storage volume to a location on the file server;generating by the media agent the synthesized-copy, which comprises the one or more data files to be restored by the file server and does not comprise other data files backed up in the one or more backup copies, comprising: (i) generating a first header for the synthesized-copy, wherein the first header is configured to be readable by the file server as a header for a backup copy generated by the file server, even though the synthesized-copy is not generated by the file server, (ii) for each of the one or more data files to be restored, retrieving respective file data and a respective file header therefor to the media agent from a corresponding backup copy comprising the respective data file to be restored, and (iii) arranging the retrieved one or more file data and one or more file headers into a sequence within the synthesized-copy that is compatible with performing the full-volume restore operation atoll by the file server;and in response to one or more read requests received from the file server and targeted to the data storage volume, transmitting, by the media agent to the file server, data blocks of the synthesized-copy.
  3. 15
    Broadest claimClaim Score 28, narrow(NHIP)A non-transitory computer-readable medium storing instructions that, when executed by a computing device comprising one or more processors and computer memory, cause the computing device to perform operations comprising:identifying one or more backup copies generated by a file server, wherein the one or more backup copies comprise one or more data files to be restored to gall the file server;using an identifier to represent a data storage volume that is not actually configured at the computing device, instructing the file server to perform a full-volume restore operation from the data storage volume to a location on the file server;synthesizing a synthesized-copy to be restored by the file server in the full-volume restore operation, wherein the synthesizing comprises: (i) generating a first header for the synthesized-copy, based at least in part on information at the computing device which was collected by the computing device when the one or more backup copies generated by the file server were stored to secondary storage in communication with the computing device, wherein the first header is configured to be readable by the file server as a header for a backup copy generated by the file server, even though the synthesized-copy is not generated by the file server, (ii) for each of the one or more data files to be restored, retrieving respective file data and a respective file header therefor to the computing device from a corresponding backup copy comprising the respective data file to be restored, and (iii) arranging the retrieved file data and file headers into a sequence within the synthesized-copy that is suitable for performing the full-volume restore operation by the file server;and transmitting to the file server data blocks of the synthesized-copy in response to one or more read requests received from the file server, without actually storing the synthesized-copy in its entirety at the computing device.