CN104317843B - 一种数据同步etl系统 - Google Patents

一种数据同步etl系统 Download PDF

Info

Publication number
CN104317843B
CN104317843B CN201410534972.9A CN201410534972A CN104317843B CN 104317843 B CN104317843 B CN 104317843B CN 201410534972 A CN201410534972 A CN 201410534972A CN 104317843 B CN104317843 B CN 104317843B
Authority
CN
China
Prior art keywords
module
synchronous
data
interface
chronization
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201410534972.9A
Other languages
English (en)
Other versions
CN104317843A (zh
Inventor
王新亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Hanzhiyou Information Technology Service Co Ltd
Original Assignee
Shanghai Hanzhiyou Information Technology Service Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Hanzhiyou Information Technology Service Co Ltd filed Critical Shanghai Hanzhiyou Information Technology Service Co Ltd
Priority to CN201410534972.9A priority Critical patent/CN104317843B/zh
Publication of CN104317843A publication Critical patent/CN104317843A/zh
Application granted granted Critical
Publication of CN104317843B publication Critical patent/CN104317843B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor

Abstract

本发明属于数据同步技术领域,具体为一种数据同步ETL系统。本发明系统包括如下功能模块:上下文参数配置模块,同步接口定义模块,同步脚本生成模块,工作流配置模块,数据同步核心模块,日志、预警模块;其中,前三个模块是基础模块,按照模块的次序操作,生成同步脚本;工作流配置模块主要起到调度中心的作用,在工作流中配置同步脚本实现并行或串行执行、并行的进程数量、什么时间或条件下来触发任务;上述执行步骤中发生异常或错误任务时,日志预警模块将捕获错误原因,并通知到系统管理人员。本发明具有双向同步机制,支持配置多个上下文名称访问多环境下的数据源;同步方法覆盖面广,同时支持复杂的自定义同步方法,扩展性强。

Description

一种数据同步ETL系统
技术领域
本发明属于数据同步技术领域,具体涉及一种数据同步ETL系统。
背景技术
现有的数据同步系统,主要是提供生产环境业务数据给研发排查错误和问题重现的模拟等等,以及提供给数据分析员对业务数据进行分析,提供业务运营日、周、月报表供管理者使用或对销售部门的业务提供数据支持等。由于两者环境存在跨网络,两个环境下的服务器之间无法通信,通过VPN拨入访问生产环境并同步数据文件到本地环境下。
现有方式一,初始化是通过全量备份生产环境的数据库A,通过拷贝备份文件到服务器B,同时还原备份文件到数据库B中,完成历史数据的还原。增量部分,每日通过脚本同步数据库A产生的日志文件,拷贝到目标服务器B中,停止数据库B做相关的数据文件恢复,出现异常需要人为干预的代价也是比较高的。
现有方式二,开发环境下问题重现或运营支撑报表系统等需要生产数据,当然关键信息数据是经过加密和脱密处理的。对于环境使用的数据因每次上线解决的问题不同,需要初始化环境,而且排查某个周期内的问题点需要的数据会有不同要求。比如,上周发现了问题需要解决,就需要在开发环境和测试环境同步上周到某一天的交易数据,基础数据作为初始化的标配可以来源于基线版本。生产环境下的交易数据主要通过人工的方式导出,方法使用的是oracle数据库提供的expdp(导出)、impdp命令(导入),拷贝导出的文件到本地,再导入到开发或测试环境数据库下。
现有方案缺陷:
对于多套开发或测试环境下,不同的项目团队会有不同的需求,现有技术方案的处理方式在某些方法上有待改进,缺陷也就随之而来,主要表现如下:
1、“数据孤岛”导致的数据分散,不利于数据整合分析和增值服务;
2、数据文件需要落地再复制到目标端,需要多个步骤人工干预才能完成;
3、多个业务交易数据库的情况下,目标服务端需要多个实例或数据库来存放,在资源使用和性能上大大降低,导致成本增加;
4、步骤之间的工作流调度依赖无法解决,任务的触发会分散在不同的流程中;
5、缺少系统化的工具来处理,包括对异常处理的兼容性,报警机制等;
6、人工干预过多、手工操作导致的出错率过高、效率低等。
本发明涉及的有关名词定义:
ETL:Extract-Transform-Load 的缩写,用来描述将数据从来源端经过萃取(extract)、转换(transform)、加载(load)至目标端的过程。
元数据:对象的描述,即对数据库、表、列、列属性(类型、格式、约束等)以及主键/外部键关联等等的描述。
源数据:指数据的提供方,可以是基于数据库存放,NOSQL类型或者文本类型等等,本文中主要指oracle数据库。
目标数据:指从源数据方同步过来的数据需要存放的数据库或者存储设备。
NOSQL:key-value(关键字—值)非结构化的列式存储方式的数据库。
发明内容
本发明的目的在于提供一种能够快速响应多环境间的数据同步,且确保数据安全性,并可减少降低人工干预处理降低出错率,满足使用过程中可扩展性、易维护、稳定性要求的数据同步ETL系统。
本发明提供的数据同步ETL系统,使数据库管理员在同步数据过程中使用起来更便捷,同时具有关键检查项的报警机制,适用于多环境之下更改配置文件就能达到快速同步;对数据的整合和计算上提供了工作流概念,来解决任务间的相互依赖和先后顺序,以及并行还是串行执行等。随着业务数据量的快速增长,跨环境同步数据复杂度和硬件开销会相应的增加,同步数据的代价也会成正比增大。为了降低成本,快速响应多环境间的数据同步难度,使用过程中对不同场景提供可扩展、易维护、快速、稳定性高的平台。
数据同步就像高速公路的交通,前方事故会造成交通堵塞,在达到目的地时候也会需要带着收获返回路线。本发明方案支持双向机制,包括一对一单向、多对一单向、一对一反向、一对多反向的模式。
图1为适用于一对一单向、多对一单向模式。多数据源情况下,有来自于多个数据库、外部文本文件、异构数据库等,通过数据同步系统能够实现端对端的同步,具备低延迟和大数据量吞吐的稳定性。不同场景下,比如数据来源只有一个而且是单向模式,只需要在数据源模块配置源和目标的连接源。多数据源情况下,只需要增加上下文来配置不同的源和目标的用户名、密码、服务器地址、端口、实例。数据抽取有全量和增量之分,全量是指从过去开始一直到当前某个时间点的数量;增量是指某一个区间段内的数量,可以通过主键序列号、时间戳来切分。获取增量变化数据的方式相对全量要复杂,比如业务系统在设计之初没有考虑到记录数据在发生更改的时间点,这样就导致无法区分在某个时刻被修改的记录,如果是选择基于时间戳的增量同步模式,这笔记录就无法被捕获,数据的一致性就无法满足要求。通常获取变化数据的常用做法主要有如下几种:
(1)对比法,对比某个时间段内的数据,对比前后获取的数据找出变化的部分;
(2)触发器法,当某个条件成立的时候,触发器里面所定义的语句会在执行前或执行后,被自动执行;
(3)基于时间戳,记录新增或修改数据的时间点;
(4)快照法,通过主数据建立副本,实时反映数据到副本;
(5)基于日志分析,解析数据操作过程中生成的日志文件;
(6)基于API法,通过请求服务接口,接收服务接口传输的数据。
本发明提供的数据同步系统ETL系统,包括如下功能模块:上下文参数配置模块,同步接口定义模块,同步脚本生成模块,工作流配置模块,数据同步核心模块,日志、预警模块,整体结构如图2所示。模块之间的关系主要在两方面:(一)上下文参数配置模块、同步接口定义模块、同步脚本生成模块,这三个是基础模块,三者之间缺一不可,按照模块的次序操作,生成同步脚本;生成的同步脚本中参数有来源于上下文参数配置模块中的上下文名称和其他参数、同步接口定义模块中定义的同步方法、需要同步的源和目标对应的表名称以及同步的条件;同步脚本生成模块在收到同步接口定义模块的请求后,同步脚本生成模块根据传入的参数值,自动匹配同步方法名来生成同步脚本;(二)工作流配置模块主要起到调度中心的作用,在工作流中可以配置同步脚本实现并行或串行执行、并行的进程数量、什么时间或条件下来触发任务;并行任务中的分支可以配置成串行结构,就像二叉树的父节点执行完父任务后,左边和右边的子节点可以采取同时执行,也可以采取等待左边任务执行完成后再执行右边任务;调度中心中设置好调度时间,任务会在定义好的时间点自动触发执行,当工作流调取同步脚本发送请求到数据同步核心模块,同步核心模块收到请求后调用读取接口,通过上下文名称访问源和目标的数据连接,连接成功后读取数据记录,并将返回的结果集并写入内存中,同时通知数据同步核心模块执行写入接口,将结果集写入目标数据源。上述执行步骤中发生异常或错误的任务,日志预警模块将捕获错误原因,并通知到系统管理人员。
以下详细的介绍了各模块的组成部分工作机制,以及五个模块中的功能说明,模块间的相互关系。
1、所述上下文参数配置模块,包括:上下文名称定义、源数据库和目标数据库连接的用户名和密码,以及数据库地址,参见图3所示。上下文名称的功能作用是区分多个数据连接源或反向同步数据到另外一个环境下,用来获取不同的源数据库和目标的数据库连接用户名、密码、服务器地址、端口、实例。所以多数据源或反向模式,需要配置不同的上下文名称;每一个上下文名称包括:源和目标配置参数,参数包括数据库连接用户名、密码、数据库地址、端口、实例。如有多个上下文名称,名称的配置必须是唯一的不能重复。在同步接口中指定上下文参数,参数值为在此定义的上下文名称,同步接口根据上下文名称获取源和目标的数据连接源。
2、所述同步接口定义模块,包括:数据抽取同步元数据、同步方法、同步脚本生成接口,参见图4所示。所述数据抽取同步元数据的功能作用,主要是存放从源同步到目标数据库环境的用户名、表名称、同步条件、同步方法、上下文名称的信息。所述同步方法的功能作用是生成同步脚本每个环节的步骤,同步方法封装了需要执行的每个步骤。可供选择的同步方法有:INSERT(直接插入)、UPDATE(更新)、DEL_INST(删除后再插入)、DEL_EXISTS_INSERT(删除已经存在的再全部插入)、TRUNC_INSERT(全部清空再插入)、DEL_INSERT_REGEX(复杂模式),同步方法在一个接口文件中只能选择一种,并存放在同步元数据中;由于每种同步方法生成的同步脚本的处理步骤不同,在此对同步方式的使用可以参考如下:全量可以选择INSERT(直接插入)、TRUNC_INSERT(全部清空再插入),增量选择UPDATE(更新)、DEL_INST(删除后再插入)、DEL_EXISTS_INSERT(删除已经存在的再全部插入)、DEL_INSERT_REGEX(复杂模式);选择全量还是增量同步,需要根据数据的分布和业务性质确定,开发不同的接口文件;如果以上提供的同步方法不能满足应用场景的情况下,可以通过扩展同步脚本生成模块来增加方法。所述同步脚本生成接口主要是用来衔接同步接口定义模块与同步脚本生成模块,将参数传递给同步脚本生成接口,支持多个接口批量生成处理,即接口文件可以按照业务模块化来处理每个接口,一个模块可以包含多个接口文件。
3、所述同步脚本生成模块,包括:元数据解析、同步方法的处理步骤、调用核心模块接口三个主要部分。此模块功能是实现同步脚本的自动化生成,对每个同步方法的处理步骤进行初始化封装,最后调用数据同步核心模块的接口,并将生成的每个步骤需要执行的命令传递给数据同步核心模块,参见图5所示。所述元数据解析的功能作用,主要是解析元数据中定义的用户名、表名称、上下文名称、同步方法,获取该用户的表名称对应的字段名称、数据类型和长度。按照SQL语句的标准,分别自动生成插入、更新、绑定变量需要的规范。所述同步方法的处理步骤是对每一种同步方法实现了具体的事务操作,把每个方法的命令按照执行顺序进行封装的一个过程;举例,方法DEL_INST(删除后再插入)需要根据同步接口中定义的元数据生成命令,第一步根据元数据中的条件生成删除命令,第二步生成元数据中的表对应的查询源数据的查询命令,第三步生成插入到目标数据源的插入命令,并将第二步查询的返回结果作为第三步的每个字段的绑定变量,第四步进行事务的提交,返回同步脚本执行的状态。每一个步骤生成的命令需要赋值给对应变量,默认每个变量名的初始化值为空,最终每个方法的步骤形成一个完整的操作流程,并把每个步骤需要执行的命令封装到生成的同步脚本中,并调用数据同步核心模块的接口,至此同步脚本生成模块与数据同步核心模块在这里被串联起来形成一个环。
4、所述工作流配置模块,其作用是整个系统中的数据总线,控制着调度任务的并行、串行,什么时间点触发和间隔的频率等,以及前后步骤之间的依赖衔接。工作流配置模块由调度计划、任务计划两部分构成。所述调度计划解决任务在什么时间点执行,以及执行的频率周期,减少任务间的等待时间,充分利用网络和服务器的资源,提高工作效率。所述执行计划主要对同步脚本执行的流程模块化,模块化的流程中可以采取并行或串行,依赖性高的任务放在一个模块计划中执行,最大化的耦合来降低任务之间的依赖关系,没有依赖关系的可以配置为并行,配合调度计划充分使用服务器资源合理安排计划。
5、所述数据同步核心模块,类似于中央神经中枢,主要有读取接口、写入接口、命令解析执行三部分构成,参见图6所示。同步脚本生成模块自动生成的同步脚本,调取数据同步核心模块的接口后,通过上下文名称获取连接源,所述读取接口负责从源数据执行命令,成功后返回结果集,读取的过程中采取批量返回多次请求,减少因数据量过大造成的内存溢出问题和网络开销。所述写入接口负责从数据集中读取记录,通过上下文名称连接到目标数据源执行写人命令。对于异构环境下,比如从文本读取数据同步到关系型数据库中,存在环境差异导致的字符集不兼容,可以扩展读取接口和写入接口的转换,满足不同环境下的数据类型转换和字符集格式转换。所述命令解析功能处理同步脚本中的参数值,并执行每个参数代表的命令,需要按照命令的次序来执行,需要建立缓冲区的命令,在执行命令前需要判断是否存在该表在缓冲区中,如果存在需要先删除再执行写入命令,执行完成后需要删除执行步骤中创建的缓冲表。
6、所述日志预警模块,包括日志生成、预警发送两个部分。其中,日志生成负责同一个日志文件在单位时间内的切换频率,以及创建日志文件输出的路径名称,并生成日志文件的名称,捕获关键步骤的输出或异常错误的信息,捕获的信息都会记录在日志文件中,用于查找问题或分析系统的性能来优化改进;预警发送负责配置预警的方式是通过邮件、短信来通知,获取提供邮件或短信服务的连接,需要通知到的相关人员地址,对捕获到的异常错误通过邮件或短信的方式通知到管理人员。
本发明的有益效果:
(1)双向同步机制,支持配置多个上下文名称访问多环境下的数据源;
(2)通过配置同步接口定义模块,根据元数据自动生成同步脚本;
(3)同步方法覆盖面广,同时支持复杂的自定义同步方法,扩展性强;
(4)工作流调度支持并行、串行运算,最大化使用服务器资源;
(5)支持源与目标数据库的用户名、表名称不同的情况下进行数据同步;
(6)对关键检查点具有检查预警和日志输出模块。
附图说明
图1为适用于单向的数据同步系统结构图。
图2为本发明的数据同步ETL系统结构图。
图3为上下文配置模块的流程图示。
图4为同步接口定义模块的流程图示。
图5为根据元数据生成同步脚本模块的流程图示。
图6为数据同步核心模块的流程图示。
具体实施方式
本发明的实施例旨在提供一种多数据源的数据同步系统,解决跨多个数据库环境下的高效可靠数据同步,抽取不同业务系统产生的业务数据供辅助系统使用。实施结构参见图1所示,具体的实施步骤如下。
首先,数据同步ETL系统需要通过上下文名称连接到源数据,确定需要同步的表结构和字段名称,数据同步过程中采取的方法,同步到目标源所对应的表结构名称。通过本发明需要做如下处理:
根据所述上下文参数配置模块,用来获取不同的上下文名称配置的源数据库和目标数据库的连接信息。操作人员需要配置核心订单库、支付数据库、业务应用库、外部数据库的上下文名称,每一个上下文名称需要配置源数据和目标数据的参数,如:数据库连接用户名、密码、数据库地址、端口、实例,上下文名称必须是唯一的不能重复。
根据所述同步接口定义模块,操作人员可以在此至少生成四个接口文件,分别是核心订单库文件、支付数据库文件、业务应用库文件、外部数据库文件。根据不同的同步脚本生成接口定义的参数,配置从源同步到目标数据库的用户名、表结构名称、同步方法、同步条件、指定不同的上下文名称。其中,只有在全量同步情况下,同步条件的参数值可以忽略,其余参数值为必填项;反之,同步脚本生成接口定义的参数值全部为必填项。
根据所述同步脚本生成模块,是实现同步脚本的自动化生成,调用数据同步核心模块的接口,并将生成的每个步骤需要执行的命令传递给数据同步核心模块。操作人员在使用已提供的同步方法时,在该模块中不需要做任何处理,只有需要扩展同步方法时,需要修改此模块。
以上步骤操作完成后,通过同步接口定义模块提供的自动生成同步脚本接口,一键化生成同步接口定义模块中需要同步的表结构名称,并保存生成的脚本到文件中。
其次,设定同步脚本的调度计划和任务计划,在什么时间点、执行频率配置工作流,需要做如下处理:
根据所述工作流配置模块,操作人员可以配置核心订单库文件、支付数据库文件、业务应用库文件、外部数据库文件,并行执行或者串行执行。对数据同步时效性要求不高的可以降低执行频率,时间点部署在业务交易少的情况下执行,降低服务器或网络等等的开销。
所述数据同步核心模块与同步脚本生成模块,操作人员如使用现有的同步方法,对数据同步核心模块也不需要做任何处理,只有需要对系统做扩展时,需要修改相关的功能点。该模块收到任务请求后,会将源数据的结果集通过转换、处理,同步到当前任务指定的上下文名称对应的目标数据库中的表结构下。
最后,同步脚本在任务和调度计划设定成功后,对运行状况需要做监控、故障排查和优化处理,主要通过如下模块处理:
根据所述日志预警模块,同步脚本在调用数据同步核心模块接口后,任务触发执行的过程中,任务不正常执行的会将错误日志输出到对应任务的日志文件中,并通过邮件或短信的方式通知到管理人员。管理人员通过输出的日志确定故障原因后,人工干预处理失败的任务,并将失败的任务手工触发执行,同步到目标数据库中。
综上所述,在具体的实施使用本发明中,可以概括下大致步骤:①在上下文参数配置模块中指定参数值②在同步接口定义模块中设定同步的数据表和剩余的参数值③一键生成同步脚本④在工作流配置模块中设计任务调度计划⑤在日志预警模块指定提供发送服务的连接源和异常接收人地址,并对异常做干预处理。

Claims (6)

1.一种数据同步ETL系统,其特征在于包括如下功能模块:上下文参数配置模块,同步接口定义模块,同步脚本生成模块,工作流配置模块,数据同步核心模块,日志、预警模块;模块之间的关系主要在两方面:(一)上下文参数配置模块、同步接口定义模块、同步脚本生成模块,是三个基础模块,按照模块的次序操作,生成同步脚本;生成的同步脚本中参数有来源于上下文参数配置模块中的上下文名称和其他参数、同步接口定义模块中定义的同步方法、需要同步的源和目标对应的表名称以及同步的条件;同步脚本生成模块在收到同步接口定义模块的请求后,根据传入的参数值,自动匹配同步方法名来生成同步脚本;(二)工作流配置模块主要起到调度中心的作用,在工作流中配置同步脚本实现并行或串行执行、并行的进程数量、什么时间或条件下来触发任务;并行任务中的分支配置成串行结构;调度中心中设置好调度时间,任务会在定义好的时间点自动触发执行,当工作流调取同步脚本发送请求到数据同步核心模块,同步核心模块收到请求后调用读取接口,通过上下文名称获取访问源和目标的数据连接,连接成功后读取数据记录,并将返回的结果集写入内存中,同时通知数据同步核心模块执行写入接口,将结果集写入目标数据源;上述执行步骤中发生异常或错误的任务,日志预警模块将捕获错误原因,并通知到系统管理人员;
所述的数据同步ETL系统,其特征在于所述上下文参数配置模块,包括:上下文名称定义、源数据库和目标数据库连接的用户名和密码,以及数据库地址和端口;上下文名称的作用是区分多个数据连接源或反向同步数据到另外一个环境下,并用来获取不同的源数据库和目标的数据库连接用户名、密码、服务器地址、端口、实例;对于多数据源或反向模式,需要配置不同的上下文名称;每一个上下文名称包括:源和目标配置参数,参数包括数据库连接用户名、密码、数据库地址、端口、实例;在同步接口中指定上下文参数,参数值为在此定义的上下文名称,同步接口根据上下文名称获取源和目标的数据连接源。
2.根据权利要求1所述的数据同步ETL系统,其特征在于所述同步接口定义模块,包括:数据抽取同步元数据、同步方法、调用同步脚本生成接口;所述数据抽取同步元数据的作用是存放从源同步到目标数据库环境的用户名、表名称、同步条件、同步方法、上下文名称的信息;所述同步方法的作用是生成同步脚本每个环节的步骤,同步方法封装了需要执行的每个步骤;可供选择的同步方法有:直接插入、更新、删除后再插入、删除已经存在的再全部插入、全部清空再插入复杂模式,同步方法在一个接口文件中只能选择一种,并存放在同步元数据中;由于每种同步方法生成的同步脚本的处理步骤不同,对同步方式的使用规则如下:全量,选择直接插入、全部清空再插入;增量,选择更新、删除后再插入、删除已经存在的再全部插入、复杂模式;所述调用同步脚本生成接口主要用来衔接同步接口定义模块与同步脚本生成模块,将参数传递给同步脚本生成接口,支持多个接口批量生成处理,即接口文件按照业务模块化来处理每个接口,一个模块可以包含多个接口文件。
3.根据权利要求2所述的数据同步ETL系统,其特征在于所述同步脚本生成模块,主要用于实现同步脚本的自动化生成,对每个同步方法的处理步骤进行初始化封装,最后调用数据同步核心模块的接口,并将生成的每个步骤需要执行的命令传递给数据同步核心模块;同步脚本生成模块包括:元数据解析、同步方法的处理步骤、调用核心模块接口三个部分;所述元数据解析的作用是解析元数据中定义的用户名、表名称、上下文名称、同步方法,获取该用户的表名称对应的字段名称、数据类型和长度;按照SQL语句的标准,分别自动生成插入、更新、绑定变量需要的规范;所述同步方法的处理步骤是对每一种同步方法实现具体的事务操作,把每个方法的命令按照执行顺序进行封装的一个过程;每一个步骤生成的命令需要赋值给对应变量,默认每个变量名的初始化值为空,最终每个方法的步骤形成一个完整的操作流程,并把每个步骤需要执行的命令封装到生成的同步脚本中,并调用数据同步核心模块的接口,至此同步脚本生成模块与数据同步核心模块在这里被串联起来形成一个环。
4.根据权利要求3所述的数据同步ETL系统,其特征在于所述工作流配置模块,是整个系统中的数据总线,控制调度任务的并行、串行,什么时间点触发和间隔的频率等,以及前后步骤之间的依赖衔接;工作流配置模块由调度计划、任务计划两部分构成;所述调度计划解决任务在什么时间点执行,以及执行的频率周期,减少任务间的等待时间,充分利用网络和服务器的资源,提高工作效率;执行的计划主要是对同步脚本执行的流程模块化,模块化的流程中可以采取并行或串行,依赖性高的任务放在一个模块计划中执行,最大化的耦合来降低任务之间的依赖关系,没有依赖关系的可以配置为并行,配合调度计划充分使用服务器资源合理安排计划。
5.根据权利要求4所述的数据同步ETL系统,其特征在于所述数据同步核心模块,类似于中央神经中枢,主要有读取接口、写入接口、命令解析执行三部分构成;同步脚本生成模块自动生成的同步脚本,调取数据同步核心模块的接口后,通过上下文名称获取连接源,所述读取接口负责从源数据执行命令,成功后返回结果集,读取的过程中采取批量返回多次请求;所述写入接口负责从返回的数据集中读取记录,通过上下文名称连接到目标数据源执行写人命令;所述命令解析功能是处理同步脚本中的参数值,并执行每个参数代表的命令,按照命令的顺序依次执行;对于需要建立缓冲区的命令,在执行命令之前需要判断缓冲区中是否存在该表,如果存在需要先删除再执行写入命令,执行完成后删除执行步骤中创建的缓冲表。
6.根据权利要求5所述的数据同步ETL系统,其特征在于所述日志预警模块,包括:日志生成、预警发送两个部分;日志生成负责同一个日志文件在单位时间内的切换频率,以及创建日志文件输出的路径名称,并生成日志文件的名称,捕获关键步骤的输出或异常错误的信息,捕获的信息都会记录在日志文件中,用于查找问题或分析系统的性能来优化改进;预警发送负责配置预警的方式是通过邮件、短信来通知,获取提供邮件或短信服务的连接,需要通知到的相关人员地址,对捕获到的异常错误通过邮件或短信的方式通知到管理人员。
CN201410534972.9A 2014-10-11 2014-10-11 一种数据同步etl系统 Active CN104317843B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410534972.9A CN104317843B (zh) 2014-10-11 2014-10-11 一种数据同步etl系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410534972.9A CN104317843B (zh) 2014-10-11 2014-10-11 一种数据同步etl系统

Publications (2)

Publication Number Publication Date
CN104317843A CN104317843A (zh) 2015-01-28
CN104317843B true CN104317843B (zh) 2017-08-25

Family

ID=52373075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410534972.9A Active CN104317843B (zh) 2014-10-11 2014-10-11 一种数据同步etl系统

Country Status (1)

Country Link
CN (1) CN104317843B (zh)

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104850638B (zh) * 2015-05-25 2018-10-19 广东精点数据科技股份有限公司 Etl过程并行决策方法及装置
CN106354566B (zh) * 2015-07-14 2019-11-29 华为技术有限公司 一种命令处理的方法以及服务器
CN108228611B (zh) * 2016-12-14 2020-08-18 平安科技(深圳)有限公司 单据信息抄写方法和装置
CN108241693B (zh) * 2016-12-26 2020-10-27 北京国双科技有限公司 同步数据的方法和装置
CN106951315B (zh) * 2017-03-17 2020-05-22 北京搜狐新媒体信息技术有限公司 一种基于etl的数据任务调度方法及系统
CN107766132B (zh) * 2017-06-25 2019-03-15 平安科技(深圳)有限公司 多任务调度方法、应用服务器及计算机可读存储介质
CN107402804B (zh) * 2017-07-31 2019-12-10 Oppo广东移动通信有限公司 后台进程管控方法、装置、存储介质及电子设备
CN107515933A (zh) * 2017-08-29 2017-12-26 平安科技(深圳)有限公司 修改源数据库表结构的方法、服务器、系统及存储介质
CN107967316A (zh) * 2017-11-22 2018-04-27 平安科技(深圳)有限公司 一种数据同步方法、设备及计算机可读存储介质
CN108564990A (zh) * 2018-04-11 2018-09-21 泰山医学院 医养结合数据抽取同步系统及方法、信息数据处理终端
CN108614874B (zh) * 2018-04-25 2021-05-18 华中科技大学 一种基于SQL Server的多数据库柔性集成方法
CN108629002A (zh) * 2018-05-03 2018-10-09 山东汇贸电子口岸有限公司 一种基于kettle的大数据比对方法及装置
CN110019533A (zh) * 2018-05-24 2019-07-16 中国平安人寿保险股份有限公司 同步脚本生成方法、装置、设备及计算机可读存储介质
CN110597613A (zh) * 2018-06-12 2019-12-20 成都鼎桥通信技术有限公司 任务处理方法、装置、设备及计算机可读存储介质
CN109241188A (zh) * 2018-09-05 2019-01-18 上海汽车集团股份有限公司 数据的涓流传输方法及装置、存储介质、终端
CN109684405B (zh) * 2018-09-07 2023-04-14 平安科技(深圳)有限公司 数据同步方法、装置、设备和计算机可读存储介质
CN109241191B (zh) * 2018-09-13 2021-09-14 华东交通大学 一种分布式数据源异构同步平台及同步方法
CN111309315B (zh) * 2018-12-12 2024-03-29 中国科学院沈阳自动化研究所 一种基于工业物联网数据和业务建模的自动化配置方法
CN109840267B (zh) * 2019-03-01 2023-04-21 成都品果科技有限公司 一种数据etl系统及方法
CN109885581B (zh) * 2019-03-14 2021-09-17 苏州达家迎信息技术有限公司 数据库的同步方法、装置、设备及存储介质
CN109918439B (zh) * 2019-03-14 2021-04-27 杭州数梦工场科技有限公司 数据同步方法及其应用的环路检测方法和相关装置
CN110287164B (zh) * 2019-06-28 2021-07-16 联想(北京)有限公司 一种数据恢复方法、装置及计算机设备
CN110471968A (zh) * 2019-07-11 2019-11-19 新华三大数据技术有限公司 Etl任务的发布方法、装置、设备及存储介质
CN110362632B (zh) * 2019-07-22 2022-11-15 无限极(中国)有限公司 一种数据同步方法、装置、设备及计算机可读存储介质
CN110222122A (zh) * 2019-07-26 2019-09-10 深圳市元征科技股份有限公司 一种MongoDB的数据同步方法及相关设备
CN110427426A (zh) * 2019-08-02 2019-11-08 中国工商银行股份有限公司 一种数据同步处理方法及装置
CN110866492B (zh) * 2019-11-13 2022-12-13 广州品唯软件有限公司 一种基线分支的识别方法、装置及计算机系统
CN111209332B (zh) * 2019-12-20 2024-02-09 中国铁路上海局集团有限公司 一种基于自制序列化算法的数据库同步方法
CN111177247B (zh) * 2019-12-30 2023-10-20 腾讯科技(深圳)有限公司 一种数据转换的方法、装置及存储介质
CN111428128B (zh) * 2020-02-20 2021-09-10 北京达佳互联信息技术有限公司 可插拔推荐系统的生成方法、服务推荐方法、装置及设备
CN111460031B (zh) * 2020-03-23 2021-07-23 腾讯科技(深圳)有限公司 一种数据同步的方法、装置、设备和介质
CN111581285B (zh) * 2020-04-30 2023-06-06 中国工商银行股份有限公司 数据信息的同步方法、装置、电子设备和介质
CN111865933B (zh) * 2020-06-30 2022-02-22 上海瀚之友信息技术服务有限公司 一种增值服务管理系统
CN112148788A (zh) * 2020-08-25 2020-12-29 珠海市卓轩科技有限公司 异构数据源的数据同步方法及系统
CN113010609B (zh) * 2020-12-23 2023-05-16 上海海鼎信息工程股份有限公司 一种应用于门店经营的差异化同步方法及系统
CN112765272A (zh) * 2021-01-19 2021-05-07 城云科技(中国)有限公司 多源数据同步方法、系统及其应用的模型中枢
CN112650815B (zh) * 2021-01-19 2023-06-16 青岛海尔科技有限公司 环境数据的同步方法及装置、存储介质及电子装置
CN112800136A (zh) * 2021-01-30 2021-05-14 上海宝旗信息科技有限公司 一种数据选择性级联同步工具及其同步方法
CN112948494A (zh) * 2021-03-04 2021-06-11 北京沃东天骏信息技术有限公司 数据同步方法、装置、电子设备和计算机可读介质
CN112965850A (zh) * 2021-03-23 2021-06-15 上海云轴信息科技有限公司 一种在中台系统中实现工作流的方法与设备
CN113239005B (zh) * 2021-06-02 2022-12-02 上海许继电气有限公司 一种电力监控系统i、iv区数据同步方法及装置
CN114900445B (zh) * 2022-04-28 2024-04-16 北京百度网讯科技有限公司 流量录制方法、装置及电子设备
CN116319837B (zh) * 2023-05-24 2023-07-28 北京天信瑞安信息技术有限公司 一种支持多协议的文件同步方法、装置、设备及存储介质
CN116881244B (zh) * 2023-06-05 2024-03-26 易智瑞信息技术有限公司 一种基于列存数据库的空间数据的实时处理方法及装置
CN116627392B (zh) * 2023-07-25 2023-11-10 杭州比智科技有限公司 一种基于交互式ide的模型开发方法及系统
CN117389980B (zh) * 2023-12-08 2024-02-09 成都康特电子科技股份有限公司 日志文件分析方法及装置、计算机设备和可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060431A (zh) * 2007-02-13 2007-10-24 华为技术有限公司 一种数据配置方法、系统及操作维护中心
CN101882165A (zh) * 2010-08-02 2010-11-10 山东中创软件工程股份有限公司 基于etl的多线程数据处理方法
CN102708430A (zh) * 2010-12-22 2012-10-03 德商赛克公司 面向服务流程配置系统和/或方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6941313B2 (en) * 2000-12-11 2005-09-06 Sentillion, Inc. Context management with audit capability

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101060431A (zh) * 2007-02-13 2007-10-24 华为技术有限公司 一种数据配置方法、系统及操作维护中心
CN101882165A (zh) * 2010-08-02 2010-11-10 山东中创软件工程股份有限公司 基于etl的多线程数据处理方法
CN102708430A (zh) * 2010-12-22 2012-10-03 德商赛克公司 面向服务流程配置系统和/或方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"GGSN软件的分析和设计";郝卫东;《中国优秀硕士学位论文全文数据库 信息科技辑》;20071115;论文正文第36页第1段-第52页第5段、第67页第1段-第69页第1段,附图3.2-3.8、4.18 *
"基于ETL和JMS的数据同步的设计与实现";黄瑛 等;《信息技术》;20091231;第2.3、3.2、3.3节 *
"基于关系数据库的工作流关键技术研究";姚晓飞;《中国优秀硕士学位论文全文数据库 信息科技辑》;20071115;论文正文第18页第2段-第21页最后一段、第29页第1段-第37页第1段,附图2.1、2.2、2.7-2.15 *

Also Published As

Publication number Publication date
CN104317843A (zh) 2015-01-28

Similar Documents

Publication Publication Date Title
CN104317843B (zh) 一种数据同步etl系统
EP3602341B1 (en) Data replication system
CN102542007B (zh) 关系型数据库之间的同步方法及系统
CN104641614B (zh) 用于可扩展的结构化数据分布的系统和方法
CN101651576B (zh) 告警信息处理方法和系统
CN102637214B (zh) 基于数据库服务间的通用数据同步方法及其系统
CN104679841B (zh) 一种消费端数据流复制方法及系统
CN110019138B (zh) 一种基于Zabbix的传输表空间自动迁移方法和系统
CN107357942A (zh) 一种源代码辅助生成工具及其生成方法
CN110413690A (zh) 数据库的数据同步方法、服务器、电子设备、存储介质
CN105144080A (zh) 用于元数据管理的系统
EP1837760A1 (en) System and method for event-based information flow in software development processes
CN107391635A (zh) 数据同步系统及方法
CN110334326B (zh) 一种识别配方文件并转化为xml文件的方法及系统
CN105683940A (zh) 处理混合流的数据流图
CN103218402A (zh) 通用的数据库数据结构与数据迁移系统及其方法
CN113553313B (zh) 一种数据迁移方法及系统、存储介质、电子设备
CN105677465B (zh) 应用于银行跑批处理的数据处理方法及装置
CN109298978B (zh) 一种指定位置的数据库集群的恢复方法及系统
CN109376196A (zh) 一种redo日志批量同步方法及装置
CN102456051A (zh) 数据库数据导入/导出的方法和装置
CN110442651A (zh) 一种基于kettle实现excel数据自动上传并触发调度的方法
CN109783315A (zh) 一种数据库平台自动化巡检方法及系统
CN114218218A (zh) 基于数据仓库的数据处理方法、装置、设备及存储介质
CN110209730A (zh) 变更数据的同步方法、装置、计算机设备及计算机存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: A data synchronization ETL System

Effective date of registration: 20210926

Granted publication date: 20170825

Pledgee: Bank of Communications Ltd. Shanghai Xuhui sub branch

Pledgor: SHANGHAI HANDPAL INFORMATION TECHNOLOGY SERVICE Co.,Ltd.

Registration number: Y2021310000079

PE01 Entry into force of the registration of the contract for pledge of patent right