本发明专利技术公开了一种批量数据同步方法和装置,方法包括:建立本地数据库,本地数据库中临时表、历史表和应用数据表的表项数据结构相同;获取第一应用的数据源字段;设置数据源字段与临时表字段的对应关系;将数据源数据导入临时表;临时表中包括由临时表字段构成的多条记录;对比临时表与历史表中的记录;如果临时表的第一记录存在于历史表中,则确定第一记录中的字段是否有更新,如果有更新,则将第一记录更新到应用数据表中;如果第一记录不存在于历史表中,则将第一记录插入应用数据表中;如果临时表中不存在历史表中的第二记录,则根据第二记录的属性信息,在应用数据表中将相应的记录删除;其中,应用数据表用于提供第二应用的数据源数据。
【技术实现步骤摘要】
本专利技术涉及数据处理
,尤其涉及一种用于应用间的批量数据同步方法和装置。
技术介绍
随着企业信息化程度的日益提高,安装使用的应用项目也越来越多,而应用的开发可能来自于不同的供应商,所使用的开发环境、系统也各不相同,而企业内部或集团企业间经常会需要数据的共享和汇总,必然需要应用之间的数据同步或数据迁移。但是目前,还没有一种方法能够彻底解决不同应用之间的数据同步、共享、交互的问题。当然,在满足能够交互的同时,还需要保障数据的完整性和一致性。
技术实现思路
有鉴于此,本专利技术提供了一种批量数据同步方法和装置,能够自动实现多应用间的数据同步,并能保障数据的一致性和完整性,使得不同应用间能够共享数据。第一方面,本专利技术实施例提供了一种批量数据同步方法,包括:建立本地数据库,所述本地数据库中包括临时表、历史表和应用数据表;所述临时表、历史表和应用数据表的表项数据结构相同;获取第一应用的数据源数据,所述数据源数据包括数据源字段;设置所述数据源字段与临时表字段的对应关系;根据预设条件,按照所述对应关系,将所述数据源数据导入临时表,形成所述临时表字段;所述临时表中包括由临时表字段构成的多条记录;对比所述临时表与历史表中的记录;如果临时表的第一记录存在于所述历史表中,则确定所述第一记录中的字段是否有更新,如果有更新,则将所述第一记录更新到应用数据表中;如果所述第一记录不存在于所述历史表中,则将所述第一记录插入所述应用数据表中;如果所述临时表中不存在所述历史表中的第二记录,则在所述应用数据表中将相应的记录删除;其中,所述应用数据表用于提供第二应用的数据源数据。优选的,在所述临时表与历史表中的记录全部对比完成后,所述方法还包括:删除所述历史表中的全部记录;将所述临时表中的记录全部导入所述历史表中;清空所述临时表中的记录。优选的,所述设置所述数据源的字段与所述临时表中字段的对应关系具体为:所述数据源的一个字段与所述临时表的一个字段相对应。优选的,所述设置所述数据源的字段与所述临时表中字段的对应关系具体为:所述源数据的多个字段拼接形成一个拼接字段,一个所述拼接字段与所述临时表的一个字段相对应。优选的,所述方法还包括,根据预设时间,对所述临时表、历史表和应用数据表进行备份存储。在第二方面,本专利技术实施例提供了一种批量数据同步装置,包括:生成单元,用于建立本地数据库,所述本地数据库中包括临时表、历史表和应用数据表;所述临时表、历史表和应用数据表的表项数据结构相同;获取单元,用于获取第一应用的数据源数据,所述数据源数据包括数据源字段;设置单元,用于设置所述数据源字段与临时表字段的对应关系;导入单元,用于根据预设条件,按照所述对应关系,将所述数据源数据导入临时表,形成所述临时表字段;所述临时表中包括由临时表字段构成的多条记录;处理单元,用于对比所述临时表与历史表中的记录;当临时表的第一记录存在于所述历史表中时,则确定所述第一记录中的字段是否有更新,如果有更新,则将所述第一记录更新到应用数据表中;当所述第一记录不存在于所述历史表中,则将所述第一记录插入所述应用数据表中;当所述临时表中不存在所述历史表中的第二记录,则在所述应用数据表中将相应的记录删除;其中,所述应用数据表用于提供第二应用的数据源数据。优选的,所述处理单元还用于,在所述临时表与历史表中的记录全部对比完成后,删除所述历史表中的全部记录;生成导入指令,控制所述导入单元将所述临时表中的记录全部导入所述历史表中;并且,清空所述临时表中的记录。优选的,所述设置单元具体用于,设置所述数据源的一个字段与所述临时表的一个字段相对应。优选的,所述设置单元具体用于,设置所述数据源的拼接字段与所述临时表的一个字段相对应;所述拼接字段为由所述源数据的多个字段拼接形成的拼接字段。优选的,所述装置还包括存储单元,用于根据预设时间,对所述临时表、历史表和应用数据表进行备份存储。本专利技术实施例提供的批量数据同步方法,能够自动实现多应用间的数据同步,并能保障数据的一致性和完整性,使得不同应用间能够共享数据。附图说明图1为本专利技术实施例提供的批量数据同步方法的流程图;图2为本专利技术实施例提供的批量数据同步装置的示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述,显然,所描述的实施例仅仅是本专利技术一部份实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。如图1所示,本专利技术提供的批量数据同步方法主要包括如下步骤:步骤110,建立本地数据库;具体的,本地数据库中包括临时表、历史表和应用数据表,临时表、历史表和应用数据表的表项数据结构相同;比如在一个具体的例子中,各表的表项数据结构可以如下表1所示。用户标识用户名性别表1本地数据库用于向访问该数据库的一个应用或多个应用提供数据。临时表用来存储从其他的应用导入的数据源数据,历史表用来记录当前向一个应用或多个应用提供的数据,应用数据表中的数据记录与历史表中的相同,由数据接口连接供一个应用或多个应用访问,为一个应用或多个应用提供数据。步骤120,获取第一应用的数据源数据;具体的,第一应用是指提供数据源数据的应用,数据源数据可以存储在云数据库中,或者存储在其它的数据库中。数据源数据包括数据源字段;比如根据上述表1,数据源字段可以包括“财务部一组001”、“李某”、“男”等信息。此外,数据源数据可以是分时段的,比如已经预先规定获取数据源数据的间隔是每周一次,那么每次获取的数据,是更新时间在当前之前一周之内的数据,超出一周之前更新的数据就可以不用获取了。或者可以通过自动记录上次获取数据源数据的时间,然后在本次获取时只对该时间之后更新的数据进行获取。步骤130,设置数据源字段与临时表字段的对应关系;具体的,临时表字段是加载在临时表的表项中的数据字段。数据源字段与临时表字段之间的对应关系可以是一一对应,也可以是多对一的对应关系。比如,数据源的一个字段与临时表的一个字段相对应的情况:数据源中具有A字段,对应到临时表的A字段。又如,源数据的多个字段拼接形成一个拼接字段,一个拼接字段与临时表的一个字段相对应的情况:数据源中具有的A、B、C三个字段拼接后形成字段A+B+C,对应到临时表的A字段。步骤140,对比临时表与历史表中的记录,并根据对比结果相应修改应用数据表;具体的,临时表中包括由临时表字段构成的多条记录;历史表中也包括有历史表字段构成的多条记录;不同表中的记录数量可以不同。对比记录包括两种方式,一种是以临时表的记录为基础,逐条对比历史表的是否存在相同或相应记录,另一种是以历史表的记录为基础,逐条对比临时表中是否存在相同或相应记录。在本实施例中,两种方式都需要执行。在一个以临时表的记录为基础,逐条对比历史表的是否存在相同或相应记录的具体例子中:根据前述例举的数据源字段:“财务部一组001”、“李某”、“男”,当导入临时表后,可以在临时表中形成这样一条数据记录“财务部一组001,李某,男”。如果对比确定在历史表中存在记录“财务部一组001,李某,男”,则说明该记录已经存在于历史表中,且没有更新,则直接获取下一条记录进行对比。如果对比确定在历史表本文档来自技高网...
【技术保护点】
一种批量数据同步方法,其特征在于,所述方法包括:建立本地数据库,所述本地数据库中包括临时表、历史表和应用数据表;所述临时表、历史表和应用数据表的表项数据结构相同;获取第一应用的数据源数据,所述数据源数据包括数据源字段;设置所述数据源字段与临时表字段的对应关系;根据预设条件,按照所述对应关系,将所述数据源数据导入临时表,形成所述临时表字段;所述临时表中包括由临时表字段构成的多条记录;对比所述临时表与历史表中的记录;如果临时表的第一记录存在于所述历史表中,则确定所述第一记录中的字段是否有更新,如果有更新,则将所述第一记录更新到应用数据表中;如果所述第一记录不存在于所述历史表中,则将所述第一记录插入所述应用数据表中;如果所述临时表中不存在所述历史表中的第二记录,则在所述应用数据表中将相应的记录删除;其中,所述应用数据表用于提供第二应用的数据源数据。
【技术特征摘要】
1.一种批量数据同步方法,其特征在于,所述方法包括:建立本地数据库,所述本地数据库中包括临时表、历史表和应用数据表;所述临时表、历史表和应用数据表的表项数据结构相同;获取第一应用的数据源数据,所述数据源数据包括数据源字段;设置所述数据源字段与临时表字段的对应关系;根据预设条件,按照所述对应关系,将所述数据源数据导入临时表,形成所述临时表字段;所述临时表中包括由临时表字段构成的多条记录;对比所述临时表与历史表中的记录;如果临时表的第一记录存在于所述历史表中,则确定所述第一记录中的字段是否有更新,如果有更新,则将所述第一记录更新到应用数据表中;如果所述第一记录不存在于所述历史表中,则将所述第一记录插入所述应用数据表中;如果所述临时表中不存在所述历史表中的第二记录,则在所述应用数据表中将相应的记录删除;其中,所述应用数据表用于提供第二应用的数据源数据。2.根据权利要求1所述的批量数据同步方法,其特征在于,在所述临时表与历史表中的记录全部对比完成后,所述方法还包括:删除所述历史表中的全部记录;将所述临时表中的记录全部导入所述历史表中;清空所述临时表中的记录。3.根据权利要求1所述的批量数据同步方法,其特征在于,所述设置所述数据源的字段与所述临时表中字段的对应关系具体为:所述数据源的一个字段与所述临时表的一个字段相对应。4.根据权利要求1所述的批量数据同步方法,其特征在于,所述设置所述数据源的字段与所述临时表中字段的对应关系具体为:所述源数据的多个字段拼接形成一个拼接字段,一个所述拼接字段与所述临时表的一个字段相对应。5.根据权利要求1所述的批量数据同步方法,其特征在于,所述方法还包括,根据预设时间,对所述临时表、历史表和应用数据表进行备份存储。6.一种批量数据同步...
【专利技术属性】
技术研发人员:申会闯,王海宁,
申请(专利权)人:明算科技北京股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。