Method for prolonging service life of solid state disk

By obtaining historical read and write data and real-time monitoring of the healthy state of flash blocks, and optimizing data allocation strategies with access status and flash block state, the problem of limited service life extension of solid-state drives is solved, achieving the effect of balancing write and extending service life.

CN119597219AInactive Publication Date: 2025-03-11HONGQIN (BEIJING) TECHNOLOGY CO LTD

Patent Information

Application Number
CN202411697676.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-25
Publication Date
2025-03-11
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The prior art has limited effectiveness in extending the service life of SSDs, especially in terms of the degree of refinement of data allocation and the combination of real-time health status of flash memory blocks and the optimization writing strategy for accessing historical data.

Method used

By obtaining historical read and write data and monitoring the healthy state of flash blocks in real time, optimizing data allocation strategies in combination with access status and flash block state, and using the cache area to analyze the data to be written, avoiding the loss of high-frequency writing to flash blocks with poor health status.

Benefits of technology

It realizes balanced writes, reduces wear of flash blocks, extends the service life of solid-state drives, and improves the reliability and write performance of data storage.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119597219A_ABST
    Figure CN119597219A_ABST
Patent Text Reader

Abstract

The invention provides a method for prolonging the service life of a solid state disk, which belongs to the technical field of solid state disk storage and comprises the following steps of: 1, acquiring historical read-write data of the solid state disk, and determining an access state of each data block of each data packet in the solid state disk; 2, health data of each flash memory block in the solid state disk are monitored and obtained in real time based on a preset monitoring tool, and then the state of each flash memory block is determined; 3, determining a data distribution strategy based on the access state in each data block of each data packet in the solid state disk and the state of each flash memory block, and distributing all the data packets in the solid state disk; and 4, temporarily storing the data to be written into the cache region of the solid state disk, obtaining an analysis result of the data, and further writing the data packet to be written into the corresponding flash memory block. The service life of the solid state disk is prolonged, and meanwhile the reliability and writing performance of data storage are improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of solid state hard disk storage technology, and in particular to a method for increasing the service life of a solid state hard disk. Background Art

[0002] With the development of information technology, solid-state drives have gradually replaced traditional mechanical hard drives due to their advantages such as high read and write speeds, low power consumption, and strong shock resistance. They are widely used in personal computers, data centers, and other fields. However, since the flash memory chips inside the solid-state drives have a limited write life, frequent write operations will cause premature damage to the flash memory blocks, affecting the service life of the solid-state drives.

[0003] Some existing technical solutions extend the service life of SSDs by means of balanced writing and bad block management. For example, some technologies use a write-balancing algorithm to distribute data as evenly as possible among various flash blocks to reduce excessive wear of local flash blocks; there are also solutions that monitor the health status of flash blocks and dynamically adjust the write strategy to avoid writing data to flash blocks with poor health. These methods have improved the durability of SSDs to a certain extent. However, the existing technology still has deficiencies in the degree of refinement of data allocation, and fails to fully combine the real-time health status of flash blocks and access history data to optimize the write strategy, so the effect in extending the service life is limited.

[0004] Therefore, the present invention provides a method for increasing the service life of a solid state drive. Summary of the invention

[0005] The present invention provides a method for improving the service life of a solid-state hard disk, which is used to obtain historical read and write data and monitor the health status of a flash memory block in real time, optimize a data allocation strategy in combination with an access status and a flash memory block status, and use a cache area to analyze data to be written, thereby effectively avoiding the loss of a flash memory block in a poor health status due to high-frequency writing, achieving balanced writing, reducing the wear of the flash memory block, and extending the service life of the solid-state hard disk, while improving the reliability of data storage and the writing performance.

[0006] The present invention provides a method for increasing the service life of a solid state hard disk, comprising: Step 1: Obtain historical read and write data of the solid state drive, and determine the access status of each data block of each data packet in the solid state drive; Step 2: Based on a preset monitoring tool, real-time monitoring is performed to obtain health data of each flash memory block in the solid-state drive, thereby determining the status of each flash memory block; Step 3: determining a data allocation strategy based on the access status of each data block of each data packet in the solid state drive and the status of each flash memory block, and allocating all data packets in the solid state drive based on the data allocation strategy; Step 4: temporarily store the data to be written in the cache area of ​​the solid-state drive, analyze the data to be written and obtain the analysis results, and write the data packet to be written into the corresponding flash memory block in combination with the preset writing algorithm and data allocation strategy.

[0007] The present invention provides a method for improving the service life of a solid state hard disk, obtaining historical read and write data of the solid state hard disk, and determining the access status of data in each data block in the solid state hard disk, including: Obtain historical read and write log data of the solid-state hard disk from a preset solid-state hard disk controller, and obtain the read and write frequency, data block size, access time, and duration of a single access of each data block of each data packet from the historical read and write log data; The access coefficient of a data block is determined based on the read and write frequency, data block size, access time, and duration of a single access for each data block of each data packet:

[0008] in, is the access coefficient of the jth data block of the i-th data packet, is the access frequency of the jth data block of the ith data packet, is the average access frequency of all data blocks of the ith data packet, is the size of the jth data block of the ith data packet, is the single access time of the jth data block of the ith data packet, is the preset importance coefficient of the jth data block of the i-th data packet, is the preset access frequency threshold, is the average access duration of all data blocks of the ith data packet, is the difference between the last access time of the jth data block of the i-th data packet and the current time, is the preset adjustment factor corresponding to the access time, is the preset write ratio of the jth data block of the i-th data packet, is the preset adjustment coefficient corresponding to the write ratio, is a preset adjustment coefficient corresponding to the importance coefficient of the data block; The access coefficient of each data block and the preset coefficient-state data table determine the access coefficient of each data block. ; The access status of each data packet is determined based on the access status of all data blocks of each data packet.

[0009] The present invention provides a method for improving the service life of a solid state drive, which monitors and obtains the health data of each flash memory block in the solid state drive in real time based on a preset monitoring tool, and then determines the status of each flash memory block, including: Acquire a standard protocol of the solid state drive, and perform a first analysis on the standard protocol to acquire first health data of a flash memory block of the solid state drive; Monitoring several preset health indicators of the solid state drive based on a preset monitoring tool, thereby obtaining second health data of the flash memory block of the solid state drive; Determine the health score of each flash memory block in the solid state drive based on the first health data and the second health data:

