VM File System Memory Allocation Using Affinity Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing virtual machine (VM) data stores face resource contention and fragmentation issues due to shared access among multiple host devices, leading to increased allocation times and inefficiencies in memory resource management, particularly during file migrations.
Innovation Solution
The system associates files with specific physical storage regions using affinity identifiers, allowing for efficient allocation and migration of file data by selecting appropriate small and large file block clusters based on affinity metadata, reducing fragmentation and contention through affinity data caching and propagation techniques.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If a single VM data store is shared between multiple host devices, then resource utilization is improved, but resource contention and access time increase
Solution Approach 1:
The patent divides the shared VM data store into multiple file systems, each accessible by specific host devices. This segmentation reduces contention by allowing parallel access to different segments, thereby maintaining high resource utilization while decreasing access time conflicts.
Solution Approach 2:
The patent introduces a new dimension of organization by creating hierarchical structures with large file block clusters and small file block clusters. This multi-level organization allows hosts to access files more efficiently by directing requests to appropriate cluster levels, reducing access time while maintaining shared resource benefits.
2Ease of manufacture
If resources are allocated based on host identifier using hash function, then resource allocation is simplified, but data fragmentation increases during host migration
Solution Approach 1:
The patent pre-organizes data into large and small file block clusters with designated ownership relationships before migration occurs. When migration happens, the pre-established cluster structures allow for efficient data relocation without scattering file blocks across disparate locations, thus maintaining data coherence while preserving allocation simplicity.
Solution Approach 2:
The patent introduces file block clusters as intermediary structures between hosts and the underlying storage. These clusters act as buffers that can be efficiently transferred between hosts during migration, reducing data fragmentation by keeping related file blocks together while allowing flexible host reassignment.
3Adaptability or versatility
If file data is spread across multiple memory regions associated with different hosts, then host-specific resource allocation is improved, but resource contention increases substantially
Solution Approach 1:
The patent merges file blocks belonging to the same file into consolidated structures (large and small file block clusters) that can be owned by specific hosts. This merging reduces contention by ensuring that when a host needs access to file data, all relevant blocks are available in a single location rather than being scattered across multiple host-associated regions.
Solution Approach 2:
The patent assigns specific large and small file block clusters to specific hosts based on local needs and usage patterns. This local quality assignment allows each host to have optimized access to its frequently used files while maintaining the ability to share less frequently accessed resources, thereby reducing overall contention while preserving host-specific optimization.
Data Source
AI summary
The systems described herein are configured to enhance the efficiency of memory usage and access in a VM file system data store with respect to allocating memory in large and small file block clusters using affinity metadata and propagating and maintaining the affinity metadata in support of the described allocation. During storage of file data, an affinity identifier of the file data is determined. The affinity identifier is used to identify a large file block cluster and a small file block cluster within the identified large file block cluster. The file data is stored in the selected small file block cluster and affinity metadata of the selected small file block cluster is updated to reflect the storage of the file data.


