Server fault prediction method and device, equipment, medium and program product

By using machine learning models to analyze sensor data in servers, the problem of traditional technologies being unable to predict server hardware failures is solved, achieving efficient and accurate fault prediction and early warning, and reducing maintenance costs and business risks.

CN120687941APending Publication Date: 2025-09-23INDUSTRIAL AND COMMERCIAL BANK OF CHINA
View PDF 0 Cites 2 Cited by

Patent Information

Application Number
CN202510857049.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-25
Publication Date
2025-09-23

AI Technical Summary

Technical Problem

Existing technologies cannot effectively predict server hardware failures, resulting in high risk of business interruption and high repair costs. Traditional log analysis relies on manual experience, has limited coverage, and cannot predict complex failure modes.

Method used

By obtaining real-time status data from multiple sensors of the target server, fault prediction is performed using a trained machine learning model, including data preprocessing, feature extraction, and model training. An appropriate machine learning algorithm is selected to predict the fault type and generate fault diagnosis suggestions.

Benefits of technology

It improves the efficiency and accuracy of server failure prediction, can provide early warning of failures, reduce maintenance time and costs, and avoid business losses.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120687941A_ABST
    Figure CN120687941A_ABST
Patent Text Reader

Abstract

The invention provides a server fault prediction method which can be applied to the fields of big data and artificial intelligence. The method comprises the following steps: acquiring real-time state data of a plurality of sensors in a target server, and determining a data type of the real-time state data; according to the data type, a fault prediction model is determined from a plurality of trained machine learning models, and each machine learning model is obtained by training historical state data of a plurality of sensors of the target server and actual fault information corresponding to the historical state data; and inputting the real-time state data into the fault prediction model to obtain a predicted fault type of the target server. The invention further provides a server fault prediction device and equipment, a storage medium and a program product.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the fields of big data and artificial intelligence, and specifically to a server failure prediction method, apparatus, equipment, medium, and program product. Background Art

[0002] Generally, server hardware failures are often unpredictable. Even if preventive log collection and analysis is performed irregularly or frequently, hardware failures cannot be avoided.

[0003] In their daily work, operations managers occasionally collect server BMC (Baseboard Management Controller) sensor logs for preventive maintenance. However, these are basic tools that can only address a small number of potential issues and failures. Furthermore, they can only respond after a hardware failure has occurred, resulting in high risk of business interruption and high repair costs. Furthermore, traditional log analysis relies on manual experience, has limited coverage, and cannot predict complex failure modes. Summary of the Invention

[0004] In view of the above problems, the present application provides a server failure prediction method, apparatus, device, medium and program product.

[0005] According to the first aspect of the present application, a server fault prediction method is provided, including: obtaining real-time status data of multiple sensors in a target server, and determining the data type of the real-time status data; determining a fault prediction model from multiple trained machine learning models based on the data type, wherein each machine learning model is trained using historical status data of multiple sensors of the target server and actual fault information corresponding to the historical status data; inputting the real-time status data into the fault prediction model to obtain the predicted fault type of the target server.

[0006] According to an embodiment of the present application, each machine learning model is trained in the following manner: for multiple candidate servers associated with the target server, the historical status data of multiple sensors of each candidate server and the actual fault information corresponding to the historical status data are obtained; the historical status data are preprocessed, and key features related to hardware failures are extracted from the preprocessed historical status data; the key features are input into a pre-selected machine learning model to obtain the predicted fault type corresponding to the historical status data; the difference between the predicted fault type and the actual fault information is determined, and the parameters of the machine learning model are adjusted until the difference is less than a preset difference threshold, thereby obtaining a trained machine learning model.

[0007] According to an embodiment of the present application, after obtaining a trained machine learning model, it also includes: determining the historical data type of the historical status data, the historical data type includes multiple preset data types; for any target data type among the multiple data types, extracting part of the historical status data corresponding to the target data type and part of the actual fault information corresponding to part of the historical status data from the historical status data; using part of the historical status data as input data, respectively inputting the trained multiple machine learning models to obtain multiple predicted fault types corresponding to part of the historical status data; matching the multiple predicted fault types with part of the actual fault information respectively, so as to screen out the most accurate machine learning model from the trained multiple machine learning models as the fault prediction model corresponding to the target data type.

[0008] According to an embodiment of the present application, the historical status data is preprocessed, including at least one of the following: using time series interpolation method to supplement missing values ​​in the historical status data; deleting duplicate data in the historical status data based on unique identifiers or key field combinations; using principal component analysis method to perform dimensionality reduction processing on the historical status data.

