Data processing method and device for batch complex expressions

By combining the expression computation task scheduling and management module and the data interaction and access module in the enterprise-level data analysis system, an abstract syntax tree is generated and sorted hierarchically, which solves the efficiency and scalability problems in large-scale complex expression processing and realizes efficient batch expression computation.

CN119597430BActive Publication Date: 2025-11-11SHENZHEN ZHONGXING ZHIPING TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202411830946.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-12-12
Publication Date
2025-11-11
Estimated Expiration
2044-12-12

AI Technical Summary

Technical Problem

Existing enterprise-level data analysis systems suffer from inefficiency and insufficient scalability when processing large-scale complex expressions, especially the Java source code interpreter, which performs poorly in handling multiple expressions.

Method used

By combining the expression operation task scheduling and management module and the data interaction and access module, an abstract syntax tree (AST) is generated, AOV hierarchical sorting is performed to determine the operation task layer, and operations are executed according to the arithmetic logic operation queue, thereby reducing redundant calculations and I/O operations.

Benefits of technology

It improves the efficiency and scalability of large-scale data processing, enables efficient batch expression calculation, and adapts to multiple business scenarios.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119597430B_ABST
    Figure CN119597430B_ABST
Patent Text Reader

Abstract

Embodiments of the present invention provide a method and apparatus for batch processing of complex expressions. The data processing method is used in a computing system, which includes an expression computation task scheduling and management module and a data interaction and access module. The data processing method includes: acquiring a batch expression dataset, which includes at least one expression; determining a syntax tree corresponding to the expression; performing hierarchical sorting of the syntax tree according to the expression computation task scheduling and management module to determine a computation task layer; inputting the computation task layer into a cache in the data interaction and access module; retrieving the computation task layer from the data interaction and access module and determining an arithmetic logic operation queue according to the hierarchical order; performing operations corresponding to at least one expression according to the arithmetic logic operation queue; and determining the computation result. Through the solution of the present invention, batch expressions are computed in a hierarchical and batch manner, improving the efficiency of batch expression computation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of computer technology, and more specifically, to a method and apparatus for batch processing of complex expressions. Background Technology

[0002] Enterprise-level data analysis systems often contain various data types and presentation formats. These data, already presented as expressions, typically need to be transformed and processed into the format required by users or staff. This usually requires computational processing of different types of data according to large-scale expression rules. Furthermore, these expression rules go beyond simple arithmetic and logical operations, often involving nested variables and complex function operations. Currently, Java source code interpreters (BeanShell, Bsh) are commonly used to compute these expressions. However, this approach is often only suitable for single-word operations or small-scale calculations. It lacks support for simultaneous input of multiple expressions and output of multiple results. Moreover, due to its strong coupling with Java code, its extensibility is insufficient, making it difficult to meet the performance and computational efficiency requirements for simultaneously computing a large number of expressions in large-scale data processing. Summary of the Invention

[0003] The purpose of this invention is to provide a method and apparatus for batch processing of complex expressions, which can solve the problems of insufficient efficiency and scalability in large-scale data processing in enterprise-level data analysis systems.

[0004] In view of this, an embodiment of the first aspect of the present invention provides a data processing method.

[0005] A second aspect of the present invention provides a data processing apparatus.

[0006] An embodiment of the third aspect of the present invention provides a computing system.

[0007] An embodiment of the fourth aspect of the present invention provides an electronic device.

[0008] An embodiment of the fifth aspect of the present invention provides a readable storage medium.

[0009] An embodiment of the sixth aspect of the present invention provides a chip.

[0010] To achieve the above objectives, an embodiment of the first aspect of the present invention provides a data processing method for a computing system. The computing system includes an expression operation task scheduling and management module and a data interaction and access module, which are electrically connected. The data processing method includes: acquiring a batch expression dataset, which includes at least one expression; determining a syntax tree corresponding to the expression; performing hierarchical sorting of the syntax tree according to the expression operation task scheduling and management module to determine an operation task layer, which includes a first task layer and at least one secondary task layer; inputting the operation task layer into a buffer in the data interaction and access module; extracting the operation task layer from the data interaction and access module and determining an arithmetic logic operation queue according to the hierarchical order; performing operations corresponding to at least one expression according to the arithmetic logic operation queue; determining the operation result; and inputting the operation result into the data interaction and access module for storage.

[0011] According to the data processing method proposed in this invention, applied to an enterprise-level data analysis computing system, the computing system mainly includes an expression computation task scheduling and management module and a data interaction and access module. The expression task scheduling and management module and the data interaction and access module are electrically connected. Specifically, the execution flow of the data access module depends on the output of the expression task scheduling and management module. The expression computation task scheduling and management module is mainly used to parse the expression topology network generated by the parsing module and perform a layered sorting of the topology network of at least one expression using an Activity On Vertex (AOV) method. The data interaction and access module is mainly used to cache the write-back data from each module in the computing system and to store the data using data structures such as queues, stacks, and hash tables according to the different needs of the corresponding modules. By defining a specific expression definition specification (Domain Specific Language, DSL) for the computing system, batch expressions are parsed to generate abstract syntax trees corresponding to the expressions. The topological relationships of the batch expressions are determined based on the abstract syntax trees, thereby determining the reference relationships between at least one expression and its corresponding expression in the batch, and processing the batch computation tasks in batches and layers. Specifically, the system obtains a batch expression dataset input from the caller into the system. The batch expression dataset includes at least one expression that needs to be calculated. Based on syntax parsing technology, the system parses the at least one expression received by the system into an abstract syntax tree (AST), which is a tree-like representation of the abstract syntax structure of the source code. Each node in the tree represents a structure in the source code, i.e., a variable or parameter in the expression. The expression calculation task scheduling and management module sorts the variables or parameters in the abstract syntax tree according to the AOV hierarchy to determine the execution order of the calculation tasks of the variables or parameters in the at least one expression, i.e., the calculation task layer. The computation task layer is divided into a first task layer and at least one secondary task layer according to the execution order. The variables or parameters corresponding to the expressions in the first task layer do not need to depend on other expressions for calculation. As an independent expression, it needs to correspond to the computation logic of the expression. The secondary task layer includes at least one upper task layer and at least one lower task layer. The variables or parameters in the upper task layer depend on the computation results of the expressions in the lower task layer during the computation process. After the computation task layer is determined, the results of the computation task layer are cached in the data interaction and access module according to the hierarchical order for use by subsequent computation tasks.The logical order corresponding to the first task layer, at least one upper task layer, and at least one lower task is determined from the cached computation task layer in the data interaction access module. That is, the hierarchical order. The arithmetic logic operation queue is determined according to the hierarchical order. The computation logic corresponding to the expression is executed according to the order of the queue. That is, the expression is operated on one by one or the function is called according to the arithmetic logic operation queue. Each operation reads the corresponding operation result from the result temporary storage stack. After the current expression is executed, the result is stored in the result record Hash table of the data interaction access module, and all execution results are returned to the caller.

