Data management, reduction, and sampling methods for storage device failures

A window-based weighted data sampling scheme optimizes SSD failure prediction models by selecting recent and anomalous data for retraining, addressing inefficiencies in existing models and enhancing prediction accuracy.

JP7797113B2Active Publication Date: 2026-01-13SAMSUNG ELECTRONICS CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
JP2021027901
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2020-05-11
Filing Date
2021-02-24
Publication Date
2026-01-13
Estimated Expiration
2041-02-24

AI Technical Summary

Technical Problem

Existing storage device failure prediction models in data centers face inefficiencies due to static training, dynamic changes in SSD characteristics, and the need for frequent retraining with large datasets, which can be resource-intensive and impact accuracy.

Method used

Implement a window-based weighted data sampling scheme to select a smaller amount of data based on recency, identify and generate additional anomalous data points, and offload processing to nearby storage devices, optimizing the dataset for efficient retraining of failure prediction models.

Benefits of technology

This approach reduces processing requirements, retraining time, and costs while improving the accuracy and frequency of SSD failure predictions by focusing on recent and anomalous data.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007797113000001
    Figure 0007797113000001
  • Figure 0007797113000002
    Figure 0007797113000002
  • Figure 0007797113000003
    Figure 0007797113000003
Patent Text Reader

Abstract

To provide data management, reduction, and sampling schemes for a storage device failure.SOLUTION: A method for training a machine learning model includes the steps of: segmenting a dataset of a database into one or more datasets on the basis of time period windows by a processor; allocating one or more weights to the one or more datasets on the basis of the time period windows of the one or more datasets by the processor; generating a training dataset from the one or more datasets on the basis of the one or more weights by the processor; and training the machine learning model using the training dataset by the processor.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] One or more aspects of embodiments according to the present disclosure relate to systems and methods for data management, and more particularly, to systems and methods for data management, reduction, and sampling schemes for storage device failures. [Background technology]

[0002] Data center systems may use a relatively large number of storage devices, such as solid state drives (SSDs), to store and retrieve data. Over time, data center system components need to be monitored for performance and functionality, and periodically, SSDs may be replaced if storage devices fail or are predicted to fail, ensuring that the data center system can continue to operate with minimal data loss or service interruption.

[0003] The information disclosed in this Background section is intended solely to aid in understanding the background of the disclosure and may include information that does not constitute prior art. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] U.S. Patent No. 8,516,343 [Patent Document 2] U.S. Patent No. 8,887,027 [Patent Document 3] U.S. Patent No. 8,892,478 [Patent Document 4] U.S. Patent No. 9,189,309 [Patent Document 5] US Patent Application Publication No. 2008 / 0250265 [Patent Document 6] US Patent Application Publication No. 2014 / 0181585 [Patent Document 7] International Publication No. 2018 / 092924 Summary of the Invention [Problem to be solved by the invention]

[0005] The present invention has been made in view of the above-mentioned conventional techniques, and an object of the present invention is to provide a method for data management, reduction and sampling in response to a failure in a storage device. [Means for solving the problem]

[0006] Aspects of embodiments of the present disclosure relate to systems and methods for data management, reduction, and sampling schemes for storage device failures.

[0007] According to some example embodiments of the present disclosure, a method for training a machine learning model includes: a processor dividing a database dataset into one or more datasets based on a time window; the processor assigning one or more weights to the one or more datasets according to the time window of the one or more datasets; the processor generating a training dataset from the one or more datasets based on the one or more weights; and the processor training the machine learning model using the training dataset.

[0008] According to some example embodiments, the machine learning model may be implemented on a solid-state drive. Includes a failure prediction model for SSDs.

[0009] According to some example embodiments, a most recent dataset from the one or more datasets is assigned a first weight and a least recent dataset from the one or more datasets is assigned a second weight, the first weight being greater than the second weight.

[0010] According to some example embodiments, the one or more weights decrease by a set amount from the first weight to the second weight.

[0011] According to some example embodiments, the method further includes the steps of: the processor identifying anomalous data in the dataset; the processor obtaining the anomalous data in the dataset; and the processor adding the anomalous data to the training dataset.

[0012] According to some example embodiments, the abnormality data includes SSD failure data.