[0009] According to an embodiment of the present application, key features related to hardware failures are extracted from preprocessed historical status data, including: using a first extraction algorithm to perform feature extraction on the preprocessed historical status data to obtain initial extracted features; using a second extraction algorithm to perform feature extraction on the initial extracted features to obtain key features, wherein the first extraction algorithm is different from the second extraction algorithm.

[0010] According to an embodiment of the present application, the data type of the real-time status data is determined from a plurality of preset data types of the historical status data.

[0011] According to an embodiment of the present application, determining the data type of real-time status data includes: determining the data volume of the real-time status data, and determining whether the data type is large-scale data or small-scale data based on the data volume; and determining the data structure of the real-time status data, and determining whether the data type is time series data or unstructured data based on the data structure.

[0012] According to an embodiment of the present application, multiple machine learning models include a random forest model, a gradient boosting tree, a long short-term memory network, and a Transformer time series model; according to the data type, a fault prediction model is determined from multiple trained machine learning models, including any one of the following three strategies: Strategy one: If the data type of the real-time status data is small-scale data and structured data, a trained random forest model or gradient boosting tree is selected as the fault prediction model; Strategy two: If the data type of the real-time status data is large-scale data and time series data, a trained long short-term memory network or Transformer time series model is selected as the fault prediction model; Strategy three: If the data type of the real-time status data does not meet strategies one and two, the default selected machine learning model is obtained from multiple trained machine learning models as the fault prediction model.

[0013] According to an embodiment of the present application, the method further includes: generating a fault diagnosis suggestion for the target server based on the predicted fault type.

[0014] The second aspect of the present application provides a server fault prediction device, including: a data acquisition module, used to obtain real-time status data of multiple sensors in a target server and determine the data type of the real-time status data; a model selection module, used to determine a fault prediction model from multiple trained machine learning models based on the data type, wherein each machine learning model is trained using the historical status data of multiple sensors of the target server and the actual fault information corresponding to the historical status data; a fault prediction module, used to input the real-time status data into the fault prediction model to obtain the predicted fault type of the target server and the predicted fault data corresponding to the predicted fault type in the real-time status data.

[0015] The third aspect of the present application provides an electronic device, comprising: one or more processors; a memory for storing one or more computer programs, wherein the one or more processors execute the one or more computer programs to implement the steps of the above method.

[0016] The fourth aspect of the present application further provides a computer-readable storage medium having a computer program or instructions stored thereon, which implements the steps of the above method when the computer program or instructions are executed by a processor.

[0017] The fifth aspect of the present application further provides a computer program product, comprising a computer program or instructions, which implement the steps of the above method when executed by a processor. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] The above contents and other objects, features and advantages of the present application will become more apparent through the following description of the embodiments of the present application with reference to the accompanying drawings, in which:

[0019] Figure 1 A diagram schematically illustrates an application scenario of the server failure prediction method, apparatus, device, medium, and program product according to an embodiment of the present application;

[0020] Figure 2 A flowchart of a server failure prediction method according to an embodiment of the present application is schematically shown;

[0021] Figure 3 The following is a flowchart schematically illustrating a training process of a machine learning model according to an embodiment of the present application;

[0022] Figure 4 A flowchart of selecting multiple trained machine learning models based on data type according to an embodiment of the present application is schematically shown;

[0023] Figure 5 The following schematically shows a structural block diagram of a server failure prediction device according to an embodiment of the present application;

[0024] Figure 6 A block diagram of an electronic device suitable for implementing a server failure prediction method according to an embodiment of the present application is schematically shown. DETAILED DESCRIPTION

[0025] Hereinafter, embodiments of the present application will be described with reference to the accompanying drawings. However, it should be understood that these descriptions are exemplary only and are not intended to limit the scope of the present application. In the detailed description below, for ease of explanation, many specific details are set forth to provide a comprehensive understanding of the embodiments of the present application. However, it is apparent that one or more embodiments may also be implemented without these specific details. In addition, in the following description, descriptions of known structures and technologies are omitted to avoid unnecessarily confusing the concepts of the present application.

[0026] The terms used herein are only for describing specific embodiments and are not intended to limit this application. The terms "comprise," "include," etc. used herein indicate the presence of the features, steps, operations, and / or components, but do not exclude the presence or addition of one or more other features, steps, operations, or components.

