Plug-in-based data processing method, electronic equipment, medium and program product

Through the plug-in-based data processing method, the problem of difficulty in maintaining and expanding existing systems when calculating multiple data indicators is solved, the system maintainability and scalability are realized, and the efficiency and accuracy of indicator calculation are improved.

CN119536845APending Publication Date: 2025-02-28KE COM (BEIJING) TECHNOLOGY CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411658584.1
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-11-19
Publication Date
2025-02-28

AI Technical Summary

Technical Problem

It is difficult for existing systems to maintain and extend hard-coded programs when calculating multiple data metrics, especially when there are too many metrics or the calculation logic is complex.

Method used

The plug-in-based data processing method is adopted, by obtaining plug-in configuration information, loading the plug-in, obtaining the required parameters, and executing the algorithm based on the algorithm information to calculate the data indicators to be calculated.

Benefits of technology

It improves the maintainability and scalability of the system, ensures the accuracy and efficiency of indicator calculations, reduces resource usage, avoids performance bottlenecks, and improves system performance and stability.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119536845A_ABST
    Figure CN119536845A_ABST
Patent Text Reader

Abstract

The invention provides a plug-in-based data processing method, electronic equipment, a readable storage medium and a computer program product, and the method comprises the steps: firstly, after a to-be-calculated data index is determined, obtaining plug-in configuration information of a plug-in used for calculating the to-be-calculated data index from an information storage position according to the identification information of the to-be-calculated data index, wherein the obtained plug-in configuration information comprises the following information items: parameter identification information of parameters required for calculating the to-be-calculated data index, code path information of the plug-in and algorithm information of an algorithm required for calculating the to-be-calculated data index, and the interface specifications of the interfaces of the plurality of different plug-ins are the same; the method comprises the following steps: acquiring code path information of a to-be-calculated data index, loading a plug-in according to the acquired code path information, acquiring parameters required for calculating the to-be-calculated data index from a data source by the loaded plug-in according to parameter identification information, and finally executing a required algorithm on the acquired required parameters according to algorithm information to obtain a value of the to-be-calculated data index.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of computer technology, and in particular to a plug-in-based data processing method, an electronic device, a readable storage medium, and a computer program product. Background Art

[0002] Data indicators are important tools for measuring and analyzing business performance. Sometimes the system needs to calculate data indicators and perform subsequent business logic based on the calculated indicators. For example, the total monthly income indicator of employees is calculated every month and the indicator is provided to the indicator demander.

[0003] At present, the system generally uses hard coding to calculate indicators. Hard coding is highly customized. When the number of data indicators is large or the calculation logic of data indicators is complex, it is difficult to maintain and expand the hard coding in the system. Summary of the invention

[0004] The present disclosure provides a plug-in-based data processing method, an electronic device, a readable storage medium, and a computer program product.

[0005] The first aspect of the present disclosure proposes a plug-in-based data processing method, comprising: after determining a data indicator to be calculated, obtaining plug-in configuration information of a plug-in for calculating the data indicator to be calculated from an information storage location based on identification information of the data indicator to be calculated, the plug-in configuration information stored at the information storage location being adapted to indicator calculations of multiple different plug-ins, the obtained plug-in configuration information comprising the following information items: parameter identification information of parameters required for calculating the data indicator to be calculated, code path information of the plug-in, and algorithm information of an algorithm required for calculating the data indicator to be calculated, the interface specifications of the interfaces of the multiple different plug-ins being the same; loading the plug-in based on the obtained code path information; the loaded plug-in obtaining the parameters required for calculating the data indicator to be calculated from a data source based on the parameter identification information; and executing the required algorithm on the obtained required parameters based on the algorithm information to obtain the value of the data indicator to be calculated.

[0006] According to some embodiments of the present disclosure, the plug-in configuration information obtained also includes data source identification information of the data source where the required parameters are located; the loaded plug-in obtains the required parameters for calculating the data indicators to be calculated from the data source based on the parameter identification information, including: obtaining the data source configuration information of the target data source where the required parameters are located based on the data source identification information; establishing a connection with the target data source based on the data source configuration information of the target data source; and the loaded plug-in obtains the parameters corresponding to the parameter identification information from the target data source through the established connection to obtain the required parameters.

[0007] According to some embodiments of the present disclosure, if there are multiple required parameters for calculating the data indicator to be calculated, and the multiple required parameters are distributed in multiple different data sources, then: the loaded plug-in obtains the required parameters stored in the target data source from the target data source according to the parameter identification information for each target data source corresponding to the data source identification information.

[0008] According to some embodiments of the present disclosure, before the loaded plug-in obtains the required parameters, the method further includes: obtaining data source configuration information of the data source from the information storage location, the data source configuration information including a connection string of the data source; and loading the data source configuration information into memory.

[0009] According to some embodiments of the present disclosure, before determining the data indicator to be calculated, the method also includes: determining the data indicator to be calculated according to the calculation cycle of different data indicators; and / or in response to the indicator calculation indication, determining the data indicator to be calculated according to the indicator calculation indication.

[0010] According to some embodiments of the present disclosure, the interface specification includes: the name of the function, the names of the input parameters and output parameters of the function, and the number of the input parameters and output parameters of the function.

[0011] According to some embodiments of the present disclosure, each of the plug-ins in some of the plug-ins obtains values ​​of multiple data indicators after executing the required algorithm, and the multiple data indicators include the data indicator to be calculated.

[0012] According to some embodiments of the present disclosure, both the output parameters and the input parameters of the function in the interface specification are object types that represent parameters through key-value pairs.

[0013] According to some embodiments of the present disclosure, the algorithm information includes algorithm identification information and the position of the required parameters in the required algorithm.

[0014] According to some embodiments of the present disclosure, the required algorithm is executed on the acquired required parameters according to the algorithm information, including: acquiring the corresponding required algorithm according to the algorithm identification information in the algorithm information; and executing the acquired required algorithm according to the acquired required parameters and the position of the required parameters in the required algorithm.

[0015] According to some embodiments of the present disclosure, the method further includes: in response to an information display indication, displaying part or all of the information stored at the information storage location in a configuration page; and in response to an information modification indication, modifying the information stored at the information storage location displayed in the configuration page.

[0016] According to some embodiments of the present disclosure, the information storage location is one or more of a configuration file, an information database, and an information registry.

[0017] According to some embodiments of the present disclosure, the plug-in configuration information of the multiple different plug-ins is stored in the same information storage location.

[0018] A second aspect of the present disclosure proposes an electronic device, comprising: a memory storing execution instructions; and a processor executing the execution instructions stored in the memory, so that the processor executes the method described in any one of the above embodiments.

[0019] A third aspect of the present disclosure provides a readable storage medium, wherein the readable storage medium stores a computer program, and when the computer program is executed by a processor, it is used to implement the method described in any of the above embodiments.

