A software development resource scheduling method and system based on big data
By constructing a heterogeneous configuration feature graph in software development resource scheduling and mapping it to a hyperbolic embedding space, combined with a curvature adaptive algorithm, the problem of mismatch between the Euclidean embedding space and the server environment configuration is solved, and the accuracy of the environment similarity measurement and the effectiveness of resource scheduling are improved.
Patent Information
- Application Number
- CN202510953807.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-11
- Publication Date
- 2025-09-26
- Estimated Expiration
- 2045-07-11
AI Technical Summary
In the existing technology, the Euclidean embedding space is seriously mismatched with the hierarchical and tree-like structure of server environment configuration data, resulting in distortion of environment similarity measurement and affecting the effectiveness and efficiency of software development resource scheduling.
By constructing a heterogeneous configuration feature graph and mapping it to a hyperbolic embedding space, combined with a curvature adaptive algorithm, the similarity of the environmental configurations between the client server and existing business servers in the resource pool is accurately measured, and sorting and flexible scheduling are performed based on the similarity value.
It improves the accuracy of environment configuration similarity measurement, reduces hierarchical distortion, improves the effectiveness of resource scheduling and resource utilization, and shortens environment preparation time.
Smart Images

Figure CN120469814B_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of communication technology, and in particular to a software development resource scheduling method and system based on big data. Background Art
[0002] In cloud computing, edge computing, and high-performance computing scenarios, the resources enterprises rely on for software development primarily consist of distributed servers with diverse hardware and software configurations. These servers vary significantly in hardware platforms, operating system versions, specific versions of software libraries, and system configuration parameters. Dynamically scheduling these server resources for diverse software development tasks presents enterprises with core challenges: environmental complexity, timely matching, and accurate similarity assessment. Therefore, efficient and accurate resource scheduling is crucial. This ensures stable software operation, improves resource utilization, rapidly responds to task demands, and reduces environment preparation time, thereby improving the overall efficiency and quality of software development operations.
[0003] Existing solutions use heterogeneous information network embedding technology to abstract server environment configurations into a heterogeneous feature graph. Nodes represent entities such as platform types and library versions, and edges describe dependencies or hardware dependencies. A meta-path-guided random walk samples node sequences, and a skip-gram model is used to map the nodes to a low-dimensional Euclidean vector space. Software development resources are then scheduled based on these Euclidean vectors. This process avoids the need for explicit computation of high-dimensional and sparse feature similarity matrices, improving scalability and, to a certain extent, resource scheduling efficiency.
[0004] However, existing solutions face the following key problems: the Euclidean embedding space they use is seriously mismatched with the inherent hierarchical and tree-like structure of server environment configuration data, resulting in fundamental distortion of environment similarity measurement, which directly threatens the effectiveness of scheduling, the stability of software operation and the goal of improving efficiency. Summary of the Invention
[0005] The present application provides a software development resource scheduling method and system based on big data, which is used to solve the problem in the prior art that the environment similarity measurement is severely mismatched with the inherent hierarchical and tree-like structure of the Euclidean embedding space and the server environment configuration data, resulting in fundamental distortion of the environment similarity measurement and thus poor effectiveness of software development resource scheduling.
[0006] In a first aspect, the present application provides a software development resource scheduling method based on big data, comprising:
[0007] Collecting the environment configuration description text of the client server, extracting the platform type, library dependency version and hardware parameters from the environment configuration description text, and constructing a heterogeneous configuration feature map;
[0008] Mapping the heterogeneous configuration feature graph to a hyperbolic embedding space, and combining it with a curvature adaptive algorithm to measure the environmental configuration similarity between the client server and existing business servers in a pre-built resource pool, where the resource pool is constructed based on historical big data;
[0009] According to the resource type required for the software development task provided by the client server, screening from the resource pool existing business servers whose configuration similarity values are greater than a preset similarity threshold and match the resource type;
[0010] The called business servers are sorted in descending order according to the similarity values, and the software development resources in the called business servers are flexibly scheduled based on the sorting results.
[0011] Optionally, mapping the heterogeneous configuration feature graph to a hyperbolic embedding space and combining a curvature adaptive algorithm to measure the environmental configuration similarity value between the client server and existing business servers in a pre-built resource pool includes:
[0012] Inputting the heterogeneous configuration feature graph into a hyperbolic embedding space, and using an embedding function to generate a point coordinate representation of the client server in the hyperbolic embedding space;
[0013] Obtaining a point coordinate representation of each existing business server in a pre-built resource pool, and calculating an initial relative distance distribution based on the point coordinate representation of the client server and the point coordinate representation of each existing business server;
[0014] Iteratively adjusting the curvature parameters of the hyperbolic embedding space through a curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration, thereby obtaining an optimized curvature parameter;
[0015] Based on the optimized curvature parameter, calculating the hyperbolic distance between the point coordinate representation of the client server and the point coordinate representation of each existing service server;
[0016] According to a preset correlation relationship between the hyperbolic distance and the environmental configuration similarity value, the hyperbolic distance is converted into the environmental configuration similarity value.
[0017] Optionally, iteratively adjusting the curvature parameters of the hyperbolic embedding space by a curvature adaptive algorithm so as to make the initial relative distance distribution approach the relative distance distribution corresponding to the similarity pattern of the historical environment configuration to obtain the optimized curvature parameters includes:
[0018] Based on the historical environment configuration of the pre-built resource pool, determine the historical relative distance distribution set between existing servers;
[0019] Analyzing the historical relative distance distribution set to generate a target relative distance distribution, where the target relative distance distribution is a relative distance distribution corresponding to a similarity pattern of historical environment configurations;
[0020] Initializing a curvature parameter of the hyperbolic embedding space, and calculating a current distribution difference between the initial relative distance distribution and the target relative distance distribution;
[0021] updating the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference;
[0022] If the new distribution difference is less than the current distribution difference, the curvature parameter of this iteration is used as the current curvature parameter, and the new distribution difference is used as the current distribution difference;
[0023] The updating process is repeated until the current distribution difference is less than a preset threshold or the maximum number of iterations is reached, and the current curvature parameter outputted by the last iteration is outputted as the optimized curvature parameter.
[0024] Optionally, updating the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference, includes:
[0025] Calculating a curvature parameter adjustment amount according to the current distribution difference;
[0026] updating the curvature parameter based on the adjustment amount to obtain an updated curvature parameter;
[0027] reconstructing the geometric structure of the hyperbolic embedding space based on the updated curvature parameters, and recalculating the geodesic distance between the point coordinate representations of the client server and each of the existing service servers;
[0028] Generate iterative relative distance distribution based on the reconstructed geodesic distance;
[0029] The iterative relative distance distribution and the target relative distance distribution are calculated to generate a new distribution difference.
[0030] Optionally, the elastically scheduling of software development resources in the called business server based on the sorting result includes:
[0031] According to the sorting result, a real-time resource status set of each of the called service servers is obtained, wherein the real-time resource status set includes a resource type and a remaining resource amount;
[0032] Based on the resource status set and the total resource demand of the software development task, according to the ranking positions of different business servers in the ranking results, dispatch software development resources that match the resource type within the allowed range of remaining resources from the business server with the highest ranking position, and calculate the resource demand to be met;
[0033] When the resource demand to be met is not zero, dynamically monitor the resource utilization of business servers in other sorting positions, and dispatch the required software development resources from business servers with resource utilization below a preset threshold in the sorting order until the resource demand to be met reaches zero, thereby obtaining a resource allocation result;
[0034] The software development resources in the business server are flexibly scheduled according to the resource allocation result.
[0035] Optionally, constructing a heterogeneous configuration feature map includes:
[0036] Mapping the identifier of the platform type to a standard platform type in a predefined platform type space to generate a platform type feature vector;
[0037] Extract the major version number, minor version number, and revision number from the string corresponding to the library dependency version to generate three-dimensional version coordinates;
[0038] Normalizing the unit dimension of the hardware parameter to generate a hardware parameter feature vector;
[0039] A configuration dependency relationship is constructed among the platform type feature vector, the three-dimensional version coordinates, and the hardware parameter feature vector to generate a heterogeneous configuration feature graph.
[0040] Optionally, generating an iterative relative distance distribution according to the reconstructed geodesic distance includes:
[0041] Aggregating the geodesic distances between all the existing service servers and the client server to generate a geodesic distance set;
[0042] Based on the geodesic distance set, construct a distance relationship pair set for each pair of business servers and client servers;
[0043] In the distance relationship pair set, calculating the relative distance difference of each distance relationship pair to generate a relative distance difference set;
[0044] The distribution characteristics of the relative distance difference set are counted to generate an iterative relative distance distribution.
[0045] In a second aspect, the present application provides a software development resource scheduling system based on big data, comprising:
[0046] A collection module is used to collect the environment configuration description text of the client server, extract the platform type, library dependency version and hardware parameters from the environment configuration description text, and construct a heterogeneous configuration feature map;
[0047] A construction module is used to map the heterogeneous configuration feature graph into a hyperbolic embedding space and, in combination with a curvature adaptive algorithm, measure the environmental configuration similarity between the client server and existing business servers in a pre-built resource pool, where the resource pool is constructed based on historical big data;
[0048] A matching module is used to screen, from the resource pool, existing business servers that have a configuration similarity value greater than a preset similarity threshold and that match the resource type required for the software development task provided by the client server;
[0049] The sorting module is used to sort the called business servers in descending order according to the similarity value, and flexibly schedule the software development resources in the called business servers based on the sorting results.
[0050] In a third aspect, the present application provides a computing device comprising a processing component and a storage component; the storage component stores one or more computer instructions; the one or more computer instructions are used to be called and executed by the processing component to implement a software development resource scheduling method based on big data as described in any one of the first aspects.
[0051] In a fourth aspect, the present application provides a computer storage medium storing a computer program. When the computer program is executed by a computer, it implements a software development resource scheduling method based on big data as described in any one of the first aspects.
[0052] In the present application, a software development resource scheduling method based on big data is provided, which includes: collecting environmental configuration description text of a client server, extracting platform type, library dependency version and hardware parameters from the environmental configuration description text, and constructing a heterogeneous configuration feature graph; mapping the heterogeneous configuration feature graph to a hyperbolic embedding space, combining a curvature adaptive algorithm, measuring the environmental configuration similarity value between the client server and existing business servers in a pre-built resource pool, where the resource pool is constructed based on historical big data; according to the resource type required for the software development task provided by the client server, screening from the resource pool existing business servers whose configuration similarity value is greater than a preset similarity threshold and matches the resource type; sorting the called business servers in descending order according to the similarity value, and flexibly scheduling the software development resources in the called business servers based on the sorting result.
[0053] This application constructs a heterogeneous configuration feature graph to convert unstructured environment configuration text into a computable topological relationship graph, realizes the unified representation of multi-dimensional heterogeneous features such as hardware and software dependencies, and solves the problem of fragmentation of environment description; utilizes hyperbolic embedding space mapping and curvature adaptive algorithm to accurately capture the hierarchical dependency relationship in the environment configuration, improves the geometric expression ability of similarity measurement, and avoids the distortion of the hierarchical structure caused by the linear constraint of Euclidean space; based on the dual screening of similarity threshold and resource type, the target server is locked while ensuring the compatibility of the environment, eliminating the risk of dependency conflict; finally, through the elastic scheduling of resources in descending order of similarity, the server resources with the closest configuration are called first, the historical environment initialization state is reused to the maximum extent, the environment preparation time is shortened, and the on-demand dynamic allocation of development resources is realized, thereby improving the effectiveness of software development resource scheduling.
[0054] Furthermore, the heterogeneous configuration feature map is mapped into a hyperbolic embedding space to generate client-server coordinate points. The initial relative distance distribution is calculated based on the pre-stored coordinate points of historical business servers in the resource pool. The hyperbolic space curvature parameters are iteratively adjusted through a curvature adaptive algorithm to make the initial distribution approach the target distribution corresponding to the historical similarity pattern. Finally, the hyperbolic distance between the client server and each business server is calculated based on the optimized curvature and converted into an environmental configuration similarity value through a preset mapping relationship. The negative curvature of the hyperbolic space accurately analyzes the hierarchical structural relationships inherent in the environmental configuration. The curvature adaptive algorithm automatically aligns the distance distribution with the historical similarity pattern, reducing the similarity measurement error of hierarchical entities. The dynamic optimization mechanism iteratively approximates the target distribution, effectively addressing the generalization limitations of the static curvature model in changing scenarios and significantly improving the accuracy of cross-platform environmental similarity calculations. At the same time, based on the optimized curvature, a strong correlation mapping between hyperbolic distance and environmental compatibility is achieved, providing a high-confidence basis for resource scheduling decisions and ensuring that the similarity measurement results directly drive the reuse efficiency of elastic resources.
[0055] These and other aspects of the present application will become more readily apparent from the description of the following embodiments. BRIEF DESCRIPTION OF THE DRAWINGS
[0056] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, a brief introduction will be given below to the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0057] Figure 1 A flowchart of a software development resource scheduling method based on big data provided in an embodiment of the present application;
[0058] Figure 2A schematic diagram of the structure of a software development resource scheduling system based on big data provided in an embodiment of the present application;
[0059] Figure 3 A schematic diagram of the structure of a computing device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0060] In order to enable those skilled in the art to better understand the solution of the present application, the technical solution in the embodiments of the present application will be clearly and completely described below in conjunction with the drawings in the embodiments of the present application.
[0061] In some of the processes described in the specification and claims of this application and the above-mentioned figures, multiple operations that appear in a specific order are included, but it should be clearly understood that these operations may not be executed in the order in which they appear in this document or may be executed in parallel. The serial numbers of the operations, such as 11, 12, etc., are only used to distinguish between different operations, and the serial numbers themselves do not represent any order of execution. In addition, these processes may include more or fewer operations, and these operations may be executed in sequence or in parallel. It should be noted that the descriptions of "first", "second", etc. in this document are used to distinguish different messages, devices, modules, etc., and do not represent a sequential order, nor do they limit "first" and "second" to being different types.
[0062] The following will be combined with the drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of the embodiments. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without making creative efforts are within the scope of protection of this application.
[0063] In order to solve the problem in the prior art that the environment similarity measurement is fundamentally distorted due to the serious mismatch between the Euclidean embedding space and the inherent hierarchical and tree-like structure of the server environment configuration data, and thus the problem of poor effectiveness of software development resource scheduling, the embodiment of the present application provides a software development resource scheduling method based on big data. The method adopts the following ideas: aiming at the dual goals of ensuring environmental compatibility and improving initialization efficiency in heterogeneous environment resource scheduling, firstly, the problem of fragmentation of environment description is solved through unified representation of heterogeneous features; then, hyperbolic geometry drive is introduced to adapt to the hierarchical structural characteristics of the configuration, so as to realize accurate measurement of the environment similarity between the historical resource pool and the client server; on this basis, a double filtering mechanism is designed to lock the compatible target server; finally, the reuse of historical environment status is maximized through priority elastic scheduling, which reduces the initialization time while eliminating the risk of dependency conflict.
[0064] Figure 1A flowchart of a software development resource scheduling method based on big data is provided in an embodiment of the present application, such as Figure 1 As shown, the method includes:
[0065] S11. Collect the environment configuration description text of the client server, extract the platform type, library dependency version and hardware parameters from the environment configuration description text, and construct a heterogeneous configuration feature map.
[0066] Among them, the environment configuration description text refers to text data that describes the server's software and hardware environment, including operating system information, a list of installed software libraries, and hardware specification details. It is used to comprehensively reflect the server's configuration status and can be collected based on server logs or configuration management tools. The platform type refers to the category identifier of the operating system or underlying hardware platform running on the server, such as a specific cloud platform. It is used to distinguish different basic operating environments and can be extracted based on keywords in the environment configuration description text. The library dependency version refers to the specific version number information of the external library relied on in software development, including the major version number, minor version number, and revision number. It is used to ensure software compatibility and dependencies and can be parsed based on the version string in the environment configuration description text. Hardware parameters refer to the physical hardware specification parameters of the server, such as memory capacity or storage space. They are used to quantify the performance of the server and can be standardized based on the numerical descriptions in the environment configuration description text. The heterogeneous configuration feature graph refers to a graph structure representation that integrates the feature vectors and their dependencies of the platform type, library dependency version, and hardware parameters, including node and edge information. It is used to capture the diversity of the server environment and is constructed based on a feature fusion algorithm.
[0067] In an embodiment of the present application, first, the environment configuration description text of the client server is obtained through the data acquisition interface. Secondly, the platform type, library dependency version and hardware parameters are extracted from the environment configuration description text using text parsing technology. Subsequently, the extracted platform type, library dependency version and hardware parameters are integrated into a heterogeneous configuration feature graph through a feature fusion algorithm.
[0068] S12. Map the heterogeneous configuration feature graph to the hyperbolic embedding space, and combine it with the curvature adaptive algorithm to measure the environmental configuration similarity value between the client server and the existing business servers in the pre-built resource pool. The resource pool is constructed based on historical big data.
[0069] The hyperbolic embedding space is a non-Euclidean geometric space used to map high-dimensional, heterogeneous data to efficiently measure similarity. It represents data point coordinates based on the principles of hyperbolic geometry. The curvature adaptive algorithm is an optimization algorithm that iteratively adjusts the curvature parameters of the hyperbolic embedding space to align the distance distribution with historical similarity patterns. This algorithm can be implemented using gradient descent or distribution difference calculations. The resource pool is a pre-built collection of server resources containing the configuration information and resource status of historical business servers. It is constructed based on historical big data analysis and serves as a scheduling reference. Existing business servers are deployed and running server instances in the resource pool, including their environment configuration and available resource information. These instances are used for similarity comparisons with new customer servers. The environment configuration similarity value is a numerical metric that indicates the degree of configuration similarity between a customer server and an existing business server. It is calculated based on the hyperbolic distance and converted to a score between 0 and 1. Historical big data refers to the massive amount of server configuration, performance, and task execution data accumulated in the past. This data is used for model training and resource pool construction and is derived from the aggregation of long-term monitoring logs.
[0070] In an embodiment of the present application, first, the constructed heterogeneous configuration feature map is input into the hyperbolic embedding space mapping module, and the embedding function is used to generate the point coordinate representation of the client server. Secondly, the curvature parameters of the hyperbolic embedding space are iteratively adjusted in combination with the curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration. Subsequently, the hyperbolic distance between the client server and each existing business server in the resource pool is calculated based on the optimized curvature parameter. Finally, according to the correlation between the preset hyperbolic distance and the environment configuration similarity value, the hyperbolic distance is converted into the environment configuration similarity value, and the resource pool is constructed from historical big data.
[0071] S13. Based on the resource type required for the software development task provided by the client server, select from the resource pool existing business servers whose configuration similarity values are greater than a preset similarity threshold and whose resource types match.
[0072] A software development task refers to a specific resource-required task proposed by a client server, such as code compilation, testing, or deployment, and includes a description of the task type and resource requirements. Resource types refer to the resource categories required for software development tasks, such as central processing unit (CPU) computing resources, memory storage resources, or specific software library resources, and are used to match server capabilities. A preset similarity threshold is a predefined threshold used to screen servers with sufficient similarity. This threshold is set based on statistical analysis of historical data to ensure configuration compatibility.
[0073] In an embodiment of the present application, first, the resource type required for the software development task provided by the client server is received, and secondly, existing business servers whose environment configuration similarity values are greater than a preset similarity threshold and match the resource type are screened out from the pre-built resource pool.
[0074] S14. Sort the called business servers in descending order according to the similarity values, and flexibly schedule the software development resources in the called business servers based on the sorting results.
[0075] The business servers being called are existing business servers whose configuration similarity values exceed the preset similarity threshold and whose resource types match. The sorting result is a list of business servers ranked in descending order by their environment configuration similarity values, used to guide resource scheduling priorities. Software development resources refer to the computing and storage resources available on a server, such as processor time, memory space, or software library instances, used to execute development tasks. Elastic scheduling is a dynamic resource allocation process that adjusts resource allocation based on real-time demand and the server's resource status, achieving efficient utilization through monitoring and feedback mechanisms.
[0076] In an embodiment of the present application, first, the called business servers are sorted in descending order according to the environmental configuration similarity value. Secondly, the real-time resource status set of each business server is obtained based on the sorting result. Subsequently, according to the resource status set and the total resource demand of the software development task, the software development resources of the matching resource type within the allowed range of the remaining resources are dispatched from the business servers with higher rankings, and the resource demand to be met is calculated. Then, when the resource demand to be met is not zero, the resource utilization of the business servers in other sorting positions is dynamically monitored, and the required resources are dispatched from the servers whose resource utilization is lower than the preset threshold until the resource demand to be met is zero. Finally, the software development resources in the business servers are flexibly scheduled according to the resource allocation results.
[0077] The following is a specific example: A company needs to deploy a risk control model training task. The client server environment is Ubuntu 22.04, equipped with the CUDA 11.8 driver and an NVIDIA A100 graphics card. The operations system first collects the environment configuration text, extracts the platform type tag (Ubuntu 22.04), parses the CUDA library major version number 11, minor version number 8, and revision number 0 to form three-dimensional coordinates, and normalizes the 80GB video memory parameters into a feature vector. These three types of features are constructed into a heterogeneous configuration graph through dependency relationships. In this graph, for example, a strong correlation edge with a weight of 0.95 is formed between the A100 graphics card node and the CUDA 11.8 node. This feature graph is mapped to the Poincare disk model in hyperbolic space to generate the client server coordinate point P_c. The system retrieves the pre-stored coordinates of 200 historical servers in the resource pool. Initial calculations show that the closest distance is to Server B, a CentOS system. An adaptive curvature algorithm analyzed historical data and found that differences in CUDA major versions had the greatest impact on compatibility. After three rounds of iteration, the curvature parameter was optimized from -0.8 to -1.2. After reconstructing the space and re-measuring the distance, the previously distant Ubuntu server A was reduced to 0.3, with a similarity value of 0.92, while the distance to CentOS server B increased to 4.0, with a similarity value of 0.15. Based on the task's GPU-intensive resource requirements and a similarity threshold of 0.85, the system selected five servers that met the requirements. Sorted in descending order of similarity, Server A (0.92, four A100s remaining) ranked first, followed by Server C (0.89, two remaining). The scheduling module prioritized allocating three graphics cards from Server A to meet the core requirements, and shifted the remaining one to monitoring resource utilization. When Server C's utilization was found to be only 40%, one graphics card was immediately allocated from its idle resources to supplement the demand. Ultimately, the task was directly launched in a fully compatible environment, saving time on environment debugging compared to traditional solutions and completing model training in a shorter time.
[0078] By executing S11 to S14, the embodiment of the present application achieves efficient screening and dynamic scheduling of resources by accurately measuring the similarity of server environment configurations and intelligently matching resource pools, thereby improving resource utilization, reducing the risk of configuration conflicts, and optimizing the execution efficiency of software development tasks.
[0079] In a possible embodiment, S12, mapping the heterogeneous configuration feature graph to a hyperbolic embedding space, combining a curvature adaptive algorithm, and measuring the environmental configuration similarity value between the client server and existing business servers in the pre-built resource pool, includes:
[0080] Step 121: Input the heterogeneous configuration feature graph into the hyperbolic embedding space, and use the embedding function to generate the point coordinate representation of the client server in the hyperbolic embedding space.
[0081] Exemplarily, the input of the embedding function is a heterogeneous configuration feature map, and the output is a point coordinate representation, wherein the formula of the embedding function can be: ;in, is the point coordinate representation of the client server in the hyperbolic embedding space, is a heterogeneous configuration feature graph, the expression of which can be , For nodes v Node characteristics, node v From the node collection , For the edge e The edge features, edge e From edge set E .
[0082] is the rectified linear unit activation function, is the dimension reduction weight matrix, is a nonlinear activation function, is the linear transformation weight matrix, is a graph structure aggregation function, is the feature concatenation operator, is the bias vector, is the output layer bias vector. Point coordinates represent the vector coordinates describing the server configuration in the hyperbolic embedding space. The location of configuration features is represented by multidimensional numerical values and is generated by transforming heterogeneous configuration feature maps based on the embedding function.
[0083] In an embodiment of the present application, the heterogeneous configuration feature map is first input into the hyperbolic embedding space, and then the feature map is nonlinearly transformed through the embedding function to generate a point coordinate representation of the client server in the hyperbolic embedding space, which captures the hierarchical features of the server configuration in the form of a multidimensional vector.
[0084] Step 122: Obtain the point coordinate representation of each existing business server in the pre-built resource pool, and calculate the initial relative distance distribution based on the point coordinate representation of the client server and the point coordinate representation of each existing business server.
[0085] The initial relative distance distribution refers to the statistical distribution of geodesic distances between the client server and each service server in the resource pool in the initial hyperbolic space, which may include the distance mean and dispersion, and is used for subsequent curvature optimization.
[0086] In an embodiment of the present application, first, the point coordinate representation of each existing business server is obtained from a pre-built resource pool. Secondly, based on the point coordinate representation of the client server and the point coordinate representation of each business server, the initial geodesic distance between each pair of servers is calculated. Finally, all distance values are aggregated to generate an initial relative distance distribution, reflecting the configuration difference in the current space.
[0087] Step 123: Iteratively adjust the curvature parameters of the hyperbolic embedding space through a curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration, thereby obtaining the optimized curvature parameters.
[0088] Among them, the curvature parameter refers to a scalar parameter that controls the degree of geometric curvature of the hyperbolic embedding space. Negative values determine the expansion characteristics of the space, and it is iteratively adjusted based on the curvature adaptive algorithm to match the historical similarity pattern. The historical environment configuration refers to the server configuration data set accumulated in the resource pool, including platform type, library version and hardware parameters, which is used to extract similarity patterns to guide curvature optimization. Similarity patterns refer to the configuration association rules that recur in historical environment configurations, which are manifested as specific distance distribution characteristics and can be extracted from historical data based on clustering or distribution fitting techniques. The optimized curvature parameter refers to the final curvature value determined after iterative adjustment by the curvature adaptive algorithm, which can make the distance distribution of the hyperbolic space consistent with the historical similarity pattern.
[0089] In an embodiment of the present application, first, a curvature adaptive algorithm is used to analyze the similarity pattern in the historical environment configuration data to generate a target relative distance distribution; secondly, the curvature parameters of the hyperbolic embedding space are initialized, and the difference between the initial relative distance distribution and the target distribution is calculated; then, the curvature parameters are iteratively adjusted, the distance distribution is recalculated, and the difference is updated; finally, when the difference is lower than a preset threshold or the maximum number of iterations is reached, the optimized curvature parameters are output to make the distance distribution approach the historical similarity pattern.
[0090] Step 124 : Based on the optimized curvature parameter, calculate the hyperbolic distance between the point coordinate representation of the client server and the point coordinate representation of each existing service server.
[0091] Among them, the hyperbolic distance refers to the shortest path length between two points in hyperbolic space, which is calculated based on the Poincare disk model or the Lorentz formula and reflects the configuration difference.
[0092] In an embodiment of the present application, the geometric structure of the hyperbolic embedding space is first reconstructed based on the optimized curvature parameters, and then the geodesic lengths between the point coordinate representation of the client server and the point coordinate representations of each existing business server are recalculated according to the new geometric rules to generate a hyperbolic distance set.
[0093] Step 125 : Convert the hyperbolic distance into an environment configuration similarity value according to a preset correlation relationship between the hyperbolic distance and the environment configuration similarity value.
[0094] The association relationship may refer to a conversion rule between a preset hyperbolic distance and an environmental configuration similarity value, which is usually a monotonically decreasing function that maps the distance to a similarity score of 0-1.
[0095] In an embodiment of the present application, a correlation function between a preset hyperbolic distance and an environmental configuration similarity value is first loaded, and then the hyperbolic distance is input into the function for nonlinear conversion, and finally an environmental configuration similarity value ranging from 0 to 1 is output. The smaller the distance, the higher the similarity value.
[0096] In the above example, the client and server are running on Ubuntu 22.04, equipped with the CUDA 11.8 driver and four NVIDIA A100 graphics cards. The system first converts the environment configuration into a heterogeneous feature graph: the Ubuntu platform type is mapped to the feature vector [0.92, 0.1, ...], the CUDA version is parsed into three-dimensional coordinates [11, 8, 0], and the 80GB video memory parameters are normalized into hardware features. These elements are connected by dependency edges to form a topological graph, such as an edge with a weight of 0.95 from an A100 node to a CUDA node. This feature graph is input into a hyperbolic embedding space and processed by an embedding function to generate the client and server coordinate points P_c = (0.43, -0.17, 0.29). This function first aggregates the node features F_v and edge features F_e, reduces the dimensionality using a linear transformation weight matrix W1, and then activates the output coordinates. At the same time, the pre-stored coordinates of 200 business servers in the resource pool were retrieved, including Server A (0.38, -0.21, 0.31) running Ubuntu and Server B (-0.62, 0.45, -0.18) running CentOS. In Poincare space with an initial curvature parameter of -0.8, the geodesic distance P_c from Server A was 1.2, and from Server B was 3.5, forming a right-skewed distribution with a mean of 2.8. The curvature adaptation module was then activated, analyzing historical data and finding that the task success rate reached 95% when the CUDA major version difference was ≤1. Based on this, a target distance distribution (mean 1.5, standard deviation 0.6) was generated. The system iterated through three rounds of curvature adjustment. The first round calculated the KL divergence of 0.25 between the initial distribution and the target, adjusting the curvature to -1.0. A second round of spatial reconstruction revealed a shift in the distance distribution (the distance between P_c and Server A was reduced to 0.7), and the KL divergence dropped to 0.12. In the third round, the divergence dropped to 0.05, meeting the termination criteria and outputting an optimized curvature of -1.2. Reconstructing the hyperbolic space geometry based on the new curvature revealed key changes: P_c's distance to Server A, also running Ubuntu and CUDA 11.x, decreased to 0.3, while its distance to Server B, running CentOS and CUDA 10.2, increased to 4.0. Finally, using pre-defined transformation rules (e.g., similarity value sim = 1-0.5d when distance d ≤ 2), Server A's similarity value increased to 0.85, while Server B's decreased to 0.025. This corrected the misjudgment caused by version differences in the initial space, allowing Server A to be successfully selected for the scheduling queue. Finally, model training was directly started in a fully compatible environment, saving environment debugging time compared to traditional solutions.
[0097] By executing steps 121 to 125, the embodiment of the present application accurately captures historical configuration similarity patterns by dynamically optimizing the geometric structure of the hyperbolic space, thereby improving the calculation accuracy of the environment configuration similarity value and enhancing the reliability of resource matching.
[0098] In a possible embodiment, step 123, iteratively adjusting the curvature parameters of the hyperbolic embedding space using a curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration to obtain the optimized curvature parameters, includes:
[0099] Step a1: Determine a historical relative distance distribution set between existing servers based on the historical environment configuration of the pre-built resource pool.
[0100] Among them, the historical relative distance distribution set refers to the statistical distribution combination of hyperbolic distances between all existing business servers in the resource pool, which includes characteristics such as mean and variance. It can be calculated based on historical environment configuration data and reflects the long-term configuration difference pattern.
[0101] In an embodiment of the present application, the historical environment configuration data of all existing business servers in the pre-built resource pool are first accessed, and then the hyperbolic distance between each pair of existing business servers is calculated. Then, all hyperbolic distance values are aggregated to form a historical relative distance distribution set, which contains multiple distance distribution subsets, reflecting the configuration difference patterns in different periods.
[0102] Step a2: Analyze the historical relative distance distribution set to generate a target relative distance distribution, where the target relative distance distribution is the relative distance distribution corresponding to the similarity pattern of the historical environment configuration.
[0103] Among them, the target relative distance distribution can refer to a typical distance probability model extracted from the historical distribution set. The core distribution characteristics are determined through cluster analysis, representing the optimal similarity pattern, which is used to guide curvature optimization.
[0104] In an embodiment of the present application, a probability density analysis is first performed on the historical relative distance distribution set, and then a clustering algorithm is used to identify the frequently occurring distance distribution patterns. Then, the core distribution features are extracted as the statistical expression of the similarity pattern, and finally, a target relative distance distribution is generated, which represents the most typical similarity association law in the historical environment configuration.
[0105] Step a3: Initialize the curvature parameter of the hyperbolic embedding space and calculate the current distribution difference between the initial relative distance distribution and the target relative distance distribution.
[0106] The current distribution difference may refer to a quantitative indicator of the difference between the initial relative distance distribution and the target distribution, which is calculated based on the Kullback-Leibler divergence or Wasserstein distance algorithm and is used to evaluate the degree of adaptation of the curvature parameters.
[0107] In an embodiment of the present application, first, an initial curvature parameter constant value is set for the hyperbolic embedding space, and then the initial relative distance distribution between the client server and each business server is calculated based on the current curvature parameter. Then, the statistical characteristics of the initial distribution and the target distribution are compared through a difference calculation function, and finally, the current distribution difference value is output as an optimization benchmark.
[0108] Step a4: Update the curvature parameter based on the current distribution difference, and recalculate the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference.
[0109] The new distribution difference may refer to the latest difference between the iterative relative distance distribution and the target distribution, which is used to determine whether the parameter optimization direction is correct.
[0110] In an embodiment of the present application, the curvature parameter adjustment amount is first calculated based on the current distribution difference, and then the curvature parameter value is updated according to the adjustment amount. Then, the hyperbolic space geometric structure is reconstructed based on the updated curvature parameter, and the geodesic distance between the client server and each business server is recalculated. Finally, an iterative relative distance distribution is generated and its new distribution difference with the target distribution is calculated.
[0111] Step a5: If the new distribution difference is smaller than the current distribution difference, the curvature parameter of this iteration is used as the current curvature parameter, and the new distribution difference is used as the current distribution difference.
[0112] In an embodiment of the present application, it is first determined whether the new distribution difference is smaller than the current distribution difference. If so, the curvature parameters of this iteration are overwritten and stored as the current curvature parameters, and the new distribution difference is set as the current distribution difference to complete a single optimization state update.
[0113] Step a6: Repeat the updating process until the current distribution difference is less than a preset threshold or the maximum number of iterations is reached, and output the current curvature parameter outputted in the last iteration as the optimized curvature parameter.
[0114] The update process is a cyclical sequence of curvature parameter adjustment, distance recalculation, and difference comparison, gradually approaching the optimal solution based on the principle of gradient descent. The preset threshold is the maximum allowable error in the distribution difference, which can be set based on historical data statistical analysis and automatically terminates the optimization process. The maximum number of iterations is the upper limit of the number of times the update process can be executed to prevent infinite loops and is set based on an analysis of computing resource consumption.
[0115] In an embodiment of the present application, the curvature parameter update and difference comparison process is first repeated, and then the current distribution difference is continuously monitored to see whether it is lower than a preset threshold or the number of iterations reaches an upper limit. Finally, when any condition is met, the loop is terminated and the current curvature parameter updated for the last time is output as the optimized curvature parameter.
[0116] By executing steps a1 to a6, the embodiment of the present application dynamically adapts the hyperbolic space curvature to accurately match the distance distribution with the historical similarity pattern, thereby improving the reliability of the environmental configuration similarity measurement and optimizing the resource matching quality.
[0117] In a possible embodiment, step a4, updating the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference, includes:
[0118] Step a41: Calculate the curvature parameter adjustment amount based on the current distribution difference. The curvature parameter adjustment amount refers to the modification range of the curvature parameter in each iteration. It can be calculated based on the product of the current distribution difference and the learning rate. It reflects the parameter optimization direction and step size and is used to control the convergence speed.
[0119] In an embodiment of the present application, the current distribution difference value is first obtained, and then the curvature parameter adjustment amount is calculated by the gradient descent algorithm. The adjustment amount is equal to the current distribution difference multiplied by the preset learning rate and divided by the historical average gradient norm. Finally, the curvature parameter adjustment amount is output as the basis for parameter update.
[0120] Step a42: Update the curvature parameter based on the adjustment amount to obtain the updated curvature parameter.
[0121] In an embodiment of the present application, the current curvature parameter value is first read, and then the curvature parameter adjustment amount is added to the current curvature parameter to obtain an updated value. The updated value is then subjected to boundary constraint processing to ensure that it is within a valid range, and finally the updated curvature parameter is output for spatial reconstruction.
[0122] Step a43: reconstruct the geometric structure of the hyperbolic embedding space based on the updated curvature parameters, and recalculate the geodesic distance between the point coordinate representations of the client server and each existing service server.
[0123] The geometric structure can refer to the definition of metric rules for hyperbolic embedding space, including distance calculation formulas and curvature constraints. The tensor matrix is redefined based on the curvature parameters to determine the curvature characteristics of the space. The geodesic distance can refer to the shortest path length between two points in hyperbolic space. It can be calculated based on the geodesic equation of the Poincare disk model and reflects the essential metric of configuration differences.
[0124] In an embodiment of the present application, the metric tensor of the hyperbolic embedding space is first redefined based on the updated curvature parameters, and then the spatial geometric structure is reconstructed according to the new metric rule. Then, the point coordinate representation of the client server and the existing business server is kept unchanged in the reconstructed space, and finally, the geodesic shortest path length between each pair of point coordinates is recalculated as the geodesic distance.
[0125] Step a44: Generate an iterative relative distance distribution based on the reconstructed geodesic distance.
[0126] In an embodiment of the present application, the geodesic distance values between all client servers and each business server are first collected, then a distance value set is constructed, and then the probability density distribution of the set is calculated. Finally, an iterative relative distance distribution is generated, including the distance mean, variance and quantile statistics.
[0127] Step a45: Calculate the iterative relative distance distribution and the target relative distance distribution to generate a new distribution difference.
[0128] In an embodiment of the present application, the target relative distance distribution model is first loaded, and then the Wasserstein distance algorithm is used to calculate the statistical difference between the iterative relative distance distribution and the target distribution. The difference value is then quantified into a new distribution difference value, and finally the value is output for optimization state evaluation.
[0129] By executing steps a41 to a45, the embodiment of the present application achieves dynamic optimization of the hyperbolic space geometric structure by accurately controlling the curvature parameter update process, ensuring that the distance distribution effectively approaches the historical similarity pattern, thereby improving the accuracy of the configuration similarity measurement.
[0130] In a possible embodiment, S14, based on the sorting result, elastically scheduling software development resources in the called business server includes:
[0131] Step 141: According to the sorting result, the real-time resource status set of each called service server is obtained. The real-time resource status set includes resource type and remaining resource amount.
[0132] The real-time resource status set is a snapshot of the current resource status of the invoked business server. It includes a list of resource types and their corresponding remaining available capacity for each server. This is collected in real time by the resource monitoring system and reflects instantaneous resource availability. Remaining resource capacity refers to the unused quota of a specific resource type on the business server, such as the number of idle CPU cores or remaining memory capacity. This is obtained in real time through operating system-level monitoring tools.
[0133] In an embodiment of the present application, the real-time monitoring interface of each called business server is first accessed according to the sorting result, and then real-time data including resource type and remaining resource amount is collected, and finally the resource status information of all business servers is integrated to generate a real-time resource status set.
[0134] Step 142: Based on the resource status set and the total resource demand of the software development task, according to the ranking positions of different business servers in the ranking results, schedule software development resources that match the resource type within the allowed range of remaining resources from the business server with the highest ranking position, and calculate the resource demand to be met.
[0135] The total resource demand refers to the total amount of resources required by the software development task, such as the total number of computing cores or total storage space, and is derived from parsing the task configuration file. The unmet resource demand is the difference between the total resource demand and the actual amount of resources scheduled. This is calculated and updated through dynamic subtraction and is used to trigger the supplementary scheduling process.
[0136] In an embodiment of the present application, the total resource demand of the software development task is first analyzed, and then the traversal is started from the first business server according to the sorting result, and then the software development resources of the matching resource type are scheduled within the allowed range of the remaining resources, and the allocated resources are accumulated at the same time. Finally, the total resource demand is subtracted from the allocated amount to generate the resource demand to be met.
[0137] Step 143: When the resource demand to be met is not zero, dynamically monitor the resource utilization of business servers in other sorting positions, and dispatch the required software development resources from the business servers whose resource utilization is lower than the preset threshold in the sorting order until the resource demand to be met is zero, thereby obtaining the resource allocation result.
[0138] Resource utilization refers to the ratio of allocated resources to a business server to its total resources. This ratio is calculated based on real-time load data and is used to identify underloaded nodes. The resource allocation result is the finalized resource scheduling plan, which includes the type and quantity of resources required by each business server and is generated using an elastic scheduling algorithm.
[0139] In an embodiment of the present application, it is first determined whether the resource demand to be met is non-zero. If so, the resource utilization dynamic monitoring module is started. Secondly, the subsequent business servers are scanned in sorted order, and then the servers with resource utilization lower than the preset threshold are screened. Then, the required type of resources are scheduled from them and the resource demand to be met is updated. Finally, the process is repeated until the resource demand to be met is zero, and the resource allocation result is generated.
[0140] Step 144: Flexible scheduling of software development resources in the business server based on the resource allocation result.
[0141] In an embodiment of the present application, the resource scheduling instruction set in the resource allocation result is first parsed, then a control command is sent to each business server through the resource management interface, and finally the allocation status of its software development resources is dynamically adjusted to complete flexible scheduling.
[0142] The following is a specific example: First, based on the sorting results, the real-time resource status of each business server is obtained. Next, resources matching the resource type are scheduled from the top server in the sorting order until the upper limit of the remaining resources is reached, calculating the unmet resource demand. Next, when the demand is non-zero, the resource utilization of subsequent servers is dynamically monitored. Resources are then supplemented by sorting nodes with utilization below the preset threshold, and the demand is repeatedly updated until it reaches zero. Finally, control instructions are sent to the business server based on the resource allocation results, completing the flexible allocation of software development resources.
[0143] By executing steps 141 to 144, the embodiment of the present application combines priority scheduling with dynamic resource monitoring to achieve efficient resource matching and load balancing, thereby maximizing cluster resource utilization while ensuring task requirements.
[0144] In a possible embodiment, S11, constructing a heterogeneous configuration feature map, includes:
[0145] Step 111 : Map the identifier of the platform type to a standard platform type in a predefined platform type space to generate a platform type feature vector.
[0146] The identifier is a string tag that identifies the platform type in the environment configuration description text, identified through keyword matching. The predefined platform type space refers to a pre-built standard platform classification system that contains all supported platform type enumeration values and serves as a unified classification benchmark. The standard platform type refers to the normalized platform name in the predefined space, eliminating naming discrepancies. The platform type feature vector is a numerical representation of the standard platform type, generated through one-hot encoding or an embedding layer, reflecting the platform category attributes.
[0147] In an embodiment of the present application, the platform type identifier in the environment configuration description text is first parsed, and then it is matched and mapped with the standard platform type in the predefined platform type space, and then the matching result is encoded into a numerical vector of fixed dimension, and finally a platform type feature vector is generated.
[0148] Step 112: extract the major version number, minor version number, and revision number from the character string corresponding to the library dependency version, and generate three-dimensional version coordinates.
[0149] The string is the raw text description of the library dependency version, including major and minor revision information. The major version number is the integer portion of the library dependency version representing architectural changes. The minor version number is the integer portion of the library dependency version representing feature additions and deletions. The revision number is the integer portion of the library dependency version representing bug fixes, for example, "5" represents the fifth revision. The three-dimensional version coordinate is an integer vector consisting of the major version number, minor version number, and revision number.
[0150] In an embodiment of the present application, the semantic structure of the library dependency version string is first identified, and then the three components of the major version number, minor version number and revision number are separated, and then the three are converted into integer values respectively, and finally combined into three-dimensional version coordinates.
[0151] Step 113: Standardize the unit dimension of the hardware parameters to generate a hardware parameter feature vector.
[0152] The unit dimension may refer to a measurement unit standard of the hardware parameter, and the hardware parameter feature vector may refer to a standardized hardware parameter numerical sequence.
[0153] In an embodiment of the present application, the unit dimension type of the hardware parameters is first detected, then all parameters are uniformly converted into standard measurement units, and then numerical normalization is performed to eliminate magnitude differences, and finally a hardware parameter feature vector is generated.
[0154] Step 114: Construct a configuration dependency relationship between the platform type feature vector, the three-dimensional version coordinates, and the hardware parameter feature vector to generate a heterogeneous configuration feature graph.
[0155] Configuration dependencies may refer to association rules between different configuration features, such as a specific library version must match a specific operating system version.
[0156] In an embodiment of the present application, an association matrix is first established between the platform type feature vector, three-dimensional version coordinates, and hardware parameter feature vectors. Secondly, the dependency weights between features are learned through a graph neural network. Then, weighted directed edges are constructed to connect each feature node. Finally, a heterogeneous configuration feature graph containing node features and dependency relationships is generated.
[0157] The following is a specific example: First, the platform type identifier is mapped to a predefined space of standard platform types to generate a platform type feature vector. Next, the library dependency version string is parsed, and the major, minor, and revision numbers are extracted to form a three-dimensional version coordinate. The hardware parameters are then converted to standard units and normalized to generate a hardware parameter feature vector. Finally, the dependency relationships between the three types of features are established to construct a heterogeneous configuration feature graph consisting of nodes and weighted edges.
[0158] By executing steps 111 to 114, the embodiment of the present application accurately characterizes the heterogeneous characteristics of the server configuration through structured feature extraction and dependency modeling, and provides a measurable unified data representation for subsequent similarity calculations.
[0159] In a possible embodiment, step a44, generating an iterative relative distance distribution based on the reconstructed geodesic distance, includes:
[0160] Step b1: Aggregate the geodesic distances between all existing business servers and client servers to generate a geodesic distance set.
[0161] The geodesic distance set may refer to a numerical set of geodesic distances between a client server and all existing service servers, including a quantized value of configuration differences of each server pair, which is calculated based on hyperbolic space geometry.
[0162] In the embodiment of the present application, the geodesic distance values between the client server and all existing service servers are first obtained, then these distance values are aggregated into a data structure, and finally a geodesic distance set containing all distance values is generated.
[0163] Step b2: Based on the geodesic distance set, construct a distance relationship pair set between each pair of business servers and client servers.
[0164] In an embodiment of the present application, each distance value in the geodetic distance set is first traversed, and then each distance value is combined with the corresponding business server and client server identifiers, and then a tuple containing the server pair identifier and the distance value is constructed, and finally a distance relationship pair set is generated.
[0165] Step b3: In the distance relationship pair set, calculate the relative distance difference of each distance relationship pair to generate a relative distance difference set.
[0166] The distance relationship pair set refers to a structured dataset of server relationships. Each element contains a business server identifier, a client server identifier, and its geodesic distance value, reflecting the configuration differences between servers. The relative distance difference is the normalized difference between the geodesic distance of a single server pair and the benchmark distance. Dividing the distance eliminates dimensionality and allows comparison of configuration differences of varying magnitudes.
[0167] In an embodiment of the present application, the distance value of each server pair is first extracted from the distance relationship pair set, then the difference between the distance value and the reference benchmark distance is calculated, and then the difference is divided by the reference benchmark distance to obtain a standardized difference, and finally a relative distance difference set is generated.
[0168] Step b4: Count the distribution characteristics of the relative distance difference set to generate an iterative relative distance distribution.
[0169] The relative distance difference set is the summary of the relative distance differences across all server pairs, containing relative metrics of configuration differences for statistical analysis. The distribution characteristics are the statistical properties of the relative distance difference set, including indicators such as central tendency, dispersion, and distribution shape, which can be extracted using probabilistic statistical methods.
[0170] In an embodiment of the present application, the numerical distribution characteristics of the relative distance difference set are first analyzed, and then the statistical indicators of these differences including mean, variance and skewness are calculated, and then the probability density function is fitted, and finally an iterative relative distance distribution describing the overall distribution pattern is generated.
[0171] The following is a specific example: First, the geodesic distances between the client server and all business servers are aggregated to generate a geodesic distance set. Next, a set of distance relationship pairs consisting of server IDs and distance values is constructed. The relative distance difference between the geodesic distance of each server pair and the average distance is calculated to form a relative distance difference set. Finally, the distribution characteristics of this set, such as the mean and variance, are analyzed to generate an iterative relative distance distribution that describes the configuration difference pattern.
[0172] By executing steps b1 to b4, the embodiment of the present application generates a distribution model reflecting the overall configuration difference pattern through standardized distance difference statistics, providing a reliable quantitative evaluation basis for curvature optimization.
[0173] Figure 2 A schematic diagram of the structure of a software development resource scheduling system based on big data provided in an embodiment of the present application is shown as follows: Figure 2 As shown, the system includes:
[0174] The collection module 21 is used to collect the environment configuration description text of the client server, extract the platform type, library dependency version and hardware parameters from the environment configuration description text, and construct a heterogeneous configuration feature map.
[0175] The construction module 22 is used to map the heterogeneous configuration feature graph into the hyperbolic embedding space, and combine the curvature adaptive algorithm to measure the environmental configuration similarity value between the client server and the existing business servers in the pre-built resource pool. The resource pool is constructed based on historical big data.
[0176] The matching module 23 is used to screen existing business servers with configuration similarity values greater than a preset similarity threshold and matching resource types from the resource pool according to the resource types required for the software development task provided by the client server.
[0177] The sorting module 24 is configured to sort the called business servers in descending order of similarity values, and flexibly schedule software development resources in the called business servers based on the sorting results.
[0178] Figure 2The software development resource scheduling system based on big data can be executed Figure 1 The implementation principle and technical effects of the big data-based software development resource scheduling method described in the illustrated embodiment will not be elaborated on here. The specific manner in which each module and unit performs operations in the big data-based software development resource scheduling system in the above embodiment has been described in detail in the embodiment of the method and will not be elaborated on here.
[0179] In one possible design, Figure 2 The software development resource scheduling system based on big data of the embodiment shown can be implemented as a computing device, such as Figure 3 As shown, the computing device may include a storage component 31 and a processing component 32 .
[0180] The storage component 31 stores one or more computer instructions, wherein the one or more computer instructions are called and executed by the processing component 32 .
[0181] The processing component 32 is used to execute the following process: collect the environmental configuration description text of the client server, extract the platform type, library dependency version and hardware parameters from the environmental configuration description text, and construct a heterogeneous configuration feature map. The heterogeneous configuration feature map is mapped to the hyperbolic embedding space, and combined with the curvature adaptive algorithm, the environmental configuration similarity value between the client server and the existing business servers in the pre-built resource pool is measured. The resource pool is constructed based on historical big data. According to the resource type required for the software development task provided by the client server, the configuration similarity value is greater than the preset similarity threshold and the existing business servers with matching resource types are screened from the resource pool. The called business servers are sorted in descending order according to the similarity value, and based on the sorting result, the software development resources in the called business servers are flexibly scheduled.
[0182] The processing component 32 may include one or more processors to execute computer instructions to complete all or part of the steps in the above method. Of course, the processing component may also be implemented as one or more application-specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components to perform the above method.
[0183] The storage component 31 is configured to store various types of data to support operations on the terminal. The storage component can be implemented by any type of volatile or non-volatile memory device, or a combination thereof, such as random access memory (RAM), static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, magnetic disk, or optical disk.
[0184] Of course, a computing device may also include other components, such as input / output interfaces, display components, communication components, etc.
[0185] The input / output interface provides an interface between the processing component and the peripheral interface module, which can be an output device, an input device, etc.
[0186] The communication component is configured to facilitate, among other things, wired or wireless communications between the computing device and other devices.
[0187] Among them, the computing device can be a physical device or an elastic computing host provided by a cloud computing platform, etc. In this case, the computing device can refer to a cloud server, and the above-mentioned processing components, storage components, etc. can be basic server resources rented or purchased from the cloud computing platform.
[0188] The present application also provides a computer storage medium storing a computer program, wherein the computer program can achieve the above-mentioned Figure 1 The illustrated embodiment provides a software development resource scheduling method based on big data.
[0189] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and units described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.
[0190] The device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, i.e., they may be located in one location or distributed across multiple network units. Some or all of the modules may be selected based on actual needs to achieve the objectives of the present embodiment. Persons of ordinary skill in the art will be able to understand and implement the present invention without inventive effort.
[0191] Through the above description of the embodiments, those skilled in the art will clearly understand that each embodiment can be implemented using software plus a necessary general-purpose hardware platform, or of course, hardware. Based on this understanding, the essence of the above technical solution, or the portion that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, a magnetic disk, or an optical disk, and includes a number of instructions for causing a computer device (such as a personal computer, server, or network device) to execute the methods described in each embodiment or certain portions of the embodiments.
[0192] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application.
Claims
1. A software development resource scheduling method based on big data, characterized in that: include: Collecting the environment configuration description text of the client server, extracting the platform type, library dependency version and hardware parameters from the environment configuration description text, and constructing a heterogeneous configuration feature map; Mapping the heterogeneous configuration feature graph to a hyperbolic embedding space, and combining it with a curvature adaptive algorithm to measure the environmental configuration similarity between the client server and existing business servers in a pre-built resource pool, where the resource pool is constructed based on historical big data; According to the resource type required for the software development task provided by the client server, screening from the resource pool existing business servers whose configuration similarity values are greater than a preset similarity threshold and match the resource type; Sort the called business servers in descending order of similarity values, and flexibly schedule software development resources in the called business servers based on the sorting results; Mapping the heterogeneous configuration feature graph to a hyperbolic embedding space and combining it with a curvature adaptive algorithm to measure the environmental configuration similarity value between the client server and the existing business servers in the pre-built resource pool includes: Inputting the heterogeneous configuration feature graph into a hyperbolic embedding space, and using an embedding function to generate a point coordinate representation of the client server in the hyperbolic embedding space; Obtaining a point coordinate representation of each existing business server in a pre-built resource pool, and calculating an initial relative distance distribution based on the point coordinate representation of the client server and the point coordinate representation of each existing business server; Iteratively adjusting the curvature parameters of the hyperbolic embedding space through a curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration, thereby obtaining an optimized curvature parameter; Based on the optimized curvature parameter, calculating the hyperbolic distance between the point coordinate representation of the client server and the point coordinate representation of each existing service server; Converting the hyperbolic distance into an environment configuration similarity value according to a preset correlation relationship between the hyperbolic distance and the environment configuration similarity value; The iterative adjustment of the curvature parameters of the hyperbolic embedding space by a curvature adaptive algorithm so as to make the initial relative distance distribution approach the relative distance distribution corresponding to the similarity pattern of the historical environment configuration to obtain the optimized curvature parameters includes: Based on the historical environment configuration of the pre-built resource pool, determine the historical relative distance distribution set between existing servers; Analyzing the historical relative distance distribution set to generate a target relative distance distribution, where the target relative distance distribution is a relative distance distribution corresponding to a similarity pattern of historical environment configurations; Initializing a curvature parameter of the hyperbolic embedding space, and calculating a current distribution difference between the initial relative distance distribution and the target relative distance distribution; updating the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference; If the new distribution difference is less than the current distribution difference, the curvature parameter of this iteration is used as the current curvature parameter, and the new distribution difference is used as the current distribution difference; The updating process is repeated until the current distribution difference is less than a preset threshold or the maximum number of iterations is reached, and the current curvature parameter outputted by the last iteration is outputted as the optimized curvature parameter.
2. The method according to claim 1, characterized in that The updating of the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference, includes: Calculating a curvature parameter adjustment amount according to the current distribution difference; updating the curvature parameter based on the adjustment amount to obtain an updated curvature parameter; reconstructing the geometric structure of the hyperbolic embedding space based on the updated curvature parameters, and recalculating the geodesic distance between the point coordinate representations of the client server and each of the existing service servers; Generate iterative relative distance distribution based on the reconstructed geodesic distance; The iterative relative distance distribution and the target relative distance distribution are calculated to generate a new distribution difference.
3. The method according to claim 1, characterized in that The flexible scheduling of software development resources in the called business server based on the sorting result includes: According to the sorting result, a real-time resource status set of each of the called service servers is obtained, wherein the real-time resource status set includes a resource type and a remaining resource amount; Based on the resource status set and the total resource demand of the software development task, according to the ranking positions of different business servers in the ranking results, dispatch software development resources that match the resource type within the allowed range of remaining resources from the business server with the highest ranking position, and calculate the resource demand to be met; When the resource demand to be met is not zero, dynamically monitor the resource utilization of business servers in other sorting positions, and dispatch the required software development resources from business servers with resource utilization below a preset threshold in the sorting order until the resource demand to be met reaches zero, thereby obtaining a resource allocation result; The software development resources in the business server are flexibly scheduled according to the resource allocation result.
4. The method according to claim 1, wherein The constructing of the heterogeneous configuration feature map includes: Mapping the identifier of the platform type to a standard platform type in a predefined platform type space to generate a platform type feature vector; Extract the major version number, minor version number, and revision number from the string corresponding to the library dependency version to generate three-dimensional version coordinates; Normalizing the unit dimension of the hardware parameter to generate a hardware parameter feature vector; A configuration dependency relationship is constructed among the platform type feature vector, the three-dimensional version coordinates, and the hardware parameter feature vector to generate a heterogeneous configuration feature graph.
5. The method according to claim 2, characterized in that Generating an iterative relative distance distribution according to the reconstructed geodesic distance includes: Aggregating the geodetic distances between all the existing service servers and the client server to generate a geodetic distance set; Based on the geodesic distance set, construct a distance relationship pair set for each pair of business servers and client servers; In the distance relationship pair set, calculating the relative distance difference of each distance relationship pair to generate a relative distance difference set; The distribution characteristics of the relative distance difference set are counted to generate an iterative relative distance distribution.
6. A software development resource scheduling system based on big data, characterized in that: include: A collection module is used to collect the environment configuration description text of the client server, extract the platform type, library dependency version and hardware parameters from the environment configuration description text, and construct a heterogeneous configuration feature map; A construction module is used to map the heterogeneous configuration feature graph into a hyperbolic embedding space and, in combination with a curvature adaptive algorithm, measure the environmental configuration similarity between the client server and existing business servers in a pre-built resource pool, where the resource pool is constructed based on historical big data; A matching module is used to screen, from the resource pool, existing business servers that have a configuration similarity value greater than a preset similarity threshold and that match the resource type required for the software development task provided by the client server; A sorting module is used to sort the called business servers in descending order of similarity values, and flexibly schedule software development resources in the called business servers based on the sorting results; Mapping the heterogeneous configuration feature graph to a hyperbolic embedding space and combining it with a curvature adaptive algorithm to measure the environmental configuration similarity value between the client server and the existing business servers in the pre-built resource pool includes: Inputting the heterogeneous configuration feature graph into a hyperbolic embedding space, and using an embedding function to generate a point coordinate representation of the client server in the hyperbolic embedding space; Obtaining a point coordinate representation of each existing business server in a pre-built resource pool, and calculating an initial relative distance distribution based on the point coordinate representation of the client server and the point coordinate representation of each existing business server; Iteratively adjusting the curvature parameters of the hyperbolic embedding space through a curvature adaptive algorithm so that the initial relative distance distribution approaches the relative distance distribution corresponding to the similarity pattern of the historical environment configuration, thereby obtaining an optimized curvature parameter; Based on the optimized curvature parameter, calculating the hyperbolic distance between the point coordinate representation of the client server and the point coordinate representation of each existing service server; Converting the hyperbolic distance into an environment configuration similarity value according to a preset correlation relationship between the hyperbolic distance and the environment configuration similarity value; The iterative adjustment of the curvature parameters of the hyperbolic embedding space by a curvature adaptive algorithm so as to make the initial relative distance distribution approach the relative distance distribution corresponding to the similarity pattern of the historical environment configuration to obtain the optimized curvature parameters includes: Based on the historical environment configuration of the pre-built resource pool, determine the historical relative distance distribution set between existing servers; Analyzing the historical relative distance distribution set to generate a target relative distance distribution, where the target relative distance distribution is a relative distance distribution corresponding to a similarity pattern of historical environment configurations; Initializing a curvature parameter of the hyperbolic embedding space, and calculating a current distribution difference between the initial relative distance distribution and the target relative distance distribution; updating the curvature parameter based on the current distribution difference, and recalculating the iterative relative distance distribution between the client server and each service server according to the updated curvature parameter to generate a new distribution difference; If the new distribution difference is less than the current distribution difference, the curvature parameter of this iteration is used as the current curvature parameter, and the new distribution difference is used as the current distribution difference; The updating process is repeated until the current distribution difference is less than a preset threshold or the maximum number of iterations is reached, and the current curvature parameter outputted by the last iteration is outputted as the optimized curvature parameter.
7. A computing device, characterized in that It includes a processing component and a storage component; the storage component stores one or more computer instructions; the one or more computer instructions are used to be called and executed by the processing component to implement a software development resource scheduling method based on big data as described in any one of claims 1 to 5.
8. A computer storage medium, characterized in that A computer program is stored, and when the computer program is executed by a computer, the method for scheduling software development resources based on big data as described in any one of claims 1 to 5 is implemented.
Citation Information
Patent Citations
Method for realizing service migration by utilizing similarity algorithm based on ARMA
CN119271411A
Dynamic task flow-oriented heterogeneous hardware resource pool scheduling matching method and device, electronic equipment, storage medium and program product
CN119960981A
Cited By
Heterogeneous computing power pool resource scheduling method and system based on big data analysis
CN121858287A