Fault early warning method, device and equipment for storage equipment and storage medium

By acquiring and analyzing the multi-dimensional state information of the storage device and determining its reliability evaluation information, the problem of insufficient comprehensive and accurate performance reliability evaluation of storage device in the prior art is solved, and more accurate fault warning and equipment management are achieved.

CN119645706AActive Publication Date: 2025-03-18DAPUSTOR CORP
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
CN202411784111.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-12-05
Publication Date
2025-03-18
Estimated Expiration
2044-12-05

AI Technical Summary

Technical Problem

The prior art lacks comprehensiveness and accuracy in evaluating the performance reliability of storage devices, resulting in failure to use the storage devices for their own purposes or overuse.

Method used

By obtaining the device status information of the storage device, including sequential write bandwidth, sequential read bandwidth, write amplification coefficient, bad number, total number of dies and nominal bandwidth, the reliability evaluation information of the storage device is determined based on this information, such as the actual number of reads and writes per second and the effective bandwidth, and then determining whether there is an abnormality in the storage device.

Benefits of technology

It accurately detects the actual load, throughput capabilities and possible bottlenecks of the equipment, and promptly detects equipment performance degradation, potential failures or other abnormalities, improving the comprehensiveness and accuracy of storage device failure warning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119645706A_ABST
    Figure CN119645706A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a fault early warning method for storage equipment, which is used for quickly and accurately evaluating the performance state of the storage equipment and the use reliability of the storage equipment. The method provided by the embodiment of the invention comprises the following steps: acquiring equipment state information of the storage equipment; the equipment state information at least comprises one of the following information: sequential write bandwidth SW, sequential read bandwidth SR, write amplification coefficient WA, bad Die number, total Die number and nominal bandwidth; determining reliability evaluation information of the storage device based on the device state information; the reliability evaluation information at least comprises one of the following information: actual read-write times per second IOPS and effective bandwidth; and determining whether the storage device is abnormal or not according to the reliability evaluation information. According to the embodiment of the invention, the reliability evaluation information such as the actual IOPS and / or the effective bandwidth is determined according to the state information of various devices, the actual load, the throughput capacity and possible bottlenecks of the devices are accurately detected, and performance reduction, potential faults or other abnormities of the devices are found in time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The embodiments of the present application relate to the technical field of storage devices, and in particular to a fault warning method, apparatus, device, and storage medium for storage devices. Background Art

[0002] With the rapid development of the information age, storage devices have become a vital component of information systems. The performance and reliability of storage devices directly affect the stability of the system and user experience, so it is of great significance to conduct reliability testing and life management on them, so as to identify potential failure risks in advance and avoid data loss and equipment damage.

[0003] Currently, the health status of storage devices is usually evaluated based on the number of write and erase cycles of their non-volatile storage media. At the same time, reliability testing can also be combined with machine learning algorithms. However, due to differences in the technical levels of different equipment manufacturers, the prediction results obtained by the above methods are often not accurate enough, resulting in underutilization or overuse of storage devices. Existing technologies still lack comprehensiveness and accuracy in evaluating the performance reliability of storage devices. Summary of the invention

[0004] Based on the above problems, the embodiments of the present application provide a storage device fault warning method, apparatus, device and storage medium, the purpose of which is to timely identify performance degradation and improve the comprehensiveness and accuracy of storage device fault warning.

[0005] In a first aspect, an embodiment of the present application provides a storage device failure warning method, including:

[0006] Obtain device status information of the storage device; the device status information includes at least one of the following: sequential write bandwidth (SW), sequential read bandwidth (SR), write amplification factor (WA), number of bad die, total number of die, and nominal bandwidth;

[0007] Based on the device status information, determine the reliability evaluation information of the storage device; the reliability evaluation information includes at least one of the following: actual input / output operations per second (IOPS), effective bandwidth;

[0008] It is determined whether the storage device is abnormal according to the reliability evaluation information.

[0009] In one embodiment, determining the reliability evaluation information of the storage device based on the device status information includes:

[0010] Determine actual IOPS based on the SW, the SR, and the WA;

[0011] The device status information also includes nominal IOPS, and determining whether the storage device is abnormal according to the reliability evaluation information includes:

[0012] If the actual IOPS is greater than the nominal IOPS, it is determined that there is no abnormality in the storage device;

[0013] If the actual IOPS is not greater than the nominal IOPS, it is determined that an abnormality exists in the storage device.

[0014] In one embodiment, the device status information further includes a nominal bandwidth, and determining the reliability evaluation information of the storage device based on the device status information includes:

[0015] Calculate the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0016] The determining, according to the reliability evaluation information, whether the storage device is abnormal includes:

[0017] If the effective bandwidth is greater than the nominal bandwidth, it is determined that there is no abnormality in the storage device;

[0018] If the effective bandwidth is not greater than the nominal bandwidth, it is determined that an abnormality exists in the storage device.

[0019] In one embodiment, the device status information further includes nominal IOPS and nominal bandwidth, and determining the reliability evaluation information of the storage device based on the device status information includes:

[0020] Determine actual IOPS based on the SW, the SR, and the WA;

[0021] Obtaining a first evaluation result of the storage device according to the actual IOPS and the nominal IOPS;

