Method and device for determining score, storage medium and electronic device

By acquiring various types of operational data, employing differentiated scoring strategies and weighted aggregation, and combining them with a fault prediction model, the problem of low accuracy in assessing process health using single indicators was solved. This enabled a comprehensive assessment of process health status and risk prediction, thereby improving the stability and operational efficiency of the distributed storage system.

CN122309312APending Publication Date: 2026-06-30JINAN INSPUR DATA TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
JINAN INSPUR DATA TECH CO LTD
Filing Date
2026-03-31
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

The existing technology that assesses the health of a process using a single indicator suffers from low accuracy.

Method used

By acquiring various types of operational data of the target process, adopting a differentiated scoring strategy, and performing score fusion and dynamic adjustment, a multi-dimensional target score is formed. Taking into account historical data and real-time changes, and combining weighted aggregation and fault prediction models, a comprehensive assessment of the process health status is achieved.

Benefits of technology

It improves the accuracy and comprehensiveness of process health status assessment, can reflect real-time operating status in a timely manner and predict potential health risks, and provides proactive operation and maintenance support for distributed storage systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122309312A_ABST
    Figure CN122309312A_ABST
Patent Text Reader

Abstract

This application provides a method, apparatus, storage medium, and electronic device for determining a score, relating to the field of data processing. The method includes: acquiring a set of runtime data for a target process over a target time period; determining a scoring strategy for each runtime data based on its data type; determining a score corresponding to each runtime data based on the scoring strategy; and determining a target score for the target process based on the score corresponding to each runtime data. The target score indicates the health status of the target process. This application solves the problem in related technologies where assessing process health using a single indicator leads to low accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of data analysis technology, and in particular to a method and apparatus for determining scores, a storage medium, and an electronic device. Background Technology

[0002] In distributed storage systems, assessing the health status of processes (such as OSDs) is a crucial step in ensuring system stability and reliability. Traditional health status assessment methods typically rely on a single metric. However, this approach has significant limitations, primarily in the following aspects:

[0003] Single-metric assessments fail to fully reflect the health of a process. For example, high CPU utilization may be due to handling a large number of requests, rather than indicating a process failure. Conversely, low CPU utilization may be due to inefficient process execution, rather than a sign of normal system operation.

[0004] There is currently no effective solution to the problem that assessing the health of a process using a single indicator in related technologies leads to low accuracy.

[0005] Therefore, it is necessary to improve the relevant technology to overcome the aforementioned defects. Summary of the Invention

[0006] This application provides a method, apparatus, storage medium, and electronic device for determining a score, in order to at least solve the problem in the related art where the assessment of the health of a process by a single indicator results in low accuracy.

[0007] According to one aspect of the embodiments of this application, a method for determining a score is provided, comprising: obtaining a set of running data for a target time period of a target process; determining a scoring strategy for each running data according to the data type of each running data in the set of running data; determining a score corresponding to each running data according to the scoring strategy; and determining a target score for the target process according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

[0008] According to another aspect of the embodiments of this application, a scoring determination apparatus is provided, comprising: an acquisition module, configured to acquire a set of running data for a target time period of a target process; a first determination module, configured to determine a scoring strategy for each running data according to the data type of each running data in the set of running data; and a second determination module, configured to determine a score corresponding to each running data according to the scoring strategy, and determine a target score for the target process according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

[0009] According to another aspect of the embodiments of this application, an electronic device is provided, including: a memory for storing a computer program; and a processor for executing the computer program to implement the steps of the method for determining any of the above-mentioned scores.

[0010] According to another aspect of the embodiments of this application, a computer-readable storage medium is provided, in which a computer program is stored, wherein when the computer program is executed by a processor, it implements the steps of the method for determining any of the above-mentioned scores.

[0011] According to another aspect of the embodiments of this application, a computer program product is also provided, including a computer program that, when executed by a processor, implements the steps of the method for determining any of the above-described scores.