[0027] All terms used herein (including technical and scientific terms) have the meanings commonly understood by those skilled in the art unless otherwise defined. It should be noted that the terms used herein should be interpreted as having a meaning consistent with the context of this specification and should not be interpreted in an idealized or overly rigid manner.

[0028] When expressions such as "at least one of A, B, and C, etc." are used, they should generally be interpreted in accordance with the meaning commonly understood by those skilled in the art (for example, "a system having at least one of A, B, and C" should include but is not limited to a system having A alone, B alone, C alone, A and B, A and C, B and C, and / or A, B, C, etc.).

[0029] Figure 1 The application scenario diagram of the server failure prediction method, apparatus, device, medium and program product according to the embodiments of the present application is schematically shown.

[0030] like Figure 1 As shown, the application scenario 100 according to this embodiment may include a target server 101, a network 102, and an operation and maintenance server 103. The network 102 is used as a medium for providing a communication link between the target server 101 and the operation and maintenance server 103. The network 102 may include various connection types, such as wired or wireless communication links or fiber optic cables.

[0031] Users can use the target server 101 to interact with the operation and maintenance server 103 via the network 102 to receive or send messages, etc. Various communication client applications can be installed on the target server 101, such as shopping applications, web browser applications, search applications, instant messaging tools, email clients, social platform software, etc. (only as examples).

[0032] The target server 101 may be any electronic device having a display screen and supporting web browsing, including but not limited to a smart phone, a tablet computer, a laptop computer, a desktop computer, and the like.

[0033] The operation and maintenance server 103 may be a server that provides various services, such as a backend management server (for example only) that supports websites browsed by users using the target server 101. The backend management server may analyze and process received data such as user requests, and feed back the processing results (e.g., web pages, information, or data obtained or generated based on user requests) to the target server.

[0034] It should be noted that the server failure prediction method provided in the embodiment of the present application can generally be executed by the operation and maintenance server 103. Accordingly, the server failure prediction device provided in the embodiment of the present application can generally be set in the operation and maintenance server 103. The server failure prediction method provided in the embodiment of the present application can also be executed by a server or server cluster that is different from the operation and maintenance server 103 and can communicate with the target server 101 and / or the operation and maintenance server 103. Accordingly, the server failure prediction device provided in the embodiment of the present application can also be set in a server or server cluster that is different from the operation and maintenance server 103 and can communicate with the target server 101 and / or the operation and maintenance server 103.

[0035] It should be understood that Figure 1 The number of target servers, networks, and operation and maintenance servers in the embodiment is merely illustrative. Any number of target servers, networks, and operation and maintenance servers may be provided as required.

[0036] The following will be based on Figure 1 The scene described by Figures 2 to 6 A server failure prediction method according to an embodiment of the present application is described in detail.

[0037] Figure 2 The flowchart of the server failure prediction method according to an embodiment of the present application is schematically shown.

[0038] like Figure 2 As shown, the server failure prediction method of this embodiment includes operations S210 to S230, and the method can be executed by an operation and maintenance server.

[0039] In operation S210 , real-time status data of a plurality of sensors in a target server is acquired, and a data type of the real-time status data is determined.

[0040] The target server is the server for which fault prediction is to be performed. For example, the multiple sensors in the target server may be temperature sensors, voltage / current sensors, fan speed sensors, hard disk health sensors, etc.

[0041] Real-time status data from multiple sensors on a target server can be collected by a baseboard management controller (BMC) associated with the target server. The BMC can establish a communication connection with an operations and maintenance server, allowing the BMC to feed the collected real-time status data from multiple sensors on the target server back to the operations and maintenance server for fault prediction.

[0042] For example, real-time status data may include but is not limited to the brand, model, resource code, serial number, physical location, time, system node IP (Internet Protocol), management IP, number of memories, memory capacity, hard disk parameters, number of hard disks, hard disk capacity, number of CPUs (Central Processing Units), number of CPU cores, CPU model, CPU brand, RAID (Redundant Arrays of Independent Disks) card type, controller status, number of network cards, network card speed, number of HBA (Host Bus Adapter, Fibre Channel) cards, fiber speed, number of fans, fan speed, number of power modules, noise level, air inlet temperature, air outlet temperature, BIOS (Basic Input Output System) firmware version, BMC (Baseboard Management Controller) firmware version, CPLD (Complex Programmable Logic Device) firmware version, network card firmware version, hard disk firmware version, etc. of the target server.

