WO2021169277A1 - 数据同步方法、装置、设备及计算机可读存储介质 - Google Patents
数据同步方法、装置、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- WO2021169277A1 WO2021169277A1 PCT/CN2020/118115 CN2020118115W WO2021169277A1 WO 2021169277 A1 WO2021169277 A1 WO 2021169277A1 CN 2020118115 W CN2020118115 W CN 2020118115W WO 2021169277 A1 WO2021169277 A1 WO 2021169277A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- source
- data synchronization
- script
- preset
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/219—Managing data history or versioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
Definitions
- This application relates to the field of incremental backup, and in particular to a data synchronization method, device, equipment, and computer-readable storage medium.
- the source data sources are continuously expanded, which can include structured databases such as ORACLE, MYSQL, MON GODB, POSTGRED, HIVE, etc.
- structured databases how to efficiently obtain the source data from each database library of the data source and synchronize the source data to the specified target data source is particularly important.
- data synchronization can only be achieved by executing a single script .
- the inventor realized that in the big data scenario, it is necessary to manually construct a large number of scripts to achieve data synchronization, which is time-consuming and labor-intensive, which will result in low data synchronization efficiency. Therefore, how to improve the efficiency of data synchronization is a technical problem to be solved urgently at present.
- the main purpose of this application is to provide a data synchronization method, device, equipment, and computer-readable storage medium, aiming to solve the technical problem of low data synchronization efficiency.
- the first aspect of the present application provides a data synchronization method.
- the data synchronization method includes the following steps: obtaining a data synchronization request, wherein the data synchronization request includes the source data to be synchronized in the source data source.
- the second aspect of the present application provides a data synchronization device, including a memory, a processor, and computer-readable instructions stored on the memory and running on the processor, and the processor executes the computer-readable instructions.
- the following steps are implemented during the instruction: obtaining a data synchronization request, where the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the source data source Business logic information for data synchronization with the target data source; parsing the data synchronization request to obtain a parsing result; generating a data synchronization script based on the parsing result and a preset universal script template, the universal script template It is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources; based on the data synchronization script, the source data on the source data source is synchronized to the target data source.
- a third aspect of the present application provides a computer-readable storage medium, which stores computer instructions, and when the computer instructions run on a computer, the computer executes the following steps: obtaining a data synchronization request, Wherein, the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of data synchronization between the source data source and the target data source Analyze the data synchronization request to obtain the analysis result; generate a data synchronization script based on the analysis result and a preset universal script template, the universal script template is to extract data between different data sources The common parameters in the synchronized script code are constructed; based on the data synchronization script, the source data on the source data source is synchronized to the target data source.
- a fourth aspect of the present application provides a data synchronization device, including: a receiving module for obtaining a data synchronization request, wherein the data synchronization request includes source data information to be synchronized in the source data source, and parameter information of the source data source , Parameter information of the target data source, business logic information for realizing data synchronization between the source data source and the target data source; parsing module for parsing the data synchronization request to obtain the parsing result; script generation module, It is used to generate a data synchronization script based on the analysis result and a preset universal script template, the universal script template is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources; data synchronization module , For synchronizing the source data on the source data source to the target data source based on the data synchronization script.
- a data synchronization request is obtained, where the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the source data.
- the script template is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources; based on the data synchronization script, the source data on the source data source is synchronized to the target data source.
- FIG. 1 is a schematic structural diagram of an operating environment of a data synchronization device involved in a solution according to an embodiment of the application;
- FIG. 3 is a detailed flowchart of an embodiment of step S40 in FIG. 2;
- FIG. 4 is a detailed flowchart diagram of an embodiment of step S40 in FIG. 2;
- FIG. 5 is a detailed flowchart of an embodiment of step S401 in FIG. 3;
- FIG. 6 is a detailed flowchart of an embodiment of step S30 in FIG. 2;
- FIG. 7 is a detailed flowchart of an embodiment of step S50 in FIG. 4;
- FIG. 8 is a detailed flowchart of an embodiment of step S302 in FIG. 6;
- FIG. 9 is a schematic flowchart of a second embodiment of a data synchronization method according to this application.
- FIG. 10 is a schematic diagram of functional modules of an embodiment of a data synchronization device according to the present application.
- the embodiments of the present application provide a data synchronization method, device, equipment, and computer-readable storage medium, which are used to obtain user configuration information, input the configuration information into a preset universal script template, and generate it from the preset universal script template.
- the data synchronization script avoids the inefficiency of data synchronization caused by building the template multiple times. Through this application, the difficulty of script generation can be greatly reduced, the process of template generation can be simplified, and the efficiency of data synchronization can be improved.
- This application provides a data synchronization device.
- FIG. 1 is a schematic structural diagram of an operating environment of a data synchronization device involved in a solution of an embodiment of this application.
- the data synchronization device includes: a processor 1001, such as a CPU, a communication bus 1002, a user interface 1003, a network interface 1004, and a memory 1005.
- the communication bus 1002 is used to implement connection and communication between these components.
- the user interface 1003 may include a display screen (Display) and an input unit such as a keyboard (Keyboard), and the network interface 1004 may optionally include a standard wired interface and a wireless interface (such as a WI-FI interface).
- the memory 1005 may be a high-speed RAM memory, or a non-volatile memory (non-volatile memory), such as a magnetic disk memory.
- the memory 1005 may also be a storage device independent of the aforementioned processor 1001.
- the hardware structure of the data synchronization device shown in FIG. 1 does not constitute a limitation on the data synchronization device, and may include more or less components than shown in the figure, or a combination of certain components, or different components.
- the layout of the components does not constitute a limitation on the data synchronization device, and may include more or less components than shown in the figure, or a combination of certain components, or different components. The layout of the components.
- the memory 1005 which is a computer-readable storage medium, may include an operating system, a network communication module, a user interface module, and a data synchronization program.
- the operating system is a program that manages and controls data synchronization equipment and software resources, and supports the operation of data synchronization programs and other software and/or programs.
- the network interface 1004 is mainly used to access the network; the user interface 1003 is mainly used to detect and confirm instructions and edit instructions.
- the processor 1001 can be used to call a data synchronization program stored in the memory 1005, and execute the operations of the following data synchronization method embodiments.
- FIG. 2 is a schematic flowchart of the first embodiment of the data synchronization method of this application.
- the data synchronization method includes the following steps:
- Step S10 Obtain a data synchronization request, where the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the communication between the source data source and the target data source.
- Business logic information for data synchronization includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the communication between the source data source and the target data source.
- the instruction is the operation instruction for data synchronization received by the human-computer interaction interface.
- the terminal device of the human-computer interaction interface can be a smart phone, a tablet electronic device, a portable computer, a personal digital assistant, a personal computer, or an all-in-one machine.
- an instruction to synchronize data in the MYSQL database to Hive1 is received.
- the machine After the machine receives the operation instruction, it generates a task instruction according to the operation instruction.
- the task instruction includes content information of the task to be executed, and the content information includes the type of the task to be executed.
- Step S20 parse the data synchronization request to obtain the analysis result
- the data synchronization request is parsed, so that the parameter information of the source data source and the information of the target number source can be obtained.
- the current data synchronization request will be parsed to obtain the parameter information of the MYSQL database and the parameter information of Hive1, and obtain the source data to be synchronized in the source data source and the target data source.
- the parameter information can facilitate the synchronization of the source data to be synchronized from the source data source to the target data source.
- Step S30 Generate a data synchronization script based on the analysis result and the preset universal script template, the universal script template is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources;
- the common code is extracted in advance from the script code that realizes data synchronization between different data sources, and a preset universal script template is generated based on the common code.
- the data synchronization request includes the waiting data in the source data source Synchronized source data information, target data source parameter information, business logic information to achieve data synchronization between the source data source and the target data source, so the analysis result obtained after the analysis also includes the data to be synchronized from the source data
- the business logic information that is synchronized from the source to the target data source can generate a data synchronization script based on the analysis result and a preset general script template.
- each data synchronization requires a script, especially in the big data scenario, the source data will come from different source data sources, so you need to prepare a lot of different source data in advance
- the data synchronization scripts corresponding to the sources When synchronizing offline data, it synchronizes the data from the source data source to the target data source by providing several interfaces, or even manually writes a script, one piece of data or one piece of data. Write a script for batch data, and generate a data synchronization script through a preset universal script template, which can improve the efficiency of data synchronization script generation.
- Step S40 based on the data synchronization script, synchronize the source data on the source data source to the target data source.
- a data synchronization script is executed to synchronize data from a source data source to a target data source.
- the source data source includes structured databases such as ORACLE and MYSQL, and semi-structured databases such as MONGODB, POSTGRED, and HIVE. Since the data synchronization script is generated through a preset general script template, the process of data synchronization script generation is simplified, the difficulty of script generation is reduced, the script generation efficiency is improved, and the efficiency of data synchronization is improved.
- step S40 synchronizing the source data on the source data source to the target data source based on the data synchronization script, includes the following steps:
- Step S401 Send the data synchronization script to a preset safe storage device for storage and backup;
- the secure storage device may be a distributed file system, that is, HDFS, which is used to access data.
- the HDFS is a master-slave structure and consists of a master node and a slave node.
- the master node is used to receive user operation requests, maintain the directory structure of the file system, and manage the relationship between files and blocks.
- the slave node is mainly used to store files, and the files are divided into blocks and stored on the disk.
- Step S402 Read the storage path of the data synchronization script in the secure storage device, and generate an execution path.
- the source data source information, target data source information, and business logic information for realizing data synchronization between the source data source and the target data source will be obtained.
- the synchronization script storage path is in advance. It is determined and stored in a secure storage device, and the execution path of the script is obtained according to the storage path.
- the current HDFS has a master node and three slave nodes, and the three slave nodes are the first slave node, the second slave node and
- the third slave node for example, the path of data synchronization can be that after the master node receives an instruction to synchronize the data, it synchronizes the data to the first slave node, then synchronizes to the second slave node, and then synchronizes to the third slave node, and finally Synchronize to the target data source.
- Different types of data refer to data from different source data sources, for example, from structured databases such as ORACLE and MYSQL.
- the data synchronization script is executed according to the execution path to synchronize the data from the source data source to the target data source, for example, to synchronize MYSQL to different HIVEs.
- step S40 the step of synchronizing the source data on the source data source to the target data source based on the data synchronization script includes:
- Step S50 execute the data synchronization script stored in the secure storage through the principle of mirror mapping operation, and synchronize the source data on the source data source to the target data source.
- the execution path is mirrored to a preset execution module to implement the data synchronization script according to the execution path.
- FIG. 5 is a detailed flowchart of an embodiment of step S401 in FIG. 3.
- sending the data synchronization script to the preset secure storage device for storage and backup also includes the following steps:
- Step S4011 Send the data synchronization script to the distributed file system.
- the distributed file system includes a master node and multiple slave nodes.
- the master node is used to store metadata of the data synchronization script
- the slave node is used to store the data synchronization script.
- metadata is used to indicate the storage location of the data synchronization script. For example, whether it is stored in the first slave node or in the second slave node.
- the master node will receive the changed message and change the metadata information.
- the data synchronization script is independently stored in the slave node, so the data synchronization script and the data synchronization script are independent of each other, which reduces the risk of tampering with the historical script.
- Step S4012 Based on the metadata, the data synchronization script is stored and backed up by the slave node.
- the message of the slave node within a preset time is sent to the master node through a heartbeat packet, for example, a heartbeat is sent every 5 seconds, so that the status of each slave node can be monitored.
- a node fails the failure message can be sent to the master node, and the master node will back up the data stored in the failed slave node to other slave nodes according to the metadata information.
- the distributed file system has an automatic backup mechanism, which can be Ensure the stability of each data synchronization script. For example, when the first slave node fails, the failure message can be sent to the master node, and the master node backs up the data stored in the first slave node to the second slave node according to the metadata information.
- FIG. 6 is a detailed flowchart of an embodiment of step S30 in FIG. 2.
- a data synchronization script is generated based on the analysis result and a preset universal script template.
- the universal script template is constructed by extracting common parameters in the script code for data synchronization between different data sources, including The following steps:
- Step S301 Obtain version information of the data synchronization script to be generated based on the analysis result
- the human-computer interaction interface is monitored in real time whether the command is triggered to determine whether to enter the preparation stage of generating the data synchronization script.
- the analysis result is compared with the version of the data synchronization script.
- the preset mapping relationship between the information obtains the version information of the data synchronization script.
- Step S302 based on the version information, a function is selected from the preset function database, and the function is called to generate a preset universal script template;
- step S303 a data synchronization script is generated based on the analysis result and the preset universal script template.
- the universal script template is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources.
- step S50 executes the data synchronization script stored in the secure storage through the principle of mirror mapping operation, and synchronizes the source data on the source data source to the target data source, including the following steps:
- Step S501 encrypting the account name and password of the source data source into cipher text with a key
- the data synchronization request also includes the ciphertext of the source data source
- the account name and password for storing the source data are encrypted. Only after successful decryption can the source data in the source data source be obtained and the password is saved
- Hadoop Hadoop is an open source distributed parallel processing platform. The advantage of encryption is to ensure the security of data synchronization and prevent confidential information from being synchronized to the target data source due to receiving misoperation instructions.
- Step S502 decrypt the ciphertext to obtain the decrypted account name and password
- the user name and password can be encrypted according to the preset encryption algorithm. Only after the encrypted ciphertext is successfully decrypted can the source data of the source data source be obtained. This way of obtaining source data is compared to directly based on the data.
- the method of synchronously requesting to obtain source data has the advantage of keeping the data in the source data source confidential in advance, thereby preventing the leakage of important source data.
- Step S503 Obtain source data from the source data source according to the decrypted account name and password;
- each account name and password corresponds to different source data in the source data source, so the source data can be selectively obtained according to the account name and password.
- Step S504 Execute the data synchronization script according to the execution path, execute the data synchronization script stored in the secure storage through the principle of mirror mapping operation, and synchronize the source data to the target data source.
- the source data in the source data source can be obtained only after the decryption is successful. Therefore, it is necessary to establish a pre-set execution path.
- synchronizing data perform storage in secure storage through the principle of mirroring and mapping operation.
- the data synchronization script in, finally synchronizes the source data to the target data source through different HDFS paths.
- step S302 selecting a function from a preset function database based on version information, and calling the function to generate a data synchronization script, includes the following steps:
- Step S3021 Pre-establish a mapping relationship between the preset version information and the functions of the preset function database
- the data synchronization script when the data synchronization script is generated through the preset universal script template, different versions of the data synchronization script need to be generated according to the data synchronization request, because when the script is generated, different functions need to be called to execute the corresponding version.
- Data synchronization script instructions therefore, the correspondence between the version information and the function to be called needs to be established in advance, so that the corresponding function can be obtained according to the known version information.
- the above-mentioned mapping relationship can be established through a hash table.
- Step S3022 Based on the mapping relationship, a function is selected from the preset function database according to the version information, and the function is called to generate a data synchronization script.
- different source data may come from different source data sources, for example, structured databases such as ORACLE and MYSQL, semi-structured databases such as MON GODB, POSTGRED, and HIVE. Since there is a mapping relationship between the version information and the function to be called, the specified function can be called to realize the business logic of generating the data synchronization script.
- the information of the business logic includes the operation of adding, reading, updating and deleting data.
- the corresponding access path of the source data source and the target data source where the a data is located is obtained, and the source data source and target data source information and their respective access paths are added to the generated In the business logic of the data synchronization script, a corresponding synchronization script is generated.
- FIG. 9 is a schematic flowchart of a second embodiment of a data synchronization method according to this application.
- step S40 of FIG. 2 based on the data synchronization script, before the source data on the source data source is synchronized to the target data source, the following steps are further included:
- Step S60 detecting whether the source data to be synchronized is synchronized from the preset source data source to the preset target data source;
- Step S70 If the source data to be synchronized is synchronized from the preset source data source to the preset target data source, output a prompt message indicating that the data synchronization script has run successfully;
- a prompt message indicating that the data synchronization script runs successfully is output, indicating that each data synchronization script in the data synchronization script can achieve data synchronization Therefore, data synchronization can be achieved by executing scripts.
- step S80 if the source data to be synchronized is not synchronized from the preset source data source to the preset target data source, a prompt message indicating that the data synchronization script fails to run is output.
- a prompt message indicating that the data synchronization script fails to run is output.
- the problematic data synchronization script can be effectively screened out.
- FIG. 10 is a schematic diagram of functional modules of an embodiment of a data synchronization device according to the present application.
- the data synchronization device includes the following modules:
- the receiving module 10 is used to obtain a data synchronization request, where the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the source data source and the target data source Business logic information for data synchronization between;
- the parsing module 20 is used for parsing the data synchronization request to obtain the parsing result
- the script generation module 30 is used to generate a data synchronization script based on the analysis result and a preset general script template.
- the general script template is constructed by extracting common parameters in the script code for data synchronization between different data sources;
- the data synchronization module 40 is used to synchronize the source data on the source data source to the target data source based on the data synchronization script.
- the receiving module 10 is used to obtain a data synchronization request, where the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization source data source.
- the business logic information for data synchronization with the target data source is used to parse the data synchronization request to obtain the parsing result; the script generation module 30 is used to generate the data synchronization script based on the parsing result and the preset general script template,
- the universal script template is constructed by extracting common parameters in the script code that realizes data synchronization between different data sources; the data synchronization module 40 is used to synchronize the source data on the source data source to the target data source based on the data synchronization script.
- the module of the data synchronization device can realize the generation of the corresponding data synchronization script through the preset universal script template, which improves the generation efficiency of the data synchronization script, and further improves the efficiency of the data synchronization.
- the present application also provides a computer-readable storage medium.
- the computer-readable storage medium may be a non-volatile computer-readable storage medium or a volatile computer-readable storage medium.
- the computer-readable storage medium stores computer instructions, and when the computer instructions are executed on the computer, the computer executes the following steps:
- the data synchronization request includes the source data information to be synchronized in the source data source, the parameter information of the source data source, the parameter information of the target data source, and the realization of the source data source and the target data source Business logic information for data synchronization between;
- the source data on the source data source is synchronized to the target data source.
- the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
- the technical solution of this application essentially or the part that contributes to the existing technology or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium.
- a computer device which can be a personal computer, a server, or a network device, etc.
- the aforementioned storage media include: U disk, mobile hard disk, read-only memory (read-only memory, ROM), random access memory (random access memory, RAM), magnetic disks or optical disks and other media that can store program codes. .
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及大数据技术领域,公开了一种数据同步方法,包括以下步骤:获取数据同步请求;根据所述数据同步请求,获取所述源数据源中待同步的源数据以及目标数据源的参数信息;基于所述业务逻辑信息、所述参数信息以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为基于提取实现不同的数据源之间的同步数据的脚本代码公共参数构建得到;基于所述数据同步脚本将所述源数据源上的源数据同步到所述目标数据源。本申请还公开了一种数据同步装置、设备及计算机可读存储介质。本申请通过由预置的通用脚本模板生成数据同步脚本,提高了数据同步脚本的生成效率,进而提高了数据同步的效率。
Description
本申请要求于2020年2月25日提交中国专利局、申请号为202010115404.0、发明名称为“数据同步方法、装置、设备及计算机可读存储介质”的中国专利申请的优先权,其全部内容通过引用结合在申请中。
本申请涉及增量备份领域,尤其涉及一种数据同步方法、装置、设备及计算机可读存储介质。
目前,随着移动互联网的发展和便利,越来越多的企业都在使用数据化运营,因此源数据源被不断扩充,可以包括ORACLE,MYSQL等结构化数据库,MON GODB,POSTGRED,HIVE等半结构化数据库,如何高效地从数据源的每个数据库库中获取到源数据,又可以将源数据同步到指定的目标数据源显得尤为重要,然而,目前只能通过执行单一脚本来实现数据同步,发明人意识到,在大数据场景下,则需要通过人工的方式构建大批量的脚本来实现数据同步,耗时耗力,因此会造成数据同步效率的低下。因此,如何提高数据同步的效率是目前亟待解决的技术问题。
发明内容
本申请的主要目的在于提供一种数据同步方法、装置、设备及计算机可读存储介质,旨在解决数据同步效率较低的技术问题。
为实现上述目的,本申请第一方面提供了提供一种数据同步方法,所述数据同步方法包括以下步骤:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
本申请第二方面提供了一种数据同步设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
本申请第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如下步骤:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
本申请第四方面提供了一种数据同步装置,包括:接收模块,用于获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目 标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析模块,用于解析所述数据同步请求,得到解析结果;脚本生成模块,用于基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;数据同步模块,用于基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
本申请提供的技术方案中,获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。本申请中,获取用户配置信息,将所述配置信息输入预置通用脚本模板,通过所述预置通用脚本模板生成数据同步脚本,避免了由多次构建模板而造成的数据同步效率低下。通过本申请,可大幅度降低脚本生成的难度、简化了模板生成的流程,提高了数据同步的效率。
图1为本申请实施例方案涉及的数据同步设备运行环境的结构示意图;
图2为本申请数据同步方法的第一实施例的流程示意图;
图3为图2中步骤S40的一个实施例的细化流程示意图;
图4为图2中步骤S40的一个实施例的细化流程示意图;
图5为图3中步骤S401的一个实施例的细化流程示意图;
图6为图2中步骤S30的一个实施例的细化流程示意图;
图7为图4中步骤S50的一个实施例的细化流程示意图;
图8为图6中步骤S302的一个实施例的细化流程示意图;
图9为本申请数据同步方法的第二实施例的流程示意图;
图10为本申请数据同步装置的一个实施例的功能模块示意图。
本申请实施例提供了一种数据同步方法、装置、设备及计算机可读存储介质,用于获取用户配置信息,将所述配置信息输入预置通用脚本模板,通过所述预置通用脚本模板生成数据同步脚本,避免了由多次构建模板而造成的数据同步效率低下。通过本申请,可大幅度降低脚本生成的难度、简化模板生成的流程,提高数据同步的效率。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请提供一种数据同步设备。
参照图1,图1为本申请实施例方案涉及的数据同步设备运行环境的结构示意图。
如图1所示,该数据同步设备包括:处理器1001,例如CPU,通信总线1002、用户接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以 是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的数据同步设备的硬件结构并不构成对数据同步设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及数据同步程序。其中,操作系统是管理和控制数据同步设备和软件资源的程序,支持数据同步程序以及其它软件和/或程序的运行。
在图1所示的数据同步设备的硬件结构中,网络接口1004主要用于接入网络;用户接口1003主要用于侦测确认指令和编辑指令等。而处理器1001可以用于调用存储器1005中存储的数据同步程序,并执行以下数据同步方法的各实施例的操作。
基于上述数据同步设备硬件结构,提出本申请数据同步方法的各个实施例。
参照图2,图2为本申请数据同步方法的第一实施例的流程示意图。本实施例中,数据同步方法包括以下步骤:
步骤S10,获取数据同步请求,其中,数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现源数据源与目标数据源之间的数据同步的业务逻辑信息;
在本实施例中,对于请求中的各个参数的设置,具体可以通过在数据同步平台或者终端上提供的人机交互界面来自行设置,在设置完成后,系统或者终端根据界面上的设置生成对应的指令,即是人机交互界面接收的数据同步的操作指令,人机交互界面的终端设备可以是智能手机、平板电子设备、便携式计算机、个人数字助理、个人计算机或一体机等。例如,接收到将MYSQL数据库中的数据同步到Hive1中的指令。在机器接收到操作指令后,会根据操作指令生成任务指令,任务指令包括待执行任务的内容信息,内容信息包括待执行任务的类型。
步骤S20,解析数据同步请求,得到解析结果;
在本实施例中,在接收到数据同步请求后,会对数据同步请求进行解析,从而可以得到源数据源的参数信息和目标数目源的信息。例如,在接收到当前的数据同步请求后,会对当前的数据同步请求进行解析,从而得到MYSQL数据库的参数信息和Hive1的参数信息,获取源数据源中待同步的源数据以及目标数据源的参数信息,可便于将待同步的源数据从源数据源同步到目标数据源。
步骤S30,基于解析结果以及预置的通用脚本模板,生成数据同步脚本,通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;
在本实施例中,预先从实现不同数据源之间的数据同步的脚本代码中提取出公共的代码,并基于公共的代码生成预置的通用脚本模板,由于数据同步请求包括源数据源中待同步的源数据信息、目标数据源的参数信息、实现源数据源与目标数据源之间的数据同步的业务逻辑信息,因此解析后所得到的解析结果也包括了将待同步的数据从源数据源同步到目标数据源的业务逻辑信息,根据解析结果和预置的通用脚本模板可生成数据同步脚本。
相较于现有技术中的,每同步一份数据就会需要一份脚本,尤其是大数据场景下,源数据会来自于不同的源数据源,这样就会需要预先准备很多与不同源数据源相互对应的数据同步脚本,在对离线数据进行数据同步时,是通过提供若干接口的方式将数据从从源数据源同步到目标数据源,甚至使用人工写脚本的方式,一份数据或者一批数据写一个脚本,通过预置的通用脚本模板生成数据同步脚本的方式,可提高数据同步脚本生成的效率。
步骤S40,基于数据同步脚本,将源数据源上的源数据同步到目标数据源。
在本实施例中,执行数据同步脚本,将数据从源数据源同步到目标数据源,源数据源包括ORACLE,MYSQL等结构化数据库,MONGODB,POSTGRED,HIVE等半结构化数据库。由于数据同步脚本是通过预置的通用脚本模版生成的,简化了数据同步脚本生成的流程,降低了脚本生成的难度、提高脚本生成效率,进而提高数据同步的效率。
参照图3,图3为图2中步骤S40的一个实施例的细化流程示意图。本实施例中,步骤S40,基于数据同步脚本,将源数据源上的源数据同步到目标数据源,包括以下步骤:
步骤S401,将数据同步脚本发送至预设的安全存储设备进行存储和备份;
在本实施例中,安全存储设备可以为分布式文件系统,即HDFS,用于存取数据,HDFS为主从结构,由主节点和从节点构成。主节点用于接收用户操作请求、维护文件系统的目录结构,以及管理文件与block之间关系。从节点主要用于存储文件,将文件分成block存储在磁盘上。
步骤S402,读取数据同步脚本在安全存储设备中的存储路径,生成执行路径。
在本实施例中,在对数据同步请求解析后,会得到源数据源信息、目标数据源信息和实现源数据源与目标数据源之间的数据同步的业务逻辑信息,同步脚本存储路径是预先确定好的,且存储在安全存储设备,根据存储路径获取脚本的执行路径,例如,当前HDFS有一个主节点和三个从节点,三个从节点分别为第一从节点、第二从节点和第三从节点,例如,数据同步的路径可以为自主节点接收到同步数据的指令后,将数据依次同步到第一从节点、再同步到第二从节点、再同步到第三从节点,最后同步到目标数据源。
不同类型的数据指的是来自于不同源数据源的数据,例如,来自ORACLE,MYSQL等结构化数据库。当接收到的同步数据的指令后,则根据执行路径执行数据同步脚本,以使数据从源数据源同步到目标数据源,例如,将MYSQL同步到不同的HIVE中。
参照图4,图4为图2中步骤S40的一个实施例的细化流程示意图。本实施例中,步骤S40,基于数据同步脚本将源数据源上的源数据同步到目标数据源的步骤包括:
步骤S50,根据执行路径,通过镜像映射运行的原理执行存储于安全存储中的数据同步脚本,将源数据源上的源数据同步到目标数据源。
在本实施例中,将执行路径镜像映射到预置的执行模块上,以实现根据执行路径,执行数据同步脚本。
参照图5,图5为图3中步骤S401的一个实施例的细化流程示意图。本实施例中,在步骤S401存以下情况时,若预设的安全存储设备为分布式文件系统时,将数据同步脚本发送至预设的安全存储设备进行存储和备份,还包括以下步骤:
步骤S4011,将数据同步脚本发送至分布式文件系统,分布式文件系统包括一个主节点和多个从节点,主节点用于存储所述数据同步脚本的元数据,从节点用于存储数据同步脚本;
在本实施例中,元数据用来指示数据同步脚本的存储位置。例如,是存储于第一从节点,还是存储于第二从节点。当存储于各个从节点的数据发生变更时,主节点会接收到发生变更后的消息,并更改元数据的信息。数据同步脚本独立存储于从节点中,因此数据同步脚本与数据同步脚本之间是相互独立的,降低了历史脚本被篡改的风险。
步骤S4012,基于元数据,通过从节点对数据同步脚本进行存储和备份。
在本实施例中,通过心跳包将预置时间内的从节点的消息发送给主节点,例如每隔5秒钟发送一次心跳,这样就可以监控到每个从节点的状况,当某个从节点发生故障时,可将故障的消息发送给主节点,主节点根据元数据信息,将发生故障的从节点内存储的数据备份到其他从节点中去,分布式文件系统具有自动备份机制,可保证每个数据同步脚本的稳定性。例如,当第一从节点发生故障时,可将故障的消息发送给主节点,主节点根据元 数据信息,将第一从节点内存储的数据备份到第二从节点中去。
参照图6,图6为图2中步骤S30的一个实施例的细化流程示意图。本实施例中,步骤S30,基于解析结果以及预置的通用脚本模板,生成数据同步脚本,通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到,包括以下步骤:
步骤S301,基于解析结果,获取待生成的数据同步脚本的版本信息;
在本实施例中,实时监测人机交互界面是否触发指令,以判断是否进入生成数据同步脚本的准备阶段,当监测到人机交互界面存在触发指令时,则根据解析结果与数据同步脚本的版本信息之间的预置映射关系,得到数据同步脚本的版本信息。
步骤S302,基于版本信息,从预置函数数据库选出函数,调用函数生成预置的通用脚本模板;
步骤S303,基于解析结果以及预置的通用脚本模板,生成数据同步脚本,通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到。
在本实施例中,版本信息与预置函数数据库中的函数之间是存在预置映射关系的,因此,可基于版本信息,从预置函数数据库选出函数,根据函数实现生成数据同步脚本的业务逻辑,并得到数据同步脚本。
参照图7,图7为图4中步骤S50的一个实施例的细化流程示意图。本实施例中,步骤S50,根据执行路径,通过镜像映射运行的原理执行存储于安全存储中的数据同步脚本,将源数据源上的源数据同步到目标数据源,包括以下步骤:
步骤S501,将源数据源的账户名和密码通过密钥加密成密文;
数据同步请求还包括源数据源的密文;
在本实施例中,为了保证源数据的安全性,因此,对存储有源数据的账户名和密码进行了加密,只有在成功解密后,才可以获取到源数据源中的源数据,将密码保存在Hadoop上,Hadoop为开源的分布式并行处理平台,加密的好处是可保证数据同步的安全性,防止由于接收到误操作的指令而将机密信息同步到目标数据源。
步骤S502,对密文进行解密,得到解密后的账户名和密码;
在本实施例中,由于只有在接收到数据同步请求,才会触发解密、数据同步等操作,因此需要先获取数据同步请求,可以通过预置监控程序监控是否接收到到数据同步请求。
可以按照预置的加密算法对用户名和密码进行加密,只有对加密后的密文进行成功解密后,才可以获取源数据源的源数据,此种获取源数据的方式,相较于直接根据数据同步请求获取源数据的方式,其优点是对源数据源中的数据提前做了保密,进而可以防止重要的源数据发生泄漏。
步骤S503,根据解密后的账户名和密码从源数据源获取源数据;
在本实施例中,每个账户名和密码都对应着源数据源中的不同的源数据,因此可以根据账户名和密码有选择性地获取源数据。
步骤S504,按照执行路径执行数据同步脚本,通过镜像映射运行的原理执行存储于安全存储中的数据同步脚本,将源数据同步到目标数据源。
在本实施例中,只有解密成功后,才可以获取到源数据源中的源数据,因此,需要建立预先设置好执行路径,在同步数据的时候,通过镜像映射运行的原理执行存储于安全存储中的数据同步脚本,最终通过不同的HDFS路径将源数据同步到目标数据源中去。
参照图8,图8为图6中步骤S302的一个实施例的细化流程示意图。本实施例中,步骤S302,基于版本信息,从预置函数数据库选出函数,调用函数生成数据同步脚本,包括以下步骤:
步骤S3021,预先建立预置版本信息和预置函数数据库的函数之间的映射关系;
在本实施例中,在通过预置的通用脚本模板生成数据同步脚本,需要根据数据同步请求,生成不同版本的数据同步脚本,由于在生成脚本的时候需要调用不同的函数去执行生成相应版本的数据同步脚本指令,因此,需要预先建立版本信息与待调用函数之间的对应关系,这样就可以根据已知的版本信息获取到相应的函数。具体地,可以通过散列表建立上述的映射关系。
步骤S3022,基于映射关系,根据版本信息从预置函数数据库选出函数,调用函数生成数据同步脚本。
在本实施例中,不同的源数据可以来自于不同的源数据源,例如,ORACLE,MYSQL等结构化数据库,MON GODB,POSTGRED,HIVE等半结构化数据库。由于版本信息与待调用的函数之间存在映射关系,因此,可调用到指定的函数,实现生成数据同步脚本的业务逻辑。业务逻辑的信息包括对数据的增加、读取、更新和删除操作。例如,当前接收到将a数据同步到b数据库,则获取a数据所在的源数据源和目标数据源相应的访问路径,将源数据源和目标数据源信息以及各自的访问路径添加到用于生成数据同步脚本的业务逻辑中,生成相应的同步脚本。
参照图9,图9为本申请数据同步方法的第二实施例的流程示意图。本实施例中,在图2的步骤S40,基于数据同步脚本,将源数据源上的源数据同步到目标数据源之前,还包括以下步骤:
步骤S60,检测待同步的源数据是否从预置源数据源同步到预置目标数据源;
在本实施例中,在生成数据同步脚本之后,为确保在执行数据同步脚本可以将待同步数据从预置源数据源同步到预置目标数据源,因此需要先试运行。
步骤S70,若待同步的源数据从预置源数据源同步到预置目标数据源,则输出数据同步脚本运行成功的提示信息;
在本实施例中,通过检测待同步数据是否从预置源数据源同步到预置目标数据源,以检测数据同步脚本中的各个脚本是否都可以准确运行。
在本实施例中,若待同步数据从预置源数据源同步到预置目标数据源,则输出数据同步脚本运行成功的提示信息,说明数据同步脚本中的各个数据同步脚本都可以实现数据同步的任务,因此,可以通过执行脚本实现数据的同步。
步骤S80,若待同步的源数据未从预置源数据源同步到预置目标数据源,则输出数据同步脚本运行失败的提示信息。
在本实施例中,若待同步数据未从预置源数据源同步到预置目标数据源,则输出数据同步脚本运行失败的提示信息。通过提前检测可有效筛选出存在问题的数据同步脚本。
参照图10,图10为本申请数据同步装置的一个实施例的功能模块示意图。本实施例中,数据同步装置包括以下模块:
接收模块10,用于获取数据同步请求,其中,数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现源数据源与目标数据源之间的数据同步的业务逻辑信息;
解析模块20,用于解析数据同步请求,得到解析结果;
脚本生成模块30,用于基于解析结果以及预置的通用脚本模板,生成数据同步脚本,通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;
数据同步模块40,用于基于数据同步脚本,将源数据源上的源数据同步到目标数据源。
本实施例中,接收模块10用于获取数据同步请求,其中,数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现源数据源与 目标数据源之间的数据同步的业务逻辑信息;解析模块20用于解析数据同步请求,得到解析结果;脚本生成模块30用于基于解析结果以及预置的通用脚本模板,生成数据同步脚本,通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;数据同步模块40用于基于数据同步脚本,将源数据源上的源数据同步到目标数据源。通过数据同步装置的模块可实现通过预置的通用脚本模板生成相应的数据同步脚本,提高了数据同步脚本的生成效率,进而也提高了数据同步的效率。
本申请还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,也可以为易失性计算机可读存储介质。计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如下步骤:
获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;
解析所述数据同步请求,得到解析结果;
基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;
基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (20)
- 一种数据同步方法,包括:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求1所述的数据同步方法,其中,在所述基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源的步骤之前,还包括:将所述数据同步脚本发送至预设的安全存储设备进行存储和备份;读取所述数据同步脚本在所述安全存储设备中的存储路径,生成执行路径;所述基于所述数据同步脚本将所述源数据源上的源数据同步到所述目标数据源的步骤包括:根据所述执行路径,通过镜像映射运行的原理执行存储于所述安全存储中的所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求2所述的数据同步方法,其中,所述若所述预设的安全存储设备为分布式文件系统时,所述将所述数据同步脚本发送至预设的安全存储设备进行存储和备份,包括:将所述数据同步脚本发送至所述分布式文件系统,所述分布式文件系统包括一个主节点和多个从节点,所述主节点用于存储所述数据同步脚本的元数据,所述从节点用于存储数据同步脚本;基于所述元数据,通过所述从节点对所述数据同步脚本进行存储和备份。
- 根据权利要求1所述的数据同步方法,其中,所述基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到,包括:基于所述解析结果,获取待生成的数据同步脚本的版本信息;基于所述版本信息,从预置函数数据库选出函数,调用所述函数生成预置的通用脚本模板;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到。
- 根据权利要求2所述的数据同步方法,其中,所述根据所述执行路径,通过镜像映射运行的原理执行存储于所述安全存储中的数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源,包括:将所述源数据源的账户名和密码通过密钥加密成密文;所述数据同步请求还包括所述源数据源的密文;对所述密文进行解密,得到解密后的账户名和密码;根据所述解密后的账户名和密码从所述源数据源获取源数据;按照所述执行路径执行所述数据同步脚本,通过镜像映射运行的原理执行存储于所述安全存储中的数据同步脚本,将所述源数据同步到所述目标数据源。
- 根据权利要求4所述的数据同步方法,其中,所述基于所述版本信息,从预置函数数据库选出函数,调用所述函数生成数据同步脚本,包括:预先建立预置版本信息和预置函数数据库的函数之间的映射关系;基于所述映射关系,根据版本信息从预置函数数据库选出函数,调用所述函数生成数据同步脚本。
- 根据权利要求1所述的数据同步方法,其中,在所述基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源的步骤之前,还包括:检测待同步的源数据是否从预置源数据源同步到预置目标数据源;若待同步的源数据从预置源数据源同步到预置目标数据源,则输出所述数据同步脚本运行成功的提示信息;若待同步的源数据未从预置源数据源同步到预置目标数据源,则输出所述数据同步脚本运行失败的提示信息。
- 一种数据同步设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如下步骤:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求8所述的数据同步设备,所述处理器执行所述计算机程序时还实现以下步骤:将所述数据同步脚本发送至预设的安全存储设备进行存储和备份;读取所述数据同步脚本在所述安全存储设备中的存储路径,生成执行路径;所述基于所述数据同步脚本将所述源数据源上的源数据同步到所述目标数据源的步骤包括:根据所述执行路径,通过镜像映射运行的原理执行存储于所述安全存储中的所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求9所述的数据同步设备,所述处理器执行所述计算机程序时还实现以下步骤:将所述数据同步脚本发送至所述分布式文件系统,所述分布式文件系统包括一个主节点和多个从节点,所述主节点用于存储所述数据同步脚本的元数据,所述从节点用于存储数据同步脚本;基于所述元数据,通过所述从节点对所述数据同步脚本进行存储和备份。
- 根据权利要求8所述的数据同步设备,所述处理器执行所述计算机程序时还实现以下步骤:基于所述解析结果,获取待生成的数据同步脚本的版本信息;基于所述版本信息,从预置函数数据库选出函数,调用所述函数生成预置的通用脚本模板;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到。
- 根据权利要求9所述的数据同步设备,所述处理器执行所述计算机程序时实现以下步骤:将所述源数据源的账户名和密码通过密钥加密成密文;所述数据同步请求还包括所述源数据源的密文;对所述密文进行解密,得到解密后的账户名和密码;根据所述解密后的账户名和密码从所述源数据源获取源数据;按照所述执行路径执行所述数据同步脚本,通过镜像映射运行的原理执行存储于所述安全存储中的数据同步脚本,将所述源数据同步到所述目标数据源。
- 根据权利要求11所述的数据同步设备,所述处理器执行所述计算机程序时还实现以下步骤:预先建立预置版本信息和预置函数数据库的函数之间的映射关系;基于所述映射关系,根据版本信息从预置函数数据库选出函数,调用所述函数生成数据同步脚本。
- 根据权利要求8所述的数据同步设备,所述处理器执行所述计算机程序时还实现以下步骤:检测待同步的源数据是否从预置源数据源同步到预置目标数据源;若待同步的源数据从预置源数据源同步到预置目标数据源,则输出所述数据同步脚本运行成功的提示信息;若待同步的源数据未从预置源数据源同步到预置目标数据源,则输出所述数据同步脚本运行失败的提示信息。
- 一种计算机可读存储介质,所述计算机可读存储介质中存储计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如下步骤:获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析所述数据同步请求,得到解析结果;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求15所述的计算机可读存储介质,当所述计算机指令在计算机上运行时,使得计算机还执行以下步骤:将所述数据同步脚本发送至预设的安全存储设备进行存储和备份;读取所述数据同步脚本在所述安全存储设备中的存储路径,生成执行路径;所述基于所述数据同步脚本将所述源数据源上的源数据同步到所述目标数据源的步骤包括:根据所述执行路径,通过镜像映射运行的原理执行存储于所述安全存储中的所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
- 根据权利要求16所述的计算机可读存储介质,当所述计算机指令在计算机上运行时,使得计算机还执行以下步骤:将所述数据同步脚本发送至所述分布式文件系统,所述分布式文件系统包括一个主节点和多个从节点,所述主节点用于存储所述数据同步脚本的元数据,所述从节点用于存储数据同步脚本;基于所述元数据,通过所述从节点对所述数据同步脚本进行存储和备份。
- 根据权利要求15所述的计算机可读存储介质,当所述计算机指令在计算机上运行时,使得计算机还执行以下步骤:基于所述解析结果,获取待生成的数据同步脚本的版本信息;基于所述版本信息,从预置函数数据库选出函数,调用所述函数生成预置的通用脚本模板;基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到。
- 根据权利要求16的计算机可读存储介质,当所述计算机指令在计算机上运行时,使得计算机还执行以下步骤:将所述源数据源的账户名和密码通过密钥加密成密文;所述数据同步请求还包括所述源数据源的密文;对所述密文进行解密,得到解密后的账户名和密码;根据所述解密后的账户名和密码从所述源数据源获取源数据;按照所述执行路径执行所述数据同步脚本,通过镜像映射运行的原理执行存储于所述安全存储中的数据同步脚本,将所述源数据同步到所述目标数据源。
- 一种数据同步装置,所述数据同步装置包括:接收模块,用于获取数据同步请求,其中,所述数据同步请求包括源数据源中待同步的源数据信息、源数据源的参数信息、目标数据源的参数信息、实现所述源数据源与所述目标数据源之间的数据同步的业务逻辑信息;解析模块,用于解析所述数据同步请求,得到解析结果;脚本生成模块,用于基于所述解析结果以及预置的通用脚本模板,生成数据同步脚本,所述通用脚本模板为通过提取实现不同数据源之间的数据同步的脚本代码中的公共参数构建得到;数据同步模块,用于基于所述数据同步脚本,将所述源数据源上的源数据同步到所述目标数据源。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010115404.0 | 2020-02-25 | ||
CN202010115404.0A CN111367883A (zh) | 2020-02-25 | 2020-02-25 | 数据同步方法、装置、设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021169277A1 true WO2021169277A1 (zh) | 2021-09-02 |
Family
ID=71210383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/118115 WO2021169277A1 (zh) | 2020-02-25 | 2020-09-27 | 数据同步方法、装置、设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111367883A (zh) |
WO (1) | WO2021169277A1 (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821565A (zh) * | 2021-09-10 | 2021-12-21 | 上海得帆信息技术有限公司 | 一种多数据源同步数据的方法 |
CN114840598A (zh) * | 2022-07-04 | 2022-08-02 | 好享家舒适智能家居股份有限公司 | 一种创建运行时数据源并自动切换的方法及系统 |
CN116541019A (zh) * | 2023-06-28 | 2023-08-04 | 深圳市极限网络科技有限公司 | 数据转发方法、系统、设备和可读存储介质 |
CN116560697A (zh) * | 2023-07-06 | 2023-08-08 | 上海鉴智其迹科技有限公司 | Dbc数据库同步方法、装置、电子设备及可读存储介质 |
CN118152475A (zh) * | 2024-03-04 | 2024-06-07 | 浪潮通用软件有限公司 | 一种内外网物理隔离环境下的数据同步方法及设备 |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111367883A (zh) * | 2020-02-25 | 2020-07-03 | 平安科技(深圳)有限公司 | 数据同步方法、装置、设备及计算机可读存储介质 |
CN112287021B (zh) * | 2020-07-13 | 2024-04-05 | 上海柯林布瑞信息技术有限公司 | 数据实时同步参数的生成、同步方法及装置、存储介质、终端 |
CN111984730A (zh) * | 2020-08-24 | 2020-11-24 | 中电九天智能科技有限公司 | 工业互联网集中式数据同步方法 |
CN112364049B (zh) * | 2020-11-10 | 2024-05-17 | 中国平安人寿保险股份有限公司 | 数据同步脚本生成方法、系统、终端及存储介质 |
CN112364101A (zh) * | 2020-11-11 | 2021-02-12 | 深圳前海微众银行股份有限公司 | 数据的同步方法、装置、终端设备及介质 |
CN112347080B (zh) * | 2020-11-11 | 2024-08-16 | 金蝶云科技有限公司 | 一种数据迁移方法及相关装置 |
CN112527904B (zh) * | 2020-12-17 | 2024-08-02 | 平安科技(深圳)有限公司 | 关联脚本自动同步方法、装置、计算机设备及存储介质 |
CN112612775B (zh) * | 2020-12-17 | 2023-06-27 | 平安消费金融有限公司 | 一种数据存储方法、装置、计算机设备及存储介质 |
CN113448775B (zh) * | 2021-06-25 | 2024-06-28 | 中国工商银行股份有限公司 | 多源异构数据备份方法及装置 |
CN114928620B (zh) * | 2022-05-31 | 2024-03-12 | 曙光信息产业股份有限公司 | 用户信息同步方法、装置、设备、存储介质和程序产品 |
CN115033647B (zh) * | 2022-08-11 | 2022-11-08 | 杭州湖畔网络技术有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN116204509A (zh) * | 2023-02-14 | 2023-06-02 | 中电金信软件有限公司 | 数据接入脚本生成方法、装置、电子设备及存储介质 |
CN117077218B (zh) * | 2023-10-07 | 2024-01-26 | 之江实验室 | 一种多中心医疗机构镜像的同步方法、装置、介质及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001565A1 (en) * | 2002-06-26 | 2004-01-01 | International Business Machines Corporation | Portal/portlet application data synchronization |
CN107908631A (zh) * | 2017-07-25 | 2018-04-13 | 平安科技(深圳)有限公司 | 数据处理方法、装置、存储介质和计算机设备 |
CN107967316A (zh) * | 2017-11-22 | 2018-04-27 | 平安科技(深圳)有限公司 | 一种数据同步方法、设备及计算机可读存储介质 |
CN109271447A (zh) * | 2018-09-04 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN111367883A (zh) * | 2020-02-25 | 2020-07-03 | 平安科技(深圳)有限公司 | 数据同步方法、装置、设备及计算机可读存储介质 |
-
2020
- 2020-02-25 CN CN202010115404.0A patent/CN111367883A/zh active Pending
- 2020-09-27 WO PCT/CN2020/118115 patent/WO2021169277A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040001565A1 (en) * | 2002-06-26 | 2004-01-01 | International Business Machines Corporation | Portal/portlet application data synchronization |
CN107908631A (zh) * | 2017-07-25 | 2018-04-13 | 平安科技(深圳)有限公司 | 数据处理方法、装置、存储介质和计算机设备 |
CN107967316A (zh) * | 2017-11-22 | 2018-04-27 | 平安科技(深圳)有限公司 | 一种数据同步方法、设备及计算机可读存储介质 |
CN109271447A (zh) * | 2018-09-04 | 2019-01-25 | 中国平安人寿保险股份有限公司 | 数据同步方法、装置、计算机设备和存储介质 |
CN111367883A (zh) * | 2020-02-25 | 2020-07-03 | 平安科技(深圳)有限公司 | 数据同步方法、装置、设备及计算机可读存储介质 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821565A (zh) * | 2021-09-10 | 2021-12-21 | 上海得帆信息技术有限公司 | 一种多数据源同步数据的方法 |
CN113821565B (zh) * | 2021-09-10 | 2024-03-15 | 上海得帆信息技术有限公司 | 一种多数据源同步数据的方法 |
CN114840598A (zh) * | 2022-07-04 | 2022-08-02 | 好享家舒适智能家居股份有限公司 | 一种创建运行时数据源并自动切换的方法及系统 |
CN116541019A (zh) * | 2023-06-28 | 2023-08-04 | 深圳市极限网络科技有限公司 | 数据转发方法、系统、设备和可读存储介质 |
CN116541019B (zh) * | 2023-06-28 | 2023-09-29 | 深圳市极限网络科技有限公司 | 数据转发方法、系统、设备和可读存储介质 |
CN116560697A (zh) * | 2023-07-06 | 2023-08-08 | 上海鉴智其迹科技有限公司 | Dbc数据库同步方法、装置、电子设备及可读存储介质 |
CN116560697B (zh) * | 2023-07-06 | 2023-09-15 | 上海鉴智其迹科技有限公司 | Dbc数据库同步方法、装置、电子设备及可读存储介质 |
CN118152475A (zh) * | 2024-03-04 | 2024-06-07 | 浪潮通用软件有限公司 | 一种内外网物理隔离环境下的数据同步方法及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN111367883A (zh) | 2020-07-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021169277A1 (zh) | 数据同步方法、装置、设备及计算机可读存储介质 | |
US11206451B2 (en) | Information interception processing method, terminal, and computer storage medium | |
US10031931B2 (en) | Systems and methods for automating management of distributed databases | |
AU2017386900B2 (en) | Malware detection and content item recovery | |
CN108319719B (zh) | 数据库数据校验方法、装置、计算机设备和存储介质 | |
AU2013243512A1 (en) | Telemetry system for a cloud synchronization system | |
TW201617771A (zh) | 備份方法、環境更新預先檢測方法及其系統 | |
CN112364049B (zh) | 数据同步脚本生成方法、系统、终端及存储介质 | |
US11989540B2 (en) | Systems and methods for non-disruptive continuous software delivery | |
US11048668B2 (en) | Sensitive data management | |
CN107918564B (zh) | 数据传输异常处理方法、装置、电子设备及存储介质 | |
WO2017201478A1 (en) | Continuous delivery pipeline segment models | |
CN111008211A (zh) | 可视化接口的创建方法、装置、可读存储介质及电子设备 | |
CN111339551B (zh) | 数据的验证方法及相关装置、设备 | |
CN108733808B (zh) | 大数据软件系统切换方法、系统、终端设备及存储介质 | |
CN114416883A (zh) | 区块链轻节点数据同步方法、装置、设备及可读存储介质 | |
CN112199441B (zh) | 基于大数据平台的数据同步处理方法、装置、设备及介质 | |
WO2016095716A1 (zh) | 一种故障信息处理方法与相关装置 | |
WO2014180398A1 (zh) | 数据差异分析方法及装置 | |
WO2023077748A1 (zh) | 一种账户管理方法、装置、计算机设备和存储介质 | |
CN115758447A (zh) | 信息安全业务处理及集群生成方法、电子设备和存储介质 | |
US10671505B2 (en) | System and method for monitoring service | |
CN106547626B (zh) | 用于对等架构均衡服务器的方法及服务器 | |
Karahoca et al. | Forensic benchmarking for android messenger applications | |
US11005928B2 (en) | Resilience in natively non-high availability services |
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: 20921952 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20921952 Country of ref document: EP Kind code of ref document: A1 |