Method, device and equipment for operating business analysis model

By reusing the operation results of existing operators in the business analysis model, the problem of resource waste in the existing technology is solved, and more efficient model operation and data utilization are achieved.

CN113885853BActive Publication Date: 2025-08-19ZHEJIANG DAHUA TECH CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202111030585.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-09-03
Publication Date
2025-08-19
Estimated Expiration
2041-09-03

AI Technical Summary

Technical Problem

In the prior art, after users modify some parameters in the business analysis model, they need to rerun the entire model, resulting in increased resource consumption and inability to fully utilize existing data.

Method used

When running a specified business operator, the operation results of the existing dependent operator are reused to the greatest extent. By detecting whether the output results of the parent business operator meet the preset parameter values, only the necessary operators are recalculated to avoid repeated operation.

Benefits of technology

It improves data utilization, reduces resource consumption and user waiting time, and improves model operation efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113885853B_ABST
    Figure CN113885853B_ABST
Patent Text Reader

Abstract

The present application discloses a method, apparatus, and device for operating a business analysis model, relating to the field of computer technology, and for reducing the time consumption of model operation and improving the efficiency of model operation. In this method, a visual model orchestration tool can run a specified business operator. When running a specified business operator, if the specified business operator depends on the running results of other operators, the running results of the existing dependent operators are reused to the greatest extent possible, thereby improving data utilization and avoiding the need to re-run each operator in the model each time the model is run, saving resources required to run the model and reducing user waiting time.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This proposal mainly relates to the field of computer technology and provides a method, device and equipment for operating a business analysis model. Background Art

[0002] With the widespread application of big data technology, users will use various visual model orchestration tools to explore and analyze data. A common method is to drag the built-in business operators of the orchestration tool, orchestrate the connection relationship between business operators, and run the model after the orchestration is completed to obtain the operation results. This method reduces the user's technical requirements.

[0003] However, in related technologies, a complete model is usually compiled and then run to generate model calculation results. However, after some parameters in the model are modified, the entire model still needs to be rerun for measurement. The operation of the entire model requires more equipment resources, and the data that has been calculated before cannot be fully utilized. Summary of the Invention

[0004] The embodiments of the present application provide a method, apparatus, and device for operating a business analysis model, which are used to improve the efficiency of the model during operation and reduce resource consumption.

[0005] In one aspect, a method for operating a business analysis model is provided, the method comprising:

[0006] receiving a first run operation instruction for at least one business operator in the orchestrated business analysis model, where each business operator is used to implement at least one business data processing function of the business analysis model, and the first run operation instruction is used to instruct: running the at least one business operator with a preset model parameter value, where the preset model parameter value includes an input parameter value of an upstream business operator of the at least one business operator;

[0007] In response to the first run operation instruction, determining whether the at least one business operator has a parent business operator;

[0008] If the at least one business operator has the parent business operator, determining whether the stored operation results output by the parent business operator include the target operation result corresponding to the preset model parameter value;

[0009] If it is determined that the target operation result exists in the operation result output by the parent business operator, the operation result is used as the input of the at least one business operator, the at least one business operator is run, and the operation result of the at least one business operator is obtained.

[0010] In one aspect, a device for running a business analysis model is provided, comprising:

[0011] an instruction receiving unit, configured to receive a first run operation instruction for at least one business operator in the orchestrated business analysis model, where each business operator is configured to implement at least one business data processing function of the business analysis model, and the first run operation instruction is configured to instruct: to run the at least one business operator with a preset model parameter value, where the preset model parameter value includes an input parameter value of an upstream business operator of the at least one business operator;

[0012] a parent operator detection unit, configured to determine, in response to the first run operation instruction, whether the at least one business operator has a parent business operator;

[0013] an operation result detection unit, configured to, if the at least one business operator has the parent business operator, determine whether the stored operation results output by the parent business operator include a target operation result corresponding to the preset model parameter value;

[0014] A computing unit is used to, if it is determined that the target running result exists in the running result output by the parent business operator, use the running result as the input of the at least one business operator, run the at least one business operator, and obtain the running result of the at least one business operator.

[0015] Optionally, the computing unit is further configured to:

[0016] If the at least one business operator does not have a parent business operator, the at least one business operator is run with the preset model parameter value to obtain the running result of the at least one business operator.

[0017] Optionally, the device further includes an operator search unit, configured to:

[0018] If it is determined that the target operation result does not exist in the operation result output by the parent business operator, determine whether there is a first target business operator or a second target business operator that meets the set conditions from the upstream business operators of the at least one business operator. The set condition of the first target operator is that the operation result of the first target business operator includes the operation result corresponding to the preset model parameter value. The set condition of the second target operator is that the second target business operator does not have a parent business operator and does not have the operation result. If the first target business operator and the second target business operator exist, input the operation result of the first target business operator into the child business operator of the first target business operator, and start running from the child business operator of the first target business operator and the second business operator until the last business operator in the at least one business operator finishes running, thereby obtaining the operation result of the at least one business operator.

[0019] Optionally, the operator search unit is specifically configured to:

[0020] Create a first operator queue, a second operator queue, and a third operator queue; the first operator queue is used to store upstream business operators that need to be detected, the second operator queue is used to store the first target operator, and the third operator queue is used to store the second target operator; store the parent business operator of the at least one business operator in the first operator queue; obtain the upstream business operator to be detected from the first operator queue, perform the detection operation in a loop, and store the detected first target operator in the second operator queue, and store the detected second business operator in the third operator queue until the first operator queue is empty; determine whether there is a first target business operator or a second target business operator that meets the set conditions based on the second operator queue and the third operator queue.

[0021] Optionally, the operator search unit is specifically configured to:

[0022] Obtain the upstream business operator for this round of detection from the first operator queue;

[0023] Determining whether the operation result of the upstream business operator includes an operation result corresponding to the preset model parameter value;

[0024] If the upstream business operator has the target operation result, store the upstream business operator in the second operator queue;

[0025] If the upstream business operator does not have the target operation result, determine whether the upstream business operator has a parent business operator;

[0026] If the upstream business operator does not have the parent business operator, store the upstream business operator in the third operator queue;

[0027] If the upstream business operator has the parent business operator, the parent business operator of the upstream business operator is stored in the first operator queue.

[0028] Optionally, the device further includes an operation detection unit, configured to:

[0029] receiving a second operation instruction for the business analysis model; the second operation instruction is used to instruct: running the business analysis model with preset model parameters, the preset model parameters including input parameter values of all business operators in the business analysis model;

[0030] In response to the second operation instruction, detecting whether the business analysis model meets the operation conditions; if the operation conditions are not met, outputting the reason for not meeting the operation conditions and the corresponding business operator;

[0031] If the running conditions are met, the running starts from the starting business operator of the business analysis model to obtain the running result of the business analysis model.

[0032] Optionally, the operating conditions include one or a combination of the following conditions:

[0033] The business analysis model does not contain any business operators that lack input parameters;

[0034] The business analysis model does not contain isolated business operators that cannot be connected with other business operators in the model;

[0035] The connection relationship between the various business operators in the business analysis model does not form a closed loop;

[0036] The business analysis model does not connect business operators according to the set connection method.

[0037] In one aspect, a computer device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any one of the above methods when executing the computer program.

[0038] In one aspect, a computer storage medium is provided, on which computer program instructions are stored, and when the computer program instructions are executed by a processor, the steps of any of the above methods are implemented.

[0039] In one aspect, a computer program product or computer program is provided, the computer program product or computer program comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the steps of any of the above methods.

[0040] In the embodiments of the present application, the visual model orchestration tool can run a specified business operator. Specifically, when running a specified business operator, if the specified business operator depends on the running results of other operators, the running results of the existing dependent operators are reused to the greatest extent possible, thereby improving data utilization and avoiding the need to re-run each operator in the model each time the model is run, saving resources required to run the model and reducing user waiting time. BRIEF DESCRIPTION OF THE DRAWINGS

[0041] In order to more clearly illustrate the technical solutions in the embodiments of the present application or related technologies, the following briefly introduces the drawings required for use in the embodiments or related technical descriptions. Obviously, the drawings described below are only embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.

[0042] Figure 1 An application scenario diagram provided for an embodiment of the present application;

[0043] Figure 2 A flowchart of a method for operating a business analysis model provided in an embodiment of the present application;

[0044] Figure 3 A schematic diagram of a model arrangement interface provided in an embodiment of the present application;

[0045] Figure 4 A flowchart of a method for finding a first target business operator and a second target business operator from upstream business operators of a current business operator provided in an embodiment of the present application;

[0046] Figure 5 A schematic diagram of a business analysis model provided in an embodiment of the present application;

[0047] Figure 6 A flowchart of a method for detecting whether a business analysis model meets operating conditions provided in an embodiment of the present application;

[0048] Figure 7 A schematic diagram of a business analysis model with isolated business operators provided in an embodiment of the present application;

[0049] Figure 8 A schematic diagram of a business analysis model with loops provided in an embodiment of the present application;

[0050] Figure 9 A schematic diagram of a business analysis model for a business operator with unconnected inputs provided in an embodiment of the present application;

[0051] Figure 10 A schematic diagram of the structure of an operating device for a business analysis model provided in an embodiment of the present application;

[0052] Figure 11 A schematic diagram of the structure of a computer device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0053] In order to make the purpose, technical solutions and advantages of the present application clearer, the technical solutions 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. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all of the embodiments. Based on the embodiments in the present application, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of this application. In the absence of conflict, the embodiments in the present application and the features in the embodiments can be combined with each other in any way. In addition, although a logical order is shown in the flow chart, in some cases, the steps shown or described can be performed in an order different from that here.

[0054] To facilitate understanding of the technical solutions provided in the embodiments of the present application, some key terms used in the embodiments of the present application are explained here:

[0055] Canvas: A visual page where users can drag business operators onto the page and connect them.

[0056] Business operators: Platform-defined built-in operators and user-defined custom operators are abstract components with user-modifiable parameters. A business operator is used to implement at least one business data processing function of a business analysis model.

[0057] Business analysis model: A data analysis and processing model specified for specific business needs. It is a directed acyclic graph constructed by users on the canvas using business operators and connections. The directed acyclic graph describes that starting from any operator in the model, it can traverse to all business operators in the model, but cannot traverse to itself.

[0058] Operation result: The result data obtained after the business operator is completed.

[0059] The following is a brief introduction to the design concept of the embodiments of this application.