[0012] Among them, at least one expression in the batch expression dataset that needs to be calculated is an expression that is related to each other and corresponds to the same scheme, or it can be an independent expression that corresponds to multiple schemes and is not related to each other.

[0013] Understandably, by generating an expression topology network through the expression computation task scheduling and management module, and performing AOV hierarchical sorting on the topology network of at least one expression, expression computation tasks can be run in batches. This eliminates redundant computation processes, avoids repeated calculations of the same computational logic, and improves the logical consistency of the computation system in the batch expression computation process. Furthermore, by using a data interaction and access module to cache or write back data from each module in the computation system, and extracting data from the data interaction and access module when needed for expression computation, unnecessary input / output (I / O) operations during expression computation are reduced, thereby improving the efficiency of expression computation.

[0014] In the above technical solution, determining the syntax tree corresponding to the expression includes: determining the parameter call information corresponding to the expression; determining the variable reference relationship of at least one parameter in the expression based on the parameter call information; determining the operation queue corresponding to the expression based on the variable reference relationship; caching the variable reference relationship and the operation queue corresponding to the expression in the data interaction access module; and determining the syntax tree based on the variable reference relationship and the operation queue.

[0015] In this technical solution, parsing one or more received expressions into an Abstract Syntax Tree (AST) specifically includes: determining the calling information of variables or parameters corresponding to at least one expression, i.e., the calling status of variables or parameters in other expressions in the batch expression dataset. For example, if the result parameter in the expression is used as a variable in another expression in the batch expression dataset, i.e., the result parameter in the expression is called by the corresponding expression, the computing system determines the reference relationship of variables or parameters in each expression based on the parameter calling information; and determining the operation queue corresponding to the expression, i.e., the operation logic corresponding to the parameters or variables included in the expression and the function operations required; and determining the AST corresponding to the batch expression dataset based on the variable reference relationship between at least one expression and the operation queue corresponding to the expression.

[0016] In the above technical solution, the expression operation task scheduling and management module performs hierarchical sorting of the syntax tree to determine the operation task layer, which includes: obtaining the syntax tree; determining the topological relation parameters corresponding to the syntax tree; determining at least one single expression and a sub-expression queue corresponding to the single expression based on the topological relation parameters; determining the first task layer based on at least one single expression; determining at least one secondary task layer based on the sub-expression queue; and determining the operation task layer based on the first task layer and at least one secondary task layer.

[0017] In this technical solution, the topological relationship network of expressions in the syntax tree is determined based on the Abstract Syntax Tree (AST), i.e., the topological relationship parameters. At least one expression is then sorted hierarchically by AOV (Object-Oriented View) based on these topological relationship parameters. The computation task layer is determined according to the variable reference relationships between expressions in the batch expression dataset. A single expression indicates that it has no reference relationship with other expressions in the batch expression dataset; that is, the variables or parameters in a single expression are not related to the variables or parameters in other expressions. A single expression corresponds to the first task layer, and expressions in the first task layer do not need to depend on other expressions in the batch expression dataset for calculation. The variables or parameters of expressions in the sub-expression queue are all related to other expressions in the batch expression dataset; that is, the computation of expressions in the sub-expression queue depends on the computation results of other expressions in the batch expression dataset. At least one expression in the sub-expression queue corresponds to a secondary task layer. The computation task layer is determined based on the secondary task layer and the first task layer.

[0018] Understandably, by dividing batch computing tasks into batches and layers, and rationally arranging the computing tasks of the computing system, redundant computing processes can be eliminated and operating efficiency improved.

[0019] In the above technical solution, the computation task layer is extracted from the data interaction and access module, and the arithmetic logic operation queue is determined according to the hierarchical order, including: determining that a single expression in the first task layer is the first operation priority; determining the first sub-expression and the second sub-expression in the sub-expression queue according to the operation queue, wherein the second sub-expression includes the result of the first sub-expression; determining at least one first sub-expression as the second operation priority and at least one second sub-expression as the third operation priority; and determining the arithmetic logic operation queue according to the hierarchical order, wherein the hierarchical order includes the first operation priority, the second operation priority, and the third operation priority.

[0020] In this technical solution, the expressions in the computation task layer are logically sorted to determine the arithmetic logic operation queue corresponding to the batch expression dataset. Specifically, firstly, single expressions unrelated to other expressions in the batch expression dataset are calculated, i.e., single expressions in the first task layer are determined as having the first operation priority. Then, based on the variable reference relationships of the expressions corresponding to the operation queues, the first and second sub-expressions in the sub-expression queues are determined. That is, the result parameter of the first sub-expression is a variable or parameter in the second sub-expression, or the result parameter of the first sub-expression is related to a variable or parameter in the second sub-expression, and the operation of the second sub-expression depends on the result of the first sub-expression. The operation logic of at least one first sub-expression precedes the operation logic of at least one second sub-expression, and the operation priority of the first sub-expression is higher than that of the second sub-expression. In other words, at least one first sub-expression is determined as having the second operation priority, and at least one second sub-expression as having the third operation priority. The arithmetic logic operation queues are determined according to the logical hierarchy of the first, second, and third operation priorities. The system executes the corresponding operation logic according to the queue order, improving the computational logic.

[0021] In the above technical solution, the operation corresponding to at least one expression is performed according to the arithmetic logic operation queue, and the operation result is determined by: obtaining the arithmetic logic operation queue corresponding to the expression from the data interaction access module; determining at least one function processing method in the arithmetic logic operation queue; determining the function call type corresponding to the function processing method, the function call type including a first call type and a second call type; determining the application parameters corresponding to the first call type; determining the external interface parameters corresponding to the second call type; and determining the operation result based on the application parameters and the external interface parameters.

[0022] In this technical solution, the arithmetic logic operation queue corresponding to the expression is obtained from the data interaction and access module. The corresponding operation logic is executed according to the queue order, processing the functions in each expression to determine the operation result corresponding to the batch expression dataset input by the caller. During the process of determining the operation queue, the operation logic corresponding to the parameters or variables included in at least one expression in the batch expression dataset and the required function operations have been determined. Based on the function operations required for the expressions determined in the logic operation queue, the function processing method required for the batch expression dataset is determined. Based on the function processing method, it is determined whether the corresponding function processing module currently exists in the system. When the corresponding function processing module exists in the system, the function call type is determined as the first call type; when the corresponding function processing module does not exist in the system, the function call type is determined as the second call type, requiring an external interface to obtain the corresponding function processing module for function processing. That is, by obtaining the corresponding function processing module through an external interface, a factory pattern for function processing is determined. Corresponding function processing modules can be configured for different operation logics, improving the scalability of the operation business, achieving high cohesion and low coupling, and enabling the operation system to adapt to multiple business scenarios.