[0043] Because real-time status data comes from multiple sensors and has different data types, it is multidimensional sensor data, and its data type varies based on the data's attributes. Real-time status data can have one or more data types.

[0044] In operation S220, a fault prediction model is determined from multiple trained machine learning models based on the data type, wherein each machine learning model is trained using historical status data of multiple sensors of the target server and actual fault information corresponding to the historical status data.

[0045] Each machine model is obtained through training, and the training process uses the historical status data of the target server that has failed in a historical time period and the corresponding actual failure information.

[0046] For example, multiple machine learning models include traditional machine learning models, such as decision trees, random forest models, gradient boosting trees, etc.; multiple machine learning models also include deep learning models, such as LSTM (long short-term memory network), Transformer timing model, CNN-LSTM fusion model, graph neural network (GNN), etc.

[0047] Since multiple machine learning models are available, one or more machine learning models can be selected as fault prediction models based on the data type of the real-time status data.

[0048] In operation S230 , the real-time status data is input into a fault prediction model to obtain a predicted fault type of the target server.

[0049] After selecting a fault prediction model, the model can be used to predict the real-time status data of the target server to obtain the predicted fault type of the target server.

[0050] The target server's predicted failure types can be categorized according to different dimensions. Each predicted failure type corresponds to a specific cause and handling strategy. For example, predicted failure types can be categorized into hardware failure, software failure, environmental failure, and security failure. Another example, for hardware failures alone, the predicted failure types can be categorized into CPU (central processing unit) failure, hard drive failure, memory failure, and motherboard failure.

[0051] It should be noted that the predicted failure type is the target server's fault prediction result, as predicted by the fault prediction model based on real-time status data. This prediction result can indicate a target server fault or a normal state. If the target server is predicted to be faulty, the predicted failure type can reflect the type of fault that may occur on the target server, such as a hard drive failure, memory failure, or motherboard failure.

[0052] The embodiments of this application predict target server failures through real-time analysis of the target server's multi-dimensional sensor data (temperature, voltage, fan speed, etc.), improving the efficiency and accuracy of fault prediction and facilitating health checks and preventative maintenance of the target server. This method, leveraging the target server's multi-dimensional sensor data, predicts target server failures in advance, avoiding the limitation of existing solutions that only monitor failures after they occur. It can capture early signs of server failure (e.g., a slow temperature rise indicating cooling system aging).

[0053] Figure 3 A flowchart of the training process of each machine learning model according to an embodiment of the present application is schematically shown.

[0054] like Figure 3 As shown, in an embodiment of the present application, each machine learning model is trained through the following operations S301 to S304.

[0055] In operation S301 , for a plurality of candidate servers associated with a target server, historical status data of a plurality of sensors of each candidate server and actual fault information corresponding to the historical status data are obtained.

[0056] The multiple candidate servers are all servers associated with the target server. For example, they may be servers located in the same spatial environment as the target server, which may be a data center. For another example, the multiple candidate servers may be servers of the same brand as the target server, or they may be servers located at different nodes in a distributed system relative to the target server.

[0057] By obtaining historical status data of multiple sensors from multiple candidate servers, the quality and integrity of data collection are guaranteed, and multiple data types are covered as much as possible.

[0058] In operation S302 , the historical status data is preprocessed, and key features related to hardware failures are extracted from the preprocessed historical status data.

[0059] Since various historical status data of candidate servers may have inconsistent units and some values ​​are missing, the historical status data obtained in some cases cannot be used directly. Therefore, the historical status data can be preprocessed first.

[0060] Furthermore, the historical status data is preprocessed, including at least one of the following: using time series interpolation method to supplement missing values ​​in the historical status data; deleting duplicate data in the historical status data based on unique identifiers or key field combinations; using principal component analysis method to reduce the dimensionality of the historical status data.

[0061] Through the embodiments of the present application, historical status data is preprocessed, missing sensor data is filled, noise and outliers are removed, and redundant sensor dimensions are reduced, which can improve data quality and reliability and prepare for machine learning model training.

[0062] Optionally, key features related to hardware failures are extracted from the preprocessed historical status data, including: using a first extraction algorithm to perform feature extraction on the preprocessed historical status data to obtain initial extracted features; using a second extraction algorithm to perform feature extraction on the initial extracted features to obtain key features, wherein the first extraction algorithm is different from the second extraction algorithm.

[0063] For example, key features include short-term features, such as CPU temperature slope and voltage fluctuation standard deviation; key features also include long-term features, such as the cumulative power-on time of the hard disk and the average load rate of the power module.