[0022] Determine the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0023] Obtaining a second evaluation result of the storage device according to the effective bandwidth and the nominal bandwidth;

[0024] Reliability evaluation information of the storage device is determined according to the first evaluation result and the second evaluation result.

[0025] In one embodiment, the actual IOPS is calculated using the following formula:

[0026]

[0027] Among them, the IOPS runtime Indicates actual IOPS; SW indicates sequential write bandwidth; SR indicates sequential read bandwidth; WA indicates write amplification factor;

[0028] The WA is obtained by the following formula:

[0029]

[0030] Wherein, OP represents over-provisioning; WA represents the write amplification factor; α is a constant, which represents the baseline value of write amplification;

[0031] The OP is obtained by the following formula:

[0032]

[0033] OP indicates reserved space, PhyVol indicates actual physical available capacity, and DeviceVol indicates nominal capacity.

[0034] In one embodiment, the device status information further includes non-storage bandwidth, and the calculating the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth includes:

[0035] Calculate the storage bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0036] An effective bandwidth of the storage device is determined based on the non-storage bandwidth and the storage bandwidth.

[0037] In one embodiment, the effective bandwidth is calculated by the following formula:

[0038]

[0039] Among them, BW totalDie Indicates effective bandwidth; totalDie indicates the total number of Dies; badDie indicates the number of bad Dies; BW spec Indicates the nominal bandwidth.

[0040] In a second aspect, an embodiment of the present application further provides a fault warning device for a storage device, comprising:

[0041] An acquisition unit is used to acquire device status information of a storage device; the device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, and nominal bandwidth;

[0042] A determination unit, configured to determine reliability evaluation information of the storage device based on the device status information; the reliability evaluation information includes at least one of the following: actual number of reads and writes per second (IOPS), effective bandwidth;

[0043] The determining unit is further configured to determine whether the storage device is abnormal based on the reliability evaluation information.

[0044] In a third aspect, an embodiment of the present application further provides a storage device, including:

[0045] CPU, memory, input and output interfaces;

[0046] The memory is a short-term storage memory or a persistent storage memory;

[0047] The central processing unit is configured to communicate with the memory and execute instruction operations in the memory to execute any one of the above-mentioned methods for early warning of failure of the storage device.

[0048] In a fourth aspect, an embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the fault warning method of any one of the storage devices described above is executed.

[0049] It can be seen from the above technical solutions that the embodiments of the present application have the following advantages:

[0050] The embodiment of the present application obtains the device status information of the storage device, and the device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, and nominal bandwidth; based on the device status information, the reliability evaluation information of the storage device is determined, and the reliability evaluation information includes at least one of the following: actual number of reads and writes per second IOPS, effective bandwidth; and then according to the reliability evaluation information, it is determined whether the storage device has an abnormality. The embodiment of the present application determines the reliability evaluation information such as the actual number of reads and writes per second (IOPS) and / or effective bandwidth through the above-mentioned various types of device status information, which can accurately detect the actual load, throughput capacity and possible bottlenecks of the device, timely discover device performance degradation, potential failures or other abnormalities, and improve the comprehensiveness and accuracy of fault warnings for storage devices. BRIEF DESCRIPTION OF THE DRAWINGS

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

[0052] Figure 1 A schematic diagram of a storage device failure warning method flow chart provided in an embodiment of the present application;

[0053] Figure 2 A schematic diagram of the structure of a fault warning device for a storage device provided in an embodiment of the present application;

[0054] Figure 3 A schematic diagram of the structure of a storage device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0055] The following will be combined with the drawings in the embodiments of the present application to clearly and completely describe the technical solutions in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, not all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of this application.

[0056] The various embodiments of the present application are described in further detail below in conjunction with the accompanying drawings.

[0057] The fault prediction method provided in the embodiment of the present application can be applied to the scenario of predicting whether a storage device is faulty, and the storage device can be a solid state drive (SSD), a high-speed serial computer expansion bus standard solid state drive (Peripheral Component Interconnect Express Solid State Drive, PCIe SSD) or other NAND particle-based storage devices, etc., which are not specifically limited here. For the convenience of description, the following is a schematic description using SSD as an example.

[0058] The present application embodiment provides a storage device failure warning method, such as Figure 1 As shown, the method includes steps S101-S103.

[0059] S101: Acquire device status information of a storage device.

[0060] The device status information of storage devices can usually be collected from storage devices through the system or management tools. The device status information is mainly used to monitor the operating status, health status and service life of the device. The device status information includes but is not limited to the following items: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, nominal bandwidth;

[0061] It should be understood that sequential write bandwidth refers to the amount of data that a storage device can write per second when performing sequential write operations. Sequential write bandwidth is usually used to measure the continuous data write performance of a device. A high sequential write bandwidth indicates that the device performs well in large file or long-term data write operation scenarios such as video files and large data transfers. Sequential read bandwidth refers to the amount of data that a storage device can read per second when performing sequential read operations, reflecting the speed of the device when reading large amounts of data sequentially. High sequential read bandwidth means that the device can provide better performance in high-load read scenarios such as large database queries.

