CN114691779A - 数据同步方法和系统、计算机可读存储介质 - Google Patents
数据同步方法和系统、计算机可读存储介质 Download PDFInfo
- Publication number
- CN114691779A CN114691779A CN202210323972.9A CN202210323972A CN114691779A CN 114691779 A CN114691779 A CN 114691779A CN 202210323972 A CN202210323972 A CN 202210323972A CN 114691779 A CN114691779 A CN 114691779A
- Authority
- CN
- China
- Prior art keywords
- data
- task
- source
- data source
- target
- 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.)
- Pending
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
- G06F16/275—Synchronous replication
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24553—Query execution of query operations
- G06F16/24558—Binary matching operations
- G06F16/2456—Join operations
-
- 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/25—Integrating or interfacing systems involving database management systems
- G06F16/254—Extract, transform and load [ETL] procedures, e.g. ETL data flows in data warehouses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本公开是关于一种数据同步方法和系统、计算机可读存储介质。该方法包括:响应于在第一交互界面内配置数据源的操作,连接多个数据源;然后,响应于在第二交互界面内创建任务的操作,生成任务配置文件;之后,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。这样,本实施例中通过可视化的配置操作可以实现不同数据源之间数据的传输,无需重复开发;并且配置过程简单,可以降低学习成本。
Description
技术领域
本公开涉及数据处理技术领域,尤其涉及一种数据同步方法和系统、计算机可读存储介质。
背景技术
目前,各行各业会形成不同的数据中心,并且各个数据中心相互隔离。当需求两个数据中心的数据时可以将一个数据中心的数据同步到另一个数据,如相关技术中数据ETL(Extract-Transform-Load,提取-转换-加载)转换工具可以从一个数据中心的集群内抽取数据并同步到另一个数据中心的集群内。为此,相关技术中通常需要为各个数据中心开发相应的ETL转换工具。然而,不同数据中心或者不同项目重复开发ETL转换工具会浪费开发时间,延长开发周期,降低开发效率。
发明内容
本公开提供一种数据同步方法和系统、计算机可读存储介质,以解决相关技术的不足。
根据本公开实施例的第一方面,提供一种数据同步方法,包括:
响应于在第一交互界面内配置数据源的操作,连接多个数据源;
响应于在第二交互界面内创建任务的操作,生成任务配置文件;
响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
可选地,响应于在第一交互界面内配置数据源的操作,连接多个数据源,包括:
响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源;所述数据源包括源数据源和目标数据源;
响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数;
响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源;
响应于连接成功,保存所述数据源。
可选地,所述同步规则采用热更新,包括:
响应于表示修改目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,所述任务配置文件存储到目标数据库中。
可选地,响应于在第二交互界面内创建任务的操作,生成任务配置文件,包括:
响应于在所述第二交互界面内配置任务信息的操作,获取任务信息;
响应于在所述第二交互界面内选择源数据源的操作,获取源数据源;
响应于在所述第二交互界面内选择待同步数据的操作,获取待同步数据;
响应于在所述第二交互界面内选择同步规则的操作,获取同步规则;
响应于在所述第二交互界面内选择目标数据源的操作,获取目标数据源;
响应于在所述第二交互界面内配置执行周期和频率的操作,获取执行周期和频率;
响应于在所述第二交互界面内创建数据同步任务的操作,创建目标任务,所述目标任务用于按照所述执行周期和频率以及同步规则将所述源数据源中的待同步数据同步到所述目标数据源。
可选地,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源,包括:
响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据所述任务类型选择对应的数据同步插件;
解析所述任务配置文件,得到源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据;
从所述源数据源读取所述待同步数据并根据所述同步规则确定是否转换所述待同步数据;
响应于确定转换所述待同步数据,转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源;
获取执行结果数据。
可选地,所述同步规则采用热更新。
可选地,所述同步规则采用热更新,包括:
测试新的同步规则;
当所述新的同步规则正确时,将新的同步规则处理为目标文档格式的目标数据包;所述目标文档格式与所述规则加载接口相匹配;
将所述目标数据包存储到预设的指定目录之内,以使预设的规则加载接口读取所述目标数据包并使用所述目标数据包对应的同步规则。
根据本公开实施例的第二方面,提供一种数据同步系统,包括数据源管理模块、任务管理模块和后台启动任务模块;
所述数据源管理模块,用于响应于在第一交互界面内配置数据源的操作,连接多个数据源;
所述任务管理模块,用于响应于在第二交互界面内创建任务的操作,生成任务配置文件;
所述后台启动任务模块,用于响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
可选地,所述数据源管理模块响应于在第一交互界面内配置数据源的操作,连接多个数据源,包括:
响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源;所述数据源包括源数据源和目标数据源;
响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数;
响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源;
响应于连接成功,保存所述数据源;或者,响应于连接不成功,重新执行获取目标配置参数的步骤。
可选地,所述任务管理模块采用热更新方式更新所述同步规则,包括:
响应于表示修改目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,所述任务配置文件存储到目标数据库中。
可选地,所述任务管理模块响应于在第二交互界面内创建任务的操作,生成任务配置文件,包括:
响应于在所述第二交互界面内配置任务信息的操作,获取任务信息;
响应于在所述第二交互界面内选择源数据源的操作,获取源数据源;
响应于在所述第二交互界面内选择待同步数据的操作,获取待同步数据;
响应于在所述第二交互界面内选择同步规则的操作,获取同步规则;
响应于在所述第二交互界面内选择目标数据源的操作,获取目标数据源;
响应于在所述第二交互界面内配置执行周期和频率的操作,获取执行周期和频率;
响应于在所述第二交互界面内创建数据同步任务的操作,创建目标任务,所述目标任务用于按照所述执行周期和频率以及同步规则将所述源数据源中的待同步数据同步到所述目标数据源。
可选地,所述后台启动任务模块响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源,包括:
响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据所述任务类型选择对应的数据同步插件;
解析所述任务配置文件,以获取源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据;
从所述源数据源读取所述待同步数据,并根据所述同步规则确定是否转换所述待同步数据;
响应于确定转换所述待同步数据,转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源;
获取执行结果数据。
可选地,所述任务管理模块还用于采用热更新方式更新所述同步规则。
可选地,所述任务管理模块采用热更新方式更新所述同步规则,包括:
测试新的同步规则;
当所述新的同步规则正确时,将新的同步规则处理为目标文档格式的目标数据包;所述目标文档格式与所述规则加载接口相匹配;
将所述目标数据包存储到预设的指定目录之内,以使预设的规则加载接口读取所述目标数据包并使用所述目标数据包对应的同步规则。
根据本公开实施例的第三方面,提供一种非暂态计算机可读存储介质,当所述存储介质中的可执行的计算机程序由处理器执行时,能够实现如上述的方法。
本公开的实施例提供的技术方案可以包括以下有益效果:
由上述实施例可知,本公开实施例提供的方案中可以响应于在第一交互界面内配置数据源的操作,连接多个数据源;然后,响应于在第二交互界面内创建任务的操作,生成任务配置文件;之后,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。这样,本实施例中通过可视化的配置操作可以实现不同数据源之间数据的传输,无需重复开发;并且配置过程简单,极大的降低了学习成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是根据一示例性实施例示出的一种数据同步方法的流程图。
图2是根据一示例性实施例示出的连接数据源的流程图。
图3是根据一示例性实施例示出的生成任务配置文件的流程图。
图4是根据一示例性实施例示出的同步数据的流程图。
图5是根据一示例性实施例示出的热更新同步规则的流程图。
图6是根据一示例性实施例示出的数据同步系统的架构示意图。
图7是根据一示例性实施例示出的获取数据源的流程图。
图8是根据一示例性实施例示出的创建任务的流程图。
图9是根据一示例性实施例示出的同步数据的流程图。
图10是根据一示例性实施例示出的时间转换规则的框图。
图11是根据一示例性实施例示出的字段间转换拆分合并规则的框图。
图12是根据一示例性实施例示出的字段映射关系规则的框图。
图13是根据一示例性实施例示出的数据脱敏规则的框图。
图14是根据一示例性实施例示出的同步规则热更新的流程图。
图15是根据一示例性实施例示出的热更新参数的流程图。
图16是根据一示例性实施例示出的一种数据同步系统的框图。
图17是根据一示例性实施例示出的另一种数据同步系统的框图。
图18是根据一示例性实施例示出的又一种数据同步系统的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性所描述的实施例并不代表与本公开相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置例子。需要说明的是,在不冲突的情况下,下述的实施例及实施方式中的特征可以相互组合。
为解决上述技术问题,本公开实施例提供了一种数据同步方法,可以应用于数据同步系统,图1是根据一示例性实施例示出的一种数据同步方法的流程图。参见图1,一种数据同步方法包括步骤11~步骤13:
在步骤11中,响应于在第一交互界面内配置数据源的操作,连接多个数据源。
本实施例中,数据同步系统内预先部署ETL组件,该ETL组件可以实现从一个数据源读取数据并同步到另一个数据源之内,达到同步数据的效果。在一示例中,该ETL组件启动后可以显示一个交互界面,后续称之为第一交互界面。
需要说明的是,第一交互界面、第二交互界面和第三交互界面可以为独立的三个交互界面,这个每个交互界面分别对应相应的功能,例如第一交互界面内仅有选择和候选功能,第二交互界面内仅有创建任务的功能,通过上一步或者下一步按键实现两个交互界面的切换,这样交互界面功能相对简单,更易于操作和学习,降低操作难度。当然,上述多个交互界面也可以集成到一个界面,用户可以选择其中的功能即可使用,这样交互界面的内容比较全面,方便用户从全局角度来把握数据同步方法。技术人员可以根据具体场景选择第一交互界面、第二交互界面和第三交互界面是单独设置还是集成到一个交互界面,相应方案落入本公开的保护范围。
参见图2,在步骤21中,数据同步系统可以响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源。第一交互界面内包括数据源的选项,并且上述数据源包括源数据源和目标数据源,其中源数据源是指提供待同步数据的数据源,也可以理解为数据同步系统的输入源;目标数据源是指存储待同步数据的数据源,也可以理解为数据同步系统的输出源。在选择源数据源和目标数据源之后,数据同步系统可以获取到数据源的地址(如URL地址)或者接口。可理解的是,在获取到数据源的地址(如URL地址)或者接口后,数据同步系统可以直接与数据源连接。
本步骤中,数据离线同步场景下数据源如表1所示。
表1数据离线同步场景下作为输入源或者输出源的数据源
本步骤中,实时订阅场景下数据源如表2所示。
表2实时订阅场景下作为输入源或者输出源的数据源
数据源 | 输入 | 输出 |
Mysql | √ | |
PostgresSql | √ | |
Clickhouse | √ | |
Mongodb | √ | |
Kafka | √ | √ |
本步骤中将数据源划分为输入源或者输出源,从而方便用户在配置过程选择到合适的源数据源和目标数据源,例如在离线场景下可以选择Mysql、PostgresSql、Clickhouse、Mongodb、Hdfs、ElasticSearch和API作为源数据源,在实时订单场景下选择Kafka作为源数据源等,结合场景和各数据源的具体特征划分为输入源和输出源可以保证用户选择出可靠的数据源,提高配置效率。
在步骤22中,数据同步系统可以响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数。上述目标配置参数包括但不限于URL地址、端口等,可以唯一确定源数据源或者目标数据源的参数。在一示例中,第一交互界面内包括配置参数的选项,用户可以触发上述选项以修改配置参数。数据同步系统可以响应于第一交互界面内修改配置参数的操作,显示参数菜单;当检测到用户选择参数菜单中某个参数以及该参数的某个取值后,获取到配置参数,后续称之为目标配置参数。例如,当用户点击参数A时,可以显示参数A的下拉菜单,此时下拉菜单中会显示参数A的候选取值;用户可以选择某一个候选取值,这样数据同步系统可以将用户所选择的候选取值作为参数A的取值并保存。又如,当用户点击参数A时,可以显示参数A的滑动条,滑动条的两端分别为参数A取值的最大值和最小值;用户可以滑动上述滑动条中滑块,在滑块滑动过程中可以在滑动的周围(如上方)显示当前位置对应的取值;当用户点击确定按键后,数据同步系统可以将滑动当前位置对应的取值作为参数A的取值并保存。
在步骤23中,数据同步系统可以响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源。在一示例中,第一交互界面内还包括测试连接的选项。用户可以操作上述表示测试连接的选项,以测试源数据源和目标数据源之间是否可以传输数据。数据同步系统在检测到测试连接源数据源和目标数据源的操作时,可以基于步骤21中数据源的地址或者接口,分别与源数据源和目标数据源连接,如向源数据源或者目标数据源发送一个测试请求,并接收源数据源返回的响应请求,如果在设定时长(如20ms)内没有接收到响应信息则说明没有连接,若接收到响应信息则说明连接成功,从而可以测试源数据源和目标数据源之间是否可以传输数据。在源数据和目标数据源之间能够传输数据时,数据同步系统可以确定源数据源和目标数据源连接。如果源数据源的目标数据源不连接,则可以调整源数据源和目标数据源的组合,或者调整源数据源和目标数据源的地址等,最终实现源数据源和目标数据源连接,形成数据同步通道。
在步骤24中,数据同步系统可以响应于连接成功,保存所述数据源。可理解的是,数据同步系统可以保存源数据源、目标数据源、目标配置参数、可连接的源数据源和目标数据源组合等。
可见,本步骤中可以将待同步数据的输入源和输出源预先配置到数据同步系统中,在数据同步之前通过交互界面中选择相应的输入源和输出源即可建立数据同步通道。与相关技术中开发相应的数据同步组件相比较,只需要安装上述的数据同步系统即可,提高了数据同步效率。
在步骤12中,响应于在第二交互界面内创建任务的操作,生成任务配置文件。
本实施例中,在源数据源和目标数据源连接成功并保存数据源的数据后,数据同步系统可以显示包含有创建任务的选项的交互界面,后续称之为第二交互界面。其中,创建任务的选项可以包括但不限于表示配置任务信息的选项、表示选择源数据源的选项、表示选择待同步数据的选项、表示选择同步规则的选项、表示选择目标数据源的选项、表示配置执行周期和频率的选项和表示创建数据同步任务的选项,可以根据具体场景选择交互界面内的选项。
在一示例中,第二交互界面显示上述选项后,用户可以触发上述选项。数据同步系统可以检测第二交互界面内的操作,例如检测到配置任务信息的操作、选择源数据源的操作、选择待同步数据的操作、选择同步规则的操作、选择目标数据源的操作、配置执行周期和频率的操作或者创建数据同步任务的操作等。
参见图3,在步骤31中,当检测到配置任务信息的操作时,数据同步系统可以响应于在第二交互界面内配置任务信息的操作,获取任务信息。其中任务信息可以包括但不限于所在项目、所属业务等,例如项目A中业务B的数据同步任务。
在步骤32中,在获取到任务信息之后,数据同步系统可以继续检测第二交互界面内的操作,当检测到选择源数据源的操作时,可以响应于第二交互界面内选择源数据源的操作,获取所选择的源数据源。可理解的是,本步骤中是从数据源列表中选择其中一个(或多个)来作为源数据源。其中,上述数据源列表是在步骤11中创建的,即步骤11中选择数据源是从若干个数据源中选择多个数据源作为源数据源或者目标数据源,以创建数据源列表。
在步骤33中,在获取到源数据源后,数据同步系统可以继续检测第二交互界面内的操作,当检测到选择待同步数据的操作时,可以响应于第二交互界面内选择待同步数据的操作,获取所选择的待同步数据,即上述待同步数据是所选择的源数据源中的数据,如待同步数据可以包括但不限于数据库、数据表和数据字段等。
在步骤34中,在获取待同步数据之后,数据同步系统可以继续检测第二交互界面内的操作,当检测到选择同步规则的操作时,可以响应于第二交互界面内选择同步规则的操作,获取所选择的同步规则。其中,数据同步系统中预先设置多个同步规则,或者用户自定义同步规则。例如,SQL型数据库可以采用指定SQL语句并将执行后的结果进行同步等。
在一示例中,上述同步规则可以包括时间转换规则。参见图10,数据同步系统可以按照上述时间转换规则转换待同步数据中的时间,例如时间类型转换获取当前日期/时间、获取时间字段年月日时分秒的值、时间加减和计算星期等;又如时间类型转换,将待同步数据中的时间转换成10/13位时间戳、日期、时间和时间字段等等;再如按照时间格式转换,将时间格式转换成yyyy-MM-dd HH:mm:ss(如2022-03-01 13:15:18),yyyyMMdd(如20220301),yyyy/MM/dd(如2022/03/01)等等。本示例中可以将待同步数据的时间转换成不同类型或者格式的时间数据,从而满足不同业务的需求。
在另一示例中,上述同步规则可以包括字段间转换拆分合并规则。参见图11,上述字段间转换拆分合并规则可以包括字段合并,例如通过某些字符拼接、字段(数值)间计算、按照json格式合并。以字符拼接为例,例如数据列“姓”和“名”可以合并一列为“姓名”,如数据列“年级”和“班级”可以合并一列为“年级/班级”。又如,上述字段间转换拆分合并规则可以包括字段拆分,如按照位置拆分、按照某段字条拆分、字段截取。以按照位置拆分为例,数据列“年级/班级”拆分为2列“年级”和“班级”。又如上述字段间转换拆分合并规则可以包括字段转换,如过滤、聚合、字符串转换等等。以字符串转换,例如将大写字母转换成小写字母,拼音转换成汉字等等。本示例中可以将待同步数据中的字段转换拆分合并等处理,可以得到所需要的各类数据以满足各类业务的需求,提高数据的利用率。
在又一实施例中,上述同步规则可以包括字段映射关系规则。参见图12,上述字段映射关系规则可以包括输出字段内容和原字段内容的映射,例如原字段内容中的数值分别与输出字段内容中的数值、数据/时间区间和字符串映射;原字段内容中的数据/时间区间分别与输出字段内容中的数值、数据/时间区间和字符串映射;原字段内容中的字符串分别与输出字段内容中的数值、数据/时间区间和字符串映射。例如,将年龄数据age转化为年龄阶段stage,如年龄1-10岁对应年龄阶段婴幼儿,年龄11-18岁对应年龄阶段青少年等。本实施例可以字段映射关系规则获取到不同的字段内容,从而满足各类业务的需求,提高数据的利用率。
在又一实施例中,上述同步规则还可以包括数据脱敏类型。参见图13,字段脱敏规则可以包括基础脱敏类型、敏感字段类型和脱敏类型。其中,基础脱敏类型包括但不限于身份证号、密码、手机号/邮箱等;敏感字段类型包括但不限于敏感内容、隐私信息等;脱敏类型可以包括但不限于选择基础脱敏类型、自定义脱敏规则和自动检查敏感字段等。例如,将手机号码脱敏为139****0588。本实施例中通过数据脱敏规则可以保证数据同步过程的安全,避免信息泄露。
需要说明的是,本步骤中,同步规则可以包括第一预设规则,该第一预设规则是指对待同步数据本身处理的规则,用于每一条待同步数据,例如时间转换、字段拆分与合并、字段间映射、敏感字段脱敏等;还可以包括第二预设规则,该预设规则是指采用预设模型(例如神经网络模型、语音处理模型、文本处理模型等)对预设数量(例如数百~数万)条待同步数据进行处理的规则,用于批量数量的处理,例如提取待同步数据中的事件或者语义解析等。技术人员可以根据具体场景选择合适的同步规则,相应方案落入本公开的保护范围。
在步骤35中,在获取同步规则后,数据同步系统可以继续检测第二交互界面内的操作,当检测到选择目标数据源的操作时,可以响应于第二交互界面内选择目标数据源的操作,获取所选择的目标数据源。可理解的是,上述目标数据源可以从上述数据源列表选取,具体内容可以参见源数据源的获取方式。
在步骤36中,在获取同步规则后,数据同步系统可以继续检测第二交互界面内的操作,当检测到配置执行周期和频率的操作时,可以响应于第二交互界面内配置执行周期和频率的操作,获取所配置的执行周期和频率,上述执行周期可以包括但不限于一天、一周或者一月,上述频率可包括但不限于一天一次(或者多次),一周一次(或者多次)或者一月一次(或者多次),可理解的是,上述执行周期和频率可以择一设置,例如设置了执行周期则无需设置频率,或者设置了频率无需设置周期等,可以根据具体场景进行设置。这样,本步骤中可以通过配置执行周期和频率,使源数据库和目标数据之间的数据传输相匹配,保证传输效率;并且,还可以保证数据同步能够满足数据同步任务对数据传输的需求。
在步骤37中,在获取执行周期和频率后,数据同步系统可以继续检测第二交互界面内的操作,当检测到创建数据同步任务的操作时,可以响应于第二交互界面内创建数据同步任务的操作,创建数据同步任务即目标任务。可理解的是,上述目标任务用于按照上述执行周期和频率以及同步规则将源数据源中的待同步数据同步到目标数据源。这样,数据同步系统可以在第二交互界面内可视化显示各个选项,用户通过可视化操作来创建目标任务,简便快捷且效率高。
在步骤13中,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
本实施例中,在创建数据同步任务即目标任务之后,数据同步系统可以显示包含启动数据同步任务的选项的交互界面,后续称之为第三交互界面。用户可以选择数据同步任务的任务列表,从任务列表中选择至少一个任务,并选择启动该数据同步任务。数据同步系统可以检测第三交互界面内的操作,当检测到启动数据同步任务的操作时,可以响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
参见图4,在步骤41中,数据同步系统可以响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据任务类型选择对应的数据同步插件,该数据同步插件即是上述实施例所说的数据ETL转换工具。
在步骤42中,数据同步系统可以解析任务配置文件,得到步骤11中的源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据等。
在步骤43中,上述数据同步插件可以从源数据源读取待同步数据,并根据预设的同步规则确定是否对上述待同步数据进行转换。
在步骤44中,当确定需要转换待同步数据时,可以响应于确定转换待同步数据,上述数据同步插件可以转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源。在步骤45中,数据同步系统可以获取执行结果数据,将上述执行结果数据写入到同步记录。
在一实施例中,考虑到在数据同步过程中,用户有更新同步规则的实际需求,本实施例中数据同步系统中的同步规则采用热更新方式,即在不影响数据同步的情况下更新同步规则并且同步规则完成更新后可以替换更新前的同步规则投入使用。
在一示例中,参见图5,在步骤51中,数据同步系统可以获取新的同步规则,并测试新的同步规则。
在步骤52中,数据同步系统可以在新的同步规则正确时,将新的同步规则处理为目标文档格式(如jar格式)的目标数据包,并且该目标文档格式与规则加载接口相匹配。
在步骤53中,数据同步系统可以将目标数据包存储到预设的指定目录(如transformPlugin目标)之内,以使预设的规则加载接口读取目标数据包并使用目标数据包对应的同步规则。例如,本示例中可以将新的同步规则处理为jar包,并将jar包放到transformPlugin目标下。在数据同步过程中,规则加载接口可以加载上述transformPlugin目标下的所有jar包。然后,数据同步系统可以确定同步规则是否能够正常使用。如果不能正常使用则回滚并删除新同步的jar包,并重新加载规则jar包。如果能够正常使用则热更新结束。本步骤中,数据同步系统可以在同步数据过程中生成任务进度条(或者任务完成比例),该任务进度条中比例或者滑动表示当前已经同步数据占全部数据的比例;当任务全部完成后,数据同步系统可以生成任务完成的标识,例如任务进度条显示100%,已完成,或者切换到已完成的菜单中,从而方便用户及时了解任务进度。这样,本示例中通过热更新方式更新同步规则,可以在不影响数据同步过程的情况下调整规则,有利于提升数据同步效率,以及提高用户使用体验。
在另一示例中,数据同步系统可以响应于目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,上述任务配置文件存储到目标数据库中,该目标数据库可以是数据同步系统对应的本地数据库。这样,本示例中采用热更新方式更新目标配置参数,可以保证不停止数据同步任务的情况下生效配置参数,有利于提升数据同步效率,以及提高用户使用体验。
至此,本公开实施例提供的方案中可以响应于在第一交互界面内配置数据源的操作,连接多个数据源;然后,响应于在第二交互界面内创建任务的操作,生成任务配置文件;之后,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。这样,本实施例中通过可视化的配置操作可以实现不同数据源之间数据的传输,无需重复开发;并且配置过程简单,极大的降低了学习成本。
下面结合一实施例来描述数据同步系统的工作原理,参见图6,包括:
1、数据源创建流程
参见图7,数据同步系统可以显示第一交互界面。在第一交互界面内,用户可以选择数据源,包括源数据源和目标数据源,例如Mysql、Hdfs和API等等。数据同步系统可以在第一交互界面内显示提示信息,以使用户根据第一交互界面内的提示信息填写对应的配置参数,获得目标配置参数。然后,数据同步系统可以测试连接。若连接成功,数据同步系统可以保存数据源;若连接失败,则提示用户需要核对配置参数,直至连接成功才能保存数据源。
2、任务创建流程
参见图8,数据同步系统可以显示第二交互界面,并生成提示用户进行任务创建流程的任务信息,如所在项目,所属业务等。然后,选择数据输入的数据源即源数据源,其中源数据源从上述步骤(1)已经创建的数据源选择。因此,如果没有需要的数据源,需要返回第(1)步创建数据源。
然后,选择源数据源后,可以查看该数据源所存储的数据,根据需求选择待同步数据(如选择数据库、表和字段等),并根据数据源类型进一步制定数据同步规则(例如SQL型数据库可以指定sql语句,将执行后的结果进行同步)。
之后,选择输出数据源即目标数据源。并配置执行的周期和频率,创建任务。
3、任务执行流程
参见图9,任务创建完成后,数据同步系统会生成任务配置文件。数据同步系统可以显示第三交互界面,根据用户的启动任务的操作来启动任务。此时,数据同步系统可以根据任务类型选择启动离线同步插件还是实时订阅插件。任务启动后解析配置文件,获取连接数据源的配置参数,读入待同步数据。待同步数据读入后,根据配置文件判断是否需要数据转换,如果不需要则直接将待同步数据输出到目标数据源,如果需要则经过数据转换过程后再输出;执行完成后返回执行的结果,展示在第三交互界面上。
4、任务同步规则
同步规则可以包括第一预设规则和第二预设规则,其中第一预设规则用于对待同步数据进行处理,例如时间转换、字段的拆分与合并、字段间映射关系、敏感字段脱敏等等。第二预设规则用于利用采用预设模型(例如神经网络模型、语音处理模型、文本处理模型等)对预设数量(例如数百~数万)条待同步数据进行处理的规则,即包含预设模型的规则,用于批量数量的处理,例如提取待同步数据中的事件或者语义解析等。技术人员可以根据具体场景选择合适的同步规则,相应方案落入本公开的保护范围。
(1)时间转换规则
参见图10,时间转换规则可以包括时间格式转换、时间类型转换和时间类型转换等。其中,时间格式转换可以包括但不限于yyyy-MM-dd HH:mm:ss格式、yyyyMMdd格式和yyyy/MM/dd格式等等;时间类型转换可以包括但不限于10/13位时间戳、日期、时间、时间字段等等;时间类型转换可以包括但不限于获取当前日期/时间、获取时间字段年月日时分秒的值、时间加减和计算星期等等。技术人员可以根据具体场景进行选择,相应方案落入本公开的保护范围。
在一示例中,将13位时间戳字段event_time转换为yyyy-MM-dd HH:mm:ss格式的event_date,如表3所示。
表3时间戳与具体时间转换
event_time | event_date |
1627351547610 | 2021-07-27 10:05:47 |
(2)字段间转换拆分合并规则
参见图11,字段间转换拆分合并规则包括字段转换规则、字段拆分规则和字段合并规则。其中字段转换规则包括但不限于过滤字段、聚合字段、字符串转换等。字段拆分规则包括但不限于按照位置拆分、按照某段字符拆分和字段截取等。字段合并规则包括但不限于通过某些字符拼接、字段(数值)间计算、按json格式合并等等。
在一示例中,将字符串str按照“-”拆分为str1和str2字段,如表4所示。
表4字符串拆分规则
(3)字段映射规则
参见图12,字段映射规则为原字段和输出字段内容的映射,例如原字段内容中的数值分别与输出字段内容中的数值、数据/时间区间和字符串映射;原字段内容中的数据/时间区间分别与输出字段内容中的数值、数据/时间区间和字符串映射;原字段内容中的字符串分别与输出字段内容中的数值、数据/时间区间和字符串映射。
在一示例中,将年龄数据age转化为年龄阶段stage,如表5所示。
(4)字段脱敏规则
参见图13,字段脱敏规则可以包括基础脱敏类型、敏感字段类型和脱敏类型。其中,基础脱敏类型包括但不限于身份证号、密码、手机号/邮箱等;敏感字段类型包括但不限于敏感内容、隐私信息等;脱敏类型可以包括但不限于选择基础脱敏类型、自定义脱敏规则和自动检查敏感字段等。例如,将手机号码脱敏为139****0588。
表5年龄数据age和年龄阶段stage的转换规则
age | stage |
1-10 | 婴幼儿 |
11-18 | 青少年 |
19-35 | 青年 |
36-50 | 壮年 |
51-65 | 中年 |
>65 | 老年 |
(5)同步规则热更新
参见图14,为了同步规则更新过程不影响到数据同步业务,可以将同步规则包装为可拆卸的规则组件。完成一个同步规则的开发后,可以将该同步规则的jar包放在transformPlugin目录下,请求加载同步规则的规则加载接口来加载目录下的所有jar包。然后观察数据同步系统上的同步规则是否正常,如果不正常则回滚,删除jar包,请求重新加载规则jar包;如果正常,则热更新结束。
(6)任务配置参数热更新
参见图15,本示例中针对实时订阅任务,与离线任务不同,实时任务一旦开始执行就不会停下,当用户想要修改任务配置文件时,将数据同步规则存储到目标数据库中。当修改同步规则时,直接更新配置表格。数据同步任务执行过程中,为不停止任务下生效,程序中定期读取配置表格中的同步规则,如果配置表格没有发生改变则无需改变正常执行,如果配置表格发生改变能够立刻进行调整,然后继续执行。
下面结合另一实施例来描述数据同步系统的工作原理,参见图16和图17,包括:
0,准备工作
开发数据源管理(添加、修改、删除等)、任务管理(添加、修改、删除、发布、日志查看等)、权限管理、用户管理功能及服务接口,上述方功能可以在交互页面内完成;开发基于docker api的镜像创建、镜像发布功能;开发基于k8s api的任务部署、任务日志查看功能;开发基于grpc协议的任务管理服务端、任务执行客户端功能,服务端分发任务给执行客户端,客户端根据不同的配置策略可在本地环境、k8s环境完成任务执行,也可进行定制化开发完成基于环境任务执行。上述WEB端和后端(即服务端和客户端)构成本公开实施例中的数据同步系统。
1,配置数据源
添加数据源,支持mysql/postgresql/clickhouse/hive/elasticsearch/restapi/mongodb/redis/hdfs/kafka数据源链接测试及添加。输入数据源ip、地址、端口、用户名、密码等信息,认证通过后,把数据源信息保存到mysql数据库中。每个登录系统的用户只能看见和使用自己创建的数据源。
2,选择源数据源与目标数据源,完成数据同步任务创建
从第(1)中已配置完成的数据源列表中选择源数据源及数据表(数据表支持全部字段或部分字段),在已配置完成的数据源列表中选择目标数据源及数据表,完成源数据源与目标数据源配置。数据同步系统根据源数据源与目标数据源配置完成基于flinkx的配置文件,供后续执行flinkx任务时使用。可理解的是,上述flinkx仅是其中一种方式,还可以采用例如DataX方式来完成数据同步,相应方案同样落入本公开的保护范围。
例如,填写任务名称、任务调度时间(同时支持单次执行与每天定时执行)以及完成任务创建,并将数据保存在mysql数据库中。
任务调度模块启动grpc服务器,等待任务执行的1-N个客户端连接,任务调度负责扫描数据库中未执行的任务,每间隔10s扫描一次。发现新任务后,在1-N个客户端中选择一个客户端(随机或者轮询算法),通过grpc协议完成服务器-客户端的任务分发。任务执行客户端可以能会产生异常退出,此时任务执行服务器端需要释放该客户端,保障后续新任务不分发到该客户端。
执行运行中的任务,调用k8s api查询任务执行状态(运行中、已完成、错误),修改数据库的任务状态及任务日志、以便后续日志查询与任务监控。
3,镜像构建
任务执行客户端接收到新任务后,完成基于flinkx生成任务配置文件,通过任务配置文件+基于flinkx的镜像完成任务镜像构建,构建完成的镜像发布到harbor镜像仓库中。
4,任务部署
服务器端启动后客户端启动,客户端启动后与服务器建立grpc链接,完成客户端注册。服务器通知有新任务后,客户端生成基于flinkx的任务配置文件,生成基于flinkx镜像的新镜像,上传到harbor镜像仓库中。向k8s服务器发送控制指令,该控制指令包括所选择的部署模式和Flinkx镜像在Harbor中的地址,即调用k8s api完成任务镜像部署。k8s可以根据地址从Harbor仓库中下载Flinkx镜像并进行部署,在部署成功后根据配置文件自动执行任务。在任务执行过程和任务结束后,k8s中数据收集模块可以收集各类数据,例如任务执行时间、结束时间、同步数据条数、所用流量等,并将上述种类数据发送给Kafka消息组件。Gprc服务器端中任务状态监听模块可以监听Kafka消息组件,当监听到新消息(即各类数据)时可以消费上述消息将回写到Mysql数据库,即调整任务的各种状态,如任务进度、已完成数据条数、起始时间、结束时间等,从而方便用户从WEB端的交互界面查看任务信息。
5,任务监控
数据同步系统的UI操作页面即交互界面可以查看每一个任务的详细信息,包括开始执行时间、结束执行时间、执行环境、执行状态、执行日志等信息。
本公开实施例还提供了一数据同步系统,参见图18,包括:数据源管理模块181、任务管理模块182和后台启动任务模块183;
所述数据源管理模块181,用于响应于在第一交互界面内配置数据源的操作,连接多个数据源;
所述任务管理模块182,用于响应于在第二交互界面内创建任务的操作,生成任务配置文件;
所述后台启动任务模块183,用于响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
在一实施例中,所述数据源管理模块响应于在第一交互界面内配置数据源的操作,连接多个数据源,包括:
响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源;所述数据源包括源数据源和目标数据源;
响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数;
响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源;
响应于连接成功,保存所述数据源;或者,响应于连接不成功,重新执行获取目标配置参数的步骤。
在一实施例中,所述任务管理模块采用热更新方式更新所述同步规则,包括:
响应于表示修改目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,所述任务配置文件存储到目标数据库中。
在一实施例中,所述任务管理模块响应于在第二交互界面内创建任务的操作,生成任务配置文件,包括:
响应于在所述第二交互界面内配置任务信息的操作,获取任务信息;
响应于在所述第二交互界面内选择源数据源的操作,获取源数据源;
响应于在所述第二交互界面内选择待同步数据的操作,获取待同步数据;
响应于在所述第二交互界面内选择同步规则的操作,获取同步规则;
响应于在所述第二交互界面内选择目标数据源的操作,获取目标数据源;
响应于在所述第二交互界面内配置执行周期和频率的操作,获取执行周期和频率;
响应于在所述第二交互界面内创建数据同步任务的操作,创建目标任务,所述目标任务用于按照所述执行周期和频率以及同步规则将所述源数据源中的待同步数据同步到所述目标数据源。
在一实施例中,所述后台启动任务模块响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源,包括:
响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据所述任务类型选择对应的数据同步插件;
解析所述任务配置文件,以获取源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据;
从所述源数据源读取所述待同步数据,并根据所述同步规则确定是否转换所述待同步数据;
响应于确定转换所述待同步数据,转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源;
获取执行结果数据。
在一实施例中,所述任务管理模块还用于采用热更新方式更新所述同步规则。
在一实施例中,所述任务管理模块采用热更新方式更新所述同步规则,包括:
测试新的同步规则;
当所述新的同步规则正确时,将新的同步规则处理为目标文档格式的目标数据包;所述目标文档格式与所述规则加载接口相匹配;
将所述目标数据包存储到预设的指定目录之内,以使预设的规则加载接口读取所述目标数据包并使用所述目标数据包对应的同步规则。
需要说明的是,本实施例中示出的系统与方法实施例的内容相匹配,可以参考上述系统实施例的内容,在此不再赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括可执行的计算机程序的存储器,上述可执行的计算机程序可由处理器执行,以实现如图3所示实施例的方法。其中,可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本公开旨在涵盖任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (15)
1.一种数据同步方法,其特征在于,包括:
响应于在第一交互界面内配置数据源的操作,连接多个数据源;
响应于在第二交互界面内创建任务的操作,生成任务配置文件;
响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
2.根据权利要求1所述的方法,其特征在于,响应于在第一交互界面内配置数据源的操作,连接多个数据源,包括:
响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源;所述数据源包括源数据源和目标数据源;
响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数;
响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源;
响应于连接成功,保存所述数据源。
3.根据权利要求2所述的方法,其特征在于,所述同步规则采用热更新,包括:
响应于表示修改目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,所述任务配置文件存储到目标数据库中。
4.根据权利要求1所述的方法,其特征在于,响应于在第二交互界面内创建任务的操作,生成任务配置文件,包括:
响应于在所述第二交互界面内配置任务信息的操作,获取任务信息;
响应于在所述第二交互界面内选择源数据源的操作,获取源数据源;
响应于在所述第二交互界面内选择待同步数据的操作,获取待同步数据;
响应于在所述第二交互界面内选择同步规则的操作,获取同步规则;
响应于在所述第二交互界面内选择目标数据源的操作,获取目标数据源;
响应于在所述第二交互界面内配置执行周期和频率的操作,获取执行周期和频率;
响应于在所述第二交互界面内创建数据同步任务的操作,创建目标任务,所述目标任务用于按照所述执行周期和频率以及同步规则将所述源数据源中的待同步数据同步到所述目标数据源。
5.根据权利要求1所述的方法,其特征在于,响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源,包括:
响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据所述任务类型选择对应的数据同步插件;
解析所述任务配置文件,得到源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据;
从所述源数据源读取所述待同步数据并根据所述同步规则确定是否转换所述待同步数据;
响应于确定转换所述待同步数据,转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源;
获取执行结果数据。
6.根据权利要求5所述的方法,其特征在于,所述同步规则采用热更新。
7.根据权利要求6所述的方法,其特征在于,所述同步规则采用热更新,包括:
测试新的同步规则;
当所述新的同步规则正确时,将新的同步规则处理为目标文档格式的目标数据包;所述目标文档格式与所述规则加载接口相匹配;
将所述目标数据包存储到预设的指定目录之内,以使预设的规则加载接口读取所述目标数据包并使用所述目标数据包对应的同步规则。
8.一种数据同步系统,其特征在于,包括:数据源管理模块、任务管理模块和后台启动任务模块;
所述数据源管理模块,用于响应于在第一交互界面内配置数据源的操作,连接多个数据源;
所述任务管理模块,用于响应于在第二交互界面内创建任务的操作,生成任务配置文件;
所述后台启动任务模块,用于响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源。
9.根据权利要求8所述的系统,其特征在于,所述数据源管理模块响应于在第一交互界面内配置数据源的操作,连接多个数据源,包括:
响应于在所述第一交互界面内选择数据源的操作,获取所述操作对应的数据源;所述数据源包括源数据源和目标数据源;
响应于在所述第一交互界面内修改配置参数的操作,获取目标配置参数;
响应于在所述第一交互界面内测试连接所述源数据源和所述目标数据源的操作,尝试连接所述源数据源和所述目标数据源;
响应于连接成功,保存所述数据源;或者,响应于连接不成功,重新执行获取目标配置参数的步骤。
10.根据权利要求9所述的系统,其特征在于,所述任务管理模块采用热更新方式更新所述同步规则,包括:
响应于表示修改目标配置参数的操作,修改任务配置文件内配置表格的目标配置参数,所述任务配置文件存储到目标数据库中。
11.根据权利要求8所述的系统,其特征在于,所述任务管理模块响应于在第二交互界面内创建任务的操作,生成任务配置文件,包括:
响应于在所述第二交互界面内配置任务信息的操作,获取任务信息;
响应于在所述第二交互界面内选择源数据源的操作,获取源数据源;
响应于在所述第二交互界面内选择待同步数据的操作,获取待同步数据;
响应于在所述第二交互界面内选择同步规则的操作,获取同步规则;
响应于在所述第二交互界面内选择目标数据源的操作,获取目标数据源;
响应于在所述第二交互界面内配置执行周期和频率的操作,获取执行周期和频率;
响应于在所述第二交互界面内创建数据同步任务的操作,创建目标任务,所述目标任务用于按照所述执行周期和频率以及同步规则将所述源数据源中的待同步数据同步到所述目标数据源。
12.根据权利要求8所述的系统,其特征在于,所述后台启动任务模块响应于在第三交互界面内启动数据同步任务的操作,将源数据源内的待同步数据同步至目标数据源,包括:
响应于启动数据同步任务的操作,确定所启动任务的任务类型,并根据所述任务类型选择对应的数据同步插件;
解析所述任务配置文件,以获取源数据源、目标数据源、同步规则、执行周期和频率以及待同步数据;
从所述源数据源读取所述待同步数据,并根据所述同步规则确定是否转换所述待同步数据;
响应于确定转换所述待同步数据,转换所述待同步数据;响应于确定不转换所述待同步数据,输出转换后的转换数据到所述目标数据源;
获取执行结果数据。
13.根据权利要求12所述的系统,其特征在于,所述任务管理模块还用于采用热更新方式更新所述同步规则。
14.根据权利要求13所述的系统,其特征在于,所述任务管理模块采用热更新方式更新所述同步规则,包括:
测试新的同步规则;
当所述新的同步规则正确时,将新的同步规则处理为目标文档格式的目标数据包;所述目标文档格式与所述规则加载接口相匹配;
将所述目标数据包存储到预设的指定目录之内,以使预设的规则加载接口读取所述目标数据包并使用所述目标数据包对应的同步规则。
15.一种非暂态计算机可读存储介质,其特征在于,当所述存储介质中的可执行的计算机程序由处理器执行时,能够实现如权利要求1~7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210323972.9A CN114691779A (zh) | 2022-03-29 | 2022-03-29 | 数据同步方法和系统、计算机可读存储介质 |
PCT/CN2023/077059 WO2023185310A1 (zh) | 2022-03-29 | 2023-02-20 | 数据同步方法和系统、计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210323972.9A CN114691779A (zh) | 2022-03-29 | 2022-03-29 | 数据同步方法和系统、计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114691779A true CN114691779A (zh) | 2022-07-01 |
Family
ID=82140395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210323972.9A Pending CN114691779A (zh) | 2022-03-29 | 2022-03-29 | 数据同步方法和系统、计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114691779A (zh) |
WO (1) | WO2023185310A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116483476A (zh) * | 2023-06-26 | 2023-07-25 | 北京营安科技有限公司 | 数据源的配置方法、装置、电子设备及存储介质 |
WO2023185310A1 (zh) * | 2022-03-29 | 2023-10-05 | 京东方科技集团股份有限公司 | 数据同步方法和系统、计算机可读存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076574B (zh) * | 2023-10-16 | 2024-01-23 | 北京持安科技有限公司 | 一种可编排多数据源数据同步聚合方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10423584B2 (en) * | 2015-11-23 | 2019-09-24 | Netapp Inc. | Synchronous replication for file access protocol storage |
CN107145368A (zh) * | 2017-04-25 | 2017-09-08 | 广州中浩控制技术有限公司 | 一种企业系统间的数据交互方法及系统 |
CN112148788A (zh) * | 2020-08-25 | 2020-12-29 | 珠海市卓轩科技有限公司 | 异构数据源的数据同步方法及系统 |
CN114691779A (zh) * | 2022-03-29 | 2022-07-01 | 京东方科技集团股份有限公司 | 数据同步方法和系统、计算机可读存储介质 |
-
2022
- 2022-03-29 CN CN202210323972.9A patent/CN114691779A/zh active Pending
-
2023
- 2023-02-20 WO PCT/CN2023/077059 patent/WO2023185310A1/zh unknown
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023185310A1 (zh) * | 2022-03-29 | 2023-10-05 | 京东方科技集团股份有限公司 | 数据同步方法和系统、计算机可读存储介质 |
CN116483476A (zh) * | 2023-06-26 | 2023-07-25 | 北京营安科技有限公司 | 数据源的配置方法、装置、电子设备及存储介质 |
CN116483476B (zh) * | 2023-06-26 | 2023-09-15 | 北京营安科技有限公司 | 数据源的配置方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023185310A1 (zh) | 2023-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114691779A (zh) | 数据同步方法和系统、计算机可读存储介质 | |
CN106874389B (zh) | 数据的迁移方法和装置 | |
CN109241184B (zh) | 数据同步方法、装置、计算机设备和存储介质 | |
CN110083455B (zh) | 图计算处理方法、装置、介质及电子设备 | |
KR102213761B1 (ko) | 음성 기동 컴퓨터 네트워크 환경에서의 시퀀스 종속 데이터 메시지 통합 | |
US20190051301A1 (en) | Method, apparatus, and computer program product for searchable real-time transcribed audio and visual content within a group-based communication system | |
US20210357587A1 (en) | An intelligent response method and device | |
CN110557441B (zh) | 客户端与服务端在网与离网状态下数据交互方法、系统 | |
EP3610375B1 (en) | Platform selection for performing requested actions in audio-based computing environments | |
CN109753432A (zh) | 一种接口性能测试方法、装置、服务器及系统 | |
CN111352759A (zh) | 一种告警根因的判定方法及装置 | |
CN113032379B (zh) | 面向配网运检多源数据采集的方法 | |
CN111597318A (zh) | 业务任务的执行方法、装置及系统 | |
US20210390956A1 (en) | Platform selection for performing requested actions in audio-based computing environments | |
CN112489236B (zh) | 一种考勤数据处理方法、装置、服务器及存储介质 | |
US9471650B2 (en) | System and method for contextual workflow automation | |
CN115408407A (zh) | 一种业务协同处理方法、系统、终端及计算机存储介质 | |
US20180365607A1 (en) | Systems, apparatus, and methods for determining activities of resources | |
CN110555201B (zh) | 知识文档生成方法、装置、电子设备及存储介质 | |
CN108269066B (zh) | 一种远程审计方法和系统 | |
CN105844561B (zh) | 一种课程信息处理方法和装置 | |
CN111242595A (zh) | Erp平台与支付平台间信息交换方法及装置 | |
US20210134289A1 (en) | Information processing apparatus, information processing system, and information processing method | |
US20210029245A1 (en) | Managing Telephone Based Channel Communication In A Group-Based Communication System | |
CN115221305B (zh) | 机器人协作系统及控制方法 |
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 |