Methods, devices, equipment, media, and products for determining server cluster capacity.

By combining storage capacity and network performance data and using a model that estimates the proportion of allocated capacity, the problem of inaccurate server cluster capacity prediction is solved, enabling more precise capacity management and resource utilization.

CN120785892BActive Publication Date: 2026-04-07CHINA MOBILE (SUZHOU) SOFTWARE TECH CO LTD +1
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-04
Publication Date
2026-04-07

AI Technical Summary

Technical Problem

In existing technologies, server cluster capacity management strategies mainly focus on storage capacity itself, resulting in inflated capacity predictions that fail to accurately reflect the system's actual load capacity.

Method used

By acquiring storage capacity and network performance data of the server cluster, inputting the allocated capacity ratio prediction model, and combining the over-allocation rate, the estimated allocated capacity ratio of the target server cluster is determined, and based on the estimated value and the actual value, the current total allocatable capacity is determined.

Benefits of technology

It improves the accuracy and reliability of server cluster capacity estimation, ensures the matching of resource utilization, and prevents resource waste and over-allocation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120785892B_ABST
    Figure CN120785892B_ABST
Patent Text Reader

Abstract

This disclosure relates to the field of cloud computing technology, and in particular provides a method, apparatus, device, medium, and product for determining the capacity of a server cluster. The method includes: acquiring current storage capacity data and network performance data of a target server cluster to be evaluated; inputting the storage capacity data and network performance data into an allocated capacity ratio prediction model to obtain an estimated allocated capacity ratio of the target server cluster, wherein the allocated capacity ratio is the ratio of allocated capacity to over-allocated capacity, the over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate, and the over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated; and determining the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio. This disclosure improves the accuracy of server cluster capacity prediction.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This disclosure relates to the field of cloud computing technology, and in particular to a method, apparatus, device, medium and product for determining server cluster capacity. Background Technology

[0002] In the fields of cloud computing and distributed storage, cloud service providers typically divide physical server capacity into multiple virtual servers and rent these virtual servers to users. However, after users obtain a certain amount of storage space, there are situations where the storage space utilization rate is less than 100%. In order to improve the utilization rate and profitability of storage resources, cloud service providers usually allocate more storage capacity to users.

[0003] In related technologies, by monitoring and managing the storage capacity of the server cluster, it is possible to determine which capacity pools have available capacity and which capacity pools have exhausted their available capacity, thereby dynamically adjusting and allocating the capacity to prevent the capacity allocated to users from exceeding the actual load capacity of the server cluster.

[0004] However, the capacity management strategies for server clusters provided in related technologies usually focus primarily on the storage capacity of the server cluster itself, resulting in inflated capacity predictions for the server cluster that fail to accurately reflect the actual load capacity of the system. Summary of the Invention

[0005] This disclosure is made in view of the above-mentioned problems. This disclosure provides a method, apparatus, device, medium, and product for determining server cluster capacity, which can improve the accuracy of server cluster capacity prediction.

[0006] According to a first aspect of this disclosure, a method for determining server cluster capacity is provided, comprising:

[0007] Obtain the current storage capacity and network performance data of the target server cluster to be evaluated;

[0008] The storage capacity data and network performance data are input into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio of the target server cluster. The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated.

[0009] Based on the estimated allocated capacity ratio and the actual allocated capacity ratio, the current total allocatable capacity of the target server cluster is determined.

[0010] According to a second aspect of this disclosure, a server cluster capacity determination apparatus is provided, comprising:

[0011] The acquisition module is configured to acquire the current storage capacity and network performance data of the target server cluster to be evaluated.

[0012] The estimation module is configured to input the storage capacity data and network performance data into the allocated capacity ratio estimation model to obtain the estimated allocated capacity ratio of the target server cluster. The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated.

[0013] The determination module is configured to determine the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio.

[0014] According to a third aspect of this disclosure, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory, wherein the processor executes the computer program to implement the method of the first aspect.

[0015] According to a fourth aspect of this disclosure, a computer-readable storage medium is provided having a computer program stored thereon that, when executed by a processor, implements the steps of the method described in the first aspect.

[0016] According to a fifth aspect of this disclosure, a computer program product is provided, including a computer program that, when executed by a processor, implements the steps of the method described in the first aspect.

[0017] The server cluster capacity determination method, apparatus, device, medium, and product provided in this disclosure can determine the estimated value of the current allocated capacity ratio of a target server cluster based on the server cluster's current storage capacity data and performance index data. Based on the estimated value of the current allocated capacity ratio and the actual allocated capacity ratio, the current total allocatable capacity of the target server cluster can be determined. Since the data of the server cluster in the storage capacity and performance dimensions are referenced in the process of estimating the allocated capacity ratio, the matching degree between the determined estimated allocated capacity ratio and the current actual performance of the server cluster can be improved, thereby improving the accuracy and reliability of the finally determined current total allocatable capacity.