[0060] In the era of big data, there's a desire to use technology to professionally process massive amounts of data and unlock its inherent value. Model orchestration refers to the process of combining existing model operators to construct a business analysis model capable of implementing specific business functions, thereby leveraging the business analysis model to perform specific business data analysis. An operator is an abstraction of a piece of business logic. This level of standardization is applied to different business logics, resulting in a standardized structure: input, output, and parameters. Inputs define the operator's data source, while outputs define the operator's results. Parameters are closely user-specific, providing a customized entry point for specific scenarios. This standardized model provides a unified standard for orchestration customization at the upper level. The model serves as the entry point for upper-level business scenario customization. Based on the standardized operator structure, existing operators can be orchestrated using a drag-and-drop interface within the canvas interface. This streamlines the standardized workflow for upstream and downstream integration and parameter setting, shielding against underlying technical complexity.

[0061] However, when the user modifies some parameters in the model, the entire model needs to be re-run to obtain the results. If the currently used model is relatively complex, the user needs to wait a lot of time for the model to run.

[0062] Based on this, an embodiment of the present application provides a method for running a business analysis model, in which a visual model orchestration tool can run a specified business operator. Specifically, when running a specified business operator, if the specified business operator depends on the running results of other operators, the running results of the existing dependent operators are reused to the greatest extent possible, thereby improving data utilization and avoiding the need to re-run each operator in the model each time the model is run, saving resources required to run the model and reducing user waiting time.

[0063] At the same time, before running the entire model, the current model will be tested to determine whether it can run normally. If the model cannot run, a prompt message will be output to facilitate users to modify the model according to the prompt.

[0064] After introducing the design concepts of the embodiments of the present application, the following briefly introduces the application scenarios to which the technical solutions of the embodiments of the present application can be applied. It should be noted that the application scenarios introduced below are only used to illustrate the embodiments of the present application and are not limiting. In the specific implementation process, the technical solutions provided by the embodiments of the present application can be flexibly applied according to actual needs.

[0065] The solution provided in the embodiment of this application can be applied to big data processing scenarios. Figure 1 As shown, it is an application scenario diagram provided by an embodiment of the present application, in which a terminal device 101 and a background server 102 are included.

[0066] The terminal device 101 may be, for example, a mobile phone, a tablet computer (PAD), a laptop computer, a desktop computer, a smart TV, or a smart wearable device. The terminal device 101 may be installed with an application capable of performing model orchestration, such as a browser or a model orchestration client. The application involved in the embodiments of the present application may be a software client, or a client such as a web page or a mini-program, and the specific type of client is not limited.

[0067] Backend server 102 may be the backend server corresponding to the application installed on terminal device 101. When the application is a browser, backend server 102 is the backend server of the opened model layout page. Backend server 102 may be, for example, an independent physical server, or a server cluster or distributed system composed of multiple physical servers. It may also be a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, middleware services, domain name services, security services, CDN, and big data and artificial intelligence platforms, but is not limited thereto.

[0068] The backend server 102 may include one or more processors 1021, a memory 1022, and an I / O interface 1023 for interacting with a terminal. Furthermore, the backend server 102 may be configured with a database 1024, which may be used to store information related to business operators. The memory 1022 of the backend server 102 may also store program instructions for the method for operating the business analysis model provided in the embodiments of the present application. When these program instructions are executed by the processor 1021, they may be used to implement the steps of the method for operating the business analysis model provided in the embodiments of the present application.

[0069] In actual application, the user can open the model orchestration interface on the application to perform the model orchestration process on the model orchestration interface, and then each operation performed by the user on the model orchestration interface can be sent to the backend server 102, so that the backend server 102 responds based on the user's operation and displays it through the front-end interface of the terminal device 101. For example, the user issues an operation to run an operator in the model. In response to the operation, the backend server 102 uses the business analysis model operation method of the embodiment of the present application to obtain the operation result of the operator and return the operation result to the front-end interface, so that the operation result is displayed in the front-end interface.

[0070] The terminal device 101 and the backend server 102 can be directly or indirectly connected to each other through one or more networks 103. The network 103 can be a wired network or a wireless network. For example, the wireless network can be a mobile cellular network or a Wireless Fidelity (WIFI) network. Of course, other possible networks are also possible, and the embodiments of the present application are not limited to this.

[0071] It should be noted that when the storage capacity and computing power of the terminal device 101 allow, the method of the embodiment of the present application can also be executed locally by the terminal device 101.

[0072] Of course, the method provided in the embodiment of the present application is not limited to Figure 1 The application scenarios shown can also be used in other possible application scenarios, and the embodiments of this application are not limited thereto. Figure 1 The functions that can be implemented by each device in the application scenario shown will be described in subsequent method embodiments and will not be described in detail here.

[0073] See Figure 2 , which is a flowchart of a method for operating a business analysis model according to an embodiment of the present application. Figure 1 The backend server 102 or the terminal device 101 is used to execute the method, and the process of the method is described as follows.

[0074] Step 201: Receive a first running operation instruction for at least one business operator in the orchestrated business analysis model, where each business operator is used to implement at least one business data processing function of the business analysis model, and the first running operation instruction is used to instruct: running at least one business operator with a preset model parameter value, and the preset model parameter value includes the input parameter value of the upstream business operator of the at least one business operator.