[0020] A fourth aspect of the present disclosure provides a computer program product, which includes a computer program. When the computer program is executed by a processor, it is used to implement the method described in any of the above embodiments. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] The accompanying drawings illustrate exemplary embodiments of the present disclosure and together with the description serve to explain the principles of the present disclosure. These drawings are included to provide a further understanding of the present disclosure and are incorporated in and constitute a part of this specification.

[0022] Figure 1 A schematic diagram of an application scenario of a plug-in-based data processing method according to some embodiments of the present disclosure is shown.

[0023] Figure 2 The figure shows an overall flow chart of a plug-in-based data processing method according to some embodiments of the present disclosure.

[0024] Figures 3 to 7 The overall flow chart of the plug-in-based data processing method M100 according to some other embodiments of the present disclosure is shown.

[0025] Figure 8 An interactive schematic diagram of some embodiments of the present disclosure for calculating data indicators using a plug-in-based data processing method.

[0026] Fig. 9 It is a schematic block diagram of the structure of a plug-in-based data processing device according to an embodiment of the present disclosure.

[0027] Fig.10 It is a schematic block diagram of the structure of an electronic device equipped with a plug-in-based data processing device according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0028] The present disclosure is further described in detail below in conjunction with the accompanying drawings and implementations. It is understood that the specific implementations described herein are only used to explain the relevant content, rather than to limit the present disclosure. It should also be noted that, for ease of description, only the parts related to the present disclosure are shown in the accompanying drawings.

[0029] It should be noted that, in the absence of conflict, the embodiments and features of the embodiments in the present disclosure can be combined with each other. The technical solution of the present disclosure will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.

[0030] Unless otherwise specified, the exemplary embodiments / embodiments shown will be understood as providing exemplary features of various details of some ways in which the technical concept of the present disclosure can be implemented in practice. Therefore, unless otherwise specified, the features of the various embodiments / embodiments can be combined, separated, interchanged and / or rearranged without departing from the technical concept of the present disclosure.

[0031] The terms used herein are for the purpose of describing specific embodiments, rather than being restrictive. As used herein, unless the context clearly indicates otherwise, the singular forms "one (kind, person)" and "said (the)" are also intended to include plural forms. In addition, when the terms "comprise" and / or "include" and their variations are used in this specification, it is explained that there are stated features, integral bodies, steps, operations, parts, assemblies and / or their groups, but it is not excluded that there are or add one or more other features, integral bodies, steps, operations, parts, assemblies and / or their groups. It should also be noted that, as used herein, the terms "substantially", "approximately" and other similar terms are used as approximate terms and not as degree terms, so that they are used to explain the inherent deviations of the measured values, calculated values ​​and / or provided values ​​that will be recognized by those of ordinary skill in the art.

[0032] The calculation of data indicators can be realized through the indicator service system, which can perform indicator calculation for one or more business systems. The indicator service system currently uses hard coding to calculate indicators. The hard-coded program corresponds to a single code base. For some business systems with a large number of indicators and complex indicator calculation logic, the maintenance cost of a single code base is high and the code flexibility is poor.

[0033] For example, when calculating the monthly income total indicator, the program hard-coded directly calls the interface of the corresponding platform or system according to the data path and variable name recorded in the fixed program code to obtain the corresponding employee monthly income, and then sums up according to the calculation method recorded in the above fixed program code to obtain the total monthly income of the employees. The interface path of the called platform or system, the variable name corresponding to the employee monthly income, and the calculation method used for summation are all directly recorded in the hard-coded code.

[0034] To this end, the present disclosure proposes a plug-in-based data processing method.

[0035] Figure 1 The following is a schematic diagram showing an application scenario of a plug-in-based data processing method according to some embodiments of the present disclosure. Figure 1 In this application scenario, an indicator service system 10, a first server 20, and a second server 30 may be included. The indicator service system 10 can communicate with the first server 20 and the second server 30 respectively, so as to send and receive data or send and receive instructions. In the present disclosure, the indicator service system 10, the first server 20, and the second server 30 may respectively include at least one processor and at least one memory.

[0036] A MySQL database is configured in the first server 20, and a Redis database is configured in the second server 30. The MySQL database and the Redis database serve as data sources for indicator calculation, and the indicator service system 10 can obtain basic data required for indicator calculation from the MySQL database and the Redis database.

[0037] exist Figure 1 The shapes and structures of the indicator service system 10, the first server 20 and the second server 30 shown in the figure should not be understood as limiting the scope of protection of the present disclosure. In the present disclosure, the first server 20 and the second server 30 can be servers or cloud servers with physical forms, and the present disclosure does not limit the type of server.

[0038] Figure 2 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some embodiments of the present disclosure. Figure 2 The method shown includes step S110, step S120 and step S130. The method can be executed by a mobile phone, a tablet computer, a desktop computer and other devices.

[0039] S110, after determining the data indicator to be calculated, according to the identification information of the data indicator to be calculated, obtain the plug-in configuration information of the plug-in used to calculate the data indicator to be calculated from the information storage location. Among them, the plug-in configuration information stored at the information storage location is adapted to the indicator calculation of multiple different plug-ins. The obtained plug-in configuration information includes the following information items: parameter identification information of the required parameters for calculating the data indicator to be calculated, code path information of the plug-in, and algorithm information of the required algorithm for calculating the data indicator to be calculated. The interface specifications of the interfaces of the above multiple different plug-ins are the same.

[0040] The indicator service system can calculate various data indicators of the business system and obtain the values ​​of the data indicators. When it is necessary to calculate one or several data indicators, the business system can send an indicator calculation request to the indicator service system. The indicator calculation request contains the unique identifier of the data indicator to be calculated, and the unique identifier can be used to determine which data indicator to be calculated. The unique identifier can be the indicator name or indicator ID.

[0041] The information storage location stores a variety of different types of information items. For example, the information storage location may store identification information of the parameters (required parameters) that each plug-in needs to use when calculating the corresponding indicators, that is, parameter identification information. The parameter identification information may be the name of the parameter or the parameter ID, and one parameter identification information can uniquely identify a parameter. Among all data indicators, there may be data indicators that can be calculated by calculating only one parameter, and there may also be data indicators that need to be calculated for multiple different parameters.

[0042] The information storage location may also store code path information for indicating the storage address of the plug-in code, and the plug-in code can be obtained through the code path information. One plug-in may correspond to only one code path information, that is, the number of code path information may be the same as the number of plug-ins.

[0043] The information storage location can also store algorithm information of multiple different algorithms. Algorithm information can characterize the logic of the algorithm, such as some simple algorithm logic such as sum algorithm and quotient algorithm, and can also store the algorithm logic of more complex algorithms. A plug-in may only need to use one of the algorithms stored in the information storage location to complete the calculation of the corresponding data indicator, or it may need to use multiple algorithms to complete the calculation of the corresponding data indicator, such as summing first and then quotienting the sum result.