[0062] The write amplification factor is the ratio of the amount of data actually written to the NAND flash memory to the amount of data requested to be written by the host, reflecting the write efficiency of the storage device. The main causes of write amplification include: (1) Garbage Collection: NAND flash memory is erased in blocks, but can only be written in pages. When some data pages fail (marked as invalid pages), the valid pages still need to be migrated to new blocks and then the old blocks are erased, which will result in additional write operations. (2) Write alignment problem: If the size of the data written by the user is not aligned with the physical size of the flash page or block (for example, the user writes 4KB, and the flash page size is 8KB), it will lead to reduced write efficiency and aggravated write amplification effect. A large write amplification factor means that the flash memory blocks of the device are frequently erased and written, which accelerates the aging of the flash memory and affects the life of the device. Therefore, a low write amplification factor is a sign of good storage device performance.

[0063] Failed Die Count refers to the number of bare die that fail to work properly in a device. A die usually contains multiple storage chips, and bad dies may occur due to hardware failure, manufacturing defects, or excessive wear. The number of bad dies directly affects the physical available storage capacity of the storage device. When there are many bad dies, the performance of the storage device may decline or even fail. Total Die Count refers to the total number of bare die contained in the storage device. Existing storage devices usually consist of multiple dies. For example, in a solid state drive (SSD) controller, its channels are used to transmit data with multiple NAND flash memory bare die. Each channel can operate multiple dies in parallel through an independent chip enable signal (CE), thereby improving the overall performance of the storage device.

[0064] Specification Bandwidth refers to the maximum bandwidth declared by the manufacturer of a storage device during the design phase based on ideal working conditions and optimal performance. Specification Bandwidth is usually used as a performance standard for a product, indicating the theoretical maximum performance of the device under normal conditions.

[0065] In order to fully understand the working performance and health of storage devices, obtaining the above-listed information (SW, SR, WA, number of bad dies, total number of dies, nominal bandwidth, etc.) can reflect the performance, reliability and potential failures of storage devices from multiple dimensions. Through this device status information, the health status or performance of the storage device can be evaluated for reliability, which helps determine whether the storage device is operating normally and provides a basis for subsequent maintenance and troubleshooting.

[0066] S102: Determine reliability evaluation information of the storage device based on the device status information.

[0067] S103: Determine whether the storage device is abnormal based on the reliability evaluation information.

[0068] Reliability evaluation information refers to the evaluation results of equipment operation reliability or performance based on equipment status information. By analyzing equipment status information, the actual operation status of the equipment can be inferred, as well as whether performance degradation, failure, etc. may occur.

[0069] In the embodiment of the present application, the reliability evaluation information includes at least the following two items:

[0070] Actual IOPS: Actual IOPS is used to measure the ability of a storage device to process input and output operations per unit time during operation. It can reflect the response speed and load capacity of the storage device during operation to a certain extent. If the actual IOPS is lower than the expected value, it may indicate that the device has a performance bottleneck or abnormality.

[0071] Effective Bandwidth: Effective bandwidth refers to the actual data transmission rate of a storage device in actual use after being affected by various factors (such as load, failure, interface limitations, etc.).

[0072] By converting device status information (such as SR, SW, number of bad dies, etc.) into reliability evaluation information (such as IOPS, effective bandwidth, etc.), we can more clearly understand the performance and performance bottlenecks of storage devices in actual use, and provide support for optimizing device configuration and load distribution. If the actual IOPS and effective bandwidth are significantly lower than expected, it can be inferred that the storage device has performance degradation or is about to fail.

[0073] The embodiment of the present application obtains the device status information of the storage device, and the device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, and nominal bandwidth; based on the device status information, the reliability evaluation information of the storage device is determined, and the reliability evaluation information includes at least one of the following: actual number of reads and writes per second IOPS, effective bandwidth; and then according to the reliability evaluation information, it is determined whether the storage device has an abnormality. The embodiment of the present application determines the reliability evaluation information such as the actual number of reads and writes per second (IOPS) and / or effective bandwidth through the above-mentioned various types of device status information, which can accurately detect the actual load, throughput capacity and possible bottlenecks of the device, timely discover device performance degradation, potential failures or other abnormalities, and improve the comprehensiveness and accuracy of fault warnings for storage devices.

[0074] This application comprehensively analyzes the reliability of storage device performance by collecting multi-dimensional device status information (such as SW, SR, number of bad dies, etc.). Compared with a single evaluation index, the embodiment of this application can more accurately reflect the actual usage status of the storage device, accurately detect the actual load, throughput capacity and possible bottlenecks of the device, improve the comprehensiveness and accuracy of the fault warning of the storage device, and timely discover the performance degradation, potential failures or other abnormalities of the device, reducing the possibility of data loss.

[0075] It should be noted that in order to more intuitively quantify the reliability of storage devices, multiple reliability evaluation information can be generated based on different device status information. By combining this information, the reliability of storage devices can be comprehensively analyzed and evaluated from different angles and evaluation methods. Several different combination methods are explained below, and the evaluation logic of each method for storage devices is not exactly the same.

[0076] Method 1: In this method, reliability evaluation information of the storage device is determined based on the device status information, including: determining the actual IOPS based on SW, SR, and WA;