[0010] in, Score the health of the kth flash block, is the number of erase and write times of the kth flash memory block, is the maximum number of erase and write times of the kth flash memory block, is the weight corresponding to the number of erase and write times of the kth flash memory block, is the number of failed cells in the kth flash memory block, is the maximum number of failed cells in the kth flash memory block, is the weight corresponding to the number of faulty cells in the kth flash memory block, is the retention time of data in the kth flash memory block, is the maximum retention time of data in the kth flash memory block, is the weight corresponding to the retention time of the data in the kth flash memory block; The status of each flash memory block is determined based on the health score of each flash memory block and a preset score-status data table.

[0011] The present invention provides a method for improving the service life of a solid state drive, obtaining a standard protocol of the solid state drive, and performing a first analysis on the standard protocol to obtain first health data of a flash memory block of the solid state drive, including: Monitor the SSD based on preset monitoring technology; Obtain the hard disk type of the solid state drive and then determine the standard protocol of the hard disk type; Determine the corresponding command based on the standard protocol of the hard disk and query the monitoring report based on the preset monitoring technology in combination with the preset query tool; Analyze the monitoring report and obtain the first health data.

[0012] The present invention provides a method for improving the service life of a solid state hard disk, determining a data allocation strategy based on the access status of each data block of each data packet in the solid state hard disk and the status of each flash memory block, and allocating all data packets in the solid state hard disk based on the data allocation strategy, including: Build a data allocation strategy based on the access status of each data packet in the SSD and the health status of each flash block; The data packet corresponding to each flash memory block is determined based on the data allocation strategy, and the write queue of the flash memory block is determined, and then the data packet is allocated to the corresponding flash memory block.

[0013] The present invention provides a method for improving the service life of a solid state hard disk, which determines a data packet corresponding to each flash memory block based on a data allocation strategy, determines a write queue of the flash memory block, and then allocates the data packet to the corresponding flash memory block, including: Allocating a number of initial queues to each flash memory block based on a data allocation strategy, each queue including a number of data packets; Determine the priority of each data packet in each queue corresponding to each flash memory block based on the access status of each data packet in the queue; Determine the priority of each queue based on the access status of all data packets in each queue corresponding to each flash memory block; Determine the queue order of the data packets in each queue corresponding to each flash memory block based on the priority of each data packet in each queue corresponding to each flash memory block, thereby generating a first data packet queue of each queue; Determining a queue order of all queues based on the priority of each queue corresponding to each flash memory block; Determine the write queue corresponding to each flash memory block based on the queue order of all queues corresponding to each flash memory block and the first data packet queue of each queue; The allocation of all packets is performed based on the write queue of each memory block and the preset write algorithm.

[0014] The present invention provides a method for improving the service life of a solid state drive, temporarily storing data to be written in a cache area in the solid state drive, analyzing the data to be written and obtaining analysis results, and writing the data packet to be written into a corresponding flash memory block in combination with a preset writing algorithm and a data allocation strategy, including: Temporarily storing the data to be written in a cache area in the solid state drive and preprocessing the data to obtain first data to be written; Analyzing the first data to be written, and determining a data state of the first data to be written based on the analysis result; Determine a first data allocation strategy for the first data to be written based on a data state of the first data to be written and a data allocation strategy; The first data to be written is written into the corresponding flash memory block based on the first data allocation strategy and a preset writing algorithm.

[0015] The present invention provides a method for improving the service life of a solid state hard disk, and a preset writing algorithm includes: a load balancing writing algorithm, a sequential writing algorithm and a space recovery algorithm.

[0016] Compared with the prior art, the present invention has the following beneficial effects: By obtaining historical read and write data and monitoring the health status of flash blocks in real time, optimizing data allocation strategies based on access status and flash block status, and using the cache area to analyze the data to be written, it effectively avoids the loss of flash blocks in poor health due to high-frequency writing, achieves balanced writing, reduces the wear of flash blocks, extends the service life of solid-state drives, and improves the reliability of data storage and write performance. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0018] Figure 1 The present invention is a flowchart of a method for increasing the service life of a solid state drive provided by an embodiment of the present invention. DETAILED DESCRIPTION

[0019] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0020] Example 1 The embodiment of the present invention provides a method for increasing the service life of a solid state drive. Figure 1 As shown, including: Step 1: Obtain historical read and write data of the solid state drive, and determine the access status of each data block of each data packet in the solid state drive; Step 2: Based on a preset monitoring tool, real-time monitoring is performed to obtain health data of each flash memory block in the solid-state drive, thereby determining the status of each flash memory block; Step 3: determining a data allocation strategy based on the access status of each data block of each data packet in the solid state drive and the status of each flash memory block, and allocating all data packets in the solid state drive based on the data allocation strategy; Step 4: temporarily store the data to be written in the cache area of ​​the solid-state drive, analyze the data to be written and obtain the analysis results, and write the data packet to be written into the corresponding flash memory block in combination with the preset writing algorithm and data allocation strategy.

[0021] In this embodiment, historical read and write data refers to the data access log recorded in the SSD controller in the past period of time, including the number of read and write times of each data block, the operation type (read or write), the time interval and other information, which is used to analyze the access mode of different areas in the SSD. Assume that the historical read and write data of data block A in a SSD indicates that it is frequently written and has a high read and write frequency. The system can analyze the data to find that data block A is a high-frequency read and write block, so as to prioritize it to the flash memory block with better health to reduce wear; In this embodiment, the access status is the usage of each data block in each data packet, including information such as the number of reads, the number of writes, and the access frequency. It is determined by analyzing historical read and write data to identify which data blocks are "hot spots" (frequently accessed) or "cold spots" (small number of accesses). For example, data block B has been accessed hundreds of times in the past month, and its access status is defined as a "high-frequency access block", while data block C has only been accessed a few times in the same time period and is marked as a "low-frequency access block". The system can preferentially allocate data block C to the edge area of ​​the flash memory to focus on protecting the frequently accessed core area.

