Snapshot Storage Architecture With Auxiliary Path for Bandwidth Relief
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data transmission and reception speeds between a data storage device connected to multiple host devices are lower due to limited bandwidth, hindering improved data processing performance.
Innovation Solution
A data storage system that includes an auxiliary storage device separate from the data storage device, which performs snapshot operations for data stored in memory regions allocated to multiple host devices, thereby reducing communication delays and optimizing data processing performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a data storage device is connected to multiple host devices to improve resource utilization, then device versatility is improved, but data transmission speed and bandwidth availability deteriorate
Solution Approach 1:
The patent segments the data storage device into two independent controllers: a first controller for managing data storage operations and a second controller for managing snapshot operations. This segmentation allows each controller to handle specific tasks independently, preventing bandwidth contention between snapshot operations and normal data access operations, thereby maintaining high data transmission speed while supporting multiple host devices.
Solution Approach 2:
The second controller acts as an intermediary that handles snapshot operations separately from the first controller that manages normal data access. By introducing this intermediate component, the patent enables snapshot data to be read/written through a dedicated path that does not compete with the bandwidth used by multiple host devices for their regular operations, thus resolving the bandwidth limitation issue.
2Device complexity
If snapshot operations are performed through the main data storage device to simplify the system, then device complexity is reduced, but communication delay increases
Solution Approach 1:
The patent divides the snapshot operation functionality into a separate second controller that is coupled to the auxiliary storage device. This segmentation creates a dedicated snapshot operation path that is independent from the main data access path, allowing snapshot operations to execute without interfering with or being delayed by communication between host devices and the main data storage device.
Solution Approach 2:
The patent implements a copying mechanism where the second controller reads data from the first controller and writes it to the auxiliary storage device for snapshot operations. This copying approach allows snapshot data to be obtained without accessing the main data storage device during the snapshot operation, thereby reducing communication delay while maintaining system functionality.
3Speed
If snapshot data is stored in local memory to improve access speed, then data access speed is improved, but bandwidth availability for other operations deteriorates
Solution Approach 1:
The patent introduces an auxiliary storage device as an intermediary for storing snapshot data, separate from the main data storage device. This intermediary storage solution allows snapshot data to be accessed quickly when needed without occupying bandwidth that would be required for normal data operations between host devices and the main storage device, thus maintaining both access speed and bandwidth availability.
Solution Approach 2:
The patent adds another dimension to the storage architecture by introducing a separate storage path through the auxiliary storage device. This dimensional expansion allows snapshot operations to occur in a parallel space that does not compete with the main data access operations, effectively increasing overall system productivity without sacrificing snapshot data access speed.
Data Source
AI summary
In an embodiment of the disclosed technology, a data storage device includes at least one memory device including a plurality of memory regions configured to store data, a first controller configured to allocate the plurality of memory regions according to a memory allocation request of one or more host devices, and a second controller configured to: generate, in response to a snapshot request of a first host device among the one or more host devices, snapshot data corresponding to at least part of the data stored in at least part of the plurality of memory regions allocated to the first host device; and store the snapshot data into an auxiliary storage device coupled to the second controller.


