数据同步方法及装置制造方法及图纸

技术编号:8532902 阅读:185 留言:0更新日期:2013-04-04 15:56
本发明专利技术公开了一种数据同步方法及装置,该方法包括,采用读取第一数据源和第二数据源中的需要同步的数据;将读取到的来自第一数据源的数据解析成一个或多个第一对象,并且将来自第二数据源的数据解析成一个或多个第二对象,其中,第一对象和第二对象具有相同的数据格式;根据数据同步方式,将第一对象和第二对象中的数据进行同步,其中,数据同步方式为以第一对象中的数据为准进行同步,或者,以第二对象中的数据为准进行同步;将第一对象和第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中,通过本发明专利技术,达到了可以根据定制的方式来选择不同数据库系统间数据的同步效果。

【技术实现步骤摘要】

本专利技术涉及通信领域,具体而言,涉及一种数据同步方法及装置
技术介绍
随着系统软件的不断完善,如果原有的数据库系统因效率、设计等先天不足的原因,不再满足系统要求时,就需要考虑引入一个新的数据库系统,而这个新数据库系统往往在存储方式上、结构上同原有数据库系统有很大区别,是一个全新的数据库系统,这就注定了不可以直接同原有数据库系统交换数据。因此,为了保证软件的前向兼容性,新软件需要同时兼容新、旧两个数据库系统,为了保证用户配置的数据不丢失,系统需要考虑这两种不同数据库系统(或称为两种不同的数据源)间的相互数据同步问题。对于不同数据库系统之间数据同步的问题,在现有技术中并没有提供一种有效的解决方案。
技术实现思路
针对现有技术中并不存在一种有效的数据同步方法来实现不同数据库系统间数据同步的问题,本专利技术提供了一种数据同步方法及装置,以至少解决上述问题。根据本专利技术的一个方面,提供了一种数据同步方法,包括读取第一数据源和第二数据源中的需要同步的数据;将读取到的来自所述第一数据源的数据解析成一个或多个第一对象,并且将来自所述第二数据源的数据解析成一个或多个第二对象,其中,所述第一对象和所述第二对象具有相同的数据格式;根据数据同步方式,将所述第一对象和所述第二对象中的数据进行同步,其中,所述数据同步方式为以所述第一对象中的数据为准进行同步,或者,以所述第二对象中的数据为准进行同步;将所述第一对象和所述第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中。优选地,将所述第一数据源和所述第二数据源的需要同步的数据读取到内存中,所述第一对象和所述第二对象为内存中的对象。优选地,依据配置的逻辑顺序读取所述第一数据源的数据和第二数据源的数据;将所述第一数据源的数据解析成一个或多个第一对象,将来自所述第二数据源的数据依据所述配置的逻辑顺序解析第一个所述第二对象;根据数据同步方式,将所述第一数据源的数据对应的第一个第一对象中的数据和第一个所述第二对象中的数据进行同步;将同步后的数据封装成与数据源对应的数据格式,并将封装完成的所述数据写入到对应的数据源;按照配置的逻辑顺序重复执行上述解析、同步、封装的步骤,直到所述第二数据源中的所需要同步的数据结束。优选地,将读取到的来自所述第一数据源的数据解析成多个第一对象,并且将来自所述第二数据源的数据解析成多个第二对象;查找关键值相同的所述第一对象和所述第二对象;根据数据同步方式,将所述关键值相同的所述第一对象中的数据与每个所述第二对象中的数据进行同步;将同步后的数据封装成与数据源对应的数据格式,并将封装完成的每个所述数据写入到对应的数据源。优选地,所述数据同步方式通过以下方式之一来设置通过配置文件的方式、通过接收用户命令中携带的数据同步方式、通过在代码中定义。根据本专利技术的另一方面,提供了一种数据同步装置,包括,读取模块,用于读取第一数据源和第二数据源中的需要同步的数据;解析模块,用于将读取到的来自所述第一数据源的数据解析成一个或多个第一对象,并且将来自所述第二数据源的数据解析成一个或多个第二对象,其中,所述第一对象和所述第二对象具有相同的数据格式;同步模块,用于根据数据同步方式,将所述第一对象和所述第二对象中的数据进行同步,其中,所述数据同步方式为以所述第一对象中的数据为准进行同步,或者,以所述第二对象中的数据为准进行同步;封装模块,用于将所述第一对象和所述第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中。优选地,所述读取模块,还用于将所述第一数据源和所述第二数据源的需要同步的数据读取到内存中,所述第一对象和所述第二对象为内存中的对象。优选地,所述读取模块,用于依据配置的逻辑顺序读取所述第一数据源的数据和第二数据源的数据;所述解析模块,用于将所述第一数据源的数据解析成一个或多个第一对象,将来自所述第二数据源的数据依据所述配置的逻辑顺序解析第一个所述第二对象;所述同步模块,用于根据数据同步方式,将所述第一数据源的数据对应的第一个第一对象和第一个所述第二对象中的数据进行同步;所述封装模块,用于将同步后的数据封装成与数据源对应的数据格式,并将封装完成的所述数据写入到对应的数据源;所述装置还包括循环模块,用于依次调用所述解析模块、同步模块和封装模块,直到所述第二数据源中的所需要同步的数据结束。优选地,所述解析模块,用于将读取到的来自所述第一数据源的数据解析成多个第一对象,并且将来自所述第二数据源的数据解析成多个第二对象;所述同步模块,用于查找关键值相同的所述第一对象和所述第二对象;根据数据同步方式,将所述关键值相同的所述第一对象与每个所述第二对象中的数据进行同步;所述封装模块,用于将同步后的数据封装成与数据源对应的数据格式,并将封装完成的每个所述数据写入到对应的数据源。优选地,所述同步模块的所述数据同步方式通过以下方式之一来设置通过配置文件的方式、通过接收用户命令中携带的数据同步方式、通过在代码中定义。通过本专利技术,采用读取第一数据源和第二数据源中的需要同步的数据;将读取到的来自所述第一数据源的数据解析成一个或多个第一对象,并且将来自所述第二数据源的数据解析成一个或多个第二对象,其中,所述第一对象和所述第二对象具有相同的数据格式;根据数据同步方式,将所述第一对象和所述第二对象中的数据进行同步,其中,所述数据同步方式为以所述第一对象中的数据为准进行同步,或者,以所述第二对象中的数据为准进行同步;将所述第一对象和所述第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中,解决了现有技术中并不存在一种有效的数据同步方法来实现不同数据库系统间数据同步的问题,进而达到了可以根据定制的方式来选择不同数据库系统间数据的同步效果。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中图1是根据本专利技术实施例的数据同步方法的流程图;图2是根据本专利技术实施例的数据同步装置的结构框图;图3是根据本专利技术优选实施例的包括业务组件的数据同步装置的结构示意图;图4是根据本专利技术优选实施例的数据同步处理方法的流程图。具体实施例方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。在本实施例中提供了一种不同数据源批量相互同步数据的方法,并且该数据同步方式可以定制。图1是根据本专利技术实施例的数据同步方法的流程图,如图1所示,该方法包括如下步骤步骤S102,读取第一数据源和第二数据源中的需要同步的数据;步骤S104,将读取到的来自该第一数据源的数据解析成一个或多个第一对象,并且将来自该第二数据源的数据解析成一个或多个第二对象,其中,第一对象和第二对象具有相同的数据格式;步骤S106,根据数据同步方式,将第一对象和第二对象中的数据进行同步,其中,该数据同步方式为以第一对象中的数据为准进行同步,或者,以第二对象中的数据为准进行同步,数据同步方式通过以下方式之一来设置通过配置文件的方式、通过接收用本文档来自技高网...
数据同步方法及装置