[0018] It should be understood that both the foregoing general description and the following detailed description are exemplary and intended to provide further illustration of the claimed technology. Attached Figure Description

[0019] The above and other objects, features, and advantages of this disclosure will become more apparent from the more detailed description of the embodiments thereof in conjunction with the accompanying drawings. The drawings are provided to further illustrate the embodiments of this disclosure and form part of the specification. They are used together with the embodiments of this disclosure to explain the disclosure and do not constitute a limitation thereof. In the drawings, the same reference numerals generally represent the same components or steps.

[0020] Figure 1 This is a schematic diagram illustrating an implementation scenario of the server cluster capacity determination scheme according to an embodiment of this disclosure.

[0021] Figure 2 This is a flowchart of a method for determining the capacity of a server cluster according to an embodiment of this disclosure.

[0022] Figure 3 This is a block diagram of a server cluster capacity determination device according to an embodiment of the present disclosure.

[0023] Figure 4 This is a schematic diagram illustrating a computer program product according to an embodiment of the present disclosure.

[0024] Figure 5 This is a hardware block diagram illustrating an electronic device according to an embodiment of the present disclosure. Detailed Implementation

[0025] To make the objectives, technical solutions, and advantages of this disclosure more apparent, exemplary embodiments according to this disclosure will now be described in detail with reference to the accompanying drawings. Obviously, the described embodiments are merely some embodiments of this disclosure, and not all embodiments of this disclosure. It should be understood that this disclosure is not limited to the exemplary embodiments described herein.

[0026] To address the aforementioned problems, this disclosure provides a server cluster capacity determination scheme, such as... Figure 1 As shown, Figure 1 This illustration shows a schematic diagram of an implementation scenario for a server cluster capacity determination scheme provided by an exemplary embodiment of this disclosure. For example... Figure 1 As shown, the implementation scenario 100 includes a server cluster 101 and a terminal device 102. The server cluster 101 is a server cluster in a cloud system or a distributed system, and the number of server clusters may include at least one. The terminal device 102 is a terminal device used for evaluating the capacity of the server cluster. The terminal device may be a computer, laptop, tablet, mobile phone, or micro server, etc.

[0027] In this embodiment, a communication link can be established between each server cluster 101 and the terminal device 102 to implement the server cluster capacity determination scheme provided in this disclosure.

[0028] Figure 2 A flowchart illustrating an exemplary embodiment of the present disclosure of a method for determining the capacity of a server cluster is shown. This method can be applied to the server side, such as... Figure 2 As shown, the method in this embodiment of the disclosure may include:

[0029] Step S201: Obtain the current storage capacity and network performance data of the target server cluster to be evaluated;

[0030] Step S202: Input the storage capacity data and network performance data into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio of the target server cluster.

[0031] The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated.

[0032] Step S203: Based on the estimated allocated capacity ratio and the actual allocated capacity ratio, determine the current total allocatable capacity of the target server cluster;

[0033] In summary, the server cluster capacity determination method provided in this disclosure can determine the estimated value of the current allocated capacity ratio of the target server cluster based on the current storage capacity data and performance index data of the server cluster, and determine the current total allocatable capacity of the target server cluster based on the estimated value of the current allocated capacity ratio and the actual allocated capacity ratio. Since the data of the server cluster in the storage capacity dimension and performance dimension are referenced in the process of estimating the allocated capacity ratio, the matching degree between the determined estimated allocated capacity ratio and the current actual performance of the server cluster can be improved, thereby improving the accuracy and reliability of the finally determined current total allocatable capacity.

[0034] The following are Figure 2 The specific implementation methods of each step in the illustrated embodiment are described in detail below:

[0035] In step S201, the terminal device obtains the current storage capacity data and network performance data of the target server cluster to be evaluated.

[0036] In this embodiment of the disclosure, the storage capacity data includes information such as the total storage capacity of the hard disks in the target server cluster, the occupied capacity, the remaining capacity, and the expandable capacity. The storage capacity data is used to characterize the data storage capability of the server cluster. The network performance data includes latency, jitter, packet loss, bandwidth, and read / write operations per second (Input / Output PerSecond, IOPS). The network performance data is used to characterize the network status of the server cluster.

[0037] It should be noted that, in the embodiments of this disclosure, the terminal device can periodically determine the capacity information of the server cluster, or the terminal device can determine the capacity information of the server cluster after detecting a server cluster capacity determination instruction issued by the user; specifically, it can be determined based on actual needs, and this disclosure does not limit this. The period for the terminal device to determine the capacity information of the server cluster can be configured based on actual needs, and this disclosure does not limit this. For example, the terminal device can re-evaluate the total capacity of the server cluster every 24 hours.

