WO2024016850A1 - 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 - Google Patents
处理数据冲突的方法、系统、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- WO2024016850A1 WO2024016850A1 PCT/CN2023/097524 CN2023097524W WO2024016850A1 WO 2024016850 A1 WO2024016850 A1 WO 2024016850A1 CN 2023097524 W CN2023097524 W CN 2023097524W WO 2024016850 A1 WO2024016850 A1 WO 2024016850A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- data set
- target
- configuration
- base table
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000012545 processing Methods 0.000 title claims abstract description 47
- 230000008676 import Effects 0.000 claims abstract description 28
- 230000004044 response Effects 0.000 claims abstract description 13
- 230000015654 memory Effects 0.000 claims description 24
- 238000009795 derivation Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 claims 1
- 230000008569 process Effects 0.000 description 38
- 238000010586 diagram Methods 0.000 description 8
- 238000013508 migration Methods 0.000 description 7
- 230000005012 migration Effects 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000007726 management method Methods 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000014616 translation Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000013439 planning Methods 0.000 description 1
- 238000013515 script Methods 0.000 description 1
- 238000013024 troubleshooting Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Definitions
- the invention relates to the field of computer technology, and in particular to a method, system, electronic device and computer-readable storage medium for handling data conflicts.
- the configuration data is usually set in a pre-built independent configuration environment.
- business analysts who provide insurance services may need to set configuration data due to business needs, including insurance products, insurance plans, rate tables, policy generation rules, translations, code tables, index configurations, etc.
- configurations The data needs to be set up in an independent configuration environment first, and then can be released to the target environment running the insurance business system through the data migration tool.
- the configuration environment version is higher than the target environment version. During the data migration process, only the configuration data is released without upgrading the application and corresponding database to the target environment. This will cause the database fields used in the configuration environment to be missing in the target environment.
- Embodiments of the present application provide a method, system, electronic device and computer-readable storage medium for handling data conflicts, which solves the problem of configuration data release failure caused by data conflicts and ensures that the configuration data in the configuration environment is successfully released to In the target environment, it ensures the smooth migration of configuration data from the configuration environment to the target environment, which is beneficial to improving the efficiency of business service update release.
- embodiments of the present application provide a method for handling data conflicts, which is applied to a system with a business configuration module, an export module and an import module.
- the export module runs in the configuration environment
- the import module runs in the target environment.
- the method includes:
- the business configuration module sends an export request for target configuration data to the export module, where the target configuration data is data generated by the user setting parameters for the business services provided by the system;
- the export module responds to the export request, obtains the target configuration data and the data description file generated corresponding to the target configuration data, and sends it to the business configuration module.
- the data description file includes the source data set related to the target configuration data, and the source data for each source data. Description of the relationships between centralized data tables;
- the business configuration module sends the received configuration data, data description file and publishing request to the import module;
- the import module responds to the publishing request, determines the processing result of the data table data with data conflicts in the target environment based on the data description file, and applies the received target configuration data to the processed data table data.
- the system can first compare the data contents of the data tables of each data set related to the target configuration data in the target environment with the data tables of each data set related to the configuration data in the configuration environment, and identify any conflicts in the target environment. After the data table is processed accordingly, the configuration data that needs to be released is imported into the target environment.
- the configuration data can be successfully released to the target environment, and the release will not fail due to data content conflicts in some data tables of the target environment and the configuration environment, which is conducive to improving the update efficiency of business services.
- the above solution can facilitate the operation of business personnel without the participation of developers.
- Business personnel can independently complete the process of setting business-related configuration data and publishing corresponding configuration data. Therefore, it is also conducive to improving the management efficiency of corresponding business services by business personnel.
- the export module includes preset configuration data export rules, and in response to the export request, the export module generates a data description file corresponding to the target configuration data based on the export rules.
- the above export rule may be, for example, a preset data description file template, which is used to define the content of the data description file to be generated when exporting configuration data.
- the format of the data description file may be, for example, an xml file, etc., which is not limited here.
- the derivation rules at least include: presetting at least one association relationship for each data table in the configuration environment database, and determining the base table in each preset association relationship, where the base table Corresponds to the business services provided by the system.
- the base table and the associated data table in each association relationship are associated through foreign keys.
- determining the processing results of the data table data with data conflicts in the target environment based on the data description file includes: the import module determines the processing results of the data tables in each source data set based on the data description file.
- the description of the correlation between each source data set is obtained from the target environment database, and the correlation between the data tables in the target data set is in line with the description of the correlation between the data tables in the corresponding source data set; the import module Compare the target data set with the corresponding source data set, and determine the processing results for data table data with data conflicts in the target environment based on the comparison results.
- the target data set is compared with the corresponding source data set, and the processing results for the data table data with data conflicts in the target environment are determined based on the comparison results, including:
- the unique key of the base table of the target data set is consistent with the unique key of the base table of the source data set, and the primary key of the base table of the target data set is The key is consistent with the primary key of the source data set base table. It is determined that when the source data set base table and the target data set base table include other fields that are inconsistent, the data content of the target data set base table is updated to the source data set base table. data content;
- the unique key of the base table of the target data set is consistent with the unique key of the base table of the source data set, but the primary key of the base table of the target data set is inconsistent with the primary key of the base table of the source data set, be sure to update the data content of the base table of the target data set to The data content of the base table of the source data set, and modify the primary key of the base table of the target data set to the primary key of the base table of the source data set;
- the unique key of the base table of the target data set is inconsistent with the unique key of the base table of the source data set, and the first field corresponding to the unique key of the base table of the source data set does not exist in the base table of the target data set, determine whether Insert the first field into the table and update the data content under the unique key field in the source data set base table to the target data set base table;
- the unique key of the base table of the target data set is inconsistent with the unique key of the base table of the source data set, and the second field corresponding to the unique key of the base table of the source data set does not exist in the base table of the source data set, determine whether it is in the base table of the target data set. Delete the second field and the data content under the second field from the table.
- first field and second field are only descriptions of fields corresponding to unique keys under different execution conditions, and both refer to the unique keys in the base table of the target data set that are related to the base table of the source data set. corresponding field.
- the target data set is compared with the corresponding source data set, and the processing result of the data table data with data conflicts in the target environment is determined based on the comparison result, which also includes: if the target There is no unique key defined in the base table of the data set. Make sure to set the primary key of the base table of the target data set as the unique key of the base table of the target data set.
- the source data set base table when comparing and judging the source data set and the target data set, for example, you can first determine whether a unique key is defined in the target data set base table, and then further perform the above-mentioned source data set base table and target data set base table. Determine the unique key and primary key of the table. In this way, it can be ensured that the data content of the base table of the target data set can be analyzed more comprehensively, which is conducive to the effectiveness and accuracy of comparative judgment.
- the target data set is compared with the corresponding source data set, and based on the comparison result, the processing result of the data table data with data conflicts in the target environment is determined, which also includes: based on the target The foreign key in the base table of the data set compares the data content of the associated data table in the target data set with the data content of the associated data table in the source data table; based on the comparison results, determines the data content of the associated data table in the target data set. process result.
- the processing results of the data content of the associated data table in the target data set are determined based on the comparison results, including:
- the unique key of the related data table in the target data set is consistent with the unique key of the related data table in the source data set, and the primary key of the related data table in the target data set is consistent with the primary key of the related data table in the source data set, determine the related data table in the source data set. If the associated data table in the target data set contains other fields that are inconsistent, update the data content of the associated data table in the target data set to the data content of the associated data table in the source data set;
- the unique key of the related data table in the target data set is consistent with the unique key of the related data table in the source data set, but the primary key of the related data table in the target data set is inconsistent with the primary key of the related data table in the source data set, determine to centralize the target data.
- the data content of the related data table is updated to the data content of the related data table in the source data set, and the primary key of the related data table in the target data set is modified to the primary key of the related data table in the source data set;
- the unique key of the related data table in the target data set is inconsistent with the unique key of the related data table in the source data set, and there is no third field in the related data table in the target data set that corresponds to the unique key of the related data table in the source data set, determine whether Insert the third field into the related data table in the target data set, and update the data content under the unique key field in the related data table in the source data set to the related data table in the target data set;
- the unique key of the related data table in the target data set is inconsistent with the unique key of the related data table in the source data set, and the fourth field corresponding to the unique key of the related data table in the source data set does not exist in the related data table in the source data set, determine whether Delete the fourth field and the data content under the fourth field from the related data table in the target data set.
- third field and fourth field are only descriptions of fields corresponding to unique keys under different execution conditions, and both refer to the unique keys in the associated data set in the target data set and the associated data set in the source data set. corresponding fields.
- inventions of the present application provide a business service system.
- the system includes a business configuration module, an export module and an import module.
- the business configuration module is used to respond to the detected export operation and send target configuration data to the export module.
- Export request in which the target configuration data is the data generated by the user setting parameters for the business services provided by the system; and is used to respond to the detected publishing operation and send the received configuration data and data description file to the import module;
- the export module is used to respond to the export request sent by the business configuration module, obtain the target configuration data and the data description file generated corresponding to the target configuration data, and send it to the business configuration module, where the data description file includes the source data set related to the target configuration data. , and a description of the relationships between data tables in each source data set;
- the import module is used to determine the processing results of data table data with data conflicts in the target environment based on the data description file, and apply the received target configuration data to the processed data table data.
- embodiments of the present application provide an electronic device, including: one or more processors; one or more memories; one or more memories store one or more programs. When one or more programs are When one or more processors are executed, the electronic device is caused to execute the method for handling data conflicts provided by the first aspect.
- embodiments of the present application provide a computer-readable storage medium, including a computer program/instruction.
- the computer program/instruction is executed by a processor, the method for handling data conflicts provided in the first aspect is implemented.
- Figure 1 shows a schematic diagram of a scenario for publishing business-related configuration data in the target environment.
- Figure 2 shows a scenario for publishing business-related configuration data in the target environment provided by the embodiment of the present application. picture.
- FIG. 3 shows a schematic flowchart of the implementation of a method for handling data conflicts provided by an embodiment of the present application.
- FIG. 4 shows a schematic flowchart of data conflict judgment and processing related to step 310 in the process shown in FIG. 3 .
- Figure 5 shows a schematic structural diagram of a data set provided by an embodiment of the present application.
- Figure 6 shows a schematic structural diagram of a business service system provided by an embodiment of the present application.
- Figure 7 shows a schematic structural diagram of a server provided by an embodiment of the present application.
- Database used to store a large number of data entities.
- Database design is the process of planning and structuring the data entities in the database and the relationships between these data entities.
- the data table consists of three parts: the table name, the fields in the table, and the records of the table. Designing the data table structure (hereinafter referred to as the table structure) is to define the data table file name, determine which fields the data table contains, the field names, field types, and widths of each field, and input these data into the computer.
- Data set is a collection of multiple interrelated data tables.
- Base table refers to the basic table in a data set that is related to other data tables through foreign keys.
- Primary key refers to one column or a combination of multiple columns in the data table, whose value can uniquely identify each row in the table.
- Unique key is a unique identification field set to identify corresponding business fields according to business requirements.
- the primary key can be the identification code (such as ID) set by each user in the data table, and the unique key can be set to the ID number or name of the policy holder in the data table.
- Foreign keys refer to fields in one data table that are used to relate to other data tables.
- a data table can be associated with the primary keys of other tables through foreign keys to achieve association with other data tables, and then obtain field text and other content in other data tables, or insert, delete, and change related data content in other tables/ Modification etc.
- the primary key uniquely identifies each record in the data table;
- the foreign key can be understood as a copy of the primary key, which is copied from the parent table and is used to establish the relationship between the parent table and the child table; and
- the unique key is used to ensure the uniqueness of a value in the data table.
- Cascading in the form business, refers to creating an association between one data table and another or multiple data tables, so that the form can display its related data in a hierarchical view.
- Figure 1 shows a schematic diagram of a scenario for publishing business-related configuration data in a target environment.
- this scenario includes a terminal and a server.
- the configuration server provides a configuration environment for setting business-related configuration data
- the business server provides a target environment for running the business service system.
- the business service system running in the target environment may be an insurance business system, for example.
- the configuration environment can have the same configuration parameters and database as the target environment to provide a simulated target environment for developers to set corresponding configuration data based on business needs fed back by business analysts.
- this application provides a method for handling data conflicts.
- this method predefines the association between the data tables in the configuration environment and defines the base table in the data set formed by the mutually related data tables.
- you can preset export rules for configuration data for example, by presetting a data description file template to define the content of the data description file that needs to be generated when exporting configuration data.
- the configuration data needs to be released to the target environment, the configuration data and the corresponding generated data description file can be imported into the target environment, so that data conflicts between the target environment and the configuration environment can be identified based on the data description file.
- first perform corresponding data processing on the corresponding data table data in the target environment and then apply the configuration data to the processed data table in the target environment to complete the release process of the configuration data in the target environment.
- the data description file generated when configuring data can include a data set formed by the base table and associated data table related to the configuration data, a table file describing the relationship between the data tables in each data set, and the export conditions corresponding to each data set, etc. , where the base table and associated data table can be obtained from the configuration environment database based on the association relationship and base table defined above.
- the business service system can add publishing operation-related controls on the configuration page used to set business-related configuration data.
- users can directly perform the publishing operation after completing the settings of the corresponding business configuration data on the configuration page, and publish the configuration data to the target environment, which greatly improves the efficiency of publishing configuration data, helps reduce the workload of developers, and Convenient for business personnel to operate.
- business personnel and developers can be understood as management users of the business service system, that is, such users manage the business services provided by the business service system, including setting corresponding configuration data for business-related modules.
- the configuration data can be generated based on the user's setting operation on the corresponding configuration page before the user triggers the data export process.
- the user can set the configuration data of the corresponding business on the configuration page provided by the business service system running in the configuration environment.
- the configuration data can include insurance products, insurance plans, and rates. Tables, policy generation rules, translations, code tables, index configurations, etc.
- the user can choose to export the configuration data on the configuration page, for example, click the Export Data button on the configuration page.
- the above-mentioned configuration environment can run on the configuration/publishing server, and the above-mentioned target environment can run on the business server.
- the business server can be, for example, an insurance business server.
- the above configuration environment and target environment can run on the same server, and there is no limitation here.
- each data set (hereinafter referred to as source data) matched from the database corresponding to the configuration environment based on the above data description file can be matched in the target environment to the corresponding data table and data table field contents (hereinafter referred to as target data) ), and then the unique key, primary key and other fields in the matched target data can be compared to determine whether there is a data conflict.
- This data conflict may include, for example, situations where the source data is consistent with the unique key of the corresponding data table in the target data and the primary key is consistent, the source data is consistent with the unique key of the corresponding data table in the target data but the primary key is inconsistent, etc.
- Figure 2 provides a schematic diagram of a scenario for publishing business-related configuration data in a target environment according to an embodiment of the present application.
- this scenario includes a terminal 100a, a terminal 100b, a configuration server 200a and a service server 200b.
- the user of the terminal 100a may be a developer, and the user of the terminal 100b may be a business analyst.
- Developers can access the configuration server 200a through the terminal 100a, and preset export rules in the configuration environment provided by the configuration server 200a. For example, developers can pre-define the correlation between the data tables in the configuration environment in the configuration environment, and define mutual relationships. The associated data tables form the base table in the data set. Furthermore, export rules for exporting configuration data can be defined, and the export rules can be limited to when exporting configuration data, a data description file corresponding to the configuration data needs to be generated and exported together.
- an XML-type data description file template can be preset in the configuration environment, and the template can define the contents of the data description file generated when exporting configuration data.
- the content of the file may store at least one data set related to the configuration data, and a table file describing the relationship between the data tables in each data set.
- Each data set can include a base table and other data tables associated with the base table.
- the table file can record the name, primary key, unique key, foreign key and other relevant parameters of the base table and associated data tables in each data set.
- the description file can also include the export conditions of each data set, for example, setting the ID corresponding to the parent table at the highest level in each data set as the export condition.
- the business analyst can initiate an export operation of the corresponding configuration data through the terminal 100b, so as to convert the configuration data in the configuration environment according to the above preset
- the set data description file is matched to the corresponding data set, and then the source data packet is generated together with the configuration data and the data description file and returned to the terminal 100b.
- the business analyst can initiate a publishing operation and publish the obtained data package containing the configuration data and related data sets to the target environment provided by the business server 200b, so as to apply the above configuration in the business service system running in the target environment. data.
- the terminal 100b can call the export API of the configuration environment to send request parameters for the corresponding configuration data to the configuration server 200a.
- the request parameters may include, for example, the data to be exported. Set name and parameters that meet the corresponding data set export conditions.
- the exported data set is related to the exported configuration data.
- the terminal 100b can call the import API of the target environment to send the data package and the export request to the configuration server 200b to trigger the determination of data conflicts in the target environment, perform corresponding data processing, and perform the corresponding data processing in the target environment.
- the publishing process such as the application of configuration data is completed in the environment. The details will be described in detail below and will not be described in detail here.
- the solution for handling data conflicts provided by the embodiment of the present application can effectively It greatly simplifies the implementation process of business analysts configuring corresponding business service data on the business service system. For example, without developer intervention, business analysts can set configuration data on the corresponding configuration interface provided by the business service system and publish the configuration data to the target environment where business processing is performed.
- This application solution can effectively avoid the problem of configuration data release failure caused by data conflicts, and is conducive to improving the user experience of users such as business analysts.
- the solution for handling data conflicts provided by the embodiments of this application can also effectively reduce the workload of developers. Developers only need to write preset data description files as export rules through code in the configuration environment in advance, and add the corresponding
- the business configuration page is open to business analysts to set configuration parameters independently, which can meet the needs of business analysts to set configuration data based on business needs, and also greatly improves the efficiency of setting configuration data related to business.
- the applicable business service system for the method of handling data conflicts includes functional modules running on the business server 200b and functional modules running on the terminal 100b.
- the business server 200b can also be a desktop computer, a laptop computer, a handheld computer, a netbook, or other electronic devices embedded or coupled with one or more processors, or capable of accessing the network.
- the terminal 100b may be, for example, a desktop computer, a notebook computer, a tablet computer, a mobile phone, or other electronic device, which is not limited here.
- the terminal 100a used to preset export rules in the configuration environment provided to the configuration server 200a is an electronic device such as a desktop computer, a notebook computer, a tablet computer, a mobile phone, etc.
- the configuration server 200a may also be a desktop computer, a laptop, etc.
- Computers, handheld computers, netbooks and other electronic devices embedded or coupled with one or more processors or capable of accessing the network are not limited here.
- Figure 3 shows a schematic flowchart of an implementation of a method for handling data conflicts according to an embodiment of the present application.
- the process shown in Figure 3 mainly involves the interaction between the terminal 100b and the configuration server 200a and the business server 200b.
- the process includes the following steps:
- the configuration server 200a obtains the data description file template preset for the configuration environment.
- developers can set export rules for configuration data in the configuration environment in advance by writing code, such as defining a data description file template for the configuration data that needs to be exported.
- the data description file template may be, for example, an xml file that defines the data set table structure, the association of each data table in the data set, and the corresponding data set export conditions.
- developers can standardize the xml file format by designing the xml schema definition (xml schema definition). In this way, when different business-related configuration data are exported to the configuration server 200a, a unified xml file format can be used to generate the source data package, so as to publish it to the target environment.
- the defined data set table structure refers to the record and description of the name of each data set, data table name, field, as well as the data table association relationship, base table data, export conditions, etc. in each data set.
- the structure of the statistical table Among them, the relationship between data tables in each data set can be reflected by foreign key names and foreign key values.
- the database where each data table in the data set is located includes the database corresponding to the configuration environment and the database corresponding to the target environment, and is not limited here.
- each data table in the data set which is used to use foreign keys to determine the association between the base table and other data tables, where the base table is the parent table in the corresponding data set.
- Other data tables in this data set are subtables at different levels of the base table.
- the primary key, unique key, etc. of the base table in a data set can be considered as the primary key, unique key, etc. of the corresponding data set.
- the name, primary key, unique key, base table data, etc. of each data set that has been defined can be recorded in the above definition. in the data set table structure.
- data table A located at the first level from top to bottom is the base table and is located at the second level.
- Data table B and data table C at the third level are sub-tables of base table A.
- Data table D and data table E at the third level are sub-tables of data table B.
- Data table F is a sub-table of data table C.
- the data Tables D, E, and F are also subtables of base table A.
- base table A can be a data table that defines rule events.
- data table B which is a sub-table of data table A, can be a data table driven by defined rules
- data table C can be a data table that defines rule event types.
- data table D as a sub-table of data table B may be a data table that defines a rule group, and the sub-table of data table D may also be a data table that defines rules under each rule group, etc. There are no restrictions here.
- the foreign key in the child table points to the primary key in the parent table, and the parent table is the foreign key data table of the child table.
- the defined data set export conditions are the conditions for exporting a certain data set.
- the export conditions corresponding to different data sets can be different.
- the subordinate sub-modules of each insurance business configuration module can respectively correspond to a data set.
- the insurance rules module can include rule group sub-modules, rule sub-modules, rule event sub-modules, etc. Different sub-modules will have their corresponding data sets in the database, and these data sets can respectively correspond to different export conditions.
- the data set corresponding to the rule sub-module can be exported based on RuleId
- the data set corresponding to the rule group sub-module can be exported based on GroupId
- the data set corresponding to the rule event sub-module can be exported based on EventId.
- the export conditions can be set to simple parameters, such as the above-mentioned RuleId, etc. Therefore, when exporting a data set, there is no need to verify the export conditions through various calculations. As long as the passed parameters meet the preset export conditions, the corresponding data set can be exported. If the parameters passed when exporting the data set are incorrect, the data set cannot be exported. For example, the RuleId passed when exporting the data set is 0000, but there is no data set with RuleId 0000 in the database, and the corresponding exported data set will be empty.
- the design xml schema definition can give specifications and constraints for matching data sets for configuration data in export rules and defining export conditions.
- the designed XML schema definition can define that only ⁇ keys>, ⁇ columns>, ⁇ orders>, and ⁇ exceptions> subtags are allowed to appear under the ⁇ table> tag. If other subtags appear, an error will be reported. In this way, the probability of errors when matching data sets for configuration data can be reduced and the efficiency of matching data sets can be improved.
- the preset configuration data export rules in the configuration environment can also be implemented through structured query language (sql), such as pre-writing a ".sql” file, which is not limited here.
- sql structured query language
- the terminal 100b detects the export operation.
- the business analyst completes the configuration operation on the configuration page provided by the terminal 100b.
- the corresponding configuration data is also generated on the configuration server 200a
- the corresponding export button can be displayed on the configuration page of the terminal 100b.
- the business analyst can also check the completed business-related configuration data and related data sets on the configuration page provided by the terminal 100b, and click the export button, so that the terminal 100b reports to the configuration server 200a sends an export request, which is not restricted here.
- the terminal 100b calls the export API and sends an export request to the configuration server 200a.
- the export request includes corresponding request parameters, which include, for example, the business analyst’s
- the terminal 100b On the configuration page, select the name of the data set corresponding to the configuration data to be published and the export conditions of the corresponding data set.
- the terminal 100b can call the export API provided by the configuration server 200a and send an export request to request the configuration server 200a to export the configuration data to be published.
- the configuration server 200a can return the source data packet generated for the corresponding configuration data to the terminal 100b. The details will be described in detail in steps 304 to 306 below, and will not be described again here.
- the configuration server 200a generates a corresponding data description file based on the request parameters in the export request.
- the configuration server 200a can match each data set related to the configuration data to be released based on the request parameters in the export request, and then match the data set based on the definition of the data set table structure in the preset data description file template.
- the name of each data set, data table name, fields, and the relationship between the data tables in each data set are written into the data set table.
- the corresponding data description file can be generated by combining the data set table with the predefined association relationships and export conditions of each data table in the data set.
- the configuration server 200a can generate a data description file corresponding to the received request parameters according to the data description file template obtained in the above step 301.
- the configuration server 200a exports relevant data table data based on the generated data description file and generates a source data package.
- the configuration server 200a can export relevant data table data in each data set from the configuration environment database according to the data description file generated in step 304, including the fields in each data table and the values under the corresponding fields, for example Primary key, unique key value, etc.
- the configuration server 200a can correspondingly generate a text file used to describe each data table, such as a comma-separated values (Comma-Separated Values, CSV) file, also known as a character-separated value file.
- CSV Common-Separated Values
- the configuration server 200a may package the above-mentioned data description file and the CSV file describing each data table to generate a source data package.
- the configuration server 200a returns the source data packet to the terminal 100b.
- the configuration server 200a may send the generated source data packet to the terminal 100b in response to the export request sent by the terminal 100b.
- the terminal 100b detects a publishing operation.
- the terminal 100b can jump to the publishing page after receiving the source data packet returned by the configuration server 200a, and then the business analyst can click the publishing button on the publishing page to perform the publishing operation. After detecting the publishing operation, the terminal 100b can send the received source data packet to the business server 200b, and send an export request to the business server 200b.
- the terminal 100b calls the import API and sends the source data packet and release request to the business server 200b.
- the terminal 100b when it detects the above publishing operation, it can call the import API provided by the business server 200b, send a request to publish the configuration data to the business server 200b, that is, an export request, and send the received source data to the business server 200b. Bag.
- the business server 200b receives and parses the source data packet, and matches the corresponding target data set from the target environment database based on the parsed base table data and associated sub-data table data in the source data set.
- the business server 200b receives the source data packet and can read and parse the source data packet into memory.
- the data description file parsed from the source data package includes each data set table and the relationship between the data tables in each data set.
- Each CSV file parsed from the source data package can correspondingly describe the corresponding data table data.
- each data set parsed from the source data package is called the source data set below, and the data table corresponding to each CSV file is called the source data table.
- the business server 200b can obtain the data from the target environment data according to the parsed data description file.
- the library reads the corresponding target data set into memory.
- the process of reading the corresponding target data set from the target environment database according to the data description file includes: the business server 200b can first match the source data set and export conditions in the target environment database according to the source data set and export conditions described in the parsed data description file.
- the base table data corresponding to the base table in the data set for example, the data table matching the primary key or unique key of the base table of the source data set is obtained into the memory as the base table of the target data set.
- the data of all parent tables associated with the foreign keys of the base table and all related child tables are obtained into the memory.
- the business server 200b can merge the base table data and associated sub-data table data matched from the target environment database into the target data set.
- the business server 200b can determine whether the structure of each target data table obtained above and the data table with the same name in each data table parsed in the source data packet are the same. If the source data table name does not match the same target data table name, the business server 200b will ignore the parsed source data table.
- the base table in each data set will define its foreign key table and foreign keys, so the corresponding foreign key table can be found through the foreign keys in the base table.
- the foreign key fields and foreign key values matching each base table data can be located in the target environment database, and the data table data associated with the base table, that is, the data of the foreign key table, can be found through the foreign key values.
- the business server 200b compares the source data set with the target data set, and performs corresponding data processing on each data table in the target data set based on the comparison results.
- the business server 200b can compare each source data set in the source data package parsed into the memory with the corresponding target data set obtained from the target environment database, for example, compare the base table data of the source data set with the target data set. Compare the base table data of the data set, including comparing the unique keys and primary keys of the source data set base table and the target data set base table.
- the unique keys of the two can be compared first, and then the primary keys of the two can be compared.
- Figure 5 includes:
- step 310a Determine whether a unique key is defined in the base table of the target data set. If there is no unique key defined in the base table of the target data set, that is, the judgment result is No, then upgrade the primary key in the base table to a unique key. If the judgment result is yes, continue to execute the following step 310b.
- step 310b Determine whether the unique keys and primary keys of the source data set base table and the target data set base table are consistent. If the unique keys and primary keys of the source data set base table and the target data set base table are consistent, that is, the judgment result is yes, then step 310c is further performed to determine whether other fields are consistent. If the judgment result is no, continue to execute the following step 310d.
- the base table of the source data set and the base table of the target data set include other inconsistent fields. If the judgment result is yes, the data content of the target data base table is updated, that is, the data content of the source data set base table is updated to the data content of the target data set base table; if the judgment result is no, it indicates that the source data set base table is consistent with the data content of the target data set base table. If other fields in the base table of the target data set are consistent and do not need to be updated, the data content of the base table of the target data set will not be updated.
- inconsistent fields refer to the situation where the values of other fields are inconsistent, and the names of the fields correspond to the same, that is, the values of the fields with the same name are different, which will not be described again here.
- step 310d Determine whether the unique keys of the base table of the source data set and the base table of the target data set are consistent but the primary keys are inconsistent. If the unique keys of the source data set base table and the target data set base table are consistent but the primary keys are inconsistent, that is, the judgment result is yes, update the data content of the target data base table, and modify the primary key of the source data set base table to the target data set. The primary key of the base table. If the judgment result is no, continue to execute the following step 310e.
- step 310e Determine whether the unique key of the base table of the source data set is inconsistent with that of the base table of the target data set, and the unique key field does not exist in the base table of the target data set. If the unique keys of the base table of the source data set and the base table of the target data set are inconsistent, and the target data set If the unique key field does not exist in the base table, that is, if the judgment result is yes, then the field corresponding to the unique key and the data content under the field will be inserted into the base table of the target data set. If the judgment result is no, continue to execute the following step 310f.
- step 311 Determine whether the unique keys of the source data set base table and the target data set base table are inconsistent, and the displacement key field does not exist in the source data set base table. If the unique key of the source data set base table is inconsistent with the target data set base table, and the displacement key field does not exist in the source data set base table, that is, the judgment result is yes, then delete the unique key field in the target data set base table. and the data content under this field. If the judgment result is no, it means that there is no data conflict between the configuration environment and the target environment, and this process ends. The following step 311 may be continued.
- the business server 200b can also dynamically update the foreign keys of the specified table, for example, add a foreign key to the specified field in the processed base table, which is not done here. Repeat.
- the business server 200b completes the release of the configuration data in the target environment based on the processed target data set.
- the business server 200b After the business server 200b completes the above step 310 and completes the corresponding data processing on the target data set, it can apply the configuration data to be released to each target data set based on the processed target data set, and update it to in the target environment database. Therefore, when responding to the business request from the front end of the business service system, the business server 200b can call the corresponding data set in the target environment database and process the corresponding business with the published configuration data, which will not be described in detail here.
- the business server 200b can record the data before and after the above insertion, update, deletion, etc. processing, as well as the original data.
- the data before and after the above insertion, update, deletion, etc., as well as the original data can be reported in json format, where the inserted data record is InsertRecordMap, the deleted data record is DeleteRecordMap, the updated data record is UpdateRecordMap, etc.
- the data processing process in the data table does not need to be recorded.
- the method for handling data conflicts provided by the embodiment of the present application can first ensure that the configuration data in the configuration environment is smoothly released to the target environment, thereby avoiding configuration errors caused by data conflicts.
- the corresponding business services can therefore provide corresponding services based on the loaded or updated related configuration data.
- this application can realize the release operation of configuration data directly on the configuration page, which is beneficial to improving the efficiency of releasing configuration data and reducing the workload of developers. It also facilitates business personnel to operate the release of configuration data by themselves, which is beneficial to Improve the efficiency of business personnel's management of corresponding businesses.
- the method for handling data conflicts provided by the embodiment of the present application only needs to perform the process of preset export rules once, that is, the above step 301 can only be executed once when the process shown in Figure 3 is implemented for the first time, and the configuration server 200a can In the subsequent process of publishing the configuration data to the target environment, the configuration data and corresponding data sets can be exported according to the preset export rules.
- the business server 200b can automatically identify data conflicts when receiving the imported configuration data and corresponding data sets. And perform corresponding data processing on the corresponding data tables in the target environment.
- the business service system can automatically handle these data conflicts without manual intervention, thus saving the operation and maintenance costs of the business service system.
- the business server 200b can also provide details of the data changes before and after the data processing when the business server 200b performs corresponding data processing according to the identified data conflicts, so as to facilitate the search for relevant data when troubleshooting errors later.
- Figure 6 shows a schematic software structure diagram of a business service system according to an embodiment of the present application.
- the business service system 600 may include a business configuration module 601, an export module 602, and an import module 603.
- the business service system 600 may be an insurance business system that provides a platform for insurance business, etc., which is not limited here.
- the business configuration module 601 can run on the terminal 100b to provide a configuration page to business personnel, and the business personnel can set business-related configuration data on the configuration page, and can also operate on the configuration page to export configuration data from the configuration environment and Publish configuration data to the target environment, etc. It can be understood that the business configuration module 601 can also run on the terminal 100a for developers to preset configuration data export rules, or to set configuration data on behalf of business personnel and publish configuration data in the target environment.
- the export module 602 please refer to the relevant descriptions in the above steps 302 and 303, and will not be described again here.
- the export module 602 can run on the configuration server 200a, and is used to obtain the data description file template preset by the developer in the configuration environment, and is used to interact with the configuration environment database to obtain the corresponding configuration data according to the relevant parameters of the export request sent by the terminal 100b. , and export related data sets, associated data table data in each data set, and the association relationships formed by foreign keys between the base table and other associated data tables in each data set, etc., generate corresponding data description files and export the configuration environment together with the configuration data.
- the export module 602 please refer to the relevant descriptions in the above steps 301, 304 and 306, and will not be described again here.
- the import module 603 can run on the business server 200b and is used to receive and parse the source data packet forwarded by the terminal 100b.
- the source data packet includes the above-mentioned configuration data to be published to the target environment and the corresponding generated data description file.
- the import module 603 can then interact with the target environment database according to the parsed data description file to obtain the target data base table and other related data table data to form a target data set, and then compare the target data set with the source data set, and based on the comparison results Perform related processing on relevant data table data in the target data set, etc.
- the export module 603 please refer to the relevant descriptions in the above steps 309 to 311, and will not be described again here.
- the process of releasing configuration data from the configuration environment to the target environment does not require developers to use data migration tools to write corresponding codes, and this process During the release process, the business service system can handle data conflicts between the configuration environment and the target environment by itself.
- Figure 7 shows a schematic structural diagram of a server 200 according to an embodiment of the present application.
- the server 200 may be the above-mentioned configuration server 200a that provides a configuration environment, or it may be the above-mentioned service server that provides a target environment. It can be understood that some modules of the business service system can be run on the server 200.
- the export module 602 of the business service system 600 shown in Figure 6 is run on the configuration server
- the import module of the business service system 600 shown in Figure 6 is run on the business server. 603 etc.
- the export module 602 and the import module 603 of the business service system 600 can also run on the same server 200, and there is no limitation here.
- the server 200 may include one or more processors 204 , a system control logic 208 coupled to at least one of the processors 204 , and a system memory coupled to the system control logic 208 .
- processors 204 may include one or more processors 204 , a system control logic 208 coupled to at least one of the processors 204 , and a system memory coupled to the system control logic 208 .
- system memory coupled to the system control logic 208 .
- NVM non-volatile memory
- processor 204 may include one or more single-core or multi-core processors. In some embodiments, processor 204 may include any combination of general-purpose processors and special-purpose processors (eg, graphics processors, applications processors, baseband processors, etc.). In an embodiment in which the server 200 adopts an eNB (Evolved Node B, enhanced base station) 101 or a RAN (Radio Access Network, radio access network) controller 102, the processor 204 can be configured to execute various conforming embodiments, For example, the embodiments shown in Figures 2 to 6.
- eNB evolved Node B, enhanced base station
- RAN Radio Access Network, radio access network
- system control logic 208 may include any suitable interface controller to provide any suitable interface to at least one of processors 204 and/or any suitable device or component in communication with system control logic 208 .
- system control logic 208 may include one or more memory controllers to provide an interface to system memory 212 .
- System memory 212 may be used to load and store data and/or instructions.
- memory 212 of server 200 may include any suitable volatile memory, such as suitable dynamic random access memory (DRAM).
- DRAM dynamic random access memory
- NVM/memory 212 may include one or more tangible, non-transitory computer-readable media for storing data and/or instructions.
- the NVM/memory 212 may include any suitable non-volatile memory such as flash memory and/or any suitable non-volatile storage device, such as HDD (Hard Disk Drive), CD (Compact Disc) , CD) drive, DVD (Digital Versatile Disc, Digital Versatile Disc) drive at least one.
- NVM/storage 212 may comprise a portion of the storage resources on the device on which server 200 is installed, or it may be accessed by the device but is not necessarily part of the device. For example, NVM/storage 212 may be accessed over the network via network interface 220.
- system memory 212 and NVM/storage 212 may include temporary and permanent copies of instructions 224, respectively.
- Instructions 224 may include instructions that, when executed by at least one of processors 204, cause server 200 to implement the methods illustrated in Figures 3-4.
- instructions 224, hardware, firmware, and/or software components thereof may additionally/alternatively be located in system control logic 208, network interface 220, and/or processor 204.
- Network interface 220 may include a transceiver for providing a radio interface for server 200 to communicate with any other suitable devices (such as front-end modules, antennas, etc.) over one or more networks.
- network interface 220 may be integrated with other components of server 200.
- network interface 220 may be integrated with at least one of processor 204 , system memory 212 , NVM/storage 212 , and a firmware device (not shown) with instructions that when at least one of processor 204 executes said When instructed, the server 200 implements the above-mentioned methods shown in FIGS. 2 to 6 .
- Network interface 220 may further include any suitable hardware and/or firmware to provide a multiple-input multiple-output radio interface.
- network interface 220 may be a network adapter, a wireless network adapter, a telephone modem, and/or a wireless modem.
- At least one of the processors 204 may be packaged with logic for one or more controllers of the system control logic 208 to form a system in package (SiP). In one embodiment, at least one of the processors 204 may be integrated on the same die with logic for one or more controllers of the system control logic 208 to form a system on a chip (SoC).
- SiP system in package
- SoC system on a chip
- Server 200 may further include input/output (I/O) devices 232 .
- I/O devices 232 may include The user interface enables the user to interact with the server 200; the design of the peripheral component interface enables the peripheral components to also interact with the server 200.
- the server 200 further includes a sensor for determining at least one of environmental conditions and location information related to the server 200 .
- the user interface may include, but is not limited to, a display (e.g., a liquid crystal display, a touch screen display, etc.), a speaker, a microphone, one or more cameras (e.g., a still image camera and/or video camera), a flashlight (e.g., LED flash) and keyboard.
- a display e.g., a liquid crystal display, a touch screen display, etc.
- a speaker e.g., a speaker
- a microphone e.g., a microphone
- one or more cameras e.g., a still image camera and/or video camera
- a flashlight e.g., LED flash
- peripheral component interfaces may include, but are not limited to, non-volatile memory ports, audio jacks, and power interfaces.
- sensors may include, but are not limited to, gyroscope sensors, accelerometers, proximity sensors, ambient light sensors, and positioning units.
- the positioning unit may also be part of or interact with network interface 220 to communicate with components of the positioning network (eg, Global Positioning System (GPS) satellites).
- GPS Global Positioning System
- This apparatus may be specially constructed for the required purposes, or it may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer.
- Such computer programs may be stored on a computer-readable medium such as, but not limited to, any type of disk including floppy disk, optical disk, CD-ROM, magneto-optical disk, read-only memory (ROM), random access memory (RAM) , EPROM, EEPROM, magnetic or optical card, application specific integrated circuit (ASIC), or any type of medium suitable for storing electronic instructions, and each may be coupled to a computer system bus.
- the computers referred to in the specification may include a single processor or may employ an architecture involving multiple processors for increased computing power.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及计算机技术领域,具体涉及一种处理数据冲突的方法、系统、电子设备及计算机可读存储介质。其中的方法包括:业务配置模块响应于检测到的导出操作,向导出模块发送对目标配置数据的导出请求;导出模块响应于导出请求,获取目标配置数据以及对应于目标配置数据生成的数据描述文件,并发送给业务配置模块;业务配置模块响应于检测到的发布操作,将接收到的配置数据和数据描述文件发送给导入模块;导入模块响应于导出请求,基于数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,并在处理后的数据表数据上应用接收到的目标配置数据。本申请方案能够保障配置数据顺利发布到目标环境中,有利于提高业务服务的配置更新效率。
Description
本申请要求于2022年7月18日提交中国专利局、申请号为202210842930.6、申请名称为“处理数据冲突的方法、系统、电子设备及计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本发明涉及计算机技术领域,具体涉及一种处理数据冲突的方法、系统、电子设备及计算机可读存储介质。
在一些集成化较高、较为复杂的业务服务系统中,为了对一些因业务需要而设置的配置数据进行隔离、安全性管控,通常会在预先构建的独立的配置环境中设置该配置数据。例如,在保险业务系统中,提供投保服务的业务分析人员因业务需要可能需要设置的配置数据包括保险产品、保险方案、费率表、保单生成规则、翻译、码表、索引配置等,这些配置数据需先在独立的配置环境中完成设置,然后可以通过数据迁移工具发布到运行保险业务系统的目标环境中。
但是,在将配置数据发布到目标环境的过程中,往往会遇到配置环境与目标环境中的相应业务数据表存在唯一键冲突或者相应的数据库字段增减等问题,包括:
1)配置环境版本相对于目标环境版本更高,数据迁移过程中只发布配置数据而不对目标环境升级应用及相应的数据库等,则会导致在配置环境中使用的数据库字段在目标环境缺失。
2)同一业务数据在目标环境中的数据表主键已被修改,导致配置环境中待发布非配置数据与目标环境中的相应业务数据的数据表唯一键发生冲突。
3)配置数据中的一些数据对应的外键数据在目标环境中并不存在,导致配置数据的缺失。例如在保险业务审计字段中审计人员“张三”在目标环境中并不存在等。
基于上述问题,在发布配置数据的过程中,数据迁移工具的一些脚本可能会执行失败,因而无法正常完成配置数据向目标环境发布的过程,进而造成开发人员的工作量增加。
发明内容
本申请实施例提供了一种处理数据冲突的方法、系统、电子设备及计算机可读存储介质,解决了数据冲突导致的配置数据发布失败的问题,能够确保将配置环境中的配置数据顺利发布到目标环境中,保障了配置数据从配置环境到目标环境中的顺利迁移,有利于提高业务服务更新发布效率。
第一方面,本申请实施例提供了一种处理数据冲突的方法,应用于具有业务配置模块、导出模块和导入模块的系统,导出模块运行在配置环境中,导入模块运行在目标环境中,
该方法包括:
业务配置模块响应于检测到的导出操作,向导出模块发送对目标配置数据的导出请求,其中目标配置数据为用户对系统提供的业务服务设置参数生成的数据;
导出模块响应于导出请求,获取目标配置数据以及对应于目标配置数据生成的数据描述文件,并发送给业务配置模块,其中数据描述文件包括与目标配置数据相关的源数据集、以及对各源数据集中数据表之间的关联关系描述;
业务配置模块响应于检测到的发布操作,向导入模块发送接收到的配置数据和数据描述文件以及发布请求;
导入模块响应于发布请求,基于数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,并在处理后的数据表数据上应用接收到的目标配置数据。
即当需要将业务服务系统中对相应业务服务设置的配置数据,例如设置的保险产品、保险方案、费率表、保单生成规则等相关数据,发布用于处理前端业务数据的目标环境中时,系统可以先将目标环境中与该目标配置数据相关的各数据集的数据表、与配置环境中与该配置数据相关的各数据集的数据表进行数据内容比较,并对目标环境中的有冲突的数据表进行相应处理后,再需发布的配置数据导入目标环境中。
如此,可以确保配置数据能够顺利发布到目标环境中,不会因为目标环境与配置环境的部分数据表的数据内容冲突导致发布失败,有利于提高业务服务的更新效率。另外,上述方案可以便利业务人员操作,无需开发人员参与,业务人员可以独立完成设置业务相关配置数据以及发布相应配置数据的过程,因此也有利于提高业务人员对相应业务服务的管理效率。
在上述第一方面的一种可能的实现中,导出模块包括预设的配置数据导出规则,并且,导出模块响应于导出请求,基于导出规则生成对应于目标配置数据的数据描述文件。
上述导出规则例如可以是一个预设数据描述文件模板,该模板用来定义导出配置数据时需生成的数据描述文件内容。该数据描述文件的格式例如可以是xml文件等,在此不做限制。
在上述第一方面的一种可能的实现中,导出规则至少包括:对配置环境数据库中的各数据表预设至少一个关联关系,并确定预设的各关联关系中的基表,其中基表与系统提供的业务服务相对应。
在上述第一方面的一种可能的实现中,各关联关系中的基表与关联数据表通过外键关联。
在上述第一方面的一种可能的实现中,基于数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,包括:导入模块基于数据描述文件中对各源数据集中数据表之间的关联关系描述,从目标环境数据库中获取与各源数据集相应的目标数据集,其中目标数据集中数据表之间的关联关系符合相应源数据集中数据表之间的关联关系描述;导入模块将目标数据集与相应源数据集进行比较,并基于比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果。
在上述第一方面的一种可能的实现中,将目标数据集与相应源数据集进行比较,并基于比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,包括:
若目标数据集基表的唯一键与源数据集基表的唯一键一致、并且目标数据集基表的主
键与源数据集基表的主键一致,确定在源数据集基表与目标数据集基表包括不一致的其他字段的情况下,将目标数据集基表的数据内容更新为源数据集基表的数据内容;
若目标数据集基表的唯一键与源数据集基表的唯一键一致、但目标数据集基表的主键与源数据集基表的主键不一致,确定将目标数据集基表的数据内容更新为源数据集基表的数据内容、并将目标数据集基表的主键修改为源数据集基表的主键;
若目标数据集基表的唯一键与源数据集基表的唯一键不一致、且目标数据集基表中不存在对应于源数据集基表的唯一键的第一字段,确定在目标数据集基表中插入第一字段、并将源数据集基表中唯一键字段下的数据内容更新至目标数据集基表中;
若目标数据集基表的唯一键与源数据集基表的唯一键不一致、且源数据集基表中不存在对应于源数据集基表的唯一键的第二字段,确定在目标数据集基表中删除第二字段以及第二字段下的数据内容。
可以理解,上述目标数据集基表的唯一键与源数据集基表的唯一键一致、并且目标数据集基表的主键与源数据集基表的主键一致的条件下,需进一步确定在源数据集基表与目标数据集基表包括不一致的其他字段时,再更新目标数据集基表的内容。其中,不一致的其他字段,是指其他字段的值不一致,而字段的名称是对应相同的,即同名字段下的值不同的情形。如此,可以避免在源数据集基表与目标数据集基表的其他字段也都一致时更新数据内容的情形,有利于节约数据处理资源,提高发布配置数据的效率。
另外,应当理解,上述“第一字段”和“第二字段”仅是对不同执行条件下的唯一键对应字段的描述,均指目标数据集基表中与源数据集基表的唯一键相对应的字段。
在上述第一方面的一种可能的实现中,将目标数据集与相应源数据集进行比较,并基于比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,还包括:若目标数据集基表中未定义唯一键,确定将目标数据集基表的主键设置为目标数据集基表的唯一键。
在一些实施例中,在将源数据集与目标数据集进行比较判断时,例如可以先判断目标数据集基表中是否定义了唯一键,再进一步进行上述源数据集基表与目标数据集基表的唯一键和主键的判断。如此,可以保证能够较全面的分析到目标数据集基表的数据内容,有利于比较判断的有效性和准确性。
在上述第一方面的一种可能的实现中,将目标数据集与相应源数据集进行比较,并基于比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,还包括:基于目标数据集基表中的外键,将目标数据集中关联数据表的数据内容与源数据表中关联数据表的数据内容进行比较;根据比较的结果,确定对目标数据集中关联数据表的数据内容的处理结果。
在上述第一方面的一种可能的实现中,根据比较的结果,确定对目标数据集中关联数据表的数据内容的处理结果,包括:
若目标数据集中关联数据表的唯一键与源数据集中关联数据表的唯一键一致、并且目标数据集中关联数据表的主键与源数据集中关联数据表的主键一致,确定在源数据集中关联数据表与目标数据集中关联数据表包括不一致的其他字段的情况下,将目标数据集中关联数据表的数据内容更新为源数据集中关联数据表的数据内容;
若目标数据集中关联数据表的唯一键与源数据集中关联数据表的唯一键一致、但目标数据集中关联数据表的主键与源数据集中关联数据表的主键不一致,确定将目标数据集中
关联数据表的数据内容更新为源数据集中关联数据表的数据内容、并将目标数据集中关联数据表的主键修改为源数据集中关联数据表的主键;
若目标数据集中关联数据表的唯一键与源数据集中关联数据表的唯一键不一致、且目标数据集中关联数据表中不存在对应于源数据集中关联数据表的唯一键的第三字段,确定在目标数据集中关联数据表中插入第三字段、并将源数据集中关联数据表中唯一键字段下的数据内容更新至目标数据集中关联数据表中;
若目标数据集中关联数据表的唯一键与源数据集中关联数据表的唯一键不一致、且源数据集中关联数据表中不存在对应于源数据集中关联数据表的唯一键的第四字段,确定在目标数据集中关联数据表中删除第四字段以及第四字段下的数据内容。
上述关联数据表的比较过程,即下文实施例中描述的级联方式更新目标数据集中各数据表数据内容的过程,在此不做赘述。
可以理解,上述目标数据集中关联数据集的唯一键与源数据集中关联数据集的唯一键一致、并且目标数据集中关联数据集的主键与源数据集中关联数据集的主键一致的条件下,需进一步确定在源数据集中关联数据集与目标数据集中关联数据集包括不一致的其他字段时,再更新目标数据集中关联数据集的内容。其中,不一致的其他字段,是指其他字段的值不一致,而字段的名称是对应相同的,即同名字段下的值不同的情形。如此,可以避免在源数据集中关联数据集与目标数据集中关联数据集的其他字段也都一致时更新数据内容的情形,有利于节约数据处理资源,提高发布配置数据的效率。
另外,应当理解,上述“第三字段”和“第四字段”仅是对不同执行条件下的唯一键对应字段的描述,均指目标数据集中关联数据集中与源数据集中关联数据集的唯一键相对应的字段。
第二方面,本申请实施例提供了一种业务服务系统,系统包括业务配置模块、导出模块和导入模块,其中,业务配置模块用于响应检测到的导出操作,向导出模块发送对目标配置数据的导出请求,其中目标配置数据为用户对系统提供的业务服务设置参数生成的数据;并用于响应检测到的发布操作,将接收到的配置数据和数据描述文件发送给导入模块;
导出模块用于响应业务配置模块发送的导出请求,获取目标配置数据以及对应于目标配置数据生成的数据描述文件,并发送给业务配置模块,其中数据描述文件包括与目标配置数据相关的源数据集、以及对各源数据集中数据表之间的关联关系描述;
导入模块用于基于数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,并在处理后的数据表数据上应用接收到的目标配置数据。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;一个或多个存储器;一个或多个存储器存储有一个或多个程序,当一个或者多个程序被一个或多个处理器执行时,使得电子设备执行上述第一方面提供的处理数据冲突的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,包括计算机程序/指令,该计算机程序/指令被处理器执行时,实现上述第一方面提供的处理数据冲突的方法。
图1所示为一种在目标环境中发布业务相关配置数据的场景示意图。
图2所示为本申请实施例提供的一种在目标环境中发布业务相关配置数据的场景示意
图。
图3所示为本申请实施例提供的一种处理数据冲突的方法的实施流程示意图。
图4所示为与图3所示流程中步骤310相关的数据冲突判断及处理流程示意图。
图5所示为本申请实施例提供的一种数据集的结构示意图。
图6所示为本申请实施例提供的一种业务服务系统的结构示意图。
图7所示为本申请实施例提供的一种服务器的结构示意图。
为了便于理解本申请实施例提供的技术方案,下面相对本申请实施例涉及的一些相关领域术语的含义进行释明。
(1)数据库,用于存储大量的数据实体。数据库设计则是将数据库中的数据实体及这些数据实体之间的关系,进行规划和结构化的过程。
(2)数据表,是由表名、表中的字段和表的记录三个部分组成的。设计数据表结构(以下简称表结构)就是定义数据表文件名,确定数据表包含哪些字段、各字段的字段名、字段类型、及宽度,并将这些数据输入到计算机当中。
(3)数据集,是由多个相互关联的数据表形成的集合。
(4)基表,是指一个数据集中,通过外键关联其他数据表的基础表。
(5)主键,指的是数据表中一个列或多列的组合,其值能唯一地标识表中的每一行。
(6)唯一键,是为了业务需求识别相应业务字段而设置唯一标识字段。例如在一些保单数据表中,主键可以是该数据表中对应于各用户设定的身份识别编码(例如ID),唯一键可以设置为该数据表中投保人的身份证号或者姓名等。
(7)外键,是指一个数据表中用于关联到其他数据表的字段。一个数据表可以通过外键关联其他表的主键,以实现与其他数据表的关联,进而获取其他数据表中的字段文本等内容,或者对其他表中的相关数据内容进行插入、删除、变更/修改等。
其中,通过外键关联的其他数据表相对于当前数据表为子表,当前的数据表相对于所关联的其他数据表则为父表。
可以理解,在表单数据中,主键唯一标示数据表中的每一条记录;外键可以理解为主键的副本,是从父表中复制出来的,用于建立父表和子表之间的关系;而唯一键则是用于确保数据表中某一个值的唯一性。
(8)级联,在表单业务中是指创建一个数据表与另一个或多个数据表之间的关联关系,使得表单能够以层次化的视图显示与其的相关的数据。
为了使本申请实施例的目的、技术方案和优点更加清楚,下面将结合说明书附图以及具体的实施方式对本申请实施例所提供的技术方案进行详细的说明。
图1示出了一种在目标环境中发布业务相关配置数据的场景示意图。
如图1所示,该场景包括终端和服务器,其中配置服务器提供设置业务相关配置数据的配置环境,业务服务器则提供用于运行业务服务系统的目标环境。其中,目标环境中所运行的业务服务系统,例如可以是保险业务系统。配置环境则可以具有与目标环境相同的配置参数和数据库,以提供一个模拟目标环境供开发人员根据业务分析人员反馈的业务需求来设置相应的配置数据。
参考图1所示场景,根据业务开展需要,目前业务分析人员如需设置业务相关的配置数据,可以在配置环境提供的相应配置页面上完成相应业务配置数据的设置(或者说写入)后,需由开发人员利用Flyway、Liquibase等数据迁移工具将配置环境中的该配置数据发布到目标环境中,以在目标环境中运行的业务服务系统上应用。
基于上述图1所示场景,如前所述,目前在向目标环境中发布配置数据的过程中,由于配置环境与目标环境中的相应业务数据表存在唯一键冲突或者相应的数据库字段增减等问题,会导致配置数据在目标环境中发布失败。进而,为了完成配置数据的发布,开发人员的工作量则会因此增加,配置数据的发布效率也会较低。
为了解决上述技术问题,本申请提供了一种处理数据冲突的方法。具体地,该方法通过预先定义配置环境中各数据表之间关联关系,并定义相互关联的各数据表形成的数据集中基表。根据上述定义的关联关系和基表,则可以预设配置数据的导出规则,例如通过预设数据描述文件模板,来定义导出配置数据时需生成的数据描述文件内容。如此,当需要将配置数据发布到目标环境时,可以将配置数据以及对应生成的数据描述文件一同导入目标环境,从而可以根据该数据描述文件识别出目标环境与配置环境中的数据冲突。进而,根据识别出的数据冲突,先对目标环境中相应的数据表数据进行相应数据处理,再将配置数据应用到目标环境中处理后的数据表上,完成配置数据在目标环境中的发布过程。
其中,配置数据时生成的数据描述文件,可以包括与配置数据相关的基表及关联数据表形成的数据集、描述各数据集中数据表关联关系的表文件、以及各数据集对应的导出条件等,其中该基表及关联数据表可以根据上述定义的关联关系和基表从配置环境数据库中获取。
如此,可以确保将配置环境中的配置数据顺利发布到目标环境中,从而避免了数据冲突导致的配置数据发布失败的问题,保障了配置数据从配置环境到目标环境中的顺利迁移,相应业务服务也因此能够基于加载或更新的相关配置数据来提供相应服务。
另外,基于本申请方案,业务服务系统可以在用于设置业务相关配置数据的配置页面上添加发布操作相关控件。这样用户便可以在配置页面上完成相应业务配置数据的设置后直接进行发布操作,将配置数据发布到目标环境中,大大提高了配置数据的发布效率,有利于减少了开发人员的工作量,并且便于业务人员的操作。
可以理解,上述业务人员和开发人员均可以理解为业务服务系统的管理类用户,即这类用户对业务服务系统提供的业务服务进行管理,包括对业务相关模块设置相应的配置数据等。
其中,配置数据可以在用户触发数据导出过程之前,根据用户在相应配置页面上的设置操作生成。例如,用户可以在配置环境对应运行的业务服务系统提供的配置页面上设置相应业务的配置数据,以保险业务的配置数据为例,如上所述该配置数据可以包括保险产品、保险方案、费率表、保单生成规则、翻译、码表、索引配置等内容。用户在配置页面上完成相应业务的配置数据设置后,或者在其他在需要将配置数据导入目标环境的情况下,则可以在配置页面上选择导出配置数据,例如在配置页面上点击导出数据按钮。
可以理解,在一些实施例中,上述配置环境可以运行在配置/发布服务器上,上述目标环境可以运行在业务服务器上,该业务服务器例如可以是保险业务服务器。在另一些实施例中,上述配置环境和目标环境可以运行在同一服务器上,在此不做限制。
并且,上述配置环境对应的数据库与目标环境对应的数据库具有相同的数据表资源,以向各环境中运行的业务服务系统提供数据支持。因此,基于上述数据描述文件从配置环境对应的数据库中匹配出的各数据集(以下称源数据),可以在目标环境中匹配到的相应的数据表以及数据表字段内容等(以下称目标数据),进而可以将匹配出的目标数据中唯一键、主键等字段进行比较来判断是否存在数据冲突。该数据冲突例如可以包括:源数据与目标数据中相应数据表的唯一键一致且主键一致、源数据与目标数据中相应数据表的唯一键一致但主键不一致等情形。
在将配置数据导入目标环境的过程中,如判断出上述数据冲突的各种情形,则可以根据判断结果对目标环境中的相关数据表执行相应数据处理后,再完成将配置数据导入目标环境的过程。具体的数据冲突以及对相应目标数据集进行的数据处理过程将在下文详细描述,在此不做赘述。
图2根据本申请实施例提供了一种在目标环境中发布业务相关配置数据的场景示意图。
如图2所示,该场景包括终端100a、终端100b、配置服务器200a和业务服务器200b。其中,终端100a的用户可以是开发人员,终端100b的用户可以是业务分析人员。
开发人员可以通过终端100a访问配置服务器200a,在配置服务器200a所提供的配置环境中预设导出规则,例如开发人员可以在配置环境中预先定义配置环境中各数据表之间关联关系,并定义相互关联的各数据表形成的数据集中基表。进而,可以定义导出配置数据的导出规则,该导出规则可以限定在导出配置数据时,需生成对应于该配置数据的数据描述文件一同导出。
例如,在配置环境中可以预设一个xml类型的数据描述文件模板,该模板中可以定义导出配置数据时对应生成的数据描述文件内容。该文件内容中可以存储配置数据相关的至少一个数据集、以及描述各数据集中数据表关联关系的表文件。其中,各数据集中可以包括一个基表以及与该基表关联的其他数据表,表文件中可以记录各数据集中基表以及关联数据表的名称、主键、唯一键、外键等相关参数。另外,该描述文件还可以包括各数据集的导出条件,例如将各数据集中位于最高层级的父表对应的ID设置为导出条件等。
如此,业务分析人员在通过终端100b访问配置服务器200a的配置环境完成设置相应业务的配置数据后,则可以通过终端100b发起对相应配置数据的导出操作,以将配置环境中的配置数据按照上述预设的数据描述文件匹配到相应的数据集,进而与配置数据以及该数据描述文件一同生成源数据包返回给终端100b。进而,业务分析人员便可以发起发布操作,将获取到的包含配置数据和相关数据集的数据包发布到业务服务器200b提供的目标环境中,以在目标环境中运行的业务服务系统中应用上述配置数据。
参考图2所示,业务分析人员在通过终端100b发起导出操作时,终端100b可以调用配置环境的导出API向配置服务器200a发送对相应配置数据的请求参数,该请求参数例如可以包括需导出的数据集名称以及符合相应数据集导出条件的参数,导出的数据集与导出的配置数据相关。业务分析人员在通过终端100b发起发布操作时,终端100b可以调用目标环境的导入API向配置服务器200b发送该数据包以及导出请求,以触发在目标环境中判断数据冲突、进行相应数据处理以及在目标环境中完成配置数据的应用等发布过程,具体将在下文中详细描述,在此不做赘述。
基于图2所示场景,可以理解,本申请实施例提供的处理数据冲突的方案,能够有效
地简化业务分析人员在业务服务系统上配置相应业务服务数据的实现过程。比如,无需开发人员介入,业务分析人员即可在业务服务系统提供的相应配置界面上设置配置数据并将该配置数据发布到执行业务处理的目标环境中。本申请方案能够有效避免数据冲突导致的配置数据发布失败问题,有利于提高业务分析人员这类用户的使用体验。
另外,本申请实施例提供的处理数据冲突的方案,也能够有效降低开发人员的工作量,开发人员只需预先在配置环境中通过代码写入预设的数据描述文件作为导出规则,并将相应业务配置页面开放给业务分析人员自主设置配置参数,即可满足业务分析人员基于业务需要设置配置数据的需求,也大大提高了对业务相关设置配置数据的效率。
可以理解,本申请实施例所提供的处理数据冲突的方法,所适用的业务服务系统包括运行在业务服务器200b上的功能模块、以及运行在终端100b上的功能模块。在另一些实施例中,该业务服务器200b还可以是桌面型计算机、膝上型计算机、手持计算机、上网本等嵌入或耦接有一个或多个处理器的、或能够访问网络的其他电子设备,该终端100b例如可以是桌面型计算机、笔记本电脑、平板电脑、手机等电子设备,在此不做限制。
可以理解,上述用于向配置服务器200a提供的配置环境中预设导出规则的终端100a是桌面型计算机、笔记本电脑、平板电脑、手机等电子设备,配置服务器200a也可以是桌面型计算机、膝上型计算机、手持计算机、上网本等嵌入或耦接有一个或多个处理器的、或能够访问网络的其他电子设备等,在此不做限制。
基于上述图2所示场景,图3根据本申请实施例示出了一种处理数据冲突的方法的实施流程示意图。其中,图3所示流程主要涉及终端100b与配置服务器200a、业务服务器200b之间的交互。
具体地,如图3所示,该流程包括以下步骤:
301:配置服务器200a获取为配置环境预设的数据描述文件模板。
示例性地,参考上述图2所示场景,开发人员可以通过编写代码预先在配置环境中设置配置数据的导出规则,例如对需要导出的配置数据定义数据描述文件模板。该数据描述文件模板例如可以是以xml文件定义数据集表结构、数据集中各数据表的关联关系、以及相应数据集导出条件等。在定义上述xml文件时,开发人员可以通过设计xml模式定义(xml schema definition)以规范xml文件格式。如此,可以使不同业务相关的配置数据导出配置服务器200a时均采用统一的xml文件格式生成源数据包,以发布到目标环境中。
其中,在上述预设的数据描述文件中,定义的数据集表结构是指记录、描述各数据集的名称、数据表名称、字段以及各数据集中数据表关联关系、基表数据、导出条件等的统计表的结构。其中,各数据集中数据表关联关系可以通过外键名称以及外键值来体现。可以理解,数据集中各数据表所在的数据库即包括配置环境对应的数据库,也包括目标环境对应的数据库,在此不做限制。
定义数据集中各数据表的关联关系,用于将数据集表中的各数据集利用外键来确定基表与其他各数据表之间的关联关系,其中基表为相应数据集中的父表,该数据集中的其他数据表为该基表的不同层级的子表。一个数据集中基表的主键、唯一键等则可以认为是相应数据集的主键、唯一键等,完成定义的各数据集的名称、主键、唯一键以及基表数据等等可以记录在上述定义的数据集表结构中。
参考图4所示的数据集400,由上而下位于第一层级的数据表A为基表,位于第二层
级的数据表B和数据表C为基表A的子表,位于第三层级的数据表D、数据表E为数据表B的子表,数据表F为数据表C的子表,该数据表D、E、F也属于基表A的子表。
例如,保单生成规则配置数据对应的数据集中,基表A可以是定义规则事件的数据表。相应地,作为数据表A子表的数据表B可以是定义规则驱动的数据表、数据表C可以是定义规则事件类型的数据表。进一步地,作为数据表B子表的数据表D可以是定义规则组的数据表,该数据表D的子表还可以是定义各规则组下的规则的数据表等。在此不做限制。
可以理解,在一个数据集中,子表中的外键指向父表中的主键,父表为子表的外键数据表。
可以理解,开发人员在可以在编写供业务分析人员操作的配置页面时,将上述定义的数据集表中各数据集的名称、导出条件等作为预置为可选项,以便于业务分析人员自己操作发布业务相关数据时勾选相应数据集以及导出条件等作为请求参数。
定义的数据集导出条件是导出某个数据集的条件,不同的数据集对应的导出条件可以不同。作为示例,在保险业务系统中,各保险业务配置模块的下属子模块可以分别对应一个数据集。例如保险规则模块可以包括规则组子模块、规则子模块、规则事件子模块等,不同的子模块在数据库中都会有其对应的数据集,而这些数据集可以分别对应于不同的导出条件。比如,规则子模块对应的数据集可以根据RuleId导出,规则组子模块对应的数据集可以根据GroupId导出,规则事件子模块对应的数据集可以根据EventId导出。
可以理解,导出条件可以设置为简单的参数,例如上述RuleId等。因此,导出数据集时无需通过各种计算来验证导出条件,只要传递的参数符合预设导出条件即可导出相应数据集。若导出数据集时传递的参数有误则无法导出数据集,例如导出数据集时传递的RuleId为0000,但数据库中不存在RuleId为0000的数据集,则相应导出的数据集为空。
可以理解,在配置环境中预先定义数据描述文件后,对于不同业务的配置数据导出或发布,无需开发人员对应配置或者定义导出规则,从而减少开发人员的工作量。
可以理解,设计xml模式定义可以给出导出规则中为配置数据匹配数据集以及定义导出条件的规范并进行约束。例如,设计的xml模式定义中可以定义<table>标签下只允许出现<keys>,<columns>,<orders>,<exceptions>子标签,如果出现其他子标签则报错。如此,可以降低为配置数据匹配数据集时出错的概率,提升匹配数据集的效率。
在另一些实施例中,在配置环境中预设配置数据导出规则也可以通过结构化查询语言(structured query language,sql)实现,例如预先写入“.sql”文件,在此不做限制。
302:终端100b检测到导出操作。
示例性地,参考上述图2所示场景,业务分析人员在终端100b提供的配置页面上完成配置操作,配置服务器200a上也生成相应配置数据后,终端100b的配置页面上可以显示相应的导出按钮。此时业务分析人员点击配置页面上的导出按钮,终端100b则可以检测到该导出操作并触发向配置服务器200a发送导出请求。
可以理解,在另一些实施例中,业务分析人员也可以在终端100b提供的配置页面上勾选已完成设置的业务相关配置数据以及相关数据集,并点击导出按钮,以使终端100b向配置服务器200a发送导出请求,在此不做限制。
303:终端100b调用导出API,向配置服务器200a发送导出请求。
示例性地,该导出请求中包括相应的请求参数,该请求参数例如包括业务分析人员在
配置页面上选择需要发布的配置数据对应的数据集名称以及相应数据集的导出条件等。终端100b在检测到上述导出操作时,可以调用配置服务器200a提供的导出API,发送导出请求,以请求配置服务器200a导出需发布的配置数据。可以理解,配置服务器200a响应于该导出请求,可以向终端100b返回为相应配置数据生成的源数据包,具体将在下文步骤304至306中详细描述,在此不做赘述。
304:配置服务器200a基于导出请求中的请求参数生成相应的数据描述文件。
示例性地,配置服务器200a基于导出请求中的请求参数,可以匹配与待发布的配置数据相关的各数据集,进而基于预设的数据描述文件模板中关于数据集表结构的定义,将匹配到的各数据集的名称、数据表名称、字段以及各数据集中数据表关联关系写入数据集表中。进而,将该数据集表结合预先定义的数据集中各数据表的关联关系、导出条件可以生成相应的数据描述文件。
换而言之,配置服务器200a可以根据上述步骤301中获取的数据描述文件模板生成与接收到的请求参数相对应的数据描述文件。
305:配置服务器200a基于生成的数据描述文件导出相关数据表数据并生成源数据包。
示例性地,配置服务器200a可以根据上述步骤304中生成的数据描述文件,从配置环境数据库中导出各数据集中相关的数据表数据,包括各数据表中的字段以及相应字段下的值等,例如主键、唯一键的值等。对于从配置环境数据库中导出的各数据表数据,配置服务器200a可以相应的生成用于描述各数据表的文本文件,例如逗号分隔值(Comma-Separated Values,CSV)文件,又称字符分隔值文件。进而,配置服务器200a可以将上述数据描述文件、以及描述各数据表的CSV文件打包生成源数据包。
306:配置服务器200a向终端100b返回源数据包。
示例性地,配置服务器200a可以将所生成的源数据包发送给终端100b,以响应于终端100b发来的导出请求。
307:终端100b检测到发布操作。
示例性地,终端100b可以在接收到配置服务器200a返回的源数据包后跳转至发布页面,进而业务分析人员可以在该发布页面上点击发布按钮进行发布操作。终端100b检测到该发布操作后可以将接收到的源数据包发送给业务服务器200b,并向业务服务器200b发送导出请求。
308:终端100b调用导入API,向业务服务器200b发送源数据包及发布请求。
示例性地,终端100b在检测到上述发布操作时,可以调用业务服务器200b提供的导入API,向业务服务器200b发送发布配置数据的请求,即导出请求,并向业务服务器200b发送接收到的源数据包。
309:业务服务器200b接收并解析源数据包,并基于解析得到的源数据集中基表数据和关联子数据表数据从目标环境数据库中匹配出相对应的目标数据集。
示例性地,业务服务器200b接收到源数据包,可以读取并解析源数据包到内存。其中,从源数据包中解析得到的数据描述文件包括各数据集表以及各数据集中数据表关联关系,从源数据包中解析得到的各CSV文件可以对应描述相应的数据表数据。为了便于描述,以下将从源数据包中解析得到的各数据集称为源数据集,各CSV文件对应描述的数据表称为源数据表。进而,业务服务器200b可以根据解析得到的数据描述文件从目标环境数据
库中读取相应目标数据集到内存。
其中,根据数据描述文件从目标环境数据库中读取相应目标数据集的过程包括:业务服务器200b可以先根据解析得到的数据描述文件中描述的源数据集及导出条件,在目标环境数据库中匹配源数据集中基表所对应的基表数据,例如将与源数据集基表的主键或唯一键匹配的数据表均获取到内存中,作为目标数据集的基表。并且,该基表外键关联的所有父表,以及所有相关的子表的数据获取到内存中。进而,业务服务器200b可以将从目标环境数据库中匹配到的基表数据以及关联子数据表数据合并目标数据集。
进而,业务服务器200b可将上述获取到的各目标数据表与源数据包中解析出的各数据表中同名数据表的结构是否相同。如果源数据表名没有匹配到相同的目标数据表名,则业务服务器200b将会忽略解析得到的这一源数据表。
可以理解,各数据集中的基表中会定义其外键表及外键,因此可以通过基表中的外键可以查找到相应的外键表。进而,在目标环境数据库中可以定位匹配到各基表数据的外键字段及外键值,并通过该外键值查找到基表关联的数据表数据,即外键表的数据。
310:业务服务器200b将源数据集与目标数据集进行比较,并根据比较的结果对目标数据集中各数据表进行相应的数据处理。
示例性地,业务服务器200b可以将解析到内存的源数据包中各源数据集、与从目标环境数据库中获取到内存的相应目标数据集进行对比,例如将源数据集的基表数据与目标数据集的基表数据进行对比,包括比较源数据集基表与目标数据集基表的唯一键和主键。在本申请的一些实施例中,可以优先比较二者的唯一键,进而比较二者的主键。其中,上述比较过程以及根据比较结果对目标数据集执行相应数据处理的过程,可以参考图5所示的判断处理流程,该流程包括:
310a.判断目标数据集基表中是否定义唯一键。若目标数据集基表中未定义唯一键,即判断结果为否,则将该基表中的主键升级为唯一键。若判断结果为是,则继续执行下述步骤310b。
310b.判断是否源数据集基表与目标数据集基表的唯一键一致且主键一致。若源数据集基表与目标数据集基表的唯一键一致且主键一致,即判断结果为是,则进一步执行步骤310c对其他字段是否一致的判断过程。若判断结果为否,则继续执行下述步骤310d。
310c.判断源数据集基表与目标数据集基表是否包括不一致的其他字段。若判断结果为是,则更新目标数据基表的数据内容,即将源数据集基表的数据内容更新到目标数据集基表的数据内容中;若判断结果为否,表明源数据集基表与目标数据集基表的其他字段均一致,无需更新,则不更新目标数据集基表的数据内容。
其中,不一致的其他字段,是指其他字段的值不一致,而字段的名称是对应相同的,即同名字段下的值不同的情形,在此不做赘述。
310d.判断是否源数据集基表与目标数据集基表的唯一键一致但主键不一致。若源数据集基表与目标数据集基表的唯一键一致但主键不一致,即判断结果为是,则更新目标数据基表的数据内容,并将源数据集基表的主键修改为目标数据集基表的主键。若判断结果为否,则继续执行下述步骤310e。
310e.判断是否源数据集基表与目标数据集基表的唯一键不一致、且目标数据集基表不存在该唯一键字段。若源数据集基表与目标数据集基表的唯一键不一致、且目标数据集
基表不存在该唯一键字段,即判断结果为是,则在目标数据集基表中插入该唯一键对应字段以及该字段下的数据内容。若判断结果为否,则继续执行下述步骤310f。
310f.判断是否源数据集基表与目标数据集基表的唯一键不一致、且源数据集基表中不存在该位移键字段。若源数据集基表与目标数据集基表的唯一键不一致、且源数据集基表中不存在该位移键字段,即判断结果为是,则在目标数据集基表中删除该唯一键字段以及该字段下的数据内容。若判断结果为否,则说明配置环境与目标环境不存在数据冲突,结束本次流程。可以继续执行下述步骤311。
可以理解,对源数据集和相应目标数据集的基表经上述比较过程,完成对目标数据集中基表数据的处理后,可以通过级联方式对各数据集中各基表的所有关联数据表重复执行上述310a至310f所描述的比较过程,以对目标数据集中与基表相关联的各数据表执行相应的数据处理。
可以理解,待完成目标数据集中相关数据表数据内容的处理更新后,业务服务器200b还可以动态更新指定表的外键,例如在处理后的基表中指定字段上添加外键,在此不做赘述。
311:业务服务器200b基于处理后的目标数据集,完成配置数据在目标环境中的发布。
示例性地,业务服务器200b在执行完上述步骤310对目标数据集完成相应数据处理后,则可以基于处理后的目标数据集,将待发布的配置数据对应应用到各目标数据集中,并更新到目标环境数据库中。从而,业务服务器200b便可以在响应于业务服务系统前端的业务请求时,调用目标环境数据库中相应数据集并发布后的配置数据处理相应业务,在此不做赘述。
可以理解,业务服务器200b在执行上述步骤310对各目标数据集进行相应数据处理的过程中,可以记录上述插入、更新、删除等处理前后的数据、以及原始数据。例如,上述插入、更新、删除等处理前后的数据、以及原始数据可以通过json格式报告记录,其中插入数据记录为InsertRecordMap,同样删除数据记录为DeleteRecordMap,更新数据记录为UpdateRecordMap等。出于节约存储资源的考虑,若某个数据表的数据内容较多,例如在上述数据处理过程中需处理的数据超过1万条,则可以不记录该数据表中的数据处理过程。
可以理解,基于上述步骤301至311的实施流程,本申请实施例提供的处理数据冲突的方法,首先能够确保将配置环境中的配置数据顺利发布到目标环境中,从而避免了数据冲突导致的配置数据发布失败的问题,相应业务服务也因此能够基于加载或更新的相关配置数据来提供相应服务。其次,本申请能够实现在配置页面上直接进行配置数据的发布操作,有利于提高配置数据的发布效率,以及减少开发人员的工作量,并且也方便了业务人员自行操作配置数据的发布,有利于提高业务人员对相应业务的管理效率。
可以理解,本申请实施例提供的处理数据冲突的方法,只需进行一次预设导出规则的过程,即上述步骤301可以仅在第一次实施图3所示流程时执行一次,配置服务器200a便可以在后续发布配置数据到目标环境的过程中均按照该预设的导出规则导出配置数据及相应数据集,业务服务器200b便可以在接收到导入的配置数据及相应数据集时自动识别数据冲突,并对目标环境中的相应数据表进行相应数据处理。
换而言之,在将配置环境中的有关配置数据发布到目标环境的过程中,如果遇到相应
数据集基表的唯一键冲突、部分字段不存在或者外键不存在等数据冲突情况,业务服务系统便可以自动处理这些数据冲突,无需人工介入,因此可以节约业务服务系统的运维成本。
另外,业务服务器200b在根据识别到的数据冲突进行相应数据处理时的记录内容,还可以提供数据处理前后的数据变化详情,便于后续排查错误时查找相关数据。
图6根据本申请实施例示出了一种业务服务系统的软件结构示意图。
如图6所示,业务服务系统600可以包括业务配置模块601、导出模块602、导入模块603。示例性地,该业务服务系统600例如可以是为保险业务提供平台的保险业务系统等,在此不做限制。
其中,业务配置模块601可以运行在终端100b上向业务人员提供配置页面,业务人员则可以在该配置页面上设置业务相关配置数据,并且还可以在该配置页面操作从配置环境中导出配置数据以及将配置数据发布到目标环境中等。可以理解,业务配置模块601还可以运行在终端100a上,供开发人员预设配置数据导出规则、或者代业务人员设置配置数据以及在目标环境中发布配置数据等。导出模块602所执行的具体功能可以参考上述步骤302、303中相关描述,在此不做赘述。
导出模块602可以运行在配置服务器200a上,用于获取开发人员预设在配置环境中的数据描述文件模板,并用于根据终端100b发来的导出请求相关参数,与配置环境数据库交互获取相应配置数据、以及导出相关数据集、各数据集中关联数据表数据、以及各数据集中基表与其他关联数据表通过外键形成的关联关系等,生成相应的数据描述文件与配置数据一同导出配置环境。导出模块602所执行的具体功能可以参考上述步骤301、304和306中相关描述,在此不做赘述。
导入模块603可以运行在业务服务器200b上,用于接收并解析终端100b转发的源数据包,该源数据包包括上述待发布到目标环境中的配置数据、以及相应生成的数据描述文件。导入模块603进而可以根据解析出的数据描述文件,与目标环境数据库交互获取目标数据基表及其他关联数据表数据形成目标数据集,再将目标数据集与源数据集进行比较,并根据比较结果对目标数据集中的相关数据表数据进行相关处理等。导出模块603所执行的具体功能可以参考上述步骤309至311中相关描述,在此不做赘述。
可以理解,基于本申请实施例提供的处理数据冲突的方案实现的业务服务系统中,将配置数据从配置环境中发布到目标环境中的过程无需开发人员利用数据迁移工具对应编写代码实现,并且该发布过程中业务服务系统可以自行处理配置环境与目标环境的数据冲突。
图7根据本申请实施例示出了一种服务器200的结构示意图。
可以理解,在本申请实施例中,该服务器200可以是上述提供配置环境的配置服务器200a,也可以是上述提供目标环境业务服务器。可以理解,服务器200上可以运行业务服务系统的部分模块,例如配置服务器上运行上述图6所示业务服务系统600的导出模块602,业务服务器上运行上述图6所示业务服务系统600的导入模块603等。在另一些实施例中,业务服务系统600的导出模块602和导入模块603也可以运行在同一服务器200上,在此不做限制。
如图7所示,在一些实施例中,服务器200可以包括一个或多个处理器204,与处理器204中的至少一在个连接的系统控制逻辑208,与系统控制逻辑208连接的系统内存212,
与系统控制逻辑208连接的非易失性存储器(NVM)212,以及与系统控制逻辑208连接的网络接口220。
在一些实施例中,处理器204可以包括一个或多个单核或多核处理器。在一些实施例中,处理器204可以包括通用处理器和专用处理器(例如,图形处理器,应用处理器,基带处理器等)的任意组合。在服务器200采用eNB(Evolved Node B,增强型基站)101或RAN(Radio Access Network,无线接入网)控制器102的实施例中,处理器204可以被配置为执行各种符合的实施例,例如,如图2至图6所示实施例。
在一些实施例中,系统控制逻辑208可以包括任意合适的接口控制器,以向处理器204中的至少一个和/或与系统控制逻辑208通信的任意合适的设备或组件提供任意合适的接口。
在一些实施例中,系统控制逻辑208可以包括一个或多个存储器控制器,以提供连接到系统内存212的接口。系统内存212可以用于加载以及存储数据和/或指令。在一些实施例中服务器200的内存212可以包括任意合适的易失性存储器,例如合适的动态随机存取存储器(DRAM)。
NVM/存储器212可以包括用于存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。在一些实施例中,NVM/存储器212可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如HDD(Hard Disk Drive,硬盘驱动器),CD(Compact Disc,光盘)驱动器,DVD(Digital Versatile Disc,数字通用光盘)驱动器中的至少一个。
NVM/存储器212可以包括安装服务器200的装置上的一部分存储资源,或者它可以由设备访问,但不一定是设备的一部分。例如,可以经由网络接口220通过网络访问NVM/存储212。
特别地,系统内存212和NVM/存储器212可以分别包括:指令224的暂时副本和永久副本。指令224可以包括:由处理器204中的至少一个执行时导致服务器200实施如图3-4所示的方法的指令。在一些实施例中,指令224、硬件、固件和/或其软件组件可另外地/替代地置于系统控制逻辑208,网络接口220和/或处理器204中。
网络接口220可以包括收发器,用于为服务器200提供无线电接口,进而通过一个或多个网络与任意其他合适的设备(如前端模块,天线等)进行通信。在一些实施例中,网络接口220可以集成于服务器200的其他组件。例如,网络接口220可以集成于处理器204的,系统内存212,NVM/存储器212,和具有指令的固件设备(未示出)中的至少一种,当处理器204中的至少一个执行所述指令时,服务器200实现上述图2至图6所示的方法。
网络接口220可以进一步包括任意合适的硬件和/或固件,以提供多输入多输出无线电接口。例如,网络接口220可以是网络适配器,无线网络适配器,电话调制解调器和/或无线调制解调器。
在一个实施例中,处理器204中的至少一个可以与用于系统控制逻辑208的一个或多个控制器的逻辑封装在一起,以形成系统封装(SiP)。在一个实施例中,处理器204中的至少一个可以与用于系统控制逻辑208的一个或多个控制器的逻辑集成在同一管芯上,以形成片上系统(SoC)。
服务器200可以进一步包括:输入/输出(I/O)设备232。I/O设备232可以包括用
户界面,使得用户能够与服务器200进行交互;外围组件接口的设计使得外围组件也能够与服务器200交互。在一些实施例中,服务器200还包括传感器,用于确定与服务器200相关的环境条件和位置信息的至少一种。
在一些实施例中,用户界面可包括但不限于显示器(例如,液晶显示器,触摸屏显示器等),扬声器,麦克风,一个或多个相机(例如,静止图像照相机和/或摄像机),手电筒(例如,发光二极管闪光灯)和键盘。
在一些实施例中,外围组件接口可以包括但不限于非易失性存储器端口、音频插孔和电源接口。
在一些实施例中,传感器可包括但不限于陀螺仪传感器,加速度计,近程传感器,环境光线传感器和定位单元。定位单元还可以是网络接口220的一部分或与网络接口220交互,以与定位网络的组件(例如,全球定位系统(GPS)卫星)进行通信。
在说明书对“一个实施例”或“实施例”的引用意指结合实施例所描述的具体特征、结构或特性被包括在根据本申请实施例公开的至少一个范例实施方案或技术中。说明书中的各个地方的短语“在一个实施例中”的出现不一定全部指代同一个实施例。
本申请实施例的公开还涉及用于执行文本中的操作装置。该装置可以专门处于所要求的目的而构造或者其可以包括被存储在计算机中的计算机程序选择性地激活或者重新配置的通用计算机。这样的计算机程序可以被存储在计算机可读介质中,诸如,但不限于任何类型的盘,包括软盘、光盘、CD-ROM、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、EPROM、EEPROM、磁或光卡、专用集成电路(ASIC)或者适于存储电子指令的任何类型的介质,并且每个可以被耦合到计算机系统总线。此外,说明书中所提到的计算机可以包括单个处理器或者可以是采用针对增加的计算能力的多个处理器涉及的架构。
另外,在本说明书所使用的语言已经主要被选择用于可读性和指导性的目的并且可能未被选择为描绘或限制所公开的主题。因此,本申请实施例公开旨在说明而非限制本文所讨论的概念的范围。
Claims (12)
- 一种处理数据冲突的方法,其特征在于,应用于具有业务配置模块、导出模块和导入模块的系统,所述导出模块运行在配置环境中,所述导入模块运行在目标环境中,所述方法包括:业务配置模块响应于检测到的导出操作,向导出模块发送对目标配置数据的导出请求,其中所述目标配置数据为用户对所述系统提供的业务服务设置参数生成的数据;导出模块响应于所述导出请求,获取目标配置数据以及对应于所述目标配置数据生成的数据描述文件,并发送给所述业务配置模块,其中所述数据描述文件包括与所述目标配置数据相关的源数据集、以及对各源数据集中数据表之间的关联关系描述;业务配置模块响应于检测到的发布操作,向导入模块发送接收到的所述配置数据和所述数据描述文件以及发布请求;导入模块响应于所述发布请求,基于所述数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,并在处理后的数据表数据上应用接收到的所述目标配置数据。
- 根据权利要求1所述的方法,其特征在于,所述导出模块包括预设的配置数据导出规则,并且,所述导出模块响应于所述导出请求,基于所述导出规则生成对应于所述目标配置数据的数据描述文件。
- 根据权利要求2所述的方法,其特征在于,所述导出规则至少包括:对配置环境数据库中的各数据表预设至少一个关联关系,并确定预设的各关联关系中的基表,其中所述基表与所述系统提供的业务服务相对应。
- 根据权利要求3所述的方法,其特征在于,各所述关联关系中的基表与关联数据表通过外键关联。
- 根据权利要求1所述的方法,其特征在于,所述基于所述数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,包括:导入模块基于所述数据描述文件中对各源数据集中数据表之间的关联关系描述,从目标环境数据库中获取与各源数据集相应的目标数据集,其中所述目标数据集中数据表之间的关联关系符合相应源数据集中数据表之间的关联关系描述;导入模块将所述目标数据集与相应源数据集进行比较,并基于所述比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果。
- 根据权利要求5所述的方法,其特征在于,所述将所述目标数据集与相应源数据集进行比较,并基于所述比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,包括:若所述目标数据集基表的唯一键与所述源数据集基表的唯一键一致、并且所述目标数据集基表的主键与所述源数据集基表的主键一致,确定在所述源数据集基表与目标数据集基表包括不一致的其他字段的情况下,将所述目标数据集基表的数据内容更新为所述源数据集基表的数据内容;若所述目标数据集基表的唯一键与所述源数据集基表的唯一键一致、但所述目标数据集基表的主键与所述源数据集基表的主键不一致,确定将所述目标数据集基表的数据内容 更新为所述源数据集基表的数据内容、并将所述目标数据集基表的主键修改为所述源数据集基表的主键;若所述目标数据集基表的唯一键与所述源数据集基表的唯一键不一致、且所述目标数据集基表中不存在对应于所述源数据集基表的唯一键的第一字段,确定在所述目标数据集基表中插入所述第一字段、并将所述源数据集基表中唯一键字段下的数据内容更新至所述目标数据集基表中;若所述目标数据集基表的唯一键与所述源数据集基表的唯一键不一致、且所述源数据集基表中不存在对应于所述源数据集基表的唯一键的第二字段,确定在所述目标数据集基表中删除所述第二字段以及所述第二字段下的数据内容。
- 根据权利要求6所述的方法,其特征在于,所述将所述目标数据集与相应源数据集进行比较,并基于所述比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,还包括:若目标数据集基表中未定义唯一键,确定将所述目标数据集基表的主键设置为所述目标数据集基表的唯一键。
- 根据权利要求7所述的方法,其特征在于,所述将所述目标数据集与相应源数据集进行比较,并基于所述比较结果确定对目标环境中具有数据冲突的数据表数据的处理结果,还包括:基于所述目标数据集基表中的外键,将所述目标数据集中关联数据表的数据内容与所述源数据表中关联数据表的数据内容进行比较;根据所述比较的结果,确定对所述目标数据集中关联数据表的数据内容的处理结果。
- 根据权利要求8所述的方法,其特征在于,所述根据所述比较的结果,确定对所述目标数据集中关联数据表的数据内容的处理结果,包括:若所述目标数据集中关联数据表的唯一键与所述源数据集中关联数据表的唯一键一致、并且所述目标数据集中关联数据表的主键与所述源数据集中关联数据表的主键一致,确定在所述源数据集中关联数据表与目标数据集中关联数据表包括不一致的其他字段的情况下,将所述目标数据集中关联数据表的数据内容更新为所述源数据集中关联数据表的数据内容;若所述目标数据集中关联数据表的唯一键与所述源数据集中关联数据表的唯一键一致、但所述目标数据集中关联数据表的主键与所述源数据集中关联数据表的主键不一致,确定将所述目标数据集中关联数据表的数据内容更新为所述源数据集中关联数据表的数据内容、并将所述目标数据集中关联数据表的主键修改为所述源数据集中关联数据表的主键;若所述目标数据集中关联数据表的唯一键与所述源数据集中关联数据表的唯一键不一致、且所述目标数据集中关联数据表中不存在对应于所述源数据集中关联数据表的唯一键的第三字段,确定在所述目标数据集中关联数据表中插入所述第三字段、并将所述源数据集中关联数据表中唯一键字段下的数据内容更新至所述目标数据集中关联数据表中;若所述目标数据集中关联数据表的唯一键与所述源数据集中关联数据表的唯一键不一致、且所述源数据集中关联数据表中不存在对应于所述源数据集中关联数据表的唯一键的第四字段,确定在所述目标数据集中关联数据表中删除所述第四字段以及所述第四字段 下的数据内容。
- 一种业务服务系统,其特征在于,所述系统包括业务配置模块、导出模块和导入模块,其中,业务配置模块用于响应检测到的导出操作,向导出模块发送对目标配置数据的导出请求,其中所述目标配置数据为用户对所述系统提供的业务服务设置参数生成的数据;并用于响应检测到的发布操作,将接收到的所述配置数据和所述数据描述文件发送给导入模块;导出模块用于响应所述业务配置模块发送的导出请求,获取目标配置数据以及对应于所述目标配置数据生成的数据描述文件,并发送给所述业务配置模块,其中所述数据描述文件包括与所述目标配置数据相关的源数据集、以及对各源数据集中数据表之间的关联关系描述;导入模块用于基于所述数据描述文件确定对目标环境中具有数据冲突的数据表数据的处理结果,并在处理后的数据表数据上应用接收到的所述目标配置数据。
- 一种设备,其特征在于,包括:一个或多个处理器;一个或多个存储器;所述一个或多个存储器存储有一个或多个程序,当一个或者多个程序被所述一个或多个处理器执行时,使得所述设备执行权利要求1至10中任一项所述的处理数据冲突的方法。
- 一种计算机可读存储介质,其特征在于,所述存储介质上存储有指令,所述指令在计算机上执行时,使所述计算机执行权利要求1至10中任一项所述的处理数据冲突的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210842930.6A CN115328569B (zh) | 2022-07-18 | 2022-07-18 | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 |
CN202210842930.6 | 2022-07-18 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024016850A1 true WO2024016850A1 (zh) | 2024-01-25 |
Family
ID=83917301
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2023/097524 WO2024016850A1 (zh) | 2022-07-18 | 2023-05-31 | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115328569B (zh) |
WO (1) | WO2024016850A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11954458B2 (en) * | 2022-04-26 | 2024-04-09 | Accenture Global Solutions Limited | Decision logic translation system and method |
CN115328569B (zh) * | 2022-07-18 | 2024-03-15 | 易保网络技术(上海)有限公司 | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120226669A1 (en) * | 2011-03-04 | 2012-09-06 | Lsi Corporation | Merging a storage cluster into another storage cluster |
CN108388438A (zh) * | 2018-02-07 | 2018-08-10 | 平安普惠企业管理有限公司 | 系统基表更新方法、装置、计算机设备和存储介质 |
CN112163024A (zh) * | 2020-09-11 | 2021-01-01 | 重庆誉存大数据科技有限公司 | 一种基于层级关联结构的配置信息导出和导入方法 |
CN112286907A (zh) * | 2020-10-26 | 2021-01-29 | 中信百信银行股份有限公司 | 一种数据库配置方法、装置、电子设备和可读存储介质 |
CN115328569A (zh) * | 2022-07-18 | 2022-11-11 | 易保网络技术(上海)有限公司 | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112099768B (zh) * | 2020-08-04 | 2024-02-23 | 北京奇艺世纪科技有限公司 | 业务流程处理方法、装置及计算机可读存储介质 |
CN112148509A (zh) * | 2020-10-16 | 2020-12-29 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、服务器及计算机可读存储介质 |
CN113076305A (zh) * | 2021-04-20 | 2021-07-06 | 广东电网有限责任公司 | 一种数据处理方法、装置、电子设备及存储介质 |
CN113034291B (zh) * | 2021-04-29 | 2024-07-02 | 中国工商银行股份有限公司 | 基金交易处理结果导出方法及装置 |
-
2022
- 2022-07-18 CN CN202210842930.6A patent/CN115328569B/zh active Active
-
2023
- 2023-05-31 WO PCT/CN2023/097524 patent/WO2024016850A1/zh unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120226669A1 (en) * | 2011-03-04 | 2012-09-06 | Lsi Corporation | Merging a storage cluster into another storage cluster |
CN108388438A (zh) * | 2018-02-07 | 2018-08-10 | 平安普惠企业管理有限公司 | 系统基表更新方法、装置、计算机设备和存储介质 |
CN112163024A (zh) * | 2020-09-11 | 2021-01-01 | 重庆誉存大数据科技有限公司 | 一种基于层级关联结构的配置信息导出和导入方法 |
CN112286907A (zh) * | 2020-10-26 | 2021-01-29 | 中信百信银行股份有限公司 | 一种数据库配置方法、装置、电子设备和可读存储介质 |
CN115328569A (zh) * | 2022-07-18 | 2022-11-11 | 易保网络技术(上海)有限公司 | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115328569B (zh) | 2024-03-15 |
CN115328569A (zh) | 2022-11-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11574070B2 (en) | Application specific schema extensions for a hierarchical data structure | |
US11550763B2 (en) | Versioning schemas for hierarchical data structures | |
US11782892B2 (en) | Method and system for migrating content between enterprise content management systems | |
WO2024016850A1 (zh) | 处理数据冲突的方法、系统、电子设备及计算机可读存储介质 | |
US8346747B2 (en) | Extending database tables in a multi-tenant environment | |
US11372635B2 (en) | In-memory software package installation and testing | |
US11126618B1 (en) | Computerized implementation framework to abstract data object definitions across multiple computing environments | |
US9244956B2 (en) | Recommending data enrichments | |
US8682876B2 (en) | Techniques to perform in-database computational programming | |
US10353723B2 (en) | PL/SQL language parsing at a virtual machine | |
JP2006209756A (ja) | 非リレーショナルクエリ言語のリレーショナルデータストアとの統合 | |
WO2023231665A1 (zh) | 分布式事务处理方法、系统、设备及可读存储介质 | |
US10366081B2 (en) | Declarative partitioning for data collection queries | |
WO2021051501A1 (zh) | Sql提取方法、装置、计算机设备和存储介质 | |
US20170116303A1 (en) | Unified data model | |
US11900269B2 (en) | Method and apparatus for managing knowledge base, device and medium | |
US11106564B2 (en) | Deframeworking for static program analysis | |
US11087003B2 (en) | Scalable pre-analysis of dynamic applications | |
JP2024505236A (ja) | データ処理システム用のデータセットマルチプレクサ | |
US11500837B1 (en) | Automating optimizations for items in a hierarchical data store | |
US11010361B1 (en) | Executing code associated with objects in a hierarchial data structure | |
US11888937B2 (en) | Domain specific provider contracts for core data services | |
US20240241865A1 (en) | Automatic enforcement of standardized data model mapping | |
US20240193295A1 (en) | Scalable Dataset Sharing With Linked Datasets | |
US8620856B2 (en) | Method and system for providing a data exchange service provider interface |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23841918 Country of ref document: EP Kind code of ref document: A1 |