[0075] In the embodiment of the present application, the orchestration operation of the business analysis model can be performed in the model orchestration interface, see Figure 3 The figure shows a schematic diagram of a model layout interface. The model layout interface includes a canvas area, a component area, a toolbar area, and a property bar area. It should be noted that the present embodiment does not limit the layout and display of each area. For example, Figure 3 In the , the property bar area is below the canvas area. In actual application, it can also be displayed on the right side of the canvas area or in a floating display in the canvas area.

[0076] In actual application, users can select the required business operator in the component area, drag it to the appropriate position in the canvas area, and connect it with other selected business operators. After selecting a business operator in a certain canvas area, the parameter values configured for the operator can be displayed in the property bar area. For example, users can select a business operator by clicking on it in the canvas area. The parameter values corresponding to the operator will be displayed in the property bar area, and users can modify the parameter values. For business operators with configured parameters, users can issue operation instructions and view their operation results. For example, one or more business operators can be selected by clicking on the business operator, and the Run Operator button in the toolbar work area can be clicked to run at least one selected business operator in turn, and the operation results of each selected business operator will be displayed in the property bar area. The toolbar area can also provide functions such as saving operations, undoing operations, clearing the canvas, and running the entire model.

[0077] Step 202: In response to a first execution operation instruction, determine whether at least one business operator has a parent business operator.

[0078] In an embodiment of the present application, after the user operates the above-mentioned run operator button, the device can receive a first run operation indication corresponding to the user operation. The first run operation indication is used to indicate: run at least one business operator with a preset model parameter value, and the preset model parameter value includes the input parameter value of the upstream business operator of at least one business operator. Based on the first run operation indication, it is necessary to determine whether the above-mentioned at least one business operator has a parent business operator, so as to determine whether the output result of the parent business operator can be reused.

[0079] Specifically, a parent business operator list can be created to record the parent-child relationship between each business operator in the canvas area and its parent business operator, so that after receiving the first operation instruction to run a business operator, it can be queried in the parent business operator list whether the business operator has a parent business operator.

[0080] See also Figure 3 As shown, the parent operators of Selected Operator 3 are Selected Operator 1 and Selected Operator 2, while Selected Operator 1 and Selected Operator 2 do not have parent operators. When the first run operation instruction indicates Selected Operator 3, its parent operators can be found in the parent business operator list to be Selected Operator 1 and Selected Operator 2. When the instruction indicates Selected Operator 1 and Selected Operator 3, the parent operator list can be used to first determine that Selected Operator 1 has no parent operator. After Selected Operator 1 obtains the run result, the parent operator list can be used to find the parent operators of Selected Operator 3, i.e., Selected Operator 1 and Selected Operator 3.

[0081] Step 203: If at least one business operator does not have a parent business operator, run at least one business operator with a preset model parameter value to obtain the running result of the at least one business operator.

[0082] See also Figure 3 As shown, for example, when the selected business operators are selected operators 1 and 2, these business operators do not depend on the running results of other operators and can therefore be run directly.

[0083] Step 204: If at least one business operator has a parent business operator, determine whether the stored operation results output by the parent business operator include a target operation result corresponding to the preset model parameter value.

[0084] In an embodiment of the present application, the preset model parameter values include not only the parameter values of at least one business operator selected above, but also the parameter values of its upstream business operators, such as the parameter values of its parent business operator and the parameter values of the upstream business operators of the parent business operator. Therefore, when there is a parent business operator, it is necessary to determine whether the operating results of its parent business operator are consistent with the currently preset model parameter values, that is, whether it is the operating result corresponding to the parameter value set for the parent business operator based on the currently preset model parameter value.

[0085] See also Figure 3 As shown, the running result of a business operator is related to the preset parameter value of the business operator and the running result of the parent business operator of the business operator. Therefore, when testing a parent business operator, it is necessary to check whether the stored running results include running results with the same parameter values as the current parent business operator and all upstream business operators of the parent business operator.

[0086] For example, the operation object of the first operation operation instruction is the selected operator 3, the selected operator 1 includes parameter a, and the parameter value set for the parameter a in the currently preset model parameters carried in the first operation operation instruction is 1, then if in the stored operation results, there is an operation result A1 when the parameter a of the selected operator 1 is 1, then A1 is the target operation result; similarly, the selected operator 2 has two parameters b and c, and in the currently preset model parameters carried in the first operation operation instruction, the parameter values set for the parameters b and c are 2 and 3 respectively. However, if in the stored operation results, only the operation result A2 of the selected operator 2 when b=5 and c=6 is recorded, then it can be determined that there is no target operation result for the selected operator 2.

[0087] In actual application, when at least one business operator includes multiple business operators, the parent business operator can be judged for each business operator separately. When a business operator has a parent business operator and the parent business operator is not included in at least one business operator, it is necessary to continue to determine whether its parent business operator has the required target operating results. The target operating results refer to the operating results that are consistent with the currently preset model parameter values.

[0088] Step 205: If it is determined that the target operation result exists in the operation result output by the parent business operator, the target operation result is used as the input of at least one business operator, the at least one business operator is operated, and the operation result of the at least one business operator is obtained.