[0038] In one optional implementation, the process by which the terminal device obtains the current storage capacity data and network performance data of the target server cluster to be evaluated includes: at the start of the current server cluster capacity evaluation period, sending a parameter acquisition instruction to the target server in the target server cluster, and receiving the current storage capacity data and network performance data of the target server cluster returned by the target server in response to the parameter acquisition instruction. The target server cluster may be a server cluster that needs to be periodically evaluated among multiple server clusters pre-configured by the user; the target server in the target server cluster may be the central server or any server in the server cluster.

[0039] In one optional implementation, the process by which the terminal device obtains the current storage capacity data and network performance data of the target server cluster to be evaluated includes: in response to obtaining a server cluster capacity determination instruction, obtaining the target server cluster identifier in the server cluster capacity determination instruction, sending a parameter acquisition instruction to the target server in the target server cluster associated with the target server cluster identifier, and receiving the response from the target server in response to the parameter acquisition instruction; wherein the server cluster capacity determination instruction is obtained by the terminal device in response to a user operation.

[0040] In step S202, the terminal device inputs the storage capacity data and network performance data into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio of the target server cluster.

[0041] In this embodiment of the disclosure, the allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated. The value of the over-allocation rate can be determined based on actual needs, and this embodiment of the disclosure does not limit it. It is understood that the over-allocation rate is greater than or equal to 1.

[0042] For example, assuming the total storage capacity of the target server cluster is 100T, if the over-segmentation rate is 2, then the over-segmentation capacity of the target server cluster is 200T; if the over-segmentation rate is 1.5, then the over-segmentation capacity of the target server cluster is 150T.

[0043] It should be noted that, in the embodiments of this disclosure, the allocated capacity ratio prediction model can be a pre-trained neural network model. The specific architecture of the allocated capacity ratio prediction model can be determined based on actual needs, and this disclosure does not limit it. For example, the allocated capacity ratio prediction model includes an input layer, multiple hidden layers, and an output layer.

[0044] In one optional implementation, the process of training the allocated capacity ratio prediction model for the terminal device may include: acquiring a sample dataset and dividing the sample dataset into a training set and a test set; then, iteratively training the allocated capacity ratio prediction model to be trained based on the training set to obtain the allocated capacity ratio prediction model to be evaluated; further, evaluating the allocated capacity ratio prediction model to be evaluated based on the test set to obtain an evaluation result; finally, if the evaluation result indicates that the allocated capacity ratio prediction model has converged, determining that the allocated capacity ratio prediction model has been trained; or, if the evaluation result indicates that the allocated capacity ratio prediction model has not converged, repeating the above process of iteratively training and evaluating the allocated capacity ratio prediction model until the evaluation result indicates that the allocated capacity ratio prediction model has converged.

[0045] It should be noted that, in this embodiment of the disclosure, the sample dataset includes multiple sample data, each sample data including the original sample feature data of the sample server cluster, and the label value corresponding to the original sample feature data. The original sample feature data includes sample storage capacity data and sample network performance data, and the label value is the proportion of the sample's allocated capacity. The sample data may be recorded by the sample server cluster during its historical operation. The ratio of the amount of sample data in the training set and the test set can be determined based on actual needs, and this embodiment of the disclosure does not limit this. For example, the ratio of the amount of sample data in the training set and the test set may be 8:2.

[0046] Optionally, to further improve the training efficiency of the model, the terminal device can use batch sample data for each training process. The terminal device iteratively trains the allocated capacity ratio prediction model to be trained based on the training set to obtain the allocated capacity ratio prediction model to be evaluated. This process may include: dividing multiple sample data sets in the training set into multiple sample data subsets, and repeatedly inputting multiple original sample feature data sets from each sample data subset into the allocated capacity ratio prediction model to be trained, obtaining the estimated allocated capacity ratio corresponding to each original sample feature data set; then, based on each... The process involves iterating through the following steps: estimating the allocated capacity ratio and label value corresponding to each original sample feature data; determining the gradient of the loss function corresponding to each original sample feature data; updating the model parameters of the allocated capacity ratio estimation model based on the model parameter update formula; and iterating through the model parameters of the loss function corresponding to each original sample feature data a preset number of times to obtain the allocated capacity ratio estimation model to be evaluated. The preset number of iterations can be determined based on actual needs, and this embodiment does not limit this number. For example, the preset number of iterations can be 3000 or 2000.

[0047] For example, in the case where a subset of sample data includes n samples, the matrix composed of multiple original sample feature data in the subset can be:

[0048] ;(Formula 1)

[0049] In Formula 1, It is the sample network performance data of the i-th original sample feature data. It is the sample storage capacity data of the i-th original sample feature data.

