数据迁移的智能化实现方法及装置与流程

    专利查询2022-07-07  153



    1.本发明涉及数据迁移技术领域,尤其涉及一种数据迁移的智能化实现方法及装置。


    背景技术:

    2.在实际生活中,业务的发展通常伴随着系统升级或系统更换的需求,当系统升级或者系统更换时,会导致业务数据的数据结构发生变化,此时,旧系统的数据库无法适应新系统的业务数据的数据结构的变化,因此,系统升级或系统更换也会伴随着数据库的更换,而旧系统的数据库中的重要历史数据也要随之迁移至新系统的数据库中。
    3.除了将历史数据拷贝至新系统的数据库之外,数据迁移还需要将历史数据的原有数据结构转换成适应新系统的数据结构,当前,数据迁移主要以人工迁移完成。然而,实践发现,人工迁移数据步骤繁琐,耗时较长,导致数据迁移的效率较低,并且人工迁移数据的准确率较低,导致在数据量极大的情况下,以人工的方式进行数据迁移会导致新系统无法及时运行,只能继续维持原有系统的运行,从而影响业务的发展,可见,如何实现数据的智能化迁移,提高数据迁移的效率和准确率显得尤为重要。


    技术实现要素:

    4.本发明所要解决的技术问题在于,提供一种数据迁移的智能化实现方法及装置,能够实现数据的智能化迁移,进而能够提高数据迁移的效率和准确率。
    5.为了解决上述技术问题,本发明第一方面公开了一种数据迁移的智能化实现方法,所述方法包括:
    6.确定旧系统的源数据库中需要进行数据迁移的源数据;
    7.分析所述旧系统的数据模型和新系统的数据模型,得到所述源数据库和所述新系统的目标数据库之间的数据映射关系;
    8.根据所述数据映射关系,将所述源数据迁移至所述目标数据库。
    9.作为一种可选的实施方式,在本发明第一方面中,所述分析所述旧系统的数据模型和新系统的数据模型,得到所述源数据库和所述新系统的目标数据库之间的数据映射关系,包括:
    10.根据所述旧系统的数据模型,确定所述源数据中至少一个迁移字段在所述源数据库中的第一字段属性,其中,每个所述迁移字段为所述源数据中需要进行数据迁移的字段,每个所述迁移字段的第一字段属性包括该迁移字段在所述源数据库中对应的表格名称、字段名称、字段标识、字段长度、字段类型中的一个或多个;
    11.根据新系统的数据模型,确定所有所述迁移字段在所述新系统的目标数据库中的第二字段属性;
    12.针对每个所述迁移字段,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,判断是否需要针对该迁移字段进行转换操作;当判断结果为是时,根据该迁移字段
    的第一字段属性和该迁移字段的第二字段属性,确定该迁移字段对应的转换方式,该迁移字段对应的转换方式用于将该迁移字段的第一字段属性转换成该迁移字段的第二字段属性;分析该迁移字段的第一字段属性、该迁移字段的第二字段属性和该迁移字段对应的转换方式,得到所述源数据库和所述新系统的目标数据库之间针对该迁移字段对应的字段映射关系;当判断结果为否时,分析该迁移字段的第一字段属性、该迁移字段的第二字段属性,得到所述源数据库和所述新系统的目标数据库之间针对该迁移字段对应的字段映射关系;
    13.基于所述源数据库和所述新系统的目标数据库之间针对每个所述迁移字段对应的字段映射关系,确定所述源数据库和所述新系统的目标数据库之间的数据映射关系。
    14.作为一种可选的实施方式,在本发明第一方面中,针对每个所述迁移字段,当需要针对该迁移字段进行转换操作时,该迁移字段对应的转换方式包括赋值转换、筛选转换、运算转换中的任意一种;
    15.在所述根据所述数据映射关系,将所述源数据迁移至所述目标数据库之前,所述方法还包括:
    16.针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述赋值转换时,将预先确定出的该迁移字段对应的赋值字段确定为该迁移字段对应的目标字段;
    17.针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述筛选转换时,基于预设的查询语句以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,在该迁移字段对应的字段范围中筛选出该迁移字段对应的目标字段;
    18.针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述运算转换时,基于预设的运算方式以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,运算该迁移字段对应的待运算字符,得到该迁移字段对应的运算结果,并将该迁移字段对应的运算结果确定为该迁移字段对应的目标字段;
    19.针对每个所述迁移字段,当不需要针对该迁移字段进行转换操作时,将该迁移字段确定为该迁移字段对应的目标字段;
    20.以及,所述根据所述数据映射关系,将所述源数据迁移至所述目标数据库,包括:
    21.根据所述数据映射关系,将每个所述迁移字段对应的目标字段迁移至所述目标数据库。
    22.作为一种可选的实施方式,在本发明第一方面中,在所述根据所述数据映射关系,将所述源数据迁移至所述目标数据库之后,所述方法还包括:
    23.检测所述源数据库是否存在增量数据,所述增量数据包括在数据迁移过程中由于所述旧系统的运行而产生的需要迁移至所述目标数据库的新数据,所述数据迁移过程为将所述源数据迁移至所述目标数据库的过程;
    24.当检测结果为是时,确定所述增量数据对应的业务关系表的空表结构;
    25.根据所述增量数据包括的增量字段在所述源数据库中的字段属性,将所述增量字段导入至所述空表结构,得到增量数据表;
    26.根据所述数据映射关系,确定所述业务关系表在所述目标数据库中对应的目标业
    务关系表;
    27.分析所述增量数据表和所述目标业务关系表,得到所述增量数据表中需要合并至所述目标业务关系表的迁移增量字段;
    28.根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表。
    29.作为一种可选的实施方式,在本发明第一方面中,所述检测所述源数据库是否存在增量数据,包括:
    30.将所述源数据迁移至所述目标数据库的起始时刻确定为第一时刻,并将所述源数据迁移至所述目标数据库的截止时刻确定为第二时刻;
    31.确定所述旧系统在所述第一时刻之后继续运行的工作模块,并根据所述工作模块确定所述源数据库中需要进行增量数据检测的数据集;
    32.检测所述数据集中是否存在对应的数据生成时间晚于所述第一时刻并早于所述第二时刻的至少一个目标数据;
    33.当检测结果为是时,判断所有所述目标数据中是否存在需要迁移至所述目标数据库的目标数据;
    34.当判断结果为是时,确定所述源数据库存在增量数据,所述增量数据为需要迁移至所述目标数据库的目标数据。
    35.作为一种可选的实施方式,在本发明第一方面中,在所述根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表之前,所述方法还包括:
    36.在所述源数据库中确定与所述业务关系表对应的依赖表,并在所述依赖表中确定所述迁移增量字段对应的依赖字段,其中,所述增量数据的产生与所述依赖表的数据相关;
    37.根据所述迁移增量字段对应的依赖字段对应的转换方式,确定所述迁移增量字段对应的转换方式;
    38.将所述迁移增量字段转换成与所述迁移增量字段对应的转换方式相匹配的目标增量字段;
    39.所述根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表,包括:
    40.根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述目标增量字段迁移至所述目标业务关系表。
    41.作为一种可选的实施方式,在本发明第一方面中,所述方法还包括:
    42.在完成所述源数据库和所述目标数据库之间的数据迁移之后,将所述目标数据库在校验时间段内由于所述新系统的运行而生成的数据确定为第一校验数据,并将所述源数据库在所述校验时间段内由于所述旧系统的运行而生成的数据确定为第二校验数据,所述校验时间段的起始时刻为所述新系统试验运行的起始时刻;
    43.确定所述第一校验数据包括的所有校验字段在所述第二校验数据中对应的目标校验字段;
    44.根据每个所述校验字段的字段属性、每个所述目标校验字段的字段属性和所述数据映射关系,检测每个所述校验字段与该校验字段对应的目标校验字段是否均匹配;
    45.当检测结果为是时,控制所述旧系统停止运行;
    46.当检测结果为否时,确定异常校验字段在所述新系统中对应的目标工作模块,并向所述新系统的相关人员输出所述目标工作模块对应的异常运行提示,所述异常校验字段为所有所述校验字段中与对应的目标校验字段不匹配的校验字段。
    47.本发明第二方面公开了一种数据迁移的智能化实现装置,所述装置包括:
    48.确定模块,用于确定旧系统的源数据库中需要进行数据迁移的源数据;
    49.分析模块,用于分析所述旧系统的数据模型和新系统的数据模型,得到所述源数据库和所述新系统的目标数据库之间的数据映射关系;
    50.迁移模块,用于根据所述数据映射关系,将所述源数据迁移至所述目标数据库。
    51.作为一种可选的实施方式,在本发明第二方面中,所述分析模块分析所述旧系统的数据模型和新系统的数据模型,得到所述源数据库和所述新系统的目标数据库之间的数据映射关系的具体方式为:
    52.根据所述旧系统的数据模型,确定所述源数据中至少一个迁移字段在所述源数据库中的第一字段属性,其中,每个所述迁移字段为所述源数据中需要进行数据迁移的字段,每个所述迁移字段的第一字段属性包括该迁移字段在所述源数据库中对应的表格名称、字段名称、字段标识、字段长度、字段类型中的一个或多个;
    53.根据新系统的数据模型,确定所有所述迁移字段在所述新系统的目标数据库中的第二字段属性;
    54.针对每个所述迁移字段,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,判断是否需要针对该迁移字段进行转换操作;当判断结果为是时,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,确定该迁移字段对应的转换方式,该迁移字段对应的转换方式用于将该迁移字段的第一字段属性转换成该迁移字段的第二字段属性;分析该迁移字段的第一字段属性、该迁移字段的第二字段属性和该迁移字段对应的转换方式,得到所述源数据库和所述新系统的目标数据库之间针对该迁移字段对应的字段映射关系;当判断结果为否时,分析该迁移字段的第一字段属性、该迁移字段的第二字段属性,得到所述源数据库和所述新系统的目标数据库之间针对该迁移字段对应的字段映射关系;
    55.基于所述源数据库和所述新系统的目标数据库之间针对每个所述迁移字段对应的字段映射关系,确定所述源数据库和所述新系统的目标数据库之间的数据映射关系。
    56.作为一种可选的实施方式,在本发明第二方面中,针对每个所述迁移字段,当需要针对该迁移字段进行转换操作时,该迁移字段对应的转换方式包括赋值转换、筛选转换、运算转换中的任意一种;
    57.所述确定模块,还用于在所述迁移模块根据所述数据映射关系,将所述源数据迁移至所述目标数据库之前,针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述赋值转换时,将预先确定出的该迁移字段对应的赋值字段确定为该迁移字段对应的目标字段,或者,当不需要针对该迁移字段进行转换操作时,将该迁移字段确定为该迁移字段对应的目标字段;
    58.所述装置还包括:
    59.筛选模块,用于在所述迁移模块根据所述数据映射关系,将所述源数据迁移至所
    述目标数据库之前,针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述筛选转换时,基于预设的查询语句以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,在该迁移字段对应的字段范围中筛选出该迁移字段对应的目标字段;
    60.运算模块,用于在所述迁移模块根据所述数据映射关系,将所述源数据迁移至所述目标数据库之前,针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述运算转换时,基于预设的运算方式以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,运算该迁移字段对应的待运算字符,得到该迁移字段对应的运算结果;
    61.所述确定模块,还用于针对每个所述迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括所述运算转换时,将该迁移字段对应的运算结果确定为该迁移字段对应的目标字段;
    62.以及,所述迁移模块根据所述数据映射关系,将所述源数据迁移至所述目标数据库的具体方式为:
    63.根据所述数据映射关系,将每个所述迁移字段对应的目标字段迁移至所述目标数据库。
    64.作为一种可选的实施方式,在本发明第二方面中,所述装置还包括:
    65.检测模块,用于在所述迁移模块根据所述数据映射关系,将所述源数据迁移至所述目标数据库之后,检测所述源数据库是否存在增量数据,所述增量数据包括在数据迁移过程中由于所述旧系统的运行而产生的需要迁移至所述目标数据库的新数据,所述数据迁移过程为将所述源数据迁移至所述目标数据库的过程;
    66.所述确定模块,还用于当所述检测模块检测出所述源数据库存在所述增量数据时,确定所述增量数据对应的业务关系表的空表结构;
    67.导入模块,用于根据所述增量数据包括的增量字段在所述源数据库中的字段属性,将所述增量字段导入至所述空表结构,得到增量数据表;
    68.所述确定模块,还用于根据所述数据映射关系,确定所述业务关系表在所述目标数据库中对应的目标业务关系表;
    69.所述分析模块,还用于分析所述增量数据表和所述目标业务关系表,得到所述增量数据表中需要合并至所述目标业务关系表的迁移增量字段;
    70.所述迁移模块,还用于根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表。
    71.作为一种可选的实施方式,在本发明第二方面中,所述检测模块检测所述源数据库是否存在增量数据的具体方式为:
    72.将所述源数据迁移至所述目标数据库的起始时刻确定为第一时刻,并将所述源数据迁移至所述目标数据库的截止时刻确定为第二时刻;
    73.确定所述旧系统在所述第一时刻之后继续运行的工作模块,并根据所述工作模块确定所述源数据库中需要进行增量数据检测的数据集;
    74.检测所述数据集中是否存在对应的数据生成时间晚于所述第一时刻并早于所述第二时刻的至少一个目标数据;
    75.当检测结果为是时,判断所有所述目标数据中是否存在需要迁移至所述目标数据库的目标数据;
    76.当判断结果为是时,确定所述源数据库存在增量数据,所述增量数据为需要迁移至所述目标数据库的目标数据。
    77.作为一种可选的实施方式,在本发明第二方面中,所述确定模块,还用于在所述迁移模块根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表之前,在所述源数据库中确定与所述业务关系表对应的依赖表,并在所述依赖表中确定所述迁移增量字段对应的依赖字段,其中,所述增量数据的产生与所述依赖表的数据相关;以及,还用于根据所述迁移增量字段对应的依赖字段对应的转换方式,确定所述迁移增量字段对应的转换方式;
    78.所述装置还包括:
    79.转换模块,用于将所述迁移增量字段转换成与所述迁移增量字段对应的转换方式相匹配的目标增量字段;
    80.所述迁移模块根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述迁移增量字段迁移至所述目标业务关系表的具体方式为:
    81.根据所述迁移增量字段在所述源数据库中的字段属性以及所述数据映射关系,将所述目标增量字段迁移至所述目标业务关系表。
    82.作为一种可选的实施方式,在本发明第二方面中,所述确定模块,还用于在完成所述源数据库和所述目标数据库之间的数据迁移之后,将所述目标数据库在校验时间段内由于所述新系统的运行而生成的数据确定为第一校验数据,并将所述源数据库在所述校验时间段内由于所述旧系统的运行而生成的数据确定为第二校验数据,所述校验时间段的起始时刻为所述新系统试验运行的起始时刻;以及,还用于确定所述第一校验数据包括的所有校验字段在所述第二校验数据中对应的目标校验字段;
    83.所述检测模块,还用于根据每个所述校验字段的字段属性、每个所述目标校验字段的字段属性和所述数据映射关系,检测每个所述校验字段与该校验字段对应的目标校验字段是否均匹配;
    84.所述装置还包括:
    85.控制模块,当所述检测模块检测出每个所述校验字段与该校验字段对应的目标校验字段均匹配时,控制所述旧系统停止运行;
    86.所述确定模块,还用于当所述检测模块检测出每个所述校验字段与该校验字段对应的目标校验字段并非均匹配时,确定异常校验字段在所述新系统中对应的目标工作模块,所述异常校验字段为所有所述校验字段中与对应的目标校验字段不匹配的校验字段;
    87.通信模块,用于向所述新系统的相关人员输出所述目标工作模块对应的异常运行提示。
    88.本发明第三方面公开了另一种数据迁移的智能化实现装置,所述装置包括:
    89.存储有可执行程序代码的存储器;
    90.与所述存储器耦合的处理器;
    91.所述处理器调用所述存储器中存储的所述可执行程序代码,执行本发明第一方面公开的数据迁移的智能化实现方法。
    92.本发明第四方面公开了一种计算机可存储介质,所述计算机存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本发明第一方面公开的数据迁移的智能化实现方法。
    93.与现有技术相比,本发明实施例具有以下有益效果:
    94.本发明实施例中,确定旧系统的源数据库中需要进行数据迁移的源数据;分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系;根据数据映射关系,将源数据迁移至目标数据库。可见,实施本发明能够智能确定数据映射关系,并基于数据映射关系将需要迁移的源数据迁移至目标数据库,实现了数据的智能化迁移,提高了数据迁移的效率和准确率。
    附图说明
    95.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
    96.图1是本发明实施例公开的一种数据迁移的智能化实现方法的流程示意图;
    97.图2是本发明实施例公开的另一种数据迁移的智能化实现方法的流程示意图;
    98.图3是本发明实施例公开的一种数据迁移的智能化实现装置的结构示意图;
    99.图4是本发明实施例公开的另一种数据迁移的智能化实现装置的结构示意图;
    100.图5是本发明实施例公开的又一种数据迁移的智能化实现装置的结构示意图。
    具体实施方式
    101.为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
    102.本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、装置、产品或端没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或端固有的其他步骤或单元。
    103.在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
    104.本发明公开了一种数据迁移的智能化实现方法及装置,能够智能确定数据映射关系,并基于数据映射关系将需要迁移的源数据迁移至目标数据库,实现了数据的智能化迁移,提高了数据迁移的效率和准确率。以下分别进行详细说明。
    105.实施例一
    106.请参阅图1,图1是本发明实施例公开的一种数据迁移的智能化实现方法的流程示意图。其中,图1所描述的数据迁移的智能化实现方法可以应用于两个数据库之间的数据迁移过程。如图1所示,该数据迁移的智能化实现方法可以包括以下操作:
    107.101、确定旧系统的源数据库中需要进行数据迁移的源数据。
    108.本发明实施例中,旧系统可以是与生活或生产相关的任意系统,旧系统可以包括至少一个工作模块,每个工作模块可以对应至少一个源数据库,源数据库的数据可以包括旧系统运行时产生的数据、也可以来包括旧系统的用户通过旧系统存储的数据。可选的,源数据库中需要进行数据迁移的源数据可以包括源数据库的全部数据,也可以包括源数据库的部分数据。进一步可选的,当源数据库中需要进行数据迁移的源数据包括源数据库的部分数据时,该部分数据可以包括新系统运行所需的数据,也可以包括源数据库中的重要历史数据,以便新系统的用户通过新系统查询重要历史数据,本发明实施例不做限定。
    109.102、分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系。
    110.本发明实施例中,新系统的系统类型可以与旧系统的系统类型一致,也可以区别于旧系统的系统类型,例如,旧系统为某城市的治安监控系统,新系统为该城市的交通监控系统,而交通监控系统对应的数据与治安监控系统对应的数据中存在同类型数据。其中,旧系统的数据模型和新系统的数据模型均用于描述该系统的数据库的数据结构以及该数据结构中数据之间的关系。源数据库和目标数据库之间的数据映射关系表示源数据库的数据和目标数据库的数据之间的对应关系,例如,若根据数据映射关系,源数据库中的“用户id”对应目标数据库中的“id”,则可以根据源数据库中“用户id”的存储位置确定目标数据库中“id”的存储位置。
    111.作为一种可选的实施方式,分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系,可以包括:
    112.根据旧系统的数据模型,确定源数据中至少一个迁移字段在源数据库中的第一字段属性,其中,每个迁移字段为源数据中需要进行数据迁移的字段,每个迁移字段的第一字段属性包括该迁移字段在源数据库中对应的表格名称、字段名称、字段标识、字段长度、字段类型中的一个或多个;
    113.根据新系统的数据模型,确定所有迁移字段在新系统的目标数据库中的第二字段属性;
    114.针对每个迁移字段,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,判断是否需要针对该迁移字段进行转换操作;当判断结果为是时,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,确定该迁移字段对应的转换方式,该迁移字段对应的转换方式用于将该迁移字段的第一字段属性转换成该迁移字段的第二字段属性;分析该迁移字段的第一字段属性、该迁移字段的第二字段属性和该迁移字段对应的转换方式,得到源数据库和新系统的目标数据库之间针对该迁移字段对应的字段映射关系;当判断结果为否时,分析该迁移字段的第一字段属性、该迁移字段的第二字段属性,得到源数据库和新系统的目标数据库之间针对该迁移字段对应的字段映射关系;
    115.基于源数据库和新系统的目标数据库之间针对每个迁移字段对应的字段映射关系,确定源数据库和新系统的目标数据库之间的数据映射关系。
    116.可见,实施该可选的实施方式能够根据源数据的迁移字段在源数据库中的字段属性和在目标数据库中的字段属性确定源数据库和目标数据库之间的数据映射关系,提高了确定数据映射关系的准确性和可靠性,并且将数据映射关系的数据粒度降至字段级别,有利于提高数据迁移的精确程度。
    117.103、根据数据映射关系,将源数据迁移至目标数据库。
    118.需要说明的是,步骤101和步骤102的执行顺序没有先后关系,步骤101和步骤102可以同时执行,也可以先执行步骤101,也可以先执行步骤102,本发明实施例不做限定。
    119.可见,实施本发明实施例能够智能确定数据映射关系,并基于数据映射关系将需要迁移的源数据迁移至目标数据库,实现了数据的智能化迁移,提高了数据迁移的效率和准确率。
    120.在一个可选的实施例中,针对每个迁移字段,当需要针对该迁移字段进行转换操作时,该迁移字段对应的转换方式包括赋值转换、筛选转换、运算转换中的任意一种;
    121.在根据数据映射关系,将源数据迁移至目标数据库之前,该方法还可以包括:
    122.针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括赋值转换时,将预先确定出的该迁移字段对应的赋值字段确定为该迁移字段对应的目标字段;
    123.针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括筛选转换时,基于预设的查询语句以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,在该迁移字段对应的字段范围中筛选出该迁移字段对应的目标字段;
    124.针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括运算转换时,基于预设的运算方式以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,运算该迁移字段对应的待运算字符,得到该迁移字段对应的运算结果,并将该迁移字段对应的运算结果确定为该迁移字段对应的目标字段;
    125.针对每个迁移字段,当不需要针对该迁移字段进行转换操作时,将该迁移字段确定为该迁移字段对应的目标字段;
    126.以及,根据数据映射关系,将源数据迁移至目标数据库,包括:
    127.根据数据映射关系,将每个迁移字段对应的目标字段迁移至目标数据库。
    128.可见,实施该可选的实施例能够根据新系统的实际需求对迁移字段进行转换操作,有利于提高迁移至目标数据库的迁移字段与新系统的匹配程度,提高了数据迁移的准确性和可靠性。
    129.在该可选的实施例中,可选的,针对每个迁移字段,当需要针对该迁移字段进行转化操作时,可以将该迁移字段迁移至数据转换库中,并在数据转换库中执行本可选的实施例所描述的针对该迁移字段的转换操作,得到该迁移字段对应的目标字段,再基于数据映射关系,将该目标字段迁移至目标数据库,这样能够实减少因对迁移字段进行转换操作而导致源数据库中迁移字段丢失的情况发生。
    130.在另一个可选的实施例中,该方法还可以包括:
    131.在完成源数据库和目标数据库之间的数据迁移之后,将目标数据库在校验时间段内由于新系统的运行而生成的数据确定为第一校验数据,并将源数据库在校验时间段内由于旧系统的运行而生成的数据确定为第二校验数据,校验时间段的起始时刻为新系统试验
    运行的起始时刻;
    132.确定第一校验数据包括的所有校验字段在第二校验数据中对应的目标校验字段;
    133.根据每个校验字段的字段属性、每个目标校验字段的字段属性和数据映射关系,检测每个校验字段与该校验字段对应的目标校验字段是否均匹配;
    134.当检测结果为是时,控制旧系统停止运行;
    135.当检测结果为否时,确定异常校验字段在新系统中对应的目标工作模块,并向新系统的相关人员输出目标工作模块对应的异常运行提示,异常校验字段为所有校验字段中与对应的目标校验字段不匹配的校验字段。
    136.可见,实施该可选的实施例能够通过在新系统运行之后将新系统生成的数据与旧系统生成的数据进行对比校验,从而有利于及时发现新系统中异常的工作模块,提高了系统工作状态校验的效率和准确率,并在新系统能够正常运行时及时关闭旧系统,减少因运行旧系统而导致的能源消耗。
    137.在又一个可选的实施例中,在根据数据映射关系,将源数据迁移至目标数据库之前,该方法还可以包括:
    138.检测源数据的数据接口与目标数据库的数据接口是否匹配;
    139.当检测结果为是时,确定与源数据和目标数据库均匹配的数据中间库,数据中间库的数据接口至少包括与源数据的数据接口匹配的第一数据接口以及与目标数据库的数据接口匹配的第二数据接口;
    140.根据数据映射关系,将源数据迁移至目标数据库,可以包括:
    141.根据数据映射关系,基于第一数据接口和源数据库的数据接口将源数据从源数据库迁移至数据中间库;
    142.根据数据映射关系,基于第二数据接口和目标数据库的数据接口将源数据从数据中间库迁移至目标数据库。
    143.在该可选的实施例中,可选的,数据中间库可以包括oracle数据库。
    144.可见,实施该可选的实施例能够在源数据和目标数据库的数据接口不匹配时采用数据中间库作为数据迁移的中间媒介,减少因数据接口不匹配而导致的无效数据迁移,提高了数据迁移效率、成功率和准确率。
    145.在又一个可选的实施例中,在根据数据映射关系,将源数据迁移至目标数据库之前,该方法还可以包括:
    146.根据旧系统的数据模型和新系统的数据模块,判断是否需要对源数据进行数据层级调整,数据层级调整包括数据升级调整或数据降级调整;
    147.当判断结果为是时,根据旧系统的数据模型,确定源数据在源数据库中对应的索引信息,其中,源数据在源数据库中对应的索引信息至少包括源数据在源数据库中对应的存储层级;
    148.根据数据映射关系和新系统的数据模型,修正源数据在源数据库中对应的索引信息,得到源数据在目标数据库中对应的索引信息;
    149.以及,根据数据映射关系,将源数据迁移至目标数据库,可以包括:
    150.根据数据映射关系和源数据在目标数据库中对应的索引信息,将源数据迁移至目标数据库。
    151.例如,新系统和旧系统均为“全国电网管理系统”,在旧系统中“深圳电网数据”为“省级数据”,旧系统中“深圳电网数据”与“广东省电网数据”同级,而在新系统中“深圳电网数据”为“市级数据”,新系统中“深圳电网数据”的级别在“广东省电网数据”的级别之下,此时,需要在新系统的目标数据库中对“深圳电网数据”进行数据降级调整。
    152.可见,实施该可选的实施例能够根据实际需求对迁移数据进行存储层级调整,有利于提高迁移数据与新系统的实际需求的匹配程度,提高数据迁移的准确性和可靠性。
    153.实施例二
    154.请参阅图2,图2是本发明实施例公开的另一种数据迁移的智能化实现方法的流程示意图。其中,图2所描述的数据迁移的智能化实现方法可以应用于两个数据库之间的数据迁移过程。如图2所示,该数据迁移的智能化实现方法可以包括以下操作:
    155.201、确定旧系统的源数据库中需要进行数据迁移的源数据。
    156.202、分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系。
    157.203、根据数据映射关系,将源数据迁移至目标数据库。
    158.204、检测源数据库是否存在增量数据,增量数据包括在数据迁移过程中由于旧系统的运行而产生的需要迁移至目标数据库的新数据,数据迁移过程为将源数据迁移至目标数据库的过程。
    159.在一个可选的实施例中,检测源数据库是否存在增量数据,可以包括:
    160.将源数据迁移至目标数据库的起始时刻确定为第一时刻,并将源数据迁移至目标数据库的截止时刻确定为第二时刻;
    161.确定旧系统在第一时刻之后继续运行的工作模块,并根据工作模块确定源数据库中需要进行增量数据检测的数据集;
    162.检测数据集中是否存在对应的数据生成时间晚于第一时刻并早于第二时刻的至少一个目标数据;
    163.当检测结果为是时,判断所有目标数据中是否存在需要迁移至目标数据库的目标数据;
    164.当判断结果为是时,确定源数据库存在增量数据,增量数据为需要迁移至目标数据库的目标数据。
    165.可见,实施该可选的实施方式能够根据源数据库中数据的数据生成时间确定需要迁移的增量数据,提高了确定增量数据的准确性和可靠性。
    166.205、当步骤204的检测结果为是时,确定增量数据对应的业务关系表的空表结构。
    167.其中,空表结构不包括业务关系表中任意数据,这样能够减少数据迁移过程中产生的数据之间的存储位置重叠冲突。
    168.206、根据增量数据包括的增量字段在源数据库中的字段属性,将增量字段导入至空表结构,得到增量数据表。
    169.本发明实施例中,根据增量数据包括的增量字段在源数据库中的字段属性,将增量字段导入至空表结构,得到增量数据表,可以包括:根据增量数据包括的增量字段在源数据库中的字段属性,确定增量字段在业务关系表中对应的导入位置;根据增量字段在业务关系表中对应的导入位置,将增量字段导入至空表结构,得到增量数据表。这样能够提高增
    量数据导入空表结构的准确性和可靠性。
    170.207、根据数据映射关系,确定业务关系表在目标数据库中对应的目标业务关系表。
    171.208、分析增量数据表和目标业务关系表,得到增量数据表中需要合并至目标业务关系表的迁移增量字段。
    172.作为一种可选的实施方式,分析增量数据表和目标业务关系表,得到增量数据表中需要合并至目标业务关系表的迁移增量字段,可以包括:
    173.根据数据映射关系,确定增量数据表中每个增量字段在目标业务关系表中对应的存储位置;
    174.针对每个增量字段,判断该增量字段对应的存储位置中是否存在已有数据;当该增量字段对应的存储位置不存在已有数据时,将该增量字段确定为需要合并至目标业务关系表的迁移增量字段;当该增量字段对应的存储位置中存在已有数据时,判断是否需要更新该已有数据,当需要更新该已有数据时,将该增量字段确定为需要合并至目标业务关系表的迁移增量字段。
    175.可见,实施该可选的实施方式能够根据增量数据表中增量字段在目标业务关系表中的存储位置以及目标业务关系表中已有数据确定增量数据表中需要迁移的迁移增量字段,提高了确定迁移增量字段的准确性和可靠性,减少数据迁移过程中产生的数据之间的存储位置重叠冲突。
    176.209、根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将迁移增量字段迁移至目标业务关系表。
    177.本发明实施例中,针对步骤201-步骤203的其它描述,请参照实施例一中针对步骤101-步骤103的详细描述,本发明实施例不再赘述。
    178.需要说明的是,步骤201和步骤202没有先后关系,步骤201和步骤202可以同时执行,也可以先执行步骤201,也可以先执行步骤202,本发明实施例不做限定,此外,步骤205-步骤206中任一步骤和步骤207也没有先后关系,本发明实施例不做限定。
    179.可见,实施本发明实施例能够智能确定数据映射关系,并基于数据映射关系将需要迁移的源数据迁移至目标数据库,实现了数据的智能化迁移,提高了数据迁移的效率和准确率,还能够将迁移过程中源数据库产生的增量数据迁移至目标数据库,进一步提高了数据迁移的准确性,并减少了因缺少增量数据而导致新系统运行异常的情况发生,有利于新系统平稳接力旧系统的工作内容。
    180.在一个可选的实施例中,在根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将迁移增量字段迁移至目标业务关系表之前,该方法还可以包括:
    181.在源数据库中确定与业务关系表对应的依赖表,并在依赖表中确定迁移增量字段对应的依赖字段,其中,增量数据的产生与依赖表的数据相关;
    182.根据迁移增量字段对应的依赖字段对应的转换方式,确定迁移增量字段对应的转换方式;
    183.将迁移增量字段转换成与迁移增量字段对应的转换方式相匹配的目标增量字段;
    184.根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将迁移增量字段迁移至目标业务关系表,包括:
    185.根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将目标增量字段迁移至目标业务关系表。
    186.可见,实施该可选的实施例能够根据新系统的实际需求对迁移增量字段进行转换操作,有利于提高迁移至新系统的数据库的增量数据与新系统的匹配程度,提高了数据迁移的准确性和可靠性。
    187.实施例三
    188.请参阅图3,图3是本发明实施例公开的一种数据迁移的智能化实现装置的结构示意图。其中,图3所描述的数据迁移的智能化实现装置可以应用于两个数据库之间的数据迁移过程。如图3所示,该数据迁移的智能化实现装置可以包括:
    189.确定模块301,用于确定旧系统的源数据库中需要进行数据迁移的源数据;
    190.分析模块302,用于分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系;
    191.迁移模块303,用于根据数据映射关系,将源数据迁移至目标数据库。
    192.可见,实施图3所描述的装置能够智能确定数据映射关系,并基于数据映射关系将需要迁移的源数据迁移至目标数据库,实现了数据的智能化迁移,提高了数据迁移的效率和准确率。
    193.在一个可选的实施例中,如图3所示,分析模块302分析旧系统的数据模型和新系统的数据模型,得到源数据库和新系统的目标数据库之间的数据映射关系的具体方式为:
    194.根据旧系统的数据模型,确定源数据中至少一个迁移字段在源数据库中的第一字段属性,其中,每个迁移字段为源数据中需要进行数据迁移的字段,每个迁移字段的第一字段属性包括该迁移字段在源数据库中对应的表格名称、字段名称、字段标识、字段长度、字段类型中的一个或多个;
    195.根据新系统的数据模型,确定所有迁移字段在新系统的目标数据库中的第二字段属性;
    196.针对每个迁移字段,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,判断是否需要针对该迁移字段进行转换操作;当判断结果为是时,根据该迁移字段的第一字段属性和该迁移字段的第二字段属性,确定该迁移字段对应的转换方式,该迁移字段对应的转换方式用于将该迁移字段的第一字段属性转换成该迁移字段的第二字段属性;分析该迁移字段的第一字段属性、该迁移字段的第二字段属性和该迁移字段对应的转换方式,得到源数据库和新系统的目标数据库之间针对该迁移字段对应的字段映射关系;当判断结果为否时,分析该迁移字段的第一字段属性、该迁移字段的第二字段属性,得到源数据库和新系统的目标数据库之间针对该迁移字段对应的字段映射关系;
    197.基于源数据库和新系统的目标数据库之间针对每个迁移字段对应的字段映射关系,确定源数据库和新系统的目标数据库之间的数据映射关系。
    198.可见,实施图3所描述的装置还能够根据源数据的迁移字段在源数据库中的字段属性和在目标数据库中的字段属性确定源数据库和目标数据库之间的数据映射关系,提高了确定数据映射关系的准确性和可靠性,并且将数据映射关系的数据粒度降至字段级别,有利于提高数据迁移的精确程度。
    199.在另一个可选的实施例中,如图4所示,针对每个迁移字段,当需要针对该迁移字
    段进行转换操作时,该迁移字段对应的转换方式包括赋值转换、筛选转换、运算转换中的任意一种;
    200.确定模块301,还用于在迁移模块303根据数据映射关系,将源数据迁移至目标数据库之前,针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括赋值转换时,将预先确定出的该迁移字段对应的赋值字段确定为该迁移字段对应的目标字段,或者,当不需要针对该迁移字段进行转换操作时,将该迁移字段确定为该迁移字段对应的目标字段;
    201.该装置还可以包括:
    202.筛选模块304,用于在迁移模块303根据数据映射关系,将源数据迁移至目标数据库之前,针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括筛选转换时,基于预设的查询语句以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,在该迁移字段对应的字段范围中筛选出该迁移字段对应的目标字段;
    203.运算模块305,用于在迁移模块303根据数据映射关系,将源数据迁移至目标数据库之前,针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括运算转换时,基于预设的运算方式以及该迁移字段的第一字段属性和该迁移字段的第二字段属性,运算该迁移字段对应的待运算字符,得到该迁移字段对应的运算结果;
    204.确定模块301,还用于针对每个迁移字段,当需要针对该迁移字段进行转换操作且该迁移字段对应的转换方式包括运算转换时,将该迁移字段对应的运算结果确定为该迁移字段对应的目标字段;
    205.以及,迁移模块303根据数据映射关系,将源数据迁移至目标数据库的具体方式为:
    206.根据数据映射关系,将每个迁移字段对应的目标字段迁移至目标数据库。
    207.可见,实施图4所描述的装置能够根据新系统的实际需求对迁移字段进行转换操作,有利于提高迁移至新系统的数据库的迁移数据与新系统的匹配程度,提高了数据迁移的准确性和可靠性。
    208.在又一个可选的实施例中,如图4所示,该装置还可以包括:
    209.检测模块306,用于在迁移模块303根据数据映射关系,将源数据迁移至目标数据库之后,检测源数据库是否存在增量数据,增量数据包括在数据迁移过程中由于旧系统的运行而产生的需要迁移至目标数据库的新数据,数据迁移过程为将源数据迁移至目标数据库的过程;
    210.确定模块301,还用于当检测模块306检测出源数据库存在增量数据时,确定增量数据对应的业务关系表的空表结构;
    211.导入模块307,用于根据增量数据包括的增量字段在源数据库中的字段属性,将增量字段导入至空表结构,得到增量数据表;
    212.确定模块301,还用于根据数据映射关系,确定业务关系表在目标数据库中对应的目标业务关系表;
    213.分析模块302,还用于分析增量数据表和目标业务关系表,得到增量数据表中需要合并至目标业务关系表的迁移增量字段;
    214.迁移模块302,还用于根据迁移增量字段在源数据库中的字段属性以及数据映射
    关系,将迁移增量字段迁移至目标业务关系表。
    215.可见,实施图4所描述的装置还能够将迁移过程中源数据库产生的增量数据迁移至目标数据库,进一步提高了数据迁移的准确性和可靠性,并减少了因缺少增量数据而导致新系统运行异常的情况发生,有利于新系统平稳接力旧系统的工作内容。
    216.在又一个可选的实施例中,如图4所示,检测模块306检测源数据库是否存在增量数据的具体方式为:
    217.将源数据迁移至目标数据库的起始时刻确定为第一时刻,并将源数据迁移至目标数据库的截止时刻确定为第二时刻;
    218.确定旧系统在第一时刻之后继续运行的工作模块,并根据工作模块确定源数据库中需要进行增量数据检测的数据集;
    219.检测数据集中是否存在对应的数据生成时间晚于第一时刻并早于第二时刻的至少一个目标数据;
    220.当检测结果为是时,判断所有目标数据中是否存在需要迁移至目标数据库的目标数据;
    221.当判断结果为是时,确定源数据库存在增量数据,增量数据为需要迁移至目标数据库的目标数据。
    222.可见,实施图4所描述的装置还能够根据源数据库中数据的数据生成时间确定需要迁移的增量数据,提高了确定增量数据的准确性和可靠性。
    223.在又一个可选的实施例中,如图4所示,确定模块301,还用于在迁移模块303根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将迁移增量字段迁移至目标业务关系表之前,在源数据库中确定与业务关系表对应的依赖表,并在依赖表中确定迁移增量字段对应的依赖字段,其中,增量数据的产生与依赖表的数据相关;以及,还用于根据迁移增量字段对应的依赖字段对应的转换方式,确定迁移增量字段对应的转换方式;
    224.该装置还可以包括:
    225.转换模块308,用于将迁移增量字段转换成与迁移增量字段对应的转换方式相匹配的目标增量字段;
    226.迁移模块303根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将迁移增量字段迁移至目标业务关系表的具体方式为:
    227.根据迁移增量字段在源数据库中的字段属性以及数据映射关系,将目标增量字段迁移至目标业务关系表。
    228.可见,实施图4所描述的装置还能够根据新系统的实际需求对迁移增量字段进行转换操作,有利于提高迁移至新系统的数据库的增量数据与新系统的匹配程度,提高了数据迁移的准确性和可靠性。
    229.在又一个可选的实施例中,如图4所示,确定模块301,还用于在完成源数据库和目标数据库之间的数据迁移之后,将目标数据库在校验时间段内由于新系统的运行而生成的数据确定为第一校验数据,并将源数据库在校验时间段内由于旧系统的运行而生成的数据确定为第二校验数据,校验时间段的起始时刻为新系统试验运行的起始时刻;以及,还用于确定第一校验数据包括的所有校验字段在第二校验数据中对应的目标校验字段;
    230.检测模块306,还用于根据每个校验字段的字段属性、每个目标校验字段的字段属
    programmable read-only memory,otprom)、电子抹除式可复写只读存储器(electrically-erasable programmable read-only memory,eeprom)、只读光盘(compact disc read-only memory,cd-rom)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
    247.最后应说明的是:本发明实施例公开的一种数据迁移的智能化实现方法及装置所揭露的仅为本发明较佳实施例而已,仅用于说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解;其依然可以对前述各项实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或替换,并不使相应的技术方案的本质脱离本发明各项实施例技术方案的精神和范围。
    转载请注明原文地址:https://tc.8miu.com/read-1308.html

    最新回复(0)