[0077] The device status information also includes the nominal IOPS. Based on the reliability evaluation information, it is determined whether there is an abnormality in the storage device, including: if the actual IOPS is greater than the nominal IOPS, it is determined that there is no abnormality in the storage device; if the actual IOPS is not greater than the nominal IOPS, it is determined that there is an abnormality in the storage device.

[0078] Nominal IOPS: This is the design or theoretical performance value of the device under ideal conditions, usually provided by the manufacturer to describe the maximum performance of the device.

[0079] The existing IOPS calculation formula is usually IOPS = (number of read operations + number of write operations) / time interval. It can be seen that the existing methods of calculating IOPS and evaluating storage devices through IOPS assume that all operations are performed with the same efficiency, and only evaluate storage devices through the number of read and write operations, without considering the performance differences of different types of operations, and ignoring the specific factors that affect the internal storage device (such as write amplification, bad blocks, etc.). However, in actual storage scenarios, storage devices often face a variety of complex operation combinations (such as random writes, high-frequency IO or mixed loads). Therefore, relying solely on the traditional IOPS formula or simply focusing on the number of read and write operations may not accurately reflect the true performance of the storage device, which in turn leads to inaccurate performance evaluation and failure to promptly detect potential failures or performance degradation.

[0080] To improve the accuracy of the evaluation, the embodiment of the present application combines factors such as the write amplification factor, the reserved space, and the number of bad blocks, and in method 1, calculates the actual IOPS using the following formula:

[0081]

[0082] Among them, IOPS runtime Represents actual IOPS; SW represents sequential write bandwidth; SR represents sequential read bandwidth; WA represents write amplification factor. It should be understood that different block sizes will have different effects on IOPS performance. For example, a small data block size of 4KB will have different performance compared to a large data block size (such as 64KB or 128KB). The common block size of many storage devices (especially SSDs) is usually 4KB, and many file systems (such as NTFS, FAT32) and applications usually perform read and write operations at the 4KB block level. Therefore, in an embodiment of the present application, IOPS generally refers to the number of input and output operations per second under 4KB random write operations when the storage device achieves long-term stable operation. Therefore, the IOPS mentioned in the technical solution of the embodiment of the present application can also be expressed as IOPS (4k.ss) , where SS refers to steady state.

[0083] The write amplification factor WA is obtained by the following formula:

[0084]

[0085] Among them, OP represents reserved space, that is, the proportion of unallocated storage space reserved by the device to the total storage space. OP is usually expressed in decimal form. For example, if the total storage space of the device is 1TB, 10% (100GB) of which is used for reserved space, then OP = 0.1. For the constant α, it can be understood that even if there is no obvious reserved space in a storage device, or even if the reserved space is very large, the storage device still needs to perform management tasks (such as garbage collection and wear leveling), so there will still be a certain amount of write amplification. Therefore, the constant α can be understood as the baseline value of write amplification in flash memory. In practical applications, the constant α can be taken as 0.5, or it can be specifically set according to actual conditions (such as the specifications of the storage device), and the embodiments of the present application are not limited here.

[0086] The reserved space OP can be obtained by the following formula:

[0087]

[0088] Among them, PhyVol is the physical available capacity. PhyVol = nominal capacity size (DeviceVol) + reserved space size. The reserved space size is determined by the manufacturer's policy. Usually, the device manufacturer will add an additional 5%-30% of the physical capacity for OP.

[0089] Please refer to the above formula. It can be understood that when new bad blocks are added, the physical available capacity of the storage device will decrease, resulting in a decrease in OP, which in turn causes an increase in WA. In addition, the increase in bad blocks also means that the device needs additional resources to manage these bad blocks, which further aggravates the impact of write amplification. The increase in the number of bad blocks, the reduction in reserved space, and the increase in write amplification will all lead to a decrease in the performance of the device when performing 4K steady-state random writes, ultimately affecting the 4K random write performance of the storage device in a steady state. Therefore, in actual applications, the device status information obtained can also include the number of bad blocks (BadBlock Count) so that the actual available physical capacity of the device can be accurately evaluated and the actual IOPS value can be further predicted.

[0090] In this embodiment, if the actual IOPS is greater than the nominal IOPS, it means that the actual performance of the device has exceeded the manufacturer's expectations, indicating that the storage device performance is normal. If the actual IOPS is less than the nominal IOPS, it means that the storage device has not achieved the expected performance, there may be some problems, and it is necessary to determine whether there is an abnormality.

[0091] Method 2: In this method, the device status information also includes the nominal bandwidth. Based on the device status information, the reliability evaluation information of the storage device is determined, including: calculating the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0092] Determine whether the storage device is abnormal based on the reliability evaluation information, including: if the effective bandwidth is greater than the nominal bandwidth, determine that the storage device is not abnormal; if the effective bandwidth is not greater than the nominal bandwidth, determine that the storage device is abnormal.

[0093] In a feasible embodiment, the effective bandwidth is calculated by the following formula:

[0094]

[0095] Among them, BW totalDie Indicates the bandwidth provided by the currently available Dies in the system; totalDie indicates the total number of Dies; badDie indicates the number of bad Dies; BW spec It should be understood that in the embodiment of the present application, BW totalDie Can be used as effective bandwidth. totalDie From the formula, it can be seen that as the number of bad dies increases, the effective bandwidth of the storage device will gradually decrease, because bad dies reduce the available storage units, thereby reducing the storage bandwidth of the device. In addition, the total die bandwidth BW in the embodiment of the present application is totalDie and nominal bandwidth BW spec It can refer to read and write bandwidth or write bandwidth (usually read bandwidth is higher and is generally not the performance bottleneck of NAND).

