CN113515569B - 数据的同步方法、装置、系统 - Google Patents
数据的同步方法、装置、系统 Download PDFInfo
- Publication number
- CN113515569B CN113515569B CN202010276020.7A CN202010276020A CN113515569B CN 113515569 B CN113515569 B CN 113515569B CN 202010276020 A CN202010276020 A CN 202010276020A CN 113515569 B CN113515569 B CN 113515569B
- Authority
- CN
- China
- Prior art keywords
- data
- database
- control
- determining
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000001360 synchronised effect Effects 0.000 claims description 135
- 230000004044 response Effects 0.000 claims description 47
- 238000012790 confirmation Methods 0.000 claims description 8
- 230000000737 periodic effect Effects 0.000 claims description 2
- 238000010200 validation analysis Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 60
- 230000008859 change Effects 0.000 description 146
- 238000007726 management method Methods 0.000 description 29
- 230000004048 modification Effects 0.000 description 28
- 238000012986 modification Methods 0.000 description 28
- 238000010586 diagram Methods 0.000 description 26
- 238000012217 deletion Methods 0.000 description 14
- 230000037430 deletion Effects 0.000 description 14
- 238000013138 pruning Methods 0.000 description 11
- 238000004519 manufacturing process Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 210000004556 brain Anatomy 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000005012 migration Effects 0.000 description 2
- 238000013508 migration Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003203 everyday effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 239000002994 raw material Substances 0.000 description 1
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
- G06F16/275—Synchronous replication
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据的同步方法及装置,可以通过获取用户输入的同步任务信息,并根据同步任务信息中的数据库标识,确定第一数据库,接着从第一数据库中确定与表标识匹配的表数据,并且根据与表数据对应的日志表,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
Description
技术领域
本申请涉及数据处理技术领域,特别是涉及一种数据的同步方法和一种数据的同步装置。
背景技术
SAP(Systems Applications And Products In Data Processing)系统,又称企业管理解决方案,其功能为:借助软件程序为企业定制并创建管理系统,对企业的人力资源、物流运输、销售服务、交易支付、产品规格及质量、生产活动、原材料采购、货物仓储及库存管理等全部经营活动与环节,实施监督、分析及管理,形成数据化的资源管理系统,为企业生产、决策、组织运营提供指导及依据。
当前SAP系统在工业企业中的覆盖率非常高,一些企业甚至达到了100%,同时SAP系统中存储了企业大量的数据。当对SAP系统中的数据进行迁移(同步)时,一方面基于SAP自带组件的数据迁移(同步)方式,成本高且能够支持的目标数据源十分有限,另一方面采用Java数据库连接(Java Database Connectivity,JDBC)方式,需要自己写任务拖库,容易造成系统负载过大,缺乏运维监控,且难以保证数据的一致性。
发明内容
本申请实施例所要解决的技术问题是提供一种数据的同步方法,以解决现有技术中从SAP获取数据容易造成系统负载过大,难以保证数据一致性,以及无法支持不同数据源的问题。
相应的,本申请实施例还提供了一种数据的同步装置,用以保证上述方法的实现及应用。
为了解决上述问题,本申请公开了一种数据的同步方法,包括:
获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
确定与所述数据库标识对应的第一数据库,并从所述第一数据库中确定与所述表标识匹配的表数据;
根据与所述表数据对应的日志表,同步所述表数据。
可选地,所述根据与所述表数据对应的日志表,同步所述表数据,包括:
从所述第一数据库中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
当所述第一数据库中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述表数据。
可选地,所述同步任务信息还包括调度周期,所述根据所述日志表的数据变化信息,同步所述表数据,包括:
按照所述调度周期,查询所述日志表中的数据变化信息;
确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
可选地,所述按照所述调度周期,查询所述日志表中的数据变化信息,包括:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述确定与所述数据变化信息匹配的增量数据,并同步所述增量数据,包括:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
可选地,所述表数据包括表字段,所述方法还包括:
响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述根据所述日志表的数据变化信息,同步所述表数据,包括:
根据所述数据变化信息,同步所述目标表字段。
本申请还公开了一种数据的同步方法,涉及数据中台、数据采集对象以及SAP系统,所述方法包括:
所述数据中台获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象,所述同步任务信息包括表标识;
所述数据采集对象从所述SAP系统中确定与所述表标识匹配的表数据,并从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
当所述SAP系统中存在与所述表数据对应的日志表时,则所述数据采集对象将所述表数据与所述日志表发送至所述数据中台;
所述数据中台根据所述日志表的数据变化信息,同步所述表数据。
可选地,所述数据中台包括数据处理对象以及第二数据库,所述同步任务信息还包括调度周期,所述数据中台根据所述日志表的数据变化信息,同步所述表数据,包括:
通过所述数据处理对象按照所述调度周期,查询所述日志表中的数据变化信息;
通过所述数据处理对象确定与所述数据变化信息匹配的增量数据,并将所述增量数据同步于所述第二数据库。
可选地,所述通过所述数据处理对象按照所述调度周期,查询所述日志表中的数据变化信息,包括:
通过所述数据处理对象获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则所述数据处理对象获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述通过所述数据处理对象确定与所述数据变化信息匹配的增量数据,并将所述增量数据同步于所述第二数据库,包括:
所述数据处理对象确定与所述增加信息对应的第一增量数据,并将所述第一增量数据发送至所述第二数据库;或,
所述数据处理对象确定与所述删减信息对应的第二增量数据,并从所述第二数据库中删除所述第二增量数据;或,
所述数据处理对象确定与所述修改信息对应的第三增量数据,并对所述第二数据库中的所述第三增量数据进行更新。
可选地,所述表数据包括表字段,所述方法还包括:
所述数据中台响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述数据中台根据所述日志表的数据变化信息,同步所述表数据,包括:
所述数据中台根据所述数据变化信息,同步所述目标表字段。
可选地,所述数据中台包括任务管理对象,所述数据中台获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象,包括:
所述数据中台通过所述任务管理对象获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象。
本申请还公开了一种数据的同步方法,应用于同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,所述方法包括:
响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据。
可选地,所述数据库添加控件包括资源标识控件、数据库标识控件以及帐户添加控件,所述响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的数据库,包括:
响应针对所述资源标识控件的输入操作,确定资源标识;
响应针对所述数据库标识控件的输入操作,确定数据库标识;
响应针对所述账户添加控件的输入操作,确定账户信息;
根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
可选地,所述任务输入控件包括表标识输入控件以及周期输入控件,所述响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,包括:
响应针对所述表标识输入控件的输入操作,确定所述表标识,并提供与所述表标识匹配的表字段,所述表字段对应一表字段选择控件;
响应针对所述表字段选择控件的选择操作,确定目标表字段;
响应针对所述周期输入控件的输入操作,确定所述调度周期;
根据所述表标识、所述目标表字段以及所述调度周期,确定所述同步任务信息。
可选地,所述响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据,包括:
响应针对所述任务创建控件的确定操作,展示与所述同步任务信息匹配的任务列表窗口;
按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据;
从所述表数据中提取所述目标表字段,同步所述目标表字段。
本申请还公开了一种数据的同步方法,涉及SAP系统,所述方法包括:
获取用户输入的同步任务信息,所述同步任务信息包括表标识;
从所述SAP系统中获取与所述表标识匹配的表数据,并展示与所述表数据匹配的表字段;
响应针对所述表字段的选择操作,从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
当所述SAP系统中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述目标表字段。
可选地,还包括:
当所述SAP系统中不存在与所述表数据对应的日志表时,则在所述SAP系统中创建一针对所述表数据的新日志表,并同步所述目标表字段。
可选地,所述根据所述日志表的数据变化信息,同步所述目标表字段,包括:
根据所述数据变化信息,建立针对所述表数据的触发器;
根据所述触发器,同步所述目标表字段;
其中,所述数据变化信息包括增加信息、删除信息以及修改信息中的至少一种。
本申请还公开了一种数据的同步方法,涉及SAP系统,所述方法包括:
获取用户输入的同步任务信息,所述同步任务信息包括表标识以及调度周期;
从所述SAP系统中获取与所述表标识匹配的表数据,以及针对所述表数据的日志表;
按照所述调度周期,查询所述日志表中的数据变化信息;
确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
可选地,所述按照所述调度周期,查询所述日志表中的数据变化信息,包括:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述确定与所述数据变化信息匹配的增量数据,并同步所述增量数据,包括:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
本申请还公开了一种数据的同步装置,包括:
任务管理模块,用于获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
表数据采集模块,用于确定与所述数据库标识对应的第一数据库,并从所述第一数据库中确定与所述表标识匹配的表数据;
表数据同步模块,用于根据与所述表数据对应的日志表,同步所述表数据。
可选地,所述表数据同步模块包括:
日志表查询子模块,用于从所述第一数据库中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
表数据同步子模块,用于当所述第一数据库中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述表数据。
可选地,所述同步任务信息还包括调度周期,所述表数据同步子模块包括:
数据变化信息查询单元,用于按照所述调度周期,查询所述日志表中的数据变化信息;
增量数据同步单元,用于确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
可选地,所述数据变化信息查询单元具体用于:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步单元具体用于:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
可选地,所述表数据包括表字段,所述装置还包括:
表字段确定模块,用于响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述表数据同步子模块用于:
根据所述数据变化信息,同步所述目标表字段。
本申请还公开了一种数据的同步系统,涉及数据中台、数据采集对象以及SAP系统,所述系统包括:
位于所述数据中台的任务管理模块,用于获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象,所述同步任务信息包括表标识;
位于所述数据采集对象的数据交互模块,用于从所述SAP系统中获取与所述表标识匹配的表数据,并从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
位于所述数据采集对象的数据发送模块,用于当所述SAP系统中存在与所述表数据对应的日志表时,则将所述表数据与所述日志表发送至所述数据中台;
位于所述数据中台的表数据同步模块,用于根据所述日志表的数据变化信息,同步所述表数据。
可选地,所述数据中台包括数据处理对象以及第二数据库,所述同步任务信息还包括调度周期,所述表数据同步模块包括:
位于所述数据处理对象的数据变化信息查询模块,用于按照所述调度周期,查询所述日志表中的数据变化信息;
位于所述数据处理对象的增量数据同步模块,用于确定与所述数据变化信息匹配的增量数据,并将所述增量数据同步于所述第二数据库。
可选地,所述数据变化信息查询模块具体用于:
通过所述数据处理对象获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则所述数据处理对象获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步模块具体用于:
所述数据处理对象确定与所述增加信息对应的第一增量数据,并将所述第一增量数据发送至所述第二数据库;或,
所述数据处理对象确定与所述删减信息对应的第二增量数据,并从所述第二数据库中删除所述第二增量数据;或,
所述数据处理对象确定与所述修改信息对应的第三增量数据,并对所述第二数据库中的所述第三增量数据进行更新。
可选地,所述表数据包括表字段,所述系统还包括:
位于所述数据中台的表字段确定模块,用于响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述表数据同步模块具体用于:
所述数据中台根据所述数据变化信息,同步所述目标表字段。
可选地,所述数据中台包括任务管理对象,所述任务管理调度模块为位于所述任务管理对象中的模块。
本申请还公开了一种数据的同步装置,应用于同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,所述装置包括:
第一数据库确定模块,用于响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
任务创建模块,用于响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
表数据同步模块,用于响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据。
可选地,所述数据库添加控件包括资源标识控件、数据库标识控件以及帐户添加控件,所述第一数据库确定模块,包括:
资源标识确定子模块,用于响应针对所述资源标识控件的输入操作,确定资源标识;
数据库标识确定子模块,用于响应针对所述数据库标识控件的输入操作,确定数据库标识;
账户信息确定子模块,用于响应针对所述账户添加控件的输入操作,确定账户信息;
数据库确定子模块,用于根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
可选地,所述任务输入控件包括表标识输入控件以及周期输入控件,所述任务创建模块包括:
表标识处理子模块,用于响应针对所述表标识输入控件的输入操作,确定所述表标识,并提供与所述表标识匹配的表字段,所述表字段对应一表字段选择控件;
目标表字段确定子模块,用于响应针对所述表字段选择控件的选择操作,确定目标表字段;
调度周期确定子模块,用于响应针对所述周期输入控件的输入操作,确定所述调度周期;
同步任务创建子模块,用于根据所述表标识、所述目标表字段以及所述调度周期,确定所述同步任务信息。
可选地,所述表数据同步模块包括:
任务列表窗口展示子模块,用于响应针对所述任务创建控件的确定操作,展示与所述同步任务信息匹配的任务列表窗口;
表数据获取子模块,用于按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据;
表字段同步子模块,用于从所述表数据中提取所述目标表字段,同步所述目标表字段。
本申请还公开了一种数据的同步装置,涉及SAP系统,所述装置包括:
任务管理模块,用于获取用户输入的同步任务信息,所述同步任务信息包括表标识;
表字段展示模块,用于从所述SAP系统中获取与所述表标识匹配的表数据,并展示与所述表数据匹配的表字段;
日志表查询模块,用于响应针对所述表字段的选择操作,从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
表字段同步模块,用于当所述SAP系统中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述目标表字段。
可选地,还包括:
日志表创建模块,用于当所述SAP系统中不存在与所述表数据对应的日志表时,则在所述SAP系统中创建一针对所述表数据的新日志表,并同步所述目标表字段。
可选地,所述表字段同步模块具体用于:
根据所述数据变化信息,建立针对所述表数据的触发器;
根据所述触发器,同步所述目标表字段;
其中,所述数据变化信息包括增加信息、删除信息以及修改信息中的至少一种。
本申请还公开了一种数据的同步装置,涉及SAP系统,所述装置包括:
任务管理模块,用于获取用户输入的同步任务信息,所述同步任务信息包括表标识以及调度周期;
数据获取模块,用于从所述SAP系统中获取与所述表标识匹配的表数据,以及针对所述表数据的日志表;
数据变化查询模块,用于按照所述调度周期,查询所述日志表中的数据变化信息;
增量数据同步模块,用于确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
可选地,所述数据变化查询模块具体用于:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
可选地,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步模块具体用于:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
本申请还公开了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行如上所述的一个或多个的方法。
本申请还公开了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如上所述的一个或多个的方法。
本申请实施例包括以下优点:
在本申请实施例中,可以通过获取用户输入的同步任务信息,并根据同步任务信息中的数据库标识,确定第一数据库,接着从第一数据库中确定与表标识匹配的表数据,并且根据与表数据对应的日志表,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
附图说明
图1是本申请的一种数据的同步方法实施例一的步骤流程图;
图2是本申请的一种数据的同步方法实施例二的步骤流程图;
图3是本申请的一种数据的同步方法实施例三的步骤流程图;
图4是本申请的一种数据的同步方法实施例四的步骤流程图;
图5是本申请实施例中设备架构示意图;
图6是本申请实施例中增量数据同步的场景示意图;
图7是本申请的一种数据的同步方法实施例五的步骤流程图;
图8是本申请实施例中数据库添加窗口的示意图;
图9是本申请实施例中任务创建窗口的示意图;
图10是本申请实施例中任务列表窗口的示意图;
图11是本申请的一种数据的同步方法实施例六的步骤流程图;
图12是本申请的一种数据的同步方法实施例七的步骤流程图;
图13是本申请的一种数据的同步装置实施例一的结构框图;
图14是本申请的一种数据的同步系统实施例的结构框图;
图15是本申请的一种数据的同步装置实施例二的结构框图;
图16是本申请的一种数据的同步装置实施例三的结构框图;
图17是本申请的一种数据的同步装置实施例四的结构框图;。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。
在工业场景中,数据种类繁杂、数据量也非常客观。若是能够将数据进行充分地打通与汇聚,不仅可以用数据驱动的方式帮助工业企业提升效率,还可以降低工业企业生产的成本。针对工业产品生产周期各阶段,从最早的采购到产品的设计,到生产过程、工艺过程,再到生产出来的销售供应链等等,涉及较多的工业信息化软件,例如SAP、MES(Manufacturing Execution System,制造企业生产过程执行管理系统)、EPR(EnterpriseResource Planning、企业资源计划)等等。然而,各工业信息化软件虽然在自身的环境中可以发挥作用,但一方面相互之间的数据并没有打通,另一方面基于SAP自带组件的数据迁移(同步)方式,成本高且能够支持的目标数据源十分有限,此外,采用Java数据库连接(JavaDatabase Connectivity,JDBC)方式,需要自己写任务拖库,容易造成系统负载过大。例如工业大脑中的工业数据中台从SAP系统中获取数据,SAP系统需要在HANA服务器中完成数据的处理,容易造成系统负载过大。
此外,对于Oracle、Sql Server、MySql、Sybase等数据库,其数据处理过程与工业信息软件相同或相似,在获取这些数据库存储的数据时,同样存在上述问题。因此,本申请实施例的核心构思之一在于用户可以在工业数据中台按需创建从目标数据库中同步数据的任务,一方面使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,另一方面将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。则如图1所示,示出了本申请的一种数据的同步方法实施例一的步骤流程图,具体可以包括如下步骤:
步骤101,获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
步骤102,确定与所述数据库标识对应的第一数据库,并从所述第一数据库中确定与所述表标识匹配的表数据;
作为一种示例,用户可以在上层应用中输入需要同步任务信息,如输入数据库标识以及表标识,其中,数据库标识可以为需要进行数据同步的数据库的统一资源定位符URL(Uniform Resource Locator,统一资源定位符),表标识可以为数据表的表名,从而在进行数据同步时,可以根据数据库标识查找相应的第一数据库,并从该第一数据库中确定与表标识匹配的表数据。
步骤103,根据与所述表数据对应的日志表,同步所述表数据。
在数据库中,可以通过日志表对表数据中的数据变化进行记录,当表数据中的数据发生增加、删除以及修改等变化时,日志表可以实时进行更新,以记录表数据中发生数据变化时变化数据的标识、变化时间、变化类型等等数据变化信息。则可以根据第一数据库中存储的与表数据对应的日志表,对表数据进行同步。
在本申请实施例中,可以通过获取用户输入的同步任务信息,并根据同步任务信息中的数据库标识,确定第一数据库,接着从第一数据库中确定与表标识匹配的表数据,并且根据与表数据对应的日志表,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
参照图2,示出了本申请的一种增量数据的同步方法实施例二的步骤流程图,具体可以包括如下步骤:
步骤201,获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
步骤202,确定与所述数据库标识对应的第一数据库,并从所述第一数据库中确定与所述表标识匹配的表数据;
作为一种示例,用户可以在上层应用中输入需要同步任务信息,如输入数据库标识以及表标识,其中,数据库标识可以为需要进行数据同步的数据库的统一资源定位符URL(Uniform Resource Locator,统一资源定位符),表标识可以为数据表的表名,从而在进行数据同步时,可以根据数据库标识查找相应的第一数据库,并从该第一数据库中获取与表标识匹配的表数据。
步骤203,从所述第一数据库中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
在数据库中,可以通过日志表对表数据中的数据变化进行记录,当表数据中的数据发生增加、删除以及修改等变化时,日志表可以实时进行更新,以记录表数据中发生数据变化时变化数据的标识、变化时间、变化类型等等数据变化信息。
步骤204,当所述第一数据库中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述表数据。
当从第一数据库中获取了与表标识匹配的表数据后,同时可以从第一数据库中查询是否存在与表数据对应的日志表,当存在与表数据对应的日志表时,表示所要同步的表数据发生了数据变化,则可以根据日志表中的数据变化信息,对表数据进行进行同步。
在本申请实施例中,可以通过获取用户输入的同步任务信息,并根据同步任务信息中的数据库标识,确定第一数据库,接着从第一数据库中确定与表标识匹配的表数据,并且根据与表数据对应的日志表,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
参照图3,示出了本申请的一种数据的同步方法实施例三的步骤流程图,具体可以包括如下步骤:
步骤301,获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
在一种示例中,上层应用程序可以为实时数据处理的应用程序,其可以为工业大脑中工业数据中台的数据加工的应用程序,也可以为其他使用实时数据进行处理的应用程序。则用户可以在应用程序提供的交互界面中,输入需要获取数据的数据库标识,以及需要获取的数据表的表标识。
步骤302,确定与所述数据库标识对应的第一数据库,并从所述第一数据库中确定与所述表标识匹配的表数据,所述表数据包括表字段;
用户创建了同步任务信息后,上层应用程序可以根据数据库标识,查找对应的第一数据库,并从第一数据库中确定与表标识匹配的表数据。其中,表数据可以包括表名、表中的字段以及表的记录等。
步骤303,响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
当得到表数据后,上层应用程序可以展示表数据对应的表字段,并响应用户针对表字段的选择操作,从表数据中确定需要实时同步的目标表字段。例如,当表数据包括多个表字段时,用户可以选择至少一个表字段,以便对该表字段进行实时同步。
步骤304,从所述第一数据库中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
具体的,用户在选择了目标表字段之后,可以从第一数据库中查询是否与表数据对应的日志表,以便根据日志表中表数据的数据变化信息,确定表数据是否发生了变化,以及确定目标表字段是否发生了变化。
步骤305,当所述第一数据库中存在与所述表数据对应的日志表时,则根据所述数据变化信息,同步所述目标表字段。
当存在与表数据对应的日志表时,表示所要同步的表数据发生了数据变化,则可以根据日志表中的数据变化信息,对目标表字段进行同步。
在本申请的一种可选实施例中,同步任务信息中还可以包括调度周期,通过设置调度周期,可以实现周期性的数据同步。具体的,可以按照调度周期,查询日志表中的数据变化信息,然后确定与数据变化信息匹配的增量数据,并同步增量数据。
在一种示例中,当查询到第一数据库中存在与表数据对应的日志表后,上层应用程序可以获取日志表中距离当前时刻最近的时间戳,当时间戳满足调度周期时,则获取日志表中的数据变化信息,并根据数据变化信息,同步表数据。例如,调度周期为5秒,则可以先获取日志表中最大的时间戳,并获取记录位的时间戳,当两者之间的时间差值满足调度周期时,则获取大于记录位的所有日志记录,从而根据这些日志记录确定表数据的数据变化信息,进一步根据数据变化信息,对目标表字段进行周期性同步。并且,还可以在同步的过程中,计算统计指标,统计指标可以包括同步了哪些表数据、每个表数据同步的表字段条数等等,进一步还可以统计每天每个表同步的表字段条数、同步数据量的变化趋势以及同步数据中Top N等等,从而通过对同步数据进行统计指标的计算,可以得到同步数据的变化情况,以便用户对数据进行分析处理。
此外,当调度周期为0时,则表示实时进行数据同步。
其中,数据变化信息可以包括增加信息、删减信息以及修改信息中的至少一种,则上层应用程序可以确定与增加信息对应的第一增量数据,获取第一增量数据;或,确定与删减信息对应的第二增量数据,删除第二增量数据;或,确定与修改信息对应的第三增量数据,更新第三增量数据。例如,当目标表字段发生了增加,则获取增加的字段,并更新增加触发器Trigger,用于检测该数据库中被增加的增量数据;当目标表字段发生了删减,则删减对应的字段,并更新删除触发器Trigger,用于检测该数据库中被删减的增量数据;当目标字段发生了修改,则进行目标表字段的更新,并更新修改触发器Trigger,用于检测该数据库中被修改的增量数据,从而用户可以按需可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
在本申请实施例中,可以通过获取用户输入的同步任务信息,并根据同步任务信息中的数据库标识,确定第一数据库,接着从第一数据库中确定与表标识匹配的表数据,并且根据与表数据对应的日志表,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
参照图4,示出了本申请的一种数据的同步方法实施例四的步骤流程图,涉及数据中台、数据采集对象以及SAP系统,具体可以包括如下步骤:
步骤401,所述数据中台获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象,所述同步任务信息包括表标识;
在本申请实施例中,如图5所示,示出了本申请实施例中设备架构示意图,可以包括工业大脑中的工业数据中台(下述数据中台)、数据采集对象以及SAP系统。其中,数据中台中可以包括任务管理对象,任务管理对象可以为实时数据处理的应用程序,当用户在任务管理对象中创建了同步任务后,数据采集对象可以执行该同步任务,与SAP系统进行交互。
在一种示例中,为了能够将数据进行充分地打通与汇聚,不仅可以用数据驱动的方式帮助工业企业提升效率,还可以降低工业企业生产的成本,可以通过工业大脑的工业数据中台对工业企业中的工业数据进行处理与决策。具体的,可以通过工业数据中台获取SAP系统中的数据,例如,任务管理对象可以为上层应用程序,则用户可以在工业数据中台的上层应用程序输入同步任务信息,以便数据采集对象执行该同步任务。
步骤402,所述数据采集对象从所述SAP系统中确定与所述表标识匹配的表数据,并从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
步骤403,当所述SAP系统中存在与所述表数据对应的日志表时,则所述数据采集对象将所述表数据与所述日志表发送至所述数据中台;
具体的,SAP系统中可以包括SAP HANA(High-Performance Analytic Appliance,分析软件)数据库。则数据采集对象可以从SAP HANA数据库中获取与表标识匹配的表数据,并从SAP HANA数据库中查询是否存在与表数据对应的日志表,以便将日志表发送至数据中台,使数据中台根据日志表中的数据变化信息进行数据同步。
步骤404,所述数据中台根据所述日志表的数据变化信息,同步所述表数据。
在具体实现中,数据中台接收到数据采集程序发送至日志表以及表数据后,可以根据日志表中的数据变化信息,进行表数据的同步。
在本申请的一种可选实施例中,所述数据中台包括数据处理对象以及第二数据库,所述同步任务信息还包括调度周期,则数据中台可以通过所述数据处理对象按照所述调度周期,查询所述日志表中的数据变化信息,并确定与所述数据变化信息匹配的增量数据,并将所述增量数据同步于所述第二数据库。
具体的,数据中台可以通过数据处理对象获取日志表中距离当前时刻最近的时间戳,并当时间戳满足调度周期时,则通过数据处理对象获取日志表中的数据变化信息。
其中,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,则数据处理对象可以确定与增加信息对应的第一增量数据,并将第一增量数据发送至第二数据库;或,数据处理对象确定与删减信息对应的第二增量数据,并从第二数据库中删除第二增量数据;或,数据处理对象确定与修改信息对应的第三增量数据,并对第二数据库中的第三增量数据进行更新。
在本申请的另一种可选实施例中,当得到表数据后,任务管理对象可以展示表数据对应的表字段,并响应用户针对表字段的选择操作,从表数据中确定需要实时同步的目标表字段。例如,当表数据包括多个表字段时,用户可以选择至少一个表字段,从而数据中台通过任务管理对象响应针对表字段的选择操作,从表数据中确定目标表字段,实现数据中台在获得表数据后,根据数据变化信息,同步目标表字段。
在本申请实施例中,工业数据中台可以通过获取用户输入的同步任务信息,并将同步任务信息发送至数据采集对象,由数据采集对象执行同步任务,与SAP系统进行数据交互,从而数据采集对象可以从SAP系统中获取与表标识匹配的表数据,并且从SAP系统中查询是否存在与表数据对应的日志表,然后将表数据与日志表发送至数据中台,以便数据中台根据日志表中的数据变化信息,同步表数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,保证了数据的一致性,同时将数据同步处理从SAP系统中转移,降低了SAP系统的系统负载,提高了数据同步的效率。
为了使本领域技术人员能够更好地理解本申请实施例,下面通过一个例子对本申请实施例加以说明:
如图6所示,示出了本申请实施例中增量数据同步的场景示意图,工业数据中台中可以配置有任务管理对象、数据处理对象以及第二数据库,其中数据处理对象可以为流式数据库Datahub,第二数据库可以为RDS(Relational Database Service RelationalDatabase Service,关系型数据库服务)、ADS(Analysis Database Service,分析型数据库)等数据库。
具体的,用户在工业数据中台的任务管理对象中输入同步任务信息,接着数据采集对象可以执行该同步任务信息,与SAP系统进行交互,从而SAPHANA数据库获取表数据与日志表,然后将日志表与表数据发送至Datahub。Datahub根据日志表中的数据变化信息,进行数据计算,确定表数据中哪些数据发生了变化,从而将数据处理过程从SAP系统转移至部署于云端的Datahub,大大将了系统的负载。接着Datahub可以将表数据存储于第二数据库中,以便数据中台从第二数据库中获取对应的增量数据,实现数据同步,进而实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,保证了数据的一致性,同时将数据同步处理从SAP系统中转移,降低了SAP系统的系统负载,提高了数据同步的效率。并且,基于工业数据中台的特性,可以支持更多不同的数据库,有利于进行数据的打通与汇聚。
参照图7,示出了本申请的一种数据的同步方法实施例五的步骤流程图,应用于工业数据中台中的同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,具体可以包括如下步骤:
步骤701,响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
步骤702,响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
步骤703,响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据。
在本申请的一种可选实施例中,所述数据库添加控件包括资源标识控件、数据库标识控件以及帐户添加控件,所述响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的数据库,包括:
响应针对所述资源标识控件的输入操作,确定资源标识;
响应针对所述数据库标识控件的输入操作,确定数据库标识;
响应针对所述账户添加控件的输入操作,确定账户信息;
根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
在本申请的一种可选实施例中,所述任务输入控件包括表标识输入控件以及周期输入控件,所述响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,包括:
响应针对所述表标识输入控件的输入操作,确定所述表标识,并提供与所述表标识匹配的表字段,所述表字段对应一表字段选择控件;
响应针对所述表字段选择控件的选择操作,确定目标表字段;
响应针对所述周期输入控件的输入操作,确定所述调度周期;
根据所述表标识、所述目标表字段以及所述调度周期,确定所述同步任务信息。
在本申请的一种可选实施例中,所述响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据,包括:
响应针对所述任务创建控件的确定操作,展示与所述同步任务信息匹配的任务列表窗口;
按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据;
从所述表数据中提取所述目标表字段,同步所述目标表字段。
在本申请实施例中,工业数据中台的上层应用程序可以响应针对数据库添加控件的添加操作,确定与添加操作匹配的第一数据库,接着响应针对任务输入控件的输入操作,确定与创建操作匹配的同步任务信息,同步任务信息包括表标识以及调度周期,然后响应针对任务创建控件的确认操作,按照调度周期,从第一数据库中获取与表标识匹配的表数据,并同步表数据,进而实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
为了使本领域技术人员能够更好地理解本申请实施例,下面通过一个例子对本申请实施例加以说明:
如图8所示,示出了本申请实施例中数据库添加窗口的示意图,在数据库添加窗口中可以包括资源标识控件、数据库标识控件以及帐户添加控件,则应用程序可以根据用户输入的信息,确定目标数据库的统一资源定位符与数据库标识,以及确定用户输入的账户与密码信息,保证数据传输的安全性。
如图9所示,示出了本申请实施例中任务创建窗口的示意图,应用程序可以提供一任务创建窗口,任务创建窗口可以包括任务名输入控件、数据库标识控件、表标识输入控件以及周期输入控件等等,从而应用程序可以根据用户输入的同步任务信息,确定本次数据同步的任务名称、数据库资源、表标识、表字段以及调度周期等等。
如图10所示,示出了本申请实施例中任务列表窗口的示意图,当应用程序确定了同步任务信息之后,可以展示包含本次同步任务的任务列表窗口,以便用户直观地得到数据同步的进度。
参照图11,示出了本申请的一种数据的同步方法实施例六的步骤流程图,涉及SAP系统,具体可以包括如下步骤:
步骤1101,获取用户输入的同步任务信息,所述同步任务信息包括表标识;
步骤1102,从所述SAP系统中获取与所述表标识匹配的表数据,并展示与所述表数据匹配的表字段;
步骤1103,响应针对所述表字段的选择操作,从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
步骤1104,当所述SAP系统中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述目标表字段。
在本申请的一种可选实施例中,还包括:
当所述SAP系统中不存在与所述表数据对应的日志表时,则在所述SAP系统中创建一针对所述表数据的新日志表,并同步所述目标表字段。
在本申请的一种可选实施例中,所述根据所述日志表的数据变化信息,同步所述目标表字段,包括:
根据所述数据变化信息,建立针对所述表数据的触发器;
根据所述触发器,同步所述目标表字段;
其中,所述数据变化信息包括增加信息、删除信息以及修改信息中的至少一种。
在本申请实施例中,可以获取用户输入的同步任务信息,同步任务信息包括表标识,从SAP系统中获取与表标识匹配的表数据,并展示与表数据匹配的表字段,响应针对表字段的选择操作,从SAP系统中查询是否存在与表数据对应的日志表,日志表包括表数据的数据变化信息,当SAP系统中存在与表数据对应的日志表时,则根据日志表的数据变化信息,同步目标表字段,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
参照图12,示出了本申请的一种数据的同步方法实施例七的步骤流程图,涉及SAP系统,具体可以包括如下步骤:
步骤1201,获取用户输入的同步任务信息,所述同步任务信息包括表标识以及调度周期;
步骤1202,从所述SAP系统中获取与所述表标识匹配的表数据,以及针对所述表数据的日志表;
步骤1203,按照所述调度周期,查询所述日志表中的数据变化信息;
步骤1204,确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
在本申请的一种可选实施例中,所述按照所述调度周期,查询所述日志表中的数据变化信息,包括:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
在本申请的一种可选实施例中,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述确定与所述数据变化信息匹配的增量数据,并同步所述增量数据,包括:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
在本申请实施例中,可以获取用户输入的同步任务信息,同步任务信息包括表标识以及调度周期,从SAP系统中获取与表标识匹配的表数据,以及针对表数据的日志表,按照调度周期,查询日志表中的数据变化信息,确定与数据变化信息匹配的增量数据,并同步增量数据,实现了用户可以按需创建数据的同步任务,使得数据的同步由“推送”转为“拉取”,提高了增量数据同步的针对性,保证了数据的一致性,同时将数据同步处理从数据库中转移,降低了数据库的系统负载,提高了数据同步的效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请实施例并不受所描述的动作顺序的限制,因为依据本申请实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请实施例所必须的。
参照图13,示出了本申请的一种数据的同步装置实施例一的结构框图,具体可以包括如下模块:
任务管理模块1301,用于获取用户输入的同步任务信息,所述同步任务信息包括数据库标识以及表标识;
表数据采集模块1302,用于确定与所述数据库标识对应的第一数据库,并从所述第一数据库中获取与所述表标识匹配的表数据;
表数据同步模块1303,用于根据与所述表数据对应的日志表,同步所述表数据。
在本申请的一种可选实施例中,所述表数据同步模块1303包括:
日志表查询子模块,用于从所述第一数据库中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
表数据同步子模块,用于当所述第一数据库中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述表数据。
在本申请的一种可选实施例中,所述同步任务信息还包括调度周期,所述表数据同步子模块包括:
数据变化信息查询单元,用于按照所述调度周期,查询所述日志表中的数据变化信息;
增量数据同步单元,用于确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
在本申请的一种可选实施例中,所述数据变化信息查询单元具体用于:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
在本申请的一种可选实施例中,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步单元具体用于:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
在本申请的一种可选实施例中,所述表数据包括表字段,所述装置还包括:
表字段确定模块,用于响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述表数据同步子模块用于:
根据所述数据变化信息,同步所述目标表字段。
参照图14,示出了本申请的一种数据的同步系统实施例的结构框图,涉及数据中台、数据采集对象以及SAP系统,具体可以包括如下模块:
位于所述数据中台的任务管理模块1401,用于获取用户输入的同步任务信息,并将所述同步任务信息发送至所述数据采集对象,所述同步任务信息包括表标识;
位于所述数据采集对象的数据交互模块1402,用于从所述SAP系统中获取与所述表标识匹配的表数据,并从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
位于所述数据采集对象的数据发送模块1403,用于当所述SAP系统中存在与所述表数据对应的日志表时,则将所述表数据与所述日志表发送至所述数据中台;
位于所述数据中台的表数据同步模块1404,用于根据所述日志表的数据变化信息,同步所述表数据。
在本申请的一种可选实施例中,所述数据中台包括数据处理对象以及第二数据库,所述同步任务信息还包括调度周期,所述表数据同步模块1404包括:
位于所述数据处理对象的数据变化信息查询模块,用于按照所述调度周期,查询所述日志表中的数据变化信息;
位于所述数据处理对象的增量数据同步模块,用于确定与所述数据变化信息匹配的增量数据,并将所述增量数据同步于所述第二数据库。
在本申请的一种可选实施例中,所述数据变化信息查询模块具体用于:
通过所述数据处理对象获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则所述数据处理对象获取所述日志表中的数据变化信息。
在本申请的一种可选实施例中,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步模块具体用于:
所述数据处理对象确定与所述增加信息对应的第一增量数据,并将所述第一增量数据发送至所述第二数据库;或,
所述数据处理对象确定与所述删减信息对应的第二增量数据,并从所述第二数据库中删除所述第二增量数据;或,
所述数据处理对象确定与所述修改信息对应的第三增量数据,并对所述第二数据库中的所述第三增量数据进行更新。
在本申请的一种可选实施例中,所述表数据包括表字段,所述系统还包括:
位于所述数据中台的表字段确定模块,用于响应针对所述表字段的选择操作,从所述表数据中确定目标表字段;
所述表数据同步模块1404具体用于:
所述数据中台根据所述数据变化信息,同步所述目标表字段。
在本申请的一种可选实施例中,所述数据中台包括任务管理对象,所述任务管理调度模块为位于所述任务管理对象中的模块。
参照图15,示出了本申请的一种数据的同步装置实施例二的结构框图,应用于同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,具体可以包括如下模块:
第一数据库确定模块1501,用于响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
任务创建模块1502,用于响应针对所述任务输入控件的输入操作,确定与所述创建操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
表数据同步模块1503,用于响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据。
在本申请的一种可选实施例中,所述数据库添加控件包括资源标识控件、数据库标识控件以及帐户添加控件,所述第一数据库确定模块1501,包括:
资源标识确定子模块,用于响应针对所述资源标识控件的输入操作,确定资源标识;
数据库标识确定子模块,用于响应针对所述数据库标识控件的输入操作,确定数据库标识;
账户信息确定子模块,用于响应针对所述账户添加控件的输入操作,确定账户信息;
数据库确定子模块,用于根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
在本申请的一种可选实施例中,所述任务输入控件包括表标识输入控件以及周期输入控件,所述任务创建模块1502包括:
表标识处理子模块,用于响应针对所述表标识输入控件的输入操作,确定所述表标识,并提供与所述表标识匹配的表字段,所述表字段对应一表字段选择控件;
目标表字段确定子模块,用于响应针对所述表字段选择控件的选择操作,确定目标表字段;
调度周期确定子模块,用于响应针对所述周期输入控件的输入操作,确定所述调度周期;
同步任务创建子模块,用于根据所述表标识、所述目标表字段以及所述调度周期,确定所述同步任务信息。
在本申请的一种可选实施例中,所述表数据同步模块1503包括:
任务列表窗口展示子模块,用于响应针对所述任务创建控件的确定操作,展示与所述同步任务信息匹配的任务列表窗口;
表数据获取子模块,用于按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据;
表字段同步子模块,用于从所述表数据中提取所述目标表字段,同步所述目标表字段。
参照图16,示出了本申请的一种数据的同步装置实施例三的结构框图,涉及SAP系统,具体可以包括如下模块:
任务管理模块1601,用于获取用户输入的同步任务信息,所述同步任务信息包括表标识;
表字段展示模块1602,用于从所述SAP系统中获取与所述表标识匹配的表数据,并展示与所述表数据匹配的表字段;
日志表查询模块1603,用于响应针对所述表字段的选择操作,从所述SAP系统中查询是否存在与所述表数据对应的日志表,所述日志表包括所述表数据的数据变化信息;
表字段同步模块1604,用于当所述SAP系统中存在与所述表数据对应的日志表时,则根据所述日志表的数据变化信息,同步所述目标表字段。
在本申请的一种可选实施例中,还包括:
日志表创建模块,用于当所述SAP系统中不存在与所述表数据对应的日志表时,则在所述SAP系统中创建一针对所述表数据的新日志表,并同步所述目标表字段。
在本申请的一种可选实施例中,所述表字段同步模块1604具体用于:
根据所述数据变化信息,建立针对所述表数据的触发器;
根据所述触发器,同步所述目标表字段;
其中,所述数据变化信息包括增加信息、删除信息以及修改信息中的至少一种。
参照图17,示出了本申请的一种数据的同步装置实施例四的结构框图,涉及SAP系统,具体可以包括如下模块:
任务管理模块1701,用于获取用户输入的同步任务信息,所述同步任务信息包括表标识以及调度周期;
数据获取模块1702,用于从所述SAP系统中获取与所述表标识匹配的表数据,以及针对所述表数据的日志表;
数据变化查询模块1703,用于按照所述调度周期,查询所述日志表中的数据变化信息;
增量数据同步模块1704,用于确定与所述数据变化信息匹配的增量数据,并同步所述增量数据。
在本申请的一种可选实施例中,所述数据变化查询模块1703具体用于:
获取所述日志表中距离当前时刻最近的时间戳;
当所述时间戳满足所述调度周期时,则获取所述日志表中的数据变化信息。
在本申请的一种可选实施例中,所述数据变化信息包括增加信息、删减信息以及修改信息中的至少一种,所述增量数据同步模块1704具体用于:
确定与所述增加信息对应的第一增量数据,获取所述第一增量数据;或,
确定与所述删减信息对应的第二增量数据,删除所述第二增量数据;或,
确定与所述修改信息对应的第三增量数据,更新所述第三增量数据。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请实施例还提供了一种装置,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述装置执行本申请实施例所述的方法。
本申请实施例还提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行本申请实施例所述的方法。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本申请实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本申请实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的机器可读介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本申请所提供的一种数据的同步方法和一种数据的同步装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (6)
1.一种数据的同步方法,其特征在于,应用于同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,所述方法包括:
响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
响应针对所述任务输入控件的输入操作,确定与所述输入操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据;
其中,所述数据库添加控件包括资源标识控件、数据库标识控件以及账户添加控件,所述响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的数据库,包括:
响应针对所述资源标识控件的输入操作,确定资源标识;
响应针对所述数据库标识控件的输入操作,确定数据库标识;
响应针对所述账户添加控件的输入操作,确定账户信息;
根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
2.根据权利要求1所述的方法,其特征在于,所述任务输入控件包括表标识输入控件以及周期输入控件,所述响应针对所述任务输入控件的输入操作,确定与所述输入操作匹配的同步任务信息,包括:
响应针对所述表标识输入控件的输入操作,确定所述表标识,并提供与所述表标识匹配的表字段,所述表字段对应一表字段选择控件;
响应针对所述表字段选择控件的选择操作,确定目标表字段;
响应针对所述周期输入控件的输入操作,确定所述调度周期;
根据所述表标识、所述目标表字段以及所述调度周期,确定所述同步任务信息。
3.根据权利要求2所述的方法,其特征在于,所述响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据,包括:
响应针对所述任务创建控件的确定操作,展示与所述同步任务信息匹配的任务列表窗口;
按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据;
从所述表数据中提取所述目标表字段,同步所述目标表字段。
4.一种数据的同步装置,其特征在于,应用于同步应用程序,所述同步应用程序包括数据库添加控件、任务输入控件以及任务创建控件,所述装置包括:
第一数据库确定模块,用于响应针对所述数据库添加控件的添加操作,确定与所述添加操作匹配的第一数据库;
任务创建模块,用于响应针对所述任务输入控件的输入操作,确定与所述输入操作匹配的同步任务信息,所述同步任务信息包括表标识以及调度周期;
表数据同步模块,用于响应针对所述任务创建控件的确认操作,按照所述调度周期,从所述第一数据库中获取与所述表标识匹配的表数据,并同步所述表数据;
其中,所述数据库添加控件包括资源标识控件、数据库标识控件以及账户添加控件,所述第一数据库确定模块,包括:
资源标识确定子模块,用于响应针对所述资源标识控件的输入操作,确定资源标识;
数据库标识确定子模块,用于响应针对所述数据库标识控件的输入操作,确定数据库标识;
账户信息确定子模块,用于响应针对所述账户添加控件的输入操作,确定账户信息;
数据库确定子模块,用于根据所述资源标识、所述数据库标识以及所述账户信息,确定所述第一数据库。
5.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-3任一项所述的方法。
6.一种机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得所述处理器执行如权利要求1-3任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010276020.7A CN113515569B (zh) | 2020-04-09 | 2020-04-09 | 数据的同步方法、装置、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010276020.7A CN113515569B (zh) | 2020-04-09 | 2020-04-09 | 数据的同步方法、装置、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113515569A CN113515569A (zh) | 2021-10-19 |
CN113515569B true CN113515569B (zh) | 2023-12-26 |
Family
ID=78060410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010276020.7A Active CN113515569B (zh) | 2020-04-09 | 2020-04-09 | 数据的同步方法、装置、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113515569B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115422206A (zh) * | 2022-10-31 | 2022-12-02 | 四川互慧软件有限公司 | 一种数据库数据同步方法、系统、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101500208A (zh) * | 2008-01-31 | 2009-08-05 | 三星电子株式会社 | 设备间数据同步的方法和系统 |
CN102904887A (zh) * | 2012-09-26 | 2013-01-30 | 东软集团股份有限公司 | 一种Web客户端与服务器的数据同步方法和系统 |
CN105095247A (zh) * | 2014-05-05 | 2015-11-25 | 中国电信股份有限公司 | 符号数据分析方法和系统 |
CN105243067A (zh) * | 2014-07-07 | 2016-01-13 | 北京明略软件系统有限公司 | 一种实现实时增量同步数据的方法及装置 |
CN107016014A (zh) * | 2016-09-30 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 异构数据库的数据同步方法及装置 |
CN107590277A (zh) * | 2017-09-28 | 2018-01-16 | 泰康保险集团股份有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN108399256A (zh) * | 2018-03-06 | 2018-08-14 | 北京慧萌信安软件技术有限公司 | 异构数据库内容同步方法、装置及中间件 |
CN109241174A (zh) * | 2018-06-26 | 2019-01-18 | 东软集团股份有限公司 | 数据同步方法、装置、可读存储介质和电子设备 |
CN110245181A (zh) * | 2019-04-25 | 2019-09-17 | 深圳壹账通智能科技有限公司 | 数据同步的同步方法、装置及计算机存储介质 |
CN110674146A (zh) * | 2019-08-22 | 2020-01-10 | 视联动力信息技术股份有限公司 | 一种数据同步方法、同步端、待同步端、设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140258234A1 (en) * | 2013-03-11 | 2014-09-11 | AppGlu, Inc. | Synchronization of cms data to mobile device storage |
-
2020
- 2020-04-09 CN CN202010276020.7A patent/CN113515569B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101500208A (zh) * | 2008-01-31 | 2009-08-05 | 三星电子株式会社 | 设备间数据同步的方法和系统 |
CN102904887A (zh) * | 2012-09-26 | 2013-01-30 | 东软集团股份有限公司 | 一种Web客户端与服务器的数据同步方法和系统 |
CN105095247A (zh) * | 2014-05-05 | 2015-11-25 | 中国电信股份有限公司 | 符号数据分析方法和系统 |
CN105243067A (zh) * | 2014-07-07 | 2016-01-13 | 北京明略软件系统有限公司 | 一种实现实时增量同步数据的方法及装置 |
CN107016014A (zh) * | 2016-09-30 | 2017-08-04 | 阿里巴巴集团控股有限公司 | 异构数据库的数据同步方法及装置 |
CN107590277A (zh) * | 2017-09-28 | 2018-01-16 | 泰康保险集团股份有限公司 | 数据同步方法、装置、电子设备及存储介质 |
CN108399256A (zh) * | 2018-03-06 | 2018-08-14 | 北京慧萌信安软件技术有限公司 | 异构数据库内容同步方法、装置及中间件 |
CN109241174A (zh) * | 2018-06-26 | 2019-01-18 | 东软集团股份有限公司 | 数据同步方法、装置、可读存储介质和电子设备 |
CN110245181A (zh) * | 2019-04-25 | 2019-09-17 | 深圳壹账通智能科技有限公司 | 数据同步的同步方法、装置及计算机存储介质 |
CN110674146A (zh) * | 2019-08-22 | 2020-01-10 | 视联动力信息技术股份有限公司 | 一种数据同步方法、同步端、待同步端、设备及存储介质 |
Non-Patent Citations (1)
Title |
---|
基于Json的小型异构数据库同步策略研究;黄志;李涛;宋瑶;苏传程;;气象研究与应用(01);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN113515569A (zh) | 2021-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20100218179A1 (en) | Managed environment update selection | |
CN109446274B (zh) | 大数据平台bi元数据管理的方法和装置 | |
CN106844372B (zh) | 一种物流信息查询方法和装置 | |
US20100280990A1 (en) | Etl for process data warehouse | |
CN102117327A (zh) | 基于到期日期预警到期物品及生成出货信息的方法和装置 | |
CN110019551B (zh) | 一种数据仓库构建方法及装置 | |
US10311030B1 (en) | Method and system for implementing an automated migration tool | |
CN110580572A (zh) | 一种产品全寿命追溯系统 | |
CN106168963B (zh) | 实时流数据的处理方法、装置及服务器 | |
CN112084646A (zh) | 一种基于数字孪生的模块化产品定制方法 | |
EP3538991A1 (en) | Production-like testing and complex business to business auditing system | |
US20100088311A1 (en) | Enhanced database scheme to support advanced media production and distribution | |
CN113515569B (zh) | 数据的同步方法、装置、系统 | |
CN110858197A (zh) | 一种同步数据的方法和装置 | |
CN114416703A (zh) | 数据完整性自动监控方法、装置、设备及介质 | |
CN115712623A (zh) | 一种基于捕获元数据变更的批量数据容错采集方法 | |
CN117035687A (zh) | 一种电网业务固定资产流程配置方法、系统及计算机存储介质 | |
CN114706994A (zh) | 一种基于知识库的运维管理系统和方法 | |
CN110866065A (zh) | 一种数据交换系统、交换方法及存储介质 | |
CN104834730A (zh) | 数据分析系统和方法 | |
US11501253B2 (en) | Document event brokering and audit system | |
CN108900497B (zh) | 一种异构系统间的数据同步方法及系统 | |
CN117333155A (zh) | 一种故障信息处理方法、系统、服务器及客户端 | |
CN110209379B (zh) | 一种智能交互式软件系统及使用方法 | |
GB2478628A (en) | Automatic generation of a dictionary defining correspondence between attributes of different schemas where attribute values are the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 40060935 Country of ref document: HK |
|
GR01 | Patent grant | ||
GR01 | Patent grant |