[0022] In this embodiment, the preset monitoring tool is a functional module or software tool built into the solid-state drive, which is used to monitor and obtain the health status data of the flash memory block in real time, including the degree of wear, the number of bad blocks, the temperature, etc. These data provide a decision basis for the subsequent data allocation strategy. For example, through the preset monitoring tool, it can be obtained that the current wear level of the flash memory block D is high, while the flash memory block E is relatively new and has been used less. Therefore, the system will give priority to the flash memory block E when allocating data to avoid excessive writing to the worn flash memory block D; In this embodiment, the state of the flash memory block describes the health of each flash memory block, such as the degree of wear, remaining service life, whether there are bad blocks, etc. This state is obtained in real time through a preset monitoring tool and affects the decision of the data allocation strategy. Assume that the health of the flash memory block F shows that it is close to the preset end of life. Based on this state, the system can reduce the writing of the flash memory block F and give priority to writing data to other flash memory blocks with good health to extend the service life of the entire solid state drive.

[0023] In this embodiment, the data allocation strategy determines the distribution of data in the SSD based on the access status of the data block and the status of the flash memory block. The goal is to optimize the balance of data write frequency and avoid excessive wear of certain blocks. For example, data block G with a "high frequency" access status will be preferentially allocated to a flash memory block H in good health to withstand more write pressure, while data block I with low frequency access will be allocated to a slightly worn flash memory block J to achieve read and write load balance.

[0024] In this embodiment, the cache area in the solid-state drive is a temporary storage space in the solid-state drive for temporarily storing data to be written. The cache area is used to store data in advance to alleviate the writing pressure caused by directly writing into the flash memory block. The data is analyzed in the cache area and then written into the appropriate flash memory block. For example, when the system receives a batch of data packets, these data are first stored in the cache area. The cache area will analyze the data, such as checking whether it is high-frequency data, and then determine the specific writing location according to the data allocation strategy to reduce the wear caused by frequent writing; In this embodiment, the preset write algorithm is a write control logic designed according to the characteristics of the SSD, which is used to determine the specific process and order of data writing, and combines the cache analysis results and data allocation strategy to try to balance the write load of each flash memory block. For example, in a certain data write, the system calculates the best write position of data packet K through the preset write algorithm. The algorithm finds that high-frequency write data should be written to the healthy flash memory block L first, while low-frequency data is written to the flash memory block M. When the algorithm performs a write operation, it also considers the current state of each block and adjusts the write frequency and order, thereby further extending the service life of the SSD.

[0025] The beneficial effects of the above technical solution are: by obtaining historical read and write data and real-time monitoring of the health status of flash memory blocks, optimizing the data allocation strategy in combination with the access status and flash memory block status, and using the cache area to analyze the data to be written, it effectively avoids the loss of flash memory blocks in poor health due to high-frequency writing, achieves balanced writing, reduces the wear of flash memory blocks, extends the service life of solid-state drives, and improves the reliability of data storage and write performance.

[0026] Example 2 An embodiment of the present invention provides a method for improving the service life of a solid state drive, obtaining historical read and write data of the solid state drive, and determining the access status of data in each data block in the solid state drive, including: Obtain historical read and write log data of the solid-state hard disk from a preset solid-state hard disk controller, and obtain the read and write frequency, data block size, access time, and duration of a single access of each data block of each data packet from the historical read and write log data; The access coefficient of a data block is determined based on the read and write frequency, data block size, access time, and duration of a single access for each data block of each data packet:

[0027] in, is the access coefficient of the jth data block of the i-th data packet, is the access frequency of the jth data block of the ith data packet, is the average access frequency of all data blocks of the ith data packet, is the size of the jth data block of the ith data packet, is the single access time of the jth data block of the ith data packet, is the preset importance coefficient of the jth data block of the i-th data packet, is the preset access frequency threshold, is the average access duration of all data blocks of the ith data packet, is the difference between the last access time of the jth data block of the i-th data packet and the current time, is the preset adjustment factor corresponding to the access time, is the preset write ratio of the jth data block of the i-th data packet, is the preset adjustment coefficient corresponding to the write ratio, is a preset adjustment coefficient corresponding to the importance coefficient of the data block; The access coefficient of each data block and the preset coefficient-state data table determine the access coefficient of each data block. ; The access status of each data packet is determined based on the access status of all data blocks of each data packet.

[0028] In this embodiment, the preset solid-state hard disk refers to a solid-state hard disk configured with specific parameters in hardware and control software, and usually has a built-in controller for recording historical read and write data, real-time monitoring of access status and health status, etc. For example, a certain brand of solid-state hard disk is equipped with an advanced controller that can record detailed read and write frequency, data block size, access time, etc. The hard disk is configured to update the log every 10 minutes, providing accurate read and write history data and providing a basis for access status analysis.

[0029] In this embodiment, the access coefficient of a data block is used to comprehensively evaluate the usage frequency and importance of a data block, and is calculated based on multiple parameters such as read and write frequency, data block size, and single access duration to help identify frequently accessed data blocks, so as to prioritize protection and optimize the allocation of these blocks. For example, for a data block A, the access coefficient is calculated to be 0.85, indicating that it is a frequently accessed block. Based on this coefficient, the system can arrange the data block to a flash memory block area with better health to avoid concentrated wear.

[0030] In this embodiment, the preset importance coefficient is used to measure the relative importance of the data block, which is preset according to the purpose of the data or the storage policy. The system uses this coefficient to give priority to protecting the data blocks with high importance, ensuring that the key data is stored in a more reliable area. For example, the preset importance coefficient of the system file is 0.9, while the coefficient of the cache data is 0.3, indicating that the system file is more important and needs to be written to the flash memory block with a longer lifespan first; In this embodiment, the preset access frequency threshold is a set frequency standard for identifying data blocks with high access frequencies. If the access frequency of a data block exceeds this threshold, it is marked as a "high-frequency data block" and needs to be protected. For example, the access frequency threshold is set to 50 times / hour. If the access frequency of data block B reaches 60 times / hour, it is marked as a high-frequency access block and is preferentially arranged to a flash memory block area with higher health. In this embodiment, the preset write ratio is used to allocate the write weight of data blocks between different areas. By adjusting the write ratio, the write pressure of each area in the solid-state drive can be balanced, thereby extending the overall life. For example, if the preset write ratio of a block of data C is 60%, the probability of writing the block to the high-reliability area is 60%, and the probability of writing to the ordinary area is 40%; In this embodiment, the preset adjustment coefficient is used to flexibly adjust the weight of each parameter in the access coefficient. By adjusting the coefficient, the influence of each factor can be dynamically adjusted according to the actual use environment or needs. For example, if the most recent access time of data block D is significantly different from the current time, the system will adjust the weight of the "access time" parameter in the access coefficient to reduce the influence of inactive data blocks on the overall access coefficient.