[0089] See also Figure 3 As shown, when the target operation result exists in the parent business operator of the selected operator, the parent business operator does not need to be run again. It only needs to send the target operation result corresponding to the stored parent business operator to the child business operator, use the target operation result as the input parameter of the child business operator, and run the child business operator to obtain the operation result of the child business operator. It can be seen that there is no need to run all the business operators of the entire model, only the specified business operators need to be run, which reduces the resource consumption of the device and thus reduces the waiting time of the user.

[0090] For example, see Figure 3 As shown, if the first run operation instruction targets selected operators 2 and 3, and the parent business operator of selected operator 3, that is, selected operator 1, already has the target run result A1. Then, after receiving the first run operation instruction, selected operator 2 is first checked. Since this business operator has no parent business operator, it can be directly run to obtain the run result A3, which is displayed in the attribute bar area. Then, selected operator 3 is checked. Its parent business operators are selected operators 1 and 2, which now both have the target run results. A1 and A3 are sent to selected operator 3. Selected operator 3 calculates based on A1, A3, and its own parameters 1 and 2 to obtain the run result A4, which is displayed in the attribute bar area.

[0091] In actual applications, it may happen that the target operation result does not exist in the parent operator of the current specified operator. In this case, you can continue to check along the connection relationship, that is, check whether the parent operator of the parent operator has the corresponding operation result, until all parent operators are checked. Figure 4 , an embodiment of the present application also provides a method for finding a first target business operator and a second target business operator from the upstream business operator of the current business operator, wherein the first target business operator represents a business operator with a target operation result, and the second target business operator represents a business operator with no target result and no parent business operator.

[0092] Step 401: Create a first operator queue, a second operator queue, and a third operator queue, wherein the first operator queue is used to store upstream business operators that need to be detected, the second operator queue is used to store each first target operator, and the third operator queue is used to store each second target operator.

[0093] Specifically, an upstream business operator of a business operator refers to a business operator that runs before the business operator and is directly connected to the business operator or indirectly connected to the business operator through multiple intermediate business operators.

[0094] Step 402: All parent business operators of the business operator of the first execution operation instruction are stored in the first operator queue.

[0095] Step 403: Obtain the upstream service operator for this round of detection from the first operator queue.

[0096] Step 404: Determine whether the operation result of the upstream business operator includes the target operation result.

[0097] Step 405: If the upstream business operator has a target running result, it is stored in the second operator queue.

[0098] Step 406: If the upstream business operator does not have a target operation result, determine whether the upstream business operator has a parent business operator.

[0099] Step 407: If the upstream service operator does not have a parent service operator, it is stored in the third operator queue.

[0100] Step 408: If the operator has a parent business operator, all its parent business operators are stored in the first operator queue.

[0101] Steps 403 to 408 are repeated until the first operator queue is empty.

[0102] See also Figure 5 The figure shows a schematic diagram of a business analysis model, where F is a designated business operator. Operators A, B, and D have target operation results, while C, E, and F do not. After the above process starts, D and E are added to the first operator queue. D is taken out from the first operator queue, and it is detected that D has the target operation result. D is then stored in the second operator queue. Then, E is taken out from the first operator queue, and it is detected that it has no target operation result and that its parent business operators B and C exist. B and C are added to the first operator queue. Then, B is taken out from the first operator queue, and it is detected that it has the target operation result. It is added to the second operator queue. Finally, C is taken out from the first operator queue, and it is detected that C has no target operation result and no parent business operator. It is added to the third operator queue. At this point, the first operator queue is empty and the process ends.

[0103] At this time, there are business operators B and D in the second operator queue, and business operator C in the third operator queue. The running results of B and D are sent to their sub-business operators respectively, and starting from C, C, E, and F are run in sequence, and finally the running results of business operator F are obtained.

[0104] In specific applications, if the user wants to run the entire business analysis model, then the second operation of running the business analysis model in full can be performed. Correspondingly, the device can receive a second operation instruction for the business analysis model. The second operation instruction is used to instruct the running of the entire business analysis model with preset model parameters, wherein the preset model parameters include the input parameter values of all business operators in the business analysis model. When it is necessary to run the entire business analysis model, if the established model does not meet the running conditions, errors will occur during the running process, thereby wasting time and resources. Therefore, the model can be tested before the model is run. If the model does not meet the running conditions, the reason for the failure to run and the business operator that caused the reason are output. If the running conditions are met, the entire business analysis model is run, that is, it starts from the starting business operator of the business analysis model to obtain the final running result of the business analysis model.

[0105] Specifically, the operating conditions include one or a combination of the following conditions:

[0106] (1) The business analysis model does not contain any business operators that lack input parameters.

[0107] (2) The business analysis model does not contain isolated business operators that cannot be connected with other business operators in the model.

[0108] (3) The connection relationship between the various business operators in the business analysis model does not form a closed loop.

[0109] (4) The business analysis model does not connect business operators according to the set connection method.

[0110] See also Figure 6 The figure shows a flowchart of a method for detecting whether a business analysis model meets the operating conditions.

[0111] Step 601: Check whether the business analysis model has any business operators that are missing input parameters.

[0112] Specifically, you can check whether the parameters of each business operator in the business analysis model have been configured. When it is detected that there is a business operator whose parameters are not configured with corresponding parameter values, output the error message "Operator parameter value not configured" and mark the erroneous business operator.