[0044] In addition, the information storage location may also store plug-in identification information of various plug-ins. The plug-in identification information may be a plug-in name or a plug-in ID, and one plug-in identification information can uniquely identify one plug-in.

[0045] There can be multiple information storage locations, and the above-mentioned different types of information items (parameter identification information, code path information, and algorithm logic) can be stored in different information storage locations by category or by other distinction methods; there can also be only one information storage location, and the above-mentioned different types of information are uniformly stored in the same information storage location. The information storage location can be located in an external server or in the indicator service system.

[0046] The execution subject for obtaining the plug-in configuration information may be a plug-in management module in the indicator service system. The plug-in management module may be a background program running in the system, and may be used as an independent service to manage the loading, activation and calling of the plug-in.

[0047] After obtaining the identification information of the data indicator to be calculated (which may be referred to as the indicator identification information), the plug-in management module may obtain the parameter identification information, the code path information and the algorithm information from the information storage location according to the pre-stored indicator-information mapping relationship, thereby obtaining the plug-in configuration information. The indicator-information mapping relationship may be a mapping table, and the plug-in management module may obtain the corresponding parameter identification information, the code path information and the algorithm information by retrieving the indicator identification information in the mapping table.

[0048] The interface specification can be used to define the functions and services provided by the interface, and can specify information such as the input and output data formats, parameter types, and possible return values. Each plug-in implements an interface, and these interfaces all meet the requirements of the same interface specification.

[0049] The plugin interface defines a set of standard methods. Each plugin needs to implement the standard methods defined in the interface to ensure that they can be called and managed in a consistent manner by the plugin management module. These methods define the basic functions of the plugin. Each plugin implements methods for obtaining data and methods for calculating indicators.

[0050] It should be noted that although each plug-in follows the same interface specification, the specific implementation logic of each plug-in is different because different plug-ins calculate different indicators. For example, plug-in A1 calculates the user activity indicator, and plug-in A2 calculates the growth rate type indicator. The algorithm logic of the two is different, but in the interface, the name of the algorithm logic is "calculateMetric()".

[0051] The same way to implement the interface specifications of each interface can be to implement a unified interface when writing plug-in code, usually an abstract class or interface class. When developers create new plug-ins, they can inherit this interface class and provide specific implementations of these methods.

[0052] S120: Load the plug-in according to the acquired code path information.

[0053] After obtaining the plug-in configuration information, the plug-in management module may first obtain the plug-in code according to the plug-in code storage address (storage path) contained in the code path information, and then load the plug-in code to implement the loading of the plug-in.

[0054] S130, the loaded plug-in obtains the required parameters for calculating the data index to be calculated from the data source according to the parameter identification information.

[0055] The data source can be a database (a database within the indicator service system or an external database), a cache, an RPC interface, or other types of data sources. The data source stores a variety of basic data, which are used as the parameters required for calculating data indicators, that is, the data to be calculated. These basic data can be directly collected data that has not been calculated or intermediate data obtained after calculation.

[0056] The address or path of the data source may be a preset default value. The address of the data source may be stored in the information storage location or may be stored separately in another location. After completing the initialization of the plug-in, the plug-in management module may establish a connection with the data source through the interface according to the default data source address. After the connection is established, the plug-in may query and retrieve the data source according to the parameter identification information, thereby obtaining the above-mentioned required parameters.

[0057] S140, executing the required algorithm on the acquired required parameters according to the algorithm information to obtain the value of the data indicator to be calculated.

[0058] After the plug-in obtains the required parameters, it calculates the required parameters by calling the required algorithm in the interface according to the previously obtained algorithm information. For example, if the data indicator to be calculated is monthly sales, there are multiple required parameters, which are the monthly sales of multiple sales personnel, and the required algorithm is a summation algorithm. The plug-in sums all the required parameters to obtain the value of monthly sales. When necessary, the plug-in can be deployed in a distributed environment, using multiple nodes to share the computing burden and improve the overall processing capacity.

[0059] Taking the home improvement order dispatching system as an example, the system may contain more than 100 indicators, some of which are directly obtained through field data obtained from the data source, such as order status, service provider star rating, project start time, etc.; some indicators are obtained by performing simple logical processing on the field data obtained from the data source, such as the average commuting time of the service provider and the total monthly income of the service provider; and some indicators are obtained by performing complex logical processing on the field data obtained from the data source, such as the service provider performance score (based on multi-dimensional weighted calculation).

[0060] According to the plug-in-based data processing method proposed in the embodiment of the present disclosure, the indicator calculation is performed by calling the plug-in, and the plug-in parameters and indicator calculation are managed through the plug-in configuration information. Compared with hard coding, it can ensure the accuracy and efficiency of indicator calculation, and improve the maintainability and scalability of indicator calculation. When facing complex and dynamic requirements, the plug-in configuration method can more effectively manage resources and handle performance issues. The plug-in can be configured to load on demand, dynamically load and run the corresponding specific plug-in according to different indicator types, and only load a specific one or several plug-ins when the indicator needs to be calculated. It can ensure the clarity and independence of the calculation logic, and improve the flexibility of different types of indicator calculations, reduce resource usage, and avoid performance bottlenecks when calculating multiple data indicators at the same time, ensure system response speed, and achieve the effect of improving system performance and stability. In addition, the consistency and interchangeability of all plug-ins can be ensured by using a unified standard interface.

[0061] For example, if all the parameters (basic data) required for the calculation of all data indicators are stored in the same data source, there may be only one data source; if all the parameters required for the calculation of all data indicators are stored in different data sources, there are multiple data sources. For example, when calculating a certain data indicator, part of the required parameters are stored in the MySQL database, and the other part of the required parameters are stored in the Redis database; or, the required parameters for calculating the data indicator Q1 are stored in the MySQL database, and the required parameters for calculating the data indicator Q2 are stored in the Redis database.

[0062] In step S110, the plug-in configuration information obtained may also include data source identification information of the data source where the required parameters are located. One data source identification information can uniquely identify a data source. The data source identification information may be the name of the data source or the data source ID. The name of the data source may be, for example, "MySQL database" or "Redis database". The data source identification information may be stored in the above-mentioned information storage location, or may be stored separately in other locations. The plug-in management module may retrieve the indicator identification information from the above-mentioned pre-stored indicator-mapping relationship mapping table to obtain the corresponding data source identification information.

[0063] Figure 3 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some other embodiments of the present disclosure. Figure 3 , step S130 may include the following steps S131, S132 and S133.

[0064] S131, acquiring data source configuration information of a target data source where required parameters are located according to the data source identification information.

[0065] The data source configuration information may include the connection string of the data source. The connection string of the data source is a set of parameters used to configure the connection between the application and the data source, which may include the address, port, name, user name, and password of the data source. The target data source is the data source where the required parameters for the data indicator to be calculated by this plug-in are located.

[0066] S132: Establish a connection with the target data source according to the data source configuration information of the target data source.