[0012] This application embodiment obtains a set of runtime data for a target process over a target time period; determines a scoring strategy for each runtime data based on its data type; determines a score corresponding to each runtime data based on the scoring strategy; and determines a target score for the target process based on the score corresponding to each runtime data, wherein the target score indicates the health status of the target process. This application embodiment, by comprehensively collecting multiple types of data, adopting differentiated scoring strategies, performing score fusion and dynamic adjustment, and forming a multi-dimensional target score, effectively solves the limitations and shortcomings of single-indicator evaluation, improving the accuracy and comprehensiveness of process health status assessment. It not only reflects the real-time running status of the process in a timely manner but also predicts potential health risks through historical data analysis, providing strong support for proactive operation and maintenance of distributed storage systems. This solves the problem of low accuracy in related technologies where process health is assessed using a single indicator. Attached Figure Description

[0013] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0014] Figure 1 This is a hardware structure block diagram of a computer device for a scoring determination method according to an embodiment of this application;

[0015] Figure 2 This is a flowchart (a) of a scoring method according to an embodiment of this application;

[0016] Figure 3 This is a flowchart (II) of a scoring method according to an embodiment of this application;

[0017] Figure 4 This is a structural block diagram of a scoring determination device according to an embodiment of this application. Detailed Implementation

[0018] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.