[0031] In this embodiment, the preset coefficient-state data table is a reference table for mapping access coefficients to corresponding data block states (such as "hot spots", "cold spots", etc.). By looking up the table, the state of each data block can be quickly determined to provide a basis for data allocation strategy. For example, according to the coefficient-state data table, blocks with access coefficients above 0.8 are marked as "hot spots". The system will implement special protection measures for these blocks and arrange them in areas with higher reliability.

[0032] In this embodiment, the access status of each data packet is determined based on the access status of all data blocks of each data packet. Each data packet contains multiple data blocks. By summarizing the access status of each data block, the overall access status of the data packet can be obtained, thereby guiding the storage strategy of the packet. For example, if 90% of the data blocks in data packet X are marked as "high-frequency access", data packet X is marked as a "high-frequency packet" and is preferentially stored in a flash memory area with a better health status to reduce the impact of high-frequency writing on the life of the hard disk.

[0033] The beneficial effects of the above technical solution are: by analyzing the historical read and write data of the solid-state drive, calculating the access coefficient of the data block, comprehensively considering factors such as access frequency, size, duration, etc., the access status of the data block and data packet is accurately determined, and health management based on access characteristics is realized, which provides scientific support for optimizing data allocation and extending the life of the solid-state drive.

[0034] Example 3 An embodiment of the present invention provides a method for improving the service life of a solid state drive, which monitors and obtains health data of each flash memory block in the solid state drive in real time based on a preset monitoring tool, and then determines the status of each flash memory block, including: Acquire a standard protocol of the solid state drive, and perform a first analysis on the standard protocol to acquire first health data of a flash memory block of the solid state drive; Monitoring several preset health indicators of the solid state drive based on a preset monitoring tool, thereby obtaining second health data of the flash memory block of the solid state drive; Determine the health score of each flash memory block in the solid state drive based on the first health data and the second health data:

[0035] in, Score the health of the kth flash block, is the number of erase and write times of the kth flash memory block, is the maximum number of erase and write times of the kth flash memory block, is the weight corresponding to the number of erase and write times of the kth flash memory block, is the number of failed cells in the kth flash memory block, is the maximum number of failed cells in the kth flash memory block, is the weight corresponding to the number of faulty cells in the kth flash memory block, is the retention time of data in the kth flash memory block, is the maximum retention time of data in the kth flash memory block, is the weight corresponding to the retention time of the data in the kth flash memory block; The status of each flash memory block is determined based on the health score of each flash memory block and a preset score-status data table.

[0036] In this embodiment, the standard protocol of the solid-state drive is the communication and management specification followed by the SSD when storing and managing data, such as the SMART protocol, the NVMe protocol, etc. The standard protocol usually defines basic information and parameters for monitoring the health status of the device. For example, a solid-state drive using the SMART protocol can provide some health indicators, such as the number of read and write times, the number of bad blocks, and the temperature. By reading this information, the system can obtain the basic health data of the SSD, laying the foundation for further analysis. In this embodiment, the first analysis refers to a preliminary assessment of the health status of the SSD by reading and parsing the health data contained in the standard protocol to obtain the first health data of the flash memory block. For example, the first analysis of flash memory block A through the SMART protocol finds that its erase and write times are close to 80% of the preset maximum erase and write times. Therefore, the data is marked as part of the first health data for subsequent evaluation.

[0037] In this embodiment, the first health data is the basic health information of the flash memory block obtained through the standard protocol, including the maximum number of erase and write times, the longest retention time, and the maximum number of faulty units. For example, by reading the first health data of flash memory block B, it is known that its maximum number of faulty units reaches 20. Combined with the evaluation results of the erase and write times, the system can make a preliminary judgment on its health status.

[0038] In this embodiment, the preset monitoring tool is an advanced monitoring module inside the SSD, which tracks multiple health indicators in real time and collects the second health data of the flash memory block. For example, using the built-in monitoring tool of the SSD, the temperature change, erase rate and data retention time of the flash memory block C can be collected regularly as the second health data source to ensure the real-time and comprehensiveness of the monitoring information; In this embodiment, the preset health indicators are specific parameter sets tracked by the SSD during health monitoring, which are used to comprehensively evaluate the life and reliability of the flash memory block. These indicators include the number of erase and write times, the number of failed units, temperature, data retention time, etc. Assume that the preset health indicators of a certain SSD include the number of erase and write times and the number of failed units, etc. The system will update the health score of the flash memory block based on the real-time changes of these indicators to more accurately reflect the actual status of each flash memory block.

[0039] In this embodiment, the second health data is detailed information collected by a preset monitoring tool, covering multiple preset health indicators, and can reflect the real-time health status of the flash memory block, including: the number of erases and writes, the number of failed units, and the data retention time. For example, the second health data shows that the temperature of the flash memory block D is high and its data retention time is greatly shortened, which means that the health status of the block is deteriorating. The system makes timely adjustments to its health score based on this data.

[0040] In this embodiment, the health score of the flash memory block is a comprehensive indicator to quantify the health of the flash memory block. Assuming that the number of erase and write times of flash memory block E is close to the maximum value, the number of faulty units is large, and the data retention time is short, the calculated health score is 0.3 (the full score is 1). This low score indicates that its health is poor, and the system can reduce writing to this block; In this embodiment, the retention time refers to the length of time that data can be reliably stored on the flash memory block. A longer retention time indicates that the flash memory block still has good storage capacity, and a shorter retention time may mean that the flash memory block begins to age. If the data retention time of the flash memory block F gradually shortens to less than 1 month (usually should be more than several months), this indicates that the block is highly worn and it is necessary to reduce the frequency of writing to it when allocating data; In this embodiment, the preset score-status data table is a predefined comparison table that maps the health score to the health status of the flash memory block, such as "good", "normal" or "warning". According to this table, the system can quickly determine the status of each flash memory block, which is convenient for dynamically adjusting the data allocation strategy. For example, according to the score-status data table, if the health score is above 0.8, the flash memory block status is "good"; if it is between 0.5-0.8, it is "normal"; if it is lower than 0.5, it is marked as "warning". The health score of flash memory block G is 0.6, so the system sets its status to "normal" and considers appropriately reducing the write to this block in data allocation.