【技术保护点】
一种数据同步方法,其特征在于包括,读取第一数据源和第二数据源中的需要同步的数据;将读取到的来自所述第一数据源的数据解析成一个或多个第一对象,并且将来自所述第二数据源的数据解析成一个或多个第二对象,其中,所述第一对象和所述第二对象具有相同的数据格式;根据数据同步方式,将所述第一对象和所述第二对象中的数据进行同步,其中,所述数据同步方式为以所述第一对象中的数据为准进行同步,或者,以所述第二对象中的数据为准进行同步;将所述第一对象和所述第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中。

【技术特征摘要】
1.一种数据同步方法,其特征在于包括,读取第一数据源和第二数据源中的需要同步的数据;将读取到的来自所述第一数据源的数据解析成一个或多个第一对象,并且将来自所述第二数据源的数据解析成一个或多个第二对象,其中,所述第一对象和所述第二对象具有相同的数据格式;根据数据同步方式,将所述第一对象和所述第二对象中的数据进行同步,其中,所述数据同步方式为以所述第一对象中的数据为准进行同步,或者,以所述第二对象中的数据为准进行同步;将所述第一对象和所述第二对象中完成同步的对象中的数据封装成该对象所对应的数据源中的数据格式,并将封装完成的数据写入到对应的数据源中。2.根据权利要求1所述的方法,其特征在于,将所述第一数据源和所述第二数据源的需要同步的数据读取到内存中,所述第一对象和所述第二对象为内存中的对象。3.根据权利要求1或2所述的方法,其特征在于,依据配置的逻辑顺序读取所述第一数据源的数据和第二数据源的数据;将所述第一数据源的数据解析成一个或多个第一对象,将来自所述第二数据源的数据依据所述配置的逻辑顺序解析第一个所述第二对象;根据数据同步方式,将所述第一数据源的数据对应的第一个第一对象中的数据和第一个所述第二对象中的数据进行同步;将同步后的数据封装成与数据源对应的数据格式,并将封装完成的所述数据写入到对应的数据源;按照配置的逻辑顺序重复执行上述解析、同步、封装的步骤,直到所述第二数据源中的所需要同步的数据结束。4.根据权利要求1或2所述的方法,其特征在于,将读取到的来自所述第一数据源的数据解析成多个第一对象,并且将来自所述第二数据源的数据解析成多个第二对象;查找关键值相同的所述第一对象和所述第二对象;根据数据同步方式,将所述关键值相同的所述第一对象中的数据与每个所述第二对象中的数据进行同步;将同步后的数据封装成与数据源对应的数据格式,并将封装完成的每个所述数据写入到对应的数据源。5.根据权利要求4所述的方法,其特征在于,所述数据同步方式通过以下方式之一来设置通过配置文件的方式、通过接收用户命令中携带的数据同步方式、通过在代码中定义。6.一种数据同步装置,其特征在于包括,读取模块,用于读取第一数据源和第二数据源中的需要同步的数据;解析模块,...

【专利技术属性】
技术研发人员:李德云
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

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

1