[0019] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0020] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0021] The methods and embodiments provided in this application can be executed in a computer device or similar computing device. Taking running on a computer device as an example, Figure 1 This is a hardware structure block diagram of a computer device for a scoring determination method according to an embodiment of this application. For example... Figure 1 As shown, a computer device may include one or more ( Figure 1Only one is shown in the diagram. A processor 102 (which may include, but is not limited to, a central processing unit, microprocessor, or programmable logic device, etc.) and a memory 104 for storing data are also shown. The computer device may further include a transmission device 106 for communication functions and an input / output device 108. Those skilled in the art will understand that... Figure 1 The structure shown is for illustrative purposes only and does not limit the structure of the computer device described above. For example, the computer device may also include components that are more... Figure 1 The more or fewer components shown, or having the same Figure 1 The different configurations shown.

[0022] The memory 104 can be used to store computer programs, such as application software programs and modules, like the computer program corresponding to the scoring determination method in this embodiment. The processor 102 executes various functional applications and data processing by running the computer program stored in the memory 104, thereby implementing the above-described method. The memory 104 may include high-speed random access memory and may also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memory. In some instances, the memory 104 may further include memory remotely located relative to the processor 102, and these remote memories can be connected to computer devices via a network. Examples of such networks include, but are not limited to, the Internet, corporate intranets, local area networks, mobile communication networks, and combinations thereof.

[0023] The transmission device 106 is used to receive or send data via a network. Specific examples of the network described above may include a wireless network provided by a communication provider for the computer equipment. In one example, the transmission device 106 includes a Network Interface Controller (NIC), which can connect to other network devices via a base station to communicate with the Internet. In another example, the transmission device 106 may be a Radio Frequency (RF) module used for wireless communication with the Internet.

[0024] This embodiment provides a method for determining a score, applied to the aforementioned computer device. Figure 2 This is a flowchart (a) of a scoring method according to an embodiment of this application, as shown below. Figure 2 As shown, the process includes the following steps:

[0025] Step S202: Obtain the set of runtime data for the target time period of the target process;

[0026] First, collect the running data of the target process within a specific time period. The "target time period" can be dynamically set, for example, by adjusting the data collection time window based on system load and time points (such as peak business periods) to better reflect changes in the health status of the process.

[0027] The runtime dataset should include multiple types of data, such as CPU utilization, memory usage, disk I / O latency, and network bandwidth. These data together form the basis for assessing the health status.

[0028] Step S204: Determine the scoring strategy for each running data according to the data type of each running data in the running data set;

[0029] The scoring strategy is based on the data type. Different types of metrics may require different evaluation methods. For example, for CPU utilization, a dynamic threshold-based deduction mechanism may be used; for process status, Boolean state evaluation (normal or abnormal) may be used; and for specific events (such as crashes), an event counting scoring method may be used.

[0030] Step S206: Determine the score corresponding to each running data according to the scoring strategy, and determine the target score of the target process according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

[0031] For each piece of operational data collected, a corresponding score is calculated based on its data type and scoring strategy. The score calculation should take into account the real-time changes and historical trends of the data; for example, differential calculations can be used to assess the rate of change of indicators, and rolling statistics can be used to analyze short-term fluctuations.

[0032] The calculated scores for each operational data point are aggregated, and a weighted aggregation method is used to determine the final target score for the target process. The weighted aggregation can be dynamically adjusted based on the importance of the indicators and historical data to reflect a comprehensive assessment of the process's health status.

[0033] Through the above steps, a set of runtime data for the target process over a target time period is obtained; a scoring strategy for each runtime data is determined based on the data type of each runtime data in the set; a score corresponding to each runtime data is determined based on the scoring strategy; and a target score for the target process is determined based on the score corresponding to each runtime data, wherein the target score is used to indicate the health status of the target process. This embodiment of the application, by comprehensively collecting multiple types of data, adopting differentiated scoring strategies, performing score fusion and dynamic adjustment, and forming a multi-dimensional target score, effectively solves the limitations and shortcomings of single-indicator evaluation, improving the accuracy and comprehensiveness of process health status assessment. It can not only reflect the real-time running status of the process in a timely manner, but also predict potential health risks through historical data analysis, providing strong support for proactive operation and maintenance of distributed storage systems, thereby solving the problem of low accuracy in related technologies where process health is assessed using a single indicator.

[0034] In one exemplary embodiment, determining the score corresponding to each piece of running data according to the scoring strategy includes:

[0035] When the data type is a first data type, determine the rate of change and statistic corresponding to each running data; determine the rate of change threshold and statistic threshold for each running data based on the historical running data corresponding to each running data; determine a first score for each running data based on the rate of change and the rate of change threshold, and determine a second score for each running data based on the statistic and the statistic threshold; determine the score for each running data based on the first score and the second score, wherein the historical running data is the running data of the previous target time period of the target process, and the statistic includes at least one of the following: mean and standard deviation;

[0036] When the data type is a second data type, the running state corresponding to the target process is determined based on each running data; when the running state is a first running state, the historical score of each running data is increased to determine the score corresponding to the running data; when the running state is a second running state, the historical score of each running data is decreased to determine the score corresponding to each running data, wherein the historical score is a score for scoring the historical running data corresponding to the running data;

[0037] When the data type is a third data type, the count value of the target event corresponding to the target process is determined based on each running data; the score corresponding to each running data is determined based on the count value.

[0038] First, for the primary data type (e.g., numerical indicators), calculate its rate of change and statistical measures (such as mean and standard deviation). The rate of change helps quickly identify sudden changes in operational data, while the statistical measures reflect the long-term trend and stability of the data. Based on historical operational data, determine the thresholds for the rate of change and the statistical measures. Utilizing historical data allows for more reasonable threshold settings, adapting to different operational environments and improving the sensitivity and accuracy of scoring.

[0039] By combining the rate of change and statistical measures, a first score and a second score are determined, and then these two scores are combined to obtain the final score. This two-dimensional scoring method can comprehensively reflect the dynamic and static characteristics of the data, improving the reliability of the scoring.

[0040] For the second data type (e.g., Boolean indicators like process status), directly determine whether the current running state is normal. If the state is normal (let's say it's the first running state), increase its historical score; otherwise, decrease it. Adjusting the historical score reflects the persistence of the process state. If the state remains normal and the score gradually increases, it indicates that the process has high stability; conversely, a decreasing score indicates that potential risks are accumulating within the process.

[0041] For the third data type (e.g., counts of specific events such as program crashes), the score is determined directly based on the frequency of the event occurrence. The event count score intuitively reflects the frequency of abnormal behavior of the target process.

[0042] This application's embodiments, by differentiating different types of operational data, employ diverse scoring strategies such as rate of change and statistical analysis, status persistence evaluation, and event counting. By fully considering historical data and current operational conditions, it achieves a comprehensive and accurate assessment of the target process's health status. Compared to traditional assessment methods that rely on only a single indicator, this scheme can more effectively capture various health status signals of the process, providing maintenance personnel with richer fault prevention information and helping to improve the stability and efficiency of distributed storage systems.

[0043] Optionally, in the embodiments of this application, data types with more dimensions, such as environmental factors like temperature and humidity, can also be included.

[0044] In one exemplary embodiment, determining the target score of the target process based on the score corresponding to each running data includes: determining the influence degree of each running data on the cluster corresponding to the target process; determining the weight corresponding to each running data based on the influence degree; and determining the target score of the target process based on the weight corresponding to each running data and the score corresponding to each running data.

[0045] It should be noted that "impact" refers to the degree of influence of various operational data (such as CPU utilization, memory usage, disk I / O latency, etc.) on the overall health of the cluster. It may be based on historical data analysis or set through expert experience, reflecting the importance of different indicators to the cluster status.

[0046] Based on the determined impact levels, each data point is assigned a weight. Data points with higher weights have a greater weight in the target score, and vice versa. Finally, a weighted average is used to combine the score and weight of each data point to calculate the target score for the target process. The weights here consider the impact of the data points on the cluster; therefore, the score fusion not only reflects the current operational status of the target process but also its impact on the overall system stability.

[0047] In this embodiment, by determining the specific impact of runtime data on the cluster, personalized scoring strategies can be provided for different processes, making health assessments more aligned with actual business scenarios. The setting of impact and weight can be dynamic, adjusted based on the cluster's real-time status and historical data analysis. This allows the target score to reflect process health changes in real time, enhancing the timeliness of the assessment.

[0048] In this embodiment, the impact of runtime data on the cluster is accurately calculated, weights are reasonably allocated, and finally, the scores of all runtime data are merged through a weighted average to generate a target score for the target process. This approach not only considers the current runtime status of the target process but also deeply analyzes its impact on the overall health of the cluster, making the evaluation results more accurate and comprehensive.

[0049] In an exemplary embodiment, after determining the target score of the target process based on the score corresponding to each running data, the method further includes: determining the target score of each process in the node corresponding to the target process; determining the score corresponding to the node based on the average of the target scores of each process; determining the score of each node in the cluster corresponding to the node; determining the minimum score of the node in the cluster; and determining the score of the cluster based on the minimum score.

[0050] After determining the target score for the target process, the other processes on the same node are further identified, and their target scores are calculated as well. The average of the target scores of all processes within the node is then used as the node's score. This allows for a more objective reflection of the node's overall health level. If a process within a node has an abnormally low score, but other processes have normal scores, the average score can balance this anomaly, preventing it from having an excessively negative impact on the overall node score.

[0051] After determining the node scores, the health status of the entire cluster is further determined. Each node in the cluster has its own score, and the cluster's score is determined based on the minimum score of these node scores. That is, the health status of the cluster is affected by the least healthy node. Even if most nodes in the cluster have high scores, the presence of just one node with an extremely low score will affect the overall cluster score, as this may indicate a serious risk of failure within the cluster.

[0052] In this embodiment of the application, through this hierarchical scoring mechanism, the technical solution can not only provide a health status assessment of the target process, but also assess the health status of the node where the target process resides and even the entire cluster, ensuring the comprehensiveness and depth of the assessment results. This scoring method considers both the real-time running status of local (processes and nodes) and the global (cluster) health trends, helping the operations and maintenance team to promptly identify and address potential system risks, thereby improving the stability and reliability of the distributed storage system.

[0053] In an exemplary embodiment, after determining the score of the cluster based on the minimum score, the method further includes: determining optimization information of the cluster based on the score of each node, the target score of each process, and the score of each running data, wherein the optimization information is used to indicate the nodes, processes, and running data to be optimized in the cluster; generating an optimization strategy based on the optimization information, and executing the optimization strategy on the cluster.

[0054] After determining the cluster score, further analysis is performed on the scores of each node, each process, and each piece of running data to identify the areas with lower scores. The "optimization information" can be a detailed system check report that specifically identifies which nodes, processes, and running data are weak points in the cluster's health.

[0055] Optimization information includes not only scoring data, but more importantly, it indicates the elements in the cluster that need optimization. These elements could be the node with the lowest score, a specific process on a node, or even a particular piece of runtime data for a process. This helps operations and maintenance personnel quickly locate problems and take targeted measures.

[0056] Optimization strategies are generated based on the optimized information. The formulation of these strategies is based on an analysis of the reasons for low scores, which may include resource reallocation, software upgrades, hardware replacements, or parameter adjustments. The strategies should be specific and feasible, providing clear operational suggestions for each element to be optimized. Finally, the cluster is optimized according to the generated optimization strategies. Some optimization strategies can be scheduled by automated operation and maintenance systems, while others can be implemented with manual intervention. The execution of optimization strategies is orderly, prioritizing the resolution of issues that have the greatest impact on the cluster score and gradually improving the overall health of the cluster.

[0057] Through the embodiments of this application, not only can the health status of the distributed storage system be assessed, but also specific optimization actions can be guided, forming a closed-loop health monitoring and optimization mechanism.

[0058] In an exemplary embodiment, after determining the target score of the target process based on the score corresponding to each running data, the method further includes: a training step: training the Nth decision tree in the fault prediction model using a training dataset to obtain the (N+1)th decision tree, where N is a positive integer; repeatedly executing the training step to obtain a target number of decision trees; inputting the running data set into the fault prediction model so that the target number of decision trees in the fault prediction model determine the fault probability of the target process in the target time period based on the running data; and determining the target fault probability of the target process in the target time period based on the fault probability determined by each decision tree.

[0059] The aforementioned fault prediction model can be understood as an XGBoost model. The training of the XGBoost model is accomplished by iteratively constructing a series of decision trees, each attempting to correct the errors of the previous tree, gradually approaching the optimal model. The "Training Steps" section describes using the training dataset to train the Nth decision tree to obtain the (N+1)th decision tree, where N is an identifier for the number of iterations, ensuring that the model training is performed incrementally.

[0060] By iteratively executing the training steps, the required number of decision trees can be obtained. This means the model will contain multiple decision trees, forming a powerful ensemble model. The number of decision trees directly affects the model's complexity and generalization ability. A reasonable number of decision trees ensures both the model's prediction accuracy and prevents overfitting, guaranteeing the model's performance on new data.

[0061] After the model is trained, by inputting real-time runtime data into the fault prediction model, each decision tree can independently calculate the failure probability of the target process within the target time period. This ensures that even if the prediction of a single decision tree is flawed, the prediction results of the entire ensemble model can still tend to be accurate.

[0062] This application embodiment achieves accurate prediction of the failure probability of a target process in a distributed storage system by constructing and training a fault prediction model.

[0063] In an exemplary embodiment, after determining the target failure probability of the target process in a target time period based on the failure probability determined by each decision tree, the method further includes: if the target failure probability is greater than a preset failure probability, determining the contribution of each running data to the target failure probability according to a target analysis algorithm; and determining the cause of the failure of the target process based on the contribution.

[0064] After the target prediction model predicts the failure probability of the target process within a target time period, the system compares this probability with a preset failure probability threshold. If the predicted failure probability is higher than this threshold, the system initiates a failure cause analysis process. When the target failure probability exceeds the preset threshold, the system uses a target analysis algorithm to calculate the contribution of each piece of runtime data to the target failure probability. Contribution analysis is part of the interpretability of the failure prediction model, revealing which runtime data (such as CPU utilization, memory usage, disk I / O latency, etc.) has the greatest impact on the failure prediction results. In machine learning, interpretive tools such as SHAP (SHapley Additive exPlanations) are typically used for this type of analysis. By analyzing the contribution of each piece of runtime data, the system can determine the specific causes leading to a high failure probability. For example, if the contribution of CPU utilization is significantly higher than other data, operations personnel can initially determine that CPU overload may be the main cause of the failure.

[0065] The analysis of the contribution of operational data in this application provides insights into the causal relationships behind fault prediction results, helping maintenance personnel to quickly locate problems, take targeted optimization measures, and avoid faults.

[0066] To better understand the process of determining the above-mentioned score, the implementation flow of the above-mentioned score determination method will be described below in conjunction with optional embodiments, but this is not intended to limit the technical solution of the embodiments of this application.

[0067] This application provides a method for determining a score, such as... Figure 3 As shown, it includes the following steps:

[0068] Step S301: Collect system-level data and process-level data;

[0069] System-level data acquisition includes collecting key information from the current operating environment via system commands, such as the crash frequency of major processes, abnormal memory consumption, abnormal CPU usage, abnormal disk I / O behavior, and their corresponding timestamps. Process-level data includes information provided by the monitoring (MON) and manager (MGR) processes in the distributed storage system. For example, real-time data on bandwidth, input / output operations per second (IOPS), and latency are extracted from the storage daemon (OSD) level to comprehensively understand the system's health status and predict potential failure risks.

[0070] Step S302: Perform differential calculation and rolling statistics on system-level data and process-level data;

[0071] During the data preparation phase, the raw system-level and process-level data are standardized and cleaned. This process includes: differential calculation of the rate of change of indicators to accurately capture instantaneous fluctuations in indicators; and calculation of short-term rolling averages and standard deviations to understand the short-term trends and stability of the system state. Data preparation provides a structured and standardized foundation for the input data of subsequent health assessment and failure prediction models, ensuring that the model's input data includes both the current state of the cluster and the analysis of historical data.

[0072] In preparing input data for fault prediction, we first identify past service failure points through historical records. Then, we define a forward-looking time window and create data samples for each component at each key time point. These samples are labeled—if a component experiences a failure within the next T time period, it is labeled y=1 (positive sample); otherwise, it is labeled y=0 (negative sample). In addition to collecting monitoring values ​​at the current moment, we also focus on constructing statistical characteristics within the time series, including but not limited to the maximum, minimum, average, and variance within the sliding window, to capture the potential patterns in the system's evolution over time.

[0073] Step S303: Single-indicator health score;

[0074] The health assessment model employs a single-index health scoring strategy to quantitatively evaluate the cluster's health status. The single-index health scoring includes the following methods: 1. Evaluating key OSD metrics such as bandwidth, IOPS, and latency, as well as disk I / O latency information, using a dynamic threshold-based Sigmoid function. Once data exceeds the normal range, the slope of the Sigmoid function increases, resulting in a more significant score deduction, thus quickly reflecting the severity of the anomaly.

[0075] 2. Boolean scoring method: Focus on the UP / DOWN status of the MON monitoring process. A DOWN status results in a deduction of points, ensuring that the system can adjust the health assessment results in a timely manner when a critical component fails.

[0076] 3. The event count score deducts points for the number of process crashes and excessive CPU and memory usage, quantifying the instability factors in system operation.

[0077] Step S304: Determine the health score using a hierarchical weighted aggregation strategy;

[0078] Based on the above scores, the health score of a process is determined by weighting the importance of the cluster health indicators; the health score of a node is determined by the average health score of processes within the node; and the health score of the cluster is determined by the minimum health score of nodes within the cluster.

[0079] Optionally, a deduction list is provided, clearly identifying which metrics, hosts, and OSD processes have low scores that lead to a low overall health score.

[0080] Step S305: Data sampling for the fault prediction model;

[0081] Considering the scarcity of fault samples, a downsampling strategy is first used to balance the ratio of positive and negative samples, preventing the model from favoring the prediction of normal states and improving the sensitivity of fault prediction. During model training, the XGBoost ensemble learning algorithm is employed, which constructs a series of decision trees and iteratively optimizes them. Each tree focuses on correcting the prediction error of the previous tree, ultimately fusing them into a strong model that can accurately capture the nonlinear relationships of the system.

[0082] Step S306: Training the fault prediction model;

[0083] To ensure the model's generalization ability and optimal performance, hyperparameters were meticulously tuned using cross-validation and grid search methods. Based on the partitioning of the training and validation sets, cross-validation was used to evaluate the model's robustness, while grid search was employed to find the optimal combination of hyperparameters to achieve the best predictive performance on the validation set.

[0084] Step S307: Inference prediction of the fault prediction model.

[0085] The real-time data stream is processed through a feature engineering pipeline consistent with the training process to obtain feature vectors that match the trained model. These vectors are then input into the model for forward computation. Through a Sigmoid function transformation, the real-time generated features are converted into probability values ​​between 0 and 1, intuitively reflecting the likelihood of the cluster failing within the next time interval T. To interpret the model's predictions, the Shapley Additive Explanations (SHAP) analysis tool is used. This tool accurately calculates the contribution of each feature to the prediction results, providing operations personnel with in-depth analysis of the root causes of failures, thereby enabling precise fault prevention and handling.

[0086] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the related technology, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as read-only memory (ROM), random access memory (RAM), magnetic disk, optical disk), and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0087] This embodiment also provides a scoring determination device for implementing the above embodiments and preferred embodiments; details already described will not be repeated. As used below, the term "module" can be a combination of software and / or hardware that implements a predetermined function. Although the device described in the following embodiments is preferably implemented in software, hardware implementation, or a combination of software and hardware, is also possible and contemplated.