[0096] It should be pointed out that data transmission between storage devices and hosts is usually achieved through interfaces. If the storage device (such as SSD) itself has a high read and write bandwidth, but the bandwidth of the interface cannot meet it, the speed of data transmission will be limited. For example, the bandwidth of the SATA interface is generally around 6Gbps (about 750MB / s), while the NVMe interface (especially PCIe3.0 or 4.0) can provide higher bandwidth, but if the system uses an older interface, it may be limited. Therefore, in addition to considering the Die state inside the device, the interface bandwidth limitation of the storage device should also be considered.

[0097] Optionally, the device status information also includes non-storage bandwidth, and the effective bandwidth is calculated according to the number of bad dies, the total number of dies, and the nominal bandwidth, including: calculating the storage bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth; and determining the effective bandwidth of the storage device based on the non-storage bandwidth and the storage bandwidth.

[0098] In the embodiment of the present application, non-storage bandwidth refers to the bandwidth consumption or impact of the storage device outside of storage, such as the bandwidth consumption of other resources such as interface bandwidth, network bandwidth, CPU performance, memory bandwidth, and RAID controller performance.

[0099] Based on the non-storage bandwidth and storage bandwidth, the effective bandwidth of the storage device can be determined by referring to the formula:

[0100] BW eff =MIN[Bw other , B.W. totalDie ]

[0101] Among them, BW eff Indicates effective bandwidth; BW other Indicates non-storage bandwidth; BW totalDie Indicates the bandwidth provided by the currently available Die in the system, that is, the storage bandwidth; MIN[] means taking the minimum value.

[0102] The final effective bandwidth depends on the smaller of the storage bandwidth and non-storage bandwidth, because the performance bottleneck of the device is usually determined by the smallest bandwidth-limiting factor. For example, if the storage bandwidth is low but the non-storage bandwidth is high, the overall performance of the device will be limited by the storage bandwidth; conversely, if the non-storage bandwidth is low, the device performance will be limited by the non-storage bandwidth.

[0103] If the effective bandwidth is greater than the nominal bandwidth, it means that the device performance is good and no abnormality has occurred. If the effective bandwidth is less than or equal to the nominal bandwidth, it means that the device is abnormal, which may be caused by too many bad dies, insufficient storage bandwidth, or excessive non-storage bandwidth usage.

[0104] It is important to understand that when new bad dies are added, the total number of available dies will decrease, and if NAND becomes a performance bottleneck, the memory bandwidth will also decrease accordingly. Therefore, the number of bad dies should meet the following requirements:

[0105] failDieCnt≤totalDie*(1-95%)

[0106] Wherein, failDieCnt indicates the number of bad blocks, and totalDie indicates the total number of Dies. The 95% requirement is usually based on engineering tolerance and reliability standards, indicating that the device can still maintain a high performance level after a certain number of failed units (such as bad Dies) appear. In practical applications, 93%, 90%, etc. can also be taken, and the embodiments of the present application do not limit this. By setting an acceptable bandwidth fluctuation range, it can be ensured that most devices will not experience a drastic performance drop due to an increase in the number of bad Dies during long-term use.

[0107] Similarly, when a new bad die is added, the total number of available dies decreases. If NAND becomes a performance bottleneck, the bandwidth will also decrease (totalDie↓, BW↓). Therefore, in a feasible embodiment, it is possible to ensure that the bandwidth fluctuation remains above 95% of the product's nominal bandwidth (in actual applications, it can also be 93%, 90%, etc., which is not limited in this embodiment of the present application), that is:

[0108] BW eff ≥BW spec *(95%±)

[0109] For example, assuming that the storage device originally has 32 dies and a nominal bandwidth of 6 GB, if a maximum of 5% bad dies are allowed (i.e., failDieCnt≤totalDie*(1-95%)), then the number of bad dies cannot exceed 1 (failDieCnt≤32*(1-95%)=1.6, rounded down to 1).

[0110] If two dies fail, the total number of available dies on the device is reduced to 30, and the bandwidth of the memory will be reduced synchronously. According to the bandwidth reduction ratio, the new effective bandwidth = 6GB × (30 / 32) = 5.625GB, and the ratio of 5.625GB to the nominal bandwidth of 6GB is: 5.625GB / 6GB = 0.9375. Since 0.9375 (i.e. 93.75%) is less than 95%, it means that the effective bandwidth is lower than 95% of the nominal bandwidth. Therefore, it can be considered that the storage device has a significant performance degradation due to the excessive number of bad dies, which exceeds the allowable performance fluctuation range, and the storage device may be abnormal.

