Peer Storage Data Rate Levelling via Autonomous Striping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing multi-device storage systems require host or intermediate resources for data striping, which complicates high-bandwidth data processing and management across multiple storage devices.
Innovation Solution
Implementing a peer-to-peer communication channel among storage devices, where a peer storage device acts as the master data rate leveller to divide and allocate data blocks based on workload, thermal, and endurance states, enabling efficient data striping without relying on host resources.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data striping is implemented using host or intermediate resources, then high-bandwidth data processing is enabled, but system complexity and resource requirements increase
Solution Approach 1:
The storage devices autonomously perform data striping operations among themselves without requiring host or intermediate controller resources. Each storage device monitors its own workload state and participates in the striping process independently, enabling high-bandwidth data processing while eliminating the need for complex host-side striping logic and intermediate bridge chips.
Solution Approach 2:
The data striping function is extracted from the host system and intermediate controllers, and relocated to the storage devices themselves. This extraction removes the striping burden from the host interface, reducing its complexity while maintaining high data processing bandwidth through peer-to-peer striping operations.
2Productivity
If a dedicated storage controller or bridge chip is used for data striping, then data distribution is improved, but hardware complexity and cost increase
Solution Approach 1:
Storage devices autonomously perform data striping operations among themselves without requiring host or intermediate controller resources. Each storage device monitors its own workload state and participates in the striping process independently, enabling high-bandwidth data processing while eliminating the need for complex host-side striping logic and intermediate bridge chips.
Solution Approach 2:
The data striping functionality is merged directly into the storage devices, combining the roles of data storage and data distribution management within the same hardware components. This eliminates the need for separate bridge chips or dedicated striping controllers, simplifying the overall hardware architecture while maintaining efficient data distribution.
3Ease of operation
If peer storage devices autonomously perform data striping, then host resource requirements are reduced, but coordination complexity among peers increases
Solution Approach 1:
Each storage device continuously monitors its workload state and shares this information with peer devices through the peer communication channel. This feedback mechanism enables autonomous devices to make informed striping decisions, dynamically allocating data blocks to peers with lower workload while maintaining simple host-side operations. The feedback loop resolves coordination complexity through decentralized, state-aware decision-making.
Solution Approach 2:
The peer-to-peer striping system dynamically adapts to changing workload conditions by allowing storage devices to adjust their data allocation decisions in real-time based on current peer states. This dynamic behavior enables the system to maintain efficient data distribution and simple host operations even as workload patterns change, as the peer coordination automatically responds to new conditions without host intervention.
Data Source
AI summary
Example storage systems, data storage devices, and methods provide rate levelling among peer storage devices. A master storage device among peer storage devices receives host commands, determines the workload states of the peer storage devices, divides the data units in the host commands into data blocks for data striping, allocates the data blocks among the peer storage devices, and sends the data blocks to the peer storage devices using a peer communication channel.


