Storage Controller Formatting Count Table for Zero-Time Initialization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing capacity of storage systems and the time required for formatting become a problem, as traditional formatting methods are lengthy and impact performance, especially during urgent recovery scenarios where quick formatting is needed.
Innovation Solution
A storage system with a controller that manages formatting by using a formatting count value table to track formatting instructions, allowing data to be written and read without explicit formatting, by attaching and checking a specific code to ensure data integrity and reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional formatting is performed to ensure data reliability by matching data and data assurance code, then data reliability is improved, but formatting time becomes excessively long
Solution Approach 1:
The system performs preliminary formatting actions by writing only the data assurance code to the storage medium during LU creation, rather than writing actual data. This preliminary action establishes the foundation for future data writing while avoiding the time-consuming process of filling the entire storage area with data during formatting.
Solution Approach 2:
Instead of performing complete formatting that writes data to the entire storage area, the system performs partial formatting by only writing the data assurance code. This partial action is sufficient to establish data reliability mechanisms without the excessive time cost of complete formatting.
2Loss of time
If quick formatting is performed in the background to reduce formatting time, then formatting time is reduced, but system performance drops dramatically until formatting completes
Solution Approach 1:
The formatting process is segmented into two distinct phases: LU creation phase where only the data assurance code is written (quick formatting), and data writing phase where actual data is written later. This segmentation allows the system to achieve quick formatting without the performance penalty of background formatting, as the formatting itself completes immediately during LU creation.
3Ease of operation
If formatting is performed at the factory before shipment to enable immediate usage, then ease of operation is improved, but formatting time and shipment preparation time increase
Solution Approach 1:
The system performs preliminary formatting actions during LU creation by writing only the data assurance code structure, enabling the storage device to be used immediately without complete formatting. This preliminary action establishes the necessary framework for data storage while avoiding the time-consuming complete formatting process that would delay shipment.
4Reliability
If data is written to the entire storage area during formatting to match data and data assurance code, then data reliability is improved, but productivity decreases due to lengthy formatting
Solution Approach 1:
The system performs partial formatting by writing only the data assurance code during LU creation, rather than writing data to the entire storage area. This partial action maintains the essential function of establishing data assurance code matching for reliability while dramatically improving formatting productivity by avoiding the need to fill the entire storage area during formatting.
Data Source
AI summary
Each storage unit is provided with a table for storing a corresponding unit ID and count value. The controller receives a formatting instruction specifying a first unit ID, and updates the count value on a table corresponding to the first unit ID. The controller receives a write command specifying a second unit ID, acquires a count value corresponding to the second unit ID from the table, and attaches the count value to the data, and writes the data to the storage unit. When a read command specifying the second unit ID is received, the controller reads the data from the storage unit, acquires the count value corresponding to the second unit ID from the table, compares this count value and the count value attached to the read data, sends the read data to the transmission source of the command if these values match, and does not send the data to the transmission source of the command if these values do not match.