[0088] Figure 4 This is a structural block diagram of a scoring determination device according to an embodiment of this application, such as... Figure 4 As shown, the device includes:

[0089] The acquisition module 42 is used to acquire the set of runtime data for the target process during the target time period;

[0090] The first determining module 44 is used to determine the scoring strategy for each running data according to the data type of each running data in the running data set;

[0091] The second determining module 46 is used to determine the score corresponding to each running data according to the scoring strategy, and to determine the target score of the target process according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

[0092] The aforementioned apparatus acquires a set of runtime data for a target process over a target time period; determines a scoring strategy for each runtime data based on its data type; determines a score corresponding to each runtime data based on the scoring strategy; and determines a target score for the target process based on the score corresponding to each runtime data, wherein the target score indicates the health status of the target process. This embodiment effectively addresses the limitations and shortcomings of single-indicator evaluation by comprehensively collecting multiple types of data, employing differentiated scoring strategies, performing score fusion and dynamic adjustment, and forming a multi-dimensional target score. This improves the accuracy and comprehensiveness of process health status assessment. It not only reflects the real-time running status of the process in a timely manner but also predicts potential health risks through historical data analysis, providing strong support for proactive operation and maintenance of distributed storage systems. This solves the problem of low accuracy in related technologies where process health is assessed using a single indicator.