[0067] After the plug-in is loaded, it can request the plug-in management module to establish a connection with the data source. The plug-in management module can query and retrieve the pre-stored identification-configuration mapping table according to the data source identification information obtained in step S110, obtain the data source configuration information of the target data source, and establish a connection with the target data source according to the connection string in the data source configuration information, so that the plug-in has the ability to communicate with the target data source.

[0068] S133, the loaded plug-in obtains the parameters corresponding to the parameter identification information from the target data source through the established connection to obtain the required parameters.

[0069] The target data source may store multiple data tables, and the data tables may store multiple basic data. The plug-in may send a query request containing parameter identification information to the target data source, and receive the basic data fed back by the target data source, and the received basic data is the required parameter.

[0070] Steps S131 to S133 can acquire the required parameters by acquiring the data source identification information and querying the required parameters based on the data source identification information, and when the required parameters are distributed in different data sources, the required parameters can be acquired.

[0071] As mentioned above, the parameters required to calculate different data indicators may need to be obtained from multiple different data sources. In the traditional architecture, the logic for processing different data sources may be mixed together, and the code is complex and difficult to manage.

[0072] If there are multiple required parameters for calculating the data indicator to be calculated, and the above-mentioned multiple required parameters are distributed in multiple different data sources, then in step S130: the loaded plug-in obtains the required parameters stored in the target data source from the target data source according to the parameter identification information for each target data source corresponding to the data source identification information.

[0073] For example, when calculating the data indicator Q1, the required parameters include p1, p2 and p3, and the target data source includes data source D1 and data source D2, wherein parameters p1 and p2 are stored in data source D1, and parameter p2 is stored in data source D2. Then the plug-in can first request the plug-in management module to establish a connection with data source D1, then obtain parameters p1 and p2 from data source D1, then request the plug-in management module to establish a connection with data source D2, and then obtain parameter p3 from data source D2. It is understandable that the order of establishing a connection with the target data source can be arbitrary, and the present disclosure does not limit this.

[0074] This data acquisition method can support dynamic configuration and switching of different data sources, ensuring the accuracy and timeliness of data acquisition. By uniformly managing the data sources of the plug-ins, the plug-in management module is responsible for establishing a connection with the data source when the plug-in obtains the required parameters, ensuring that all plug-ins follow a unified management and security policy when using the data source. When the configuration of the data source needs to be updated (such as database migration or connection parameter changes), there is no need to modify the configuration of the plug-ins one by one. The indicator service system can ensure centralized management and unified updates of the configuration, reducing the complexity of maintenance and the risk of errors.

[0075] Figure 4 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some other embodiments of the present disclosure. Figure 4 Before the loaded plug-in obtains the required parameters (step S130), the data processing method M100 further includes the following steps S101 and S102.

[0076] S101, obtaining data source configuration information of a data source from an information storage location, wherein the data source configuration information includes a connection string of the data source.

[0077] S102: Load data source configuration information into memory.

[0078] The data source configuration information of each data source can be stored together with the parameter identification information of each parameter, the code path information of each plug-in, and the algorithm information of each algorithm in the same information storage location. The execution subject for loading the data source configuration information can be the configuration management module in the indicator service system. The configuration management module is used to store and manage the configuration information of the data source. The configuration management module can define the configuration information of all data sources that may be used by all plug-ins.

[0079] When the indicator service system is started, the configuration management module can obtain the data source configuration information of all data sources that may be used from the information storage location, and load the data source configuration information into the memory, so that in the subsequent step S130, the plug-in management module can obtain the configuration information of the target data source from the storage space belonging to the configuration management module in the memory based on the plug-in's request to establish a connection with the target data source, thereby establishing a connection with the target data source.

[0080] By dynamically configuring and managing data sources, the indicator service system can support data acquisition from multiple data sources, ensuring the flexibility of data acquisition.

[0081] Figure 5 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some other embodiments of the present disclosure. Figure 5 Before determining the data index to be calculated, the data processing method M100 may further include step S103 but not step S104, or include step S104 but not step S103, or include both step S103 and step S104. Step S103 and step S104 are two different ways of determining the data index to be calculated, and the index service system may determine the data index to be calculated by any of the two ways. Figure 5 It is shown that the index service system can determine the data index to be calculated through step S103, and can also determine the data index to be calculated through step S104.

[0082] S103, determining the data index to be calculated according to the calculation period of different data indexes.

[0083] In step S103, the indicator service system can automatically calculate all data indicators. For example, the calculation cycle of each data indicator is set in advance in the system, such as once a month or once a day. Then, each data indicator is timed. When the calculation cycle of a data indicator is reached, the data indicator is automatically used as the data indicator to be calculated, and the execution of step S110 is triggered. At this time, it is equivalent to the system automatically activating the plug-in on time to calculate the indicator.

[0084] S104, in response to the indicator calculation instruction, determining the data indicator to be calculated according to the indicator calculation instruction.

[0085] In step S104, the indicator service system may partially manually calculate the data indicator. The user operates the display interface of the indicator service system and selects one or more data indicators displayed in the display interface, thereby giving the indicator service system an indicator calculation instruction. The indicator service system detects the indicator calculation instruction, takes the selected data indicator as the data indicator to be calculated, and triggers the execution of step S110. At this time, the system is equivalent to manually operating to trigger the activation of the plug-in and the calculation of the indicator.

[0086] The indicator service system can run an indicator calculation service, which is an independent program or background service running on the indicator service system. The indicator calculation service receives the indicator calculation instructions, extracts the identification information (indicator ID) of the data indicator to be calculated from the indicator calculation instructions, and then controls the plug-in management module to query and obtain the corresponding plug-in configuration information (plug-in identification information, parameter identification information, code path information, algorithm information and data source identification information) at the information storage location.

[0087] Through step S103 and step S104, the determination of the indicators to be calculated can be triggered by pre-configuration or manually. When there is no operation, the system can automatically calculate the indicators on time. When there is someone operating, the system can calculate the indicators before the calculation cycle, which increases the flexibility and applicability of the timing of indicator calculation.

[0088] The interface specification may include: the name of the function, the names of the input and output parameters of the function, and the number of input and output parameters of the function. For example, the name of the method used to obtain the data to be calculated is "getData()", and the name of the method used to calculate the data to be calculated is "calculateMetric()". The input parameter names and output parameter names of the "getData()" method of each plug-in are the same; the input parameter names and output parameter names of the "calculateMetric()" method of each plug-in are the same.

[0089] After executing the required algorithm, each of the plug-ins in some plug-ins can obtain the values ​​of multiple data indicators. The above multiple data indicators include the data indicators to be calculated.

[0090] Each plug-in can be used to calculate one or more data indicators. If a plug-in can calculate multiple data indicators, these data indicators can be business-related or have a progressive relationship. For example, the data indicators that plug-in A1 can calculate only include user activity indicators, and the data indicators that plug-in A2 can calculate include multiple indicators of growth rate type, which cover monthly sales growth rate, quarterly sales growth rate, etc.

