Batch job performance analysis method and device and storage medium
By building and converting directed graphs, calculating the key paths and actual running time of batch jobs, the problem of low performance analysis of batch jobs in the existing technology is solved, and more efficient performance analysis and optimization is achieved.
Patent Information
- Application Number
- CN202510166967.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-14
- Publication Date
- 2025-06-03
AI Technical Summary
When handling batch job performance analysis with complex scheduling relationships, the prior art has high computational cost, low analysis efficiency, and lacks general performance measurement tools, making it difficult to identify job bottlenecks, affecting performance optimization and resource allocation.
By determining the batch jobs to be analyzed, a directed graph is constructed, a multi-level dependency is identified and transformed into a single-level dependency, the actual running time of the job on the critical path is calculated, the jobs that exceed the preset threshold are marked, and an optimization strategy is generated.
Improve the efficiency of batch job performance analysis, provide visual key paths and performance bottleneck identification, and help optimize job scheduling and resource allocation.
Smart Images

Figure CN120087683A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of fintech, and more particularly, to a method, apparatus, and storage medium for analyzing the performance of batch jobs. Background Art
[0002] In modern financial information systems, batch job scheduling is a key component to ensure the efficient operation of financial institutions such as banks. It involves the automatic execution of a large number of background jobs, such as data processing, report generation, account aggregation, etc., and these jobs are usually carried out according to a predetermined scheduling relationship. However, with the continuous growth of business requirements, the number and complexity of batch jobs are increasing rapidly, the dependencies between jobs are becoming increasingly complex, and the scheduling relationship has become intricate and difficult to solve. This not only increases the difficulty of job scheduling but also makes the analysis of batch job performance extremely challenging.
[0003] When dealing with the performance analysis of batch jobs with complex scheduling relationships, for batch jobs with complex scheduling, especially those job scheduling graphs with multiple dependencies and large-scale node structures, existing analysis tools often calculate the critical path by traversing or exhaustive methods. This method has extremely high computational costs and low analysis efficiency when dealing with millions or more possible paths, and it is difficult to meet the requirements of real-time or rapid response. Secondly, existing technologies lack a general measurement tool, and there is currently no performance measurement tool on the market that can be generally applicable to various batch jobs. This has led to a lack of effective quantitative indicators in the design and optimization of job scheduling, making it difficult for operation and maintenance personnel to intuitively identify job bottlenecks, thus affecting the performance optimization and resource allocation of batch jobs.
[0004] Regarding the problem of low analysis efficiency in the analysis of the performance of batch jobs with complex scheduling relationships in the related art, no effective solution has been proposed yet. Summary of the Invention
[0005] The main purpose of this application is to provide a method, apparatus, and storage medium for analyzing the performance of batch jobs to solve the problem of low analysis efficiency in the analysis of the performance of batch jobs with complex scheduling relationships in the related art.
[0006] To achieve the above objective, according to one aspect of this application, a method for analyzing the performance of batch jobs is provided. The method includes: determining a batch job to be analyzed for performance, where the batch job is composed of multiple logically interdependent jobs; determining the critical path of the batch job according to the scheduling information of the batch job; and determining the analysis result of the performance of the batch job according to the critical path.
[0007] Further, before determining the critical path of the batch job according to the scheduling information of the batch job, the method includes: obtaining the scheduling information of the batch job, where the scheduling information at least includes the direct predecessor information, successor job information, start time, and end time of each job in the batch job; based on the direct predecessor information and successor job information of each job in the batch job, constructing a directed graph, where each job in the directed graph is used as a node, and the dependency relationship between jobs is used as an edge; traversing the directed graph to check whether there is a path with a multi-level dependency relationship in the directed graph; in the case where there is a path with a multi-level dependency relationship in the directed graph, converting the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0008] Further, determining the critical path of the batch job according to the scheduling information of the batch job includes: using the last node in the target directed graph as the first node; finding the direct predecessor nodes of the first node, and determining the second node among all the direct predecessor nodes of the first node, where the end time of the job corresponding to the second node is later than the end time of the jobs corresponding to the other predecessor nodes of the first node; continuing to execute the step of finding the direct predecessor nodes of the second node and determining the third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be the root node, where the root node is the node corresponding to the first job to start execution in the batch job; determining the critical path of the batch job according to the first node, the second node, the Nth node, and the root node.
[0009] Further, in the case where there is a path with a multi-level dependency relationship in the directed graph, converting the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph includes: determining the start node of the path with the multi-level dependency relationship as the target node; determining whether the target node is the root node, and in the case where the target node is not the root node, traversing the direct predecessor nodes of the target node; in the case where there are direct predecessor nodes of the direct predecessor nodes of the target node, recursively traversing forward until the root node is found, and converting the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0010] Further, before determining the analysis result of the performance of the batch job according to the critical path, the method further includes: traversing all the jobs on the critical path, calculating the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; comparing the actual running time of each job with a preset threshold; if there is a job on the critical path whose actual running time exceeds the preset threshold, determining the job whose actual running time exceeds the preset threshold as the target job.
[0011] Further, according to the critical path, determining the performance analysis result of the batch job includes: when there is no target job in the critical path, displaying the critical path; when there is a target job in the critical path, displaying the critical path and marking the target job.
[0012] Further, when there is a target job in the critical path, displaying the critical path and marking the target job includes: generating a strategy for optimizing the target job according to the critical path and the target job.
[0013] To achieve the above object, according to another aspect of the present application, there is provided an analysis device for the performance of a batch job. The device includes: a first determination unit for determining a batch job to be analyzed for performance, where the batch job is composed of a plurality of logically interdependent jobs; a second determination unit for determining the critical path of the batch job according to the scheduling information of the batch job; and a third determination unit for determining the analysis result of the performance of the batch job according to the critical path.
[0014] Further, the device further includes: an acquisition unit for acquiring the scheduling information of the batch job, where the scheduling information at least includes the direct predecessor information, successor job information, start time, and end time of each job in the batch job; a construction unit for constructing a directed graph based on the direct predecessor information and successor job information of each job in the batch job, where each job in the directed graph is used as a node and the dependency relationship between jobs is used as an edge; an inspection unit for traversing the directed graph to check whether there is a path with a multi-level dependency relationship in the directed graph; and a transformation unit for, when there is a path with a multi-level dependency relationship in the directed graph, transforming the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0015] Further, the second determination unit includes: a first determination module for taking the last node in the target directed graph as the first node; a second determination module for finding the direct predecessor nodes of the first node and determining a second node among all the direct predecessor nodes of the first node, where the end time of the job corresponding to the second node is later than the end time of the jobs corresponding to the other predecessor nodes of the first node; a third determination module for continuing to execute the step of finding the direct predecessor nodes of the second node and determining a third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be the root node, where the root node is the node corresponding to the first job to start execution in the batch job; and a fifth determination module for determining the critical path of the batch job according to the first node, the second node, the Nth node, and the root node.
[0016] Further, the transformation unit includes: a sixth determination module, configured to determine that the start node of the path of the multi-level dependency relationship is the target node; a judgment module, configured to judge whether the target node is the root node, and in the case that the target node is not the root node, traverse the direct predecessor nodes of the target node; a transformation module, configured to recursively traverse forward until the root node is found in the case that the direct predecessor nodes of the direct predecessor nodes of the target node exist, and transform the path of the multi-level dependency relationship into the path of the single-level dependency relationship to obtain the target directed graph.
[0017] Further, the apparatus further includes: a traversal unit, configured to traverse all jobs on the critical path and calculate the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; a comparison unit, configured to compare the actual running time of each job with a preset threshold; a fourth determination unit, configured to determine a job whose actual running time exceeds the preset threshold as the target job if there is a job on the critical path whose actual running time exceeds the preset threshold.
[0018] Further, the third determination unit includes: a first display module, configured to display the critical path in the case that there is no target job in the critical path; a second display module, configured to display the critical path and mark the target job in the case that there is a target job in the critical path.
[0019] Further, the second display module includes: an optimization sub-module, configured to generate a strategy for optimizing the target job according to the critical path and the target job.
[0020] According to another aspect of the present application, there is provided a computer-readable storage medium, where the computer-readable storage medium includes a stored program, and when the program runs, it controls the device where the computer-readable storage medium is located to execute any one of the analysis methods for the performance of batch jobs.
[0021] According to another aspect of the present application, there is provided an electronic device, including: one or more processors, a memory, and one or more programs, where one or more programs are stored in the memory and are configured to be executed by one or more processors, and one or more programs include those for executing any one of the analysis methods for the performance of batch jobs.
[0022] According to another aspect of the present application, there is provided a computer program product, including computer instructions, where when the computer instructions are executed by a processor, the steps of the analysis method for the performance of batch jobs as described in any one of the above are implemented.
[0023] In the embodiments of the present application, by determining a batch job to be analyzed for performance, where the batch job is composed of multiple logically interdependent jobs; determining the critical path of the batch job according to the scheduling information of the batch job; and determining the analysis result of the performance of the batch job according to the critical path, the technical problem of low analysis efficiency in analyzing the performance of batch jobs with complex scheduling relationships is solved. In the present application, by using the critical path method, the critical path of the batch job to be analyzed for performance is determined, and the performance of the batch job is analyzed through the critical path to obtain the analysis result, thereby achieving the technical effect of improving the analysis efficiency of the performance of the batch job. BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings constituting a part of this application are used to provide a further understanding of the present application. The schematic embodiments and descriptions thereof of the present application are used to explain the present application and do not constitute an improper limitation to the present application. In the drawings:
[0025] Figure 1 shows a hardware structure block diagram of a computer terminal for implementing a method for analyzing the performance of a batch job;
[0026] Figure 2 is a flowchart of a method for analyzing the performance of a batch job provided according to an embodiment of the present application;
[0027] Figure 3 is a schematic diagram of a directed graph provided according to an embodiment of the present application;
[0028] Figure 4 is a schematic diagram of a target directed graph provided according to an embodiment of the present application;
[0029] Figure 5 is a flowchart of determining the critical path of a batch job provided according to an embodiment of the present application;
[0030] Figure 6 is a schematic diagram of an apparatus for analyzing the performance of a batch job provided according to an embodiment of the present application;
[0031] Figure 7 is a block diagram of the structure of an electronic device according to an embodiment of the present application. DETAILED DESCRIPTION OF THE EMBODIMENTS
[0032] In order to enable those skilled in the art to better understand the solution of the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only a part of the embodiments of the present application, rather than all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative efforts shall fall within the protection scope of the present application.
[0033] It should be noted that the terms "first", "second", etc. in the description, claims and above-mentioned drawings of this application are used to distinguish similar objects, and do not necessarily describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of this application described here can be implemented in an order other than those illustrated or described here. In addition, the terms "comprising" and "having" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units does not necessarily have to be limited to those steps or units clearly listed, but may include other steps or units not clearly listed or inherent to these processes, methods, products or devices.
[0034] It should be noted that the relevant information and data involved in this application (including but not limited to data of batch jobs for performance analysis, etc.) are all information and data authorized by users or fully authorized by all parties.
[0035] Embodiment 1
[0036] According to the embodiments of this application, there is also provided a method embodiment for analyzing the performance of batch jobs. It should be noted that the steps shown in the flowchart of the drawings can be executed in a computer system such as a set of computer-executable instructions. And although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than here.
[0037] The method embodiment provided by the first embodiment of this application can be executed on a mobile terminal, a computer terminal or a similar computing device. Figure 1 The hardware structure block diagram of a computer terminal (or mobile device) for implementing the method for analyzing the performance of batch jobs is shown. As Figure 1 shown, the computer terminal 10 (or mobile device) may include one or more (shown as 102a, 102b,..., 102n in the figure) processors 102 (the processor 102 may include, but is not limited to, processing devices such as a microprocessor MCU or a programmable logic device FPGA), a memory 104 for storing data, and a transmission device 106 for communication functions. In addition, it may further include: a display, an input / output interface (I / O interface), a universal serial bus (USB) port (which can be included as one of the ports of the BUS bus), a network interface, a power supply and / or a camera. Those of ordinary skill in the art can understand that Figure 1 the structure shown is only schematic and does not limit the structure of the above-mentioned electronic device. For example, the computer terminal 10 may further include more or fewer components than Figure 1 shown, or have a different configuration from Figure 1 shown.
[0038] It should be noted that one or more of the above-mentioned processors 102 and / or other data processing circuits can generally be referred to as "data processing circuits" herein. The data processing circuit can be embodied in software, hardware, firmware, or any combination thereof, in whole or in part. In addition, the data processing circuit can be a single independent processing module, or be incorporated in whole or in part into any one of other elements in the computer terminal 10 (or mobile device). As involved in the embodiments of the present application, the data processing circuit is a processor control (such as the selection of a variable resistance terminal path connected to an interface).
[0039] The memory 104 can be used to store software programs and modules of application software, such as the program instructions / data storage device corresponding to the analysis method of batch job performance in the embodiments of the present application. The processor 102 executes various functional applications and data processing by running the software programs and modules stored in the memory 104, that is, implements the above-mentioned analysis method of batch job performance. The memory 104 can include high-speed random access memory, and can also include non-volatile memory, such as one or more magnetic storage devices, flash memory, or other non-volatile solid-state memories. In some instances, the memory 104 can further include a memory remotely set relative to the processor 102, and these remote memories can be connected to the computer terminal 10 through a network. Examples of the above-mentioned network include but are not limited to the Internet, intranet, local area network, mobile communication network, and combinations thereof.
[0040] The transmission device 106 is used to receive or send data via a network. Specific examples of the above-mentioned network can include a wireless network provided by the communication provider of the computer terminal 10. In one instance, the transmission device 106 includes a network adapter (Network Interface Controller, NIC), which can be connected to other network devices through a base station and thus communicate with the Internet. In one instance, the transmission device 106 can be a radio frequency (RF) module, which is used to communicate with the Internet wirelessly.
[0041] The display can be, for example, a touch-screen liquid crystal display (LCD), which enables a user to interact with the user interface of the computer terminal 10 (or mobile device).
[0042] Under the above operating environment, the present application provides an analysis method of batch job performance as Figure 2 shown. Figure 2 is a flowchart of the analysis method of batch job performance according to Embodiment 1 of the present application.
[0043] Step S201: Determine the batch job to be performance - analyzed, where the batch job is composed of multiple logically interdependent jobs.
[0044] Optionally, in financial institutions or enterprise - level applications, batch jobs may involve various tasks such as data processing, report generation, system backup, etc. They are logically interdependent and form a job chain or job network. For example, a batch - processing flow can include four jobs: data collection, data cleaning, data analysis, and data report generation. Among them, data cleaning can only start after data collection is completed, data analysis can only start after data cleaning is completed, and finally data report generation can only start after data analysis is completed. Therefore, the determined batch job to be performance - analyzed is composed of multiple logically interdependent jobs.
[0045] Step S202: Determine the critical path of the batch job according to the scheduling information of the batch job.
[0046] Optionally, the above - mentioned scheduling information of the batch job is the key data in the batch - processing system used to define and control the execution order, time, and resource allocation of jobs. The scheduling information describes the start time, end time of each job, and the dependency relationship between jobs, and is the core component of the batch - job scheduling system. The critical path can be determined according to the scheduling information of the job (such as start time, end time, dependency relationship, etc.). The critical path refers to the longest path from the start node to the end node in all possible job - execution sequences, and the critical path determines the completion time of the entire batch - processing flow.
[0047] Step S203: Determine the analysis result of the batch - job performance according to the critical path.
[0048] Optionally, after identifying the critical path, the performance result of the batch job can be analyzed and determined based on the job information on the critical path. Determining the analysis result of the batch - job performance can include calculating the total elapsed time of the critical path, identifying jobs that exceed the preset threshold, analyzing the job - running status, etc., so as to obtain the analysis result.
[0049] In summary, the method for analyzing the performance of a batch job provided by the embodiments of the present application solves the technical problem of low analysis efficiency for batch jobs with complex scheduling relationships by determining the batch job to be performance - analyzed, where the batch job is composed of multiple logically interdependent jobs; determining the critical path of the batch job according to the scheduling information of the batch job; and determining the analysis result of the batch - job performance according to the critical path, and achieves the technical effect of improving the analysis efficiency of the batch - job performance.
[0050] In an optional embodiment, before determining the critical path of the batch job according to the scheduling information of the batch job, the method includes:
[0051] First step, obtain the scheduling information of the batch jobs, where the scheduling information includes at least the direct predecessor information, successor job information, start time, and end time of each job in the batch jobs.
[0052] Optionally, obtain the direct predecessor information, successor job information, start time, and end time of each job in the batch jobs. These information are the basis of job scheduling, defining the execution order between jobs and the expected execution time window.
[0053] For example, in a batch processing flow, the successor jobs of job A (data collection) are B (data cleaning) and C (data backup), the successor job of job B is D (data analysis), and the successor jobs of jobs C and D are E (data report generation). The start time of job A is 0:00 am every day, and the expected end time is 1:00 am; jobs B and C start after job A is completed, and the expected end times are 2:00 am and 1:15 am respectively; job D starts after job B is completed, and the expected end time is 3:00 am; and job E starts after jobs C and D are completed, and the expected end time is 3:30 am.
[0054] Second step, based on the direct predecessor information and successor job information of each job in the batch jobs, construct a directed graph, where each job in the directed graph is used as a node, and the dependency relationship between jobs is used as an edge.
[0055] Optionally, the above directed graph is a commonly used data structure, consisting of a set of nodes and a set of directed edges, used to represent entities and their directional relationships. In the scheduling and dependency analysis of batch jobs, the directed graph is a key tool for constructing and understanding the job flow, which can clearly show the execution order and dependency relationship between jobs. According to the collected scheduling information, each job can be used as a node in the graph, and the dependency relationship between jobs is represented as a directed edge between nodes.
[0056] For example, the scheduling information of the batch jobs is as follows:
[0057] Job A (data collection) has no predecessor, but both job B and job C depend on job A;
[0058] Job B (data cleaning) depends on job A, and job D depends on job B;
[0059] Job C (data backup) also depends on job A, but it executes in parallel with job B, and job E depends on job C and job D;
[0060] It can be constructed as Figure 3The directed graph shown, where nodes A, B, C, D, and E represent the corresponding jobs respectively. The arrows represent the dependency relationships. The arrow from node A to node B indicates that job B depends on job A to execute. Similarly, the arrow from node B to node D indicates that job D depends on the result of job B.
[0061] In the third step, traverse the directed graph and check whether there is a path with multi-level dependency relationships in the directed graph.
[0062] Optionally, traverse and check whether there is a path with multi-level dependency relationships, that is, the completion of one job directly or indirectly affects the start of multiple successor jobs. Multi-level dependency relationships increase the complexity of critical path calculation because different levels of dependency chains need to be considered.
[0063] For example, in the above directed graph, there are multi-level dependencies. Job A directly affects jobs B and C, and jobs B and C respectively affect jobs D and E, thus forming a path with multi-level dependencies.
[0064] In the fourth step, in the case where there is a path with multi-level dependency relationships in the directed graph, convert the path with multi-level dependency relationships into a path with single-level dependency relationships to obtain the target directed graph.
[0065] Optionally, to simplify the calculation of the critical path, the path with multi-level dependency relationships can be converted into a path with single-level dependency relationships, that is, each job directly depends on and only depends on one predecessor job, and indirect dependencies are converted into direct dependencies. This is usually achieved by "flattening" the multi-level dependency relationships, that is, reconstructing the dependency relationships to form a new directed graph structure with fewer levels and more direct dependency chains.
[0066] For example, to simplify the calculation of the critical path, the Figure 3 dependency relationships in can be flattened, as shown in Figure 4 For the converted target directed graph, the dependency relationships among jobs A, B, C, D, and E are simplified to single-level dependencies, thus reducing the complexity of critical path calculation.
[0067] Through the above technical solution, the path with multi-level dependency relationships is converted into a path with single-level dependency relationships, simplifying the calculation of the critical path, reducing the calculation complexity, and improving the calculation efficiency and speed.
[0068] In an alternative embodiment, as shown in Figure 5 Determining the critical path of the batch job according to the scheduling information of the batch job includes:
[0069] Step S501, use the last node in the target directed graph as the first node.
[0070] Optionally, the last node refers to the last job in the batch job process, and there is no subsequent job depending on it. Mark the last node as the first node, which serves as the starting point for critical path search.
[0071] Step S502: Find the direct predecessor nodes of the first node, and determine the second node among all the direct predecessor nodes of the first node, where the end times of the jobs corresponding to the second node are all later than the end times of the jobs corresponding to the other predecessor nodes of the first node.
[0072] Optionally, after determining the first node, its direct predecessor nodes can be found. A direct predecessor node refers to the node corresponding to the job that must logically be completed before the first node. Among these predecessor nodes, select the node with the latest end time as the second node. This selection process is the core of critical path identification because it focuses on the jobs that have the greatest impact on the final completion time.
[0073] Step S503: Continue to execute the step of finding the direct predecessor nodes of the second node and determining the third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is the root node, where the root node is the node corresponding to the first job started in the batch job.
[0074] Optionally, taking the determined second node as the new starting point, repeat the process of Step S502, continue to find its direct predecessor nodes, and determine the node with the latest end time among them as the third node. This process is repeated continuously until the root node in the batch job is found, that is, the node corresponding to the job without a predecessor node. This recursive search process ensures that the longest dependency path between the root node and the last node can be identified, which is the critical path.
[0075] Step S504: Determine the critical path of the batch job based on the first node, the second node, the Nth node, and the root node.
[0076] Optionally, after completing the above search, connect the found first node, second node, third node... Nth node and the root node in series, which constitutes the longest dependency path from the start to the end of the batch job, that is, the critical path. The job sequence on the critical path determines the shortest completion time of the entire batch job. Therefore, optimizing the performance of the jobs on the critical path can most effectively shorten the total time-consuming of batch processing.
[0077] For example, there is the following scheduling information and dependency relationship for a batch job:
[0078] Job A: Data collection, start time 00:00, end time 01:00;
[0079] Job B: Data cleaning, start time 01:00, end time 02:30 (depends on A);
[0080] Job C: Data backup, start time 01:00, end time 01:30 (depends on A);
[0081] Job D: Data analysis, start time 02:30, end time 04:00 (depends on B);
[0082] Job E: Data report generation, start time 01:30, end time 02:00 (depends on C and D);
[0083] Determine the critical path according to the following steps: Take the last node in the target directed graph as the first node, which is node E here; then reverse-search its direct predecessor nodes, namely D and C, where D depends on B and B depends on A. Therefore, the entire critical path should be A -> B -> D -> E. The total time consumption of the critical path is 4 hours and 30 minutes, starting from 00:00 and ending at 04:30.
[0084] Through the above technical solution, the critical path of the batch jobs is determined, so that the jobs on the critical path can be preferentially optimized and the execution order of the jobs can be reasonably adjusted to reduce the total processing time.
[0085] In an alternative embodiment, in the case of a path with multi-level dependency relationships in the directed graph, the path with multi-level dependency relationships is transformed into a path with single-level dependency relationships, and the obtained target directed graph includes:
[0086] First step, determine the start node of the path with multi-level dependency relationships as the target node.
[0087] Optionally, identify one or more paths with multi-level dependency relationships from the scheduling information of the batch jobs. Multi-level dependency relationships mean that one job may depend on another job, and this job in turn depends on an earlier job, forming a dependency chain. The start node of the path, that is, the end job of the dependency chain, is determined as the target node of the conversion process.
[0088] Second step, determine whether the target node is the root node. In the case where the target node is not the root node, traverse the direct predecessor nodes of the target node.
[0089] Optionally, check whether the target node is the root node. The root node is the node without predecessors, that is, the starting job of the batch jobs. If it is not the root node, then this node has at least one direct predecessor node. The direct predecessor nodes refer to those jobs that directly depend on the target node. Traverse all the direct predecessor nodes of the target node to determine further conversion steps.
[0090] In the third step, when there is a direct predecessor node for the target node, traverse recursively forward until the root node is found, convert the path of the multi-level dependency relationship into a path of a single-level dependency relationship, and obtain the target directed graph.
[0091] Optionally, for each direct predecessor node, if it itself also has a direct predecessor node, it means that there is a multi-level dependency on the current path. At this time, it is necessary to recursively traverse these direct predecessor nodes forward until the root node is found. During the traversal process, gradually construct or adjust the target directed graph to ensure that each node directly depends on its unique predecessor node, thus forming a graph of a single-level dependency relationship.
[0092] Through the above technical solution, the path of the multi-level dependency relationship is converted into a path of a single-level dependency relationship, and the scheduling and performance analysis of batch jobs become more intuitive and efficient.
[0093] In an alternative embodiment, before determining the analysis result of the batch job performance according to the critical path, the method further includes: traversing all jobs on the critical path, calculating the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; comparing the actual running time of each job with a preset threshold; if there is a job on the critical path whose actual running time exceeds the preset threshold, determining the job that exceeds the preset threshold as the target job.
[0094] For example, the critical path is A -> B -> D -> E, and the start time and end time of each job are as follows: Job A: start time 00:00, end time 01:00; Job B: start time 01:00, end time 02:30; Job D: start time 02:30, end time 04:00; Job E: start time 04:00, end time 04:30. Then the calculated actual running times are: Job A: 01:00 - 00:00 = 1 hour; Job B: 02:30 - 01:00 = 1.5 hours; Job D: 04:00 - 02:30 = 1.5 hours; Job E: 04:30 - 04:00 = 0.5 hours.
[0095] Assume that the preset threshold is 1.5 hours, then the comparison results are: Job A: 1 hour (not exceeding the threshold); Job B: 1.5 hours (just reaching the threshold); Job D: 1.5 hours (just reaching the threshold); Job E: 0.5 hours (not exceeding the threshold). The actual running times of Jobs B and D just reach the threshold. Although they do not exceed it, they will also be focused on during performance optimization because they may be the main factors causing the longer overall processing time.
[0096] By setting the threshold through the above technical solution, it is possible to quickly identify those jobs with long running times that may become performance bottlenecks, providing a clear direction for subsequent optimization.
[0097] In an alternative embodiment, determining the performance analysis result of the batch job according to the critical path includes: when there is no target job in the critical path, presenting the critical path; when there is a target job in the critical path, presenting the critical path and marking the target job.
[0098] Optionally, during the critical path analysis process, if it is found that the actual running times of all jobs do not exceed the preset threshold, that is, there is no target job, the entire critical path is directly presented. If the actual running time of a certain job or some jobs on the critical path exceeds the preset threshold, that is, there are target jobs, then while presenting the critical path, these target jobs need to be specially marked. The marked target jobs will be prominently displayed, for example, using different colors, bold fonts, or other visual cues to ensure that they can immediately attract the attention of designers and operation and maintenance personnel.
[0099] Through the above technical solution, clear visualization of the critical path is provided, and the focus of performance optimization is highlighted through the marking of target jobs.
[0100] In an alternative embodiment, when there is a target job in the critical path, presenting the critical path and marking the target job includes: generating a strategy for optimizing the target job according to the critical path and the target job.
[0101] Optionally, after determining the target jobs, the characteristics of these jobs can be analyzed to understand the bottleneck of each target job, providing detailed background information for generating optimization strategies. Based on the characteristic analysis of the target jobs, potential optimization opportunities can be identified. Combining the identified optimization opportunities, specific optimization plans can be designed. The formulated optimization plans are summarized into an optimization strategy report so that designers and operation and maintenance personnel can execute optimization measures according to the report content.
[0102] In summary, through detailed target job analysis and strategy formulation, precise optimization can be carried out for performance bottlenecks, avoiding system instability or efficiency reduction caused by blind adjustment.
[0103] It should be noted that the steps shown in the flowchart of the accompanying drawings can be executed in a computer system such as a set of computer-executable instructions, and although the logical order is shown in the flowchart, in some cases, the steps shown or described can be executed in a different order than here.
[0104] Embodiment 2
[0105] An embodiment of the present application also provides an analysis device for batch job performance. It should be noted that the analysis device for batch job performance in the embodiment of the present application can be used to execute the analysis method for batch job performance provided by the embodiment of the present application. The following introduces the analysis device for batch job performance provided by the embodiment of the present application.
[0106] According to an embodiment of the present application, there is also provided a device for implementing the above-mentioned analysis method for batch job performance, as Figure 6 shown, the device includes: a first determination unit 601, a second determination unit 602, and a third determination unit 603.
[0107] Specifically, the first determination unit 601 is configured to determine a batch job to be analyzed for performance, where the batch job is composed of multiple logically interdependent jobs;
[0108] The second determination unit 602 is configured to determine the critical path of the batch job according to the scheduling information of the batch job;
[0109] The third determination unit 603 is configured to determine the analysis result of the batch job performance according to the critical path.
[0110] The analysis device for batch job performance provided by the embodiment of the present application determines the batch job to be analyzed for performance through the first determination unit 601, where the batch job is composed of multiple logically interdependent jobs; the second determination unit 602 determines the critical path of the batch job according to the scheduling information of the batch job; the third determination unit 603 determines the analysis result of the batch job performance according to the critical path, solving the technical problem of low analysis efficiency for batch jobs with complex scheduling relationships, and thus achieving the effect of improving the analysis efficiency of batch job performance.
[0111] Optionally, in the analysis device for batch job performance provided by the embodiment of the present application, the device further includes: an acquisition unit, configured to acquire the scheduling information of the batch job, where the scheduling information at least includes the direct predecessor information, successor job information, start time, and end time of each job in the batch job; a construction unit, configured to construct a directed graph based on the direct predecessor information and successor job information of each job in the batch job, where each job in the directed graph is used as a node, and the dependency relationship between jobs is used as an edge; an inspection unit, configured to traverse the directed graph to check whether there is a path with a multi-level dependency relationship in the directed graph; a conversion unit, configured to, when there is a path with a multi-level dependency relationship in the directed graph, convert the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0112] Optionally, in the analysis device for batch job performance provided in the embodiments of the present application, the second determination unit 602 includes: a first determination module, configured to use the last node in the target directed graph as the first node; a second determination module, configured to find the direct predecessor nodes of the first node, and determine a second node among all the direct predecessor nodes of the first node, where the end times of the jobs corresponding to the second node are all later than the end times of the jobs corresponding to the other predecessor nodes of the first node; a third determination module, configured to continue to execute the step of finding the direct predecessor nodes of the second node and determining a third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be the root node, where the root node is the node corresponding to the first job started to be executed in the batch job; a fifth determination module, configured to determine the critical path of the batch job according to the first node, the second node, the Nth node, and the root node.
[0113] Optionally, in the analysis device for batch job performance provided in the embodiments of the present application, the conversion unit includes: a sixth determination module, configured to determine the start node of the path of the multi-level dependency relationship as the target node; a judgment module, configured to judge whether the target node is the root node, and in the case where the target node is not the root node, traverse the direct predecessor nodes of the target node; a conversion module, configured to recursively traverse forward until the root node is found when there are direct predecessor nodes of the direct predecessor nodes of the target node, and convert the path of the multi-level dependency relationship into a path of a single-level dependency relationship to obtain the target directed graph.
[0114] Optionally, in the analysis device for batch job performance provided in the embodiments of the present application, the device further includes: a traversal unit, configured to traverse all the jobs on the critical path and calculate the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; a comparison unit, configured to compare the actual running time of each job with a preset threshold; a fourth determination unit, configured to, if there is a job on the critical path whose actual running time exceeds the preset threshold, determine the job whose actual running time exceeds the preset threshold as the target job.
[0115] Optionally, in the analysis device for batch job performance provided in the embodiments of the present application, the third determination unit 603 includes: a first display module, configured to display the critical path in the case where there is no target job in the critical path; a second display module, configured to display the critical path and mark the target job in the case where there is a target job in the critical path.
[0116] Optionally, in the analysis device for batch job performance provided in the embodiments of the present application, the second display module includes: an optimization sub-module, configured to generate a strategy for optimizing the target job according to the critical path and the target job.
[0117] It should be noted here that the above first determination unit 601, second determination unit 602, and third determination unit 603 correspond to steps S201 to S203 in Embodiment 1. The examples and application scenarios implemented by the three units and the corresponding steps are the same, but are not limited to the content disclosed in the above Embodiment 1. It should be noted that the above modules or units can be hardware components or software components stored in a memory (for example, memory 104) and processed by one or more processors (for example, processors 102a, 102b,..., 102n). The above modules can also be part of a device and can run in the computer terminal 10 provided in Embodiment 1.
[0118] Embodiment 3
[0119] An embodiment of the present application can provide a computer terminal, and the computer terminal can be any computer terminal device in a computer terminal group. Optionally, in this embodiment, the above computer terminal can also be replaced with a mobile terminal or a terminal device such as an electronic device.
[0120] Optionally, in this embodiment, the above computer terminal can be located in at least one network device among multiple network devices of a computer network.
[0121] In this embodiment, the above computer terminal can execute program codes of the following steps in the analysis method for the performance of a batch job: determine a batch job to be analyzed for performance, where the batch job is composed of multiple logically interdependent jobs; determine the critical path of the batch job according to the scheduling information of the batch job; determine the analysis result of the performance of the batch job according to the critical path.
[0122] Optionally, the above computer terminal can execute program codes of the following steps in the analysis method for the performance of a batch job: before determining the critical path of the batch job according to the scheduling information of the batch job, the method includes: obtaining the scheduling information of the batch job, where the scheduling information at least includes the direct predecessor information, successor job information, start time, and end time of each job in the batch job; constructing a directed graph based on the direct predecessor information and successor job information of each job in the batch job, where each job in the directed graph is used as a node, and the dependency relationship between jobs is used as an edge; traversing the directed graph to check whether there is a path with a multi-level dependency relationship in the directed graph; in the case where there is a path with a multi-level dependency relationship in the directed graph, converting the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0123] Optionally, the above computer terminal may execute the program code of the following steps in the analysis method for the performance of batch jobs: According to the scheduling information of the batch job, determining the critical path of the batch job includes: taking the last node in the target directed graph as the first node; searching for the direct predecessor nodes of the first node, and determining a second node among all the direct predecessor nodes of the first node, where the end time of the job corresponding to the second node is later than the end time of the jobs corresponding to the other predecessor nodes of the first node; continuing to execute the step of searching for the direct predecessor nodes of the second node and determining a third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be the root node, where the root node is the node corresponding to the first job to be executed in the batch job; determining the critical path of the batch job according to the first node, the second node, the Nth node and the root node.
[0124] Optionally, the above computer terminal may execute the program code of the following steps in the analysis method for the performance of batch jobs: In the case where there is a path with multi-level dependency relationships in the directed graph, converting the path with multi-level dependency relationships into a path with single-level dependency relationships to obtain the target directed graph includes: determining the start node of the path with multi-level dependency relationships as the target node; judging whether the target node is the root node, and in the case where the target node is not the root node, traversing the direct predecessor nodes of the target node; in the case where there are direct predecessor nodes for the direct predecessor nodes of the target node, recursively traversing forward until the root node is found, and converting the path with multi-level dependency relationships into a path with single-level dependency relationships to obtain the target directed graph.
[0125] Optionally, the above computer terminal may execute the program code of the following steps in the analysis method for the performance of batch jobs: Before determining the analysis result of the performance of the batch job according to the critical path, the method further includes: traversing all the jobs on the critical path, calculating the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; comparing the actual running time of each job with a preset threshold; if there is a job on the critical path whose actual running time exceeds the preset threshold, determining the job whose actual running time exceeds the preset threshold as the target job.
[0126] Optionally, the above computer terminal may execute the program code of the following steps in the analysis method for the performance of batch jobs: Determining the performance analysis result of the batch job according to the critical path includes: in the case where there is no target job in the critical path, displaying the critical path; in the case where there is a target job in the critical path, displaying the critical path and marking the target job.
[0127] Optionally, the above computer terminal may execute the program code of the following steps in the method for analyzing the performance of batch jobs: when there is a target job in the critical path, display the critical path and mark the target job, including: generating a strategy for optimizing the target job according to the critical path and the target job.
[0128] Optionally, Figure 7 is a structural block diagram of an electronic device according to an embodiment of the present application. As Figure 7 shown, the electronic device may include: one or more ( Figure 7 only one is shown in the figure) processors 702, a memory 704, a storage controller, and a peripheral interface, where the peripheral interface is connected to a radio frequency module, an audio module, and a display.
[0129] Among them, the memory can be used to store software programs and modules, such as the program instructions / modules corresponding to the method and device for analyzing the performance of batch jobs in the embodiments of the present application. The processor executes various functional applications and data processing by running the software programs and modules stored in the memory, that is, implements the above method for analyzing the performance of batch jobs. The memory may include a high-speed random access memory, and may also include a non-volatile memory, such as one or more magnetic storage devices, flash memories, or other non-volatile solid-state memories. In some instances, the memory may further include a memory remotely provided with respect to the processor, and these remote memories may be connected to the terminal through a network. Examples of the above network include but are not limited to the Internet, an enterprise intranet, a local area network, a mobile communication network, and combinations thereof.
[0130] The processor may call the information and application programs stored in the memory through a transmission device to execute the above steps in the method for analyzing the performance of batch jobs.
[0131] Adopting the embodiments of the present application provides a solution for analyzing the performance of batch jobs. By determining the batch jobs to be analyzed for performance, where the batch jobs are composed of multiple logically interdependent jobs; determining the critical path of the batch jobs according to the scheduling information of the batch jobs; and determining the analysis result of the performance of the batch jobs according to the critical path, the technical problem of low analysis efficiency for analyzing the performance of batch jobs with complex scheduling relationships is solved, and the technical effect of improving the analysis efficiency of the performance of batch jobs is achieved.
[0132] Those of ordinary skill in the art can understand that Figure 7 the structure shown is only schematic, and the electronic device may also be a smart phone (such as an Android phone, an iOS phone, etc.), a tablet computer, a handheld computer, and a mobile Internet device (Mobile Internet Devices, MID), a PAD and other terminal devices. Figure 7It does not limit the structure of the above-mentioned electronic device. For example, the electronic device may further include more or fewer components (such as a network interface, a display device, etc.) than those shown in Figure 7 , or have a different configuration from that shown in Figure 7 .
[0133] Those of ordinary skill in the art can understand that all or part of the steps in the various methods of the above embodiments can be completed by instructing the hardware related to the terminal device through a program, and the program can be stored in a computer-readable storage medium. The storage medium may include: a flash drive, a read-only memory (ROM), a random access memory (RAM), a magnetic disk, an optical disc, etc.
[0134] Embodiment 4
[0135] An embodiment of the present application further provides a storage medium. Optionally, in this embodiment, the above storage medium may be used to store the program code executed by the analysis method for batch job performance provided in the first embodiment above.
[0136] Optionally, in this embodiment, the above storage medium may be located in any one of the computer terminals in the computer terminal group in the computer network, or in any one of the mobile terminals in the mobile terminal group.
[0137] Optionally, in this embodiment, the storage medium is set to store the program code for performing the following steps: determining a batch job to be performance-analyzed, where the batch job is composed of multiple logically interdependent jobs; determining the critical path of the batch job according to the scheduling information of the batch job; and determining the analysis result of the batch job performance according to the critical path.
[0138] Optionally, the storage medium is further set to store the program code for performing the following steps: before determining the critical path of the batch job according to the scheduling information of the batch job, the method includes: obtaining the scheduling information of the batch job, where the scheduling information at least includes the direct predecessor information, successor job information, start time, and end time of each job in the batch job; constructing a directed graph based on the direct predecessor information and successor job information of each job in the batch job, where each job in the directed graph is used as a node, and the dependency relationship between jobs is used as an edge; traversing the directed graph to check whether there is a path with a multi-level dependency relationship in the directed graph; and in the case where there is a path with a multi-level dependency relationship in the directed graph, converting the path with the multi-level dependency relationship into a path with a single-level dependency relationship to obtain a target directed graph.
[0139] Optionally, the storage medium is further configured to store program code for performing the following steps: determining the critical path of the batch job according to the scheduling information of the batch job, including: taking the last node in the target directed graph as the first node; searching for the direct predecessor nodes of the first node, and determining a second node among all the direct predecessor nodes of the first node, where the end time of the job corresponding to the second node is later than the end time of the jobs corresponding to the other predecessor nodes of the first node; continuing to perform the step of searching for the direct predecessor nodes of the second node and determining a third node among all the direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be the root node, where the root node is the node corresponding to the first job to be executed in the batch job; determining the critical path of the batch job according to the first node, the second node, the Nth node, and the root node.
[0140] Optionally, the storage medium is further configured to store program code for performing the following steps: in the case where there is a path with multi-level dependency relationships in the directed graph, converting the path with multi-level dependency relationships into a path with single-level dependency relationships to obtain a target directed graph, including: determining the start node of the path with multi-level dependency relationships as the target node; determining whether the target node is the root node, and in the case where the target node is not the root node, traversing the direct predecessor nodes of the target node; in the case where there are direct predecessor nodes of the direct predecessor nodes of the target node, recursively traversing forward until the root node is found, and converting the path with multi-level dependency relationships into a path with single-level dependency relationships to obtain a target directed graph.
[0141] Optionally, the storage medium is further configured to store program code for performing the following steps: before determining the analysis result of the performance of the batch job according to the critical path, the method further includes: traversing all the jobs on the critical path, calculating the actual running time of each job, where the actual running time of each job is the end time of each job minus the start time; comparing the actual running time of each job with a preset threshold; if there is a job on the critical path whose actual running time exceeds the preset threshold, determining the job whose actual running time exceeds the preset threshold as the target job.
[0142] Optionally, the storage medium is further configured to store program code for performing the following steps: determining the performance analysis result of the batch job according to the critical path, including: in the case where there is no target job in the critical path, displaying the critical path; in the case where there is a target job in the critical path, displaying the critical path and marking the target job.
[0143] Optionally, the storage medium is further configured to store program code for performing the following steps: in the case where there is a target job in the critical path, displaying the critical path and marking the target job includes: generating a strategy for optimizing the target job according to the critical path and the target job.
[0144] The present application also provides a computer program product, which is adapted to execute a program for analyzing the steps of batch job performance when executed on a data processing device.
[0145] The serial numbers of the embodiments of the present application are only for description and do not represent the advantages or disadvantages of the embodiments.
[0146] In the above embodiments of the present application, the descriptions of the respective embodiments have their own emphases. For the parts not detailed in a certain embodiment, reference may be made to the relevant descriptions of other embodiments.
[0147] In several embodiments provided by the present application, it should be understood that the disclosed technical content can be implemented in other ways. Among them, the device embodiments described above are only illustrative. For example, the division of the units is only a logical function division. In actual implementation, there may be other division methods. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the displayed or discussed coupling or direct coupling or communication connection between each other can be through some interfaces. The indirect coupling or communication connection of units or modules can be in an electrical or other form.
[0148] The units described as separate components may or may not be physically separated. The components displayed as units may or may not be physical units, that is, they may be located in one place, or may be distributed to multiple network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0149] In addition, the functional units in the various embodiments of the present application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit. The above integrated units can be implemented in the form of hardware or in the form of software functional units.
[0150] When the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, or all or part of this technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the methods described in various embodiments of this application. The aforementioned storage medium includes: various media such as USB flash drives, read-only memories (ROMs), random access memories (RAMs), mobile hard disks, magnetic disks, or optical discs that can store program codes.
[0151] The above are only the preferred embodiments of this application. It should be noted that for those of ordinary skill in the art of this technology, without departing from the principle of this application, several improvements and refinements can still be made, and these improvements and refinements should also be regarded as the protection scope of this application.
Claims
1. A method for analyzing batch job performance, characterized in that: include: Determining a batch job to be performance analyzed, wherein the batch job is composed of a plurality of logically interdependent jobs; Determining a critical path of the batch job according to the scheduling information of the batch job; An analysis result of the batch job performance is determined according to the critical path.
2. The method according to claim 1, characterized in that Before determining the critical path of the batch job according to the scheduling information of the batch job, the method includes: Acquire the scheduling information of the batch job, wherein the scheduling information at least includes the direct predecessor information, the successor job information, the start time and the end time of each job in the batch job; Based on the direct predecessor information and the successor job information of each job of the batch job, a directed graph is constructed, wherein each job in the directed graph is a node and the dependency relationship between jobs is an edge; Traversing the directed graph to check whether there is a path with multi-level dependency in the directed graph; In the case where there are paths with multi-level dependency relationships in the directed graph, the paths with multi-level dependency relationships are converted into paths with unipolar dependency relationships to obtain a target directed graph.
3. The method according to claim 2, characterized in that Determining the critical path of the batch job according to the scheduling information of the batch job includes: Taking the last node in the target directed graph as the first node; Find a direct predecessor node of the first node, and determine a second node among all direct predecessor nodes of the first node, wherein the end time of a job corresponding to the second node is later than the end time of jobs corresponding to other predecessor nodes of the first node; Continue to perform the steps of searching for a direct predecessor node of the second node and determining a third node among all direct predecessor nodes of the second node until the direct predecessor node of the Nth node is found to be a root node, wherein the root node is a node corresponding to the first job that starts to be executed in the batch job; A critical path of the batch job is determined according to the first node, the second node, the Nth node, and the root node.
4. The method according to claim 3, characterized in that In the case where there is a path with multi-level dependency in the directed graph, converting the path with multi-level dependency into a path with unipolar dependency to obtain a target directed graph includes: Determine the starting node of the path of the multi-level dependency relationship as the target node; Determine whether the target node is the root node, and if the target node is not the root node, traverse the direct predecessor node of the target node; In the case that the direct predecessor node of the target node has a direct predecessor node, recursively traverse forward until the root node is found, and the path of the multi-level dependency relationship is converted into a path of a unipolar dependency relationship to obtain the target directed graph.
5. The method according to claim 1, characterized in that Before determining the analysis result of the batch job performance according to the critical path, the method further includes: Traversing all jobs on the critical path, and calculating the actual running time of each job, wherein the actual running time of each job is the end time minus the start time of each job; Compare the actual running time of each job with the preset threshold; If there is a job on the critical path whose actual running time exceeds the preset threshold, the job exceeding the preset threshold is determined as a target job.
6. The method according to claim 5, characterized in that Determining the performance analysis result of the batch job according to the critical path includes: In the case where there is no target operation in the critical path, displaying the critical path; In the case where there is a target job in the critical path, the critical path is displayed and the target job is marked.
7. The method according to claim 6, characterized in that In the case where there is a target job in the critical path, displaying the critical path and marking the target job includes: A strategy for optimizing the target job is generated according to the critical path and the target job.
8. A batch job performance analysis device, characterized in that: include: A first determining unit, configured to determine a batch job to be analyzed, wherein the batch job is composed of a plurality of logically interdependent jobs; A second determining unit, configured to determine a critical path of the batch job according to the scheduling information of the batch job; The third determining unit is used to determine the analysis result of the batch job performance according to the critical path.
9. A computer-readable storage medium, characterized in that: The computer-readable storage medium includes a stored executable program, wherein when the executable program is executed, the device where the computer-readable storage medium is located is controlled to execute the batch job performance analysis method according to any one of claims 1 to 7.
10. An electronic device, characterized in that: include: A memory storing an executable program; A processor is used to run the program, wherein the program, when running, executes the batch job performance analysis method described in any one of claims 1 to 7.
11. A computer program product comprising computer instructions, characterized in that: When the computer instructions are executed by a processor, the steps of the batch job performance analysis method described in any one of claims 1 to 7 are implemented.
Citation Information
Patent Citations
Key path generation method and device, electronic equipment and medium
CN111310998A
Critical path calculation method and device for batch transaction processing
CN118503486A
Batch Job Flow Management
US20110161959A1