[0111] Method 2 not only considers the storage bandwidth of the storage device, but also considers the non-storage bandwidth affected by the control, transmission, interface and other parts of the device, so as to more comprehensively evaluate the performance of the device, avoid ignoring the bandwidth bottleneck caused by the influence of non-storage tasks, and effectively prevent performance degradation caused by controller bottlenecks, insufficient interface bandwidth and other problems, and provide more comprehensive performance monitoring capabilities. In addition, this application also considers the number of bad dies. The increase in the number of bad dies will directly affect the storage bandwidth, so that it can timely reflect the trend of bandwidth decline and discover potential equipment failures in the early stage.

[0112] Method 3: In this method, the device status information also includes nominal IOPS and nominal bandwidth. The reliability evaluation information of the storage device is determined based on the device status information, including: determining the actual IOPS based on SW, SR, and WA; obtaining a first evaluation result of the storage device based on the actual IOPS and the nominal IOPS; determining the effective bandwidth based on the number of bad dies, the total number of dies, and the nominal bandwidth; obtaining a second evaluation result of the storage device based on the effective bandwidth and the nominal bandwidth; and determining the reliability evaluation information of the storage device based on the first evaluation result and the second evaluation result.

[0113] In method three, the specific method for determining the actual IOPS may refer to the relevant description in method one; the specific method for determining the effective bandwidth may refer to the relevant description in method two, and the embodiments of the present application will not be repeated here.

[0114] In the embodiment of the present application, if the memory spec is rated at 4k steady-state IOPS (IOPS spec )<Actually calculated IOPS (4k.ss) *95%, the storage device is considered normal.

[0115] If the storage spec specifies 4k steady-state IOPS (IOPS spec )≥actually calculated IOPS (4k.ss) *95%, further first evaluation results:

[0116]

[0117] Among them, Result1 represents the first evaluation result; weight1 is the weight of the first evaluation result.

[0118] If the nominal bandwidth BW spec *95%>BW after the number of dies is reduced totalDie , the storage device is considered normal;

[0119] If the nominal bandwidth BW spec *95%<BW after the number of dies is reduced totalDie , then calculate the second evaluation result. It should be noted that in the above judgment, if non-storage bandwidth is considered, then BW totalDie =MAX[BW other , B.W. totalDie ].

[0120]

[0121] Among them, Result2 represents the second evaluation result; weight2 is the weight of the second evaluation result.

[0122] The weight1 and weight2 in the above final results Result1 and Result2 must satisfy:

[0123] weight1+weight2=1

[0124] In addition, in the process of determining the first evaluation result and the second evaluation result, the use of the coefficient of 95% is usually to provide a buffer for the performance evaluation and fault warning of the storage device to ensure that in most cases, the actual performance will not be lower than an acceptable threshold of the nominal performance. The coefficient of 95% can be regarded as a safety margin, which is used to take into account various uncertainties and performance fluctuations that may be encountered in actual use. Of course, in a specific use environment, such a high safety margin may not be needed, because under this condition, the environmental conditions of the storage device are stable and the performance fluctuations are small, so there is no need to add an additional coefficient of 95% to provide fault warning for the storage device. Therefore, in actual applications, whether to use the coefficient of 95% and how to set this coefficient (for example, 93%, 90%, etc.) can be comprehensively considered according to the specific application scenario, cost-benefit analysis, technical conditions and user needs, and should not constitute any limitation on the implementation process of the embodiment of the present application.

[0125] Determining reliability evaluation information of the storage device according to the first evaluation result and the second evaluation result, specifically including:

[0126] Result3=Result1+Result2

[0127] Among them, Result3 represents reliability evaluation information.

[0128] If Result3 is in the Level_0 range (e.g., greater than or equal to 1), it is determined that the storage device is normal;

[0129] If Result3 is in the Level_1 interval (eg, less than 1), it is determined that the performance of the storage device is abnormal.

[0130] Method 3 not only relies on the traditional IOPS indicator to evaluate storage devices, but also introduces multiple indicators such as nominal bandwidth and effective bandwidth, taking into account the performance of storage devices in an all-round way. By combining the first evaluation result with the second evaluation result, the working status of the device can be evaluated from multiple angles, avoiding misjudgment that may be caused by a single angle, and more accurately identifying the performance anomalies of storage devices, so that timely measures can be taken for maintenance or replacement, improving the stability and reliability of storage devices.

[0131] In order to implement the storage device fault warning method of the embodiment of the present application, the embodiment of the present application also provides a storage device fault warning device, such as Figure 2 As shown, the device comprises:

[0132] The acquisition unit 201 is used to acquire device status information of the storage device; the device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, and nominal bandwidth;

[0133] The determination unit 202 is configured to determine the reliability evaluation information of the storage device based on the device status information; the reliability evaluation information includes at least one of the following: actual number of reads and writes per second IOPS, effective bandwidth;

[0134] The determining unit 203 is further configured to determine whether the storage device is abnormal according to the reliability evaluation information.

[0135] In one embodiment, the determining unit 203 is further configured to determine the actual IOPS based on the SW, the SR, and the WA;

[0136] The device status information also includes nominal IOPS, and the determining unit 203 is further configured to determine that there is no abnormality in the storage device if the actual IOPS is greater than the nominal IOPS;

[0137] The determining unit 203 is further configured to determine that an abnormality exists in the storage device if the actual IOPS is not greater than the nominal IOPS.

[0138] In one embodiment, the device further includes a processing unit; the processing unit is used to calculate the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0139] The determining unit 203 is further configured to determine that there is no abnormality in the storage device if the effective bandwidth is greater than the nominal bandwidth;