[0023] A second aspect of the present invention provides a data processing apparatus, comprising: an acquisition unit for acquiring a batch expression dataset, the batch expression dataset including at least one expression; a parsing unit for determining a syntax tree corresponding to the expression; a sorting unit for performing hierarchical sorting of the syntax tree according to an expression operation task scheduling management module to determine an operation task layer; a caching unit for inputting the operation task layer into a data interaction access module for caching; a logic unit for extracting the operation task layer from the data interaction access module and determining an arithmetic logic operation queue according to the hierarchical order; and a processing unit for performing operations corresponding to at least one expression according to the arithmetic logic operation queue, determining the operation result, and inputting the operation result into the data interaction access module for storage.

[0024] According to the data processing apparatus provided by the present invention, a data processing method is implemented, which realizes expression parsing, parameter reference extraction, external interface function extraction, and computation task planning and execution, thereby improving the execution efficiency and scalability of the batch expression data processing method and making the data processing method clearer. Specifically, the acquisition unit acquires the batch expression dataset input into the system by the caller; the parsing unit, based on syntax parsing technology, parses at least one expression received by the computing system into an abstract syntax tree (AST), that is, a syntax tree corresponding to the expression; the sorting unit determines the execution order of the computation tasks of variables or parameters in at least one expression by hierarchically sorting the variables or parameters in the abstract syntax tree, that is, the computation task layer. The caching unit caches or writes back data from each module in the computing system and retrieves data from the data interaction access module when expression calculations are needed. The logic unit sorts the expressions in the computation task layer and arranges the computation tasks to determine the arithmetic logic operation queue corresponding to the batch expression dataset. The processing unit executes the corresponding computation logic according to the arithmetic logic operation queue corresponding to the expression, processes the functions in each expression, determines the computation result corresponding to the batch expression dataset input by the caller, stores the computation result in the data interaction access module, and returns it to the caller.

[0025] An embodiment of the third aspect of the present invention provides a computing system, comprising: an expression parsing front-end module, an expression computation task scheduling and management module, an expression computation execution module, and a data interaction and access module. The expression parsing front-end module and the expression computation task scheduling and management module are electrically connected, i.e., the execution flow of the expression computation task scheduling and management module depends on the output of the expression parsing front-end module; the expression computation task scheduling and management module and the expression computation execution module are electrically connected, i.e., the execution flow of the expression computation execution module depends on the output of the expression computation task scheduling and management module; the expression computation task scheduling and management module and the data interaction and access module are electrically connected, i.e., the execution flow of the data interaction and access module depends on the output of the expression computation task scheduling and management module; the expression computation execution module and the data interaction and access module are electrically connected, i.e., the execution flow of the data interaction and access module depends on the output of the expression computation execution module; the expression parsing front-end module is used to determine the syntax tree corresponding to the expression; the expression computation execution module is used to extract the computation task layer from the data interaction and access module and determine the arithmetic logic operation queue according to the hierarchical order; perform the operation corresponding to at least one expression according to the arithmetic logic operation queue, determine the operation result, and input the operation result to the data interaction and access module for storage; and a data processing device as described in the second aspect.

[0026] By decoupling expression parsing from expression scheduling and execution in the computing system, the parsing of expressions and the execution of computation tasks are separated. This is achieved by separating the front-end (expression parsing front-end module) and the back-end (expression computation task scheduling and management module and data interaction and access module) of expression processing business. This improves the reusability of the expression parsing end and the execution of computation tasks, enabling the computing system to adapt to multiple business scenarios and enhance the scalability of computing business. Different function processing logics can be added to integrate the system, thus achieving full decoupling between data computation and function business logic.

[0027] An embodiment of the fourth aspect of the present invention provides an electronic device including a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the method of the first aspect.

[0028] A fifth aspect of the present invention provides a readable storage medium on which a program or instructions are stored, which, when executed by a processor, implement the steps of the method of the first aspect.

[0029] A sixth aspect of the present invention provides a chip including a processor and a communication interface coupled to the processor, the processor being used to run a program or instructions to implement the steps of the method as described in the first aspect.

[0030] Additional aspects and advantages of the invention will become apparent in the following description or may be learned by practice of the invention. Attached Figure Description

[0031] Figure 1 A schematic flowchart of a data processing method according to an embodiment of this application is shown;

[0032] Figure 2 A partial flowchart of a data processing method according to an embodiment of this application is shown;

[0033] Figure 3 A partial flowchart of a data processing method according to an embodiment of this application is shown;

[0034] Figure 4 A partial flowchart of a data processing method according to an embodiment of this application is shown;

[0035] Figure 5 A partial flowchart of a data processing method according to an embodiment of this application is shown;

[0036] Figure 6 A schematic block diagram of a data processing apparatus according to an embodiment of this application is shown;

[0037] Figure 7 A schematic block diagram of an electronic device according to an embodiment of this application is shown;

[0038] Figure 8 A schematic block diagram of the structure of a computing system according to an embodiment of this application is shown;

[0039] Figure 9 A schematic diagram illustrating expression parsing according to an embodiment of this application is shown;

[0040] Figure 10 A schematic diagram illustrating the generation of the execution order of computational tasks according to an embodiment of this application is shown;

[0041] Figure 11 A schematic diagram illustrating the execution sequence of batch expression operations according to an embodiment of this application is shown.

[0042] in, Figures 6 to 8 The correspondence between the reference numerals and component names in the attached drawings is as follows:

[0043] 900: Data processing device; 902: Acquisition unit; 904: Parsing unit; 906: Sorting unit; 908: Cache unit; 910: Logic unit; 912: Processing unit; 1000: Electronic device; 1109: Memory; 1110: Processor; 3000: Computational system; 3002: Expression parsing front-end module; 3004: Expression operation task scheduling and management module; 3006: Expression operation execution module; 3008: Data interaction and access module. Detailed Implementation

[0044] To better understand the above-described objectives, features, and advantages of the embodiments of the present invention, the embodiments of the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be noted that, unless otherwise specified, the embodiments and features described in these embodiments can be combined with each other.

[0045] Many specific details are set forth in the following description in order to provide a full understanding of this application. However, embodiments of the invention may also be implemented in other ways different from those described herein. Therefore, the scope of protection of this application is not limited to the specific embodiments disclosed below.

[0046] The following is in conjunction with the appendix Figures 1 to 11 The present application provides a detailed description of the method for batch complex expression calculation in the data analysis process in the digital field, through specific embodiments and application scenarios.

[0047] This embodiment provides a data processing method for a computing system. The computing system includes an expression calculation task scheduling and management module and a data interaction and access module, which are electrically connected. Figure 1 As shown, the data processing methods include:

[0048] Step S100: Obtain a batch expression dataset, which includes at least one expression;

[0049] Step S102: Determine the syntax tree corresponding to the expression;

[0050] Step S104: The syntax tree is sorted hierarchically according to the expression operation task scheduling management module to determine the operation task layer. The operation task layer includes a first task layer and at least one secondary task layer.

