Reversible Write Techniques Using SSD Offloading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems face challenges in efficiently managing transactional updates and rollback processes due to the overhead of logging and storing prior content, which can lead to resource constraints and inefficiencies, especially when dealing with failures during multi-object transactions.
Innovation Solution
Implementing a reversible write operation in physical storage devices like SSDs using an internal Log Structured Storage (LSS) system that retains prior content and mapping information, allowing for transactional updates without in-place data overwrites, and enabling transactional rollback without the need for external logging, by utilizing the SSD's internal logic for data retention and retrieval.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional logging and prior content storage methods are used for transactional updates, then transactional consistency can be maintained, but resource overhead and system complexity increase significantly
Solution Approach 1:
The SSD performs self-service by automatically retaining prior content and mapping information within its internal memory structures. When a reversible write operation occurs, the SSD independently manages the retention of old data and update of mapping tables without requiring external logging mechanisms, thereby reducing host system complexity while maintaining transactional consistency
Solution Approach 2:
The patent extracts the logging function from the host system and relocates it to the SSD's internal memory. By taking out the prior content retention mechanism from the external system and embedding it within the storage device itself, the solution reduces external resource overhead while preserving rollback capabilities
2Reliability
If external logging mechanisms are implemented for rollback processes, then transactional rollback can be achieved, but resource overhead and processing time increase
Solution Approach 1:
The SSD performs preliminary action by pre-retaining prior content and mapping information in its internal memory before rollback is needed. When a reversible write operation occurs, the SSD immediately preserves the previous state in its memory structures, enabling instantaneous rollback without requiring time-consuming external logging or data recovery operations
Solution Approach 2:
The SSD independently manages rollback operations by utilizing its internal retained prior content and mapping information. The device performs self-service rollback without requiring external logging mechanisms or host system intervention, thereby reducing processing time and resource overhead for rollback operations
3Productivity
If in-place data overwrites are performed during write operations, then storage efficiency improves, but the ability to retain prior content for rollback is lost
Solution Approach 1:
The patent applies segmentation by separating the storage of prior content from the storage of new data. Instead of overwriting in-place, the SSD segments the data retention process by preserving old data in internal memory structures while simultaneously updating mapping information to point to new data locations, thereby maintaining both storage efficiency and prior content retention
Solution Approach 2:
The SSD implements nesting by embedding prior content retention within the normal write operation flow. The internal memory structures nest the retention of old data and mapping information within the existing write path, allowing the system to maintain prior content without requiring separate external logging mechanisms, thus preserving storage efficiency while enabling rollback
Data Source
AI summary
A system can use non-volatile solid state drives (SSDs) to provide storage. The SSDs can implement internal log structured systems (LSSs). A reversible write operation can be serviced by an SSD to write first data to an SSD logical address. The reversible write operation can update the SSD logical address to store the first data rather than old data stored at the SSD logical address prior to servicing the reversible write operation. The old data can be stored at an SSD physical address and mapping information indicates the SSD logical address is mapped to the SSD physical address. Servicing the reversible write operation can include: retaining the mapping information and the old data; and adding second mapping information that maps the SSD logical address to a second SSD physical address storing the first data. A subsequent read operation can read the old data using the retained mapping information.