[0013] According to some example embodiments, the anomalous data is identified by a rule-based method.

[0014] According to some example embodiments, the anomalous data is identified by a cluster-based method.

[0015] According to some example embodiments, the method further comprises the processor generating anomalous data; and the processor adding the generated anomalous data to the training data set.

[0016] According to some example embodiments of the present disclosure, a data system includes a database, a processor coupled to the database, and a memory coupled to the processor, the memory storing instructions that, when executed by the processor, cause the processor to: divide a dataset of the database into one or more datasets based on a time window, assign one or more weights to the one or more datasets according to the time window of the one or more datasets, generate a training dataset from the one or more datasets based on the one or more weights, and train a machine learning model using the training dataset.

[0017] According to some example embodiments, the machine learning model may be implemented on a solid-state drive. Includes a failure prediction model for SSDs.

[0018] According to some example embodiments, a most recent dataset from the one or more datasets is assigned a first weight and a least recent dataset from the one or more datasets is assigned a second weight, the first weight being greater than the second weight.

[0019] According to some example embodiments, the one or more weights decrease by a set amount from the first weight to the second weight.

[0020] According to some example embodiments, the processor identifies anomalous data in the dataset, obtains the anomalous data in the dataset, and further adds the anomalous data to the training dataset.

[0021] According to some example embodiments, the abnormality data includes SSD failure data.

[0022] According to some example embodiments, the anomalous data is identified by a rule-based method.

[0023] According to some example embodiments, the anomalous data is identified by a cluster-based method.

[0024] According to some example embodiments, the processor generates anomalous data and further adds the generated anomalous data to the training data set.

[0025] According to some example embodiments of the present disclosure, a method for training a machine learning model includes: a processor identifying first anomalous data in a dataset of a database; the processor generating second anomalous data; the processor adding the generated second anomalous data to the dataset; the processor identifying a training dataset from the dataset; the processor obtaining the training dataset from the dataset; and the processor training the machine learning model using the training dataset.

[0026] According to some example embodiments, the machine learning model may be implemented on a solid-state drive. Includes a failure prediction model for SSDs. [Effects of the Invention]

[0027] According to some embodiments of the present disclosure, the datasets used to train a machine learning model to predict solid-state drive failures are efficiently managed, and the datasets used to retrain the machine learning model can be reduced without impacting the model's performance. [Brief explanation of the drawings]

[0028] [Figure 1]1 illustrates an overview of a data center system in accordance with an example embodiment of the present disclosure. [Figure 2] 1 illustrates a data center system that can be used to improve a dataset used to train a storage device failure prediction model, according to an example embodiment of the present disclosure. [Figure 3] 10 illustrates a diagram illustrating example operations for collecting a data set for training a failure prediction model for a storage device using a window-based data sampling approach in accordance with an example embodiment of the present disclosure. [Figure 4] In accordance with an example embodiment of the present disclosure, an overview of an example technique for classifying anomalous data is provided. [Figure 5] 10 depicts a flowchart illustrating example operations for training a failure prediction model for a storage device using a modified dataset, in accordance with an example embodiment of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0029] Accurate prediction of storage equipment (e.g., solid state drive (SSD)) failures is important to data center managers because it allows them to operate more efficiently through preventative planning and replacement before a failure actually occurs. Machine learning models can be used to predict whether an SSD will fail in the future (e.g., a storage equipment failure prediction model). However, one of the challenges in developing a machine learning model for predicting SSD failures can include integrating information collected from the SSD into the predictive model to achieve greater accuracy in prediction. Relying on learning static models, including trained models, and then deploying these models in data centers to predict failures can lead to inefficient equipment failure prediction.

[0030] For example, as an SSD (and its subcomponents) age, the performance characteristics of the SSD can change over time. For example, as an SSD ages and performs more read and write operations, the likelihood of individual blocks within the SSD becoming faulty increases. Once a given failure prediction model is trained based on the dataset available at the time of training, future changes in the characteristics of the system's components may not be integrated into the model, which can result in reduced efficiency. For example, over time, firmware for individual drives may be updated, causing other devices to behave differently from each other. Therefore, retraining a failure prediction model can be useful to capture such changes in operation and the corresponding impact on the lifespan of the SSD.