[0051] Step S106: Input the computation task layer into the data interaction and access module cache;

[0052] Step S108: Extract the computation task layer from the data interaction and access module, and determine the arithmetic logic operation queue according to the hierarchical order;

[0053] Step S110: Perform the operation corresponding to at least one expression according to the arithmetic logic operation queue, determine the operation result, and input the operation result into the data interaction access module for storage.

[0054] According to the data processing method proposed in this invention, applied to an enterprise-level data analysis computing system, the computing system mainly includes an expression computation task scheduling and management module and a data interaction and access module. The expression computation task scheduling and management module is electrically connected to the data interaction and access module. The expression computation task scheduling and management module is mainly used to parse the expression topology network generated by the parsing module and perform hierarchical sorting of the topology network of at least one expression using an Activity On Vertex (AOV) method. The data interaction and access module is mainly used to cache the write-back data from each module in the computing system and to store the data using data structures such as queues, stacks, and hash tables according to the different needs of the corresponding modules. By defining a specific expression definition specification (Domain Specific Language, DSL) for the computing system, batch expressions are parsed to generate abstract syntax trees corresponding to the expressions. The topological relationships of the batch expressions are determined based on the abstract syntax trees, thereby determining the reference relationships between at least one expression and its corresponding expression in the batch, and performing batch computation tasks in a hierarchical manner. Specifically, the system obtains a batch expression dataset input from the caller into the system. The batch expression dataset includes at least one expression that needs to be calculated. Based on syntax parsing technology, the system parses the at least one expression received by the system into an abstract syntax tree (AST), which is a tree-like representation of the abstract syntax structure of the source code. Each node in the tree represents a structure in the source code, i.e., a variable or parameter in the expression. The expression calculation task scheduling and management module sorts the variables or parameters in the abstract syntax tree according to the AOV hierarchy to determine the execution order of the calculation tasks of the variables or parameters in the at least one expression, i.e., the calculation task layer. The computation task layer is divided into a first task layer and at least one secondary task layer according to the execution order. The variables or parameters corresponding to the expressions in the first task layer do not need to depend on other expressions for calculation. As an independent expression, it needs to correspond to the computation logic of the expression. The secondary task layer includes at least one upper task layer and at least one lower task layer. The variables or parameters in the upper task layer depend on the computation results of the expressions in the lower task layer during the computation process. After the computation task layer is determined, the results of the computation task layer are cached in the data interaction and access module according to the hierarchical order for use by subsequent computation tasks.The logical order corresponding to the first task layer, at least one upper task layer, and at least one lower task is determined from the cached computation task layer in the data interaction access module. That is, the hierarchical order. The arithmetic logic operation queue is determined according to the hierarchical order. The computation logic corresponding to the expression is executed according to the order of the queue. That is, the expression is operated on one by one or the function is called according to the arithmetic logic operation queue. Each operation reads the corresponding operation result from the result temporary storage stack. After the current expression is executed, the result is stored in the result record Hash table of the data interaction access module, and all execution results are returned to the caller.

[0055] Among them, at least one expression in the batch expression dataset that needs to be calculated is an expression that is related to each other and corresponds to the same scheme, or it can be an independent expression that corresponds to multiple schemes and is not related to each other.

[0056] Understandably, by generating an expression topology network through the expression computation task scheduling and management module, and performing AOV hierarchical sorting on the topology network of at least one expression, expression computation tasks can be run in batches. This eliminates redundant computation processes, avoids repeated calculations of the same computational logic, and improves the logical consistency of the computation system in the batch expression computation process. Furthermore, by using a data interaction and access module to cache or write back data from each module in the computation system, and extracting data from the data interaction and access module when needed for expression computation, unnecessary input / output (I / O) operations during expression computation are reduced, thereby improving the efficiency of expression computation.

[0057] In one embodiment, alternatively, such as Figure 2 As shown, determining the syntax tree corresponding to the expression includes:

[0058] Step S1022: Determine the parameter call information corresponding to the expression;

[0059] Step S1024: Determine the variable reference relationship of at least one parameter in the expression based on the parameter calling information;

[0060] Step S1026: Determine the operation queue corresponding to the expression based on the variable reference relationship;

[0061] Step S1028: Cache the variable reference relationship and the corresponding operation queue of the expression in the data interaction access module;

[0062] Step S1030: Determine the syntax tree based on variable reference relationships and the operation queue.

[0063] In this technical solution, parsing one or more received expressions into an Abstract Syntax Tree (AST) specifically includes: determining the calling information of variables or parameters corresponding to at least one expression, i.e., the calling status of variables or parameters in other expressions in the batch expression dataset. For example, if the result parameter in the expression is used as a variable in another expression in the batch expression dataset, i.e., the result parameter in the expression is called by the corresponding expression, the computing system determines the reference relationship of variables or parameters in each expression based on the parameter calling information; and determining the operation queue corresponding to the expression, i.e., the operation logic corresponding to the parameters or variables included in the expression and the function operations required; and determining the AST corresponding to the batch expression dataset based on the variable reference relationship between at least one expression and the operation queue corresponding to the expression.

[0064] In one specific embodiment, the received batch expressions are parsed into an AST (Abstract Syntax Tree), such as... Figure 9 As shown, a batch expression dataset is obtained, which includes the following batch expressions: [D] = IF([A] >= [B], [A] + [B], [B] + [C]); [A] = ([A1] + [A2] + [A3]); [B] = ([A] + [A2] + [A3]); [B1] = ([A1] + [A2] + [A3]); [C] = ([A] + [B] + [C1]); [A1] = UDEF_INST("","","AA1"); [A2] = UDEF_INST("","","AA2"); [A3] = UDEF_INST("","","AA3"); [C1] = UDEF_INST("","","CC1"); etc. The expression parsing front-end module parses the expressions to determine the variable reference relationship structure, i.e., variable A is referenced by variable D, variable A is referenced by... The relationships between variables B and C (referencing each other), variables B being referenced by variables D and C, variables A1 being referenced by variables A and B1, variables A3 being referenced by variables A and B1, variables A2 being referenced by variables A and B1, and variables C1 being referenced by variable C are determined. The function operation queue corresponding to variable D is also determined, including the operation functions IdxNodeOp, IdxNodeOp, AddNodeOp, IdxCa1NodeOp, IdxCa1NodeOp, AddNodeOp, FunctionCa1NodeOp, and AssignNodeOp. The AST (Abstract Syntax Tree) corresponding to the batch expression dataset is determined through the variable reference relationships between at least one expression and the operation queue corresponding to the expression.

[0065] In one embodiment, alternatively, such as Figure 3 As shown, the syntax tree is sorted hierarchically by the expression operation task scheduling and management module, and the operation task layer is determined to include:

[0066] Step S1042: Obtain the syntax tree;

[0067] Step S1044: Determine the topological relation parameters corresponding to the syntax tree;

