CN115794953A - 基于表数据的数据同步方法、系统、设备及计算机可读介质 - Google Patents
基于表数据的数据同步方法、系统、设备及计算机可读介质 Download PDFInfo
- Publication number
- CN115794953A CN115794953A CN202211561614.8A CN202211561614A CN115794953A CN 115794953 A CN115794953 A CN 115794953A CN 202211561614 A CN202211561614 A CN 202211561614A CN 115794953 A CN115794953 A CN 115794953A
- Authority
- CN
- China
- Prior art keywords
- data
- synchronized
- target
- conversion
- task
- 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
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于表数据的数据同步方法、系统、设备及计算机可读介质,其中,所述方法包括:获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段;根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;根据所述待同步任务进行数据转换;将进行数据转换后的数据同步至所述目标数据库,可以至少用以解决相关技术中的基于表数据的数据同步方法较为单一,缺乏灵活性的技术问题。
Description
技术领域
本申请涉及信息技术领域,尤其涉及一种基于表数据的数据同步方法、系统、设备及计算机可读介质。
背景技术
随着信息技术的不断发展,涌现了很多实际生产运营必不可少的信息化数据管理系统,例如工单管理系统、水务数据管理系统等等。但在实际使用这些系统的过程中,经常会面临着新老系统切换或者版本升级等问题,因此常常需要进行数据同步。
相关技术中,最为常见的针对同一数据类型的数据同步方法为:将源数据库、源数据库表名、源数据库表字段与目标数据库、目标数据库表名、目标数据库表字段分别一一进行对应,实现将源数据库中的数据原样同步至目标数据库中,即源数据具体是什么样的数据,进行数据同步后就是什么样的数据。
然而,发明人发现相关技术中至少存在如下技术问题:
新老系统或者版本升级前后的数据格式等往往并不一致,而采用将源数据库中的数据原样同步至目标数据库中的方式则无法满足上述不一致的需求,可见,相关技术中的同步方式较为单一,缺乏灵活性。
发明内容
本申请的一个目的是提供一种基于表数据的数据同步方法、系统、设备及计算机可读介质,至少用以解决相关技术中的基于表数据的数据同步方法较为单一,缺乏灵活性的技术问题。
为实现上述目的,本申请的一些实施例提供了一种基于表数据的数据同步方法,所述方法包括:获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段;根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;根据所述待同步任务进行数据转换;将进行数据转换后的数据同步至所述目标数据库。
本申请的一些实施例还提供了一种基于表数据的数据同步系统,所述系统包括任务创建平台、数据处理平台和数据同步平台;所述任务创建平台,用于获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段,并根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;所述数据处理平台,用于根据所述待同步任务进行数据转换;所述数据同步平台,用于将进行数据转换后的数据同步至所述目标数据库。
本申请的一些实施例还提供了一种基于表数据的数据同步设备,所述设备包括:一个或多个处理器;以及存储有计算机程序指令的存储器,所述计算机程序指令在被执行时使所述处理器执行如上所述的方法。
本申请的一些实施例还提供了一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令可被处理器执行以实现所述的基于表数据的数据同步方法。
相较于现有技术,本申请实施例提供的方案中,通过获取源数据库中的数据源信息,并根据所述数据源信息确定待同步字段,然后再根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务,并根据所述待同步任务进行数据转换,进而将进行数据转换后的数据同步至所述目标数据库。由于所述预配置的转换规则还包括所述待同步字段和所述目标字段之间的逻辑规则,因此源数据库中的数据并不是原样同步至目标数据库中的,而是在进行数据同步之前先进行逻辑转换后再同步至目标数据库中,这样,不仅可以使得待同步的数据的准确性得到保障,而且还极大的提升了数据的处理效率,提升了数据同步的灵活性。
附图说明
图1为本申请实施例提供的一种基于表数据的数据同步方法的流程图;
图2为本申请实施例提供的一种基于表数据的数据同步方法中步骤S101的一种具体实现方式的流程图;
图3为本申请实施例提供的一种基于表数据的数据同步方法的示例性示意图;
图4-图15为本申请实施例提供的一种基于表数据的数据同步方法的应用实例的示例性展示界面;
图16为本申请实施例提供的一种基于表数据的数据同步系统的示例性结构示意图;
图17为为本申请实施例提供的一种基于表数据的数据同步设备的示例性结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请实施例提供了一种基于表数据的数据同步方法,该方法通过将源数据库中的数据同步至目标数据库之前,先根据预配置的转换规则进行转换,在转换完成后再同步至目标数据库,可以在数据准确性得到保障的前提下极大的提升数据的转换效率,提升数据同步的灵活性。具体的,本申请实施例提供的基于表数据的数据同步方法可以包括如下步骤,如图1所示:
步骤S101,获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段。
步骤S102,根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务。其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则。
步骤S103,根据所述待同步任务进行数据转换。
步骤S104,将进行数据转换后的数据同步至所述目标数据库。
以下对上述步骤S101至步骤S104进行说明。
首先需要说明的是,本申请实施例提供的基于表数据的数据同步方法是针对同一数据类型的数据同步而言的。比如说,若在进行数据同步前的数据类型为MYSQL,则进行数据同步后的数据类型也为MYSQL;若在进行数据同步前的数据类型为SQLSERVER,则进行数据同步后的数据类型也为SQLSERVER。
其中,本申请实施例提供的基于表数据的数据同步方法可以应用于有设备标识的设备,以实现该有设备标识的设备的数据库中表数据的同步,也可以应用于无设备标识的设备,以实现该无设备标识的设备的数据库中表数据的同步。
其中,所述表数据可以为固定表的表数据,还可以为动态表的表数据。
针对步骤S101,具体地说,所述源数据库中的数据源信息是指可以用于表征源数据库中的数据源相关信息的信息。根据所述数据源信息确定的待同步字段是指根据需要进行同步的数据所确定的字段。
在一些例子中,所述数据源信息可以包括基本信息和数据源数据本身,所述基本信息可以进一步包括数据源类型、源表类型、源表名称等基本信息。其中,所述数据源类型可以包括但不限于以下任意之一或其任意组合:MYSQL、ORACLE、POSTGRESQL、SQLSERVER、KAFKA等。
在一些例子中,所述源数据库为基于水务的业务数据库。
在一些例子中,所述待同步字段可以是基于源数据库中的历史数据来确定的,也可以是基于源数据库中的实时数据来确定的,此处不作具体限定。
针对步骤S102和步骤S103,具体地说,所述预配置的转换规则的具体内容可以根据实际需求由操作人员进行自定义配置,以满足针对不同系统的不同需求。
在一些例子中,可以将设备ID为1的数据转换成设备ID为A1的数据,将设备ID为2的数据转换成设备ID为A2的数据,将属性为event_name的数据值转换到name属性中作为name属性的数据值。这里,设备ID、属性event_name的即可以被视为待同步字段,设备ID、属性name分别为与上述待同步字段一一对应的目标字段,该待同步字段和目标字段之间存在映射关系,在具体进行数据转换时,根据所述待同步任务包括的映射关系以及该同步字段和目标字段之间的逻辑规则进行转换,这里的逻辑规则是指将设备ID下数据为1的数据转换成为数据A1、将数据为2的数据转换为数据A2,将属性为event_name的数据值转换到name属性中作为name属性的数据值。
在一些例子中,所述待同步字段和所述目标字段之间的逻辑规则还可以包括对具体的数据值进行倍率等逻辑运算。比如,假设待同步字段所对应的数据值为100,而在新的系统中目标字段所对应的数据值应为150(也就是说,该150是在原系统中就是100),则该逻辑规则具体为对该100进行倍率处理,将100乘以1.5得到150后,再将该进行数据转换后的数据同步至目标数据库中。
在一些例子中,所述待同步任务的表现形式为DATAX可执行文件。
针对步骤S104,具体地说,将进行数据转换后的数据同步至所述目标数据库,这里的目标数据库为目标设备中的目标数据库,该目标设备可以是预先指定的设备,该目标数据库也可以是预先指定的数据库,相关工作人员可以根据实际需求进行自定义设置。
在一些例子中,在将进行数据转换后的数据同步至所述目标数据库后,还输出日志信息,并将该日志信息通过显示界面展示出来,这样,可以供相关工作人员查看。
其中,所述日志信息中可以包括但不限于:待同步任务的调度状态、待同步任务的执行状态、执行待同步任务时打印的业务日志等信息。
在一些例子中,可以通过物联网管理平台输出所述日志信息。
综上,本申请实施例提供的一种基于表数据的数据同步方法,通过获取源数据库中的数据源信息,并根据所述数据源信息确定待同步字段,然后再根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务,并根据所述待同步任务进行数据转换,进而将进行数据转换后的数据同步至所述目标数据库。由于所述预配置的转换规则还包括所述待同步字段和所述目标字段之间的逻辑规则,因此源数据库中的数据并不是原样同步至目标数据库中的,而是在进行数据同步之前先进行逻辑转换后再同步至目标数据库中,这样,不仅可以使得待同步的数据的准确性得到保障,而且还可以进一步节省运维工程师等相关工作人员在系统部署阶段的数据迁移方面的人力资源消耗,还极大的提升了数据的处理效率,提升了数据同步的灵活性。
在本申请一些实施例中,所述获取待同步的数据源信息,并根据所述数据源信息确定待同步字段可以包括如下步骤:
步骤S201,确定操作人员的权限等级。
步骤S202,若所述操作人员的权限等级低于预设等级,则提示权限高于所述预设等级的人员输入所述目标数据库的连接信息。
步骤S203,在接收到所述目标数据库的连接信息后,向所述权限等级低于预设等级的操作人员展示安全界面。
步骤S204,根据所述安全界面获取待同步的数据源信息,并根据所述数据源信息确定待同步字段。
以下对上述步骤S201至步骤S204进行说明。
针对步骤S201,具体地说,可以赋予不同的操作人员不同的权限等级。
在一些例子中,权限等级高的操作人员获取的数据范围比权限等级低的操作人员获取的数据范围更广泛。
在一些例子中,权限等级可以有A级、B级、C级表示,也可以由1级、2级、3级等表示,此处不作具体限定。
针对步骤S202,具体地说,若当前有对某一数据库的表数据进行同步的需求,则获取到该需求的操作人员可以对该数据库的表数据进行同步。但是在同步之前,可以先验证所述操作人员的权限等级,若所述操作人员的权限等级低于预设等级,提示权限高于所述预设等级的人员输入所述目标数据库的连接信息。
在一些例子中,所述预设等级可以由有权限的相关工作人员根据实际需求进行设定。
在一些例子中,所述权限高于所述预设等级的人员可以为所述操作人员的直接上级。
需要说明的是,所述目标数据库的连接信息使指包括所述目标数据库敏感信息的连接信息,比如所述目标数据库的密码、IP端口号等等。
针对步骤S203,具体地说,在权限高于所述预设等级的人员输入所述目标数据库的连接信息,系统即接收到所述目标数据库的连接信息,此时,可以向所述权限等级低于预设等级的操作人员展示安全界面,所示操作人员可以根据所述安全界面选择想要维护的数据源及需要同步的表数据。
在一些例子中,在系统接收到所述目标数据库的连接信息后,还可以向所述操作人员发布或者推送可以进行后续的数据库同步的消息提示通知。
其中,这里所说的安全界面不包括上述提到的敏感信息。
针对步骤S204,具体地说,所述操作人员完全可以基于该安全界面完成表数据的数据同步。
本领域技术人员可以理解,由于相关技术的基于表数据的数据同步方法中,如果要将源数据库的数据同步至目标数据库,则需要操作人员知晓目标数据库的连接信息,比如目标数据库的端口号、用户名、密码等敏感的连接信息,操作人员可以根据该连接信息在进行数据同步的过程中对目标数据库中的数据进行任意增删改,所以安全性较低。
而在本申请实施例提供的方法中,只有具备一定操作权限的授信人员才知道目标数据库的连接信息,而具体进行同步操作的操作人员只需要根据安全界面进行数据同步即可,由于上述连接信息对具体的操作人员并不可见,可以避免运维工程师等相关工作人员直接或间接的访问目标数据库,在减少人工参与数据迁移的同时,也可以进一步避免人工失误导致的数据准确性的风险,保障了目标数据库的安全性。
在本申请一些实施例中,所述源数据库中的表的类型为纵表。
这里需要说明,数据库表的类型一般有两种:横表和竖表。
横表:指一个业务对象对应一条记录。比如学生有各科成绩,要设计成横表的话就是将表设计成通过一条记录来存储学生的各科成绩,如表1所示。一般横表需要字段都是确定的,否则,若要给横表中添加一个或者多个字段,就须重建表结构。
用户名 | 语文 | 数学 | 英语 |
Aaa | 90 | 80 | 90 |
表1
纵表:指一个业务对象用多条记录来存储,将业务对象的字段属性拆开,用多条记录来存储的话可拓展性会比较高。比如还想加其他学科只需要再添加一条记录即可,而无须重建表结构,如表2所示。
用户名 | 学科名称 | 分数 |
Aaa | 语文 | 90 |
Aaa | 数学 | 80 |
Aaa | 英语 | 90 |
表2
在相关技术中,一般仅支持对横表的表数据进行数据同步,数据同步后得到的数据表的结构也只能是横表,因此数据同步后得到的数据表的结构较为单一。
而在本申请实施例中,由于根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务,而且所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则,再根据该待同步任务包括的映射关系和逻辑规则进行数据转换的,因此不限定表的类型,可以支持对纵表的表数据进行数据同步,从而拓宽了应用场景。
在本申请一些实施例中,所述根据所述待同步任务进行数据转换可以包括:
根据所述待同步任务包括的所述转换规则确定所述源数据库的目标数据;对所述目标数据按照所述待同步字段和所述目标字段之间的逻辑规则进行数据转换。
在一些例子中,可以将所述目标数据写入至第三方数据处理平台,以使所述第三方数据处理平台对所述目标数据按照所述待同步字段和所述目标字段之间的逻辑规则进行转换处理。
在一些例子中,所述第三方数据处理平台可以是KAFKA。
不难发现,本申请实施例提供了一种根据所述待同步任务进行数据转换的具体方式,有利于本申请实施例提供的方法灵活多变的实现。
在本申请一些实施例中,所述预配置的转换规则还包括时间规则;所述时间规则用于指示所述待同步任务属于周期性任务或者一次性任务;
所述根据所述待同步任务进行数据转换可以包括:
根据所述时间规则,对所述目标数据按照所述待同步字段和所述目标字段之间的逻辑规则进行数据转换。
具体地说,所述时间规则包括周期性定时规则和一次性定时规则,对应生成的待同步任务分别为周期性任务和一次性任务。
其中,周期性任务可以为比如每隔5s执行一次;而一次性任务表示执行完一次同步任务后即结束。
在本申请一些实施例中,所述时间规则具体通过时间轮算法完成。
具体地说,在数据同步程序启动时,可以先启动一个任务处理的守护线程,该程序定时读取已开启且即将执行的待同步任务,将这些待同步任务丢进时间轮队列中;时间轮处理器实现了时间轮算法。其中,时间轮算法大致可以理解为自定义一个时钟,时钟的每个区间都存储了任务,指针按固定的时间,顺时针运转,当指针运行到有任务的区间,则触发该任务,若任务的延迟时间大于指针走一圈的时间,则将区间分层,将延迟时间与总区间值取余计算后存入,指针转动一圈则将分层剔除一层;触发的任务会有对应的子线程进行处理,任务执行成功后可以通过RPC协议等,将执行结果通知到主程序,生成固定格式可读日志文件,记录数据读取数量、同步成功条数、失败条数、耗时等信息。
不难发现,本申请实施例提供的方法中考虑了时间因素,可以满足实际应用中不同的需求。
在本申请一些实施例中,所述将进行数据转换后的数据同步至所述目标数据库可以包括:
每隔预定时间后,将进行数据转换后的数据同步至所述目标数据库。
具体地说,在将进行数据转换后,可以先缓存10s的数据,然后将该缓存的10s的数据一并同步至所述目标数据库。这样,可以缓解目标数据库的数据处理压力,或者所对应的目标设备的数据处理压力。
为方便理解,以下结合图3对本申请实施例的一具体应用实例的说明。
(1)获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段。
(2)根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则。
(3)将所述待同步任务同步至任务缓存池中,并在所述任务缓存池中根据所述待同步任务进行数据转换。
(4)监听所述任务缓存池,在监听到根据所述预配置的数据转换规则进行数据转换完成后,发送数据转换完成的回执信息,在任务缓存池接收到所述回执消息后,将所述任务缓存池中的该待同步数据删除。
(5)将进行数据转换后的数据同步至所述目标数据库,至此,完成了数据同步。
该示例中,在生成待同步任务的过程中可以使用分布式任务调度平台、JOSN生成器、日志收集器等。其中,该分布式任务调度平台可以为XXJOB。
该示例中,所述待同步任务的表现形式为DATAX可执行文件。
该示例中,所述任务缓存池具体可以由KAFKA提供。具体地,当执行待同步任务的时候,会根据预配置的转换规则读取源数据库的表信息,将读取到的信息写到KAFKA中去,即从DATAX→到DATAX TOPIC的过程,之后,PRCESS TOPIC根据配置的转换规则对每一条读取到的信息进行数据转换处理。
在其他示例中,还可以通过消息队列遥测传输Message Queuing TelemetryTransport,简称“MQTT”将所述待同步任务同步至任务缓存池中。
进一步地,图4至图15为本申请实施例的一具体应用实例的展示界面。
(1)权限高于所述预设等级的人员基于图4所示的展示界面输入所述目标数据库的连接信息,包括目标数据库的用户名、密码等等。
(2)相关操作人员可以基于如图5所示的展示界面选择要进行操作的待同步数据库。这里,操作人员只需要参考数据源、数据源名称、用户名、JDBC连接串等进行选择对应的待同步数据库进行编辑即可,无需获知目标数据库的连接信息。
可见,对操作人员来说,只需要在页面上选择要用哪个库,要用哪个表,不必要关注目标数据库的连接信息,而没有这些连接信息的话,就不可能直接对目标数据库进行操作,比如查看目标数据库的完整的数据、把数据库中的数据完全倒出来等。
(3)接着,参见图6-图13的展示界面,其为相关操作人员对待同步任务的转换规则进行配置的配置展示界面。该示例中的表的类型为横表。
具体地,该示例中配置项包括基本信息和数据源、字段映射、调度配置。其中,基本信息和数据源可以包括同步任务名称、数据源类型、源表类型、数据分类、时间区间等信息。
具体地,该示例中在根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系包括设备ID映射、监测量映射、时间戳映射。
具体地,该示例中的时间规则可以设置为每日、循环、工作日、指定日、区间等等,具体通过CRON表达式实现。
(4)配置完成后,如图14所示,在对待同步数据配置好转换规则后,生成的待同步任务的默认状态为关闭状态,若需要执行,则需要操作人员人为开启,在开启后,系统会根据按照预配置好的转换规则执行数据转换,以完成数据同步。
(5)如图15所示,输出日志信息。
该示例中,所述日志信息中包括待同步任务的调度状态、最近修改人、执行时间等日志信息。
综上,本申请实施例提供的方案中,通过获取源数据库中的数据源信息,并根据所述数据源信息确定待同步字段,然后再根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务,并根据所述待同步任务进行数据转换,进而将进行数据转换后的数据同步至所述目标数据库。由于所述预配置的转换规则还包括所述待同步字段和所述目标字段之间的逻辑规则,因此源数据库中的数据并不是原样同步至目标数据库中的,而是在进行数据同步之前先进行逻辑转换后再同步至目标数据库中,这样,不仅可以使得待同步的数据的准确性得到保障,而且还极大的提升了数据的处理效率,提升了数据同步的灵活性。
本申请实施例还提供了一种基于表数据的数据同步系统,所述系统可以包括任务创建平台11、数据处理平台12和数据同步平台13,如图16所示。
所述任务创建平台11,用于获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段,并根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;
所述数据处理平台12,用于根据所述待同步任务进行数据转换;
所述数据同步平台13,用于将进行数据转换后的数据同步至所述目标数据库。
不难发现,本申请实施例是与上述的基于表数据的数据同步方法的实施例对应的系统实施例,在基于表数据的数据同步方法的实施例中的实现细节同样适用于本系统实施例,为避免重复,此处不再赘述。
此外,本申请实施例还提供了一种基于表数据的数据同步设备,该设备的结构如图17所示,所述设备包括用于存储计算机可读指令的存储器21和用于执行计算机可读指令的处理器22,其中,当该计算机可读指令被该处理器执行时,触发所述处理器执行所述的基于表数据的数据同步方法。
本申请实施例中的方法和/或实施例可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在该计算机程序被处理单元执行时,执行本申请的方法中限定的上述功能。
需要说明的是,本申请所述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本申请的操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图或框图示出了按照本申请各种实施例的设备、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的针对硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
作为另一方面,本申请实施例还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个计算机可读指令,所述计算机可读指令可被处理器执行以实现前述本申请的多个实施例的方法和/或技术方案的步骤。
在本申请一个典型的配置中,终端、服务网络的设备均包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体,可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
此外,本申请实施例还提供了一种计算机程序,所述计算机程序存储于计算机设备,使得计算机设备执行所述控制代码执行的方法。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一些实施例中,本申请的软件程序可以通过处理器执行以实现上文步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (10)
1.一种基于表数据的数据同步方法,其特征在于,所述方法包括:
获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段;
根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;
根据所述待同步任务进行数据转换;
将进行数据转换后的数据同步至所述目标数据库。
2.根据权利要求1所述的方法,其特征在于,所述获取待同步的数据源信息,并根据所述数据源信息确定待同步字段包括:
确定操作人员的权限等级;
若所述操作人员的权限等级低于预设等级,则提示权限高于所述预设等级的人员输入所述目标数据库的连接信息;
在接收到所述目标数据库的连接信息后,向所述权限等级低于预设等级的操作人员展示安全界面;
根据所述安全界面获取待同步的数据源信息,并根据所述数据源信息确定待同步字段。
3.根据权利要求1所述的方法,其特征在于,所述源数据库中的表的类型为纵表。
4.根据权利要求1所述的方法,其特征在于,所述根据所述待同步任务进行数据转换包括:
根据所述待同步任务包括的所述转换规则确定所述源数据库的目标数据;
对所述目标数据按照所述待同步字段和所述目标字段之间的逻辑规则进行数据转换。
5.根据权利要求4所述的方法,其特征在于,所述预配置的转换规则还包括时间规则;所述时间规则用于指示所述待同步任务属于周期性任务或者一次性任务;
所述根据所述待同步任务进行数据转换包括:
根据所述时间规则,对所述目标数据按照所述待同步字段和所述目标字段之间的逻辑规则进行数据转换。
6.根据权利要求5所述的方法,其特征在于,所述时间规则具体通过时间轮算法完成。
7.根据权利要求1至6中任意一项所述的方法,其特征在于,所述将进行数据转换后的数据同步至所述目标数据库包括:
每隔预定时间后,将进行数据转换后的数据同步至所述目标数据库。
8.一种基于表数据的数据同步系统,其特征在于,所述系统包括任务创建平台、数据处理平台和数据同步平台;
所述任务创建平台,用于获取源数据库中的数据源信息,根据所述数据源信息确定待同步字段,并根据预配置的转换规则建立所述待同步字段与目标数据库中的目标字段的映射关系,生成待同步任务;其中,所述预配置的转换规则包括所述待同步字段和所述目标字段之间的逻辑规则;
所述数据处理平台,用于根据所述待同步任务进行数据转换;
所述数据同步平台,用于将进行数据转换后的数据同步至所述目标数据库。
9.一种基于表数据的数据同步设备,其特征在于,所述设备包括:
一个或多个处理器;以及
存储有计算机程序指令的存储器,所述计算机程序指令在被执行时使所述处理器执行如权利要求1-7中任意一项所述的方法。
10.一种计算机可读介质,其上存储有计算机程序指令,所述计算机程序指令可被处理器执行以实现如权利要求1-7中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211561614.8A CN115794953A (zh) | 2022-12-07 | 2022-12-07 | 基于表数据的数据同步方法、系统、设备及计算机可读介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211561614.8A CN115794953A (zh) | 2022-12-07 | 2022-12-07 | 基于表数据的数据同步方法、系统、设备及计算机可读介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115794953A true CN115794953A (zh) | 2023-03-14 |
Family
ID=85417541
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211561614.8A Pending CN115794953A (zh) | 2022-12-07 | 2022-12-07 | 基于表数据的数据同步方法、系统、设备及计算机可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794953A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076574A (zh) * | 2023-10-16 | 2023-11-17 | 北京持安科技有限公司 | 一种可编排多数据源数据同步聚合方法及装置 |
-
2022
- 2022-12-07 CN CN202211561614.8A patent/CN115794953A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117076574A (zh) * | 2023-10-16 | 2023-11-17 | 北京持安科技有限公司 | 一种可编排多数据源数据同步聚合方法及装置 |
CN117076574B (zh) * | 2023-10-16 | 2024-01-23 | 北京持安科技有限公司 | 一种可编排多数据源数据同步聚合方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110990090A (zh) | 动态壁纸显示方法、设备以及计算机可读介质 | |
CN115794953A (zh) | 基于表数据的数据同步方法、系统、设备及计算机可读介质 | |
WO2023165256A1 (zh) | 一种信息生成方法、装置及电子设备 | |
CN114547521A (zh) | 基于权限的交互式接口发布方法、装置及电子设备 | |
CN112036588A (zh) | 一种系统运维流程管控方法及装置 | |
US20130339835A1 (en) | Dynamic presentation of a results set by a form-based software application | |
CN113626438B (zh) | 一种数据表管理的方法、装置、计算机设备及存储介质 | |
CN112905635A (zh) | 一种业务的处理方法、装置、设备及存储介质 | |
CN110555732B (zh) | 一种营销策略推送方法、装置及营销策略运营平台 | |
US20110161126A1 (en) | Resource free time reporting in a task management system | |
CN111143408A (zh) | 一种基于业务规则的事件处理方法和装置 | |
CN113537954B (zh) | 一种项目里程碑的处理方法、装置、存储介质及电子设备 | |
CN113515413A (zh) | 一种数据管理方法、装置、电子设备及存储介质 | |
CN114201508A (zh) | 数据处理方法、数据处理装置、电子设备和存储介质 | |
CN111400402A (zh) | 一种基于区块链的数据共享方法、装置及设备 | |
CN113240384A (zh) | 一种薪酬的统计核算方法及装置 | |
CN112948811A (zh) | 基于区块链的用户授权信息处理方法、设备、介质及系统 | |
CN113760628A (zh) | 用于监控数据处理的方法和装置 | |
CN112558983A (zh) | 可执行文件的生成和执行方法、装置、电子终端及介质 | |
CN117055977B (zh) | 无代码应用间的数据联动方法和装置 | |
CN111092758A (zh) | 降低告警及恢复误报的方法、装置及电子设备 | |
CN115543969B (zh) | 一种数据迁移方法、装置、设备及介质 | |
CN111310043B (zh) | 用于推送信息的方法和装置 | |
CN118364019B (zh) | 一种异构云平台辅助管理方法、装置、设备及存储介质 | |
CN212435728U (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 |