[0093] In an exemplary embodiment, the second determining module 46 is configured to: determine the rate of change and statistic corresponding to each running data when the data type is a first data type; determine a rate of change threshold and a statistic threshold for each running data based on historical running data corresponding to each running data; determine a first score for each running data based on the rate of change and the rate of change threshold; and determine a second score for each running data based on the statistic and the statistic threshold; and determine a score for each running data based on the first score and the second score, wherein the historical running data is the running data of the previous target time period of the target process, and the statistic includes at least one of the following: mean and standard deviation;

[0094] When the data type is a second data type, the running state corresponding to the target process is determined based on each running data; when the running state is a first running state, the historical score of each running data is increased to determine the score corresponding to the running data; when the running state is a second running state, the historical score of each running data is decreased to determine the score corresponding to each running data, wherein the historical score is a score for scoring the historical running data corresponding to the running data;

[0095] When the data type is a third data type, the count value of the target event corresponding to the target process is determined based on each running data; the score corresponding to each running data is determined based on the count value.

[0096] In an exemplary embodiment, the second determining module 46 is configured to determine the degree of influence of each running data on the cluster corresponding to the target process; determine the weight corresponding to each running data according to the degree of influence; and determine the target score of the target process according to the weight corresponding to each running data and the score corresponding to each running data.