[0068] Step S1046: Determine at least one single expression and a queue of sub-expressions corresponding to the single expression based on the topological relationship parameters;

[0069] Step S1048: Determine the first task layer based on at least one single expression;

[0070] Step S1050: Determine at least one secondary task layer based on the subexpression queue;

[0071] Step S1052: Determine the computation task layer based on the first task layer and at least one secondary task layer.

[0072] In this technical solution, the topological relationship network of expressions in the syntax tree is determined based on the Abstract Syntax Tree (AST), i.e., the topological relationship parameters. At least one expression is then sorted hierarchically by AOV (Object-Oriented View) based on these topological relationship parameters. The computation task layer is determined according to the variable reference relationships between expressions in the batch expression dataset. A single expression indicates that it has no reference relationship with other expressions in the batch expression dataset; that is, the variables or parameters in a single expression are not related to the variables or parameters in other expressions. A single expression corresponds to the first task layer, and expressions in the first task layer do not need to depend on other expressions in the batch expression dataset for calculation. The variables or parameters of expressions in the sub-expression queue are all related to other expressions in the batch expression dataset; that is, the computation of expressions in the sub-expression queue depends on the computation results of other expressions in the batch expression dataset. At least one expression in the sub-expression queue corresponds to a secondary task layer. The computation task layer is determined based on the secondary task layer and the first task layer.

[0073] Understandably, by dividing batch computing tasks into batches and layers, and rationally arranging the computing tasks of the computing system, redundant computing processes can be eliminated and operating efficiency improved.

[0074] In one specific embodiment, the computation task execution order generation, i.e., the topology network and corresponding topology parameters, is as follows: Figure 10As shown, AOV graph analysis based on the AST (Abstract Syntax Tree) reveals the following: Variable A1 is referenced by Variable B1 and Variable A; Variable A2 is referenced by Variable B1, Variable A, and Variable B; Variable A3 is referenced by Variable B1, Variable A, and Variable B; Variable A is referenced by Variable D, Variable C, and Variable B; Variable B is referenced by Variable D and Variable C; Variable C1 is referenced by Variable C. Variables A1, A2, A3, and C1 are single expressions, corresponding to the first task level, as they do not depend on other expressions in the batch expression dataset for calculation. Variables A, B1, B, D, and C all reference variables or parameters in other expressions, forming a sub-expression queue, which is divided into secondary task levels. Based on the reference relationships, Variable A and B1 are determined to be the second-level task level, Variable B the third-level task level, and Variable D and C the fourth-level task level.

[0075] In one embodiment, alternatively, such as Figure 4 As shown, the computation task layer is extracted from the data interaction and access module, and the arithmetic logic operation queue is determined according to the hierarchical order, including:

[0076] Step S1082: Determine that the single expression in the first task layer has the first operation priority;

[0077] Step S1084: Determine the first and second sub-expressions in the sub-expression queue according to the operation queue. The second sub-expression includes the result of the first sub-expression.

[0078] Step S1086: Determine at least one first subexpression as having the second operation priority and at least one second subexpression as having the third operation priority;

[0079] Step S1088: Determine the arithmetic logic operation queue according to the hierarchical order.

[0080] In this technical solution, the expressions in the computation task layer are logically sorted to determine the arithmetic logic operation queue corresponding to the batch expression dataset. Specifically, firstly, single expressions unrelated to other expressions in the batch expression dataset are calculated, i.e., single expressions in the first task layer are determined as having the first operation priority. Then, based on the variable reference relationships of the expressions corresponding to the operation queues, the first and second sub-expressions in the sub-expression queues are determined. That is, the result parameter of the first sub-expression is a variable or parameter in the second sub-expression, or the result parameter of the first sub-expression is related to a variable or parameter in the second sub-expression, and the operation of the second sub-expression depends on the result of the first sub-expression. The operation logic of at least one first sub-expression precedes the operation logic of at least one second sub-expression, and the operation priority of the first sub-expression is higher than that of the second sub-expression. In other words, at least one first sub-expression is determined as having the second operation priority, and at least one second sub-expression as having the third operation priority. The arithmetic logic operation queues are determined according to the logical hierarchy of the first, second, and third operation priorities. The system executes the corresponding operation logic according to the queue order, improving the computational logic.

[0081] In one embodiment, alternatively, such as Figure 5 As shown, operations corresponding to at least one expression are performed according to the arithmetic logic operation queue, and the results of the operations are determined as follows:

[0082] Step S1102: Obtain the arithmetic logic operation queue corresponding to the expression from the data interaction access module;

[0083] Step S1104: Determine the processing method for at least one function in the arithmetic logic operation queue;

[0084] Step S1106: Determine the function call type corresponding to the function processing method. The function call type includes a first call type and a second call type.

[0085] Step S1108: Determine the application parameters corresponding to the first call type;

[0086] Step S1110: Determine the external interface parameters corresponding to the second call type;

[0087] Step S1112: Determine the calculation result based on the application parameters and external interface parameters.

[0088] In this technical solution, the arithmetic logic operation queue corresponding to the expression is obtained from the data interaction and access module. The corresponding operation logic is executed according to the queue order, processing the functions in each expression to determine the operation result corresponding to the batch expression dataset input by the caller. During the process of determining the operation queue, the operation logic corresponding to the parameters or variables included in at least one expression in the batch expression dataset and the required function operations have been determined. Based on the function operations required for the expressions determined in the logic operation queue, the function processing method required for the batch expression dataset is determined. Based on the function processing method, it is determined whether the corresponding function processing module currently exists in the system. When the corresponding function processing module exists in the system, the function call type is determined as the first call type; when the corresponding function processing module does not exist in the system, the function call type is determined as the second call type, requiring an external interface to obtain the corresponding function processing module for function processing. That is, by obtaining the corresponding function processing module through an external interface, a factory pattern for function processing is determined. Corresponding function processing modules can be configured for different operation logics, improving the scalability of the operation business, achieving high cohesion and low coupling, and enabling the operation system to adapt to multiple business scenarios.

[0089] like Figure 6 As shown, this embodiment of the invention provides a data processing device 900, which includes: an acquisition unit 902 for acquiring a batch expression dataset, the batch expression dataset including at least one expression; a parsing unit 904 for determining a syntax tree corresponding to the expression; a sorting unit 906 for performing hierarchical sorting of the syntax tree according to an expression operation task scheduling management module to determine an operation task layer; a caching unit 908 for inputting the operation task layer into a data interaction access module for caching; a logic unit 910 for extracting the operation task layer from the data interaction access module and determining an arithmetic logic operation queue according to the hierarchical order; and a processing unit 912 for performing operations corresponding to at least one expression according to the arithmetic logic operation queue, determining the operation result, and inputting the operation result into the data interaction access module for storage.

