一种数据同步方法、装置、存储介质和服务器制造方法及图纸

技术编号:22101831 阅读:26 留言:0更新日期:2019-09-14 03:18
本发明专利技术涉及计算机技术领域,提出一种数据同步方法、装置、存储介质和服务器。该数据同步方法包括:从业务系统的源数据库中检测存在数据更新的源数据表;根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;根据所述元数据构建相应的数据同步任务;当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。通过这样设置,能够极大地减少系统的消耗,提高数据的同步效率。

A Data Synchronization Method, Device, Storage Media and Server

【技术实现步骤摘要】
一种数据同步方法、装置、存储介质和服务器
本专利技术涉及计算机
,尤其涉及一种数据同步方法、装置、存储介质和服务器。
技术介绍
目前,很多不同的业务系统都会接入同一个大数据平台,实现数据资源的共享。由于业务系统的数据是不断更新的,故各个业务系统需要将自身更新的数据同步存储到大数据平台。在进行数据同步时,通常会开发一套数据同步程序,利用该数据同步程序完成将业务系统更新的数据同步至大数据平台的过程。然而,数据是存储在数据表当中的,在执行数据同步操作时,需要将两个大数据量的数据表进行逐条数据比对,找出其中存在更新的数据,这会造成极大的系统消耗。
技术实现思路
有鉴于此,本专利技术实施例提供了一种数据同步方法、装置、存储介质和服务器,能够有效降低执行数据同步操作时的系统消耗。本专利技术实施例的第一方面,提供了一种数据同步方法,包括:从业务系统的源数据库中检测存在数据更新的源数据表;根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;根据所述元数据构建相应的数据同步任务;当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。本专利技术实施例的第二方面,提供了一种数据同步装置,包括:源数据表检测模块,用于从业务系统的源数据库中检测存在数据更新的源数据表;元数据查找模块,用于根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;数据同步任务构建模块,用于根据所述元数据构建相应的数据同步任务;待同步数据查找模块,用于当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;数据同步模块,用于采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。本专利技术实施例的第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如本专利技术实施例的第一方面提出的数据同步方法的步骤。本专利技术实施例的第四方面,提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,所述处理器执行所述计算机可读指令时实现如本专利技术实施例的第一方面提出的数据同步方法的步骤。本申请提出的数据同步方法包括:从业务系统的源数据库中检测存在数据更新的源数据表;根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;根据所述元数据构建相应的数据同步任务;当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。通过这样设置,在执行数据同步操作时,可以利用布隆过滤器快速找到大数据平台的数据表中需要同步的数据,避免采用数据逐条比对的方式,能够极大地减少系统的消耗。而且,在找出需要同步的数据之后,使用mapjoin工具将需要同步的数据的更新值加载到内存中,直接采用内存中的数据对大数据平台的数据表进行更新,能够显著提高数据的同步效率。附图说明为了更清楚地说明本专利技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例提供的一种数据同步方法的第一个实施例的流程图;图2是本专利技术实施例提供的一种数据同步方法的第二个实施例的流程图;图3是本专利技术实施例提供的一种数据同步装置的一个实施例的结构图;图4是本专利技术实施例提供的一种服务器的示意图。具体实施方式本专利技术实施例提供了一种数据同步方法、装置、存储介质和服务器,能够有效降低执行数据同步操作时的系统消耗。为使得本专利技术的专利技术目的、特征、优点能够更加的明显和易懂,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本专利技术一部分实施例,而非全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本专利技术保护的范围。请参阅图1,本专利技术实施例中一种数据同步方法的第一个实施例包括:101、从业务系统的源数据库中检测存在数据更新的源数据表;业务系统的源数据库存储着大量业务数据,这些数据存储于一个个不同的数据表中。系统会实时监测各个数据表的状态,若某个数据表的数据出现更新,则获取该数据表,作为数据同步的源数据表。102、根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;在确定需要同步数据的源数据表之后,根据这些数据表的表名从业务系统的源数据库中查找这些数据表的元数据。元数据是用于描述数据属性的数据,通过一个表格的元数据可以获知该表格具有哪些字段,以及每个字段的属性等信息。103、根据所述元数据构建相应的数据同步任务;在获得源数据表的元数据之后,即可根据这些元数据构建对应的数据同步任务。具体的,由于根据元数据可以确定表格的结构,具有的各个字段以及属性,故可以有针对性地构建数据同步任务,比如提取表格中第几行第几列的数据作为需要更新的数据,表格中哪部分区域的数据无需变更等。该数据同步任务实质上为根据元数据配置好的一段程序脚本,用于提取数据表中需要更新的数据,同步存储至大数据平台。进一步的,步骤103可以包括:(1)获取当前的数据同步标识,所述数据同步标识用于指示当前的数据同步策略;(2)结合所述源数据表的元数据,构建与所述数据同步标识对应的数据同步任务。在专利技术实施例中,可以构建多个不同的数据同步场景,每个数据同步场景都具有一个对应的数据同步标识。对于同一个数据表来说,不同的数据同步标识对应于不同的数据同步策略,需要构建不同的数据同步任务。更一步的,所述构建与所述数据同步标识对应的数据同步任务可以包括:(2.1)若所述数据同步标识为第一标识,则构建用于同步所述源数据表的所有数据的数据同步任务;(2.2)若所述数据同步标识为第二标识,则构建用于同步所述源数据表的部分数据的数据同步任务;(2.3)若所述数据同步标识为第三标识,则构建用于对所述源数据表的数据进行加密,然后再执行同步操作的数据同步任务;(2.4)若所述数据同步标识为第四标识,则构建用于对所述源数据表的数据进行格式转换,然后再执行同步操作的数据同步任务。以上列出了四种数据同步场景,分别为数据全部同步、数据部分同步、数据加密后同步以及数据格式转换后同步。104、当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据本文档来自技高网...

