Affinity Group Mapping for Backup Engine Data Access
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Enterprise storage systems face inefficiencies in data access due to the slow communication between separate control logic and disk access modules, leading to suboptimal performance in accessing data across multiple physical storage volumes.
Innovation Solution
Implementing an affinity group system where backup engines are connected locally to storage units, enabling direct access to physical storage volumes through shared memory and optimized selection of storage units for data access requests, thereby reducing reliance on round-robin methods and improving communication efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If control logic modules use round-robin method to access disk access modules, then data access speed is improved compared to remote access, but the access method remains random and does not always access the best disk access module
Solution Approach 1:
The system performs preliminary actions by pre-establishing affinity groups that map data sets to specific disk access modules based on local connectivity. When a backup engine needs to access data, it consults the affinity group information beforehand to determine the optimal disk access module, avoiding random selection and ensuring direct local access whenever possible.
Solution Approach 2:
The patent introduces an affinity group data structure as an intermediary between the backup engine and disk access modules. This affinity group information acts as a mediator that guides the backup engine to select the appropriate disk access module, transforming the random round-robin approach into an optimized direct access method based on physical connectivity.
2Adaptability or versatility
If control logic modules access remote disk access modules, then all physical storage volumes can be accessed, but communication speed is slow
Solution Approach 1:
The system applies local quality by creating affinity groups that associate specific data sets with disk access modules that have local physical connectivity. Each backup engine is configured to access data through the disk access module with local connection when possible, ensuring that commonly accessed data resides on locally connected volumes. This maintains versatility through remote access capability while optimizing speed through local access preference.
Solution Approach 2:
The patent segments the storage system into affinity groups, where each group contains a backup engine, its locally connected disk access module, and the data sets stored on locally connected physical storage volumes. This segmentation allows the system to maintain full accessibility through remote access while creating optimized local access paths for specific data segments.
3Device complexity
If separate control logic and disk access modules are used, then system modularity is achieved, but communication overhead increases and performance decreases
Solution Approach 1:
The patent merges the control logic and disk access module functionalities within the same physical device (director unit). Each director unit contains both a backup engine (control logic) and a disk access module, allowing the control logic to directly access locally connected physical storage volumes without requiring communication with remote disk access modules. This merging eliminates communication overhead while maintaining system modularity through multiple independent director units.
Data Source
AI summary
A method in a backup engine is described. The method includes receiving a data access request for a data element in a logical storage volume for one of a read or write operation, determining an affinity group associated with the data element based on an affinity group list indicating a physical storage volume for the data element based on the data address range for the data element, determining a first frontend adapter identifier (ID) from the first affinity group associated with the data element, the first frontend adapter ID identifying a first frontend adapter associated with a first physical storage volume, and transmitting the data access request to the first frontend adapter based on the first frontend adapter ID to execute the data access request on the first physical storage volume.