[0091] The output and input parameters of the function in the interface specification can be object types that represent parameters through key-value pairs. A key-value pair is a mapping of a key value to a value. Since the interface specification constrains the number of output and input parameters, the number of required parameters for different plug-ins may be different, and the number of indicators that can be calculated by different plug-ins is different. Therefore, in order to meet the same constraints on the number of output parameters of different plug-ins and the same constraints on the number of input parameters of different plug-ins, map objects or other object types that represent parameters through key-value pairs can be used to represent output and input parameters. When representing input and output parameters through key-value pairs, all input parameters (required parameters) of a plug-in are represented by an object, and all output parameters (values ​​of data indicators) of a plug-in are also represented by an object, so that the number of input and output parameters can be constrained to a fixed number.

[0092] The algorithm information stored in the information storage location may correspond to the algorithm logic in a one-to-one manner with the plug-in. That is, one plug-in corresponds to one algorithm logic, and each plug-in corresponds to a dedicated algorithm logic. When the plug-in configuration information is acquired in step S110, the algorithm information corresponding to the indicator identification information is directly acquired to obtain the algorithm logic, and the required algorithm is executed through the algorithm logic in step S140.

[0093] The algorithm logic part may also be independent of the plug-in and have a one-to-many correspondence relationship with the plug-in. For example, the algorithm information may include the algorithm identification information and the position of the required parameters in the required algorithm. The algorithm identification information may be the algorithm name or the algorithm ID, and one algorithm identification information can uniquely identify one algorithm logic. The algorithm information obtained in step S110 may not include the algorithm logic.

[0094] Figure 6 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some other embodiments of the present disclosure. Figure 6 The method of executing the required algorithm on the acquired required parameters according to the algorithm information in step S140 may include the following steps S141 and S142.

[0095] S141, acquiring a corresponding required algorithm according to the algorithm identification information in the algorithm information.

[0096] S142, executing the acquired required algorithm according to the acquired required parameters and the positions of the required parameters in the required algorithm to obtain the value of the data indicator to be calculated.

[0097] The plug-in management module searches for the corresponding algorithm code at the information storage location through the algorithm ID, obtains the algorithm code, and forms a complete operation logic in combination with the required parameters obtained in step S130 and the parameter positions of the required parameters in the obtained algorithm logic. The plug-in then executes the operation logic to obtain the value of the data indicator to be calculated. When there are multiple required algorithms, the algorithm information may also include the execution order of the required algorithms.

[0098] For example, if the data indicator to be calculated is the quarterly order growth rate, the calculation method of this indicator is: (number of orders in this quarter - number of orders in the previous quarter) / number of orders in the previous quarter × 100%. The required parameters include p1~p100, where p1~p50 are the number of orders in all 50 regions in this quarter, and p51~p100 are the number of orders in all 50 regions in the previous quarter. The required algorithms include the sum algorithm sum(), the difference algorithm sub(), and the quotient algorithm div(). The identification information of the sum algorithm sum() is c1, the identification information of the difference algorithm sub() is c2, and the identification information of the quotient algorithm div() is c3. After obtaining the algorithm information, first obtain the logic code of the three algorithms according to c1, c2 and c3, then fill the required parameters into the algorithm according to the parameter position, and obtain the operation logic of the summation algorithm according to the operation order: [sum(p1,p2,...,p50)- sum(p51,p52,...,p100)] / sum(p51,p52,...,p100). After executing this operation logic, the quarterly order growth rate is obtained. It can be understood that the plug-in can be deployed in a distributed environment when necessary, using multiple nodes to share the computing burden and improve the overall processing capacity.

[0099] By decoupling the algorithm logic and plug-ins, the algorithm logic is saved uniformly and the input of the algorithm is not limited to a certain plug-in but is oriented to all plug-ins. If multiple different plug-ins need to use the same algorithm logic during operation, they can directly call the algorithm logic from the information storage location and configure the parameters. There is no need to configure a separate algorithm logic for each plug-in, so there will be no duplicate logic and code redundancy caused by the same algorithm logic appearing in the code of multiple different plug-ins. When modifying the algorithm logic, it is only necessary to modify the algorithm logic once without modifying the code of each plug-in containing the algorithm logic. When there are a large number of indicators and complex logic, compared with a single code base, it saves system space and improves the maintainability of the algorithm. Adding new indicators or modifying the calculation logic of existing indicators only requires modifying a small amount of code, which improves development efficiency.

[0100] It is understandable that independent storage of algorithm logic can be achieved in a variety of ways. For example, a shared public library can be set up in the indicator service system, in which a variety of different algorithms (including summation, averaging, etc.) are centrally stored. Each plug-in calls these public methods when needed, so there is no need for repeated implementation, which reduces code redundancy and improves consistency. For another example, some algorithm plug-ins can also be designed to handle repeated logic, including data preprocessing, aggregate calculations, etc. The total plug-in (the plug-in in step S110) can rely on these algorithm plug-ins to complete similar calculation tasks, thereby reducing the need for independent implementation.

[0101] Figure 7 FIG. 1 is a schematic diagram showing the overall flow of a plug-in-based data processing method M100 according to some other embodiments of the present disclosure. Figure 7 The data processing method M100 may further include step S151 and step S152. Step S151 and step S152 may be executed when needed after the index service system is put into use. For example, the execution of step S140 may be triggered by a user operating the index service system.

[0102] S151, in response to the information display instruction, display part or all of the information stored in the information storage location in the configuration page.

[0103] The user can display parameter identification information, code path information and algorithm information by operating the indicator service system. The system can also display plug-in identification information and data source identification information in response to the information display instruction.

[0104] S152: In response to the information modification indication, modify the information stored in the information storage location displayed in the configuration page.

[0105] The user can modify any of the parameter identification information, code path information, algorithm information, plug-in identification information and data source identification information in the page. For example, some plug-ins originally need to obtain the required parameters from data source D1, but the data in data source D1 is integrated and moved to data source D2, and the ID of some data also changes. At this time, each information item can be read and displayed by triggering step S151 to find the information to be modified, and then the identification information of the required parameter source can be modified by triggering step S152, and the data source corresponding to these data is changed from the ID of data source D1 to the ID of data source D2, and the identification information of the required parameters is modified, and the original ID of the required parameters is changed to the new ID.

[0106] For another example, due to the update of business logic, the calculation method of a certain data indicator has changed. The original calculation method is to average multiple data first, and then calculate the quotient of the average value and a certain data. The updated calculation method is to average multiple data, sum the other two data, and calculate the quotient of the average value and the sum result. At this time, the simple algorithm logic and complex algorithm logic can be read and displayed by triggering step S151, so as to find the algorithm logic to be modified, and then the algorithm logic can be modified by triggering step S152.