【技术保护点】
1.一种数据同步方法,其特征在于,包括:从业务系统的源数据库中检测存在数据更新的源数据表;根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;根据所述元数据构建相应的数据同步任务;当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。

【技术特征摘要】
1.一种数据同步方法,其特征在于,包括:从业务系统的源数据库中检测存在数据更新的源数据表;根据所述源数据表的表名从所述源数据库中查找所述源数据表的元数据;根据所述元数据构建相应的数据同步任务;当执行所述数据同步任务时,结合所述源数据表构建布隆过滤器,将大数据平台待同步的目标数据表的数据输入所述布隆过滤器,从而找出所述目标数据表中需要同步的数据;采用mapjoin工具,从所述源数据表中提取所述需要同步的数据的更新值并将所述更新值加载到内存中,然后再将内存中的所述更新值同步至所述目标数据表。2.根据权利要求1所述的数据同步方法,其特征在于,所述根据所述元数据构建相应的数据同步任务包括:获取当前的数据同步标识,所述数据同步标识用于指示当前的数据同步策略;结合所述源数据表的元数据,构建与所述数据同步标识对应的数据同步任务。3.根据权利要求2所述的数据同步方法,其特征在于,所述构建与所述数据同步标识对应的数据同步任务包括:若所述数据同步标识为第一标识,则构建用于同步所述源数据表的所有数据的数据同步任务;若所述数据同步标识为第二标识,则构建用于同步所述源数据表的部分数据的数据同步任务;若所述数据同步标识为第三标识,则构建用于对所述源数据表的数据进行加密,然后再执行同步操作的数据同步任务;若所述数据同步标识为第四标识,则构建用于对所述源数据表的数据进行格式转换,然后再执行同步操作的数据同步任务。4.根据权利要求1所述的数据同步方法,其特征在于,在构建数据同步任务之后,执行所述数据同步任务之前,还包括:提取所述数据同步任务使用的参数;将提取到的参数分别和预先构建的全局参数表中的各个全局参数进行比对,判断所述提取到的参数中是否包含全局参数;若所述提取到的参数中包含全局参数,则从所述全局参数表中查找所述包含的全局参数的最新值,并使用所述最新值对所述包含的全局参数的数值进行更新。5.根据权利要求1至4中任一项所述的数据同步方法,其特征在于,所述执行所述数据同步任务包括:当准备执行当次的数据同步任务时,记录当前的系统时间作为所述当次的数据同步任务的起始时间;获取上一次的数据同步任务的结束时间;若所述起始时间和所述结束时间相同,则执行所述当次的数据同步任务;若所述起始时间晚于所述结束时间,则获取数据同步记录,根据所述数据同步记录确定当次的数据同步任务之前产生的同步失败的数据同步任务,并重新执行所述同步失败的数据同步任务。6.一种数据同步装置,其特征在于,包括:源数据表检测模块,用于从业务系统的源数据...

【专利技术属性】
技术研发人员:林堋鑫
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1