[0041] In this embodiment, the state of each flash block is determined based on the health score of each flash block. The health status of each flash block is divided into different states (such as "good", "normal" or "warning") according to the health score of each flash block, so that the system can dynamically adjust the storage allocation strategy. For example, the health score of flash block H is 0.4 and is marked as "warning". The system will give priority to writing data to the flash blocks with higher scores to avoid further wear of block H, so as to extend the service life of the entire SSD.

[0042] The beneficial effects of the above technical solution are: by real-time monitoring of multiple health indicators of flash memory blocks, combining protocol analysis to obtain health data, and using a weighted scoring model to accurately evaluate the health of each flash memory block, a comprehensive evaluation of multi-dimensional health status is achieved, providing a scientific basis for optimizing data management and extending the life of solid-state drives.

[0043] Example 4 An embodiment of the present invention provides a method for improving the service life of a solid state drive, obtaining a standard protocol of the solid state drive, and performing a first analysis on the standard protocol to obtain first health data of a flash memory block of the solid state drive, including: Monitor the SSD based on preset monitoring technology; Obtain the hard disk type of the solid state drive and then determine the standard protocol of the hard disk type; Determine the corresponding command based on the standard protocol of the hard disk and query the monitoring report based on the preset monitoring technology in combination with the preset query tool; Analyze the monitoring report and obtain the first health data.

[0044] In this embodiment, the preset monitoring technology refers to a technical means for real-time monitoring of the health status of the SSD, which usually includes the number of read and erase times, failure rate, temperature, storage unit wear, etc. This technology relies on the SSD controller or external monitoring software to generate monitoring reports regularly. For example, an SSD uses Adaptive Wear Leveling as a preset monitoring technology to regularly collect wear data and temperature information of each flash memory block. Through this technology, the system can generate reports to identify areas where excessive wear may occur.

[0045] In this embodiment, the hard disk type refers to the type or interface type of the SSD, such as SATA SSD, NVMe SSD, etc. Different hard disk types support different standard protocols and command sets. Therefore, when obtaining health data, it is necessary to first determine the specific type of the hard disk. For example, if an SSD is an SSD with an NVMe interface, its hard disk type is "NVMe SSD". The monitoring configuration can be directly performed according to the NVMe protocol, and the appropriate instruction set and diagnostic command can be selected to obtain health data; In this embodiment, the standard protocol of the hard disk type is a set of protocols used by SSDs under different types and interfaces, which are used to communicate with the controller or host and implement data management and health monitoring. Common protocols include the SMART protocol (mainly used for SATA hard disks) and the NVMe protocol (used for SSDs with NVMe interfaces). For example, the NVMe protocol provides some specific health monitoring instructions for NVMe SSDs, such as the Log Page command, which is used to read the fault information and temperature status of the flash memory block. Through the NVMe protocol, the system can collect health data of the SSD more comprehensively.

[0046] In this embodiment, the corresponding command is determined based on the standard protocol of the hard disk. The system can determine the specific command set used to obtain health data according to the standard protocol of the hard disk type. Commands of different protocols differ in structure and purpose, such as reading wear status, obtaining temperature data, etc. For example, for a SATA SSD, the command 0xB0 is used to read health data through the SMART protocol. This command can return the wear information and error log of the hard disk, and provide the first health data for subsequent analysis; In this embodiment, the preset query tool is a preconfigured software or hardware tool for sending query commands to the SSD and obtaining monitoring data. These tools are usually built into the operating system or hardware controller and are used to extract specific monitoring reports. For example, a system presets the query tool SMARTctl, through which the SMART data of the SATA SSD can be queried, including wear conditions, the number of failed units, etc. This query tool can directly obtain information from the hard disk controller and generate a monitoring report.

[0047] In this embodiment, the monitoring report is an SSD status data file generated based on the preset monitoring technology and query tool, which records the health information of the hard disk, such as the number of erase and write times, faulty units, temperature, etc. These data are used to determine the current health status of the SSD. For example, the monitoring report shows that the number of erase and write times of a certain SSD is close to 80% of the maximum value, and there are multiple bad blocks. These data remind the system to reduce the write frequency of the SSD or migrate key data; In this embodiment, the analysis of the monitoring report includes checking the health data of the SSD for potential problems or signs of degradation. The analysis content usually involves the number of erases and writes, temperature anomalies, and the increase of faulty units. This information is used to calculate the overall health of the SSD. For example, if the monitoring report shows that the temperature of a certain SSD is high and the number of bad blocks is gradually increasing, the analysis shows that the health of the SSD is poor. Based on this, the system can consider reducing the amount of data written to the hard disk and back up and migrate the data if necessary; In this embodiment, the first health data refers to the preliminary health information obtained by analyzing the monitoring report, which usually includes the number of erase and write times, temperature, number of bad blocks, etc. These data are the basis for evaluating the health status of the SSD, and are used to further calculate the health score or decide whether to take protective measures. For example, after analyzing the monitoring report, the system obtains the first health data: the number of erase and write times is 3000 times, the number of bad blocks is 5, and the temperature is 40°C. Based on these data, the system can preliminarily determine that the health status of the SSD is good and can continue to be used normally.

[0048] The beneficial effects of the above technical solution are: by analyzing the standard protocol of the solid-state hard disk and combining monitoring technology to obtain the health data of the flash memory block, accurate monitoring of the health of the hard disk is achieved, and personalized health assessment based on the hard disk type is provided, providing a scientific basis for subsequent optimization of data allocation and extension of the hard disk life.

[0049] Example 5 An embodiment of the present invention provides a method for improving the service life of a solid state drive, determining a data allocation strategy based on the access status of each data block of each data packet in the solid state drive and the status of each flash memory block, and allocating all data packets in the solid state drive based on the data allocation strategy, including: Build a data allocation strategy based on the access status of each data packet in the SSD and the health status of each flash block; The data packet corresponding to each flash memory block is determined based on the data allocation strategy, and the write queue of the flash memory block is determined, and then the data packet is allocated to the corresponding flash memory block.

