IP Library Granted Patent US 12675458
Granted Patent B2
US 12675458 · App. 18/952,540 · Granted Jul 7, 2026

File indexing for virtual machine backups in a data storage management system

Inventors: Henry Wallace Dornemann (Eatontown, NJ); Ajay Venkat Nagrale (Marlboro, NJ); Amit Mitkar (Manalapan, NJ)
Assignee: Commvault Systems, Inc.
G06F16/2272G06F11/1451G06F2201/815G06F2201/82
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12675458
App. No.
18/952,540
Granted
Jul 7, 2026
Kind
B2
Abstract

An illustrative file indexing approach enhances what was previously possible with hypervisor-free live browsing of virtual machine (VM) block-level backup copies. Capabilities are described for indexing files discovered in VM block-level backup copies, including file content. The illustrative file indexing functionality activates a live-browse session to discover files present within VM block-level backup copies and indexes file names and directory structures as created by an original source VM, resulting in an illustrative file index. The illustrative file indexing functionality optionally indexes file contents within VM block-level backup copies, resulting in an illustrative content index. The file index and content index are retained in persistent data structure(s) stored apart from the VM block-level backup copies. The indexes are searchable without mounting or live-browsing the VM block-level backup copies. In some embodiments the file index and the content index are consolidated. An enhanced storage manager is also disclosed.

Claims (71)

1 . A computing device for use in a data storage management system, the computing device comprising:

one or more processors and computer memory;

wherein the computing device is configured to:

execute a file system;

execute at least one of a data agent for backing up virtual machine data and a copy analyzer for scanning block-level backup copies;

receive a block-level backup copy of virtual machine data for processing,

wherein:

 the block-level backup copy comprises data generated by a virtual machine;

 the block-level backup copy was generated in a hypervisor-independent format by a block-level backup operation from a virtual disk accessed by the virtual machine; and

 the computing device is selected for processing the block-level backup copy based at least in part on having an operating system the same as an operating system used by the virtual machine;

activate, without using a hypervisor, live browsing of the block-level backup copy to discover files and directory structures within the block-level backup copy;

generate indexing information identifying the discovered files and directory structures and store, apart from the block-level backup copy, a persistent file index comprising entries for the discovered files and directory structures;

transmit the indexing information to an indexing service that maintains a searchable index including information about the discovered files within the block-level backup copy,

wherein the searchable index is maintained apart from the backup copy and is searchable without mounting the block-level backup copy.

2 . The computing device of claim 1 , wherein the computing device is further configured to:

receive content indexing criteria from another computing device for identifying one or more files among a plurality of backed-up data files within the block-level backup copy that satisfy the content indexing criteria;

apply the content indexing criteria to scan the identified one or more files for content indexing information; and

transmit the content indexing information to an indexing service, wherein the indexing service maintains a content index including content information about the identified one or more files;

wherein the content index is populated from the block-level backup copy of virtual machine data without using a hypervisor to scan for content indexing information.

3 . The computing device of claim 1 , wherein the computing device is selected by another computing device based on load balancing among a plurality of computing devices having an operating system the same as the operating system used by the virtual machine.

4 . The computing device of claim 1 , wherein compatibility with the operating system used by the virtual machine determines the selection of the computing device.

5 . A method performed by a computing device comprising:

receiving a block-level backup copy of virtual machine data for processing, wherein:

the block-level backup copy comprises data generated by a virtual machine; and

the block-level backup copy was generated in a hypervisor-independent format by a block-level backup operation from a virtual disk accessed by the virtual machine;

activating, without using a hypervisor, live browsing of a hypervisor-independent block-level backup copy of virtual machine data to discover files and directory structures within the block-level backup copy;

generating indexing information identifying the discovered files and directory structures and storing, apart from the block-level backup copy, a persistent file index comprising entries for the discovered files and directory structures; and

transmitting the indexing information to an indexing service that maintains a searchable index including information about the discovered files within the block-level backup copy, wherein the searchable index is maintained apart from the block-level backup copy and is searchable without mounting the block-level backup copy.

6 . The method of claim 5 , wherein the indexing service executes on a third computing device and further comprises the index of file information.

7 . The method of claim 5 , wherein the indexing service executes on the computing device, which also maintains the index of file information.

8 . The method of claim 5 , wherein a data agent on the computing device comprises a copy analyzer and interfaces with a file system.

9 . The computing device of claim 5 , wherein a data agent performs at least one of:

activating the live browsing of the block-level backup copy;

discovering a plurality of backed-up data files within the block-level backup copy;

scanning the plurality of backed-up data files within the block-level backup copy for indexing information; and

transmitting the file indexing information to the indexing service.

10 . The method of claim 5 , wherein a copy analyzer performs at least one of:

activating the live browsing of the block-level backup copy;

discovering a plurality of backed-up data files within the block-level backup copy;

scanning the plurality of backed-up data files for indexing information; and

transmitting the file indexing information to the indexing service.

11 . The method of claim 5 , wherein the index of file information comprises an association between a first backed-up data file among a plurality of backed-up data files within the block-level backup copy and the block-level backup copy.

12 . The method of claim 5 , wherein the index of file information comprises an association between a first file among a plurality of backed-up data files within the block-level backup copy and at least one of: the virtual machine and the virtual disk.

13 . The method of claim 5 , wherein the index of file information is searchable for filenames in a plurality of backed-up data files within the block-level backup copy without mounting and without live browsing the block-level backup copy when the index of file information is searched.

14 . The method of claim 5 , wherein the index of file information is searchable by a user for filenames without the user specifying:

an identity of the virtual machine,

an identity of the virtual disk accessed by the virtual machine, and

a filename for the block-level backup copy.

15 . The method of claim 5 further comprising:

transmitting to the computing device, content indexing criteria for identifying one or more files among a plurality of backed-up data files within the block-level backup copy that satisfy the content indexing criteria;

applying the content indexing criteria to the plurality of backed-up data files to determine the one or more files for content indexing;

scanning the identified files for content indexing information; and

transmitting the content indexing information to the indexing service, which maintains a content index including content information about the one or more files,

wherein the content index is populated from the block-level backup copy of virtual machine data without using a hypervisor to scan for content indexing information.

16 . The method of claim 15 , wherein at least one of a data agent and a copy analyzer on the computing device applies the content indexing criteria to the plurality of backed-up data files discovered within the block-level backup copy to determine the one or more files for content indexing.

17 . The method of claim 15 , wherein the content index is searchable for content present in the one or more files in the block-level backup copy without mounting and without live browsing the block-level backup copy when the content index is searched.

18 . The method of claim 15 , wherein the content index is searchable by a user for content without the user specifying:

an identity of the virtual machine,

an identity of the virtual disk accessed by the virtual machine,

a filename for the block-level backup copy, and

a filename for a first file that comprises the content being searched for.

19 . The method of claim 15 , wherein the indexing service consolidates the index of file information and the content index into a consolidated index, and the consolidated index is:

searchable by a user for filenames without the user specifying:

an identity of the virtual machine,

an identity of the virtual disk accessed by the virtual machine, and

a filename for the block-level backup copy; and

searchable by the user for content without the user specifying:

the identity of the virtual machine,

the identity of the virtual disk accessed by the virtual machine,

the filename for the block-level backup copy, and

a filename for a first file that comprises the content being searched for.