[0064] Through the embodiments of the present application, the first extraction algorithm is first called to extract features from the pre-processed historical status data to obtain initial extracted features, and then the second extraction algorithm is called to extract features from the initial extracted features to obtain key features. Considering that in the historical status data of multiple sensors of multiple candidate servers, there may be some historical status data that has little impact on the current fault monitoring results, the extracted features can be screened twice to reduce the redundant sensor dimensions, balance the efficiency and accuracy of fault prediction, and eliminate some feature information in the extracted features that cannot affect the current fault monitoring results. The remaining feature information is the key feature, ensuring that the extracted key features can effectively reflect the potential mode of hardware failure.

[0065] In operation S303 , the key features are input into a pre-selected machine learning model to obtain a predicted fault type corresponding to the historical status data.

[0066] The extracted key features are input into each machine learning model to obtain the predicted fault type corresponding to each machine learning model.

[0067] In operation S304, the difference between the predicted fault type and the actual fault information is determined, and the parameters of the machine learning model are adjusted until the difference is less than a preset difference threshold, thereby obtaining a trained machine learning model.

[0068] During model training, each machine learning model's predictions are compared with the actual results, and the difference between the two is calculated. The smaller the difference, the closer the machine learning model's predictions are to the actual results. Model training is concluded by controlling the difference to fall below a preset difference threshold, resulting in a trained machine learning model.

[0069] There are multiple trained machine learning models. According to the different data types of real-time status data, a machine learning model that matches the data type can be selected as a fault prediction model.

[0070] Figure 4 A flowchart for selecting multiple trained machine learning models based on data type according to an embodiment of the present application is schematically shown.

[0071] like Figure 4 As shown, in some embodiments, after the above operation S304 obtains the trained machine learning model, the following operations S401 to S404 are also included.

[0072] In operation S401 , a historical data type of historical status data is determined, where the historical data type includes a plurality of preset data types.

[0073] In operation S402 , for any target data type among the multiple data types, partial historical status data corresponding to the target data type and partial actual fault information corresponding to the partial historical status data are extracted from the historical status data.

[0074] In operation S403, part of the historical state data is used as input data and input into multiple trained machine learning models respectively to obtain multiple predicted fault types corresponding to the part of the historical state data.

[0075] In operation S404, multiple predicted fault types are matched with part of the actual fault information respectively to select the most accurate machine learning model from the multiple trained machine learning models as the fault prediction model corresponding to the target data type.

[0076] Through the embodiments of the present application, for multiple trained machine learning models, since the historical status data covers as many data types as possible, the most accurate machine learning model has been screened out for each data type of each historical status data as the fault prediction model corresponding to the data type.

[0077] Based on this, in some embodiments, the above operation S210 of determining the data type of the real-time status data includes: determining the data type of the real-time status data from a plurality of preset data types of the historical status data.

[0078] The data type of the real-time status data is selected from various data types of the historical status data. The data type of the real-time status data follows these data types, and a fault prediction model can be determined more accurately and timely from multiple trained machine learning models.

[0079] The data type of the real-time status data can be divided differently according to different dimensions. In some embodiments, the above operation S210 determines the data type of the real-time status data, including: determining the data volume of the real-time status data, and determining the data type as large-scale data or small-scale data based on the data volume; and determining the data structure of the real-time status data, and determining the data type as time series data or unstructured data based on the data structure.

[0080] Furthermore, the multiple machine learning models in the above operation S220 include a random forest model, a gradient boosting tree, a long short-term memory network, and a Transformer time series model; and determining a fault prediction model from the multiple trained machine learning models based on the data type includes any one of the following three strategies:

[0081] Strategy 1: If the real-time status data is small-scale and structured, select a trained random forest model or gradient boosting tree as the fault prediction model.

[0082] Strategy 2: If the real-time status data is large-scale and time series data, select a trained long short-term memory network or Transformer time series model as the fault prediction model;

[0083] Strategy 3: If the data type of the real-time status data does not meet the requirements of Strategy 1 or Strategy 2, a default machine learning model is selected from multiple trained machine learning models as the fault prediction model.