[0140] The determining unit 203 is further configured to determine that an abnormality exists in the storage device if the effective bandwidth is not greater than the nominal bandwidth.

[0141] In one embodiment, the determining unit 203 is further configured to determine the actual IOPS based on the SW, the SR, and the WA;

[0142] The processing unit is further configured to obtain a first evaluation result of the storage device according to the actual IOPS and the nominal IOPS;

[0143] The determining unit 203 is further configured to determine the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0144] The processing unit is further configured to obtain a second evaluation result of the storage device according to the effective bandwidth and the nominal bandwidth;

[0145] The determining unit 203 is further configured to determine reliability evaluation information of the storage device according to the first evaluation result and the second evaluation result.

[0146] In one embodiment, the actual IOPS is calculated using the following formula:

[0147]

[0148] Among them, the IOPS runtime Indicates actual IOPS; SW indicates sequential write bandwidth; SR indicates sequential read bandwidth; WA indicates write amplification factor;

[0149] The WA is obtained by the following formula:

[0150]

[0151] Where OP represents the over-provisioning ratio; WA represents the write amplification factor; α is a constant, which represents the baseline value of write amplification;

[0152] The OP is obtained by the following formula:

[0153]

[0154] OP indicates reserved space, PhyVol indicates actual physical available capacity, and DeviceVol indicates nominal capacity.

[0155] In one embodiment, the device status information also includes non-storage bandwidth, and the processing unit is further used to calculate the storage bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth;

[0156] The determining unit 203 is further configured to determine an effective bandwidth of the storage device based on the non-storage bandwidth and the storage bandwidth.

[0157] In one embodiment, the effective bandwidth is calculated by the following formula:

[0158]

[0159] Among them, BW totalDie Indicates effective bandwidth; totalDie indicates the total number of Dies; badDie indicates the number of bad Dies; BW spec Indicates the nominal bandwidth.

[0160] In actual application, the processing unit can be implemented by a processor in the storage device in combination with a communication interface, and the acquisition unit 201 and the determination unit 202 can be implemented by a communication interface in a fault warning device of the storage device.

[0161] It should be noted that: the above-mentioned embodiment provides a storage device fault warning device. When performing storage device fault warning, only the division of the above-mentioned program modules is used as an example. In actual applications, the above-mentioned processing can be assigned to different program modules as needed, that is, the internal structure of the device is divided into different program modules to complete all or part of the processing described above. In addition, the storage device fault warning device provided in the above-mentioned embodiment and the storage device fault warning method embodiment belong to the same concept. The specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0162] Based on the hardware implementation of the above program module, and in order to implement a storage device failure warning method provided in an embodiment of the present application, an embodiment of the present application further provides a storage device, such as Figure 3 As shown, the storage device 300 includes:

[0163] CPU 301, memory 302 and input / output interface 303;

[0164] The memory 302 is a temporary storage memory or a permanent storage memory;

[0165] The central processor 301 is configured to communicate with the memory 302 and execute instruction operations in the memory 302 to perform any one of the above-mentioned storage device failure warning methods.

[0166] Of course, in actual application, the various components in the storage device 300 are coupled together through the bus system 304. It can be understood that the bus system 304 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 304 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Figure 3 Various buses are labeled as bus system 304 .

[0167] The memory 302 in the embodiment of the present application is used to store various types of data to support the operation of the storage device 300. Examples of such data include: any computer program used to operate on the storage device 300.

[0168] It is understandable that when the processor in the storage device described above executes the computer program, it can also implement the functions of the various units in the above-mentioned corresponding device embodiments, which will not be repeated here. Exemplarily, the computer program can be divided into one or more modules / units, one or more modules / units are stored in the memory, and executed by the processor to complete the various embodiments of the present application. One or more modules / units can be a series of computer program instruction segments that can perform specific functions, and the instruction segments are used to describe the execution process of the computer program in the storage device. For example, the computer program can be divided into the various units in the above-mentioned storage device, and each unit can implement the specific functions described in the above-mentioned corresponding storage device.

[0169] Storage devices may include but are not limited to processors and memories. Those skilled in the art will appreciate that processors and memories are merely examples of storage devices and do not constitute a limitation on storage devices. Storage devices may include more or fewer components, or a combination of certain components, or different components. For example, storage devices may also include an error correction module (ECC), an interface controller (such as SATA, NVMe, PCIe interface), etc.

[0170] The processor may be a central processing unit (CPU), other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc. The processor is the control center of the storage device, and uses various interfaces and lines to connect various parts of the entire storage device.

[0171] The memory can be used to store computer programs and / or modules. The processor implements various functions of the storage device by running or executing the computer programs and / or modules stored in the memory and calling the data stored in the memory. The memory can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function, etc.; the data storage area can store data created according to the use of the terminal, etc. In addition, the memory can include a high-speed random access memory and can also include a non-volatile memory, such as a small-capacity non-volatile storage (such as NOR flash memory (NOR Flash)).

[0172] An embodiment of the present application further provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, any one of the above-mentioned storage device failure warning methods is executed.