[0090] According to the data processing apparatus 900 provided by the present invention, a data processing method is implemented, which realizes expression parsing, parameter reference extraction, external interface function extraction, calculation task planning and execution, thereby improving the execution efficiency and scalability of the batch expression data processing method and making the data processing method clearer. Specifically, the acquisition unit 902 acquires the batch expression dataset input by the caller into the system; the parsing unit 904, based on syntax parsing technology, parses at least one expression received by the computing system into an abstract syntax tree, i.e., the syntax tree corresponding to the expression; the sorting unit 906 determines the execution order of the calculation tasks of variables or parameters in at least one expression by hierarchically sorting the variables or parameters in the abstract syntax tree, i.e., the calculation task layer; the caching unit 908 caches or writes back the data of each module in the computing system, and extracts the data from the data interaction access module when the expression calculation is needed; the logic unit 910 arranges the calculation tasks by logically sorting the expressions in the calculation task layer, and determines the arithmetic logic operation queue corresponding to the batch expression dataset; the processing unit 912 executes the corresponding calculation logic according to the arithmetic logic operation queue corresponding to the expression, processes the functions in each expression, determines the calculation result corresponding to the batch expression dataset input by the caller, stores the calculation result in the data interaction access module, and returns it to the caller.

[0091] like Figure 8As shown, this embodiment of the invention provides a computing system 3000, which includes: an expression parsing front-end module 3002, an expression computation task scheduling and management module 3004, an expression computation execution module 3006, and a data interaction and access module 3008. The expression parsing front-end module 3002 and the expression computation task scheduling and management module 3004 are electrically connected, meaning the execution flow of the expression computation task scheduling and management module depends on the output of the expression parsing front-end module; the expression computation task scheduling and management module 3004 and the expression computation execution module 3006 are electrically connected, meaning the execution flow of the expression computation execution module depends on the output of the expression computation task scheduling and management module; the expression computation task scheduling and management module 3004 and the data interaction and access module 3008 are electrically connected. The data interaction access modules 3008 are electrically connected, meaning the execution flow of the data interaction access module depends on the output of the expression operation task scheduling and management module; the expression operation execution module 3006 and the data interaction access module 3008 are electrically connected, meaning the execution flow of the data interaction access module depends on the output of the expression operation execution module; the expression parsing front-end module 3002 is used to determine the syntax tree corresponding to the expression; the expression operation execution module 3006 is used to extract the operation task layer from the data interaction access module and determine the arithmetic logic operation queue according to the hierarchical order; it executes the operation corresponding to at least one expression according to the arithmetic logic operation queue, determines the operation result, and inputs the operation result to the data interaction access module for storage; as described in the data processing device 900 above.

[0092] By decoupling expression parsing and expression scheduling execution through the computing system 3000, the parsing of expressions and the execution of calculation tasks are separated. That is, the front end of expression processing business (expression parsing front end module 3002) and the back end (expression calculation task scheduling and management module 3004 and data interaction and access module 3008) are separated. This improves the reusability of the formula parsing end and the calculation task execution end, enabling the computing system 3000 to adapt to multiple business scenarios and improve the scalability of computing business. It can be integrated by simply adding different function processing logic, thus achieving full decoupling between data operation and function business logic.

[0093] The expression parsing front-end module 3002 includes: lexical analysis (based on AST syntax analysis), syntax analysis (based on AST syntax analysis), syntax error checking and analysis, expression reference extraction, generation of expression topology relationships, cell reference extraction, generation of intermediate expressions for cell range indicators, extraction of operational logic order, extraction of custom functions, and generation of arithmetic logic operation queues. This expression parsing front-end module 3002, based on syntax parsing technology, parses one or more received expressions into an AST abstract syntax tree, extracts the operational logic model and the relationship model of inter-expression references from the syntax tree, and generates an arithmetic logic operation queue and an expression topology network, which are cached in the data interaction module's cache.

[0094] The expression computation task scheduling and management module 3004 includes: calling and querying custom functions to retrieve data, topological sorting of expression computation task scheduling, calling expression computation one by one according to hierarchical order, and management and control of computation tasks. The expression computation task scheduling and management module 3004 is used to perform AOV hierarchical sorting of the expression topology network generated by the parsing module. The first layer of computation tasks does not depend on other computations, while upper-layer computation tasks depend on the results of lower-layer computations. After the execution module is called in hierarchical order, the final results collected are cached in the computation result cache of the data interaction module for use by subsequent layers of computation tasks. The time complexity analysis of this method is as follows: Assuming there are n computation parameters and e reference relationships, each computation expression needs to be pushed onto and popped from the stack during the sorting process, so the time required is O(n). After each node is pushed onto the stack, the reference relationship of that computation needs to be accessed, which is executed e times. Therefore, the time complexity of this method is O(n+e). When all tasks are completed, the computation results are collected and returned to the caller. This module also converts the custom interface functions collected by the parser front end into SQL or NoSQL database query statements, performs batch queries on the statements using external data interfaces, and saves them to the custom result cache of the data interaction module. The purpose of this is to reduce unnecessary I / O operations during calculation and improve efficiency.

[0095] The expression operation execution module 3006 includes: an arithmetic operation module, a logical operation module, a single-task calculation intermediate result stack cache, and a numerical conversion module. It can also call at least one processing module from external data through a factory pattern. For example, a calculation function processing module, which includes its own unified calculation function abstract factory, unified calculation function interface, and IF calculation function implementation, among other functions; and a custom function processing module, which includes its own unified custom function abstract factory, unified custom function interface, and UDEF_INST calculation function implementation, among other functions. The expression operation execution module can configure corresponding operation processing modules for different operation logics. The expression operation execution module 3006, based on the expression passed from the scheduling module, assigns variable names to the data interaction module's cache, retrieves the arithmetic and logical operation queue generated by the expression parsing module, and executes the corresponding operation logic according to the queue order. The function processing method uses the factory pattern, which aims to achieve a high-cohesion, low-coupling design principle for business scalability.

[0096] The data interaction and access module 3008 includes: report parameter collection and user-entered data access, expression collection and write-back, custom function data query and result caching, global variable calculation result caching, and parsing result caching. This module 3008 is used to cache data interaction between the expression parsing module (i.e., the expression parsing front-end module), the task scheduling module (i.e., the expression operation task scheduling management module), and the expression operation execution module, and to implement the function of writing back calculation results to the caller. It uses data structures such as queues, stacks, and hash tables according to different needs, providing appropriate data structures as required to improve data access efficiency.