[0084] Through the embodiments of the present application, for small-scale structured data, one can select one from the trained random forest model or gradient boosting tree as a fault prediction model. For large-scale time series data, one can select one from the trained long short-term memory network or Transformer time series model as a fault prediction model; for other data types, the default selection can be used. The machine learning model selected by default can be any one selected from multiple machine learning models. Therefore, according to the different data types of real-time status data, a machine learning model that matches the data type can be selected from multiple trained machine learning models as a fault prediction model, thereby improving the pertinence and accuracy of the fault prediction model selection, and further improving the efficiency and accuracy of fault prediction, which is helpful for health checks and preventive maintenance of target servers.

[0085] In some embodiments, the server fault prediction method further includes: generating a fault diagnosis suggestion for the target server based on the predicted fault type.

[0086] For example, fault diagnosis suggestions can include checking specific components, replacing hardware, or optimizing load distribution, etc., which can help operations and maintenance personnel take quick action. Traditionally, faults are often discovered after they have already occurred, which requires downtime for repairs and may cost a lot of time and money. The embodiments of the present application can provide early warning of faults, allowing operations and maintenance personnel to take timely measures to reduce the time and cost required for repairs, while avoiding business losses caused by long downtime.

[0087] Based on the above server failure prediction method, this application also provides a server failure prediction device. Figure 5 The device is described in detail.

[0088] Figure 5 The structural block diagram of the server failure prediction device according to an embodiment of the present application is schematically shown.

[0089] like Figure 5 As shown, the server fault prediction device 500 of this embodiment includes a data acquisition module 510 , a model selection module 520 and a fault prediction module 530 .

[0090] The data acquisition module 510 is used to acquire real-time status data of multiple sensors in the target server and determine the data type of the real-time status data. In one embodiment, the data acquisition module 510 can be used to perform the operation S210 described above, which will not be repeated here.

[0091] Model selection module 520 is configured to determine a fault prediction model from among multiple trained machine learning models based on the data type. Each machine learning model is trained using historical status data from multiple sensors of the target server and actual fault information corresponding to the historical status data. In one embodiment, model selection module 520 can be used to perform operation S220 described above and will not be further described here.

[0092] Fault prediction module 530 is configured to input the real-time status data into a fault prediction model to obtain a predicted fault type for the target server and predicted fault data corresponding to the predicted fault type in the real-time status data. In one embodiment, fault prediction module 530 may be configured to perform operation S230 described above, which will not be further described here.

[0093] According to embodiments of the present application, any multiple modules among the data acquisition module 510, model selection module 520, and fault prediction module 530 may be combined into a single module, or any one of these modules may be split into multiple modules. Alternatively, at least part of the functionality of one or more of these modules may be combined with at least part of the functionality of other modules and implemented in a single module. According to embodiments of the present application, at least one of the data acquisition module 510, model selection module 520, and fault prediction module 530 may be at least partially implemented as a hardware circuit, such as a field programmable gate array (FPGA), a programmable logic array (PLA), a system on a chip, a system on a substrate, a system on a package, an application-specific integrated circuit (ASIC), or may be implemented in hardware or firmware through any other reasonable means of circuit integration or packaging, or may be implemented in any one of the three implementation methods of software, hardware, and firmware, or any appropriate combination of these. Alternatively, at least one of the data acquisition module 510, model selection module 520, and fault prediction module 530 may be at least partially implemented as a computer program module that, when executed, performs the corresponding functionality.

[0094] Figure 6 A block diagram of an electronic device suitable for implementing a server failure prediction method according to an embodiment of the present application is schematically shown.

[0095] like Figure 6As shown, an electronic device 600 according to an embodiment of the present application includes a processor 601, which can perform various appropriate actions and processes based on a program stored in a read-only memory (ROM) 602 or a program loaded from a storage unit 608 into a random access memory (RAM) 603. The processor 601 may include, for example, a general-purpose microprocessor (e.g., a CPU), an instruction set processor and / or a related chipset and / or a dedicated microprocessor (e.g., an application-specific integrated circuit (ASIC)), etc. The processor 601 may also include onboard memory for caching purposes. The processor 601 may include a single processing unit or multiple processing units for performing different actions of the method flow according to an embodiment of the present application.

[0096] Various programs and data required for the operation of the electronic device 600 are stored in the RAM 603. The processor 601, ROM 602, and RAM 603 are connected to each other via a bus 604. The processor 601 performs various operations of the method flow according to the embodiment of the present application by executing the programs in the ROM 602 and / or RAM 603. It should be noted that the programs may also be stored in one or more memories other than the ROM 602 and RAM 603. The processor 601 may also perform various operations of the method flow according to the embodiment of the present application by executing the programs stored in the one or more memories.