[0050] The matrix consisting of the label values ​​corresponding to the original sample feature data in the sample dataset can be:

[0051] ;(Formula 2)

[0052] In Formula 2, These are the label values ​​corresponding to the original sample feature data.

[0053] The process for obtaining the estimated allocated capacity ratio for each sample data subset involves the following steps: First, a matrix composed of multiple original sample feature data from the sample data subset is transmitted to the input layer to obtain a sample feature data matrix to be processed. Next, this matrix is ​​input to the first hidden layer for feature extraction to obtain an initial sample feature data matrix. Then, the initial sample feature data matrix is ​​sequentially input into multiple hidden layers for multiple feature extractions to obtain a sample feature data matrix to be identified. Finally, the sample feature data matrix to be identified is input to the output layer for feature recognition to obtain a matrix of estimated allocated capacity ratios corresponding to each original sample feature data in the sample data subset. This approach learns the relationship between the allocated capacity ratio of the server cluster and its storage capacity and network performance through multiple hidden layers, thereby improving the reliability of the estimated allocated capacity ratio based on the server cluster's storage capacity and network performance.

[0054] It should be noted that, in this embodiment of the disclosure, the process of the terminal device inputting the feature data matrix of the sample to be processed into the first hidden layer for feature extraction to obtain the initial sample feature data matrix can be implemented based on the first formula, wherein the first formula is:

[0055] ;(Formula 3)

[0056] In formula 3, The initial sample feature data matrix, The matrix of sample feature data to be processed is d, where d is the dimension of the original sample feature data. Let m be the weight matrix of the first hidden layer, and m be the number of neurons in the first hidden layer. This is the bias term for the first hidden layer; optionally, the bias term on each neuron can be the same. This is the activation function.

[0057] The process by which the terminal device sequentially inputs the initial sample feature data matrix into multiple hidden layers for multiple feature extractions to obtain the feature data matrix of the sample to be identified can be achieved based on the second formula, which is:

[0058] ;(Formula 4)

[0059] In formula 4, It is the first The output matrix of each hidden layer It is the first The number of neurons in each hidden layer; It is the first The weight matrix of each hidden layer It is the first The number of neurons in each hidden layer; It is the first The bias term of the hidden layer.

[0060] The process by which the terminal device inputs the feature data matrix of the sample to be identified into the output layer for feature recognition, and obtains the matrix of estimated allocated capacity ratios corresponding to each original sample feature data in the sample data subset, can be achieved based on the third formula, which is:

[0061] ;(Formula 5)

[0062] In Formula 5, It is the output matrix of the output layer, which is also the matrix of the estimated allocated capacity ratio of each original sample feature data in the sample data subset. mL is the number of neurons in the output layer. It is the weight matrix of the output layer, representing the linear transformation from the last layer to the output; It is the bias term of the output layer.

[0063] It should also be noted that, in the process of determining the loss function value corresponding to each original sample feature data based on the estimated allocated capacity ratio and label value corresponding to each original sample feature data, and the loss function, the loss function is as follows:

[0064] ;(Formula 6)

[0065] In Formula 6, The value of the loss function. Let be the initial loss function, and . Here, λ is the regularization term, which is a hyperparameter controlling the penalty strength; θ is the weight parameter in the model, containing the weight matrix and bias vector between all layers; m is the number of weight parameters; and the initial loss function is also included. for:

[0066] ;(Formula 7)

[0067] In Formula 7, , It is the prediction error. This is the estimated proportion of allocated capacity in the sample. For label values, These are hyperparameters, and their specific values ​​can be determined based on actual needs. This disclosure does not limit the specific parameters used in this embodiment.

[0068] Simultaneously, the process of updating the model parameters of the allocated capacity ratio prediction model based on the model parameter update formula and the gradient of the loss function corresponding to each original sample feature data includes: initializing the gradient matrix, decay factor, learning rate, and stability constant to obtain the model hyperparameters; then, determining the gradient of the loss function corresponding to each original sample feature data; and finally, updating the model parameters of the allocated capacity ratio prediction model based on the model hyperparameters, the model parameter update formula, and the gradient of the loss function corresponding to each original sample feature data.

[0069] The gradient of the loss function corresponding to each original sample feature data is:

[0070] ;(Formula 8)

[0071] In Formula 8, The gradient of the loss function. Let the gradient of the initial loss function be , and . Let be the gradient of the regularization term. The gradient of the initial loss function is expressed as:

[0072] ;(Formula 9)

[0073] Optionally, during the update of the model parameters based on Adaptive Moment Estimation (Adam), the gradient matrix includes a first-order gradient matrix and a second-order gradient matrix. The first-order gradient matrix is:

[0074] ;(Formula 10)