[0050] In this embodiment, based on the access status of each data packet in the solid-state drive and the health status of each flash block, the data allocation strategy is constructed to optimize the data storage strategy based on the access frequency (i.e., access status) of the data packet and the health score of the flash block. By dynamically allocating high-frequency access data and low-frequency access data to appropriate flash blocks, the system can balance the wear of the flash blocks and extend the overall life of the SSD. Assume that there are two data packets in the SSD: data packet A is high-frequency access data (such as system logs), and data packet B is low-frequency access data (such as archive files). At the same time, the health score of flash block X is low and the wear is serious, while the health score of flash block Y is high and the state is good. Based on this information, the system constructs the following data allocation strategy: allocate the high-frequency access data packet A to the flash block Y with higher health to reduce the risk of increased wear; allocate the low-frequency access data packet B to the flash block X with lower health, because low-frequency writing helps to delay the aging of X.

[0051] In this embodiment, the data packet corresponding to each flash memory block is determined based on the data allocation strategy. According to the data allocation strategy, the system allocates a corresponding data packet to each flash memory block. High-frequency access data is allocated to flash memory blocks with better health, while low-frequency access data can be stored in flash memory blocks with poorer health. This can optimize the utilization efficiency of the flash memory blocks. Assume that according to the data allocation strategy, the flash memory block Y with better health is allocated with the frequently accessed data packet A, while the flash memory block X with poorer health is allocated with the infrequently accessed data packet B. This allocation method prevents the flash memory blocks with lower health from aging rapidly due to high-frequency writing, which helps to extend the life of the SSD. In this embodiment, the write queue is a list of flash memory block write tasks arranged by priority, which is used to manage the write order and position of each data packet. By adding the data packets to be written to the write queue, the system can write data in an orderly manner, thereby avoiding concentrated writing to a single flash memory block, which causes serious block wear. Assume that the system's write queue contains three tasks: Task 1: Write the frequently accessed data packet A to the flash memory block Y with higher health, Task 2: Write the infrequently accessed data packet B to the flash memory block X with lower health, Task 3: Write the newly generated data packet C (with medium access frequency) to the flash memory block Z with moderate health. The system processes these tasks from the write queue in turn to ensure that each data packet is written to the appropriate flash memory block and maintain the health balance of the SSD.

[0052] In this embodiment, allocating data packets to corresponding flash memory blocks means writing each data packet to the corresponding flash memory block to achieve the best match between data packets and flash memory blocks, and avoid overuse of a single flash memory block. For example, according to the data allocation strategy, the system writes data packet A with high frequency access to flash memory block Y, and writes data packet B with low frequency access to flash memory block X. Since block Y is in good health and can withstand frequent writing, the low frequency writing of block X can delay its further aging. In this way, the overall service life of the SSD is significantly extended.

[0053] The beneficial effects of the above technical solution are: by comprehensively considering the access status of the data packet and the health status of the flash memory block, the data allocation strategy is dynamically adjusted to optimize the data write bit, and adaptive allocation of the health of the flash memory block is achieved, reducing the write amplification effect, balancing the flash memory wear, significantly extending the service life of the solid-state drive, and improving the write efficiency.

[0054] Example 6 An embodiment of the present invention provides a method for improving the service life of a solid state drive, which determines a data packet corresponding to each flash memory block based on a data allocation strategy, determines a write queue of the flash memory block, and then allocates the data packet to the corresponding flash memory block, including: Allocating a number of initial queues to each flash memory block based on a data allocation strategy, each queue including a number of data packets; Determine the priority of each data packet in each queue corresponding to each flash memory block based on the access status of each data packet in the queue; Determine the priority of each queue based on the access status of all data packets in each queue corresponding to each flash memory block; Determine the queue order of the data packets in each queue corresponding to each flash memory block based on the priority of each data packet in each queue corresponding to each flash memory block, thereby generating a first data packet queue of each queue; Determining a queue order of all queues based on the priority of each queue corresponding to each flash memory block; Determine the write queue corresponding to each flash memory block based on the queue order of all queues corresponding to each flash memory block and the first data packet queue of each queue; The allocation of all packets is performed based on the write queue of each memory block and the preset write algorithm.

[0055] In this embodiment, the initial queue refers to a group of data packet queues pre-allocated to each flash memory block in the data allocation strategy. Each flash memory block is allocated with several initial queues, each of which contains multiple data packets. It is assumed that flash memory block A is allocated with two initial queues, which contain data packets D1, D2 and D3, and D4, D5 and D6 respectively. The division of these initial queues allows data to be organized in groups first, laying the foundation for subsequent priority sorting.

[0056] In this embodiment, the priority of a data packet is determined based on the access status of the data packet in the queue (such as access frequency, latest access time, etc.). Data packets with high access frequency or recently accessed are usually given higher priority to ensure that important data is written first. For example, among the data packets D1, D2 and D3 in the initial queue, D1 has the highest access frequency, so it has the highest priority, followed by D2, and D3. This priority will affect the order of these data packets in the queue and subsequent writing.

[0057] In this embodiment, the priority of the queue is determined by the overall access status of all data packets in the queue. For example, a queue containing more high-priority data packets will obtain a higher queue priority. Assuming that in the two initial queues Q1 and Q2 of flash block A, the data packets of Q1 (such as D1 and D2) have an overall priority higher than the data packets of Q2 (such as D4, D5, and D6), so Q1 will obtain a higher priority.

[0058] In this embodiment, the data packet queue order refers to the order generated by sorting the data packets in each queue of each flash memory block from high to low according to the priority. This order ensures that important data packets are processed first in the write operation. For example, for data packets D1, D2, and D3 in the Q1 queue, the order of the data packet queue after sorting according to the priority is [D1, D2, D3], ensuring that the data packets with high priority are written first; In this embodiment, the first data packet queue refers to a queue formed by taking out the data packet with the highest priority from the ordered data packets in each queue. The first data packet queue can be used as a leading queue for each write task to ensure timely writing of high-priority data. For example, in the two initial queues Q1 and Q2 of flash memory block A, D1 and D4 with the highest priority are respectively used as members of the first data packet queue, so that the system gives priority to writing these data packets.

[0059] In this embodiment, the queue order refers to the execution order of all queues obtained after sorting the priorities of the queues in each flash memory block. The queue with a higher priority will be processed first. For example, if the priority of Q1 in flash memory block A is higher than Q2, then the queue order is Q1→Q2, and the system will first complete the writing of the data packet in Q1.