[0097] In one specific embodiment, the data processing method proposed in this invention, combined with a corresponding computing system, realizes expression parsing, parameter reference extraction, external interface function extraction, and computation task planning and execution, thereby improving the execution efficiency and scalability of the batch expression data processing method. To make the data processing method clearer, it is combined with... Figure 11The following diagram illustrates the execution sequence of batch expression operations: Data processing methods, ordered by execution order, include: 1. Batch expression input; 2. Batch expression string; 3. Returning reference relationships, operation queues, and external interface collection; 4. Recording the operation queue hash table; 5. Returning execution status; 6. AOV reference sorting; 7. Calling external data interfaces; 8. Caching interface return data; 9. Returning execution status; 10. Executing expression tasks in hierarchical order; 11. Executing single expression operations; 12. Obtaining the sub-expression queue; 13. Returning the expression operation queue; 14. Obtaining reference parameters or external interface results; 15. Returning results; 16. Saving operation results; 17. Returning execution status; 18. Returning execution status; 19. Collecting batch expression calculation results; 20. Returning batch expression calculation results; 21. Returning batch results.

[0098] Specifically, the first step (i.e. Figure 11 (As shown in section 1): The caller inputs the batch expressions to be calculated into the expression calculation scheduling management module of the calculation system; the second step (i.e. Figure 11 (As shown in sections 2 and 3): The expression operation scheduling and management module transmits the input expression to the expression parsing front-end module. The expression parsing front-end module extracts the parameter call information, the operation queue of each expression, and the collection of external interface functions from the batch expressions, and returns the results to the expression operation scheduling and management module; the third step (i.e. Figure 11 (As shown in sections 4 and 5): The expression operation scheduling management module stores the operation queue data parsed by the expression parsing front-end module into the data interaction and retrieval module for subsequent use; the fourth step (i.e. Figure 11 (As shown in section 6): The expression computation task scheduling and management module will perform hierarchical sorting of the parameter reference AOV relationship diagram returned to the expression computation scheduling and management module in the second step. If the parameters of the currently calculated batch expression have circular dependencies, it will prompt the caller of the calculated expression that a circular dependency exception has occurred; the fifth step (i.e. Figure 11 (As shown in sections 7 to 9): The expression calculation task scheduling and management module retrieves a batch of external calculation data at once and stores the retrieved data in the data interaction access module to reduce I / O in subsequent operations. This interface can be extended to retrieve external data by extending other interfaces; Step 6 (i.e. Figure 11(As shown in sections 10 to 18): The expression calculation task scheduling and management module calls the expression calculation execution module to execute the expression calculation function in hierarchical order. First, it needs to access the data interaction module to obtain the calculation queue of the expression. Then, it performs calculation operations or calls function operations one by one according to the calculation queue. Each calculation operation will read the result from the result temporary storage stack. After the current expression calculation is completed, the result is stored in the result record Hash table of the data interaction module; Step 7 (i.e. Figure 11 (As shown in sections 19 to 21): After all expressions have been executed, the expression calculation task scheduling and management module retrieves all execution results from the data interaction and access module and returns them to the caller who calculated the expression.

[0099] like Figure 7 As shown, this application embodiment also provides an electronic device 1000, including a processor 1110, a memory 1109, and a program or instructions stored in the memory 1109 and executable on the processor 1110. When the program or instructions are executed by the processor 1110, they implement the various processes of the above-described tunneling machine simulation method embodiment and achieve the same technical effect. To avoid repetition, they will not be described again here.

[0100] Optionally, the processor 1110 is configured to: acquire a batch expression dataset, the batch expression dataset including at least one expression; determine a syntax tree corresponding to the expression; perform hierarchical sorting of the syntax tree according to the expression operation task scheduling management module to determine the operation task layer, the operation task layer including a first task layer and at least one secondary task layer; input the operation task layer into the data interaction access module cache; extract the operation task layer from the data interaction access module and determine the arithmetic logic operation queue according to the hierarchical order; execute the operation corresponding to at least one expression according to the arithmetic logic operation queue, determine the operation result, and input the operation result into the data interaction access module for storage.

[0101] Optionally, the processor 1110 is further configured to determine parameter call information corresponding to the expression; determine variable reference relationships of at least one parameter in the expression based on the parameter call information; determine the operation queue corresponding to the expression based on the variable reference relationships; cache the variable reference relationships and the operation queue corresponding to the expression in the data interaction access module; and determine the syntax tree based on the variable reference relationships and the operation queue.

[0102] Optionally, the processor 1110 is further configured to: acquire a syntax tree; determine topological relation parameters corresponding to the syntax tree; determine at least one single expression and a queue of subexpressions corresponding to the single expression based on the topological relation parameters; determine a first task layer based on the at least one single expression; determine at least one secondary task layer based on the queue of subexpressions; and determine an operation task layer based on the first task layer and at least one secondary task layer.

[0103] Optionally, the processor 1110 is further configured to: determine that a single expression in the first task layer has a first operation priority; determine a first sub-expression and a second sub-expression in the sub-expression queue according to the operation queue, wherein the second sub-expression includes the result of the first sub-expression; determine that at least one first sub-expression has a second operation priority and at least one second sub-expression has a third operation priority; and determine an arithmetic logic operation queue according to the hierarchical order, wherein the hierarchical order includes the first operation priority, the second operation priority, and the third operation priority.

[0104] Optionally, the processor 1110 is further configured to obtain the arithmetic logic operation queue corresponding to the expression from the data interaction access module; determine at least one function processing mode in the arithmetic logic operation queue; determine the function call type corresponding to the function processing mode, the function call type including a first call type and a second call type; determine the application parameters corresponding to the first call type; determine the external interface parameters corresponding to the second call type; and determine the operation result based on the application parameters and the external interface parameters.

[0105] This application also provides a readable storage medium storing a program or instructions. When executed by a processor, the program or instructions implement the various processes of the above-described data processing method embodiments and achieve the same technical effects. To avoid repetition, these will not be described again here. Furthermore, the readable storage medium improves the data storage capacity and data processing speed of the meeting management method in this application.

[0106] A computer-readable storage medium can be a tangible device that holds and stores instructions for use by an instruction execution device. A computer-readable storage medium can be an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing, but is not limited thereto. A non-exhaustive list of more specific examples of computer-readable storage media includes: portable computer floppy disks, hard disks, random access memory (RAM), read-only memory (ROM), erasable and programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable optical disc read-only memory (CD-ROM), digital universal disk (DVD), memory cards, floppy disks, encoding mechanical devices (e.g., punched cards or grooves with raised structures for recording instructions), and any suitable combination of the foregoing. The computer-readable storage medium used herein should not be construed as the transmission of signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media, or electrical signals transmitted through wires.

[0107] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes computer-readable storage media, such as computer read-only memory (ROM), random access memory (RAM), magnetic disk, or optical disk.

[0108] This application also provides a chip, which includes a processor and a communication interface. The communication interface and the processor are coupled. The processor is used to run programs or instructions to implement the various processes of the above-described data processing method embodiments and achieve the same technical effects. To avoid repetition, it will not be described again here. Furthermore, the chip improves the data processing speed corresponding to the meeting management method in this application.

[0109] It should be understood that the chip mentioned in the embodiments of this application may also be referred to as a system-on-a-chip, system chip, chip system, or system-on-a-chip, etc.

[0110] The data processing method, apparatus, electronic device, readable storage medium, and chip for batch complex expressions provided by the present invention are designed by dividing the functions of batch expression parsing, scheduling, execution, and data access into various execution modules, which greatly improves the efficiency of batch expression calculation and business expansion capabilities.

[0111] In this invention, the terms "first," "second," and "third" are used for descriptive purposes only and should not be construed as indicating or implying relative importance; the term "multiple" refers to two or more unless otherwise explicitly defined. The terms "install," "connect," "link," and "fix" should be interpreted broadly. For example, "connect" can be a fixed connection, a detachable connection, or an integral connection; "link" can be a direct connection or an indirect connection through an intermediate medium. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.

[0112] In the description of this invention, it should be understood that the terms "upper," "lower," "left," "right," "front," "rear," etc., indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or unit referred to must have a specific orientation or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.

[0113] In the description of this specification, the terms "one embodiment," "some embodiments," "specific embodiment," etc., refer to a specific feature, structure, material, or characteristic described in connection with that embodiment or example, which is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples.

[0114] The above are merely preferred embodiments of the present invention and are not intended to limit the invention. Various modifications and variations can be made to the present invention by those skilled in the art. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of the present invention should be included within the scope of protection of the present invention.

Claims

1. A method for batch processing of complex expressions, characterized in that, A computing system is used, the computing system comprising: an expression computation task scheduling and management module and a data interaction and access module, the expression computation task scheduling and management module and the data interaction and access module being electrically connected, the data processing method comprising: Obtain a batch expression dataset, wherein the batch expression dataset includes at least one expression; Determine the syntax tree corresponding to the expression; The expression operation task scheduling and management module performs hierarchical sorting on the syntax tree to determine the operation task layer, which includes a first task layer and at least one secondary task layer. The computation task layer is input into the data interaction and access module cache; Extract the computation task layer from the data interaction and access module, and determine the arithmetic logic operation queue according to the hierarchical order; Perform operations corresponding to at least one of the expressions according to the arithmetic logic operation queue, determine the operation result, and input the operation result into the data interaction access module for storage; The step of performing hierarchical sorting of the syntax tree according to the expression operation task scheduling management module to determine the operation task layer includes: Obtain the syntax tree; Determine the topological relation parameters corresponding to the syntax tree; At least one single expression and a queue of sub-expressions corresponding to the single expression are determined based on the topological relationship parameters. The first task layer is determined based on at least one of the single expressions; At least one secondary task layer is determined based on the sub-expression queue; The computation task layer is determined based on the first task layer and at least one of the secondary task layers.

2. The data processing method according to claim 1, characterized in that, Determining the syntax tree corresponding to the expression includes: Determine the parameter call information corresponding to the expression; The variable reference relationship of at least one parameter in the expression is determined based on the parameter call information; The operation queue corresponding to the expression is determined based on the variable reference relationship; The variable reference relationships and the corresponding operation queues for the expressions are cached in the data interaction and access module; The syntax tree is determined based on the variable reference relationships and the operation queue.

3. The data processing method according to claim 2, characterized in that, The step of extracting the computation task layer from the data interaction and access module and determining the arithmetic logic operation queue according to the hierarchical order includes: The single expression in the first task layer is determined to have the first operation priority; The first sub-expression and the second sub-expression in the sub-expression queue are determined according to the operation queue, and the second sub-expression includes the result of the first sub-expression; Determine at least one of the first subexpressions as having the second operation priority, and at least one of the second subexpressions as having the third operation priority; The arithmetic logic operation queue is determined according to the hierarchical order, which includes the first operation priority, the second operation priority, and the third operation priority.

4. The data processing method according to any one of claims 1 to 3, characterized in that, The step of performing operations corresponding to at least one of the expressions according to the arithmetic logic operation queue and determining the operation result includes: Obtain the arithmetic logic operation queue corresponding to the expression from the data interaction and access module; Determine the processing method for at least one function in the arithmetic logic operation queue; Determine the function call type corresponding to the function processing method, wherein the function call type includes a first call type and a second call type; Determine the application parameters corresponding to the first call type; Determine the external interface parameters corresponding to the second call type; The calculation result is determined based on the application parameters and the external interface parameters.

5. A data processing apparatus, characterized in that, include: The acquisition unit is used to acquire a batch expression dataset, wherein the batch expression dataset includes at least one expression; A parsing unit is used to determine the syntax tree corresponding to the expression; The sorting unit is used to perform hierarchical sorting of the syntax tree according to the expression operation task scheduling and management module to determine the operation task layer; A caching unit is used to input the computation task layer into the data interaction and access module cache; A logic unit is used to extract the computation task layer from the data interaction access module and determine the arithmetic logic operation queue according to the hierarchical order. The processing unit is configured to perform operations corresponding to at least one of the expressions according to the arithmetic logic operation queue, determine the operation result, and input the operation result to the data interaction access module for storage; The step of performing hierarchical sorting of the syntax tree according to the expression operation task scheduling management module to determine the operation task layer includes: Obtain the syntax tree; Determine the topological relation parameters corresponding to the syntax tree; At least one single expression and a queue of sub-expressions corresponding to the single expression are determined based on the topological relationship parameters. The first task layer is determined based on at least one of the single expressions; At least one secondary task layer is determined based on the sub-expression queue; The computation task layer is determined based on the first task layer and at least one of the secondary task layers.

6. A computing system, characterized in that, It includes an expression parsing front-end module, an expression operation task scheduling and management module, an expression operation execution module, and a data interaction and access module. The expression parsing front-end module and the expression operation task scheduling and management module are electrically connected, the expression operation task scheduling and management module and the expression operation execution module are electrically connected, the expression operation task scheduling and management module and the data interaction and access module are electrically connected. The expression parsing front-end module is used to determine the syntax tree corresponding to the expression; The expression operation execution module is used to extract the operation task layer from the data interaction access module, and determine the arithmetic logic operation queue according to the hierarchical order; perform the operation corresponding to at least one of the expressions according to the arithmetic logic operation queue, determine the operation result, and input the operation result to the data interaction access module for storage; The computing system further includes the data processing device as described in claim 5.

7. An electronic device, characterized in that, It includes a processor, a memory, and a program or instructions stored in the memory and executable on the processor, wherein the program or instructions, when executed by the processor, implement the steps of the data processing method as described in any one of claims 1 to 4.

8. A readable storage medium, characterized in that, The readable storage medium stores a program or instructions that, when executed by a processor, implement the steps of the data processing method as described in any one of claims 1 to 4.

9. A chip, characterized in that, The chip includes a processor and a communication interface, the communication interface being coupled to the processor, the processor being used to run programs or instructions to implement the steps of the data processing method as described in any one of claims 1 to 4.

Citation Information

Patent Citations

  • Program information issuing method and device, and electronic equipment

    CN111880777A

  • Multi-rule matching method, device and equipment

    CN113885880A