Storage Conversion via Pointer Manipulation in Virtualized Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing process for converting physical storage to virtual storage in virtualized computing environments is time-consuming and resource-intensive, placing a substantial load on the storage system due to the need for copying data blocks.
Innovation Solution
A storage conversion technique that manipulates pointers to reference data blocks between physical and virtual storage objects, reducing the need for data block copying and minimizing input/output operations by using buffer trees with indirect blocks to share data blocks between storage representations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data is copied from LUN to virtual disk file during storage conversion, then the virtual storage representation is created, but the process becomes time-consuming and places substantial load on the storage system
Solution Approach 1:
The patent applies copying at the metadata level rather than data level. It copies the buffer tree structure (metadata) from the source LUN to the destination virtual disk file, which directs the storage system to the actual data blocks without physically moving the data. This resolves the contradiction by achieving complete storage conversion representation while avoiding time-consuming data copying operations.
Solution Approach 2:
The buffer tree structure serves as an intermediary between the virtual disk file and the actual data blocks. Instead of directly copying data from LUN to virtual disk file, the patent creates a buffer tree that indirectly references the data blocks, acting as a mediator that eliminates the need for substantial data movement while ensuring complete conversion representation.
2Reliability
If data is copied from LUN to virtual disk file during storage conversion, then the virtual storage representation is created, but substantial load is placed on the storage system
Solution Approach 1:
The patent copies only the buffer tree metadata structure rather than the actual data blocks. This dramatically reduces the storage system load during conversion while maintaining complete representation of the virtual storage, as the buffer tree merely contains pointers to existing data blocks rather than duplicating the data itself.
Solution Approach 2:
The buffer tree acts as an intermediary layer that references existing data blocks without requiring substantial data movement. This intermediary approach creates the complete virtual storage representation while minimizing the computational power and I/O load on the storage system during the conversion process.
3Productivity
If pointer manipulation is used to reference data blocks between storage representations, then conversion speed is improved, but the complexity of the conversion process increases
Solution Approach 1:
The buffer tree structure serves multiple functions simultaneously: it acts as a data structure for organizing data blocks, a mapping mechanism for translation between storage representations, and a reference system for pointer manipulation. This multi-functionality achieves fast conversion through pointer operations while avoiding the need for separate complex mechanisms, as the buffer tree inherently handles both organization and translation tasks.
Data Source
AI summary
Embodiments described herein provide a storage conversion technique for rapidly converting between storage representations served by a storage system and presented to a host computer of a virtualized computing environment. The storage representations may include physical storage represented by a sequential set of blocks on disks of the storage system that are presented to the host computer in the form of a logical unit number (LUN) and virtual storage represented by a virtual storage device of the storage system that is presented to a hypervisor of the virtualized computing environment in the form of a virtual disk file. Illustratively, the LUN and virtual disk file may be storage objects (e.g., files) having different (file) types and formats in a volume of the storage system; yet each storage object may be organized as a buffer tree having indirect blocks that contain pointers configured to reference data blocks used to store data.