[0060] In this embodiment, the write queue refers to a write instruction queue generated by arranging all queues in each flash memory block in queue order and combining the first data packet queues in each queue. This queue controls the order in which data is written to the flash memory block. For example, according to the queue order of Q1 and Q2 of flash memory block A and their respective first data packet queues, the final write queue may be [D1, D2, D4, D3, D5], ensuring that high priority data packets are written first.

[0061] The beneficial effects of the above technical solution are: through a multi-level priority queue management mechanism, data packets are allocated to different flash memory blocks according to the access status to dynamically adjust the queue priority and write order, thereby realizing refined data scheduling, reducing the write amplification effect, balancing the wear of the flash memory blocks, and greatly improving the service life and write efficiency of the solid-state drive.

[0062] Example 7 The embodiment of the present invention provides a method for improving the service life of a solid-state hard disk, temporarily storing data to be written in a cache area in the solid-state hard disk, analyzing the data to be written and obtaining analysis results, and writing the data packet to be written into a corresponding flash memory block in combination with a preset writing algorithm and a data allocation strategy, including: Temporarily storing the data to be written in a cache area in the solid state drive and preprocessing the data to obtain first data to be written; Analyzing the first data to be written, and determining a data state of the first data to be written based on the analysis result; Determine a first data allocation strategy for the first data to be written based on a data state of the first data to be written and a data allocation strategy; The first data to be written is written into the corresponding flash memory block based on the first data allocation strategy and a preset writing algorithm.

