Data Virtualization Layer for Read-Only Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current techniques for accessing non-modifiable data, such as backups or snapshot volumes, require significant storage space and time for copying and maintaining writable versions, leading to delays in restoration and multiple copy operations.
Innovation Solution
Data virtualization techniques intercept I/O requests, storing changes for write requests and providing modified or unmodified data as needed for read requests, allowing processes to access and modify virtualized data without altering the original source data.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If data is copied to a new volume or partition to enable write access, then write capability is improved, but storage space requirements increase significantly
Solution Approach 1:
A virtualization layer is introduced as an intermediary between the read-only source data and the processes requiring write access. This layer intercepts I/O requests and manages a cache of modified data, allowing write operations without duplicating the entire data set. The virtualization layer acts as a mediator that enables write capability while maintaining the original read-only source, thus resolving the contradiction between write accessibility and storage space consumption.
2Ease of operation
If data is copied to enable write access, then write capability is improved, but time required for restoration and access increases
Solution Approach 1:
The virtualization layer performs preliminary actions by pre-loading data into a cache and maintaining a mapping between virtual addresses and physical locations. When write requests arrive, the system can quickly locate and modify cached data without needing to search through or copy large portions of the source data. This preliminary preparation of the data structure enables fast write operations and restoration, resolving the time loss contradiction.
3Adaptability or versatility
If multiple copies of data are maintained for different processes, then write access for multiple processes is improved, but storage space and complexity increase
Solution Approach 1:
The virtualization layer provides universal access to multiple processes through a single unified interface. Instead of creating separate copies for each process, the virtualization layer manages a shared cache that serves multiple processes simultaneously. Each process can request write access through the same virtualization layer, which handles the caching and modification management centrally. This multi-functional approach enables multi-process write access without proportionally increasing storage requirements, resolving the contradiction between adaptability and quantity of substance.
Data Source
AI summary
Techniques for virtualizing data are disclosed. In one particular exemplary embodiment, the techniques may be realized as a method for virtualizing data comprising identifying source data to be virtualized, intercepting an input/output (i/o) request to the source data, determining whether the input/output request is a read request or a write request, in the event the input/output request is a write request, storing one or more changes contained in the write request, and in the event the input/output request is a read request, determining whether a portion of data requested has been modified and responding to the read request. Responding to the read request may comprise providing stored data in the event a portion of the data requested has been modified, and utilizing source data in the event the data requested is unmodified.