[0113] Step 602: Check whether there are isolated business operators in the business analysis model that cannot be connected with other business operators in the model.

[0114] In an embodiment of the present application, when performing isolated operator detection, the entire business analysis model can be regarded as an undirected graph, and the business operators in the business analysis model are nodes in the undirected graph. If there is a connection relationship between two business operators, it is regarded as an edge between the corresponding two nodes in the undirected graph.

[0115] Specifically, for the undirected graph described above, one can start from one of the nodes, which can be any node in the graph, and perform a traversal of the undirected graph, visiting all nodes directly or indirectly connected to the node. If there are any unvisited nodes after the traversal, it indicates that an isolated business operator exists, and a corresponding prompt message is output, and all unvisited nodes are marked. The traversal can be performed, for example, using a depth-first traversal or a breadth-first traversal.

[0116] For details, see Figure 7 Figure 2 shows a schematic diagram of a business analysis model with isolated business operators. This business analysis model is considered an undirected graph. When detecting isolated business operators, for example, a depth-first traversal starting at node 4 can be performed. Nodes 1, 2, and 3 are detected as unvisited after the traversal. The error message "Isolated Node Exists" is output, and isolated nodes 1, 2, and 3 are marked.

[0117] Step 603: Check whether there is a loop in the connection relationship between each business operator in the business analysis model.

[0118] In an embodiment of the present application, when performing loop detection, the business analysis model can be regarded as a directed graph, the business operators in the business analysis model can be regarded as nodes in the directed graph, and the connections between the various business operators can be regarded as arcs between the nodes. The in-degree of each node is recorded, and the nodes with an in-degree of 0 and the arcs related to the node are continuously removed from the graph. If no nodes are left at the end, it means that there is no loop. If there are nodes left, the corresponding prompt information is output and the remaining nodes are marked. Among them, the directed edge from one node to another node in the directed graph is called an arc, and the in-degree of a node refers to the total number of arcs pointing to the node.

[0119] For details, see Figure 8As shown, this is a schematic diagram of a business analysis model with a loop. The model is considered as a directed graph. It is detected that the in-degree of node 1 in the current graph is 0, so node 1 and the arcs related to node 1 are removed. Then, it is detected that the in-degree of node 2 is 0, so node 2 and the arcs related to node 2 are removed. At this time, there are still nodes 3, 4, and 5 remaining in the graph, but there are no nodes with in-degree 0. Therefore, the error message "Loop exists" is output and nodes 3, 4, and 5 that generate the loop are marked. Step 604: Check whether there are business operators in the business analysis model that are not connected according to the set connection method.

[0120] For details, see Figure 9 The figure below shows a business analysis model diagram of a business operator with unconnected inputs. The dashed lines indicate that a connection should be made but is not. During testing, you can check whether each business operator has sufficient inputs. For example, business operator 9 requires two inputs but currently has only one parent business operator. Therefore, the error message "Operator missing inputs" is output and the incorrect operator 9 is marked.

[0121] Specifically, when outputting the reason why the operating conditions are not met, the above-mentioned error information may be output, and the marked business operators that do not meet the operating conditions may also be output.

[0122] It should be noted that there is no actual order for the above steps 601-604. Figure 6 The sequences shown are run sequentially, but they can also be run in parallel.

[0123] See Figure 10 Based on the same inventive concept, the present application also provides a device for running a business analysis model, the device comprising:

[0124] An instruction receiving unit 1001 is configured to receive a first run operation instruction for at least one business operator in a compiled business analysis model, where each business operator is configured to implement at least one business data processing function of the business analysis model, and the first run operation instruction is configured to instruct: running the at least one business operator with preset model parameter values, where the preset model parameter values include input parameter values of an upstream business operator of the at least one business operator;

[0125] A parent operator detection unit 1002 is configured to determine, in response to a first run operation instruction, whether at least one business operator has a parent business operator;

[0126] The operation result detection unit 1003 is configured to, if at least one business operator has a parent business operator, determine whether the stored operation results output by the parent business operator include a target operation result corresponding to a preset model parameter value;

[0127] The calculation unit 1004 is used to, if it is determined that the target operation result exists in the operation result output by the parent business operator, use the operation result as the input of at least one business operator, run at least one business operator, and obtain the operation result of at least one business operator.

[0128] Optionally, the computing unit 1004 is further configured to:

[0129] If at least one business operator does not have a parent business operator, the at least one business operator is run with a preset model parameter value to obtain an operation result of the at least one business operator.

[0130] Optionally, the apparatus further includes an operator search unit 1005, configured to:

[0131] If it is determined that the target operation result does not exist in the operation result output by the parent business operator, then determine whether there is a first target business operator or a second target business operator that meets the set conditions from the upstream business operators of at least one business operator. The setting condition of the first target operator is that the operation result of the first target business operator includes the operation result corresponding to the preset model parameter value. The setting condition of the second target operator is that the second target business operator does not have a parent business operator and does not have an operation result; if the first target business operator and the second target business operator exist, then the operation result of the first target business operator is input into the child business operator of the first target business operator, and the operation is started from the child business operator and the second business operator of the first target business operator until the last business operator in at least one business operator is completed, and the operation result of at least one business operator is obtained.

