一种数据的迁移方法和系统技术方案

技术编号:21735964 阅读:71 留言:0更新日期:2019-07-31 19:08
本发明专利技术实施例提供了一种数据的迁移方法和系统。通过在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象,运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。提供一种可以将系统里不同的数据迁移到不同系统数据库里或者其他存储介质上,可以适应用户在系统不同的数据下,通过可配置下的不同迁移实现类可定制化地迁移需要的数据,满足了用户迁移个性化数据迁移。

A Data Migration Method and System

【技术实现步骤摘要】
一种数据的迁移方法和系统
本专利技术涉及通信
,尤其涉及一种数据的迁移方法和系统。
技术介绍
在很多的复杂业务系统里,都会有一些业务数据需要根据具体的需求迁移到别的系统数据库里或者存储介质上。比如数据迁移的系统模块:平台相关模块(菜单模块,打印模块,会计平台,元数据,基础数据,单据模板,工作流),预算系统,资金系统,商业智能,合同管理,收付款管理,总账管理,薪资管理,报表管理,基础数据等,这些模块的数据迁移的数据和结构都是不一样。迁移数据的处理规则,一般分为以下几类:1、基础数据,通常这一类容易迁移,数据格式比较简单,但是会影响所有的相关业务数据,关注点为数据的主键和唯一键的方式。2、纯历史数据的迁移,仅供参考用的,这一类数据迁移容易纯历史数据:这一类数据处理起来会比较容易,一次性迁移即可。关联性数据:这一类数据只有在有外键关联的数据迁移后才能结束。3、新老系统表结构变化较大的历史数据。这一类数据的工作量是最重的,需要去研究新老业务系统的数据结构,比较新老系统数据的差异,需要确定那些数据迁移,数据类型的转换,新老系统数据对应等。为了满足用户实际的需求,迁移的数据能够是别的系统所需要的数据,就需要一种提供满足可定制化的个性需求迁移数据的工具,同时需要该工具需要支持数据的断点迁移,迁移信息的可追溯。
技术实现思路
本专利技术的实施例提供了一种数据的迁移方法和系统,本专利技术提供了如下方案:在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象;运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。根据本专利技术另一方面,还提供一种数据的迁移系统,包括:配置模块:其用于在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立模块:其用于建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;读取模块:其用于当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象;运行模块:其用于运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。由上述本专利技术的实施例提供的技术方案可以看出,本专利技术实施例通过在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象,运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。提供一种可以将系统里不同的数据迁移到不同系统数据库里或者其他存储介质上,可以适应用户在系统不同的数据下,通过可配置下的不同迁移实现类可定制化地迁移需要的数据,满足了用户迁移个性化数据迁移,断点迁移数据,提高了用户迁移数据的稳定性。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例一提供的一种数据的迁移方法的处理流程图;图2为本专利技术实施例二提供的一种数据的迁移系统的系统模块图。具体实施方式为便于对本专利技术实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本专利技术实施例的限定。实施例一该实施例提供了一种数据的迁移方法的处理流程如图1所示,本实施例中,其处理步骤如下:步骤11、在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;步骤12、建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;步骤13、当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象,步骤14、运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。所述在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类,包括:在对源数据模块配置迁移实现类时,预先根据源数据模块中待迁移数据的迁移优先级配置待迁移数据的顺序号,待迁移数据的名称,待迁移数据的迁移实现类的类名。根据所述源数据模块中待迁移数据的迁移优先级依次从源数据模块向所述目的数据模块迁移。当所述源数据模块接到多次触发请求时,采用JAVA的同步加锁功能保持每次只启动一个线程进行数据迁移;待已启动的线程结束再按照待迁移数据的迁移优先级开启下一个线程进行数据迁移。在具体实施时,考虑并发的问题,多次点击迁移数据时,当前只有一个线程进行数据迁移,这里需要用到java的同步加锁保持全局同步的功能。之所以要考虑并发,因为多个请求线程同时访问迁移方法,容易导致已经同步过的数据,会继续进行同步,容易造成数据的错乱问题。每次数据迁移每个迁移模块时,数据都要提交一次,数据都能够持久化。考虑日志问题,需要记录迁移表的位置和日志相关信息,迁移成功后,不能再进行迁移,迁移失败后,还会支持断点迁移。当当前迁移进程发生中断,根据日志记录的迁移位置,从断点续传进行迁移。每次请求迁移时,首先初始化记录迁移日志信息,之所以先添加日志,因为迁移数据的时候,这个过程花费的时间可能比较长,网络可能会有中断的时候,所以会先记录下日志,进行数据提交。接着进行迁移状态的添加或更新,迁移数据,如果数据迁移失败,迁移状态和数据迁移都进行数据回滚,更新日志信息,迁移状态依然保持迁移前的状态。如果数据迁移成功,会继续下一个表迁移。最后,如果是最后一个模块迁移成功,迁移状态和日志信息都需要更新。以上是该工具断点迁移数据的过程,提高了迁移的稳定性,迁移过程和结果的日志记录,提高了迁移的追溯性。此外,本实施例还提供用户交互的界面图,用户可以在此界面上进行数据迁移操作,能够看到数据迁移的进度,数据迁移结束后,能够在右侧类别看到迁移数据的日志信息。友好的界面,提高了用户操作的易用性和可视性。实施例二该实施例提供了一种数据的迁移系统,其具体实现结构如图2所示,具体可以包括如下的模块:配置模块21:其用于在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立模块22:其用于建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;读取模块23:其用于当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象;运行模块24:其用于运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。所述配置模块21具体用于:在对源数据模块配置迁移实现类时,预先根据源数据模块中待迁移数据的迁移优先级配置待迁移数据的顺序号,待迁移数据的名本文档来自技高网...

【技术保护点】
1.一种数据的迁移方法,其特征在于,包括:在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象;运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。

【技术特征摘要】
1.一种数据的迁移方法,其特征在于,包括:在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类;建立源数据模块与所述源数据模块对应的迁移实现类的关联关系;当源数据模块向目的数据模块发生迁移时,读取所述源数据模块对应的迁移实现类;其中,所述源数据模块对应的迁移实现类通过Java的反射机制针对目的数据模块动态地生成迁移类对象;运行所述迁移类对象,实现所述源数据模块到所述目的数据模块的数据迁移。2.根据权利要求1所述的一种数据的迁移方法,其特征在于,所述在迁移配置表中根据Java的反射机制对源数据模块配置迁移实现类,包括:在对源数据模块配置迁移实现类时,预先根据源数据模块中待迁移数据的迁移优先级配置待迁移数据的顺序号,待迁移数据的名称,待迁移数据的迁移实现类的类名。3.根据权利要求2所述的一种数据的迁移方法,其特征在于,根据所述源数据模块中待迁移数据的迁移优先级依次从源数据模块向所述目的数据模块迁移。4.根据权利要求3所述的一种数据的迁移方法,其特征在于,当所述源数据模块接到多次触发请求时,采用JAVA的同步加锁功能保持每次只启动一个线程进行数据迁移;待已启动的线程结束再按照待迁移数据的迁移优先级开启下一个线程进行数据迁移。5.根据权利要求4所述的一种数据的迁移方法,其特征在于,当当前迁移进程发生中断,根据日志记录的迁移位置,从断点续传进行迁移。6.一种数据的迁移系统,其特征在于,包括...

【专利技术属性】
技术研发人员:尹相兵
申请(专利权)人:航天信息软件技术有限公司
类型:发明
国别省市:北京,11

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

1