[0097] According to an embodiment of the present application, electronic device 600 may further include an input / output (I / O) interface 605, which is also connected to bus 604. Electronic device 600 may also include one or more of the following components connected to I / O interface 605: an input section 606 including a keyboard, mouse, etc.; an output section 607 including devices such as a cathode ray tube (CRT), liquid crystal display (LCD), and speakers; a storage section 608 including a hard disk; and a communication section 609 including a network interface card such as a LAN card or modem. Communication section 609 performs communication processing via a network such as the Internet. A drive 610 is also connected to I / O interface 605 as needed. Removable media 611, such as a magnetic disk, optical disk, magneto-optical disk, semiconductor memory, etc., is installed in drive 610 as needed, so that computer programs read from the removable media can be installed into storage section 608 as needed.

[0098] This application also provides a computer-readable storage medium, which may be included in the device / apparatus / system described in the above embodiments, or may exist independently and not be incorporated into the device / apparatus / system. The computer-readable storage medium carries one or more programs, and when the one or more programs are executed, the method according to the embodiments of this application is implemented.

[0099] According to an embodiment of the present application, a computer-readable storage medium may be a non-volatile computer-readable storage medium, and may include, for example, but not limited to: a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof. In the present application, a computer-readable storage medium may be any tangible medium that contains or stores a program that can be used by or in conjunction with an instruction execution system, apparatus, or device. For example, according to an embodiment of the present application, a computer-readable storage medium may include the ROM 602 and / or RAM 603 described above and / or one or more memories other than ROM 602 and RAM 603.

[0100] The embodiments of the present application also include a computer program product, which includes a computer program containing program code for executing the method shown in the flowchart. When the computer program product is executed in a computer system, the program code is used to enable the computer system to implement the server failure prediction method provided in the embodiments of the present application.

[0101] The computer program executes the above functions defined in the system / device of the embodiment of the present application when the computer program is executed by the processor 601. According to the embodiment of the present application, the system, device, module, unit, etc. described above can be implemented by a computer program module.

[0102] In one embodiment, the computer program may be stored on a tangible storage medium such as an optical storage device or a magnetic storage device. In another embodiment, the computer program may be transmitted and distributed in the form of a signal on a network medium, downloaded and installed via the communication portion 609, and / or installed from a removable medium 611. The program code contained in the computer program may be transmitted using any appropriate network medium, including but not limited to wireless, wired, or any suitable combination thereof.

[0103] In such an embodiment, the computer program can be downloaded and installed from a network via the communication section 609, and / or installed from a removable medium 611. When the computer program is executed by the processor 601, the above-mentioned functions defined in the system of the embodiment of the present application are performed. According to the embodiment of the present application, the systems, devices, means, modules, units, etc. described above can be implemented by computer program modules.

[0104] According to an embodiment of the present application, the program code for executing the computer program provided by the embodiment of the present application can be written in any combination of one or more programming languages. Specifically, these computer programs can be implemented using high-level procedural and / or object-oriented programming languages, and / or assembly / machine languages. Programming languages ​​include, but are not limited to, languages ​​such as Java, C++, Python, "C" or similar programming languages. The program code can be executed entirely on the user computing device, partially on the user device, partially on a remote computing device, or entirely on a remote computing device or server. In the case of a remote computing device, the remote computing device can be connected to the user computing device through any type of network, including a local area network (LAN) or a wide area network (WAN), or can be connected to an external computing device (for example, using an Internet service provider to connect via the Internet).

[0105] The flowcharts and block diagrams in the accompanying drawings illustrate the possible implementation architecture, functions and operations of the systems, methods and computer program products according to various embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, program segment, or a part of code, and the above-mentioned module, program segment, or a part of code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram or flowchart, and the combination of the boxes in the block diagram or flowchart, can be implemented with a dedicated hardware-based system that performs the specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.

[0106] Those skilled in the art will appreciate that the features described in the various embodiments of this application may be combined and / or coupled in various ways, even if such combinations or couplings are not explicitly described in this application. In particular, the features described in the various embodiments of this application may be combined and / or coupled in various ways without departing from the spirit and teachings of this application. All such combinations and / or couplings fall within the scope of this application.

Claims

1. A server failure prediction method, characterized in that: The method comprises: Acquire real-time status data of multiple sensors in a target server, and determine the data type of the real-time status data; Determining a fault prediction model from a plurality of trained machine learning models based on the data type, wherein each of the machine learning models is trained using historical status data of a plurality of sensors of the target server and actual fault information corresponding to the historical status data; The real-time status data is input into the fault prediction model to obtain the predicted fault type of the target server.