[0132] Optionally, the operator search unit 1005 is specifically configured to:

[0133] Create a first operator queue, a second operator queue, and a third operator queue; the first operator queue is used to store upstream business operators that need to be detected, the second operator queue is used to store the first target operator, and the third operator queue is used to store the second target operator; store the parent business operator of at least one business operator in the first operator queue; obtain the upstream business operator to be detected from the first operator queue, perform the detection operation in a loop, and store the detected first target operator in the second operator queue, and store the detected second business operator in the third operator queue until the first operator queue is empty; determine whether there is a first target business operator or a second target business operator that meets the set conditions based on the second operator queue and the third operator queue.

[0134] Optionally, the operator search unit 1005 is specifically configured to:

[0135] Obtain the upstream business operator for this round of detection from the first operator queue; determine whether the operation results of the upstream business operator include the operation results corresponding to the preset model parameter values; if the upstream business operator has the target operation results, store the upstream business operator in the second operator queue; if the upstream business operator does not have the target operation results, determine whether the upstream business operator has a parent business operator; if the upstream business operator does not have a parent business operator, store the upstream business operator in the third operator queue; if the upstream business operator has a parent business operator, store the parent business operator of the upstream business operator in the first operator queue.

[0136] Optionally, the device further includes an operation detection unit 1006, configured to:

[0137] A second running operation instruction for the business analysis model is received; the second running operation instruction is used to instruct: running the business analysis model with preset model parameters, the preset model parameters include the input parameter values of all business operators in the business analysis model; in response to the second running operation instruction, detecting whether the business analysis model meets the running conditions; if the running conditions are not met, outputting the reason for not meeting the running conditions and the corresponding business operator; if the running conditions are met, starting the operation from the starting business operator of the business analysis model to obtain the running result of the business analysis model.

[0138] Optionally, the operating conditions include one or a combination of the following conditions:

[0139] The business analysis model does not contain any business operators that lack input parameters;

[0140] The business analysis model does not contain isolated business operators that cannot be connected with other business operators in the model;

[0141] The connections between the various business operators in the business analysis model do not form a closed loop;

[0142] The business analysis model is not connected to the business operator according to the set connection method.

[0143] The device can be used to perform Figure 2 、 4 , 6 shows the method executed by the management device in the embodiment, therefore, for the functions that can be achieved by each functional module of the device, please refer to Figure 2 、 4 The description of the embodiment shown in FIG. 6 is omitted for brevity.

[0144] See Figure 11 Based on the same technical concept, an embodiment of the present application also provides a computer device 110, which may include a memory 1101 and a processor 1102.

[0145] The memory 1101 is used to store computer programs executed by the processor 1102. The memory 1101 may mainly include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application program required for at least one function, etc.; the data storage area may store data created according to the use of the computer device, etc. The processor 1102 may be a central processing unit (CPU), or a digital processing unit, etc. The specific connection medium between the above-mentioned memory 1101 and the processor 1102 is not limited in the embodiment of the present application. The embodiment of the present application is Figure 11 In the embodiment, the memory 1101 and the processor 1102 are connected via a bus 1103. The bus 1103 is connected to the processor 1102 via a bus 1103. Figure 11 The bus 1103 can be divided into an address bus, a data bus, a control bus, etc. For ease of representation, Figure 11 Only one thick line is used in the diagram, but this does not mean that there is only one bus or one type of bus.

[0146] Memory 1101 may be a volatile memory, such as random-access memory (RAM); a non-volatile memory, such as read-only memory, flash memory, a hard disk drive (HDD), or a solid-state drive (SSD); or any other medium capable of carrying or storing desired program code in the form of instructions or data structures and accessible by a computer, but is not limited thereto. Memory 1101 may be a combination of the aforementioned memories.

[0147] The processor 1102 is configured to execute the following when calling the computer program stored in the memory 1101: Figure 2 、 4 , and the method executed by the device in the embodiment shown in 6.

[0148] In some possible implementations, various aspects of the method provided in the present application may also be implemented in the form of a program product, which includes program code. When the program product is run on a computer device, the program code is used to enable the computer device to perform the steps of the method according to various exemplary embodiments of the present application described above in this specification. For example, the computer device may perform the following steps: Figure 2 、 4 , and the method executed by the device in the embodiment shown in 6.

[0149] The program product may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or component, or any combination thereof. More specific examples (a non-exhaustive list) of readable storage media include: an electrical connection having one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination thereof.

[0150] Although the preferred embodiments of the present application have been described, those skilled in the art may make additional changes and modifications to these embodiments once they have learned the basic creative concept. Therefore, the appended claims are intended to be interpreted as including the preferred embodiments and all changes and modifications that fall within the scope of the present application.

[0151] Obviously, those skilled in the art may make various changes and modifications to this application without departing from the spirit and scope of this application. Thus, if these modifications and variations of this application fall within the scope of the claims of this application and their equivalents, this application is intended to include these modifications and variations.

Claims