[0063] In this embodiment, the analysis results include: access frequency: the system first evaluates the access frequency of the data packet. Frequently accessed data packets are usually identified as hot data, while infrequently accessed data packets are cold data. Data write mode: analyze the data write mode to determine whether it is sequential write or random write. For example, database transaction logs are usually sequential writes, while configuration file updates may be random writes. Timeliness requirements: some data may have higher timeliness requirements (such as real-time data) and need to be written to healthy flash blocks first to reduce latency. Data importance: some data may be more important than other data. The system will make priority judgments based on the importance of the data. For example, transaction data has a higher priority, while static file data may have a lower priority. In this embodiment, the data status of the first data to be written includes: hot data (high frequency, sequential write data), cold data (low frequency, random write data), high priority data (data with timeliness requirements), low priority data (for example, backup files or temporary files, etc.

[0064] In this embodiment, the first data allocation strategy is a specific storage plan formulated for the current data to be written after combining the data status and the data allocation strategy. This strategy refines the distribution location and write priority of the first data to be written on the flash memory block. Assuming that the data status is "high-frequency data", the data allocation strategy recommends that such data be written to a flash memory block with high health. Combining this information, the system generates the first data allocation strategy: write the first data to be written to the flash memory block A with good health to avoid increased wear due to frequent writing.

[0065] The beneficial effects of the above technical solution are: by temporarily storing the data to be written in the cache area and analyzing it, dynamically adjusting the writing method according to the data status and allocation strategy, and combining cache preprocessing, data status analysis and adaptive writing strategy, the write amplification effect is effectively reduced, and the wear of the flash memory block is balanced, thereby significantly extending the service life of the solid-state drive and improving data writing efficiency and storage stability.

[0066] Example 8 The embodiment of the present invention provides a method for improving the service life of a solid state drive, and the preset writing algorithm includes: a load balancing writing algorithm, a sequential writing algorithm and a space recovery algorithm.

[0067] In this embodiment, the load-balancing write algorithm monitors the usage frequency and wear level of each flash memory block to ensure that data is not concentrated in a few flash memory blocks when written, thereby avoiding excessive wear of specific areas. The algorithm aims to evenly distribute the write burden and extend the overall life of the SSD. Assume that the current write counts of flash memory blocks A, B, and C in the SSD are 1000, 1500, and 2000 times, respectively. When a new data packet is to be written, the load-balancing write algorithm will select flash memory block A with fewer write counts to avoid writing data to flash memory block C, which already has a higher write count. This strategy effectively balances the load of each flash memory block and prevents some blocks from reaching the write life limit prematurely; In this embodiment, the core of the sequential write algorithm is to optimize the order of data writing and minimize the occurrence of random write operations. Random write operations will cause frequent page updates and block erase operations on the SSD, thereby increasing wear. Through sequential writing, the system can effectively reduce write amplification, improve write efficiency and hard disk life. Assume that there are three data packets that need to be written, and the logical addresses of data packets P1, P2, and P3 are continuous. The sequential write algorithm will ensure that these data packets are written to continuous physical addresses in sequence, rather than being scattered in different physical blocks. Through sequential writing, the system reduces the jumpiness in write operations, reduces the frequency of block erases, and improves write efficiency; In this embodiment, the purpose of the space recovery algorithm is to free up enough physical block space for future data writing by regularly sorting and cleaning up unused storage space (i.e., garbage collection). This algorithm usually runs in the background, sorting out the flash memory blocks where invalid data (such as deleted or updated data) is located, and performing block erasure so that new data can be rewritten. This not only improves space utilization, but also reduces frequent write conflicts. For example, a flash memory block D in the SSD has stored multiple sets of data, some of which are marked as invalid (because the data has been deleted or updated). The space recovery algorithm will detect this situation, sort out and clear the invalid data, and release the unused space in the flash memory block D so that new data can be written to the block. This recovery operation improves the utilization of available storage space while extending the hard disk.

[0068] The beneficial effects of the above technical solution are: through the three strategies of load balancing, sequential writing and space recovery, the wear of flash memory blocks is significantly reduced, and the write amplification phenomenon is reduced. It not only balances the data writing burden, but also optimizes the writing order and improves the storage space utilization, thereby greatly extending the service life of the solid-state drive and improving its stability and reliability. It is extremely innovative and effectively improves the overall performance of the SSD.

[0069] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A method for increasing the service life of a solid state hard disk, characterized in that: include: Step 1: Obtain historical read and write data of the solid state drive, and determine the access status of each data block of each data packet in the solid state drive; Step 2: Based on a preset monitoring tool, real-time monitoring is performed to obtain health data of each flash memory block in the solid-state drive, thereby determining the status of each flash memory block; Step 3: determining a data allocation strategy based on the access status of each data block of each data packet in the solid state drive and the status of each flash memory block, and allocating all data packets in the solid state drive based on the data allocation strategy; Step 4: temporarily store the data to be written in the cache area of ​​the solid-state drive, analyze the data to be written and obtain the analysis results, and write the data packet to be written into the corresponding flash memory block in combination with the preset writing algorithm and data allocation strategy.

2. The method for increasing the service life of a solid state hard disk according to claim 1, characterized in that: Obtain historical read and write data of the solid-state drive and determine the access status of the data in each data block of the solid-state drive, including: Obtain historical read and write log data of the solid-state hard disk from a preset solid-state hard disk controller, and obtain the read and write frequency, data block size, access time, and duration of a single access of each data block of each data packet from the historical read and write log data; The access coefficient of a data block is determined based on the read and write frequency, data block size, access time, and duration of a single access for each data block of each data packet: in, is the access coefficient of the jth data block of the i-th data packet, is the access frequency of the jth data block of the ith data packet, is the average access frequency of all data blocks of the ith data packet, is the size of the jth data block of the ith data packet, is the single access time of the jth data block of the ith data packet, is the preset importance coefficient of the jth data block of the i-th data packet, is the preset access frequency threshold, is the average access duration of all data blocks of the ith data packet, is the difference between the last access time of the jth data block of the i-th data packet and the current time, is the preset adjustment factor corresponding to the access time, is the preset write ratio of the jth data block of the i-th data packet, is the preset adjustment coefficient corresponding to the write ratio, is a preset adjustment coefficient corresponding to the importance coefficient of the data block; The access coefficient of each data block and the preset coefficient-state data table determine the access coefficient of each data block. ; The access status of each data packet is determined based on the access status of all data blocks of each data packet.

3. The method for increasing the service life of a solid state hard disk according to claim 1, characterized in that: Based on the preset monitoring tool, the health data of each flash block in the SSD is monitored in real time and obtained, and the status of each flash block is determined, including: Acquire a standard protocol of the solid state drive, and perform a first analysis on the standard protocol to acquire first health data of a flash memory block of the solid state drive; Monitoring several preset health indicators of the solid state drive based on a preset monitoring tool, thereby obtaining second health data of the flash memory block of the solid state drive; Determine the health score of each flash memory block in the solid state drive based on the first health data and the second health data: in, Score the health of the kth flash block, is the number of erase and write times of the kth flash memory block, is the maximum number of erase and write times of the kth flash memory block, is the weight corresponding to the number of erase and write times of the kth flash memory block, is the number of failed cells in the kth flash memory block, is the maximum number of failed cells in the kth flash memory block, is the weight corresponding to the number of faulty cells in the kth flash memory block, is the retention time of the data in the kth flash memory block, is the maximum retention time of data in the kth flash memory block, is the weight corresponding to the retention time of the data in the kth flash memory block; The status of each flash memory block is determined based on the health score of each flash memory block and a preset score-status data table.

4. The method for increasing the service life of a solid state hard disk according to claim 3, characterized in that: Obtaining a standard protocol of the solid state drive and performing a first analysis on the standard protocol to obtain first health data of a flash memory block of the solid state drive, including: Monitor the SSD based on preset monitoring technology; Obtain the hard disk type of the solid state drive and then determine the standard protocol of the hard disk type; Determine the corresponding command based on the standard protocol of the hard disk and query the monitoring report based on the preset monitoring technology in combination with the preset query tool; Analyze the monitoring report and obtain the first health data.

5. The method for increasing the service life of a solid state hard disk according to claim 1, characterized in that: A data allocation strategy is determined based on the access status of each data block of each data packet in the solid state drive and the status of each flash memory block, and all data packets in the solid state drive are allocated based on the data allocation strategy, including: Build a data allocation strategy based on the access status of each data packet in the SSD and the health status of each flash block; The data packet corresponding to each flash memory block is determined based on the data allocation strategy, and the write queue of the flash memory block is determined, and then the data packet is allocated to the corresponding flash memory block.

6. The method for increasing the service life of a solid state hard disk according to claim 5, characterized in that: Determining a data packet corresponding to each flash memory block based on a data allocation strategy, determining a write queue of the flash memory block, and then allocating the data packet to the corresponding flash memory block, including: Allocating a number of initial queues to each flash memory block based on a data allocation strategy, each queue including a number of data packets; Determine the priority of each data packet in each queue corresponding to each flash memory block based on the access status of each data packet in the queue; Determine the priority of each queue based on the access status of all data packets in each queue corresponding to each flash memory block; Determine the queue order of the data packets in each queue corresponding to each flash memory block based on the priority of each data packet in each queue corresponding to each flash memory block, thereby generating a first data packet queue of each queue; Determining a queue order of all queues based on the priority of each queue corresponding to each flash memory block; Determine the write queue corresponding to each flash memory block based on the queue order of all queues corresponding to each flash memory block and the first data packet queue of each queue; The allocation of all packets is performed based on the write queue of each memory block and the preset write algorithm.

7. The method for increasing the service life of a solid state hard disk according to claim 1, characterized in that: Temporarily store the data to be written in the cache area of ​​the solid-state drive, analyze the data to be written and obtain the analysis results, and write the data packet to be written into the corresponding flash memory block in combination with the preset writing algorithm and data allocation strategy, including: Temporarily storing the data to be written in a cache area in the solid state drive and preprocessing the data to obtain first data to be written; Analyzing the first data to be written, and determining a data state of the first data to be written based on the analysis result; Determine a first data allocation strategy for the first data to be written based on a data state of the first data to be written and a data allocation strategy; The first data to be written is written into the corresponding flash memory block based on the first data allocation strategy and a preset writing algorithm.

8. The method for increasing the service life of a solid state hard disk according to claim 7, characterized in that: The preset write algorithms include: load balancing write algorithm, sequential write algorithm, and space recovery algorithm.

Citation Information

Patent Citations

  • Hard disk equipment checking method and device

    CN107766184A

  • Data management method and system for solid state disk

    CN116737064A

  • Self-adaption method for read-write service in solid state disk

    CN117687570A

  • Task processing method and system for storage chip

    CN118502683A

Cited By

  • SSD health query system based on data read-write security

    CN120449188A

  • SSD health query system based on data read-write security

    CN120449188B