[0107] By modifying the information items on the page as described above, code development and maintenance can be achieved, as well as adjustment of plug-in behavior, eliminating the tedious process of modifying a large amount of code, testing and deploying code, making the cost of code development and maintenance smaller, shortening the development cycle, and making maintenance and modification of parameters more efficient and convenient.

[0108] The information storage location may be one or more of a configuration file, an information database, and an information registry. For example, plug-in identification information, parameter identification information, code path information, data source identification information, algorithm name and parameter location in the algorithm information may all be stored in the same configuration file, and the algorithm logic part of the algorithm information may be stored in an information database (such as a shared public library).

[0109] The plug-in configuration information of the above-mentioned multiple different plug-ins can be stored in the same information storage location. For example, plug-in identification information, parameter identification information, code path information, data source identification information and all algorithm information are stored in the same configuration file.

[0110] The configuration file can be in a table format, for example, plug-in identification information is stored in a plug-in table in the configuration file, data source identification information is stored in a data source table in the configuration file, and other information items of information storage locations can be deduced accordingly. Different tables can also be used as a configuration file separately, that is, there are multiple configuration files.

[0111] By storing the configuration information of the plug-in separately in information storage locations such as configuration files, the configuration information of the plug-in is separated from the business logic, which has the following benefits: 1. It allows developers to focus on code logic without having to change the code when modifying the configuration, thereby improving the readability and maintainability of the code; 2. The configuration content can be dynamically modified at runtime without recompiling or restarting the application, which can quickly respond to changes in business needs and improve development efficiency; 3. Modifying the configuration file is simpler than modifying the code. Even non-developers (such as business personnel) can modify the configuration and parameters without affecting the code logic, which reduces the maintenance threshold; 4. The configuration file can be version controlled independently of the code base, allowing the team to track and roll back configuration changes without touching the code, reducing the possibility of errors; 5. The same configuration can be shared by multiple plug-ins or modules, avoiding repeated definition of parameters in multiple code snippets and improving maintenance efficiency; 6. When new indicators need to be deployed quickly or existing logic needs to be modified, only the configuration file needs to be updated without modifying, testing and deploying the entire code base, which significantly speeds up iteration.

[0112] Figure 8 An interactive schematic diagram of some embodiments of the present disclosure for calculating data indicators using a plug-in-based data processing method. Figure 8 The detailed description is for a clearer understanding of the technical solution of the present disclosure and should not be considered as a limitation of the protection scope of the present disclosure. In the process of implementing the technical idea of ​​the present disclosure, one or some steps may be omitted, or other alternatives may be adopted.

[0113] The following uses the calculation of the data indicator of quarterly order growth rate as an example to illustrate the plug-in-based data processing method.

[0114] S201, when the index service system 10 is started, the configuration management module 11 obtains and loads the data source configuration information from the configuration file stored in the index service system 10, and caches the data source configuration information in the memory for use by the plug-in management module 13. The data source configuration information includes the configuration information of the MySQL database in the first server 20 and the configuration information of the Redis database in the second server 30.

[0115] S202, the user operates the index service system 10, selects a data index named "quarterly order growth rate" from a variety of data indexes as the data index to be calculated, and makes a corresponding index calculation request to the index service system 10. The index calculation request includes information such as the index name (quarterly order growth rate), time interval, and user type. The index service system 10 runs an index calculation service 12, which receives the index calculation request made by the user.

[0116] S203 , the indicator calculation service 12 extracts the indicator name (quarterly order growth rate) from the indicator calculation request and sends it to the plug-in management module 13 .

[0117] S204, the plug-in management module 13 searches and obtains the plug-in configuration information of plug-in A3 associated with the "quarterly order growth rate" data indicator in the configuration file. The plug-in configuration information includes the class name of the plug-in, the name of the required parameters, the plug-in code path, the name of the required algorithm, the position of the required parameters in the required algorithm, and the name of the required data source. Among them, plug-in A3 is used to calculate the quarterly order growth rate. The name of plug-in A3 is QuarterlyUserGrowthPlugin, the required data sources include MySQL database and Redis database, the required algorithm is: (number of orders this quarter - number of orders last quarter) / number of orders last quarter × 100%, and the required parameters include: number of orders this quarter and number of orders last quarter.

[0118] S205, the plug-in management module 13 reads the code of plug-in A3 according to the plug-in code path included in the plug-in configuration information, and loads plug-in A3, and then the plug-in management module 13 initializes plug-in A3 according to the time interval and user type in the indicator calculation request.

[0119] S206, when plug-in A3 starts to calculate the index, it sends a data acquisition request r1 to the plug-in management module 13. The data acquisition request r1 is used to obtain order data from the MySQL database. The data acquisition request includes the name of the MySQL database. The plug-in management module 13 receives the data acquisition request r1 sent by plug-in A3.

[0120] S207, the plug-in management module 13 requests the data source configuration information from the data source configuration information of the configuration management module 11 according to the names of the MySQL database and the Redis database. The required data sources include the MySQL database and the Redis database, so the requested data source configuration information includes the configuration information of the MySQL database and the configuration information of the Redis database. The configuration information of the MySQL database includes the connection string of the MySQL database and the corresponding user name and password. The configuration information of the Redis database includes the connection string of the Redis database and the corresponding user name and password.

[0121] S208, the configuration management module 11 feeds back the MySQL database configuration information and the Redis database configuration information in the memory to the plug-in management module 13.

[0122] S209, the plug-in management module 13 establishes a connection with the first server 20 according to the MySQL database configuration information. The plug-in A3 requests the first server 20 for the corresponding order data stored in the MySQL database through the plug-in management module 13 according to the name of the required parameter.

[0123] S210 , the first server 20 feeds back the queried corresponding order data to the plug-in management module 13 .

[0124] S211, the plug-in management module 13 receives a data source switching request from the plug-in A3, and switches the data source to a Redis database.

[0125] S212, the plug-in management module 13 establishes a connection with the second server 30 according to the Redis database configuration information. The plug-in A3 requests the corresponding user registration amount data stored in the Redis database from the second server 30 through the plug-in management module 13 according to the name of the required parameter.

[0126] S213 , the second server 30 feeds back the queried corresponding user registration quantity data to the plug-in management module 13 .

[0127] S214, the plug-in management module 13 searches the configuration file according to the name of the required algorithm and obtains the corresponding algorithm code.

[0128] S215, the plug-in management module 13 fills the acquired order data and the user registration volume of the previous quarter into the algorithm code according to the position of the required parameters in the required algorithm, executes the algorithm code, calculates the data indicator of the quarterly order growth rate, and stores the data indicator in the database of the indicator service system 10 for use by the business party.

[0129] S216, when it is necessary to modify the information items in the configuration file, the user operates the indicator service system 10, and the plug-in management module 13 displays all the information stored in the configuration file in the configuration page according to the user operation, including the names and code paths of all plug-ins, the names and algorithm logic of all algorithms, all required parameters and their parameter positions in the algorithm, the names of all data sources, and so on. S217, after viewing the information items, the user selects the information items to be modified and enters the modified values, and the plug-in management module 13 modifies the values ​​of the selected information items according to the user operation, thereby modifying the configuration file. The modified values ​​will be updated to the configuration page for the user to view.