[0075] In Formula 10, This is the first-order gradient matrix for this iteration. The decay factor of the first-order gradient, This is the first-order gradient matrix from the previous iteration. This is the gradient of the loss function.

[0076] And, the second-order gradient matrix is:

[0077] ;(Formula 11)

[0078] In Formula 11, This is the second-order gradient matrix for this iteration. The attenuation factor for the second-order gradient. This is the second-order gradient matrix from the previous iteration.

[0079] The model parameter update formula is as follows:

[0080] ;(Formula 12)

[0081] In Formula 12, For the updated model parameters, These are the model parameters before the update. This is the correction value for the second-order gradient matrix. For learning rate, This is a stability constant, which can be determined based on actual needs. Here is the correction value for the first-order gradient matrix, where the correction value for the first-order gradient matrix is:

[0082] ;(Formula 13)

[0083] In Formula 13, These are the correction coefficients for the first-order gradient matrix, which can be determined based on actual needs.

[0084] The correction value for the second-order gradient matrix is:

[0085] ;(Formula 14)

[0086] In Formula 14, These are the correction coefficients for the second-order gradient matrix, which can be determined based on actual needs.

[0087] Optionally, the process of evaluating the allocated capacity ratio prediction model based on the test set to obtain the evaluation result may include: inputting the feature data of each sample in the test set into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio associated with each sample feature data; then, determining the evaluation result based on the estimated allocated capacity ratio associated with each sample feature data and the evaluation model; wherein, the evaluation model may be:

[0088] ;(Formula 15)

[0089] In Formula 15, It is an evaluation parameter value. It is the proportion of the estimated allocated capacity of the sample associated with the feature data of the i-th sample. It is the label value associated with the feature data of the i-th sample. It is the average label value associated with the feature data of all samples in the test set.

[0090] It should be noted that, in this embodiment of the disclosure, if the first difference between the evaluation parameter values ​​and 1 is less than the first difference threshold, and the second difference between the evaluation parameter values ​​is less than the second difference threshold, the estimated model for the allocated capacity ratio to be evaluated is determined to be converged; wherein, the first difference threshold and the second difference threshold can be determined based on actual needs, and this embodiment of the disclosure does not limit them.

[0091] In one optional implementation, the terminal device can input the storage capacity data and network performance data into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio of the target server cluster.

[0092] It is understandable that the allocated capacity ratio prediction model is trained based on the model training method in the above embodiments.

[0093] In step S203, the terminal device determines the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio.

[0094] In this embodiment of the disclosure, the currently allocable total capacity is the total capacity currently allowed to be allocated in the target server cluster.

[0095] In one optional implementation, the process by which the terminal device determines the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio may include: if the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, then the product of the estimated allocated capacity ratio and the over-allocation rate is determined to obtain a corrected allocated capacity ratio; then, the ratio of the allocated storage capacity to the corrected allocated capacity ratio is determined to obtain the current total allocatable capacity of the target server cluster. It is possible that if the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, it can be determined that the available resources of the target server cluster are insufficient. A more reasonable current total allocatable capacity of the target server cluster can be determined by using the estimated allocated capacity ratio, the over-allocation rate, and the allocated storage capacity.

[0096] It should be noted that, in this embodiment of the disclosure, since the allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity, and the over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate, when the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, and the over-allocation rate and allocated storage capacity are known quantities, a more reasonable current allocable total capacity of the target server cluster can be determined based on the estimated allocated capacity ratio, the over-allocation rate, and the allocated storage capacity, so as to improve the effective utilization of resources.

[0097] Where the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, the process by which the terminal device determines the current total allocatable capacity of the target server cluster can be based on the fourth formula, which is:

[0098] ;(Formula 16)

[0099] In Formula 16, total_cap represents the current total allocatable capacity of the target server cluster, and provisioned_capacity represents the allocated storage capacity. The subscription_ratio is the over-allocation rate used to estimate the proportion of allocated capacity.

[0100] In one optional implementation, the process by which the terminal device determines the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio may include: if the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, then the total storage capacity of the target server cluster is determined as the current total allocatable capacity of the target server cluster. This approach can prevent resource waste in scenarios where the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, indicating that the utilization rate of the target server cluster's storage space or network performance is low.

[0101] Where the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, the process by which the terminal device determines the current total allocatable capacity of the target server cluster can be based on the fifth formula, which is:

[0102] total_cap = total_capacity; (Formula 17)

[0103] In Formula 17, total_capacity is the total storage capacity of the target server cluster.

[0104] In one optional implementation, the terminal device can further determine the difference between the total storage capacity and the current remaining storage capacity of the target server cluster to obtain the currently allocated capacity of the target server cluster; then, it determines the difference between the current total allocatable capacity and the currently allocated capacity of the target server cluster to obtain the current remaining allocatable capacity of the target server cluster. Determining the current remaining allocatable capacity of the target server cluster after determining the current total allocatable capacity improves the richness of the obtained capacity information of the target server cluster, thereby providing a more accurate reference indicator for resource allocation of the server cluster.