[0031] Additionally, as additional devices (whether using the same or different attribute sets) are integrated into the system over time, it may be useful to include the devices' corresponding log information in the training data set.

[0032] Additionally, SSDs may have a more robust lifespan and functionality, and therefore failure prediction models may benefit from updates to the training dataset as such changes in the characteristics of more technologically advanced components can be integrated into data center systems.

[0033] Furthermore, the workloads imposed on SSDs in a data center system can change over time, which can affect, for example, the degradation rate of individual SSDs in the system, and therefore retraining the failure prediction model can be beneficial.

[0034] Considering the exemplary inefficiencies described above associated with single-time trained models, aspects of some example embodiments disclosed herein can capture workload and device dynamics and therefore provide better storage device failure prediction. However, there can be at least two challenges when using online re-training: 1) how often re-training should occur; and 2) the relatively large amount of data used for (re-)training. Because the amount of data collected from SSDs in a data center can grow over time, re-training a model every or most of the time using all or most of the historically generated data can be inefficient due to the amount of time available for re-training and / or data storage requirements.

[0035] Embodiments of the present disclosure enable a system to efficiently manage the amount of data used to train a failure prediction model for a storage device, while providing a relatively high degree of accuracy in predicting SSD failures.

[0036] According to various embodiments, the present disclosure is directed to methods and systems for optimizing a dataset used to retrain a storage device failure prediction model. A storage device failure prediction model is a machine learning model that can be used to predict whether an SSD will fail in the future. However, training a storage device failure prediction model can use a relatively large amount of data and can involve frequent retraining, for example, due to dynamically changing parameters. In some embodiments, various methods can be used to improve the dataset used to train the storage device failure prediction model. In other embodiments, the amount of training data can be reduced by using a window-based weighted data sampling scheme to select a smaller amount of data depending on the recency of the data. In some embodiments, the data that can be used to train a storage device failure prediction model can include examples such as storage device failures, anomalies, and outliers (e.g., related data points from related datasets). In some embodiments, anomalies and outliers can be identified using anomaly detection algorithms, rule-based methods, cluster-based methods, combinations thereof, and the like. In some embodiments, a dataset may be imbalanced because it may aggregate only a small percentage of relevant data points. In some examples, about 0.01% to about 0.02% of the dataset may contain relevant data points. An imbalanced dataset may be generated by generating synthetic instances (instances) associated with the relevant data points using rule-based or instance-based methods. This can be improved by creating new instances. In some embodiments, related data points can be identified and indexed for efficient retrieval. In some embodiments, data processing and preparation can be performed in close proximity to the storage device, such as an adjacently coupled SSD and / or an SSD with an embedded processor.

[0037] FIG. 1 illustrates an overview of a data center system according to an example embodiment of the present disclosure.

[0038] 1, a data center system 100 may include a database 110 and a machine learning model 120. Data in the database 110 may be used to train the machine learning model 120. The accuracy and reliability of the machine learning model 120 may depend on the quality of the data in the database 110. A higher quality data set may result in a more reliable and accurate machine learning model 120. Additionally, training a machine learning model may use a relatively large amount of data and relatively large amounts of processing power.