[0130] Based on any of the above implementations, the present disclosure also provides a plug-in-based data processing device. Fig. 9 FIG. 1 is a schematic block diagram of a plug-in-based data processing device according to an embodiment of the present disclosure. Fig. 9As shown, the plug-in-based data processing device includes a plug-in management module 1002 and a configuration management module 1004. Each of the above modules can be implemented by a computer program module.

[0131] The plug-in management module 1002 is used to perform the following steps: after determining the data indicator to be calculated, according to the identification information of the data indicator to be calculated, the plug-in configuration information of the plug-in used to calculate the data indicator to be calculated is obtained from the information storage location, wherein the plug-in configuration information stored at the information storage location is adapted to the indicator calculation of multiple different plug-ins, and the obtained plug-in configuration information includes the following information items: parameter identification information of the required parameters for calculating the data indicator to be calculated, code path information of the plug-in and algorithm information of the required algorithm for calculating the data indicator to be calculated, and the interface specifications of the interfaces of the above multiple different plug-ins are the same; loading the plug-in according to the obtained code path information; controlling the loaded plug-in to obtain the required parameters for calculating the data indicator to be calculated from the data source according to the parameter identification information; and controlling the loaded plug-in to execute the required algorithm on the obtained required parameters according to the algorithm information to obtain the value of the data indicator to be calculated.

[0132] The obtained plug-in configuration information may also include data source identification information of the data source where the required parameters are located. The plug-in management module 1002 controls the loaded plug-in to obtain the required parameters for calculating the data index to be calculated, which may include the following steps: obtaining the data source configuration information of the target data source where the required parameters are located according to the data source identification information; establishing a connection with the target data source according to the data source configuration information of the target data source; and controlling the loaded plug-in to obtain the parameters corresponding to the parameter identification information from the target data source through the established connection to obtain the required parameters.

[0133] If there are multiple required parameters for calculating the data indicator to be calculated, and the above-mentioned multiple required parameters are distributed in multiple different data sources, the plug-in management module 1002 controls the loaded plug-in to obtain the required parameters stored in the target data source from the target data source according to the parameter identification information for the target data source corresponding to each data source identification information.

[0134] The configuration management module 1004 is used to obtain data source configuration information of the data source from the information storage location and load the data source configuration information into the memory, wherein the data source configuration information includes a connection string of the data source.

[0135] The plug-in management module 1002 may determine the data index to be calculated according to the calculation period of different data indexes, or may determine the data index to be calculated according to the index calculation instruction in response to the index calculation instruction.

[0136] The interface specification may include: the name of the function, the names of the input and output parameters of the function, and the number of input and output parameters of the function. After executing the required algorithm, each plug-in in some plug-ins can obtain the values ​​of multiple data indicators. The above multiple data indicators include the data indicators to be calculated. The input and output parameters of the function in the interface specification can both be object types that represent parameters through key-value pairs.

[0137] The way in which the plug-in management module 1002 controls the loaded plug-in to execute the required algorithm may include the following steps: the plug-in management module 1002 obtains the corresponding required algorithm based on the algorithm identification information in the algorithm information; and controls the loaded plug-in to execute the acquired required algorithm based on the acquired required parameters and the position of the required parameters in the required algorithm to obtain the value of the data indicator to be calculated.

[0138] The plug-in management module 1002 is also used to display part or all of the information stored at the information storage location in the configuration page in response to an information display indication, and then modify the information stored at the information storage location displayed in the configuration page in response to an information modification indication.

[0139] The information storage location may be one or more of a configuration file, an information database, and an information registry. The plug-in configuration information of the above-mentioned multiple different plug-ins may be stored in the same information storage location.

[0140] The implementation process of the functions and effects of each module in the above-mentioned device is specifically described in the implementation process of the corresponding steps in the above-mentioned method, which will not be repeated here.

[0141] The execution subject of the plug-in-based data processing method in the specific implementation of the present disclosure may be an electronic device such as a mobile phone, a tablet computer, a desktop computer, etc. Therefore, based on any of the above implementations, the present disclosure also provides an electronic device, which can execute the plug-in-based data processing method of any implementation described above in the present disclosure, and the plug-in-based data processing device of any implementation described above can be configured on the electronic device.

[0142] Fig.10 FIG. 1 is a schematic block diagram of an electronic device 1000 equipped with a plug-in-based data processing device according to an embodiment of the present disclosure. Fig.10 , the hardware structure of the electronic device 1000 can be implemented using a bus architecture. The bus architecture can include any number of interconnecting buses and bridges, depending on the specific application and overall design constraints of the hardware. The bus 1100 connects various circuits including one or more processors 1200, memory 1300 and / or hardware modules together. The bus 1100 can also connect various other circuits 1400 such as peripherals, voltage regulators, power management circuits, external antennas, etc.

[0143] The bus 1100 may be an Industry Standard Architecture (ISA) bus, a Peripheral Component Interconnect (PCI) bus, or an Extended Industry Standard Component (EISA) bus, etc. The bus may be divided into an address bus, a data bus, a control bus, etc. For ease of representation, the figure only uses one connecting line, but does not mean that there is only one bus or one type of bus.

[0144] The processor 1200 may be a central processing unit (CPU). The processor 1200 may also be other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, or a combination of the above chips.

[0145] The memory 1300 can be used as a non-transitory computer-readable storage medium, and can be used to store non-transitory software programs, non-transitory computer executable programs and modules, such as program instructions of the computer program in the embodiment of the present disclosure. The processor 1200 implements the plug-in-based data processing method by running the non-transitory software programs, instructions and modules stored in the memory 1300.

[0146] The memory 1300 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required by at least one function; the data storage area may store data created by the processor 1200, such as structural data, model data, sample data, stiffness evaluation results, etc. of the bridge. In addition, the memory 1300 may include a high-speed random access memory, and may also include a non-transitory memory, such as at least one disk storage device, a flash memory device, or other non-transitory solid-state storage device. In some embodiments, the memory 1300 may optionally include a memory remotely arranged relative to the processor 1200, and these remote memories may be connected to the processor 1200 via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0147] The present disclosure also provides a readable storage medium, in which a computer program is stored, and the computer program is used to implement the above method when executed by a processor. "Readable storage medium" can be any device that can contain, store, communicate, propagate or transmit a program for use in an instruction execution system, device or equipment or in combination with these instruction execution systems, devices or equipment. More specific examples of readable storage media include the following: an electrical connection portion (electronic device) with one or more wirings, a portable computer disk box (magnetic device), a random access memory (RAM), a read-only memory (ROM), an erasable and editable read-only memory (EPROM or flash memory), an optical fiber device, and a portable read-only memory (CDROM), etc.