[0105] The process by which the terminal device determines the current remaining allocable capacity of the target server cluster can be implemented based on the sixth formula, which is:

[0106] free_cap = total_cap - (total_capacity- free_capacity); (Formula 18)

[0107] In Formula 18, free_cap is the current remaining allocable capacity, and free_capacity is the current remaining storage capacity.

[0108] In one optional implementation, if the terminal device determines that the current remaining allocable capacity of the target server cluster is negative, it determines the difference between the target parameter value and the estimated allocated capacity ratio to obtain the estimated unallocated capacity ratio. Then, it determines the product of the total storage capacity of the target server cluster and the estimated unallocated capacity ratio to obtain the updated current remaining allocable capacity of the target server cluster; wherein the target parameter value is 1. This allows for correction of the current remaining allocable capacity of the target server cluster when it is negative, thereby improving the reliability of the determined current remaining allocable capacity.

[0109] The process by which the terminal device determines the updated remaining allocable capacity can be implemented based on the seventh formula, which is:

[0110] ;(Formula 19)

[0111] In an optional implementation, before the terminal device determines the current allocatable total capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio, the terminal device may further: if it is determined that the current latency rate is greater than or equal to a latency rate threshold, and the estimated allocated capacity ratio is less than the allocated capacity ratio threshold, then the allocated capacity ratio threshold is determined as the updated estimated allocated capacity ratio. This can determine that the current network performance is poor when the current latency rate is greater than or equal to the latency rate threshold. If the estimated allocated capacity ratio is less than the allocated capacity ratio threshold, then the estimated allocated capacity ratio needs to be increased to estimate the current allocatable total capacity of the target server cluster. This achieves the purpose of further considering the current network conditions of the target server cluster when estimating the current allocatable total capacity, thereby determining a current allocatable total capacity that is more compatible with the current hardware and network conditions, and improving the reliability of the determined current allocatable total capacity.

[0112] It is understandable that, after updating the estimated allocated capacity ratio, the process by which the terminal device determines the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio may include: determining the current total allocatable capacity of the target server cluster based on the updated estimated allocated capacity ratio and the actual allocated capacity ratio.

[0113] It should be noted that the process by which the terminal device determines the current total allocatable capacity of the target server cluster based on the updated estimated allocated capacity ratio and the actual allocated capacity ratio can be referred to in the above embodiments. The process by which the terminal device determines the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio is not described in detail in this embodiment.

[0114] An exemplary embodiment of this disclosure provides a server cluster capacity determination apparatus, which may be a terminal device or a chip applied to a terminal device. Figure 3 A schematic block diagram of the functional modules of a server cluster capacity determination apparatus according to an exemplary embodiment of the present disclosure is shown. Figure 3 As shown, the server cluster capacity determination device 300 includes:

[0115] The acquisition module 301 is configured to acquire the current storage capacity data and network performance data of the target server cluster to be evaluated.

[0116] The estimation module 302 is configured to input the storage capacity data and network performance data into the allocated capacity ratio estimation model to obtain the estimated allocated capacity ratio of the target server cluster. The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated.

[0117] The determination module 303 is configured to determine the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio.

[0118] Optionally, the determining module 303 is configured to:

[0119] If the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, then the product of the estimated allocated capacity ratio and the over-allocation rate is determined to obtain the corrected allocated capacity ratio.

[0120] The ratio of the allocated storage capacity to the corrected allocated capacity ratio is determined to obtain the current total allocatable capacity of the target server cluster.

[0121] Optionally, the determining module 303 is configured to:

[0122] If the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, then the total storage capacity of the target server cluster is determined as the current total allocatable capacity of the target server cluster.

[0123] Optionally, the determining module 303 is further configured to:

[0124] The difference between the total storage capacity and the current remaining storage capacity of the target server cluster is determined to obtain the current allocated capacity of the target server cluster.

[0125] The difference between the current total allocable capacity of the target server cluster and the currently allocated capacity is determined to obtain the current remaining allocable capacity of the target server cluster.

[0126] Optionally, the determining module 303 is further configured to:

[0127] If the current remaining allocable capacity of the target server cluster is negative, then the difference between the target parameter value and the estimated allocated capacity ratio is determined to obtain the estimated unallocated capacity ratio.

[0128] The total storage capacity of the target server cluster is determined, and the product of the estimated unallocated capacity ratio is used to obtain the updated current remaining allocable capacity of the target server cluster.

[0129] Optionally, the device further includes an update module 304, configured to:

[0130] If the current latency rate is greater than or equal to the latency rate threshold, and the estimated allocated capacity ratio is less than the allocated capacity ratio threshold, then the allocated capacity ratio threshold is determined as the updated estimated allocated capacity ratio.

[0131] The determining module 303 is further configured to:

[0132] Based on the updated estimated allocated capacity ratio and the actual allocated capacity ratio, the current total allocatable capacity of the target server cluster is determined.

[0133] Exemplary embodiments of this disclosure also provide an electronic device, including: at least one processor; and a memory communicatively connected to the at least one processor. The memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to cause the electronic device to perform a method according to an embodiment of this disclosure.

[0134] Exemplary embodiments of this disclosure also provide a non-transitory computer-readable storage medium storing a computer program, wherein the computer program, when executed by a computer's processor, is used to cause the computer to perform a method according to embodiments of this disclosure.

[0135] like Figure 4 As shown, an exemplary embodiment of this disclosure also provides a computer program product 400, including a computer program 401, wherein the computer program, when executed by a computer's processor, is used to cause the computer to perform a method according to an embodiment of this disclosure.

[0136] refer to Figure 5 The present invention describes a structural block diagram of an electronic device 500 that can serve as a terminal device of the present disclosure, which is an example of a hardware device that can be applied to various aspects of the present disclosure. The electronic device is intended to represent various forms of digital electronic computer devices, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0137] like Figure 5 As shown, the electronic device 500 includes a computing unit 501, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 502 or a computer program loaded from a storage unit 508 into a random access memory (RAM) 503. The RAM 503 may also store various programs and data required for the operation of the electronic device 500. The computing unit 501, ROM 502, and RAM 503 are interconnected via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.

[0138] Multiple components in electronic device 500 are connected to I / O interface 505, including: input unit 506, output unit 507, storage unit 508, and communication unit 509. Input unit 506 can be any type of device capable of inputting information to electronic device 500. Input unit 506 can receive input digital or character information and generate key signal inputs related to user settings and / or function control of electronic device. Output unit 507 can be any type of device capable of presenting information and may include, but is not limited to, a display, speaker, video / audio output terminal, vibrator, and / or printer. Storage unit 508 may include, but is not limited to, disk and optical disk. Communication unit 509 allows electronic device 500 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks, and may include, but is not limited to, modems, network cards, infrared communication devices, wireless communication transceivers, and / or chipsets, such as Bluetooth™ devices, WiFi devices, WiMax devices, cellular communication devices, and / or the like.

[0139] The computing unit 501 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of the computing unit 501 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special-purpose artificial intelligence (AI) computing chips, various computing units running machine learning model algorithms, a digital signal processor (DSP), and any suitable processor, controller, microcontroller, etc. The computing unit 501 performs the various methods and processes described above. For example, in some embodiments, the methods of the exemplary embodiments of this disclosure can be implemented as a computer software program tangibly contained in a machine-readable medium, such as storage unit 508. In some embodiments, part or all of the computer program can be loaded and / or installed on the electronic device 500 via ROM 502 and / or communication unit 509. In some embodiments, the computing unit 501 can be configured to perform the methods of the exemplary embodiments of this disclosure by any other suitable means (e.g., by means of firmware).

[0140] The program code used to implement the methods of this disclosure may be written in any combination of one or more programming languages. This program code may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing apparatus, such that when executed by the processor or controller, the program code causes the functions / operations specified in the flowcharts and / or block diagrams to be implemented. The program code may be executed entirely on a machine, partially on a machine, as a standalone software package partially on a machine and partially on a remote machine, or entirely on a remote machine or server.

[0141] In the context of this disclosure, a machine-readable medium can be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, apparatus, or device. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can be, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination of the foregoing. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage devices, magnetic storage devices, or any suitable combination of the foregoing.

[0142] As used in this disclosure, the terms "machine-readable medium" and "computer-readable medium" refer to any computer program product, device, and / or apparatus (e.g., disk, optical disk, memory, programmable logic device (PLD)) for providing machine instructions and / or data to a programmable processor, including machine-readable media that receive machine instructions as machine-readable signals. The term "machine-readable signal" refers to any signal for providing machine instructions and / or data to a programmable processor.

[0143] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device for displaying information to the user (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor); and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the computer. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).

[0144] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as a data server), or computing systems that include middleware components (e.g., an application server), or computing systems that include frontend components (e.g., a user computer with a graphical user interface or web browser through which a user can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., a communication network). Examples of communication networks include local area networks (LANs), wide area networks (WANs), and the Internet.

[0145] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instructions are loaded and executed on a computer, the processes or functions described in the embodiments of this disclosure are performed entirely or partially. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a terminal, a user equipment, or other programmable device. The computer program or instructions can be stored in a computer-readable storage medium or transferred from one computer-readable storage medium to another. For example, the computer program or instructions can be transferred from one website, computer, server, or data center to another website, computer, server, or data center via wired or wireless means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium, such as a floppy disk, hard disk, or magnetic tape; it can also be an optical medium, such as a digital video disc (DVD); or it can be a semiconductor medium, such as a solid-state drive (SSD).

