Versioned Storage Replica Table for Snapshot Retrieval
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing distributed systems face performance bottlenecks when restoring snapshots from stable storage due to the costly nature of input/output (I/O) operations.
Innovation Solution
A distributed system that stores snapshots in both stable storage and physical memory, utilizing a versioned storage replica table to identify and retrieve snapshots from physical memory instead of stable storage, thereby reducing the reliance on I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If snapshots are stored only in stable storage, then data persistence and reliability are improved, but retrieval speed and resource efficiency deteriorate due to costly I/O operations
Solution Approach 1:
The patent segments snapshot storage into two locations: stable storage for persistence and physical memory for fast access. The versioned storage replica table divides snapshot management into original snapshots in stable storage and cloned snapshots in physical memory, allowing selective retrieval based on speed requirements while maintaining data reliability through the stable storage copy.
Solution Approach 2:
The versioned storage replica table acts as an intermediary data structure that bridges stable storage and physical memory. It stores mapping information including snapshot identifiers, version numbers, and physical memory addresses, enabling the system to quickly determine whether snapshots are available in physical memory or must be retrieved from stable storage, thus optimizing retrieval speed without compromising reliability.
2Reliability
If snapshots are retrieved from stable storage, then data integrity is maintained, but time consumption and resource usage increase due to I/O operations
Solution Approach 1:
The system performs preliminary actions by creating cloned snapshots in physical memory before they are needed for retrieval. When snapshots are initially stored in stable storage, the system proactively clones them to physical memory locations and records the mapping in the versioned storage replica table. This preliminary preparation ensures that when retrieval is needed, snapshots can be accessed immediately from physical memory without time-consuming I/O operations, while the original stable storage copies maintain data integrity.
Solution Approach 2:
The patent uses copying to create cloned snapshots in physical memory that are identical copies of the original snapshots in stable storage. These clones provide fast access for retrieval operations while the originals remain in stable storage to preserve data integrity. The versioned storage replica table tracks these copies through mapping information, allowing the system to serve read requests from the faster physical memory copies without compromising the integrity maintained by the stable storage originals.
3Productivity
If a versioned storage replica table is implemented, then snapshot retrieval efficiency is improved, but system complexity increases
Solution Approach 1:
The versioned storage replica table serves as an intermediary data structure that manages the complexity of coordinating between stable storage and physical memory. Rather than implementing complex retrieval logic that directly manages both storage locations, the system uses this intermediate table to store mapping information (snapshot identifiers, version numbers, physical memory addresses). This intermediary abstraction simplifies the overall system architecture by providing a centralized lookup mechanism that handles the complexity of dual-location management.
Solution Approach 2:
The patent replaces complex mechanical coordination between stable storage and physical memory with a data-based solution using the versioned storage replica table. Instead of implementing complex control logic and coordination mechanisms to manage snapshots across two storage locations, the system substitutes this with a simple data structure that stores mapping information. This allows the retrieval process to be replaced by efficient data lookup operations in the replica table, reducing mechanical system complexity while improving retrieval efficiency.
Data Source
AI summary
A process includes creating, by a kernel of a distributed system, entries in a storage replica table, which are associated with a guest physical memory address. The process includes storing, by the kernel, data in the entries associating the entries with respective versions of content for the guest physical memory address; storing, by the kernel, data in the entries associating the entries with respective stable storage block addresses; and storing, by the kernel, data in the entries associating the entries with respective real physical memory addresses. The process includes, responsive to a read request to read content associated with a first version of the versions, accessing, by the kernel, the storage replica table. The process includes, responsive to the accessing the storage replica table, identifying, by the kernel, a first entry of the entries associated with the first version. The first entry contains data associating the first entry with a first real physical memory address. The process includes reading, by the kernel, data from the first real physical memory address.