[0039] In some embodiments, training of the machine learning model and processing of the training data may be performed by a central processing unit (a In other embodiments, the machine learning model training and data processing can be offloaded to a nearby storage device (e.g., a storage device within a predetermined physical distance or a storage device that shares virtual resources or classifications with a given storage device (or the like)), such as a nearby SSD or a nearby SSD where an embedded processor resides.

[0040] In some embodiments, machine learning model 120 can be used to predict whether a storage device will fail within a predetermined time window (e.g., a storage device failure prediction model). According to this embodiment, relevant data for training the storage device failure prediction model can include unusual data points (e.g., anomalies). Anomalies can include SSD failure data (e.g., previous SSD failure instances) and other data with a relatively low probability of occurrence.

[0041] However, a storage device's failure prediction model may be subject to frequent retraining due to dynamically changing parameters. In some embodiments, a storage device's failure prediction model may need to be retrained periodically, for example, once a week or once a month. Some non-limiting examples of nonstationary parameters may include SSD aging and changes in SSD wear-level characteristics. In addition, firmware updates may affect SSD operation and SSD lifespan. Moreover, over time, technical modifications may be introduced to the device that can change parameters not reflected in the originally trained model. Furthermore, the device's workload may change over time. For example, a model may be trained for a particular type of workload, and over the course of a month, the workload may change to become more write-intensive.

[0042] Retraining a failure prediction model for a storage device can be challenging in some cases. For example, retraining can involve collecting a relatively large amount of data from the device over a relatively long period of time. In some examples, data can be collected from millions of devices over many years. This can take up several gigabytes (GB) or terabytes (TB) of data. The dataset can be unbalanced because the data can include only a small portion of anomalous data. The anomalous data can include SSD failure cases or can be defined by a user. In some cases, the anomalous data can account for approximately 0.01% to approximately 0.02% of the entire dataset, which can negatively impact the accuracy of the failure prediction model for the storage device.

[0043] FIG. 2 illustrates a data center system that can be used to enhance the dataset used to train a failure prediction model for storage devices, according to an example embodiment of the present disclosure.

[0044] Referring to FIG. 2, a client 210 (e.g., a telemetry client) communicates with an Application Protocol The client 210 can interact with data (e.g., telemetry data) in the database 230 via an API 220 (API 220). The API 220 can allow the client 210 to extract a particular data set with a particular attribute from the database 230. For example, the client 210 can use the API 220 to request data points where the temperature of a storage device is greater than or equal to approximately 100 degrees Fahrenheit, and the API 220 can return data points with this attribute. In some embodiments, the API 220 can allow the client 210 to store data in the database 230 or offload data operations to a nearby device (e.g., a storage device within a predetermined physical distance, or a storage device that shares virtual resources or classification with a given storage device (or the like)), such as a nearby SSD or a nearby SSD where an embedded processor resides.

[0045] According to various embodiments, training data for a storage device's failure prediction model can be improved using various approaches. In some embodiments, the amount of data can be reduced by selecting a smaller amount of data based on the recency of the data (e.g., a window-based approach). Based on this approach, more recent data can be weighted more heavily. The most recent data can more accurately represent the drive's condition and workload characteristics. Optimizing through a high-weight (or high-intensity) training process (i) reduces the processing requirements for retraining and reduces the associated costs, (ii) reduces the time required for retraining, and (iii) allows for more frequent retraining, which can result in improved performance and accuracy of the predictive model.

[0046] FIG. 3 illustrates a diagram showing example operations for collecting a data set for training a failure prediction model for a storage device using a window-based data sampling approach, in accordance with an example embodiment of the present disclosure.

[0047] Referring to FIG. 3, the log data can be divided into, for example, six-month window time periods (intervals / cycles) (e.g., time period windows). However, embodiments of the present disclosure are not limited thereto, and the duration of the time period can be varied depending on the design of the failure prediction model of the storage device. The window 310 is T n and T n-1 Window 320 may include data logged during the most recent six-month period between T n-1 and T n-2 The data may include data recorded during the next most recent six-month period between T0 and T1. The data may be divided into six-month windows from the start of data collection T0. For example, window 340 may include data recorded during the first six-month period between T0 and T1. Window 330 may include data recorded during the second six-month period between T1 and T2. According to some example embodiments, the data may be divided into other time windows (e.g., one-month periods). The time band values ​​may be based on the size of the dataset and / or the total duration of the data.

[0048] In some embodiments, weights are assigned to data based on the window in which the data is collected. In some embodiments, window 310 contains the most recent data and is therefore assigned the highest weight (e.g., 1), while window 340 contains the least recent (i.e., oldest) data and is therefore assigned the lowest weight (e.g., 0). As previously mentioned, the most recent data is more valuable because it more accurately represents the drive's condition and workload characteristics. The weight of each window may decrease from the most recent data to the least recent data. In some embodiments, the weight of each window may decrease by a set amount from the most recent data to the least recent data. In some embodiments, the weight may decrease by as much as one-half for each window from the most recent data to the least recent data. In other embodiments, the weight may decrease by as much as one-third for each window when moving from the most recent data to the least recent data.

[0049] For example, as shown in FIG. 3, data collected from window 310 includes weights W n The data collected from window 320 is assigned a weight W n-1 Data collected from window 330 is assigned a weight W1. Data collected from window 340 is assigned a weight W0.

[0050] Various schemes for assigning weights may be implemented depending on various example embodiments. In some embodiments, the weights may be set as follows: W n =1, W n-1 =1 / 2, W n-2 =1 / 4, ...W0=1 / (2 n). According to this embodiment, the weights are reduced by half for each window. For example, the most recent six-month period is assigned a weight of 1, indicating that data from the past six months can be included in storage device failure prediction model 350. The next six-month period is assigned a weight of 1 / 2, indicating that half of the data from this six-month window can be included in storage device failure prediction model 350. The next six-month period is assigned a weight of 1 / 4, indicating that one-quarter of the data from this six-month window can be included in storage device failure prediction model 350. According to this embodiment, the total amount of data used for retraining each time is: 1 + 1 / 2 + 1 / 4 + ... + (1 / 2) n Over time, and as n increases, the sum of all weights converges to 2, which is equivalent to data collected over one year (2 x 6 months). Therefore, regardless of the total amount of data collected over the years, the amount of data used for retraining can be less than or equal to the data collected over a one-year period. For example, 20 years of data can be reduced or sampled down to one year of data.

[0051] Additionally, according to this embodiment, SSD failure data in the database can be collected and maintained regardless of its weight. The data set associated with the failure prediction model is inherently unbalanced and may contain a small amount of SSD failure data (e.g., 0.01% to 0.02%). Collecting SSD failure data can improve the accuracy of the failure prediction model for the storage device.

[0052] The training dataset can be further improved by storing (managing) relevant data (e.g., by pruning the dataset). In some embodiments, relevant data points can include anomalies. Anomalies can include instances of SSD failures, but can also include other data points with low probability of occurrence (e.g., outliers). Anomalies can be identified by anomaly detection algorithms such as, but not limited to, autoencoder techniques and separation forest techniques. Anomalies can also be identified using rule-based methods. In rule-based methods, a system user (e.g., a system administrator) can use the API 220 disclosed in FIG. 2 to define rules for determining whether a measurement is anomalous. For example, a user can use the API 220 to define a data point in which the temperature of a storage device is greater than a given threshold (e.g., 100 degrees Fahrenheit) as anomalous data.

[0053] In some examples, the disclosed system can identify anomalies using clustering methods. For example, when a database system performs a data-cleaning operation (e.g., garbage collection) on a storage device, the database system can store (manage) data classified as anomalous. When removing data classified as anomalous, the database system can subdivide the anomalous data into anomalous clusters based on a clustering algorithm, including, but not limited to, K-Means, Principal Component Analysis (PCA), and / or other algorithms. The data can be removed or filtered so that there is at least one data point in each anomalous cluster, or the cluster with the largest number of data points is preferred for removing data points.

[0054] In some embodiments, the disclosed system can enhance a dataset by oversampling data points with certain characteristics. As described above, datasets used to train a storage device failure prediction model can be inherently imbalanced because they may contain a limited amount of SSD failure data and other anomalous data points (e.g., approximately 0.01% to 0.02% of the dataset). This can negatively impact the accuracy of the storage device failure prediction model by ignoring data classes that contain anomalies, failure cases, or other rare events (e.g., data points associated with minority classes in the machine learning training dataset). Therefore, the disclosed system can generate additional samples of anomalies, failure cases, or other rare events (e.g., minority classes). The additional data points from the minority classes can help train the storage device failure prediction model to more accurately predict whether an SSD will fail.

[0055] In some embodiments, additional samples of the minority class can be generated using other methods for defining anomalous data. According to one embodiment, the minority data can be generated using a rule-based method. With the rule-based method, a user can define any data that exceeds a predetermined threshold as anomalous data. One or more rules can be defined for various fault conditions. Additional anomalous data samples can be generated based on defined criteria that cause the data to be classified as anomalous data. For example, a user can use an API to define temperature measurements associated with a device that exceed approximately 100 degrees Fahrenheit as anomalous data. Based on this definition, the disclosed system can generate additional samples of temperature measurements that exceed approximately 100 degrees Fahrenheit.

[0056] In another embodiment, the minority class of data can be generated using an example-based method. Based on the example-based method, a user can identify sample data points from which additional data points of similar values ​​can be generated. For example, a user can use an API to define temperature measurements on a storage device that are near approximately 100 degrees Fahrenheit as anomalous data. Based on this definition, additional samples can be generated for temperature measurements near 100 degrees Fahrenheit, such as 100 degrees Fahrenheit and 99 degrees Fahrenheit.

[0057] In some embodiments, the computationally intensive process of generating samples can be offloaded to nearby storage devices (e.g., storage devices within a predetermined physical distance, or storage devices that share virtual resources or classifications with a given storage device (or similar)), such as peripheral SSDs and peripheral SSDs containing embedded processors.

[0058] To further increase the efficiency of data sampling, data generated for a learning model can be classified based on an anomaly definition set by a user. As data is generated, data points that meet the user-provided anomaly definition can be classified and stored in a table. This allows for more efficient retrieval of such data points without scanning the entire database. In some embodiments, the classified data can be stored in nearby storage devices (e.g., storage devices within a predetermined physical distance, or storage devices that share virtual resources or classifications with a given storage device (or similar)), such as nearby SSDs and embedded processors.

[0059] FIG. 4 provides an overview of an example technique for classifying anomalous (abnormal) data, according to an example embodiment of the present disclosure.

[0060] Referring to FIG. 4 , the datasets in database 430 can be used to train a failure prediction model for storage devices (e.g., SSDs). Client 410 can use API 420 to set rules defining anomalous (abnormal) data in database 430. For example, client 410 can set this rule as data representing a temperature below 100 degrees Fahrenheit. According to this embodiment, data that meets this rule can be identified as anomalous data. The datasets in table 440 can include the datasets in database 430, which can include all data that meet or do not meet the rules set by a user. For example, data point “SN1” fails to meet the rules set by a user, while data point “SN2” meets the rules set by a user. Considering the relatively large amount of data that can be included in database 430, identifying data that meets the rules set by a user can be computationally burdensome. In some embodiments, data in database 430 that meet the rules set by a user can be stored in a separate table 450. For example, data points "SN1" and "SN2" all meet the definition set by the user and may be identified as anomalous data and stored in table 450. In some embodiments, the generated anomalous data may also be stored in table 450. By storing the anomalous data in table 450, the anomalous data may be efficiently retrieved without having to search the entire database 430.

[0061] FIG. 5 illustrates a flowchart illustrating example operations for training a failure prediction model for a storage device using a modified dataset according to an example embodiment of the present disclosure.

[0062] Referring to FIG. 5, the data set in database 510 may be used to train a failure prediction model for the storage device. In block 520, the data set in database 510 may be divided into time intervals (e.g., time window). In some embodiments, the windows may be six-month time intervals. In block 530, a weight is assigned to each window. In some embodiments, a larger assigned weight is assigned to the most recent data. As described above, the most recent data may be considered to have a larger assigned weight because the most recent data may more accurately represent the state and / or workload characteristics of the storage device. In block 540, data may be selected based on the assigned weights. For example, a window may be assigned a weight of 1, and all data in that window may be selected. In another example, a second window may be assigned a weight of half, and half of the data in the second window may be selected. In block 570, the selected data may be used to train a failure prediction model for the storage device.

[0063] In some embodiments, anomalous data may be selected from database 510 in block 550. The anomalous data may include, but is not limited to, data points associated with SSD failure cases and / or other data points with a relatively small probability of occurrence (e.g., outliers). Anomalies may be identified by anomaly detection algorithms such as, but not limited to, autoencoder techniques, separation forest techniques, etc. Additionally, anomalies may be identified using rule-based or clustering methods. The selected anomalous data may be used to train a failure prediction model for the storage device in block 570.

[0064] In some embodiments, additional anomalous data can be generated from block 560. In some embodiments, the anomalous data can be generated using a rule-based method. Based on the rule-based method, a user can define anomalous data as any data that exceeds a predetermined threshold. One or more rules can be defined for various fault conditions. Based on defined criteria that cause the data to be classified as anomalous data, additional samples of anomalous data can be generated. For example, a user can use an API to define temperature measurements associated with a device that exceed approximately 100 degrees Fahrenheit as anomalous data. Based on this definition, the disclosed system can generate additional samples of temperature measurements that exceed approximately 100 degrees Fahrenheit. In other embodiments, the anomalous data can be generated using an example-based method. According to the example-based method, a user can specify sample data points from which additional data points of similar value can be generated. For example, a user can use an API to define temperature measurements associated with a device near approximately 100 degrees Fahrenheit as anomalous data. Based on this definition, additional samples can be generated for temperature measurements near 100 degrees Fahrenheit, such as 101 degrees Fahrenheit and 99 degrees Fahrenheit. The generated data may be used to train a failure prediction model for the storage device at block 570 .

[0065] According to various embodiments of the invention described herein, a machine learning model can be used to predict whether a storage device is likely to fail in the future based on attributes of the storage device. In some embodiments, the machine learning model can be used within a processor, such as a general-purpose CPU. In other embodiments, the machine learning model can be offloaded to a nearby storage device, such as a nearby SSD (e.g., an SSD within a predetermined distance) or a nearby SSD where an embedded processor resides.

[0066] Electronic or electrical devices according to embodiments of the invention described herein and / or any other related devices or components may be implemented using any suitable hardware, firmware (e.g., application specific integrated circuits (ASICs)), software, or a combination of software, firmware, and hardware. For example, various components of these devices may be implemented as a single integrated circuit. The various components of these devices can be mounted on flexible printed circuit films, tape carrier packages, or separate IC chips. The various components of the system may be implemented on a carrier package (TCP), a printed circuit board (PCB), or formed on a single substrate. Note that the various components of these systems may be processes or threads that run on one or more processors, execute computer program instructions on one or more computing devices, and interact with other system components to perform the various functions described herein. The computer program instructions are stored in a memory that can be implemented on the computing device using standard memory devices such as, for example, random access memory (RAM). The computer program instructions can also be stored on other non-transitory computer-readable media such as, for example, a CD-ROM, a flash drive, etc.

[0067] The features of the present invention and methods for achieving the same may be more easily understood with reference to the detailed description of the above-described embodiments and the accompanying drawings. The above-described embodiments are described in more detail with reference to the accompanying drawings, in which like reference numerals refer to like elements throughout. However, the present disclosure may be embodied in various forms and should not be construed as being limited to the embodiments exemplified herein. Rather, the embodiments are provided as examples so that this disclosure will be thorough and complete and will fully convey aspects and features of the present disclosure to those skilled in the art. Therefore, processes, elements, and techniques that are not necessary for those skilled in the art to fully understand the aspects and features of the embodiments of the present disclosure may not be described. Unless otherwise specified, like reference numerals indicate like elements throughout the accompanying drawings and written description, and description thereof will not be repeated. In the drawings, the relative sizes of elements, layers, and regions may be exaggerated for clarity.

[0068] In the above description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the various embodiments. However, it will be apparent that the various embodiments may be practiced without these specific details or in one or more equivalent arrangements. However, those skilled in the art will appreciate that the various features of one or more embodiments described herein may be combined in any suitable manner without departing from the spirit or scope of the present disclosure. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the various embodiments.

[0069] When an element, layer, region, or component is referred to as being "on" or "connected" or "coupled" to another element, layer, region, or component, this can mean that it is directly on, connected to, or coupled to the other element, layer, region, or component, or there can be one or more intermediate elements, layers, regions, or components. However, "directly connected / directly coupled" means one component that directly connects or couples another component without any intermediate components. However, other expressions describing the relationship between components, such as "between," "immediately between," "adjacent," or "immediately adjacent," can be interpreted similarly. Furthermore, when an element or layer is referred to as being "between" two elements or layers, it can be the only element or layer between the two elements or layers, or there can be one or more intermediate elements or layers.

[0070] The terms used herein are for the purpose of describing particular embodiments and are not intended to limit the present disclosure. As used herein, the singular forms "a," "an," "the," "the," "the," "the," "the," "the," and "the" are intended to include the plural forms unless the context clearly indicates otherwise. As used herein, the terms "comprises," "having," "comprising," "have," and "having" are understood to specify the presence of stated features, integers, steps, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof. As used herein, the term "and / or" includes any and all combinations of one or more associated listed items.

[0071] As used herein, the terms "substantially," "about," "approximately," and similar terms are used as terms of approximation, rather than terms of degree, to account for inherent variations in measurements or calculations recognized by those of ordinary skill in the art. As used herein, "about" or "approximately" is inclusive of the referenced value and means within an acceptable range of variation from a particular value, as determined by one of ordinary skill in the art, taking into account the measurement in question and the error associated with measuring a particular quantity (e.g., limitations of the measurement system). For example, "about" can mean within one or more standard deviations, or within ±30%, 20%, 10%, or 5% of the stated value. Note that the use of "can" when describing embodiments of the present disclosure refers to "one or more embodiments of the present disclosure." As used herein, the terms "use," "using," and "used" can be considered synonymous with the terms "utilize," "utilizing," and "utilized," respectively. The term "by way of example" is intended to mean, for example, an example or illustration.

[0072] When particular embodiments can be implemented differently, the order of certain processes can be performed differently than described. For example, two processes described as successive can be performed substantially simultaneously or in the reverse order from that described.

[0073] The above-described subject matter illustrates example embodiments and should not be construed as limiting thereof. Although several example embodiments have been described, those skilled in the art will readily appreciate that many modifications to the example embodiments are possible without substantially departing from the novel teachings and advantages of the example embodiments. Accordingly, all such modifications are intended to be included within the scope of the example embodiments as defined in the claims. In the claims, means-plus-function language is intended to encompass not only the structures described herein and structural equivalents, but also equivalent structures, in performing the recited function. Therefore, the above-described subject matter illustrates example embodiments and should not be construed as limited to the particular embodiments disclosed. It should be understood that modifications to the disclosed example embodiments and other example embodiments are intended to be included within the scope of the appended claims. The inventive concept is defined by the following claims, including equivalents of the claims. [Explanation of symbols]

[0074] 100: Data Center Systems 110: Database 120: Machine Learning Model

Claims

1. 1. A method for training a machine learning model, comprising: a processor dividing a data set of the database into a plurality of data sets based on time window; the processor assigning a weight to each of the plurality of data sets based on the time window of the plurality of data sets, the weights decreasing by half for each time window from the most recent data set to the oldest data set, with the most recent data set being assigned a weight of one; generating a training data set from the plurality of data sets based on the weights; training the machine learning model using the training dataset; The machine learning model includes a solid-state drive (SSD) failure prediction model. A method for training machine learning models.

2. the processor identifying anomalous data in the data set; said processor acquiring said anomalous data in said data set; the processor adding the abnormal data to the training data set.

10. A method for training a machine learning model according to claim 1.

3. The abnormality data includes SSD failure data.

3. A method for training a machine learning model according to claim 2.

4. The anomalous data is identified by a rule-based method. A method for training a machine learning model according to claim 2 or 3.

5. The anomalous data is identified by a cluster-based method. A method for training a machine learning model according to claim 2 or 3.

6. generating anomaly data by the processor; the processor adding the generated abnormal data to the training data set.

10. A method for training a machine learning model according to claim 1.

7. A database, a processor coupled to the database; a memory coupled to the processor, the memory configured to, when executed by the processor, cause the processor to: Dividing the database dataset into a plurality of datasets based on time windows; assigning a weight to each of the plurality of data sets based on the time window of the plurality of data sets, the weights decreasing by half for each time window from the most recent data set to the oldest data set, with the most recent data set being assigned a weight of one; generating a training data set from the plurality of data sets based on the weights; storing instructions for training a machine learning model using the training dataset; The machine learning model includes a solid-state drive (SSD) failure prediction model. Data systems.

8. The processor: Identifying anomalous data within the data set; acquiring the anomalous data in the data set; Add the abnormal data to the training data set The data system of claim 7.

9. The abnormality data includes SSD failure data. The data system of claim 8.

10. The anomalous data is identified by a rule-based method.

10. A data system according to claim 8 or 9.

11. The anomalous data is identified by a cluster-based method.

10. A data system according to claim 8 or 9.

12. The processor: Generate abnormal data, The generated abnormal data is added to the training data set. The data system of claim 7.

Citation Information

Patent Citations

  • Systems and methods for predictive failure management

    US20080250265A1

  • Real usage model for solid-state drive

    US20140181585A1

  • Advanced storage device telemetry

    US20190155682A1

  • Apparatus, system, and method for retiring storage regions

    US8516343B2

  • Solid-state mass storage device and method for failure anticipation

    US8887027B2