A data and logic computing separation method, device, equipment and storage medium
By separating the logic calculation processing program from the data and status field programs and compiling them into a main program and a dynamic library, the problem of controller software system coordination in a SAN storage environment is solved, enabling efficient software upgrades.
Patent Information
- Application Number
- CN202310165917.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-02-24
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2043-02-24
AI Technical Summary
In a SAN storage environment, the software systems on the various controllers of the storage devices are difficult to coordinate with each other, and online software upgrades take a long time.
By separating the logic calculation processing program from the data and status field programs, and compiling them into a main program and a dynamic library respectively, the logic calculation processing program and the data and status field programs are separated. The main program calls the operation interface in the dynamic library to perform operations at runtime.
This makes it easier for the software systems on the various controllers of the storage device to cooperate with each other, and allows for on-demand updates during software upgrades, reducing the time spent on online software upgrades.
Smart Images

Figure CN116301885B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of SAN storage technology, and in particular to a method, apparatus, device, and storage medium for separating data and logical computing. Background Technology
[0002] Currently, in SAN (Storage Area Network) application environments, storage devices are generally cluster systems composed of multiple identical controllers. From the perspective of the server host, the storage cluster is a whole. Considering load balancing, read and write operations can be performed through any controller. However, storage reliability requirements are high, and the storage service must be online at all times to fix software problems. This means that the software systems on each controller of the storage device must be able to cooperate with each other and support online software upgrades.
[0003] Therefore, how to make the software systems on the various controllers of the storage device more easily cooperate with each other, and how to reduce the time spent on online software upgrades are problems that need to be solved by those skilled in the art. Summary of the Invention
[0004] In view of this, the purpose of this invention is to provide a method, apparatus, device, and storage medium for separating data and logical computation, which enables the software systems on various controllers of the storage device to cooperate more easily and reduces the time spent on online software upgrades. The specific solution is as follows:
[0005] In a first aspect, this application discloses a method for separating data and logical computation, including:
[0006] Call the first target file and the second target file. The first target file is used to store the pre-developed logic calculation processing program related to logic calculation. The second target file is used to store the pre-developed data and status field program and operation interface program related to data and status fields.
[0007] The logic calculation processing program in the first target file is compiled to obtain the corresponding main program, and the data and status field program and the operation interface program in the second target file are compiled to obtain the corresponding dynamic library.
[0008] When the main program and the dynamic library are running, the main program calls the open operation interface to open the dynamic library and obtain the operation interface related to the data and the status field in the dynamic library to perform corresponding operations on the data and the status field.
[0009] Optionally, compiling the logical calculation processing program in the first object file to obtain the corresponding main program includes:
[0010] The logical calculation processing program in the first object file is compiled according to the first preset compilation instructions to obtain the corresponding main program.
[0011] Optionally, compiling the data and status field program and the operation interface program in the second object file to obtain the corresponding dynamic library includes:
[0012] The data and status field programs and the operation interface programs in the second object file are compiled according to the second preset compilation instructions to obtain the corresponding dynamic library.
[0013] Optionally, the step of obtaining the operation interface related to the data and the status field in the dynamic library and performing corresponding operations on the data and the status field includes:
[0014] By obtaining the operation interfaces related to the data and the status fields in the dynamic library through the preset acquisition interface, the corresponding operations are performed on the data and the status fields.
[0015] Optionally, the method for separating data and logical computation further includes:
[0016] Monitor the logic calculation process for any problems.
[0017] If the problem is detected in the logic calculation process, the dynamic library is shut down by calling the shutdown operation interface through the main program.
[0018] Optionally, the method for separating data and logical computation further includes:
[0019] Monitor whether the logic calculation processing program adds new logic;
[0020] If the addition of the new logic is detected in the logic calculation processing program, the new logic calculation processing program is compiled to obtain a new main program, and the main program is replaced with the new main program; the new logic calculation processing program is the logic calculation processing program with the added new logic.
[0021] Optionally, the method for separating data and logical computation further includes:
[0022] Monitor whether the data, the status field, and the related operation logic need to be updated;
[0023] If it is detected that the data, the status fields, and the related operation logic need to be updated, then a new data and status field program is recompiled to obtain a new dynamic library. The main program then calls the close operation interface to close the dynamic library and calls the open operation interface to open the new dynamic library to upgrade the dynamic library. The new data and status field program is the updated data and status field program.
[0024] Secondly, this application discloses a data and logic calculation separation device, comprising:
[0025] The file calling module is used to call a first target file and a second target file. The first target file is used to store pre-developed logic calculation processing programs related to logic calculation. The second target file is used to store pre-developed data and status field programs and operation interface programs related to data and status fields.
[0026] The first program compilation module is used to compile the logical calculation processing program in the first object file to obtain the corresponding main program;
[0027] The second program compilation module is used to compile the data and status field program and the operation interface program in the second object file to obtain the corresponding dynamic library;
[0028] The runtime module is used to, when running the main program and the dynamic library, open the dynamic library by calling the open operation interface through the main program to obtain the operation interface related to the data and the status field in the dynamic library, and perform corresponding operations on the data and the status field.
[0029] Thirdly, this application discloses an electronic device, including:
[0030] Memory, used to store computer programs;
[0031] A processor is used to execute the computer program to implement the steps of the aforementioned disclosed method for separating data and logical computation.
[0032] Fourthly, this application discloses a computer-readable storage medium for storing a computer program; wherein, when the computer program is executed by a processor, it implements the steps of the aforementioned disclosed method for separating data and logical computation.
[0033] As can be seen, this application provides a method for separating data and logic calculation, comprising: calling a first target file and a second target file, wherein the first target file is used to store a pre-developed logic calculation processing program related to logic calculation, and the second target file is used to store a pre-developed data and state field program and an operation interface program related to data and state fields; compiling the logic calculation processing program in the first target file to obtain a corresponding main program, and compiling the data and state field program and the operation interface program in the second target file to obtain a corresponding dynamic library; when running the main program and the dynamic library, opening the dynamic library by calling the operation interface through the main program to obtain the operation interface related to the data and state fields in the dynamic library to perform corresponding operations on the data and state fields. Therefore, this application compiles the logic calculation processing program and the data and status field programs separately, compiling them into a main program and a dynamic library respectively. This achieves the separation of the logic calculation processing program from the data and status field programs. When the main program and the dynamic library are running, the main program will use the relevant content in the dynamic library to perform corresponding operations. This makes it easier for the software systems on the various controllers of the storage device to cooperate with each other. Furthermore, during software upgrades, the corresponding parts are updated as needed, avoiding a complete update and thus reducing the time spent on online software upgrades. Attached Figure Description
[0034] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the provided drawings without creative effort.
[0035] Figure 1 This is a flowchart of a data and logic calculation separation method disclosed in this application;
[0036] Figure 2 This is a flowchart of a specific data and logic calculation separation method disclosed in this application;
[0037] Figure 3 This is a schematic diagram of a data and logic calculation separation device disclosed in this application;
[0038] Figure 4 This is a structural diagram of an electronic device disclosed in this application. Detailed Implementation
[0039] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.
[0040] Currently, in SAN application environments, storage devices are typically cluster systems composed of multiple identical controllers. From the server host's perspective, the storage cluster is a unified whole. Considering load balancing, read and write operations can be performed through any controller. However, high storage reliability is required, and software troubleshooting necessitates continuous online storage services. This means that the software systems on each controller of the storage device must be able to cooperate with each other and support online software upgrades. To address this, this application provides a data and logical computing separation scheme, which makes it easier for the software systems on each controller of the storage device to cooperate with each other and reduces the time spent on online software upgrades.
[0041] This invention discloses a method for separating data and logical computation. See [link to relevant documentation]. Figure 1 As shown, the method includes:
[0042] Step S11: Call the first target file and the second target file. The first target file is used to store the pre-developed logic calculation processing program related to logic calculation. The second target file is used to store the pre-developed data and status field program and operation interface program related to data and status fields.
[0043] It should be noted that the software systems running on the controllers of the storage device can be programmed in C language and can be developed based on the Linux operating system. When designing and developing the storage device software, developers separate the logic calculation processing programs related to logical computation, the data and status field programs related to data and status fields, and the operation interface programs into different files. Specifically, the pre-developed logic calculation processing programs are saved in the first target file, while the pre-developed data and status field programs and operation interface programs are saved in the second target file. Furthermore, during program design, developers analyze which data and status fields are involved in communication between multiple controllers. These status fields include read / write I / O (Input / Output) related status fields. All controllers in the entire cluster system need to maintain consistent data and status fields, meaning that all controllers in the cluster system need to maintain consistent data and status field programs and consistent operation interface programs. The developed logic calculation processing programs include software upgrades and handling of opening and closing dynamic libraries when using them. In other words, the storage device software program developed by the developers based on the Linux operating system has two parts: logical calculation and cluster-related state data processing.
[0044] In this embodiment, a first target file containing a logic calculation processing program related to logic calculation and a second target file containing a data and state field program and an operation interface program related to data and state fields are first called.
[0045] Step S12: Compile the logic calculation processing program in the first target file to obtain the corresponding main program, and compile the data and status field program and the operation interface program in the second target file to obtain the corresponding dynamic library.
[0046] In this embodiment, the logical calculation processing program in the first target file is compiled to obtain the corresponding main program, and the data and status field program and the operation interface program in the second target file are compiled to obtain the corresponding dynamic library. It is understood that using a dynamic library separates the logical calculation processing program related to logical calculation from the data and status field program synchronized with the cluster system. This allows for a narrower scope of software replacement during later maintenance involving logical function upgrades or problem modifications. In other words, during software upgrades, only a portion can be replaced as needed, accelerating the online software upgrade process, reducing the risk of business interruption, and independent status data management facilitates cluster system control and management. For example, the main program can be named `mymain`, and the data and status field programs and operation interface programs related to data and status fields can be grouped together and compiled into a dynamic library, for example, `gcc –fPIC –shared status.c –o libstatus.so`.
[0047] Step S13: When running the main program and the dynamic library, the main program calls the open operation interface to open the dynamic library to obtain the operation interface related to the data and the status field in the dynamic library, and performs corresponding operations on the data and the status field.
[0048] In this embodiment, when the main program and the dynamic library are running, the main program calls the open operation interface to open the dynamic library and obtain the operation interfaces related to the data and status fields in the dynamic library to perform corresponding operations on the data and status fields. That is, when the main program and the dynamic library are running, the `mymain` program opens the dynamic library `libstatus.so` through the `dlopen` operation interface. When operations on the data and status fields in the dynamic library are involved, the `dlsym` interface is used to obtain the operation interfaces corresponding to the data and status fields in the dynamic library to perform operations on the data and status fields. Furthermore, when the main program and the dynamic library are running, the two separate parts are loaded into one process. Then, during software upgrades, one part can be replaced as needed. For example, a software program running in one process can update the logic calculation processing program part separately, or it can update the data and status field program part and the operation interface program part that operates on the data and status separately.
[0049] In the technical solution of this application, since the logic calculation processing program related to logic calculation and the data and status field program related to data and status fields are compiled separately into the main program and dynamic library, it is more convenient for later maintenance. It can reduce the scope of software replacement according to the content of the upgrade or the situation of the problem, accelerate the online upgrade process, reduce the risk of business interruption, and the independent status data management is more convenient for status management between controllers in the cluster system.
[0050] While running the main program and the dynamic library, the system can also monitor in real time whether there are any problems with the logic calculation processing program. If a problem is detected, the dynamic library is closed by calling the close operation interface through the main program. The system also monitors in real time whether new logic is added to the logic calculation processing program. If new logic is added, a new logic calculation processing program is compiled to obtain a new main program, and the main program is replaced with this new main program. The new logic calculation processing program is the one with the added new logic. In other words, if there is a problem with the logic calculation processing program, or if new logic is added, simply calling `dlclose` in `mymain` to close the dynamic library, or running the new `mymain` program, will suffice.
[0051] Furthermore, when monitoring in real time whether the data, status fields, and related operational logic need to be updated; if it is detected that the data, status fields, and related operational logic need to be updated, a new data and status field program is recompiled to obtain a new dynamic library. The main program then calls the close operation interface to close the dynamic library and the open operation interface to open the new dynamic library to upgrade the dynamic library. The new data and status field program is the updated version of the data and status fields. In other words, when it is detected that the relevant data and status fields of the cluster system management, as well as these operational logics, need to be updated, the `mymain` program calls `dlclose` to close the old dynamic library and then calls `dlopen` to open the new dynamic library to complete the relevant software upgrade.
[0052] As can be seen, in this embodiment of the application, the logic calculation processing program and the data and status field program are compiled separately into a main program and a dynamic library, respectively, thereby achieving the separation of the logic calculation processing program and the data and status field program. When the main program and the dynamic library are running, the main program will use the relevant content in the dynamic library to perform the corresponding operations, which makes it easier for the software systems on each controller of the storage device to cooperate with each other. Furthermore, during software upgrades, the corresponding parts are updated as needed, avoiding a complete update, thereby reducing the time occupied by online software upgrades.
[0053] See Figure 2 As shown, this embodiment of the invention discloses a specific method for separating data and logic calculations. Compared with the previous embodiment, this embodiment further explains and optimizes the technical solution.
[0054] Step S21: Call the first target file and the second target file. The first target file is used to store the pre-developed logic calculation processing program related to logic calculation. The second target file is used to store the pre-developed data and status field program and operation interface program related to data and status fields.
[0055] Step S22: Compile the logic calculation processing program in the first object file according to the first preset compilation instructions to obtain the corresponding main program.
[0056] In this embodiment, the logic calculation processing program in the first object file is compiled according to the first preset compilation instructions to obtain the corresponding main program. It can be understood that the logic calculation processing program is compiled into the main program according to the first preset compilation instructions.
[0057] Step S23: Compile the data and status field program and the operation interface program in the second object file according to the second preset compilation instructions to obtain the corresponding dynamic library.
[0058] In this embodiment, the data and status field program and the operation interface program in the second object file are compiled into a corresponding dynamic library according to the second preset compilation instructions. It can be understood that the data and status field program and the operation interface program are compiled into a dynamic library according to the second preset compilation instructions.
[0059] Step S24: When running the main program and the dynamic library, the main program calls the open operation interface to open the dynamic library to obtain the operation interface related to the data and the status field in the dynamic library, and performs corresponding operations on the data and the status field.
[0060] For details regarding steps S21 to S24, please refer to the corresponding content disclosed in the foregoing embodiments, which will not be repeated here.
[0061] As can be seen, in this embodiment of the application, the logic calculation processing program and the data and status field program are compiled separately, and the logic calculation processing program and the data and status field program are compiled into the main program and the dynamic library respectively through the corresponding compilation instructions. This achieves the separation of the logic calculation processing program and the data and status field program. When the main program and the dynamic library are running, the main program will use the relevant content in the dynamic library to perform the corresponding operations. This makes it easier for the software systems on each controller of the storage device to cooperate with each other. Moreover, when the software is upgraded, the corresponding parts are updated as needed, avoiding a complete update, thereby reducing the time occupied by online software upgrades.
[0062] Accordingly, embodiments of this application also disclose a data and logic calculation separation device, see [link to relevant documentation]. Figure 3 As shown, the device includes:
[0063] The file calling module 11 is used to call a first target file and a second target file. The first target file is used to store a pre-developed logic calculation processing program related to logic calculation. The second target file is used to store a pre-developed data and status field program and operation interface program related to data and status fields.
[0064] The first program compilation module 12 is used to compile the logic calculation processing program in the first object file to obtain the corresponding main program;
[0065] The second program compilation module 13 is used to compile the data and status field program and the operation interface program in the second object file to obtain the corresponding dynamic library;
[0066] The running module 14 is used to open the dynamic library by calling the opening operation interface through the main program when running the main program and the dynamic library, and to obtain the operation interface related to the data and the status field in the dynamic library to perform corresponding operations on the data and the status field.
[0067] As can be seen from the above, in this embodiment of the application, the logic calculation processing program and the data and status field program are compiled separately into a main program and a dynamic library, respectively, thereby achieving the separation of the logic calculation processing program and the data and status field program. When the main program and the dynamic library are running, the main program will use the relevant content in the dynamic library to perform the corresponding operations, which makes it easier for the software systems on each controller of the storage device to cooperate with each other. Furthermore, during software upgrades, the corresponding parts are updated as needed, avoiding a complete update, thereby reducing the time occupied by online software upgrades.
[0068] In some specific embodiments, the first program compilation module 12 may specifically include:
[0069] The first program compilation unit is used to compile the logical calculation processing program in the first object file according to the first preset compilation instructions to obtain the corresponding main program.
[0070] In some specific embodiments, the second program compilation module 13 may specifically include:
[0071] The second program compilation unit is used to compile the data and status field program and the operation interface program in the second object file according to the second preset compilation instructions to obtain the corresponding dynamic library.
[0072] In some specific embodiments, the running module 14 may specifically include:
[0073] The operation interface acquisition unit is used to acquire the operation interface related to the data and the status field in the dynamic library through a preset acquisition interface, and perform corresponding operations on the data and the status field.
[0074] In some specific embodiments, the data and logic calculation separation device may specifically include:
[0075] The first monitoring module is used to monitor whether there are any problems with the logic calculation processing program;
[0076] The first upgrade processing module is used to shut down the dynamic library by calling the shutdown operation interface through the main program if the problem is detected in the logic calculation processing program.
[0077] In some specific embodiments, the data and logic calculation separation device may specifically include:
[0078] The second monitoring module is used to monitor whether the logic calculation processing program adds new logic;
[0079] The second upgrade processing module is used to compile a new logic calculation processing program to obtain a new main program if the new logic is detected to be added to the logic calculation processing program, and replace the main program with the new main program; the new logic calculation processing program is the logic calculation processing program with the new logic added.
[0080] In some specific embodiments, the data and logic calculation separation device may specifically include:
[0081] The third monitoring module is used to monitor whether the data, the status field, and the related operation logic need to be updated.
[0082] The third upgrade processing module is used to recompile a new data and status field program to obtain a new dynamic library if it is detected that the data, the status field, and the related operation logic need to be updated. The module then calls the close operation interface through the main program to close the dynamic library and calls the open operation interface to open the new dynamic library to upgrade the dynamic library. The new data and status field program is the updated data and status field program.
[0083] Furthermore, embodiments of this application also provide an electronic device. Figure 4 This is a structural diagram of an electronic device 20 according to an exemplary embodiment. The content of the diagram should not be construed as limiting the scope of this application.
[0084] Figure 4 This is a schematic diagram of the structure of an electronic device 20 provided in an embodiment of this application. Specifically, the electronic device 20 may include: at least one processor 21, at least one memory 22, a power supply 23, a communication interface 24, an input / output interface 25, and a communication bus 26. The memory 22 stores a computer program, which is loaded and executed by the processor 21 to implement the relevant steps in the data and logic calculation separation method disclosed in any of the foregoing embodiments. Furthermore, the electronic device 20 in this embodiment may specifically be an electronic computer.
[0085] In this embodiment, the power supply 23 is used to provide operating voltage for each hardware device on the electronic device 20; the communication interface 24 can create a data transmission channel between the electronic device 20 and external devices, and the communication protocol it follows can be any communication protocol applicable to the technical solution of this application, and is not specifically limited here; the input / output interface 25 is used to acquire external input data or output data to the outside world, and its specific interface type can be selected according to specific application needs, and is not specifically limited here.
[0086] In addition, the memory 22, as a carrier for resource storage, can be a read-only memory, random access memory, disk or optical disk, etc. The resources stored thereon can include operating system 221, computer program 222, etc., and the storage method can be temporary storage or permanent storage.
[0087] The operating system 221 is used to manage and control the various hardware devices on the electronic device 20 and the computer program 222, which may be Windows Server, Netware, Unix, Linux, etc. In addition to including a computer program capable of performing the data and logic computation separation method executed by the electronic device 20 as disclosed in any of the foregoing embodiments, the computer program 222 may further include a computer program capable of performing other specific tasks.
[0088] Furthermore, embodiments of this application also disclose a computer-readable storage medium storing a computer program. When the computer program is loaded and executed by a processor, it implements the data and logic calculation separation method steps disclosed in any of the foregoing embodiments.
[0089] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from other embodiments. Similar or identical parts between embodiments can be referred to interchangeably. For the apparatus disclosed in the embodiments, since it corresponds to the method disclosed in the embodiments, the description is relatively simple; relevant parts can be referred to in the method section.
[0090] Finally, it should be noted that in this document, relational terms such as "first" and "second" are used only to distinguish one entity or operation from another, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.
[0091] The above provides a detailed description of a data and logic calculation separation method, apparatus, device, and storage medium provided by the present invention. Specific examples have been used to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only for the purpose of helping to understand the method and core ideas of the present invention. At the same time, for those skilled in the art, there will be changes in the specific implementation methods and application scope based on the ideas of the present invention. Therefore, the content of this specification should not be construed as a limitation of the present invention.
Claims
1. A method for separating data and logical computation, applied to a SAN cluster controller, characterized in that, include: The system calls a first target file and a second target file. The first target file stores pre-developed logic calculation processing programs related to logic calculation, and the second target file stores pre-developed data and status field programs and operation interface programs related to data and status fields, so as to separate the logic calculation processing programs related to logic calculation from the data and status field programs synchronized with the cluster system. The logic calculation processing programs include software upgrades and dynamic library opening and closing processes related to using dynamic libraries. The logic calculation processing program in the first target file is compiled to obtain the corresponding main program, and the data and status field program and the operation interface program in the second target file are compiled to obtain the corresponding dynamic library. When the main program and the dynamic library are running, the main program calls the open operation interface to open the dynamic library to obtain the operation interface related to the data and the status field in the dynamic library and perform corresponding operations on the data and the status field. Monitor the logic calculation process for any problems. If the problem is detected in the logic calculation processing program, the dynamic library is shut down by calling the shutdown operation interface through the main program; Monitor whether the logic calculation processing program adds new logic; If the addition of the new logic is detected in the logic calculation processing program, the new logic calculation processing program is compiled to obtain a new main program, and the main program is replaced with the new main program; the new logic calculation processing program is the logic calculation processing program with the added new logic. Monitor whether the data, the status field, and the related operation logic need to be updated; If it is detected that the data, the status fields, and the related operation logic need to be updated, then a new data and status field program is recompiled to obtain a new dynamic library. The main program then calls the close operation interface to close the dynamic library and calls the open operation interface to open the new dynamic library to upgrade the dynamic library. The new data and status field program is the updated data and status field program.
2. The data and logic calculation separation method according to claim 1, characterized in that, The process of compiling the logical calculation processing program in the first object file to obtain the corresponding main program includes: The logical calculation processing program in the first object file is compiled according to the first preset compilation instructions to obtain the corresponding main program.
3. The data and logic calculation separation method according to claim 1, characterized in that, The process of compiling the data and status field programs and the operation interface programs in the second object file to obtain the corresponding dynamic library includes: The data and status field programs and the operation interface programs in the second object file are compiled according to the second preset compilation instructions to obtain the corresponding dynamic library.
4. The data and logic calculation separation method according to claim 1, characterized in that, The operation interface for obtaining the data and the status field from the dynamic library performs corresponding operations on the data and the status field, including: By obtaining the operation interfaces related to the data and the status fields in the dynamic library through the preset acquisition interface, the corresponding operations are performed on the data and the status fields.
5. A data and logic computing separation device, applied to a SAN cluster controller, characterized in that, include: The file calling module is used to call a first target file and a second target file. The first target file is used to store pre-developed logic calculation processing programs related to logic calculation, and the second target file is used to store pre-developed data and status field programs and operation interface programs related to data and status fields, so as to separate the logic calculation processing programs related to logic calculation from the data and status field programs synchronized with the cluster system. The logic calculation processing programs include software upgrades and dynamic library opening and closing processes related to using dynamic libraries. The first program compilation module is used to compile the logical calculation processing program in the first object file to obtain the corresponding main program; The second program compilation module is used to compile the data and status field program and the operation interface program in the second object file to obtain the corresponding dynamic library; The running module is used to, when running the main program and the dynamic library, open the dynamic library by calling the opening operation interface through the main program to obtain the operation interface related to the data and the status field in the dynamic library, and perform corresponding operations on the data and the status field. The first monitoring module is used to monitor whether there are any problems with the logic calculation processing program; The first upgrade processing module is used to call the shutdown operation interface through the main program to shut down the dynamic library if the problem is detected in the logic calculation processing program. The second monitoring module is used to monitor whether the logic calculation processing program adds new logic; The second upgrade processing module is used to, if it detects that the logic calculation processing program has added the new logic, compile the new logic calculation processing program to obtain a new main program, and replace the main program with the new main program; the new logic calculation processing program is the logic calculation processing program with the added new logic. The third monitoring module is used to monitor whether the data, the status field, and the related operation logic need to be updated. The third upgrade processing module is used to recompile a new data and status field program to obtain a new dynamic library if it is detected that the data, the status field, and the related operation logic need to be updated. The module then calls the close operation interface through the main program to close the dynamic library and calls the open operation interface to open the new dynamic library to upgrade the dynamic library. The new data and status field program is the updated data and status field program.
6. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor for executing the computer program to implement the steps of the data and logic computation separation method as described in any one of claims 1 to 4.
7. A computer-readable storage medium, characterized in that, Used to store computer programs; wherein, when the computer programs are executed by a processor, they implement the steps of the data and logic calculation separation method as described in any one of claims 1 to 4.
Citation Information
Patent Citations
Data processing method and device, equipment, storage medium and product
CN114356341A