[0097] In one exemplary embodiment, the second determining module 46 is configured to: determine the target score of each process in the node corresponding to the target process; determine the score corresponding to the node based on the average of the target scores of each process; determine the score of each node in the cluster corresponding to the node; determine the minimum score of the node in the cluster; and determine the score of the cluster based on the minimum score.

[0098] In an exemplary embodiment, the first determining module 44 is configured to determine optimization information of the cluster based on the score of each node, the target score of each process, and the score of each running data, wherein the optimization information is used to indicate the nodes, processes, and running data to be optimized in the cluster; generate an optimization strategy based on the optimization information, and execute the optimization strategy on the cluster.

[0099] In an exemplary embodiment, the above apparatus further includes: a prediction module, configured for the following training steps: training the Nth decision tree in the fault prediction model using a training dataset to obtain the (N+1)th decision tree, where N is a positive integer; repeatedly executing the training steps to obtain a target number of decision trees; inputting the running data set into the fault prediction model so that the target number of decision trees in the fault prediction model determine the fault probability of the target process in a target time period based on the running data; and determining the target fault probability of the target process in the target time period based on the fault probability determined by each decision tree.

[0100] In an exemplary embodiment, the prediction module is configured to, when the target failure probability is greater than a preset failure probability, determine the contribution of each piece of running data to the target failure probability according to a target analysis algorithm; and determine the cause of failure of the target process according to the contribution.