1. A method for operating a business analysis model, characterized in that: The method comprises: receiving a selection operation instruction for at least one business operator in the orchestrated business analysis model, each business operator being used to implement at least one business data processing function of the business analysis model; receiving a first operation instruction for the at least one business operator, where the first operation instruction is used to instruct: to operate the at least one business operator with a preset model parameter value, where the preset model parameter value includes a parameter value of an upstream business operator of the at least one business operator; In response to the first run operation instruction, determining whether the at least one business operator has a parent business operator; If the at least one business operator has the parent business operator, determining whether the stored operation results output by the parent business operator include the target operation result corresponding to the preset model parameter value; If it is determined that the target operation result exists in the operation result output by the parent business operator, the operation result is used as the input of the at least one business operator, the at least one business operator is operated, and the operation result of the at least one business operator is obtained; If it is determined that the target operation result does not exist in the operation result output by the parent business operator, determining whether there is a first target business operator or a second target business operator that meets the set condition from the upstream business operators of the at least one business operator, where the set condition for the first target business operator is that the operation result of the first target business operator includes an operation result corresponding to the preset model parameter value, and the set condition for the second target business operator is that the second target business operator does not have a parent business operator and does not have the said operation result; If there are a first target business operator and a second target business operator, the running result of the first target business operator is input into the sub-business operator of the first target business operator, and the running is started from the sub-business operator of the first target business operator and the second target business operator until the last business operator in the at least one business operator is completed, and the running result of the at least one business operator is obtained.

2. The method according to claim 1, wherein After determining whether the at least one business operator has a parent business operator, the method further includes: If the at least one business operator does not have a parent business operator, the at least one business operator is run with the preset model parameter value to obtain the running result of the at least one business operator.

3. The method according to claim 1, wherein Determining whether there is a first target business operator or a second target business operator that meets a set condition from upstream business operators of the at least one business operator includes: Create a first operator queue, a second operator queue, and a third operator queue; the first operator queue is used to store upstream service operators that need to be detected, the second operator queue is used to store the first target service operator, and the third operator queue is used to store the second target service operator; Storing the parent business operator of the at least one business operator in a first operator queue; Obtaining an upstream service operator to be detected from the first operator queue, performing a detection operation in a loop, and storing the detected first target service operator into the second operator queue, and storing the detected second target service operator into the third operator queue, until the first operator queue is empty; It is determined whether there is a first target service operator or a second target service operator that meets a set condition according to the second operator queue and the third operator queue.

4. The method according to claim 3, wherein Each time a detection operation is performed, the following steps are included: Obtain the upstream business operator for this round of detection from the first operator queue; Determining whether the operation result of the upstream business operator includes an operation result corresponding to the preset model parameter value; If the upstream business operator has the target operation result, store the upstream business operator in the second operator queue; If the upstream business operator does not have the target operation result, determine whether the upstream business operator has a parent business operator; If the upstream business operator does not have the parent business operator, store the upstream business operator in the third operator queue; If the upstream business operator has the parent business operator, the parent business operator of the upstream business operator is stored in the first operator queue.

5. The method according to claim 1, wherein The method further comprises: receiving a second operation instruction for the business analysis model; the second operation instruction is used to instruct: running the business analysis model with preset model parameters, the preset model parameters including input parameter values of all business operators in the business analysis model; In response to the second operation instruction, detecting whether the business analysis model meets an operation condition; If the running conditions are not met, the reason for not meeting the running conditions and the corresponding business operator are output; If the running conditions are met, the running starts from the starting business operator of the business analysis model to obtain the running result of the business analysis model.

6. The method according to claim 5, wherein The operating conditions include one or more of the following conditions: The business analysis model does not contain any business operators that lack input parameters; The business analysis model does not contain isolated business operators that cannot be connected with other business operators in the model; The connection relationship between the various business operators in the business analysis model does not form a closed loop; The business analysis model does not connect business operators according to the set connection method.

7. A device for running a business analysis model, characterized in that: include: an instruction receiving unit, configured to receive a selection operation instruction for at least one business operator in the arranged business analysis model, each business operator being configured to implement at least one business data processing function of the business analysis model; receiving a first operation instruction for the at least one business operator, where the first operation instruction is used to instruct: to operate the at least one business operator with a preset model parameter value, where the preset model parameter value includes a parameter value of an upstream business operator of the at least one business operator; a parent operator detection unit, configured to determine, in response to the first run operation instruction, whether the at least one business operator has a parent business operator; an operation result detection unit, configured to, if the at least one business operator has the parent business operator, determine whether the stored operation results output by the parent business operator include a target operation result corresponding to the preset model parameter value; a computing unit configured to, if determining that the target running result exists in the running result output by the parent business operator, use the running result as an input of the at least one business operator, run the at least one business operator, and obtain the running result of the at least one business operator; If it is determined that the target operation result does not exist in the operation result output by the parent business operator, determine whether there is a first target business operator or a second target business operator that meets the set conditions from the upstream business operators of the at least one business operator. The set condition of the first target business operator is that the operation result of the first target business operator includes the operation result corresponding to the preset model parameter value. The set condition of the second target business operator is that the second target business operator does not have a parent business operator and does not have the operation result. If the first target business operator and the second target business operator exist, input the operation result of the first target business operator into the child business operator of the first target business operator, and start running from the child business operator of the first target business operator and the second target business operator until the last business operator in the at least one business operator completes the operation, thereby obtaining the operation result of the at least one business operator.

8. A computer device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 1 to 6 are implemented.

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

Citation Information

Patent Citations

  • Task scheduling processing method and device and computer equipment

    CN110554909A