[0148] The present disclosure also provides a computer program product, and the method of the present disclosure can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer programs or instructions. When the computer program or instruction is loaded and executed, the process or function of the present disclosure is executed in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, a network device, a user device, a core network device, an OAM or other programmable device.

[0149] The computer program or instructions may be stored in a readable storage medium or transmitted from one readable storage medium to another readable storage medium, for example, the computer program or instructions may be transmitted from one website, computer, server or data center to another website, computer, server or data center by wired or wireless means. The readable storage medium may be any available medium that can be accessed or a data storage device such as a server, data center, etc. that integrates one or more available media. The available medium may be a magnetic medium, such as a floppy disk, a hard disk, or a magnetic tape; it may also be an optical medium, such as a digital video disk; it may also be a semiconductor medium, such as a solid state drive. The computer readable storage medium may be a volatile or non-volatile storage medium, or may include both volatile and non-volatile types of storage media.

[0150] Those skilled in the art will appreciate that the embodiments of the present disclosure may be provided as methods, systems, or computer program products. Therefore, the present disclosure may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present disclosure may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0151] The present disclosure is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to the present disclosure. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.

[0152] These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing device to operate in a specific manner, so that the instructions stored in the computer-readable memory produce an article of manufacture comprising an instruction device, which implements the process Figure 1 A process or multiple processes and / or boxes Figure 1 A function specified in one or more boxes.

[0153] These computer program instructions can also be loaded onto a computer or other programmable data processing device so that a series of operating steps are executed on the computer or other programmable device to produce a computer-implemented process, thereby providing instructions for implementing the process. Figure 1 A process or multiple processes and / or boxes Figure 1 The steps for the functions specified in one or more boxes.

[0154] In the description of this specification, the description with reference to the terms "one embodiment / method", "some embodiments / methods", "example", "specific example", or "some examples" etc. means that the specific features, structures, or characteristics described in conjunction with the embodiment / method or example are included in at least one embodiment / method or example of the present disclosure. In this specification, the schematic representations of the above terms do not necessarily refer to the same embodiment / method or example. Moreover, the specific features, structures, or characteristics described may be combined in a suitable manner in any one or more embodiments / methods or examples. In addition, those skilled in the art may combine and combine different embodiments / methods or examples described in this specification and features of different embodiments / methods or examples, unless they are contradictory.

[0155] In addition, the terms "first" and "second" are used for descriptive purposes only and should not be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of the features. In the description of the present disclosure, "plurality" means at least two, such as two, three, etc., unless otherwise clearly and specifically defined.

[0156] Those skilled in the art should understand that the above embodiments are only for the purpose of clearly illustrating the present disclosure, and are not intended to limit the scope of the present disclosure. For those skilled in the art, other changes or modifications may be made based on the above disclosure, and these changes or modifications are still within the scope of the present disclosure.

Claims

1. A plug-in-based data processing method, characterized in that: include: After determining the data indicator to be calculated, according to the identification information of the data indicator to be calculated, the plug-in configuration information of the plug-in used to calculate the data indicator to be calculated is obtained from the information storage location, the plug-in configuration information stored in the information storage location is adapted to the indicator calculation of multiple different plug-ins, and the obtained plug-in configuration information includes the following information items: parameter identification information of the parameters required for calculating the data indicator to be calculated, code path information of the plug-in, and algorithm information of the algorithm required for calculating the data indicator to be calculated, and the interface specifications of the interfaces of the multiple different plug-ins are the same; Loading the plug-in according to the acquired code path information; The loaded plug-in obtains the required parameters for calculating the data index to be calculated from the data source according to the parameter identification information; as well as The required algorithm is executed on the acquired required parameters according to the algorithm information to obtain the value of the data indicator to be calculated.

2. The plug-in-based data processing method according to claim 1, characterized in that: The obtained plug-in configuration information also includes data source identification information of the data source where the required parameters are located; The loaded plug-in obtains the required parameters for calculating the data indicator to be calculated from the data source according to the parameter identification information, including: Acquire data source configuration information of the target data source where the required parameters are located according to the data source identification information; Establishing a connection with the target data source according to the data source configuration information of the target data source; and The loaded plug-in obtains the parameters corresponding to the parameter identification information from the target data source through the established connection to obtain the required parameters.

3. The plug-in-based data processing method according to claim 2, characterized in that: If there are multiple required parameters for calculating the data indicator to be calculated, and the multiple required parameters are distributed in multiple different data sources, then: the loaded plug-in obtains the required parameters stored in the target data source from the target data source according to the parameter identification information for each target data source corresponding to the data source identification information.

4. The plug-in-based data processing method according to any one of claims 1 to 3, characterized in that: Before the loaded plug-in obtains the required parameters, the method further includes: Acquire data source configuration information of the data source from the information storage location, the data source configuration information including a connection string of the data source; and The data source configuration information is loaded into the memory.

5. The plug-in-based data processing method according to claim 1, characterized in that: Before determining the data indicator to be calculated, the method further includes: Determine the data indicators to be calculated according to the calculation period of different data indicators; and / or In response to the indicator calculation instruction, the data indicator to be calculated is determined according to the indicator calculation instruction.

6. The plug-in-based data processing method according to claim 1, characterized in that: The interface specification includes: the name of the function, the names of the input parameters and output parameters of the function, and the number of the input parameters and output parameters of the function.

7. The plug-in-based data processing method according to claim 1 or 6, characterized in that: Each of the plug-ins in some of the plug-ins obtains values ​​of multiple data indicators after executing the required algorithm, and the multiple data indicators include the data indicator to be calculated; Optionally, both the output parameters and input parameters of the function in the interface specification are object types that represent parameters through key-value pairs; Optionally, the algorithm information includes algorithm identification information and the position of the required parameter in the required algorithm; Optionally, executing the required algorithm on the acquired required parameters according to the algorithm information includes: Acquire the corresponding required algorithm according to the algorithm identification information in the algorithm information; and Executing the acquired required algorithm according to the acquired required parameters and the positions of the required parameters in the required algorithm; Optionally, the method further comprises: In response to the information display instruction, displaying part or all of the information stored in the information storage location in the configuration page; and In response to an information modification indication, modifying the information stored at the information storage location displayed in the configuration page; Optionally, the information storage location is one or more of a configuration file, an information database, and an information registration table; Optionally, the plug-in configuration information of the multiple different plug-ins is stored in the same information storage location.

8. An electronic device, characterized in that: include: A memory storing execution instructions; as well as A processor, wherein the processor executes the execution instructions stored in the memory, so that the processor executes the method according to any one of claims 1 to 7.

9. A readable storage medium, characterized in that: The readable storage medium stores a computer program, and when the computer program is executed by a processor, it is used to implement the method according to any one of claims 1 to 7.

10. A computer program product, characterized in that The computer program product comprises a computer program, and when the computer program is executed by a processor, the computer program is used to implement the method according to any one of claims 1 to 7.