[0101] It should be noted that the description of the features in the embodiment corresponding to the scoring determination device can be found in the relevant description of the embodiment corresponding to the scoring determination method, and will not be repeated here.

[0102] Embodiments of this application also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above-described scoring determination method embodiments.

[0103] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above-described scoring determination method embodiments when it runs.

[0104] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.

[0105] Embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above-described scoring determination method embodiments.

[0106] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above-described scoring determination method embodiments.

[0107] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0108] The foregoing has provided a detailed description of a scoring method, apparatus, storage medium, and electronic device provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to aid in understanding the method and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of the claims of this application.

Claims

1. A method for determining a score, characterized in that, include: Obtain the set of runtime data for the target process over the target time period; The scoring strategy for each running data is determined based on the data type of each running data in the running data set; The score corresponding to each running data is determined according to the scoring strategy, and the target score of the target process is determined according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

2. The method according to claim 1, characterized in that, The score for each piece of running data is determined according to the scoring strategy, including: When the data type is a first data type, determine the rate of change and statistic corresponding to each running data; determine the rate of change threshold and statistic threshold for each running data based on the historical running data corresponding to each running data; determine a first score for each running data based on the rate of change and the rate of change threshold, and determine a second score for each running data based on the statistic and the statistic threshold; determine the score for each running data based on the first score and the second score, wherein the historical running data is the running data of the previous target time period of the target process, and the statistic includes at least one of the following: mean and standard deviation; When the data type is a second data type, the running state corresponding to the target process is determined based on each running data; when the running state is a first running state, the historical score of each running data is increased to determine the score corresponding to the running data; when the running state is a second running state, the historical score of each running data is decreased to determine the score corresponding to each running data, wherein the historical score is a score for scoring the historical running data corresponding to the running data; When the data type is a third data type, the count value of the target event corresponding to the target process is determined based on each running data; the score corresponding to each running data is determined based on the count value.