[0146] Although this disclosure has been described in conjunction with specific features and embodiments, it will be apparent that various modifications and combinations can be made therein without departing from the spirit and scope of this disclosure. Accordingly, this specification and drawings are merely exemplary illustrations of the disclosure as defined by the appended claims and are to be considered as covering any and all modifications, variations, combinations, or equivalents within the scope of this disclosure. It is obvious that those skilled in the art can make various alterations and modifications to this disclosure without departing from its spirit and scope. Thus, this disclosure is also intended to include any such modifications and modifications that fall within the scope of the claims of this disclosure and their equivalents.

Claims

1. A method for determining the capacity of a server cluster, characterized in that, include: Obtain the current storage capacity and network performance data of the target server cluster to be evaluated; The storage capacity data and network performance data are input into the allocated capacity ratio prediction model to obtain the estimated allocated capacity ratio of the target server cluster. The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated. Based on the estimated allocated capacity ratio and the actual allocated capacity ratio, the current total allocatable capacity of the target server cluster is determined. The step of determining the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio includes: If the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, then the product of the estimated allocated capacity ratio and the over-allocation rate is determined to obtain the corrected allocated capacity ratio. The ratio of the allocated capacity to the corrected allocated capacity ratio is used to obtain the current total allocatable capacity of the target server cluster; or, If the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, then the total storage capacity of the target server cluster is determined as the current total allocatable capacity of the target server cluster.

2. The server cluster capacity determination method as described in claim 1, characterized in that, The method further includes: The difference between the total storage capacity and the current remaining storage capacity of the target server cluster is determined to obtain the current allocated capacity of the target server cluster. The difference between the current total allocable capacity of the target server cluster and the currently allocated capacity is determined to obtain the current remaining allocable capacity of the target server cluster.

3. The server cluster capacity determination method as described in claim 2, characterized in that, The method further includes: If the current remaining allocable capacity of the target server cluster is negative, then the difference between the target parameter value and the estimated allocated capacity ratio is determined to obtain the estimated unallocated capacity ratio. The total storage capacity of the target server cluster is determined, and the product of the estimated unallocated capacity ratio is used to obtain the updated current remaining allocable capacity of the target server cluster.

4. The server cluster capacity determination method as described in claim 1, characterized in that, The method further includes: If the current latency rate is greater than or equal to the latency rate threshold, and the estimated allocated capacity ratio is less than the allocated capacity ratio threshold, then the allocated capacity ratio threshold is determined as the updated estimated allocated capacity ratio. Determining the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio includes: Based on the updated estimated allocated capacity ratio and the actual allocated capacity ratio, the current total allocatable capacity of the target server cluster is determined.

5. A server cluster capacity determination device, characterized in that, include: The acquisition module is configured to acquire the current storage capacity and network performance data of the target server cluster to be evaluated. The estimation module is configured to input the storage capacity data and network performance data into the allocated capacity ratio estimation model to obtain the estimated allocated capacity ratio of the target server cluster. The allocated capacity ratio is the ratio of the allocated capacity to the over-allocated capacity. The over-allocated capacity is the product of the total storage capacity of the target server cluster and the over-allocation rate. The over-allocation rate is used to indicate the multiple by which the total storage capacity of the target server cluster is allowed to be over-allocated. The determination module is configured to determine the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio. The step of determining the current total allocatable capacity of the target server cluster based on the estimated allocated capacity ratio and the actual allocated capacity ratio includes: If the actual allocated capacity ratio of the target server cluster is less than the estimated allocated capacity ratio, then the product of the estimated allocated capacity ratio and the over-allocation rate is determined to obtain the corrected allocated capacity ratio. The ratio of the allocated capacity to the corrected allocated capacity ratio is used to obtain the current total allocatable capacity of the target server cluster; or, If the actual allocated capacity ratio of the target server cluster is greater than or equal to the estimated allocated capacity ratio, then the total storage capacity of the target server cluster is determined as the current total allocatable capacity of the target server cluster.

6. An electronic device comprising a memory, a processor, and a computer program stored in the memory, characterized in that, The processor executes the computer program to implement the method according to any one of claims 1 to 4.

7. A computer-readable storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 4.

8. A computer program product, comprising a computer program, characterized in that, When the computer program is executed by a processor, it implements the steps of the method according to any one of claims 1 to 4.

Citation Information

Patent Citations

  • Resource scheduling method and resource scheduling device

    CN107295090A

  • Interface calling flow control method and device

    CN113467525A