CN113703739A - Cross-language fusion computing method, system and terminal based on omiga engine - Google Patents
Cross-language fusion computing method, system and terminal based on omiga engine Download PDFInfo
- Publication number
- CN113703739A CN113703739A CN202111033503.5A CN202111033503A CN113703739A CN 113703739 A CN113703739 A CN 113703739A CN 202111033503 A CN202111033503 A CN 202111033503A CN 113703739 A CN113703739 A CN 113703739A
- Authority
- CN
- China
- Prior art keywords
- function
- logic
- omiga
- engine
- language
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
- G06F8/315—Object-oriented languages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/36—Software reuse
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Devices For Executing Special Programs (AREA)
- Debugging And Monitoring (AREA)
Abstract
The invention discloses a cross-language fusion calculation method, a system and a terminal based on an omiga engine, which comprise the following steps: acquiring input parameter information to form a function configuration file required by a target function; calling one or more logic subfunctions respectively corresponding to an execution language, and generating a logic statement which corresponds to the target function and can be executed by an omiga engine according to the function configuration file; and analyzing the logic statement, and executing logic calculation by the omiga engine according to the analysis result by using one or more execution languages to obtain an output result corresponding to the target function. The invention not only can fuse the computer languages of various technologies at the bottom layer, but also can selectively apply one or more capabilities at the bottom layer aiming at project requirements, produce, manage and output required data, meet the project requirements and simultaneously accumulate a large amount of reusable data processing rules, thereby improving the production efficiency of subsequent data. Meanwhile, a plurality of application products can be butted, end-to-end real-time updating is achieved, and labor cost is reduced.
Description
Technical Field
The application relates to the field of computer computing, in particular to a cross-language fusion computing method, a cross-language fusion computing system and a cross-language fusion computing terminal based on an omiga engine.
Background
Today, there are many excellent computer languages, each with its own advantages and features. In the process of processing data conversion, different processing logics are generally written, a single computer language such as javascript, python and the like cannot completely meet business requirements, and a programming logic fusion processing method integrating respective characteristics is lacked. The traditional method of calling through a direct API mode is too high in coupling with upstream services, the system becomes more complex, and the maintenance cost is high. Different levels of computing logical segment versions are difficult to manage.
Disclosure of Invention
In view of the above drawbacks of the prior art, the present application aims to provide an omiga engine-based cross-language fusion computing method, system and terminal, so as to solve the problems in the prior art that the coupling with the upstream service is too high, the system becomes more complex, the maintenance cost is high, and the computing logic fragment versions at different levels are difficult to manage due to the way of performing the programming logic fusion processing by integrating the language characteristics of each computer.
In order to achieve the above and other related objects, the present application provides a cross-language fusion calculation method based on an omiga engine, including: acquiring input parameter information to form a function configuration file required by a target function; wherein the function configuration file includes at least: the parameter entering information; calling one or more logic subfunctions respectively corresponding to an execution language, and generating a logic statement which corresponds to the target function and can be executed by an omiga engine according to the function configuration file; and analyzing the logic statement, and executing logic calculation by the omiga engine according to the analysis result by using one or more execution languages to obtain an output result corresponding to the target function.
In one or more embodiments of the present application, the parsing the logic statement and performing logic computation by the omiga engine in one or more execution languages according to the parsed result to obtain an output result includes: analyzing the function dependency relationship in the logic statement and each called logic subfunction, and generating a dependency tree corresponding to the logic statement; based on the dependency tree, executing logic calculation by an omiga engine according to execution languages respectively corresponding to the logic sub-functions in the dependency tree to obtain intermediate results respectively corresponding to the logic sub-functions; and combining the intermediate results to obtain an output result.
In one or more embodiments of the present application, the executing, by the omiga engine, the logic calculation according to the execution language respectively corresponding to each logic sub-function in the dependency tree based on the dependency tree to obtain the intermediate result respectively corresponding to each logic sub-function includes: checking whether versions of the dependency tree conflict; and when the versions of the dependency tree do not conflict, executing logic calculation by the omiga engine according to the execution language respectively corresponding to the logic sub-functions in the dependency tree to obtain intermediate results respectively corresponding to the logic sub-functions.
In one or more embodiments of the present application, the method further comprises: verifying the output result by using the function test file obtained by the reference information to obtain a verification result corresponding to the target function; wherein the function test file comprises: at least one test case.
In one or more embodiments of the present application, the obtaining method of the function test file includes: acquiring one or more test cases corresponding to the parameter information according to the parameter information; performing entry-parameter verification on each test case to obtain one or more test cases passing the verification; and generating a function test file corresponding to the target function by using each test case passing the verification.
In one or more embodiments of the present application, the verifying the output result by the function test file obtained by the entry information to obtain a verification result corresponding to the target function includes: comparing the expected values of the functions corresponding to the test cases in the function test file obtained by the parameter information with the output result respectively to obtain the function accuracy corresponding to the target function; if the function accuracy meets a preset condition related to a function accuracy threshold, obtaining a verification result of passing the corresponding verification; if the function accuracy rate does not meet the preset condition related to the function accuracy rate threshold, obtaining a verification result that the corresponding verification fails; wherein, the test case comprises: one or more positive-going test cases and/or negative-going test cases.
In one or more embodiments of the present application, each test case corresponds to an index number.
In one or more embodiments of the present application, the function configuration file further includes: one or more of function name, function template, value field, output type and aggregation mode; wherein the function template includes: a result classification type template comprising: one or more of a numerical template, a text template, and a boolean template; a text extraction type template comprising: one or more of a subject presence state template, a subject index value template, and a subject description template.
To achieve the above and other related objects, the present application provides an omiga engine-based cross-language fusion computing system, comprising: the function configuration module is used for acquiring input parameter information to form a function configuration file required by the target function; wherein the function configuration file includes at least: the parameter entering information; a logic statement generating module, connected to the function configuration module, for calling one or more logic subfunctions corresponding to the execution language, and generating a logic statement corresponding to the target function and executable by the omiga engine according to the function configuration file; and the analysis execution module is connected with the logic statement generation module and used for analyzing the logic statement and executing logic calculation by the omiga engine according to the analysis result in one or more execution languages so as to obtain an output result corresponding to the target function.
To achieve the above and other related objects, the present invention provides an omiga engine-based cross-language fusion computing terminal, comprising: a memory for storing a computer program; and the processor is used for executing the cross-language fusion calculation method based on the omiga engine.
As described above, according to the cross-language fusion calculation method, system and terminal based on the omiga engine, by using the omiga engine to perform cross-language fusion calculation, not only can computer languages of multiple technologies on the bottom layer be fused, but also one or more capabilities on the bottom layer can be selectively applied according to project requirements, required data can be produced, managed and output, a large number of reusable data processing rules can be accumulated while the project requirements are met, and the production efficiency of subsequent data is improved. Meanwhile, a plurality of application products can be butted, end-to-end real-time updating is achieved, and labor cost is reduced.
Drawings
Fig. 1 is a flowchart illustrating a cross-language fusion calculation method based on an omiga engine in the embodiment of the present application.
FIG. 2 is a schematic structural diagram of an omiga engine-based cross-language fusion computing system in the embodiment of the present application.
Fig. 3 is a schematic structural diagram of a data preprocessing module in an embodiment of the present application.
FIG. 4 is a diagram illustrating a multi-language execution module according to an embodiment of the present application.
FIG. 5 is a diagram illustrating exemplary index code rules according to an embodiment of the present application.
Fig. 6 is a schematic structural diagram of an omiga engine-based cross-language fusion computing terminal in the embodiment of the present application.
Detailed Description
The following description of the embodiments of the present application is provided by way of specific examples, and other advantages and effects of the present application will be readily apparent to those skilled in the art from the disclosure herein. The present application is capable of other and different embodiments and of being practiced or of being carried out in various ways, and its several details are capable of modification in various respects, all without departing from the spirit and scope of the present application. It should be noted that the embodiments and features of the embodiments in the present application may be combined with each other without conflict.
Embodiments of the present application will be described in detail below with reference to the accompanying drawings so that those skilled in the art to which the present application pertains can easily carry out the present application. The present application may be embodied in many different forms and is not limited to the embodiments described herein.
In order to clearly explain the present application, components that are not related to the description are omitted, and the same reference numerals are given to the same or similar components throughout the specification.
Throughout the specification, when a component is referred to as being "connected" to another component, this includes not only the case of being "directly connected" but also the case of being "indirectly connected" with another element interposed therebetween. In addition, when a component is referred to as "including" a certain constituent element, unless otherwise stated, it means that the component may include other constituent elements, without excluding other constituent elements.
When an element is referred to as being "on" another element, it can be directly on the other element, or intervening elements may also be present. When a component is referred to as being "directly on" another component, there are no intervening components present.
Although the terms first, second, etc. may be used herein to describe various elements in some instances, these elements should not be limited by these terms. These terms are only used to distinguish one element from another. For example, the first interface and the second interface, etc. are described. Also, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context indicates otherwise. It will be further understood that the terms "comprises," "comprising," "includes" and/or "including," when used in this specification, specify the presence of stated features, steps, operations, elements, components, items, species, and/or groups, but do not preclude the presence, or addition of one or more other features, steps, operations, elements, components, species, and/or groups thereof. The terms "or" and/or "as used herein are to be construed as inclusive or meaning any one or any combination. Thus, "A, B or C" or "A, B and/or C" means "any of the following: a; b; c; a and B; a and C; b and C; A. b and C ". An exception to this definition will occur only when a combination of elements, functions, steps or operations are inherently mutually exclusive in some way.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the application. As used herein, the singular forms "a", "an" and "the" include plural forms as long as the words do not expressly indicate a contrary meaning. The term "comprises/comprising" when used in this specification is taken to specify the presence of stated features, regions, integers, steps, operations, elements, and/or components, but does not exclude the presence or addition of other features, regions, integers, steps, operations, elements, and/or components.
Terms indicating "lower", "upper", and the like relative to space may be used to more easily describe a relationship of one component with respect to another component illustrated in the drawings. Such terms are intended to include not only the meanings indicated in the drawings, but also other meanings or operations of the device in use. For example, if the device in the figures is turned over, elements described as "below" other elements would then be oriented "above" the other elements. Thus, the exemplary terms "under" and "beneath" all include above and below. The device may be rotated 90 or other angles and the terminology representing relative space is also to be interpreted accordingly.
Although not defined differently, including technical and scientific terms used herein, all terms have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. Terms defined in commonly used dictionaries are to be additionally interpreted as having meanings consistent with those of related art documents and the contents of the present prompts, and must not be excessively interpreted as having ideal or very formulaic meanings unless defined.
Because the cross-language fusion calculation based on the omiga engine can fuse a plurality of technologies (DSL, NLP, term normalization, regular expression and the like) at the bottom layer, the invention provides the cross-language fusion calculation method based on the omiga engine, the cross-language fusion calculation is carried out by utilizing the omiga engine, not only can the computer languages of the plurality of technologies at the bottom layer be fused, but also one or more capabilities at the bottom layer can be selectively applied according to project requirements, required data can be produced, managed and output, a large amount of reusable data processing rules can be accumulated while the project requirements are met, and the production efficiency of subsequent data is improved. Meanwhile, a plurality of application products can be butted, end-to-end real-time updating is achieved, and labor cost is reduced.
Embodiments of the present invention will be described in detail below with reference to the accompanying drawings so that those skilled in the art can easily implement the embodiments of the present invention. The present invention may be embodied in many different forms and is not limited to the embodiments described herein.
As shown in fig. 1, a flowchart of the cross-language fusion calculation method based on the omiga engine in the embodiment of the present invention is shown.
The method comprises the following steps:
step S11: and acquiring input reference information to form a function configuration file required by the target function.
In detail, the function configuration file at least includes: the parameter entering information; the parameter entering information comprises: the parameters that need to be provided for calling the function.
For example:
public void add(int a,int b){
int c=a+b;
System.out.println("c="+c)
}
two numbers need to be passed in when this function is called; for example, 1 and 2, and 1 and 2 are the entry information.
It should be noted that the parameter information may be a set of parameter values corresponding to only one objective function, may also be multiple sets of parameter values corresponding to one objective function, and may also be multiple sets of parameter values corresponding to multiple objective functions or a set of parameter values corresponding to multiple objective functions, which is not limited in this application. Therefore, the definition of batch functions can be realized, and the production efficiency of logic segment construction is improved.
Optionally, in order to construct the objective function, other contents may be further required to limit and require the required objective function, and therefore, the function configuration file further includes: one or more of function name, function template, value field, output type and aggregation mode.
When the target function needs to be produced, the pre-stored function template consistent with the target function can be selected for direct application, and the required function templates can respectively and correspondingly define templates of common function writing logic or templates of specific function data input and output formats;
preferably, the function template includes: a result classification type template comprising: one or more of a numerical template, a text template, and a boolean template; a text extraction type template comprising: one or more of a subject presence state template, a subject index value template, and a subject description template.
It should be noted that the function template may be copied by other functions, but cannot be directly referenced.
Step S12: and calling one or more logic sub-functions respectively corresponding to the execution languages, and generating a logic statement which corresponds to the target function and can be executed by the omiga engine according to the function configuration file.
Optionally, step S12 includes:
sequentially calling one or more logic sub-functions according to the requirement of the target function; wherein, the logic subfunctions correspond to execution languages in sequence; the execution language of each logic sub-function may be the same or different.
And generating a logic statement which corresponds to the target function and can be executed by the omiga engine according to the function configuration file and each logic sub-function.
It should be noted that the logic subfunction may be an independent function that does not call other functions, or may be a reference function that also calls other functions.
Optionally, the logic sub-function is a registration function, and the registration declares that the logic sub-function is a single function, indicates one or more of function names, entry types, entry parameter implementation functions according to structures and remark functions, and can provide serialization and deserialization functions according to multi-language alternation.
Step S13: and analyzing the logic statement, and executing logic calculation by the omiga engine according to the analysis result by using one or more execution languages to obtain an output result corresponding to the target function.
Optionally, step S13 includes:
analyzing the function dependency relationship in the logic statement and each called logic subfunction, and generating a dependency tree corresponding to the logic statement according to the analyzed function dependency relationship and each called logic subfunction;
based on the dependency tree, traversing the execution languages corresponding to the logic sub-functions in the dependency tree by an omiga engine, and executing logic calculation according to the execution languages to obtain intermediate results executed by the execution languages corresponding to the logic sub-functions;
and combining the intermediate results to obtain an output result.
It should be noted that, if the logic subfunction depends on the references of other functions, the reference information is correspondingly stored when the logic subfunction is stored, so that the function reference and the referenced object can be found according to the dependency tree.
Optionally, when the called logic sub-functions respectively refer to a plurality of other functions, version conflict may occur due to the fact that the functions referred by the other functions or the functions referred by the other functions have a plurality of versions, and the calculation effect is poor; therefore, if the version conflict needs to be checked, the performing, by the omiga engine, the logic calculation according to the execution language respectively corresponding to each logic sub-function in the dependency tree based on the dependency tree to obtain the intermediate result respectively corresponding to each logic sub-function includes:
checking whether versions of the dependency tree conflict;
and when the versions of the dependency tree do not conflict, sequentially executing logic calculation by the omiga engine according to the execution language respectively corresponding to each logic sub-function in the dependency tree to obtain intermediate results respectively corresponding to each logic sub-function.
Optionally, the batch parallel execution is performed on the data set with a large data volume, a single parallel size and a simultaneous concurrent number can be configured, an abnormal retry mechanism is added, and the reliability of the computation logic is guaranteed.
Optionally, the method further includes:
verifying the output result by using the function test file obtained by the reference information to obtain a verification result corresponding to the target function; wherein the function test file comprises: at least one test case.
It should be noted that the function test file may be input by the user, or may be extracted from the database, which is not limited in this application.
Optionally, the obtaining method of the function test file includes:
acquiring one or more test cases corresponding to the parameter accessing information in a database according to the parameter accessing information;
performing entry-parameter verification on each test case to obtain one or more test cases passing the verification;
and generating a function test file corresponding to the target function by each test case passing the verification so as to be used as a data source for verifying the output result of the target function of the execution logic.
Optionally, verifying the output result by using the function test file obtained by the reference information to obtain a verification result corresponding to the target function includes:
comparing the expected values of the functions corresponding to the test cases in the function test file obtained by the parameter information with the output result respectively to obtain the function accuracy corresponding to the target function;
if the function accuracy meets a preset condition related to a function accuracy threshold, obtaining a verification result of passing the corresponding verification;
and if the function accuracy does not meet the preset condition related to the threshold value of the function accuracy, obtaining a verification result that the corresponding verification fails.
It should be noted that the test case includes: one or more positive-going test cases and/or negative-going test cases. The forward test case corresponds to a test case which meets function conversion logic; the negative test case corresponds to a test case that does not satisfy the function transformation logic.
Optionally, the comparing the expected values of the function corresponding to the test cases in the function test file obtained from the parameter information with the output result respectively to obtain the function accuracy corresponding to the target function includes:
for the forward test case, comparing the output result with the expected values of the function corresponding to each test case respectively to calculate the function accuracy; the function accuracy rate is the number of cases/the number of test cases in which the function output result in each function test case is consistent with the expected value of the function;
for negative test cases, comparing the output result with the expected values of the function corresponding to each test case respectively to calculate and obtain the error rate of the function; the function error rate is the number of cases/test cases in which the function output result in each function test case is consistent with the expected value of the function; the function correct rate can be obtained from the 1-function error rate.
Optionally, the preset condition related to the function accuracy threshold may correspond to an accuracy threshold or a threshold range corresponding to multiple accuracy thresholds; the preset condition may be, for a single correct threshold, one or more of the output results that are greater than or equal to the correct threshold; for the threshold range, one or more of the output results within, below, and above the threshold range may be filtered.
Optionally, the method further includes: the function test file can be fragmented, distributed asynchronous multi-batch concurrent execution, result combination and execution progress asynchronous pushing.
Optionally, each test case corresponds to an index number; it should be noted that the index number of each test case may have an association relationship with the access information, or may have a specific association relationship with the code corresponding to the access information; namely, the corresponding test case can be obtained through the index number according to the numerical value of the parameter information, and the corresponding test case can also be obtained according to the number of the parameter information.
Similar to the principle of the embodiment, the invention provides a cross-language fusion computing system based on the omiga engine.
Specific embodiments are provided below in conjunction with the attached figures:
fig. 2 shows a schematic structural diagram of an omiga engine-based cross-language fusion computing system in an embodiment of the present invention.
The system comprises:
a function configuration module 21, configured to obtain input parameter information to form a function configuration file required by the target function; wherein the function configuration file includes at least: the parameter entering information;
a logic statement generating module 22, connected to the function configuring module 21, configured to invoke one or more logic sub-functions respectively corresponding to the execution language, and generate a logic statement corresponding to the target function and executable by the omiga engine according to the function configuration file;
and the parsing execution module 23 is connected to the logic statement generation module 22, and configured to parse the logic statement, and execute logic calculation in one or more execution languages by the omiga engine according to the parsing result, so as to obtain an output result corresponding to the target function.
It should be noted that the division of each module in the embodiment of the system in fig. 2 is only a division of a logical function, and all or part of the actual implementation may be integrated into one physical entity or may be physically separated. And these modules can be realized in the form of software called by processing element; or may be implemented entirely in hardware; part of the modules can be realized in a software calling mode through a processing element, and part of the modules can be realized in a hardware mode;
for example, the modules may be one or more integrated circuits configured to implement the above methods, such as: one or more Application Specific Integrated Circuits (ASICs), or one or more microprocessors (DSPs), or one or more Field Programmable Gate Arrays (FPGAs), among others. For another example, when one of the above modules is implemented in the form of a Processing element scheduler code, the Processing element may be a general-purpose processor, such as a Central Processing Unit (CPU) or other processor capable of calling program code. For another example, these modules may be integrated together and implemented in the form of a system-on-a-chip (SOC).
Therefore, since the implementation principle of the cross-language fusion computing system based on the omiga engine has been described in the foregoing embodiments, repeated descriptions are omitted here.
Alternatively, the function configuration module 21 may generate function configuration files for a plurality of target functions in batches.
Optionally, the function configuration module 21 may further sequentially select and set one or more of a function name, a function template, a value field, an output type, and an aggregation mode.
Optionally, the logic statement generating module 22 includes:
the logic subfunction calling unit is used for calling one or more logic subfunctions which are registered in the system in sequence according to the requirement of the target function; wherein, the logic subfunctions correspond to execution languages in sequence; the execution language of each logic sub-function may be the same or different.
And the logic statement generating unit is connected with the logic sub-function calling unit and is used for generating a logic statement which corresponds to the target function and can be executed by the omiga engine according to the function configuration file and each logic sub-function.
Optionally, the logic statement generation module 22 may generate a plurality of logic statements in batch at the same time.
Optionally, the parsing executing module 23 includes:
the interpreter is used for analyzing the function dependency relationship in the logic statement and each called logic subfunction and generating a dependency tree corresponding to the logic statement according to the analyzed function dependency relationship and each called logic subfunction;
and the one or more executors are connected with the interpreter and used for traversing the execution languages respectively corresponding to the logic sub-functions in the dependency tree by the omiga engine based on the dependency tree and executing logic calculation according to the execution languages so as to obtain intermediate results respectively executed by the execution languages corresponding to the logic sub-functions.
And the merging unit is connected with each actuator and merges the intermediate results to obtain an output result.
Optionally, the analysis execution module 23 performs batch parallel execution on a data set with a large data amount, and may configure a single parallel size and a simultaneous concurrent number, increase an abnormal retry mechanism, and ensure reliability of computation logic.
Optionally, the system further includes:
a verification module 24, connected to the parsing execution module 23, configured to verify the output result with the function test file obtained by the entry parameter information to obtain a verification result corresponding to the target function; wherein the function test file comprises: at least one test case.
Optionally, the system further includes: the test data acquisition module is connected with the verification module and used for acquiring one or more test cases corresponding to the parameter accessing information in a database according to the parameter accessing information; performing entry-parameter verification on each test case to obtain one or more test cases passing the verification; and generating a function test file corresponding to the target function by each test case passing the verification so as to be used as a data source for verifying the output result of the target function of the execution logic.
Optionally, the verification module 24 is configured to compare the expected values of the function corresponding to each test case in the function test file obtained by the parameter information with the output result, so as to obtain a function accuracy corresponding to the target function; if the function accuracy meets a preset condition related to a function accuracy threshold, obtaining a verification result of passing the corresponding verification; if the function accuracy rate does not meet the preset condition related to the function accuracy rate threshold, obtaining a verification result that the corresponding verification fails; wherein, the test case comprises: one or more positive-going test cases and/or negative-going test cases.
In order to better describe the cross-language fusion computing system based on the omiga engine, specific embodiments are provided;
example 1; a management system based on omiga cross-language fusion calculation.
The system comprises:
as shown in fig. 3, the data preprocessing module includes: an original data acquisition unit 301 that acquires entry information; a parameter MAP mapping unit 302, connected to the raw data obtaining unit 301, configured to obtain, according to the parameter information, one or more test cases corresponding to the parameter information from a test data set; the entry verification unit 303 is connected to the parameter MAP mapping unit 302, and is configured to perform entry verification on each test case to obtain one or more test cases that pass the verification; and the test data unit 304 is connected to the entry-reference-verification unit 303, and is configured to generate a function test file corresponding to the target function for each test case passing the verification.
The function configuration module is used for acquiring input parameter information to form a function configuration file required by the target function; wherein the function configuration file includes at least: the parameter entering information;
a logic statement generating module, connected to the function configuration module, for calling one or more logic subfunctions corresponding to the execution language, and generating a logic statement corresponding to the target function and executable by the omiga engine according to the function configuration file;
as shown in fig. 4, the multi-language execution module has a complete assembly function, the function is stored in a single logic slice, and when executing, the dependency tree is established according to the function dependency relationship and other function segment versions, and whether the dependency tree versions conflict or not is checked, and finally, a complete function set is generated through the dependency tree to complete assembly; the multi-language execution module is connected with the logic statement generation module and comprises: a function logic module 401, configured to obtain a logic statement; the interpreter 402 is connected with the function logic module 401 and is used for analyzing the function dependency relationship in the logic statement and each called logic subfunction and generating an abstract syntax tree corresponding to the logic statement according to the analyzed function dependency relationship and each called logic subfunction; one or more executors, connected to the interpreter 402, for traversing, by the omiga engine, the execution languages respectively corresponding to the logic sub-functions in the dependency tree based on the dependency tree, and executing logic computation according to the execution languages, so as to obtain intermediate results respectively executed in the execution languages corresponding to the logic sub-functions. And the data merging module 403 is connected with each actuator, and merges the intermediate results to obtain an output result. And an output target module 404, connected to the data merging module 403, for outputting the output result. The interactive process of the executor and the third party supports an HTTP protocol, and the data transmission format supports Json and GRPC.
And the test module is used for executing the function calculation logic to compare the expected result with the actual result, counting all the passing rates, marking the checked test set and counting the checked passing rate. The quality control of the golden standard is achieved, and the deviation of a logic calculation result and an actual result is reduced.
It should be noted that, in the embodiment, the test data set is uploaded in an excel manner, and the system analyzes the excel text content and converts the excel text content into a test corresponding format for storage. Index code rule refer to fig. 5: (1) the highest bit is an identification bit, is 1 and is represented as a negative number, and is not used at the highest; (2)39 bits hold the timestamp to 10 milliseconds; (3)16bit machine bits, which can be deployed in 65536 machine nodes to generate ID; (4) a serial number of 8 bits, and the number of maximum generated IDs of 10 milliseconds is 256. Each piece of data generates a single intra-dataset ranking number to facilitate later ranking of the single datasets.
The management system provided by the invention provides a simple and easy-to-operate data set construction tool, business personnel can efficiently, reliably and flexibly construct the computational logic of the modeling data set, the multiplexing among a plurality of projects is realized, and the efficiency and the quality of a data set construction link are greatly improved.
Fig. 6 shows a schematic structural diagram of the cross-language fusion computing terminal 60 based on the omiga engine in the embodiment of the present invention.
The cross-language fusion computing terminal 60 based on the omiga engine comprises: a memory 61 and a processor 62, the memory 61 being for storing computer programs; the processor 62 runs a computer program to implement the cross-language fusion calculation method based on the omiga engine as described in fig. 1.
Optionally, the number of the memories 61 may be one or more, the number of the processors 62 may be one or more, and fig. 6 illustrates one example.
Optionally, the processor 62 in the omiga engine-based cross-language fusion computing terminal 60 may load one or more instructions corresponding to processes of the application program into the memory 61 according to the steps described in fig. 1, and the processor 62 runs the application program stored in the first memory 61, so as to implement various functions in the omiga engine-based cross-language fusion computing method described in fig. 1.
Optionally, the memory 61 may include, but is not limited to, a high speed random access memory, a non-volatile memory. Such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state storage devices; the Processor 62 may include, but is not limited to, a Central Processing Unit (CPU), a Network Processor (NP), and the like; the Integrated Circuit may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, a discrete Gate or transistor logic device, or a discrete hardware component.
Optionally, the Processor 62 may be a general-purpose Processor, and includes a Central Processing Unit (CPU), a Network Processor (NP), and the like; the Integrated Circuit may also be a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other Programmable logic device, a discrete Gate or transistor logic device, or a discrete hardware component.
The present invention further provides a computer readable storage medium storing a computer program, which when running implements the cross-language fusion computing method based on the omiga engine as shown in fig. 1. The computer-readable storage medium may include, but is not limited to, floppy diskettes, optical disks, CD-ROMs (compact disc-read only memories), magneto-optical disks, ROMs (read-only memories), RAMs (random access memories), EPROMs (erasable programmable read only memories), EEPROMs (electrically erasable programmable read only memories), magnetic or optical cards, flash memory, or other type of media/machine-readable medium suitable for storing machine-executable instructions. The computer readable storage medium may be a product that is not accessed by the computer device or may be a component that is used by an accessed computer device.
To sum up, according to the cross-language fusion calculation method, the cross-language fusion calculation system and the cross-language fusion calculation terminal based on the omiga engine, through the cross-language fusion calculation by using the omiga engine, not only can computer languages of multiple technologies at the bottom layer be fused, but also one or more capabilities at the bottom layer can be selectively applied according to project requirements, required data can be produced, managed and output, a large number of reusable data processing rules can be accumulated while the project requirements are met, and the production efficiency of subsequent data is improved. Meanwhile, a plurality of application products can be butted, end-to-end real-time updating is achieved, and labor cost is reduced. Therefore, the invention effectively overcomes various defects in the prior art and has high industrial utilization value.
The above embodiments are merely illustrative of the principles and utilities of the present application and are not intended to limit the application. Any person skilled in the art can modify or change the above-described embodiments without departing from the spirit and scope of the present application. Accordingly, it is intended that all equivalent modifications or changes which can be made by those skilled in the art without departing from the spirit and technical concepts disclosed in the present application shall be covered by the claims of the present application.
Claims (10)
1. An omiga engine-based cross-language fusion computing method is characterized by comprising the following steps:
acquiring input parameter information to form a function configuration file required by a target function; wherein the function configuration file includes at least: the parameter entering information;
calling one or more logic subfunctions respectively corresponding to an execution language, and generating a logic statement which corresponds to the target function and can be executed by an omiga engine according to the function configuration file;
and analyzing the logic statement, and executing logic calculation by the omiga engine according to the analysis result by using one or more execution languages to obtain an output result corresponding to the target function.
2. The method of claim 1, wherein parsing the logic statement and performing logic computations in one or more execution languages by the omiga engine according to the parsed result to obtain an output result comprises:
analyzing the function dependency relationship in the logic statement and each called logic subfunction, and generating a dependency tree corresponding to the logic statement;
based on the dependency tree, executing logic calculation by an omiga engine according to execution languages respectively corresponding to the logic sub-functions in the dependency tree to obtain intermediate results respectively corresponding to the logic sub-functions;
and combining the intermediate results to obtain an output result.
3. The method of claim 3, wherein the performing, by the omiga engine, the logic calculation according to the execution language corresponding to each logic sub-function in the dependency tree based on the dependency tree to obtain the intermediate result corresponding to each logic sub-function comprises:
checking whether versions of the dependency tree conflict;
and when the versions of the dependency tree do not conflict, executing logic calculation by the omiga engine according to the execution language respectively corresponding to the logic sub-functions in the dependency tree to obtain intermediate results respectively corresponding to the logic sub-functions.
4. The omiga engine based cross-language fusion computing method of claim 1, further comprising:
verifying the output result by using the function test file obtained by the reference information to obtain a verification result corresponding to the target function; wherein the function test file comprises: at least one test case.
5. The omiga engine-based cross-language fusion calculation method according to claim 4, wherein the obtaining manner of the function test file comprises:
acquiring one or more test cases corresponding to the parameter information according to the parameter information;
performing entry-parameter verification on each test case to obtain one or more test cases passing the verification;
and generating a function test file corresponding to the target function by using each test case passing the verification.
6. The omiga engine-based cross-language fusion calculation method according to claim 4 or 5, wherein the verifying the output result by the function test file obtained by the entry information to obtain the verification result corresponding to the target function comprises:
comparing the expected values of the functions corresponding to the test cases in the function test file obtained by the parameter information with the output result respectively to obtain the function accuracy corresponding to the target function;
if the function accuracy meets a preset condition related to a function accuracy threshold, obtaining a verification result of passing the corresponding verification;
if the function accuracy rate does not meet the preset condition related to the function accuracy rate threshold, obtaining a verification result that the corresponding verification fails;
wherein, the test case comprises: one or more positive-going test cases and/or negative-going test cases.
7. The method of claim 4, wherein each test case has an index number corresponding thereto.
8. The omiga engine-based cross-language fusion computation method of claim 1, wherein the function configuration file further comprises: one or more of function name, function template, value field, output type and aggregation mode;
wherein the function template includes:
a result classification type template comprising: one or more of a numerical template, a text template, and a boolean template;
a text extraction type template comprising: one or more of a subject presence state template, a subject index value template, and a subject description template.
9. An omiga engine-based cross-language fusion computing system, comprising:
the function configuration module is used for acquiring input parameter information to form a function configuration file required by the target function; wherein the function configuration file includes at least: the parameter entering information;
a logic statement generating module, connected to the function configuration module, for calling one or more logic subfunctions corresponding to the execution language, and generating a logic statement corresponding to the target function and executable by the omiga engine according to the function configuration file;
and the analysis execution module is connected with the logic statement generation module and used for analyzing the logic statement and executing logic calculation by the omiga engine according to the analysis result in one or more execution languages so as to obtain an output result corresponding to the target function.
10. An omiga engine-based cross-language fusion computing terminal, comprising:
a memory for storing a computer program;
a processor for executing the omiga engine based cross-language fusion calculation method of any of claims 1 to 5.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033503.5A CN113703739B (en) | 2021-09-03 | 2021-09-03 | Cross-language fusion calculation method, system and terminal based on omiga engine |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111033503.5A CN113703739B (en) | 2021-09-03 | 2021-09-03 | Cross-language fusion calculation method, system and terminal based on omiga engine |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113703739A true CN113703739A (en) | 2021-11-26 |
CN113703739B CN113703739B (en) | 2023-05-09 |
Family
ID=78659594
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111033503.5A Active CN113703739B (en) | 2021-09-03 | 2021-09-03 | Cross-language fusion calculation method, system and terminal based on omiga engine |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113703739B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115729530A (en) * | 2022-11-22 | 2023-03-03 | 壹沓科技(上海)有限公司 | Cross-system logic statement generation method, device, storage medium and equipment |
WO2024124833A1 (en) * | 2022-12-13 | 2024-06-20 | 易保网络技术(上海)有限公司 | Calculation function construction method, calculation engine, electronic device and readable storage medium |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010016866A1 (en) * | 2000-02-21 | 2001-08-23 | Hiroshi Izumi | Computer and computer-readable storage medium |
US8051408B1 (en) * | 2004-09-13 | 2011-11-01 | The Mathworks, Inc. | Method of providing interactive usage descriptions based on source code analysis |
CN103870308A (en) * | 2012-12-13 | 2014-06-18 | 杭州勒卡斯广告策划有限公司 | Data processing method and device |
US20190001573A1 (en) * | 2017-06-30 | 2019-01-03 | Norsk Titanium As | Technologies of programming manufacturing machines |
CN109726313A (en) * | 2018-12-28 | 2019-05-07 | 中国银行股份有限公司 | The method and device of operating database |
CN109739573A (en) * | 2018-12-27 | 2019-05-10 | 深圳市多度科技有限公司 | Realize the processing method and processing device that api interface calls, the system for realizing api interface |
CN110321118A (en) * | 2019-07-05 | 2019-10-11 | 深圳市智慧郎数码科技有限公司 | The generation method and relevant device of function code |
CN110609678A (en) * | 2019-08-26 | 2019-12-24 | 珠海格力电器股份有限公司 | Function programming method and device and configuration software system |
CN111221842A (en) * | 2018-11-27 | 2020-06-02 | 北京奇虎科技有限公司 | Big data processing system and method |
CN111221852A (en) * | 2018-11-27 | 2020-06-02 | 北京奇虎科技有限公司 | Mixed query processing method and device based on big data |
CN111552506A (en) * | 2020-02-24 | 2020-08-18 | 远景智能国际私人投资有限公司 | Business rule configuration method, device and storage medium |
CN111858643A (en) * | 2020-06-29 | 2020-10-30 | 上海森亿医疗科技有限公司 | Database variable production method, system, computer device and storage medium |
CN113190218A (en) * | 2021-04-28 | 2021-07-30 | 中国邮政储蓄银行股份有限公司 | Target operation function generation method and device |
-
2021
- 2021-09-03 CN CN202111033503.5A patent/CN113703739B/en active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010016866A1 (en) * | 2000-02-21 | 2001-08-23 | Hiroshi Izumi | Computer and computer-readable storage medium |
US8051408B1 (en) * | 2004-09-13 | 2011-11-01 | The Mathworks, Inc. | Method of providing interactive usage descriptions based on source code analysis |
CN103870308A (en) * | 2012-12-13 | 2014-06-18 | 杭州勒卡斯广告策划有限公司 | Data processing method and device |
US20190001573A1 (en) * | 2017-06-30 | 2019-01-03 | Norsk Titanium As | Technologies of programming manufacturing machines |
CN111221852A (en) * | 2018-11-27 | 2020-06-02 | 北京奇虎科技有限公司 | Mixed query processing method and device based on big data |
CN111221842A (en) * | 2018-11-27 | 2020-06-02 | 北京奇虎科技有限公司 | Big data processing system and method |
CN109739573A (en) * | 2018-12-27 | 2019-05-10 | 深圳市多度科技有限公司 | Realize the processing method and processing device that api interface calls, the system for realizing api interface |
CN109726313A (en) * | 2018-12-28 | 2019-05-07 | 中国银行股份有限公司 | The method and device of operating database |
CN110321118A (en) * | 2019-07-05 | 2019-10-11 | 深圳市智慧郎数码科技有限公司 | The generation method and relevant device of function code |
CN110609678A (en) * | 2019-08-26 | 2019-12-24 | 珠海格力电器股份有限公司 | Function programming method and device and configuration software system |
CN111552506A (en) * | 2020-02-24 | 2020-08-18 | 远景智能国际私人投资有限公司 | Business rule configuration method, device and storage medium |
CN111858643A (en) * | 2020-06-29 | 2020-10-30 | 上海森亿医疗科技有限公司 | Database variable production method, system, computer device and storage medium |
CN113190218A (en) * | 2021-04-28 | 2021-07-30 | 中国邮政储蓄银行股份有限公司 | Target operation function generation method and device |
Non-Patent Citations (1)
Title |
---|
叫我技术帝: "【干货!】大数据处理需要用到的九种编程语言", 《HTTPS://ZHUANLAN.ZHIHU.COM/P/183151351》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115729530A (en) * | 2022-11-22 | 2023-03-03 | 壹沓科技(上海)有限公司 | Cross-system logic statement generation method, device, storage medium and equipment |
WO2024124833A1 (en) * | 2022-12-13 | 2024-06-20 | 易保网络技术(上海)有限公司 | Calculation function construction method, calculation engine, electronic device and readable storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN113703739B (en) | 2023-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11106440B2 (en) | Source code translation | |
CN107704265B (en) | Configurable rule generation method for service flow | |
CN107644323B (en) | Intelligent auditing system for business flow | |
US9576037B2 (en) | Self-analyzing data processing job to determine data quality issues | |
KR101755365B1 (en) | Managing record format information | |
CN110554958B (en) | Graph database testing method, system, device and storage medium | |
US10102039B2 (en) | Converting a hybrid flow | |
US7934205B2 (en) | Restructuring computer programs | |
CN113703739A (en) | Cross-language fusion computing method, system and terminal based on omiga engine | |
CN112328226B (en) | Embedded system automatic test code generation method and device | |
CN109857641A (en) | The method and device of defects detection is carried out to program source file | |
WO2023109074A1 (en) | Method and apparatus for implementing linkage function, device, storage medium, and program | |
CN108769065A (en) | Rapid safety product docking system based on protocol conversion technology | |
CN113238740A (en) | Code generation method, code generation device, storage medium, and electronic apparatus | |
CN110347588B (en) | Software verification method, device, computer equipment and storage medium | |
CN115934097A (en) | Method, device, storage medium and electronic device for generating executable statement | |
CN116011468A (en) | Reasoning method, machine translation method and device of deep learning model | |
CN110781647B (en) | Method for realizing data format verification based on Flink | |
CN114328486A (en) | Data quality checking method and device based on model | |
US10949327B2 (en) | Manipulation of complex variables in orchestration applications | |
CN117648718B (en) | Business object display method and device based on data source, electronic equipment and medium | |
CN117435177B (en) | Application program interface construction method, system, equipment and storage medium | |
CN114610320B (en) | LLVM (LLVM) -based variable type information restoration and comparison method and system | |
Li et al. | Comparison Test Based on Program Model and Design Document | |
CN115470115A (en) | Centralized asynchronous checkpoint verification method, device and equipment and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |