# US 2020/0401487 A1 · Efficient Targeted File-Level Restore From Cloud Snapshots

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2020/0401487 A1
- Document ID: US20200401487A1
- Status: Published application
- Kind: A1
- Application number: 16/445,941
- Filed: 2019-06-19
- Published: 2020-12-24
- Earliest claimed: 2019-06-19
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company, LLC
- Inventors: Ganesh Ghodake; Sachin Patil
- Web page: https://patentgrep.com/patent/US20200401487A1

## CPC

- G06F 11/1469: {Backup restoration techniques}
- G06F 11/1451: {by selection of backup contents}
- G06F 11/1464: {for networked environments}
- G06F 16/128: {Details of file system snapshots on the file-level, e.g. snapshot creation, administration, deletion (error detection or correction of the data by redundancy in operations or in hardware G06F11/14, G06F11/16)}
- G06F 16/13: File access structures, e.g. distributed indices (arrangements of input from, or output to, record carriers G06F3/06)
- G06F 16/2237: {Vectors, bitmaps or matrices}
- G06F 2201/815: Virtual
- G06F 2201/84: Using snapshots, i.e. a logical point-in-time copy of the data
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Files are identified for file-level restore by bitmaps of cloud snapshots of a storage volume. The bitmaps comprise a data structure for each snapshot containing record numbers of files of the storage volume and a file status bit for each such file that indicates the presence or absence of the file in the corresponding snapshot. File numbers of files of interest are obtained from record numbers of records in a volume files index of the storage volume. The bitmaps can be searched to locate the snapshots containing particular files of interest without the necessity of mounting and searching the separate snapshots on a virtual machine.

## Claims

### Claim 1

A method of targeted file-level restore of one or more files of interest from snapshots of a storage volume in a cloud that stores backup files, comprising:
taking successive snapshots capturing data states of said storage volume at successive times;
creating bitmaps for said snapshots, said bitmaps containing record numbers corresponding to file numbers of said files in said storage volume, and containing a status bit for each record number indicating the status of a corresponding file in each said snapshot; and
selecting a file of interest for file-level restore from a selected snapshot based upon a status bit of said selected file of interest in a bitmap of said selected snapshot.

### Claim 2 (depends on 1)

The method of claim 1, wherein said creating said bitmaps comprises creating for each snapshot a data structure containing a record number and said file status bit for each file in said each snapshot, said status bit indicating the presence or absence of said each file in said each snapshot.

### Claim 3 (depends on 2)

The method of claim 2, wherein said creating said bitmaps comprises updating the status of said each file in each successive snapshot by updating the file status bit for each said file in said bitmaps.

### Claim 4 (depends on 3)

The method of claim 3, wherein said creating bitmaps comprises creating a file index for each snapshot, comparing the file index with a volume files index of said storage volume, creating, based upon said comparing, a new snapshot file index with missing and new file record details, and creating a bitmap for said each snapshot using the new snapshot file index.

### Claim 5 (depends on 1)

The method of claim 1 further comprising storing said snapshots and said bitmaps in cloud storage.

### Claim 6 (depends on 1)

The method of claim 1 further comprising generating an initial volume files index of said storage volume comprising a list of files and a path of each file in said storage volume, and updating said list at said successive snapshots by appending new files to an end of said list.

### Claim 7 (depends on 6)

The method of claim 6 further comprising obtaining file numbers of files in said storage volume from said list, and wherein said creating said bitmaps comprises identifying record numbers in said bitmaps as said file numbers.

### Claim 8 (depends on 6)

The method of claim 6, wherein said selecting a file of interest comprises identifying file names from said volume files index, and searching the status bits in said bitmaps for snapshots in which said file of interest is present.

### Claim 9 (depends on 8)

The method of claim 8 further comprising setting a status bit corresponding to a file to OFF in a bitmap if said file is absent from a corresponding snapshot, and setting the status bit to ON if said file is present in said snapshot.

### Claim 10 (depends on 9)

The method of claim 9 further comprising returning a list of snapshots containing a file of interest, accessing said file of interest from a snapshot on said list, and restoring said accessed file of interest to a selected location.

### Claim 11

Non-transitory computer readable medium storing executable instructions for a method of targeted file-level restore of one or more files of interest from snapshots of a storage volume in a cloud that stores backup files, comprising:
taking successive snapshots capturing data states of said storage volume at successive times;
creating bitmaps for said snapshots, said bitmaps containing record numbers corresponding to file numbers of said files in said storage volume, and containing a status bit for each record number indicating the status of a corresponding file in each said snapshot; and
selecting a file of interest for file-level restore from a selected snapshot based upon a status bit of said selected file of interest in a bitmap of said selected snapshot.

### Claim 12 (depends on 11)

The non-transitory computer readable medium of claim 11, wherein said creating said bitmaps comprises creating for each snapshot a data structure containing a record number and said file status bit for each file in said each snapshot, said status bit indicating the presence or absence of said each file in said each snapshot.

### Claim 13 (depends on 12)

The non-transitory computer readable medium of claim 12, wherein said creating said bitmaps comprises updating the status of said each file in each successive snapshot by updating the file status bit for each said file in said bitmaps.

### Claim 14 (depends on 13)

The non-transitory computer readable medium of claim 13, wherein said creating bitmaps comprises creating a file index for each snapshot, comparing the file index with a volume files index of said storage volume, creating, based upon said comparing, a new snapshot file index with missing and new file record details, and creating a bitmap for said each snapshot using the new snapshot file index.

### Claim 15 (depends on 11)

The non-transitory computer readable medium of claim 11 further comprising generating an initial volume files index of said storage volume comprising a list of files and a path of each file in said storage volume, and updating said list at said successive snapshots by appending new files to an end of said list.

### Claim 16 (depends on 15)

The non-transitory computer readable medium of claim 15 further comprising obtaining file numbers of files in said storage volume from said list, and wherein said creating said bitmaps comprises identifying record numbers in said bitmaps as said file numbers.

### Claim 17 (depends on 15)

The non-transitory computer readable medium of claim 15, wherein said selecting a file of interest comprises identifying file names from said volume files index, and searching the status bits in said bitmaps for snapshots in which said file of interest is present.

### Claim 18 (depends on 17)

The non-transitory computer readable medium of claim 17 further comprising setting a status bit corresponding to a file to OFF in a bitmap if said file is absent from a corresponding snapshot, and setting the status bit to ON if said file is present in said snapshot.

### Claim 19 (depends on 18)

The non-transitory computer readable medium of claim 18 further comprising returning a list of snapshots containing a file of interest, accessing said file of interest from a snapshot on said list, and restoring said accessed file of interest to a selected location.