[0173] An embodiment of the present application also provides a computer program product having a computer program / instruction stored thereon. When the computer program / instruction is executed by a processor, it is used to implement the fault warning method for the storage device described in the first aspect of the embodiment of the present application or any specific implementation method of the first aspect.

[0174] Those skilled in the art can clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0175] In the several embodiments provided in the present application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be an indirect coupling or communication connection through some interfaces, devices or units, which can be electrical, mechanical or other forms.

[0176] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0177] In addition, each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit. The above-mentioned integrated unit may be implemented in the form of hardware or in the form of software functional units.

[0178] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application is essentially or the part that contributes to the prior art or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including a number of instructions for a storage device to perform all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), disk or optical disk and other media that can store program code.

Claims

1. A storage device failure warning method, characterized in that: include: Get device status information of storage devices; The device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad die, total number of die, and nominal bandwidth; Based on the device status information, reliability evaluation information of the storage device is determined; the reliability evaluation information includes at least one of the following: actual read and write times per second (IOPS), effective bandwidth; It is determined whether the storage device is abnormal according to the reliability evaluation information.

2. The storage device failure warning method according to claim 1, characterized in that: The step of determining the reliability evaluation information of the storage device based on the device status information includes: Determine actual IOPS based on the SW, the SR, and the WA; The device status information also includes nominal IOPS, and determining whether the storage device is abnormal according to the reliability evaluation information includes: If the actual IOPS is greater than the nominal IOPS, it is determined that there is no abnormality in the storage device; If the actual IOPS is not greater than the nominal IOPS, it is determined that an abnormality exists in the storage device.

3. The storage device failure warning method according to claim 1, characterized in that: The device status information further includes a nominal bandwidth, and determining the reliability evaluation information of the storage device based on the device status information includes: Calculate the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth; The determining, according to the reliability evaluation information, whether the storage device is abnormal includes: If the effective bandwidth is greater than the nominal bandwidth, it is determined that there is no abnormality in the storage device; If the effective bandwidth is not greater than the nominal bandwidth, it is determined that an abnormality exists in the storage device.

4. The storage device failure warning method according to claim 1, characterized in that: The device status information further includes nominal IOPS and nominal bandwidth. The determining the reliability evaluation information of the storage device based on the device status information includes: Determine actual IOPS based on the SW, the SR, and the WA; Obtaining a first evaluation result of the storage device according to the actual IOPS and the nominal IOPS; Determine the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth; Obtaining a second evaluation result of the storage device according to the effective bandwidth and the nominal bandwidth; Reliability evaluation information of the storage device is determined according to the first evaluation result and the second evaluation result.

5. The storage device failure warning method according to any one of claims 2 and 4, characterized in that: The actual IOPS is calculated using the following formula: Among them, the IOPS runtime Indicates actual IOPS; SW indicates sequential write bandwidth; SR indicates sequential read bandwidth; WA indicates write amplification factor; The WA is obtained by the following formula: Where OP represents the reserved space; WA represents the write amplification factor; α is a constant, which represents the baseline value of write amplification; The OP is obtained by the following formula: OP indicates reserved space, PhyVol indicates actual physical available capacity, and DeviceVol indicates nominal capacity.

6. The storage device failure warning method according to any one of claims 3 to 4, characterized in that: The device status information also includes non-storage bandwidth, and the calculating the effective bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth includes: Calculate the storage bandwidth according to the number of bad dies, the total number of dies, and the nominal bandwidth; An effective bandwidth of the storage device is determined based on the non-storage bandwidth and the storage bandwidth.

7. The storage device failure warning method according to any one of claims 3 to 4, characterized in that: The effective bandwidth is calculated by the following formula: Among them, BW totalDie Indicates effective bandwidth; totalDie indicates the total number of Dies; badDie indicates the number of bad Dies; BW spec Indicates the nominal bandwidth.

8. A storage device fault warning device, characterized in that: include: An acquisition unit, used to acquire device status information of a storage device; The device status information includes at least one of the following: sequential write bandwidth SW, sequential read bandwidth SR, write amplification factor WA, number of bad dies, total number of dies, and nominal bandwidth; A determination unit, configured to determine reliability evaluation information of the storage device based on the device status information; the reliability evaluation information includes at least one of the following: actual number of reads and writes per second (IOPS), effective bandwidth; The determining unit is further configured to determine whether the storage device is abnormal based on the reliability evaluation information.

9. A storage device, characterized in that: include: CPU, memory and input / output interface; The memory is a short-term storage memory or a persistent storage memory; The central processing unit is configured to communicate with the memory and execute instruction operations in the memory to execute the failure warning method for the storage device according to any one of claims 1 to 7.

10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the failure warning method for a storage device according to any one of claims 1 to 7 is executed.

Citation Information

Patent Citations

  • A method and apparatus for monitoring and managing a compute readable storage medium

    CN109086009A

  • Information equipment operation state evaluation method, system, equipment and medium

    CN114742349A

  • Hard disk fault prediction method, system, equipment and medium

    CN117149473A

  • SSD (Solid State Disk) back-end bandwidth and CPU (Central Processing Unit) computing power steady-state random write performance evaluation method

    CN117332731A

  • Server fault locating method and apparatus, electronic device, and storage medium

    US20240296101A1