Storage Replication Control Using Predicted Data Growth
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems face inefficiencies in managing data replication and storage operations, particularly in flash storage systems, leading to unnecessary write operations and reduced reliability due to the involvement of lower-level storage controllers.
Innovation Solution
Implementing a direct-mapped flash storage system where higher-level operating systems initiate and control data operations directly on flash drives without address translation by lower-level controllers, utilizing non-volatile RAM for data buffering and proactive data management to optimize storage operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If lower-level storage controllers perform address translation and data operations on flash drives, then data operations can be initiated without direct OS involvement, but redundant write operations increase and system reliability decreases
Solution Approach 1:
The patent extracts the address translation function from the storage controller and relocates it to the operating system. The OS maintains a translation layer that maps logical addresses to physical flash memory addresses, eliminating the controller's address translation capability. This extraction prevents the controller from performing redundant write operations since it no longer has the authority to initiate or translate data operations directly on flash drives.
Solution Approach 2:
The patent introduces the operating system as an intermediary between the application layer and the flash storage controller. The OS acts as a mediator that receives data operations from applications, performs address translation, and then communicates with the storage controller. This intermediary role ensures that all write operations are centrally controlled and validated, preventing redundant writes and improving system reliability while maintaining ease of operation.
2Reliability
If higher-level operating systems directly control data operations on flash drives, then redundant write operations are reduced and reliability improves, but device complexity increases
Solution Approach 1:
The patent leverages the operating system's existing multi-functional role to manage flash storage operations. The OS already handles file system management, memory allocation, and I/O scheduling, so adding address translation and direct flash control utilizes these existing capabilities. This approach avoids creating a separate dedicated management layer, thereby reducing overall system complexity while improving reliability through centralized control.
Solution Approach 2:
The patent merges the address translation function with the existing file system and I/O management subsystems of the operating system. Instead of creating a separate translation layer, the address translation logic is integrated into the OS's existing data path. This consolidation reduces the number of separate components and interfaces, thereby reducing device complexity while enabling direct OS control over flash operations to improve reliability.
3Reliability
If non-volatile RAM is used for data buffering, then data migration and failover capabilities improve, but storage system complexity increases
Solution Approach 1:
The patent implements a buffering mechanism using non-volatile RAM that creates copies of data during migration operations. The NVRAM serves as a temporary buffer that holds data copies during failover and migration processes, ensuring data integrity and enabling rapid failover. This copying approach leverages the existing NVRAM hardware in flash drives without adding separate buffering hardware, thereby improving reliability while minimizing increases in system complexity.
Data Source
AI summary
Utilizing data transfer estimates for active management of a storage environment, including: determining an estimated data transfer time from a source storage environment to a destination storage environment; determining whether the estimated data transfer time exceeds a threshold; and performing, in response to the estimated data transfer time exceeding the threshold, a remedial action associated with data transfers between the source storage environment and the destination storage environment.