2. The method according to claim 1, characterized in that Each of the machine learning models is trained in the following way: For multiple candidate servers associated with the target server, obtaining historical status data of multiple sensors of each candidate server and actual fault information corresponding to the historical status data; Preprocessing the historical status data, and extracting key features related to hardware failures from the preprocessed historical status data; Inputting the key features into a pre-selected machine learning model to obtain a predicted fault type corresponding to the historical status data; Determine the difference between the predicted fault type and the actual fault information, adjust the parameters of the machine learning model until the difference is less than a preset difference threshold, and obtain a trained machine learning model.

3. The method according to claim 2, characterized in that After obtaining the trained machine learning model, the following steps are also included: Determining a historical data type of the historical status data, where the historical data type includes a plurality of preset data types; For any target data type among the multiple data types, extracting part of the historical status data corresponding to the target data type and part of the actual fault information corresponding to the part of the historical status data from the historical status data; The part of the historical state data is used as input data and input into the trained multiple machine learning models respectively to obtain multiple predicted fault types corresponding to the part of the historical state data; The multiple predicted fault types are matched with the portion of actual fault information respectively to select the most accurate machine learning model from the multiple trained machine learning models as the fault prediction model corresponding to the target data type.

4. The method according to claim 2, characterized in that The preprocessing of the historical status data includes at least one of the following: Using time series interpolation method to supplement missing values ​​in the historical status data; Deleting duplicate data from the historical status data based on a unique identifier or a combination of key fields; The principal component analysis method is used to perform dimensionality reduction processing on the historical state data.

5. The method according to claim 2, characterized in that Extract key features related to hardware failures from preprocessed historical status data, including: Using a first extraction algorithm to perform feature extraction on the preprocessed historical state data to obtain initial extracted features; A second extraction algorithm is used to perform feature extraction on the initially extracted features to obtain the key features, wherein the first extraction algorithm is different from the second extraction algorithm.

6. The method according to claim 3, characterized in that The data type of the real-time status data is determined from a plurality of preset data types of the historical status data.

7. The method according to claim 1, characterized in that Determining the data type of the real-time status data includes: Determining the data volume of the real-time status data, and determining whether the data type is large-scale data or small-scale data according to the data volume; and The data structure of the real-time status data is determined, and the data type is determined to be time series data or unstructured data according to the data structure.

8. The method according to claim 7, characterized in that The multiple machine learning models include a random forest model, a gradient boosting tree, a long short-term memory network, and a Transformer time series model; and determining a fault prediction model from the multiple trained machine learning models based on the data type includes any one of the following three strategies: Strategy 1: If the data type of the real-time status data is the small-scale data and the structured data, select a trained random forest model or a gradient boosting tree as the fault prediction model; Strategy 2: If the data type of the real-time status data is the large-scale data and the time series data, select a trained long short-term memory network or a Transformer time series model as the fault prediction model; Strategy three: If the data type of the real-time status data does not conform to Strategy one and Strategy two, a default selected machine learning model is obtained from multiple trained machine learning models as the fault prediction model.

9. The method according to claim 1, characterized in that The method further comprises: A fault diagnosis suggestion for the target server is generated according to the predicted fault type.

10. A server failure prediction device, characterized in that: The device comprises: A data acquisition module is used to acquire real-time status data of multiple sensors in the target server and determine the data type of the real-time status data; a model selection module, configured to determine a fault prediction model from a plurality of trained machine learning models based on the data type, wherein each of the machine learning models is trained using historical status data of a plurality of sensors of the target server and actual fault information corresponding to the historical status data; The fault prediction module is used to input the real-time status data into the fault prediction model to obtain the predicted fault type of the target server and the predicted fault data corresponding to the predicted fault type in the real-time status data.

11. An electronic device comprising: one or more processors; a memory for storing one or more computer programs, It is characterized in that the one or more processors execute the one or more computer programs to implement the steps of the method according to any one of claims 1 to 9.

12. A computer-readable storage medium having a computer program or instruction stored thereon, characterized in that: When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.

13. A computer program product comprising a computer program or instructions, characterized in that When the computer program or instruction is executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.

Citation Information

Cited By

  • Server network state dynamic adjustment method and device, equipment and storage medium

    CN120896852A

  • Fault detection method and device, electronic equipment, storage medium and product

    CN121240119A