File Search From Block Backups Using Global History Table
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Restoring individual filesystem objects from block level backups of virtual machines is time and resource intensive due to the need to mount and search multiple backups, as existing methods lack efficient tracking and retrieval mechanisms.
Innovation Solution
Implementing a global history table that tracks filesystem object changes and associations with block level backups, allowing users to identify and retrieve specific filesystem objects without mounting backups, by maintaining a local history table that merges with the global table on the backup server.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional block level backup restoration methods are used, then complete filesystem restoration is achieved, but time and computational resources are excessively consumed due to mounting and searching multiple backups
Solution Approach 1:
The patent applies preliminary action by pre-processing filesystem metadata during the backup creation process. A history table is populated with filesystem object information (names, paths, timestamps) and their associations with backup identifiers before restoration is needed. This pre-computed metadata enables direct file-level searches without requiring mounting and searching through entire backup images at restoration time, thus resolving the contradiction between complete restoration capability and fast individual file retrieval.
Solution Approach 2:
The patent introduces a history table as an intermediary data structure between the block level backups and the restoration process. This history table stores pre-extracted filesystem metadata and acts as a mediator that enables efficient file-level queries without requiring access to the actual backup images. The intermediary layer decouples the search operation from the backup data, allowing rapid identification of files containing specific patterns while maintaining the integrity of the original block level backup structure.
2Ease of operation
If block level backups are mounted to search for specific files, then file retrieval is possible, but the process is resource intensive and time consuming
Solution Approach 1:
The patent applies the extraction principle by separating filesystem metadata from the actual backup data. During backup creation, filesystem object information (names, paths, timestamps, parent directories) is extracted and stored in a history table, while the actual file contents remain in the block level backup. This extraction enables file identification and retrieval operations to be performed on the lightweight metadata structure rather than mounting and scanning entire backup images, significantly reducing computational resources while maintaining full file retrieval capability.
Solution Approach 2:
The patent creates a copy of filesystem metadata in the form of a history table that mirrors the structure and information needed for file retrieval. Instead of working with the original backup images directly, the system uses this copied metadata structure to perform searches and identify files. The copy contains all necessary information (filesystem object names, paths, timestamps, backup associations) to enable efficient operations without requiring access to the full backup data, thus reducing resource consumption while preserving ease of operation.
Data Source
AI summary
A method for accessing filesystem objects on a backup server storing block level backups, includes: receiving a request to access a filesystem object stored in the block level backups, the request including a pattern of characters identifying the filesystem object in a global history table mapping a history of filesystem objects to the block level backups; identifying, based on the pattern of characters, an object identifier in the global history table corresponding to the filesystem object; identifying, based on the object identifier, a set of one or more block level backups of the computing system having a copy of the filesystem object; selecting a block level backup from the set of one or more block level backups; mounting the selected block level backup to access a backed-up file system of the computing system; and retrieving, from the backed-up filesystem, the filesystem object.