3. The method according to claim 1, characterized in that, The target score for the target process is determined based on the score corresponding to each piece of running data, including: Determine the degree of impact of each piece of runtime data on the cluster corresponding to the target process; The weight corresponding to each running data is determined based on the influence, and the target score of the target process is determined based on the weight and the score corresponding to each running data.

4. The method according to claim 1, characterized in that, After determining the target score of the target process based on the score corresponding to each running data, the method further includes: Determine the target score for each process in the node corresponding to the target process; The score corresponding to the node is determined based on the average of the target scores of each process; Determine the score of each node in the cluster corresponding to the node, and determine the minimum score of the node in the cluster; The cluster's score is determined based on the minimum score.

5. The method according to claim 4, characterized in that, After determining the cluster's score based on the minimum score, the method further includes: The optimization information of the cluster is determined based on the score of each node, the target score of each process, and the score of each running data, wherein the optimization information is used to indicate the nodes, processes, and running data in the cluster that need to be optimized. An optimization strategy is generated based on the optimization information, and the optimization strategy is executed on the cluster.

6. The method according to claim 1, characterized in that, After determining the target score of the target process based on the score corresponding to each running data, the method further includes: Training steps: Train the Nth decision tree in the fault prediction model using the training dataset to obtain the (N+1)th decision tree, where N is a positive integer; The training steps are repeated cyclically to obtain a target number of decision trees; The set of operational data is input into the fault prediction model so that the decision tree of the target number in the fault prediction model can determine the failure probability of the target process in the target time period based on the operational data. The target failure probability of the target process in the target time period is determined based on the failure probability determined by each decision tree.

7. The method according to claim 6, characterized in that, After determining the target failure probability of the target process within the target time period based on the failure probability determined by each decision tree, the method further includes: If the target failure probability is greater than the preset failure probability, the contribution of each piece of operational data to the target failure probability is determined according to the target analysis algorithm. The cause of failure in the target process is determined based on the contribution level.

8. A scoring determination device, characterized in that, include: The acquisition module is used to acquire the set of runtime data for the target process over the target time period; The first determining module is used to determine the scoring strategy for each running data according to the data type of each running data in the running data set; The second determining module is used to determine the score corresponding to each running data according to the scoring strategy, and to determine the target score of the target process according to the score corresponding to each running data, wherein the target score is used to indicate the health status of the target process.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the method described in any one of claims 1 to 7.

10. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the steps of the method described in any one of claims 1 to 7.